summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 10:06:00 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-27 10:06:00 +0000
commitb15a952c52a6825376d3e7f6c1bf5c886c6d8b74 (patch)
tree1500f2f8f276908a36d8126cb632c0d6b1276764
parentAdding upstream version 5.10.209. (diff)
downloadlinux-b15a952c52a6825376d3e7f6c1bf5c886c6d8b74.tar.xz
linux-b15a952c52a6825376d3e7f6c1bf5c886c6d8b74.zip
Adding debian version 5.10.209-2.debian/5.10.209-2debian
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
-rw-r--r--debian/README.Debian65
-rw-r--r--debian/README.source318
-rwxr-xr-xdebian/bin/abiupdate.py232
-rwxr-xr-xdebian/bin/buildcheck.py285
-rwxr-xr-xdebian/bin/check-patches.sh28
l---------debian/bin/debian_linux1
-rwxr-xr-xdebian/bin/fix-shebang12
-rwxr-xr-xdebian/bin/gencontrol.py738
-rwxr-xr-xdebian/bin/gencontrol_signed.py369
-rwxr-xr-xdebian/bin/genorig.py203
-rwxr-xr-xdebian/bin/genpatch-aufs32
-rwxr-xr-xdebian/bin/genpatch-lockdown109
-rwxr-xr-xdebian/bin/genpatch-rt152
-rwxr-xr-xdebian/bin/getconfig.py25
-rwxr-xr-xdebian/bin/git-tag-gpg-wrapper33
-rwxr-xr-xdebian/bin/kconfig.py39
-rwxr-xr-xdebian/bin/no-depmod18
-rwxr-xr-xdebian/bin/stable-update135
-rwxr-xr-xdebian/bin/stable-update.sh2
-rwxr-xr-xdebian/bin/test-patches145
-rwxr-xr-xdebian/bin/update-bug-taint-list24
-rw-r--r--debian/certs/debian-uefi-certs.pem42
-rw-r--r--debian/certs/wireless-regdb-benh@debian.org.pem17
-rw-r--r--debian/certs/wireless-regdb-romain.perier@gmail.com.pem18
-rw-r--r--debian/changelog32189
-rw-r--r--debian/changelog.old39860
-rw-r--r--debian/config.defines.dump3076
-rw-r--r--debian/config/alpha/config966
-rw-r--r--debian/config/alpha/config.alpha-generic10
-rw-r--r--debian/config/alpha/config.alpha-smp16
-rw-r--r--debian/config/alpha/defines19
-rw-r--r--debian/config/amd64/config259
-rw-r--r--debian/config/amd64/config.cloud-amd6442
-rw-r--r--debian/config/amd64/defines26
-rw-r--r--debian/config/amd64/none/defines10
-rw-r--r--debian/config/amd64/rt/defines3
-rw-r--r--debian/config/arm64/config1587
-rw-r--r--debian/config/arm64/config.cloud-arm64116
-rw-r--r--debian/config/arm64/defines28
-rw-r--r--debian/config/arm64/none/defines10
-rw-r--r--debian/config/arm64/rt/config7
-rw-r--r--debian/config/arm64/rt/defines3
-rw-r--r--debian/config/arm64ilp32/defines5
-rw-r--r--debian/config/armel/config15
-rw-r--r--debian/config/armel/config.marvell856
-rw-r--r--debian/config/armel/config.rpi195
-rw-r--r--debian/config/armel/defines40
-rw-r--r--debian/config/armhf/config1665
-rw-r--r--debian/config/armhf/config.armmp-lpae15
-rw-r--r--debian/config/armhf/defines27
-rw-r--r--debian/config/armhf/none/defines5
-rw-r--r--debian/config/armhf/rt/defines3
-rw-r--r--debian/config/config8176
-rw-r--r--debian/config/config.cloud1711
-rw-r--r--debian/config/defines175
-rw-r--r--debian/config/featureset-rt/config32
-rw-r--r--debian/config/featureset-rt/defines7
-rw-r--r--debian/config/hppa/config667
-rw-r--r--debian/config/hppa/config.parisc27
-rw-r--r--debian/config/hppa/config.parisc6458
-rw-r--r--debian/config/hppa/defines29
-rw-r--r--debian/config/i386/config514
-rw-r--r--debian/config/i386/config.68683
-rw-r--r--debian/config/i386/config.686-pae53
-rw-r--r--debian/config/i386/defines33
-rw-r--r--debian/config/i386/none/defines5
-rw-r--r--debian/config/i386/rt/defines3
-rw-r--r--debian/config/ia64/config769
-rw-r--r--debian/config/ia64/config.itanium11
-rw-r--r--debian/config/ia64/config.mckinley11
-rw-r--r--debian/config/ia64/defines21
-rw-r--r--debian/config/kernelarch-arm/config137
-rw-r--r--debian/config/kernelarch-mips/config83
-rw-r--r--debian/config/kernelarch-mips/config.boston69
-rw-r--r--debian/config/kernelarch-mips/config.loongson-3142
-rw-r--r--debian/config/kernelarch-mips/config.malta480
-rw-r--r--debian/config/kernelarch-mips/config.mips32r210
-rw-r--r--debian/config/kernelarch-mips/config.mips32r610
-rw-r--r--debian/config/kernelarch-mips/config.mips64r210
-rw-r--r--debian/config/kernelarch-mips/config.mips64r610
-rw-r--r--debian/config/kernelarch-mips/config.octeon189
-rw-r--r--debian/config/kernelarch-powerpc/config902
-rw-r--r--debian/config/kernelarch-powerpc/config-arch-64209
-rw-r--r--debian/config/kernelarch-powerpc/config-arch-64-be111
-rw-r--r--debian/config/kernelarch-powerpc/config-arch-64-le36
-rw-r--r--debian/config/kernelarch-sparc/config601
-rw-r--r--debian/config/kernelarch-sparc/config-smp7
-rw-r--r--debian/config/kernelarch-sparc/config-up5
-rw-r--r--debian/config/kernelarch-x86/config2118
-rw-r--r--debian/config/m68k/README.build26
-rw-r--r--debian/config/m68k/config881
-rw-r--r--debian/config/m68k/defines16
-rw-r--r--debian/config/mips/config8
-rw-r--r--debian/config/mips/defines41
-rw-r--r--debian/config/mips64/config8
-rw-r--r--debian/config/mips64/defines31
-rw-r--r--debian/config/mips64el/config12
-rw-r--r--debian/config/mips64el/defines39
-rw-r--r--debian/config/mips64r6/config8
-rw-r--r--debian/config/mips64r6/defines21
-rw-r--r--debian/config/mips64r6el/config8
-rw-r--r--debian/config/mips64r6el/defines21
-rw-r--r--debian/config/mipsel/config8
-rw-r--r--debian/config/mipsel/defines49
-rw-r--r--debian/config/mipsn32/defines4
-rw-r--r--debian/config/mipsn32el/defines4
-rw-r--r--debian/config/mipsn32r6/defines4
-rw-r--r--debian/config/mipsn32r6el/defines4
-rw-r--r--debian/config/mipsr6/config8
-rw-r--r--debian/config/mipsr6/defines31
-rw-r--r--debian/config/mipsr6el/config8
-rw-r--r--debian/config/mipsr6el/defines31
-rw-r--r--debian/config/powerpc/config.powerpc113
-rw-r--r--debian/config/powerpc/config.powerpc-smp6
-rw-r--r--debian/config/powerpc/defines31
-rw-r--r--debian/config/ppc64/defines21
-rw-r--r--debian/config/ppc64el/defines21
-rw-r--r--debian/config/riscv64/config114
-rw-r--r--debian/config/riscv64/defines15
-rw-r--r--debian/config/riscv64/none/defines4
-rw-r--r--debian/config/s390/defines4
-rw-r--r--debian/config/s390x/config220
-rw-r--r--debian/config/s390x/defines19
-rw-r--r--debian/config/sh3/defines4
-rw-r--r--debian/config/sh4/config60
-rw-r--r--debian/config/sh4/config.sh7751r172
-rw-r--r--debian/config/sh4/config.sh7785lcr239
-rw-r--r--debian/config/sh4/defines25
-rw-r--r--debian/config/sparc/defines4
-rw-r--r--debian/config/sparc64/defines27
-rw-r--r--debian/config/x32/defines4
-rw-r--r--debian/control14608
-rw-r--r--debian/control.md5sum86
-rw-r--r--debian/copyright297
-rw-r--r--debian/hyperv-daemons.README.Debian14
-rwxr-xr-xdebian/hyperv-daemons.hv-fcopy-daemon.init109
-rw-r--r--debian/hyperv-daemons.hv-fcopy-daemon.service10
-rwxr-xr-xdebian/hyperv-daemons.hv-kvp-daemon.init109
-rw-r--r--debian/hyperv-daemons.hv-kvp-daemon.service22
-rwxr-xr-xdebian/hyperv-daemons.hv-vss-daemon.init109
-rw-r--r--debian/hyperv-daemons.hv-vss-daemon.service10
-rw-r--r--debian/hyperv-daemons.maintscript3
-rwxr-xr-xdebian/hyperv-daemons.postinst18
-rwxr-xr-xdebian/hyperv-daemons.preinst17
-rw-r--r--debian/hyperv-daemons.udev3
-rw-r--r--debian/installer/kernel-versions35
-rw-r--r--debian/installer/modules/acpi-modules2
-rw-r--r--debian/installer/modules/affs-modules1
-rw-r--r--debian/installer/modules/alpha-generic/ata-modules1
-rw-r--r--debian/installer/modules/alpha-generic/btrfs-modules1
-rw-r--r--debian/installer/modules/alpha-generic/cdrom-core-modules1
-rw-r--r--debian/installer/modules/alpha-generic/crc-modules1
-rw-r--r--debian/installer/modules/alpha-generic/crypto-dm-modules1
-rw-r--r--debian/installer/modules/alpha-generic/crypto-modules1
-rw-r--r--debian/installer/modules/alpha-generic/event-modules1
-rw-r--r--debian/installer/modules/alpha-generic/ext4-modules1
-rw-r--r--debian/installer/modules/alpha-generic/f2fs-modules1
-rw-r--r--debian/installer/modules/alpha-generic/fat-modules1
-rw-r--r--debian/installer/modules/alpha-generic/fb-modules1
-rw-r--r--debian/installer/modules/alpha-generic/fuse-modules1
-rw-r--r--debian/installer/modules/alpha-generic/i2c-modules1
-rw-r--r--debian/installer/modules/alpha-generic/input-modules1
-rw-r--r--debian/installer/modules/alpha-generic/isofs-modules1
-rw-r--r--debian/installer/modules/alpha-generic/jfs-modules1
-rw-r--r--debian/installer/modules/alpha-generic/kernel-image1
-rw-r--r--debian/installer/modules/alpha-generic/loop-modules1
-rw-r--r--debian/installer/modules/alpha-generic/md-modules1
-rw-r--r--debian/installer/modules/alpha-generic/mouse-modules1
-rw-r--r--debian/installer/modules/alpha-generic/multipath-modules1
-rw-r--r--debian/installer/modules/alpha-generic/nbd-modules1
-rw-r--r--debian/installer/modules/alpha-generic/nic-modules1
-rw-r--r--debian/installer/modules/alpha-generic/nic-pcmcia-modules1
-rw-r--r--debian/installer/modules/alpha-generic/nic-shared-modules1
-rw-r--r--debian/installer/modules/alpha-generic/nic-usb-modules1
-rw-r--r--debian/installer/modules/alpha-generic/nic-wireless-modules1
-rw-r--r--debian/installer/modules/alpha-generic/pata-modules1
-rw-r--r--debian/installer/modules/alpha-generic/pcmcia-modules1
-rw-r--r--debian/installer/modules/alpha-generic/ppp-modules1
-rw-r--r--debian/installer/modules/alpha-generic/sata-modules1
-rw-r--r--debian/installer/modules/alpha-generic/scsi-core-modules1
-rw-r--r--debian/installer/modules/alpha-generic/scsi-modules1
-rw-r--r--debian/installer/modules/alpha-generic/scsi-nic-modules1
-rw-r--r--debian/installer/modules/alpha-generic/serial-modules1
-rw-r--r--debian/installer/modules/alpha-generic/squashfs-modules1
-rw-r--r--debian/installer/modules/alpha-generic/srm-modules1
-rw-r--r--debian/installer/modules/alpha-generic/usb-modules1
-rw-r--r--debian/installer/modules/alpha-generic/usb-serial-modules1
-rw-r--r--debian/installer/modules/alpha-generic/usb-storage-modules1
-rw-r--r--debian/installer/modules/alpha-generic/xfs-modules1
-rw-r--r--debian/installer/modules/amd64/acpi-modules2
-rw-r--r--debian/installer/modules/amd64/ata-modules2
-rw-r--r--debian/installer/modules/amd64/btrfs-modules1
-rw-r--r--debian/installer/modules/amd64/cdrom-core-modules2
-rw-r--r--debian/installer/modules/amd64/crc-modules2
-rw-r--r--debian/installer/modules/amd64/crypto-dm-modules1
-rw-r--r--debian/installer/modules/amd64/crypto-modules1
-rw-r--r--debian/installer/modules/amd64/efi-modules1
-rw-r--r--debian/installer/modules/amd64/event-modules1
-rw-r--r--debian/installer/modules/amd64/ext4-modules1
-rw-r--r--debian/installer/modules/amd64/f2fs-modules1
-rw-r--r--debian/installer/modules/amd64/fat-modules2
-rw-r--r--debian/installer/modules/amd64/fb-modules4
-rw-r--r--debian/installer/modules/amd64/firewire-core-modules1
-rw-r--r--debian/installer/modules/amd64/fuse-modules1
-rw-r--r--debian/installer/modules/amd64/i2c-modules1
-rw-r--r--debian/installer/modules/amd64/input-modules1
-rw-r--r--debian/installer/modules/amd64/isofs-modules1
-rw-r--r--debian/installer/modules/amd64/jfs-modules1
-rw-r--r--debian/installer/modules/amd64/kernel-image1
-rw-r--r--debian/installer/modules/amd64/loop-modules2
-rw-r--r--debian/installer/modules/amd64/md-modules2
-rw-r--r--debian/installer/modules/amd64/mmc-core-modules1
-rw-r--r--debian/installer/modules/amd64/mmc-modules1
-rw-r--r--debian/installer/modules/amd64/mouse-modules1
-rw-r--r--debian/installer/modules/amd64/mtd-core-modules1
-rw-r--r--debian/installer/modules/amd64/multipath-modules1
-rw-r--r--debian/installer/modules/amd64/nbd-modules1
-rw-r--r--debian/installer/modules/amd64/nic-modules1
-rw-r--r--debian/installer/modules/amd64/nic-pcmcia-modules1
-rw-r--r--debian/installer/modules/amd64/nic-shared-modules1
-rw-r--r--debian/installer/modules/amd64/nic-usb-modules1
-rw-r--r--debian/installer/modules/amd64/nic-wireless-modules1
-rw-r--r--debian/installer/modules/amd64/pata-modules2
-rw-r--r--debian/installer/modules/amd64/pcmcia-modules1
-rw-r--r--debian/installer/modules/amd64/pcmcia-storage-modules1
-rw-r--r--debian/installer/modules/amd64/ppp-modules2
-rw-r--r--debian/installer/modules/amd64/rfkill-modules1
-rw-r--r--debian/installer/modules/amd64/sata-modules1
-rw-r--r--debian/installer/modules/amd64/scsi-core-modules4
-rw-r--r--debian/installer/modules/amd64/scsi-modules3
-rw-r--r--debian/installer/modules/amd64/scsi-nic-modules1
-rw-r--r--debian/installer/modules/amd64/serial-modules1
-rw-r--r--debian/installer/modules/amd64/sound-modules1
-rw-r--r--debian/installer/modules/amd64/speakup-modules1
-rw-r--r--debian/installer/modules/amd64/squashfs-modules1
-rw-r--r--debian/installer/modules/amd64/udf-modules1
-rw-r--r--debian/installer/modules/amd64/uinput-modules1
-rw-r--r--debian/installer/modules/amd64/usb-modules1
-rw-r--r--debian/installer/modules/amd64/usb-serial-modules1
-rw-r--r--debian/installer/modules/amd64/usb-storage-modules2
-rw-r--r--debian/installer/modules/amd64/xfs-modules2
-rw-r--r--debian/installer/modules/arm64/ata-modules2
-rw-r--r--debian/installer/modules/arm64/btrfs-modules1
-rw-r--r--debian/installer/modules/arm64/cdrom-core-modules2
-rw-r--r--debian/installer/modules/arm64/crc-modules1
-rw-r--r--debian/installer/modules/arm64/crypto-dm-modules1
-rw-r--r--debian/installer/modules/arm64/crypto-modules1
-rw-r--r--debian/installer/modules/arm64/efi-modules1
-rw-r--r--debian/installer/modules/arm64/event-modules1
-rw-r--r--debian/installer/modules/arm64/ext4-modules1
-rw-r--r--debian/installer/modules/arm64/f2fs-modules1
-rw-r--r--debian/installer/modules/arm64/fat-modules1
-rw-r--r--debian/installer/modules/arm64/fb-modules20
-rw-r--r--debian/installer/modules/arm64/fuse-modules1
-rw-r--r--debian/installer/modules/arm64/i2c-modules4
-rw-r--r--debian/installer/modules/arm64/input-modules1
-rw-r--r--debian/installer/modules/arm64/isofs-modules1
-rw-r--r--debian/installer/modules/arm64/jfs-modules1
-rw-r--r--debian/installer/modules/arm64/kernel-image37
-rw-r--r--debian/installer/modules/arm64/leds-modules1
-rw-r--r--debian/installer/modules/arm64/loop-modules1
-rw-r--r--debian/installer/modules/arm64/md-modules1
-rw-r--r--debian/installer/modules/arm64/mmc-modules3
-rw-r--r--debian/installer/modules/arm64/mtd-core-modules1
-rw-r--r--debian/installer/modules/arm64/multipath-modules1
-rw-r--r--debian/installer/modules/arm64/nbd-modules1
-rw-r--r--debian/installer/modules/arm64/nic-modules2
-rw-r--r--debian/installer/modules/arm64/nic-shared-modules1
-rw-r--r--debian/installer/modules/arm64/nic-usb-modules1
-rw-r--r--debian/installer/modules/arm64/nic-wireless-modules1
-rw-r--r--debian/installer/modules/arm64/ppp-modules1
-rw-r--r--debian/installer/modules/arm64/sata-modules4
-rw-r--r--debian/installer/modules/arm64/scsi-core-modules1
-rw-r--r--debian/installer/modules/arm64/scsi-modules1
-rw-r--r--debian/installer/modules/arm64/scsi-nic-modules1
-rw-r--r--debian/installer/modules/arm64/squashfs-modules1
-rw-r--r--debian/installer/modules/arm64/udf-modules1
-rw-r--r--debian/installer/modules/arm64/uinput-modules1
-rw-r--r--debian/installer/modules/arm64/usb-modules11
-rw-r--r--debian/installer/modules/arm64/usb-serial-modules1
-rw-r--r--debian/installer/modules/arm64/usb-storage-modules1
-rw-r--r--debian/installer/modules/arm64/xfs-modules1
-rw-r--r--debian/installer/modules/armel-marvell/btrfs-modules1
-rw-r--r--debian/installer/modules/armel-marvell/cdrom-core-modules2
-rw-r--r--debian/installer/modules/armel-marvell/crc-modules1
-rw-r--r--debian/installer/modules/armel-marvell/crypto-dm-modules1
-rw-r--r--debian/installer/modules/armel-marvell/crypto-modules1
-rw-r--r--debian/installer/modules/armel-marvell/event-modules2
-rw-r--r--debian/installer/modules/armel-marvell/ext4-modules1
-rw-r--r--debian/installer/modules/armel-marvell/f2fs-modules1
-rw-r--r--debian/installer/modules/armel-marvell/fat-modules1
-rw-r--r--debian/installer/modules/armel-marvell/fb-modules1
-rw-r--r--debian/installer/modules/armel-marvell/fuse-modules1
-rw-r--r--debian/installer/modules/armel-marvell/input-modules3
-rw-r--r--debian/installer/modules/armel-marvell/ipv6-modules1
-rw-r--r--debian/installer/modules/armel-marvell/isofs-modules1
-rw-r--r--debian/installer/modules/armel-marvell/jffs2-modules1
-rw-r--r--debian/installer/modules/armel-marvell/jfs-modules1
-rw-r--r--debian/installer/modules/armel-marvell/kernel-image1
-rw-r--r--debian/installer/modules/armel-marvell/leds-modules2
-rw-r--r--debian/installer/modules/armel-marvell/loop-modules1
-rw-r--r--debian/installer/modules/armel-marvell/md-modules1
-rw-r--r--debian/installer/modules/armel-marvell/minix-modules1
-rw-r--r--debian/installer/modules/armel-marvell/mmc-core-modules1
-rw-r--r--debian/installer/modules/armel-marvell/mmc-modules2
-rw-r--r--debian/installer/modules/armel-marvell/mouse-modules1
-rw-r--r--debian/installer/modules/armel-marvell/mtd-core-modules1
-rw-r--r--debian/installer/modules/armel-marvell/mtd-modules12
-rw-r--r--debian/installer/modules/armel-marvell/multipath-modules1
-rw-r--r--debian/installer/modules/armel-marvell/nbd-modules1
-rw-r--r--debian/installer/modules/armel-marvell/nic-modules2
-rw-r--r--debian/installer/modules/armel-marvell/nic-shared-modules1
-rw-r--r--debian/installer/modules/armel-marvell/nic-usb-modules1
-rw-r--r--debian/installer/modules/armel-marvell/ppp-modules2
-rw-r--r--debian/installer/modules/armel-marvell/sata-modules2
-rw-r--r--debian/installer/modules/armel-marvell/scsi-core-modules1
-rw-r--r--debian/installer/modules/armel-marvell/squashfs-modules1
-rw-r--r--debian/installer/modules/armel-marvell/udf-modules1
-rw-r--r--debian/installer/modules/armel-marvell/uinput-modules1
-rw-r--r--debian/installer/modules/armel-marvell/usb-modules2
-rw-r--r--debian/installer/modules/armel-marvell/usb-serial-modules1
-rw-r--r--debian/installer/modules/armel-marvell/usb-storage-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/ata-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/btrfs-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/cdrom-core-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/crc-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/crypto-dm-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/crypto-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/efi-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/event-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/ext4-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/f2fs-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/fat-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/fb-modules5
-rw-r--r--debian/installer/modules/armhf-armmp/fuse-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/i2c-modules5
-rw-r--r--debian/installer/modules/armhf-armmp/input-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/isofs-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/jfs-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/kernel-image27
-rw-r--r--debian/installer/modules/armhf-armmp/leds-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/loop-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/md-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/mmc-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/mtd-modules3
-rw-r--r--debian/installer/modules/armhf-armmp/multipath-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/nbd-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/nic-modules14
-rw-r--r--debian/installer/modules/armhf-armmp/nic-shared-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/nic-usb-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/nic-wireless-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/pata-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/ppp-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/sata-modules5
-rw-r--r--debian/installer/modules/armhf-armmp/scsi-core-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/scsi-modules2
-rw-r--r--debian/installer/modules/armhf-armmp/scsi-nic-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/squashfs-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/udf-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/uinput-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/usb-modules4
-rw-r--r--debian/installer/modules/armhf-armmp/usb-serial-modules1
-rw-r--r--debian/installer/modules/armhf-armmp/usb-storage-modules1
-rw-r--r--debian/installer/modules/ata-modules2
-rw-r--r--debian/installer/modules/btrfs-modules1
-rw-r--r--debian/installer/modules/cdrom-core-modules2
-rw-r--r--debian/installer/modules/crc-modules7
-rw-r--r--debian/installer/modules/crypto-dm-modules1
-rw-r--r--debian/installer/modules/crypto-modules14
-rw-r--r--debian/installer/modules/efi-modules1
-rw-r--r--debian/installer/modules/event-modules1
-rw-r--r--debian/installer/modules/ext4-modules2
-rw-r--r--debian/installer/modules/f2fs-modules1
-rw-r--r--debian/installer/modules/fat-modules6
-rw-r--r--debian/installer/modules/fb-modules6
-rw-r--r--debian/installer/modules/firewire-core-modules3
-rw-r--r--debian/installer/modules/fuse-modules1
-rw-r--r--debian/installer/modules/hfs-modules2
-rw-r--r--debian/installer/modules/hppa-parisc64/ata-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/btrfs-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/cdrom-core-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/crc-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/crypto-dm-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/crypto-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/event-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/ext4-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/f2fs-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/fat-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/fb-modules4
-rw-r--r--debian/installer/modules/hppa-parisc64/fuse-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/input-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/isofs-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/jfs-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/kernel-image1
-rw-r--r--debian/installer/modules/hppa-parisc64/loop-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/md-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/mouse-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/multipath-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/nbd-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/nic-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/nic-shared-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/nic-usb-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/pata-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/ppp-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/sata-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/scsi-core-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/scsi-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/serial-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/squashfs-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/usb-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/usb-serial-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/usb-storage-modules1
-rw-r--r--debian/installer/modules/hppa-parisc64/xfs-modules1
-rw-r--r--debian/installer/modules/hppa/ata-modules1
-rw-r--r--debian/installer/modules/hppa/btrfs-modules1
-rw-r--r--debian/installer/modules/hppa/cdrom-core-modules2
-rw-r--r--debian/installer/modules/hppa/crc-modules1
-rw-r--r--debian/installer/modules/hppa/crypto-dm-modules1
-rw-r--r--debian/installer/modules/hppa/crypto-modules1
-rw-r--r--debian/installer/modules/hppa/event-modules1
-rw-r--r--debian/installer/modules/hppa/ext4-modules1
-rw-r--r--debian/installer/modules/hppa/f2fs-modules1
-rw-r--r--debian/installer/modules/hppa/fat-modules2
-rw-r--r--debian/installer/modules/hppa/fuse-modules1
-rw-r--r--debian/installer/modules/hppa/input-modules6
-rw-r--r--debian/installer/modules/hppa/isofs-modules1
-rw-r--r--debian/installer/modules/hppa/jfs-modules1
-rw-r--r--debian/installer/modules/hppa/kernel-image1
-rw-r--r--debian/installer/modules/hppa/loop-modules2
-rw-r--r--debian/installer/modules/hppa/md-modules2
-rw-r--r--debian/installer/modules/hppa/mouse-modules1
-rw-r--r--debian/installer/modules/hppa/multipath-modules1
-rw-r--r--debian/installer/modules/hppa/nbd-modules1
-rw-r--r--debian/installer/modules/hppa/nic-modules4
-rw-r--r--debian/installer/modules/hppa/nic-shared-modules1
-rw-r--r--debian/installer/modules/hppa/nic-usb-modules1
-rw-r--r--debian/installer/modules/hppa/pata-modules2
-rw-r--r--debian/installer/modules/hppa/ppp-modules2
-rw-r--r--debian/installer/modules/hppa/sata-modules2
-rw-r--r--debian/installer/modules/hppa/scsi-core-modules1
-rw-r--r--debian/installer/modules/hppa/scsi-modules18
-rw-r--r--debian/installer/modules/hppa/serial-modules1
-rw-r--r--debian/installer/modules/hppa/squashfs-modules1
-rw-r--r--debian/installer/modules/hppa/usb-modules1
-rw-r--r--debian/installer/modules/hppa/usb-serial-modules1
-rw-r--r--debian/installer/modules/hppa/usb-storage-modules2
-rw-r--r--debian/installer/modules/hppa/xfs-modules1
-rw-r--r--debian/installer/modules/i2c-modules3
-rw-r--r--debian/installer/modules/i386/acpi-modules2
-rw-r--r--debian/installer/modules/i386/ata-modules2
-rw-r--r--debian/installer/modules/i386/btrfs-modules1
-rw-r--r--debian/installer/modules/i386/cdrom-core-modules2
-rw-r--r--debian/installer/modules/i386/crc-modules2
-rw-r--r--debian/installer/modules/i386/crypto-dm-modules1
-rw-r--r--debian/installer/modules/i386/crypto-modules1
-rw-r--r--debian/installer/modules/i386/efi-modules1
-rw-r--r--debian/installer/modules/i386/event-modules1
-rw-r--r--debian/installer/modules/i386/ext4-modules1
-rw-r--r--debian/installer/modules/i386/f2fs-modules1
-rw-r--r--debian/installer/modules/i386/fat-modules2
-rw-r--r--debian/installer/modules/i386/fb-modules6
-rw-r--r--debian/installer/modules/i386/firewire-core-modules1
-rw-r--r--debian/installer/modules/i386/fuse-modules1
-rw-r--r--debian/installer/modules/i386/i2c-modules1
-rw-r--r--debian/installer/modules/i386/input-modules5
-rw-r--r--debian/installer/modules/i386/isofs-modules1
-rw-r--r--debian/installer/modules/i386/jfs-modules1
-rw-r--r--debian/installer/modules/i386/kernel-image1
-rw-r--r--debian/installer/modules/i386/loop-modules2
-rw-r--r--debian/installer/modules/i386/md-modules2
-rw-r--r--debian/installer/modules/i386/mmc-core-modules1
-rw-r--r--debian/installer/modules/i386/mmc-modules1
-rw-r--r--debian/installer/modules/i386/mouse-modules1
-rw-r--r--debian/installer/modules/i386/mtd-core-modules1
-rw-r--r--debian/installer/modules/i386/multipath-modules1
-rw-r--r--debian/installer/modules/i386/nbd-modules1
-rw-r--r--debian/installer/modules/i386/nic-modules1
-rw-r--r--debian/installer/modules/i386/nic-pcmcia-modules1
-rw-r--r--debian/installer/modules/i386/nic-shared-modules1
-rw-r--r--debian/installer/modules/i386/nic-usb-modules1
-rw-r--r--debian/installer/modules/i386/nic-wireless-modules1
-rw-r--r--debian/installer/modules/i386/pata-modules2
-rw-r--r--debian/installer/modules/i386/pcmcia-modules1
-rw-r--r--debian/installer/modules/i386/pcmcia-storage-modules1
-rw-r--r--debian/installer/modules/i386/ppp-modules2
-rw-r--r--debian/installer/modules/i386/rfkill-modules1
-rw-r--r--debian/installer/modules/i386/sata-modules2
-rw-r--r--debian/installer/modules/i386/scsi-core-modules4
-rw-r--r--debian/installer/modules/i386/scsi-modules1
-rw-r--r--debian/installer/modules/i386/scsi-nic-modules1
-rw-r--r--debian/installer/modules/i386/serial-modules1
-rw-r--r--debian/installer/modules/i386/sound-modules1
-rw-r--r--debian/installer/modules/i386/speakup-modules1
-rw-r--r--debian/installer/modules/i386/squashfs-modules1
-rw-r--r--debian/installer/modules/i386/udf-modules1
-rw-r--r--debian/installer/modules/i386/uinput-modules1
-rw-r--r--debian/installer/modules/i386/usb-modules1
-rw-r--r--debian/installer/modules/i386/usb-serial-modules1
-rw-r--r--debian/installer/modules/i386/usb-storage-modules2
-rw-r--r--debian/installer/modules/i386/xfs-modules2
-rw-r--r--debian/installer/modules/ia64/ata-modules1
-rw-r--r--debian/installer/modules/ia64/btrfs-modules1
-rw-r--r--debian/installer/modules/ia64/cdrom-core-modules2
-rw-r--r--debian/installer/modules/ia64/crc-modules2
-rw-r--r--debian/installer/modules/ia64/crypto-dm-modules1
-rw-r--r--debian/installer/modules/ia64/crypto-modules1
-rw-r--r--debian/installer/modules/ia64/event-modules1
-rw-r--r--debian/installer/modules/ia64/ext4-modules1
-rw-r--r--debian/installer/modules/ia64/f2fs-modules1
-rw-r--r--debian/installer/modules/ia64/fat-modules1
-rw-r--r--debian/installer/modules/ia64/fb-modules2
-rw-r--r--debian/installer/modules/ia64/firewire-core-modules2
-rw-r--r--debian/installer/modules/ia64/fuse-modules1
-rw-r--r--debian/installer/modules/ia64/i2c-modules1
-rw-r--r--debian/installer/modules/ia64/ide-core-modules1
-rw-r--r--debian/installer/modules/ia64/ide-modules2
-rw-r--r--debian/installer/modules/ia64/input-modules1
-rw-r--r--debian/installer/modules/ia64/isofs-modules1
-rw-r--r--debian/installer/modules/ia64/jfs-modules1
-rw-r--r--debian/installer/modules/ia64/kernel-image1
-rw-r--r--debian/installer/modules/ia64/loop-modules2
-rw-r--r--debian/installer/modules/ia64/md-modules2
-rw-r--r--debian/installer/modules/ia64/mouse-modules1
-rw-r--r--debian/installer/modules/ia64/mtd-core-modules1
-rw-r--r--debian/installer/modules/ia64/multipath-modules1
-rw-r--r--debian/installer/modules/ia64/nbd-modules1
-rw-r--r--debian/installer/modules/ia64/nic-modules1
-rw-r--r--debian/installer/modules/ia64/nic-shared-modules1
-rw-r--r--debian/installer/modules/ia64/nic-usb-modules1
-rw-r--r--debian/installer/modules/ia64/pata-modules1
-rw-r--r--debian/installer/modules/ia64/pcmcia-modules4
-rw-r--r--debian/installer/modules/ia64/ppp-modules2
-rw-r--r--debian/installer/modules/ia64/sata-modules2
-rw-r--r--debian/installer/modules/ia64/scsi-core-modules1
-rw-r--r--debian/installer/modules/ia64/scsi-modules1
-rw-r--r--debian/installer/modules/ia64/scsi-nic-modules1
-rw-r--r--debian/installer/modules/ia64/serial-modules1
-rw-r--r--debian/installer/modules/ia64/squashfs-modules1
-rw-r--r--debian/installer/modules/ia64/udf-modules1
-rw-r--r--debian/installer/modules/ia64/uinput-modules1
-rw-r--r--debian/installer/modules/ia64/usb-modules1
-rw-r--r--debian/installer/modules/ia64/usb-serial-modules1
-rw-r--r--debian/installer/modules/ia64/usb-storage-modules2
-rw-r--r--debian/installer/modules/ia64/xfs-modules2
-rw-r--r--debian/installer/modules/input-modules44
-rw-r--r--debian/installer/modules/ipv6-modules1
-rw-r--r--debian/installer/modules/isofs-modules1
-rw-r--r--debian/installer/modules/jffs2-modules1
-rw-r--r--debian/installer/modules/jfs-modules1
-rw-r--r--debian/installer/modules/kernel-image29
-rw-r--r--debian/installer/modules/leds-modules1
-rw-r--r--debian/installer/modules/loop-modules1
-rw-r--r--debian/installer/modules/m68k/affs-modules1
-rw-r--r--debian/installer/modules/m68k/ata-modules1
-rw-r--r--debian/installer/modules/m68k/btrfs-modules1
-rw-r--r--debian/installer/modules/m68k/cdrom-core-modules3
-rw-r--r--debian/installer/modules/m68k/crc-modules1
-rw-r--r--debian/installer/modules/m68k/crypto-modules1
-rw-r--r--debian/installer/modules/m68k/ext4-modules1
-rw-r--r--debian/installer/modules/m68k/fat-modules1
-rw-r--r--debian/installer/modules/m68k/fuse-modules1
-rw-r--r--debian/installer/modules/m68k/hfs-modules1
-rw-r--r--debian/installer/modules/m68k/ide-core-modules1
-rw-r--r--debian/installer/modules/m68k/ide-modules6
-rw-r--r--debian/installer/modules/m68k/isofs-modules1
-rw-r--r--debian/installer/modules/m68k/kernel-image1
-rw-r--r--debian/installer/modules/m68k/loop-modules1
-rw-r--r--debian/installer/modules/m68k/md-modules1
-rw-r--r--debian/installer/modules/m68k/nbd-modules1
-rw-r--r--debian/installer/modules/m68k/nic-modules1
-rw-r--r--debian/installer/modules/m68k/nic-shared-modules1
-rw-r--r--debian/installer/modules/m68k/pata-modules1
-rw-r--r--debian/installer/modules/m68k/ppp-modules1
-rw-r--r--debian/installer/modules/m68k/scsi-core-modules1
-rw-r--r--debian/installer/modules/m68k/scsi-modules13
-rw-r--r--debian/installer/modules/m68k/squashfs-modules1
-rw-r--r--debian/installer/modules/m68k/udf-modules1
-rw-r--r--debian/installer/modules/md-modules16
-rw-r--r--debian/installer/modules/minix-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/affs-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/ata-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/btrfs-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/cdrom-core-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/crc-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/crypto-dm-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/crypto-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/event-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/ext4-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/f2fs-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/fat-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/fb-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/fuse-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/i2c-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/input-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/isofs-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/jfs-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/kernel-image1
-rw-r--r--debian/installer/modules/mips-4kc-malta/loop-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/md-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/minix-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/mmc-core-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/mmc-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/mouse-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/mtd-core-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/multipath-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/nbd-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/nic-modules4
-rw-r--r--debian/installer/modules/mips-4kc-malta/nic-shared-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/nic-usb-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/nic-wireless-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/pata-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/ppp-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/qnx4-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/sata-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/scsi-core-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/scsi-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/scsi-nic-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/sound-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/squashfs-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/udf-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/usb-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/usb-serial-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/usb-storage-modules1
-rw-r--r--debian/installer/modules/mips-4kc-malta/xfs-modules1
-rw-r--r--debian/installer/modules/mips-octeon/affs-modules1
-rw-r--r--debian/installer/modules/mips-octeon/btrfs-modules1
-rw-r--r--debian/installer/modules/mips-octeon/cdrom-core-modules1
-rw-r--r--debian/installer/modules/mips-octeon/crc-modules1
-rw-r--r--debian/installer/modules/mips-octeon/crypto-dm-modules1
-rw-r--r--debian/installer/modules/mips-octeon/crypto-modules1
-rw-r--r--debian/installer/modules/mips-octeon/event-modules1
-rw-r--r--debian/installer/modules/mips-octeon/ext4-modules1
-rw-r--r--debian/installer/modules/mips-octeon/f2fs-modules1
-rw-r--r--debian/installer/modules/mips-octeon/fat-modules1
-rw-r--r--debian/installer/modules/mips-octeon/fuse-modules1
-rw-r--r--debian/installer/modules/mips-octeon/input-modules1
-rw-r--r--debian/installer/modules/mips-octeon/isofs-modules1
-rw-r--r--debian/installer/modules/mips-octeon/jfs-modules1
-rw-r--r--debian/installer/modules/mips-octeon/kernel-image1
-rw-r--r--debian/installer/modules/mips-octeon/loop-modules1
-rw-r--r--debian/installer/modules/mips-octeon/md-modules1
-rw-r--r--debian/installer/modules/mips-octeon/minix-modules1
-rw-r--r--debian/installer/modules/mips-octeon/multipath-modules1
-rw-r--r--debian/installer/modules/mips-octeon/nbd-modules1
-rw-r--r--debian/installer/modules/mips-octeon/nic-modules15
-rw-r--r--debian/installer/modules/mips-octeon/nic-shared-modules1
-rw-r--r--debian/installer/modules/mips-octeon/nic-usb-modules1
-rw-r--r--debian/installer/modules/mips-octeon/nic-wireless-modules1
-rw-r--r--debian/installer/modules/mips-octeon/pata-modules1
-rw-r--r--debian/installer/modules/mips-octeon/ppp-modules1
-rw-r--r--debian/installer/modules/mips-octeon/qnx4-modules1
-rw-r--r--debian/installer/modules/mips-octeon/rtc-modules1
-rw-r--r--debian/installer/modules/mips-octeon/sata-modules1
-rw-r--r--debian/installer/modules/mips-octeon/scsi-core-modules1
-rw-r--r--debian/installer/modules/mips-octeon/scsi-modules4
-rw-r--r--debian/installer/modules/mips-octeon/scsi-nic-modules1
-rw-r--r--debian/installer/modules/mips-octeon/sound-modules1
-rw-r--r--debian/installer/modules/mips-octeon/squashfs-modules1
-rw-r--r--debian/installer/modules/mips-octeon/udf-modules1
-rw-r--r--debian/installer/modules/mips-octeon/usb-modules2
-rw-r--r--debian/installer/modules/mips-octeon/usb-serial-modules1
-rw-r--r--debian/installer/modules/mips-octeon/usb-storage-modules1
-rw-r--r--debian/installer/modules/mips-octeon/xfs-modules1
-rw-r--r--debian/installer/modules/mips/btrfs-modules1
-rw-r--r--debian/installer/modules/mips/crc-modules1
-rw-r--r--debian/installer/modules/mips/crypto-dm-modules1
-rw-r--r--debian/installer/modules/mips/crypto-modules1
-rw-r--r--debian/installer/modules/mips/ext4-modules1
-rw-r--r--debian/installer/modules/mips/f2fs-modules1
-rw-r--r--debian/installer/modules/mips/fuse-modules1
-rw-r--r--debian/installer/modules/mips/isofs-modules1
-rw-r--r--debian/installer/modules/mips/jfs-modules2
-rw-r--r--debian/installer/modules/mips/kernel-image1
-rw-r--r--debian/installer/modules/mips/loop-modules2
-rw-r--r--debian/installer/modules/mips/md-modules2
-rw-r--r--debian/installer/modules/mips/multipath-modules1
-rw-r--r--debian/installer/modules/mips/nbd-modules1
-rw-r--r--debian/installer/modules/mips/nic-shared-modules1
-rw-r--r--debian/installer/modules/mips/squashfs-modules1
-rw-r--r--debian/installer/modules/mips/udf-modules1
-rw-r--r--debian/installer/modules/mips/xfs-modules2
l---------debian/installer/modules/mips32r61
l---------debian/installer/modules/mips32r6el1
l---------debian/installer/modules/mips641
l---------debian/installer/modules/mips64-5kc-malta1
l---------debian/installer/modules/mips64-octeon1
l---------debian/installer/modules/mips64el-5kc-malta1
l---------debian/installer/modules/mips64el-loongson-31
l---------debian/installer/modules/mips64el-octeon1
l---------debian/installer/modules/mips64r61
l---------debian/installer/modules/mips64r6el1
l---------debian/installer/modules/mipsel-4kc-malta1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/affs-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/ata-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/btrfs-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/cdrom-core-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/crc-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/crypto-dm-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/crypto-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/event-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/ext4-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/f2fs-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/fat-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/fb-modules6
-rw-r--r--debian/installer/modules/mipsel-loongson-3/firewire-core-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/fuse-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/input-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/isofs-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/jfs-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/kernel-image1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/loop-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/md-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/minix-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/mtd-core-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/multipath-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/nbd-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/nfs-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/nic-modules11
-rw-r--r--debian/installer/modules/mipsel-loongson-3/nic-shared-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/nic-usb-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/nic-wireless-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/pata-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/ppp-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/qnx4-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/sata-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/scsi-core-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/scsi-modules4
-rw-r--r--debian/installer/modules/mipsel-loongson-3/scsi-nic-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/sound-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/speakup-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/squashfs-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/udf-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/usb-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/usb-serial-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/usb-storage-modules1
-rw-r--r--debian/installer/modules/mipsel-loongson-3/xfs-modules1
l---------debian/installer/modules/mipsel-octeon1
-rw-r--r--debian/installer/modules/mmc-core-modules1
-rw-r--r--debian/installer/modules/mmc-modules8
-rw-r--r--debian/installer/modules/mouse-modules1
-rw-r--r--debian/installer/modules/mtd-core-modules1
-rw-r--r--debian/installer/modules/mtd-modules1
-rw-r--r--debian/installer/modules/multipath-modules3
-rw-r--r--debian/installer/modules/nbd-modules1
-rw-r--r--debian/installer/modules/nfs-modules3
-rw-r--r--debian/installer/modules/nic-modules29
-rw-r--r--debian/installer/modules/nic-pcmcia-modules10
-rw-r--r--debian/installer/modules/nic-shared-modules7
-rw-r--r--debian/installer/modules/nic-usb-modules15
-rw-r--r--debian/installer/modules/nic-wireless-modules27
-rw-r--r--debian/installer/modules/pata-modules9
-rw-r--r--debian/installer/modules/pcmcia-modules8
-rw-r--r--debian/installer/modules/pcmcia-storage-modules2
-rw-r--r--debian/installer/modules/powerpc-powerpc64/affs-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/ata-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/btrfs-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/cdrom-core-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/crc-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/crypto-dm-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/crypto-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/event-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/ext4-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/f2fs-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/fancontrol-modules19
-rw-r--r--debian/installer/modules/powerpc-powerpc64/fat-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/fb-modules2
-rw-r--r--debian/installer/modules/powerpc-powerpc64/firewire-core-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/fuse-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/hfs-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/hypervisor-modules2
-rw-r--r--debian/installer/modules/powerpc-powerpc64/i2c-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/input-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/isofs-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/jfs-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/kernel-image1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/loop-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/md-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/mmc-core-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/mouse-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/mtd-core-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/multipath-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/nbd-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/nic-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/nic-pcmcia-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/nic-shared-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/nic-usb-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/nic-wireless-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/pata-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/pcmcia-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/pcmcia-storage-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/ppp-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/sata-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/scsi-core-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/scsi-modules7
-rw-r--r--debian/installer/modules/powerpc-powerpc64/scsi-nic-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/serial-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/squashfs-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/udf-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/uinput-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/usb-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/usb-serial-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/usb-storage-modules1
-rw-r--r--debian/installer/modules/powerpc-powerpc64/xfs-modules1
-rw-r--r--debian/installer/modules/powerpc/affs-modules2
-rw-r--r--debian/installer/modules/powerpc/ata-modules1
-rw-r--r--debian/installer/modules/powerpc/btrfs-modules1
-rw-r--r--debian/installer/modules/powerpc/cdrom-core-modules2
-rw-r--r--debian/installer/modules/powerpc/crc-modules1
-rw-r--r--debian/installer/modules/powerpc/crypto-dm-modules1
-rw-r--r--debian/installer/modules/powerpc/crypto-modules1
-rw-r--r--debian/installer/modules/powerpc/event-modules1
-rw-r--r--debian/installer/modules/powerpc/ext4-modules1
-rw-r--r--debian/installer/modules/powerpc/f2fs-modules1
-rw-r--r--debian/installer/modules/powerpc/fat-modules2
-rw-r--r--debian/installer/modules/powerpc/fb-modules7
-rw-r--r--debian/installer/modules/powerpc/firewire-core-modules1
-rw-r--r--debian/installer/modules/powerpc/fuse-modules1
-rw-r--r--debian/installer/modules/powerpc/hfs-modules1
-rw-r--r--debian/installer/modules/powerpc/input-modules3
-rw-r--r--debian/installer/modules/powerpc/isofs-modules1
-rw-r--r--debian/installer/modules/powerpc/jfs-modules2
-rw-r--r--debian/installer/modules/powerpc/kernel-image2
-rw-r--r--debian/installer/modules/powerpc/loop-modules2
-rw-r--r--debian/installer/modules/powerpc/md-modules2
-rw-r--r--debian/installer/modules/powerpc/mmc-core-modules1
-rw-r--r--debian/installer/modules/powerpc/mouse-modules1
-rw-r--r--debian/installer/modules/powerpc/multipath-modules1
-rw-r--r--debian/installer/modules/powerpc/nbd-modules1
-rw-r--r--debian/installer/modules/powerpc/nic-modules4
-rw-r--r--debian/installer/modules/powerpc/nic-pcmcia-modules1
-rw-r--r--debian/installer/modules/powerpc/nic-shared-modules2
-rw-r--r--debian/installer/modules/powerpc/nic-usb-modules1
-rw-r--r--debian/installer/modules/powerpc/nic-wireless-modules1
-rw-r--r--debian/installer/modules/powerpc/pata-modules1
-rw-r--r--debian/installer/modules/powerpc/pcmcia-modules1
-rw-r--r--debian/installer/modules/powerpc/pcmcia-storage-modules2
-rw-r--r--debian/installer/modules/powerpc/ppp-modules2
-rw-r--r--debian/installer/modules/powerpc/sata-modules2
-rw-r--r--debian/installer/modules/powerpc/scsi-core-modules1
-rw-r--r--debian/installer/modules/powerpc/scsi-modules1
-rw-r--r--debian/installer/modules/powerpc/scsi-nic-modules1
-rw-r--r--debian/installer/modules/powerpc/serial-modules1
-rw-r--r--debian/installer/modules/powerpc/squashfs-modules1
-rw-r--r--debian/installer/modules/powerpc/udf-modules1
-rw-r--r--debian/installer/modules/powerpc/uinput-modules1
-rw-r--r--debian/installer/modules/powerpc/usb-modules1
-rw-r--r--debian/installer/modules/powerpc/usb-serial-modules1
-rw-r--r--debian/installer/modules/powerpc/usb-storage-modules2
-rw-r--r--debian/installer/modules/powerpc/xfs-modules2
l---------debian/installer/modules/ppc641
-rw-r--r--debian/installer/modules/ppc64el/ata-modules1
-rw-r--r--debian/installer/modules/ppc64el/btrfs-modules1
-rw-r--r--debian/installer/modules/ppc64el/cdrom-core-modules1
-rw-r--r--debian/installer/modules/ppc64el/crc-modules1
-rw-r--r--debian/installer/modules/ppc64el/crypto-dm-modules1
-rw-r--r--debian/installer/modules/ppc64el/crypto-modules1
-rw-r--r--debian/installer/modules/ppc64el/event-modules1
-rw-r--r--debian/installer/modules/ppc64el/ext4-modules1
-rw-r--r--debian/installer/modules/ppc64el/f2fs-modules1
-rw-r--r--debian/installer/modules/ppc64el/fancontrol-modules1
-rw-r--r--debian/installer/modules/ppc64el/fat-modules1
-rw-r--r--debian/installer/modules/ppc64el/fb-modules1
-rw-r--r--debian/installer/modules/ppc64el/firewire-core-modules1
-rw-r--r--debian/installer/modules/ppc64el/fuse-modules1
-rw-r--r--debian/installer/modules/ppc64el/hypervisor-modules1
-rw-r--r--debian/installer/modules/ppc64el/i2c-modules1
-rw-r--r--debian/installer/modules/ppc64el/input-modules1
-rw-r--r--debian/installer/modules/ppc64el/isofs-modules1
-rw-r--r--debian/installer/modules/ppc64el/jfs-modules1
-rw-r--r--debian/installer/modules/ppc64el/kernel-image1
-rw-r--r--debian/installer/modules/ppc64el/loop-modules1
-rw-r--r--debian/installer/modules/ppc64el/md-modules1
-rw-r--r--debian/installer/modules/ppc64el/mouse-modules1
-rw-r--r--debian/installer/modules/ppc64el/mtd-core-modules1
-rw-r--r--debian/installer/modules/ppc64el/multipath-modules1
-rw-r--r--debian/installer/modules/ppc64el/nbd-modules1
-rw-r--r--debian/installer/modules/ppc64el/nic-modules1
-rw-r--r--debian/installer/modules/ppc64el/nic-shared-modules1
-rw-r--r--debian/installer/modules/ppc64el/nic-usb-modules1
-rw-r--r--debian/installer/modules/ppc64el/nic-wireless-modules1
-rw-r--r--debian/installer/modules/ppc64el/ppp-modules1
-rw-r--r--debian/installer/modules/ppc64el/sata-modules1
-rw-r--r--debian/installer/modules/ppc64el/scsi-core-modules1
-rw-r--r--debian/installer/modules/ppc64el/scsi-modules1
-rw-r--r--debian/installer/modules/ppc64el/scsi-nic-modules1
-rw-r--r--debian/installer/modules/ppc64el/serial-modules1
-rw-r--r--debian/installer/modules/ppc64el/squashfs-modules1
-rw-r--r--debian/installer/modules/ppc64el/udf-modules1
-rw-r--r--debian/installer/modules/ppc64el/uinput-modules1
-rw-r--r--debian/installer/modules/ppc64el/usb-modules1
-rw-r--r--debian/installer/modules/ppc64el/usb-serial-modules1
-rw-r--r--debian/installer/modules/ppc64el/usb-storage-modules1
-rw-r--r--debian/installer/modules/ppc64el/xfs-modules1
-rw-r--r--debian/installer/modules/ppp-modules5
-rw-r--r--debian/installer/modules/qnx4-modules1
-rw-r--r--debian/installer/modules/rfkill-modules1
-rw-r--r--debian/installer/modules/riscv64/ata-modules1
-rw-r--r--debian/installer/modules/riscv64/btrfs-modules1
-rw-r--r--debian/installer/modules/riscv64/cdrom-core-modules1
-rw-r--r--debian/installer/modules/riscv64/crc-modules1
-rw-r--r--debian/installer/modules/riscv64/crypto-dm-modules1
-rw-r--r--debian/installer/modules/riscv64/crypto-modules1
-rw-r--r--debian/installer/modules/riscv64/event-modules1
-rw-r--r--debian/installer/modules/riscv64/ext4-modules1
-rw-r--r--debian/installer/modules/riscv64/f2fs-modules1
-rw-r--r--debian/installer/modules/riscv64/fat-modules1
-rw-r--r--debian/installer/modules/riscv64/fb-modules1
-rw-r--r--debian/installer/modules/riscv64/fuse-modules1
-rw-r--r--debian/installer/modules/riscv64/i2c-modules1
-rw-r--r--debian/installer/modules/riscv64/input-modules1
-rw-r--r--debian/installer/modules/riscv64/isofs-modules1
-rw-r--r--debian/installer/modules/riscv64/jfs-modules1
-rw-r--r--debian/installer/modules/riscv64/kernel-image1
-rw-r--r--debian/installer/modules/riscv64/loop-modules1
-rw-r--r--debian/installer/modules/riscv64/md-modules1
-rw-r--r--debian/installer/modules/riscv64/mmc-core-modules1
-rw-r--r--debian/installer/modules/riscv64/mmc-modules1
-rw-r--r--debian/installer/modules/riscv64/mtd-core-modules1
-rw-r--r--debian/installer/modules/riscv64/mtd-modules1
-rw-r--r--debian/installer/modules/riscv64/multipath-modules1
-rw-r--r--debian/installer/modules/riscv64/nbd-modules1
-rw-r--r--debian/installer/modules/riscv64/nic-modules1
-rw-r--r--debian/installer/modules/riscv64/nic-shared-modules1
-rw-r--r--debian/installer/modules/riscv64/nic-usb-modules1
-rw-r--r--debian/installer/modules/riscv64/nic-wireless-modules1
-rw-r--r--debian/installer/modules/riscv64/pata-modules1
-rw-r--r--debian/installer/modules/riscv64/ppp-modules1
-rw-r--r--debian/installer/modules/riscv64/sata-modules1
-rw-r--r--debian/installer/modules/riscv64/scsi-core-modules1
-rw-r--r--debian/installer/modules/riscv64/scsi-modules2
-rw-r--r--debian/installer/modules/riscv64/scsi-nic-modules1
-rw-r--r--debian/installer/modules/riscv64/squashfs-modules1
-rw-r--r--debian/installer/modules/riscv64/udf-modules1
-rw-r--r--debian/installer/modules/riscv64/usb-modules1
-rw-r--r--debian/installer/modules/riscv64/usb-serial-modules1
-rw-r--r--debian/installer/modules/riscv64/usb-storage-modules1
-rw-r--r--debian/installer/modules/rtc-modules2
-rw-r--r--debian/installer/modules/s390x/btrfs-modules1
-rw-r--r--debian/installer/modules/s390x/cdrom-core-modules1
-rw-r--r--debian/installer/modules/s390x/crc-modules1
-rw-r--r--debian/installer/modules/s390x/crypto-dm-modules1
-rw-r--r--debian/installer/modules/s390x/crypto-modules1
-rw-r--r--debian/installer/modules/s390x/dasd-extra-modules1
-rw-r--r--debian/installer/modules/s390x/dasd-modules2
-rw-r--r--debian/installer/modules/s390x/ext4-modules1
-rw-r--r--debian/installer/modules/s390x/f2fs-modules1
-rw-r--r--debian/installer/modules/s390x/fat-modules2
-rw-r--r--debian/installer/modules/s390x/fuse-modules1
-rw-r--r--debian/installer/modules/s390x/isofs-modules1
-rw-r--r--debian/installer/modules/s390x/kernel-image2
-rw-r--r--debian/installer/modules/s390x/loop-modules1
-rw-r--r--debian/installer/modules/s390x/md-modules2
-rw-r--r--debian/installer/modules/s390x/mtd-core-modules1
-rw-r--r--debian/installer/modules/s390x/multipath-modules1
-rw-r--r--debian/installer/modules/s390x/nbd-modules1
-rw-r--r--debian/installer/modules/s390x/nic-modules7
-rw-r--r--debian/installer/modules/s390x/scsi-core-modules2
-rw-r--r--debian/installer/modules/s390x/scsi-modules2
-rw-r--r--debian/installer/modules/s390x/udf-modules1
-rw-r--r--debian/installer/modules/s390x/xfs-modules2
-rw-r--r--debian/installer/modules/sata-modules13
-rw-r--r--debian/installer/modules/scsi-core-modules4
-rw-r--r--debian/installer/modules/scsi-modules47
-rw-r--r--debian/installer/modules/scsi-nic-modules4
-rw-r--r--debian/installer/modules/serial-modules3
-rw-r--r--debian/installer/modules/sh4-sh7751r/btrfs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/cdrom-core-modules2
-rw-r--r--debian/installer/modules/sh4-sh7751r/crc-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/crypto-dm-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/crypto-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/ext4-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/f2fs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/fat-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/firewire-core-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/fuse-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/i2c-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/isofs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/jfs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/kernel-image1
-rw-r--r--debian/installer/modules/sh4-sh7751r/loop-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/md-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/minix-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/multipath-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/nbd-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/nic-modules6
-rw-r--r--debian/installer/modules/sh4-sh7751r/nic-shared-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/nic-usb-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/pata-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/ppp-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/sata-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/sound-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/speakup-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/squashfs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/udf-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/usb-serial-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/usb-storage-modules1
-rw-r--r--debian/installer/modules/sh4-sh7751r/xfs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/btrfs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/cdrom-core-modules2
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/crc-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/crypto-dm-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/crypto-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/ext4-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/f2fs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/fat-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/firewire-core-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/fuse-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/isofs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/jfs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/kernel-image1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/loop-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/md-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/minix-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/multipath-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/nbd-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/nic-modules6
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/nic-shared-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/nic-usb-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/pata-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/ppp-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/sata-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/sound-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/speakup-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/squashfs-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/udf-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/usb-serial-modules1
-rw-r--r--debian/installer/modules/sh4-sh7785lcr/xfs-modules1
-rw-r--r--debian/installer/modules/sound-modules15
-rw-r--r--debian/installer/modules/sparc64/ata-modules1
-rw-r--r--debian/installer/modules/sparc64/btrfs-modules1
-rw-r--r--debian/installer/modules/sparc64/cdrom-core-modules2
-rw-r--r--debian/installer/modules/sparc64/crc-modules1
-rw-r--r--debian/installer/modules/sparc64/crypto-dm-modules1
-rw-r--r--debian/installer/modules/sparc64/crypto-modules1
-rw-r--r--debian/installer/modules/sparc64/ext4-modules1
-rw-r--r--debian/installer/modules/sparc64/f2fs-modules1
-rw-r--r--debian/installer/modules/sparc64/fat-modules2
-rw-r--r--debian/installer/modules/sparc64/fb-modules1
-rw-r--r--debian/installer/modules/sparc64/fuse-modules1
-rw-r--r--debian/installer/modules/sparc64/i2c-modules1
-rw-r--r--debian/installer/modules/sparc64/input-modules1
-rw-r--r--debian/installer/modules/sparc64/isofs-modules1
-rw-r--r--debian/installer/modules/sparc64/jfs-modules1
-rw-r--r--debian/installer/modules/sparc64/kernel-image1
-rw-r--r--debian/installer/modules/sparc64/md-modules2
-rw-r--r--debian/installer/modules/sparc64/multipath-modules1
-rw-r--r--debian/installer/modules/sparc64/nbd-modules1
-rw-r--r--debian/installer/modules/sparc64/nic-modules4
-rw-r--r--debian/installer/modules/sparc64/nic-shared-modules1
-rw-r--r--debian/installer/modules/sparc64/nic-usb-modules1
-rw-r--r--debian/installer/modules/sparc64/pata-modules1
-rw-r--r--debian/installer/modules/sparc64/ppp-modules2
-rw-r--r--debian/installer/modules/sparc64/sata-modules1
-rw-r--r--debian/installer/modules/sparc64/scsi-core-modules6
-rw-r--r--debian/installer/modules/sparc64/scsi-modules26
-rw-r--r--debian/installer/modules/sparc64/squashfs-modules1
-rw-r--r--debian/installer/modules/sparc64/udf-modules1
-rw-r--r--debian/installer/modules/sparc64/ufs-modules1
-rw-r--r--debian/installer/modules/sparc64/usb-modules1
-rw-r--r--debian/installer/modules/sparc64/usb-serial-modules1
-rw-r--r--debian/installer/modules/sparc64/usb-storage-modules2
-rw-r--r--debian/installer/modules/sparc64/xfs-modules2
-rw-r--r--debian/installer/modules/speakup-modules15
-rw-r--r--debian/installer/modules/squashfs-modules1
-rw-r--r--debian/installer/modules/udf-modules1
-rw-r--r--debian/installer/modules/ufs-modules1
-rw-r--r--debian/installer/modules/uinput-modules1
-rw-r--r--debian/installer/modules/usb-modules21
-rw-r--r--debian/installer/modules/usb-serial-modules28
-rw-r--r--debian/installer/modules/usb-storage-modules2
-rw-r--r--debian/installer/modules/xfs-modules2
-rw-r--r--debian/installer/package-list458
-rw-r--r--debian/lib/python/debian_linux/__init__.py1
-rw-r--r--debian/lib/python/debian_linux/abi.py45
-rw-r--r--debian/lib/python/debian_linux/config.py256
-rw-r--r--debian/lib/python/debian_linux/debian.py700
-rw-r--r--debian/lib/python/debian_linux/firmware.py90
-rw-r--r--debian/lib/python/debian_linux/gencontrol.py437
-rw-r--r--debian/lib/python/debian_linux/kconfig.py93
-rw-r--r--debian/lib/python/debian_linux/utils.py108
-rw-r--r--debian/libcpupower-dev.install2
-rw-r--r--debian/libcpupower1.install1
-rw-r--r--debian/libcpupower1.symbols40
-rw-r--r--debian/liblockdep-dev.README.Debian13
-rw-r--r--debian/liblockdep-dev.docs1
-rw-r--r--debian/liblockdep-dev.install3
-rwxr-xr-xdebian/linux-cpupower.install4
-rwxr-xr-xdebian/linux-cpupower.manpages3
-rw-r--r--debian/linux-doc.maintscript1
-rw-r--r--debian/linux-headers-4kc-malta.maintscript1
-rwxr-xr-xdebian/linux-headers-5.10.0-28-4kc-malta.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-5kc-malta.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-686-pae.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-686.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-alpha-generic.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-alpha-smp.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-amd64.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-arm64.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-armmp-lpae.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-armmp.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-cloud-amd64.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-cloud-arm64.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-itanium.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-loongson-3.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-m68k.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-marvell.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-mckinley.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-mips32r6.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-mips32r6el.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-mips64r6.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-mips64r6el.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-octeon.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-parisc.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-parisc64.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-powerpc-smp.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-powerpc.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-powerpc64.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-powerpc64le.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-riscv64.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-rpi.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-rt-686-pae.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-rt-amd64.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-rt-arm64.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-rt-armmp.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-s390x.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-sh7751r.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-sh7785lcr.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-sparc64-smp.postinst18
-rwxr-xr-xdebian/linux-headers-5.10.0-28-sparc64.postinst18
-rw-r--r--debian/linux-headers-5kc-malta.maintscript1
-rw-r--r--debian/linux-headers-alpha-generic.maintscript1
-rw-r--r--debian/linux-headers-alpha-smp.maintscript1
-rw-r--r--debian/linux-headers-armmp-lpae.maintscript1
-rw-r--r--debian/linux-headers-armmp.maintscript1
-rw-r--r--debian/linux-headers-itanium.maintscript1
-rw-r--r--debian/linux-headers-loongson-3.maintscript1
-rw-r--r--debian/linux-headers-m68k.maintscript1
-rw-r--r--debian/linux-headers-marvell.maintscript1
-rw-r--r--debian/linux-headers-mckinley.maintscript1
-rw-r--r--debian/linux-headers-mips32r6.maintscript1
-rw-r--r--debian/linux-headers-mips32r6el.maintscript1
-rw-r--r--debian/linux-headers-mips64r6.maintscript1
-rw-r--r--debian/linux-headers-mips64r6el.maintscript1
-rw-r--r--debian/linux-headers-octeon.maintscript1
-rw-r--r--debian/linux-headers-parisc.maintscript1
-rw-r--r--debian/linux-headers-parisc64.maintscript1
-rw-r--r--debian/linux-headers-powerpc-smp.maintscript1
-rw-r--r--debian/linux-headers-powerpc.maintscript1
-rw-r--r--debian/linux-headers-powerpc64.maintscript1
-rw-r--r--debian/linux-headers-powerpc64le.maintscript1
-rw-r--r--debian/linux-headers-riscv64.maintscript1
-rw-r--r--debian/linux-headers-rpi.maintscript1
-rw-r--r--debian/linux-headers-rt-armmp.maintscript1
-rw-r--r--debian/linux-headers-s390x.maintscript1
-rw-r--r--debian/linux-headers-sh7751r.maintscript1
-rw-r--r--debian/linux-headers-sh7785lcr.maintscript1
-rw-r--r--debian/linux-headers-sparc64-smp.maintscript1
-rw-r--r--debian/linux-headers-sparc64.maintscript1
-rw-r--r--debian/linux-image-4kc-malta-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-4kc-malta-dbg.maintscript1
-rw-r--r--debian/linux-image-4kc-malta.bug-presubj5
-rw-r--r--debian/linux-image-4kc-malta.maintscript1
-rwxr-xr-xdebian/linux-image-5.10.0-28-4kc-malta-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-4kc-malta.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-4kc-malta.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-4kc-malta.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-4kc-malta.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-5kc-malta-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-5kc-malta.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-5kc-malta.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-5kc-malta.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-5kc-malta.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-686-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-686-pae-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-686-pae-unsigned.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-686-pae-unsigned.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-686-pae-unsigned.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-686-pae-unsigned.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-686-unsigned.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-686-unsigned.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-686-unsigned.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-686-unsigned.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-alpha-generic-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-alpha-generic.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-alpha-generic.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-alpha-generic.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-alpha-generic.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-alpha-smp-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-alpha-smp.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-alpha-smp.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-alpha-smp.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-alpha-smp.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-amd64-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-amd64-unsigned.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-amd64-unsigned.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-amd64-unsigned.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-amd64-unsigned.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-arm64-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-arm64-unsigned.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-arm64-unsigned.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-arm64-unsigned.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-arm64-unsigned.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-armmp-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-armmp-lpae-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-armmp-lpae.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-armmp-lpae.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-armmp-lpae.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-armmp-lpae.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-armmp.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-armmp.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-armmp.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-armmp.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-cloud-amd64-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-cloud-amd64-unsigned.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-cloud-amd64-unsigned.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-cloud-amd64-unsigned.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-cloud-amd64-unsigned.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-cloud-arm64-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-cloud-arm64-unsigned.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-cloud-arm64-unsigned.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-cloud-arm64-unsigned.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-cloud-arm64-unsigned.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-itanium-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-itanium.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-itanium.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-itanium.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-itanium.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-loongson-3-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-loongson-3.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-loongson-3.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-loongson-3.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-loongson-3.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-m68k-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-m68k.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-m68k.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-m68k.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-m68k.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-marvell-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-marvell.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-marvell.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-marvell.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-marvell.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-mckinley-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-mckinley.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-mckinley.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-mckinley.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-mckinley.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips32r6-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips32r6.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips32r6.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips32r6.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips32r6.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips32r6el-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips32r6el.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips32r6el.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips32r6el.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips32r6el.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips64r6-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips64r6.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips64r6.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips64r6.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips64r6.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips64r6el-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips64r6el.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips64r6el.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips64r6el.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-mips64r6el.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-octeon-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-octeon.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-octeon.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-octeon.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-octeon.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-parisc.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-parisc.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-parisc.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-parisc.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-parisc64.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-parisc64.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-parisc64.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-parisc64.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc-smp-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc-smp.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc-smp.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc-smp.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc-smp.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc64-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc64.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc64.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc64.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc64.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc64le-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc64le.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc64le.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc64le.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-powerpc64le.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-riscv64-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-riscv64.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-riscv64.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-riscv64.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-riscv64.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-rpi-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-rpi.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-rpi.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-rpi.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-rpi.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-686-pae-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-686-pae-unsigned.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-686-pae-unsigned.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-686-pae-unsigned.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-686-pae-unsigned.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-amd64-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-amd64-unsigned.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-amd64-unsigned.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-amd64-unsigned.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-amd64-unsigned.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-arm64-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-arm64-unsigned.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-arm64-unsigned.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-arm64-unsigned.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-arm64-unsigned.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-armmp-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-armmp.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-armmp.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-armmp.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-rt-armmp.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-s390x-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-s390x.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-s390x.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-s390x.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-s390x.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-sh7751r-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-sh7751r.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-sh7751r.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-sh7751r.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-sh7751r.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-sh7785lcr-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-sh7785lcr.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-sh7785lcr.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-sh7785lcr.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-sh7785lcr.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-sparc64-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-sparc64-smp-dbg.lintian-overrides15
-rwxr-xr-xdebian/linux-image-5.10.0-28-sparc64-smp.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-sparc64-smp.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-sparc64-smp.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-sparc64-smp.prerm17
-rwxr-xr-xdebian/linux-image-5.10.0-28-sparc64.postinst25
-rwxr-xr-xdebian/linux-image-5.10.0-28-sparc64.postrm31
-rwxr-xr-xdebian/linux-image-5.10.0-28-sparc64.preinst21
-rwxr-xr-xdebian/linux-image-5.10.0-28-sparc64.prerm17
-rw-r--r--debian/linux-image-5kc-malta-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-5kc-malta-dbg.maintscript1
-rw-r--r--debian/linux-image-5kc-malta.bug-presubj5
-rw-r--r--debian/linux-image-5kc-malta.maintscript1
-rw-r--r--debian/linux-image-686-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-686-dbg.maintscript1
-rw-r--r--debian/linux-image-686-pae-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-686-pae-dbg.maintscript1
-rw-r--r--debian/linux-image-alpha-generic-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-alpha-generic-dbg.maintscript1
-rw-r--r--debian/linux-image-alpha-generic.bug-presubj5
-rw-r--r--debian/linux-image-alpha-generic.maintscript1
-rw-r--r--debian/linux-image-alpha-smp-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-alpha-smp-dbg.maintscript1
-rw-r--r--debian/linux-image-alpha-smp.bug-presubj5
-rw-r--r--debian/linux-image-alpha-smp.maintscript1
-rw-r--r--debian/linux-image-amd64-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-amd64-dbg.maintscript1
-rw-r--r--debian/linux-image-arm64-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-arm64-dbg.maintscript1
-rw-r--r--debian/linux-image-armmp-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-armmp-dbg.maintscript1
-rw-r--r--debian/linux-image-armmp-lpae-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-armmp-lpae-dbg.maintscript1
-rw-r--r--debian/linux-image-armmp-lpae.bug-presubj5
-rw-r--r--debian/linux-image-armmp-lpae.maintscript1
-rw-r--r--debian/linux-image-armmp.bug-presubj5
-rw-r--r--debian/linux-image-armmp.maintscript1
-rw-r--r--debian/linux-image-cloud-amd64-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-cloud-amd64-dbg.maintscript1
-rw-r--r--debian/linux-image-cloud-arm64-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-cloud-arm64-dbg.maintscript1
-rw-r--r--debian/linux-image-itanium-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-itanium-dbg.maintscript1
-rw-r--r--debian/linux-image-itanium.bug-presubj5
-rw-r--r--debian/linux-image-itanium.maintscript1
-rw-r--r--debian/linux-image-loongson-3-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-loongson-3-dbg.maintscript1
-rw-r--r--debian/linux-image-loongson-3.bug-presubj5
-rw-r--r--debian/linux-image-loongson-3.maintscript1
-rw-r--r--debian/linux-image-m68k-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-m68k-dbg.maintscript1
-rw-r--r--debian/linux-image-m68k.bug-presubj5
-rw-r--r--debian/linux-image-m68k.maintscript1
-rw-r--r--debian/linux-image-marvell-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-marvell-dbg.maintscript1
-rw-r--r--debian/linux-image-marvell.bug-presubj5
-rw-r--r--debian/linux-image-marvell.maintscript1
-rw-r--r--debian/linux-image-mckinley-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-mckinley-dbg.maintscript1
-rw-r--r--debian/linux-image-mckinley.bug-presubj5
-rw-r--r--debian/linux-image-mckinley.maintscript1
-rw-r--r--debian/linux-image-mips32r6-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-mips32r6-dbg.maintscript1
-rw-r--r--debian/linux-image-mips32r6.bug-presubj5
-rw-r--r--debian/linux-image-mips32r6.maintscript1
-rw-r--r--debian/linux-image-mips32r6el-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-mips32r6el-dbg.maintscript1
-rw-r--r--debian/linux-image-mips32r6el.bug-presubj5
-rw-r--r--debian/linux-image-mips32r6el.maintscript1
-rw-r--r--debian/linux-image-mips64r6-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-mips64r6-dbg.maintscript1
-rw-r--r--debian/linux-image-mips64r6.bug-presubj5
-rw-r--r--debian/linux-image-mips64r6.maintscript1
-rw-r--r--debian/linux-image-mips64r6el-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-mips64r6el-dbg.maintscript1
-rw-r--r--debian/linux-image-mips64r6el.bug-presubj5
-rw-r--r--debian/linux-image-mips64r6el.maintscript1
-rw-r--r--debian/linux-image-octeon-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-octeon-dbg.maintscript1
-rw-r--r--debian/linux-image-octeon.bug-presubj5
-rw-r--r--debian/linux-image-octeon.maintscript1
-rw-r--r--debian/linux-image-parisc.bug-presubj5
-rw-r--r--debian/linux-image-parisc.maintscript1
-rw-r--r--debian/linux-image-parisc64.bug-presubj5
-rw-r--r--debian/linux-image-parisc64.maintscript1
-rw-r--r--debian/linux-image-powerpc-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-powerpc-dbg.maintscript1
-rw-r--r--debian/linux-image-powerpc-smp-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-powerpc-smp-dbg.maintscript1
-rw-r--r--debian/linux-image-powerpc-smp.bug-presubj5
-rw-r--r--debian/linux-image-powerpc-smp.maintscript1
-rw-r--r--debian/linux-image-powerpc.bug-presubj5
-rw-r--r--debian/linux-image-powerpc.maintscript1
-rw-r--r--debian/linux-image-powerpc64-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-powerpc64-dbg.maintscript1
-rw-r--r--debian/linux-image-powerpc64.bug-presubj5
-rw-r--r--debian/linux-image-powerpc64.maintscript1
-rw-r--r--debian/linux-image-powerpc64le-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-powerpc64le-dbg.maintscript1
-rw-r--r--debian/linux-image-powerpc64le.bug-presubj5
-rw-r--r--debian/linux-image-powerpc64le.maintscript1
-rw-r--r--debian/linux-image-riscv64-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-riscv64-dbg.maintscript1
-rw-r--r--debian/linux-image-riscv64.bug-presubj5
-rw-r--r--debian/linux-image-riscv64.maintscript1
-rw-r--r--debian/linux-image-rpi-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-rpi-dbg.maintscript1
-rw-r--r--debian/linux-image-rpi.bug-presubj5
-rw-r--r--debian/linux-image-rpi.maintscript1
-rw-r--r--debian/linux-image-rt-686-pae-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-rt-686-pae-dbg.maintscript1
-rw-r--r--debian/linux-image-rt-amd64-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-rt-amd64-dbg.maintscript1
-rw-r--r--debian/linux-image-rt-arm64-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-rt-arm64-dbg.maintscript1
-rw-r--r--debian/linux-image-rt-armmp-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-rt-armmp-dbg.maintscript1
-rw-r--r--debian/linux-image-rt-armmp.bug-presubj5
-rw-r--r--debian/linux-image-rt-armmp.maintscript1
-rw-r--r--debian/linux-image-s390x-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-s390x-dbg.maintscript1
-rw-r--r--debian/linux-image-s390x.bug-presubj5
-rw-r--r--debian/linux-image-s390x.maintscript1
-rw-r--r--debian/linux-image-sh7751r-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-sh7751r-dbg.maintscript1
-rw-r--r--debian/linux-image-sh7751r.bug-presubj5
-rw-r--r--debian/linux-image-sh7751r.maintscript1
-rw-r--r--debian/linux-image-sh7785lcr-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-sh7785lcr-dbg.maintscript1
-rw-r--r--debian/linux-image-sh7785lcr.bug-presubj5
-rw-r--r--debian/linux-image-sh7785lcr.maintscript1
-rw-r--r--debian/linux-image-sparc64-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-sparc64-dbg.maintscript1
-rw-r--r--debian/linux-image-sparc64-smp-dbg.lintian-overrides2
-rw-r--r--debian/linux-image-sparc64-smp-dbg.maintscript1
-rw-r--r--debian/linux-image-sparc64-smp.bug-presubj5
-rw-r--r--debian/linux-image-sparc64-smp.maintscript1
-rw-r--r--debian/linux-image-sparc64.bug-presubj5
-rw-r--r--debian/linux-image-sparc64.maintscript1
-rw-r--r--debian/linux-image.NEWS83
-rw-r--r--debian/linux-perf-5.10.lintian-overrides3
-rw-r--r--debian/linux-perf.maintscript1
-rw-r--r--debian/linux-source.maintscript1
-rw-r--r--debian/lockdep.dirs1
-rw-r--r--debian/patches-rt/0001-z3fold-remove-preempt-disabled-sections-for-RT.patch86
-rw-r--r--debian/patches-rt/0002-stop_machine-Add-function-and-caller-debug-info.patch135
-rw-r--r--debian/patches-rt/0003-sched-Fix-balance_callback.patch235
-rw-r--r--debian/patches-rt/0004-sched-hotplug-Ensure-only-per-cpu-kthreads-run-durin.patch244
-rw-r--r--debian/patches-rt/0005-sched-core-Wait-for-tasks-being-pushed-away-on-hotpl.patch124
-rw-r--r--debian/patches-rt/0006-workqueue-Manually-break-affinity-on-hotplug.patch34
-rw-r--r--debian/patches-rt/0007-sched-hotplug-Consolidate-task-migration-on-CPU-unpl.patch283
-rw-r--r--debian/patches-rt/0008-sched-Fix-hotplug-vs-CPU-bandwidth-control.patch94
-rw-r--r--debian/patches-rt/0009-sched-Massage-set_cpus_allowed.patch175
-rw-r--r--debian/patches-rt/0010-sched-Add-migrate_disable.patch356
-rw-r--r--debian/patches-rt/0011-sched-Fix-migrate_disable-vs-set_cpus_allowed_ptr.patch370
-rw-r--r--debian/patches-rt/0012-sched-core-Make-migrate-disable-and-CPU-hotplug-coop.patch137
-rw-r--r--debian/patches-rt/0013-sched-rt-Use-cpumask_any-_distribute.patch121
-rw-r--r--debian/patches-rt/0014-sched-rt-Use-the-full-cpumask-for-balancing.patch105
-rw-r--r--debian/patches-rt/0015-sched-lockdep-Annotate-pi_lock-recursion.patch52
-rw-r--r--debian/patches-rt/0016-sched-Fix-migrate_disable-vs-rt-dl-balancing.patch495
-rw-r--r--debian/patches-rt/0017-sched-proc-Print-accurate-cpumask-vs-migrate_disable.patch35
-rw-r--r--debian/patches-rt/0018-sched-Add-migrate_disable-tracepoints.patch110
-rw-r--r--debian/patches-rt/0019-sched-Deny-self-issued-__set_cpus_allowed_ptr-when-m.patch46
-rw-r--r--debian/patches-rt/0020-sched-Comment-affine_move_task.patch130
-rw-r--r--debian/patches-rt/0021-sched-Unlock-the-rq-in-affine_move_task-error-path.patch34
-rw-r--r--debian/patches-rt/0022-sched-Fix-migration_cpu_stop-WARN.patch47
-rw-r--r--debian/patches-rt/0023-sched-core-Add-missing-completion-for-affine_move_ta.patch79
-rw-r--r--debian/patches-rt/0024-mm-highmem-Un-EXPORT-__kmap_atomic_idx.patch33
-rw-r--r--debian/patches-rt/0025-highmem-Remove-unused-functions.patch43
-rw-r--r--debian/patches-rt/0026-fs-Remove-asm-kmap_types.h-includes.patch50
-rw-r--r--debian/patches-rt/0027-sh-highmem-Remove-all-traces-of-unused-cruft.patch94
-rw-r--r--debian/patches-rt/0028-asm-generic-Provide-kmap_size.h.patch70
-rw-r--r--debian/patches-rt/0029-highmem-Provide-generic-variant-of-kmap_atomic.patch346
-rw-r--r--debian/patches-rt/0030-highmem-Make-DEBUG_HIGHMEM-functional.patch61
-rw-r--r--debian/patches-rt/0031-x86-mm-highmem-Use-generic-kmap-atomic-implementatio.patch389
-rw-r--r--debian/patches-rt/0032-arc-mm-highmem-Use-generic-kmap-atomic-implementatio.patch212
-rw-r--r--debian/patches-rt/0033-ARM-highmem-Switch-to-generic-kmap-atomic.patch271
-rw-r--r--debian/patches-rt/0034-csky-mm-highmem-Switch-to-generic-kmap-atomic.patch179
-rw-r--r--debian/patches-rt/0035-microblaze-mm-highmem-Switch-to-generic-kmap-atomic.patch197
-rw-r--r--debian/patches-rt/0036-mips-mm-highmem-Switch-to-generic-kmap-atomic.patch219
-rw-r--r--debian/patches-rt/0037-nds32-mm-highmem-Switch-to-generic-kmap-atomic.patch167
-rw-r--r--debian/patches-rt/0038-powerpc-mm-highmem-Switch-to-generic-kmap-atomic.patch221
-rw-r--r--debian/patches-rt/0039-sparc-mm-highmem-Switch-to-generic-kmap-atomic.patch254
-rw-r--r--debian/patches-rt/0040-xtensa-mm-highmem-Switch-to-generic-kmap-atomic.patch166
-rw-r--r--debian/patches-rt/0041-highmem-Get-rid-of-kmap_types.h.patch189
-rw-r--r--debian/patches-rt/0042-mm-highmem-Remove-the-old-kmap_atomic-cruft.patch139
-rw-r--r--debian/patches-rt/0043-io-mapping-Cleanup-atomic-iomap.patch90
-rw-r--r--debian/patches-rt/0044-Documentation-io-mapping-Remove-outdated-blurb.patch48
-rw-r--r--debian/patches-rt/0045-highmem-High-implementation-details-and-document-API.patch544
-rw-r--r--debian/patches-rt/0046-sched-Make-migrate_disable-enable-independent-of-RT.patch293
-rw-r--r--debian/patches-rt/0047-sched-highmem-Store-local-kmaps-in-task-struct.patch309
-rw-r--r--debian/patches-rt/0048-mm-highmem-Provide-kmap_local.patch207
-rw-r--r--debian/patches-rt/0049-io-mapping-Provide-iomap_local-variant.patch179
-rw-r--r--debian/patches-rt/0050-x86-crashdump-32-Simplify-copy_oldmem_page.patch99
-rw-r--r--debian/patches-rt/0051-mips-crashdump-Simplify-copy_oldmem_page.patch95
-rw-r--r--debian/patches-rt/0052-ARM-mm-Replace-kmap_atomic_pfn.patch71
-rw-r--r--debian/patches-rt/0053-highmem-Remove-kmap_atomic_pfn.patch47
-rw-r--r--debian/patches-rt/0054-drm-ttm-Replace-kmap_atomic-usage.patch74
-rw-r--r--debian/patches-rt/0055-drm-vmgfx-Replace-kmap_atomic.patch104
-rw-r--r--debian/patches-rt/0056-highmem-Remove-kmap_atomic_prot.patch52
-rw-r--r--debian/patches-rt/0057-drm-qxl-Replace-io_mapping_map_atomic_wc.patch257
-rw-r--r--debian/patches-rt/0058-drm-nouveau-device-Replace-io_mapping_map_atomic_wc.patch54
-rw-r--r--debian/patches-rt/0059-drm-i915-Replace-io_mapping_map_atomic_wc.patch173
-rw-r--r--debian/patches-rt/0060-io-mapping-Remove-io_mapping_map_atomic_wc.patch140
-rw-r--r--debian/patches-rt/0061-mm-highmem-Take-kmap_high_get-properly-into-account.patch72
-rw-r--r--debian/patches-rt/0062-highmem-Don-t-disable-preemption-on-RT-in-kmap_atomi.patch71
-rw-r--r--debian/patches-rt/0063-blk-mq-Don-t-complete-on-a-remote-CPU-in-force-threa.patch48
-rw-r--r--debian/patches-rt/0064-blk-mq-Always-complete-remote-completions-requests-i.patch49
-rw-r--r--debian/patches-rt/0065-blk-mq-Use-llist_head-for-blk_cpu_done.patch201
-rw-r--r--debian/patches-rt/0066-lib-test_lockup-Minimum-fix-to-get-it-compiled-on-PR.patch65
-rw-r--r--debian/patches-rt/0067-timers-Don-t-block-on-expiry_lock-for-TIMER_IRQSAFE.patch60
-rw-r--r--debian/patches-rt/0068-kthread-Move-prio-affinite-change-into-the-newly-cre.patch86
-rw-r--r--debian/patches-rt/0069-genirq-Move-prio-assignment-into-the-newly-created-t.patch63
-rw-r--r--debian/patches-rt/0070-notifier-Make-atomic_notifiers-use-raw_spinlock.patch132
-rw-r--r--debian/patches-rt/0071-rcu-Make-RCU_BOOST-default-on-CONFIG_PREEMPT_RT.patch41
-rw-r--r--debian/patches-rt/0072-rcu-Unconditionally-use-rcuc-threads-on-PREEMPT_RT.patch66
-rw-r--r--debian/patches-rt/0073-rcu-Enable-rcu_normal_after_boot-unconditionally-for.patch72
-rw-r--r--debian/patches-rt/0074-doc-Update-RCU-s-requirements-page-about-the-PREEMPT.patch35
-rw-r--r--debian/patches-rt/0075-doc-Use-CONFIG_PREEMPTION.patch250
-rw-r--r--debian/patches-rt/0076-tracing-Merge-irqflags-preempt-counter.patch1900
-rw-r--r--debian/patches-rt/0077-tracing-Inline-tracing_gen_ctx_flags.patch184
-rw-r--r--debian/patches-rt/0078-tracing-Use-in_serving_softirq-to-deduct-softirq-sta.patch48
-rw-r--r--debian/patches-rt/0079-tracing-Remove-NULL-check-from-current-in-tracing_ge.patch43
-rw-r--r--debian/patches-rt/0080-printk-inline-log_output-log_store-in-vprintk_store.patch201
-rw-r--r--debian/patches-rt/0081-printk-remove-logbuf_lock-writer-protection-of-ringb.patch251
-rw-r--r--debian/patches-rt/0082-printk-limit-second-loop-of-syslog_print_all.patch56
-rw-r--r--debian/patches-rt/0083-printk-kmsg_dump-remove-unused-fields.patch43
-rw-r--r--debian/patches-rt/0084-printk-refactor-kmsg_dump_get_buffer.patch145
-rw-r--r--debian/patches-rt/0085-printk-consolidate-kmsg_dump_get_buffer-syslog_print.patch147
-rw-r--r--debian/patches-rt/0086-printk-introduce-CONSOLE_LOG_MAX-for-improved-multi-.patch95
-rw-r--r--debian/patches-rt/0087-printk-use-seqcount_latch-for-clear_seq.patch147
-rw-r--r--debian/patches-rt/0088-printk-use-atomic64_t-for-devkmsg_user.seq.patch112
-rw-r--r--debian/patches-rt/0089-printk-add-syslog_lock.patch159
-rw-r--r--debian/patches-rt/0090-printk-introduce-a-kmsg_dump-iterator.patch561
-rw-r--r--debian/patches-rt/0091-um-synchronize-kmsg_dumper.patch61
-rw-r--r--debian/patches-rt/0092-printk-remove-logbuf_lock.patch486
-rw-r--r--debian/patches-rt/0093-printk-kmsg_dump-remove-_nolock-variants.patch226
-rw-r--r--debian/patches-rt/0094-printk-kmsg_dump-use-kmsg_dump_rewind.patch42
-rw-r--r--debian/patches-rt/0095-printk-console-remove-unnecessary-safe-buffer-usage.patch48
-rw-r--r--debian/patches-rt/0096-printk-track-limit-recursion.patch143
-rw-r--r--debian/patches-rt/0097-printk-remove-safe-buffers.patch877
-rw-r--r--debian/patches-rt/0098-printk-convert-syslog_lock-to-spin_lock.patch119
-rw-r--r--debian/patches-rt/0099-console-add-write_atomic-interface.patch163
-rw-r--r--debian/patches-rt/0100-serial-8250-implement-write_atomic.patch500
-rw-r--r--debian/patches-rt/0101-printk-relocate-printk_delay-and-vprintk_default.patch89
-rw-r--r--debian/patches-rt/0102-printk-combine-boot_delay_msec-into-printk_delay.patch44
-rw-r--r--debian/patches-rt/0103-printk-change-console_seq-to-atomic64_t.patch132
-rw-r--r--debian/patches-rt/0104-printk-introduce-kernel-sync-mode.patch310
-rw-r--r--debian/patches-rt/0105-printk-move-console-printing-to-kthreads.patch848
-rw-r--r--debian/patches-rt/0106-printk-remove-deferred-printing.patch432
-rw-r--r--debian/patches-rt/0107-printk-add-console-handover.patch76
-rw-r--r--debian/patches-rt/0108-printk-add-pr_flush.patch213
-rw-r--r--debian/patches-rt/0109-cgroup-use-irqsave-in-cgroup_rstat_flush_locked.patch50
-rw-r--r--debian/patches-rt/0110-mm-workingset-replace-IRQ-off-check-with-a-lockdep-a.patch49
-rw-r--r--debian/patches-rt/0111-tpm-remove-tpm_dev_wq_lock.patch35
-rw-r--r--debian/patches-rt/0112-shmem-Use-raw_spinlock_t-for-stat_lock.patch147
-rw-r--r--debian/patches-rt/0113-net-Move-lockdep-where-it-belongs.patch46
-rw-r--r--debian/patches-rt/0114-parisc-Remove-bogus-__IRQ_STAT-macro.patch31
-rw-r--r--debian/patches-rt/0115-sh-Get-rid-of-nmi_count.patch47
-rw-r--r--debian/patches-rt/0116-irqstat-Get-rid-of-nmi_count-and-__IRQ_STAT.patch34
-rw-r--r--debian/patches-rt/0117-um-irqstat-Get-rid-of-the-duplicated-declarations.patch48
-rw-r--r--debian/patches-rt/0118-ARM-irqstat-Get-rid-of-duplicated-declaration.patch59
-rw-r--r--debian/patches-rt/0119-arm64-irqstat-Get-rid-of-duplicated-declaration.patch40
-rw-r--r--debian/patches-rt/0120-asm-generic-irqstat-Add-optional-__nmi_count-member.patch34
-rw-r--r--debian/patches-rt/0121-sh-irqstat-Use-the-generic-irq_cpustat_t.patch45
-rw-r--r--debian/patches-rt/0122-irqstat-Move-declaration-into-asm-generic-hardirq.h.patch66
-rw-r--r--debian/patches-rt/0123-preempt-Cleanup-the-macro-maze-a-bit.patch78
-rw-r--r--debian/patches-rt/0124-softirq-Move-related-code-into-one-section.patch169
-rw-r--r--debian/patches-rt/0125-sh-irq-Add-missing-closing-parentheses-in-arch_show_.patch40
-rw-r--r--debian/patches-rt/0126-sched-cputime-Remove-symbol-exports-from-IRQ-time-ac.patch73
-rw-r--r--debian/patches-rt/0127-s390-vtime-Use-the-generic-IRQ-entry-accounting.patch126
-rw-r--r--debian/patches-rt/0128-sched-vtime-Consolidate-IRQ-time-accounting.patch303
-rw-r--r--debian/patches-rt/0129-irqtime-Move-irqtime-entry-accounting-after-irq-offs.patch213
-rw-r--r--debian/patches-rt/0130-irq-Call-tick_irq_enter-inside-HARDIRQ_OFFSET.patch51
-rw-r--r--debian/patches-rt/0131-smp-Wake-ksoftirqd-on-PREEMPT_RT-instead-do_softirq.patch48
-rw-r--r--debian/patches-rt/0132-tasklets-Replace-barrier-with-cpu_relax-in-tasklet_u.patch35
-rw-r--r--debian/patches-rt/0133-tasklets-Use-static-inlines-for-stub-implementations.patch35
-rw-r--r--debian/patches-rt/0134-tasklets-Provide-tasklet_disable_in_atomic.patch68
-rw-r--r--debian/patches-rt/0135-tasklets-Use-spin-wait-in-tasklet_disable-temporaril.patch33
-rw-r--r--debian/patches-rt/0136-tasklets-Replace-spin-wait-in-tasklet_unlock_wait.patch90
-rw-r--r--debian/patches-rt/0137-tasklets-Replace-spin-wait-in-tasklet_kill.patch74
-rw-r--r--debian/patches-rt/0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch109
-rw-r--r--debian/patches-rt/0139-net-jme-Replace-link-change-tasklet-with-work.patch88
-rw-r--r--debian/patches-rt/0140-net-sundance-Use-tasklet_disable_in_atomic.patch39
-rw-r--r--debian/patches-rt/0141-ath9k-Use-tasklet_disable_in_atomic.patch48
-rw-r--r--debian/patches-rt/0142-atm-eni-Use-tasklet_disable_in_atomic-in-the-send-ca.patch42
-rw-r--r--debian/patches-rt/0143-PCI-hv-Use-tasklet_disable_in_atomic.patch46
-rw-r--r--debian/patches-rt/0144-firewire-ohci-Use-tasklet_disable_in_atomic-where-re.patch61
-rw-r--r--debian/patches-rt/0145-tasklets-Switch-tasklet_disable-to-the-sleep-wait-va.patch35
-rw-r--r--debian/patches-rt/0146-softirq-Add-RT-specific-softirq-accounting.patch75
-rw-r--r--debian/patches-rt/0147-irqtime-Make-accounting-correct-on-RT.patch54
-rw-r--r--debian/patches-rt/0148-softirq-Move-various-protections-into-inline-helpers.patch108
-rw-r--r--debian/patches-rt/0149-softirq-Make-softirq-control-and-processing-RT-aware.patch267
-rw-r--r--debian/patches-rt/0150-tick-sched-Prevent-false-positive-softirq-pending-wa.patch84
-rw-r--r--debian/patches-rt/0151-rcu-Prevent-false-positive-softirq-warning-on-RT.patch35
-rw-r--r--debian/patches-rt/0152-chelsio-cxgb-Replace-the-workqueue-with-threaded-int.patch271
-rw-r--r--debian/patches-rt/0153-chelsio-cxgb-Disable-the-card-on-error-in-threaded-i.patch215
-rw-r--r--debian/patches-rt/0154-x86-fpu-Simplify-fpregs_-un-lock.patch47
-rw-r--r--debian/patches-rt/0155-x86-fpu-Make-kernel-FPU-protection-RT-friendly.patch64
-rw-r--r--debian/patches-rt/0156-locking-rtmutex-Remove-cruft.patch99
-rw-r--r--debian/patches-rt/0157-locking-rtmutex-Remove-output-from-deadlock-detector.patch312
-rw-r--r--debian/patches-rt/0158-locking-rtmutex-Move-rt_mutex_init-outside-of-CONFIG.patch60
-rw-r--r--debian/patches-rt/0159-locking-rtmutex-Remove-rt_mutex_timed_lock.patch98
-rw-r--r--debian/patches-rt/0160-locking-rtmutex-Handle-the-various-new-futex-race-co.patch255
-rw-r--r--debian/patches-rt/0161-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch118
-rw-r--r--debian/patches-rt/0162-locking-rtmutex-Make-lock_killable-work.patch50
-rw-r--r--debian/patches-rt/0163-locking-spinlock-Split-the-lock-types-header.patch253
-rw-r--r--debian/patches-rt/0164-locking-rtmutex-Avoid-include-hell.patch30
-rw-r--r--debian/patches-rt/0165-lockdep-Reduce-header-files-in-debug_locks.h.patch33
-rw-r--r--debian/patches-rt/0166-locking-split-out-the-rbtree-definition.patch120
-rw-r--r--debian/patches-rt/0167-locking-rtmutex-Provide-rt_mutex_slowlock_locked.patch145
-rw-r--r--debian/patches-rt/0168-locking-rtmutex-export-lockdep-less-version-of-rt_mu.patch130
-rw-r--r--debian/patches-rt/0169-sched-Add-saved_state-for-tasks-blocked-on-sleeping-.patch116
-rw-r--r--debian/patches-rt/0170-locking-rtmutex-add-sleeping-lock-implementation.patch1214
-rw-r--r--debian/patches-rt/0171-locking-rtmutex-Allow-rt_mutex_trylock-on-PREEMPT_RT.patch37
-rw-r--r--debian/patches-rt/0172-locking-rtmutex-add-mutex-implementation-based-on-rt.patch385
-rw-r--r--debian/patches-rt/0173-locking-rtmutex-add-rwsem-implementation-based-on-rt.patch455
-rw-r--r--debian/patches-rt/0174-locking-rtmutex-add-rwlock-implementation-based-on-r.patch548
-rw-r--r--debian/patches-rt/0175-locking-rtmutex-wire-up-RT-s-locking.patch348
-rw-r--r--debian/patches-rt/0176-locking-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch456
-rw-r--r--debian/patches-rt/0177-locking-rtmutex-Use-custom-scheduling-function-for-s.patch243
-rw-r--r--debian/patches-rt/0178-signal-Revert-ptrace-preempt-magic.patch39
-rw-r--r--debian/patches-rt/0179-preempt-Provide-preempt_-_-no-rt-variants.patch53
-rw-r--r--debian/patches-rt/0180-mm-vmstat-Protect-per-cpu-variables-with-preempt-dis.patch145
-rw-r--r--debian/patches-rt/0181-mm-memcontrol-Disable-preemption-in-__mod_memcg_lruv.patch44
-rw-r--r--debian/patches-rt/0182-xfrm-Use-sequence-counter-with-associated-spinlock.patch46
-rw-r--r--debian/patches-rt/0183-u64_stats-Disable-preemption-on-32bit-UP-SMP-with-RT.patch152
-rw-r--r--debian/patches-rt/0184-fs-dcache-use-swait_queue-instead-of-waitqueue.patch263
-rw-r--r--debian/patches-rt/0185-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch99
-rw-r--r--debian/patches-rt/0186-net-Qdisc-use-a-seqlock-instead-seqcount.patch299
-rw-r--r--debian/patches-rt/0187-net-Properly-annotate-the-try-lock-for-the-seqlock.patch71
-rw-r--r--debian/patches-rt/0188-kconfig-Disable-config-options-which-are-not-RT-comp.patch43
-rw-r--r--debian/patches-rt/0189-mm-Allow-only-SLUB-on-RT.patch47
-rw-r--r--debian/patches-rt/0190-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch35
-rw-r--r--debian/patches-rt/0191-net-core-disable-NET_RX_BUSY_POLL-on-RT.patch44
-rw-r--r--debian/patches-rt/0192-efi-Disable-runtime-services-on-RT.patch46
-rw-r--r--debian/patches-rt/0193-efi-Allow-efi-runtime.patch32
-rw-r--r--debian/patches-rt/0194-rt-Add-local-irq-locks.patch182
-rw-r--r--debian/patches-rt/0195-signal-x86-Delay-calling-signals-in-atomic.patch140
-rw-r--r--debian/patches-rt/0196-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch172
-rw-r--r--debian/patches-rt/0197-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch172
-rw-r--r--debian/patches-rt/0198-mm-SLxB-change-list_lock-to-raw_spinlock_t.patch603
-rw-r--r--debian/patches-rt/0199-mm-SLUB-delay-giving-back-empty-slubs-to-IRQ-enabled.patch223
-rw-r--r--debian/patches-rt/0200-mm-slub-Always-flush-the-delayed-empty-slubs-in-flus.patch61
-rw-r--r--debian/patches-rt/0201-mm-slub-Don-t-resize-the-location-tracking-cache-on-.patch37
-rw-r--r--debian/patches-rt/0202-mm-page_alloc-Use-migrate_disable-in-drain_local_pag.patch39
-rw-r--r--debian/patches-rt/0203-mm-page_alloc-rt-friendly-per-cpu-pages.patch197
-rw-r--r--debian/patches-rt/0204-mm-slub-Make-object_map_lock-a-raw_spinlock_t.patch50
-rw-r--r--debian/patches-rt/0205-slub-Enable-irqs-for-__GFP_WAIT.patch76
-rw-r--r--debian/patches-rt/0206-slub-Disable-SLUB_CPU_PARTIAL.patch54
-rw-r--r--debian/patches-rt/0207-mm-memcontrol-Provide-a-local_lock-for-per-CPU-memcg.patch144
-rw-r--r--debian/patches-rt/0208-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch74
-rw-r--r--debian/patches-rt/0209-mm-memcontrol-Replace-local_irq_disable-with-local-l.patch123
-rw-r--r--debian/patches-rt/0210-mm-zsmalloc-copy-with-get_cpu_var-and-locking.patch212
-rw-r--r--debian/patches-rt/0211-mm-zswap-Use-local-lock-to-protect-per-CPU-data.patch150
-rw-r--r--debian/patches-rt/0212-x86-kvm-Require-const-tsc-for-RT.patch38
-rw-r--r--debian/patches-rt/0213-wait.h-include-atomic.h.patch42
-rw-r--r--debian/patches-rt/0214-sched-Limit-the-number-of-task-migrations-per-batch.patch33
-rw-r--r--debian/patches-rt/0215-sched-Move-mmdrop-to-RCU-on-RT.patch115
-rw-r--r--debian/patches-rt/0216-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch81
-rw-r--r--debian/patches-rt/0217-sched-Do-not-account-rcu_preempt_depth-on-RT-in-migh.patch57
-rw-r--r--debian/patches-rt/0218-sched-Disable-TTWU_QUEUE-on-RT.patch38
-rw-r--r--debian/patches-rt/0219-softirq-Check-preemption-after-reenabling-interrupts.patch151
-rw-r--r--debian/patches-rt/0220-softirq-Disable-softirq-stacks-for-RT.patch168
-rw-r--r--debian/patches-rt/0221-net-core-use-local_bh_disable-in-netif_rx_ni.patch41
-rw-r--r--debian/patches-rt/0222-pid.h-include-atomic.h.patch43
-rw-r--r--debian/patches-rt/0223-ptrace-fix-ptrace-vs-tasklist_lock-race.patch166
-rw-r--r--debian/patches-rt/0224-ptrace-fix-ptrace_unfreeze_traced-race-with-rt-lock.patch65
-rw-r--r--debian/patches-rt/0225-kernel-sched-add-put-get-_cpu_light.patch28
-rw-r--r--debian/patches-rt/0226-trace-Add-migrate-disabled-counter-to-tracing-output.patch123
-rw-r--r--debian/patches-rt/0227-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch166
-rw-r--r--debian/patches-rt/0228-locking-Make-spinlock_t-and-rwlock_t-a-RCU-section-o.patch126
-rw-r--r--debian/patches-rt/0229-mm-vmalloc-Another-preempt-disable-region-which-suck.patch73
-rw-r--r--debian/patches-rt/0230-block-mq-do-not-invoke-preempt_disable.patch40
-rw-r--r--debian/patches-rt/0231-md-raid5-Make-raid5_percpu-handling-RT-aware.patch69
-rw-r--r--debian/patches-rt/0232-scsi-fcoe-Make-RT-aware.patch116
-rw-r--r--debian/patches-rt/0233-sunrpc-Make-svc_xprt_do_enqueue-use-get_cpu_light.patch60
-rw-r--r--debian/patches-rt/0234-rt-Introduce-cpu_chill.patch122
-rw-r--r--debian/patches-rt/0235-fs-namespace-Use-cpu_chill-in-trylock-loops.patch44
-rw-r--r--debian/patches-rt/0236-net-Use-skbufhead-with-raw-lock.patch74
-rw-r--r--debian/patches-rt/0237-net-Dequeue-in-dev_cpu_dead-without-the-lock.patch37
-rw-r--r--debian/patches-rt/0238-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch42
-rw-r--r--debian/patches-rt/0239-irqwork-push-most-work-into-softirq-context.patch189
-rw-r--r--debian/patches-rt/0240-x86-crypto-Reduce-preempt-disabled-regions.patch118
-rw-r--r--debian/patches-rt/0241-crypto-Reduce-preempt-disabled-regions-more-algos.patch240
-rw-r--r--debian/patches-rt/0242-crypto-limit-more-FPU-enabled-sections.patch74
-rw-r--r--debian/patches-rt/0243-panic-skip-get_random_bytes-for-RT_FULL-in-init_oops.patch34
-rw-r--r--debian/patches-rt/0244-x86-stackprotector-Avoid-random-pool-on-rt.patch51
-rw-r--r--debian/patches-rt/0245-net-Remove-preemption-disabling-in-netif_rx.patch68
-rw-r--r--debian/patches-rt/0246-lockdep-Make-it-RT-aware.patch78
-rw-r--r--debian/patches-rt/0247-lockdep-selftest-Only-do-hardirq-context-test-for-ra.patch62
-rw-r--r--debian/patches-rt/0248-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch149
-rw-r--r--debian/patches-rt/0249-lockdep-disable-self-test.patch35
-rw-r--r--debian/patches-rt/0250-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch61
-rw-r--r--debian/patches-rt/0251-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch80
-rw-r--r--debian/patches-rt/0252-drm-i915-disable-tracing-on-RT.patch47
-rw-r--r--debian/patches-rt/0253-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch33
-rw-r--r--debian/patches-rt/0254-drm-i915-gt-Only-disable-interrupts-for-the-timeline.patch52
-rw-r--r--debian/patches-rt/0255-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch367
-rw-r--r--debian/patches-rt/0256-x86-Allow-to-enable-RT.patch28
-rw-r--r--debian/patches-rt/0257-mm-scatterlist-Do-not-disable-irqs-on-RT.patch30
-rw-r--r--debian/patches-rt/0258-sched-Add-support-for-lazy-preemption.patch691
-rw-r--r--debian/patches-rt/0259-x86-entry-Use-should_resched-in-idtentry_exit_cond_r.patch35
-rw-r--r--debian/patches-rt/0260-x86-Support-for-lazy-preemption.patch171
-rw-r--r--debian/patches-rt/0261-arm-Add-support-for-lazy-preemption.patch153
-rw-r--r--debian/patches-rt/0262-powerpc-Add-support-for-lazy-preemption.patch267
-rw-r--r--debian/patches-rt/0263-arch-arm64-Add-lazy-preempt-support.patch168
-rw-r--r--debian/patches-rt/0264-jump-label-disable-if-stop_machine-is-used.patch42
-rw-r--r--debian/patches-rt/0265-leds-trigger-disable-CPU-trigger-on-RT.patch40
-rw-r--r--debian/patches-rt/0266-tty-serial-omap-Make-the-locking-RT-aware.patch49
-rw-r--r--debian/patches-rt/0267-tty-serial-pl011-Make-the-locking-work-on-RT.patch60
-rw-r--r--debian/patches-rt/0268-ARM-enable-irq-in-translation-section-permission-fau.patch95
-rw-r--r--debian/patches-rt/0269-genirq-update-irq_set_irqchip_state-documentation.patch32
-rw-r--r--debian/patches-rt/0270-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch59
-rw-r--r--debian/patches-rt/0271-arm64-fpsimd-Delay-freeing-memory-in-fpsimd_flush_th.patch66
-rw-r--r--debian/patches-rt/0272-x86-Enable-RT-also-on-32bit.patch34
-rw-r--r--debian/patches-rt/0273-ARM-Allow-to-enable-RT.patch36
-rw-r--r--debian/patches-rt/0274-ARM64-Allow-to-enable-RT.patch36
-rw-r--r--debian/patches-rt/0275-powerpc-traps-Use-PREEMPT_RT.patch39
-rw-r--r--debian/patches-rt/0276-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch117
-rw-r--r--debian/patches-rt/0277-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch45
-rw-r--r--debian/patches-rt/0278-powerpc-stackprotector-work-around-stack-guard-init-.patch36
-rw-r--r--debian/patches-rt/0279-powerpc-Avoid-recursive-header-includes.patch48
-rw-r--r--debian/patches-rt/0280-POWERPC-Allow-to-enable-RT.patch36
-rw-r--r--debian/patches-rt/0281-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch93
-rw-r--r--debian/patches-rt/0282-tpm_tis-fix-stall-after-iowrite-s.patch84
-rw-r--r--debian/patches-rt/0283-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch212
-rw-r--r--debian/patches-rt/0284-signal-Prevent-double-free-of-user-struct.patch52
-rw-r--r--debian/patches-rt/0285-genirq-Disable-irqpoll-on-rt.patch43
-rw-r--r--debian/patches-rt/0286-sysfs-Add-sys-kernel-realtime-entry.patch54
-rw-r--r--debian/patches-rt/0287-Add-localversion-for-RT-release.patch22
-rw-r--r--debian/patches-rt/0288-net-xfrm-Use-sequence-counter-with-associated-spinlo.patch43
-rw-r--r--debian/patches-rt/0289-sched-Fix-migration_cpu_stop-requeueing.patch147
-rw-r--r--debian/patches-rt/0290-sched-Simplify-migration_cpu_stop.patch142
-rw-r--r--debian/patches-rt/0291-sched-Collate-affine_move_task-stoppers.patch69
-rw-r--r--debian/patches-rt/0292-sched-Optimize-migration_cpu_stop.patch58
-rw-r--r--debian/patches-rt/0293-sched-Fix-affine_move_task-self-concurrency.patch96
-rw-r--r--debian/patches-rt/0294-sched-Simplify-set_affinity_pending-refcounts.patch129
-rw-r--r--debian/patches-rt/0295-sched-Don-t-defer-CPU-pick-to-migration_cpu_stop.patch100
-rw-r--r--debian/patches-rt/0296-printk-Enhance-the-condition-check-of-msleep-in-pr_f.patch48
-rw-r--r--debian/patches-rt/0297-locking-rwsem-rt-Remove-might_sleep-in-__up_read.patch31
-rw-r--r--debian/patches-rt/0298-mm-zsmalloc-Convert-zsmalloc_handle.lock-to-spinlock.patch82
-rw-r--r--debian/patches-rt/0299-sched-Fix-get_push_task-vs-migrate_disable.patch46
-rw-r--r--debian/patches-rt/0300-sched-Switch-wait_task_inactive-to-HRTIMER_MODE_REL_.patch48
-rw-r--r--debian/patches-rt/0301-preempt-Move-preempt_enable_no_resched-to-the-RT-blo.patch45
-rw-r--r--debian/patches-rt/0302-mm-Disable-NUMA_BALANCING_DEFAULT_ENABLED-and-TRANSP.patch51
-rw-r--r--debian/patches-rt/0303-fscache-Use-only-one-fscache_object_cong_wait.patch129
-rw-r--r--debian/patches-rt/0304-fscache-Use-only-one-fscache_object_cong_wait.patch31
-rw-r--r--debian/patches-rt/0305-locking-Drop-might_resched-from-might_sleep_no_state.patch40
-rw-r--r--debian/patches-rt/0306-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch49
-rw-r--r--debian/patches-rt/0307-irq_work-Allow-irq_work_sync-to-sleep-if-irq_work-no.patch100
-rw-r--r--debian/patches-rt/0308-irq_work-Handle-some-irq_work-in-a-per-CPU-thread-on.patch307
-rw-r--r--debian/patches-rt/0309-irq_work-Also-rcuwait-for-IRQ_WORK_HARD_IRQ-on-PREEM.patch65
-rw-r--r--debian/patches-rt/0310-eventfd-Make-signal-recursion-protection-a-task-bit.patch150
-rw-r--r--debian/patches-rt/0311-stop_machine-Remove-this_cpu_ptr-from-print_stop_inf.patch38
-rw-r--r--debian/patches-rt/0312-aio-Fix-incorrect-usage-of-eventfd_signal_allowed.patch38
-rw-r--r--debian/patches-rt/0313-rt-remove-extra-parameter-from-__trace_stack.patch41
-rw-r--r--debian/patches-rt/0314-locking-rtmutex-switch-to-EXPORT_SYMBOL-for-ww_mutex.patch43
-rw-r--r--debian/patches-rt/0315-ftrace-Fix-improper-usage-of-__trace_stack-function.patch50
-rw-r--r--debian/patches-rt/0316-rt-arm64-make-_TIF_WORK_MASK-bits-contiguous.patch57
-rw-r--r--debian/patches-rt/0317-printk-ignore-consoles-without-write-callback.patch50
-rw-r--r--debian/patches-rt/0318-kernel-fork-set-wake_q_sleeper.next-NULL-again-in-du.patch61
-rw-r--r--debian/patches-rt/0319-Revert-mm-page_alloc-fix-potential-deadlock-on-zonel.patch63
-rw-r--r--debian/patches-rt/0320-Revert-printk-declare-printk_deferred_-enter-safe-in.patch53
-rw-r--r--debian/patches-rt/0321-arm64-signal-Use-ARCH_RT_DELAYS_SIGNAL_SEND.patch89
-rw-r--r--debian/patches-rt/0322-rt-mm-page_alloc-backport-missing-bits-from-__build_.patch49
-rw-r--r--debian/patches-rt/0323-Linux-5.10.204-rt100-REBASE.patch21
-rw-r--r--debian/patches-rt/series323
-rw-r--r--debian/patches/bugfix/all/bpftool-fix-version-string-in-recursive-builds.patch30
-rw-r--r--debian/patches/bugfix/all/cpupower-bump-soname-version.patch27
-rw-r--r--debian/patches/bugfix/all/cpupower-fix-checks-for-cpu-existence.patch49
-rw-r--r--debian/patches/bugfix/all/disable-some-marvell-phys.patch91
-rw-r--r--debian/patches/bugfix/all/firmware-remove-redundant-log-messages-from-drivers.patch2557
-rw-r--r--debian/patches/bugfix/all/firmware_class-log-every-success-and-failure.patch83
-rw-r--r--debian/patches/bugfix/all/fs-add-module_softdep-declarations-for-hard-coded-cr.patch70
-rw-r--r--debian/patches/bugfix/all/kbuild-fix-recordmcount-dependency.patch23
-rw-r--r--debian/patches/bugfix/all/libcpupower-hide-private-function.patch20
-rw-r--r--debian/patches/bugfix/all/module-disable-matching-missing-version-crc.patch23
-rw-r--r--debian/patches/bugfix/all/netfilter-nf_tables-reject-QUEUE-DROP-verdict-parame.patch73
-rw-r--r--debian/patches/bugfix/all/ovl-fail-on-invalid-uid-gid-mapping-at-copy-up.patch49
-rw-r--r--debian/patches/bugfix/all/partially-revert-net-socket-implement-64-bit-timestamps.patch140
-rw-r--r--debian/patches/bugfix/all/radeon-amdgpu-firmware-is-required-for-drm-and-kms-on-r600-onward.patch139
-rw-r--r--debian/patches/bugfix/all/smb3-Replace-smb2pdu-1-element-arrays-with-flex-arra.patch375
-rw-r--r--debian/patches/bugfix/all/stddef-Introduce-DECLARE_FLEX_ARRAY-helper.patch156
-rw-r--r--debian/patches/bugfix/all/tools-build-remove-bpf-run-time-check-at-build-time.patch27
-rw-r--r--debian/patches/bugfix/all/tools-perf-man-date.patch44
-rw-r--r--debian/patches/bugfix/all/tools-perf-pmu-events-fix-reproducibility.patch175
-rw-r--r--debian/patches/bugfix/all/tools-perf-remove-shebangs.patch39
-rw-r--r--debian/patches/bugfix/all/usbip-document-tcp-wrappers.patch29
-rw-r--r--debian/patches/bugfix/all/vfs-move-cap_convert_nscap-call-into-vfs_setxattr.patch100
-rw-r--r--debian/patches/bugfix/all/wireguard-ignore-config_android.patch29
-rw-r--r--debian/patches/bugfix/arm/arm-dts-kirkwood-fix-sata-pinmux-ing-for-ts419.patch37
-rw-r--r--debian/patches/bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch31
-rw-r--r--debian/patches/bugfix/arm64/arm64-acpi-Add-fixup-for-HPE-m400-quirks.patch92
-rw-r--r--debian/patches/bugfix/arm64/dts-rockchip-correct-voltage-selector-firefly-RK3399.patch45
-rw-r--r--debian/patches/bugfix/powerpc/powerpc-boot-fix-missing-crc32poly.h-when-building-with-kernel_xz.patch39
-rw-r--r--debian/patches/bugfix/sh/sh-boot-do-not-use-hyphen-in-exported-variable-name.patch124
-rw-r--r--debian/patches/bugfix/x86/perf-tools-fix-unwind-build-on-i386.patch35
-rw-r--r--debian/patches/bugfix/x86/platform-x86-toshiba_haps-Fix-missing-newline-in-pr_.patch34
-rw-r--r--debian/patches/bugfix/x86/revert-perf-build-fix-libunwind-feature-detection-on.patch22
-rw-r--r--debian/patches/bugfix/x86/viafb-autoload-on-olpc-xo1.5-only.patch34
-rw-r--r--debian/patches/bugfix/x86/x86-32-disable-3dnow-in-generic-config.patch29
-rw-r--r--debian/patches/debian/add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by-default.patch104
-rw-r--r--debian/patches/debian/af_802154-Disable-auto-loading-as-mitigation-against.patch29
-rw-r--r--debian/patches/debian/android-enable-building-ashmem-and-binder-as-modules.patch106
-rw-r--r--debian/patches/debian/arch-sh4-fix-uimage-build.patch26
-rw-r--r--debian/patches/debian/btrfs-warn-about-raid5-6-being-experimental-at-mount.patch35
-rw-r--r--debian/patches/debian/cdc_ncm-cdc_mbim-use-ncm-by-default.patch27
-rw-r--r--debian/patches/debian/dccp-disable-auto-loading-as-mitigation-against-local-exploits.patch41
-rw-r--r--debian/patches/debian/dfsg/arch-powerpc-platforms-8xx-ucode-disable.patch29
-rw-r--r--debian/patches/debian/dfsg/documentation-fix-broken-link-to-cipso-draft.patch18
-rw-r--r--debian/patches/debian/dfsg/drivers-media-dvb-dvb-usb-af9005-disable.patch15
-rw-r--r--debian/patches/debian/dfsg/drivers-net-appletalk-cops.patch54
-rw-r--r--debian/patches/debian/dfsg/video-remove-nvidiafb-and-rivafb.patch128
-rw-r--r--debian/patches/debian/dfsg/vs6624-disable.patch24
-rw-r--r--debian/patches/debian/documentation-drop-sphinx-version-check.patch52
-rw-r--r--debian/patches/debian/export-symbols-needed-by-android-drivers.patch113
-rw-r--r--debian/patches/debian/fanotify-taint-on-use-of-fanotify_access_permissions.patch29
-rw-r--r--debian/patches/debian/firmware_class-refer-to-debian-wiki-firmware-page.patch52
-rw-r--r--debian/patches/debian/fjes-disable-autoload.patch24
-rw-r--r--debian/patches/debian/fs-enable-link-security-restrictions-by-default.patch22
-rw-r--r--debian/patches/debian/gitignore.patch49
-rw-r--r--debian/patches/debian/hamradio-disable-auto-loading-as-mitigation-against-local-exploits.patch48
-rw-r--r--debian/patches/debian/i386-686-pae-pci-set-pci-nobios-by-default.patch27
-rw-r--r--debian/patches/debian/ia64-hardcode-arch-script-output.patch75
-rw-r--r--debian/patches/debian/iwlwifi-do-not-request-unreleased-firmware.patch26
-rw-r--r--debian/patches/debian/kbuild-abort-build-if-subdirs-used.patch37
-rw-r--r--debian/patches/debian/kbuild-look-for-module.lds-under-arch-directory-too.patch45
-rw-r--r--debian/patches/debian/kernelvariables.patch82
-rw-r--r--debian/patches/debian/makefile-do-not-check-for-libelf-when-building-oot-module.patch83
-rw-r--r--debian/patches/debian/mips-boston-disable-its.patch20
-rw-r--r--debian/patches/debian/mips-disable-werror.patch23
-rw-r--r--debian/patches/debian/mips-ieee754-relaxed.patch32
-rw-r--r--debian/patches/debian/ntfs-mark-it-as-broken.patch22
-rw-r--r--debian/patches/debian/overlayfs-permit-mounts-in-userns.patch58
-rw-r--r--debian/patches/debian/perf-traceevent-support-asciidoctor-for-documentatio.patch54
-rw-r--r--debian/patches/debian/rds-Disable-auto-loading-as-mitigation-against-local.patch34
-rw-r--r--debian/patches/debian/sched-autogroup-disabled.patch19
-rw-r--r--debian/patches/debian/snd-pcsp-disable-autoload.patch30
-rw-r--r--debian/patches/debian/tools-perf-install.patch52
-rw-r--r--debian/patches/debian/tools-perf-version.patch128
-rw-r--r--debian/patches/debian/uname-version-timestamp.patch33
-rw-r--r--debian/patches/debian/version.patch172
-rw-r--r--debian/patches/debian/wireless-add-debian-wireless-regdb-certificates.patch1452
-rw-r--r--debian/patches/debian/yama-disable-by-default.patch32
-rw-r--r--debian/patches/features/all/aufs5/aufs5-base.patch332
-rw-r--r--debian/patches/features/all/aufs5/aufs5-mmap.patch405
-rw-r--r--debian/patches/features/all/aufs5/aufs5-standalone.patch308
-rw-r--r--debian/patches/features/all/db-mok-keyring/0001-MODSIGN-do-not-load-mok-when-secure-boot-disabled.patch40
-rw-r--r--debian/patches/features/all/db-mok-keyring/0003-MODSIGN-checking-the-blacklisted-hash-before-loading-a-kernel-module.patch117
-rw-r--r--debian/patches/features/all/db-mok-keyring/0004-MODSIGN-check-the-attributes-of-db-and-mok.patch113
-rw-r--r--debian/patches/features/all/db-mok-keyring/KEYS-Make-use-of-platform-keyring-for-module-signature.patch37
-rw-r--r--debian/patches/features/all/db-mok-keyring/modsign-make-shash-allocation-failure-fatal.patch28
-rw-r--r--debian/patches/features/all/drivers-media-dvb-usb-af9005-request_firmware.patch149
-rw-r--r--debian/patches/features/all/lockdown/arm64-add-kernel-config-option-to-lock-down-when.patch153
-rw-r--r--debian/patches/features/all/lockdown/efi-add-an-efi_secure_boot-flag-to-indicate-secure-b.patch152
-rw-r--r--debian/patches/features/all/lockdown/efi-lock-down-the-kernel-if-booted-in-secure-boot-mo.patch127
-rw-r--r--debian/patches/features/all/lockdown/mtd-disable-slram-and-phram-when-locked-down.patch75
-rw-r--r--debian/patches/features/all/security-perf-allow-further-restriction-of-perf_event_open.patch80
-rw-r--r--debian/patches/features/arm64/arm64-compat-Implement-misalignment-fixups-for-multi.patch480
-rw-r--r--debian/patches/features/arm64/arm64-dts-raspberry-Add-support-for-the-CM4.patch423
-rw-r--r--debian/patches/features/arm64/arm64-dts-rockchip-Add-basic-support-for-Kobol-s-Hel.patch419
-rw-r--r--debian/patches/features/arm64/arm64-dts-rockchip-Add-support-for-PCIe-on-helios64.patch113
-rw-r--r--debian/patches/features/arm64/arm64-dts-rockchip-Add-support-for-two-PWM-fans-on-h.patch61
-rw-r--r--debian/patches/features/arm64/arm64-dts-rockchip-Rely-on-SoC-external-pull-up-on-p.patch32
-rw-r--r--debian/patches/features/arm64/arm64-dts-rockchip-kobol-helios64-Add-mmc-aliases.patch30
-rw-r--r--debian/patches/features/x86/intel-iommu-add-kconfig-option-to-exclude-igpu-by-default.patch85
-rw-r--r--debian/patches/features/x86/intel-iommu-add-option-to-exclude-integrated-gpu-only.patch91
-rw-r--r--debian/patches/features/x86/x86-make-x32-syscall-support-conditional.patch193
-rw-r--r--debian/patches/features/x86/x86-memtest-WARN-if-bad-RAM-found.patch28
-rw-r--r--debian/patches/series141
-rwxr-xr-xdebian/rules124
-rw-r--r--debian/rules.d/Makefile.inc59
-rw-r--r--debian/rules.d/arch/powerpc/boot/Makefile18
-rw-r--r--debian/rules.d/scripts/Makefile46
-rw-r--r--debian/rules.d/scripts/basic/Makefile4
-rw-r--r--debian/rules.d/scripts/genksyms/Makefile16
-rw-r--r--debian/rules.d/scripts/kconfig/Makefile16
-rw-r--r--debian/rules.d/scripts/mod/Makefile22
-rw-r--r--debian/rules.d/scripts/mod/Makefile.real23
-rw-r--r--debian/rules.d/scripts/mod/elfconfig.h7
-rwxr-xr-xdebian/rules.d/scripts/mod/gendef.py20
-rw-r--r--debian/rules.d/scripts/mod/modpost.c136
-rw-r--r--debian/rules.d/scripts/mod/real-lsb-32/elfconfig.h4
-rw-r--r--debian/rules.d/scripts/mod/real-lsb-32/types.h3
-rw-r--r--debian/rules.d/scripts/mod/real-lsb-64/elfconfig.h4
-rw-r--r--debian/rules.d/scripts/mod/real-lsb-64/types.h3
-rw-r--r--debian/rules.d/scripts/mod/real-msb-32/elfconfig.h4
-rw-r--r--debian/rules.d/scripts/mod/real-msb-32/types.h3
-rw-r--r--debian/rules.d/scripts/mod/real-msb-64/elfconfig.h4
-rw-r--r--debian/rules.d/scripts/mod/real-msb-64/types.h3
-rw-r--r--debian/rules.d/scripts/mod/types.h12
-rw-r--r--debian/rules.d/tools/bpf/bpftool/Makefile31
-rw-r--r--debian/rules.d/tools/hv/Makefile17
-rw-r--r--debian/rules.d/tools/lib/lockdep/Makefile23
-rw-r--r--debian/rules.d/tools/lib/lockdep/lockdep.in2
-rw-r--r--debian/rules.d/tools/objtool/Makefile11
-rw-r--r--debian/rules.d/tools/perf/Makefile65
-rw-r--r--debian/rules.d/tools/power/cpupower/Makefile26
-rw-r--r--debian/rules.d/tools/power/x86/Makefile5
-rw-r--r--debian/rules.d/tools/power/x86/turbostat/Makefile9
-rw-r--r--debian/rules.d/tools/power/x86/x86_energy_perf_policy/Makefile7
-rw-r--r--debian/rules.d/tools/usb/usbip/Makefile31
-rw-r--r--debian/rules.defs5
-rw-r--r--debian/rules.gen1117
-rw-r--r--debian/rules.real894
-rw-r--r--debian/signing_templates/README.source4
-rw-r--r--debian/signing_templates/control.image.in11
-rw-r--r--debian/signing_templates/control.source.in16
-rwxr-xr-xdebian/signing_templates/rules20
-rw-r--r--debian/signing_templates/rules.real85
-rw-r--r--debian/signing_templates/source/format1
-rw-r--r--debian/source/format2
-rw-r--r--debian/source/include-binaries2
-rw-r--r--debian/source/lintian-overrides14
-rw-r--r--debian/templates/control.config.in11
-rw-r--r--debian/templates/control.docs.in14
-rw-r--r--debian/templates/control.docs.meta.in8
-rw-r--r--debian/templates/control.extra.in44
-rw-r--r--debian/templates/control.headers.featureset.in11
-rw-r--r--debian/templates/control.headers.in10
-rw-r--r--debian/templates/control.headers.meta.in6
-rw-r--r--debian/templates/control.image-dbg.in8
-rw-r--r--debian/templates/control.image-dbg.meta.in7
-rw-r--r--debian/templates/control.image-unsigned.in9
-rw-r--r--debian/templates/control.image.in7
-rw-r--r--debian/templates/control.image.meta.in7
-rw-r--r--debian/templates/control.libc-dev.in7
-rw-r--r--debian/templates/control.main.in11
-rw-r--r--debian/templates/control.signed-template.in6
-rw-r--r--debian/templates/control.source.in43
-rw-r--r--debian/templates/control.sourcebin.in15
-rw-r--r--debian/templates/control.sourcebin.meta.in7
-rw-r--r--debian/templates/control.tools-unversioned.in137
-rw-r--r--debian/templates/control.tools-versioned.in48
-rw-r--r--debian/templates/control.tools-versioned.meta.in7
-rw-r--r--debian/templates/docs.meta.maintscript.in1
-rw-r--r--debian/templates/headers.meta.maintscript.in1
-rwxr-xr-xdebian/templates/headers.postinst.in18
-rwxr-xr-xdebian/templates/image-dbg.lintian-overrides.in15
-rw-r--r--debian/templates/image-dbg.meta.lintian-overrides.in2
-rw-r--r--debian/templates/image-dbg.meta.maintscript.in1
-rw-r--r--debian/templates/image.bug/control2
-rw-r--r--debian/templates/image.bug/include-0version9
-rw-r--r--debian/templates/image.bug/include-1cmdline9
-rw-r--r--debian/templates/image.bug/include-1tainted41
-rw-r--r--debian/templates/image.bug/include-dmesg21
-rw-r--r--debian/templates/image.bug/include-model60
-rw-r--r--debian/templates/image.bug/include-modules13
-rw-r--r--debian/templates/image.bug/include-network69
-rw-r--r--debian/templates/image.bug/include-pci12
-rw-r--r--debian/templates/image.bug/include-pstore77
-rw-r--r--debian/templates/image.bug/include-usb11
-rw-r--r--debian/templates/image.bug/presubj8
-rw-r--r--debian/templates/image.bug/script46
-rw-r--r--debian/templates/image.meta.bug-presubj.in5
-rw-r--r--debian/templates/image.meta.maintscript.in1
-rwxr-xr-xdebian/templates/image.postinst.in25
-rwxr-xr-xdebian/templates/image.postrm.in31
-rwxr-xr-xdebian/templates/image.preinst.in21
-rwxr-xr-xdebian/templates/image.prerm.in17
-rw-r--r--debian/templates/perf.lintian-overrides.in3
-rw-r--r--debian/templates/perf.meta.maintscript.in1
-rw-r--r--debian/templates/sourcebin.meta.maintscript.in1
-rw-r--r--debian/templates/tests-control.image.in4
-rw-r--r--debian/templates/tests-control.main.in3
-rw-r--r--debian/tests/control9
-rwxr-xr-xdebian/tests/python40
-rw-r--r--debian/tests/selftests88
-rw-r--r--debian/upstream/rt-signing-key.pgpbin0 -> 85246 bytes
-rw-r--r--debian/upstream/signing-key.pgpbin0 -> 11043 bytes
-rw-r--r--debian/usbip.install2
-rw-r--r--debian/usbip.manpages2
-rw-r--r--debian/watch4
2020 files changed, 188674 insertions, 0 deletions
diff --git a/debian/README.Debian b/debian/README.Debian
new file mode 100644
index 000000000..fa3f0a315
--- /dev/null
+++ b/debian/README.Debian
@@ -0,0 +1,65 @@
+Linux kernel for Debian
+-----------------------
+
+Patches
+-------
+Debian applies small changes to the kernel source. These are split up into
+separated patches addressing individual problems. Each of the patch files
+contains a description and mentions the author. The patches can be found
+in the source package or at
+https://sources.debian.org/src/linux/<version>/debian/patches/
+(with the package version substituted).
+
+Config Files
+------------
+The .config files used to build the various linux-image files are dynamically
+generated during the linux package build. See the source package for
+details. Each linux-image-* package provides the complete .config file that
+was used to generate it. This file is installed in /boot.
+
+Scope of security support
+-------------------------
+Security support is provided not only for the binary builds, but also
+for the full source package, allowing for locally customized kernels.
+However, kernel options that are not enabled in official Debian builds are
+given a lower priority for security support. Options marked as BROKEN
+or EXPERIMENTAL are of very low priority, and should not be enabled in
+customized builds for a security-sensitive environment.
+
+Building custom kernel binary packages
+--------------------------------------
+We recommend using the 'make deb-pkg' target provided by the upstream
+kernel source.
+
+Rebuilding official binary packages
+-----------------------------------
+You can build specific kernel binary packages using the targets in
+debian/rules.gen, which have names of the form:
+ binary-arch_<architecture>_<featureset>_<flavour>
+
+Example:
+ fakeroot make -f debian/rules.gen binary-arch_i386_none_686
+
+Rebuilding Adaptec AIC7xxx/79xx firmware
+----------------------------------------
+You can rebuild the firmware for the Adaptec AIC7xxx/79xx SCSI Adapters. To
+do so you need to set AIC7XXX_BUILD_FIRMWARE/AIC79XX_BUILD_FIRMWARE config
+options. Note that this requires to have the development packages for
+Berkeley Database (libdb-dev) installed.
+
+Non-free bits removed
+---------------------
+See the Files-Excluded field in debian/copyright.
+
+Changelog
+---------
+Older Debian changelog entries are no longer included in binary
+packages, but can be found in debian/changelog.old in the source
+package.
+
+Further information
+-------------------
+Debian Linux Kernel Handbook:
+ https://kernel-team.pages.debian.net/kernel-handbook/
+ or debian-kernel-handbook package
+Debian Wiki: https://wiki.debian.org/DebianKernel
diff --git a/debian/README.source b/debian/README.source
new file mode 100644
index 000000000..096ca5064
--- /dev/null
+++ b/debian/README.source
@@ -0,0 +1,318 @@
+Checklist for uploaders
+=======================
+
+There is a checklist in the kernel-team.git repository; see
+<https://salsa.debian.org/kernel-team/kernel-team/-/blob/master/docs/kernel-upload-checklist.md>.
+
+Updating the upstream source
+============================
+
+In addition to the build-dependencies, you will need the rsync package
+installed.
+
+1) It is recommended to fetch the release tag from the relevant upstream git
+ repository, one of:
+
+ * https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
+ * https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
+ * git://kernel.ubuntu.com/ubuntu/linux.git
+
+ However, it is also possible to use upstream tarball and patch releases.
+ Both tags and files should be signed by the relevant maintainer, which
+ you *must* verify using commands such as:
+
+ $ git tag -v v4.5
+ $ xzcat linux-4.5.tar.xz | gpg --verify linux-4.5.tar.sign -
+ $ xzcat patch-4.5.1.xz | gpg --verify patch-4.5.1.sign -
+
+ The upstream maintainers' key fingerprints are:
+
+ pub 2048R/00411886 2011-09-20
+ Key fingerprint = ABAF 11C6 5A29 70B1 30AB E3C4 79BE 3E43 0041 1886
+ uid Linus Torvalds <torvalds@linux-foundation.org>
+ sub 2048R/012F54CA 2011-09-20
+
+ pub 4096R/6092693E 2011-09-23
+ Key fingerprint = 647F 2865 4894 E3BD 4571 99BE 38DB BDC8 6092 693E
+ uid Greg Kroah-Hartman (Linux kernel stable release signing key) <greg@kroah.com>
+ sub 4096R/76D54749 2011-09-23
+
+ pub 4096R/FDCE24FC 2011-12-10
+ Key fingerprint = D4E1 E317 4470 9144 B0F8 101A DB74 AEB8 FDCE 24FC
+ uid Luis Henriques <luis.henriques@canonical.com>
+ uid Luis Henriques <henrix@camandro.org>
+ sub 4096R/EFBC394A 2011-12-10
+
+2) Run: ./debian/bin/genorig.py <repository>
+ or: ./debian/bin/genorig.py <tarball> [patch]
+
+ This will produce ../orig/linux_<version>.orig.tar.xz
+ (e.g. linux_3.5~rc1.orig.tar.xz).
+
+ It involves deleting files for DFSG compliance, as listed in the
+ Files-Excluded field in debian/copyright.
+
+3) Run: make -f debian/rules orig
+
+ This will apply the main quilt series to the upstream source, which
+ will usually fail due to conflicts with upstream changes. You need
+ to resolve those by dropping or refreshing patches.
+
+Recording updates in the changelog
+----------------------------------
+
+Upstream commits that we already cherry-picked and included in a
+previous package upload should not be mentioned, since they don't make
+any difference to the package. Any other commits that fix a Debian
+bug report and/or a security issue with a CVE ID should always be
+listed, along with the (Closes: #nnnnnn) and/or (CVE-yyyy-nnnn)
+reference.
+
+Aside from those general rules:
+
+* For an upstream release candidate, don't attempt to list the changes
+
+* For a stable release by Linus, refer to the summary at
+ kernelnewbies.org, e.g. https://kernelnewbies.org/Linux_4.5
+
+* For a stable update, refer to the changelog on kernel.org, e.g.
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.5.1, and
+ list all changes that are relevant to our package and that fix bugs
+ that we would consider 'important' or higher severity
+
+ - The script debian/bin/stable-update updates the changelog
+ version and inserts the list of changes. It doesn't attempt to
+ filter out irrelevant or unimportant changes.
+
+ - If you have time, please delete irrelevant changes such as:
+ + Fixes for architectures not supported by the package
+ + Fixes for drivers that aren't enabled in any of our configurations
+ + Build fixes for configurations that we don't use
+ + Fixes for lockdep false positives
+
+If you have time, please add bracketted prefixes to the upstream
+change list as described below under "Changelog conventions".
+
+Applying patches to the Debian kernel tree
+==========================================
+
+The Debian kernel packaging uses the quilt patch system, but with
+multiple series to allow for featuresets.
+
+Patches are stored below debian/patches, loosely sorted in bugfix/,
+features/ and debian/. Patches are in the standard kernel patch
+format (unified diff to be applied with patch -p1) and generally have
+DEP-3 headers.
+
+For each optional featureset there is an additional patch directory
+debian/patches-<featureset>.
+
+If you want to generate a source tree with all patches applied, run
+make -f debian/rules source
+
+The resulting source can be found below debian/build.
+
+Changelog conventions
+=====================
+
+If a change only affects some architectures, flavours or featuresets,
+this should be noted with a bracketted prefix on the changelog line:
+
+* [<fset>] Change to featureset <fset>
+* [<arch>] Change that affects Debian architecture <arch>
+* [<arch1>,<arch2>...] Change that affects Debian architectures
+ <arch1>, <arch2>, ...
+* [<arch>/<flavour>] Change that affects kernel flavour <flavour>
+ on Debian architecture <arch>
+* [<arch>/{<flavour1>,<flavour2>...}] Change that affects kernel
+ flavours <flavour1>, <flavour2>, ... on Debian architecture <arch>
+
+You can use wildcards to cover multiple values, e.g. 'arm*' for armel,
+armhf and arm64 architectures. Also 'x86' is used to cover the Debian
+architectures amd64, i386 and x32.
+
+Kernel config files
+===================
+
+Each kernel configuration file is constructed dynamically from a
+number of files under debian/config and (if it exists)
+debian/config.local. They are read in the following order, such that
+files later on the list can override settings from earlier files.
+Files in debian/config.local can also override settings from the
+corresponding file in debian/config. Most of the files are optional
+and the filenames can generally be overridden by explicit lists
+(possibly empty) specified in the 'defines' files.
+
+1. Common:
+ - Default filename: config
+ - Filename list: [image]configs in defines
+2. Per kernel architecture:
+ - Filename: kernelarch-<karch>/config (optional)
+3. Per architecture:
+ - Default filename: <arch>/config
+ - Filename list: [image]configs in <arch>/defines
+4. Per architecture and flavour:
+ - Default filename: <arch>/config.<flavour> (optional)
+ - Filename list: [<flavour>_image]configs in <arch>/defines
+5. Per featureset:
+ - Default filename: featureset-<fset>/config (optional)
+ - Filename list: [image]configs in featureset-<fset>/defines
+6. Per architecture and featureset:
+ - Default filename: <arch>/<fset>/config (optional)
+ - Filename list: [image]configs in <arch>/<fset>/defines
+7. Per architecture, featureset, and flavour:
+ - Default filename: <arch>/<fset>/config.<flavour> (optional)
+ - Filename list: [<flavour>_image]configs in <arch>/<fset>/defines
+
+You can check the final list of configuration files by reading
+debian/rules.gen. Each binary-arch_<arch>_<fset>_<flavour>_real
+rule passes the list to debian/rules.real as the KCONFIG variable.
+
+These files should be kept in order using the kconfigeditor2
+utility from <https://salsa.debian.org/kernel-team/kernel-team>.
+With this source package as your working directory, run:
+
+ debian/rules source
+ .../kernel-team/utils/kconfigeditor2/process.py .
+
+This will also warn about any symbols that no longer exist, or
+cannot be explicitly configured.
+
+Control file
+============
+The master control file debian/control must be generated before
+the package is uploaded. debian/rules contains the debian/control
+target, which generates the control file by invoking the
+debian/bin/gencontrol.py script, which combines the templates from
+the templates directory and architecture-specific defines file to
+produce the debian/control file. Note that this target is intentionally
+made to fail with a non-zero exit code to make sure that it is never
+run during an automatic build. The following variables are substituted
+into the templates:
+
+@version@ Upstream kernel version, for example 2.6.11.
+@arch@ The Debian arch name, such as powerpc or i386.
+@flavour@ The build flavour, such as 686 or k7-smp.
+@class@ The CPU/architecture class; displayed in synopsis. It should
+ be fairly short, as the synopsis is supposed to be <80 chars.
+ It should be in the form "foo class", and will show up in the
+ description as "foo class machines".
+@longclass@ The CPU/architecture class; displayed in the extended
+ description. The same rules apply as in @class@. If
+ this is unset, it will default to @class@.
+@desc@ (Potentially) multi-line verbiage that's appended to
+ -image descriptions.
+@abiname@ Current abiname, a single digit.
+
+Normally, the arch-specific contents should be controlled by
+adjusting the corresponding defines file.
+
+Build-dependencies that relate to specific binary packages can be
+specified in a Build-Depends field in the template for that binary
+package. gencontrol.py will append the value to the source package's
+Build-Depends-Arch or Build-Depends-Indep field, as appropriate. It
+will also use the binary package's Architecture and Build-Profile as
+the architecture-qualification and/or restriction for each build-
+dependency that doesn't already have them.
+
+TODO:
+- Patches applied to the upstream source
+- How to define a flavour
+- More detail on generation of debian/control and configs
+
+Running tests
+=============
+
+linux supports autopkgtest and should be able to run most of the
+kernel's self-tests on any architecture where kexec is supported,
+but it has higher resource requirements than most packages:
+
+- A VM with plenty of disk space (10GB is enough), RAM (1GB is
+ probably enough) and at least 2 CPUs
+- The temporary directory for adt-virt-qemu (-o option) will need
+ several GB of space, so a tmpfs may not be suitable
+
+Note that if you tell adt-run to use an 'unbuilt tree' (i.e. an
+unpacked source package) it does not exclude VCS directories such as
+.git. Either use a packed source package or copy the working tree
+elsewhere excluding .git.
+
+Example invocation:
+
+ adt-run -B ../linux-image-4.2.0-rc6-amd64_4.2~rc6-1~exp2_amd64.deb \
+ ../linux_4.2~rc6-1~exp2.dsc \
+ --timeout-test=1200 \
+ --- adt-virt-qemu /var/cache/autopkgtest/adt-sid.img -o /var/tmp -c 2
+
+Build profiles
+==============
+
+Several build profiles are understood and supported:
+
+- stage1: Needed when bootstrapping an architecture. A stage1 build
+ produces only the linux-libc-dev package and has no host
+ build-dependencies.
+- nodoc: Exclude most documentation
+- noudeb: Exclude installer udeb packages
+- pkg.linux.notools: Exclude userland tool packages (linux-kbuild-<version>,
+ linux-perf-<version>, etc.)
+- pkg.linux.mintools: Build minimal set of userland tool packages
+ (linux-kbuild-<version>, linux-bootwrapper-<abiname> on powerpc/ppc64)
+- pkg.linux.nokernel: Exclude kernel image and header packages
+- pkg.linux.nosource: Exclude source binary package (linux-source-<version>)
+- cross: Needed when cross-building. Currently this must be used together
+ with nopython as the build-dependencies will be unsatisfiable otherwise.
+- nopython: Disable Python bindings. This currently disables building the
+ linux-perf-<version> package, as the perf program embeds Python.
+- pkg.linux.nometa: Exclude most meta-packages. The linux-compiler-* and
+ linux-headers-*-all* packages can still be built.
+
+Build rules
+===========
+
+The Debian build rules are split across multiple makefiles:
+
+- debian/rules: Standard top-level makefile for Debian package build.
+- debian/rules.gen: Intermediate makefile between debian/rules and
+ debian/rules.real. This is generated by gencontrol.py based on
+ the configuration under debian/config.
+- debian/rules.real: Makefile for building a single kernel flavour
+ or other group of binary packages.
+- debian/rules.d: Makefiles for building userland code from specific
+ source directories. The directory structure mirrors the kernel
+ source directories. debian/rules.real uses the "make-tools" to
+ invoke these makefiles.
+
+All builds *must* be done out-of-tree in a subdirectory of
+debian/build, so that the output files do not end up in the
+linux-source-<version> binary package. Currently kernel builds use
+debian/build/build_<arch>_<featureset>_<flavour>, userland code uses
+debian/build/build-tools/<source-dir> and documentation uses
+debian/build/build-doc.
+
+Code signing
+============
+
+The kernel image and modules may be signed after building, to support
+a Secure Boot or Trusted Boot policy. In Debian, this is performed by
+a "code signing service" that is separate from the normal package
+build process.
+
+The initial package build generates binary packages named
+linux-image-<arch>-signed-template, that contain a source package
+template and metadata about the files to be signed. The code signing
+service will download this and the linux-image packages to be signed.
+It will add detached signatures to the source package, then upload it
+(without ever running debian/rules).
+
+The source package template is generated by
+debian/bin/gencontrol_signed.py and debian/rules.real with files from
+debian/signing_templates and debian/templates. To test changes to
+these:
+
+1. Build the linux source package.
+2. Generate the signed source package by running the script
+ "debian-test-sign" from the kernel-team.git repository. It is
+ also possible to set up a development configuration of the
+ official code signing service, but this is more complicated.
+3. Build the signed source package.
diff --git a/debian/bin/abiupdate.py b/debian/bin/abiupdate.py
new file mode 100755
index 000000000..dbb6f77ba
--- /dev/null
+++ b/debian/bin/abiupdate.py
@@ -0,0 +1,232 @@
+#!/usr/bin/python3
+
+import sys
+import optparse
+import os
+import shutil
+import tempfile
+
+from urllib.request import urlopen
+from urllib.error import HTTPError
+
+from debian_linux.abi import Symbols
+from debian_linux.config import ConfigCoreDump
+from debian_linux.debian import Changelog, VersionLinux
+
+default_url_base = "https://deb.debian.org/debian/"
+default_url_base_incoming = "https://incoming.debian.org/debian-buildd/"
+default_url_base_ports = "https://deb.debian.org/debian-ports/"
+default_url_base_ports_incoming = "https://incoming.ports.debian.org/"
+default_url_base_security = "https://deb.debian.org/debian-security/"
+
+
+class url_debian_flat(object):
+ def __init__(self, base):
+ self.base = base
+
+ def __call__(self, source, filename, arch):
+ return self.base + filename
+
+
+class url_debian_pool(object):
+ def __init__(self, base):
+ self.base = base
+
+ def __call__(self, source, filename, arch):
+ return (self.base + "pool/main/" + source[0] + "/" + source + "/"
+ + filename)
+
+
+class url_debian_ports_pool(url_debian_pool):
+ def __call__(self, source, filename, arch):
+ if arch == 'all':
+ return url_debian_pool.__call__(self, source, filename, arch)
+ return (self.base + "pool-" + arch + "/main/" + source[0] + "/"
+ + source + "/" + filename)
+
+
+class url_debian_security_pool(url_debian_pool):
+ def __call__(self, source, filename, arch):
+ return (self.base + "pool/updates/main/" + source[0] + "/" + source
+ + "/" + filename)
+
+
+class Main(object):
+ dir = None
+
+ def __init__(self, arch=None, featureset=None, flavour=None):
+ self.log = sys.stdout.write
+
+ self.override_arch = arch
+ self.override_featureset = featureset
+ self.override_flavour = flavour
+
+ changelog = Changelog(version=VersionLinux)
+ while changelog[0].distribution == 'UNRELEASED':
+ changelog.pop(0)
+ changelog = changelog[0]
+
+ self.source = changelog.source
+ self.version = changelog.version.linux_version
+ self.version_source = changelog.version.complete
+
+ if changelog.distribution.endswith('-security'):
+ self.urls = [url_base_security]
+ else:
+ self.urls = [url_base, url_base_ports,
+ url_base_incoming, url_base_ports_incoming]
+
+ self.config = ConfigCoreDump(fp=open("debian/config.defines.dump",
+ "rb"))
+
+ self.version_abi = self.config['version', ]['abiname']
+
+ def __call__(self):
+ self.dir = tempfile.mkdtemp(prefix='abiupdate')
+ try:
+ self.log("Retrieve config\n")
+
+ try:
+ config = self.get_config()
+ except HTTPError as e:
+ self.log("Failed to retrieve %s: %s\n" % (e.filename, e))
+ sys.exit(1)
+
+ if self.override_arch:
+ arches = [self.override_arch]
+ else:
+ arches = config[('base',)]['arches']
+ for arch in arches:
+ self.update_arch(config, arch)
+ finally:
+ shutil.rmtree(self.dir)
+
+ def extract_package(self, filename, base):
+ base_out = self.dir + "/" + base
+ os.mkdir(base_out)
+ os.system("dpkg-deb --extract %s %s" % (filename, base_out))
+ return base_out
+
+ def get_abi(self, arch, prefix):
+ try:
+ version_abi = (self.config[('version',)]['abiname_base'] + '-'
+ + self.config['abi', arch]['abiname'])
+ except KeyError:
+ version_abi = self.version_abi
+ filename = ("linux-headers-%s-%s_%s_%s.deb" %
+ (version_abi, prefix, self.version_source, arch))
+ f = self.retrieve_package(filename, arch)
+ d = self.extract_package(f, "linux-headers-%s_%s" % (prefix, arch))
+ f1 = d + ("/usr/src/linux-headers-%s-%s/Module.symvers" %
+ (version_abi, prefix))
+ s = Symbols(open(f1))
+ shutil.rmtree(d)
+ return version_abi, s
+
+ def get_config(self):
+ # XXX We used to fetch the previous version of linux-support here,
+ # but until we authenticate downloads we should not do that as
+ # pickle.load allows running arbitrary code.
+ return self.config
+
+ def retrieve_package(self, filename, arch):
+ for i, url in enumerate(self.urls):
+ u = url(self.source, filename, arch)
+ filename_out = self.dir + "/" + filename
+
+ try:
+ f_in = urlopen(u)
+ except HTTPError:
+ if i == len(self.urls) - 1:
+ # No more URLs to try
+ raise
+ else:
+ continue
+
+ f_out = open(filename_out, 'wb')
+ while 1:
+ r = f_in.read()
+ if not r:
+ break
+ f_out.write(r)
+ return filename_out
+
+ def save_abi(self, version_abi, symbols, arch, featureset, flavour):
+ dir = "debian/abi/%s" % version_abi
+ if not os.path.exists(dir):
+ os.makedirs(dir)
+ out = "%s/%s_%s_%s" % (dir, arch, featureset, flavour)
+ symbols.write(open(out, 'w'))
+
+ def update_arch(self, config, arch):
+ if self.override_featureset:
+ featuresets = [self.override_featureset]
+ else:
+ featuresets = config[('base', arch)]['featuresets']
+ for featureset in featuresets:
+ self.update_featureset(config, arch, featureset)
+
+ def update_featureset(self, config, arch, featureset):
+ config_base = config.merge('base', arch, featureset)
+
+ if not config_base.get('enabled', True):
+ return
+
+ if self.override_flavour:
+ flavours = [self.override_flavour]
+ else:
+ flavours = config_base['flavours']
+ for flavour in flavours:
+ self.update_flavour(config, arch, featureset, flavour)
+
+ def update_flavour(self, config, arch, featureset, flavour):
+ self.log("Updating ABI for arch %s, featureset %s, flavour %s: " %
+ (arch, featureset, flavour))
+ try:
+ if featureset == 'none':
+ localversion = flavour
+ else:
+ localversion = featureset + '-' + flavour
+
+ version_abi, abi = self.get_abi(arch, localversion)
+ self.save_abi(version_abi, abi, arch, featureset, flavour)
+ self.log("Ok.\n")
+ except HTTPError as e:
+ self.log("Failed to retrieve %s: %s\n" % (e.filename, e))
+ except Exception:
+ self.log("FAILED!\n")
+ import traceback
+ traceback.print_exc(None, sys.stdout)
+
+
+if __name__ == '__main__':
+ options = optparse.OptionParser()
+ options.add_option("-u", "--url-base", dest="url_base",
+ default=default_url_base)
+ options.add_option("--url-base-incoming", dest="url_base_incoming",
+ default=default_url_base_incoming)
+ options.add_option("--url-base-ports", dest="url_base_ports",
+ default=default_url_base_ports)
+ options.add_option("--url-base-ports-incoming",
+ dest="url_base_ports_incoming",
+ default=default_url_base_ports_incoming)
+ options.add_option("--url-base-security", dest="url_base_security",
+ default=default_url_base_security)
+
+ opts, args = options.parse_args()
+
+ kw = {}
+ if len(args) >= 1:
+ kw['arch'] = args[0]
+ if len(args) >= 2:
+ kw['featureset'] = args[1]
+ if len(args) >= 3:
+ kw['flavour'] = args[2]
+
+ url_base = url_debian_pool(opts.url_base)
+ url_base_incoming = url_debian_pool(opts.url_base_incoming)
+ url_base_ports = url_debian_ports_pool(opts.url_base_ports)
+ url_base_ports_incoming = url_debian_flat(opts.url_base_ports_incoming)
+ url_base_security = url_debian_security_pool(opts.url_base_security)
+
+ Main(**kw)()
diff --git a/debian/bin/buildcheck.py b/debian/bin/buildcheck.py
new file mode 100755
index 000000000..3f7ce25a9
--- /dev/null
+++ b/debian/bin/buildcheck.py
@@ -0,0 +1,285 @@
+#!/usr/bin/python3
+
+import sys
+import glob
+import os
+import re
+
+from debian_linux.abi import Symbols
+from debian_linux.config import ConfigCoreDump
+from debian_linux.debian import Changelog, VersionLinux
+
+
+class CheckAbi(object):
+ class SymbolInfo(object):
+ def __init__(self, symbol, symbol_ref=None):
+ self.symbol = symbol
+ self.symbol_ref = symbol_ref or symbol
+
+ @property
+ def module(self):
+ return self.symbol.module
+
+ @property
+ def name(self):
+ return self.symbol.name
+
+ def write(self, out, ignored):
+ info = []
+ if ignored:
+ info.append("ignored")
+ for name in ('module', 'version', 'export'):
+ data = getattr(self.symbol, name)
+ data_ref = getattr(self.symbol_ref, name)
+ if data != data_ref:
+ info.append("%s: %s -> %s" % (name, data_ref, data))
+ else:
+ info.append("%s: %s" % (name, data))
+ out.write("%-48s %s\n" % (self.symbol.name, ", ".join(info)))
+
+ def __init__(self, config, dir, arch, featureset, flavour):
+ self.config = config
+ self.arch, self.featureset, self.flavour = arch, featureset, flavour
+
+ self.filename_new = "%s/Module.symvers" % dir
+
+ try:
+ version_abi = (self.config[('version',)]['abiname_base'] + '-'
+ + self.config['abi', arch]['abiname'])
+ except KeyError:
+ version_abi = self.config[('version',)]['abiname']
+ self.filename_ref = ("debian/abi/%s/%s_%s_%s" %
+ (version_abi, arch, featureset, flavour))
+
+ def __call__(self, out):
+ ret = 0
+
+ new = Symbols(open(self.filename_new))
+ unversioned = [name for name in new
+ if new[name].version == '0x00000000']
+ if unversioned:
+ out.write("ABI is not completely versioned! "
+ "Refusing to continue.\n")
+ out.write("\nUnversioned symbols:\n")
+ for name in sorted(unversioned):
+ self.SymbolInfo(new[name]).write(out, False)
+ ret = 1
+
+ try:
+ ref = Symbols(open(self.filename_ref))
+ except IOError:
+ out.write("Can't read ABI reference. ABI not checked!\n")
+ return ret
+
+ symbols, add, change, remove = self._cmp(ref, new)
+
+ ignore = self._ignore(symbols)
+
+ add_effective = add - ignore
+ change_effective = change - ignore
+ remove_effective = remove - ignore
+
+ if change_effective or remove_effective:
+ out.write("ABI has changed! Refusing to continue.\n")
+ ret = 1
+ elif change or remove:
+ out.write("ABI has changed but all changes have been ignored. "
+ "Continuing.\n")
+ elif add_effective:
+ out.write("New symbols have been added. Continuing.\n")
+ elif add:
+ out.write("New symbols have been added but have been ignored. "
+ "Continuing.\n")
+ else:
+ out.write("No ABI changes.\n")
+
+ if add:
+ out.write("\nAdded symbols:\n")
+ for name in sorted(add):
+ symbols[name].write(out, name in ignore)
+
+ if change:
+ out.write("\nChanged symbols:\n")
+ for name in sorted(change):
+ symbols[name].write(out, name in ignore)
+
+ if remove:
+ out.write("\nRemoved symbols:\n")
+ for name in sorted(remove):
+ symbols[name].write(out, name in ignore)
+
+ return ret
+
+ def _cmp(self, ref, new):
+ ref_names = set(ref.keys())
+ new_names = set(new.keys())
+
+ add = set()
+ change = set()
+ remove = set()
+
+ symbols = {}
+
+ for name in new_names - ref_names:
+ add.add(name)
+ symbols[name] = self.SymbolInfo(new[name])
+
+ for name in ref_names.intersection(new_names):
+ s_ref = ref[name]
+ s_new = new[name]
+
+ if s_ref != s_new:
+ change.add(name)
+ symbols[name] = self.SymbolInfo(s_new, s_ref)
+
+ for name in ref_names - new_names:
+ remove.add(name)
+ symbols[name] = self.SymbolInfo(ref[name])
+
+ return symbols, add, change, remove
+
+ def _ignore_pattern(self, pattern):
+ ret = []
+ for i in re.split(r'(\*\*?)', pattern):
+ if i == '*':
+ ret.append(r'[^/]*')
+ elif i == '**':
+ ret.append(r'.*')
+ elif i:
+ ret.append(re.escape(i))
+ return re.compile('^' + ''.join(ret) + '$')
+
+ def _ignore(self, symbols):
+ # TODO: let config merge this lists
+ configs = []
+ configs.append(self.config.get(('abi', self.arch, self.featureset,
+ self.flavour), {}))
+ configs.append(self.config.get(('abi', self.arch, None, self.flavour),
+ {}))
+ configs.append(self.config.get(('abi', self.arch, self.featureset),
+ {}))
+ configs.append(self.config.get(('abi', self.arch), {}))
+ configs.append(self.config.get(('abi', None, self.featureset), {}))
+ configs.append(self.config.get(('abi',), {}))
+
+ ignores = set()
+ for config in configs:
+ ignores.update(config.get('ignore-changes', []))
+
+ filtered = set()
+ for ignore in ignores:
+ type = 'name'
+ if ':' in ignore:
+ type, ignore = ignore.split(':')
+ if type in ('name', 'module'):
+ p = self._ignore_pattern(ignore)
+ for symbol in symbols.values():
+ if p.match(getattr(symbol, type)):
+ filtered.add(symbol.name)
+ else:
+ raise NotImplementedError
+
+ return filtered
+
+
+class CheckImage(object):
+ def __init__(self, config, dir, arch, featureset, flavour):
+ self.dir = dir
+ self.arch, self.featureset, self.flavour = arch, featureset, flavour
+
+ self.changelog = Changelog(version=VersionLinux)[0]
+
+ self.config_entry_base = config.merge('base', arch, featureset,
+ flavour)
+ self.config_entry_build = config.merge('build', arch, featureset,
+ flavour)
+ self.config_entry_image = config.merge('image', arch, featureset,
+ flavour)
+
+ def __call__(self, out):
+ image = self.config_entry_build.get('image-file')
+ uncompressed_image = self.config_entry_build \
+ .get('uncompressed-image-file')
+
+ if not image:
+ # TODO: Bail out
+ return 0
+
+ image = os.path.join(self.dir, image)
+ if uncompressed_image:
+ uncompressed_image = os.path.join(self.dir, uncompressed_image)
+
+ fail = 0
+
+ fail |= self.check_size(out, image, uncompressed_image)
+
+ return fail
+
+ def check_size(self, out, image, uncompressed_image):
+ value = self.config_entry_image.get('check-size')
+
+ if not value:
+ return 0
+
+ dtb_size = 0
+ if self.config_entry_image.get('check-size-with-dtb'):
+ for dtb in glob.glob(
+ os.path.join(self.dir, 'arch',
+ self.config_entry_base['kernel-arch'],
+ 'boot/dts/*.dtb')):
+ dtb_size = max(dtb_size, os.stat(dtb).st_size)
+
+ size = os.stat(image).st_size + dtb_size
+
+ # 1% overhead is desirable in order to cope with growth
+ # through the lifetime of a stable release. Warn if this is
+ # not the case.
+ usage = (float(size)/value) * 100.0
+ out.write('Image size %d/%d, using %.2f%%. ' % (size, value, usage))
+ if size > value:
+ out.write('Too large. Refusing to continue.\n')
+ return 1
+ elif usage >= 99.0:
+ out.write('Under 1%% space in %s. ' % self.changelog.distribution)
+ else:
+ out.write('Image fits. ')
+ out.write('Continuing.\n')
+
+ # Also check the uncompressed image
+ if uncompressed_image and \
+ self.config_entry_image.get('check-uncompressed-size'):
+ value = self.config_entry_image.get('check-uncompressed-size')
+ size = os.stat(uncompressed_image).st_size
+ usage = (float(size)/value) * 100.0
+ out.write('Uncompressed Image size %d/%d, using %.2f%%. ' %
+ (size, value, usage))
+ if size > value:
+ out.write('Too large. Refusing to continue.\n')
+ return 1
+ elif usage >= 99.0:
+ out.write('Uncompressed Image Under 1%% space in %s. ' %
+ self.changelog.distribution)
+ else:
+ out.write('Uncompressed Image fits. ')
+ out.write('Continuing.\n')
+
+ return 0
+
+
+class Main(object):
+ def __init__(self, dir, arch, featureset, flavour):
+ self.args = dir, arch, featureset, flavour
+
+ self.config = ConfigCoreDump(open("debian/config.defines.dump", "rb"))
+
+ def __call__(self):
+ fail = 0
+
+ for c in CheckAbi, CheckImage:
+ fail |= c(self.config, *self.args)(sys.stdout)
+
+ return fail
+
+
+if __name__ == '__main__':
+ sys.exit(Main(*sys.argv[1:])())
diff --git a/debian/bin/check-patches.sh b/debian/bin/check-patches.sh
new file mode 100755
index 000000000..093649bd1
--- /dev/null
+++ b/debian/bin/check-patches.sh
@@ -0,0 +1,28 @@
+#!/bin/sh -e
+
+TMPDIR=$(mktemp -d)
+trap "rm -rf $TMPDIR" EXIT
+for patchdir in debian/patches*; do
+ sed '/^#/d; /^[[:space:]]*$/d; /^X /d; s/^+ //; s,^,'"$patchdir"'/,' "$patchdir"/series
+done | sort -u > $TMPDIR/used
+find debian/patches* ! -path '*/series' -type f -name "*.diff" -o -name "*.patch" -printf "%p\n" | sort > $TMPDIR/avail
+echo "Used patches"
+echo "=============="
+cat $TMPDIR/used
+echo
+echo "Unused patches"
+echo "=============="
+fgrep -v -f $TMPDIR/used $TMPDIR/avail || test $? = 1
+echo
+echo "Patches without required headers"
+echo "================================"
+xargs egrep -l '^(Subject|Description):' < $TMPDIR/used | xargs egrep -l '^(From|Author|Origin):' > $TMPDIR/goodheaders || test $? = 1
+fgrep -v -f $TMPDIR/goodheaders $TMPDIR/used || test $? = 1
+echo
+echo "Patches without Origin or Forwarded header"
+echo "=========================================="
+xargs egrep -L '^(Origin:|Forwarded: (no\b|not-needed|http))' < $TMPDIR/used || test $? = 1
+echo
+echo "Patches to be forwarded"
+echo "======================="
+xargs egrep -l '^Forwarded: no\b' < $TMPDIR/used || test $? = 1
diff --git a/debian/bin/debian_linux b/debian/bin/debian_linux
new file mode 120000
index 000000000..01f3e04dc
--- /dev/null
+++ b/debian/bin/debian_linux
@@ -0,0 +1 @@
+../lib/python/debian_linux/ \ No newline at end of file
diff --git a/debian/bin/fix-shebang b/debian/bin/fix-shebang
new file mode 100755
index 000000000..edf551fa3
--- /dev/null
+++ b/debian/bin/fix-shebang
@@ -0,0 +1,12 @@
+#!/usr/bin/perl -pi
+
+# Change "#!/usr/bin/env perl" to "#!/usr/bin/perl" (policy §10.4).
+# Other uses of /usr/bin/env should probably be converted as well, but
+# policy doesn't specify what to do.
+if ($. == 1 && m|^\#!\s*/usr/bin/env\s+(.+)|) {
+ if ($1 eq "perl") {
+ $_ = "#!/usr/bin/perl\n";
+ } else {
+ print STDERR "W: Found #!/usr/bin/env $1 and don't know what to substitute\n";
+ }
+}
diff --git a/debian/bin/gencontrol.py b/debian/bin/gencontrol.py
new file mode 100755
index 000000000..8e436b5ed
--- /dev/null
+++ b/debian/bin/gencontrol.py
@@ -0,0 +1,738 @@
+#!/usr/bin/python3
+
+import sys
+import locale
+import io
+import os
+import os.path
+import subprocess
+import re
+
+from debian_linux import config
+from debian_linux.debian import PackageDescription, PackageRelation, \
+ PackageRelationEntry, PackageRelationGroup, VersionLinux
+from debian_linux.gencontrol import Gencontrol as Base, merge_packages, \
+ iter_featuresets, iter_flavours
+from debian_linux.utils import Templates, read_control
+
+locale.setlocale(locale.LC_CTYPE, "C.UTF-8")
+
+
+class Gencontrol(Base):
+ config_schema = {
+ 'abi': {
+ 'ignore-changes': config.SchemaItemList(),
+ },
+ 'build': {
+ 'debug-info': config.SchemaItemBoolean(),
+ 'signed-code': config.SchemaItemBoolean(),
+ 'vdso': config.SchemaItemBoolean(),
+ },
+ 'description': {
+ 'parts': config.SchemaItemList(),
+ },
+ 'image': {
+ 'bootloaders': config.SchemaItemList(),
+ 'configs': config.SchemaItemList(),
+ 'initramfs-generators': config.SchemaItemList(),
+ 'check-size': config.SchemaItemInteger(),
+ 'check-size-with-dtb': config.SchemaItemBoolean(),
+ 'check-uncompressed-size': config.SchemaItemInteger(),
+ 'depends': config.SchemaItemList(','),
+ 'provides': config.SchemaItemList(','),
+ 'suggests': config.SchemaItemList(','),
+ 'recommends': config.SchemaItemList(','),
+ 'conflicts': config.SchemaItemList(','),
+ 'breaks': config.SchemaItemList(','),
+ },
+ 'relations': {
+ },
+ 'packages': {
+ 'docs': config.SchemaItemBoolean(),
+ 'installer': config.SchemaItemBoolean(),
+ 'libc-dev': config.SchemaItemBoolean(),
+ 'meta': config.SchemaItemBoolean(),
+ 'tools-unversioned': config.SchemaItemBoolean(),
+ 'tools-versioned': config.SchemaItemBoolean(),
+ 'source': config.SchemaItemBoolean(),
+ }
+ }
+
+ env_flags = [
+ ('DEBIAN_KERNEL_DISABLE_DEBUG', 'disable_debug', 'debug infos'),
+ ('DEBIAN_KERNEL_DISABLE_INSTALLER', 'disable_installer', 'installer modules'),
+ ('DEBIAN_KERNEL_DISABLE_SIGNED', 'disable_signed', 'signed code'),
+ ]
+
+ def __init__(self, config_dirs=["debian/config", "debian/config.local"],
+ template_dirs=["debian/templates"]):
+ super(Gencontrol, self).__init__(
+ config.ConfigCoreHierarchy(self.config_schema, config_dirs),
+ Templates(template_dirs),
+ VersionLinux)
+ self.process_changelog()
+ self.config_dirs = config_dirs
+
+ for env, attr, desc in self.env_flags:
+ setattr(self, attr, False)
+ if os.getenv(env):
+ if self.changelog[0].distribution == 'UNRELEASED':
+ import warnings
+ warnings.warn(f'Disable {desc} on request ({env} set)')
+ setattr(self, attr, True)
+ else:
+ raise RuntimeError(
+ f'Unable to disable {desc} in release build ({env} set)')
+
+ def _setup_makeflags(self, names, makeflags, data):
+ for src, dst, optional in names:
+ if src in data or not optional:
+ makeflags[dst] = data[src]
+
+ def do_main_setup(self, vars, makeflags, extra):
+ super(Gencontrol, self).do_main_setup(vars, makeflags, extra)
+ makeflags.update({
+ 'VERSION': self.version.linux_version,
+ 'UPSTREAMVERSION': self.version.linux_upstream,
+ 'ABINAME': self.abiname_version + self.abiname_part,
+ 'SOURCEVERSION': self.version.complete,
+ })
+ makeflags['SOURCE_BASENAME'] = vars['source_basename']
+ makeflags['SOURCE_SUFFIX'] = vars['source_suffix']
+
+ # Prepare to generate debian/tests/control
+ self.tests_control = self.process_packages(
+ self.templates['tests-control.main'], vars)
+ self.tests_control_image = None
+
+ self.installer_packages = {}
+
+ if not self.disable_installer and self.config.merge('packages').get('installer', True):
+ # Add udebs using kernel-wedge
+ kw_env = os.environ.copy()
+ kw_env['KW_DEFCONFIG_DIR'] = 'debian/installer'
+ kw_env['KW_CONFIG_DIR'] = 'debian/installer'
+ kw_proc = subprocess.Popen(
+ ['kernel-wedge', 'gen-control', vars['abiname']],
+ stdout=subprocess.PIPE,
+ env=kw_env)
+ if not isinstance(kw_proc.stdout, io.IOBase):
+ udeb_packages = read_control(io.open(kw_proc.stdout.fileno(),
+ closefd=False))
+ else:
+ udeb_packages = read_control(io.TextIOWrapper(kw_proc.stdout))
+ kw_proc.wait()
+ if kw_proc.returncode != 0:
+ raise RuntimeError('kernel-wedge exited with code %d' %
+ kw_proc.returncode)
+
+ # All architectures that have some installer udebs
+ arches = set()
+ for package in udeb_packages:
+ arches.update(package['Architecture'])
+
+ # Code-signing status for those architectures
+ # If we're going to build signed udebs later, don't actually
+ # generate udebs. Just test that we *can* build, so we find
+ # configuration errors before building linux-signed.
+ build_signed = {}
+ for arch in arches:
+ if not self.disable_signed:
+ build_signed[arch] = self.config.merge('build', arch) \
+ .get('signed-code', False)
+ else:
+ build_signed[arch] = False
+
+ for package in udeb_packages:
+ # kernel-wedge currently chokes on Build-Profiles so add it now
+ if any(build_signed[arch] for arch in package['Architecture']):
+ assert all(build_signed[arch]
+ for arch in package['Architecture'])
+ # XXX This is a hack to exclude the udebs from
+ # the package list while still being able to
+ # convince debhelper and kernel-wedge to go
+ # part way to building them.
+ package['Build-Profiles'] = (
+ '<pkg.linux.udeb-unsigned-test-build !noudeb>')
+ else:
+ package['Build-Profiles'] = (
+ '<!noudeb !stage1 !pkg.linux.nokernel>')
+
+ for arch in package['Architecture']:
+ self.installer_packages.setdefault(arch, []) \
+ .append(package)
+
+ def do_main_makefile(self, makefile, makeflags, extra):
+ for featureset in iter_featuresets(self.config):
+ makeflags_featureset = makeflags.copy()
+ makeflags_featureset['FEATURESET'] = featureset
+ cmds_source = ["$(MAKE) -f debian/rules.real source-featureset %s"
+ % makeflags_featureset]
+ makefile.add('source_%s_real' % featureset, cmds=cmds_source)
+ makefile.add('source_%s' % featureset,
+ ['source_%s_real' % featureset])
+ makefile.add('source', ['source_%s' % featureset])
+
+ makeflags = makeflags.copy()
+ makeflags['ALL_FEATURESETS'] = ' '.join(iter_featuresets(self.config))
+ super(Gencontrol, self).do_main_makefile(makefile, makeflags, extra)
+
+ def do_main_packages(self, packages, vars, makeflags, extra):
+ packages.extend(self.process_packages(
+ self.templates["control.main"], vars))
+
+ # Only build the metapackages if their names won't exactly match
+ # the packages they depend on
+ do_meta = self.config.merge('packages').get('meta', True) \
+ and vars['source_suffix'] != '-' + vars['version']
+
+ if self.config.merge('packages').get('docs', True):
+ packages.extend(self.process_packages(
+ self.templates["control.docs"], vars))
+ if do_meta:
+ packages.extend(self.process_packages(
+ self.templates["control.docs.meta"], vars))
+ self.substitute_debhelper_config(
+ 'docs.meta', vars,
+ '%(source_basename)s-doc%(source_suffix)s' % vars)
+ if self.config.merge('packages').get('tools-unversioned', True):
+ packages.extend(self.process_packages(
+ self.templates["control.tools-unversioned"], vars))
+ if self.config.merge('packages').get('tools-versioned', True):
+ packages.extend(self.process_packages(
+ self.templates["control.tools-versioned"], vars))
+ self.substitute_debhelper_config('perf', vars,
+ 'linux-perf-%(version)s' % vars)
+ if do_meta:
+ packages.extend(self.process_packages(
+ self.templates["control.tools-versioned.meta"], vars))
+ self.substitute_debhelper_config('perf.meta', vars,
+ 'linux-perf')
+ if self.config.merge('packages').get('source', True):
+ packages.extend(self.process_packages(
+ self.templates["control.sourcebin"], vars))
+ if do_meta:
+ packages.extend(self.process_packages(
+ self.templates["control.sourcebin.meta"], vars))
+ self.substitute_debhelper_config(
+ 'sourcebin.meta', vars,
+ '%(source_basename)s-source%(source_suffix)s' % vars)
+
+ def do_indep_featureset_setup(self, vars, makeflags, featureset, extra):
+ makeflags['LOCALVERSION'] = vars['localversion']
+ kernel_arches = set()
+ for arch in iter(self.config['base', ]['arches']):
+ if self.config.get_merge('base', arch, featureset, None,
+ 'flavours'):
+ kernel_arches.add(self.config['base', arch]['kernel-arch'])
+ makeflags['ALL_KERNEL_ARCHES'] = ' '.join(sorted(list(kernel_arches)))
+
+ vars['featureset_desc'] = ''
+ if featureset != 'none':
+ desc = self.config[('description', None, featureset)]
+ desc_parts = desc['parts']
+ vars['featureset_desc'] = (' with the %s featureset' %
+ desc['part-short-%s' % desc_parts[0]])
+
+ def do_indep_featureset_packages(self, packages, makefile, featureset,
+ vars, makeflags, extra):
+ headers_featureset = self.templates["control.headers.featureset"]
+ packages.extend(self.process_packages(headers_featureset, vars))
+
+ cmds_binary_arch = ["$(MAKE) -f debian/rules.real "
+ "binary-indep-featureset %s" %
+ makeflags]
+ makefile.add('binary-indep_%s_real' % featureset,
+ cmds=cmds_binary_arch)
+
+ arch_makeflags = (
+ ('kernel-arch', 'KERNEL_ARCH', False),
+ )
+
+ def do_arch_setup(self, vars, makeflags, arch, extra):
+ config_base = self.config.merge('base', arch)
+
+ self._setup_makeflags(self.arch_makeflags, makeflags, config_base)
+
+ try:
+ gnu_type_bytes = subprocess.check_output(
+ ['dpkg-architecture', '-f', '-a', arch,
+ '-q', 'DEB_HOST_GNU_TYPE'],
+ stderr=subprocess.DEVNULL)
+ except subprocess.CalledProcessError:
+ # This sometimes happens for the newest ports :-/
+ print('W: Unable to get GNU type for %s' % arch, file=sys.stderr)
+ else:
+ vars['gnu-type-package'] = (
+ gnu_type_bytes.decode('utf-8').strip().replace('_', '-'))
+
+ def do_arch_packages(self, packages, makefile, arch, vars, makeflags,
+ extra):
+ if self.version.linux_modifier is None:
+ try:
+ abiname_part = '-%s' % self.config['abi', arch]['abiname']
+ except KeyError:
+ abiname_part = self.abiname_part
+ makeflags['ABINAME'] = vars['abiname'] = \
+ self.abiname_version + abiname_part
+
+ if not self.disable_signed:
+ build_signed = self.config.merge('build', arch) \
+ .get('signed-code', False)
+ else:
+ build_signed = False
+
+ if self.config.merge('packages').get('libc-dev', True):
+ libc_dev = self.templates["control.libc-dev"]
+ merge_packages(packages, self.process_packages(libc_dev, {}), arch)
+
+ if self.config['base', arch].get('featuresets') and \
+ self.config.merge('packages').get('source', True):
+ merge_packages(packages,
+ self.process_packages(
+ self.templates["control.config"], vars),
+ arch)
+
+ cmds_build_arch = ["$(MAKE) -f debian/rules.real build-arch-arch %s" %
+ makeflags]
+ makefile.add('build-arch_%s_real' % arch, cmds=cmds_build_arch)
+
+ cmds_binary_arch = ["$(MAKE) -f debian/rules.real binary-arch-arch %s"
+ % makeflags]
+ makefile.add('binary-arch_%s_real' % arch, cmds=cmds_binary_arch,
+ deps=['setup_%s' % arch])
+
+ udeb_packages = self.installer_packages.get(arch, [])
+ if udeb_packages:
+ merge_packages(packages, udeb_packages, arch)
+
+ # These packages must be built after the per-flavour/
+ # per-featureset packages. Also, this won't work
+ # correctly with an empty package list.
+ makefile.add(
+ 'binary-arch_%s' % arch,
+ cmds=["$(MAKE) -f debian/rules.real install-udeb_%s %s "
+ "PACKAGE_NAMES='%s' UDEB_UNSIGNED_TEST_BUILD=%s" %
+ (arch, makeflags,
+ ' '.join(p['Package'] for p in udeb_packages),
+ build_signed)])
+
+ # This also needs to be built after the per-flavour/per-featureset
+ # packages.
+ if build_signed:
+ merge_packages(packages,
+ self.process_packages(
+ self.templates['control.signed-template'],
+ vars),
+ arch)
+ makefile.add(
+ 'binary-arch_%s' % arch,
+ cmds=["$(MAKE) -f debian/rules.real "
+ "install-signed-template_%s %s" %
+ (arch, makeflags)])
+
+ def do_featureset_setup(self, vars, makeflags, arch, featureset, extra):
+ vars['localversion_headers'] = vars['localversion']
+ makeflags['LOCALVERSION_HEADERS'] = vars['localversion_headers']
+
+ self.default_flavour = self.config.merge('base', arch, featureset) \
+ .get('default-flavour')
+ if self.default_flavour is not None:
+ if featureset != 'none':
+ raise RuntimeError("default-flavour set for %s %s,"
+ " but must only be set for featureset none"
+ % (arch, featureset))
+ if self.default_flavour \
+ not in iter_flavours(self.config, arch, featureset):
+ raise RuntimeError("default-flavour %s for %s %s does not exist"
+ % (self.default_flavour, arch, featureset))
+
+ flavour_makeflags_base = (
+ ('compiler', 'COMPILER', False),
+ ('compiler-filename', 'COMPILER', True),
+ ('kernel-arch', 'KERNEL_ARCH', False),
+ ('cflags', 'KCFLAGS', True),
+ ('override-host-type', 'OVERRIDE_HOST_TYPE', True),
+ ('cross-compile-compat', 'CROSS_COMPILE_COMPAT', True),
+ )
+
+ flavour_makeflags_build = (
+ ('image-file', 'IMAGE_FILE', True),
+ )
+
+ flavour_makeflags_image = (
+ ('install-stem', 'IMAGE_INSTALL_STEM', True),
+ )
+
+ flavour_makeflags_other = (
+ ('localversion', 'LOCALVERSION', False),
+ ('localversion-image', 'LOCALVERSION_IMAGE', True),
+ )
+
+ def do_flavour_setup(self, vars, makeflags, arch, featureset, flavour,
+ extra):
+ config_base = self.config.merge('base', arch, featureset, flavour)
+ config_build = self.config.merge('build', arch, featureset, flavour)
+ config_description = self.config.merge('description', arch, featureset,
+ flavour)
+ config_image = self.config.merge('image', arch, featureset, flavour)
+
+ vars['flavour'] = vars['localversion'][1:]
+ vars['class'] = config_description['hardware']
+ vars['longclass'] = (config_description.get('hardware-long')
+ or vars['class'])
+
+ vars['localversion-image'] = vars['localversion']
+ override_localversion = config_image.get('override-localversion', None)
+ if override_localversion is not None:
+ vars['localversion-image'] = (vars['localversion_headers'] + '-'
+ + override_localversion)
+ vars['image-stem'] = config_image.get('install-stem')
+
+ self._setup_makeflags(self.flavour_makeflags_base, makeflags,
+ config_base)
+ self._setup_makeflags(self.flavour_makeflags_build, makeflags,
+ config_build)
+ self._setup_makeflags(self.flavour_makeflags_image, makeflags,
+ config_image)
+ self._setup_makeflags(self.flavour_makeflags_other, makeflags, vars)
+
+ def do_flavour_packages(self, packages, makefile, arch, featureset,
+ flavour, vars, makeflags, extra):
+ headers = self.templates["control.headers"]
+ assert len(headers) == 1
+
+ do_meta = self.config.merge('packages').get('meta', True)
+ config_entry_base = self.config.merge('base', arch, featureset,
+ flavour)
+ config_entry_build = self.config.merge('build', arch, featureset,
+ flavour)
+ config_entry_description = self.config.merge('description', arch,
+ featureset, flavour)
+ config_entry_relations = self.config.merge('relations', arch,
+ featureset, flavour)
+
+ def config_entry_image(key, *args, **kwargs):
+ return self.config.get_merge(
+ 'image', arch, featureset, flavour, key, *args, **kwargs)
+
+ compiler = config_entry_base.get('compiler', 'gcc')
+
+ # Work out dependency from linux-headers to compiler. Drop
+ # dependencies for cross-builds. Strip any remaining
+ # restrictions, as they don't apply to binary Depends.
+ relations_compiler_headers = PackageRelation(
+ self.substitute(config_entry_relations.get('headers%' + compiler)
+ or config_entry_relations.get(compiler), vars))
+ relations_compiler_headers = PackageRelation(
+ PackageRelationGroup(entry for entry in group
+ if 'cross' not in entry.restrictions)
+ for group in relations_compiler_headers)
+ for group in relations_compiler_headers:
+ for entry in group:
+ entry.restrictions = []
+
+ relations_compiler_build_dep = PackageRelation(
+ self.substitute(config_entry_relations[compiler], vars))
+ for group in relations_compiler_build_dep:
+ for item in group:
+ item.arches = [arch]
+ packages['source']['Build-Depends-Arch'].extend(
+ relations_compiler_build_dep)
+
+ image_fields = {'Description': PackageDescription()}
+ for field in ('Depends', 'Provides', 'Suggests', 'Recommends',
+ 'Conflicts', 'Breaks'):
+ image_fields[field] = PackageRelation(
+ config_entry_image(field.lower(), None),
+ override_arches=(arch,))
+
+ generators = config_entry_image('initramfs-generators')
+ group = PackageRelationGroup()
+ for i in generators:
+ i = config_entry_relations.get(i, i)
+ group.append(i)
+ a = PackageRelationEntry(i)
+ if a.operator is not None:
+ a.operator = -a.operator
+ image_fields['Breaks'].append(PackageRelationGroup([a]))
+ for item in group:
+ item.arches = [arch]
+ image_fields['Depends'].append(group)
+
+ bootloaders = config_entry_image('bootloaders', None)
+ if bootloaders:
+ group = PackageRelationGroup()
+ for i in bootloaders:
+ i = config_entry_relations.get(i, i)
+ group.append(i)
+ a = PackageRelationEntry(i)
+ if a.operator is not None:
+ a.operator = -a.operator
+ image_fields['Breaks'].append(PackageRelationGroup([a]))
+ for item in group:
+ item.arches = [arch]
+ image_fields['Suggests'].append(group)
+
+ desc_parts = self.config.get_merge('description', arch, featureset,
+ flavour, 'parts')
+ if desc_parts:
+ # XXX: Workaround, we need to support multiple entries of the same
+ # name
+ parts = list(set(desc_parts))
+ parts.sort()
+ desc = image_fields['Description']
+ for part in parts:
+ desc.append(config_entry_description['part-long-' + part])
+ desc.append_short(config_entry_description
+ .get('part-short-' + part, ''))
+
+ packages_own = []
+
+ if not self.disable_signed:
+ build_signed = config_entry_build.get('signed-code')
+ else:
+ build_signed = False
+
+ image = self.templates[build_signed and "control.image-unsigned"
+ or "control.image"]
+ assert len(image) == 1
+
+ vars.setdefault('desc', None)
+
+ image_main = self.process_real_image(image[0], image_fields, vars)
+ packages_own.append(image_main)
+ makeflags['IMAGE_PACKAGE_NAME'] = image_main['Package']
+
+ package_headers = self.process_package(headers[0], vars)
+ package_headers['Depends'].extend(relations_compiler_headers)
+ packages_own.append(package_headers)
+ if extra.get('headers_arch_depends'):
+ extra['headers_arch_depends'].append('%s (= ${binary:Version})' %
+ packages_own[-1]['Package'])
+
+ # The image meta-packages will depend on signed linux-image
+ # packages where applicable, so should be built from the
+ # signed source packages The header meta-packages will also be
+ # built along with the signed packages, to create a dependency
+ # relationship that ensures src:linux and src:linux-signed-*
+ # transition to testing together.
+ if do_meta and not build_signed:
+ packages_meta = self.process_packages(
+ self.templates['control.image.meta'], vars)
+ assert len(packages_meta) == 1
+ packages_meta += self.process_packages(
+ self.templates['control.headers.meta'], vars)
+ assert len(packages_meta) == 2
+
+ if flavour == self.default_flavour \
+ and not self.vars['source_suffix']:
+ packages_meta[0].setdefault('Provides', PackageRelation()) \
+ .append('linux-image-generic')
+ packages_meta[1].setdefault('Provides', PackageRelation()) \
+ .append('linux-headers-generic')
+
+ packages_own.extend(packages_meta)
+
+ self.substitute_debhelper_config(
+ "image.meta", vars,
+ "linux-image%(localversion)s" % vars)
+ self.substitute_debhelper_config(
+ 'headers.meta', vars,
+ 'linux-headers%(localversion)s' % vars)
+
+ if config_entry_build.get('vdso', False):
+ makeflags['VDSO'] = True
+
+ if not self.disable_debug:
+ build_debug = config_entry_build.get('debug-info')
+ else:
+ build_debug = False
+
+ if build_debug:
+ makeflags['DEBUG'] = True
+ packages_own.extend(self.process_packages(
+ self.templates['control.image-dbg'], vars))
+ if do_meta:
+ packages_own.extend(self.process_packages(
+ self.templates["control.image-dbg.meta"], vars))
+ self.substitute_debhelper_config(
+ 'image-dbg.meta', vars,
+ 'linux-image%(localversion)s-dbg' % vars)
+
+ merge_packages(packages, packages_own, arch)
+
+ tests_control = self.process_package(
+ self.templates['tests-control.image'][0], vars)
+ tests_control['Depends'].append(
+ PackageRelationGroup(image_main['Package'],
+ override_arches=(arch,)))
+ if self.tests_control_image:
+ self.tests_control_image['Depends'].extend(
+ tests_control['Depends'])
+ else:
+ self.tests_control_image = tests_control
+ self.tests_control.append(tests_control)
+
+ def get_config(*entry_name):
+ entry_real = ('image',) + entry_name
+ entry = self.config.get(entry_real, None)
+ if entry is None:
+ return None
+ return entry.get('configs', None)
+
+ def check_config_default(fail, f):
+ for d in self.config_dirs[::-1]:
+ f1 = d + '/' + f
+ if os.path.exists(f1):
+ return [f1]
+ if fail:
+ raise RuntimeError("%s unavailable" % f)
+ return []
+
+ def check_config_files(files):
+ ret = []
+ for f in files:
+ for d in self.config_dirs[::-1]:
+ f1 = d + '/' + f
+ if os.path.exists(f1):
+ ret.append(f1)
+ break
+ else:
+ raise RuntimeError("%s unavailable" % f)
+ return ret
+
+ def check_config(default, fail, *entry_name):
+ configs = get_config(*entry_name)
+ if configs is None:
+ return check_config_default(fail, default)
+ return check_config_files(configs)
+
+ kconfig = check_config('config', True)
+ kconfig.extend(check_config("kernelarch-%s/config" %
+ config_entry_base['kernel-arch'],
+ False))
+ kconfig.extend(check_config("%s/config" % arch, True, arch))
+ kconfig.extend(check_config("%s/config.%s" % (arch, flavour), False,
+ arch, None, flavour))
+ kconfig.extend(check_config("featureset-%s/config" % featureset, False,
+ None, featureset))
+ kconfig.extend(check_config("%s/%s/config" % (arch, featureset), False,
+ arch, featureset))
+ kconfig.extend(check_config("%s/%s/config.%s" %
+ (arch, featureset, flavour), False,
+ arch, featureset, flavour))
+ makeflags['KCONFIG'] = ' '.join(kconfig)
+ makeflags['KCONFIG_OPTIONS'] = ''
+ if build_debug:
+ makeflags['KCONFIG_OPTIONS'] += ' -o DEBUG_INFO=y'
+ if build_signed:
+ makeflags['KCONFIG_OPTIONS'] += ' -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y'
+ # Add "salt" to fix #872263
+ makeflags['KCONFIG_OPTIONS'] += \
+ ' -o "BUILD_SALT=\\"%(abiname)s%(localversion)s\\""' % vars
+
+ cmds_binary_arch = ["$(MAKE) -f debian/rules.real binary-arch-flavour "
+ "%s" %
+ makeflags]
+ cmds_build = ["$(MAKE) -f debian/rules.real build-arch-flavour %s" %
+ makeflags]
+ cmds_setup = ["$(MAKE) -f debian/rules.real setup-arch-flavour %s" %
+ makeflags]
+ makefile.add('binary-arch_%s_%s_%s_real' % (arch, featureset, flavour),
+ cmds=cmds_binary_arch)
+ makefile.add('build-arch_%s_%s_%s_real' % (arch, featureset, flavour),
+ cmds=cmds_build)
+ makefile.add('setup_%s_%s_%s_real' % (arch, featureset, flavour),
+ cmds=cmds_setup)
+
+ merged_config = ('debian/build/config.%s_%s_%s' %
+ (arch, featureset, flavour))
+ makefile.add(merged_config,
+ cmds=["$(MAKE) -f debian/rules.real %s %s" %
+ (merged_config, makeflags)])
+
+ self.substitute_debhelper_config(
+ 'headers', vars,
+ 'linux-headers-%(abiname)s%(localversion)s' % vars)
+ self.substitute_debhelper_config('image', vars, image_main['Package'])
+ if build_debug:
+ self.substitute_debhelper_config(
+ 'image-dbg', vars,
+ 'linux-image-%(abiname)s%(localversion)s-dbg' % vars)
+
+ def process_changelog(self):
+ version = self.version = self.changelog[0].version
+ if self.version.linux_modifier is not None:
+ self.abiname_part = ''
+ else:
+ self.abiname_part = '-%s' % self.config['abi', ]['abiname']
+ # We need to keep at least three version components to avoid
+ # userland breakage (e.g. #742226, #745984).
+ self.abiname_version = re.sub(r'^(\d+\.\d+)(?=-|$)', r'\1.0',
+ self.version.linux_upstream)
+ self.vars = {
+ 'upstreamversion': self.version.linux_upstream,
+ 'version': self.version.linux_version,
+ 'source_basename': re.sub(r'-[\d.]+$', '',
+ self.changelog[0].source),
+ 'source_upstream': self.version.upstream,
+ 'source_package': self.changelog[0].source,
+ 'abiname': self.abiname_version + self.abiname_part,
+ }
+ self.vars['source_suffix'] = \
+ self.changelog[0].source[len(self.vars['source_basename']):]
+ self.config['version', ] = {'source': self.version.complete,
+ 'upstream': self.version.linux_upstream,
+ 'abiname_base': self.abiname_version,
+ 'abiname': (self.abiname_version
+ + self.abiname_part)}
+
+ distribution = self.changelog[0].distribution
+ if distribution in ('unstable', ):
+ if version.linux_revision_experimental or \
+ version.linux_revision_backports or \
+ version.linux_revision_other:
+ raise RuntimeError("Can't upload to %s with a version of %s" %
+ (distribution, version))
+ if distribution in ('experimental', ):
+ if not version.linux_revision_experimental:
+ raise RuntimeError("Can't upload to %s with a version of %s" %
+ (distribution, version))
+ if distribution.endswith('-security') or distribution.endswith('-lts'):
+ if version.linux_revision_backports or \
+ version.linux_revision_other:
+ raise RuntimeError("Can't upload to %s with a version of %s" %
+ (distribution, version))
+ if distribution.endswith('-backports'):
+ if not version.linux_revision_backports:
+ raise RuntimeError("Can't upload to %s with a version of %s" %
+ (distribution, version))
+
+ def process_real_image(self, entry, fields, vars):
+ entry = self.process_package(entry, vars)
+ for key, value in fields.items():
+ if key in entry:
+ real = entry[key]
+ real.extend(value)
+ elif value:
+ entry[key] = value
+ return entry
+
+ def write(self, packages, makefile):
+ self.write_config()
+ super(Gencontrol, self).write(packages, makefile)
+ self.write_tests_control()
+
+ def write_config(self):
+ f = open("debian/config.defines.dump", 'wb')
+ self.config.dump(f)
+ f.close()
+
+ def write_tests_control(self):
+ self.write_rfc822(open("debian/tests/control", 'w'),
+ self.tests_control)
+
+
+if __name__ == '__main__':
+ Gencontrol()()
diff --git a/debian/bin/gencontrol_signed.py b/debian/bin/gencontrol_signed.py
new file mode 100755
index 000000000..75d9112cb
--- /dev/null
+++ b/debian/bin/gencontrol_signed.py
@@ -0,0 +1,369 @@
+#!/usr/bin/python3
+
+import codecs
+import hashlib
+import io
+import json
+import os.path
+import re
+import ssl
+import subprocess
+import sys
+
+from debian_linux.config import ConfigCoreDump
+from debian_linux.debian import PackageRelation, VersionLinux
+from debian_linux.gencontrol import Gencontrol as Base, merge_packages, \
+ iter_flavours
+from debian_linux.utils import Templates, read_control
+
+
+class Gencontrol(Base):
+ def __init__(self, arch):
+ super(Gencontrol, self).__init__(
+ ConfigCoreDump(fp=open('debian/config.defines.dump', 'rb')),
+ Templates(['debian/signing_templates', 'debian/templates']))
+
+ image_binary_version = self.changelog[0].version.complete
+
+ config_entry = self.config[('version',)]
+ self.version = VersionLinux(config_entry['source'])
+
+ # Check config version matches changelog version
+ assert self.version.complete == re.sub(r'\+b\d+$', r'',
+ image_binary_version)
+
+ self.abiname = config_entry['abiname']
+ self.vars = {
+ 'template': 'linux-image-%s-signed-template' % arch,
+ 'upstreamversion': self.version.linux_upstream,
+ 'version': self.version.linux_version,
+ 'source_basename': re.sub(r'-[\d.]+$', '',
+ self.changelog[0].source),
+ 'source_upstream': self.version.upstream,
+ 'abiname': self.abiname,
+ 'imagebinaryversion': image_binary_version,
+ 'imagesourceversion': self.version.complete,
+ 'arch': arch,
+ }
+ self.vars['source_suffix'] = \
+ self.changelog[0].source[len(self.vars['source_basename']):]
+
+ self.package_dir = 'debian/%(template)s' % self.vars
+ self.template_top_dir = (self.package_dir
+ + '/usr/share/code-signing/%(template)s'
+ % self.vars)
+ self.template_debian_dir = (self.template_top_dir
+ + '/source-template/debian')
+ os.makedirs(self.template_debian_dir, exist_ok=True)
+
+ self.image_packages = []
+
+ def do_main_setup(self, vars, makeflags, extra):
+ makeflags['VERSION'] = self.version.linux_version
+ makeflags['GENCONTROL_ARGS'] = (
+ '-v%(imagebinaryversion)s '
+ '-DBuilt-Using="linux (= %(imagesourceversion)s)"' %
+ vars)
+ makeflags['PACKAGE_VERSION'] = vars['imagebinaryversion']
+
+ self.installer_packages = {}
+
+ if os.getenv('DEBIAN_KERNEL_DISABLE_INSTALLER'):
+ if self.changelog[0].distribution == 'UNRELEASED':
+ import warnings
+ warnings.warn('Disable installer modules on request '
+ '(DEBIAN_KERNEL_DISABLE_INSTALLER set)')
+ else:
+ raise RuntimeError(
+ 'Unable to disable installer modules in release build '
+ '(DEBIAN_KERNEL_DISABLE_INSTALLER set)')
+ elif self.config.merge('packages').get('installer', True):
+ # Add udebs using kernel-wedge
+ kw_env = os.environ.copy()
+ kw_env['KW_DEFCONFIG_DIR'] = 'debian/installer'
+ kw_env['KW_CONFIG_DIR'] = 'debian/installer'
+ kw_proc = subprocess.Popen(
+ ['kernel-wedge', 'gen-control', vars['abiname']],
+ stdout=subprocess.PIPE,
+ env=kw_env)
+ if not isinstance(kw_proc.stdout, io.IOBase):
+ udeb_packages = read_control(io.open(kw_proc.stdout.fileno(),
+ closefd=False))
+ else:
+ udeb_packages = read_control(io.TextIOWrapper(kw_proc.stdout))
+ kw_proc.wait()
+ if kw_proc.returncode != 0:
+ raise RuntimeError('kernel-wedge exited with code %d' %
+ kw_proc.returncode)
+
+ for package in udeb_packages:
+ for arch in package['Architecture']:
+ if self.config.merge('build', arch) \
+ .get('signed-code', False):
+ self.installer_packages.setdefault(arch, []) \
+ .append(package)
+
+ def do_main_packages(self, packages, vars, makeflags, extra):
+ # Assume that arch:all packages do not get binNMU'd
+ packages['source']['Build-Depends'].append(
+ 'linux-support-%(abiname)s (= %(imagesourceversion)s)' % vars)
+
+ def do_main_recurse(self, packages, makefile, vars, makeflags, extra):
+ # Each signed source package only covers a single architecture
+ self.do_arch(packages, makefile, vars['arch'], vars.copy(),
+ makeflags.copy(), extra)
+
+ def do_extra(self, packages, makefile):
+ pass
+
+ def do_arch_setup(self, vars, makeflags, arch, extra):
+ super(Gencontrol, self).do_main_setup(vars, makeflags, extra)
+
+ if self.version.linux_modifier is None:
+ abiname_part = '-%s' % self.config.merge('abi', arch)['abiname']
+ else:
+ abiname_part = ''
+ makeflags['ABINAME'] = vars['abiname'] = \
+ self.config['version', ]['abiname_base'] + abiname_part
+
+ def do_arch_packages(self, packages, makefile, arch, vars, makeflags,
+ extra):
+ udeb_packages = self.installer_packages.get(arch, [])
+ if udeb_packages:
+ merge_packages(packages, udeb_packages, arch)
+
+ # These packages must be built after the per-flavour/
+ # per-featureset packages. Also, this won't work
+ # correctly with an empty package list.
+ if udeb_packages:
+ makefile.add(
+ 'binary-arch_%s' % arch,
+ cmds=["$(MAKE) -f debian/rules.real install-udeb_%s %s "
+ "PACKAGE_NAMES='%s'" %
+ (arch, makeflags,
+ ' '.join(p['Package'] for p in udeb_packages))])
+
+ def do_featureset_setup(self, vars, makeflags, arch, featureset, extra):
+ self.default_flavour = self.config.merge('base', arch, featureset) \
+ .get('default-flavour')
+ if self.default_flavour is not None:
+ if featureset != 'none':
+ raise RuntimeError("default-flavour set for %s %s,"
+ " but must only be set for featureset none"
+ % (arch, featureset))
+ if self.default_flavour \
+ not in iter_flavours(self.config, arch, featureset):
+ raise RuntimeError("default-flavour %s for %s %s does not exist"
+ % (self.default_flavour, arch, featureset))
+
+ def do_flavour_setup(self, vars, makeflags, arch, featureset, flavour,
+ extra):
+ super(Gencontrol, self).do_flavour_setup(vars, makeflags, arch,
+ featureset, flavour, extra)
+
+ config_description = self.config.merge('description', arch, featureset,
+ flavour)
+ config_image = self.config.merge('image', arch, featureset, flavour)
+
+ vars['flavour'] = vars['localversion'][1:]
+ vars['class'] = config_description['hardware']
+ vars['longclass'] = (config_description.get('hardware-long')
+ or vars['class'])
+
+ vars['image-stem'] = config_image.get('install-stem')
+ makeflags['IMAGE_INSTALL_STEM'] = vars['image-stem']
+
+ def do_flavour_packages(self, packages, makefile, arch, featureset,
+ flavour, vars, makeflags, extra):
+ if not (self.config.merge('build', arch, featureset, flavour)
+ .get('signed-code', False)):
+ return
+
+ image_suffix = '%(abiname)s%(localversion)s' % vars
+ image_package_name = 'linux-image-%s-unsigned' % image_suffix
+
+ # Verify that this flavour is configured to support Secure Boot,
+ # and get the trusted certificates filename.
+ with open('debian/%s/boot/config-%s' %
+ (image_package_name, image_suffix)) as f:
+ kconfig = f.readlines()
+ assert 'CONFIG_EFI_STUB=y\n' in kconfig
+ assert 'CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT=y\n' in kconfig
+ cert_re = re.compile(r'CONFIG_SYSTEM_TRUSTED_KEYS="(.*)"$')
+ cert_file_name = None
+ for line in kconfig:
+ match = cert_re.match(line)
+ if match:
+ cert_file_name = match.group(1)
+ break
+ assert cert_file_name
+ if featureset != "none":
+ cert_file_name = os.path.join('debian/build/source_%s' %
+ featureset,
+ cert_file_name)
+
+ self.image_packages.append((image_suffix, image_package_name,
+ cert_file_name))
+
+ packages['source']['Build-Depends'].append(
+ image_package_name
+ + ' (= %(imagebinaryversion)s) [%(arch)s]' % vars)
+
+ packages_own = self.process_packages(
+ self.templates['control.image'], vars)
+ assert len(packages_own) == 1
+ cmds_binary_arch = ["$(MAKE) -f debian/rules.real install-signed "
+ "PACKAGE_NAME='%s' %s" %
+ (packages_own[0]['Package'], makeflags)]
+
+ if self.config.merge('packages').get('meta', True):
+ packages_meta = self.process_packages(
+ self.templates['control.image.meta'], vars)
+ assert len(packages_meta) == 1
+ packages_meta += self.process_packages(
+ self.templates['control.headers.meta'], vars)
+ assert len(packages_meta) == 2
+
+ # Don't pretend to support build-profiles
+ for package in packages_meta:
+ del package['Build-Profiles']
+
+ if flavour == self.default_flavour \
+ and not self.vars['source_suffix']:
+ packages_meta[0].setdefault('Provides', PackageRelation()) \
+ .append('linux-image-generic')
+ packages_meta[1].setdefault('Provides', PackageRelation()) \
+ .append('linux-headers-generic')
+
+ packages_own.extend(packages_meta)
+
+ cmds_binary_arch += [
+ "$(MAKE) -f debian/rules.real install-meta "
+ "PACKAGE_NAME='%s' LINK_DOC_PACKAGE_NAME='%s' %s" %
+ (package['Package'], package['Depends'][0][0].name, makeflags)
+ for package in packages_meta
+ ]
+
+ self.substitute_debhelper_config(
+ 'image.meta', vars,
+ 'linux-image%(localversion)s' % vars,
+ output_dir=self.template_debian_dir)
+ self.substitute_debhelper_config(
+ 'headers.meta', vars,
+ 'linux-headers%(localversion)s' % vars,
+ output_dir=self.template_debian_dir)
+
+ merge_packages(packages, packages_own, arch)
+ makefile.add('binary-arch_%s_%s_%s_real' % (arch, featureset, flavour),
+ cmds=cmds_binary_arch)
+
+ self.substitute_debhelper_config(
+ 'image', vars,
+ 'linux-image-%(abiname)s%(localversion)s' % vars,
+ output_dir=self.template_debian_dir)
+
+ def write(self, packages, makefile):
+ self.write_changelog()
+ self.write_control(packages.values(),
+ name=(self.template_debian_dir + '/control'))
+ self.write_makefile(makefile,
+ name=(self.template_debian_dir + '/rules.gen'))
+ self.write_files_json()
+
+ def write_changelog(self):
+ # Copy the linux changelog, but:
+ # * Change the source package name and version
+ # * Insert a line to refer to refer to the linux source version
+ vars = self.vars.copy()
+ vars['source'] = self.changelog[0].source
+ vars['distribution'] = self.changelog[0].distribution
+ vars['urgency'] = self.changelog[0].urgency
+ vars['signedsourceversion'] = \
+ re.sub(r'\+b(\d+)$', r'.b\1',
+ re.sub(r'-', r'+', vars['imagebinaryversion']))
+
+ with codecs.open(self.template_debian_dir + '/changelog', 'w',
+ 'utf-8') as f:
+ f.write(self.substitute('''\
+linux-signed-@arch@ (@signedsourceversion@) @distribution@; urgency=@urgency@
+
+ * Sign kernel from @source@ @imagebinaryversion@
+
+''',
+ vars))
+
+ with codecs.open('debian/changelog', 'r', 'utf-8') as changelog_in:
+ # Ignore first two header lines
+ changelog_in.readline()
+ changelog_in.readline()
+
+ for d in changelog_in.read():
+ f.write(d)
+
+ def write_files_json(self):
+ # Can't raise from a lambda function :-(
+ def raise_func(e):
+ raise e
+
+ # Some functions in openssl work with multiple concatenated
+ # PEM-format certificates, but others do not.
+ def get_certs(file_name):
+ certs = []
+ BEGIN, MIDDLE = 0, 1
+ state = BEGIN
+ with open(file_name) as f:
+ for line in f:
+ if line == '-----BEGIN CERTIFICATE-----\n':
+ assert state == BEGIN
+ certs.append([])
+ state = MIDDLE
+ elif line == '-----END CERTIFICATE-----\n':
+ assert state == MIDDLE
+ state = BEGIN
+ else:
+ assert line[0] != '-'
+ assert state == MIDDLE
+ certs[-1].append(line)
+ assert state == BEGIN
+ return [''.join(cert_lines) for cert_lines in certs]
+
+ def get_cert_fingerprint(cert, algo):
+ hasher = hashlib.new(algo)
+ hasher.update(ssl.PEM_cert_to_DER_cert(cert))
+ return hasher.hexdigest()
+
+ all_files = {'packages': {}}
+
+ for image_suffix, image_package_name, cert_file_name in \
+ self.image_packages:
+ package_dir = 'debian/%s' % image_package_name
+ package_files = []
+ package_modules = []
+ package_files.append({'sig_type': 'efi',
+ 'file': 'boot/vmlinuz-%s' % image_suffix})
+ for root, dirs, files in os.walk('%s/lib/modules' % package_dir,
+ onerror=raise_func):
+ for name in files:
+ if name.endswith('.ko'):
+ package_modules.append(
+ '%s/%s' %
+ (root[(len(package_dir) + 1):], name))
+ package_modules.sort()
+ for module in package_modules:
+ package_files.append(
+ {'sig_type': 'linux-module',
+ 'file': module})
+ package_certs = [get_cert_fingerprint(cert, 'sha256')
+ for cert in get_certs(cert_file_name)]
+ assert len(package_certs) >= 1
+ all_files['packages'][image_package_name] = {
+ 'trusted_certs': package_certs,
+ 'files': package_files
+ }
+
+ with codecs.open(self.template_top_dir + '/files.json', 'w') as f:
+ json.dump(all_files, f)
+
+
+if __name__ == '__main__':
+ Gencontrol(sys.argv[1])()
diff --git a/debian/bin/genorig.py b/debian/bin/genorig.py
new file mode 100755
index 000000000..aabdd5a9f
--- /dev/null
+++ b/debian/bin/genorig.py
@@ -0,0 +1,203 @@
+#!/usr/bin/python3
+
+import sys
+from debian import deb822
+import glob
+import os
+import os.path
+import re
+import shutil
+import subprocess
+import time
+import warnings
+
+from debian_linux.debian import Changelog, VersionLinux
+
+
+class Main(object):
+ def __init__(self, input_files, override_version):
+ self.log = sys.stdout.write
+
+ self.input_files = input_files
+
+ changelog = Changelog(version=VersionLinux)[0]
+ source = changelog.source
+ version = changelog.version
+
+ if override_version:
+ version = VersionLinux('%s-0' % override_version)
+
+ self.version_dfsg = version.linux_dfsg
+ if self.version_dfsg is None:
+ self.version_dfsg = '0'
+
+ self.log('Using source name %s, version %s, dfsg %s\n' %
+ (source, version.upstream, self.version_dfsg))
+
+ self.orig = '%s-%s' % (source, version.upstream)
+ self.orig_tar = '%s_%s.orig.tar.xz' % (source, version.upstream)
+ self.tag = 'v' + version.linux_upstream_full
+
+ def __call__(self):
+ import tempfile
+ self.dir = tempfile.mkdtemp(prefix='genorig', dir='debian')
+ old_umask = os.umask(0o022)
+ try:
+ if os.path.isdir(self.input_files[0]):
+ self.upstream_export(self.input_files[0])
+ else:
+ self.upstream_extract(self.input_files[0])
+ if len(self.input_files) > 1:
+ self.upstream_patch(self.input_files[1])
+
+ # exclude_files() will change dir mtimes. Capture the
+ # original release time so we can apply it to the final
+ # tarball. Note this doesn't work in case we apply an
+ # upstream patch, as that doesn't carry a release time.
+ orig_date = time.strftime(
+ "%a, %d %b %Y %H:%M:%S +0000",
+ time.gmtime(
+ os.stat(os.path.join(self.dir, self.orig, 'Makefile'))
+ .st_mtime))
+
+ self.exclude_files()
+ os.umask(old_umask)
+ self.tar(orig_date)
+ finally:
+ os.umask(old_umask)
+ shutil.rmtree(self.dir)
+
+ def upstream_export(self, input_repo):
+ self.log("Exporting %s from %s\n" % (self.tag, input_repo))
+
+ gpg_wrapper = os.path.join(os.getcwd(),
+ "debian/bin/git-tag-gpg-wrapper")
+ verify_proc = subprocess.Popen(['git',
+ '-c', 'gpg.program=%s' % gpg_wrapper,
+ 'tag', '-v', self.tag],
+ cwd=input_repo)
+ if verify_proc.wait():
+ raise RuntimeError("GPG tag verification failed")
+
+ archive_proc = subprocess.Popen(['git', 'archive', '--format=tar',
+ '--prefix=%s/' % self.orig, self.tag],
+ cwd=input_repo,
+ stdout=subprocess.PIPE)
+ extract_proc = subprocess.Popen(['tar', '-xaf', '-'], cwd=self.dir,
+ stdin=archive_proc.stdout)
+
+ ret1 = archive_proc.wait()
+ ret2 = extract_proc.wait()
+ if ret1 or ret2:
+ raise RuntimeError("Can't create archive")
+
+ def upstream_extract(self, input_tar):
+ self.log("Extracting tarball %s\n" % input_tar)
+ match = re.match(r'(^|.*/)(?P<dir>linux-\d+\.\d+(\.\d+)?(-\S+)?)\.tar'
+ r'(\.(?P<extension>(bz2|gz|xz)))?$',
+ input_tar)
+ if not match:
+ raise RuntimeError("Can't identify name of tarball")
+
+ cmdline = ['tar', '-xaf', input_tar, '-C', self.dir]
+
+ if subprocess.Popen(cmdline).wait():
+ raise RuntimeError("Can't extract tarball")
+
+ os.rename(os.path.join(self.dir, match.group('dir')),
+ os.path.join(self.dir, self.orig))
+
+ def upstream_patch(self, input_patch):
+ self.log("Patching source with %s\n" % input_patch)
+ match = re.match(r'(^|.*/)patch-\d+\.\d+(\.\d+)?(-\S+?)?'
+ r'(\.(?P<extension>(bz2|gz|xz)))?$',
+ input_patch)
+ if not match:
+ raise RuntimeError("Can't identify name of patch")
+ cmdline = []
+ if match.group('extension') == 'bz2':
+ cmdline.append('bzcat')
+ elif match.group('extension') == 'gz':
+ cmdline.append('zcat')
+ elif match.group('extension') == 'xz':
+ cmdline.append('xzcat')
+ else:
+ cmdline.append('cat')
+ cmdline.append(input_patch)
+ cmdline.append('| (cd %s; patch -p1 -f -s -t --no-backup-if-mismatch)'
+ % os.path.join(self.dir, self.orig))
+ if os.spawnv(os.P_WAIT, '/bin/sh', ['sh', '-c', ' '.join(cmdline)]):
+ raise RuntimeError("Can't patch source")
+
+ def exclude_files(self):
+ self.log("Excluding file patterns specified in debian/copyright\n")
+ with open("debian/copyright") as f:
+ header = deb822.Deb822(f)
+ patterns = header.get("Files-Excluded", '').strip().split()
+ for pattern in patterns:
+ matched = False
+ for name in glob.glob(os.path.join(self.dir, self.orig, pattern)):
+ try:
+ shutil.rmtree(name)
+ except NotADirectoryError:
+ os.unlink(name)
+ matched = True
+ if not matched:
+ warnings.warn("Exclusion pattern '%s' did not match anything"
+ % pattern,
+ RuntimeWarning)
+
+ def tar(self, orig_date):
+ out = os.path.join("../orig", self.orig_tar)
+ try:
+ os.mkdir("../orig")
+ except OSError:
+ pass
+ try:
+ os.stat(out)
+ raise RuntimeError("Destination already exists")
+ except OSError:
+ pass
+ self.log("Generate tarball %s\n" % out)
+
+ env = os.environ.copy()
+ env.update({
+ 'LC_ALL': 'C',
+ })
+ cmd = [
+ 'tar',
+ '-C', self.dir,
+ '--sort=name',
+ '--mtime={}'.format(orig_date),
+ '--owner=root',
+ '--group=root',
+ '--use-compress-program=xz -T0',
+ '-cf',
+ out, self.orig,
+ ]
+
+ try:
+ subprocess.run(cmd, env=env, check=True)
+ os.chmod(out, 0o644)
+ except BaseException:
+ try:
+ os.unlink(out)
+ except OSError:
+ pass
+ raise
+ try:
+ os.symlink(os.path.join('orig', self.orig_tar),
+ os.path.join('..', self.orig_tar))
+ except OSError:
+ pass
+
+
+if __name__ == '__main__':
+ from optparse import OptionParser
+ parser = OptionParser(usage="%prog [OPTION]... {TAR [PATCH] | REPO}")
+ parser.add_option("-V", "--override-version", dest="override_version",
+ help="Override version", metavar="VERSION")
+ options, args = parser.parse_args()
+
+ assert 1 <= len(args) <= 2
+ Main(args, options.override_version)()
diff --git a/debian/bin/genpatch-aufs b/debian/bin/genpatch-aufs
new file mode 100755
index 000000000..8f69f0f0f
--- /dev/null
+++ b/debian/bin/genpatch-aufs
@@ -0,0 +1,32 @@
+#!/bin/bash -e
+
+aufs_dir="$1"
+
+export GIT_DIR="$aufs_dir/.git"
+
+from_line='From: J. R. Okajima <hooanon05@yahoo.co.jp>'
+if [ -d "$GIT_DIR" ]; then
+ origin_line="Origin: https://github.com/sfjro/aufs5-standalone/tree/$(git rev-list HEAD -1)"
+else
+ echo >&2 "W: Cannot include a specific origin URL without an aufs git repo"
+ origin_line='Origin: https://github.com/sfjro/aufs5-standalone/branches'
+fi
+bug_line='Bug-Debian: https://bugs.debian.org/541828'
+
+mkdir -p debian/patches/features/all/aufs5
+for patch in aufs5-{base,mmap,standalone}.patch; do
+ {
+ echo "$from_line"
+ if [ -d "$GIT_DIR" ]; then
+ git log --pretty='Date: %ad' HEAD -1 -- "$patch"
+ fi
+ echo -n 'Subject: '
+ grep -v '^SPDX-License-Identifier:' "$aufs_dir/$patch" | head -1
+ echo "$origin_line"
+ echo "$bug_line"
+ echo
+ echo 'Patch headers added by debian/bin/genpatch-aufs'
+ echo
+ sed 's/^+.*EXPORT_SYMBOL\b/&_GPL/' < "$aufs_dir"/"$patch"
+ } > debian/patches/features/all/aufs5/"$patch"
+done
diff --git a/debian/bin/genpatch-lockdown b/debian/bin/genpatch-lockdown
new file mode 100755
index 000000000..1aed0c735
--- /dev/null
+++ b/debian/bin/genpatch-lockdown
@@ -0,0 +1,109 @@
+#!/usr/bin/python3
+
+import io
+import os
+import os.path
+import re
+import subprocess
+import sys
+
+
+def main(repo, range='torvalds/master..dhowells/efi-lock-down'):
+ patch_dir = 'debian/patches'
+ lockdown_patch_dir = 'features/all/lockdown'
+ series_name = 'series'
+
+ # Only replace patches in this subdirectory and starting with a digit
+ # - the others are presumably Debian-specific for now
+ lockdown_patch_name_re = re.compile(
+ r'^' + re.escape(lockdown_patch_dir) + r'/\d')
+ series_before = []
+ series_after = []
+
+ old_series = set()
+ new_series = set()
+
+ try:
+ with open(os.path.join(patch_dir, series_name), 'r') as series_fh:
+ for line in series_fh:
+ name = line.strip()
+ if lockdown_patch_name_re.match(name):
+ old_series.add(name)
+ elif len(old_series) == 0:
+ series_before.append(line)
+ else:
+ series_after.append(line)
+ except FileNotFoundError:
+ pass
+
+ with open(os.path.join(patch_dir, series_name), 'w') as series_fh:
+ for line in series_before:
+ series_fh.write(line)
+
+ # Add directory prefix to all filenames.
+ # Add Origin to all patch headers.
+ def add_patch(name, source_patch, origin):
+ name = os.path.join(lockdown_patch_dir, name)
+ path = os.path.join(patch_dir, name)
+ try:
+ os.unlink(path)
+ except FileNotFoundError:
+ pass
+ with open(path, 'w') as patch:
+ in_header = True
+ for line in source_patch:
+ if in_header and re.match(r'^(\n|[^\w\s]|Index:)', line):
+ patch.write('Origin: %s\n' % origin)
+ if line != '\n':
+ patch.write('\n')
+ in_header = False
+ patch.write(line)
+ series_fh.write(name)
+ series_fh.write('\n')
+ new_series.add(name)
+
+ # XXX No signature to verify
+
+ env = os.environ.copy()
+ env['GIT_DIR'] = os.path.join(repo, '.git')
+ args = ['git', 'format-patch', '--subject-prefix=', range]
+ format_proc = subprocess.Popen(args,
+ cwd=os.path.join(patch_dir,
+ lockdown_patch_dir),
+ env=env, stdout=subprocess.PIPE)
+ with io.open(format_proc.stdout.fileno(), encoding='utf-8') as pipe:
+ for line in pipe:
+ name = line.strip('\n')
+ with open(os.path.join(patch_dir, lockdown_patch_dir, name)) \
+ as source_patch:
+ patch_from = source_patch.readline()
+ match = re.match(r'From ([0-9a-f]{40}) ', patch_from)
+ assert match
+ origin = ('https://git.kernel.org/pub/scm/linux/kernel/'
+ 'git/dhowells/linux-fs.git/commit?id=%s' %
+ match.group(1))
+ add_patch(name, source_patch, origin)
+
+ for line in series_after:
+ series_fh.write(line)
+
+ for name in new_series:
+ if name in old_series:
+ old_series.remove(name)
+ else:
+ print('Added patch', os.path.join(patch_dir, name))
+
+ for name in old_series:
+ print('Obsoleted patch', os.path.join(patch_dir, name))
+
+
+if __name__ == '__main__':
+ if not (2 <= len(sys.argv) <= 3):
+ sys.stderr.write('''\
+Usage: %s REPO [REVISION-RANGE]
+REPO is a git repo containing the REVISION-RANGE. The default range is
+torvalds/master..dhowells/efi-lock-down.
+''' % sys.argv[0])
+ print('BASE is the base branch (default: torvalds/master).')
+ sys.exit(2)
+ main(*sys.argv[1:])
diff --git a/debian/bin/genpatch-rt b/debian/bin/genpatch-rt
new file mode 100755
index 000000000..e61b5f242
--- /dev/null
+++ b/debian/bin/genpatch-rt
@@ -0,0 +1,152 @@
+#!/usr/bin/python3
+
+import codecs
+import io
+import os
+import os.path
+import re
+import shutil
+import subprocess
+import sys
+import tempfile
+
+
+def main(source, version=None):
+ patch_dir = 'debian/patches-rt'
+ series_name = 'series'
+ old_series = set()
+ new_series = set()
+
+ try:
+ with open(os.path.join(patch_dir, series_name), 'r') as series_fh:
+ for line in series_fh:
+ name = line.strip()
+ if name != '' and name[0] != '#':
+ old_series.add(name)
+ except FileNotFoundError:
+ pass
+
+ with open(os.path.join(patch_dir, series_name), 'w') as series_fh:
+ # Add Origin to all patch headers.
+ def add_patch(name, source_patch, origin):
+ path = os.path.join(patch_dir, name)
+ try:
+ os.unlink(path)
+ except FileNotFoundError:
+ pass
+ with open(path, 'w') as patch:
+ in_header = True
+ for line in source_patch:
+ if in_header and re.match(r'^(\n|[^\w\s]|Index:)', line):
+ patch.write('Origin: %s\n' % origin)
+ if line != '\n':
+ patch.write('\n')
+ in_header = False
+ patch.write(line)
+ new_series.add(name)
+
+ if os.path.isdir(os.path.join(source, '.git')):
+ # Export rebased branch from stable-rt git as patch series
+ up_ver = re.sub(r'-rt\d+$', '', version)
+ env = os.environ.copy()
+ env['GIT_DIR'] = os.path.join(source, '.git')
+ env['DEBIAN_KERNEL_KEYRING'] = 'rt-signing-key.pgp'
+
+ # Validate tag signature
+ gpg_wrapper = os.path.join(os.getcwd(),
+ "debian/bin/git-tag-gpg-wrapper")
+ verify_proc = subprocess.Popen(
+ ['git', '-c', 'gpg.program=%s' % gpg_wrapper,
+ 'tag', '-v', 'v%s-rebase' % version],
+ env=env)
+ if verify_proc.wait():
+ raise RuntimeError("GPG tag verification failed")
+
+ args = ['git', 'format-patch',
+ 'v%s..v%s-rebase' % (up_ver, version)]
+ format_proc = subprocess.Popen(args,
+ cwd=patch_dir,
+ env=env, stdout=subprocess.PIPE)
+ with io.open(format_proc.stdout.fileno(), encoding='utf-8') \
+ as pipe:
+ for line in pipe:
+ name = line.strip('\n')
+ with open(os.path.join(patch_dir, name)) as source_patch:
+ patch_from = source_patch.readline()
+ match = re.match(r'From ([0-9a-f]{40}) ', patch_from)
+ assert match
+ origin = ('https://git.kernel.org/cgit/linux/kernel/'
+ 'git/rt/linux-stable-rt.git/commit?id=%s' %
+ match.group(1))
+ add_patch(name, source_patch, origin)
+ series_fh.write(line)
+
+ else:
+ # Get version and upstream version
+ if version is None:
+ match = re.search(r'(?:^|/)patches-(.+)\.tar\.[gx]z$', source)
+ assert match, 'no version specified or found in filename'
+ version = match.group(1)
+ match = re.match(r'^(\d+\.\d+)(?:\.\d+|-rc\d+)?-rt\d+$', version)
+ assert match, 'could not parse version string'
+ up_ver = match.group(1)
+
+ # Expect an accompanying signature, and validate it
+ source_sig = re.sub(r'.[gx]z$', '.sign', source)
+ unxz_proc = subprocess.Popen(['xzcat', source],
+ stdout=subprocess.PIPE)
+ verify_output = subprocess.check_output(
+ ['gpgv', '--status-fd', '1',
+ '--keyring', 'debian/upstream/rt-signing-key.pgp',
+ '--ignore-time-conflict', source_sig, '-'],
+ stdin=unxz_proc.stdout)
+ if unxz_proc.wait() or \
+ not re.search(r'^\[GNUPG:\]\s+VALIDSIG\s',
+ codecs.decode(verify_output),
+ re.MULTILINE):
+ os.write(2, verify_output) # bytes not str!
+ raise RuntimeError("GPG signature verification failed")
+
+ temp_dir = tempfile.mkdtemp(prefix='rt-genpatch', dir='debian')
+ try:
+ # Unpack tarball
+ subprocess.check_call(['tar', '-C', temp_dir, '-xaf', source])
+ source_dir = os.path.join(temp_dir, 'patches')
+ assert os.path.isdir(source_dir), \
+ 'tarball does not contain patches directory'
+
+ # Copy patch series
+ origin = ('https://www.kernel.org/pub/linux/kernel/projects/'
+ 'rt/%s/older/patches-%s.tar.xz' %
+ (up_ver, version))
+ with open(os.path.join(source_dir, 'series'), 'r') \
+ as source_series_fh:
+ for line in source_series_fh:
+ name = line.strip()
+ if name != '' and name[0] != '#':
+ with open(os.path.join(source_dir, name)) \
+ as source_patch:
+ add_patch(name, source_patch, origin)
+ series_fh.write(line)
+ finally:
+ shutil.rmtree(temp_dir)
+
+ for name in new_series:
+ if name in old_series:
+ old_series.remove(name)
+ else:
+ print('Added patch', os.path.join(patch_dir, name))
+
+ for name in old_series:
+ print('Obsoleted patch', os.path.join(patch_dir, name))
+
+
+if __name__ == '__main__':
+ if not (1 <= len(sys.argv) <= 3):
+ print('Usage: %s {TAR [RT-VERSION] | REPO RT-VERSION}' % sys.argv[0],
+ file=sys.stderr)
+ print('TAR is a tarball of patches.', file=sys.stderr)
+ print('REPO is a git repo containing the given RT-VERSION.',
+ file=sys.stderr)
+ sys.exit(2)
+ main(*sys.argv[1:])
diff --git a/debian/bin/getconfig.py b/debian/bin/getconfig.py
new file mode 100755
index 000000000..b719a17a1
--- /dev/null
+++ b/debian/bin/getconfig.py
@@ -0,0 +1,25 @@
+#!/usr/bin/python3
+
+import sys
+
+from debian_linux.config import ConfigCoreDump
+
+section = tuple(s or None for s in sys.argv[1:-1])
+key = sys.argv[-1]
+config = ConfigCoreDump(fp=open("debian/config.defines.dump", "rb"))
+try:
+ value = config[section][key]
+except KeyError:
+ sys.exit(1)
+
+if isinstance(value, str):
+ # Don't iterate over it
+ print(value)
+else:
+ # In case it's a sequence, try printing each item
+ try:
+ for item in value:
+ print(item)
+ except TypeError:
+ # Otherwise use the default format
+ print(value)
diff --git a/debian/bin/git-tag-gpg-wrapper b/debian/bin/git-tag-gpg-wrapper
new file mode 100755
index 000000000..9982b0140
--- /dev/null
+++ b/debian/bin/git-tag-gpg-wrapper
@@ -0,0 +1,33 @@
+#!/bin/bash -e
+
+# Instead of calling gpg, call gpgv and provide a local keyring
+
+debian_dir="$(readlink -f "$(dirname "$0")/..")"
+
+# Parse the expected options. If the next two lines are combined, a
+# failure of getopt won't cause the script to exit.
+ordered_args="$(getopt -n "$0" -o "" -l "status-fd:" -l "keyid-format:" -l "verify" -- "$@")"
+eval "set -- $ordered_args"
+gpgv_opts=()
+while true; do
+ case "$1" in
+ --status-fd)
+ gpgv_opts+=(--status-fd $2)
+ shift 2
+ ;;
+ --keyid-format)
+ # ignore
+ shift 2
+ ;;
+ --verify)
+ # ignore
+ shift 1
+ ;;
+ --)
+ shift 1
+ break
+ ;;
+ esac
+done
+
+exec gpgv "${gpgv_opts[@]}" --keyring "$debian_dir/upstream/${DEBIAN_KERNEL_KEYRING:-signing-key.pgp}" -- "$@"
diff --git a/debian/bin/kconfig.py b/debian/bin/kconfig.py
new file mode 100755
index 000000000..6115355f4
--- /dev/null
+++ b/debian/bin/kconfig.py
@@ -0,0 +1,39 @@
+#!/usr/bin/python3
+
+import optparse
+import re
+
+from debian_linux.kconfig import KconfigFile
+
+
+def merge(output, configs, overrides):
+ kconfig = KconfigFile()
+ for c in configs:
+ kconfig.read(open(c))
+ for key, value in overrides.items():
+ kconfig.set(key, value)
+ open(output, "w").write(str(kconfig))
+
+
+def opt_callback_dict(option, opt, value, parser):
+ match = re.match(r'^\s*(\S+)=(\S+)\s*$', value)
+ if not match:
+ raise optparse.OptionValueError('not key=value')
+ dest = option.dest
+ data = getattr(parser.values, dest)
+ data[match.group(1)] = match.group(2)
+
+
+if __name__ == '__main__':
+ parser = optparse.OptionParser(usage="%prog [OPTION]... FILE...")
+ parser.add_option(
+ '-o', '--override',
+ action='callback',
+ callback=opt_callback_dict,
+ default={},
+ dest='overrides',
+ help="Override option",
+ type='string')
+ options, args = parser.parse_args()
+
+ merge(args[0], args[1:], options.overrides)
diff --git a/debian/bin/no-depmod b/debian/bin/no-depmod
new file mode 100755
index 000000000..ed5a8463f
--- /dev/null
+++ b/debian/bin/no-depmod
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+set -e
+
+# This is a dummy substitute for depmod. Since we run depmod during
+# postinst, we do not need or want to package the files that it
+# generates.
+
+if [ "x$1" = x-V ]; then
+ # Satisfy version test
+ echo 'not really module-init-tools'
+elif [ "x$1" = x-b -a "${2%/depmod.??????}" != "$2" ]; then
+ # Satisfy test of short kernel versions
+ mkdir -p "$2/lib/modules/$3"
+ touch "$2/lib/modules/$3/modules.dep"
+else
+ echo 'skipping depmod'
+fi
diff --git a/debian/bin/stable-update b/debian/bin/stable-update
new file mode 100755
index 000000000..0ce6112bb
--- /dev/null
+++ b/debian/bin/stable-update
@@ -0,0 +1,135 @@
+#!/usr/bin/python3
+
+import sys
+import os
+import re
+import subprocess
+
+from debian_linux.debian import Changelog, VersionLinux
+
+
+def base_version(ver):
+ # Assume base version is at least 3.0, thus only 2 components wanted
+ match = re.match(r'^(\d+\.\d+)', ver)
+ assert match
+ return match.group(1)
+
+
+def add_update(ver, inc):
+ base = base_version(ver)
+ if base == ver:
+ update = 0
+ else:
+ update = int(ver[len(base)+1:])
+ update += inc
+ if update == 0:
+ return base
+ else:
+ return '{}.{}'.format(base, update)
+
+
+def next_update(ver):
+ return add_update(ver, 1)
+
+
+def print_stable_log(log, cur_ver, new_ver):
+ major_ver = re.sub(r'^(\d+)\..*', r'\1', cur_ver)
+ while cur_ver != new_ver:
+ next_ver = next_update(cur_ver)
+ print(' https://www.kernel.org/pub/linux/kernel/v{}.x/ChangeLog-{}'
+ .format(major_ver, next_ver),
+ file=log)
+ log.flush() # serialise our output with git's
+ subprocess.check_call(['git', 'log', '--reverse',
+ '--pretty= - %s',
+ 'v{}..v{}^'.format(cur_ver, next_ver)],
+ stdout=log)
+ cur_ver = next_ver
+
+
+def main(repo, new_ver):
+ if os.path.exists(os.path.join(repo, '.git')):
+ os.environ['GIT_DIR'] = os.path.join(repo, '.git')
+ else:
+ os.environ['GIT_DIR'] = repo
+
+ changelog = Changelog(version=VersionLinux)
+ cur_pkg_ver = changelog[0].version
+ cur_ver = cur_pkg_ver.linux_upstream_full
+
+ if base_version(new_ver) != base_version(cur_ver):
+ print('{} is not on the same stable series as {}'
+ .format(new_ver, cur_ver),
+ file=sys.stderr)
+ sys.exit(2)
+
+ new_pkg_ver = new_ver + '-1'
+ if cur_pkg_ver.linux_revision_experimental:
+ new_pkg_ver += '~exp1'
+
+ # Three possible cases:
+ # 1. The current version has been released so we need to add a new
+ # version to the changelog.
+ # 2. The current version has not been released so we're changing its
+ # version string.
+ # (a) There are no stable updates included in the current version,
+ # so we need to insert an introductory line, the URL(s) and
+ # git log(s) and a blank line at the top.
+ # (b) One or more stable updates are already included in the current
+ # version, so we need to insert the URL(s) and git log(s) after
+ # them.
+
+ changelog_intro = 'New upstream stable update:'
+
+ # Case 1
+ if changelog[0].distribution != 'UNRELEASED':
+ subprocess.check_call(['dch', '-v', new_pkg_ver, '-D', 'UNRELEASED',
+ changelog_intro])
+
+ with open('debian/changelog', 'r') as old_log:
+ with open('debian/changelog.new', 'w') as new_log:
+ line_no = 0
+ inserted = False
+ intro_line = ' * {}\n'.format(changelog_intro)
+
+ for line in old_log:
+ line_no += 1
+
+ # Case 2
+ if changelog[0].distribution == 'UNRELEASED' and line_no == 1:
+ print('{} ({}) UNRELEASED; urgency={}'
+ .format(changelog[0].source, new_pkg_ver,
+ changelog[0].urgency),
+ file=new_log)
+ continue
+
+ if not inserted:
+ # Case 2(a)
+ if line_no == 3 and line != intro_line:
+ new_log.write(intro_line)
+ print_stable_log(new_log, cur_ver, new_ver)
+ new_log.write('\n')
+ inserted = True
+ # Case 1 or 2(b)
+ elif line_no > 3 and line == '\n':
+ print_stable_log(new_log, cur_ver, new_ver)
+ inserted = True
+
+ # Check that we inserted before hitting the end of the
+ # first version entry
+ assert not (line.startswith(' -- ') and not inserted)
+
+ new_log.write(line)
+
+ os.rename('debian/changelog.new', 'debian/changelog')
+
+
+if __name__ == '__main__':
+ if len(sys.argv) != 3:
+ print('''\
+Usage: {} REPO VERSION
+REPO is the git repository to generate a changelog from
+VERSION is the stable version (without leading v)'''.format(sys.argv[0]),
+ file=sys.stderr)
+ sys.exit(2)
+ main(*sys.argv[1:])
diff --git a/debian/bin/stable-update.sh b/debian/bin/stable-update.sh
new file mode 100755
index 000000000..bd86860c6
--- /dev/null
+++ b/debian/bin/stable-update.sh
@@ -0,0 +1,2 @@
+#!/bin/sh -e
+exec "$(dirname "$0")/stable-update" "$@"
diff --git a/debian/bin/test-patches b/debian/bin/test-patches
new file mode 100755
index 000000000..f91094477
--- /dev/null
+++ b/debian/bin/test-patches
@@ -0,0 +1,145 @@
+#!/bin/bash
+
+set -e
+shopt -s extglob
+
+# Set defaults from the running kernel
+arch="$(dpkg --print-architecture)"
+kernelabi="$(uname -r)"
+ff="${kernelabi#+([^-])-@(trunk|?(rc)+([0-9])|0.@(bpo|deb+([0-9])).+([0-9]))-}"
+if [ "x$ff" != "x$kernelabi" ]; then
+ flavour="${ff#@(openvz|rt|vserver|xen)-}"
+ if [ "x$flavour" != "x$ff" ]; then
+ featureset="${ff%-$flavour}"
+ else
+ featureset=none
+ fi
+else
+ flavour=
+ featureset=none
+fi
+
+dbginfo=
+fuzz=0
+jobs=$(nproc)
+
+eval "set -- $(getopt -n "$0" -o "f:gj:s:" -l "fuzz:" -- "$@")"
+while true; do
+ case "$1" in
+ -f) flavour="$2"; shift 2 ;;
+ -g) dbginfo=y; shift 1 ;;
+ -j) jobs="$2"; shift 2 ;;
+ -s) featureset="$2"; shift 2 ;;
+ --fuzz) fuzz="$2"; shift 2;;
+ --) shift 1; break ;;
+ esac
+done
+
+if [ $# -lt 1 ]; then
+ echo >&2 "Usage: $0 [<options>] <patch>..."
+ cat >&2 <<EOF
+Options:
+ -f <flavour> specify the 'flavour' of kernel to build, e.g. 686-pae
+ -g enable debug info
+ -j <jobs> specify number of compiler jobs to run in parallel
+ (default: number of available processors)
+ -s <featureset> specify an optional featureset to apply, e.g. rt
+ --fuzz <num> set the maximum patch fuzz factor (default: 0)
+EOF
+ exit 2
+fi
+
+if [ -z "$flavour" ]; then
+ echo >&2 "You must specify a flavour to build with the -f option"
+ exit 2
+fi
+
+profiles=nodoc,noudeb,pkg.linux.nosource,pkg.linux.mintools
+
+# Check build-dependencies early if possible
+if [ -f debian/control ]; then
+ dpkg-checkbuilddeps -P"$profiles"
+fi
+
+# Append 'a~test' to Debian version; this should be less than any official
+# successor and easily recognisable
+version="$(dpkg-parsechangelog | sed 's/^Version: //; t; d')"
+if [ "${version%a~test}" = "$version" ]; then
+ version="$version"a~test
+ dch -v "$version" --distribution UNRELEASED "Testing patches $*"
+fi
+
+# Ignore user's .quiltrc
+alias quilt='quilt --quiltrc -'
+
+# Try to clean up any previous test patches
+if [ "$featureset" = none ]; then
+ patchdir=debian/patches
+ while patch="$(quilt top 2>/dev/null)" && \
+ [ "${patch#test/}" != "$patch" ]; do
+ quilt pop -f
+ done
+ while patch="$(quilt next 2>/dev/null)" && \
+ [ "${patch#test/}" != "$patch" ]; do
+ quilt delete -r "$patch"
+ done
+else
+ patchdir=debian/patches-${featureset}
+ sed -i '/^test\//d' $patchdir/series
+fi
+
+# Prepare a new directory for the patches
+rm -rf $patchdir/test/
+mkdir $patchdir/test
+
+# Prepare a new directory for the config; override ABI name, featuresets, flavours
+rm -rf debian/config.local
+mkdir debian/config.local debian/config.local/"$arch" debian/config.local/"$arch"/"$featureset"
+cat >debian/config.local/defines <<EOF
+[abi]
+abiname: 0.a.test
+EOF
+if [ -z "$dbginfo" ]; then
+ cat >>debian/config.local/defines <<EOF
+[build]
+debug-info: false
+EOF
+fi
+cat >debian/config.local/"$arch"/defines <<EOF
+[base]
+featuresets: $featureset
+EOF
+cat >debian/config.local/"$arch"/"$featureset"/defines <<EOF
+[base]
+flavours: $flavour
+EOF
+if [ "$featureset" = none ]; then
+ # default-flavour must refer to a flavour that's enabled
+ cat >>debian/config.local/"$arch"/"$featureset"/defines <<EOF
+default-flavour: $flavour
+EOF
+fi
+
+# Regenerate control and included rules
+rm -f debian/control debian/rules.gen
+debian/rules debian/control-real && exit 1 || true
+test -f debian/control
+test -f debian/rules.gen
+
+# Check build-dependencies now that we know debian/control exists
+dpkg-checkbuilddeps -P"$profiles"
+
+# Clean up old build; apply existing patches for featureset
+debian/rules clean
+debian/rules source
+
+# Apply the additional patches
+for patch in "$@"; do
+ patch_abs="$(readlink -f "$patch")"
+ (cd "debian/build/source_${featureset}" && \
+ quilt import -P "test/$(basename "$patch")" "$patch_abs" && \
+ quilt push --fuzz="$fuzz")
+done
+
+# Build selected binaries
+dpkg-buildpackage -b -P"$profiles" -j"$jobs" -nc -uc
diff --git a/debian/bin/update-bug-taint-list b/debian/bin/update-bug-taint-list
new file mode 100755
index 000000000..76bb1fc2e
--- /dev/null
+++ b/debian/bin/update-bug-taint-list
@@ -0,0 +1,24 @@
+#!/bin/sh -eu
+
+temp="$(mktemp)"
+trap 'rm -f "$temp"' EXIT
+
+# Copy everything above the existing flag checks.
+sed -rne '/^ +_check /q; p' \
+ < debian/templates/image.bug/include-1tainted >"$temp"
+
+# Generate flag checks from the table in tainted-kernels.rst. We
+# could alternatively extract them from sysctl/kernel.rst or in the C
+# sources, but this is easy to find and parse and is likely to have
+# the most useful descriptions.
+sed -rne '/^Bit +Log +Number +Reason/,/^$/ {
+ s/^ *([0-9]+) +.\/(.) +[0-9]+ +(.*)/ _check \1 \2 '\''\3'\''/p
+ }' \
+ < Documentation/admin-guide/tainted-kernels.rst >>"$temp"
+
+# Copy everything below the existing flag checks.
+sed -rne '/^ +echo "\*\* Tainted:/,$p' \
+ < debian/templates/image.bug/include-1tainted >>"$temp"
+
+# Update the bug script in-place.
+cp "$temp" debian/templates/image.bug/include-1tainted
diff --git a/debian/certs/debian-uefi-certs.pem b/debian/certs/debian-uefi-certs.pem
new file mode 100644
index 000000000..326a2be37
--- /dev/null
+++ b/debian/certs/debian-uefi-certs.pem
@@ -0,0 +1,42 @@
+-----BEGIN CERTIFICATE-----
+MIIDnjCCAoagAwIBAgIRAO1UodWvh0iUjZ+JMu6cfDQwDQYJKoZIhvcNAQELBQAw
+IDEeMBwGA1UEAxMVRGViaWFuIFNlY3VyZSBCb290IENBMB4XDTE2MDgxNjE4MDkx
+OFoXDTQ2MDgwOTE4MDkxOFowIDEeMBwGA1UEAxMVRGViaWFuIFNlY3VyZSBCb290
+IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnZXUi5vaEKwuyoI3
+waTLSsMbQpPCeinTbt1kr4Cv6maiG2GcgwzFa7k1Jf/F++gpQ97OSz3GEk2x7yZD
+lWjNBBH+wiSb3hTYhlHoOEO9sZoV5Qhr+FRQi7NLX/wU5DVQfAux4gOEqDZI5IDo
+6p/6v8UYe17OHL4sgHhJNRXAIc/vZtWKlggrZi9IF7Hn7IKPB+bK4F9xJDlQCo7R
+cihQpZ0h9ONhugkDZsjfTiY2CxUPYx8rr6vEKKJWZIWNplVBrjyIld3Qbdkp29jE
+aLX89FeJaxTb4O/uQA1iH+pY1KPYugOmly7FaxOkkXemta0jp+sKSRRGfHbpnjK0
+ia9XeQIDAQABo4HSMIHPMEEGCCsGAQUFBwEBBDUwMzAxBggrBgEFBQcwAoYlaHR0
+cHM6Ly9kc2EuZGViaWFuLm9yZy9zZWN1cmUtYm9vdC1jYTAfBgNVHSMEGDAWgBRs
+zs5+TGwNH2FJ890n38xcu0GeoTAUBglghkgBhvhCAQEBAf8EBAMCAPcwEwYDVR0l
+BAwwCgYIKwYBBQUHAwMwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8w
+HQYDVR0OBBYEFGzOzn5MbA0fYUnz3SffzFy7QZ6hMA0GCSqGSIb3DQEBCwUAA4IB
+AQB3lj5Hyc4Jz4uJzlntJg4mC7mtqSu9oeuIeQL/Md7+9WoH72ETEXAev5xOZmzh
+YhKXAVdlR91Kxvf03qjxE2LMg1esPKaRFa9VJnJpLhTN3U2z0WAkLTJPGWwRXvKj
+8qFfYg8wrq3xSGZkfTZEDQY0PS6vjp3DrcKR2Dfg7npfgjtnjgCKxKTfNRbCcitM
+UdeTk566CA1Zl/LiKaBETeru+D4CYMoVz06aJZGEP7dax+68a4Cj2f2ybXoeYxTr
+7/GwQCXV6A6B62v3y//lIQAiLC6aNWASS1tfOEaEDAacz3KTYhjuXJjWs30GJTmV
+305gdrAGewiwbuNknyFWrTkP
+-----END CERTIFICATE-----
+-----BEGIN CERTIFICATE-----
+MIIDQzCCAiugAwIBAgIUMqAof4QaA2+jk8HgZcQ65rJCJkMwDQYJKoZIhvcNAQEL
+BQAwIDEeMBwGA1UEAxMVRGViaWFuIFNlY3VyZSBCb290IENBMB4XDTIyMDgxODE3
+MzIzN1oXDTMyMDgxNTE3MzIzN1owMTEvMC0GA1UEAwwmRGViaWFuIFNlY3VyZSBC
+b290IFNpZ25lciAyMDIyIC0gbGludXgwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQCv6LgqfsYKPyGcgP12nHWFbtEJDUdixV8n+gOWMgLANs9+NjexyJ4o
+V3iG3qTDqm1VGIdQfnf0cEmh3bS1tuoPDZcGU9HaDKq8oPjYyJd9G/aO6sGHKCc3
+aIAvLnPkfH7EfiaxshFwthOeH3yt/K54ICnT6aCWQjDsJz2TCr3s+1izRuv6/VJ8
+/aNPI+RySpeUVtdKT1CQjb4N8HphWS7ZkDbWwVW0dHsZHPXhq0Gd729ctKo0/003
+Is7cw3TSSUHKCatRjVIImTwUiGNqlQe386dIBMjFzTddh19spvU0ootdCkiGShId
+Hz6YoDscyb+SQsmIaiXo1nwd2SABFlRLAgMBAAGjZDBiMAsGA1UdDwQEAwIHgDAT
+BgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUFAESScJnXqjlFIVCICAFgQWE
+sl8wHwYDVR0jBBgwFoAUbM7OfkxsDR9hSfPdJ9/MXLtBnqEwDQYJKoZIhvcNAQEL
+BQADggEBAJg1omf+js6HaUsZvSBIwEu9qHyEjMcjo0yvc22dKi5Kzxclo+Vmr99/
+rpXjsXMlskPeWIQS7iUOvS/oupmqQq9+0rHMXu/lTP2ITh9IjHwEx2zWEPIOlmYJ
+wCYpta7YeX5YExb32f9wJYIJZidHy9p5I0jOIgAInv8J4NZUG14LPxI6I4hfYI1p
+mruMdxPS0hllzPbs6rZ2LwWVtNjuPhfmMt4eMKOl4ThXWhoiwvkTOJpDkaCPgnzT
+h507wBcDBquUKtDwGnQcQdPWfxMyA8b2v05PXMQS2cH/xJ5th8M+IU4DUfigYGYN
+ce00ryZ2rpZIqHs1H1Xc5xJpusY1Q+w=
+-----END CERTIFICATE-----
diff --git a/debian/certs/wireless-regdb-benh@debian.org.pem b/debian/certs/wireless-regdb-benh@debian.org.pem
new file mode 100644
index 000000000..da3981d84
--- /dev/null
+++ b/debian/certs/wireless-regdb-benh@debian.org.pem
@@ -0,0 +1,17 @@
+-----BEGIN CERTIFICATE-----
+MIICvTCCAaUCFFd+Ahy5gODoIIIbp7VLSWG4tPrfMA0GCSqGSIb3DQEBCwUAMBox
+GDAWBgNVBAMMD2JlbmhAZGViaWFuLm9yZzAgFw0yMDAxMzAxMzI2MTNaGA8yMTIw
+MDEwNjEzMjYxM1owGjEYMBYGA1UEAwwPYmVuaEBkZWJpYW4ub3JnMIIBIjANBgkq
+hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAneF3oCSg1XllOgeQyfalph+EHCMHS0+l
+A8YP91TVi355gQDS6T30l/6EzVW9yY8hV4gGOZBmQSZ5LMo/lYcBES8vsOELQ/xf
+L09nBNtNt3JN0cV2c02RabBxFzbqqwo6zZWbdhuOIRePxQK/JMfAQLE7xIB8caVR
+3Pc6WH+xB4GKENH2kxdx4PpReRXU14+tvW844SZ9vPA+gIm07I5pkNuXivAjI4OC
+O2qxrOvnmXQqNY6pZP1GnujlSGExbub8GRhUwxtP1gBEhxw3Rer1ycsPDFXsz2rC
+RSYjojFSTe4hff1YcsIoxY6p0O4Bdwil8CIrR3krz5pGtY/9ZKK17QIDAQABMA0G
+CSqGSIb3DQEBCwUAA4IBAQAgRP6pnt2b6s4ldQjwK1P3WjYcSiN/0EE8Eiu5gE6K
+FV0fQKcmKDLDWwYoLT0ICR4B6WfjM+YVRTnuF4PbQv9/NfSsFtu6uBogIUH/85L/
+ZW4pFtC/jd9ILHM2fyLm7ni0Y4MOOeuvECqQ0/zmw4+XW3a/m/WY0lMGi/ikBJsb
+YmqdrOZLDcnXVmMVATiMvvFExDgn4M9y1j3k90s70rEM1YNtHhAEaSmIaeB919u0
+WXKNnTxDr8Z9tyEVUorpm2su6Cc8Py2E+5oiCp9qJeY55HRztipwqh3LzNSgGyZx
+YwTFEiFIupInBqg+baFDpdIq98rEJuhbH+TcidwfBHk/
+-----END CERTIFICATE-----
diff --git a/debian/certs/wireless-regdb-romain.perier@gmail.com.pem b/debian/certs/wireless-regdb-romain.perier@gmail.com.pem
new file mode 100644
index 000000000..b20d608e8
--- /dev/null
+++ b/debian/certs/wireless-regdb-romain.perier@gmail.com.pem
@@ -0,0 +1,18 @@
+-----BEGIN CERTIFICATE-----
+MIICzTCCAbUCFDq7xuwUbgnRtgFqudbPcd0jPwMoMA0GCSqGSIb3DQEBCwUAMCIx
+IDAeBgNVBAMMF3JvbWFpbi5wZXJpZXJAZ21haWwuY29tMCAXDTIwMDIyNDE5MDE0
+NFoYDzIxMjAwMTMxMTkwMTQ0WjAiMSAwHgYDVQQDDBdyb21haW4ucGVyaWVyQGdt
+YWlsLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPC4Tz9wePh0
+RaIorwR1BKPzp8cErLbh/OHAPeAmkIpFYMR18xozN1Z9MAd1DqZ5BpWdFzwJqX+r
+lV3t4HUmL2VlzWGxMydnQaEBE+kTam1OmOGeewtbRO9oWm99l6EzIpcSIQmPkOAl
+lN2KOvdKYAQmbQCC5M9kHHkVJPJChvUQhqwgiJCH34w3fL811W+fd8PNaSUGwmVR
+cYl/bk3l1Yo2Gq3BGNYUQofwk4PxmXTEE6o7ZoVv4LxftkCmQQYKug7pMkQQOVPN
+v/PTJva2K0AuuYjB9OOgKHdPuqjKnAW6iJaZVImijfNzoYxKqHHuLtKDFEi9mMbO
+3Kijly5AFi8CAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAdl0DPbaWABtuDN27yN+8
+62wBQBorB2ChGuFDV/q+3ruPc/OSoqqDAcEX5J0JQeAyM5dL8twPi6i4WgSG9nGh
+l9BUVhCOVJkNKqmvG1VZBiukX7FUpuzH1kPuhiybGJ2PAILBiGEWhTwXVv5qoHpo
+xXs9PLYTGJltdGUTZ7f8WkRIcqBzuP8CnXxb+Xx1CjyBgDxB8tX6PR/j2oylFx9T
+GnWtThEcB+wKaf0z+jJ+ZvUp6E2K+g1LaMOVEbpvHgeMhcfHycEwo3CwoeDVhRWU
+d8EckfFfUM0sV0siT+6V16ekWWKuub/XY1oE/CQRrjRL9AyfC1l9JzlUaU/9bkSf
+IQ==
+-----END CERTIFICATE-----
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 000000000..69817dc22
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,32189 @@
+linux (5.10.209-2) bullseye; urgency=medium
+
+ * netfilter: nf_tables: reject QUEUE/DROP verdict parameters (CVE-2024-1086)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 31 Jan 2024 22:14:09 +0100
+
+linux (5.10.209-1) bullseye; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.206
+ - ksmbd: fix wrong name of SMB2_CREATE_ALLOCATION_SIZE
+ - smb: client: fix OOB in smb2_query_reparse_point()
+ - [armhf] OMAP2+: Fix null pointer dereference and memory leak in
+ omap_soc_device_init
+ - reset: Fix crash when freeing non-existent optional resets
+ - [s390x] vx: fix save/restore of fpu kernel context
+ - wifi: mac80211: mesh_plink: fix matches_local logic
+ - Revert "net/mlx5e: fix double free of encap_header"
+ - net/mlx5e: Fix slab-out-of-bounds in mlx5_query_nic_vport_mac_list()
+ - net/mlx5: Fix fw tracer first block check
+ - net/mlx5e: Correct snprintf truncation handling for fw_version buffer used
+ by representors
+ - net: sched: ife: fix potential use-after-free
+ - ethernet: atheros: fix a memleak in atl1e_setup_ring_resources
+ - net/rose: fix races in rose_kill_by_device()
+ - net: check vlan filter feature in vlan_vids_add_by_dev() and
+ vlan_vids_del_by_dev()
+ - afs: Fix the dynamic root's d_delete to always delete unused dentries
+ - afs: Fix dynamic root lookup DNS check
+ - net: warn if gso_type isn't set for a GSO SKB
+ - net: check dev->gso_max_size in gso_features_check()
+ - keys, dns: Allow key types (eg. DNS) to be reclaimed immediately on expiry
+ - afs: Fix overwriting of result of DNS query
+ - [armhf] i2c: aspeed: Handle the coalesced stop conditions with the start
+ conditions.
+ - ALSA: hda/hdmi: Add quirk to force pin connectivity on NUC10
+ - ALSA: hda/hdmi: add force-connect quirk for NUC5CPYB
+ - smb: client: fix NULL deref in asn1_ber_decoder()
+ - btrfs: do not allow non subvolume root targets for snapshot
+ - iio: imu: inv_mpu6050: fix an error code problem in inv_mpu6050_read_raw
+ - scsi: bnx2fc: Fix skb double free in bnx2fc_rcv()
+ - iio: common: ms_sensors: ms_sensors_i2c: fix humidity conversion time
+ table
+ - wifi: cfg80211: Add my certificate
+ - wifi: cfg80211: fix certs build to not depend on file order
+ - USB: serial: ftdi_sio: update Actisense PIDs constant names
+ - USB: serial: option: add Quectel EG912Y module support
+ - USB: serial: option: add Foxconn T99W265 with new baseline
+ - USB: serial: option: add Quectel RM500Q R13 firmware support
+ - Bluetooth: hci_event: Fix not checking if HCI_OP_INQUIRY has been sent
+ - Bluetooth: L2CAP: Send reject on command corrupted request
+ - [x86] Input: soc_button_array - add mapping for airplane mode button
+ - net: 9p: avoid freeing uninit memory in p9pdu_vreadf
+ - net: rfkill: gpio: set GPIO direction
+ - tracing / synthetic: Disable events after testing in
+ synth_event_gen_test_init()
+ - bus: ti-sysc: Flush posted write only after srst_udelay
+ - lib/vsprintf: Fix %pfwf when current node refcount == 0
+ - [x86] alternatives: Sync core before enabling interrupts
+ - 9p/net: fix possible memory leak in p9_check_errors()
+ - ARM: dts: Fix occasional boot hang for am3 usb
+ - Bluetooth: SMP: Convert BT_ERR/BT_DBG to bt_dev_err/bt_dev_dbg
+ - Bluetooth: use inclusive language in SMP
+ - Bluetooth: MGMT/SMP: Fix address type when using SMP over BREDR/LE
+ - usb: fotg210-hcd: delete an incorrect bounds test
+ - smb: client: fix OOB in SMB2_query_info_init()
+ - smb: client: fix OOB in smbCalcSize() (CVE-2023-6606)
+ - Bluetooth: af_bluetooth: Fix Use-After-Free in bt_sock_recvmsg
+ (CVE-2023-51779)
+ - scsi: core: Add scsi_prot_ref_tag() helper
+ - scsi: core: Introduce scsi_get_sector()
+ - scsi: core: Make scsi_get_lba() return the LBA
+ - scsi: core: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
+ - scsi: core: Use a structure member to track the SCSI command submitter
+ - scsi: core: Always send batch on reset or error handling command
+ - ring-buffer: Fix wake ups when buffer_percent is set to 100
+ - tracing: Fix blocked reader of snapshot buffer
+ - dm-integrity: don't modify bio's immutable bio_vec in integrity_metadata()
+ - Bluetooth: SMP: Fix crash when receiving new connection when debug is
+ enabled
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.207
+ - Revert "scsi: core: Always send batch on reset or error handling command"
+ - Revert "scsi: core: Use a structure member to track the SCSI command
+ submitter"
+ - Revert "scsi: core: Use scsi_cmd_to_rq() instead of scsi_cmnd.request"
+ - Revert "scsi: core: Make scsi_get_lba() return the LBA"
+ - Revert "scsi: core: Introduce scsi_get_sector()"
+ - Revert "scsi: core: Add scsi_prot_ref_tag() helper"
+ - scsi: core: Always send batch on reset or error handling command
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.208
+ - keys, dns: Fix missing size check of V1 server-list header
+ - block: Don't invalidate pagecache for invalid falloc modes
+ - ALSA: hda/realtek: Fix mute and mic-mute LEDs for HP ProBook 440 G6
+ - nfc: llcp_core: Hold a ref to llcp_local->dev when holding a ref to
+ llcp_local
+ - [x86] drm/i915/dp: Fix passing the correct DPCD_REV for
+ drm_dp_set_phy_test_pattern
+ - i40e: Fix filter input checks to prevent config with invalid values
+ - net: sched: em_text: fix possible memory leak in em_text_destroy()
+ - [armhf] sun9i: smp: Fix array-index-out-of-bounds read in
+ sunxi_mc_smp_init
+ - sfc: fix a double-free bug in efx_probe_filters
+ - [arm64] net: bcmgenet: Fix FCS generation for fragmented skbuffs
+ - netfilter: nftables: add loop check helper function
+ - netfilter: nft_immediate: drop chain reference counter on error
+ - net: Save and restore msg_namelen in sock_sendmsg
+ - i40e: fix use-after-free in i40e_aqc_add_filters()
+ - i40e: Restore VF MSI-X state during PCI reset
+ - net/qla3xxx: switch from 'pci_' to 'dma_' API
+ - net/qla3xxx: fix potential memleak in ql_alloc_buffer_queues
+ - asix: Add check for usbnet_get_endpoints
+ - bnxt_en: Remove mis-applied code from bnxt_cfg_ntp_filters()
+ - net: Implement missing SO_TIMESTAMPING_NEW cmsg support
+ - mm/memory-failure: check the mapcount of the precise page
+ - firewire: ohci: suppress unexpected system reboot in AMD Ryzen machines
+ and ASM108x/VT630x PCIe cards
+ - [x86] kprobes: fix incorrect return address calculation in
+ kprobe_emulate_call_indirect
+ - mm: fix unmap_mapping_range high bits shift bug
+ - mmc: core: Cancel delayed work before releasing host
+ - [powerpc*] update ppc_save_regs to save current r1 in pt_regs
+ - net: tls, update curr on splice as well (CVE-2024-0646)
+ - ipv6: remove max_size check inline with ipv4 (CVE-2023-52340)
+ - drm/qxl: fix UAF on handle creation (CVE-2023-39198)
+ - netfilter: nf_tables: Reject tables of unsupported family (CVE-2023-6040)
+ - PCI: Extract ATS disabling to a helper function
+ - PCI: Disable ATS for specific Intel IPU E2000 devices
+ - Revert "nvme: use command_id instead of req->tag in
+ trace_nvme_complete_rq()"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.209
+ - f2fs: explicitly null-terminate the xattr list
+ - ALSA: hda - Fix speaker and headset mic pin config for CHUWI CoreBook XPro
+ - debugfs: fix automount d_fsdata usage
+ - drm/amdgpu: Fix cat debugfs amdgpu_regs_didt causes kernel null pointer
+ - nvme-core: check for too small lba shift
+ - [x86] ASoC: Intel: Skylake: Fix mem leak in few functions
+ - [x86] ASoC: Intel: Skylake: mem leak in skl register function
+ - ASoC: rt5650: add mutex to avoid the jack detection failure
+ - nouveau/tu102: flush all pdbs on vmm flush
+ - net/tg3: fix race condition in tg3_reset_task()
+ - ASoC: da7219: Support low DC impedance headset
+ - nvme: introduce helper function to get ctrl state
+ - [armhf] drm/exynos: fix a potential error pointer dereference
+ - [armhf] drm/exynos: fix a wrong error checking
+ - [armhf] clk: rockchip: rk3128: Fix HCLK_OTG gate register
+ - jbd2: correct the printing of write_flags in jbd2_write_superblock()
+ - drm/crtc: Fix uninit-value bug in drm_mode_setcrtc
+ - neighbour: Don't let neigh_forced_gc() disable preemption for long
+ - jbd2: fix soft lockup in journal_finish_inode_data_buffers()
+ - tracing: Have large events show up as '[LINE TOO BIG]' instead of nothing
+ - tracing: Add size check when printing trace_marker output
+ - ring-buffer: Do not record in NMI if the arch does not support cmpxchg in
+ NMI
+ - [arm64] reset: hisilicon: hi6220: fix Wvoid-pointer-to-enum-cast warning
+ - Input: atkbd - skip ATKBD_CMD_GETID in translated mode
+ - Input: i8042 - add nomux quirk for Acer P459-G2-M
+ - [s390x] scm: fix virtual vs physical address confusion
+ - Input: xpad - add Razer Wolverine V2 support
+ - [arm64,armhf] i2c: rk3x: fix potential spinlock recursion on poll
+ - ida: Fix crash in ida_free when the bitmap is empty (CVE-2023-6915)
+ - net: qrtr: ns: Return 0 if server port is not present
+ - [armhf] sun9i: smp: fix return code check of of_property_match_string
+ - drm/crtc: fix uninitialized variable use
+ - ACPI: resource: Add another DMI match for the TongFang GMxXGxx
+ - [arm*] binder: use EPOLLERR from eventpoll.h
+ - [arm*] binder: fix trivial typo of binder_free_buf_locked()
+ - [arm*] binder: fix comment on binder_alloc_new_buf() return value
+ - uio: Fix use-after-free in uio_open
+ - parport: parport_serial: Add Brainboxes BAR details
+ - parport: parport_serial: Add Brainboxes device IDs and geometry
+ - PCI: Add ACS quirk for more Zhaoxin Root Ports
+ - [x86] lib: Fix overflow when counting digits
+ - [arm64] EDAC/thunderx: Fix possible out-of-bounds string access
+ - [powerpc*] add crtsavres.o to always-y instead of extra-y
+ - [powerpc*] Remove in_kernel_text()
+ - [powerpc*] 44x: select I2C for CURRITUCK
+ - [powerpc*] pseries/memhotplug: Quieten some DLPAR operations
+ - [powerpc*] pseries/memhp: Fix access beyond end of drmem array
+ - [powerpc*] powernv: Add a null pointer check to scom_debug_init_one()
+ - [powerpc*] powernv: Add a null pointer check in opal_event_init()
+ - [powerpc*] powernv: Add a null pointer check in opal_powercap_init()
+ - [powerpc*] imc-pmu: Add a null pointer check in update_events_in_group()
+ - spi: spi-zynqmp-gqspi: fix driver kconfig dependencies
+ - ACPI: video: check for error while searching for backlight device parent
+ - [amd64] ACPI: LPIT: Avoid u32 multiplication overflow
+ - of: property: define of_property_read_u{8,16,32,64}_array()
+ unconditionally
+ - of: Add of_property_present() helper
+ - cpufreq: Use of_property_present() for testing DT property presence
+ - cpufreq: scmi: process the result of devm_of_clk_add_hw_provider()
+ - net: netlabel: Fix kerneldoc warnings
+ - netlabel: remove unused parameter in netlbl_netlink_auditinfo()
+ - calipso: fix memory leak in netlbl_calipso_add_pass()
+ - efivarfs: force RO when remounting if SetVariable is not supported
+ - ACPI: extlog: Clear Extended Error Log status when RAS_CEC handled the
+ error
+ - mtd: Fix gluebi NULL pointer dereference caused by ftl notifier
+ - selinux: Fix error priority for bind with AF_UNSPEC on PF_INET6 socket
+ - virtio_crypto: Introduce VIRTIO_CRYPTO_NOSPC
+ - virtio-crypto: introduce akcipher service
+ - virtio-crypto: implement RSA algorithm
+ - virtio-crypto: change code style
+ - virtio-crypto: use private buffer for control request
+ - virtio-crypto: wait ctrl queue instead of busy polling
+ - crypto: virtio - Handle dataq logic with tasklet
+ - [x86] crypto: ccp - fix memleak in ccp_init_dm_workarea
+ - crypto: af_alg - Disallow multiple in-flight AIO requests
+ - pstore: ram_core: fix possible overflow in persistent_ram_init_ecc()
+ - fs: indicate request originates from old mount API
+ - Revert "gfs2: Don't reject a supposedly full bitmap if we have blocks
+ reserved"
+ - gfs2: Also reflect single-block allocations in rgd->rd_extfail_pt
+ - gfs2: Fix kernel NULL pointer dereference in gfs2_rgrp_dump
+ - crypto: virtio - Wait for tasklet to complete on device remove
+ - crypto: scomp - fix req->dst buffer overflow
+ - blocklayoutdriver: Fix reference leak of pnfs_device_node
+ - NFSv4.1/pnfs: Ensure we handle the error NFS4ERR_RETURNCONFLICT
+ - wifi: rtw88: fix RX filter in FIF_ALLMULTI flag
+ - bpf, lpm: Fix check prefixlen before walking trie
+ - bpf: Add crosstask check to __bpf_get_stack
+ - wifi: ath11k: Defer on rproc_get failure
+ - wifi: libertas: stop selecting wext
+ - ncsi: internal.h: Fix a spello
+ - [armhf] net/ncsi: Fix netlink major/minor version numbers
+ - [arm64] firmware: meson_sm: populate platform devices from sm device tree
+ data
+ - wifi: rtlwifi: rtl8821ae: phy: fix an undefined bitwise shift behavior
+ - bpf: fix check for attempt to corrupt spilled pointer
+ - scsi: fnic: Return error if vmalloc() failed
+ - [arm64] dts: qcom: qrb5165-rb5: correct LED panic indicator
+ - [arm64] dts: qcom: sdm845-db845c: correct LED panic indicator
+ - bpf: Fix verification of indirect var-off stack access
+ - [arm64] scsi: hisi_sas: Replace with standard error code return value
+ - virtio/vsock: fix logic which reduces credit update messages
+ - dma-mapping: Add dma_release_coherent_memory to DMA API
+ - dma-mapping: clear dev->dma_mem to NULL after freeing it
+ - wifi: rtlwifi: add calculate_bit_shift()
+ - wifi: rtlwifi: rtl8188ee: phy: using calculate_bit_shift()
+ - wifi: rtlwifi: rtl8192c: using calculate_bit_shift()
+ - wifi: rtlwifi: rtl8192cu: using calculate_bit_shift()
+ - wifi: rtlwifi: rtl8192ce: using calculate_bit_shift()
+ - rtlwifi: rtl8192de: make arrays static const, makes object smaller
+ - wifi: rtlwifi: rtl8192de: using calculate_bit_shift()
+ - wifi: rtlwifi: rtl8192ee: using calculate_bit_shift()
+ - wifi: rtlwifi: rtl8192se: using calculate_bit_shift()
+ - netfilter: nf_tables: mark newset as dead on transaction abort
+ - Bluetooth: Fix bogus check for re-auth no supported with non-ssp
+ - Bluetooth: btmtkuart: fix recv_buf() return value
+ - ip6_tunnel: fix NEXTHDR_FRAGMENT handling in ip6_tnl_parse_tlv_enc_lim()
+ - RDMA/usnic: Silence uninitialized symbol smatch warnings
+ - rcu: Create an unrcu_pointer() to remove __rcu from a pointer
+ - drm/nouveau/fence:: fix warning directly dereferencing a rcu pointer
+ - drm/bridge: tpd12s015: Drop buggy __exit annotation for remove function
+ - media: pvrusb2: fix use after free on context disconnection
+ - drm/bridge: Fix typo in post_disable() description
+ - f2fs: fix to avoid dirent corruption
+ - drm/radeon/r600_cs: Fix possible int overflows in r600_cs_check_reg()
+ - drm/radeon/r100: Fix integer overflow issues in r100_cs_track_check()
+ - drm/radeon: check return value of radeon_ring_lock()
+ - [arm64] drm/msm/mdp4: flush vblank event on disable
+ - [arm64] drm/msm/dsi: Use pm_runtime_resume_and_get to prevent refcnt leaks
+ - drm/drv: propagate errors from drm_modeset_register_all()
+ - drm/radeon: check the alloc_workqueue return value in radeon_crtc_init()
+ - drm/radeon/dpm: fix a memleak in sumo_parse_power_table
+ - drm/radeon/trinity_dpm: fix a memleak in trinity_parse_power_table
+ - drm/bridge: tc358767: Fix return value on error case
+ - media: cx231xx: fix a memleak in cx231xx_init_isoc
+ - f2fs: fix to check compress file in f2fs_move_file_range()
+ - f2fs: fix to update iostat correctly in f2fs_filemap_fault()
+ - media: dvbdev: drop refcount on error path in dvb_device_open()
+ - media: dvb-frontends: m88ds3103: Fix a memory leak in an error handling
+ path of m88ds3103_probe()
+ - drm/amdgpu/debugfs: fix error code when smc register accessors are NULL
+ - drm/amd/pm: fix a double-free in si_dpm_init
+ - drivers/amd/pm: fix a use-after-free in kv_parse_power_table
+ - gpu/drm/radeon: fix two memleaks in radeon_vm_init
+ - dt-bindings: clock: Update the videocc resets for sm8150
+ - [arm64] drivers: clk: zynqmp: calculate closest mux rate
+ - [arm64] clk: zynqmp: make bestdiv unsigned
+ - [arm64] clk: zynqmp: Add a check for NULL pointer
+ - [arm64] drivers: clk: zynqmp: update divider round rate logic
+ - watchdog: set cdev owner before adding
+ - watchdog/hpwdt: Only claim UNKNOWN NMI if from iLO
+ - watchdog: bcm2835_wdt: Fix WDIOC_SETTIMEOUT handling
+ - watchdog: rti_wdt: Drop runtime pm reference count when watchdog is unused
+ - clk: fixed-rate: add devm_clk_hw_register_fixed_rate
+ - clk: fixed-rate: fix clk_hw_register_fixed_rate_with_accuracy_parent_hw
+ - IB/iser: Prevent invalidating wrong MR
+ - of: Fix double free in of_parse_phandle_with_args_map
+ - of: unittest: Fix of_count_phandle_with_args() expected value message
+ - keys, dns: Fix size check of V1 server-list header
+ - [arm*] binder: fix async space check for 0-sized buffers
+ - [arm*] binder: fix unused alloc->free_async_space
+ - [arm*] binder: fix use-after-free in shinker's callback
+ - Input: atkbd - use ab83 as id when skipping the getid command
+ - dma-mapping: Fix build error unused-value
+ - virtio-crypto: fix memory-leak
+ - virtio-crypto: fix memory leak in
+ virtio_crypto_alg_skcipher_close_session()
+ - kprobes: Fix to handle forcibly unoptimized kprobes on freeing_list
+ - xen-netback: don't produce zero-size SKB frags (CVE-2023-46838)
+ - [arm*] binder: fix race between mmput() and do_exit()
+ - tick-sched: Fix idle and iowait sleeptime accounting vs CPU hotplug
+ - [armhf] usb: phy: mxs: remove CONFIG_USB_OTG condition for
+ mxs_phy_is_otg_host()
+ - [arm64,armhf] usb: dwc: ep0: Update request status in
+ dwc3_ep0_stall_restart
+ - [arm64,armhf] Revert "usb: dwc3: Soft reset phy on probe for host"
+ - [arm64,armhf] Revert "usb: dwc3: don't reset device side if dwc3 was
+ configured as host-only"
+ - [arm64,armhf] usb: chipidea: wait controller resume finished for wakeup
+ irq
+ - Revert "usb: typec: class: fix typec_altmode_put_partner to put plugs"
+ - usb: typec: class: fix typec_altmode_put_partner to put plugs
+ - usb: mon: Fix atomicity violation in mon_bin_vma_fault
+ - [arm64,armhf] serial: imx: Ensure that imx_uart_rs485_config() is called
+ with enabled clock
+ - ALSA: oxygen: Fix right channel of capture volume mixer
+ - ALSA: hda/relatek: Enable Mute LED on HP Laptop 15s-fq2xxx
+ - fbdev: flush deferred work in fb_deferred_io_fsync()
+ - io_uring/rw: ensure io->bytes_done is always initialized
+ - rootfs: Fix support for rootfstype= when root= is given
+ - Bluetooth: Fix atomicity violation in {min,max}_key_size_set
+ - [arm64,armhf] iommu/arm-smmu-qcom: Add missing GMU entry to match table
+ - wifi: rtlwifi: Remove bogus and dangerous ASPM disable/enable code
+ - wifi: rtlwifi: Convert LNKCTL change to PCIe cap RMW accessors
+ - wifi: mwifiex: configure BSSID consistently when starting AP
+ - [x86] kvm: Do not try to disable kvmclock if it was not enabled
+ - [arm64] KVM: arm64: vgic-v4: Restore pending state on host userspace write
+ - [arm64] KVM: arm64: vgic-its: Avoid potential UAF in LPI translation cache
+ - iio: adc: ad7091r: Pass iio_dev to event handler
+ - HID: wacom: Correct behavior when processing some confidence == false
+ touches
+ - mfd: syscon: Fix null pointer dereference in of_syscon_register()
+ - [mips*] dmi: Fix early remap on MIPS32
+ - [mips*] Fix incorrect max_low_pfn adjustment
+ - [arm64] power: supply: cw2015: correct time_to_empty units in sysfs
+ - libapi: Add missing linux/types.h header to get the __u64 type on io.h
+ - acpi: property: Let args be NULL in __acpi_node_get_property_reference
+ - software node: Let args be NULL in software_node_get_reference_args
+ - [arm64,armhf] serial: imx: fix tx statemachine deadlock
+ - iio: adc: ad9467: Benefit from devm_clk_get_enabled() to simplify
+ - iio: adc: ad9467: fix reset gpio handling
+ - iio: adc: ad9467: don't ignore error codes
+ - iio: adc: ad9467: fix scale setting
+ - perf genelf: Set ELF program header addresses properly
+ - tty: change tty_write_lock()'s ndelay parameter to bool
+ - tty: early return from send_break() on TTY_DRIVER_HARDWARE_BREAK
+ - tty: don't check for signal_pending() in send_break()
+ - tty: use 'if' in send_break() instead of 'goto'
+ - usb: cdc-acm: return correct error code on unsupported break
+ - nvmet-tcp: Fix a kernel panic when host sends an invalid H2C PDU length
+ - nvmet-tcp: fix a crash in nvmet_req_complete()
+ - perf env: Avoid recursively taking env->bpf_progs.lock
+ - apparmor: avoid crash when parsed profile name is empty
+ - [arm64,armhf] serial: imx: Correct clock error message in function probe()
+ - nvmet-tcp: Fix the H2C expected PDU len calculation
+ - [s390x] pci: fix max size calculation in zpci_memcpy_toio()
+ - net: phy: micrel: populate .soft_reset for KSZ9131
+ - netfilter: nf_tables: do not allow mismatch field size and set key length
+ - netfilter: nf_tables: skip dead set elements in netlink dump
+ - netfilter: nf_tables: reject NFT_SET_CONCAT with not field length
+ description
+ - ipvs: avoid stat macros calls from preemptible context
+ - kdb: Fix a potential buffer overflow in kdb_local()
+ - ethtool: netlink: Add missing ethnl_ops_begin/complete
+ - [armhf] i2c: s3c24xx: fix read transfers in polling mode
+ - [armhf] i2c: s3c24xx: fix transferring more than one message in polling
+ mode
+ - [arm64] dts: armada-3720-turris-mox: set irq type for RTC
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 28
+ * stddef: Introduce DECLARE_FLEX_ARRAY() helper
+ * smb3: Replace smb2pdu 1-element arrays with flex-arrays
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 31 Jan 2024 21:01:59 +0100
+
+linux (5.10.205-2) bullseye-security; urgency=high
+
+ * Revert "MIPS: Loongson64: Enable DMA noncoherent support" (fixes FTBFS)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 31 Dec 2023 16:46:35 +0100
+
+linux (5.10.205-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.198
+ - NFS: Use the correct commit info in nfs_join_page_group()
+ - NFS/pNFS: Report EINVAL errors from connect() to the server
+ - SUNRPC: Mark the cred for revalidation if the server rejects it
+ - tracing: Increase trace array ref count on enable and filter files
+ - ata: ahci: Drop pointless VPRINTK() calls and convert the remaining ones
+ - ata: libahci: clear pending interrupt status
+ - ext4: remove the 'group' parameter of ext4_trim_extent
+ - ext4: add new helper interface ext4_try_to_trim_range()
+ - ext4: scope ret locally in ext4_try_to_trim_range()
+ - ext4: change s_last_trim_minblks type to unsigned long
+ - ext4: mark group as trimmed only if it was fully scanned
+ - ext4: replace the traditional ternary conditional operator with with
+ max()/min()
+ - ext4: move setting of trimmed bit into ext4_try_to_trim_range()
+ - ext4: do not let fstrim block system suspend
+ - tracing: Have event inject files inc the trace array ref count
+ - bpf: Avoid deadlock when using queue and stack maps from NMI
+ - i40e: Fix VF VLAN offloading when port VLAN is configured
+ - [powerpc*] perf/hv-24x7: Update domain value check
+ - dccp: fix dccp_v4_err()/dccp_v6_err() again
+ - [x86] platform/x86: intel_scu_ipc: Check status after timeout in
+ busy_loop()
+ - [x86] platform/x86: intel_scu_ipc: Check status upon timeout in
+ ipc_wait_for_interrupt()
+ - [x86] platform/x86: intel_scu_ipc: Don't override scu in
+ intel_scu_ipc_dev_simple_command()
+ - [x86] platform/x86: intel_scu_ipc: Fail IPC send if still busy
+ - [x86] srso: Fix srso_show_state() side effect
+ - [x86] srso: Fix SBPB enablement for spec_rstack_overflow=off
+ - [arm64] net: hns3: only enable unicast promisc when mac table full
+ - [arm64] net: hns3: add 5ms delay before clear firmware reset irq source
+ - net: bridge: use DEV_STATS_INC()
+ - team: fix null-ptr-deref when team device type is changed
+ - seqlock: avoid -Wshadow warnings
+ - seqlock: Rename __seqprop() users
+ - seqlock: Prefix internal seqcount_t-only macros with a "do_"
+ - locking/seqlock: Do the lockdep annotation before locking in
+ do_write_seqcount_begin_nested()
+ - bnxt_en: Flush XDP for bnxt_poll_nitroa0()'s NAPI
+ - net: rds: Fix possible NULL-pointer dereference
+ - gpio: tb10x: Fix an error handling path in tb10x_gpio_probe()
+ - i2c: mux: demux-pinctrl: check the return value of devm_kstrdup()
+ - Input: i8042 - rename i8042-x86ia64io.h to i8042-acpipnpio.h
+ - Input: i8042 - add quirk for TUXEDO Gemini 17 Gen1/Clevo PD70PN
+ - [arm64] media: venus: core: Add io base variables for each block
+ - [arm64] media: venus: hfi,pm,firmware: Convert to block relative
+ addressing
+ - [arm64] media: venus: hfi: Define additional 6xx registers
+ - [arm64] media: venus: core: Add differentiator IS_V6(core)
+ - [arm64] media: venus: hfi: Add a 6xx boot logic
+ - [arm64] media: venus: hfi_venus: Write to VIDC_CTRL_INIT after unmasking
+ interrupts
+ - netfilter: use actual socket sk for REJECT action
+ - netfilter: nft_exthdr: Support SCTP chunks
+ - netfilter: nf_tables: add and use nft_sk helper
+ - netfilter: nf_tables: add and use nft_thoff helper
+ - netfilter: nft_exthdr: break evaluation if setting TCP option fails
+ - netfilter: exthdr: add support for tcp option removal
+ - netfilter: nft_exthdr: Fix non-linear header modification
+ - ata: libata: Rename link flag ATA_LFLAG_NO_DB_DELAY
+ - ata: ahci: Add support for AMD A85 FCH (Hudson D4)
+ - ata: ahci: Rename board_ahci_mobile
+ - ata: ahci: Add Elkhart Lake AHCI controller
+ - btrfs: reset destination buffer when read_extent_buffer() gets invalid
+ range
+ - [armhf] bus: ti-sysc: Use fsleep() instead of usleep_range() in
+ sysc_reset()
+ - [armhf] bus: ti-sysc: Fix missing AM35xx SoC matching
+ - [armhf] ARM: dts: omap: correct indentation
+ - [armhf] bus: ti-sysc: Fix SYSC_QUIRK_SWSUP_SIDLE_ACT handling for uart
+ wake-up
+ - gpio: pmic-eic-sprd: Add can_sleep flag for PMIC EIC chip
+ - i2c: npcm7xx: Fix callback completion ordering
+ - scsi: qedf: Add synchronization between I/O completions and abort
+ - ring-buffer: Avoid softlockup in ring_buffer_resize()
+ - ring-buffer: Do not attempt to read past "commit"
+ - scsi: pm80xx: Use phy-specific SAS address when sending PHY_START command
+ - scsi: pm80xx: Avoid leaking tags when processing
+ OPC_INB_SET_CONTROLLER_CONFIG command
+ - ata: libata-eh: do not clear ATA_PFLAG_EH_PENDING in ata_eh_reset()
+ - bpf: Clarify error expectations from bpf_clone_redirect
+ - media: vb2: frame_vector.c: replace WARN_ONCE with a comment
+ - [powerpc*] watchpoints: Disable preemption in thread_change_pc()
+ - [armhf] ncsi: Propagate carrier gain/loss events to the NCSI controller
+ - sched/cpuacct: Fix user/system in shown cpuacct.usage*
+ - sched/cpuacct: Fix charge percpu cpuusage
+ - sched/cpuacct: Optimize away RCU read lock
+ - cgroup: Fix suspicious rcu_dereference_check() usage warning
+ - ACPI: Check StorageD3Enable _DSD property in ACPI code
+ - nvme-pci: factor the iod mempool creation into a helper
+ - nvme-pci: factor out a nvme_pci_alloc_dev helper
+ - nvme-pci: do not set the NUMA node of device if it has none
+ - watchdog: iTCO_wdt: No need to stop the timer in probe
+ - watchdog: iTCO_wdt: Set NO_REBOOT if the watchdog is not already running
+ - netfilter: nft_exthdr: Search chunks in SCTP packets only
+ - netfilter: nft_exthdr: Fix for unsafe packet data read
+ - nvme-pci: always return an ERR_PTR from nvme_pci_alloc_dev
+ - Revert "tty: n_gsm: fix UAF in gsm_cleanup_mux"
+ - serial: 8250_port: Check IRQ data before use
+ - nilfs2: fix potential use after free in nilfs_gccache_submit_read_data()
+ - netfilter: nf_tables: disallow rule removal from chain binding
+ (CVE-2023-5197)
+ - ALSA: hda: Disable power save for solving pop issue on Lenovo ThinkCentre
+ M70q
+ - ata: libata-scsi: ignore reserved bits for REPORT SUPPORTED OPERATION
+ CODES
+ - i2c: i801: unregister tco_pdev in i801_probe() error path
+ - Revert "SUNRPC dont update timeout value on connection reset"
+ - proc: nommu: /proc/<pid>/maps: release mmap read lock
+ - ring-buffer: Update "shortest_full" in polling
+ - btrfs: properly report 0 avail for very full file systems
+ - bpf: Fix BTF_ID symbol generation collision
+ - bpf: Fix BTF_ID symbol generation collision in tools/
+ - net: thunderbolt: Fix TCPv6 GSO checksum calculation
+ - ata: libata-core: Fix ata_port_request_pm() locking
+ - ata: libata-core: Fix port and device removal
+ - ata: libata-core: Do not register PM operations for SAS ports
+ - ata: libata-sata: increase PMP SRST timeout to 10s
+ - fs: binfmt_elf_efpic: fix personality for ELF-FDPIC
+ - NFS: Cleanup unused rpc_clnt variable
+ - NFS: rename nfs_client_kset to nfs_kset
+ - NFSv4: Fix a state manager thread deadlock regression
+ - ring-buffer: remove obsolete comment for free_buffer_page()
+ - ring-buffer: Fix bytes info in per_cpu buffer stats
+ - rbd: move rbd_dev_refresh() definition
+ - rbd: decouple header read-in from updating rbd_dev->header
+ - rbd: decouple parent info read-in from updating rbd_dev
+ - rbd: take header_rwsem in rbd_dev_refresh() only when updating
+ - block: fix use-after-free of q->q_usage_counter
+ - Revert "clk: imx: pll14xx: dynamically configure PLL for
+ 393216000/361267200Hz"
+ - Revert "PCI: qcom: Disable write access to read only registers for IP
+ v2.3.3"
+ - scsi: zfcp: Fix a double put in zfcp_port_enqueue()
+ - wifi: mwifiex: Fix tlv_buf_left calculation
+ - net: replace calls to sock->ops->connect() with kernel_connect()
+ - net: prevent rewrite of msg_name in sock_sendmsg()
+ - [arm64] Add Cortex-A520 CPU part definition
+ - ubi: Refuse attaching if mtd's erasesize is 0
+ - wifi: iwlwifi: dbg_ini: fix structure packing
+ - wifi: mwifiex: Fix oob check condition in mwifiex_process_rx_packet
+ - bpf: Fix tr dereferencing
+ - drivers/net: process the result of hdlc_open() and add call of
+ hdlc_close() in uhdlc_close()
+ - wifi: mt76: mt76x02: fix MT76x0 external LNA gain handling
+ - regmap: rbtree: Fix wrong register marked as in-cache when creating new
+ node
+ - ima: Finish deprecation of IMA_TRUSTED_KEYRING Kconfig
+ - scsi: target: core: Fix deadlock due to recursive locking
+ - ima: rework CONFIG_IMA dependency block
+ - NFSv4: Fix a nfs4_state_manager() race
+ - modpost: add missing else to the "of" check
+ - net: fix possible store tearing in neigh_periodic_work()
+ - ipv4, ipv6: Fix handling of transhdrlen in __ip{,6}_append_data()
+ - [arm64,armhf] net: dsa: mv88e6xxx: Avoid EEPROM timeout when EEPROM is
+ absent
+ - net: usb: smsc75xx: Fix uninit-value access in __smsc75xx_read_reg
+ - net: nfc: llcp: Add lock when modifying device list
+ - net: ethernet: ti: am65-cpsw: Fix error code in
+ am65_cpsw_nuss_init_tx_chns()
+ - netfilter: handle the connecting collision properly in
+ nf_conntrack_proto_sctp
+ - netfilter: nf_tables: nft_set_rbtree: fix spurious insertion failure
+ - [armhf] net: stmmac: dwmac-stm32: fix resume on STM32 MCU
+ - tipc: fix a potential deadlock on &tx->lock
+ - tcp: fix quick-ack counting to count actual ACKs of new data
+ - tcp: fix delayed ACKs for MSS boundary condition
+ - sctp: update transport state when processing a dupcook packet
+ - sctp: update hb timer immediately after users change hb_interval
+ - cpupower: add Makefile dependencies for install targets
+ - dm zoned: free dmz->ddev array in dmz_put_zoned_devices
+ - RDMA/core: Require admin capabilities to set system parameters
+ - of: dynamic: Fix potential memory leak in of_changeset_action()
+ - IB/mlx4: Fix the size of a buffer in add_port_entries()
+ - [armhf] gpio: aspeed: fix the GPIO number passed to
+ pinctrl_gpio_set_config()
+ - RDMA/cma: Initialize ib_sa_multicast structure to 0 when join
+ - RDMA/cma: Fix truncation compilation warning in make_cma_ports
+ - RDMA/uverbs: Fix typo of sizeof argument
+ - RDMA/siw: Fix connection failure handling
+ - RDMA/mlx5: Fix NULL string error
+ - netfilter: nf_tables: fix kdoc warnings after gc rework
+ - netfilter: nftables: exthdr: fix 4-byte stack OOB write
+ - xen/events: replace evtchn_rwlock with RCU (CVE-2023-34324)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.199
+ - RDMA/srp: Make struct scsi_cmnd and struct srp_request adjacent
+ - RDMA/srp: Do not call scsi_done() from srp_abort()
+ - RDMA/cxgb4: Check skb value for failure to allocate
+ - [arm64] perf/arm-cmn: Fix the unhandled overflow status of counter 4 to 7
+ - HID: logitech-hidpp: Fix kernel crash on receiver USB disconnect
+ - quota: Fix slow quotaoff
+ - net: prevent address rewrite in kernel_bind()
+ - [arm64] drm/msm/dp: do not reinitialize phy unless retry during link
+ training
+ - [arm64] drm/msm/dsi: skip the wait for video mode done if not applicable
+ - [arm64] drm/msm/dpu: change _dpu_plane_calc_bw() to use u64 to avoid
+ overflow
+ - xen-netback: use default TX queue size for vifs
+ - [x86] drm/vmwgfx: fix typo of sizeof argument
+ - net: macsec: indicate next pn update when offloading
+ - net: phy: mscc: macsec: reject PN update requests
+ - ixgbe: fix crash with empty VF macvlan list
+ - net: nfc: fix races in nfc_llcp_sock_get() and nfc_llcp_sock_get_sn()
+ - nfc: nci: assert requested protocol is valid
+ - workqueue: Override implicit ordered attribute in
+ workqueue_apply_unbound_cpumask()
+ - net: add sysctl accept_ra_min_rtr_lft
+ - net: change accept_ra_min_rtr_lft to affect all RA lifetimes
+ - net: release reference to inet6_dev pointer
+ - [armhf] dmaengine: stm32-mdma: abort resume if no ongoing transfer
+ - usb: xhci: xhci-ring: Use sysdev for mapping bounce buffer
+ - net: usb: dm9601: fix uninitialized variable use in dm9601_mdio_read
+ - [arm64,armhf] usb: dwc3: Soft reset phy on probe for host
+ - usb: musb: Get the musb_qh poniter after musb_giveback
+ - usb: musb: Modify the "HWVers" register address
+ - iio: pressure: bmp280: Fix NULL pointer exception
+ - iio: pressure: dps310: Adjust Timeout Settings
+ - iio: pressure: ms5611: ms5611_prom_is_valid false negative bug
+ - [x86] cpu: Fix AMD erratum #1485 on Zen4-based CPUs
+ - mcb: remove is_added flag from mcb_device struct
+ - [x86] thunderbolt: Check that lane 1 is in CL0 before enabling lane
+ bonding
+ - libceph: use kernel_connect()
+ - ceph: fix incorrect revoked caps assert in ceph_fill_file_size()
+ - ceph: fix type promotion bug on 32bit systems
+ - Input: powermate - fix use-after-free in powermate_config_complete
+ - Input: psmouse - fix fast_reconnect function for PS/2 mode
+ - Input: xpad - add PXN V900 support
+ - Input: i8042 - add Fujitsu Lifebook E5411 to i8042 quirk table
+ - Input: goodix - ensure int GPIO is in input for gpio_count == 1 &&
+ gpio_int_idx == 0 case
+ - tee: amdtee: fix use-after-free vulnerability in amdtee_close_session
+ - cgroup: Remove duplicates in cgroup v1 tasks file
+ - pinctrl: avoid unsafe code pattern in find_pinctrl()
+ - counter: microchip-tcb-capture: Fix the use of internal GCLK logic
+ - usb: gadget: udc-xilinx: replace memcpy with memcpy_toio
+ - usb: gadget: ncm: Handle decoding of multiple NTB's in unwrap call
+ - [powerpc*] 8xx: Fix pte_access_permitted() for PAGE_NONE
+ - [powerpc*] 64e: Fix wrong test in __ptep_test_and_clear_young()
+ - [x86] alternatives: Disable KASAN in apply_alternatives()
+ - [arm64] report EL1 UNDEFs better
+ - [arm64] die(): pass 'err' as long
+ - [arm64] consistently pass ESR_ELx to die()
+ - [arm64] rework FPAC exception handling
+ - [arm64] rework BTI exception handling
+ - [arm64] allow kprobes on EL0 handlers
+ - [arm64] split EL0/EL1 UNDEF handlers
+ - [arm64] factor out EL1 SSBS emulation hook
+ - [arm64] factor insn read out of call_undef_hook()
+ - [arm64] rework EL0 MRS emulation
+ - [arm64] armv8_deprecated: fold ops into insn_emulation
+ - [arm64] armv8_deprecated move emulation functions
+ - [arm64] armv8_deprecated: move aarch32 helper earlier
+ - [arm64] armv8_deprecated: rework deprected instruction handling
+ - [arm64] armv8_deprecated: fix unused-function error
+ - RDMA/srp: Set scmnd->result only when scmnd is not NULL
+ - RDMA/srp: Fix srp_abort()
+ - ravb: Fix use-after-free issue in ravb_tx_timeout_work() (CVE-2023-35827)
+ - dev_forward_skb: do not scrub skb mark within the same name space
+ - lib/Kconfig.debug: do not enable DEBUG_PREEMPT by default
+ - mm/memory_hotplug: rate limit page migration warnings
+ - Documentation: sysctl: align cells in second content column
+ - usb: hub: Guard against accesses to uninitialized BOS descriptors
+ - Bluetooth: hci_event: Ignore NULL link key
+ - Bluetooth: Reject connection with the device which has same BD_ADDR
+ - Bluetooth: Fix a refcnt underflow problem for hci_conn
+ - Bluetooth: vhci: Fix race when opening vhci device
+ - Bluetooth: hci_event: Fix coding style
+ - Bluetooth: avoid memcmp() out of bounds warning
+ - ice: fix over-shifted variable
+ - ice: reset first in crash dump kernels
+ - nfc: nci: fix possible NULL pointer dereference in send_acknowledge()
+ - regmap: fix NULL deref on lookup
+ - [x86] KVM: x86: Mask LVTPC when handling a PMI
+ - [x86] sev: Disable MMIO emulation from user mode (CVE-2023-46813)
+ - [x86] sev: Check IOBM for IOIO exceptions from user-space (CVE-2023-46813)
+ - [x86] sev: Check for user-space IOIO pointing to kernel space
+ (CVE-2023-46813)
+ - tcp: check mptcp-level constraints for backlog coalescing
+ - netfilter: nft_payload: fix wrong mac header matching
+ - nvmet-tcp: Fix a possible UAF in queue intialization setup (CVE-2023-5178)
+ - [x86] drm/i915: Retry gtt fault when out of fence registers
+ - qed: fix LL2 RX buffer allocation
+ - xfrm: fix a data-race in xfrm_gen_index()
+ - xfrm: interface: use DEV_STATS_INC()
+ - net: ipv4: fix return value check in esp_remove_trailer
+ - net: ipv6: fix return value check in esp_remove_trailer
+ - net: rfkill: gpio: prevent value glitch during probe
+ - tcp: fix excessive TLP and RACK timeouts from HZ rounding
+ - tcp: tsq: relax tcp_small_queue_check() when rtx queue contains a single
+ skb
+ - tun: prevent negative ifindex
+ - ipv4: fib: annotate races around nh->nh_saddr_genid and nh->nh_saddr
+ - net: usb: smsc95xx: Fix an error code in smsc95xx_reset()
+ - i40e: prevent crash on probe if hw registers have invalid values
+ - net: dsa: bcm_sf2: Fix possible memory leak in bcm_sf2_mdio_register()
+ - net/sched: sch_hfsc: upgrade 'rt' to 'sc' when it becomes a inner curve
+ - netfilter: nft_set_rbtree: .deactivate fails if element has expired
+ - net: pktgen: Fix interface flags printing
+ - [x86] thunderbolt: Workaround an IOMMU fault on certain systems with Intel
+ Maple Ridge
+ - resource: Add irqresource_disabled()
+ - ACPI: Drop acpi_dev_irqresource_disabled()
+ - ACPI: resources: Add DMI-based legacy IRQ override quirk
+ - ACPI: resource: Skip IRQ override on Asus Vivobook K3402ZA/K3502ZA
+ - ACPI: resource: Add ASUS model S5402ZA to quirks
+ - ACPI: resource: Skip IRQ override on Asus Vivobook S5602ZA
+ - ACPI: resource: Add Asus ExpertBook B2502 to Asus quirks
+ - ACPI: resource: Skip IRQ override on Asus Expertbook B2402CBA
+ - ACPI: resource: Skip IRQ override on ASUS ExpertBook B1502CBA
+ - ACPI: resource: Skip IRQ override on ASUS ExpertBook B1402CBA
+ - usb: core: Track SuperSpeed Plus GenXxY
+ - xhci: cleanup xhci_hub_control port references
+ - xhci: move port specific items such as state completions to port structure
+ - xhci: rename resume_done to resume_timestamp
+ - xhci: clear usb2 resume related variables in one place.
+ - xhci: decouple usb2 port resume and get_port_status request handling
+ - xhci: track port suspend state correctly in unsuccessful resume cases
+ - serial: 8250: omap: Fix imprecise external abort for omap_8250_pm()
+ - serial: 8250_omap: Fix errors with no_console_suspend
+ - drm/amd/display: only check available pipe to disable vbios mode.
+ - drm/amd/display: Don't set dpms_off for seamless boot
+ - drm/connector: Give connector sysfs devices there own device_type
+ - drm/connector: Add a fwnode pointer to drm_connector and register with
+ ACPI (v2)
+ - drm/connector: Add drm_connector_find_by_fwnode() function (v3)
+ - drm/connector: Add support for out-of-band hotplug notification (v3)
+ - usb: typec: altmodes/displayport: Notify drm subsys of hotplug events
+ - usb: typec: altmodes/displayport: Signal hpd low when exiting mode
+ - ARM: dts: ti: omap: Fix noisy serial with overrun-throttle-ms for mapphone
+ - btrfs: return -EUCLEAN for delayed tree ref with a ref count not equals to
+ 1
+ - btrfs: initialize start_slot in btrfs_log_prealloc_extents
+ - i2c: mux: Avoid potential false error message in i2c_mux_add_adapter
+ - overlayfs: set ctime when setting mtime and atime
+ - gpio: timberdale: Fix potential deadlock on &tgpio->lock
+ - ata: libata-eh: Fix compilation warning in ata_eh_link_report()
+ - tracing: relax trace_event_eval_update() execution with cond_resched()
+ - HID: holtek: fix slab-out-of-bounds Write in holtek_kbd_input_event
+ - Bluetooth: Avoid redundant authentication
+ - Bluetooth: hci_core: Fix build warnings
+ - wifi: cfg80211: Fix 6GHz scan configuration
+ - wifi: mac80211: allow transmitting EAPOL frames with tainted key
+ - wifi: cfg80211: avoid leaking stack data into trace
+ - regulator/core: Revert "fix kobject release warning and memory leak in
+ regulator_register()"
+ - sky2: Make sure there is at least one frag_addr available
+ - ipv4/fib: send notify when delete source address routes
+ - drm: panel-orientation-quirks: Add quirk for One Mix 2S
+ - btrfs: fix some -Wmaybe-uninitialized warnings in ioctl.c
+ - HID: multitouch: Add required quirk for Synaptics 0xcd7e device
+ - [x86] platform/x86: touchscreen_dmi: Add info for the Positivo C4128B
+ - net/mlx5: Handle fw tracer change ownership event based on MTRC
+ - Bluetooth: hci_event: Fix using memcmp when comparing keys
+ - mtd: physmap-core: Restore map_rom fallback
+ - mmc: core: sdio: hold retuning if sdio in 1-bit mode
+ - mmc: core: Capture correct oemid-bits for eMMC cards
+ - Revert "pinctrl: avoid unsafe code pattern in find_pinctrl()"
+ - pNFS: Fix a hang in nfs4_evict_inode()
+ - ACPI: irq: Fix incorrect return value in acpi_register_gsi()
+ - nvme-pci: add BOGUS_NID for Intel 0a54 device
+ - nvme-rdma: do not try to stop unallocated queues
+ - USB: serial: option: add Telit LE910C4-WWX 0x1035 composition
+ - USB: serial: option: add entry for Sierra EM9191 with new firmware
+ - USB: serial: option: add Fibocom to DELL custom modem FM101R-GL
+ - perf: Disallow mis-matched inherited group reads (CVE-2023-5717)
+ - [s390x] pci: fix iommu bitmap allocation
+ - [x86] platform/x86: asus-wmi: Change ASUS_WMI_BRN_DOWN code from 0x20 to
+ 0x2e
+ - [x86] platform/x86: asus-wmi: Map 0x2a code, Ignore 0x2b and 0x2c events
+ - Bluetooth: hci_sock: fix slab oob read in create_monitor_event
+ - Bluetooth: hci_sock: Correctly bounds check and pad HCI_MON_NEW_INDEX name
+ - xfrm6: fix inet6_dev refcount underflow problem
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.200
+ - virtio_balloon: Fix endless deflation and inflation on arm64
+ - virtio-mmio: fix memory leak of vm_dev
+ - mm/page_alloc: correct start page when guard page debug is enabled
+ - drm/dp_mst: Fix NULL deref in get_mst_branch_device_by_guid_helper()
+ - r8169: fix the KCSAN reported data-race in rtl_tx while reading
+ TxDescArray[entry].opts1
+ - r8169: fix the KCSAN reported data race in rtl_rx while reading
+ desc->opts1
+ - treewide: Spelling fix in comment
+ - igb: Fix potential memory leak in igb_add_ethtool_nfc_entry
+ - neighbour: fix various data-races
+ - igc: Fix ambiguity in the ethtool advertising
+ - net: ieee802154: adf7242: Fix some potential buffer overflow in
+ adf7242_stats_show()
+ - net: usb: smsc95xx: Fix uninit-value access in smsc95xx_read_reg
+ - r8152: Increase USB control msg timeout to 5000ms as per spec
+ - r8152: Run the unload routine if we have errors during probe
+ - r8152: Cancel hw_phy_work if we have an error in probe
+ - r8152: Release firmware if we have an error in probe
+ - tcp: fix wrong RTO timeout when received SACK reneging
+ - gtp: uapi: fix GTPA_MAX
+ - gtp: fix fragmentation needed check with gso
+ - i40e: Fix wrong check for I40E_TXR_FLAGS_WB_ON_ITR
+ - [armhf] i2c: muxes: i2c-mux-pinctrl: Use of_get_i2c_adapter_by_node()
+ - [armhf] i2c: stm32f7: Fix PEC handling in case of SMBUS transfers
+ - [armhf] i2c: aspeed: Fix i2c bus hang in slave read
+ - tracing/kprobes: Fix the description of variable length arguments
+ - [arm64,armhf] nvmem: imx: correct nregs for i.MX6ULL
+ - [arm64,armhf] nvmem: imx: correct nregs for i.MX6SLL
+ - [arm64,armhf] nvmem: imx: correct nregs for i.MX6UL
+ - perf/core: Fix potential NULL deref
+ - clk: Sanitize possible_parent_show to Handle Return Value of
+ of_clk_get_parent_name
+ - [x86] i8259: Skip probing when ACPI/MADT advertises PCAT compatibility
+ - kobject: Fix slab-out-of-bounds in fill_kobj_path() (CVE-2023-45863)
+ - f2fs: fix to do sanity check on inode type during garbage collection
+ (CVE-2021-44879)
+ - [x86] mm: Simplify RESERVE_BRK()
+ - [x86] mm: Fix RESERVE_BRK() for older binutils
+ - ext4: add two helper functions extent_logical_end() and pa_logical_end()
+ - ext4: fix BUG in ext4_mb_new_inode_pa() due to overflow
+ - ext4: avoid overlapping preallocations due to overflow
+ - [x86] objtool/x86: add missing embedded_insn check
+ - driver: platform: Add helper for safer setting of driver_override
+ - [arm64] rpmsg: Constify local variable in field store macro
+ - rpmsg: Fix kfree() of static memory on setting driver_override
+ - rpmsg: Fix calling device_lock() on non-initialized device
+ - [arm64] rpmsg: glink: Release driver_override
+ - [arm64] rpmsg: Fix possible refcount leak in
+ rpmsg_register_device_override()
+ - [x86] Fix .brk attribute in linker script
+ - net: sched: cls_u32: Fix allocation size in u32_init()
+ - [armhf] irqchip/stm32-exti: add missing DT IRQ flag translation
+ - Input: synaptics-rmi4 - handle reset delay when using SMBus trsnsport
+ - fbdev: atyfb: only use ioremap_uc() on i386 and ia64
+ - netfilter: nfnetlink_log: silence bogus compiler warning
+ - ASoC: rt5650: fix the wrong result of key button
+ - [x86] fbdev: uvesafb: Call cn_del_callback() at the end of uvesafb_exit()
+ - scsi: mpt3sas: Fix in error path
+ - net: chelsio: cxgb4: add an error code check in t4_load_phy_fw
+ - [powerpc*] mm: Fix boot crash with FLATMEM
+ - can: isotp: change error format from decimal to symbolic error names
+ - can: isotp: add symbolic error message to isotp_module_init()
+ - can: isotp: Add error message if txqueuelen is too small
+ - can: isotp: set max PDU size to 64 kByte
+ - can: isotp: isotp_bind(): return -EINVAL on incorrect CAN ID formatting
+ - can: isotp: check CAN address family in isotp_bind()
+ - can: isotp: handle wait_event_interruptible() return values
+ - can: isotp: add local echo tx processing and tx without FC
+ - can: isotp: isotp_bind(): do not validate unused address information
+ - can: isotp: isotp_sendmsg(): fix TX state detection and wait behavior
+ - PCI: Prevent xHCI driver from claiming AMD VanGogh USB3 DRD device
+ - usb: storage: set 1.50 as the lower bcdDevice for older "Super Top"
+ compatibility
+ - usb: raw-gadget: properly handle interrupted requests
+ - tty: 8250: Remove UC-257 and UC-431
+ - tty: 8250: Add support for additional Brainboxes UC cards
+ - tty: 8250: Add support for Brainboxes UP cards
+ - tty: 8250: Add support for Intashield IS-100
+ - ALSA: hda: intel-dsp-config: Fix JSL Chromebook quirk detection
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.201
+ - [x86] iov_iter, x86: Be consistent about the __user tag on
+ copy_mc_to_user()
+ - sched/uclamp: Ignore (util == 0) optimization in feec() when p_util_max =
+ 0
+ - vfs: fix readahead(2) on block devices
+ - [x86] srso: Fix SBPB enablement for (possible) future fixed HW
+ - futex: Don't include process MM in futex key on no-MMU
+ - [x86] boot: Fix incorrect startup_gdt_descr.size
+ - pstore/platform: Add check for kstrdup
+ - genirq/matrix: Exclude managed interrupts in irq_matrix_allocated()
+ - i40e: fix potential memory leaks in i40e_remove()
+ - udp: add missing WRITE_ONCE() around up->encap_rcv
+ - tcp: call tcp_try_undo_recovery when an RTOd TFO SYNACK is ACKed
+ - overflow: Implement size_t saturating arithmetic helpers
+ - gve: Use size_add() in call to struct_size()
+ - tipc: Use size_add() in calls to struct_size()
+ - wifi: rtw88: debug: Fix the NULL vs IS_ERR() bug for debugfs_create_file()
+ - tcp_metrics: add missing barriers on delete
+ - tcp_metrics: properly set tp->snd_ssthresh in tcp_init_metrics()
+ - tcp_metrics: do not create an entry from tcp_init_metrics()
+ - wifi: rtlwifi: fix EDCA limit set by BT coexistence
+ - can: dev: can_restart(): don't crash kernel if carrier is OK
+ - can: dev: can_restart(): fix race condition between controller restart and
+ netif_carrier_on()
+ - PM / devfreq: rockchip-dfi: Make pmu regmap mandatory
+ - thermal: core: prevent potential string overflow
+ - r8169: use tp_to_dev instead of open code
+ - r8169: fix rare issue with broken rx after link-down on RTL8125
+ - tcp: fix cookie_init_timestamp() overflows
+ - ACPI: sysfs: Fix create_pnp_modalias() and create_of_modalias()
+ - ipv6: avoid atomic fragment on GSO packets
+ - net: add DEV_STATS_READ() helper
+ - ipvlan: properly track tx_errors
+ - regmap: debugfs: Fix a erroneous check after snprintf()
+ - [arm64] clk: qcom: clk-rcg2: Fix clock rate overflow for high parent
+ frequencies
+ - [arm64] clk: qcom: mmcc-msm8998: Add hardware clockgating registers to
+ some clks
+ - [arm64] clk: qcom: mmcc-msm8998: Don't check halt bit on some branch clks
+ - [arm64] clk: qcom: mmcc-msm8998: Set bimc_smmu_gdsc always on
+ - [arm64] clk: qcom: mmcc-msm8998: Fix the SMMU GDSC
+ - [arm64] clk: qcom: gcc-sm8150: use ARRAY_SIZE instead of specifying
+ num_parents
+ - [arm64] clk: qcom: gcc-sm8150: Fix gcc_sdcc2_apps_clk_src
+ - [arm64] clk: imx: imx8mq: correct error handling path
+ - clk: asm9260: use parent index to link the reference clock
+ - clk: linux/clk-provider.h: fix kernel-doc warnings and typos
+ - [arm64] spi: nxp-fspi: use the correct ioremap function
+ - [armhf] clk: ti: Add ti_dt_clk_name() helper to use clock-output-names
+ - [armhf] clk: ti: Update pll and clockdomain clocks to use ti_dt_clk_name()
+ - [armhf] clk: ti: Update component clocks to use ti_dt_clk_name()
+ - [armhf] clk: ti: change ti_clk_register[_omap_hw]() API
+ - [armhf] clk: ti: fix double free in of_ti_divider_clk_setup()
+ - [x86] platform/x86: wmi: Fix probe failure when failing to register WMI
+ devices
+ - [x86] platform/x86: wmi: remove unnecessary initializations
+ - [x86] platform/x86: wmi: Fix opening of char device
+ - hwmon: (coretemp) Fix potentially truncated sysfs attribute name
+ - [arm64,armhf] drm/rockchip: vop: Fix reset of state in duplicate state
+ crtc funcs
+ - [arm64,armhf] drm/rockchip: vop: Fix call to crtc reset helper
+ - drm/radeon: possible buffer overflow
+ - [arm64] drm/rockchip: cdn-dp: Fix some error handling paths in
+ cdn_dp_probe()
+ - [arm64,armhf] drm/rockchip: Fix type promotion bug in
+ rockchip_gem_iommu_map()
+ - xen-pciback: Consider INTx disabled when MSI/MSI-X is enabled
+ - [arm64] dts: qcom: msm8916: Fix iommu local address range
+ - [arm64] dts: qcom: sdm845-mtp: fix WiFi configuration
+ - [i386] hwrng: geode - fix accessing registers
+ - libnvdimm/of_pmem: Use devm_kstrdup instead of kstrdup and check its
+ return value
+ - nd_btt: Make BTT lanes preemptible
+ - [arm64] crypto: caam/qi2 - fix Chacha20 + Poly1305 self test failure
+ - [arm64] crypto: caam/jr - fix Chacha20 + Poly1305 self test failure
+ - [x86] crypto: qat - mask device capabilities with soft straps
+ - [x86] crypto: qat - increase size of buffers
+ - hid: cp2112: Fix duplicate workqueue initialization
+ - [armel,armhf] 9321/1: memset: cast the constant byte to unsigned char
+ - ext4: move 'ix' sanity check to corrent position
+ - IB/mlx5: Fix rdma counter binding for RAW QP
+ - [arm64] RDMA/hns: Fix uninitialized ucmd in hns_roce_create_qp_common()
+ - [arm64] RDMA/hns: Fix signed-unsigned mixed comparisons
+ - scsi: ufs: core: Leave space for '\0' in utf8 desc string
+ - [amd64] RDMA/hfi1: Workaround truncation compilation error
+ - hid: cp2112: Fix IRQ shutdown stopping polling for all IRQs on chip
+ - Revert "HID: logitech-hidpp: add a module parameter to keep firmware
+ gestures"
+ - HID: logitech-hidpp: Remove HIDPP_QUIRK_NO_HIDINPUT quirk
+ - HID: logitech-hidpp: Don't restart IO, instead defer hid_connect() only
+ - HID: logitech-hidpp: Revert "Don't restart communication if not necessary"
+ - HID: logitech-hidpp: Move get_wireless_feature_index() check to
+ hidpp_connect_event()
+ - [x86] ASoC: Intel: Skylake: Fix mem leak when parsing UUIDs fails
+ - padata: Convert from atomic_t to refcount_t on parallel_data->refcnt
+ - padata: Fix refcnt handling in padata_free_shell()
+ - mfd: core: Un-constify mfd_cell.of_reg
+ - mfd: core: Ensure disabled devices are skipped without aborting
+ - mfd: dln2: Fix double put in dln2_probe
+ - leds: pwm: Don't disable the PWM when the LED should be off
+ - leds: trigger: ledtrig-cpu:: Fix 'output may be truncated' issue for 'cpu'
+ - tty: tty_jobctrl: fix pid memleak in disassociate_ctty()
+ - usb: dwc2: fix possible NULL pointer dereference caused by driver
+ concurrency
+ - dmaengine: ti: edma: handle irq_of_parse_and_map() errors
+ - misc: st_core: Do not call kfree_skb() under spin_lock_irqsave()
+ - USB: usbip: fix stub_dev hub disconnect
+ - dmaengine: pxa_dma: Remove an erroneous BUG_ON() in pxad_free_desc()
+ - f2fs: fix to initialize map.m_pblk in f2fs_precache_extents()
+ - modpost: fix tee MODULE_DEVICE_TABLE built on big-endian host
+ - [powerpc*] 40x: Remove stale PTE_ATOMIC_UPDATES macro
+ - [powerpc*] xive: Fix endian conversion size
+ - [powerpc*] imc-pmu: Use the correct spinlock initializer.
+ - [powerpc*] pseries: fix potential memory leak in init_cpu_associativity()
+ - xhci: Loosen RPM as default policy to cover for AMD xHC 1.1
+ - usb: host: xhci-plat: fix possible kernel oops while resuming
+ - perf machine: Avoid out of bounds LBR memory read
+ - perf hist: Add missing puts to hist__account_cycles
+ - i3c: Fix potential refcount leak in i3c_master_register_new_i3c_devs
+ - rtc: pcf85363: fix wrong mask/val parameters in regmap_update_bits call
+ - pcmcia: cs: fix possible hung task and memory leak pccardd()
+ - pcmcia: ds: fix refcount leak in pcmcia_device_add()
+ - pcmcia: ds: fix possible name leak in error path in pcmcia_device_add()
+ - media: i2c: max9286: Fix some redundant of_node_put() calls
+ - media: bttv: fix use after free error due to btv->timeout timer
+ - media: s3c-camif: Avoid inappropriate kfree()
+ - media: vidtv: psi: Add check for kstrdup
+ - media: vidtv: mux: Add check and kfree for kstrdup
+ - media: cedrus: Fix clock/reset sequence
+ - media: dvb-usb-v2: af9035: fix missing unlock
+ - regmap: prevent noinc writes from clobbering cache
+ - pwm: sti: Avoid conditional gotos
+ - pwm: sti: Reduce number of allocations and drop usage of chip_data
+ - pwm: brcmstb: Utilize appropriate clock APIs in suspend/resume
+ - Input: synaptics-rmi4 - fix use after free in rmi_unregister_function()
+ - llc: verify mac len before reading mac header
+ - hsr: Prevent use after free in prp_create_tagged_frame()
+ - tipc: Change nla_policy for bearer-related names to NLA_NUL_STRING
+ - inet: shrink struct flowi_common
+ - dccp: Call security_inet_conn_request() after setting IPv4 addresses.
+ - dccp/tcp: Call security_inet_conn_request() after setting IPv6 addresses.
+ - net: r8169: Disable multicast filter for RTL8168H and RTL8107E
+ - Fix termination state for idr_for_each_entry_ul()
+ - net: stmmac: xgmac: Enable support for multiple Flexible PPS outputs
+ - net/smc: fix dangling sock under state SMC_APPFINCLOSEWAIT
+ - net/smc: allow cdc msg send rather than drop it with NULL sndbuf_desc
+ - net/smc: put sk reference if close work was canceled
+ - tg3: power down device only on SYSTEM_POWER_OFF
+ - r8169: respect userspace disabling IFF_MULTICAST
+ - netfilter: xt_recent: fix (increase) ipv6 literal buffer length
+ - netfilter: nft_redir: use `struct nf_nat_range2` throughout and
+ deduplicate eval call-backs
+ - netfilter: nat: fix ipv6 nat redirect with mapped and scoped addresses
+ - [x86] Share definition of __is_canonical_address()
+ - [x86] sev-es: Allow copy_from_kernel_nofault() in earlier boot
+ - drm/syncobj: fix DRM_SYNCOBJ_WAIT_FLAGS_WAIT_AVAILABLE
+ - fbdev: imsttfb: Fix error path of imsttfb_probe()
+ - fbdev: imsttfb: fix a resource leak in probe
+ - fbdev: fsl-diu-fb: mark wr_reg_wa() static
+ - tracing/kprobes: Fix the order of argument descriptions
+ - Revert "mmc: core: Capture correct oemid-bits for eMMC cards"
+ - btrfs: use u64 for buffer sizes in the tree search ioctls
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.202
+ - perf/core: Bail out early if the request AUX area is out of bound
+ - [armhf] clocksource/drivers/timer-imx-gpt: Fix potential memory leak
+ - [x86] mm: Drop the 4 MB restriction on minimal NUMA node memory size
+ - wifi: mac80211_hwsim: fix clang-specific fortify warning
+ - wifi: mac80211: don't return unset power in ieee80211_get_tx_power()
+ - bpf: Detect IP == ksym.end as part of BPF program
+ - wifi: ath9k: fix clang-specific fortify warnings
+ - wifi: ath10k: fix clang-specific fortify warning
+ - net: annotate data-races around sk->sk_tx_queue_mapping
+ - net: annotate data-races around sk->sk_dst_pending_confirm
+ - wifi: ath10k: Don't touch the CE interrupt registers after power up
+ - Bluetooth: btusb: Add date->evt_skb is NULL check
+ - Bluetooth: Fix double free in hci_conn_cleanup
+ - [x86] platform/x86: thinkpad_acpi: Add battery quirk for Thinkpad X120e
+ - [arm64] drm/msm/dp: skip validity check for DP CTS EDID checksum
+ - drm/amd: Fix UBSAN array-index-out-of-bounds for SMU7
+ - drm/amd: Fix UBSAN array-index-out-of-bounds for Polaris and Tonga
+ - drm/amdgpu: Fix potential null pointer derefernce
+ - drm/amdgpu: Fix a null pointer access when the smc_rreg pointer is NULL
+ - ASoC: soc-card: Add storage for PCI SSID
+ - crypto: pcrypt - Fix hungtask for PADATA_RESET
+ - [amd64] RDMA/hfi1: Use FIELD_GET() to extract Link Width
+ - fs/jfs: Add check for negative db_l2nbperpage
+ - fs/jfs: Add validity check for db_maxag and db_agpref
+ - jfs: fix array-index-out-of-bounds in dbFindLeaf
+ - jfs: fix array-index-out-of-bounds in diAlloc
+ - HID: lenovo: Detect quirk-free fw on cptkbd and stop applying workaround
+ - [armel,armhf] 9320/1: fix stack depot IRQ stack filter
+ - ALSA: hda: Fix possible null-ptr-deref when assigning a stream
+ - atm: iphase: Do PCI error checks on own line
+ - scsi: libfc: Fix potential NULL pointer dereference in
+ fc_lport_ptp_setup()
+ - HID: Add quirk for Dell Pro Wireless Keyboard and Mouse KM5221W
+ - exfat: support handle zero-size directory
+ - usb: gadget: f_ncm: Always set current gadget in ncm_bind()
+ - 9p/trans_fd: Annotate data-racy writes to file::f_flags
+ - [armhf] i2c: sun6i-p2wi: Prevent potential division by zero
+ - media: gspca: cpia1: shift-out-of-bounds in set_flicker
+ - media: vivid: avoid integer overflow
+ - gfs2: ignore negated quota changes
+ - gfs2: fix an oops in gfs2_permission
+ - media: imon: fix access to invalid resource for the second interface
+ - drm/amd/display: Avoid NULL dereference of timing generator
+ - [armhf] ASoC: ti: omap-mcbsp: Fix runtime PM underflow warnings
+ - drm/amdgpu: fix software pci_unplug on some chips
+ - pwm: Fix double shift bug
+ - wifi: iwlwifi: Use FW rate for non-data frames
+ - xhci: turn cancelled td cleanup to its own function
+ - SUNRPC: ECONNRESET might require a rebind
+ - SUNRPC: Add an IS_ERR() check back to where it was
+ - NFSv4.1: fix SP4_MACH_CRED protection for pnfs IO
+ - SUNRPC: Fix RPC client cleaned up the freed pipefs dentries
+ - gfs2: Silence "suspicious RCU usage in gfs2_permission" warning
+ - ipvlan: add ipvlan_route_v6_outbound() helper
+ - tty: Fix uninit-value access in ppp_sync_receive()
+ - [arm64] net: hns3: fix variable may not initialized problem in
+ hns3_init_mac_addr()
+ - [arm64] net: hns3: fix VF reset fail issue
+ - tipc: Fix kernel-infoleak due to uninitialized TLV value
+ - ppp: limit MRU to 64K
+ - xen/events: fix delayed eoi list handling
+ - ptp: annotate data-race around q->head and q->tail
+ - bonding: stop the device in bond_setup_by_slave()
+ - netfilter: nf_conntrack_bridge: initialize err to 0
+ - net: stmmac: fix rx budget limit check
+ - net/mlx5e: fix double free of encap_header
+ - net/mlx5_core: Clean driver version and name
+ - net/mlx5e: Check return value of snprintf writing to fw_version buffer for
+ representors
+ - macvlan: Don't propagate promisc change to lower dev in passthru
+ - cifs: spnego: add ';' in HOST_KEY_LEN
+ - cifs: fix check of rc in function generate_smb3signingkey
+ - [arm64] media: venus: hfi: add checks to perform sanity on queue pointers
+ - [powerpc*] perf: Fix disabling BHRB and instruction sampling
+ - bpf: Fix check_stack_write_fixed_off() to correctly spill imm
+ - bpf: Fix precision tracking for BPF_ALU | BPF_TO_BE | BPF_END
+ - scsi: mpt3sas: Fix loop logic
+ - scsi: megaraid_sas: Increase register read retry rount from 3 to 30 for
+ selected registers
+ - [x86] cpu/hygon: Fix the CPU topology evaluation for real
+ - [x86] KVM: x86: hyper-v: Don't auto-enable stimer on write from user-space
+ - [x86] KVM: x86: Ignore MSR_AMD64_TW_CFG access
+ - audit: don't take task_lock() in audit_exe_compare() code path
+ - audit: don't WARN_ON_ONCE(!current->mm) in audit_exe_compare()
+ - tty/sysrq: replace smp_processor_id() with get_cpu()
+ - hvc/xen: fix console unplug
+ - hvc/xen: fix error path in xen_hvc_init() to always register frontend
+ driver
+ - PCI/sysfs: Protect driver's D3cold preference from user space
+ - watchdog: move softlockup_panic back to early_param
+ - ACPI: resource: Do IRQ override on TongFang GMxXGxx
+ - [arm64] Restrict CPU_BIG_ENDIAN to GNU as or LLVM IAS 15.x or newer
+ - mmc: vub300: fix an error code
+ - mmc: sdhci_am654: fix start loop index for TAP value parsing
+ - PCI/ASPM: Fix L1 substate handling in aspm_attr_store_common()
+ - [arm64] dts: qcom: ipq6018: Fix hwlock index for SMEM
+ - PM: hibernate: Use __get_safe_page() rather than touching the list
+ - PM: hibernate: Clean up sync_read handling in snapshot_write_next()
+ - rcu: kmemleak: Ignore kmemleak false positives when RCU-freeing objects
+ - btrfs: don't arbitrarily slow down delalloc if we're committing
+ - [arm64] firmware: qcom_scm: use 64-bit calling convention only when client
+ is 64-bit
+ - ima: detect changes to the backing overlay file
+ - wifi: ath11k: fix temperature event locking
+ - wifi: ath11k: fix dfs radar event locking
+ - wifi: ath11k: fix htt pktlog locking
+ - mmc: meson-gx: Remove setting of CMD_CFG_ERROR
+ - genirq/generic_chip: Make irq_remove_generic_chip() irqdomain aware
+ - jbd2: fix potential data lost in recovering journal raced with
+ synchronizing fs bdev
+ - quota: explicitly forbid quota files from being encrypted
+ - kernel/reboot: emergency_restart: Set correct system_state
+ - i2c: core: Run atomic i2c xfer when !preemptible
+ - mcb: fix error handling for different scenarios when parsing
+ - [armhf] dmaengine: stm32-mdma: correct desc prep when channel running
+ - mm/cma: use nth_page() in place of direct struct page manipulation
+ - mm/memory_hotplug: use pfn math in place of direct struct page
+ manipulation
+ - mtd: cfi_cmdset_0001: Byte swap OTP info
+ - xhci: Enable RPM on controllers that support low-power states
+ - ALSA: info: Fix potential deadlock at disconnection
+ - ALSA: hda/realtek - Add Dell ALC295 to pin fall back table
+ - ALSA: hda/realtek - Enable internal speaker of ASUS K6500ZC
+ - serial: meson: remove redundant initialization of variable id
+ - tty: serial: meson: retrieve port FIFO size from DT
+ - serial: meson: Use platform_get_irq() to get the interrupt
+ - tty: serial: meson: fix hard LOCKUP on crtscts mode
+ - cpufreq: stats: Fix buffer overflow detection in trans_stats()
+ - Bluetooth: btusb: Add Realtek RTL8852BE support ID 0x0cb8:0xc559
+ - bluetooth: Add device 0bda:887b to device tables
+ - bluetooth: Add device 13d3:3571 to device tables
+ - Bluetooth: btusb: Add RTW8852BE device 13d3:3570 to device tables
+ - Bluetooth: btusb: Add 0bda:b85b for Fn-Link RTL8852BE
+ - Revert ncsi: Propagate carrier gain/loss events to the NCSI controller
+ - lsm: fix default return value for vm_enough_memory
+ - lsm: fix default return value for inode_getsecctx
+ - i2c: designware: Disable TX_EMPTY irq while waiting for block length byte
+ - net: phylink: initialize carrier state at creation
+ - i2c: i801: fix potential race in i801_block_transaction_byte_by_byte
+ - f2fs: avoid format-overflow warning
+ - media: lirc: drop trailing space from scancode transmit
+ - media: sharp: fix sharp encoding
+ - [arm64] media: venus: hfi_parser: Add check to keep the number of codecs
+ within range
+ - [arm64] media: venus: hfi: fix the check to handle session buffer
+ requirement
+ - [arm64] media: venus: hfi: add checks to handle capabilities from firmware
+ - nfsd: fix file memleak on client_opens_release
+ - mm: kmem: drop __GFP_NOFAIL when allocating objcg vectors
+ - Revert "net: r8169: Disable multicast filter for RTL8168H and RTL8107E"
+ - ext4: apply umask if ACL support is disabled
+ - ext4: correct offset of gdb backup in non meta_bg group to update_backups
+ - ext4: correct return value of ext4_convert_meta_bg
+ - ext4: correct the start block of counting reserved clusters
+ - ext4: remove gdb backup copy for meta bg in setup_new_flex_group_blocks
+ - drm/amd/pm: Handle non-terminated overdrive commands.
+ - drm/amdgpu: fix error handling in amdgpu_bo_list_get()
+ - drm/amd/display: Change the DMCUB mailbox memory location from FB to inbox
+ - io_uring/fdinfo: lock SQ thread while retrieving thread cpu/pid
+ (CVE-2023-46862)
+ - tracing: Have trace_event_file have ref counters
+ - netfilter: nftables: update table flags from the commit phase
+ - netfilter: nf_tables: fix table flag updates
+ - netfilter: nf_tables: disable toggling dormant table state more than once
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.203
+ - RDMA/irdma: Prevent zero-length STAG registration (CVE-2023-25775)
+ - afs: Fix afs_server_list to be cleaned up with RCU
+ - afs: Make error on cell lookup failure consistent with OpenAFS
+ - [arm64,armhf] drm/panel: simple: Fix Innolux G101ICE-L01 bus flags
+ - [arm64,armhf] drm/panel: simple: Fix Innolux G101ICE-L01 timings
+ - wireguard: use DEV_STATS_INC()
+ - ata: pata_isapnp: Add missing error check for devm_ioport_map()
+ - [arm64,armhf] drm/rockchip: vop: Fix color for RGB888/BGR888 format on VOP
+ full
+ - HID: core: store the unique system identifier in hid_device
+ - HID: fix HID device resource race between HID core and debugging support
+ - ipv4: Correct/silence an endian warning in __ip_do_redirect
+ - net: usb: ax88179_178a: fix failed operations during ax88179_reset
+ - net/smc: avoid data corruption caused by decline
+ - [armhf] xen: fix xen_vcpu_info allocation alignment
+ - [amd64,arm64] amd-xgbe: handle corner-case during sfp hotplug
+ - [amd64,arm64] amd-xgbe: handle the corner-case during tx completion
+ - [amd64,arm64] amd-xgbe: propagate the correct speed and duplex status
+ - afs: Return ENOENT if no cell DNS record can be found
+ - afs: Fix file locking on R/O volumes to operate in local mode
+ - nvmet: remove unnecessary ctrl parameter
+ - nvmet: nul-terminate the NQNs passed in the connect command
+ (CVE-2023-6121)
+ - [arm64] USB: dwc3: qcom: fix resource leaks on probe deferral
+ - [arm64] USB: dwc3: qcom: fix ACPI platform device leak
+ - lockdep: Fix block chain corruption
+ - ext4: add a new helper to check if es must be kept
+ - ext4: factor out __es_alloc_extent() and __es_free_extent()
+ - ext4: use pre-allocated es in __es_insert_extent()
+ - ext4: use pre-allocated es in __es_remove_extent()
+ - ext4: using nofail preallocation in ext4_es_remove_extent()
+ - ext4: using nofail preallocation in ext4_es_insert_delayed_block()
+ - ext4: using nofail preallocation in ext4_es_insert_extent()
+ - ext4: fix slab-use-after-free in ext4_es_insert_extent()
+ - ext4: make sure allocate pending entry not fail
+ - nfsd: lock_rename() needs both directories to live on the same fs
+ - [arm*] ASoC: simple-card: fixup asoc_simple_probe() error handling
+ - ACPI: resource: Skip IRQ override on ASUS ExpertBook B1402CVA
+ - swiotlb-xen: provide the "max_mapping_size" method
+ - bcache: replace a mistaken IS_ERR() by IS_ERR_OR_NULL() in
+ btree_gc_coalesce()
+ - bcache: fixup multi-threaded bch_sectors_dirty_init() wake-up race
+ - [s390x] dasd: protect device queue against concurrent access
+ - USB: serial: option: add Luat Air72*U series products
+ - [x86] hv_netvsc: Fix race of register_netdevice_notifier and VF register
+ - [x86] hv_netvsc: Mark VF as slave before exposing it to user-mode
+ - dm-delay: fix a race between delay_presuspend and delay_bio
+ - bcache: check return value from btree_node_alloc_replacement()
+ - bcache: prevent potential division by zero error
+ - bcache: fixup init dirty data errors
+ - bcache: fixup lock c->root error
+ - USB: serial: option: add Fibocom L7xx modules
+ - USB: serial: option: fix FM101R-GL defines
+ - USB: serial: option: don't claim interface 4 for ZTE MF290
+ - [arm*] USB: dwc2: write HCINT with INTMASK applied
+ - [arm64,armhf] usb: dwc3: Fix default mode initialization
+ - [arm64,armhf] usb: dwc3: set the dma max_seg_size
+ - [arm64,armhf] USB: dwc3: qcom: fix wakeup after probe deferral
+ - io_uring: fix off-by one bvec index
+ - pinctrl: avoid reload of p state in list iteration
+ - firewire: core: fix possible memory leak in create_units()
+ - mmc: block: Do not lose cache flush during CQE error recovery
+ - ALSA: hda: Disable power-save on KONTRON SinglePC
+ - ALSA: hda/realtek: Headset Mic VREF to 100%
+ - ALSA: hda/realtek: Add supported ALC257 for ChromeOS
+ - dm-verity: align struct dm_verity_fec_io properly
+ - dm verity: don't perform FEC for failed readahead IO
+ - bcache: revert replacing IS_ERR_OR_NULL with IS_ERR
+ - [amd64] iommu/vt-d: Add MTL to quirk list to skip TE disabling
+ - [powerpc*] Don't clobber f0/vs0 during fp|altivec register save
+ (Closes: #1032104)
+ - btrfs: add dmesg output for first mount and last unmount of a filesystem
+ - btrfs: ref-verify: fix memory leaks in btrfs_ref_tree_mod()
+ - btrfs: fix off-by-one when checking chunk map includes logical address
+ - btrfs: send: ensure send_fd is writable
+ - btrfs: make error messages more clear when getting a chunk map
+ - Input: xpad - add HyperX Clutch Gladiate Support
+ - [x86] hv_netvsc: fix race of netvsc and VF register_netdevice
+ - USB: core: Change configuration warnings to notices
+ - usb: config: fix iteration issue in 'usb_get_bos_descriptor()'
+ - ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet
+ (CVE-2023-6932)
+ - [arm64] dpaa2-eth: increase the needed headroom to account for alignment
+ - net: stmmac: xgmac: Disable FPE MMC interrupts
+ - Revert "workqueue: remove unused cancel_work()"
+ - r8169: prevent potential deadlock in rtl8169_close
+ - smb3: fix touch -h of symlink
+ - [x86] ASoC: Intel: Move soc_intel_is_foo() helpers to a generic header
+ - [x86] ASoC: SOF: sof-pci-dev: use community key on all Up boards
+ - [x86] ASoC: SOF: sof-pci-dev: add parameter to override topology filename
+ - [x86] ASoC: SOF: sof-pci-dev: don't use the community key on APL
+ Chromebooks
+ - [x86] ASoC: SOF: sof-pci-dev: Fix community key quirk detection
+ - [s390x] mm: fix phys vs virt confusion in mark_kernel_pXd() functions
+ family
+ - [s390x] cmma: fix detection of DAT pages
+ - ima: annotate iint mutex to avoid lockdep false positive warnings
+ - driver core: Move the "removable" attribute from USB to core
+ - drm/amdgpu: don't use ATRM for external devices
+ - fs: add ctime accessors infrastructure
+ - smb3: fix caching of ctime on setxattr
+ - scsi: core: Introduce the scsi_cmd_to_rq() function
+ - scsi: qla2xxx: Use scsi_cmd_to_rq() instead of scsi_cmnd.request
+ - scsi: qla2xxx: Fix system crash due to bad pointer access
+ - [armhf] cpufreq: imx6q: don't warn for disabling a non-existing frequency
+ - [armhf] cpufreq: imx6q: Don't disable 792 Mhz OPP unnecessarily
+ - mmc: cqhci: Increase recovery halt timeout
+ - mmc: cqhci: Warn of halt or task clear failure
+ - mmc: cqhci: Fix task clearing in CQE error recovery
+ - mmc: core: convert comma to semicolon
+ - mmc: block: Retry commands in CQE error recovery
+ - mmc: core: add helpers mmc_regulator_enable/disable_vqmmc
+ - r8169: disable ASPM in case of tx timeout
+ - r8169: fix deadlock on RTL8125 in jumbo mtu mode
+ - driver core: Release all resources during unbind before updating device
+ links
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.204
+ - hrtimers: Push pending hrtimers away from outgoing CPU earlier
+ - i2c: designware: Fix corrupted memory seen in the ISR
+ - netfilter: ipset: fix race condition between swap/destroy and kernel side
+ add/del/test
+ - tg3: Move the [rt]x_dropped counters to tg3_napi
+ - tg3: Increment tx_dropped in tg3_tso_bug()
+ - kconfig: fix memory leak from range properties
+ - drm/amdgpu: correct chunk_ptr to a pointer to chunk.
+ - [x86] platform/x86: asus-wmi: Add support for SW_TABLET_MODE on UX360
+ - [x86] platform/x86: asus-nb-wmi: Allow configuring SW_TABLET_MODE method
+ with a module option
+ - [x86] platform/x86: asus-nb-wmi: Add tablet_mode_sw=lid-flip quirk for the
+ TP200s
+ - [x86] asus-wmi: Add dgpu disable method
+ - [x86] platform/x86: asus-wmi: Adjust tablet/lidflip handling to use enum
+ - [x86] platform/x86: asus-wmi: Add support for ROG X13 tablet mode
+ - [x86] platform/x86: asus-wmi: Simplify tablet-mode-switch probing
+ - [x86] platform/x86: asus-wmi: Simplify tablet-mode-switch handling
+ - [x86] platform/x86: asus-wmi: Move i8042 filter install to shared asus-wmi
+ code
+ - of: base: Fix some formatting issues and provide missing descriptions
+ - of: Fix kerneldoc output formatting
+ - of: Add missing 'Return' section in kerneldoc comments
+ - of: dynamic: Fix of_reconfig_get_state_change() return value documentation
+ - ipv6: fix potential NULL deref in fib6_add()
+ - hv_netvsc: rndis_filter needs to select NLS
+ - net: arcnet: com20020 fix error handling
+ - arcnet: restoring support for multiple Sohard Arcnet cards
+ - i40e: Fix unexpected MFS warning message
+ - net: bnxt: fix a potential use-after-free in bnxt_init_tc
+ - ipv4: ip_gre: Avoid skb_pull() failure in ipgre_xmit()
+ - [arm64] net: hns: fix fake link up on xge port
+ - netfilter: xt_owner: Fix for unsafe access of sk->sk_socket
+ - tcp: do not accept ACK of bytes we never sent
+ - bpf: sockmap, updating the sg structure should also update curr
+ - [arm64] tee: optee: Fix supplicant based device enumeration
+ - RDMA/bnxt_re: Correct module description string
+ - [x86] hwmon: (acpi_power_meter) Fix 4.29 MW bug
+ - tracing: Fix a warning when allocating buffered events fails
+ - scsi: be2iscsi: Fix a memleak in beiscsi_init_wrb_handle()
+ - [armhf] imx: Check return value of devm_kasprintf in imx_mmdc_perf_init
+ - ALSA: pcm: fix out-of-bounds in snd_pcm_state_names
+ - ALSA: hda/realtek: Enable headset on Lenovo M90 Gen5
+ - nilfs2: fix missing error check for sb_set_blocksize call
+ - nilfs2: prevent WARNING in nilfs_sufile_set_segment_usage()
+ - checkstack: fix printed address
+ - tracing: Always update snapshot buffer size
+ - tracing: Disable snapshot buffer when stopping instance tracers
+ - tracing: Fix incomplete locking when disabling buffered events
+ - tracing: Fix a possible race when disabling buffered events
+ - packet: Move reference count in packet_sock to atomic_long_t
+ - [x86] misc: mei: client.c: return negative error code in mei_cl_write
+ - [x86] misc: mei: client.c: fix problem of return '-EOVERFLOW' in
+ mei_cl_write
+ - ring-buffer: Force absolute timestamp on discard of event
+ - tracing: Set actual size after ring buffer resize
+ - tracing: Stop current tracer when resizing buffer
+ - perf/core: Add a new read format to get a number of lost samples
+ - perf: Fix perf_event_validate_size() (CVE-2023-6931)
+ - gpiolib: sysfs: Fix error handling on failed export
+ - drm/amdgpu: correct the amdgpu runtime dereference usage count
+ - usb: gadget: f_hid: fix report descriptor allocation
+ - parport: Add support for Brainboxes IX/UC/PX parallel cards
+ - Revert "xhci: Loosen RPM as default policy to cover for AMD xHC 1.1"
+ - usb: typec: class: fix typec_altmode_put_partner to put plugs
+ - [arm*] PL011: Fix DMA support
+ - [x86] CPU/AMD: Check vendor in the AMD microcode callback
+ - [s390x] KVM: s390/mm: Properly reset no-dat
+ - [mips*] Loongson64: Reserve vgabios memory on boot
+ - [mips*] Loongson64: Enable DMA noncoherent support
+ - io_uring/af_unix: disable sending io_uring over sockets (CVE-2023-6531)
+ - netlink: don't call ->netlink_bind with table lock held
+ - genetlink: add CAP_NET_ADMIN test for multicast bind
+ - psample: Require 'CAP_NET_ADMIN' when joining "packets" group
+ - drop_monitor: Require 'CAP_SYS_ADMIN' when joining "events" group
+ - netfilter: nft_set_pipapo: skip inactive elements during set walk
+ (CVE-2023-6817)
+ - [x86] platform/x86: asus-wmi: Fix kbd_dock_devid tablet-switch reporting
+ - [x86] platform/x86: asus-wmi: Document the dgpu_disable sysfs attribute
+ - mmc: block: Be sure to wait while busy in CQE error recovery
+ - Revert "btrfs: add dmesg output for first mount and last unmount of a
+ filesystem"
+ - cifs: Fix non-availability of dedup breaking generic/304
+ - smb: client: fix potential NULL deref in parse_dfs_referrals()
+ - devcoredump : Serialize devcd_del work
+ - devcoredump: Send uevent once devcd is ready
+ - r8169: fix rtl8125b PAUSE frames blasting when suspended
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.205
+ - netfilter: nf_tables: fix 'exist' matching on bigendian arches
+ - afs: Fix refcount underflow from error handling race (Closes: #1052304)
+ - HID: lenovo: Restrict detection of patched firmware only to USB cptkbd
+ - net: ipv6: support reporting otherwise unknown prefix flags in
+ RTM_NEWPREFIX
+ - atm: solos-pci: Fix potential deadlock on &cli_queue_lock
+ - atm: solos-pci: Fix potential deadlock on &tx_queue_lock
+ - net: vlan: introduce skb_vlan_eth_hdr()
+ - net: fec: correct queue selection
+ - atm: Fix Use-After-Free in do_vcc_ioctl (CVE-2023-51780)
+ - net/rose: Fix Use-After-Free in rose_ioctl (CVE-2023-51782)
+ - qed: Fix a potential use-after-free in qed_cxt_tables_alloc
+ - net: Remove acked SYN flag from packet in the transmit queue correctly
+ - net: ena: Destroy correct number of xdp queues upon failure
+ - net: ena: Fix XDP redirection error
+ - sign-file: Fix incorrect return values check
+ - vsock/virtio: Fix unsigned integer wrap around in
+ virtio_transport_has_space()
+ - net: stmmac: use dev_err_probe() for reporting mdio bus registration
+ failure
+ - net: stmmac: Handle disabled MDIO busses from devicetree
+ - appletalk: Fix Use-After-Free in atalk_ioctl (CVE-2023-51781)
+ - net: atlantic: fix double free in ring reinit logic
+ - cred: switch to using atomic_long_t
+ - fuse: dax: set fc->dax to NULL in fuse_dax_conn_free()
+ - ALSA: hda/hdmi: add force-connect quirks for ASUSTeK Z170 variants
+ - ALSA: hda/realtek: Apply mute LED quirk for HP15-db
+ - Revert "PCI: acpiphp: Reassign resources on bridge if necessary"
+ - PCI: loongson: Limit MRRS to 256 (Closes: #1035587)
+ - usb: aqc111: check packet for fixup for true limit
+ - blk-throttle: fix lockdep warning of "cgroup_mutex or RCU read lock
+ required!"
+ - bcache: avoid oversize memory allocation by small stripe_size
+ - bcache: remove redundant assignment to variable cur_idx
+ - bcache: add code comments for bch_btree_node_get() and
+ __bch_btree_node_alloc()
+ - bcache: avoid NULL checking to c->root in run_cache_set()
+ - [x86] platform/x86: intel_telemetry: Fix kernel doc descriptions
+ - HID: glorious: fix Glorious Model I HID report
+ - HID: add ALWAYS_POLL quirk for Apple kb
+ - HID: hid-asus: reset the backlight brightness level on resume
+ - HID: multitouch: Add quirk for HONOR GLO-GXXX touchpad
+ - asm-generic: qspinlock: fix queued_spin_value_unlocked() implementation
+ - net: usb: qmi_wwan: claim interface 4 for ZTE MF290
+ - HID: hid-asus: add const to read-only outgoing usb buffer
+ - perf: Fix perf_event_validate_size() lockdep splat
+ - soundwire: stream: fix NULL pointer dereference for multi_link
+ - ext4: prevent the normalized size from exceeding EXT_MAX_BLOCKS
+ - [arm64] mm: Always make sw-dirty PTEs hw-dirty in pte_modify
+ - team: Fix use-after-free when an option instance allocation fails
+ - ring-buffer: Fix memory leak of free page
+ - tracing: Update snapshot buffer on resize if it is allocated
+ - ring-buffer: Have saved event hold the entire event
+ - ring-buffer: Fix writing to the buffer with max_data_size
+ - ring-buffer: Fix a race in rb_time_cmpxchg() for 32 bit archs
+ - USB: gadget: core: adjust uevent timing on gadget unbind
+ - tty: n_gsm: fix tty registration before control channel open
+ - tty: n_gsm, remove duplicates of parameters
+ - tty: n_gsm: add sanity check for gsm->receive in gsm_receive_buf()
+ - [powerpc*] ftrace: Create a dummy stackframe to fix stack unwind
+ - [powerpc*] ftrace: Fix stack teardown in ftrace_no_trace
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 27
+ * [rt] Refresh "net: Properly annotate the try-lock for the seqlock"
+ Adapt to changes from upstream a8dd21118b0f ("seqlock: Prefix internal
+ seqcount_t-only macros with a "do_"") in 5.10.198.
+ * Refresh "arm64: compat: Implement misalignment fixups for multiword loads"
+ * Do not enable DEBUG_PREEMPT (not enabled by default since 5.10.199)
+ * [rt] Update to 5.10.201-rt98
+ * [rt] Update to 5.10.204-rt100
+ * [arm64] drivers/vfio: Don't enable VFIO_NOIOMMU.
+ This is a breach of the integrity lockdown requirement of secure boot
+ and thus cannot be enabled.
+ Thanks to Bastian Blank and Ben Hutchings
+ * netfilter: nf_tables: skip set commit for deleted/destroyed sets
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 30 Dec 2023 10:41:34 +0100
+
+linux (5.10.197-1) bullseye; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.192
+ - [arm64] mmc: sdhci-f-sdh30: Replace with sdhci_pltfm
+ - macsec: Fix traffic counters/statistics
+ - macsec: use DEV_STATS_INC()
+ - net/mlx5: Refactor init clock function
+ - net/mlx5: Move all internal timer metadata into a dedicated struct
+ - net/mlx5: Skip clock update work when device is in error state
+ - drm/radeon: Fix integer overflow in radeon_cs_parser_init
+ - ALSA: emu10k1: roll up loops in DSP setup code for Audigy
+ - [x86] ASoC: Intel: sof_sdw: add quirk for MTL RVP
+ - [x86] ASoC: Intel: sof_sdw: add quirk for LNL RVP
+ - [armhf] dts: imx6dl: prtrvt, prtvt7, prti6q, prtwd2: fix USB related
+ warnings
+ - [x86] ASoC: Intel: sof_sdw: Add support for Rex soundwire
+ - iopoll: Call cpu_relax() in busy loops
+ - quota: Properly disable quotas when add_dquot_ref() fails
+ - quota: fix warning in dqgrab()
+ - dma-remap: use kvmalloc_array/kvfree for larger dma memory remap
+ - drm/amdgpu: install stub fence into potential unused fence pointers
+ - HID: add quirk for 03f0:464a HP Elite Presenter Mouse
+ - RDMA/mlx5: Return the firmware result upon destroying QP/RQ
+ - ovl: check type and offset of struct vfsmount in ovl_entry
+ - udf: Fix uninitialized array access for some pathnames
+ - fs: jfs: Fix UBSAN: array-index-out-of-bounds in dbAllocDmapLev
+ - FS: JFS: Fix null-ptr-deref Read in txBegin
+ - FS: JFS: Check for read-only mounted filesystem in txBegin
+ - media: v4l2-mem2mem: add lock to protect parameter num_rdy
+ - usb: gadget: u_serial: Avoid spinlock recursion in __gs_console_push
+ - [arm64,armhf] usb: chipidea: imx: don't request QoS for imx8ulp
+ - [arm64,armhf] usb: chipidea: imx: add missing USB PHY DPDM wakeup setting
+ - gfs2: Fix possible data races in gfs2_show_options()
+ - pcmcia: rsrc_nonstatic: Fix memory leak in nonstatic_release_resource_db()
+ - Bluetooth: L2CAP: Fix use-after-free
+ - Bluetooth: btusb: Add MT7922 bluetooth ID for the Asus Ally
+ - drm/amdgpu: Fix potential fence use-after-free v2
+ - ALSA: hda/realtek: Add quirks for Unis H3C Desktop B760 & Q760
+ - ALSA: hda: fix a possible null-pointer dereference due to data race in
+ snd_hdac_regmap_sync()
+ - ring-buffer: Do not swap cpu_buffer during resize process
+ - bus: mhi: Add MHI PCI support for WWAN modems
+ - bus: mhi: Add MMIO region length to controller structure
+ - bus: mhi: Move host MHI code to "host" directory
+ - bus: mhi: host: Range check CHDBOFF and ERDBOFF
+ - [mips*] irqchip/mips-gic: Get rid of the reliance on irq_cpu_online()
+ - [mips*] irqchip/mips-gic: Use raw spinlock for gic_lock
+ - usb: gadget: udc: core: Introduce check_config to verify USB configuration
+ - usb: cdns3: allocate TX FIFO size according to composite EP number
+ - usb: cdns3: fix NCM gadget RX speed 20x slow than expection at iMX8QM
+ - [arm64] USB: dwc3: qcom: fix NULL-deref on suspend
+ - [arm*] mmc: bcm2835: fix deferred probing
+ - [arm64,armhf] mmc: sunxi: fix deferred probing
+ - mmc: core: add devm_mmc_alloc_host
+ - [arm64] mmc: meson-gx: use devm_mmc_alloc_host
+ - [arm64] mmc: meson-gx: fix deferred probing
+ - tracing/probes: Have process_fetch_insn() take a void * instead of pt_regs
+ - tracing/probes: Fix to update dynamic data counter if fetcharg uses it
+ - virtio-mmio: Use to_virtio_mmio_device() to simply code
+ - virtio-mmio: don't break lifecycle of vm_dev
+ - i2c: bcm-iproc: Fix bcm_iproc_i2c_isr deadlock issue
+ - fbdev: mmp: fix value check in mmphw_probe()
+ - [powerpc*] rtas_flash: allow user copy to flash block cache objects
+ - tty: n_gsm: fix the UAF caused by race condition in gsm_cleanup_mux
+ - tty: serial: fsl_lpuart: Clear the error flags by writing 1 for lpuart32
+ platforms
+ - btrfs: fix BUG_ON condition in btrfs_cancel_balance
+ - i2c: designware: Handle invalid SMBus block data response length value
+ - net: xfrm: Fix xfrm_address_filter OOB read
+ - net: af_key: fix sadb_x_filter validation
+ - net: xfrm: Amend XFRMA_SEC_CTX nla_policy structure
+ - xfrm: fix slab-use-after-free in decode_session6
+ - ip6_vti: fix slab-use-after-free in decode_session6
+ - ip_vti: fix potential slab-use-after-free in decode_session6
+ - xfrm: add NULL check in xfrm_update_ae_params (CVE-2023-3772)
+ - xfrm: add forgotten nla_policy for XFRMA_MTIMER_THRESH (CVE-2023-3773)
+ - selftests: mirror_gre_changes: Tighten up the TTL test match
+ - ipvs: fix racy memcpy in proc_do_sync_threshold
+ - netfilter: nft_dynset: disallow object maps
+ - net: phy: broadcom: stub c45 read/write for 54810
+ - team: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves
+ - i40e: fix misleading debug logs
+ - net: dsa: mv88e6xxx: Wait for EEPROM done before HW reset
+ - sock: Fix misuse of sk_under_memory_pressure()
+ - net: do not allow gso_size to be set to GSO_BY_FRAGS
+ - bus: ti-sysc: Flush posted write on enable before reset
+ - ALSA: hda/realtek - Remodified 3k pull low procedure
+ - serial: 8250: Fix oops for port->pm on uart_change_pm()
+ - ALSA: usb-audio: Add support for Mythware XA001AU capture and playback
+ interfaces.
+ - cifs: Release folio lock on fscache read hit.
+ - mmc: wbsd: fix double mmc_free_host() in wbsd_init()
+ - mmc: block: Fix in_flight[issue_type] value error
+ - netfilter: set default timeout to 3 secs for sctp shutdown send and recv
+ state
+ - af_unix: Fix null-ptr-deref in unix_stream_sendpage(). (CVE-2023-4622)
+ - virtio-net: set queues after driver_ok
+ - net: fix the RTO timer retransmitting skb every 1ms if linear option is
+ enabled
+ - [arm64] mmc: f-sdh30: fix order of function calls in sdhci_f_sdh30_remove
+ - [x86] cpu: Fix __x86_return_thunk symbol type
+ - [x86] cpu: Fix up srso_safe_ret() and __x86_return_thunk()
+ - [x86] alternative: Make custom return thunk unconditional
+ - objtool: Add frame-pointer-specific function ignore
+ - [x86] ibt: Add ANNOTATE_NOENDBR
+ - [x86] cpu: Clean up SRSO return thunk mess
+ - [x86] cpu: Rename original retbleed methods
+ - [x86] cpu: Rename srso_(.*)_alias to srso_alias_\1
+ - [x86] cpu: Cleanup the untrain mess
+ - [x86] srso: Explain the untraining sequences a bit more
+ - [x86] static_call: Fix __static_call_fixup()
+ - [x86] retpoline: Don't clobber RFLAGS during srso_safe_ret()
+ - [x86] CPU/AMD: Fix the DIV(0) initial fix attempt (CVE-2023-20588)
+ - [x86] srso: Disable the mitigation on unaffected configurations
+ - [x86] retpoline,kprobes: Fix position of thunk sections with
+ CONFIG_LTO_CLANG
+ - [x86] objtool/x86: Fixup frame-pointer vs rethunk
+ - [x86] srso: Correct the mitigation status when SMT is disabled
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.193
+ - [x86] objtool/x86: Fix SRSO mess
+ - NFSv4: fix out path in __nfs4_get_acl_uncached
+ - xprtrdma: Remap Receive buffers after a reconnect
+ - PCI: acpiphp: Reassign resources on bridge if necessary
+ - dlm: improve plock logging if interrupted
+ - dlm: replace usage of found with dedicated list iterator variable
+ - fs: dlm: add pid to debug log
+ - fs: dlm: change plock interrupted message to debug again
+ - fs: dlm: use dlm_plock_info for do_unlock_close
+ - fs: dlm: fix mismatch of plock results from userspace
+ - [mips*] cpu-features: Enable octeon_cache by cpu_type
+ - [mips*] cpu-features: Use boot_cpu_type for CPU type based features
+ - fbdev: Improve performance of sys_imageblit()
+ - fbdev: Fix sys_imageblit() for arbitrary image widths
+ - fbdev: fix potential OOB read in fast_imageblit()
+ - dm integrity: increase RECALC_SECTORS to improve recalculate speed
+ - dm integrity: reduce vmalloc space footprint on 32-bit architectures
+ - ALSA: pcm: Fix potential data race at PCM memory allocation helpers
+ - drm/amd/display: do not wait for mpc idle if tg is disabled
+ - drm/amd/display: check TG is non-null before checking if enabled
+ - libceph, rbd: ignore addr->type while comparing in some cases
+ - rbd: make get_lock_owner_info() return a single locker or NULL
+ - rbd: retrieve and check lock owner twice before blocklisting
+ - rbd: prevent busy loop when requesting exclusive lock
+ - tracing: Fix cpu buffers unavailable due to 'record_disabled' missed
+ - tracing: Fix memleak due to race between current_tracer and trace
+ - sock: annotate data-races around prot->memory_pressure
+ - dccp: annotate data-races in dccp_poll()
+ - ipvlan: Fix a reference count leak warning in ipvlan_ns_exit()
+ - [arm64] net: bcmgenet: Fix return value check for fixed_phy_register()
+ - net: validate veth and vxcan peer ifindexes
+ - ice: fix receive buffer size miscalculation
+ - igb: Avoid starting unnecessary workqueues
+ - net/sched: fix a qdisc modification with ambiguous command request
+ - netfilter: nf_tables: fix out of memory error handling
+ - rtnetlink: return ENODEV when ifname does not exist and group is given
+ - rtnetlink: Reject negative ifindexes in RTM_NEWLINK
+ - net: remove bond_slave_has_mac_rcu()
+ - bonding: fix macvlan over alb bond support
+ - [powerpc*] ibmveth: Use dcbf rather than dcbfl
+ - NFSv4: Fix dropped lock for racing OPEN and delegation return
+ - clk: Fix slab-out-of-bounds error in devm_clk_release()
+ - mm: add a call to flush_cache_vmap() in vmap_pfn()
+ - NFS: Fix a use after free in nfs_direct_join_group()
+ - nfsd: Fix race to FREE_STATEID and cl_revoked
+ - selinux: set next pointer before attaching to list
+ - batman-adv: Trigger events for auto adjusted MTU
+ - batman-adv: Don't increase MTU when set by user
+ - batman-adv: Do not get eth header before batadv_check_management_packet
+ - batman-adv: Fix TT global entry leak when client roamed back
+ - batman-adv: Fix batadv_v_ogm_aggr_send memory leak
+ - batman-adv: Hold rtnl lock during MTU update via netlink
+ - lib/clz_ctz.c: Fix __clzdi2() and __ctzdi2() for 32-bit kernels
+ - [powerpc*] of: dynamic: Refactor action prints to not use "%pOF" inside
+ devtree_lock
+ - PCI: acpiphp: Use pci_assign_unassigned_bridge_resources() only for
+ non-root bus
+ - [x86] drm/vmwgfx: Fix shader stage validation
+ - drm/display/dp: Fix the DP DSC Receiver cap size
+ - [x86] fpu: Set X86_FEATURE_OSXSAVE feature after enabling OSXSAVE in CR4
+ (Closes: #1050622)
+ - torture: Fix hang during kthread shutdown phase
+ - tick: Detect and fix jiffies update stall
+ - timers/nohz: Switch to ONESHOT_STOPPED in the low-res handler when the
+ tick is stopped
+ - cgroup/cpuset: Rename functions dealing with DEADLINE accounting
+ - sched/cpuset: Bring back cpuset_mutex
+ - sched/cpuset: Keep track of SCHED_DEADLINE task in cpusets
+ - cgroup/cpuset: Iterate only if DEADLINE tasks are present
+ - sched/deadline: Create DL BW alloc, free & check overflow interface
+ - cgroup/cpuset: Free DL BW in case can_attach() fails
+ - [x86] drm/i915: Fix premature release of request's reusable memory
+ - ASoC: rt711: add two jack detection modes
+ - scsi: snic: Fix double free in snic_tgt_create()
+ - scsi: core: raid_class: Remove raid_component_add()
+ - mm,hwpoison: refactor get_any_page
+ - mm: fix page reference leak in soft_offline_page()
+ - mm: memory-failure: kill soft_offline_free_page()
+ - mm: memory-failure: fix unexpected return value in soft_offline_page()
+ - [x86] ASoC: Intel: sof_sdw: include rt711.h for RT711 JD mode
+ - mm,hwpoison: fix printing of page flags
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.194
+ - module: Expose module_init_layout_section()
+ - [arm64] module-plts: inline linux/moduleloader.h
+ - [arm64] module: Use module_init_layout_section() to spot init sections
+ - [armel,armhf] module: Use module_init_layout_section() to spot init
+ sections
+ - mhi: pci_generic: Fix implicit conversion warning
+ - Revert "drm/amdgpu: install stub fence into potential unused fence
+ pointers"
+ - rcu: Prevent expedited GP from enabling tick on offline CPU
+ - rcu-tasks: Fix IPI failure handling in trc_wait_for_one_reader
+ - rcu-tasks: Wait for trc_read_check_handler() IPIs
+ - rcu-tasks: Add trc_inspect_reader() checks for exiting critical section
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.195
+ - erofs: ensure that the post-EOF tails are all zeroed
+ - mmc: au1xmmc: force non-modular build and remove symbol_get usage
+ - net: enetc: use EXPORT_SYMBOL_GPL for enetc_phc_index
+ - rtc: ds1685: use EXPORT_SYMBOL_GPL for ds1685_rtc_poweroff
+ - modules: only allow symbol_get of EXPORT_SYMBOL_GPL modules
+ - USB: serial: option: add Quectel EM05G variant (0x030e)
+ - USB: serial: option: add FOXCONN T99W368/T99W373 product
+ - [arm64,armhf] usb: dwc3: meson-g12a: do post init to fix broken usb after
+ resumption
+ - [arm64,armhf] usb: chipidea: imx: improve logic if samsung,picophy-*
+ parameter is 0
+ - HID: wacom: remove the battery when the EKR is off
+ - staging: rtl8712: fix race condition
+ - Bluetooth: btsdio: fix use after free bug in btsdio_remove due to race
+ condition (CVE-2023-1989)
+ - configfs: fix a race in configfs_lookup()
+ - serial: qcom-geni: fix opp vote on shutdown
+ - serial: sc16is7xx: fix broken port 0 uart init
+ - serial: sc16is7xx: fix bug when first setting GPIO direction
+ - firmware: stratix10-svc: Fix an NULL vs IS_ERR() bug in probe
+ - fsi: master-ast-cf: Add MODULE_FIRMWARE macro
+ - nilfs2: fix general protection fault in nilfs_lookup_dirty_data_buffers()
+ - nilfs2: fix WARNING in mark_buffer_dirty due to discarded buffer reuse
+ - pinctrl: amd: Don't show `Invalid config param` errors
+ - ASoC: rt5682: Fix a problem with error handling in the io init function of
+ the soundwire
+ - phy: qcom-snps-femto-v2: use qcom_snps_hsphy_suspend/resume error code
+ - media: pulse8-cec: handle possible ping error
+ - media: pci: cx23885: fix error handling for cx23885 ATSC boards
+ - 9p: virtio: make sure 'offs' is initialized in zc_request
+ - ASoC: da7219: Flush pending AAD IRQ when suspending
+ - ASoC: da7219: Check for failure reading AAD IRQ events
+ - ethernet: atheros: fix return value check in atl1c_tso_csum()
+ - vxlan: generalize vxlan_parse_gpe_hdr and remove unused args
+ - [s390x] dasd: use correct number of retries for ERP requests
+ - [s390x] dasd: fix hanging device after request requeue
+ - fs/nls: make load_nls() take a const parameter
+ - ASoc: codecs: ES8316: Fix DMIC config
+ - [x86] platform/x86: intel: hid: Always call BTNL ACPI method
+ - [x86] platform/x86: huawei-wmi: Silence ambient light sensor
+ - drm/amd/display: Exit idle optimizations before attempt to access PHY
+ - ovl: Always reevaluate the file signature for IMA
+ - ata: pata_arasan_cf: Use dev_err_probe() instead dev_err() in data_xfer()
+ - security: keys: perform capable check only on privileged operations
+ - kprobes: Prohibit probing on CFI preamble symbol
+ - clk: fixed-mmio: make COMMON_CLK_FIXED_MMIO depend on HAS_IOMEM
+ - net: usb: qmi_wwan: add Quectel EM05GV2
+ - idmaengine: make FSL_EDMA and INTEL_IDMA64 depends on HAS_IOMEM
+ - scsi: qedi: Fix potential deadlock on &qedi_percpu->p_work_lock
+ - netlabel: fix shift wrapping bug in netlbl_catmap_setlong()
+ - bnx2x: fix page fault following EEH recovery
+ - sctp: handle invalid error codes without calling BUG()
+ - scsi: storvsc: Always set no_report_opcodes
+ - ALSA: seq: oss: Fix racy open/close of MIDI devices
+ - tracing: Introduce pipe_cpumask to avoid race on trace_pipes
+ - net: Avoid address overwrite in kernel_connect
+ - udf: Check consistency of Space Bitmap Descriptor
+ - udf: Handle error when adding extent to a file
+ - Revert "net: macsec: preserve ingress frame ordering"
+ - reiserfs: Check the return value from __getblk()
+ - eventfd: Export eventfd_ctx_do_read()
+ - eventfd: prevent underflow for eventfd semaphores
+ - fs: Fix error checking for d_hash_and_lookup()
+ - tmpfs: verify {g,u}id mount options correctly
+ - refscale: Fix uninitalized use of wait_queue_head_t
+ - OPP: Fix passing 0 to PTR_ERR in _opp_attach_genpd()
+ - [x86] decompressor: Don't rely on upper 32 bits of GPRs being preserved
+ - perf/imx_ddr: don't enable counter0 if none of 4 counters are used
+ - [s390x] pkey: fix/harmonize internal keyblob headers
+ - [s390x] paes: fix PKEY_TYPE_EP11_AES handling for secure keyblobs
+ - [x86] efistub: Fix PCI ROM preservation in mixed mode
+ - [x86] cpufreq: powernow-k8: Use related_cpus instead of cpus in
+ driver.exit()
+ - bpftool: Use a local bpf_perf_event_value to fix accessing its fields
+ - bpf: Clear the probe_addr for uprobe
+ - tcp: tcp_enter_quickack_mode() should be static
+ - regmap: rbtree: Use alloc_flags for memory allocations
+ - udp: re-score reuseport groups when connected sockets are present
+ - bpf: reject unhashed sockets in bpf_sk_assign
+ - [arm64,armhf] spi: tegra20-sflash: fix to check return value of
+ platform_get_irq() in tegra_sflash_probe()
+ - can: gs_usb: gs_usb_receive_bulk_callback(): count RX overflow errors also
+ in case of OOM
+ - wifi: mwifiex: Fix OOB and integer underflow when rx packets
+ - wifi: mwifiex: fix error recovery in PCIE buffer descriptor management
+ - [armhf] crypto: stm32 - Properly handle pm_runtime_get failing
+ - crypto: api - Use work queue in crypto_destroy_instance
+ - Bluetooth: nokia: fix value check in nokia_bluetooth_serdev_probe()
+ - Bluetooth: Fix potential use-after-free when clear keys
+ - net: tcp: fix unexcepted socket die when snd_wnd is 0
+ - ice: ice_aq_check_events: fix off-by-one check when filling buffer
+ - [arm64] crypto: caam - fix unchecked return value error
+ - hwrng: iproc-rng200 - Implement suspend and resume calls
+ - lwt: Fix return values of BPF xmit ops
+ - lwt: Check LWTUNNEL_XMIT_CONTINUE strictly
+ - fs: ocfs2: namei: check return value of ocfs2_add_entry()
+ - wifi: mwifiex: fix memory leak in mwifiex_histogram_read()
+ - wifi: mwifiex: Fix missed return in oob checks failed path
+ - samples/bpf: fix broken map lookup probe
+ - wifi: ath9k: fix races between ath9k_wmi_cmd and ath9k_wmi_ctrl_rx
+ - wifi: ath9k: protect WMI command response buffer replacement with a lock
+ - wifi: mwifiex: avoid possible NULL skb pointer dereference
+ - Bluetooth: btusb: Do not call kfree_skb() under spin_lock_irqsave()
+ - wifi: ath9k: use IS_ERR() with debugfs_create_dir()
+ - net: arcnet: Do not call kfree_skb() under local_irq_disable()
+ - mlxsw: i2c: Fix chunk size setting in output mailbox buffer
+ - mlxsw: i2c: Limit single transaction buffer size
+ - hwmon: (tmp513) Fix the channel number in tmp51x_is_visible()
+ - net/sched: sch_hfsc: Ensure inner classes have fsc curve (CVE-2023-4623)
+ - netrom: Deny concurrent connect().
+ - drm/bridge: tc358764: Fix debug print parameter order
+ - quota: factor out dquot_write_dquot()
+ - quota: rename dquot_active() to inode_quota_active()
+ - quota: add new helper dquot_active()
+ - quota: fix dqput() to follow the guarantees dquot_srcu should provide
+ - ASoC: stac9766: fix build errors with REGMAP_AC97
+ - [arm64] dts: qcom: msm8996: Add missing interrupt to the USB2 controller
+ - drm/amdgpu: avoid integer overflow warning in
+ amdgpu_device_resize_fb_bar()
+ - [armel,armhf] dts: BCM5301X: Harmonize EHCI/OHCI DT nodes name
+ - [armel,armhf] dts: BCM53573: Describe on-SoC BCM53125 rev 4 switch
+ - [armel,armhf] dts: BCM53573: Drop nonexistent #usb-cells
+ - [armel,armhf] dts: BCM53573: Add cells sizes to PCIe node
+ - [armel,armhf] dts: BCM53573: Use updated "spi-gpio" binding properties
+ - [armhf] drm/etnaviv: fix dumping of active MMU context
+ - [x86] mm: Fix PAT bit missing from page protection modify mask
+ - [armel,armhf] dts: s3c64xx: align pinctrl with dtschema
+ - [armel,armhf] dts: samsung: s3c6410-mini6410: correct ethernet reg
+ addresses (split)
+ - [armel,armhf] dts: s5pv210: adjust node names to DT spec
+ - [armel,armhf] dts: s5pv210: add dummy 5V regulator for backlight on
+ SMDKv210
+ - [armel,armhf] dts: samsung: s5pv210-smdkv210: correct ethernet reg
+ addresses (split)
+ - drm: adv7511: Fix low refresh rate register for ADV7533/5
+ - [armel,armhf] dts: BCM53573: Fix Ethernet info for Luxul devices
+ - [arm64] dts: qcom: sdm845: Add missing RPMh power domain to GCC
+ - [arm64] dts: qcom: sdm845: Fix the min frequency of "ice_core_clk"
+ - drm/amdgpu: Update min() to min_t() in 'amdgpu_info_ioctl'
+ - md/bitmap: don't set max_write_behind if there is no write mostly device
+ - md/md-bitmap: hold 'reconfig_mutex' in backlog_store()
+ - [arm64,armhf] drm/tegra: Remove superfluous error messages around
+ platform_get_irq()
+ - [arm64,armhf] drm/tegra: dpaux: Fix incorrect return value of
+ platform_get_irq
+ - of: unittest: fix null pointer dereferencing in
+ of_unittest_find_node_by_name()
+ - [arm64,armhf] drm/armada: Fix off-by-one error in
+ armada_overlay_get_property()
+ - drm/panel: simple: Add missing connector type and pixel format for AUO
+ T215HVN01
+ - ima: Remove deprecated IMA_TRUSTED_KEYRING Kconfig
+ - drm: xlnx: zynqmp_dpsub: Add missing check for dma_set_mask
+ - [arm64] drm/msm/mdp5: Don't leak some plane state
+ - firmware: meson_sm: fix to avoid potential NULL pointer dereference
+ - smackfs: Prevent underflow in smk_set_cipso()
+ - drm/amd/pm: fix variable dereferenced issue in amdgpu_device_attr_create()
+ - [arm64] drm/msm/a2xx: Call adreno_gpu_init() earlier
+ - audit: fix possible soft lockup in __audit_inode_child()
+ - bus: ti-sysc: Fix build warning for 64-bit build
+ - bus: ti-sysc: Fix cast to enum warning
+ - of: unittest: Fix overlay type in apply/revert check
+ - ALSA: ac97: Fix possible error value of *rac97
+ - ipmi:ssif: Add check for kstrdup
+ - ipmi:ssif: Fix a memory leak when scanning for an adapter
+ - drivers: clk: keystone: Fix parameter judgment in _of_pll_clk_init()
+ - clk: sunxi-ng: Modify mismatched function name
+ - clk: qcom: gcc-sc7180: use ARRAY_SIZE instead of specifying num_parents
+ - clk: qcom: gcc-sc7180: Fix up gcc_sdcc2_apps_clk_src
+ - ext4: correct grp validation in ext4_mb_good_group
+ - clk: qcom: gcc-sm8250: use ARRAY_SIZE instead of specifying num_parents
+ - clk: qcom: gcc-sm8250: Fix gcc_sdcc2_apps_clk_src
+ - clk: qcom: reset: Use the correct type of sleep/delay based on length
+ - PCI: Mark NVIDIA T4 GPUs to avoid bus reset
+ - pinctrl: mcp23s08: check return value of devm_kasprintf()
+ - PCI: pciehp: Use RMW accessors for changing LNKCTL
+ - PCI/ASPM: Use RMW accessors for changing LNKCTL
+ - clk: imx8mp: fix sai4 clock
+ - clk: imx: composite-8m: fix clock pauses when set_rate would be a no-op
+ - vfio/type1: fix cap_migration information leak
+ - [powerpc*] fadump: reset dump area size if fadump memory reserve fails
+ - [powerpc*] perf: Convert fsl_emb notifier to state machine callbacks
+ - drm/amdgpu: Use RMW accessors for changing LNKCTL
+ - drm/radeon: Use RMW accessors for changing LNKCTL
+ - net/mlx5: Use RMW accessors for changing LNKCTL
+ - wifi: ath10k: Use RMW accessors for changing LNKCTL
+ - [powerpc*] pseries: Rework lppaca_shared_proc() to avoid DEBUG_PREEMPT
+ - nfs/blocklayout: Use the passed in gfp flags
+ - [powerpc*] iommu: Fix notifiers being shared by PCI and VIO buses
+ - jfs: validate max amount of blocks before allocation.
+ - fs: lockd: avoid possible wrong NULL parameter
+ - NFSD: da_addr_body field missing in some GETDEVICEINFO replies
+ - NFS: Guard against READDIR loop when entry names exceed MAXNAMELEN
+ - NFSv4.2: fix handling of COPY ERR_OFFLOAD_NO_REQ
+ - media: ad5820: Drop unsupported ad5823 from i2c_ and of_device_id tables
+ - media: i2c: tvp5150: check return value of devm_kasprintf()
+ - media: v4l2-core: Fix a potential resource leak in
+ v4l2_fwnode_parse_link()
+ - drivers: usb: smsusb: fix error handling code in smsusb_init_device
+ - media: dib7000p: Fix potential division by zero
+ - media: dvb-usb: m920x: Fix a potential memory leak in m920x_i2c_xfer()
+ - media: cx24120: Add retval check for cx24120_message_send()
+ - [arm64] scsi: hisi_sas: Print SAS address for v3 hw erroneous completion
+ print
+ - scsi: libsas: Introduce more SAM status code aliases in enum exec_status
+ - [arm64] scsi: hisi_sas: Modify v3 HW SSP underflow error processing
+ - [arm64] scsi: hisi_sas: Modify v3 HW SATA completion error processing
+ - [arm64] scsi: hisi_sas: Fix warnings detected by sparse
+ - [arm64] scsi: hisi_sas: Fix normally completed I/O analysed as failed
+ - media: rkvdec: increase max supported height for H.264
+ - media: mediatek: vcodec: Return NULL if no vdec_fb is found
+ - usb: phy: mxs: fix getting wrong state with mxs_phy_is_otg_host()
+ - scsi: RDMA/srp: Fix residual handling
+ - scsi: iscsi: Rename iscsi_set_param() to iscsi_if_set_param()
+ - scsi: iscsi: Add length check for nlattr payload
+ - scsi: iscsi: Add strlen() check in iscsi_if_set{_host}_param()
+ - scsi: be2iscsi: Add length check when parsing nlattrs
+ - scsi: qla4xxx: Add length check when parsing nlattrs
+ - serial: sprd: Assign sprd_port after initialized to avoid wrong access
+ - serial: sprd: Fix DMA buffer leak issue
+ - [x86] APM: drop the duplicate APM_MINOR_DEV macro
+ - scsi: qedf: Do not touch __user pointer in
+ qedf_dbg_stop_io_on_error_cmd_read() directly
+ - scsi: qedf: Do not touch __user pointer in qedf_dbg_debug_cmd_read()
+ directly
+ - scsi: qedf: Do not touch __user pointer in qedf_dbg_fp_int_cmd_read()
+ directly
+ - coresight: tmc: Explicit type conversions to prevent integer overflow
+ - dma-buf/sync_file: Fix docs syntax
+ - driver core: test_async: fix an error code
+ - IB/uverbs: Fix an potential error pointer dereference
+ - fsi: aspeed: Reset master errors after CFAM reset
+ - iommu/qcom: Disable and reset context bank before programming
+ - [amd64] iommu/vt-d: Fix to flush cache of PASID directory table
+ - media: go7007: Remove redundant if statement
+ - USB: gadget: f_mass_storage: Fix unused variable warning
+ - media: ov5640: Enable MIPI interface in ov5640_set_power_mipi()
+ - media: i2c: ov2680: Set V4L2_CTRL_FLAG_MODIFY_LAYOUT on flips
+ - media: ov2680: Remove auto-gain and auto-exposure controls
+ - media: ov2680: Fix ov2680_bayer_order()
+ - media: ov2680: Fix vflip / hflip set functions
+ - media: ov2680: Fix regulators being left enabled on ov2680_power_on()
+ errors
+ - cgroup:namespace: Remove unused cgroup_namespaces_init()
+ - scsi: core: Use 32-bit hostnum in scsi_host_lookup()
+ - scsi: fcoe: Fix potential deadlock on &fip->ctlr_lock
+ - serial: tegra: handle clk prepare error in tegra_uart_hw_init()
+ - [arm*] amba: bus: fix refcount leak
+ - Revert "IB/isert: Fix incorrect release of isert connection"
+ - RDMA/siw: Balance the reference of cep->kref in the error path
+ - RDMA/siw: Correct wrong debug message
+ - HID: logitech-dj: Fix error handling in logi_dj_recv_switch_to_dj_mode()
+ - HID: multitouch: Correct devm device reference for hidinput input_dev name
+ - [x86] speculation: Mark all Skylake CPUs as vulnerable to GDS
+ - tracing: Fix race issue between cpu buffer write and swap
+ - mtd: rawnand: brcmnand: Fix mtd oobsize
+ - [arm64,armhf] phy/rockchip: inno-hdmi: use correct vco_div_5 macro on
+ rk3328
+ - [arm64,armhf] phy/rockchip: inno-hdmi: round fractal pixclock in rk3328
+ recalc_rate
+ - [arm64,armhf] phy/rockchip: inno-hdmi: do not power on rk3328 post pll on
+ reg write
+ - rpmsg: glink: Add check for kstrdup
+ - mtd: spi-nor: Check bus width while setting QE bit
+ - mtd: rawnand: fsmc: handle clk prepare error in fsmc_nand_resume()
+ - um: Fix hostaudio build errors
+ - dmaengine: ste_dma40: Add missing IRQ check in d40_probe
+ - cpufreq: Fix the race condition while updating the transition_task of
+ policy
+ - virtio_ring: fix avail_wrap_counter in virtqueue_add_packed
+ - igmp: limit igmpv3_newpack() packet size to IP_MAX_MTU
+ - netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for
+ ip_set_hash_netportnet.c (CVE-2023-42753)
+ - netfilter: xt_u32: validate user space input
+ - netfilter: xt_sctp: validate the flag_info count
+ - skbuff: skb_segment, Call zero copy functions before using skbuff frags
+ - igb: set max size RX buffer when store bad packet is enabled
+ - PM / devfreq: Fix leak in devfreq_dev_release()
+ - ALSA: pcm: Fix missing fixup call in compat hw_refine ioctl
+ - printk: ringbuffer: Fix truncating buffer size min_t cast
+ - scsi: core: Fix the scsi_set_resid() documentation
+ - ipmi_si: fix a memleak in try_smi_init()
+ - [armhf] OMAP2+: Fix -Warray-bounds warning in _pwrdm_state_switch()
+ - backlight/gpio_backlight: Compare against struct fb_info.device
+ - backlight/bd6107: Compare against struct fb_info.device
+ - backlight/lv5207lp: Compare against struct fb_info.device
+ - [arm64] csum: Fix OoB access in IP checksum code for negative lengths
+ - media: dvb: symbol fixup for dvb_attach()
+ - Revert "scsi: qla2xxx: Fix buffer overrun"
+ - scsi: mpt3sas: Perform additional retries if doorbell read returns 0
+ - ntb: Drop packets when qp link is down
+ - ntb: Clean up tx tail index on link down
+ - ntb: Fix calculation ntb_transport_tx_free_entry()
+ - Revert "PCI: Mark NVIDIA T4 GPUs to avoid bus reset"
+ - procfs: block chmod on /proc/thread-self/comm
+ - dlm: fix plock lookup when using multiple lockspaces
+ - dccp: Fix out of bounds access in DCCP error handler
+ - X.509: if signature is unsupported skip validation
+ - net: handle ARPHRD_PPP in dev_is_mac_header_xmit()
+ - fsverity: skip PKCS#7 parser when keyring is empty
+ - pstore/ram: Check start of empty przs during init
+ - [s390x] ipl: add missing secure/has_secure file to ipl type 'unknown'
+ - [armhf] crypto: stm32 - fix loop iterating through scatterlist for DMA
+ - cpufreq: brcmstb-avs-cpufreq: Fix -Warray-bounds bug
+ - usb: typec: bus: verify partner exists in typec_altmode_attention
+ - USB: core: Unite old scheme and new scheme descriptor reads
+ - USB: core: Change usb_get_device_descriptor() API
+ - USB: core: Fix race by not overwriting udev->descriptor in hub_port_init()
+ - USB: core: Fix oversight in SuperSpeed initialization
+ - usb: typec: tcpci: clear the fault status bit
+ - tracing: Zero the pipe cpumask on alloc to avoid spurious -EBUSY
+ - md/md-bitmap: remove unnecessary local variable in backlog_store()
+ - udf: initialize newblock to 0
+ - net/ipv6: SKB symmetric hash should incorporate transport ports
+ - io_uring: always lock in io_apoll_task_func
+ - io_uring: break out of iowq iopoll on teardown
+ - io_uring: break iopolling on signal
+ - scsi: qla2xxx: Fix deletion race condition
+ - scsi: qla2xxx: fix inconsistent TMF timeout
+ - scsi: qla2xxx: Fix erroneous link up failure
+ - scsi: qla2xxx: Turn off noisy message log
+ - scsi: qla2xxx: Remove unsupported ql2xenabledif option
+ - fbdev/ep93xx-fb: Do not assign to struct fb_info.dev
+ - drm/ast: Fix DRAM init on AST2200
+ - pinctrl: cherryview: fix address_space_handler() argument
+ - dt-bindings: clock: xlnx,versal-clk: drop select:false
+ - clk: imx: pll14xx: dynamically configure PLL for 393216000/361267200Hz
+ - clk: qcom: gcc-mdm9615: use proper parent for pll0_vote clock
+ - soc: qcom: qmi_encdec: Restrict string length in decode
+ - NFS: Fix a potential data corruption
+ - NFSv4/pnfs: minor fix for cleanup path in nfs4_get_device_info
+ - backlight: gpio_backlight: Drop output GPIO direction check for initial
+ power state
+ - perf annotate bpf: Don't enclose non-debug code with an assert()
+ - [x86] virt: Drop unnecessary check on extended CPUID level in
+ cpu_has_svm()
+ - perf top: Don't pass an ERR_PTR() directly to perf_session__delete()
+ - watchdog: intel-mid_wdt: add MODULE_ALIAS() to allow auto-load
+ - pwm: lpc32xx: Remove handling of PWM channels
+ - net/sched: fq_pie: avoid stalls in fq_pie_timer()
+ - sctp: annotate data-races around sk->sk_wmem_queued
+ - ipv4: annotate data-races around fi->fib_dead
+ - net: read sk->sk_family once in sk_mc_loop()
+ - [x86] drm/i915/gvt: Save/restore HW status to support GVT suspend/resume
+ - [x86] drm/i915/gvt: Drop unused helper intel_vgpu_reset_gtt()
+ - ipv4: ignore dst hint for multipath routes
+ - igb: disable virtualization features on 82580
+ - veth: Fixing transmit return status for dropped packets
+ - net: ipv6/addrconf: avoid integer underflow in ipv6_create_tempaddr
+ - af_unix: Fix data-races around user->unix_inflight.
+ - af_unix: Fix data-race around unix_tot_inflight.
+ - af_unix: Fix data-races around sk->sk_shutdown.
+ - af_unix: Fix data race around sk->sk_err.
+ - net: sched: sch_qfq: Fix UAF in qfq_dequeue() (CVE-2023-4921)
+ - kcm: Destroy mutex in kcm_exit_net()
+ - igc: Change IGC_MIN to allow set rx/tx value between 64 and 80
+ - igbvf: Change IGBVF_MIN to allow set rx/tx value between 64 and 80
+ - igb: Change IGB_MIN to allow set rx/tx value between 64 and 80
+ - [s390x] zcrypt: don't leak memory if dev_set_name() fails
+ - idr: fix param name in idr_alloc_cyclic() doc
+ - ip_tunnels: use DEV_STATS_INC()
+ - netfilter: nfnetlink_osf: avoid OOB read
+ - [arm64] net: hns3: fix the port information display when sfp is absent
+ - sh: boards: Fix CEU buffer size passed to dma_declare_coherent_memory()
+ - ext4: add correct group descriptors and reserved GDT blocks to system zone
+ - ata: sata_gemini: Add missing MODULE_DESCRIPTION
+ - ata: pata_ftide010: Add missing MODULE_DESCRIPTION
+ - fuse: nlookup missing decrement in fuse_direntplus_link
+ - btrfs: don't start transaction when joining with TRANS_JOIN_NOSTART
+ - btrfs: use the correct superblock to compare fsid in btrfs_validate_super
+ - mtd: rawnand: brcmnand: Fix crash during the panic_write
+ - mtd: rawnand: brcmnand: Fix potential out-of-bounds access in oob write
+ - mtd: rawnand: brcmnand: Fix potential false time out warning
+ - drm/amd/display: prevent potential division by zero errors
+ - perf hists browser: Fix hierarchy mode header
+ - perf tools: Handle old data in PERF_RECORD_ATTR
+ - perf hists browser: Fix the number of entries for 'e' key
+ - ACPI: APEI: explicit init of HEST and GHES in apci_init()
+ - [arm64] sdei: abort running SDEI handlers during crash
+ - scsi: qla2xxx: If fcport is undergoing deletion complete I/O with retry
+ - scsi: qla2xxx: Consolidate zio threshold setting for both FCP & NVMe
+ - scsi: qla2xxx: Fix crash in PCIe error handling
+ - scsi: qla2xxx: Flush mailbox commands on chip reset
+ - [armhf] dts: samsung: exynos4210-i9100: Fix LCD screen's physical size
+ - net: ipv4: fix one memleak in __inet_del_ifa()
+ - net/smc: use smc_lgr_list.lock to protect smc_lgr_list.list iterate in
+ smcr_port_add
+ - net: ethernet: mvpp2_main: fix possible OOB write in
+ mvpp2_ethtool_get_rxnfc()
+ - net: ethernet: mtk_eth_soc: fix possible NULL pointer dereference in
+ mtk_hwlro_get_fdir_all()
+ - hsr: Fix uninit-value access in fill_frame_info()
+ - r8152: check budget for r8152_poll()
+ - kcm: Fix memory leak in error path of kcm_sendmsg()
+ - ipv6: fix ip6_sock_set_addr_preferences() typo
+ - ixgbe: fix timestamp configuration code
+ - kcm: Fix error handling for SOCK_DGRAM in kcm_sendmsg().
+ - drm/amd/display: Fix a bug when searching for insert_above_mpcc
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.196
+ - Revert "configfs: fix a race in configfs_lookup()"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.197
+ - autofs: fix memory leak of waitqueues in autofs_catatonic_mode
+ - btrfs: output extra debug info if we failed to find an inline backref
+ - ACPICA: Add AML_NO_OPERAND_RESOLVE flag to Timer
+ - kernel/fork: beware of __put_task_struct() calling context
+ - rcuscale: Move rcu_scale_writer() schedule_timeout_uninterruptible() to
+ _idle()
+ - [x86] ACPI: video: Add backlight=native DMI quirk for Lenovo Ideapad Z470
+ - [arm64] perf/smmuv3: Enable HiSilicon Erratum 162001900 quirk for HIP08/09
+ - [x86] ACPI: video: Add backlight=native DMI quirk for Apple iMac12,1 and
+ iMac12,2
+ - hw_breakpoint: fix single-stepping when using bpf_overflow_handler
+ - devlink: remove reload failed checks in params get/set callbacks
+ - crypto: lrw,xts - Replace strlcpy with strscpy
+ - wifi: ath9k: fix fortify warnings
+ - wifi: ath9k: fix printk specifier
+ - wifi: mwifiex: fix fortify warning
+ - wifi: wil6210: fix fortify warnings
+ - crypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui()
+ - tpm_tis: Resend command to recover from data transfer errors
+ - [arm64,armhf] mmc: sdhci-esdhc-imx: improve ESDHC_FLAG_ERR010450
+ - alx: fix OOB-read compiler warning
+ - netfilter: ebtables: fix fortify warnings in size_entry_mwt()
+ - wifi: mac80211_hwsim: drop short frames
+ - ALSA: hda: intel-dsp-cfg: add LunarLake support
+ - [armhf] drm/exynos: fix a possible null-pointer dereference due to data
+ race in exynos_drm_crtc_atomic_disable()
+ - [armhf] bus: ti-sysc: Configure uart quirks for k3 SoC
+ - md: raid1: fix potential OOB in raid1_remove_disk()
+ - fs/jfs: prevent double-free in dbUnmount() after failed jfs_remount()
+ - jfs: fix invalid free of JFS_IP(ipimap)->i_imap in diUnmount
+ - [powerpc*] pseries: fix possible memory leak in ibmebus_bus_init()
+ - media: dvb-usb-v2: af9035: Fix null-ptr-deref in af9035_i2c_master_xfer
+ - media: dw2102: Fix null-ptr-deref in dw2102_i2c_transfer()
+ - media: af9005: Fix null-ptr-deref in af9005_i2c_xfer
+ - media: anysee: fix null-ptr-deref in anysee_master_xfer
+ - media: az6007: Fix null-ptr-deref in az6007_i2c_xfer()
+ - media: dvb-usb-v2: gl861: Fix null-ptr-deref in gl861_i2c_master_xfer
+ - media: tuners: qt1010: replace BUG_ON with a regular error
+ - media: pci: cx23885: replace BUG with error return
+ - usb: gadget: fsl_qe_udc: validate endpoint index for ch9 udc
+ - scsi: target: iscsi: Fix buffer overflow in lio_target_nacl_info_show()
+ - serial: cpm_uart: Avoid suspicious locking
+ - media: pci: ipu3-cio2: Initialise timing struct to avoid a compiler
+ warning
+ - kobject: Add sanity check for kset->kobj.ktype in kset_register()
+ - perf jevents: Make build dependency on test JSONs
+ - perf tools: Add an option to build without libbfd
+ - btrfs: move btrfs_pinned_by_swapfile prototype into volumes.h
+ - btrfs: add a helper to read the superblock metadata_uuid
+ - btrfs: compare the correct fsid/metadata_uuid in btrfs_validate_super
+ - scsi: qla2xxx: Fix NULL vs IS_ERR() bug for debugfs_create_dir()
+ - scsi: lpfc: Fix the NULL vs IS_ERR() bug for debugfs_create_file()
+ - [x86] boot/compressed: Reserve more memory for page tables
+ - md/raid1: fix error: ISO C90 forbids mixed declarations
+ - attr: block mode changes of symlinks
+ - ovl: fix incorrect fdput() on aio completion
+ - btrfs: fix lockdep splat and potential deadlock after failure running
+ delayed items
+ - btrfs: release path before inode lookup during the ino lookup ioctl
+ - drm/amdgpu: fix amdgpu_cs_p1_user_fence
+ - net/sched: Retire rsvp classifier (CVE-2023-42755)
+ - proc: fix a dentry lock race between release_task and lookup
+ - mm/filemap: fix infinite loop in generic_file_buffered_read()
+ - drm/amd/display: enable cursor degamma for DCN3+ DRM legacy gamma
+ - tracing: Have current_trace inc the trace array ref count
+ - tracing: Have option files inc the trace array ref count
+ - nfsd: fix change_info in NFSv4 RENAME replies
+ - tracefs: Add missing lockdown check to tracefs_create_dir()
+ - [armhf] i2c: aspeed: Reset the i2c controller when timeout occurs
+ - ata: libata: disallow dev-initiated LPM transitions to unsupported states
+ - scsi: megaraid_sas: Fix deadlock on firmware crashdump
+ - scsi: pm8001: Setup IRQs on resume
+ - ext4: fix rec_len verify error
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Refresh "cpuset: Convert callback_lock to raw_spinlock_t"
+ * Bump ABI to 26
+ * [rt] Refresh "eventfd: Make signal recursion protection a task bit"
+ * Drop now unknown config options for IPv4 and IPv6 Resource Reservation
+ Protocol (RSVP, RSVP6)
+ * netfilter: nf_tables: integrate pipapo into commit protocol
+ * netfilter: nf_tables: don't skip expired elements during walk
+ (CVE-2023-4244)
+ * netfilter: nf_tables: GC transaction API to avoid race with control plane
+ (CVE-2023-4244)
+ * netfilter: nf_tables: adapt set backend to use GC transaction API
+ (CVE-2023-4244)
+ * netfilter: nft_set_hash: mark set element as dead when deleting from packet
+ path (CVE-2023-4244)
+ * netfilter: nf_tables: remove busy mark and gc batch API (CVE-2023-4244)
+ * netfilter: nf_tables: don't fail inserts if duplicate has expired
+ * netfilter: nf_tables: fix GC transaction races with netns and netlink event
+ exit path (CVE-2023-4244)
+ * netfilter: nf_tables: GC transaction race with netns dismantle
+ (CVE-2023-4244)
+ * netfilter: nf_tables: GC transaction race with abort path
+ * netfilter: nf_tables: use correct lock to protect gc_list
+ * netfilter: nf_tables: defer gc run if previous batch is still pending
+ * netfilter: nft_set_rbtree: skip sync GC for new elements in this transaction
+ * netfilter: nft_set_rbtree: use read spinlock to avoid datapath contention
+ * netfilter: nft_set_pipapo: stop GC iteration if GC transaction allocation
+ fails
+ * netfilter: nft_set_hash: try later when GC hits EAGAIN on iteration
+ * netfilter: nf_tables: fix memleak when more than 255 elements expired
+ * netfilter: nf_tables: disallow element removal on anonymous sets
+ * netfilter: ipset: Fix race between IPSET_CMD_CREATE and IPSET_CMD_SWAP
+ (CVE-2023-42756)
+ * netfilter: nf_tables: unregister flowtable hooks on netns exit
+ * netfilter: nf_tables: double hook unregistration in netns path
+ * ipv4: fix null-deref in ipv4_link_failure
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 29 Sep 2023 06:25:15 +0200
+
+linux (5.10.191-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.180
+ - seccomp: Move copy_seccomp() to no failure path.
+ - [arm64] KVM: arm64: Fix buffer overflow in kvm_arm_set_fw_reg()
+ - wifi: brcmfmac: slab-out-of-bounds read in brcmf_get_assoc_ies()
+ (CVE-2023-1380)
+ - drm/fb-helper: set x/yres_virtual in drm_fb_helper_check_var
+ - bluetooth: Perform careful capability checks in hci_sock_ioctl()
+ (CVE-2023-2002)
+ - [x86] fpu: Prevent FPU state corruption
+ - USB: serial: option: add UNISOC vendor and TOZED LT70C product
+ - driver core: Don't require dynamic_debug for initcall_debug probe timing
+ - [x86] ASoC: Intel: bytcr_rt5640: Add quirk for the Acer Iconia One 7
+ B1-750
+ - asm-generic/io.h: suppress endianness warnings for readq() and writeq()
+ - wireguard: timers: cast enum limits members to int in prints
+ - PCI: pciehp: Fix AB-BA deadlock between reset_lock and device_lock
+ - [arm64] PCI: qcom: Fix the incorrect register usage in v2.7.0 config
+ - [arm64,armhf] USB: dwc3: fix runtime pm imbalance on probe errors
+ - [arm64,armhf] USB: dwc3: fix runtime pm imbalance on unbind
+ - [x86] hwmon: (k10temp) Check range scale when CUR_TEMP register is
+ read-write
+ - hwmon: (adt7475) Use device_property APIs when configuring polarity
+ - posix-cpu-timers: Implement the missing timer_wait_running callback
+ - perf sched: Cast PTHREAD_STACK_MIN to int as it may turn into
+ sysconf(__SC_THREAD_STACK_MIN_VALUE)
+ - blk-mq: release crypto keyslot before reporting I/O complete
+ - blk-crypto: make blk_crypto_evict_key() return void
+ - blk-crypto: make blk_crypto_evict_key() more robust
+ - ext4: use ext4_journal_start/stop for fast commit transactions
+ - xhci: fix debugfs register accesses while suspended
+ - tick/nohz: Fix cpu_is_hotpluggable() by checking with nohz subsystem
+ - [mips*] fw: Allow firmware to pass a empty env
+ - ipmi:ssif: Add send_retries increment
+ - ipmi: fix SSIF not responding under certain cond.
+ - kheaders: Use array declaration instead of char
+ - [arm64,armhf] pwm: meson: Fix axg ao mux parents
+ - [arm64,armhf] pwm: meson: Fix g12a ao clk81 name
+ - ring-buffer: Sync IRQ works before buffer destruction
+ - crypto: api - Demote BUG_ON() in crypto_unregister_alg() to a WARN_ON()
+ - [arm64] crypto: safexcel - Cleanup ring IRQ workqueues on load failure
+ - rcu: Avoid stack overflow due to __rcu_irq_enter_check_tick() being
+ kprobe-ed
+ - reiserfs: Add security prefix to xattr name in reiserfs_security_write()
+ - [x86] KVM: nVMX: Emulate NOPs in L2, and PAUSE if it's not intercepted
+ - relayfs: fix out-of-bounds access in relay_file_read (CVE-2023-3268)
+ - writeback, cgroup: fix null-ptr-deref write in bdi_split_work_to_wbs
+ - [armhf] i2c: omap: Fix standard mode false ACK readings
+ - [amd64] iommu/amd: Fix "Guest Virtual APIC Table Root Pointer"
+ configuration in IRTE
+ - Revert "ubifs: dirty_cow_znode: Fix memleak in error handling path"
+ - ubifs: Fix memleak when insert_old_idx() failed
+ - ubi: Fix return value overwrite issue in try_write_vid_and_data()
+ - ubifs: Free memory for tmpfile name
+ - nilfs2: do not write dirty data after degenerating to read-only
+ - nilfs2: fix infinite loop in nilfs_mdt_get_block()
+ - md/raid10: fix null-ptr-deref in raid10_sync_request
+ - [arm64] mailbox: zynqmp: Fix IPI isr handling
+ - [arm64] mailbox: zynqmp: Fix typo in IPI documentation
+ - wifi: rtl8xxxu: RTL8192EU always needs full init
+ - [arm64,armhf] clk: rockchip: rk3399: allow clk_cifout to force
+ clk_cifout_src to reparent
+ - rcu: Fix missing TICK_DEP_MASK_RCU_EXP dependency check
+ - selinux: fix Makefile dependencies of flask.h
+ - selinux: ensure av_permissions.h is built when needed
+ - tpm, tpm_tis: Do not skip reset of original interrupt vector
+ - tpm, tpm_tis: Claim locality before writing TPM_INT_ENABLE register
+ - tpm, tpm_tis: Disable interrupts if tpm_tis_probe_irq() failed
+ - tpm, tpm_tis: Claim locality before writing interrupt registers
+ - tpm, tpm: Implement usage counter for locality
+ - tpm, tpm_tis: Claim locality when interrupts are reenabled on resume
+ - erofs: stop parsing non-compact HEAD index if clusterofs is invalid
+ - erofs: fix potential overflow calculating xattr_isize
+ - [arm64,armhf] drm/rockchip: Drop unbalanced obj unref
+ - drm/vgem: add missing mutex_destroy
+ - drm/probe-helper: Cancel previous job before starting new one
+ - [arm64] drm/msm/disp/dpu: check for crtc enable rather than crtc active to
+ release shared resources
+ - [amd64] EDAC/skx: Fix overflows on the DRAM row address mapping arrays
+ - [x86] MCE/AMD: Use an u64 for bank_map
+ - [arm64] firmware: qcom_scm: Clear download bit during reboot
+ - [arm64] drm/bridge: adv7533: Fix adv7533_mode_valid for adv7533 and
+ adv7535
+ - [arm64] drm/msm/adreno: Defer enabling runpm until hw_init()
+ - [arm64] drm/msm/adreno: drop bogus pm_runtime_set_active()
+ - [arm64] drm: msm: adreno: Disable preemption on Adreno 510
+ - [x86] ACPI: processor: Fix evaluating _PDC method when running as Xen dom0
+ - [arm64] mmc: sdhci-of-esdhc: fix quirk to ignore command inhibit for data
+ - [arm64,armhf] drm/lima/lima_drv: Add missing unwind goto in
+ lima_pdev_probe()
+ - regulator: core: Consistently set mutex_owner when using
+ ww_mutex_lock_slow()
+ - regulator: core: Avoid lockdep reports when resolving supplies
+ - media: dm1105: Fix use after free bug in dm1105_remove due to race
+ condition (CVE-2023-35824)
+ - media: saa7134: fix use after free bug in saa7134_finidev due to race
+ condition (CVE-2023-35823)
+ - [x86] apic: Fix atomic update of offset in reserve_eilvt_offset()
+ - [x86] ioapic: Don't return 0 from arch_dynirq_lower_bound()
+ - debugobject: Prevent init race with static objects
+ - [x86] drm/i915: Make intel_get_crtc_new_encoder() less oopsy
+ - tick/sched: Use tick_next_period for lockless quick check
+ - tick/sched: Reduce seqcount held scope in tick_do_update_jiffies64()
+ - tick/sched: Optimize tick_do_update_jiffies64() further
+ - tick: Get rid of tick_period
+ - tick/common: Align tick period with the HZ tick.
+ - wifi: ath6kl: minor fix for allocation size
+ - wifi: ath9k: hif_usb: fix memory leak of remain_skbs
+ - wifi: ath5k: fix an off by one check in ath5k_eeprom_read_freq_list()
+ - wifi: ath6kl: reduce WARN to dev_dbg() in callback
+ - tools: bpftool: Remove invalid \' json escape
+ - wifi: rtw88: mac: Return the original error from rtw_pwr_seq_parser()
+ - wifi: rtw88: mac: Return the original error from rtw_mac_power_switch()
+ - bpf: take into account liveness when propagating precision
+ - bpf: fix precision propagation verbose logging
+ - scm: fix MSG_CTRUNC setting condition for SO_PASSSEC
+ - bpf: Remove misleading spec_v1 check on var-offset stack read
+ - vlan: partially enable SIOCSHWTSTAMP in container
+ - net/packet: annotate accesses to po->xmit
+ - net/packet: convert po->origdev to an atomic flag
+ - net/packet: convert po->auxdata to an atomic flag
+ - scsi: target: Rename struct sense_info to sense_detail
+ - scsi: target: Rename cmd.bad_sector to cmd.sense_info
+ - scsi: target: Make state_list per CPU
+ - scsi: target: Fix multiple LUN_RESET handling
+ - scsi: target: iscsit: Fix TAS handling during conn cleanup
+ - scsi: megaraid: Fix mega_cmd_done() CMDID_INT_CMDS
+ - f2fs: handle dqget error in f2fs_transfer_project_quota()
+ - f2fs: enforce single zone capacity
+ - f2fs: apply zone capacity to all zone type
+ - f2fs: compress: fix to call f2fs_wait_on_page_writeback() in
+ f2fs_write_raw_pages()
+ - [arm64] crypto: caam - Clear some memory in instantiate_rng
+ - wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_rfreg()
+ - wifi: rtlwifi: fix incorrect error codes in rtl_debugfs_set_write_reg()
+ - net: qrtr: correct types of trace event parameters
+ - bpftool: Fix bug for long instructions in program CFG dumps
+ - crypto: drbg - make drbg_prepare_hrng() handle jent instantiation errors
+ - crypto: drbg - Only fail when jent is unavailable in FIPS mode
+ - xsk: Fix unaligned descriptor validation
+ - f2fs: fix to avoid use-after-free for cached IPU bio
+ - scsi: lpfc: Fix ioremap issues in lpfc_sli4_pci_mem_setup()
+ - [arm64,armhf] net: ethernet: stmmac: dwmac-rk: fix optional phy regulator
+ handling
+ - bpf, sockmap: fix deadlocks in the sockhash and sockmap
+ - nvme: handle the persistent internal error AER
+ - nvme: fix async event trace event
+ - bpf, sockmap: Revert buggy deadlock fix in the sockhash and sockmap
+ - md/raid10: fix leak of 'r10bio->remaining' for recovery
+ - md/raid10: fix memleak for 'conf->bio_split'
+ - md/raid10: fix memleak of md thread
+ - wifi: iwlwifi: yoyo: Fix possible division by zero
+ - wifi: iwlwifi: fw: move memset before early return
+ - jdb2: Don't refuse invalidation of already invalidated buffers
+ - wifi: iwlwifi: make the loop for card preparation effective
+ - wifi: iwlwifi: mvm: check firmware response size
+ - wifi: iwlwifi: fw: fix memory leak in debugfs
+ - ixgbe: Allow flow hash to be set via ethtool
+ - ixgbe: Enable setting RSS table to default values
+ - bpf: Don't EFAULT for getsockopt with optval=NULL
+ - netfilter: nf_tables: don't write table validation state without mutex
+ - net/sched: sch_fq: fix integer overflow of "credit"
+ - ipv4: Fix potential uninit variable access bug in __ip_make_skb()
+ - Revert "Bluetooth: btsdio: fix use after free bug in btsdio_remove due to
+ unfinished work"
+ - netlink: Use copy_to_user() for optval in netlink_getsockopt().
+ - net: amd: Fix link leak when verifying config failed
+ - tcp/udp: Fix memleaks of sk and zerocopy skbs with TX timestamp.
+ - pstore: Revert pmsg_lock back to a normal mutex
+ - [arm64,armhf] usb: dwc3: gadget: Change condition for processing suspend
+ event
+ - fpga: bridge: fix kernel-doc parameter description
+ - iio: light: max44009: add missing OF device matching
+ - [armhf] spi: spi-imx: using pm_runtime_resume_and_get instead of
+ pm_runtime_get_sync
+ - [armhf] spi: imx: Don't skip cleanup in remove's error path
+ - [armhf] PCI: imx6: Install the fault handler only on compatible match
+ - ASoC: es8316: Use IRQF_NO_AUTOEN when requesting the IRQ
+ - ASoC: es8316: Handle optional IRQ assignment
+ - linux/vt_buffer.h: allow either builtin or modular for macros
+ - [arm64] spi: qup: Don't skip cleanup in remove's error path
+ - [x86] vmci_host: fix a race condition in vmci_host_poll() causing GPF
+ - of: Fix modalias string generation
+ - [arm64,armhf] usb: chipidea: fix missing goto in `ci_hdrc_probe`
+ - [arm64] tty: serial: fsl_lpuart: adjust buffer length to the intended size
+ - serial: 8250: Add missing wakeup event reporting
+ - [x86] staging: rtl8192e: Fix W_DISABLE# does not work after stop/start
+ - [arm64] spmi: Add a check for remove callback when removing a SPMI driver
+ - [powerpc*] rtas: use memmove for potentially overlapping buffer copy
+ - perf/core: Fix hardlockup failure caused by perf throttle
+ - [amd64] RDMA/rdmavt: Delete unnecessary NULL check
+ - workqueue: Rename "delayed" (delayed by active management) to "inactive"
+ - workqueue: Fix hung time report of worker pools
+ - [armhf] rtc: omap: include header for omap_rtc_power_off_program prototype
+ - RDMA/mlx4: Prevent shift wrapping in set_user_sq_size()
+ - [arm64,armhf] rtc: meson-vrtc: Use ktime_get_real_ts64() to get the
+ current time
+ - clk: add missing of_node_put() in "assigned-clocks" property parsing
+ - RDMA/siw: Remove namespace check from siw_netdev_event()
+ - RDMA/cm: Trace icm_send_rej event before the cm state is reset
+ - RDMA/srpt: Add a check for valid 'mad_agent' pointer
+ - [amd64] IB/hfi1: Fix SDMA mmu_rb_node not being evicted in LRU order
+ - [amd64] IB/hfi1: Add AIP tx traces
+ - [amd64] IB/hfi1: Add additional usdma traces
+ - [amd64] IB/hfi1: Fix bugs with non-PAGE_SIZE-end multi-iovec user SDMA
+ requests
+ - NFSv4.1: Always send a RECLAIM_COMPLETE after establishing lease
+ - [arm*] firmware: raspberrypi: Introduce devm_rpi_firmware_get()
+ - RDMA/mlx5: Fix flow counter query via DEVX
+ - SUNRPC: remove the maximum number of retries in call_bind_status
+ - RDMA/mlx5: Use correct device num_ports when modify DC
+ - ext4: fix use-after-free read in ext4_find_extent for bigalloc + inline
+ - [arm64] dmaengine: mv_xor_v2: Fix an error code.
+ - [armhf] leds: tca6507: Fix error handling of using
+ fwnode_property_read_string
+ - [arm64,armhf] phy: tegra: xusb: Add missing tegra_xusb_port_unregister for
+ usb2_port and ulpi_port
+ - afs: Fix updating of i_size with dv jump from server
+ - btrfs: scrub: reject unsupported scrub flags
+ - [s390x] dasd: fix hanging blockdevice after request requeue
+ - dm integrity: call kmem_cache_destroy() in dm_integrity_init() error path
+ - dm flakey: fix a crash with invalid table line
+ - dm ioctl: fix nested locking in table_clear() to remove deadlock concern
+ (CVE-2023-2269)
+ - perf auxtrace: Fix address filter entire kernel size
+ - perf intel-pt: Fix CYC timestamps after standalone CBR
+ - [arm64] Always load shadow stack pointer directly from the task struct
+ - [arm64] Stash shadow stack pointer in the task struct on interrupt
+ - debugobject: Ensure pool refill (again)
+ - scsi: target: core: Avoid smp_processor_id() in preemptible code
+ - tty: create internal tty.h file
+ - tty: audit: move some local functions out of tty.h
+ - tty: move some internal tty lock enums and functions out of tty.h
+ - tty: move some tty-only functions to drivers/tty/tty.h
+ - tty: clean include/linux/tty.h up
+ - tty: Prevent writing chars during tcsetattr TCSADRAIN/FLUSH
+ - ring-buffer: Ensure proper resetting of atomic variables in
+ ring_buffer_reset_online_cpus
+ - [amd64] crypto: ccp - Clear PSP interrupt status register before calling
+ handler
+ - [arm64] mailbox: zynq: Switch to flexible array to simplify code
+ - [arm64] mailbox: zynqmp: Fix counts of child nodes
+ - dm verity: skip redundant verity_handle_err() on I/O errors
+ - dm verity: fix error handling for check_at_most_once on FEC
+ - scsi: qedi: Fix use after free bug in qedi_remove()
+ - [armhf] net/ncsi: clear Tx enable mode when handling a Config required AEN
+ - net/sched: cls_api: remove block_cb from driver_list before freeing
+ - sit: update dev->needed_headroom in ipip6_tunnel_bind_dev()
+ - [arm64,armhf] net: dsa: mv88e6xxx: add mv88e6321 rsvd2cpu
+ - writeback: fix call of incorrect macro
+ - [arm64,armhf] watchdog: dw_wdt: Fix the error handling path of
+ dw_wdt_drv_probe()
+ - net/sched: act_mirred: Add carrier check
+ - sfc: Fix module EEPROM reporting for QSFP modules
+ - rxrpc: Fix hard call timeout units
+ - af_packet: Don't send zero-byte data in packet_sendmsg_spkt().
+ - drm/amdgpu: add a missing lock for AMDGPU_SCHED
+ - ALSA: caiaq: input: Add error handling for unsupported input methods in
+ `snd_usb_caiaq_input_init`
+ - virtio_net: split free_unused_bufs()
+ - virtio_net: suppress cpu stall when free_unused_bufs
+ - [arm64] net: enetc: check the index of the SFI rather than the handle
+ - crypto: sun8i-ss - Fix a test in sun8i_ss_setup_ivs()
+ - btrfs: fix btrfs_prev_leaf() to not return the same key twice
+ - btrfs: don't free qgroup space unless specified
+ - btrfs: print-tree: parent bytenr must be aligned to sector size
+ - cifs: fix pcchunk length type in smb2_copychunk_range
+ - inotify: Avoid reporting event with invalid wd
+ - [armhf] remoteproc: stm32: Call of_node_put() on iteration error
+ - [armhf] dts: exynos: fix WM8960 clock name in Itop Elite
+ - f2fs: fix potential corruption when moving a directory
+ - [armhf] drm/panel: otm8009a: Set backlight parent to panel device
+ - drm/amdgpu: fix an amdgpu_irq_put() issue in gmc_v9_0_hw_fini()
+ - drm/amdgpu/gfx: disable gfx9 cp_ecc_error_irq only when enabling legacy
+ gfx ras
+ - drm/amdgpu: disable sdma ecc irq only when sdma RAS is enabled in suspend
+ - HID: wacom: Set a default resolution for older tablets
+ - HID: wacom: insert timestamp to packed Bluetooth (BT) events
+ - [x86] KVM: x86: do not report a vCPU as preempted outside instruction
+ boundaries (CVE-2022-39189)
+ - ext4: fix WARNING in mb_find_extent
+ - ext4: avoid a potential slab-out-of-bounds in ext4_group_desc_csum
+ (CVE-2023-34256)
+ - ext4: fix data races when using cached status extents
+ - ext4: check iomap type only if ext4_iomap_begin() does not fail
+ - ext4: improve error recovery code paths in __ext4_remount()
+ - ext4: fix deadlock when converting an inline directory in nojournal mode
+ - ext4: add bounds checking in get_max_inline_xattr_value_size()
+ - ext4: bail out of ext4_xattr_ibody_get() fails for any reason
+ - ext4: remove a BUG_ON in ext4_mb_release_group_pa()
+ - ext4: fix invalid free tracking in ext4_xattr_move_to_block()
+ - serial: 8250: Fix serial8250_tx_empty() race with DMA Tx
+ - drbd: correctly submit flush bio on barrier
+ - [x86] KVM: x86: Ensure PV TLB flush tracepoint reflects KVM behavior
+ - [x86] KVM: x86: Fix recording of guest steal time / preempted status
+ - [x86] KVM: Fix steal time asm constraints
+ - [x86] KVM: x86: Remove obsolete disabling of page faults in
+ kvm_arch_vcpu_put()
+ - [x86] KVM: x86: do not set st->preempted when going back to user space
+ - [x86] KVM: x86: revalidate steal time cache if MSR value changes
+ - [x86] KVM: x86: do not report preemption if the steal time cache is stale
+ - [x86] KVM: x86: move guest_pv_has out of user_access section
+ - printk: declare printk_deferred_{enter,safe}() in include/linux/printk.h
+ - [armhf] drm/exynos: move to use request_irq by IRQF_NO_AUTOEN flag
+ - mm/page_alloc: fix potential deadlock on zonelist_update_seq seqlock
+ - drm/amd/display: Fix hang when skipping modeset
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.181
+ - driver core: add a helper to setup both the of_node and fwnode of a device
+ - drm/mipi-dsi: Set the fwnode for mipi_dsi_device
+ - linux/dim: Do nothing if no time delta between samples
+ - net: Fix load-tearing on sk->sk_stamp in sock_recv_cmsgs().
+ - netfilter: conntrack: fix possible bug_on with enable_hooks=1
+ - netlink: annotate accesses to nlk->cb_running
+ - net: annotate sk->sk_err write from do_recvmmsg()
+ - net: deal with most data-races in sk_wait_event()
+ - net: tap: check vlan with eth_type_vlan() method
+ - net: add vlan_get_protocol_and_depth() helper
+ - tcp: factor out __tcp_close() helper
+ - tcp: add annotations around sk->sk_shutdown accesses
+ - ipvlan:Fix out-of-bounds caused by unclear skb->cb (CVE-2023-3090)
+ - net: datagram: fix data-races in datagram_poll()
+ - af_unix: Fix a data race of sk->sk_receive_queue->qlen.
+ - af_unix: Fix data races around sk->sk_shutdown.
+ - [x86] drm/i915/dp: prevent potential div-by-zero
+ - [x86] fbdev: arcfb: Fix error handling in arcfb_probe()
+ - ext4: remove an unused variable warning with CONFIG_QUOTA=n
+ - ext4: reflect error codes from ext4_multi_mount_protect() to its callers
+ - ext4: don't clear SB_RDONLY when remounting r/w until quota is re-enabled
+ - ext4: fix lockdep warning when enabling MMP
+ - ext4: remove redundant mb_regenerate_buddy()
+ - ext4: drop s_mb_bal_lock and convert protected fields to atomic
+ - ext4: add mballoc stats proc file
+ - ext4: allow to find by goal if EXT4_MB_HINT_GOAL_ONLY is set
+ - ext4: allow ext4_get_group_info() to fail
+ - rcu: Protect rcu_print_task_exp_stall() ->exp_tasks access
+ - fs: hfsplus: remove WARN_ON() from hfsplus_cat_{read,write}_inode()
+ - drm/amd/display: Use DC_LOG_DC in the trasform pixel function
+ - regmap: cache: Return error in cache sync operations for REGCACHE_NONE
+ - memstick: r592: Fix UAF bug in r592_remove due to race condition
+ (CVE-2023-3141)
+ - firmware: arm_sdei: Fix sleep from invalid context BUG
+ - ACPI: EC: Fix oops when removing custom query handlers
+ - [armhf] remoteproc: stm32_rproc: Add mutex protection for workqueue
+ - [arm64,armhf] drm/tegra: Avoid potential 32-bit integer overflow
+ - ACPICA: Avoid undefined behavior: applying zero offset to null pointer
+ - ACPICA: ACPICA: check null return of ACPI_ALLOCATE_ZEROED in
+ acpi_db_display_objects
+ - wifi: ath: Silence memcpy run-time false positive warning
+ - bpf: Annotate data races in bpf_local_storage
+ - wifi: brcmfmac: cfg80211: Pass the PMK in binary instead of hex
+ - scsi: lpfc: Prevent lpfc_debugfs_lockstat_write() buffer overflow
+ - net: Catch invalid index in XPS mapping
+ - scsi: target: iscsit: Free cmds before session free
+ - lib: cpu_rmap: Avoid use after free on rmap->obj array entries
+ - scsi: message: mptlan: Fix use after free bug in mptlan_remove() due to
+ race condition
+ - gfs2: Fix inode height consistency check
+ - ext4: set goal start correctly in ext4_mb_normalize_request
+ - ext4: Fix best extent lstart adjustment logic in ext4_mb_new_inode_pa()
+ - f2fs: fix to drop all dirty pages during umount() if cp_error is set
+ - wifi: iwlwifi: pcie: fix possible NULL pointer dereference
+ - wifi: iwlwifi: pcie: Fix integer overflow in iwl_write_to_user_buf
+ - null_blk: Always check queue mode setting from configfs
+ - wifi: iwlwifi: dvm: Fix memcpy: detected field-spanning write backtrace
+ - wifi: ath11k: Fix SKB corruption in REO destination ring
+ - ipvs: Update width of source for ip_vs_sync_conn_options
+ - Bluetooth: hci_bcm: Fall back to getting bdaddr from EFI if not set
+ - Bluetooth: L2CAP: fix "bad unlock balance" in l2cap_disconnect_rsp
+ - [x86] staging: rtl8192e: Replace macro RTL_PCI_DEVICE with PCI_DEVICE
+ - HID: logitech-hidpp: Don't use the USB serial for USB devices
+ - HID: logitech-hidpp: Reconcile USB and Unifying serials
+ - [armhf] spi: spi-imx: fix MX51_ECSPI_* macros when cs > 3
+ - HID: wacom: generic: Set battery quirk only when we see battery data
+ - usb: typec: tcpm: fix multiple times discover svids error
+ - serial: 8250: Reinit port->pm on port specific driver unbind
+ - recordmcount: Fix memory leaks in the uwrite function
+ - RDMA/core: Fix multiple -Warray-bounds warnings
+ - [arm64,armhf] iommu/arm-smmu-qcom: Limit the SMR groups to 128
+ - [arm64] iommu/arm-smmu-v3: Acknowledge pri/event queue overflow if any
+ - Input: xpad - add constants for GIP interface numbers
+ - btrfs: move btrfs_find_highest_objectid/btrfs_find_free_objectid to
+ disk-io.c
+ - btrfs: replace calls to btrfs_find_free_ino with btrfs_find_free_objectid
+ - btrfs: fix space cache inconsistency after error loading it from disk
+ - xfrm: don't check the default policy if the policy allows the packet
+ - Revert "Fix XFRM-I support for nested ESP tunnels"
+ - [arm64] drm/msm/dp: unregister audio driver during unbind
+ - [arm64] drm/msm/dpu: Remove duplicate register defines from INTF
+ - cpupower: Make TSC read per CPU for Mperf monitor
+ - af_key: Reject optional tunnel/BEET mode templates in outbound policies
+ - [arm64,armhf] net: fec: Better handle pm_runtime_get() failing in
+ .remove()
+ - net: phy: dp83867: add w/a for packet errors seen with short cables
+ - ALSA: firewire-digi00x: prevent potential use after free
+ - ALSA: hda/realtek: Apply HP B&O top speaker profile to Pavilion 15
+ - vsock: avoid to close connected socket after the timeout
+ - ipv4/tcp: do not use per netns ctl sockets
+ - net: Find dst with sk's xfrm policy not ctl_sk
+ - tcp: fix possible sk_priority leak in tcp_v4_send_reset()
+ - [armhf] serial: arc_uart: fix of_iomap leak in `arc_serial_probe`
+ - erspan: get the proto with the md version for collect_md
+ - [arm64] net: hns3: fix sending pfc frames after reset issue
+ - [arm64] net: hns3: fix reset delay time to avoid configuration timeout
+ - media: netup_unidvb: fix use-after-free at del_timer()
+ - SUNRPC: Fix trace_svc_register() call site
+ - net: nsh: Use correct mac_offset to unwind gso skb in nsh_gso_segment()
+ - net/tipc: fix tipc header files for kernel-doc
+ - tipc: add tipc_bearer_min_mtu to calculate min mtu
+ - tipc: do not update mtu if msg_max is too small in mtu negotiation
+ - tipc: check the bearer min mtu properly when setting it by netlink
+ - [arm64] net: bcmgenet: Remove phy_stop() from bcmgenet_netif_stop()
+ - [arm64] net: bcmgenet: Restore phy_stop() depending upon suspend/close
+ - wifi: mac80211: fix min center freq offset tracing
+ - wifi: iwlwifi: mvm: don't trust firmware n_channels
+ - [x86] scsi: storvsc: Don't pass unused PFNs to Hyper-V host
+ - cassini: Fix a memory leak in the error handling path of cas_init_one()
+ - igb: fix bit_shift to be in [1..8] range
+ - vlan: fix a potential uninit-value in vlan_dev_hard_start_xmit()
+ - netfilter: nft_set_rbtree: fix null deref on element insertion
+ - bridge: always declare tunnel functions
+ - ALSA: usb-audio: Add a sample rate workaround for Line6 Pod Go
+ - USB: usbtmc: Fix direction for 0-length ioctl control messages
+ - usb-storage: fix deadlock when a scsi command timeouts more than once
+ - [arm64,armhf] usb: dwc3: debugfs: Resume dwc3 before accessing registers
+ - usb: gadget: u_ether: Fix host MAC address case
+ - usb: typec: altmodes/displayport: fix pin_assignment_show
+ - ALSA: hda: Fix Oops by 9.1 surround channel names
+ - ALSA: hda: Add NVIDIA codec IDs a3 through a7 to patch table
+ - ALSA: hda/realtek: Add quirk for Clevo L140AU
+ - ALSA: hda/realtek: Add a quirk for HP EliteDesk 805
+ - ALSA: hda/realtek: Add quirk for 2nd ASUS GU603
+ - can: j1939: recvmsg(): allow MSG_CMSG_COMPAT flag
+ - can: isotp: recvmsg(): allow MSG_CMSG_COMPAT flag
+ - statfs: enforce statfs[64] structure initialization
+ - serial: Add support for Advantech PCI-1611U card
+ - vc_screen: reload load of struct vc_data pointer in vcs_write() to avoid
+ UAF
+ - ceph: force updating the msg pointer in non-split case
+ - tpm/tpm_tis: Disable interrupts for more Lenovo devices
+ - [powerpc*] 64s/radix: Fix soft dirty tracking
+ - nilfs2: fix use-after-free bug of nilfs_root in nilfs_evict_inode()
+ - HID: wacom: Force pen out of prox if no events have been received in a
+ while
+ - HID: wacom: Add new Intuos Pro Small (PTH-460) device IDs
+ - HID: wacom: add three styli to wacom_intuos_get_tool_type
+ - [arm64] KVM: arm64: Link position-independent string routines into
+ .hyp.text
+ - serial: 8250_exar: derive nr_ports from PCI ID for Acces I/O cards
+ - serial: exar: Add support for Sealevel 7xxxC serial cards
+ - serial: 8250_exar: Add support for USR298x PCI Modems
+ - [s390x] qdio: get rid of register asm
+ - [s390x] qdio: fix do_sqbs() inline assembly constraint
+ - [x86] watchdog: sp5100_tco: Immediately trigger upon starting.
+ - writeback, cgroup: remove extra percpu_ref_exit()
+ - net/sched: act_mirred: refactor the handle of xmit
+ - net/sched: act_mirred: better wording on protection against excessive
+ stack growth
+ - act_mirred: use the backlog for nested calls to mirred ingress
+ (CVE-2022-4269)
+ - ocfs2: Switch to security_inode_init_security()
+ - ALSA: hda/ca0132: add quirk for EVGA X299 DARK
+ - ALSA: hda: Fix unhandled register update during auto-suspend period
+ - ALSA: hda/realtek: Enable headset onLenovo M70/M90
+ - net: cdc_ncm: Deal with too low values of dwNtbOutMaxSize
+ - btrfs: use nofs when cleaning up aborted transactions
+ - dt-binding: cdns,usb3: Fix cdns,on-chip-buff-size type
+ - [x86] mm: Avoid incomplete Global INVLPG flushes
+ - [x86] topology: Fix erroneous smp_num_siblings on Intel Hybrid platforms
+ - debugobjects: Don't wake up kswapd from fill_pool()
+ - fbdev: udlfb: Fix endpoint check
+ - net: fix stack overflow when LRO is disabled for virtual interfaces
+ - udplite: Fix NULL pointer dereference in __sk_mem_raise_allocated().
+ - USB: core: Add routines for endpoint checks in old drivers
+ - USB: sisusbvga: Add endpoint checks
+ - media: radio-shark: Add endpoint checks
+ - net: fix skb leak in __skb_tstamp_tx()
+ - bpf: Fix mask generation for 32-bit narrow loads of 64-bit fields
+ - ipv6: Fix out-of-bounds access in ipv6_find_tlv()
+ - power: supply: leds: Fix blink to LED on transition
+ - power: supply: bq27xxx: Fix bq27xxx_battery_update() race condition
+ - power: supply: bq27xxx: Fix I2C IRQ race on remove
+ - power: supply: bq27xxx: Fix poll_interval handling and races on remove
+ - fs: fix undefined behavior in bit shift for SB_NOUSER
+ - [x86] show_trace_log_lvl: Ensure stack pointer is aligned, again
+ - [x86] ASoC: Intel: Skylake: Fix declaration of enum skl_ch_cfg
+ - [x86] forcedeth: Fix an error handling path in nv_probe()
+ - net/mlx5e: do as little as possible in napi poll when budget is 0
+ - net/mlx5: DR, Fix crc32 calculation to work on big-endian (BE) CPUs
+ - net/mlx5: Fix error message when failing to allocate device memory
+ - net/mlx5: Devcom, fix error flow in mlx5_devcom_register_device
+ - [x86] 3c589_cs: Fix an error handling path in tc589_probe()
+ - net: phy: mscc: add VSC8502 to MODULE_DEVICE_TABLE
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.182
+ - [x86] cpu: Add Raptor Lake to Intel family
+ - [x86] cpu: Drop spurious underscore from RAPTOR_LAKE #define
+ - power: supply: bq27xxx: fix polarity of current_now
+ - power: supply: bq27xxx: fix sign of current_now for newer ICs
+ - power: supply: bq27xxx: make status more robust
+ - power: supply: bq27xxx: Add cache parameter to
+ bq27xxx_battery_current_and_status()
+ - power: supply: bq27xxx: expose battery data when CI=1
+ - power: supply: bq27xxx: Move bq27xxx_battery_update() down
+ - power: supply: bq27xxx: Ensure power_supply_changed() is called on current
+ sign changes
+ - power: supply: bq27xxx: After charger plug in/out wait 0.5s for things to
+ stabilize
+ - power: supply: core: Refactor
+ power_supply_set_input_current_limit_from_supplier()
+ - [x86] power: supply: bq24190: Call power_supply_changed() after updating
+ input current
+ - regulator: Add regmap helper for ramp-delay setting
+ - net/mlx5: devcom only supports 2 ports
+ - net/mlx5: Devcom, serialize devcom registration
+ - net: phy: mscc: enable VSC8501/2 RGMII RX clock
+ - bluetooth: Add cmd validity checks at the start of hci_sock_ioctl()
+ - [arm*] binder: fix UAF caused by faulty buffer cleanup (CVE-2023-21255)
+ - ipv{4,6}/raw: fix output xfrm lookup wrt protocol
+ - netfilter: ctnetlink: Support offloaded conntrack entry deletion
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.183
+ - [arm64,armhf] iommu/rockchip: Fix unwind goto issue
+ - [amd64] iommu/amd: Don't block updates to GATag if guest mode is on
+ - [arm64,armhf] dmaengine: pl330: rename _start to prevent build error
+ - net/mlx5: fw_tracer, Fix event handling
+ - netrom: fix info-leak in nr_write_internal()
+ - af_packet: Fix data-races of pkt_sk(sk)->num.
+ - [amd64,arm64] amd-xgbe: fix the false linkup in xgbe_phy_status
+ - af_packet: do not use READ_ONCE() in packet_bind()
+ - tcp: deny tcp_disconnect() when threads are waiting
+ - tcp: Return user_mss for TCP_MAXSEG in CLOSE/LISTEN state if user_mss set
+ - net/sched: sch_ingress: Only create under TC_H_INGRESS
+ - net/sched: sch_clsact: Only create under TC_H_CLSACT
+ - net/sched: Reserve TC_H_INGRESS (TC_H_CLSACT) for ingress (clsact) Qdiscs
+ - net/sched: Prohibit regrafting ingress or clsact Qdiscs
+ - net: sched: fix NULL pointer dereference in mq_attach
+ - net/netlink: fix NETLINK_LIST_MEMBERSHIPS length report
+ - udp6: Fix race condition in udp6_sendmsg & connect
+ - net/mlx5: Read embedded cpu after init bit cleared
+ - net/sched: flower: fix possible OOB write in fl_set_geneve_opt()
+ (CVE-2023-35788)
+ - [arm64,armhf] net: dsa: mv88e6xxx: Increase wait after reset deactivation
+ - [armhf] mtd: rawnand: marvell: ensure timing values are written
+ - [armhf] mtd: rawnand: marvell: don't set the NAND frequency select
+ - ALSA: hda: Glenfly: add HD Audio PCI IDs and HDMI Codec Vendor IDs.
+ - btrfs: abort transaction when sibling keys check fails for leaves
+ - [armel] ARM: 9295/1: unwind:fix unwind abort for uleb128 case
+ - gfs2: Don't deref jdesc in evict (CVE-2023-3212)
+ - fbdev: modedb: Add 1920x1080 at 60 Hz video mode
+ - nbd: Fix debugfs_create_dir error checking
+ - xfrm: Check if_id in inbound policy/secpath match
+ - ASoC: dt-bindings: Adjust #sound-dai-cells on TI's single-DAI codecs
+ - media: dvb_demux: fix a bug for the continuity counter
+ - media: dvb-usb: az6027: fix three null-ptr-deref in az6027_i2c_xfer()
+ - media: dvb-usb-v2: ec168: fix null-ptr-deref in ec168_i2c_xfer()
+ - media: dvb-usb-v2: ce6230: fix null-ptr-deref in ce6230_i2c_master_xfer()
+ - media: dvb-usb-v2: rtl28xxu: fix null-ptr-deref in rtl28xxu_i2c_xfer
+ - media: dvb-usb: digitv: fix null-ptr-deref in digitv_i2c_xfer()
+ - media: dvb-usb: dw2102: fix uninit-value in su3000_read_mac_address
+ - media: netup_unidvb: fix irq init by register it at the end of probe
+ - media: dvb_ca_en50221: fix a size write bug
+ - media: ttusb-dec: fix memory leak in ttusb_dec_exit_dvb()
+ - media: dvb-core: Fix use-after-free due on race condition at dvb_net
+ - media: dvb-core: Fix kernel WARNING for blocking operation in
+ wait_event*() (CVE-2023-31084)
+ - media: dvb-core: Fix use-after-free due to race condition at
+ dvb_ca_en50221
+ - wifi: rtl8xxxu: fix authentication timeout due to incorrect RCR value
+ - [arm64] mm: mark private VM_FAULT_X defines as vm_fault_t
+ - scsi: core: Decrease scsi_device's iorequest_cnt if dispatch failed
+ - netfilter: conntrack: define variables exp_nat_nla_policy and any_addr
+ with CONFIG_NF_NAT
+ - ALSA: oss: avoid missing-prototype warnings
+ - [arm64] drm/msm: Be more shouty if per-process pgtables aren't working
+ - atm: hide unused procfs functions
+ - HID: google: add jewel USB id
+ - HID: wacom: avoid integer overflow in wacom_intuos_inout()
+ - iio: imu: inv_icm42600: fix timestamp reset
+ - iio: light: vcnl4035: fixed chip ID check
+ - iio: dac: mcp4725: Fix i2c_master_send() return value handling
+ - iio: adc: ad7192: Change "shorted" channels to differential
+ - net: usb: qmi_wwan: Set DTR quirk for BroadMobi BM818
+ - usb: gadget: f_fs: Add unbind event before functionfs_unbind
+ - ata: libata-scsi: Use correct device no in ata_find_dev()
+ - x86/boot: Wrap literal addresses in absolute_pointer()
+ - ACPI: thermal: drop an always true check
+ - ath6kl: Use struct_group() to avoid size-mismatched casting
+ - eth: sun: cassini: remove dead code
+ - mmc: vub300: fix invalid response handling
+ - [arm64] tty: serial: fsl_lpuart: use UARTCTRL_TXINV to send break instead
+ of UARTCTRL_SBK
+ - btrfs: fix csum_tree_block page iteration to avoid tripping on
+ -Werror=array-bounds
+ - selinux: don't use make's grouped targets feature yet
+ - tracing/probe: trace_probe_primary_from_call(): checked list_first_entry
+ - ext4: add EA_INODE checking to ext4_iget()
+ - ext4: set lockdep subclass for the ea_inode in
+ ext4_xattr_inode_cache_find()
+ - ext4: disallow ea_inodes with extended attributes
+ - ext4: add lockdep annotations for i_data_sem for ea_inode's
+ - fbcon: Fix null-ptr-deref in soft_cursor
+ - [arm64,armhf] serial: 8250_tegra: Fix an error handling path in
+ tegra_uart_probe()
+ - [x86] KVM: x86: Account fastpath-only VM-Exits in vCPU stats
+ - KEYS: asymmetric: Copy sig and digest in public_key_verify_signature()
+ - regmap: Account for register length when chunking
+ - tpm, tpm_tis: Request threaded interrupt handler
+ - [x86] scsi: dpt_i2o: Remove broken pass-through ioctl (I2OUSERCMD)
+ (CVE-2023-2007)
+ - [x86] scsi: dpt_i2o: Do not process completions with invalid addresses
+ - [amd64] crypto: ccp: Reject SEV commands with mismatching command buffer
+ - [amd64] crypto: ccp: Play nice with vmalloc'd memory for SEV command
+ structs (Closes: #1036543)
+ - ext4: enable the lazy init thread when remounting read/write
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.184
+ - remove the sx8 block driver
+ - f2fs: fix iostat lock protection
+ - blk-iocost: avoid 64-bit division in ioc_timer_fn
+ - i40iw: fix build warning in i40iw_manage_apbvt()
+ - i40e: fix build warnings in i40e_alloc.h
+ - i40e: fix build warning in ice_fltr_add_mac_to_list()
+ - [arm*] staging: vchiq_core: drop vchiq_status from vchiq_initialise
+ - [arm64] spi: qup: Request DMA before enabling clocks
+ - afs: Fix setting of mtime when creating a file/dir/symlink
+ - neighbour: fix unaligned access to pneigh_entry
+ - net/smc: Avoid to access invalid RMBs' MRs in SMCRv1 ADD LINK CONT
+ - net/sched: fq_pie: ensure reasonable TCA_FQ_PIE_QUANTUM values
+ - Bluetooth: Fix l2cap_disconnect_req deadlock
+ - Bluetooth: L2CAP: Add missing checks for invalid DCID
+ - qed/qede: Fix scheduling while atomic
+ - netfilter: conntrack: fix NULL pointer dereference in nf_confirm_cthelper
+ - netfilter: ipset: Add schedule point in call_ad().
+ - rfs: annotate lockless accesses to sk->sk_rxhash
+ - rfs: annotate lockless accesses to RFS sock flow table
+ - net: sched: move rtm_tca_policy declaration to include file
+ - net: sched: fix possible refcount leak in tc_chain_tmplt_add()
+ - bpf: Add extra path pointer check to d_path helper
+ - lib: cpu_rmap: Fix potential use-after-free in irq_cpu_rmap_release()
+ - bnxt_en: Don't issue AP reset during ethtool's reset operation
+ - bnxt_en: Query default VLAN before VNIC setup on a VF
+ - bnxt_en: Implement .set_port / .unset_port UDP tunnel callbacks
+ - batman-adv: Broken sync while rescheduling delayed work
+ - Input: xpad - delete a Razer DeathAdder mouse VID/PID entry
+ - Input: psmouse - fix OOB access in Elantech protocol
+ - ALSA: hda/realtek: Add a quirk for HP Slim Desktop S01
+ - ALSA: hda/realtek: Add Lenovo P3 Tower platform
+ - drm/amdgpu: fix xclk freq on CHIP_STONEY
+ - can: j1939: j1939_sk_send_loop_abort(): improved error queue handling in
+ J1939 Socket
+ - can: j1939: change j1939_netdev_lock type to mutex
+ - can: j1939: avoid possible use-after-free when j1939_can_rx_register fails
+ - ceph: fix use-after-free bug for inodes when flushing capsnaps
+ - [s390x] dasd: Use correct lock while counting channel queue length
+ - Bluetooth: Fix use-after-free in hci_remove_ltk/hci_remove_irk
+ - Bluetooth: hci_qca: fix debugfs registration
+ - rbd: move RBD_OBJ_FLAG_COPYUP_ENABLED flag setting
+ - rbd: get snapshot context after exclusive lock is ensured to be held
+ - [arm64] pinctrl: meson-axg: add missing GPIOA_18 gpio group
+ - usb: usbfs: Enforce page requirements for mmap
+ - usb: usbfs: Use consistent mmap functions
+ - [arm*] staging: vc04_services: fix gcc-13 build warning
+ - vhost: support PACKED when setting-getting vring_base
+ - Revert "ext4: don't clear SB_RDONLY when remounting r/w until quota is
+ re-enabled"
+ - ext4: only check dquot_initialize_needed() when debugging
+ - tcp: fix tcp_min_tso_segs sysctl
+ - xfs: verify buffer contents when we skip log replay (CVE-2023-2124)
+ - drm/atomic: Don't pollute crtc_state->mode_blob with error pointers
+ - btrfs: check return value of btrfs_commit_transaction in relocation
+ - btrfs: unset reloc control if transaction commit fails in
+ prepare_to_relocate() (CVE-2023-3111)
+ - [x86] Revert "staging: rtl8192e: Replace macro RTL_PCI_DEVICE with
+ PCI_DEVICE"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.185
+ - lib: cleanup kstrto*() usage
+ - kernel.h: split out kstrtox() and simple_strtox() to a separate header
+ - power: supply: bq27xxx: Use mod_delayed_work() instead of cancel() +
+ schedule()
+ - [armhf] dts: vexpress: add missing cache properties
+ - power: supply: Ratelimit no data debug output
+ - [x86] platform/x86: asus-wmi: Ignore WMI events with codes 0x7B, 0xC0
+ - regulator: Fix error checking for debugfs_create_dir
+ - [arm64,armhf] irqchip/gic-v3: Disable pseudo NMIs on Mediatek devices w/
+ firmware issues
+ - power: supply: Fix logic checking if system is running from battery
+ - btrfs: scrub: try harder to mark RAID56 block groups read-only
+ - btrfs: handle memory allocation failure in btrfs_csum_one_bio
+ - ASoC: soc-pcm: test if a BE can be prepared
+ - [mips*] Move initrd_start check after initrd address sanitisation.
+ - xen/blkfront: Only check REQ_FUA for writes
+ - drm:amd:amdgpu: Fix missing buffer object unlock in failure path
+ - [arm64,armhf] irqchip/gic: Correctly validate OF quirk descriptors
+ - io_uring: hold uring mutex around poll removal (CVE-2023-3389)
+ - epoll: ep_autoremove_wake_function should use list_del_init_careful
+ - ocfs2: fix use-after-free when unmounting read-only filesystem
+ - ocfs2: check new file size on fallocate call
+ - nilfs2: fix incomplete buffer cleanup in nilfs_btnode_abort_change_key()
+ - nilfs2: fix possible out-of-bounds segment allocation in resize ioctl
+ - kexec: support purgatories with .text.hot sections
+ - [x86] purgatory: remove PGO flags
+ - [powerpc*] purgatory: remove PGO flags
+ - nouveau: fix client work fence deletion race
+ - RDMA/uverbs: Restrict usage of privileged QKEYs
+ - net: usb: qmi_wwan: add support for Compal RXM-G1
+ - ALSA: hda/realtek: Add a quirk for Compaq N14JP6
+ - Remove DECnet support from kernel (CVE-2023-3338)
+ - USB: serial: option: add Quectel EM061KGL series
+ - [arm64,armhf] usb: dwc3: gadget: Reset num TRBs before giving back the
+ request
+ - [arm64] spi: fsl-dspi: avoid SCK glitches with continuous transfers
+ - netfilter: nfnetlink: skip error delivery on batch in case of ENOMEM
+ - [arm64] net: enetc: correct the indexes of highest and 2nd highest TCs
+ - ping6: Fix send to link-local addresses with VRF.
+ - net/sched: cls_u32: Fix reference counter leak leading to overflow
+ (CVE-2023-3609)
+ - RDMA/rxe: Remove the unused variable obj
+ - RDMA/rxe: Removed unused name from rxe_task struct
+ - RDMA/rxe: Fix the use-before-initialization error of resp_pkts
+ - iavf: remove mask from iavf_irq_enable_queues()
+ - RDMA/mlx5: Initiate dropless RQ for RAW Ethernet functions
+ - RDMA/cma: Always set static rate to 0 for RoCE
+ - IB/uverbs: Fix to consider event queue closing also upon non-blocking mode
+ - IB/isert: Fix dead lock in ib_isert
+ - IB/isert: Fix possible list corruption in CMA handler
+ - IB/isert: Fix incorrect release of isert connection
+ - ipvlan: fix bound dev checking for IPv6 l3s mode
+ - sctp: fix an error code in sctp_sf_eat_auth()
+ - igb: fix nvm.ops.read() error handling
+ - drm/nouveau: don't detect DSM for non-NVIDIA device
+ - drm/nouveau/dp: check for NULL nv_connector->native_mode
+ - drm/nouveau: add nv_encoder pointer check for NULL
+ - ext4: drop the call to ext4_error() from ext4_get_group_info()
+ - net/sched: cls_api: Fix lockup on flushing explicitly created chain
+ - net: tipc: resize nlattr array to correct size
+ - afs: Fix vlserver probe RTT handling
+ - cgroup: always put cset in cgroup_css_set_put_fork
+ - rcu/kvfree: Avoid freeing new kfree_rcu() memory after old grace period
+ - neighbour: Remove unused inline function neigh_key_eq16()
+ - net: Remove unused inline function dst_hold_and_use()
+ - net: Remove DECnet leftovers from flow.h.
+ - neighbour: delete neigh_lookup_nodev as not used
+ - batman-adv: Switch to kstrtox.h for kstrtou64
+ - mmc: block: ensure error propagation for non-blk
+ - mm/memory_hotplug: extend offline_and_remove_memory() to handle more than
+ one memory block
+ - nilfs2: reject devices with insufficient block count
+ - media: dvbdev: Fix memleak in dvb_register_device
+ - media: dvbdev: fix error logic at dvb_register_device()
+ - media: dvb-core: Fix use-after-free due to race at dvb_register_device()
+ - [x86] drm/i915/dg1: Wait for pcode/uncore handshake at startup
+ - [x86] drm/i915/gen11+: Only load DRAM information from pcode
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.186
+ - drm/amd/display: fix the system hang while disable PSR
+ - net/sched: Refactor qdisc_graft() for ingress and clsact Qdiscs
+ - tracing: Add tracing_reset_all_online_cpus_unlocked() function
+ - tick/common: Align tick period during sched_timer setup
+ - nilfs2: fix buffer corruption due to concurrent device reads
+ - [x86] Drivers: hv: vmbus: Fix vmbus_wait_for_unload() to scan present CPUs
+ - [x86] PCI: hv: Fix a race condition bug in hv_pci_query_relations()
+ - [x86] Revert "PCI: hv: Fix a timing issue which causes kdump to fail
+ occasionally"
+ - [x86] PCI: hv: Remove the useless hv_pcichild_state from struct hv_pci_dev
+ - [x86] PCI: hv: Fix a race condition in hv_irq_unmask() that can cause
+ panic
+ - cgroup: Do not corrupt task iteration when rebinding subsystem
+ - [arm64] mmc: sdhci-msm: Disable broken 64-bit DMA on MSM8916
+ - [arm64] mmc: meson-gx: remove redundant mmc_request_done() call from irq
+ context
+ - [arm64,armhf] mmc: mmci: stm32: fix max busy timeout calculation
+ - ip_tunnels: allow VXLAN/GENEVE to inherit TOS/TTL from VLAN
+ - regulator: pca9450: Fix LDO3OUT and LDO4OUT MASK
+ - writeback: fix dereferencing NULL mapping->host on writeback_page_template
+ - io_uring/net: save msghdr->msg_control for retries
+ - io_uring/net: clear msg_controllen on partial sendmsg retry
+ - io_uring/net: disable partial retries for recvmsg with cmsg
+ - nilfs2: prevent general protection fault in nilfs_clear_dirty_page()
+ - [x86] mm: Avoid using set_pgd() outside of real PGD pages
+ - mm/pagealloc: sysctl: change watermark_scale_factor max limit to 30%
+ - sysctl: move some boundary constants from sysctl.c to sysctl_vals
+ - memfd: check for non-NULL file_seals in memfd_create() syscall
+ - ieee802154: hwsim: Fix possible memory leaks
+ - xfrm: Treat already-verified secpath entries as optional
+ - xfrm: interface: rename xfrm_interface.c to xfrm_interface_core.c
+ - xfrm: Ensure policies always checked on XFRM-I input path
+ - bpf: track immediate values written to stack by BPF_ST instruction
+ - bpf: Fix verifier id tracking of scalars on spill
+ - xfrm: fix inbound ipv4/udp/esp packets to UDPv6 dualstack sockets
+ - xfrm: Linearize the skb after offloading if needed.
+ - [armel,armhf] mmc: mvsdio: fix deferred probing
+ - [armhf] mmc: omap: fix deferred probing
+ - [armhf] mmc: omap_hsmmc: fix deferred probing
+ - mmc: sdhci-acpi: fix deferred probing
+ - ipvs: align inner_mac_header for encapsulation
+ - be2net: Extend xmit workaround to BE3 chip
+ - netfilter: nft_set_pipapo: .walk does not deal with generations
+ - netfilter: nf_tables: disallow element updates of bound anonymous sets
+ - netfilter: nfnetlink_osf: fix module autoload
+ - Revert "net: phy: dp83867: perform soft reset and retain established link"
+ - sch_netem: acquire qdisc lock in netem_change()
+ - gpio: Allow per-parent interrupt data
+ - gpiolib: Fix GPIO chip IRQ initialization restriction
+ - scsi: target: iscsi: Prevent login threads from racing between each other
+ - HID: wacom: Add error check to wacom_parse_and_register()
+ - [arm64] Add missing Set/Way CMO encodings
+ - media: cec: core: don't set last_initiator if tx in progress
+ - nfcsim.c: Fix error checking for debugfs_create_dir
+ - [i386] usb: gadget: udc: fix NULL dereference in remove()
+ - [x86] Input: soc_button_array - add invalid acpi_index DMI quirk handling
+ - [s390x] cio: unregister device when the only path is gone
+ - [arm*] ASoC: simple-card: Add missing of_node_put() in case of error
+ - [x86] ASoC: nau8824: Add quirk to active-high jack-detect
+ - [armhf] dts: Fix erroneous ADS touchscreen polarities
+ - drm/radeon: fix race condition UAF in radeon_gem_set_domain_ioctl
+ - [x86] apic: Fix kernel panic when booting with intremap=off and
+ x2apic_phys
+ - bpf/btf: Accept function names that contain dots
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.187
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.188
+ - media: atomisp: fix "variable dereferenced before check 'asd'"
+ - [x86] smp: Use dedicated cache-line for mwait_play_dead()
+ - can: isotp: isotp_sendmsg(): fix return error fix on TX path
+ - video: imsttfb: check for ioremap() failures
+ - fbdev: imsttfb: Fix use after free bug in imsttfb_probe
+ - HID: wacom: Use ktime_t rather than int when dealing with timestamps
+ - HID: logitech-hidpp: add HIDPP_QUIRK_DELAYED_INIT for the T651.
+ - drm/amdgpu: Validate VM ioctl flags.
+ - nubus: Partially revert proc_create_single_data() conversion
+ - fs: pipe: reveal missing function protoypes
+ - [x86] resctrl: Only show tasks' pid in current pid namespace
+ - blk-iocost: use spin_lock_irqsave in adjust_inuse_and_calc_cost
+ - md/raid10: check slab-out-of-bounds in md_bitmap_get_counter
+ - md/raid10: fix overflow of md/safe_mode_delay
+ - md/raid10: fix wrong setting of max_corr_read_errors
+ - md/raid10: fix null-ptr-deref of mreplace in raid10_sync_request
+ - md/raid10: fix io loss while replacement replace rdev
+ - irqchip/jcore-aic: Kill use of irq_create_strict_mappings()
+ - irqchip/jcore-aic: Fix missing allocation of IRQ descriptors
+ - posix-timers: Prevent RT livelock in itimer_delete()
+ - tracing/timer: Add missing hrtimer modes to decode_hrtimer_mode().
+ - clocksource/drivers/cadence-ttc: Fix memory leak in ttc_timer_probe
+ - PM: domains: fix integer overflow issues in genpd_parse_state()
+ - perf/arm-cmn: Fix DTC reset
+ - powercap: RAPL: Fix CONFIG_IOSF_MBI dependency
+ - cpufreq: intel_pstate: Fix energy_performance_preference for passive
+ - thermal/drivers/sun8i: Fix some error handling paths in sun8i_ths_probe()
+ - rcuscale: Console output claims too few grace periods
+ - rcuscale: Always log error message
+ - rcuscale: Move shutdown from wait_event() to wait_event_idle()
+ - rcu/rcuscale: Move rcu_scale_*() after kfree_scale_cleanup()
+ - rcu/rcuscale: Stop kfree_scale_thread thread(s) after unloading rcuscale
+ - perf/ibs: Fix interface via core pmu events
+ - [x86] mm: Fix __swp_entry_to_pte() for Xen PV guests
+ - evm: Complete description of evm_inode_setattr()
+ - pstore/ram: Add check for kstrdup
+ - igc: Enable and fix RX hash usage by netstack
+ - wifi: ath9k: fix AR9003 mac hardware hang check register offset
+ calculation
+ - wifi: ath9k: avoid referencing uninit memory in ath9k_wmi_ctrl_rx
+ - spi: spi-geni-qcom: Correct CS_TOGGLE bit in SPI_TRANS_CFG
+ - wifi: wilc1000: fix for absent RSN capabilities WFA testcase
+ - wifi: mwifiex: Fix the size of a memory allocation in
+ mwifiex_ret_802_11_scan()
+ - bpf: Remove extra lock_sock for TCP_ZEROCOPY_RECEIVE
+ - sctp: add bpf_bypass_getsockopt proto callback
+ - nfc: constify several pointers to u8, char and sk_buff
+ - nfc: llcp: fix possible use of uninitialized variable in
+ nfc_llcp_send_connect()
+ - regulator: core: Fix more error checking for debugfs_create_dir()
+ - regulator: core: Streamline debugfs operations
+ - wifi: orinoco: Fix an error handling path in spectrum_cs_probe()
+ - wifi: orinoco: Fix an error handling path in orinoco_cs_probe()
+ - wifi: atmel: Fix an error handling path in atmel_probe()
+ - wl3501_cs: Fix misspelling and provide missing documentation
+ - net: create netdev->dev_addr assignment helpers
+ - wl3501_cs: use eth_hw_addr_set()
+ - wifi: wl3501_cs: Fix an error handling path in wl3501_probe()
+ - wifi: ray_cs: Utilize strnlen() in parse_addr()
+ - wifi: ray_cs: Drop useless status variable in parse_addr()
+ - wifi: ray_cs: Fix an error handling path in ray_probe()
+ - wifi: ath9k: don't allow to overwrite ENDPOINT0 attributes
+ - wifi: rsi: Do not configure WoWlan in shutdown hook if not enabled
+ - wifi: rsi: Do not set MMC_PM_KEEP_POWER in shutdown
+ - watchdog/perf: define dummy watchdog_update_hrtimer_threshold() on correct
+ config
+ - watchdog/perf: more properly prevent false positives with turbo modes
+ - kexec: fix a memory leak in crash_shrink_memory()
+ - memstick r592: make memstick_debug_get_tpc_name() static
+ - wifi: ath9k: Fix possible stall on ath9k_txq_list_has_key()
+ - rtnetlink: extend RTEXT_FILTER_SKIP_STATS to IFLA_VF_INFO
+ - wifi: iwlwifi: pull from TXQs with softirqs disabled
+ - wifi: cfg80211: rewrite merging of inherited elements
+ - wifi: ath9k: convert msecs to jiffies where needed
+ - igc: Fix race condition in PTP tx code
+ - net: stmmac: fix double serdes powerdown
+ - netlink: fix potential deadlock in netlink_set_err()
+ - netlink: do not hard code device address lenth in fdb dumps
+ - gtp: Fix use-after-free in __gtp_encap_destroy().
+ - net: axienet: Move reset before 64-bit DMA detection
+ - sfc: fix crash when reading stats while NIC is resetting
+ - nfc: llcp: simplify llcp_sock_connect() error paths
+ - net: nfc: Fix use-after-free caused by nfc_llcp_find_local (CVE-2023-3863)
+ - lib/ts_bm: reset initial match offset for every block of text
+ - netfilter: conntrack: dccp: copy entire header to stack buffer, not just
+ basic one
+ - netfilter: nf_conntrack_sip: fix the ct_sip_parse_numerical_param() return
+ value.
+ - ipvlan: Fix return value of ipvlan_queue_xmit()
+ - netlink: Add __sock_i_ino() for __netlink_diag_dump().
+ - radeon: avoid double free in ci_dpm_init()
+ - drm/amd/display: Explicitly specify update type per plane info change
+ - Input: drv260x - sleep between polling GO bit
+ - drm/bridge: tc358768: always enable HS video mode
+ - drm/bridge: tc358768: fix PLL parameters computation
+ - drm/bridge: tc358768: fix PLL target frequency
+ - drm/bridge: tc358768: fix TCLK_ZEROCNT computation
+ - drm/bridge: tc358768: Add atomic_get_input_bus_fmts() implementation
+ - drm/bridge: tc358768: fix TCLK_TRAILCNT computation
+ - drm/bridge: tc358768: fix THS_ZEROCNT computation
+ - drm/bridge: tc358768: fix TXTAGOCNT computation
+ - drm/bridge: tc358768: fix THS_TRAILCNT computation
+ - drm/vram-helper: fix function names in vram helper doc
+ - Input: adxl34x - do not hardcode interrupt trigger type
+ - drm: sun4i_tcon: use devm_clk_get_enabled in `sun4i_tcon_init_clocks`
+ - drm/panel: sharp-ls043t1le01: adjust mode settings
+ - bus: ti-sysc: Fix dispc quirk masking bool variables
+ - [arm64] dts: microchip: sparx5: do not use PSCI on reference boards
+ - RDMA/bnxt_re: Disable/kill tasklet only if it is enabled
+ - RDMA/bnxt_re: Fix to remove unnecessary return labels
+ - RDMA/bnxt_re: Use unique names while registering interrupts
+ - RDMA/bnxt_re: Remove a redundant check inside bnxt_re_update_gid
+ - RDMA/bnxt_re: Fix to remove an unnecessary log
+ - ARM: dts: gta04: Move model property out of pinctrl node
+ - [arm64] dts: qcom: msm8916: correct camss unit address
+ - [arm64] dts: qcom: msm8994: correct SPMI unit address
+ - [arm64] dts: qcom: msm8996: correct camss unit address
+ - drm/panel: simple: fix active size for Ampire AM-480272H3TMQW-T01H
+ - ARM: ep93xx: fix missing-prototype warnings
+ - ARM: omap2: fix missing tick_broadcast() prototype
+ - [arm64] dts: qcom: apq8096: fix fixed regulator name property
+ - ARM: dts: stm32: Shorten the AV96 HDMI sound card name
+ - memory: brcmstb_dpfe: fix testing array offset after use
+ - ASoC: es8316: Increment max value for ALC Capture Target Volume control
+ - ASoC: es8316: Do not set rate constraints for unsupported MCLKs
+ - ARM: dts: meson8: correct uart_B and uart_C clock references
+ - soc/fsl/qe: fix usb.c build errors
+ - IB/hfi1: Use bitmap_zalloc() when applicable
+ - IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors
+ - IB/hfi1: Fix wrong mmu_node used for user SDMA packet after invalidate
+ - RDMA: Remove uverbs_ex_cmd_mask values that are linked to functions
+ - RDMA/hns: Fix coding style issues
+ - RDMA/hns: Use refcount_t APIs for HEM
+ - RDMA/hns: Clean the hardware related code for HEM
+ - RDMA/hns: Fix hns_roce_table_get return value
+ - ARM: dts: iwg20d-q7-common: Fix backlight pwm specifier
+ - fbdev: omapfb: lcd_mipid: Fix an error handling path in mipid_spi_probe()
+ - [arm64] dts: ti: k3-j7200: Fix physical address of pin
+ - ARM: dts: stm32: Fix audio routing on STM32MP15xx DHCOM PDK2
+ - ARM: dts: stm32: fix i2s endpoint format property for stm32mp15xx-dkx
+ - hwmon: (gsc-hwmon) fix fan pwm temperature scaling
+ - hwmon: (adm1275) enable adm1272 temperature reporting
+ - hwmon: (adm1275) Allow setting sample averaging
+ - hwmon: (pmbus/adm1275) Fix problems with temperature monitoring on ADM1272
+ - ARM: dts: BCM5301X: fix duplex-full => full-duplex
+ - drm/radeon: fix possible division-by-zero errors
+ - amdgpu: validate offset_in_bo of drm_amdgpu_gem_va
+ - RDMA/bnxt_re: wraparound mbox producer index
+ - RDMA/bnxt_re: Avoid calling wake_up threads from spin_lock context
+ - clk: imx: clk-imx8mn: fix memory leak in imx8mn_clocks_probe
+ - clk: imx: clk-imx8mp: improve error handling in imx8mp_clocks_probe()
+ - clk: tegra: tegra124-emc: Fix potential memory leak
+ - ALSA: ac97: Fix possible NULL dereference in snd_ac97_mixer
+ - drm/msm/dpu: do not enable color-management if DSPPs are not available
+ - drm/msm/dp: Free resources after unregistering them
+ - clk: vc5: check memory returned by kasprintf()
+ - clk: cdce925: check return value of kasprintf()
+ - clk: si5341: Allow different output VDD_SEL values
+ - clk: si5341: Add sysfs properties to allow checking/resetting device
+ faults
+ - clk: si5341: return error if one synth clock registration fails
+ - clk: si5341: check return value of {devm_}kasprintf()
+ - clk: si5341: free unused memory on probe failure
+ - clk: keystone: sci-clk: check return value of kasprintf()
+ - clk: ti: clkctrl: check return value of kasprintf()
+ - drivers: meson: secure-pwrc: always enable DMA domain
+ - ovl: update of dentry revalidate flags after copy up
+ - ASoC: imx-audmix: check return value of devm_kasprintf()
+ - PCI: cadence: Fix Gen2 Link Retraining process
+ - scsi: qedf: Fix NULL dereference in error handling
+ - pinctrl: bcm2835: Handle gpiochip_add_pin_range() errors
+ - PCI/ASPM: Disable ASPM on MFD function removal to avoid use-after-free
+ - scsi: 3w-xxxx: Add error handling for initialization failure in tw_probe()
+ - PCI: pciehp: Cancel bringup sequence if card is not present
+ - PCI: ftpci100: Release the clock resources
+ - PCI: Add pci_clear_master() stub for non-CONFIG_PCI
+ - perf bench: Use unbuffered output when pipe/tee'ing to a file
+ - perf bench: Add missing setlocale() call to allow usage of %'d style
+ formatting
+ - pinctrl: cherryview: Return correct value if pin in push-pull mode
+ - perf dwarf-aux: Fix off-by-one in die_get_varname()
+ - pinctrl: at91-pio4: check return value of devm_kasprintf()
+ - [powerpc*] powernv/sriov: perform null check on iov before dereferencing
+ iov
+ - mm: rename pud_page_vaddr to pud_pgtable and make it return pmd_t *
+ - mm: rename p4d_page_vaddr to p4d_pgtable and make it return pud_t *
+ - [powerpc*] book3s64/mm: Fix DirectMap stats in /proc/meminfo
+ - [powerpc*] mm/dax: Fix the condition when checking if altmap vmemap can
+ cross-boundary
+ - hwrng: virtio - add an internal buffer
+ - hwrng: virtio - don't wait on cleanup
+ - hwrng: virtio - don't waste entropy
+ - hwrng: virtio - always add a pending request
+ - hwrng: virtio - Fix race on data_avail and actual data
+ - crypto: nx - fix build warnings when DEBUG_FS is not enabled
+ - modpost: fix section mismatch message for R_ARM_ABS32
+ - modpost: fix section mismatch message for R_ARM_{PC24,CALL,JUMP24}
+ - crypto: marvell/cesa - Fix type mismatch warning
+ - modpost: fix off by one in is_executable_section()
+ - NFSv4.1: freeze the session table upon receiving NFS4ERR_BADSESSION
+ - dax: Fix dax_mapping_release() use after free
+ - dax: Introduce alloc_dev_dax_id()
+ - hwrng: st - keep clock enabled while hwrng is registered
+ - io_uring: ensure IOPOLL locks around deferred work (CVE-2023-21400)
+ - USB: serial: option: add LARA-R6 01B PIDs
+ - usb: dwc3: gadget: Propagate core init errors to UDC during pullup
+ - phy: tegra: xusb: Clear the driver reference in usb-phy dev
+ - block: fix signed int overflow in Amiga partition support
+ - block: change all __u32 annotations to __be32 in affs_hardblocks.h
+ - SUNRPC: Fix UAF in svc_tcp_listen_data_ready()
+ - w1: w1_therm: fix locking behavior in convert_t
+ - w1: fix loop in w1_fini()
+ - serial: 8250: omap: Fix freeing of resources on failed register
+ - clk: qcom: gcc-ipq6018: Use floor ops for sdcc clocks
+ - media: usb: Check az6007_read() return value
+ - media: videodev2.h: Fix struct v4l2_input tuner index comment
+ - media: usb: siano: Fix warning due to null work_func_t function pointer
+ (CVE-2023-4132)
+ - clk: qcom: reset: Allow specifying custom reset delay
+ - clk: qcom: reset: support resetting multiple bits
+ - clk: qcom: ipq6018: fix networking resets
+ - usb: dwc3: qcom: Fix potential memory leak
+ - usb: gadget: u_serial: Add null pointer check in gserial_suspend
+ - extcon: Fix kernel doc of property fields to avoid warnings
+ - extcon: Fix kernel doc of property capability fields to avoid warnings
+ - usb: phy: phy-tahvo: fix memory leak in tahvo_usb_probe()
+ - usb: hide unused usbfs_notify_suspend/resume functions
+ - serial: 8250: lock port for stop_rx() in omap8250_irq()
+ - serial: 8250: lock port for UART_IER access in omap8250_irq()
+ - kernfs: fix missing kernfs_idr_lock to remove an ID from the IDR
+ - coresight: Fix loss of connection info when a module is unloaded
+ - mfd: rt5033: Drop rt5033-battery sub-device
+ - media: venus: helpers: Fix ALIGN() of non power of two
+ - media: atomisp: gmin_platform: fix out_len in gmin_get_config_dsm_var()
+ - [s390x] KVM: s390: fix KVM_S390_GET_CMMA_BITS for GFNs in memslot holes
+ - usb: dwc3: qcom: Release the correct resources in dwc3_qcom_remove()
+ - usb: dwc3: qcom: Fix an error handling path in dwc3_qcom_probe()
+ - usb: common: usb-conn-gpio: Set last role to unknown before initial
+ detection
+ - usb: dwc3-meson-g12a: Fix an error handling path in
+ dwc3_meson_g12a_probe()
+ - mfd: intel-lpss: Add missing check for platform_get_resource
+ - Revert "usb: common: usb-conn-gpio: Set last role to unknown before
+ initial detection"
+ - serial: 8250_omap: Use force_suspend and resume for system suspend
+ - mfd: stmfx: Fix error path in stmfx_chip_init
+ - mfd: stmfx: Nullify stmfx->vdd in case of error
+ - [s390x] KVM: s390: vsie: fix the length of APCB bitmap
+ - mfd: stmpe: Only disable the regulators if they are enabled
+ - phy: tegra: xusb: check return value of devm_kzalloc()
+ - pwm: imx-tpm: force 'real_period' to be zero in suspend
+ - pwm: sysfs: Do not apply state to already disabled PWMs
+ - rtc: st-lpc: Release some resources in st_rtc_probe() in case of error
+ - media: cec: i2c: ch7322: also select REGMAP
+ - sctp: fix potential deadlock on &net->sctp.addr_wq_lock
+ - Add MODULE_FIRMWARE() for FIRMWARE_TG357766.
+ - net: dsa: vsc73xx: fix MTU configuration
+ - spi: bcm-qspi: return error if neither hif_mspi nor mspi is available
+ - mailbox: ti-msgmgr: Fill non-message tx data fields with 0x0
+ - f2fs: fix error path handling in truncate_dnode()
+ - octeontx2-af: Fix mapping for NIX block from CGX connection
+ - [powerpc*] allow PPC_EARLY_DEBUG_CPM only when SERIAL_CPM=y
+ - net: bridge: keep ports without IFF_UNICAST_FLT in BR_PROMISC mode
+ - tcp: annotate data races in __tcp_oow_rate_limited()
+ - xsk: Honor SO_BINDTODEVICE on bind
+ - net/sched: act_pedit: Add size check for TCA_PEDIT_PARMS_EX
+ - pptp: Fix fib lookup calls.
+ - net: dsa: tag_sja1105: fix MAC DA patching from meta frames
+ - [s390x] qeth: Fix vipa deletion
+ - apparmor: fix missing error check for rhashtable_insert_fast
+ - i2c: xiic: Defer xiic_wakeup() and __xiic_start_xfer() in xiic_process()
+ - i2c: xiic: Don't try to handle more interrupt events after error
+ - ALSA: jack: Fix mutex call in snd_jack_report()
+ - i2c: qup: Add missing unwind goto in qup_i2c_probe()
+ - NFSD: add encoding of op_recall flag for write delegation
+ - io_uring: wait interruptibly for request completions on exit
+ - mmc: core: disable TRIM on Kingston EMMC04G-M627
+ - mmc: core: disable TRIM on Micron MTFC4GACAJCN-1M
+ - mmc: mmci: Set PROBE_PREFER_ASYNCHRONOUS
+ - mmc: sdhci: fix DMA configure compatibility issue when 64bit DMA mode is
+ used.
+ - bcache: fixup btree_cache_wait list damage
+ - bcache: Remove unnecessary NULL point check in node allocations
+ - bcache: Fix __bch_btree_node_alloc to make the failure behavior consistent
+ - integrity: Fix possible multiple allocation in integrity_inode_get()
+ - autofs: use flexible array in ioctl structure
+ - shmem: use ramfs_kill_sb() for kill_sb method of ramfs-based tmpfs
+ - jffs2: reduce stack usage in jffs2_build_xattr_subsystem()
+ - fs: avoid empty option when generating legacy mount string
+ - ext4: Remove ext4 locking of moved directory
+ - Revert "f2fs: fix potential corruption when moving a directory"
+ - fs: Establish locking order for unrelated directories
+ - fs: Lock moved directories
+ - btrfs: add handling for RAID1C23/DUP to btrfs_reduce_alloc_profile
+ - btrfs: fix race when deleting quota root from the dirty cow roots list
+ - ARM: orion5x: fix d2net gpio initialization
+ - leds: trigger: netdev: Recheck NETDEV_LED_MODE_LINKUP on dev rename
+ - fs: no need to check source
+ - fanotify: disallow mount/sb marks on kernel internal pseudo fs
+ - tpm, tpm_tis: Claim locality in interrupt handler
+ - block: add overflow checks for Amiga partition support
+ - netfilter: nf_tables: use net_generic infra for transaction data
+ - netfilter: nf_tables: add rescheduling points during loop detection walks
+ - netfilter: nf_tables: add NFT_TRANS_PREPARE_ERROR to deal with bound
+ set/chain
+ - netfilter: nf_tables: reject unbound anonymous set before commit phase
+ - netfilter: nf_tables: reject unbound chain set before commit phase
+ - netfilter: nftables: rename set element data activation/deactivation
+ functions
+ - netfilter: nf_tables: drop map element references from preparation phase
+ - netfilter: nf_tables: unbind non-anonymous set if rule construction fails
+ - netfilter: nf_tables: fix scheduling-while-atomic splat
+ - netfilter: conntrack: Avoid nf_ct_helper_hash uses after free
+ - wireguard: queueing: use saner cpu selection wrapping
+ - wireguard: netlink: send staged packets when setting initial private key
+ - tty: serial: fsl_lpuart: add earlycon for imx8ulp platform
+ - rcu-tasks: Mark ->trc_reader_nesting data races
+ - rcu-tasks: Mark ->trc_reader_special.b.need_qs data races
+ - rcu-tasks: Simplify trc_read_check_handler() atomic operations
+ - block/partition: fix signedness issue for Amiga partitions
+ - io_uring: Use io_schedule* in cqring wait
+ - io_uring: add reschedule point to handle_tw_list()
+ - net: lan743x: Don't sleep in atomic context
+ - workqueue: clean up WORK_* constant types, clarify masking
+ - drm/panel: simple: Add connector_type for innolux_at043tn24
+ - drm/panel: simple: Add Powertip PH800480T013 drm_display_mode flags
+ - igc: Remove delay during TX ring configuration
+ - net/mlx5e: fix double free in mlx5e_destroy_flow_table
+ - net/mlx5e: Check for NOT_READY flag state after locking
+ - igc: set TP bit in 'supported' and 'advertising' fields of
+ ethtool_link_ksettings
+ - scsi: qla2xxx: Fix error code in qla2x00_start_sp()
+ - net: mvneta: fix txq_map in case of txq_number==1
+ - net/sched: cls_fw: Fix improper refcount update leads to use-after-free
+ (CVE-2023-3776)
+ - gve: Set default duplex configuration to full
+ - ionic: remove WARN_ON to prevent panic_on_warn
+ - net: bgmac: postpone turning IRQs off to avoid SoC hangs
+ - net: prevent skb corruption on frag list segmentation
+ - icmp6: Fix null-ptr-deref of ip6_null_entry->rt6i_idev in icmp6_dev().
+ - udp6: fix udp6_ehashfn() typo
+ - ntb: idt: Fix error handling in idt_pci_driver_init()
+ - NTB: amd: Fix error handling in amd_ntb_pci_driver_init()
+ - ntb: intel: Fix error handling in intel_ntb_pci_driver_init()
+ - NTB: ntb_transport: fix possible memory leak while device_register() fails
+ - NTB: ntb_tool: Add check for devm_kcalloc
+ - ipv6/addrconf: fix a potential refcount underflow for idev
+ - [x86] platform/x86: wmi: remove unnecessary argument
+ - [x86] platform/x86: wmi: use guid_t and guid_equal()
+ - [x86] platform/x86: wmi: move variables
+ - [x86] platform/x86: wmi: Break possible infinite loop when parsing GUID
+ - igc: Fix launchtime before start of cycle
+ - igc: Fix inserting of empty frame for launchtime
+ - riscv: bpf: Move bpf_jit_alloc_exec() and bpf_jit_free_exec() to core
+ - erofs: avoid infinite loop in z_erofs_do_read_page() when reading beyond
+ EOF
+ - wifi: airo: avoid uninitialized warning in airo_get_rate()
+ - net/sched: flower: Ensure both minimum and maximum ports are specified
+ - netdevsim: fix uninitialized data in nsim_dev_trap_fa_cookie_write()
+ - net/sched: make psched_mtu() RTNL-less safe
+ - net/sched: sch_qfq: refactor parsing of netlink parameters
+ - net/sched: sch_qfq: account for stab overhead in qfq_enqueue
+ (CVE-2023-3611)
+ - nvme-pci: fix DMA direction of unmapping integrity data
+ - f2fs: fix to avoid NULL pointer dereference f2fs_write_end_io()
+ (CVE-2023-2898)
+ - pinctrl: amd: Fix mistake in handling clearing pins at startup
+ - pinctrl: amd: Detect internal GPIO0 debounce handling
+ - pinctrl: amd: Only use special debounce behavior for GPIO 0
+ - tpm: tpm_vtpm_proxy: fix a race condition in /dev/vtpmx creation
+ - mtd: rawnand: meson: fix unaligned DMA buffers handling
+ - net: bcmgenet: Ensure MDIO unregistration has clocks enabled
+ - [powerpc*] Fail build if using recordmcount with binutils v2.37
+ - misc: fastrpc: Create fastrpc scalar with correct buffer count
+ - erofs: fix compact 4B support for 16k block size
+ - ext4: Fix reusing stale buffer heads from last failed mounting
+ - ext4: fix wrong unit use in ext4_mb_clear_bb
+ - ext4: get block from bh in ext4_free_blocks for fast commit replay
+ - ext4: fix wrong unit use in ext4_mb_new_blocks
+ - ext4: only update i_reserved_data_blocks on successful block allocation
+ - jfs: jfs_dmap: Validate db_l2nbperpage while mounting
+ - hwrng: imx-rngc - fix the timeout for init and self check
+ - PCI/PM: Avoid putting EloPOS E2/S2/H2 PCIe Ports in D3cold
+ - PCI: Add function 1 DMA alias quirk for Marvell 88SE9235
+ - PCI: qcom: Disable write access to read only registers for IP v2.3.3
+ - PCI: rockchip: Assert PCI Configuration Enable bit after probe
+ - PCI: rockchip: Write PCI Device ID to correct register
+ - PCI: rockchip: Add poll and timeout to wait for PHY PLLs to be locked
+ - PCI: rockchip: Fix legacy IRQ generation for RK3399 PCIe endpoint core
+ - PCI: rockchip: Use u32 variable to access 32-bit registers
+ - PCI: rockchip: Set address alignment for endpoint mode
+ - misc: pci_endpoint_test: Free IRQs before removing the device
+ - misc: pci_endpoint_test: Re-init completion for every test
+ - md/raid0: add discard support for the 'original' layout
+ - fs: dlm: return positive pid value for F_GETLK
+ - drm/atomic: Allow vblank-enabled + self-refresh "disable"
+ - drm/rockchip: vop: Leave vblank enabled in self-refresh
+ - drm/amd/display: Correct `DMUB_FW_VERSION` macro
+ - serial: atmel: don't enable IRQs prematurely
+ - tty: serial: samsung_tty: Fix a memory leak in s3c24xx_serial_getclk() in
+ case of error
+ - tty: serial: samsung_tty: Fix a memory leak in s3c24xx_serial_getclk()
+ when iterating clk
+ - firmware: stratix10-svc: Fix a potential resource leak in
+ svc_create_memory_pool()
+ - ceph: don't let check_caps skip sending responses for revoke msgs
+ - xhci: Fix resume issue of some ZHAOXIN hosts
+ - xhci: Fix TRB prefetch issue of ZHAOXIN hosts
+ - xhci: Show ZHAOXIN xHCI root hub speed correctly
+ - meson saradc: fix clock divider mask length
+ - Revert "8250: add support for ASIX devices with a FIFO bug"
+ - [s390x] decompressor: fix misaligned symbol build error
+ - tracing/histograms: Add histograms to hist_vars if they have referenced
+ variables
+ - net: ena: fix shift-out-of-bounds in exponential backoff
+ - ring-buffer: Fix deadloop issue on reading trace_pipe
+ - tracing: Fix null pointer dereference in tracing_err_log_open()
+ - tracing/probes: Fix not to count error code to total length
+ - scsi: qla2xxx: Wait for io return on terminate rport
+ - scsi: qla2xxx: Array index may go out of bound
+ - scsi: qla2xxx: Fix buffer overrun
+ - scsi: qla2xxx: Fix potential NULL pointer dereference
+ - scsi: qla2xxx: Check valid rport returned by fc_bsg_to_rport()
+ - scsi: qla2xxx: Correct the index of array
+ - scsi: qla2xxx: Pointer may be dereferenced
+ - scsi: qla2xxx: Remove unused nvme_ls_waitq wait queue
+ - net/sched: sch_qfq: reintroduce lmax bound check for MTU
+ - RDMA/cma: Ensure rdma_addr_cancel() happens before issuing more requests
+ - drm/atomic: Fix potential use-after-free in nonblocking commits
+ - ALSA: hda/realtek - remove 3k pull low procedure
+ - ALSA: hda/realtek: Enable Mute LED on HP Laptop 15s-eq2xxx
+ - keys: Fix linking a duplicate key to a keyring's assoc_array
+ - perf probe: Add test for regression introduced by switch to
+ die_get_decl_file()
+ - btrfs: fix warning when putting transaction with qgroups enabled after
+ abort
+ - fuse: revalidate: don't invalidate if interrupted
+ - regmap: Drop initial version of maximum transfer length fixes
+ - regmap: Account for register length in SMBus I/O limits
+ - can: bcm: Fix UAF in bcm_proc_show()
+ - drm/client: Fix memory leak in drm_client_target_cloned
+ - drm/client: Fix memory leak in drm_client_modeset_probe
+ - ASoC: fsl_sai: Disable bit clock with transmitter
+ - ext4: correct inline offset when handling xattrs in inode body
+ - debugobjects: Recheck debug_objects_enabled before reporting
+ - nbd: Add the maximum limit of allocated index in nbd_dev_add
+ - md: fix data corruption for raid456 when reshape restart while grow up
+ - md/raid10: prevent soft lockup while flush writes
+ - posix-timers: Ensure timer ID search-loop limit is valid
+ - btrfs: add xxhash to fast checksum implementations
+ - ACPI: button: Add lid disable DMI quirk for Nextbook Ares 8A
+ - ACPI: video: Add backlight=native DMI quirk for Apple iMac11,3
+ - ACPI: video: Add backlight=native DMI quirk for Lenovo ThinkPad X131e
+ (3371 AMD version)
+ - [arm64] set __exception_irq_entry with __irq_entry as a default
+ - [arm64] mm: fix VA-range sanity check
+ - sched/fair: Don't balance task to its current running CPU
+ - wifi: ath11k: fix registration of 6Ghz-only phy without the full channel
+ range
+ - bpf: Address KCSAN report on bpf_lru_list
+ - devlink: report devlink_port_type_warn source device
+ - wifi: wext-core: Fix -Wstringop-overflow warning in
+ ioctl_standard_iw_point()
+ - wifi: iwlwifi: mvm: avoid baid size integer overflow
+ - igb: Fix igb_down hung on surprise removal
+ - spi: bcm63xx: fix max prepend length
+ - fbdev: imxfb: warn about invalid left/right margin
+ - pinctrl: amd: Use amd_pinconf_set() for all config options
+ - net: ethernet: ti: cpsw_ale: Fix cpsw_ale_get_field()/cpsw_ale_set_field()
+ - bridge: Add extack warning when enabling STP in netns.
+ - iavf: Fix use-after-free in free_netdev
+ - iavf: Fix out-of-bounds when setting channels on remove
+ - security: keys: Modify mismatched function name
+ - octeontx2-pf: Dont allocate BPIDs for LBK interfaces
+ - tcp: annotate data-races around tcp_rsk(req)->ts_recent
+ - net: ipv4: Use kfree_sensitive instead of kfree
+ - net:ipv6: check return value of pskb_trim()
+ - Revert "tcp: avoid the lookup process failing to get sk in ehash table"
+ - fbdev: au1200fb: Fix missing IRQ check in au1200fb_drv_probe
+ - llc: Don't drop packet from non-root netns.
+ - netfilter: nf_tables: fix spurious set element insertion failure
+ - netfilter: nf_tables: can't schedule in nft_chain_validate
+ - netfilter: nft_set_pipapo: fix improper element removal (CVE-2023-4004)
+ - netfilter: nf_tables: skip bound chain in netns release path
+ - netfilter: nf_tables: skip bound chain on rule flush
+ - tcp: annotate data-races around tp->tcp_tx_delay
+ - tcp: annotate data-races around tp->keepalive_time
+ - tcp: annotate data-races around tp->keepalive_intvl
+ - tcp: annotate data-races around tp->keepalive_probes
+ - net: Introduce net.ipv4.tcp_migrate_req.
+ - tcp: Fix data-races around sysctl_tcp_syn(ack)?_retries.
+ - tcp: annotate data-races around icsk->icsk_syn_retries
+ - tcp: annotate data-races around tp->linger2
+ - tcp: annotate data-races around rskq_defer_accept
+ - tcp: annotate data-races around tp->notsent_lowat
+ - tcp: annotate data-races around icsk->icsk_user_timeout
+ - tcp: annotate data-races around fastopenq.max_qlen
+ - net: phy: prevent stale pointer dereference in phy_init()
+ - tracing/histograms: Return an error if we fail to add histogram to
+ hist_vars list
+ - tracing: Fix memory leak of iter->temp when reading trace_pipe
+ - ftrace: Store the order of pages allocated in ftrace_page
+ - ftrace: Fix possible warning on checking all pages used in
+ ftrace_process_locs()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.189
+ - xen/netback: Fix buffer overrun triggered by unusual packet
+ (CVE-2023-34319)
+ - [x86] fix backwards merge of GDS/SRSO bit
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.190
+ - [s390x] KVM: s390: pv: fix index value of replaced ASCE
+ - io_uring: don't audit the capability check in io_uring_create()
+ - btrfs: fix race between quota disable and relocation
+ - btrfs: fix extent buffer leak after tree mod log failure at split_node()
+ - i2c: Delete error messages for failed memory allocations
+ - i2c: Improve size determinations
+ - PCI/ASPM: Return 0 or -ETIMEDOUT from pcie_retrain_link()
+ - PCI/ASPM: Factor out pcie_wait_for_retrain()
+ - PCI/ASPM: Avoid link retraining race
+ - dlm: cleanup plock_op vs plock_xop
+ - dlm: rearrange async condition return
+ - fs: dlm: interrupt posix locks only when process is killed
+ - drm/ttm: add ttm_bo_pin()/ttm_bo_unpin() v2
+ - drm/ttm: never consider pinned BOs for eviction&swap
+ - tracing: Show real address for trace event arguments
+ - [arm64,armhf] pwm: meson: Simplify duplicated per-channel tracking
+ - [arm64,armhf] pwm: meson: fix handling of period/duty if greater than
+ UINT_MAX
+ - ext4: fix to check return value of freeze_bdev() in ext4_shutdown()
+ - i40e: Fix an NULL vs IS_ERR() bug for debugfs_create_dir()
+ - net: phy: marvell10g: fix 88x3310 power up
+ - [arm64] net: hns3: reconstruct function hclge_ets_validate()
+ - [arm64] net: hns3: fix wrong bw weight of disabled tc issue
+ - vxlan: move to its own directory
+ - vxlan: calculate correct header length for GPE
+ - phy: hisilicon: Fix an out of bounds check in hisi_inno_phy_probe()
+ - ethernet: atheros: fix return value check in atl1e_tso_csum()
+ - ipv6 addrconf: fix bug where deleting a mngtmpaddr can create a new
+ temporary address
+ - tcp: Reduce chance of collisions in inet6_hashfn(). (CVE-2023-1206)
+ - ice: Fix memory management in ice_ethtool_fdir.c
+ - bonding: reset bond's flags when down link is P2P device
+ - team: reset team's flags when down link is P2P device
+ - [x86] platform/x86: msi-laptop: Fix rfkill out-of-sync on MSI Wind U100
+ - netfilter: nft_set_rbtree: fix overlap expiration walk
+ - netfilter: nftables: add helper function to validate set element data
+ - netfilter: nf_tables: skip immediate deactivate in _PREPARE_ERROR
+ - netfilter: nf_tables: disallow rule addition to bound chain via
+ NFTA_RULE_CHAIN_ID (CVE-2023-4147)
+ - net/sched: mqprio: refactor nlattr parsing to a separate function
+ - net/sched: mqprio: add extack to mqprio_parse_nlattr()
+ - net/sched: mqprio: Add length check for TCA_MQPRIO_{MAX/MIN}_RATE64
+ - benet: fix return value check in be_lancer_xmit_workarounds()
+ - tipc: check return value of pskb_trim()
+ - tipc: stop tipc crypto on failure in tipc_node_create
+ - RDMA/mlx4: Make check for invalid flags stricter
+ - drm/msm/dpu: drop enum dpu_core_perf_data_bus_id
+ - drm/msm/adreno: Fix snapshot BINDLESS_DATA size
+ - RDMA/mthca: Fix crash when polling CQ for shared QPs
+ - drm/msm: Fix IS_ERR_OR_NULL() vs NULL check in a5xx_submit_in_rb()
+ - [armhf] ASoC: fsl_spdif: Silence output on stop
+ - block: Fix a source code comment in include/uapi/linux/blkzoned.h
+ - dm raid: fix missing reconfig_mutex unlock in raid_ctr() error paths
+ - dm raid: clean up four equivalent goto tags in raid_ctr()
+ - dm raid: protect md_stop() with 'reconfig_mutex'
+ - ata: pata_ns87415: mark ns87560_tf_read static
+ - ring-buffer: Fix wrong stat of cpu_buffer->read
+ - tracing: Fix warning in trace_buffered_event_disable()
+ - Revert "usb: gadget: tegra-xudc: Fix error check in
+ tegra_xudc_powerdomain_init()"
+ - USB: gadget: Fix the memory leak in raw_gadget driver
+ - serial: 8250_dw: Preserve original value of DLF register
+ - USB: serial: option: support Quectel EM060K_128
+ - USB: serial: option: add Quectel EC200A module support
+ - USB: serial: simple: add Kaufmann RKS+CAN VCP
+ - USB: serial: simple: sort driver entries
+ - can: gs_usb: gs_can_close(): add missing set of CAN state to
+ CAN_STATE_STOPPED
+ - Revert "usb: dwc3: core: Enable AutoRetry feature in the controller"
+ - usb: dwc3: pci: skip BYT GPIO lookup table for hardwired phy
+ - usb: dwc3: don't reset device side if dwc3 was configured as host-only
+ - usb: ohci-at91: Fix the unhandle interrupt when resume
+ - USB: quirks: add quirk for Focusrite Scarlett
+ - usb: xhci-mtk: set the dma max_seg_size
+ - Revert "usb: xhci: tegra: Fix error check"
+ - Documentation: security-bugs.rst: update preferences when dealing with the
+ linux-distros group
+ - Documentation: security-bugs.rst: clarify CVE handling
+ - staging: ks7010: potential buffer overflow in ks_wlan_set_encode_ext()
+ - tty: n_gsm: fix UAF in gsm_cleanup_mux
+ - ALSA: hda/relatek: Enable Mute LED on HP 250 G8
+ - hwmon: (nct7802) Fix for temp6 (PECI1) processed even if PECI1 disabled
+ - btrfs: check for commit error at btrfs_attach_transaction_barrier()
+ - file: always lock position for FMODE_ATOMIC_POS
+ - nfsd: Remove incorrect check in nfsd4_validate_stateid
+ - tpm_tis: Explicitly check for error code
+ - [arm64,armhf] irqchip/gic-v4.1: Properly lock VPEs when doing a directLPI
+ invalidation
+ - [x86] KVM: VMX: Invert handling of CR0.WP for EPT without unrestricted
+ guest
+ - [x86] KVM: VMX: Fold ept_update_paging_mode_cr0() back into vmx_set_cr0()
+ - [x86] KVM: nVMX: Do not clear CR3 load/store exiting bits if L1 wants 'em
+ - [x86] KVM: VMX: Don't fudge CR0 and CR4 for restricted L2 guest
+ - staging: rtl8712: Use constants from <linux/ieee80211.h>
+ - staging: r8712: Fix memory leak in _r8712_init_xmit_priv()
+ - btrfs: check if the transaction was aborted at btrfs_wait_for_commit()
+ - virtio-net: fix race between set queues and probe
+ - [s390x] dasd: fix hanging device after quiesce/resume
+ - [arm64] ASoC: wm8904: Fill the cache for WM8904_ADC_TEST_0 register
+ - ceph: never send metrics if disable_send_metrics is set
+ - dm cache policy smq: ensure IO doesn't prevent cleaner policy progress
+ - drm/ttm: make ttm_bo_unpin more defensive
+ - ACPI: processor: perflib: Use the "no limit" frequency QoS
+ - ACPI: processor: perflib: Avoid updating frequency QoS unnecessarily
+ - [x86] cpufreq: intel_pstate: Drop ACPI _PSS states table patching
+ - io_uring: treat -EAGAIN for REQ_F_NOWAIT as final for io-wq
+ - [armel,armhf] ASoC: cs42l51: fix driver to properly autoload with
+ automatic module loading
+ - [x86] kprobes/x86: Fix fall-through warnings for Clang
+ - [x86] kprobes: Do not decode opcode in resume_execution()
+ - [x86] kprobes: Retrieve correct opcode for group instruction
+ - [x86] kprobes: Identify far indirect JMP correctly
+ - [x86] kprobes: Use int3 instead of debug trap for single-step
+ - [x86] kprobes: Fix to identify indirect jmp and others using range case
+ - [x86] kprobes: Move 'inline' to the beginning of the kprobe_is_ss()
+ declaration
+ - [x86] kprobes: Update kcb status flag after singlestepping
+ - [x86] kprobes: Fix JNG/JNLE emulation
+ - io_uring: gate iowait schedule on having pending requests
+ - perf: Fix function pointer case
+ - loop: Select I/O scheduler 'none' from inside add_disk()
+ - [arm64] dts: imx8mn-var-som: add missing pull-up for onboard PHY reset
+ pinmux
+ - word-at-a-time: use the same return type for has_zero regardless of
+ endianness
+ - [s390x] KVM: s390: fix sthyi error handling
+ - wifi: cfg80211: Fix return value in scan logic
+ - net/mlx5: DR, fix memory leak in mlx5dr_cmd_create_reformat_ctx
+ - net/mlx5e: fix return value check in mlx5e_ipsec_remove_trailer()
+ - bpf: Add length check for SK_DIAG_BPF_STORAGE_REQ_MAP_FD parsing
+ - rtnetlink: let rtnl_bridge_setlink checks IFLA_BRIDGE_MODE length
+ - [armhf] net: dsa: fix value check in bcm_sf2_sw_probe()
+ - net: sched: cls_u32: Fix match key mis-addressing
+ - mISDN: hfcpci: Fix potential deadlock on &hc->lock
+ - net: annotate data-races around sk->sk_max_pacing_rate
+ - net: add missing READ_ONCE(sk->sk_rcvlowat) annotation
+ - net: add missing READ_ONCE(sk->sk_sndbuf) annotation
+ - net: add missing READ_ONCE(sk->sk_rcvbuf) annotation
+ - net: add missing data-race annotations around sk->sk_peek_off
+ - net: add missing data-race annotation for sk_ll_usec
+ - net/sched: cls_u32: No longer copy tcf_result on update to avoid
+ use-after-free (CVE-2023-4128)
+ - net/sched: cls_fw: No longer copy tcf_result on update to avoid
+ use-after-free (CVE-2023-4128)
+ - net/sched: cls_route: No longer copy tcf_result on update to avoid
+ use-after-free (CVE-2023-4128)
+ - bpf: sockmap: Remove preempt_disable in sock_map_sk_acquire
+ - net: netsec: Ignore 'phy-mode' on SynQuacer in DT mode
+ - net: dcb: choose correct policy to parse DCB_ATTR_BCN
+ - [s390x] qeth: Don't call dev_close/dev_open (DOWN/UP)
+ - ip6mr: Fix skb_under_panic in ip6mr_cache_report()
+ - vxlan: Fix nexthop hash size
+ - net/mlx5: fs_core: Make find_closest_ft more generic
+ - net/mlx5: fs_core: Skip the FTs in the same FS_TYPE_PRIO_CHAINS fs_prio
+ - tcp_metrics: fix addr_same() helper
+ - tcp_metrics: annotate data-races around tm->tcpm_stamp
+ - tcp_metrics: annotate data-races around tm->tcpm_lock
+ - tcp_metrics: annotate data-races around tm->tcpm_vals[]
+ - tcp_metrics: annotate data-races around tm->tcpm_net
+ - tcp_metrics: fix data-race in tcpm_suck_dst() vs fastopen
+ - scsi: zfcp: Defer fc_rport blocking until after ADISC response
+ - libceph: fix potential hang in ceph_osdc_notify()
+ - USB: zaurus: Add ID for A-300/B-500/C-700
+ - ceph: defer stopping mdsc delayed_work
+ - exfat: use kvmalloc_array/kvfree instead of kmalloc_array/kfree
+ - exfat: release s_lock before calling dir_emit()
+ - [arm64] dts: stratix10: fix incorrect I2C property for SCL signal
+ - net: tun_chr_open(): set sk_uid from current_fsuid() (CVE-2023-4194)
+ - net: tap_open(): set sk_uid from current_fsuid() (CVE-2023-4194)
+ - bpf: Disable preemption in bpf_event_output
+ - open: make RESOLVE_CACHED correctly test for O_TMPFILE
+ - drm/ttm: check null pointer before accessing when swapping
+ - file: reinstate f_pos locking optimization for regular files
+ - tracing: Fix sleeping while atomic in kdb ftdump
+ - fs/sysv: Null check to prevent null-ptr-deref bug
+ - Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb
+ (CVE-2023-40283)
+ - net: usbnet: Fix WARNING in usbnet_start_xmit/usb_submit_urb
+ - fs: Protect reconfiguration of sb read-write from racing writes
+ - [powerpc*] mm/altmap: Fix altmap boundary check
+ - soundwire: bus: add better dev_dbg to track complete() calls
+ - soundwire: bus: pm_runtime_request_resume on peripheral attachment
+ - soundwire: fix enumeration completion
+ - PM / wakeirq: support enabling wake-up irq after runtime_suspend called
+ - PM: sleep: wakeirq: fix wake irq arming
+ - exfat: speed up iterate/lookup by fixing start point of traversing cluster
+ chain
+ - exfat: support dynamic allocate bh for exfat_entry_set_cache
+ - exfat: check if filename entries exceeds max filename length
+ (CVE-2023-4273)
+ - mt76: move band capabilities in mt76_phy
+ - mt76: mt7615: Fix fall-through warnings for Clang
+ - wifi: mt76: mt7615: do not advertise 5 GHz on first phy of MT7615D (DBDC)
+ - [x86] CPU/AMD: Do not leak quotient data after a division by 0
+ (CVE-2023-20588)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.191
+ - wireguard: allowedips: expand maximum node depth
+ - ipv6: adjust ndisc_is_useropt() to also return true for PIO
+ - bpf: allow precision tracking for programs with subprogs
+ - bpf: stop setting precise in current state
+ - bpf: aggressively forget precise markings during state checkpointing
+ - [arm64,armhf] dmaengine: pl330: Return DMA_PAUSED when transaction is
+ paused
+ - drm/nouveau/gr: enable memory loads on helper invocation on all channels
+ - drm/shmem-helper: Reset vma->vm_ops before calling dma_buf_mmap()
+ - drm/amd/display: check attr flag before set cursor degamma on DCN3+
+ - [x86] x86/pkeys: Revert a5eff7259790 ("x86/pkeys: Add PKRU value to
+ init_fpstate") (Closes: #1044518)
+ - nilfs2: fix use-after-free of nilfs_root in dirtying inodes via iput
+ - io_uring: correct check for O_TMPFILE
+ - [arm64] iio: cros_ec: Fix the allocation size for cros_ec_command
+ - [arm*] binder: fix memory leak in binder_init()
+ - usb-storage: alauda: Fix uninit-value in alauda_check_media()
+ - [arm64,armhf] usb: dwc3: Properly handle processing of pending events
+ - [arm64,armhf] usb: common: usb-conn-gpio: Prevent bailing out if initial
+ role is none
+ - [x86] cpu/amd: Enable Zenbleed fix for AMD Custom APU 0405
+ - [x86] mm: Fix VDSO and VVAR placement on 5-level paging machines
+ - [x86] speculation: Add cpu_show_gds() prototype
+ - [x86] Move gds_ucode_mitigated() declaration to header
+ - drm/nouveau/disp: Revert a NULL check inside nouveau_connector_get_modes
+ - mISDN: Update parameter type of dsp_cmx_send()
+ - net/packet: annotate data-races around tp->status
+ - tunnels: fix kasan splat when generating ipv4 pmtu error
+ - bonding: Fix incorrect deletion of ETH_P_8021AD protocol vid from slaves
+ - dccp: fix data-race around dp->dccps_mss_cache
+ - drivers: net: prevent tun_build_skb() to exceed the packet size limit
+ - [amd64] IB/hfi1: Fix possible panic during hotplug remove
+ - wifi: cfg80211: fix sband iftype data lookup for AP_VLAN
+ - net: phy: at803x: remove set/get wol callbacks for AR8032
+ - [arm64] net: hns3: refactor hclge_mac_link_status_wait for interface reuse
+ - [arm64] net: hns3: add wait until mac link down
+ - net/mlx5: Allow 0 for total host VFs
+ - btrfs: don't stop integrity writeback too early
+ - btrfs: set cache_block_group_error if we find an error
+ - nvme-tcp: fix potential unbalanced freeze & unfreeze
+ - nvme-rdma: fix potential unbalanced freeze & unfreeze
+ - netfilter: nf_tables: report use refcount overflow
+ - scsi: core: Fix legacy /proc parsing buffer overflow
+ - [x86] scsi: storvsc: Fix handling of virtual Fibre Channel timeouts
+ - scsi: snic: Fix possible memory leak if device_add() fails
+ - scsi: core: Fix possible memory leak if device_add() fails
+ - scsi: qedi: Fix firmware halt over suspend and resume
+ - scsi: qedf: Fix firmware halt over suspend and resume
+ - sch_netem: fix issues in netem_change() vs get_dist_table()
+
+ [ Ben Hutchings ]
+ * d/b/test-patches: Fix installability; improve robustness and efficiency
+ (Closes: #871216, #1035359):
+ - d/b/gencontrol.py: Add optional extra config dir debian/config.local
+ - d/b/gencontrol.py: Add support for noudeb build profile
+ - d/b/test-patches: Change ABI name to make packages co-installable
+ - d/b/test-patches: Make debug info optional and disabled by default
+ - d/b/test-patches: Build a linux-headers-common package as well
+ - d/b/test-patches: Tolerate missing d/control, d/rules.gen, or d/p/test
+ - d/b/test-patches: Detect flavour correctly when running backported kernel
+ - Add pkg.linux.mintools profile for building minimal userland tools
+ - d/b/test-patches: Build linux-{kbuild,bootwrapper} packages
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.10.180-rt88
+ * Bump ABI to 25
+ * Drop unknown config setting NET_CLS_TCINDEX
+ * Drop unknown config setting BLK_DEV_SX8
+ * [rt] Update to 5.10.184-rt90
+ * Drop "decnet: Disable auto-loading as mitigation against local exploits"
+ * Drop now unknown config options for DECnet support
+ * [rt] Update to 5.10.186-rt91
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 16 Aug 2023 22:52:03 +0200
+
+linux (5.10.179-5) bullseye-security; urgency=high
+
+ * Fix "init, x86: Move mem_encrypt_init() into arch_cpu_finalize_init()"
+ backport
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Tue, 08 Aug 2023 13:22:46 +0200
+
+linux (5.10.179-4) bullseye-security; urgency=high
+
+ [ Salvatore Bonaccorso ]
+ * [x86] Add mitigations for Gather Data Sampling (GDS) (CVE-2022-40982)
+ - init: Provide arch_cpu_finalize_init()
+ - x86/cpu: Switch to arch_cpu_finalize_init()
+ - ARM: cpu: Switch to arch_cpu_finalize_init()
+ - ia64/cpu: Switch to arch_cpu_finalize_init()
+ - m68k/cpu: Switch to arch_cpu_finalize_init()
+ - mips/cpu: Switch to arch_cpu_finalize_init()
+ - sh/cpu: Switch to arch_cpu_finalize_init()
+ - sparc/cpu: Switch to arch_cpu_finalize_init()
+ - um/cpu: Switch to arch_cpu_finalize_init()
+ - init: Remove check_bugs() leftovers
+ - init: Invoke arch_cpu_finalize_init() earlier
+ - init, x86: Move mem_encrypt_init() into arch_cpu_finalize_init()
+ - x86/fpu: Remove cpuinfo argument from init functions
+ - x86/fpu: Mark init functions __init
+ - x86/fpu: Move FPU initialization into arch_cpu_finalize_init()
+ - x86/speculation: Add Gather Data Sampling mitigation
+ - x86/speculation: Add force option to GDS mitigation
+ - x86/speculation: Add Kconfig option for GDS
+ - KVM: Add GDS_NO support to KVM
+ - x86/xen: Fix secondary processors' FPU initialization
+ - x86/mm: fix poking_init() for Xen PV guests
+ - x86/mm: Use mm_alloc() in poking_init()
+ - mm: Move mm_cachep initialization to mm_init()
+ - x86/mm: Initialize text poking earlier
+
+ [ Ben Hutchings ]
+ * Documentation/x86: Fix backwards on/off logic about YMM support
+ * [x86] Add a Speculative RAS Overflow (SRSO) mitigation (CVE-2023-20569)
+ - x86/cpu: Add VM page flush MSR availablility as a CPUID feature
+ - x86/cpufeatures: Assign dedicated feature word for CPUID_0x8000001F[EAX]
+ - tools headers cpufeatures: Sync with the kernel sources
+ - x86/bugs: Increase the x86 bugs vector size to two u32s
+ - x86/cpu, kvm: Add support for CPUID_80000021_EAX
+ - x86/srso: Add a Speculative RAS Overflow mitigation
+ - x86/srso: Add IBPB_BRTYPE support
+ - x86/srso: Add SRSO_NO support
+ - x86/srso: Add IBPB
+ - x86/srso: Add IBPB on VMEXIT
+ - x86/srso: Fix return thunks in generated code
+ - x86/srso: Tie SBPB bit setting to microcode patch detection
+ * Bump ABI to 24
+
+ -- Ben Hutchings <benh@debian.org> Tue, 08 Aug 2023 02:33:54 +0200
+
+linux (5.10.179-3) bullseye-security; urgency=high
+
+ [ Salvatore Bonaccorso ]
+ * [x86] microcode/AMD: Load late on both threads too
+ * [x86] cpu/amd: Move the errata checking functionality up
+ * [x86] cpu/amd: Add a Zenbleed fix (CVE-2023-20593)
+ * netfilter: nftables: statify nft_parse_register()
+ * netfilter: nf_tables: validate registers coming from userspace.
+ * netfilter: nf_tables: hold mutex on netns pre_exit path
+ * netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE
+ (CVE-2023-3390)
+ * Ignore ABI changes for nft_parse_register (dropped with 08a01c11a5bb
+ ("netfilter: nftables: statify nft_parse_register()"))
+
+ [ Ben Hutchings ]
+ * netfilter: nf_tables: fix chain binding transaction logic (CVE-2023-3610)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 28 Jul 2023 00:17:15 +0200
+
+linux (5.10.179-2) bullseye-security; urgency=high
+
+ * ipv6: rpl: Fix Route of Death. (CVE-2023-2156)
+ * netfilter: nf_tables: do not ignore genmask when looking up chain by id
+ (CVE-2023-31248)
+ * netfilter: nf_tables: prevent OOB access in nft_byteorder_eval
+ (CVE-2023-35001)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 14 Jul 2023 22:24:08 +0200
+
+linux (5.10.179-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.179
+ - [arm64] dts: qcom: ipq8074-hk01: enable QMP device, not the PHY node
+ - netfilter: br_netfilter: fix recent physdev match breakage
+ - [arm64,armhf] regulator: fan53555: Explicitly include bits header
+ - net: sched: sch_qfq: prevent slab-out-of-bounds in qfq_activate_agg
+ (CVE-2023-31436)
+ - virtio_net: bugfix overflow inside xdp_linearize_page()
+ - sfc: Split STATE_READY in to STATE_NET_DOWN and STATE_NET_UP.
+ - sfc: Fix use-after-free due to selftest_work
+ - netfilter: nf_tables: fix ifdef to also consider nf_tables=m
+ - i40e: fix accessing vsi->active_filters without holding lock
+ - i40e: fix i40e_setup_misc_vector() error handling
+ - mlxfw: fix null-ptr-deref in mlxfw_mfa2_tlv_next()
+ - net: rpl: fix rpl header size calculation
+ - bpf: Fix incorrect verifier pruning due to missing register precision
+ taints
+ - e1000e: Disable TSO on i219-LM card to increase speed
+ - f2fs: Fix f2fs_truncate_partial_nodes ftrace event
+ - Input: i8042 - add quirk for Fujitsu Lifebook A574/H
+ - scsi: megaraid_sas: Fix fw_crash_buffer_show()
+ - scsi: core: Improve scsi_vpd_inquiry() checks
+ - [s390x] ptrace: fix PTRACE_GET_LAST_BREAK error handling
+ - nvme-tcp: fix a possible UAF when failing to allocate an io queue
+ - xen/netback: use same error messages for same errors
+ - xfs: drop submit side trans alloc for append ioends
+ - iio: light: tsl2772: fix reading proximity-diodes from device tree
+ - nilfs2: initialize unused bytes in segment summary blocks
+ - memstick: fix memory leak if card device is never registered
+ - kernel/sys.c: fix and improve control flow in __sys_setres[ug]id()
+ - mm/khugepaged: check again on anon uffd-wp during isolation
+ - sched/uclamp: Make task_fits_capacity() use util_fits_cpu()
+ - sched/uclamp: Fix fits_capacity() check in feec()
+ - sched/uclamp: Make select_idle_capacity() use util_fits_cpu()
+ - sched/uclamp: Make asym_fits_capacity() use util_fits_cpu()
+ - sched/uclamp: Make cpu_overutilized() use util_fits_cpu()
+ - sched/uclamp: Cater for uclamp in find_energy_efficient_cpu()'s early exit
+ condition
+ - sched/fair: Detect capacity inversion
+ - sched/fair: Consider capacity inversion in util_fits_cpu()
+ - sched/uclamp: Fix a uninitialized variable warnings
+ - sched/fair: Fixes for capacity inversion detection
+ - virtiofs: clean up error handling in virtio_fs_get_tree()
+ - virtiofs: split requests that exceed virtqueue size
+ - fuse: check s_root when destroying sb
+ - fuse: fix attr version comparison in fuse_read_update_size()
+ - fuse: always revalidate rename target dentry
+ - fuse: fix deadlock between atomic O_TRUNC and page invalidation
+ - Revert "ext4: fix use-after-free in ext4_xattr_set_entry"
+ - ext4: remove duplicate definition of ext4_xattr_ibody_inline_set()
+ - ext4: fix use-after-free in ext4_xattr_set_entry
+ - udp: Call inet6_destroy_sock() in setsockopt(IPV6_ADDRFORM).
+ - tcp/udp: Call inet6_destroy_sock() in IPv6 sk->sk_destruct().
+ - inet6: Remove inet6_destroy_sock() in sk->sk_prot->destroy().
+ - dccp: Call inet6_destroy_sock() via sk->sk_destruct().
+ - sctp: Call inet6_destroy_sock() via sk->sk_destruct().
+ - [arm64,armhf] pwm: meson: Explicitly set .polarity in .get_state()
+ - ASN.1: Fix check for strdup() success
+
+ [ Salvatore Bonaccorso ]
+ * netfilter: nf_tables: deactivate anonymous set from preparation phase
+ (CVE-2023-32233)
+ * [rt] Refresh "sched/hotplug: Ensure only per-cpu kthreads run during
+ hotplug"
+ * Bump ABI to 23
+ * ovl: fail on invalid uid/gid mapping at copy up (CVE-2023-0386)
+ * [x86] KVM: x86: hyper-v: Avoid calling kvm_make_vcpus_request_mask() with
+ vcpu_mask==NULL (Closes: #1035779)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 12 May 2023 06:08:40 +0200
+
+linux (5.10.178-3) bullseye; urgency=medium
+
+ * [mips*] Define RUNTIME_DISCARD_EXIT in LD script
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 22 Apr 2023 14:24:15 +0200
+
+linux (5.10.178-2) bullseye; urgency=medium
+
+ * docs: futex: Fix kernel-doc references after code split-up preparation
+ * powerpc/doc: Fix htmldocs errors
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 22 Apr 2023 00:51:39 +0200
+
+linux (5.10.178-1) bullseye; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.163
+ - [arm64,armhf] usb: musb: remove extra check in musb_gadget_vbus_draw
+ - [arm64] dts: qcom: ipq6018-cp01-c1: use BLSPI1 pins
+ - [armhf] dts: stm32: Drop stm32mp15xc.dtsi from Avenger96
+ - [arm64] perf/smmuv3: Fix hotplug callback leak in arm_smmu_pmu_init()
+ - [arm64] dts: armada-3720-turris-mox: Add missing interrupt for RTC
+ - pstore/ram: Fix error return code in ramoops_probe()
+ - [armhf] mmp: fix timer_read delay
+ - pstore: Avoid kcore oops by vmap()ing with VM_IOREMAP
+ - sched/fair: Cleanup task_util and capacity type
+ - sched/uclamp: Fix relationship between uclamp and migration margin
+ - cpuidle: dt: Return the correct numbers of parsed idle states
+ - PM: hibernate: Fix mistake in kerneldoc comment
+ - fs: don't audit the capability check in simple_xattr_list()
+ - perf: Fix possible memleak in pmu_dev_alloc()
+ - [x86] platform/x86: huawei-wmi: fix return value calculation
+ - timerqueue: Use rb_entry_safe() in timerqueue_getnext()
+ - lib/fonts: fix undefined behavior in bit shift for get_default_font
+ - ocfs2: fix memory leak in ocfs2_stack_glue_init()
+ - PNP: fix name memory leak in pnp_alloc_dev()
+ - [x86] perf/x86/intel/uncore: Fix reference count leak in
+ hswep_has_limit_sbox()
+ - [x86] perf/x86/intel/uncore: Fix reference count leak in
+ snr_uncore_mmio_map()
+ - [x86] perf/x86/intel/uncore: Fix reference count leak in
+ __uncore_imc_init_box()
+ - [arm64] platform/chrome: cros_usbpd_notify: Fix error handling in
+ cros_usbpd_notify_init()
+ - [arm64] irqchip: gic-pm: Use pm_runtime_resume_and_get() in gic_probe()
+ - [amd64] EDAC/i10nm: fix refcount leak in pci_get_dev_wrapper()
+ - nfsd: don't call nfsd_file_put from client states seqfile display
+ - genirq/irqdesc: Don't try to remove non-existing sysfs files
+ - [x86] cpufreq: amd_freq_sensitivity: Add missing pci_dev_put()
+ - libfs: add DEFINE_SIMPLE_ATTRIBUTE_SIGNED for signed value
+ - lib/notifier-error-inject: fix error when writing -errno to debugfs file
+ - docs: fault-injection: fix non-working usage of negative values
+ - debugfs: fix error when writing negative value to atomic_t debugfs file
+ - ocfs2: ocfs2_mount_volume does cleanup job before return error
+ - ocfs2: rewrite error handling of ocfs2_fill_super
+ - ocfs2: fix memory leak in ocfs2_mount_volume()
+ - rapidio: fix possible name leaks when rio_add_device() fails
+ - rapidio: rio: fix possible name leak in rio_register_mport()
+ - futex: Move to kernel/futex/
+ - futex: Resend potentially swallowed owner death notification
+ - cpu/hotplug: Make target_store() a nop when target == state
+ - [armhf] clocksource/drivers/timer-ti-dm: Fix missing clk_disable_unprepare
+ in dmtimer_systimer_init_clock()
+ - ACPICA: Fix use-after-free in acpi_ut_copy_ipackage_to_ipackage()
+ - [x86] uprobes/x86: Allow to probe a NOP instruction with 0x66 prefix
+ - [x86] xen: Fix memory leak in xen_smp_intr_init{_pv}()
+ - [x86] xen: Fix memory leak in xen_init_lock_cpu()
+ - xen/privcmd: Fix a possible warning in privcmd_ioctl_mmap_resource()
+ - PM: runtime: Improve path in rpm_idle() when no callback
+ - PM: runtime: Do not call __rpm_callback() from rpm_idle()
+ - [x86] platform/x86: mxm-wmi: fix memleak in mxm_wmi_call_mx[ds|mx]()
+ - [x86] platform/x86: intel_scu_ipc: fix possible name leak in
+ __intel_scu_ipc_register()
+ - fs: sysv: Fix sysv_nblocks() returns wrong value
+ - rapidio: fix possible UAF when kfifo_alloc() fails
+ - eventfd: change int to __u64 in eventfd_signal() ifndef CONFIG_EVENTFD
+ - relay: fix type mismatch when allocating memory in relay_create_buf()
+ - hfs: Fix OOB Write in hfs_asc2mac
+ - rapidio: devices: fix missing put_device in mport_cdev_open
+ - wifi: ath9k: hif_usb: fix memory leak of urbs in
+ ath9k_hif_usb_dealloc_tx_urbs()
+ - wifi: ath9k: hif_usb: Fix use-after-free in ath9k_hif_usb_reg_in_cb()
+ - wifi: rtl8xxxu: Fix reading the vendor of combo chips
+ - [arm64] drm/bridge: adv7533: remove dynamic lane switching from adv7533
+ bridge
+ - [armhf] media: coda: jpeg: Add check for kmalloc
+ - [arm64] venus: pm_helpers: Fix error check in vcodec_domains_get()
+ - can: kvaser_usb: do not increase tx statistics when sending error message
+ frames
+ - can: kvaser_usb: kvaser_usb_leaf: Get capabilities from device
+ - can: kvaser_usb: kvaser_usb_leaf: Rename {leaf,usbcan}_cmd_error_event to
+ {leaf,usbcan}_cmd_can_error_event
+ - can: kvaser_usb: kvaser_usb_leaf: Handle CMD_ERROR_EVENT
+ - can: kvaser_usb_leaf: Set Warning state even without bus errors
+ - can: kvaser_usb_leaf: Fix improved state not being reported
+ - can: kvaser_usb_leaf: Fix wrong CAN state after stopping
+ - can: kvaser_usb_leaf: Fix bogus restart events
+ - can: kvaser_usb: Add struct kvaser_usb_busparams
+ - can: kvaser_usb: Compare requested bittiming parameters with actual
+ parameters in do_set_{,data}_bittiming
+ - spi: Update reference to struct spi_controller
+ - ima: Fix fall-through warnings for Clang
+ - ima: Handle -ESTALE returned by ima_filter_rule_match()
+ - [arm64] drm/msm/hdmi: switch to drm_bridge_connector
+ - [arm64] drm/msm/hdmi: drop unused GPIO support
+ - bpf: Fix slot type check in check_stack_write_var_off
+ - media: vivid: fix compose size exceed boundary
+ - bpf: propagate precision in ALU/ALU64 operations
+ - bpf: Check the other end of slot_type for STACK_SPILL
+ - bpf: propagate precision across all frames, not just the last one
+ - mtd: Fix device name leak when register device failed in add_mtd_device()
+ - wifi: rsi: Fix handling of 802.3 EAPOL frames sent via control port
+ - rxrpc: Fix ack.bufferSize to be 0 when generating an ack
+ - drm/radeon: Add the missed acpi_put_table() to fix memory leak
+ - regulator: core: fix unbalanced of node refcount in regulator_dev_lookup()
+ - amdgpu/pm: prevent array underflow in vega20_odn_edit_dpm_table()
+ - drm/fourcc: Add packed 10bit YUV 4:2:0 format
+ - drm/fourcc: Fix vsub/hsub for Q410 and Q401
+ - integrity: Fix memory leakage in keyring allocation error path
+ - ima: Fix misuse of dereference of pointer in template_desc_init_fields()
+ - wifi: ath10k: Fix return value in ath10k_pci_init()
+ - mtd: lpddr2_nvm: Fix possible null-ptr-deref
+ - Input: elants_i2c - properly handle the reset GPIO when power is off
+ - media: vidtv: Fix use-after-free in vidtv_bridge_dvb_init()
+ - media: solo6x10: fix possible memory leak in solo_sysfs_init()
+ - inet: add READ_ONCE(sk->sk_bound_dev_if) in inet_csk_bind_conflict()
+ - bpf: Move skb->len == 0 checks into __bpf_redirect
+ - HID: hid-sensor-custom: set fixed size for custom attributes
+ - ALSA: pcm: fix undefined behavior in bit shift for SNDRV_PCM_RATE_KNOT
+ - ALSA: seq: fix undefined behavior in bit shift for
+ SNDRV_SEQ_FILTER_USE_EVENT
+ - regulator: core: use kfree_const() to free space conditionally
+ - [arm64,armhf] clk: rockchip: Fix memory leak in
+ rockchip_clk_register_pll()
+ - drm/amdgpu: fix pci device refcount leak
+ - bonding: fix link recovery in mode 2 when updelay is nonzero
+ - drbd: fix an invalid memory access caused by incorrect use of list
+ iterator
+ - media: imon: fix a race condition in send_packet()
+ - [arm64] clk: imx: replace osc_hdmi with dummy
+ - pinctrl: pinconf-generic: add missing of_node_put()
+ - media: dvb-core: Fix ignored return value in dvb_register_frontend()
+ - media: dvb-usb: az6027: fix null-ptr-deref in az6027_i2c_xfer()
+ (CVE-2023-28328)
+ - [arm64,armhf] drm/tegra: Add missing clk_disable_unprepare() in
+ tegra_dc_probe()
+ - ASoC: dt-bindings: wcd9335: fix reset line polarity in example
+ - NFSv4.2: Clear FATTR4_WORD2_SECURITY_LABEL when done decoding
+ - NFSv4.2: Fix a memory stomp in decode_attr_security_label
+ - NFSv4.2: Fix initialisation of struct nfs4_label
+ - NFSv4: Fix a deadlock between nfs4_open_recover_helper() and delegreturn
+ - NFS: Fix an Oops in nfs_d_automount()
+ - [x86] ALSA: asihpi: fix missing pci_disable_device()
+ - wifi: iwlwifi: mvm: fix double free on tx path.
+ - drm/amd/pm/smu11: BACO is supported when it's in BACO state
+ - drm/radeon: Fix PCI device refcount leak in radeon_atrm_get_bios()
+ - drm/amdgpu: Fix PCI device refcount leak in amdgpu_atrm_get_bios()
+ - netfilter: conntrack: set icmpv6 redirects as RELATED
+ - bpf, sockmap: Fix repeated calls to sock_put() when msg has more_data
+ - bpf, sockmap: Fix data loss caused by using apply_bytes on ingress
+ redirect
+ - bonding: uninitialized variable in bond_miimon_inspect()
+ - spi: spidev: mask SPI_CS_HIGH in SPI_IOC_RD_MODE
+ - wifi: mac80211: fix memory leak in ieee80211_if_add()
+ - wifi: cfg80211: Fix not unregister reg_pdev when load_builtin_regdb_keys()
+ fails
+ - regulator: core: fix module refcount leak in set_supply()
+ - regulator: core: fix resource leak in regulator_register()
+ - hwmon: (jc42) Convert register access and caching to regmap/regcache
+ - hwmon: (jc42) Restore the min/max/critical temperatures on resume
+ - bpf, sockmap: fix race in sock_map_free()
+ - ALSA: pcm: Set missing stop_operating flag at undoing trigger start
+ - media: saa7164: fix missing pci_disable_device()
+ - ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt
+ - xprtrdma: Fix regbuf data not freed in rpcrdma_req_create()
+ - SUNRPC: Fix missing release socket in rpc_sockname()
+ - NFSv4.x: Fail client initialisation if state manager thread can't run
+ - [armhf] media: coda: Add check for dcoda_iram_alloc
+ - [armhf] media: coda: Add check for kmalloc
+ - [armhf] clk: samsung: Fix memory leak in _samsung_clk_register_pll()
+ - [armhf] spi: spi-gpio: Don't set MOSI as an input if not 3WIRE mode
+ - wifi: rtl8xxxu: Add __packed to struct rtl8723bu_c2h
+ - wifi: rtl8xxxu: Fix the channel width reporting
+ - wifi: brcmfmac: Fix error return code in brcmf_sdio_download_firmware()
+ - blktrace: Fix output non-blktrace event when blk_classic option enabled
+ - [armhf] clk: socfpga: clk-pll: Remove unused variable 'rc'
+ - [armhf] clk: socfpga: use clk_hw_register for a5/c5
+ - [armhf] clk: socfpga: Fix memory leak in socfpga_gate_init()
+ - [x86] net: vmw_vsock: vmci: Check memcpy_from_msg()
+ - net: defxx: Fix missing err handling in dfx_init()
+ - drivers: net: qlcnic: Fix potential memory leak in qlcnic_sriov_init()
+ - of: overlay: fix null pointer dereferencing in find_dup_cset_node_entry()
+ and find_dup_cset_prop()
+ - ethernet: s2io: don't call dev_kfree_skb() under spin_lock_irqsave()
+ - net: farsync: Fix kmemleak when rmmods farsync
+ - net/tunnel: wait until all sk_user_data reader finish before releasing the
+ sock
+ - hamradio: don't call dev_kfree_skb() under spin_lock_irqsave()
+ - [i386] net: amd: lance: don't call dev_kfree_skb() under
+ spin_lock_irqsave()
+ - [amd64,arm64] net: amd-xgbe: Fix logic around active and passive cables
+ - [amd64,arm64] net: amd-xgbe: Check only the minimum speed for
+ active/passive cables
+ - sctp: sysctl: make extra pointers netns aware
+ - Bluetooth: btusb: don't call kfree_skb() under spin_lock_irqsave()
+ - Bluetooth: hci_qca: don't call kfree_skb() under spin_lock_irqsave()
+ - Bluetooth: hci_ll: don't call kfree_skb() under spin_lock_irqsave()
+ - Bluetooth: hci_h5: don't call kfree_skb() under spin_lock_irqsave()
+ - Bluetooth: hci_bcsp: don't call kfree_skb() under spin_lock_irqsave()
+ - Bluetooth: hci_core: don't call kfree_skb() under spin_lock_irqsave()
+ - Bluetooth: RFCOMM: don't call kfree_skb() under spin_lock_irqsave()
+ - stmmac: fix potential division by 0
+ - apparmor: fix a memleak in multi_transaction_new()
+ - apparmor: fix lockdep warning when removing a namespace
+ - apparmor: Fix abi check to include v8 abi
+ - [arm64] crypto: nitrox - avoid double free on error path in
+ nitrox_sriov_init()
+ - scsi: core: Fix a race between scsi_done() and scsi_timeout()
+ - apparmor: Use pointer to struct aa_label for lbs_cred
+ - [arm64,armhf] PCI: dwc: Fix n_fts[] array overrun
+ - RDMA/core: Fix order of nldev_exit call
+ - f2fs: Fix the race condition of resize flag between resizefs
+ - apparmor: Fix memleak in alloc_ns()
+ - f2fs: fix normal discard process
+ - RDMA/nldev: Return "-EAGAIN" if the cm_id isn't from expected port
+ - scsi: scsi_debug: Fix a warning in resp_write_scat()
+ - crypto: cryptd - Use request context instead of stack for sub-request
+ - [arm64] RDMA/hns: Repacing 'dseg_len' by macros in fill_ext_sge_inl_data()
+ - [arm64] RDMA/hns: Fix ext_sge num error when post send
+ - PCI: Check for alloc failure in pci_request_irq()
+ - [amd64] RDMA/hfi: Decrease PCI device reference count in error path
+ - [arm64] RDMA/hns: fix memory leak in hns_roce_alloc_mr()
+ - RDMA/rxe: Fix NULL-ptr-deref in rxe_qp_do_cleanup() when socket create
+ failed
+ - scsi: hpsa: Fix possible memory leak in hpsa_init_one()
+ - crypto: tcrypt - Fix multibuffer skcipher speed test mem leak
+ - padata: Always leave BHs disabled when running ->parallel()
+ - padata: Fix list iterator in padata_do_serial()
+ - scsi: mpt3sas: Fix possible resource leaks in mpt3sas_transport_port_add()
+ - scsi: hpsa: Fix error handling in hpsa_add_sas_host()
+ - scsi: hpsa: Fix possible memory leak in hpsa_add_sas_device()
+ - scsi: scsi_debug: Fix a warning in resp_verify()
+ - scsi: scsi_debug: Fix a warning in resp_report_zones()
+ - scsi: fcoe: Fix possible name leak when device_register() fails
+ - scsi: scsi_debug: Fix possible name leak in sdebug_add_host_helper()
+ - scsi: ipr: Fix WARNING in ipr_init()
+ - scsi: fcoe: Fix transport not deattached when fcoe_if_init() fails
+ - scsi: snic: Fix possible UAF in snic_tgt_create()
+ - RDMA/nldev: Add checks for nla_nest_start() in fill_stat_counter_qps()
+ - f2fs: avoid victim selection from previous victim section
+ - RDMA/nldev: Fix failure to send large messages
+ - [arm64,armhf] crypto: amlogic - Remove kcalloc without check
+ - [amd64] RDMA/hfi1: Fix error return code in parse_platform_config()
+ - RDMA/srp: Fix error return code in srp_parse_options()
+ - orangefs: Fix sysfs not cleanup when dev init failed
+ - [arm64] RDMA/hns: Fix PBL page MTR find
+ - [arm64] RDMA/hns: Fix page size cap from firmware
+ - [x86] hwrng: amd - Fix PCI device refcount leak
+ - [i386] hwrng: geode - Fix PCI device refcount leak
+ - IB/IPoIB: Fix queue count inconsistency for PKEY child interfaces
+ - [arm64,armhf] serial: tegra: Read DMA status before terminating
+ - class: fix possible memory leak in __class_register()
+ - vfio: platform: Do not pass return buffer to ACPI _RST method
+ - usb: typec: Check for ops->exit instead of ops->enter in altmode_exit
+ - usb: typec: tcpci: fix of node refcount leak in tcpci_register_port()
+ - usb: typec: tipd: Fix spurious fwnode_handle_put in error path
+ - [arm*] serial: amba-pl011: avoid SBSA UART accessing DMACR register
+ - [arm*] serial: pl011: Do not clear RX FIFO & RX interrupt in unthrottle.
+ - [i386] serial: pch: Fix PCI device refcount leak in pch_request_dma()
+ - tty: serial: clean up stop-tx part in altera_uart_tx_chars()
+ - misc: tifm: fix possible memory leak in tifm_7xx1_switch_media()
+ - misc: sgi-gru: fix use-after-free error in gru_set_context_option,
+ gru_fault and gru_handle_user_call_os (CVE-2022-3424)
+ - [arm*] firmware: raspberrypi: fix possible memory leak in
+ rpi_firmware_probe()
+ - iio: temperature: ltc2983: make bulk write buffer DMA-safe
+ - genirq: Add IRQF_NO_AUTOEN for request_irq/nmi()
+ - iio:imu:adis: Use IRQF_NO_AUTOEN instead of irq request then disable
+ - iio: adis: handle devices that cannot unmask the drdy pin
+ - iio: adis: stylistic changes
+ - iio:imu:adis: Move exports into IIO_ADISLIB namespace
+ - iio: adis: add '__adis_enable_irq()' implementation
+ - usb: roles: fix of node refcount leak in usb_role_switch_is_parent()
+ - usb: gadget: f_hid: optional SETUP/SET_REPORT mode
+ - usb: gadget: f_hid: fix f_hidg lifetime vs cdev
+ - usb: gadget: f_hid: fix refcount leak on error path
+ - chardev: fix error handling in cdev_device_add()
+ - [i386] i2c: pxa-pci: fix missing pci_disable_device() on error in
+ ce4100_i2c_probe
+ - [x86] staging: rtl8192u: Fix use after free in ieee80211_rx()
+ - [x86] staging: rtl8192e: Fix potential use-after-free in
+ rtllib_rx_Monitor()
+ - gpiolib: Get rid of redundant 'else'
+ - gpiolib: cdev: fix NULL-pointer dereferences
+ - usb: storage: Add check for kcalloc
+ - tracing/hist: Fix issue of losting command info in error_log
+ - fbdev: pm2fb: fix missing pci_disable_device()
+ - [x86] fbdev: via: Fix error in via_core_init()
+ - [x86] fbdev: vermilion: decrease reference count in error path
+ - [x86] fbdev: uvesafb: Fixes an error handling path in uvesafb_probe()
+ - [armhf] HSI: omap_ssi_core: fix unbalanced pm_runtime_disable()
+ - [armhf] HSI: omap_ssi_core: fix possible memory leak in ssi_probe()
+ - power: supply: fix residue sysfs file in error handle route of
+ __power_supply_register()
+ - perf trace: Return error if a system call doesn't exist
+ - perf trace: Use macro RAW_SYSCALL_ARGS_NUM to replace number
+ - perf trace: Handle failure when trace point folder is missed
+ - perf symbol: correction while adjusting symbol
+ - [armhf] HSI: omap_ssi_core: Fix error handling in ssi_init()
+ - power: supply: fix null pointer dereferencing in
+ power_supply_get_battery_info
+ - [arm64,armhf] pwm: tegra: Improve required rate calculation
+ - dmaengine: idxd: Fix crc_val field for completion record
+ - rtc: rtc-cmos: Do not check ACPI_FADT_LOW_POWER_S0
+ - rtc: cmos: Fix event handler registration ordering issue
+ - rtc: cmos: Fix wake alarm breakage
+ - rtc: cmos: fix build on non-ACPI platforms
+ - rtc: cmos: Call cmos_wake_setup() from cmos_do_probe()
+ - rtc: cmos: Call rtc_wake_setup() from cmos_do_probe()
+ - rtc: cmos: Eliminate forward declarations of some functions
+ - rtc: cmos: Rename ACPI-related functions
+ - rtc: cmos: Disable ACPI RTC event on removal
+ - [armhf] rtc: snvs: Allow a time difference on clock register read
+ - [arm64] rtc: pcf85063: Fix reading alarm
+ - [amd64] iommu/amd: Fix pci device refcount leak in ppr_notifier()
+ - [powerpc*] xmon: Enable breakpoints on 8xx
+ - [powerpc*] xmon: Fix -Wswitch-unreachable warning in bpt_cmds
+ - [powerpc*] xive: add missing iounmap() in error path in
+ xive_spapr_populate_irq_data()
+ - kbuild: remove unneeded mkdir for external modules_install
+ - kbuild: unify modules(_install) for in-tree and external modules
+ - kbuild: refactor single builds of *.ko
+ - [powerpc*] perf: callchain validate kernel stack pointer bounds
+ - [powerpc*] hv-gpci: Fix hv_gpci event list
+ - [powerpc*] eeh: Drop redundant spinlock initialization
+ - [powerpc*] pseries/eeh: use correct API for error log size
+ - netfilter: flowtable: really fix NAT IPv6 offload
+ - [arm64] rtc: pcf85063: fix pcf85063_clkout_control
+ - NFSD: Remove spurious cb_setup_err tracepoint
+ - nfsd: under NFSv4.1, fix double svc_xprt_put on rpc_create failure
+ - net: macsec: fix net device access prior to holding a lock
+ - mISDN: hfcsusb: don't call dev_kfree_skb/kfree_skb() under
+ spin_lock_irqsave()
+ - mISDN: hfcpci: don't call dev_kfree_skb/kfree_skb() under
+ spin_lock_irqsave()
+ - mISDN: hfcmulti: don't call dev_kfree_skb/kfree_skb() under
+ spin_lock_irqsave()
+ - nfc: pn533: Clear nfc_target before being used
+ - r6040: Fix kmemleak in probe and remove
+ - net: switch to storing KCOV handle directly in sk_buff
+ - net: add inline function skb_csum_is_sctp
+ - net: igc: use skb_csum_is_sctp instead of protocol check
+ - net: add a helper to avoid issues with HW TX timestamping and SO_TXTIME
+ - igc: Enhance Qbv scheduling by using first flag bit
+ - igc: Use strict cycles for Qbv scheduling
+ - igc: Add checking for basetime less than zero
+ - igc: recalculate Qbv end_time by considering cycle time
+ - igc: Lift TAPRIO schedule restriction
+ - igc: Set Qbv start_time and end_time to end_time if not being configured
+ in GCL
+ - openvswitch: Fix flow lookup to use unmasked key
+ - skbuff: Account for tail adjustment during pull operations
+ - [arm64] mailbox: zynq-ipi: fix error handling while device_register()
+ fails
+ - net_sched: reject TCF_EM_SIMPLE case for complex ematch module
+ - rxrpc: Fix missing unlock in rxrpc_do_sendmsg()
+ - myri10ge: Fix an error handling path in myri10ge_probe()
+ - net: stream: purge sk_error_queue in sk_stream_kill_queues()
+ - rcu: Fix __this_cpu_read() lockdep warning in rcu_force_quiescent_state()
+ - [arm64] make is_ttbrX_addr() noinstr-safe
+ - video: hyperv_fb: Avoid taking busy spinlock on panic path
+ - [x86] hyperv: Remove unregister syscore call from Hyper-V cleanup
+ - binfmt_misc: fix shift-out-of-bounds in check_special_flags
+ - fs: jfs: fix shift-out-of-bounds in dbAllocAG
+ - udf: Avoid double brelse() in udf_rename()
+ - fs: jfs: fix shift-out-of-bounds in dbDiscardAG
+ - ACPICA: Fix error code path in acpi_ds_call_control_method()
+ - nilfs2: fix shift-out-of-bounds/overflow in nilfs_sb2_bad_offset()
+ - nilfs2: fix shift-out-of-bounds due to too large exponent of block size
+ - acct: fix potential integer overflow in encode_comp_t()
+ - hfs: fix OOB Read in __hfs_brec_find
+ - [armhf] drm/etnaviv: add missing quirks for GC300
+ - brcmfmac: return error when getting invalid max_flowrings from dongle
+ - wifi: ath9k: verify the expected usb_endpoints are present
+ - wifi: ar5523: Fix use-after-free on ar5523_cmd() timed out
+ - ipmi: fix memleak when unload ipmi driver
+ - drm/amd/display: prevent memory leak
+ - qed (gcc13): use u16 for fid to be big enough
+ - bpf: make sure skb->len != 0 when redirecting to a tunneling device
+ - hamradio: baycom_epp: Fix return type of baycom_send_packet()
+ - wifi: brcmfmac: Fix potential shift-out-of-bounds in
+ brcmf_fw_alloc_request()
+ - igb: Do not free q_vector unless new one was allocated
+ - drm/amdgpu: Fix type of second parameter in trans_msg() callback
+ - drm/amdgpu: Fix type of second parameter in odn_edit_dpm_table() callback
+ - [s390x] ctcm: Fix return type of ctc{mp,}m_tx()
+ - [s390x] netiucv: Fix return type of netiucv_tx()
+ - [s390x] lcs: Fix return type of lcs_start_xmit()
+ - [arm64] drm/msm: Use drm_mode_copy()
+ - [arm64] drm/rockchip: Use drm_mode_copy()
+ - drivers/md/md-bitmap: check the return value of md_bitmap_get_counter()
+ - md/raid1: stop mdx_raid1 thread when raid1 array run failed
+ - drm/amd/display: fix array index out of bound error in bios parser
+ - net: add atomic_long_t to net_device_stats fields
+ - mrp: introduce active flags to prevent UAF when applicant uninit
+ - ppp: associate skb with a device at tx
+ - bpf: Prevent decl_tag from being referenced in func_proto arg
+ - ethtool: avoiding integer overflow in ethtool_phys_id()
+ - media: dvb-frontends: fix leak of memory fw
+ - media: dvbdev: adopts refcnt to avoid UAF
+ - media: dvb-usb: fix memory leak in dvb_usb_adapter_init()
+ - blk-mq: fix possible memleak when register 'hctx' failed
+ - regulator: core: fix use_count leakage when handling boot-on
+ - [arm64] mmc: f-sdh30: Add quirks for broken timeout clock capability
+ - media: si470x: Fix use-after-free in si470x_int_in_callback()
+ - hugetlbfs: fix null-ptr-deref in hugetlbfs_parse_param()
+ - orangefs: Fix kmemleak in orangefs_prepare_debugfs_help_string()
+ - orangefs: Fix kmemleak in orangefs_{kernel,client}_debug_init()
+ - hwmon: (jc42) Fix missing unlock on error in jc42_write()
+ - ALSA/ASoC: hda: move/rename snd_hdac_ext_stop_streams to hdac_stream.c
+ - ALSA: hda: add snd_hdac_stop_streams() helper
+ - [x86] ASoC: Intel: Skylake: Fix driver hang during shutdown
+ - ASoC: audio-graph-card: fix refcount leak of cpu_ep in
+ __graph_for_each_link()
+ - [x86] ASoC: rt5670: Remove unbalanced pm_runtime_put()
+ - pstore: Switch pmsg_lock to an rt_mutex to avoid priority inversion
+ - perf debug: Set debug_peo_args and redirect_to_stderr variable to correct
+ values in perf_quiet_option()
+ - afs: Fix lost servers_outstanding count
+ - pstore: Make sure CONFIG_PSTORE_PMSG selects CONFIG_RT_MUTEXES
+ - ima: Simplify ima_lsm_copy_rule
+ - ALSA: usb-audio: add the quirk for KT0206 device
+ - ALSA: hda/realtek: Add quirk for Lenovo TianYi510Pro-14IOB
+ - ALSA: hda/hdmi: Add HP Device 0x8711 to force connect list
+ - [arm64,armhf] usb: dwc3: Fix race between dwc3_set_mode and
+ __dwc3_set_mode
+ - [arm64,armhf] usb: dwc3: core: defer probe on ulpi_read_id timeout
+ - HID: wacom: Ensure bootloader PID is usable in hidraw mode
+ - reiserfs: Add missing calls to reiserfs_security_free()
+ - iio: adc: ad_sigma_delta: do not use internal iio_dev lock
+ - iio: adc128s052: add proper .data members in adc128_of_match table
+ - regulator: core: fix deadlock on regulator enable
+ - ovl: fix use inode directly in rcu-walk mode
+ - media: dvbdev: fix build warning due to comments
+ - media: dvbdev: fix refcnt bug
+ - [armhf] pwm: tegra: Fix 32 bit build
+ - [arm64,armhf] usb: dwc3: qcom: Fix memory leak in
+ dwc3_qcom_interconnect_init
+ - cifs: fix oops during encryption
+ - nvme-pci: fix doorbell buffer value endianness
+ - nvme-pci: fix mempool alloc size
+ - nvme-pci: fix page size checks
+ - ata: ahci: Fix PCS quirk application for suspend
+ - nvme: fix the NVME_CMD_EFFECTS_CSE_MASK definition
+ - [powerpc*] rtas: avoid device tree lookups in rtas_os_term()
+ - [powerpc*] rtas: avoid scheduling in rtas_os_term()
+ - HID: multitouch: fix Asus ExpertBook P2 P2451FA trackpoint
+ - HID: plantronics: Additional PIDs for double volume key presses quirk
+ - pstore/zone: Use GFP_ATOMIC to allocate zone buffer
+ - hfsplus: fix bug causing custom uid and gid being unable to be assigned
+ with mount
+ - binfmt: Fix error return code in load_elf_fdpic_binary()
+ - ovl: Use ovl mounter's fsuid and fsgid in ovl_link()
+ - ALSA: line6: correct midi status byte when receiving data from podxt
+ - ALSA: line6: fix stack overflow in line6_midi_transmit
+ - pnode: terminate at peers of source
+ - md: fix a crash in mempool_free
+ - mm, compaction: fix fast_isolate_around() to stay within boundaries
+ - f2fs: should put a page when checking the summary info
+ - mmc: vub300: fix warning - do not call blocking ops when !TASK_RUNNING
+ - tpm: acpi: Call acpi_put_table() to fix memory leak
+ - tpm: tpm_crb: Add the missed acpi_put_table() to fix memory leak
+ - tpm: tpm_tis: Add the missed acpi_put_table() to fix memory leak
+ - SUNRPC: Don't leak netobj memory when gss_read_proxy_verf() fails
+ - net/mlx5e: Fix nullptr in mlx5e_tc_add_fdb_flow()
+ - wifi: rtlwifi: remove always-true condition pointed out by GCC 12
+ - wifi: rtlwifi: 8192de: correct checking of IQK reload
+ - rcu: Prevent lockdep-RCU splats on lock acquisition/release
+ - net/af_packet: add VLAN support for AF_PACKET SOCK_RAW GSO
+ - net/af_packet: make sure to pull mac header
+ - media: stv0288: use explicitly signed char
+ - jbd2: use the correct print format
+ - [arm64] dts: qcom: sdm845-db845c: correct SPI2 pins drive strength
+ - btrfs: fix resolving backrefs for inline extent followed by prealloc
+ - [arm64] dts: qcom: sdm850-lenovo-yoga-c630: correct I2C12 pins drive
+ strength
+ - PM/devfreq: governor: Add a private governor_data for governor
+ - cpufreq: Init completion before kobject_init_and_add()
+ - ALSA: patch_realtek: Fix Dell Inspiron Plus 16
+ - ALSA: hda/realtek: Apply dual codec fixup for Dell Latitude laptops
+ - dm cache: Fix ABBA deadlock between shrink_slab and
+ dm_cache_metadata_abort
+ - dm thin: Fix ABBA deadlock between shrink_slab and dm_pool_abort_metadata
+ - dm thin: Use last transaction's pmd->root when commit failed
+ - dm thin: resume even if in FAIL mode
+ - dm thin: Fix UAF in run_timer_softirq()
+ - dm integrity: Fix UAF in dm_integrity_dtr()
+ - dm cache: Fix UAF in destroy()
+ - dm cache: set needs_check flag after aborting metadata
+ - tracing/hist: Fix out-of-bound write on 'action_data.var_ref_idx'
+ - perf/core: Call LSM hook after copying perf_event_attr
+ - [x86] KVM: nVMX: Inject #GP, not #UD, if "generic" VMXON CR0/CR4 check
+ fails
+ - [x86] microcode/intel: Do not retry microcode reloading on the APs
+ - [x86] ftrace/x86: Add back ftrace_expected for ftrace bug reports
+ - [x86] kprobes: Fix kprobes instruction boudary check with CONFIG_RETHUNK
+ - tracing/hist: Fix wrong return value in parse_action_params()
+ - tracing: Fix infinite loop in tracing_read_pipe on overflowed
+ print_trace_line
+ - media: dvb-core: Fix double free in dvb_register_device()
+ - cifs: fix confusing debug message
+ - cifs: fix missing display of three mount options
+ - md/bitmap: Fix bitmap chunk size overflow issues
+ - efi: Add iMac Pro 2017 to uefi skip cert quirk
+ - wifi: wilc1000: sdio: fix module autoloading
+ - ipmi: fix long wait in unload when IPMI disconnect
+ - mtd: spi-nor: Check for zero erase size in spi_nor_find_best_erase_type()
+ - ima: Fix a potential NULL pointer access in ima_restore_measurement_list
+ - ipmi: fix use after free in _ipmi_destroy_user()
+ - PCI: Fix pci_device_is_present() for VFs by checking PF
+ - PCI/sysfs: Fix double free in error path
+ - driver core: Fix bus_type.match() error handling in __driver_attach()
+ - [amd64] iommu/amd: Fix ivrs_acpihid cmdline parsing code
+ - [armhf] remoteproc: core: Do pm_relax when in RPROC_OFFLINE state
+ - device_cgroup: Roll back to original exceptions after copy failure
+ - drm/connector: send hotplug uevent on connector cleanup
+ - [x86] drm/i915/dsi: fix VBT send packet port selection for dual link DSI
+ - ext4: silence the warning when evicting inode with dioread_nolock
+ - ext4: add inode table check in __ext4_get_inode_loc to aovid possible
+ infinite loop
+ - ext4: fix use-after-free in ext4_orphan_cleanup
+ - ext4: fix undefined behavior in bit shift for ext4_check_flag_values
+ - ext4: add EXT4_IGET_BAD flag to prevent unexpected bad inode
+ - ext4: add helper to check quota inums
+ - ext4: fix bug_on in __es_tree_search caused by bad quota inode
+ - ext4: fix reserved cluster accounting in __es_remove_extent()
+ - ext4: check and assert if marking an no_delete evicting inode dirty
+ - ext4: fix bug_on in __es_tree_search caused by bad boot loader inode
+ - ext4: init quota for 'old.inode' in 'ext4_rename'
+ - ext4: fix delayed allocation bug in ext4_clu_mapped for bigalloc + inline
+ - ext4: fix corruption when online resizing a 1K bigalloc fs
+ - ext4: fix error code return to user-space in ext4_get_branch()
+ - ext4: avoid BUG_ON when creating xattrs
+ - ext4: fix inode leak in ext4_xattr_inode_create() on an error path
+ - ext4: initialize quota before expanding inode in setproject ioctl
+ - ext4: avoid unaccounted block allocation when expanding inode
+ - ext4: allocate extended attribute value in vmalloc area
+ - drm/amdgpu: handle polaris10/11 overlap asics (v2)
+ - drm/amdgpu: make display pinning more flexible (v2)
+ - [armel,armhf] renumber bits related to _TIF_WORK_MASK
+ - [x86] perf/x86/intel/uncore: Generalize I/O stacks to PMON mapping
+ procedure
+ - [x86] perf/x86/intel/uncore: Clear attr_update properly
+ - btrfs: replace strncpy() with strscpy()
+ - [x86] mce: Get rid of msr_ops
+ - [x86] MCE/AMD: Clear DFR errors found in THR handler
+ - perf probe: Use dwarf_attr_integrate as generic DWARF attr accessor
+ - perf probe: Fix to get the DW_AT_decl_file and DW_AT_call_file as unsinged
+ data
+ - [x86] kprobes: Convert to insn_decode()
+ - [x86] kprobes: Fix optprobe optimization check with CONFIG_RETHUNK
+ - ext4: goto right label 'failed_mount3a'
+ - ext4: correct inconsistent error msg in nojournal mode
+ - mm/highmem: Lift memcpy_[to|from]_page to core
+ - ext4: use memcpy_to_page() in pagecache_write()
+ - fs: ext4: initialize fsdata in pagecache_write()
+ - ext4: move functions in super.c
+ - ext4: simplify ext4 error translation
+ - ext4: fix various seppling typos
+ - ext4: fix leaking uninitialized memory in fast-commit journal
+ - ext4: use kmemdup() to replace kmalloc + memcpy
+ - mbcache: don't reclaim used entries
+ - mbcache: add functions to delete entry if unused
+ - ext4: remove EA inode entry from mbcache on inode eviction
+ - ext4: unindent codeblock in ext4_xattr_block_set()
+ - ext4: fix race when reusing xattr blocks
+ - mbcache: automatically delete entries from cache on freeing
+ - ext4: fix deadlock due to mbcache entry corruption
+ - SUNRPC: ensure the matching upcall is in-flight upon downcall
+ - bpf: pull before calling skb_postpull_rcsum()
+ - [arm64,armhf] drm/panfrost: Fix GEM handle creation ref-counting
+ - [x86] vmxnet3: correctly report csum_level for encapsulated packet
+ - veth: Fix race with AF_XDP exposing old or uninitialized descriptors
+ - nfsd: shut down the NFSv4 state objects before the filecache
+ - [arm64] net: hns3: add interrupts re-initialization while doing VF FLR
+ - net: sched: fix memory leak in tcindex_set_parms
+ - qlcnic: prevent ->dcb use-after-free on qlcnic_dcb_enable() failure
+ - nfc: Fix potential resource leaks
+ - vhost/vsock: Fix error handling in vhost_vsock_init()
+ - vhost: fix range used in translate_desc()
+ - net/mlx5: Add forgotten cleanup calls into mlx5_init_once() error path
+ - net/mlx5: Avoid recovery in probe flows
+ - net/mlx5e: IPoIB, Don't allow CQE compression to be turned on by default
+ - net/mlx5e: Fix hw mtu initializing at XDP SQ allocation
+ - [amd64,arm64] net: amd-xgbe: add missed tasklet_kill
+ - RDMA/mlx5: Fix validation of max_rd_atomic caps for DC
+ - [arm64] drm/meson: Reduce the FIFO lines held when AFBC is not used
+ - filelock: new helper: vfs_inode_has_locks
+ - ceph: switch to vfs_inode_has_locks() to fix file lock bug
+ - netfilter: ipset: fix hash:net,port,net hang with /0 subnet
+ - netfilter: ipset: Rework long task execution when adding/deleting entries
+ - perf tools: Fix resources leak in perf_data__open_dir()
+ - drivers/net/bonding/bond_3ad: return when there's no aggregator
+ - usb: rndis_host: Secure rndis_query check against int overflow
+ - [x86] drm/i915: unpin on error in intel_vgpu_shadow_mm_pin()
+ - udf: Fix extension of the last extent in the file
+ - [x86] ASoC: Intel: bytcr_rt5640: Add quirk for the Advantech MICA-071
+ tablet
+ - nvme: fix multipath crash caused by flush request when blktrace is enabled
+ - [x86] bugs: Flush IBP in ib_prctl_set() (CVE-2023-0045)
+ - nfsd: fix handling of readdir in v4root vs. mount upcall timeout
+ - fbdev: matroxfb: G200eW: Increase max memory from 1 MB to 16 MB
+ - [x86] drm/i915/gvt: fix gvt debugfs destroy
+ - [x86] drm/i915/gvt: fix vgpu debugfs clean in remove
+ - ext4: don't allow journal inode to have encrypt flag
+ - hfs/hfsplus: use WARN_ON for sanity check
+ - hfs/hfsplus: avoid WARN_ON() for sanity check, use proper error handling
+ - mbcache: Avoid nesting of cache->c_list_lock under bit locks
+ - efi: random: combine bootloader provided RNG seed with RNG protocol output
+ - io_uring: Fix unsigned 'res' comparison with zero in io_fixup_rw_res()
+ - ext4: disable fast-commit of encrypted dir operations
+ - ext4: don't set up encryption key during jbd2 transaction
+ - [arm64] fsl_lpuart: Don't enable interrupts too early
+ - serial: fixup backport of "serial: Deassert Transmit Enable on probe in
+ driver-specific way"
+ - net/ulp: prevent ULP without clone op from entering the LISTEN status
+ (CVE-2023-0461)
+ - ALSA: hda/hdmi: Add a HP device 0x8715 to force connect list
+ - ALSA: hda - Enable headset mic on another Dell laptop with ALC3254
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.164
+ - ALSA: hda/realtek: Enable mute/micmute LEDs on HP Spectre x360 13-aw0xxx
+ - [arm64] KVM: arm64: Fix S1PTW handling on RO memslots
+ - efi: tpm: Avoid READ_ONCE() for accessing the event log
+ - docs: Fix the docs build with Sphinx 6.0
+ - perf auxtrace: Fix address filter duplicate symbol selection
+ - [arm64] ASoC: qcom: lpass-cpu: Fix fallback SD line index handling
+ - [s390x] cpum_sf: add READ_ONCE() semantics to compare and swap loops
+ - [s390x] percpu: add READ_ONCE() to arch_this_cpu_to_op_simple()
+ - cifs: Fix uninitialized memory read for smb311 posix symlink create
+ - [arm64] drm/msm/dp: do not complete dp_aux_cmd_fifo_tx() if irq is not for
+ aux transfer
+ - [x86] platform/x86: sony-laptop: Don't turn off 0x153 keyboard backlight
+ during probe
+ - ixgbe: fix pci device refcount leak
+ - bus: mhi: host: Fix race between channel preparation and M0 event
+ - [amd64] iommu/amd: Add PCI segment support for ivrs_[ioapic/hpet/acpihid]
+ commands
+ - [amd64] iommu/amd: Fix ill-formed ivrs_ioapic, ivrs_hpet and ivrs_acpihid
+ options
+ - [arm64] clk: imx8mp: Add DISP2 pixel clock
+ - [arm64] clk: imx8mp: add clkout1/2 support
+ - dt-bindings: clocks: imx8mp: Add ID for usb suspend clock
+ - [arm64] clk: imx: imx8mp: add shared clk gate for usb suspend clk
+ - xhci: Avoid parsing transfer events several times
+ - xhci: get isochronous ring directly from endpoint structure
+ - xhci: adjust parameters passed to cleanup_halted_endpoint()
+ - xhci: Add xhci_reset_halted_ep() helper function
+ - xhci: move xhci_td_cleanup so it can be called by more functions
+ - xhci: store TD status in the td struct instead of passing it along
+ - xhci: move and rename xhci_cleanup_halted_endpoint()
+ - xhci: Prevent infinite loop in transaction errors recovery for streams
+ - [arm64,armhf] usb: ulpi: defer ulpi_register on ulpi_read_id timeout
+ - ext4: fix uninititialized value in 'ext4_evict_inode'
+ - xfrm: fix rcu lock in xfrm_notify_userpolicy()
+ - netfilter: ipset: Fix overflow before widen in the bitmap_ip_create()
+ function.
+ - [powerpc*] imc-pmu: Fix use of mutex in IRQs disabled section
+ - [x86] boot: Avoid using Intel mnemonics in AT&T syntax asm
+ - EDAC/device: Fix period calculation in edac_device_reset_delay_period()
+ - [arm64] ASoC: wm8904: fix wrong outputs volume after power reactivation
+ - tipc: fix unexpected link reset due to discovery messages
+ - hvc/xen: lock console list traversal
+ - nfc: pn533: Wait for out_urb's completion in pn533_usb_send_frame()
+ - net/sched: act_mpls: Fix warning during failed attribute validation
+ - net/mlx5: Fix ptp max frequency adjustment range
+ - net/mlx5e: Don't support encap rules with gbp option
+ - mm: Always release pages to the buddy allocator in memblock_free_late().
+ - Documentation: KVM: add API issues section
+ - [x86] KVM: x86: Do not return host topology information from
+ KVM_GET_SUPPORTED_CPUID
+ - [x86] resctrl: Use task_curr() instead of task_struct->on_cpu to prevent
+ unnecessary IPI
+ - [x86] resctrl: Fix task CLOSID/RMID update race
+ - [arm64] atomics: remove LL/SC trampolines
+ - [arm64] cmpxchg_double*: hazard against entire exchange variable
+ - efi: fix NULL-deref in init error path
+ - drm/virtio: Fix GEM handle creation UAF
+ - io_uring/io-wq: free worker if task_work creation is canceled
+ - io_uring/io-wq: only free worker if it was allocated for creation
+ - Revert "usb: ulpi: defer ulpi_register on ulpi_read_id timeout"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.165
+ - btrfs: fix trace event name typo for FLUSH_DELAYED_REFS
+ - pNFS/filelayout: Fix coalescing test for single DS
+ - net/ethtool/ioctl: return -EOPNOTSUPP if we have no phy stats
+ - btrfs: always report error in run_one_delayed_ref()
+ - [x86] asm: Fix an assembler warning with current binutils
+ - f2fs: let's avoid panic if extent_tree is not created
+ - wifi: brcmfmac: fix regression for Broadcom PCIe wifi devices
+ - wifi: mac80211: sdata can be NULL during AMPDU start
+ - zonefs: Detect append writes at invalid locations
+ - nilfs2: fix general protection fault in nilfs_btree_insert()
+ - efi: fix userspace infinite retry read efivars after EFI runtime services
+ page fault
+ - ALSA: hda/realtek - Turn on power early
+ - [x86] drm/i915/gt: Reset twice
+ - Bluetooth: hci_qca: Wait for timeout during suspend
+ - Bluetooth: hci_qca: Fix driver shutdown on closed serdev
+ - io_uring: don't gate task_work run on TIF_NOTIFY_SIGNAL
+ - io_uring: improve send/recv error handling
+ - io_uring: ensure recv and recvmsg handle MSG_WAITALL correctly
+ - io_uring: add flag for disabling provided buffer recycling
+ - io_uring: support MSG_WAITALL for IORING_OP_SEND(MSG)
+ - io_uring: allow re-poll if we made progress
+ - io_uring: fix async accept on O_NONBLOCK sockets
+ - io_uring: check for valid register opcode earlier
+ - io_uring: lock overflowing for IOPOLL
+ - io_uring: fix CQ waiting timeout handling
+ - io_uring: ensure that cached task references are always put on exit
+ - io_uring: remove duplicated calls to io_kiocb_ppos
+ - io_uring: update kiocb->ki_pos at execution time
+ - io_uring: do not recalculate ppos unnecessarily
+ - io_uring/rw: defer fsnotify calls to task context
+ - xhci-pci: set the dma max_seg_size
+ - usb: xhci: Check endpoint is valid before dereferencing it
+ - xhci: Fix null pointer dereference when host dies
+ - xhci: Add update_hub_device override for PCI xHCI hosts
+ - xhci: Add a flag to disable USB3 lpm on a xhci root port level.
+ - usb: acpi: add helper to check port lpm capability using acpi _DSM
+ - xhci: Detect lpm incapable xHC USB3 roothub ports from ACPI tables
+ - prlimit: do_prlimit needs to have a speculation check (CVE-2023-0458)
+ - USB: serial: option: add Quectel EM05-G (GR) modem
+ - USB: serial: option: add Quectel EM05-G (CS) modem
+ - USB: serial: option: add Quectel EM05-G (RS) modem
+ - USB: serial: option: add Quectel EC200U modem
+ - USB: serial: option: add Quectel EM05CN (SG) modem
+ - USB: serial: option: add Quectel EM05CN modem
+ - USB: misc: iowarrior: fix up header size for
+ USB_DEVICE_ID_CODEMERCS_IOW100
+ - usb: core: hub: disable autosuspend for TI TUSB8041
+ - [x86] comedi: adv_pci1760: Fix PWM instruction handling
+ - [arm64,armhf] mmc: sunxi-mmc: Fix clock refcount imbalance during unbind
+ - [arm64,armhf] mmc: sdhci-esdhc-imx: correct the tuning start tap and step
+ setting
+ - btrfs: fix race between quota rescan and disable leading to NULL pointer
+ deref
+ - cifs: do not include page data when checking signature
+ - [x86] thunderbolt: Use correct function to calculate maximum USB3 link
+ rate
+ - USB: gadgetfs: Fix race between mounting and unmounting
+ - USB: serial: cp210x: add SCALANCE LPE-9000 device id
+ - usb: typec: altmodes/displayport: Add pin assignment helper
+ - usb: typec: altmodes/displayport: Fix pin assignment calculation
+ - usb: gadget: f_ncm: fix potential NULL ptr deref in ncm_bitrate()
+ - usb-storage: apply IGNORE_UAS only for HIKSEMI MD202 on RTL9210
+ - [i386] serial: pch_uart: Pass correct sg to dma_unmap_sg()
+ - [arm64] dmaengine: tegra210-adma: fix global intr clear
+ - [x86] mei: me: add meteor lake point M DID
+ - [x86] drm/i915: re-disable RC6p on Sandy Bridge
+ - drm/amd/display: Fix set scaling doesn's work
+ - drm/amd/display: Calculate output_color_space after pixel encoding
+ adjustment
+ - drm/amd/display: Fix COLOR_SPACE_YCBCR2020_TYPE matrix
+ - [arm64] efi: Execute runtime services from a dedicated stack
+ - [arm64] efi: rt-wrapper: Add missing include
+ - Revert "drm/amdgpu: make display pinning more flexible (v2)"
+ - [x86] fpu: Use _Alignof to avoid undefined behavior in TYPE_ALIGN
+ - tracing: Use alignof__(struct {type b;}) instead of offsetof()
+ - io_uring: io_kiocb_update_pos() should not touch file for non -1 offset
+ - io_uring/net: fix fast_iov assignment in io_setup_async_msg()
+ - net/ulp: use consistent error code when blocking ULP
+ - net/mlx5: fix missing mutex_unlock in mlx5_fw_fatal_reporter_err_work()
+ - Revert "wifi: mac80211: fix memory leak in ieee80211_if_add()"
+ - Bluetooth: hci_qca: Wait for SSR completion during suspend
+ - Bluetooth: hci_qca: check for SSR triggered flag while suspend
+ - Bluetooth: hci_qca: Fixed issue during suspend
+ - mm/khugepaged: fix collapse_pte_mapped_thp() to allow anon_vma
+ - io_uring: Clean up a false-positive warning from GCC 9.3.0
+ - io_uring: fix double poll leak on repolling
+ - io_uring/rw: ensure kiocb_end_write() is always called
+ - io_uring/rw: remove leftover debug statement
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.166
+ - clk: generalize devm_clk_get() a bit
+ - clk: Provide new devm_clk helpers for prepared and enabled clocks
+ - [armel,armhf] memory: mvebu-devbus: Fix missing clk_disable_unprepare in
+ mvebu_devbus_probe()
+ - [armhf] dts: imx6ul-pico-dwarf: Use 'clock-frequency'
+ - [armhf] imx: add missing of_node_put()
+ - [amd64] HID: intel_ish-hid: Add check for ishtp_dma_tx_map
+ - tomoyo: fix broken dependency on *.conf.default
+ - RDMA/core: Fix ib block iterator counter overflow
+ - [amd64] IB/hfi1: Reject a zero-length user expected buffer
+ - [amd64] IB/hfi1: Reserve user expected TIDs
+ - [amd64] IB/hfi1: Fix expected receive setup error exit issues
+ - [amd64] IB/hfi1: Immediately remove invalid memory from hardware
+ - [amd64] IB/hfi1: Remove user expected buffer invalidate race
+ - affs: initialize fsdata in affs_truncate()
+ - [amd64,arm64] amd-xgbe: TX Flow Ctrl Registers are h/w ver dependent
+ - [amd64,arm64] amd-xgbe: Delay AN timeout during KR training
+ - bpf: Fix pointer-leak due to insufficient speculative store bypass
+ mitigation
+ - [arm64] phy: rockchip-inno-usb2: Fix missing clk_disable_unprepare() in
+ rockchip_usb2phy_power_on()
+ - net: nfc: Fix use-after-free in local_cleanup()
+ - [arm64,armhf] gpio: mxc: Always set GPIOs used as interrupt source to
+ INPUT mode
+ - wifi: rndis_wlan: Prevent buffer overflow in rndis_query_oid
+ (CVE-2023-23559)
+ - net/sched: sch_taprio: fix possible use-after-free
+ - l2tp: Serialize access to sk_user_data with sk_callback_lock
+ (CVE-2022-4129)
+ - l2tp: Don't sleep and disable BH under writer-side sk_callback_lock
+ (CVE-2022-4129)
+ - l2tp: convert l2tp_tunnel_list to idr
+ - l2tp: close all race conditions in l2tp_tunnel_register()
+ - net: usb: sr9700: Handle negative len
+ - net: mdio: validate parameter addr in mdiobus_get_phy()
+ - HID: check empty report_list in hid_validate_values() (CVE-2023-1073)
+ - HID: check empty report_list in bigben_probe()
+ - net: stmmac: fix invalid call to mdiobus_get_phy()
+ - HID: revert CHERRY_MOUSE_000C quirk
+ - usb: gadget: f_fs: Prevent race during ffs_ep0_queue_wait
+ - usb: gadget: f_fs: Ensure ep0req is dequeued before free_request
+ - net: mlx5: eliminate anonymous module_init & module_exit
+ - dmaengine: Fix double increment of client_count in dma_chan_get()
+ - [arm64] net: macb: fix PTP TX timestamp failure due to packet padding
+ - l2tp: prevent lockdep issue in l2tp_tunnel_register()
+ - HID: betop: check shape of output reports
+ - nvme-pci: fix timeout request state check
+ - tcp: avoid the lookup process failing to get sk in ehash table
+ - w1: fix deadloop in __w1_remove_master_device()
+ - w1: fix WARNING after calling w1_process()
+ - driver core: Fix test_async_probe_init saves device in wrong array
+ - tcp: fix rate_app_limited to default to 1
+ - scsi: iscsi: Fix multiple iSCSI session unbind events sent to userspace
+ - [arm64,armhf] cpufreq: Add Tegra234 to cpufreq-dt-platdev blocklist
+ - drm: Add orientation quirk for Lenovo ideapad D330-10IGL
+ - [arm64] cpufreq: armada-37xx: stop using 0 as NULL pointer
+ - [armhf] ASoC: fsl_ssi: Rename AC'97 streams to avoid collisions with AC'97
+ CODEC
+ - spi: spidev: remove debug messages that access spidev->spi without locking
+ - [s390x] KVM: s390: interrupt: use READ_ONCE() before cmpxchg()
+ - [arm64] scsi: hisi_sas: Set a port invalid only if there are no devices
+ attached when refreshing port id
+ - [x86] platform/x86: touchscreen_dmi: Add info for the CSL Panther Tab HD
+ - [x86] platform/x86: asus-nb-wmi: Add alternate mapping for KEY_SCREENLOCK
+ - lockref: stop doing cpu_relax in the cmpxchg loop
+ - netfilter: conntrack: do not renew entry stuck in tcp SYN_SENT state
+ - [x86] ACPI: cstate: Optimize C3 entry on AMD CPUs
+ - fs: reiserfs: remove useless new_opts in reiserfs_remount
+ - sysctl: add a new register_sysctl_init() interface
+ - kernel/panic: move panic sysctls to its own file
+ - panic: unset panic_on_warn inside panic()
+ - exit: Add and use make_task_dead.
+ - objtool: Add a missing comma to avoid string concatenation
+ - panic: Separate sysctl logic from CONFIG_SMP
+ - exit: Put an upper limit on how often we can oops
+ - exit: Expose "oops_count" to sysfs
+ - exit: Allow oops_limit to be disabled
+ - panic: Consolidate open-coded panic_on_warn checks
+ - panic: Introduce warn_limit
+ - panic: Expose "warn_count" to sysfs
+ - docs: Fix path paste-o for /sys/kernel/warn_count
+ - exit: Use READ_ONCE() for all oops/warn limit reads
+ - Bluetooth: hci_sync: cancel cmd_timer if hci_open failed
+ - xhci: Set HCD flag to defer primary roothub registration
+ - scsi: hpsa: Fix allocation size for scsi_host_alloc()
+ - module: Don't wait for GOING modules
+ - tracing: Make sure trace_printk() can output as soon as it can be used
+ - trace_events_hist: add check for return value of 'create_hist_field'
+ - ftrace/scripts: Update the instructions for ftrace-bisect.sh
+ - cifs: Fix oops due to uncleared server->smbd_conn in reconnect
+ - [x86] KVM: x86/vmx: Do not skip segment attributes if unusable bit is set
+ - [x86] thermal: intel: int340x: Protect trip temperature from concurrent
+ updates
+ - EDAC/device: Respect any driver-supplied workqueue polling value
+ - units: Add Watt units
+ - units: Add SI metric prefix definitions
+ - i2c: designware: Use DIV_ROUND_CLOSEST() macro
+ - i2c: designware: use casting of u64 in clock multiplication to avoid
+ overflow
+ - netlink: prevent potential spectre v1 gadgets
+ - net: fix UaF in netns ops registration error path
+ - netfilter: nft_set_rbtree: Switch to node list walk for overlap detection
+ - netfilter: nft_set_rbtree: skip elements in transaction from garbage
+ collection
+ - netlink: annotate data races around nlk->portid
+ - netlink: annotate data races around dst_portid and dst_group
+ - netlink: annotate data races around sk_state
+ - ipv4: prevent potential spectre v1 gadget in ip_metrics_convert()
+ - ipv4: prevent potential spectre v1 gadget in fib_metrics_match()
+ - netfilter: conntrack: fix vtag checks for ABORT/SHUTDOWN_COMPLETE
+ - netrom: Fix use-after-free of a listening socket.
+ - net/sched: sch_taprio: do not schedule in taprio_reset()
+ - sctp: fail if no bound addresses can be used for a given scope
+ (CVE-2023-1074)
+ - [x86] thermal: intel: int340x: Add locking to
+ int340x_thermal_get_trip_type()
+ - net/tg3: resolve deadlock in tg3_reset_task() during EEH
+ - [arm64,armhf] net: mdio-mux-meson-g12a: force internal PHY off on mux
+ switch
+ - Revert "Input: synaptics - switch touchpad on HP Laptop 15-da3001TU to RMI
+ mode"
+ - nouveau: explicitly wait on the fence in nouveau_bo_move_m2mf
+ (Closes: #989705)
+ - nfsd: Ensure knfsd shuts down when the "nfsd" pseudofs is unmounted
+ - block: fix and cleanup bio_check_ro
+ - [x86] i8259: Mark legacy PIC interrupts with IRQ_LEVEL
+ - netfilter: conntrack: unify established states for SCTP paths
+ - [x86] perf/x86/amd: fix potential integer overflow on shift of a int
+ - clk: Fix pointer casting to prevent oops in devm_clk_release()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.167
+ - [armhf] dts: imx: Fix pca9547 i2c-mux node name
+ - [arm64] dts: imx8mq-thor96: fix no-mmc property for SDHCI
+ - bpf: Skip task with pid=1 in send_signal_common()
+ - blk-cgroup: fix missing pd_online_fn() while activating policy
+ - [armhf] dmaengine: imx-sdma: Fix a possible memory leak in
+ sdma_transfer_init
+ - ACPI: processor idle: Practically limit "Dummy wait" workaround to old
+ Intel systems
+ - Bluetooth: fix null ptr deref on hci_sync_conn_complete_evt
+ - net: fix NULL pointer in skb_segment_list
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.168
+ - firewire: fix memory leak for payload of request subaction to IEC 61883-1
+ FCP region
+ - [arm64,armhf] bus: sunxi-rsb: Fix error handling in sunxi_rsb_init()
+ - bpf: Fix incorrect state pruning for <8B spill/fill
+ - [powerpc*] imc-pmu: Revert nest_init_lock to being a mutex
+ - bpf: Fix a possible task gone issue with bpf_send_signal[_thread]()
+ helpers
+ - ALSA: hda/via: Avoid potential array out-of-bound in add_secret_dac_path()
+ - bpf: Support <8-byte scalar spill and refill
+ - bpf: Fix to preserve reg parent/live fields when copying range info
+ - bpf, sockmap: Check for any of tcp_bpf_prots when cloning a listener
+ - [arm*] drm/vc4: hdmi: make CEC adapter name unique
+ - scsi: Revert "scsi: core: map PQ=1, PDT=other values to
+ SCSI_SCAN_TARGET_PRESENT"
+ - vhost/net: Clear the pending messages when the backend is removed
+ - [armhf] WRITE is "data source", not destination...
+ - fix iov_iter_bvec() "direction" argument
+ - fix "direction" argument of iov_iter_kvec()
+ - virtio-net: execute xdp_do_flush() before napi_complete_done()
+ - sfc: correctly advertise tunneled IPv6 segmentation
+ - net: phy: dp83822: Fix null pointer access on DP83825/DP83826 devices
+ - netrom: Fix use-after-free caused by accept on already connected socket
+ - netfilter: br_netfilter: disable sabotage_in hook after first suppression
+ - squashfs: harden sanity check in squashfs_read_xattr_id_table
+ - [arm64] net: phy: meson-gxl: Add generic dummy stubs for MMD register
+ access
+ - igc: return an error if the mac type is unknown in
+ igc_ptp_systim_to_hwtstamp()
+ - can: j1939: fix errant WARN_ON_ONCE in j1939_session_deactivate
+ - ata: libata: Fix sata_down_spd_limit() when no link speed is reported
+ - virtio-net: Keep stop() to follow mirror sequence of open()
+ - net: openvswitch: fix flow memory leak in ovs_flow_cmd_new
+ - efi: fix potential NULL deref in efi_mem_reserve_persistent
+ - qede: add netpoll support for qede driver
+ - qede: execute xdp_do_flush() before napi_complete_done()
+ - scsi: target: core: Fix warning on RT kernels
+ - scsi: iscsi_tcp: Fix UAF during login when accessing the shost ipaddress
+ (CVE-2023-2162)
+ - [arm64,armhf] i2c: rk3x: fix a bunch of kernel-doc warnings
+ - [x86] platform/x86: dell-wmi: Add a keymap for KEY_MUTE in type 0x0010
+ table
+ - [arm64] usb: dwc3: dwc3-qcom: Fix typo in the dwc3 vbus override API
+ - [arm64] usb: dwc3: qcom: enable vbus override when in OTG dr-mode
+ - usb: gadget: f_fs: Fix unbalanced spinlock in __ffs_ep0_queue_wait
+ - vc_screen: move load of struct vc_data pointer in vcs_read() to avoid UAF
+ - Input: i8042 - move __initconst to fix code styling warning
+ - Input: i8042 - merge quirk tables
+ - Input: i8042 - add TUXEDO devices to i8042 quirk tables
+ - Input: i8042 - add Clevo PCX0DX to i8042 quirk table
+ - fbcon: Check font dimension limits
+ - net: qrtr: free memory on error path in radix_tree_insert()
+ - [s390x] watchdog: diag288_wdt: do not use stack buffers for hardware data
+ - [s390x] watchdog: diag288_wdt: fix __diag288() inline assembly
+ - ALSA: hda/realtek: Add Acer Predator PH315-54
+ - efi: Accept version 2 of memory attributes table
+ - iio: hid: fix the retval in accel_3d_capture_sample
+ - iio: imu: fxos8700: fix ACCEL measurement range selection
+ - iio: imu: fxos8700: fix incomplete ACCEL and MAGN channels readback
+ - iio: imu: fxos8700: fix IMU data bits returned to user space
+ - iio: imu: fxos8700: fix map label of channel type to MAGN sensor
+ - iio: imu: fxos8700: fix swapped ACCEL and MAGN channels readback
+ - iio: imu: fxos8700: fix incorrect ODR mode readback
+ - iio: imu: fxos8700: fix failed initialization ODR mode assignment
+ - iio: imu: fxos8700: remove definition FXOS8700_CTRL_ODR_MIN
+ - iio: imu: fxos8700: fix MAGN sensor scale and unit
+ - mm: hugetlb: proc: check for hugetlb shared PMD in /proc/PID/smaps
+ - [x86] debug: Fix stack recursion caused by wrongly ordered DR7 accesses
+ - mm/swapfile: add cond_resched() in get_swap_pages()
+ - Squashfs: fix handling and sanity checking of xattr_ids count
+ - [x86] drm/i915: Fix potential bit_17 double-free
+ - nvmem: core: initialise nvmem->id early
+ - nvmem: core: fix cell removal on error
+ - serial: 8250_dma: Fix DMA Rx completion race
+ - serial: 8250_dma: Fix DMA Rx rearm race
+ - fbdev: smscufx: fix error handling code in ufx_usb_probe
+ - f2fs: fix to do sanity check on i_extra_isize in is_alive()
+ - wifi: brcmfmac: Check the count value of channel spec to prevent
+ out-of-bounds reads
+ - nvmem: core: Fix a conflict between MTD and NVMEM on wp-gpios property
+ - bpf: Do not reject when the stack read size is different from the tracked
+ scalar size
+ - mm/migration: return errno when isolate_huge_page failed
+ - migrate: hugetlb: check for hugetlb shared PMD in node migration
+ - btrfs: limit device extents to the device size
+ - btrfs: zlib: zero-initialize zlib workspace
+ - ALSA: hda/realtek: Add Positivo N14KP6-TG
+ - ALSA: emux: Avoid potential array out-of-bound in snd_emux_xg_control()
+ - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro 360
+ - tracing: Fix poll() and select() do not work on per_cpu trace_pipe and
+ trace_pipe_raw
+ - of/address: Return an error when no valid dma-ranges are found
+ (Closes: #993612)
+ - can: j1939: do not wait 250 ms if the same addr was already claimed
+ - [amd64] IB/hfi1: Restore allocated resources on failed copyout
+ - IB/IPoIB: Fix legacy IPoIB due to wrong number of queues
+ - [amd64] RDMA/usnic: use iommu_map_atomic() under spin_lock()
+ - xfrm: fix bug with DSCP copy to v6 from v4 tunnel
+ - bonding: fix error checking in bond_debug_reregister()
+ - [arm64] net: phy: meson-gxl: use MMD access dummy stubs for GXL, internal
+ PHY
+ - ice: Do not use WQ_MEM_RECLAIM flag for workqueue
+ - [arm64] net: mscc: ocelot: fix VCAP filters not matching on MAC with
+ "protocol 802.1Q"
+ - net/mlx5e: IPoIB, Show unknown speed instead of error
+ - net/mlx5: fw_tracer, Clear load bit when freeing string DBs buffers
+ - net/mlx5: fw_tracer, Zero consumer index when reloading the tracer
+ - rds: rds_rm_zerocopy_callback() use list_first_entry() (CVE-2023-1078)
+ - ALSA: pci: lx6464es: fix a debug loop
+ - [armhf] pinctrl: aspeed: Fix confusing types in return value
+ - [arm64,armhf] pinctrl: single: fix potential NULL dereference
+ - [x86] pinctrl: intel: Restore the pins that used to be in Direct IRQ mode
+ - cifs: Fix use-after-free in rdata->read_into_pages()
+ - net: USB: Fix wrong-direction WARNING in plusb.c
+ - btrfs: free device in btrfs_close_devices for a single device filesystem
+ - usb: core: add quirk for Alcor Link AK9563 smartcard reader
+ - usb: typec: altmodes/displayport: Fix probe pin assign check
+ - ceph: flush cap releases when the session is flushed
+ - Fix page corruption caused by racy check in __free_pages
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.169
+ - [x86] ASoC: Intel: sof_rt5682: always set dpcm_capture for amplifiers
+ - ALSA: hda: Do not unset preset when cleaning up codec
+ - net/rose: Fix to not accept on connected socket
+ - net: stmmac: do not stop RX_CLK in Rx LPI state for qcs404 SoC
+ - net: sched: sch: Bounds check priority
+ - [s390x] decompressor: specify __decompress() buf len to avoid overflow
+ - nvme-fc: fix a missing queue put in nvmet_fc_ls_create_association
+ - nvmem: core: add error handling for dev_set_name
+ - nvmem: core: remove nvmem_config wp_gpio
+ - nvmem: core: fix cleanup after dev_set_name()
+ - nvmem: core: fix registration vs use race
+ - aio: fix mremap after fork null-deref
+ - [s390x] signal: fix endless loop in do_signal (Closes: #1031753)
+ - ovl: remove privs in ovl_copyfile()
+ - ovl: remove privs in ovl_fallocate()
+ - netfilter: nft_tproxy: restrict to prerouting hook
+ - mmc: sdio: fix possible resource leaks in some error paths
+ - [arm64,armhf] mmc: mmc_spi: fix error handling in mmc_spi_probe()
+ - ALSA: hda/conexant: add a new hda codec SN6180
+ - ALSA: hda/realtek - fixed wrong gpio assigned
+ - sched/psi: Fix use-after-free in ep_remove_wait_queue()
+ - hugetlb: check for undefined shift on 32 bit architectures
+ - Revert "mm: Always release pages to the buddy allocator in
+ memblock_free_late()."
+ - net: Fix unwanted sign extension in netdev_stats_to_stats64()
+ - revert "squashfs: harden sanity check in squashfs_read_xattr_id_table"
+ - ixgbe: allow to increase MTU to 3K with XDP enabled
+ - i40e: add double of VLAN header when computing the max MTU
+ - sctp: sctp_sock_filter(): avoid list_entry() on possibly empty list
+ - net/sched: tcindex: update imperfect hash filters respecting rcu
+ (CVE-2023-1281)
+ - dccp/tcp: Avoid negative sk_forward_alloc by ipv6_pinfo.pktoptions.
+ - net/usb: kalmia: Don't pass act_len in usb_bulk_msg error path
+ - net: openvswitch: fix possible memory leak in ovs_meter_cmd_set()
+ - net: stmmac: fix order of dwmac5 FlexPPS parametrization sequence
+ - bnxt_en: Fix mqprio and XDP ring checking logic
+ - net: stmmac: Restrict warning on disabling DMA store and fwd mode
+ - net: mpls: fix stale pointer if allocation fails during device rename
+ (CVE-2023-26545)
+ - ixgbe: add double of VLAN header when computing the max MTU
+ - ipv6: Fix datagram socket connection with DSCP.
+ - ipv6: Fix tcp socket connection with DSCP.
+ - nilfs2: fix underflow in second superblock position calculations
+ - [x86] drm/i915/gen11: Moving WAs to icl_gt_workarounds_init()
+ - [x86] drm/i915/gen11: Wa_1408615072/Wa_1407596294 should be on GT list
+ - flow_offload: fill flags to action structure
+ - net/sched: act_ctinfo: use percpu stats
+ - i40e: Add checking for null for nlmsg_find_attr()
+ - net/sched: tcindex: search key must be 16 bits
+ - [x86] kvm: initialize all of the kvm_debugregs structure before sending it
+ to userspace (CVE-2023-1513)
+ - alarmtimer: Prevent starvation by small intervals and SIG_IGN
+ - [x86] ASoC: SOF: Intel: hda-dai: fix possible stream_tag leak
+ - net: sched: sch: Fix off by one in htb_activate_prios()
+ - nvmem: core: fix return value
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.170
+ - [armhf] drm/etnaviv: don't truncate physical page address
+ - wifi: rtl8xxxu: gen2: Turn on the rate control
+ - powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
+ - random: always mix cycle counter in add_latent_entropy()
+ - [x86] KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
+ - [x86] KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
+ - [x86] KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
+ (CVE-2022-2196)
+ - [x86] drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
+ (CVE-2022-3707)
+ - mac80211: mesh: embedd mesh_paths and mpp_paths into ieee80211_if_mesh
+ - uaccess: Add speculation barrier to copy_from_user() (CVE-2023-0459)
+ - Revert "Revert "block: nbd: add sanity check for first_minor""
+ - nbd: fix max value for 'first_minor'
+ - nbd: fix possible overflow for 'first_minor' in nbd_dev_add()
+ - nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
+ - wifi: mwifiex: Add missing compatible string for SD8787
+ - audit: update the mailing list in MAINTAINERS
+ - ext4: Fix function prototype mismatch for ext4_feat_ktype
+ - Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue
+ pfifo child qdiscs"
+ - bpf: add missing header file include
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.171
+ - Fix XFRM-I support for nested ESP tunnels
+ - [arm64] dts: rockchip: drop unused LED mode property from rk3328-roc-cc
+ - [amd64,arm64] ACPI: NFIT: fix a potential deadlock during NFIT teardown
+ - btrfs: send: limit number of clones and allocated memory size
+ - [amd64] IB/hfi1: Assign npages earlier
+ - neigh: make sure used and confirmed times are valid
+ - HID: core: Fix deadloop in hid_apply_multiplier.
+ - bpf: bpf_fib_lookup should not return neigh in NUD_FAILED state
+ - net: Remove WARN_ON_ONCE(sk->sk_forward_alloc) from
+ sk_stream_kill_queues().
+ - vc_screen: don't clobber return value in vcs_read
+ - md: Flush workqueue md_rdev_misc_wq in md_alloc()
+ - drm/virtio: Fix NULL vs IS_ERR checking in virtio_gpu_object_shmem_init
+ (CVE-2023-22998)
+ - drm/virtio: Correct drm_gem_shmem_get_sg_table() error handling
+ (CVE-2023-22998)
+ - USB: serial: option: add support for VW/Skoda "Carstick LTE"
+ - usb: gadget: u_serial: Add null pointer check in gserial_resume
+ - USB: core: Don't hold device lock while reading the "descriptors" sysfs
+ file
+ - io_uring: add missing lock in io_get_file_fixed (CVE-2023-1872)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.172
+ - io_uring: ensure that io_init_req() passes in the right issue_flags
+ (CVE-2023-1872)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.173
+ - HID: asus: Remove check for same LED brightness on set
+ - HID: asus: use spinlock to protect concurrent accesses
+ - HID: asus: use spinlock to safely schedule workers (CVE-2023-1079)
+ - [powerpc*] mm: Rearrange if-else block to avoid clang warning
+ - [armhf] OMAP2+: Fix memory leak in realtime_counter_init()
+ - [arm64] dts: qcom: sdm845-db845c: fix audio codec interrupt pin name
+ - [armhf] imx: Call ida_simple_remove() for ida_simple_get
+ - [armhf] dts: sun8i: nanopi-duo2: Fix regulator GPIO reference
+ - blk-mq: avoid sleep in blk_mq_alloc_request_hctx
+ - blk-mq: remove stale comment for blk_mq_sched_mark_restart_hctx
+ - blk-mq: correct stale comment of .get_budget
+ - [s390x] dasd: Prepare for additional path event handling
+ - [s390x] dasd: Fix potential memleak in dasd_eckd_init()
+ - sched/deadline,rt: Remove unused parameter from pick_next_[rt|dl]_entity()
+ - sched/rt: pick_next_rt_entity(): check list_entry (CVE-2023-1077)
+ - [x86] perf/zhaoxin: Add stepping check for ZXC
+ - block: bio-integrity: Copy flags when bio_integrity_payload is cloned
+ - wifi: rsi: Fix memory leak in rsi_coex_attach()
+ - wifi: rtlwifi: rtl8821ae: don't call kfree_skb() under spin_lock_irqsave()
+ - wifi: rtlwifi: rtl8188ee: don't call kfree_skb() under spin_lock_irqsave()
+ - wifi: rtlwifi: rtl8723be: don't call kfree_skb() under spin_lock_irqsave()
+ - wifi: iwlegacy: common: don't call dev_kfree_skb() under
+ spin_lock_irqsave()
+ - wifi: libertas: fix memory leak in lbs_init_adapter()
+ - wifi: rtl8xxxu: don't call dev_kfree_skb() under spin_lock_irqsave()
+ - wifi: rtlwifi: Fix global-out-of-bounds bug in
+ _rtl8812ae_phy_set_txpower_limit()
+ - wifi: ipw2x00: don't call dev_kfree_skb() under spin_lock_irqsave()
+ - wifi: ipw2200: fix memory leak in ipw_wdev_init()
+ - wifi: wilc1000: fix potential memory leak in wilc_mac_xmit()
+ - wifi: brcmfmac: fix potential memory leak in brcmf_netdev_start_xmit()
+ - wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid()
+ - wifi: libertas_tf: don't call kfree_skb() under spin_lock_irqsave()
+ - wifi: libertas: if_usb: don't call kfree_skb() under spin_lock_irqsave()
+ - wifi: libertas: main: don't call kfree_skb() under spin_lock_irqsave()
+ - wifi: libertas: cmdresp: don't call kfree_skb() under spin_lock_irqsave()
+ - wifi: wl3501_cs: don't call kfree_skb() under spin_lock_irqsave()
+ - [amd64] crypto: x86/ghash - fix unaligned access in ghash_setkey()
+ - ACPICA: Drop port I/O validation for some regions
+ - genirq: Fix the return type of kstat_cpu_irqs_sum()
+ - rcu-tasks: Improve comments explaining tasks_rcu_exit_srcu purpose
+ - rcu-tasks: Remove preemption disablement around srcu_read_[un]lock() calls
+ - rcu-tasks: Fix synchronize_rcu_tasks() VS zap_pid_ns_processes()
+ - lib/mpi: Fix buffer overrun when SG is too long
+ - [amd64] crypto: ccp: Use the stack for small SEV command buffers
+ - [amd64] crypto: ccp: Use the stack and common buffer for status commands
+ - [amd64] crypto: ccp - Use kzalloc for sev ioctl interfaces to prevent
+ kernel memory leak
+ - [amd64] crypto: ccp - Avoid page allocation failure warning for
+ SEV_GET_ID2
+ - ACPICA: nsrepair: handle cases without a return value correctly
+ - [arm64] thermal/drivers/tsens: Drop msm8976-specific defines
+ - [arm64] thermal/drivers/qcom/tsens_v1: Enable sensor 3 on MSM8976
+ - [arm64] thermal/drivers/tsens: Add compat string for the qcom,msm8960
+ - [arm64] thermal/drivers/tsens: Sort out msm8976 vs msm8956 data
+ - wifi: rtl8xxxu: Fix memory leaks with RTL8723BU, RTL8192EU
+ - wifi: orinoco: check return value of hermes_write_wordrec()
+ - wifi: ath9k: htc_hst: free skb in ath9k_htc_rx_msg() if there is no
+ callback function
+ - ath9k: hif_usb: simplify if-if to if-else
+ - ath9k: htc: clean up statistics macros
+ - wifi: ath9k: hif_usb: clean up skbs if ath9k_hif_usb_rx_stream() fails
+ - wifi: ath9k: Fix potential stack-out-of-bounds write in
+ ath9k_wmi_rsp_callback()
+ - wifi: ath11k: Fix memory leak in ath11k_peer_rx_frag_setup
+ - wifi: cfg80211: Fix extended KCK key length check in
+ nl80211_set_rekey_data()
+ - ACPI: battery: Fix missing NUL-termination with large strings
+ - [amd64] crypto: ccp - Failure on re-initialization due to duplicate sysfs
+ filename
+ - crypto: essiv - Handle EBUSY correctly
+ - crypto: seqiv - Handle EBUSY correctly
+ - [x86] powercap: fix possible name leak in powercap_register_zone()
+ - [x86] cpu: Init AP exception handling from cpu_init_secondary()
+ - [x86] microcode: Replace deprecated CPU-hotplug functions.
+ - [x86] Mark stop_this_cpu() __noreturn
+ - [x86] microcode: Rip out the OLD_INTERFACE
+ - [x86] microcode: Default-disable late loading
+ - [x86] microcode: Print previous version of microcode after reload
+ - [x86] microcode: Add a parameter to microcode_check() to store CPU
+ capabilities
+ - [x86] microcode: Check CPU capabilities after late microcode update
+ correctly
+ - [x86] microcode: Adjust late loading result reporting message
+ - crypto: xts - Handle EBUSY correctly
+ - leds: led-class: Add missing put_device() to led_put()
+ - [amd64] crypto: ccp - Refactor out sev_fw_alloc()
+ - [amd64] crypto: ccp - Flush the SEV-ES TMR memory before giving it to
+ firmware
+ - net/mlx5: Enhance debug print in page allocation failure
+ - irqchip: Fix refcount leak in platform_irqchip_probe
+ - irqchip/alpine-msi: Fix refcount leak in alpine_msix_init_domains
+ - irqchip/irq-mvebu-gicp: Fix refcount leak in mvebu_gicp_probe
+ - irqchip/ti-sci: Fix refcount leak in ti_sci_intr_irq_domain_probe
+ - [s390x] vmem: fix empty page tables cleanup under KASAN
+ - net: add sock_init_data_uid()
+ - tun: tun_chr_open(): correctly initialize socket uid (CVE-2023-1076)
+ - tap: tap_open(): correctly initialize socket uid (CVE-2023-1076)
+ - OPP: fix error checking in opp_migrate_dentry()
+ - Bluetooth: L2CAP: Fix potential user-after-free
+ - rds: rds_rm_zerocopy_callback() correct order for list_add_tail()
+ - crypto: rsa-pkcs1pad - Use akcipher_request_complete
+ - wifi: iwl3945: Add missing check for create_singlethread_workqueue
+ - wifi: iwl4965: Add missing check for create_singlethread_workqueue()
+ - wifi: mwifiex: fix loop iterator in mwifiex_update_ampdu_txwinsize()
+ - wifi: mac80211: make rate u32 in sta_set_rate_info_rx()
+ - [arm64] thermal/drivers/hisi: Drop second sensor hi3660
+ - can: esd_usb: Move mislocated storage of SJA1000_ECC_SEG bits in case of a
+ bus error
+ - bpf: Fix global subprog context argument resolution logic
+ - l2tp: Avoid possible recursive deadlock in l2tp_tunnel_register()
+ - [arm64] net: bcmgenet: fix MoCA LED control
+ - drm: Fix potential null-ptr-deref due to drmm_mode_config_init()
+ - drm/fourcc: Add missing big-endian XRGB1555 and RGB565 formats
+ - [arm*] drm/vc4: dpi: Add option for inverting pixel clock and output
+ enable
+ - [arm*] drm/vc4: dpi: Fix format mapping for RGB565
+ - [armhf] gpu: ipu-v3: common: Add of_node_put() for reference returned by
+ of_graph_get_port_by_id()
+ - [arm64] drm/msm/hdmi: Add missing check for alloc_ordered_workqueue
+ - [armhf] pinctrl: stm32: Fix refcount leak in stm32_pctrl_get_irq_domain
+ - [arm64,armhf] pinctrl: rockchip: add support for rk3568
+ - [arm64,armhf] pinctrl: rockchip: do coding style for mux route struct
+ - [arm64,armhf] pinctrl: rockchip: Fix refcount leak in
+ rockchip_pinctrl_parse_groups
+ - [arm*] drm/vc4: hvs: Set AXI panic modes
+ - [arm*] drm/vc4: hvs: Fix colour order for xRGB1555 on HVS5
+ - [arm*] drm/vc4: hdmi: Correct interlaced timings again
+ - [arm64] ASoC: fsl_sai: initialize is_dsp_mode flag
+ - [arm64] drm/msm/adreno: Fix null ptr access in adreno_gpu_cleanup()
+ - ALSA: hda/ca0132: minor fix for allocation size
+ - [arm64] drm/msm/dpu: Disallow unallocated resources to be returned
+ - drm/mipi-dsi: Fix byte order of 16-bit DCS set/get brightness
+ - [arm64] drm/msm: use strscpy instead of strncpy
+ - [arm64] drm/msm/dpu: Add check for cstate
+ - [arm64] drm/msm/dpu: Add check for pstates
+ - [arm64] drm/msm/mdp5: Add check for kzalloc
+ - [arm*] pinctrl: bcm2835: Remove of_node_put() in
+ bcm2835_of_gpio_ranges_fallback()
+ - [x86] ASoC: soc-compress.c: fixup private_data on snd_soc_new_compress()
+ - drm/amdgpu: fix enum odm_combine_mode mismatch
+ - scsi: mpt3sas: Fix a memory leak
+ - scsi: aic94xx: Add missing check for dma_map_single()
+ - dm: remove flush_scheduled_work() during local_exit()
+ - NFS: Fix up handling of outstanding layoutcommit in nfs_update_inode()
+ - NFSv4: keep state manager thread active if swap is enabled
+ - nfs4trace: fix state manager flag printing
+ - NFS: fix disabling of swap
+ - HID: bigben: use spinlock to protect concurrent accesses
+ - HID: bigben_worker() remove unneeded check on report_field
+ - HID: bigben: use spinlock to safely schedule workers (CVE-2023-25012)
+ - hid: bigben_probe(): validate report count
+ - nfsd: fix race to check ls_layouts
+ - cifs: Fix lost destroy smbd connection when MR allocate failed
+ - cifs: Fix warning and UAF when destroy the MR list
+ - gfs2: jdata writepage fix
+ - leds: led-core: Fix refcount leak in of_led_get()
+ - [armhf] mtd: rawnand: sunxi: Fix the size of the last OOB region
+ - [arm64,armhf] clk: imx: avoid memory leak
+ - Input: ads7846 - don't report pressure for ads7845
+ - Input: ads7846 - convert to full duplex
+ - Input: ads7846 - convert to one message
+ - Input: ads7846 - always set last command to PWRDOWN
+ - Input: ads7846 - don't check penirq immediately for 7845
+ - [powerpc*] powernv/ioda: Skip unallocated resources when mapping to PE
+ - clk: Honor CLK_OPS_PARENT_ENABLE in clk_core_is_enabled()
+ - [powerpc*] perf/hv-24x7: add missing RTAS retry status handling
+ - [powerpc*] pseries/lpar: add missing RTAS retry status handling
+ - [powerpc*] pseries/lparcfg: add missing RTAS retry status handling
+ - [powerpc*] rtas: make all exports GPL
+ - [powerpc*] rtas: ensure 4KB alignment for rtas_data_buf
+ - [powerpc*] eeh: Small refactor of eeh_handle_normal_event()
+ - [powerpc*] eeh: Set channel state after notifying the drivers
+ - [armhf] media: platform: ti: Add missing check for devm_regulator_get
+ - media: rc: Fix use-after-free bugs caused by ene_tx_irqsim()
+ (CVE-2023-1118)
+ - media: usb: siano: Fix use after free bugs caused by do_submit_urb
+ - media: saa7134: Use video_unregister_device for radio_dev
+ - [arm64] rpmsg: glink: Avoid infinite loop on intent for missing channel
+ - udf: Define EFSCORRUPTED error code
+ - blk-iocost: fix divide by 0 error in calc_lcoefs()
+ - wifi: ath9k: Fix use-after-free in ath9k_hif_usb_disconnect()
+ - wifi: brcmfmac: Fix potential stack-out-of-bounds in
+ brcmf_c_preinit_dcmds()
+ - rcu: Make RCU_LOCKDEP_WARN() avoid early lockdep checks
+ - rcu: Suppress smp_processor_id() complaint in
+ synchronize_rcu_expedited_wait()
+ - rcu-tasks: Make rude RCU-Tasks work well with CPU hotplug
+ - wifi: ath11k: debugfs: fix to work with multiple PCI devices
+ - [x86] thermal: intel: Fix unsigned comparison with less than zero
+ - timers: Prevent union confusion from unexpected restart_syscall()
+ - [x86] bugs: Reset speculation control settings on init
+ - wifi: brcmfmac: ensure CLM version is null-terminated to prevent
+ stack-out-of-bounds
+ - wifi: mt7601u: fix an integer underflow
+ - inet: fix fast path in __inet_hash_connect()
+ - ice: add missing checks for PF vsi type
+ - ACPI: Don't build ACPICA with '-Os'
+ - clocksource: Suspend the watchdog temporarily when high read latency
+ detected
+ - net: bcmgenet: Add a check for oversized packets
+ - wifi: mt76: dma: free rx_head in mt76_dma_rx_cleanup
+ - ACPI: video: Fix Lenovo Ideapad Z570 DMI match
+ - net/mlx5: fw_tracer: Fix debug print
+ - coda: Avoid partial allocation of sig_inputArgs
+ - uaccess: Add minimum bounds check on kernel buffer size
+ - PM: EM: fix memory leak with using debugfs_lookup()
+ - Bluetooth: btusb: Add VID:PID 13d3:3529 for Realtek RTL8821CE
+ - drm/amd/display: Fix potential null-deref in dm_resume
+ - [armhf] drm/omap: dsi: Fix excessive stack usage
+ - HID: Add Mapping for System Microphone Mute
+ - drm/radeon: free iio for atombios when driver shutdown
+ - drm: amd: display: Fix memory leakage
+ - [arm64] drm/msm/dsi: Add missing check for alloc_ordered_workqueue
+ - [armel,armhf] ASoC: kirkwood: Iterate over array indexes instead of using
+ pointer math
+ - [armhf] regulator: s5m8767: Bounds check id indexing into arrays
+ - gfs2: Improve gfs2_make_fs_rw error handling
+ - [x86] hwmon: (coretemp) Simplify platform device handling
+ - HID: logitech-hidpp: Don't restart communication if not necessary
+ - drm: panel-orientation-quirks: Add quirk for Lenovo IdeaPad Duet 3 10IGL5
+ - dm thin: add cond_resched() to various workqueue loops
+ - dm cache: add cond_resched() to various workqueue loops
+ - nfsd: zero out pointers after putting nfsd_files on COPY setup error
+ - wifi: rtl8xxxu: fixing transmisison failure for rtl8192eu
+ - firmware: coreboot: framebuffer: Ignore reserved pixel color bits
+ - [arm64] rtc: pm8xxx: fix set-alarm race
+ - ipmi_ssif: Rename idle state and check
+ - [s390x] extmem: return correct segment type in __segment_load()
+ - [s390x] discard .interp section
+ - [s390x] kprobes: fix irq mask clobbering on kprobe reenter from
+ post_handler
+ - [s390x] kprobes: fix current_kprobe never cleared after kprobes reenter
+ - cifs: Fix uninitialized memory read in smb3_qfs_tcon()
+ - hfs: fix missing hfs_bnode_get() in __hfs_bnode_create
+ - fs: hfsplus: fix UAF issue in hfsplus_put_super
+ - exfat: fix reporting fs error when reading dir beyond EOF
+ - exfat: fix unexpected EOF while reading dir
+ - exfat: redefine DIR_DELETED as the bad cluster number
+ - exfat: fix inode->i_blocks for non-512 byte sector size device
+ - f2fs: fix information leak in f2fs_move_inline_dirents()
+ - f2fs: fix cgroup writeback accounting with fs-layer encryption
+ - ocfs2: fix defrag path triggering jbd2 ASSERT
+ - ocfs2: fix non-auto defrag path not working issue
+ - udf: Truncate added extents on failed expansion
+ - udf: Do not bother merging very long extents
+ - udf: Do not update file length for failed writes to inline files
+ - udf: Preserve link count of system files
+ - udf: Detect system inodes linked into directory hierarchy
+ - udf: Fix file corruption when appending just after end of preallocated
+ extent
+ - KVM: Destroy target device if coalesced MMIO unregistration fails
+ - [x86] KVM: x86: Inject #GP if WRMSR sets reserved bits in APIC Self-IPI
+ - [s390x] KVM: s390: disable migration mode when dirty tracking is disabled
+ - [x86] virt: Force GIF=1 prior to disabling SVM (for reboot flows)
+ - [x86] crash: Disable virt in core NMI crash handler to avoid double
+ shootdown
+ - [x86] reboot: Disable virtualization in an emergency if SVM is supported
+ - [x86] reboot: Disable SVM, not just VMX, when stopping CPUs
+ - [x86] kprobes: Fix __recover_optprobed_insn check optimizing logic
+ - [x86] kprobes: Fix arch_check_optimized_kprobe check within
+ optimized_kprobe range
+ - [x86] microcode/amd: Remove load_microcode_amd()'s bsp parameter
+ - [x86] microcode/AMD: Add a @cpu parameter to the reloading functions
+ - [x86] microcode/AMD: Fix mixed steppings support
+ - [x86] speculation: Allow enabling STIBP with legacy IBRS (CVE-2023-1998)
+ - Documentation/hw-vuln: Document the interaction between IBRS and STIBP
+ - brd: return 0/-error from brd_insert_page()
+ - ima: Align ima_file_mmap() parameters with mmap_file LSM hook
+ - irqdomain: Fix association race
+ - irqdomain: Fix disassociation race
+ - irqdomain: Drop bogus fwspec-mapping error handling
+ - io_uring: handle TIF_NOTIFY_RESUME when checking for task_work
+ - io_uring: mark task TASK_RUNNING before handling resume/task work
+ - io_uring: add a conditional reschedule to the IOPOLL cancelation loop
+ - io_uring/rsrc: disallow multi-source reg buffers
+ - io_uring: remove MSG_NOSIGNAL from recvmsg
+ - io_uring/poll: allow some retries for poll triggering spuriously
+ - ALSA: ice1712: Do not left ice->gpio_mutex locked in aureon_add_controls()
+ - ALSA: hda/realtek: Add quirk for HP EliteDesk 800 G6 Tower PC
+ - jbd2: fix data missing when reusing bh which is ready to be checkpointed
+ - ext4: optimize ea_inode block expansion
+ - ext4: refuse to create ea block when umounted
+ - mtd: spi-nor: Fix shift-out-of-bounds in spi_nor_set_erase_type
+ - dm: add cond_resched() to dm_wq_work()
+ - wifi: rtl8xxxu: Use a longer retry limit of 48
+ - wifi: cfg80211: Fix use after free for wext
+ - [x86] thermal: intel: powerclamp: Fix cur_state for multi package system
+ - dm flakey: fix logic when corrupting a bio
+ - dm flakey: don't corrupt the zero page
+ - rbd: avoid use-after-free in do_rbd_add() when rbd_dev_create() fails
+ - dax/kmem: Fix leak of memory-hotplug resources
+ - mm: memcontrol: deprecate charge moving
+ - mm/thp: check and bail out if page in deferred queue already
+ - ring-buffer: Handle race between rb_move_tail and rb_check_pages
+ - scsi: qla2xxx: Fix link failure in NPIV environment
+ - scsi: qla2xxx: Fix DMA-API call trace on NVMe LS requests
+ - scsi: qla2xxx: Fix erroneous link down
+ - scsi: ses: Don't attach if enclosure has no components
+ - scsi: ses: Fix slab-out-of-bounds in ses_enclosure_data_process()
+ - scsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses
+ - scsi: ses: Fix possible desc_ptr out-of-bounds accesses
+ - scsi: ses: Fix slab-out-of-bounds in ses_intf_remove()
+ - PCI/PM: Observe reset delay irrespective of bridge_d3
+ - PCI: hotplug: Allow marking devices as disconnected during bind/unbind
+ - PCI: Avoid FLR for AMD FCH AHCI adapters
+ - vfio/type1: prevent underflow of locked_vm via exec()
+ - [x86] drm/i915/quirks: Add inverted backlight quirk for HP 14-r206nv
+ - drm/radeon: Fix eDP for single-display iMac11,2
+ - drm/edid: fix AVI infoframe aspect ratio handling
+ - wifi: ath9k: use proper statements in conditionals
+ - [arm64,armhf] pinctrl: rockchip: fix mux route data for rk3568
+ - [arm64,armhf] pinctrl: rockchip: fix reading pull type on rk3568
+ - net/sched: Retire tcindex classifier (CVE-2023-1829)
+ - fs/jfs: fix shift exponent db_agl2size negative
+ - objtool: Fix memory leak in create_static_call_sections()
+ - [armhf] pwm: stm32-lp: fix the check on arr and cmp registers update
+ - f2fs: use memcpy_{to,from}_page() where possible
+ - fs: f2fs: initialize fsdata in pagecache_write()
+ - ubi: ensure that VID header offset + VID header size <= alloc, size
+ - ubifs: Fix build errors as symbol undefined
+ - ubifs: Rectify space budget for ubifs_symlink() if symlink is encrypted
+ - ubifs: Rectify space budget for ubifs_xrename()
+ - ubifs: Fix wrong dirty space budget for dirty inode
+ - ubifs: do_rename: Fix wrong space budget when target inode's nlink > 1
+ - ubifs: Reserve one leb for each journal head while doing budget
+ - ubi: Fix use-after-free when volume resizing failed
+ - ubi: Fix unreferenced object reported by kmemleak in ubi_resize_volume()
+ - ubifs: Fix memory leak in alloc_wbufs()
+ - ubi: Fix possible null-ptr-deref in ubi_free_volume()
+ - ubifs: Re-statistic cleaned znode count if commit failed
+ - ubifs: dirty_cow_znode: Fix memleak in error handling path
+ - ubifs: ubifs_writepage: Mark page dirty after writing inode failed
+ - ubi: fastmap: Fix missed fm_anchor PEB in wear-leveling after disabling
+ fastmap
+ - ubi: Fix UAF wear-leveling entry in eraseblk_count_seq_show()
+ - ubi: ubi_wl_put_peb: Fix infinite loop when wear-leveling work failed
+ - [x86] um: vdso: Add '%rcx' and '%r11' to the syscall clobber list
+ - watchdog: Fix kmemleak in watchdog_cdev_register
+ - watchdog: pcwd_usb: Fix attempting to access uninitialized memory
+ - netfilter: ctnetlink: fix possible refcount leak in
+ ctnetlink_create_conntrack()
+ - netfilter: ebtables: fix table blob use-after-free
+ - ipv6: Add lwtunnel encap size of all siblings in nexthop calculation
+ - sctp: add a refcnt in sctp_stream_priorities to avoid a nested loop
+ - net: fix __dev_kfree_skb_any() vs drop monitor
+ - 9p/xen: fix version parsing
+ - 9p/xen: fix connection sequence
+ - 9p/rdma: unmap receive dma buffer in rdma_request()/post_recv()
+ - net/mlx5: Geneve, Fix handling of Geneve object id as error code
+ - nfc: fix memory leak of se_io context in nfc_genl_se_io
+ - net/sched: act_sample: fix action bind logic
+ - tcp: tcp_check_req() can be called from process context
+ - vc_screen: modify vcs_size() handling in vcs_read()
+ - [arm64,armhf] rtc: sun6i: Always export the internal oscillator
+ - scsi: ipr: Work around fortify-string warning
+ - loop: loop_set_status_from_info() check before assignment
+ - tracing: Add NULL checks for buffer in ring_buffer_free_read_page()
+ - [x86] firmware/efi sysfb_efi: Add quirk for Lenovo IdeaPad Duet 3
+ - bootconfig: Increase max nodes of bootconfig from 1024 to 8192 for DCC
+ support
+ - [amd64] IB/hfi1: Update RMT size calculation
+ - media: uvcvideo: Handle cameras with invalid descriptors
+ - media: uvcvideo: Handle errors from calls to usb_string
+ - media: uvcvideo: Quirk for autosuspend in Logitech B910 and C910
+ - media: uvcvideo: Silence memcpy() run-time false positive warnings
+ - tty: fix out-of-bounds access in tty_driver_lookup_tty()
+ - tty: serial: fsl_lpuart: disable the CTS when send break signal
+ - [x86] mei: bus-fixup:upon error print return values of send and receive
+ - iio: accel: mma9551_core: Prevent uninitialized variable in
+ mma9551_read_status_word()
+ - iio: accel: mma9551_core: Prevent uninitialized variable in
+ mma9551_read_config_word()
+ - [arm64,armhf] usb: host: xhci: mvebu: Iterate over array indexes instead
+ of using pointer math
+ - USB: ene_usb6250: Allocate enough memory for full object
+ - usb: uvc: Enumerate valid values for color matching
+ - usb: gadget: uvc: Make bSourceID read/write
+ - PCI: Align extra resources for hotplug bridges properly
+ - PCI: Take other bus devices into account when distributing resources
+ - kernel/fail_function: fix memory leak with using debugfs_lookup()
+ - PCI: Add ACS quirk for Wangxun NICs
+ - [arm64] phy: rockchip-typec: Fix unsigned comparison with less than zero
+ - soundwire: cadence: Remove wasted space in response_buf
+ - soundwire: cadence: Drain the RX FIFO after an IO timeout
+ - [x86] resctrl: Apply READ_ONCE/WRITE_ONCE to task_struct.{rmid,closid}
+ - [x86] resctl: fix scheduler confusion with 'current'
+ - drm/display/dp_mst: Fix down/up message handling after sink disconnect
+ - drm/display/dp_mst: Fix down message handling after a packet reception
+ error
+ - Bluetooth: hci_sock: purge socket queues in the destruct() callback
+ - tcp: Fix listen() regression in 5.10.163
+ - drm/virtio: Fix error code in virtio_gpu_object_shmem_init()
+ - media: uvcvideo: Provide sync and async uvc_ctrl_status_event
+ - media: uvcvideo: Fix race condition with usb_kill_urb
+ - Revert "scsi: mpt3sas: Fix return value check of dma_get_required_mask()"
+ - scsi: mpt3sas: Don't change DMA mask while reallocating pools
+ - scsi: mpt3sas: re-do lost mpt3sas DMA mask fix
+ - scsi: mpt3sas: Remove usage of dma_get_required_mask() API
+ (Closes: #1022126)
+ - malidp: Fix NULL vs IS_ERR() checking (CVE-2023-23004)
+ - usb: gadget: uvc: fix missing mutex_unlock() if kstrtou8() fails
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.174
+ - wifi: cfg80211: Partial revert "wifi: cfg80211: Fix use after free for
+ wext"
+ - [x86] staging: rtl8192e: Remove function ..dm_check_ac_dc_power calling a
+ script
+ - [x86] staging: rtl8192e: Remove call_usermodehelper starting RadioPower.sh
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.175
+ - fs: prevent out-of-bounds array speculation when closing a file descriptor
+ - fork: allow CLONE_NEWTIME in clone3 flags
+ - [x86] CPU/AMD: Disable XSAVES on AMD family 0x17
+ - drm/amdgpu: fix error checking in amdgpu_read_mm_registers for soc15
+ - drm/connector: print max_requested_bpc in state debugfs
+ - ext4: fix cgroup writeback accounting with fs-layer encryption
+ - ext4: fix RENAME_WHITEOUT handling for inline directories
+ - ext4: fix another off-by-one fsmap error on 1k block filesystems
+ - ext4: move where set the MAY_INLINE_DATA flag is set
+ - ext4: fix WARNING in ext4_update_inline_data
+ - ext4: zero i_disksize when initializing the bootloader inode
+ - nfc: change order inside nfc_se_io error path
+ - udf: Fix off-by-one error when discarding preallocation
+ - irq: Fix typos in comments
+ - irqdomain: Look for existing mapping only once
+ - irqdomain: Refactor __irq_domain_alloc_irqs()
+ - irqdomain: Fix mapping-creation race
+ - irqdomain: Change the type of 'size' in __irq_domain_add() to be
+ consistent
+ - irqdomain: Fix domain registration race
+ - [amd64] iommu/vt-d: Fix lockdep splat in intel_pasid_get_entry()
+ - [amd64] iommu/vt-d: Fix PASID directory pointer coherency
+ - [arm64] efi: Make efi_rt_lock a raw_spinlock
+ - scsi: core: Remove the /proc/scsi/${proc_name} directory earlier
+ - ext4: Fix possible corruption when moving a directory
+ - drm/nouveau/kms/nv50-: remove unused functions
+ - drm/nouveau/kms/nv50: fix nv50_wndw_new_ prototype
+ - [arm64] drm/msm: Fix potential invalid ptr free
+ - [arm64] drm/msm/a5xx: fix setting of the CP_PREEMPT_ENABLE_LOCAL register
+ - [arm64] drm/msm: Document and rename preempt_lock
+ - [arm64] drm/msm/a5xx: fix the emptyness check in the preempt code
+ - [arm64] drm/msm/a5xx: fix context faults during ring switch
+ - ila: do not generate empty messages in ila_xlat_nl_cmd_get_mapping()
+ - net: usb: lan78xx: Remove lots of set but unused 'ret' variables
+ - net: lan78xx: fix accessing the LAN7800's internal phy specific registers
+ from the MAC driver
+ - net: stmmac: add to set device wake up flag when stmmac init phy
+ - net: phylib: get rid of unnecessary locking
+ - bnxt_en: Avoid order-5 memory allocation for TPA data
+ - netfilter: ctnetlink: revert to dumping mark regardless of event type
+ - netfilter: tproxy: fix deadlock due to missing BH disable
+ - btf: fix resolving BTF_KIND_VAR after ARRAY, STRUCT, UNION, PTR
+ - scsi: megaraid_sas: Update max supported LD IDs to 240
+ - net/smc: fix fallback failed while sendmsg with fastopen
+ - SUNRPC: Fix a server shutdown leak
+ - ext4: Fix deadlock during directory rename
+ - [amd64] iommu/amd: Add a length limitation for the ivrs_acpihid
+ command-line parameter
+ - watch_queue: fix IOC_WATCH_QUEUE_SET_SIZE alloc error paths
+ - tpm/eventlog: Don't abort tpm_read_log on faulty ACPI address
+ - block, bfq: fix possible uaf for 'bfqq->bic'
+ - block, bfq: fix uaf for bfqq in bfq_exit_icq_bfqq
+ - block/bfq-iosched.c: use "false" rather than "BLK_RW_ASYNC"
+ - block, bfq: replace 0/1 with false/true in bic apis
+ - block, bfq: fix uaf for bfqq in bic_set_bfqq()
+ - PCI: Add SolidRun vendor ID
+ - [armhf] media: rc: gpio-ir-recv: add remove function
+ - ipmi/watchdog: replace atomic_add() and atomic_sub()
+ - ipmi:watchdog: Set panic count to proper value on a panic
+ - skbuff: Fix nfct leak on napi stolen
+ - [x86] drm/i915: Don't use BAR mappings for ring buffers with LLC
+ - ext4: refactor ext4_free_blocks() to pull out ext4_mb_clear_bb()
+ - ext4: add ext4_sb_block_valid() refactored out of ext4_inode_block_valid()
+ - ext4: add strict range checks while freeing blocks
+ - ext4: block range must be validated before use in ext4_mb_clear_bb()
+ - arch: fix broken BuildID for arm64 and riscv
+ - [powerpc*] vmlinux.lds: Define RUNTIME_DISCARD_EXIT
+ - [powerpc*] vmlinux.lds: Don't discard .rela* for relocatable builds
+ - [s390x] define RUNTIME_DISCARD_EXIT to fix link error with GNU ld < 2.36
+ - [x86] KVM: nVMX: Don't use Enlightened MSR Bitmap for L3
+ - [x86] KVM: VMX: Introduce vmx_msr_bitmap_l01_changed() helper
+ - [x86] KVM: VMX: Fix crash due to uninitialized current_vmcs
+ - [s390x] dasd: add missing discipline function
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.176
+ - xfrm: Allow transport-mode states with AF_UNSPEC selector
+ - [arm64,armhf] drm/panfrost: Don't sync rpm suspension after mmu flushing
+ - cifs: Move the in_send statistic to __smb_send_rqst()
+ - [arm64] drm/meson: fix 1px pink line on GXM when scaling video overlay
+ - docs: Correct missing "d_" prefix for dentry_operations member
+ d_weak_revalidate
+ - scsi: mpt3sas: Fix NULL pointer access in mpt3sas_transport_port_add()
+ - ALSA: hda: Match only Intel devices with CONTROLLER_IN_GPU()
+ - netfilter: nft_nat: correct length for loading protocol registers
+ - netfilter: nft_masq: correct length for loading protocol registers
+ - netfilter: nft_redir: correct length for loading protocol registers
+ - netfilter: nft_redir: correct value of inet type `.maxattrs`
+ - scsi: core: Fix a comment in function scsi_host_dev_release()
+ - scsi: core: Fix a procfs host directory removal regression
+ - tcp: tcp_make_synack() can be called from process context
+ - nfc: pn533: initialize struct pn533_out_arg properly
+ - ipvlan: Make skb->skb_iif track skb->dev for l3s mode
+ - i40e: Fix kernel crash during reboot when adapter is in recovery mode
+ - net/smc: fix NULL sndbuf_desc in smc_cdc_tx_handler()
+ - qed/qed_dev: guard against a possible division by zero
+ - net: tunnels: annotate lockless accesses to dev->needed_headroom
+ - net: phy: smsc: bail out in lan87xx_read_status if genphy_read_status
+ fails
+ - net/smc: fix deadlock triggered by cancel_delayed_work_syn()
+ - net: usb: smsc75xx: Limit packet length to skb->len
+ - drm/bridge: Fix returned array size name for atomic_get_input_bus_fmts
+ kdoc
+ - nvme: fix handling single range discard request
+ - nvmet: avoid potential UAF in nvmet_req_complete()
+ - ice: xsk: disable txq irq before flushing hw
+ - net: dsa: mv88e6xxx: fix max_mtu of 1492 on 6165, 6191, 6220, 6250, 6290
+ - ipv4: Fix incorrect table ID in IOCTL path
+ - net: usb: smsc75xx: Move packet length check to prevent kernel panic in
+ skb_pull
+ - [s390x] net/iucv: Fix size of interrupt data
+ - qed/qed_mng_tlv: correctly zero out ->min instead of ->hour
+ - hwmon: (adt7475) Display smoothing attributes in correct order
+ - hwmon: (adt7475) Fix masking of hysteresis registers
+ - [arm64] hwmon: (xgene) Fix use after free bug in xgene_hwmon_remove due to
+ race condition (CVE-2023-1855)
+ - jffs2: correct logic when creating a hole in jffs2_write_begin
+ - ext4: fail ext4_iget if special inode unallocated
+ - ext4: fix task hung in ext4_xattr_delete_inode
+ - drm/amd/display: fix shift-out-of-bounds in CalculateVMAndRowBytes
+ - ext4: fix possible double unlock when moving a directory
+ - [arm64] tty: serial: fsl_lpuart: skip waiting for transmission complete
+ when UARTCTRL_SBK is asserted
+ - [arm64] firmware: xilinx: don't make a sleepable memory allocation from an
+ atomic context
+ - tracing: Make splice_read available again
+ - tracing: Check field value in hist_field_name()
+ - tracing: Make tracepoint lockdep check actually test something
+ - cifs: Fix smb2_set_path_size()
+ - [x86] KVM: nVMX: add missing consistency checks for CR0 and CR4
+ (CVE-2023-30456)
+ - ALSA: hda: intel-dsp-config: add MTL PCI id
+ - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book2 Pro
+ - drm/shmem-helper: Remove another errant put in error path
+ - ftrace: Fix invalid address access in lookup_rec() when index is 0
+ - mm/userfaultfd: propagate uffd-wp bit when PTE-mapping the huge zeropage
+ - [x86] mce: Make sure logged MCEs are processed after sysfs update
+ - [x86] mm: Fix use of uninitialized buffer in sme_enable()
+ - [x86] drm/i915: Don't use stolen memory for ring buffers with LLC
+ - [x86] drm/i915/active: Fix misuse of non-idle barriers as fence trackers
+ - io_uring: avoid null-ptr-deref in io_arm_poll_handler
+ - [s390x] ipl: add missing intersection check to ipl_report handling
+ - PCI: Unify delay handling for reset and resume
+ - PCI/DPC: Await readiness of secondary bus after reset
+ - xfs: don't assert fail on perag references on teardown
+ - xfs: purge dquots after inode walk fails during quotacheck
+ - xfs: don't leak btree cursor when insrec fails after a split
+ - xfs: remove XFS_PREALLOC_SYNC
+ - xfs: fallocate() should call file_modified()
+ - xfs: set prealloc flag in xfs_alloc_file_space()
+ - xfs: use setattr_copy to set vfs inode attributes
+ - fs: add mode_strip_sgid() helper
+ - fs: move S_ISGID stripping into the vfs_*() helpers
+ - attr: add in_group_or_capable()
+ - fs: move should_remove_suid()
+ - attr: add setattr_should_drop_sgid()
+ - attr: use consistent sgid stripping checks
+ - fs: use consistent setgid checks in is_sxid()
+ - xfs: remove xfs_setattr_time() declaration
+ - HID: core: Provide new max_buffer_size attribute to over-ride the default
+ - HID: uhid: Over-ride the default maximum data buffer value with our own
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.177
+ - perf/core: Fix perf_output_begin parameter is incorrectly invoked in
+ perf_event_bpf_output
+ - perf: fix perf_event_context->time
+ - ipmi:ssif: make ssif_i2c_send() void
+ - ipmi:ssif: Increase the message retry time
+ - ipmi:ssif: resend_msg() cannot fail
+ - ipmi:ssif: Add a timer between request retries
+ - KVM: Clean up benign vcpu->cpu data races when kicking vCPUs
+ - KVM: KVM: Use cpumask_available() to check for NULL cpumask when kicking
+ vCPUs
+ - KVM: Optimize kvm_make_vcpus_request_mask() a bit
+ - KVM: Pre-allocate cpumasks for kvm_make_all_cpus_request_except()
+ - KVM: Register /dev/kvm as the _very_ last thing during initialization
+ - [arm64] serial: fsl_lpuart: Fix comment typo
+ - [arm64] tty: serial: fsl_lpuart: fix race on RX DMA shutdown
+ - [arm64,armhf] drm/sun4i: fix missing component unbind on bind errors
+ - net: tls: fix possible race condition between do_tls_getsockopt_conf() and
+ do_tls_setsockopt_conf() (CVE-2023-28466)
+ - [x86] power: supply: bq24190_charger: using pm_runtime_resume_and_get
+ instead of pm_runtime_get_sync
+ - [x86] power: supply: bq24190: Fix use after free bug in bq24190_remove due
+ to race condition
+ - [armhf] dts: imx6sl: tolino-shine2hd: fix usbotg1 pinctrl
+ - xsk: Add missing overflow check in xdp_umem_reg
+ - iavf: fix inverted Rx hash condition leading to disabled hash
+ - iavf: fix non-tunneled IPv6 UDP packet type and hashing
+ - intel/igbvf: free irq on the error path in igbvf_request_msix()
+ - igbvf: Regard vf reset nack as success
+ - igc: fix the validation logic for taprio's gate list
+ - scsi: scsi_dh_alua: Fix memleak for 'qdata' in alua_activate()
+ - net: usb: smsc95xx: Limit packet length to skb->len
+ - qed/qed_sriov: guard against NULL derefs from qed_iov_get_vf_info
+ - [x86] xirc2ps_cs: Fix use after free bug in xirc2ps_detach (CVE-2023-1670)
+ - net: phy: Ensure state transitions are processed from phy_stop()
+ - net: mdio: fix owner field for mdio buses registered using device-tree
+ - [arm64] net: qcom/emac: Fix use after free bug in emac_remove due to race
+ condition
+ - keys: Do not cache key in task struct if key is requested from kernel
+ thread
+ - bpf: Adjust insufficient default bpf_jit_limit
+ - net/mlx5: Fix steering rules cleanup
+ - net/mlx5: Read the TC mapping of all priorities on ETS query
+ - net/mlx5: E-Switch, Fix an Oops in error handling code
+ - atm: idt77252: fix kmemleak when rmmod idt77252
+ - erspan: do not use skb_mac_header() in ndo_start_xmit()
+ - nvme-tcp: fix nvme_tcp_term_pdu to match spec
+ - [amd64,arm64] gve: Cache link_speed value from device
+ - [arm64] net: mdio: thunder: Add missing fwnode_handle_put()
+ - [arm64] Bluetooth: btqcomsmd: Fix command timeout after setting BD address
+ - Bluetooth: L2CAP: Fix not checking for maximum number of DCID
+ - Bluetooth: L2CAP: Fix responding with wrong PDU type
+ - Bluetooth: btsdio: fix use after free bug in btsdio_remove due to
+ unfinished work (CVE-2023-1989)
+ - [arm64] platform/chrome: cros_ec_chardev: fix kernel data leak from ioctl
+ - hwmon: fix potential sensor registration fail if of_node is missing
+ - [x86] hwmon (it87): Fix voltage scaling for chips with 10.9mV ADCs
+ - scsi: qla2xxx: Perform lockless command completion in abort path
+ - [x86] thunderbolt: Use scale field when allocating USB3 bandwidth
+ - [x86] thunderbolt: Use const qualifier for `ring_interrupt_index`
+ - HID: cp2112: Fix driver not registering GPIO IRQ chip as threaded
+ - scsi: target: iscsi: Fix an error message in iscsi_check_key()
+ - [arm64] scsi: hisi_sas: Check devm_add_action() return value
+ - scsi: ufs: core: Add soft dependency on governor_simpleondemand
+ - scsi: lpfc: Avoid usage of list iterator variable after loop
+ - [x86] scsi: storvsc: Handle BlockSize change in Hyper-V VHD/VHDX file
+ - net: usb: cdc_mbim: avoid altsetting toggling for Telit FE990
+ - net: usb: qmi_wwan: add Telit 0x1080 composition
+ - cifs: empty interface list when server doesn't support query interfaces
+ - scsi: core: Add BLIST_SKIP_VPD_PAGES for SKhynix H28U74301AMR
+ - [arm*] usb: dwc2: fix a devres leak in hw_enable upon suspend resume
+ - usb: gadget: u_audio: don't let userspace block driver unbind
+ - fsverity: Remove WQ_UNBOUND from fsverity read workqueue
+ - igb: revert rtnl_lock() that causes deadlock
+ - dm thin: fix deadlock when swapping to thin device
+ - [arm64,armhf] usb: chipdea: core: fix return -EINVAL if request role is
+ the same with current role
+ - [arm64,armhf] usb: chipidea: core: fix possible concurrent when switch
+ role
+ - usb: ucsi: Fix NULL pointer deref in ucsi_connector_change()
+ - wifi: mac80211: fix qos on mesh interfaces
+ - nilfs2: fix kernel-infoleak in nilfs_ioctl_wrap_copy()
+ - [x86] drm/i915/active: Fix missing debug object activation
+ - [x86] drm/i915: Preserve crtc_state->inherited during state clearing
+ - [arm64] i2c: xgene-slimpro: Fix out-of-bounds bug in
+ xgene_slimpro_i2c_xfer() (CVE-2023-2194)
+ - dm stats: check for and propagate alloc_percpu failure
+ - dm crypt: add cond_resched() to dmcrypt_write()
+ - sched/fair: sanitize vruntime of entity being placed
+ - sched/fair: Sanitize vruntime of entity being migrated
+ - ocfs2: fix data corruption after failed write
+ - xfs: shut down the filesystem if we screw up quota reservation
+ - xfs: don't reuse busy extents on extent trim
+ - KVM: fix memoryleak in kvm_init()
+ - NFSD: fix use-after-free in __nfs42_ssc_open() (CVE-2022-4379)
+ - [arm64,armhf] usb: dwc3: gadget: move cmd_endtransfer to extra function
+ - [arm64,armhf] usb: dwc3: gadget: Add 1ms delay after end transfer command
+ without IOC
+ - [arm64] drm/meson: Fix error handling when afbcd.ops->init fails
+ - [arm64] drm/meson: fix missing component unbind on bind errors
+ - dm crypt: avoid accessing uninitialized tasklet
+ - fsverity: don't drop pagecache at end of FS_IOC_ENABLE_VERITY
+ - md: avoid signed overflow in slot_store()
+ - [x86] ALSA: asihpi: check pao in control_message()
+ - ALSA: hda/ca0132: fixup buffer overrun at tuning_ctl_set()
+ - sched_getaffinity: don't assume 'cpumask_size()' is fully initialized
+ - tracing: Fix wrong return in kprobe_event_gen_test.c
+ - sfc: ef10: don't overwrite offload features at NIC reset
+ - scsi: megaraid_sas: Fix crash after a double completion
+ - [arm64] ptp_qoriq: fix memory leak in probe()
+ - r8169: fix RTL8168H and RTL8107E rx crc error
+ - [arm*] regulator: Handle deferred clk
+ - net/net_failover: fix txq exceeding warning
+ - net: stmmac: don't reject VLANs when IFF_PROMISC is set
+ - ALSA: ymfpci: Fix assignment in if condition
+ - ALSA: ymfpci: Fix BUG_ON in probe function
+ - i40e: fix registers dump after run ethtool adapter self test
+ - bnxt_en: Fix typo in PCI id to device description string mapping
+ - bnxt_en: Add missing 200G link speed reporting
+ - [arm64,armhf] net: dsa: mv88e6xxx: Enable IGMP snooping on user ports only
+ - Input: alps - fix compatibility with -funsigned-char
+ - Input: focaltech - use explicitly signed char type
+ - cifs: prevent infinite recursion in CIFSGetDFSRefer()
+ - cifs: fix DFS traversal oops without CONFIG_CIFS_DFS_UPCALL
+ - Input: goodix - add Lenovo Yoga Book X90F to nine_bytes_report DMI table
+ - btrfs: fix race between quota disable and quota assign ioctls
+ (CVE-2023-1611)
+ - xen/netback: don't do grant copy across page boundary
+ - pinctrl: amd: Disable and mask interrupts on resume
+ - [powerpc*] Don't try to copy PPR for task with NULL pt_regs
+ - NFSv4: Fix hangs when recovering open state after a server reboot
+ - ALSA: hda/conexant: Partial revert of a quirk for Lenovo
+ - ALSA: usb-audio: Fix regression on detection of Roland VS-100
+ - ALSA: hda/realtek: Add quirk for Lenovo ZhaoYang CF4620Z
+ - rcu: Fix rcu_torture_read ftrace event
+ - [armhf] drm/etnaviv: fix reference leak when mmaping imported buffer
+ - drm/amd/display: Add DSC Support for Synaptics Cascaded MST Hub
+ - [s390x] uaccess: add missing earlyclobber annotations to __clear_user()
+ - btrfs: scan device in non-exclusive mode
+ - zonefs: Fix error message in zonefs_file_dio_append()
+ - ext4: fix kernel BUG in 'ext4_write_inline_data_end()'
+ - gfs2: Always check inode size of inline inodes
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.178
+ - [x86] Drivers: vmbus: Check for channel allocation before looking up
+ relids
+ - [arm64] pwm: cros-ec: Explicitly set .polarity in .get_state()
+ - [s390x] KVM: s390: pv: fix external interruption loop not always detected
+ - wifi: mac80211: fix invalid drv_sta_pre_rcu_remove calls for non-uploaded
+ sta
+ - icmp: guard against too small mtu
+ - net: don't let netpoll invoke NAPI if in xmit context
+ - sctp: check send stream number after wait_for_sndbuf
+ - ipv6: Fix an uninit variable access bug in __ip6_make_skb()
+ - net: stmmac: fix up RX flow hash indirection table when setting channels
+ - sunrpc: only free unix grouplist after RCU settles
+ - NFSD: callback request does not use correct credential for AUTH_SYS
+ - [arm64,armhf] usb: xhci: tegra: fix sleep in atomic call
+ - xhci: also avoid the XHCI_ZERO_64B_REGS quirk with a passthrough iommu
+ - USB: serial: cp210x: add Silicon Labs IFS-USB-DATACABLE IDs
+ - usb: typec: altmodes/displayport: Fix configure initial pin assignment
+ - USB: serial: option: add Telit FE990 compositions
+ - USB: serial: option: add Quectel RM500U-CN modem
+ - iio: adc: ti-ads7950: Set `can_sleep` flag for GPIO chip
+ - iio: light: cm32181: Unregister second I2C client if present
+ - [arm64] tty: serial: fsl_lpuart: avoid checking for transfer complete when
+ UARTCTRL_SBK is asserted in lpuart32_tx_empty
+ - nilfs2: fix potential UAF of struct nilfs_sc_info in
+ nilfs_segctor_thread()
+ - nilfs2: fix sysfs interface lifetime
+ - dt-bindings: serial: renesas,scif: Fix 4th IRQ for 4-IRQ SCIFs
+ - ALSA: hda/realtek: Add quirk for Clevo X370SNW
+ - iio: adc: ad7791: fix IRQ flags
+ - scsi: iscsi_tcp: Check that sock is valid before iscsi_set_param()
+ - perf/core: Fix the same task check in perf_event_set_output
+ - ftrace: Mark get_lock_parent_ip() __always_inline
+ - ftrace: Fix issue that 'direct->addr' not restored in
+ modify_ftrace_direct()
+ - can: j1939: j1939_tp_tx_dat_new(): fix out-of-bounds memory access
+ - can: isotp: isotp_ops: fix poll() to not report false EPOLLOUT events
+ - tracing: Free error logs of tracing instances
+ - ASoC: hdac_hdmi: use set_stream() instead of set_tdm_slots()
+ - [arm64,armhf] drm/panfrost: Fix the panfrost_mmu_map_fault_addr() error
+ path
+ - drm/nouveau/disp: Support more modes by checking with lower bpc
+ - ring-buffer: Fix race while reader and writer are on the same page
+ - mm/swap: fix swap_info_struct race between swapoff and get_swap_pages()
+ - ocfs2: fix freeing uninitialized resource on ocfs2_dlm_shutdown
+ - bpftool: Print newline before '}' for struct with padding only fields
+ - Revert "pinctrl: amd: Disable and mask interrupts on resume"
+ - ALSA: emu10k1: fix capture interrupt handler unlinking
+ - ALSA: hda/sigmatel: add pin overrides for Intel DP45SG motherboard
+ - ALSA: i2c/cs8427: fix iec958 mixer control deactivation
+ - ALSA: firewire-tascam: add missing unwind goto in
+ snd_tscm_stream_start_duplex()
+ - ALSA: hda/sigmatel: fix S/PDIF out on Intel D*45* motherboards
+ - Bluetooth: L2CAP: Fix use-after-free in l2cap_disconnect_{req,rsp}
+ - Bluetooth: Fix race condition in hidp_session_thread
+ - btrfs: print checksum type and implementation at mount time
+ - btrfs: fix fast csum implementation detection
+ - fbmem: Reject FB_ACTIVATE_KD_TEXT from userspace
+ - mtdblock: tolerate corrected bit-flips
+ - [armhf] mtd: rawnand: stm32_fmc2: remove unsupported EDO mode
+ - [armhf] mtd: rawnand: stm32_fmc2: use timings.mode instead of checking
+ tRC_min
+ - IB/mlx5: Add support for NDR link speed
+ - IB/mlx5: Add support for 400G_8X lane speed
+ - RDMA/cma: Allow UD qp_type to join multicast only
+ - 9p/xen : Fix use after free bug in xen_9pfs_front_remove due to race
+ condition (CVE-2023-1859)
+ - niu: Fix missing unwind goto in niu_alloc_channels()
+ - sysctl: add proc_dou8vec_minmax()
+ - ipv4: shrink netns_ipv4 with sysctl conversions
+ - tcp: convert elligible sysctls to u8
+ - tcp: restrict net.ipv4.tcp_app_win
+ - [armhf] drm/armada: Fix a potential double free in an error handling path
+ - qlcnic: check pci_reset_function result
+ - sctp: fix a potential overflow in sctp_ifwdtsn_skip
+ - RDMA/core: Fix GID entry ref leak when create_ah fails
+ - udp6: fix potential access to stale information
+ - [arm64] net: macb: fix a memory corruption in extended buffer descriptor
+ mode
+ - [arm64] power: supply: cros_usbpd: reclassify "default case!" as debug
+ - wifi: mwifiex: mark OF related data as maybe unused
+ - [x86] efi: sysfb_efi: Add quirk for Lenovo Yoga Book X91F/L
+ - drm: panel-orientation-quirks: Add quirk for Lenovo Yoga Book X90F
+ - [amd64] verify_pefile: relax wrapper length check
+ - asymmetric_keys: log on fatal failures in PE/pkcs7
+ - net: sfp: initialize sfp->i2c_block_size at sfp allocation
+ - scsi: ses: Handle enclosure with just a primary component gracefully
+ - [x86] PCI: Add quirk for AMD XHCI controller that loses MSI-X state in
+ D3hot
+ - cgroup/cpuset: Wake up cpuset_attach_wq tasks in cpuset_cancel_attach()
+ - ubi: Fix failure attaching when vid_hdr offset equals to (sub)page size
+ - mtd: ubi: wl: Fix a couple of kernel-doc issues
+ - ubi: Fix deadlock caused by recursively holding work_sem
+ - [powerpc*] pseries: rename min_common_depth to primary_domain_index
+ - [powerpc*] pseries: Rename TYPE1_AFFINITY to FORM1_AFFINITY
+ - [powerpc*] pseries: Consolidate different NUMA distance update code paths
+ - [powerpc*] pseries: Add a helper for form1 cpu distance
+ - [powerpc*] pseries: Add support for FORM2 associativity
+ - [powerpc*] papr_scm: Update the NUMA distance table for the target node
+ - sched/fair: Move calculate of avg_load to a better location
+ - sched/fair: Fix imbalance overflow
+ - [x86] rtc: Remove __init for runtime functions
+ - i2c: ocores: generate stop condition after timeout in polling mode
+ - [arm64] watchdog: sbsa_wdog: Make sure the timeout programming is within
+ the limits
+ - kbuild: check the minimum assembler version in Kconfig
+ - kbuild: Switch to 'f' variants of integrated assembler flag
+ - kexec: move locking into do_kexec_load
+ - kexec: turn all kexec_mutex acquisitions into trylocks
+ - panic, kexec: make __crash_kexec() NMI safe
+ - sysctl: Fix data-races in proc_dou8vec_minmax().
+
+ [ Salvatore Bonaccorso ]
+ * Refresh "security,perf: Allow further restriction of perf_event_open"
+ * [rt] Update to 5.10.165-rt81
+ * Bump ABI to 22
+ * [rt] Refresh "printk: add pr_flush()"
+ * [rt] Update to 5.10.168-rt83
+ * [rt] Update to 5.10.176-rt86
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 21 Apr 2023 13:24:45 +0200
+
+linux (5.10.162-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.159
+ - [armhf] dts: rockchip: fix node name for hym8563 rtc
+ - [armhf] dts: rockchip: fix ir-receiver node names
+ - [arm64] dts: rockchip: fix ir-receiver node names
+ - [armel,armhf] 9266/1: mm: fix no-MMU ZERO_PAGE() implementation
+ - 9p/fd: Use P9_HDRSZ for header size
+ - ALSA: seq: Fix function prototype mismatch in snd_seq_expand_var_event
+ - btrfs: send: avoid unaligned encoded writes when attempting to clone range
+ - ASoC: soc-pcm: Add NULL check in BE reparenting
+ - [armhf] regulator: twl6030: fix get status of twl6032 regulators
+ - fbcon: Use kzalloc() in fbcon_prepare_logo()
+ - [arm64,armhf] usb: dwc3: gadget: Disable GUSB2PHYCFG.SUSPHY for End
+ Transfer
+ - 9p/xen: check logical size for buffer size
+ - net: usb: qmi_wwan: add u-blox 0x1342 composition
+ - mm/khugepaged: take the right locks for page table retraction
+ - mm/khugepaged: fix GUP-fast interaction by sending IPI
+ - mm/khugepaged: invoke MMU notifiers in shmem/file collapse paths
+ - rtc: mc146818: Prevent reading garbage
+ - rtc: mc146818: Detect and handle broken RTCs
+ - rtc: mc146818: Dont test for bit 0-5 in Register D
+ - rtc: cmos: remove stale REVISIT comments
+ - rtc: mc146818-lib: change return values of mc146818_get_time()
+ - rtc: Check return value from mc146818_get_time()
+ - rtc: mc146818-lib: fix RTC presence check
+ - rtc: mc146818-lib: extract mc146818_avoid_UIP
+ - rtc: cmos: avoid UIP when writing alarm time
+ - rtc: cmos: avoid UIP when reading alarm time
+ - rtc: cmos: Replace spin_lock_irqsave with spin_lock in hard IRQ
+ - rtc: mc146818: Reduce spinlock section in mc146818_set_time()
+ - media: videobuf2-core: take mmap_lock in vb2_get_unmapped_area()
+ - media: v4l2-dv-timings.c: fix too strict blanking sanity checks
+ - memcg: fix possible use-after-free in memcg_write_event_control()
+ - mm/gup: fix gup_pud_range() for dax
+ - Bluetooth: btusb: Add debug message for CSR controllers
+ - Bluetooth: Fix crash when replugging CSR fake controllers
+ - [s390x] KVM: s390: vsie: Fix the initialization of the epoch extension
+ (epdx) field
+ - [x86] drm/vmwgfx: Don't use screen objects when SEV is active
+ - drm/shmem-helper: Remove errant put in error path
+ - drm/shmem-helper: Avoid vm_open error paths
+ - HID: usbhid: Add ALWAYS_POLL quirk for some mice
+ - HID: hid-lg4ff: Add check for empty lbuf
+ - HID: core: fix shift-out-of-bounds in hid_report_raw_event
+ - can: af_can: fix NULL pointer dereference in can_rcv_filter
+ - mm/hugetlb: fix races when looking up a CONT-PTE/PMD size hugetlb page
+ (CVE-2022-3623)
+ - rtc: cmos: Disable irq around direct invocation of cmos_interrupt()
+ - rtc: mc146818-lib: fix locking in mc146818_set_time
+ - rtc: mc146818-lib: fix signedness bug in mc146818_get_time()
+ - netfilter: nft_set_pipapo: Actually validate intervals in fields after the
+ first one
+ - ieee802154: cc2520: Fix error return code in cc2520_hw_init()
+ - netfilter: ctnetlink: fix compilation warning after data race fixes in ct
+ mark
+ - e1000e: Fix TX dispatch condition
+ - igb: Allocate MSI-X vector when testing
+ - [arm64,armhf] drm: bridge: dw_hdmi: fix preference of RGB modes over
+ YUV420
+ - af_unix: Get user_ns from in_skb in unix_diag_get_exact().
+ - [x86] vmxnet3: correctly report encapsulated LRO packet
+ - Bluetooth: 6LoWPAN: add missing hci_dev_put() in get_l2cap_conn()
+ - Bluetooth: Fix not cleanup led when bt_init fails
+ - mac802154: fix missing INIT_LIST_HEAD in ieee802154_if_add()
+ - xen-netfront: Fix NULL sring after live migration
+ - [arm64,armhf] net: mvneta: Prevent out of bounds read in
+ mvneta_config_rss()
+ - i40e: Fix not setting default xps_cpus after reset
+ - i40e: Fix for VF MAC address 0
+ - i40e: Disallow ip4 and ip6 l4_4_bytes
+ - nvme initialize core quirks before calling nvme_init_subsystem
+ - net: stmmac: fix "snps,axi-config" node property parsing
+ - ip_gre: do not report erspan version on GRE interface
+ - [arm64] net: thunderx: Fix missing destroy_workqueue of nicvf_rx_mode_wq
+ - [arm64] net: hisilicon: Fix potential use-after-free in hisi_femac_rx()
+ - [arm64] net: hisilicon: Fix potential use-after-free in hix5hd2_rx()
+ - tipc: Fix potential OOB in tipc_link_proto_rcv()
+ - ipv4: Fix incorrect route flushing when source address is deleted
+ - ipv4: Fix incorrect route flushing when table ID 0 is used
+ - tipc: call tipc_lxc_xmit without holding node_read_lock
+ - [x86] net: plip: don't call kfree_skb/dev_kfree_skb() under
+ spin_lock_irq()
+ - ipv6: avoid use-after-free in ip6_fragment()
+ - [arm64,armhf] net: mvneta: Fix an out of bounds check
+ - macsec: add missing attribute validation for offload
+ - can: esd_usb: Allow REC and TEC to return to zero
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.160
+ - [x86] smpboot: Move rcu_cpu_starting() earlier
+ - vfs: fix copy_file_range() regression in cross-fs copies
+ - vfs: fix copy_file_range() averts filesystem freeze protection
+ - nfp: fix use-after-free in area_cache_get() (CVE-2022-3545)
+ - fuse: always revalidate if exclusive create
+ - io_uring: add missing item types for splice request (CVE-2022-4696)
+ - ASoC: ops: Check bounds for second channel in snd_soc_put_volsw_sx()
+ - can: mcba_usb: Fix termination command argument
+ - [armel,armhf] ASoC: cs42l51: Correct PGA Volume minimum value
+ - nvme-pci: clear the prp2 field when not used
+ - ASoC: ops: Correct bounds check for second channel on SX controls
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.161
+ - udf: Discard preallocation before extending file with a hole
+ - udf: Fix preallocation discarding at indirect extent boundary
+ - udf: Do not bother looking for prealloc extents if i_lenExtents matches
+ i_size
+ - udf: Fix extending file within last block
+ - usb: gadget: uvc: Prevent buffer overflow in setup handler
+ - USB: serial: option: add Quectel EM05-G modem
+ - USB: serial: cp210x: add Kamstrup RF sniffer PIDs
+ - USB: serial: f81232: fix division by zero on line-speed change
+ - USB: serial: f81534: fix division by zero on line-speed change
+ - xhci: Apply XHCI_RESET_TO_DEFAULT quirk to ADL-N
+ - igb: Initialize mailbox message for VF reset
+ - HID: ite: Add support for Acer S1002 keyboard-dock
+ - HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch 10E
+ - HID: ite: Enable QUIRK_TOUCHPAD_ON_OFF_REPORT on Acer Aspire Switch V 10
+ - HID: uclogic: Add HID_QUIRK_HIDINPUT_FORCE quirk
+ - Bluetooth: L2CAP: Fix u8 overflow (CVE-2022-45934)
+ - net: loopback: use NET_NAME_PREDICTABLE for name_assign_type
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.162
+ - kernel: provide create_io_thread() helper
+ - iov_iter: add helper to save iov_iter state
+ - saner calling conventions for unlazy_child()
+ - fs: add support for LOOKUP_CACHED
+ - fix handling of nd->depth on LOOKUP_CACHED failures in try_to_unlazy*
+ - Make sure nd->path.mnt and nd->path.dentry are always valid pointers
+ - fs: expose LOOKUP_CACHED through openat2() RESOLVE_CACHED
+ - tools headers UAPI: Sync openat2.h with the kernel sources
+ - net: provide __sys_shutdown_sock() that takes a socket
+ - net: add accept helper not installing fd
+ - signal: Add task_sigpending() helper
+ - fs: make do_renameat2() take struct filename
+ - file: Rename __close_fd_get_file close_fd_get_file
+ - fs: provide locked helper variant of close_fd_get_file()
+ - entry: Add support for TIF_NOTIFY_SIGNAL
+ - task_work: Use TIF_NOTIFY_SIGNAL if available
+ - [x86] Wire up TIF_NOTIFY_SIGNAL
+ - [arm64] add support for TIF_NOTIFY_SIGNAL
+ - [powerpc*] add support for TIF_NOTIFY_SIGNAL
+ - [mips*] add support for TIF_NOTIFY_SIGNAL
+ - [s390x] add support for TIF_NOTIFY_SIGNAL
+ - [armel,armhf] add support for TIF_NOTIFY_SIGNAL
+ - task_work: remove legacy TWA_SIGNAL path
+ - kernel: remove checking for TIF_NOTIFY_SIGNAL
+ - coredump: Limit what can interrupt coredumps
+ - kernel: allow fork with TIF_NOTIFY_SIGNAL pending
+ - entry/kvm: Exit to user mode when TIF_NOTIFY_SIGNAL is set
+ - arch: setup PF_IO_WORKER threads like PF_KTHREAD
+ - arch: ensure parisc/powerpc handle PF_IO_WORKER in copy_thread()
+ - [x86] process: setup io_threads more like normal user space threads
+ - kernel: stop masking signals in create_io_thread()
+ - kernel: don't call do_exit() for PF_IO_WORKER threads
+ - task_work: add helper for more targeted task_work canceling
+ - io_uring: import 5.15-stable io_uring
+ - signal: kill JOBCTL_TASK_WORK
+ - task_work: unconditionally run task_work from get_signal()
+ - net: remove cmsg restriction from io_uring based send/recvmsg calls
+ - Revert "proc: don't allow async path resolution of /proc/thread-self
+ components"
+ - Revert "proc: don't allow async path resolution of /proc/self components"
+ - eventpoll: add EPOLL_URING_WAKE poll wakeup flag
+ - eventfd: provide a eventfd_signal_mask() helper
+ - io_uring: pass in EPOLL_URING_WAKE for eventfd signaling and wakeups
+
+ [ Salvatore Bonaccorso ]
+ * linux-kbuild: Include scripts/pahole-flags.sh (Closes: #1008501)
+ * Bump ABI to 21
+ * Refresh "Export symbols needed by Android drivers"
+ * ASoC: Intel/SOF: use set_stream() instead of set_tdm_slots() for HDAudio
+ (Closes: #1027430, #1027483)
+ * ASoC/SoundWire: dai: expand 'stream' concept beyond SoundWire
+ (Closes: #1027430, #1027483)
+ * [rt] Update to 5.10.162-rt78
+ * i2c: ismt: Fix an out-of-bounds bug in ismt_access() (CVE-2022-2873)
+ * [x86] drm/vmwgfx: Validate the box size for the snooped cursor
+ (CVE-2022-36280)
+ * media: dvb-core: Fix UAF due to refcount races at releasing (CVE-2022-41218)
+ * net: sched: disallow noqueue for qdisc classes (CVE-2022-47929)
+ * ALSA: pcm: Move rwsem lock inside snd_ctl_elem_read to prevent UAF
+ (CVE-2023-0266)
+ * net: sched: cbq: dont intepret cls results when asked to drop
+ (CVE-2023-23454)
+ * net: sched: atm: dont intepret cls results when asked to drop
+ (CVE-2023-23455)
+ * netfilter: nft_payload: incorrect arithmetics when fetching VLAN header bits
+ (CVE-2023-0179)
+ * ipv6: raw: Deduct extension header length in rawv6_push_pending_frames
+ (CVE-2023-0394)
+ * [rt] arm64: make _TIF_WORK_MASK bits contiguous
+
+ [ Ben Hutchings ]
+ * Disable SECURITY_LOCKDOWN_LSM and MODULE_SIG where we don't sign code
+ (Closes: #825141)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 21 Jan 2023 15:35:48 +0100
+
+linux (5.10.158-2) bullseye; urgency=medium
+
+ * xen/netback: fix build warning
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Tue, 13 Dec 2022 21:46:50 +0100
+
+linux (5.10.158-1) bullseye; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.150
+ - ALSA: oss: Fix potential deadlock at unregistration
+ - ALSA: rawmidi: Drop register_mutex in snd_rawmidi_free()
+ - ALSA: usb-audio: Fix potential memory leaks
+ - ALSA: usb-audio: Fix NULL dererence at error path
+ - ALSA: hda/realtek: remove ALC289_FIXUP_DUAL_SPK for Dell 5530
+ - ALSA: hda/realtek: Correct pin configs for ASUS G533Z
+ - ALSA: hda/realtek: Add quirk for ASUS GV601R laptop
+ - ALSA: hda/realtek: Add Intel Reference SSID to support headset keys
+ - cifs: destage dirty pages before re-reading them for cache=none
+ - cifs: Fix the error length of VALIDATE_NEGOTIATE_INFO message
+ - iio: dac: ad5593r: Fix i2c read protocol requirements
+ - iio: ltc2497: Fix reading conversion results
+ - iio: adc: ad7923: fix channel readings for some variants
+ - iio: pressure: dps310: Refactor startup procedure
+ - iio: pressure: dps310: Reset chip after timeout
+ - usb: add quirks for Lenovo OneLink+ Dock
+ - can: kvaser_usb: Fix use of uninitialized completion
+ - can: kvaser_usb_leaf: Fix overread with an invalid command
+ - can: kvaser_usb_leaf: Fix TX queue out of sync after restart
+ - can: kvaser_usb_leaf: Fix CAN state after restart
+ - fs: dlm: fix race between test_bit() and queue_work()
+ - fs: dlm: handle -EBUSY first in lock arg validation
+ - HID: multitouch: Add memory barriers
+ - quota: Check next/prev free block number after reading from quota file
+ - [arm64,armhf] platform/chrome: cros_ec_proto: Update version on
+ GET_NEXT_EVENT failure
+ - [arm64] regulator: qcom_rpm: Fix circular deferral regression
+ - nvme-pci: set min_align_mask before calculating max_hw_sectors
+ - drm/virtio: Check whether transferred 2D BO is shmem
+ - drm/udl: Restore display mode on resume
+ - block: fix inflight statistics of part0
+ - mm/mmap: undo ->mmap() when arch_validate_flags() fails
+ - PCI: Sanitise firmware BAR assignments behind a PCI-PCI bridge
+ - [x86] powercap: intel_rapl: Use standard Energy Unit for SPR Dram RAPL
+ domain
+ - scsi: qedf: Populate sysfs attributes for vport
+ - fbdev: smscufx: Fix use-after-free in ufx_ops_open() (CVE-2022-41849)
+ - btrfs: fix race between quota enable and quota rescan ioctl
+ - f2fs: increase the limit for reserve_root
+ - f2fs: fix to do sanity check on destination blkaddr during recovery
+ - f2fs: fix to do sanity check on summary info
+ - jbd2: wake up journal waiters in FIFO order, not LIFO
+ - jbd2: fix potential buffer head reference count leak
+ - jbd2: fix potential use-after-free in jbd2_fc_wait_bufs
+ - jbd2: add miss release buffer head in fc_do_one_pass()
+ - ext4: avoid crash when inline data creation follows DIO write
+ - ext4: fix null-ptr-deref in ext4_write_info
+ - ext4: make ext4_lazyinit_thread freezable
+ - ext4: don't increase iversion counter for ea_inodes
+ - ext4: ext4_read_bh_lock() should submit IO if the buffer isn't uptodate
+ - ext4: place buffer head allocation before handle start
+ - ext4: fix miss release buffer head in ext4_fc_write_inode
+ - ext4: fix potential memory leak in ext4_fc_record_modified_inode()
+ - ext4: fix potential memory leak in ext4_fc_record_regions()
+ - ext4: update 'state->fc_regions_size' after successful memory allocation
+ - [amd64] livepatch: fix race between fork and KLP transition
+ - ftrace: Properly unset FTRACE_HASH_FL_MOD
+ - ring-buffer: Allow splice to read previous partially read pages
+ - ring-buffer: Have the shortest_full queue be the shortest not longest
+ - ring-buffer: Check pending waiters when doing wake ups as well
+ - ring-buffer: Add ring_buffer_wake_waiters()
+ - ring-buffer: Fix race between reset page and reading page
+ - tracing: Disable interrupt or preemption before acquiring arch_spinlock_t
+ - [x86] thunderbolt: Explicitly enable lane adapter hotplug events at
+ startup
+ - efi: libstub: drop pointless get_memory_map() call
+ - [arm64,armhf] media: cedrus: Set the platform driver data earlier
+ - [x86] KVM: x86/emulator: Fix handing of POP SS to correctly set
+ interruptibility
+ - [x86] KVM: nVMX: Unconditionally purge queued/injected events on nested
+ "exit"
+ - [x86] KVM: VMX: Drop bits 31:16 when shoving exception error code into
+ VMCS
+ - drm/nouveau/kms/nv140-: Disable interlacing
+ - drm/nouveau: fix a use-after-free in nouveau_gem_prime_import_sg_table()
+ - [x86] drm/i915: Fix watermark calculations for gen12+ RC CCS modifier
+ - [x86] drm/i915: Fix watermark calculations for gen12+ MC CCS modifier
+ - smb3: must initialize two ACL struct fields to zero
+ - selinux: use "grep -E" instead of "egrep"
+ - userfaultfd: open userfaultfds with O_RDONLY
+ - [armel,armhf] 9244/1: dump: Fix wrong pg_level in walk_pmd()
+ - [armel,armhf] 9247/1: mm: set readonly for MT_MEMORY_RO with ARM_LPAE
+ - objtool: Preserve special st_shndx indexes in elf_update_symbol
+ - nfsd: Fix a memory leak in an error handling path
+ - wifi: ath10k: add peer map clean up for peer delete in ath10k_sta_state()
+ - wifi: mac80211: allow bw change during channel switch in mesh
+ - bpftool: Fix a wrong type cast in btf_dumper_int
+ - [x86] resctrl: Fix to restore to original value when re-enabling hardware
+ prefetch register
+ - Bluetooth: btusb: Fine-tune mt7663 mechanism.
+ - Bluetooth: btusb: fix excessive stack usage
+ - Bluetooth: btusb: mediatek: fix WMT failure during runtime suspend
+ - wifi: rtl8xxxu: tighten bounds checking in rtl8xxxu_read_efuse()
+ - [arm64] spi: qup: add missing clk_disable_unprepare on error in
+ spi_qup_resume()
+ - [arm64] spi: qup: add missing clk_disable_unprepare on error in
+ spi_qup_pm_resume_runtime()
+ - wifi: rtl8xxxu: Fix skb misuse in TX queue selection
+ - [arm64,armhf] spi: meson-spicc: do not rely on busy flag in pow2 clk ops
+ - bpf: btf: fix truncated last_member_type_id in btf_struct_resolve
+ - wifi: rtl8xxxu: gen2: Fix mistake in path B IQ calibration
+ - wifi: rtl8xxxu: Remove copy-paste leftover in gen2_update_rate_mask
+ - bpf: Ensure correct locking around vulnerable function find_vpid()
+ - Bluetooth: hci_{ldisc,serdev}: check percpu_init_rwsem() failure
+ - wifi: ath11k: fix number of VHT beamformee spatial streams
+ - [x86] microcode/AMD: Track patch allocation size explicitly
+ - [x86] cpu: Include the header of init_ia32_feat_ctl()'s prototype
+ - Bluetooth: hci_core: Fix not handling link timeouts propertly
+ - netfilter: nft_fib: Fix for rpath check with VRF devices
+ - wifi: rtl8xxxu: Fix AIFS written to REG_EDCA_*_PARAM
+ - vhost/vsock: Use kvmalloc/kvfree for larger packets.
+ - mISDN: fix use-after-free bugs in l1oip timer handlers (CVE-2022-3565)
+ - sctp: handle the error returned from sctp_auth_asoc_init_active_key
+ - tcp: fix tcp_cwnd_validate() to not forget is_cwnd_limited
+ - spi: Ensure that sg_table won't be used after being freed
+ - net: rds: don't hold sock lock when cancelling work from
+ rds_tcp_reset_callbacks()
+ - bnx2x: fix potential memory leak in bnx2x_tpa_stop() (CVE-2022-3542)
+ - net/ieee802154: reject zero-sized raw_sendmsg()
+ - once: add DO_ONCE_SLOW() for sleepable contexts
+ - [arm64,armhf] net: mvpp2: fix mvpp2 debugfs leak (CVE-2022-3535)
+ - [arm64] drm: bridge: adv7511: fix CEC power down control register offset
+ - drm/bridge: Avoid uninitialized variable warning
+ - drm/mipi-dsi: Detach devices when removing the host
+ - drm/dp_mst: fix drm_dp_dpcd_read return value checks
+ - [x86] platform/chrome: fix double-free in chromeos_laptop_prepare()
+ - [arm64] platform/chrome: fix memory corruption in ioctl
+ - [x86] platform/x86: msi-laptop: Fix old-ec check for backlight registering
+ - [x86] platform/x86: msi-laptop: Fix resource cleanup
+ - ALSA: hda: beep: Simplify keep-power-at-enable behavior
+ - [armhf] drm/omap: dss: Fix refcount leak bugs
+ - [armhf] ASoC: eureka-tlv320: Hold reference returned from of_find_xxx API
+ - [arm64] drm/msm/dpu: index dpu_kms->hw_vbif using vbif_idx
+ - [arm64] drm/msm/dp: correct 1.62G link rate at
+ dp_catalog_ctrl_config_msa()
+ - ASoC: da7219: Fix an error handling path in da7219_register_dai_clks()
+ - [arm*] ALSA: dmaengine: increment buffer pointer atomically
+ - [armhf] mmc: wmt-sdmmc: Fix an error handling path in wmt_mci_probe()
+ - ALSA: hda/hdmi: Don't skip notification handling during PM operation
+ - [armel,armhf] memory: pl353-smc: Fix refcount leak bug in
+ pl353_smc_probe()
+ - [armhf] memory: of: Fix refcount leak bug in of_get_ddr_timings()
+ - [armhf] memory: of: Fix refcount leak bug in of_lpddr3_get_ddr_timings()
+ - [armhf] dts: turris-omnia: Fix mpp26 pin name and comment
+ - [arm64] ftrace: fix module PLTs with mcount
+ - [armhf] dts: exynos: fix polarity of VBUS GPIO of Origen
+ - iio: inkern: only release the device node when done with it
+ - iio: ABI: Fix wrong format of differential capacitance channel ABI.
+ - usb: ch9: Add USB 3.2 SSP attributes
+ - usb: common: Parse for USB SSP genXxY
+ - usb: common: add function to get interval expressed in us unit
+ - usb: common: move function's kerneldoc next to its definition
+ - usb: common: debug: Check non-standard control requests
+ - [arm64,armhf] clk: meson: Hold reference returned by of_get_parent()
+ - [arm64] clk: qoriq: Hold reference returned by of_get_parent()
+ - [arm64] clk: tegra: Fix refcount leak in tegra210_clock_init
+ - [arm64] clk: tegra: Fix refcount leak in tegra114_clock_init
+ - [armhf] HSI: omap_ssi: Fix refcount leak in ssi_probe
+ - [armhf] HSI: omap_ssi_port: Fix dma_map_sg error check
+ - [arm64] tty: xilinx_uartps: Fix the ignore_status
+ - RDMA/rxe: Fix "kernel NULL pointer dereference" error
+ - RDMA/rxe: Fix the error caused by qp->sk
+ - ata: fix ata_id_sense_reporting_enabled() and ata_id_has_sense_reporting()
+ - ata: fix ata_id_has_devslp()
+ - ata: fix ata_id_has_ncq_autosense()
+ - ata: fix ata_id_has_dipm()
+ - md: Replace snprintf with scnprintf
+ - md/raid5: Ensure stripe_fill happens on non-read IO with journal
+ - RDMA/cm: Use SLID in the work completion as the DLID in responder side
+ - IB: Set IOVA/LENGTH on IB_MR in core/uverbs layers
+ - xhci: Don't show warning for reinit on known broken suspend
+ - usb: gadget: function: fix dangling pnp_string in f_printer.c
+ - drivers: serial: jsm: fix some leaks in probe
+ - serial: 8250: Add an empty line and remove some useless {}
+ - serial: 8250: Toggle IER bits on only after irq has been set up
+ - [arm64] tty: serial: fsl_lpuart: disable dma rx/tx use flags in
+ lpuart_dma_shutdown
+ - [arm64] phy: qualcomm: call clk_disable_unprepare in the error handling
+ - serial: 8250: Fix restoring termios speed after suspend
+ - scsi: libsas: Fix use-after-free bug in smp_execute_task_sg()
+ - scsi: iscsi: iscsi_tcp: Fix null-ptr-deref while calling getpeername()
+ - [armhf] fsi: core: Check error number after calling ida_simple_get
+ - [x86] mfd: intel_soc_pmic: Fix an error handling path in
+ intel_soc_pmic_i2c_probe()
+ - [mips*] mfd: sm501: Add check for platform_driver_register()
+ - [amd64] dmaengine: ioat: stop mod_timer from resurrecting deleted timer in
+ __cleanup()
+ - [arm64] spmi: pmic-arb: correct duplicate APID to PPID mapping logic
+ - [arm*] clk: bcm2835: fix bcm2835_clock_rate_from_divisor declaration
+ - [armhf] clk: ti: dra7-atl: Fix reference leak in of_dra7_atl_clk_probe
+ - [armhf] clk: ast2600: BCLK comes from EPLL
+ - [powerpc*] pci_dn: Add missing of_node_put()
+ - [powerpc*] powernv: add missing of_node_put() in opal_export_attrs()
+ - [x86] hyperv: Fix 'struct hv_enlightened_vmcs' definition
+ - [powerpc*] 64s: Fix GENERIC_CPU build flags for PPC970 / G5
+ - [armhf] hwrng: imx-rngc - Moving IRQ handler registering after
+ imx_rngc_irq_mask_clear()
+ - cgroup/cpuset: Enable update_tasks_cpumask() on top_cpuset
+ - crypto: akcipher - default implementation for setting a private key
+ - [x86] crypto: ccp - Release dma channels before dmaengine unrgister
+ - [arm64] crypto: inside-secure - Change swab to swab32
+ - [x86] crypto: qat - fix use of 'dma_map_single'
+ - [x86] crypto: qat - use pre-allocated buffers in datapath
+ - [x86] crypto: qat - fix DMA transfer direction
+ - tracing: kprobe: Fix kprobe event gen test module on exit
+ - tracing: kprobe: Make gen test module work in arm and riscv
+ - [arm64] crypto: cavium - prevent integer overflow loading firmware
+ - [arm64] thermal/drivers/qcom/tsens-v0_1: Fix MSM8939 fourth sensor hw_id
+ - ACPI: APEI: do not add task_work to kernel thread to avoid memory leak
+ - f2fs: fix race condition on setting FI_NO_EXTENT flag
+ - f2fs: fix to avoid REQ_TIME and CP_TIME collision
+ - f2fs: fix to account FS_CP_DATA_IO correctly
+ - rcu: Back off upon fill_page_cache_func() allocation failure
+ - rcu-tasks: Convert RCU_LOCKDEP_WARN() to WARN_ONCE()
+ - [x86] ACPI: video: Add Toshiba Satellite/Portege Z830 quirk
+ - [x86] powercap: intel_rapl: fix UBSAN shift-out-of-bounds issue
+ - [x86] thermal: intel_powerclamp: Use get_cpu() instead of
+ smp_processor_id() to avoid crash
+ - NFSD: Return nfserr_serverfault if splice_ok but buf->pages have data
+ - NFSD: fix use-after-free on source server when doing inter-server copy
+ - wifi: brcmfmac: fix invalid address access when enabling SCAN log level
+ - bpftool: Clear errno after libcap's checks
+ - openvswitch: Fix double reporting of drops in dropwatch
+ - openvswitch: Fix overreporting of drops in dropwatch
+ - tcp: annotate data-race around tcp_md5sig_pool_populated
+ - wifi: ath9k: avoid uninit memory read in ath9k_htc_rx_msg()
+ - xfrm: Update ipcomp_scratches with NULL when freed
+ - wifi: brcmfmac: fix use-after-free bug in brcmf_netdev_start_xmit()
+ - regulator: core: Prevent integer underflow
+ - Bluetooth: L2CAP: initialize delayed works at l2cap_chan_create()
+ - Bluetooth: hci_sysfs: Fix attempting to call device_add multiple times
+ - can: bcm: check the result of can_send() in bcm_can_tx()
+ - wifi: rt2x00: don't run Rt5592 IQ calibration on MT7620
+ - wifi: rt2x00: set correct TX_SW_CFG1 MAC register for MT7620
+ - wifi: rt2x00: set VGC gain for both chains of MT7620
+ - wifi: rt2x00: set SoC wmac clock register
+ - wifi: rt2x00: correctly set BBP register 86 for MT7620
+ - net: If sock is dead don't access sock's sk_wq in sk_stream_wait_memory
+ - Bluetooth: L2CAP: Fix user-after-free
+ - r8152: Rate limit overflow messages (CVE-2022-3594)
+ - drm/nouveau/nouveau_bo: fix potential memory leak in nouveau_bo_alloc()
+ - drm: Use size_t type for len variable in drm_copy_field()
+ - drm: Prevent drm_copy_field() to attempt copying a NULL pointer
+ - drm/amd/display: fix overflow on MIN_I64 definition
+ - [arm64,armhf] drm: bridge: dw_hdmi: only trigger hotplug event on link
+ change
+ - [arm*] drm/vc4: vec: Fix timings for VEC modes
+ - drm: panel-orientation-quirks: Add quirk for Anbernic Win600
+ - [arm64,armhf] platform/chrome: cros_ec: Notify the PM of wake events
+ during resume
+ - [x86] platform/x86: msi-laptop: Change DMI match / alias strings to fix
+ module autoloading
+ - [x86] ASoC: SOF: pci: Change DMI match info to support all Chrome
+ platforms
+ - drm/amdgpu: fix initial connector audio value
+ - [arm64] drm/meson: explicitly remove aggregate driver at module unload
+ time
+ - [arm64] mmc: sdhci-msm: add compatible string check for sdm670
+ - drm/dp: Don't rewrite link config when setting phy test pattern
+ - drm/amd/display: Remove interface for periodic interrupt 1
+ - btrfs: scrub: try to fix super block errors
+ - [arm64] clk: zynqmp: Fix stack-out-of-bounds in strncpy`
+ - media: cx88: Fix a null-ptr-deref bug in buffer_prepare()
+ - [arm64] clk: zynqmp: pll: rectify rate rounding in zynqmp_pll_round_rate
+ - usb: host: xhci-plat: suspend and resume clocks
+ - usb: host: xhci-plat: suspend/resume clks for brcm
+ - scsi: 3w-9xxx: Avoid disabling device if failing to enable it
+ - nbd: Fix hung when signal interrupts nbd_start_device_ioctl()
+ - blk-throttle: prevent overflow while calculating wait time
+ - ata: libahci_platform: Sanity check the DT child nodes number
+ - bcache: fix set_at_max_writeback_rate() for multiple attached devices
+ - soundwire: cadence: Don't overwrite msg->buf during write commands
+ - soundwire: intel: fix error handling on dai registration issues
+ - HID: roccat: Fix use-after-free in roccat_read() (CVE-2022-41850)
+ - md/raid5: Wait for MD_SB_CHANGE_PENDING in raid5d
+ - usb: host: xhci: Fix potential memory leak in xhci_alloc_stream_info()
+ - [arm64,armhf] usb: musb: Fix musb_gadget.c rxstate overflow bug
+ - Revert "usb: storage: Add quirk for Samsung Fit flash"
+ - staging: rtl8723bs: fix a potential memory leak in rtw_init_cmd_priv()
+ - nvme: copy firmware_rev on each init
+ - nvmet-tcp: add bounds check on Transfer Tag
+ - usb: idmouse: fix an uninit-value in idmouse_open
+ - [arm*] clk: bcm2835: Make peripheral PLLC critical
+ - [arm64] topology: fix possible overflow in amu_fie_setup()
+ - io_uring: correct pinned_vm accounting
+ - mm: hugetlb: fix UAF in hugetlb_handle_userfault
+ - net: ieee802154: return -EINVAL for unknown addr type
+ - Revert "net/ieee802154: reject zero-sized raw_sendmsg()"
+ - net/ieee802154: don't warn zero-sized raw_sendmsg()
+ - Revert "drm/amdgpu: use dirty framebuffer helper" (Closes: #1022806)
+ - ext4: continue to expand file system when the target size doesn't reach
+ - inet: fully convert sk->sk_rx_dst to RCU rules
+ - [x86] thermal: intel_powerclamp: Use first online CPU as control_cpu
+ - f2fs: fix wrong condition to trigger background checkpoint correctly
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.151
+ - bpf: Generate BTF_KIND_FLOAT when linking vmlinux
+ - kbuild: Quote OBJCOPY var to avoid a pahole call break the build
+ - kbuild: skip per-CPU BTF generation for pahole v1.18-v1.21
+ - kbuild: Unify options for BTF generation for vmlinux and modules
+ - kbuild: Add skip_encoding_btf_enum64 option to pahole
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.152
+ - ocfs2: clear dinode links count in case of error
+ - ocfs2: fix BUG when iput after ocfs2_mknod fails
+ - selinux: enable use of both GFP_KERNEL and GFP_ATOMIC in convert_context()
+ - [x86] microcode/AMD: Apply the patch early on every logical thread
+ - [x86] hwmon/coretemp: Handle large core ID value
+ - [armhf] ata: ahci-imx: Fix MODULE_ALIAS
+ - ata: ahci: Match EM_MAX_SLOTS with SATA_PMP_MAX_PORTS
+ - kvm: Add support for arch compat vm ioctls
+ - [arm64] KVM: arm64: vgic: Fix exit condition in scan_its_table()
+ - media: mceusb: set timeout to at least timeout provided
+ - [arm64] media: venus: dec: Handle the case where find_format fails
+ - block: wbt: Remove unnecessary invoking of wbt_update_limits in wbt_init
+ - blk-wbt: call rq_qos_add() after wb_normal is initialized
+ - [arm64] errata: Remove AES hwcap for COMPAT tasks
+ - r8152: add PID for the Lenovo OneLink+ Dock
+ - btrfs: fix processing of delayed data refs during backref walking
+ - btrfs: fix processing of delayed tree block refs during backref walking
+ - ACPI: extlog: Handle multiple records
+ - tipc: Fix recognition of trial period
+ - tipc: fix an information leak in tipc_topsrv_kern_subscr
+ - i40e: Fix DMA mappings leak
+ - HID: magicmouse: Do not set BTN_MOUSE on double report
+ - sfc: Change VF mac via PF as first preference if available.
+ - net/atm: fix proc_mpc_write incorrect return value
+ - net: phy: dp83867: Extend RX strap quirk for SGMII mode
+ - cifs: Fix xid leak in cifs_copy_file_range()
+ - cifs: Fix xid leak in cifs_flock()
+ - cifs: Fix xid leak in cifs_ses_add_channel()
+ - nvme-hwmon: rework to avoid devm allocation
+ - nvme-hwmon: Return error code when registration fails
+ - nvme-hwmon: consistently ignore errors from nvme_hwmon_init
+ - nvme-hwmon: kmalloc the NVME SMART log buffer
+ - net: sched: cake: fix null pointer access issue when cake_init() fails
+ - net: sched: delete duplicate cleanup of backlog and qlen
+ - net: sched: sfb: fix null pointer access issue when sfb_init() fails
+ - sfc: include vport_id in filter spec hash and equal()
+ - [arm64] net: hns: fix possible memory leak in hnae_ae_register()
+ - net: sched: fix race condition in qdisc_graft()
+ - net: phy: dp83822: disable MDI crossover status change interrupt
+ - [amd64] iommu/vt-d: Allow NVS regions in arch_rmrr_sanity_check()
+ - [amd64] iommu/vt-d: Clean up si_domain in the init_dmars() error path
+ - drm/virtio: Use appropriate atomic state in virtio_gpu_plane_cleanup_fb()
+ - [armhf] dmaengine: mxs-dma: Remove the unused .id_table
+ - [armhf] dmaengine: mxs: use platform_driver_register
+ - tracing: Simplify conditional compilation code in tracing_set_tracer()
+ - tracing: Do not free snapshot if tracer is on cmdline
+ - xen: assume XENFEAT_gnttab_map_avail_bits being set for pv guests
+ - xen/gntdev: Accommodate VMA splitting
+ - [arm64,armhf] mmc: sdhci-tegra: Use actual clock rate for SW tuning
+ correction
+ - fcntl: make F_GETOWN(EX) return 0 on dead owner task
+ - fcntl: fix potential deadlocks for &fown_struct.lock
+ - [arm64] topology: move store_cpu_topology() to shared code
+ - [x86] hv_netvsc: Fix race between VF offering and VF association message
+ from host
+ - ACPI: video: Force backlight native for more TongFang devices
+ - mmc: core: Add SD card quirk for broken discard
+ - blk-wbt: fix that 'rwb->wc' is always set to 1 in wbt_init()
+ - mm: /proc/pid/smaps_rollup: fix no vma's null-deref
+ - udp: Update reuse->has_conns under reuseport_lock.
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.153
+ - can: j1939: transport: j1939_session_skb_drop_old():
+ spin_unlock_irqrestore() before kfree_skb()
+ - can: kvaser_usb: Fix possible completions during init_completion
+ - ALSA: Use del_timer_sync() before freeing timer
+ - ALSA: au88x0: use explicitly signed char
+ - ALSA: rme9652: use explicitly signed char
+ - USB: add RESET_RESUME quirk for NVIDIA Jetson devices in RCM
+ - [arm64,armhf] usb: dwc3: gadget: Stop processing more requests on IMI
+ - [arm64,armhf] usb: dwc3: gadget: Don't set IMI for no_interrupt
+ - usb: xhci: add XHCI_SPURIOUS_SUCCESS to ASM1042 despite being a V0.96
+ controller
+ - [armhf] mtd: rawnand: marvell: Use correct logic for nand-keep-config
+ - xhci: Add quirk to reset host back to default state at shutdown
+ - xhci: Remove device endpoints from bandwidth list when freeing the device
+ - iio: light: tsl2583: Fix module unloading
+ - iio: temperature: ltc2983: allocate iio channels once
+ - fbdev: smscufx: Fix several use-after-free bugs
+ - fs/binfmt_elf: Fix memory leak in load_elf_binary()
+ - exec: Copy oldsighand->action under spin-lock
+ - mac802154: Fix LQI recording
+ - scsi: qla2xxx: Use transport-defined speed mask for supported_speeds
+ - [arm64] drm/msm/dsi: fix memory corruption with too many bridges
+ - [arm64] drm/msm/hdmi: fix memory corruption with too many bridges
+ - [arm64] drm/msm/dp: fix IRQ lifetime
+ - mmc: core: Fix kernel panic when remove non-standard SDIO card
+ - kernfs: fix use-after-free in __kernfs_remove
+ - [s390x] futex: add missing EX_TABLE entry to __futex_atomic_op()
+ - [s390x] pci: add missing EX_TABLE entries to
+ __pcistg_mio_inuser()/__pcilg_mio_inuser()
+ - Xen/gntdev: don't ignore kernel unmapping error
+ - xen/gntdev: Prevent leaking grants
+ - mm/memory: add non-anonymous page check in the copy_present_page()
+ - mm,hugetlb: take hugetlb_lock before decrementing h->resv_huge_pages
+ - net: ieee802154: fix error return code in dgram_bind()
+ - media: v4l2: Fix v4l2_i2c_subdev_set_name function documentation
+ - [arm64] drm/msm: Fix return type of mdp4_lvds_connector_mode_valid
+ - [arm64] ASoC: qcom: lpass-cpu: mark HDMI TX registers as volatile
+ - [arm64] ASoC: qcom: lpass-cpu: Mark HDMI TX parity register as volatile
+ - ALSA: ac97: fix possible memory leak in snd_ac97_dev_register()
+ - [x86] perf/x86/intel/lbr: Use setup_clear_cpu_cap() instead of
+ clear_cpu_cap()
+ - tipc: fix a null-ptr-deref in tipc_topsrv_accept
+ - [arm64] net: netsec: fix error handling in netsec_register_mdio()
+ - net: hinic: fix incorrect assignment issue in hinic_set_interrupt_cfg()
+ - net: hinic: fix memory leak when reading function table
+ - net: hinic: fix the issue of CMDQ memory leaks
+ - net: hinic: fix the issue of double release MBOX callback of VF
+ - [x86] unwind/orc: Fix unreliable stack dump with gcov
+ - [amd64,arm64] amd-xgbe: fix the SFP compliance codes check for DAC cables
+ - [amd64,arm64] amd-xgbe: add the bit rate quirk for Molex cables
+ - [amd64,arm64] atlantic: fix deadlock at aq_nic_stop
+ - net: fix UAF issue in nfqnl_nf_hook_drop() when ops_init() failed
+ - tcp: minor optimization in tcp_add_backlog()
+ - tcp: fix a signed-integer-overflow bug in tcp_add_backlog()
+ - tcp: fix indefinite deferral of RTO with SACK reneging
+ - can: mcp251x: mcp251x_can_probe(): add missing unregister_candev() in
+ error path
+ - PM: hibernate: Allow hybrid sleep to work with s2idle
+ - media: vivid: s_fbuf: add more sanity checks
+ - media: vivid: dev->bitmap_cap wasn't freed in all cases
+ - media: v4l2-dv-timings: add sanity checks for blanking values
+ - media: videodev2.h: V4L2_DV_BT_BLANKING_HEIGHT should check 'interlaced'
+ - media: vivid: set num_in/outputs to 0 if not supported
+ - ipv6: ensure sane device mtu in tunnels
+ - i40e: Fix ethtool rx-flow-hash setting for X722
+ - i40e: Fix VF hang when reset is triggered on another VF
+ - i40e: Fix flow-type by setting GL_HASH_INSET registers
+ - net: ksz884x: fix missing pci_disable_device() on error in pcidev_init()
+ - PM: domains: Fix handling of unavailable/disabled idle states
+ - [arm64,armhf] net: fec: limit register access on i.MX6UL
+ - openvswitch: switch from WARN to pr_warn
+ - nh: fix scope used to find saddr when adding non gw nh
+ - net/mlx5e: Do not increment ESN when updating IPsec ESN state
+ - net/mlx5: Fix possible use-after-free in async command interface
+ - net/mlx5: Fix crash during sync firmware reset
+ - [arm64] net: enetc: survive memory pressure without crashing
+ - [arm64] Add AMPERE1 to the Spectre-BHB affected list
+ - scsi: sd: Revert "scsi: sd: Remove a local variable"
+ - [arm64] mm: Fix __enable_mmu() for new TGRAN range values
+ - [arm64] kexec: Test page size support with new TGRAN range values
+ - serial: core: move RS485 configuration tasks from drivers into core
+ - serial: Deassert Transmit Enable on probe in driver-specific way
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.154
+ - serial: 8250: Let drivers request full 16550A feature probing
+ - [x86] KVM: nVMX: Pull KVM L0's desired controls directly from vmcs01
+ - [x86] KVM: nVMX: Don't propagate vmcs12's PERF_GLOBAL_CTRL settings to
+ vmcs02
+ - [x86] KVM: x86: Trace re-injected exceptions
+ - [x86] KVM: x86: Treat #DBs from the emulator as fault-like (code and
+ DR7.GD=1)
+ - [x86] topology: Set cpu_die_id only if DIE_TYPE found
+ - [x86] topology: Fix multiple packages shown on a single-package system
+ - [x86] topology: Fix duplicated core ID within a package
+ - [x86] KVM: x86: Protect the unused bits in MSR exiting flags
+ - [x86] KVM: x86: Copy filter arg outside kvm_vm_ioctl_set_msr_filter()
+ - [x86] KVM: x86: Add compat handler for KVM_X86_SET_MSR_FILTER
+ - RDMA/cma: Use output interface for net_dev check
+ - [amd64] IB/hfi1: Correctly move list in sc_disable()
+ - NFSv4: Fix a potential state reclaim deadlock
+ - NFSv4.1: Handle RECLAIM_COMPLETE trunking errors
+ - NFSv4.1: We must always send RECLAIM_COMPLETE after a reboot
+ - nfs4: Fix kmemleak when allocate slot failed
+ - RDMA/core: Fix null-ptr-deref in ib_core_cleanup()
+ - RDMA/qedr: clean up work queue on failure in qedr_alloc_resources()
+ - [arm64,armhf] net: fec: fix improper use of NETDEV_TX_BUSY
+ - [i386] ata: pata_legacy: fix pdc20230_set_piomode()
+ - net: sched: Fix use after free in red_enqueue()
+ - net: tun: fix bugs for oversize packet when napi frags enabled
+ - netfilter: nf_tables: release flow rule object from commit path
+ - ipvs: use explicitly signed chars
+ - ipvs: fix WARNING in __ip_vs_cleanup_batch()
+ - ipvs: fix WARNING in ip_vs_app_net_cleanup()
+ - rose: Fix NULL pointer dereference in rose_send_frame()
+ - mISDN: fix possible memory leak in mISDN_register_device()
+ - btrfs: fix inode list leak during backref walking at
+ resolve_indirect_refs()
+ - btrfs: fix inode list leak during backref walking at find_parent_nodes()
+ - btrfs: fix ulist leaks in error paths of qgroup self tests
+ - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_reassemble_sdu
+ (CVE-2022-3564)
+ - Bluetooth: L2CAP: fix use-after-free in l2cap_conn_del() (CVE-2022-3640)
+ - net: mdio: fix undefined behavior in bit shift for __mdiobus_register
+ - net, neigh: Fix null-ptr-deref in neigh_table_clear()
+ - ipv6: fix WARNING in ip6_route_net_exit_late()
+ - [arm64] drm/msm/hdmi: Remove spurious IRQF_ONESHOT flag
+ - [arm64] drm/msm/hdmi: fix IRQ lifetime
+ - [arm64,armhf] mmc: sdhci-esdhc-imx: Propagate ESDHC_FLAG_HS400* only on
+ 8bit bus
+ - mmc: sdhci-pci: Avoid comma separated statements
+ - mmc: sdhci-pci-core: Disable ES for ASUS BIOS on Jasper Lake
+ - xhci-pci: Set runtime PM as default policy on all xHC 1.2 or later devices
+ - [s390x] boot: add secure boot trailer
+ - media: dvb-frontends/drxk: initialize err to 0
+ - ACPI: APEI: Fix integer overflow in ghes_estatus_pool_init()
+ - scsi: core: Restrict legal sdev_state transitions via sysfs
+ - HID: saitek: add madcatz variant of MMO7 mouse device ID
+ - drm/amdgpu: set vm_update_mode=0 as default for Sienna Cichlid in SRIOV
+ case
+ - efi/tpm: Pass correct address to memblock_reserve
+ - i2c: piix4: Fix adapter not be removed in piix4_remove()
+ - Bluetooth: L2CAP: Fix accepting connection request for invalid SPSM
+ (CVE-2022-42896)
+ - Bluetooth: L2CAP: Fix attempting to access uninitialized memory
+ (CVE-2022-42895)
+ - block, bfq: protect 'bfqd->queued' by 'bfqd->lock'
+ - ALSA: usb-audio: Add quirks for MacroSilicon MS2100/MS2106 devices
+ - fscrypt: simplify master key locking
+ - fscrypt: stop using keyrings subsystem for fscrypt_master_key
+ - fscrypt: fix keyring memory leak on mount failure
+ - tcp/udp: Fix memory leak in ipv6_renew_options(). (CVE-2022-3524)
+ - [armhf] mtd: rawnand: gpmi: Set WAIT_FOR_READY timeout based on
+ program/erase times
+ - memcg: enable accounting of ipc resources (CVE-2021-3759)
+ - [arm*] binder: fix UAF of alloc->vma in race with munmap()
+ - btrfs: fix type of parameter generation in btrfs_get_dentry
+ - ftrace: Fix use-after-free for dynamic ftrace_ops
+ - tcp/udp: Make early_demux back namespacified.
+ - tracing: kprobe: Fix memory leak in test_gen_kprobe/kretprobe_cmd()
+ - kprobe: reverse kp->flags when arm_kprobe failed
+ - tracing/histogram: Update document for KEYS_MAX size
+ - capabilities: fix potential memleak on error path from
+ vfs_getxattr_alloc()
+ - fuse: add file_modified() to fallocate
+ - efi: random: reduce seed size to 32 bytes
+ - efi: random: Use 'ACPI reclaim' memory for random seed
+ - [x86] perf/x86/intel: Fix pebs event constraints for ICL
+ - [x86] perf/x86/intel: Add Cooper Lake stepping to isolation_ucodes[]
+ - ext4: fix warning in 'ext4_da_release_space'
+ - ext4: fix BUG_ON() when directory entry has invalid rec_len
+ - [x86] KVM: x86: Mask off reserved bits in CPUID.80000006H
+ - [x86] KVM: x86: Mask off reserved bits in CPUID.8000001AH
+ - [x86] KVM: x86: Mask off reserved bits in CPUID.80000008H
+ - [x86] KVM: x86: Mask off reserved bits in CPUID.80000001H
+ - [x86] KVM: x86: emulator: em_sysexit should update ctxt->mode
+ - [x86] KVM: x86: emulator: introduce emulator_recalc_and_set_mode
+ - [x86] KVM: x86: emulator: update the emulation mode after CR0 write
+ - ext4,f2fs: fix readahead of verity data
+ - [arm64,armhf] drm/rockchip: dsi: Force synchronous probe
+ - [x86] drm/i915/sdvo: Filter out invalid outputs more sensibly
+ - [x86] drm/i915/sdvo: Setup DDC fully before output init
+ - wifi: brcmfmac: Fix potential buffer overflow in brcmf_fweh_event_worker()
+ (CVE-2022-3628)
+ - ipc: remove memcg accounting for sops objects in do_semtimedop()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.155
+ - fuse: fix readdir cache race
+ - [armhf] phy: stm32: fix an error code in probe
+ - wifi: cfg80211: silence a sparse RCU warning
+ - wifi: cfg80211: fix memory leak in query_regdb_file()
+ - bpf, sockmap: Fix the sk->sk_forward_alloc warning of
+ sk_stream_kill_queues
+ - bpftool: Fix NULL pointer dereference when pin {PROG, MAP, LINK} without
+ FILE
+ - [x86] HID: hyperv: fix possible memory leak in mousevsc_probe()
+ - bpf: Support for pointers beyond pkt_end.
+ - bpf: Add helper macro bpf_for_each_reg_in_vstate
+ - bpf: Fix wrong reg type conversion in release_reference()
+ - net: gso: fix panic on frag_list with mixed head alloc types
+ - macsec: delete new rxsc when offload fails
+ - macsec: fix secy->n_rx_sc accounting
+ - macsec: fix detection of RXSCs when toggling offloading
+ - macsec: clear encryption keys from the stack after setting up offload
+ - net: tun: Fix memory leaks of napi_get_frags
+ - bnxt_en: Fix possible crash in bnxt_hwrm_set_coal()
+ - bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer
+ - capabilities: fix undefined behavior in bit shift for CAP_TO_MASK
+ - [s390x] KVM: s390x: fix SCK locking
+ - [s390x] KVM: s390: pv: don't allow userspace to set the clock under PV
+ - hamradio: fix issue of dev reference count leakage in bpq_device_event()
+ - [arm*] drm/vc4: Fix missing platform_unregister_drivers() call in
+ vc4_drm_register()
+ - tcp: prohibit TCP_REPAIR_OPTIONS if data was already sent
+ - ipv6: addrlabel: fix infoleak when sending struct ifaddrlblmsg to network
+ - can: af_can: fix NULL pointer dereference in can_rx_register()
+ - [arm64,armhf] net: stmmac: dwmac-meson8b: fix
+ meson8b_devm_clk_prepare_enable()
+ - tipc: fix the msg->req tlv len check in
+ tipc_nl_compat_name_table_dump_header
+ - [arm64] dmaengine: mv_xor_v2: Fix a resource leak in mv_xor_v2_remove()
+ - [arm64] drivers: net: xgene: disable napi when register irq failed in
+ xgene_enet_open()
+ - net/mlx5: Allow async trigger completion execution on single CPU systems
+ - net/mlx5e: E-Switch, Fix comparing termination table instance
+ - [armhf] net: cpsw: disable napi in cpsw_ndo_open()
+ - net: cxgb3_main: disable napi when bind qsets failed in cxgb_up()
+ - cxgb4vf: shut down the adapter when t4vf_update_port_info() failed in
+ cxgb4vf_open()
+ - net: phy: mscc: macsec: clear encryption keys when freeing a flow
+ - [amd64,arm64] net: atlantic: macsec: clear encryption keys from the stack
+ - ethernet: s2io: disable napi when start nic failed in s2io_card_up()
+ - [armel,armhf] net: mv643xx_eth: disable napi when init rxq or txq failed
+ in mv643xx_eth_open()
+ - net: macvlan: fix memory leaks of macvlan_common_newlink
+ - [arm64] efi: Fix handling of misaligned runtime regions and drop warning
+ - [mips*] jump_label: Fix compat branch range check
+ - [arm64] mmc: sdhci-of-arasan: Fix SDHCI_RESET_ALL for CQHCI
+ - [arm64,armhf] mmc: sdhci-tegra: Fix SDHCI_RESET_ALL for CQHCI
+ - ALSA: hda/hdmi - enable runtime pm for more AMD display audio
+ - ALSA: hda/ca0132: add quirk for EVGA Z390 DARK
+ - ALSA: hda: fix potential memleak in 'add_widget_node'
+ - ALSA: hda/realtek: Add Positivo C6300 model quirk
+ - ALSA: usb-audio: Add quirk entry for M-Audio Micro
+ - ALSA: usb-audio: Add DSD support for Accuphase DAC-60
+ - vmlinux.lds.h: Fix placement of '.data..decrypted' section
+ - ata: libata-scsi: fix SYNCHRONIZE CACHE (16) command failure
+ - nilfs2: fix deadlock in nilfs_count_free_blocks()
+ - nilfs2: fix use-after-free bug of ns_writer on remount
+ - [x86] drm/i915/dmabuf: fix sg_table handling in map_dma_buf
+ - [x86] platform/x86: hp_wmi: Fix rfkill causing soft blocked wifi
+ - [arm64,armhf] mms: sdhci-esdhc-imx: Fix SDHCI_RESET_ALL for CQHCI
+ - udf: Fix a slab-out-of-bounds write bug in udf_find_entry()
+ - mm/memremap.c: map FS_DAX device memory as decrypted
+ - can: j1939: j1939_send_one(): fix missing CAN header initialization
+ - net: tun: call napi_schedule_prep() to ensure we own a napi
+ - [arm64,armhf] mmc: sdhci-esdhc-imx: Convert the driver to DT-only
+ - [x86] cpu: Restore AMD's DE_CFG MSR after resume
+ - io_uring: kill goto error handling in io_sqpoll_wait_sq()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.156
+ - drm/amd/display: Remove wrong pipe control lock
+ - NFSv4: Retry LOCK on OLD_STATEID during delegation return
+ - [arm64,armhf] i2c: tegra: Allocate DMA memory for DMA engine
+ - [x86] i2c: i801: add lis3lv02d's I2C address for Vostro 5568
+ - btrfs: remove pointless and double ulist frees in error paths of qgroup
+ tests
+ - Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm
+ - ALSA: hda/realtek: fix speakers and micmute on HP 855 G8
+ - [x86] mtd: spi-nor: intel-spi: Disable write protection only if asked
+ - [arm64,armhf] mmc: sdhci-esdhc-imx: use the correct host caps for
+ MMC_CAP_8_BIT_DATA
+ - drm/amd/pm: support power source switch on Sienna Cichlid
+ - drm/amd/pm: Read BIF STRAP also for BACO check
+ - drm/amd/pm: disable BACO entry/exit completely on several sienna cichlid
+ cards
+ - drm/amdgpu: disable BACO on special BEIGE_GOBY card
+ - [armhf] spi: stm32: Print summary 'callbacks suppressed' message
+ - ASoC: core: Fix use-after-free in snd_soc_exit()
+ - serial: 8250: Remove serial_rs485 sanitization from em485
+ - [arm64,armhf] serial: imx: Add missing .thaw_noirq hook
+ - tty: n_gsm: fix sleep-in-atomic-context bug in gsm_control_send
+ - bpf, test_run: Fix alignment problem in bpf_prog_test_run_skb()
+ - ASoC: soc-utils: Remove __exit for snd_soc_util_exit()
+ - sctp: remove the unnecessary sinfo_stream check in
+ sctp_prsctp_prune_unsent
+ - sctp: clear out_curr if all frag chunks of current msg are pruned
+ - block: sed-opal: kmalloc the cmd/resp buffers
+ - [arm64] Fix bit-shifting UB in the MIDR_CPU_MODEL() macro
+ - parport_pc: Avoid FIFO port location truncation
+ - pinctrl: devicetree: fix null pointer dereferencing in pinctrl_dt_to_map
+ - [arm64,armhf] drm/panel: simple: set bpc field for logic technologies
+ displays
+ - drm/drv: Fix potential memory leak in drm_dev_init()
+ - drm: Fix potential null-ptr-deref in drm_vblank_destroy_worker()
+ - ata: libata-transport: fix double ata_host_put() in ata_tport_add()
+ - ata: libata-transport: fix error handling in ata_tport_add()
+ - ata: libata-transport: fix error handling in ata_tlink_add()
+ - ata: libata-transport: fix error handling in ata_tdev_add()
+ - bpf: Initialize same number of free nodes for each pcpu_freelist
+ - mISDN: fix possible memory leak in mISDN_dsp_element_register()
+ - net: hinic: Fix error handling in hinic_module_init()
+ - net: liquidio: release resources when liquidio driver open failed
+ - mISDN: fix misuse of put_device() in mISDN_register_device()
+ - net: macvlan: Use built-in RCU list checking
+ - net: caif: fix double disconnect client in chnl_net_open()
+ - bnxt_en: Remove debugfs when pci_register_driver failed
+ - xen/pcpu: fix possible memory leak in register_pcpu()
+ - net: ena: Fix error handling in ena_init()
+ - drbd: use after free in drbd_create_device()
+ - [x86] platform/x86/intel: pmc: Don't unconditionally attach Intel PMC when
+ virtualized
+ - cifs: add check for returning value of SMB2_close_init
+ - cifs: Fix wrong return value checking when GETFLAGS
+ - [x86] net: thunderbolt: Fix error handling in tbnet_init()
+ - cifs: add check for returning value of SMB2_set_info_init
+ - ftrace: Fix the possible incorrect kernel message
+ - ftrace: Optimize the allocation for mcount entries
+ - ftrace: Fix null pointer dereference in ftrace_add_mod()
+ - ring_buffer: Do not deactivate non-existant pages
+ - tracing/ring-buffer: Have polling block on watermark
+ - tracing: Fix memory leak in test_gen_synth_cmd() and
+ test_empty_synth_event()
+ - tracing: Fix wild-memory-access in register_synth_event()
+ - tracing: kprobe: Fix potential null-ptr-deref on trace_event_file in
+ kprobe_event_gen_test_exit()
+ - tracing: kprobe: Fix potential null-ptr-deref on trace_array in
+ kprobe_event_gen_test_exit()
+ - ALSA: usb-audio: Drop snd_BUG_ON() from snd_usbmidi_output_open()
+ - ALSA: hda/realtek: fix speakers for Samsung Galaxy Book Pro
+ - ALSA: hda/realtek: Fix the speaker output on Samsung Galaxy Book Pro 360
+ - [arm64,armhf] Revert "usb: dwc3: disable USB core PHY management"
+ - slimbus: stream: correct presence rate frequencies
+ - speakup: fix a segfault caused by switching consoles
+ - USB: serial: option: add Sierra Wireless EM9191
+ - USB: serial: option: remove old LARA-R6 PID
+ - USB: serial: option: add u-blox LARA-R6 00B modem
+ - USB: serial: option: add u-blox LARA-L6 modem
+ - USB: serial: option: add Fibocom FM160 0x0111 composition
+ - usb: add NO_LPM quirk for Realforce 87U Keyboard
+ - dm ioctl: fix misbehavior if list_versions races with module loading
+ - serial: 8250: Fall back to non-DMA Rx if IIR_RDI occurs
+ - serial: 8250: Flush DMA Rx on RLSI
+ - [x86] serial: 8250_lpss: Configure DMA also w/o DMA filter
+ - Input: iforce - invert valid length check when fetching device IDs
+ - maccess: Fix writing offset in case of fault in
+ strncpy_from_kernel_nofault()
+ - [s390x] scsi: zfcp: Fix double free of FSF request when qdio send fails
+ - [amd64] iommu/vt-d: Set SRE bit only when hardware has SRS cap
+ - firmware: coreboot: Register bus in module init
+ - mmc: core: properly select voltage range without power cycle
+ - mmc: sdhci-pci-o2micro: fix card detect fail issue caused by CD# debounce
+ timeout
+ - mmc: sdhci-pci: Fix possible memory leak caused by missing pci_dev_put()
+ - docs: update mediator contact information in CoC doc
+ - [x86] misc/vmw_vmci: fix an infoleak in vmci_host_do_receive_datagram()
+ - [x86] perf/x86/intel/pt: Fix sampling using single range output
+ - nvme: restrict management ioctls to admin
+ - nvme: ensure subsystem reset is single threaded (CVE-2022-3169)
+ - net: fix a concurrency bug in l2tp_tunnel_register()
+ - ring-buffer: Include dropped pages in counting dirty patches
+ - usbnet: smsc95xx: Fix deadlock on runtime resume
+ - stddef: Introduce struct_group() helper macro
+ - net: use struct_group to copy ip/ipv6 header addresses
+ - scsi: target: tcm_loop: Fix possible name leak in tcm_loop_setup_hba_bus()
+ - scsi: scsi_debug: Fix possible UAF in sdebug_add_host_helper()
+ - kprobes: Skip clearing aggrprobe's post_handler in kprobe-on-ftrace case
+ - Input: i8042 - fix leaking of platform device on module removal
+ - macvlan: enforce a consistent minimal mtu
+ - tcp: cdg: allow tcp_cdg_release() to be called multiple times
+ - kcm: avoid potential race in kcm_tx_work (CVE-2022-3521)
+ - kcm: close race conditions on sk_receive_queue
+ - 9p: trans_fd/p9_conn_cancel: drop client lock earlier
+ - gfs2: Check sb_bsize_shift after reading superblock
+ - gfs2: Switch from strlcpy to strscpy
+ - 9p/trans_fd: always use O_NONBLOCK read/write
+ - mm: fs: initialize fsdata passed to write_begin/write_end interface
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.157
+ - scsi: scsi_transport_sas: Fix error handling in sas_phy_add()
+ - ata: libata-scsi: simplify __ata_scsi_queuecmd()
+ - ata: libata-core: do not issue non-internal commands once EH is pending
+ - bridge: switchdev: Notify about VLAN protocol changes
+ - bridge: switchdev: Fix memory leaks when changing VLAN protocol
+ - drm/display: Don't assume dual mode adaptors support i2c sub-addressing
+ - nvme: add a bogus subsystem NQN quirk for Micron MTFDKBA2T0TFH
+ - nvme-pci: add NVME_QUIRK_BOGUS_NID for Micron Nitro
+ - iio: ms5611: Simplify IO callback parameters
+ - iio: pressure: ms5611: fixed value compensation bug
+ - ceph: do not update snapshot context when there is no new snapshot
+ - ceph: avoid putting the realm twice when decoding snaps fails
+ - wifi: mac80211: fix memory free error when registering wiphy fail
+ - wifi: mac80211_hwsim: fix debugfs attribute ps with rc table support
+ - audit: fix undefined behavior in bit shift for AUDIT_BIT
+ - wifi: airo: do not assign -1 to unsigned char
+ - wifi: mac80211: Fix ack frame idr leak when mesh has no route
+ - [armhf] spi: stm32: fix stm32_spi_prepare_mbr() that halves spi clk for
+ every run
+ - Revert "net: macsec: report real_dev features when HW offloading is
+ enabled"
+ - [powerpc*] scsi: ibmvfc: Avoid path failures during live migration
+ - scsi: scsi_debug: Make the READ CAPACITY response compliant with ZBC
+ - drm: panel-orientation-quirks: Add quirk for Acer Switch V 10 (SW5-017)
+ - block, bfq: fix null pointer dereference in bfq_bio_bfqg()
+ - [arm64] syscall: Include asm/ptrace.h in syscall_wrapper header.
+ - [mips*] pic32: treat port as signed integer
+ - xfrm: fix "disable_policy" on ipv4 early demux
+ - xfrm: replay: Fix ESN wrap around for GSO
+ - af_key: Fix send_acquire race with pfkey_register
+ - [armhf] sgtl5000: Reset the CHIP_CLK_CTRL reg on remove
+ - ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open()
+ - [x86] scsi: storvsc: Fix handling of srb_status and capacity change events
+ - regulator: core: fix kobject release warning and memory leak in
+ regulator_register()
+ - regulator: core: fix UAF in destroy_regulator()
+ - [arm64,armhf] bus: sunxi-rsb: Support atomic transfers
+ - [arm64] tee: optee: fix possible memory leak in optee_register_device()
+ - net: liquidio: simplify if expression
+ - rxrpc: Allow list of in-use local UDP endpoints to be viewed in /proc
+ - rxrpc: Use refcount_t rather than atomic_t
+ - rxrpc: Fix race between conn bundle lookup and bundle removal
+ [ZDI-CAN-15975]
+ - [i386] net: pch_gbe: fix potential memleak in pch_gbe_tx_queue()
+ - 9p/fd: fix issue of list_del corruption in p9_fd_cancel()
+ - netfilter: conntrack: Fix data-races around ct mark
+ - [armhf] dts: imx6q-prti6q: Fix ref/tcxo-clock-frequency properties
+ - net/mlx4: Check retval of mlx4_bitmap_init
+ - net/qla3xxx: fix potential memleak in ql3xxx_send()
+ - [i386] net: pch_gbe: fix pci device refcount leak while module exiting
+ - nfp: fill splittable of devlink_port_attrs correctly
+ - nfp: add port from netdev validation for EEPROM access
+ - macsec: Fix invalid error code set
+ - [x86] Drivers: hv: vmbus: fix double free in the error path of
+ vmbus_add_channel_work()
+ - [x86] Drivers: hv: vmbus: fix possible memory leak in
+ vmbus_device_register()
+ - netfilter: ipset: Limit the maximal range of consecutive elements to
+ add/delete
+ - netfilter: ipset: regression in ip_set_hash_ip.c
+ - net/mlx5: Fix FW tracer timestamp calculation
+ - net/mlx5: Fix handling of entry refcount when command is not issued to FW
+ - tipc: set con sock in tipc_conn_alloc
+ - tipc: add an extra conn_get in tipc_conn_alloc
+ - tipc: check skb_linearize() return value in tipc_disc_rcv()
+ - xfrm: Fix ignored return value in xfrm6_init()
+ - sfc: fix potential memleak in __ef100_hard_start_xmit()
+ - net: sched: allow act_ct to be built without NF_NAT
+ - [armhf] regulator: twl6030: re-add TWL6032_SUBCLASS
+ - bnx2x: fix pci device refcount leak in bnx2x_vf_is_pcie_pending()
+ - netfilter: flowtable_offload: add missing locking
+ - dccp/tcp: Reset saddr on failure after inet6?_hash_connect().
+ - ipv4: Fix error return code in fib_table_insert()
+ - [s390x] dasd: fix no record found for raw_track_access
+ - net: arcnet: Fix RESET flag handling
+ - arcnet: fix potential memory leak in com20020_probe()
+ - [arm64] net: thunderx: Fix the ACPI memory leak
+ - [arm64] net: enetc: manage ENETC_F_QBV in priv->active_offloads only when
+ enabled
+ - [arm64] net: enetc: cache accesses to &priv->si->hw
+ - [arm64] net: enetc: preserve TX ring priority across reconfiguration
+ - lib/vdso: use "grep -E" instead of "egrep"
+ - [armhf] usb: dwc3: exynos: Fix remove() function
+ - ext4: fix use-after-free in ext4_ext_shift_extents
+ - [arm64] dts: rockchip: lower rk3399-puma-haikou SD controller clock
+ frequency
+ - iio: light: apds9960: fix wrong register for gesture gain
+ - ceph: make ceph_create_session_msg a global symbol
+ - ceph: make iterate_sessions a global symbol
+ - ceph: flush mdlog before umounting
+ - ceph: flush the mdlog before waiting on unsafe reqs
+ - ceph: fix off by one bugs in unsafe_request_wait()
+ - ceph: put the requests/sessions when it fails to alloc memory
+ - ceph: fix possible NULL pointer dereference for req->r_session
+ - ceph: Use kcalloc for allocating multiple elements
+ - ceph: fix NULL pointer dereference for req->r_session
+ - [arm64,armhf] usb: dwc3: gadget: conditionally remove requests
+ - [arm64,armhf] usb: dwc3: gadget: Return -ESHUTDOWN on ep disable
+ - [arm64,armhf] usb: dwc3: gadget: Clear ep descriptor last
+ - nilfs2: fix nilfs_sufile_mark_dirty() not set segment usage as dirty
+ - mm: vmscan: fix extreme overreclaim and swap floods
+ - [x86] KVM: x86: nSVM: leave nested mode on vCPU free
+ - [x86] KVM: x86: remove exit_int_info warning in svm_handle_exit
+ - [x86] ioremap: Fix page aligned size calculation in __ioremap_caller()
+ - [arm*] binder: avoid potential data leakage when copying txn
+ - [arm*] binder: read pre-translated fds from sender buffer
+ - [arm*] binder: defer copies of pre-patched txn data
+ - [arm*] binder: fix pointer cast warning
+ - [arm*] binder: Address corner cases in deferred copy and fixup
+ - [arm*] binder: Gracefully handle BINDER_TYPE_FDA objects with num_fds=0
+ - Input: synaptics - switch touchpad on HP Laptop 15-da3001TU to RMI mode
+ - [x86] ASoC: Intel: bytcht_es8316: Add quirk for the Nanote UMPC-01
+ - Input: goodix - try resetting the controller when no config is set
+ - [x86] Input: soc_button_array - add use_low_level_irq module parameter
+ - [x86] Input: soc_button_array - add Acer Switch V 10 to
+ dmi_use_low_level_irq[]
+ - xen-pciback: Allow setting PCI_MSIX_FLAGS_MASKALL too
+ - xen/platform-pci: add missing free_irq() in error path
+ - [x86] platform/x86: asus-wmi: add missing pci_dev_put() in
+ asus_wmi_set_xusb2pr()
+ - [x86] platform/x86: acer-wmi: Enable SW_TABLET_MODE on Switch V 10
+ (SW5-017)
+ - zonefs: fix zone report size in __zonefs_io_error()
+ - [x86] platform/x86: hp-wmi: Ignore Smart Experience App event
+ - tcp: configurable source port perturb table size
+ - net: usb: qmi_wwan: add Telit 0x103a composition
+ - [arm64,armhf] gpu: host1x: Avoid trying to use GART on Tegra20
+ - dm integrity: flush the journal on suspend
+ - dm integrity: clear the journal on suspend
+ - genirq/msi: Shutdown managed interrupts with unsatifiable affinities
+ - genirq: Always limit the affinity to online CPUs
+ - [arm64,armhf] irqchip/gic-v3: Always trust the managed affinity provided
+ by the core code
+ - genirq: Take the proposed affinity at face value if force==true
+ - btrfs: free btrfs_path before copying root refs to userspace
+ - btrfs: free btrfs_path before copying fspath to userspace
+ - btrfs: free btrfs_path before copying subvol info to userspace
+ - btrfs: sysfs: normalize the error handling branch in btrfs_init_sysfs()
+ - drm/amdgpu: always register an MMU notifier for userptr
+ - [x86] drm/i915: fix TLB invalidation for Gen12 video and compute engines
+ (CVE-2022-4139)
+ - fuse: lock inode unconditionally in fuse_fallocate()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.158
+ - btrfs: sink iterator parameter to btrfs_ioctl_logical_to_ino
+ - btrfs: free btrfs_path before copying inodes to userspace
+ - [armhf] spi: spi-imx: Fix spi_bus_clk if requested clock is higher than
+ input clock
+ - btrfs: move QUOTA_ENABLED check to rescan_should_stop from
+ btrfs_qgroup_rescan_worker
+ - drm/display/dp_mst: Fix drm_dp_mst_add_affected_dsc_crtcs() return code
+ - drm/amdgpu: update drm_display_info correctly when the edid is read
+ - drm/amdgpu: Partially revert "drm/amdgpu: update drm_display_info
+ correctly when the edid is read"
+ - btrfs: qgroup: fix sleep from invalid context bug in
+ btrfs_qgroup_inherit()
+ - iio: health: afe4403: Fix oob read in afe4403_read_raw
+ - bpf, perf: Use subprog name when reporting subprog ksymbol
+ - scripts/faddr2line: Fix regression in name resolution on ppc64le
+ - [x86] hwmon: (i5500_temp) fix missing pci_disable_device()
+ - hwmon: (ibmpex) Fix possible UAF when ibmpex_register_bmc() fails
+ - bpf: Do not copy spin lock field from user in bpf_selem_alloc
+ - of: property: decrement node refcount in of_fwnode_get_reference_args()
+ - ixgbevf: Fix resource leak in ixgbevf_init_module()
+ - i40e: Fix error handling in i40e_init_module()
+ - iavf: remove redundant ret variable
+ - iavf: Fix error handling in iavf_init_module()
+ - e100: switch from 'pci_' to 'dma_' API
+ - e100: Fix possible use after free in e100_xmit_prepare
+ - net/mlx5: Fix uninitialized variable bug in outlen_write()
+ - net/mlx5e: Fix use-after-free when reverting termination table
+ - can: sja1000_isa: sja1000_isa_probe(): add missing free_sja1000dev()
+ - [i386] can: cc770: cc770_isa_probe(): add missing free_cc770dev()
+ - qlcnic: fix sleep-in-atomic-context bugs caused by msleep
+ - [amd64,arm64] aquantia: Do not purge addresses when setting the number of
+ rings
+ - wifi: cfg80211: fix buffer overflow in elem comparison
+ - wifi: cfg80211: don't allow multi-BSSID in S1G
+ - wifi: mac8021: fix possible oob access in ieee80211_get_rate_duration
+ - net: phy: fix null-ptr-deref while probe() failed
+ - net/9p: Fix a potential socket leak in p9_socket_open
+ - tipc: re-fetch skb cb after tipc_msg_validate
+ - afs: Fix fileserver probe RTT handling
+ - net: tun: Fix use-after-free in tun_detach()
+ - packet: do not set TP_STATUS_CSUM_VALID on CHECKSUM_COMPLETE
+ - sctp: fix memory leak in sctp_stream_outq_migrate()
+ - [x86] hwmon: (coretemp) Check for null before removing sysfs attrs
+ - [x86] hwmon: (coretemp) fix pci device refcount leak in nv1a_ram_new()
+ - net/mlx5: DR, Fix uninitialized var warning
+ - nilfs2: fix NULL pointer dereference in nilfs_palloc_commit_free_entry()
+ - [x86] bugs: Make sure MSR_SPEC_CTRL is updated properly upon resume from
+ S3
+ - [x86] pinctrl: intel: Save and restore pins in "direct IRQ" mode
+ - net: stmmac: Set MAC's flow control register to reflect current settings
+ - mmc: core: Fix ambiguous TRIM and DISCARD arg
+ - [arm64,armhf] mmc: sdhci-esdhc-imx: correct CQHCI exit halt state check
+ - mmc: sdhci: Fix voltage switch delay
+ - drm/amdgpu: temporarily disable broken Clang builds due to blown
+ stack-frame
+ - [x86] drm/i915: Never return 0 if not all requests retired
+ - tracing: Free buffers when a used dynamic event is removed
+ - io_uring: don't hold uring_lock when calling io_run_task_work*
+ - ASoC: ops: Fix bounds check for _sx controls
+ - [arm64,armhf] pinctrl: single: Fix potential division by zero
+ - [amd64] iommu/vt-d: Fix PCI device refcount leak in has_external_pci()
+ - [amd64] iommu/vt-d: Fix PCI device refcount leak in dmar_dev_scope_init()
+ - ipv4: Handle attempt to delete multipath route when fib_info contains an
+ nh reference (CVE-2022-3435)
+ - ipv4: Fix route deletion when nexthop info is not specified
+ - Revert "tty: n_gsm: avoid call of sleeping functions from atomic context"
+ - [x86] tsx: Add a feature bit for TSX control MSR support
+ - [x86] pm: Add enumeration check before spec MSRs save/restore setup
+ - [arm64,armhf] i2c: imx: Only DMA messages with I2C_M_DMA_SAFE flag set
+ - [amd64,arm64] ACPI: HMAT: remove unnecessary variable initialization
+ - [amd64,arm64] ACPI: HMAT: Fix initiator registration for single-initiator
+ systems
+ - char: tpm: Protect tpm_pm_suspend with locks
+ - block: unhash blkdev part inode when the part is deleted
+ - proc: avoid integer type confusion in get_proc_long (CVE-2022-4378)
+ - proc: proc_skip_spaces() shouldn't think it is working on C strings
+ (CVE-2022-4378)
+ - v4l2: don't fall back to follow_pfn() if pin_user_pages_fast() fails
+ - ipc/sem: Fix dangling sem_array access in semtimedop race
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 20
+ * [rt] Drop "net: arcnet: Fix RESET flag handling" (applied upstream)
+ * [x86] Enable AMD_MEM_ENCRYPT (Closes: #1024697)
+ * xen/netback: Ensure protocol headers don't fall in the non-linear area
+ (XSA-423, CVE-2022-3643)
+ * xen/netback: do some code cleanup
+ * xen/netback: don't call kfree_skb() with interrupts disabled (XSA-424,
+ CVE-2022-42328, CVE-2022-42329)
+ * [rt] Update to 5.10.158-rt77
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 09 Dec 2022 18:14:20 +0100
+
+linux (5.10.149-2) bullseye-security; urgency=high
+
+ * Revert "drm/amdgpu: move nbio sdma_doorbell_range() into sdma code for vega"
+ (Closes: #1022025)
+ * Revert "drm/amdgpu: make sure to init common IP before gmc"
+ (Closes: #1022025)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 21 Oct 2022 22:24:21 +0200
+
+linux (5.10.149-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.149
+ - Revert "fs: check FMODE_LSEEK to control internal pipe splicing"
+
+ [ Salvatore Bonaccorso ]
+ * Replace patch for "io_uring/af_unix: defer registered files gc to io_uring
+ release" with queued version
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Mon, 17 Oct 2022 21:44:25 +0200
+
+linux (5.10.148-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.141
+ - [s390x] mm: do not trigger write fault when vma does not allow VM_WRITE
+ - kbuild: Fix include path in scripts/Makefile.modpost
+ - Bluetooth: L2CAP: Fix build errors in some archs
+ - HID: steam: Prevent NULL pointer dereference in steam_{recv,send}_report
+ - media: pvrusb2: fix memory leak in pvr_probe
+ - HID: hidraw: fix memory leak in hidraw_release()
+ - net: fix refcount bug in sk_psock_get (2)
+ - fbdev: fb_pm2fb: Avoid potential divide by zero error
+ - ftrace: Fix NULL pointer dereference in is_ftrace_trampoline when ftrace
+ is dead
+ - drm/amd/display: Avoid MPC infinite loop
+ - drm/amd/display: For stereo keep "FLIP_ANY_FRAME"
+ - drm/amd/display: clear optc underflow before turn off odm clock
+ - neigh: fix possible DoS due to net iface start/stop loop
+ - [s390x] hypfs: avoid error message under KVM
+ - drm/amd/pm: add missing ->fini_microcode interface for Sienna Cichlid
+ - drm/amd/display: Fix pixel clock programming
+ - drm/amdgpu: Increase tlb flush timeout for sriov
+ - netfilter: conntrack: NF_CONNTRACK_PROCFS should no longer default to y
+ - lib/vdso: Mark do_hres_timens() and do_coarse_timens() __always_inline()
+ - kprobes: don't call disarm_kprobe() for disabled kprobes
+ - io_uring: disable polling pollfree files
+ - xfs: remove infinite loop when reserving free block pool
+ - xfs: always succeed at setting the reserve pool size
+ - xfs: fix overfilling of reserve pool
+ - xfs: fix soft lockup via spinning in filestream ag selection loop
+ - xfs: revert "xfs: actually bump warning counts when we send warnings"
+ - net: neigh: don't call kfree_skb() under spin_lock_irqsave()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.142
+ - [arm64] drm/msm/dsi: fix the inconsistent indenting
+ - [arm64] drm/msm/dp: delete DP_RECOVERED_CLOCK_OUT_EN to fix tps4
+ - [arm64] drm/msm/dsi: Fix number of regulators for msm8996_dsi_cfg
+ - [arm64] drm/msm/dsi: Fix number of regulators for SDM660
+ - [x86] platform/x86: pmc_atom: Fix SLP_TYPx bitfield mask
+ - iio: adc: mcp3911: make use of the sign bit
+ - bpf, cgroup: Fix kernel BUG in purge_effective_progs
+ - ieee802154/adf7242: defer destroy_workqueue call
+ - ALSA: hda: intel-nhlt: remove use of __func__ in dev_dbg
+ - ALSA: hda: intel-nhlt: Correct the handling of fmt_config flexible array
+ - wifi: cfg80211: debugfs: fix return type in ht40allow_map_read()
+ - Revert "xhci: turn off port power in shutdown"
+ - net: sched: tbf: don't call qdisc_put() while holding tree lock
+ - net/sched: fix netdevice reference leaks in attach_default_qdiscs()
+ - sch_cake: Return __NET_XMIT_STOLEN when consuming enqueued skb
+ - tcp: annotate data-race around challenge_timestamp
+ - Revert "sch_cake: Return __NET_XMIT_STOLEN when consuming enqueued skb"
+ - net/smc: Remove redundant refcount increase
+ - [arm64] serial: fsl_lpuart: RS485 RTS polariy is inverse
+ - staging: rtl8712: fix use after free bugs
+ - [powerpc*] align syscall table for ppc32
+ - vt: Clear selection before changing the font
+ - [arm64] tty: serial: lpuart: disable flow control while waiting for the
+ transmit engine to complete
+ - Input: iforce - wake up after clearing IFORCE_XMIT_RUNNING flag
+ - iio: ad7292: Prevent regulator double disable
+ - iio: adc: mcp3911: use correct formula for AD conversion
+ - USB: serial: ftdi_sio: add Omron CS1W-CIF31 device id
+ - [arm*] binder: fix UAF of ref->proc caused by race condition
+ (CVE-2022-20421)
+ - [x86] drm/i915/reg: Fix spelling mistake "Unsupport" -> "Unsupported"
+ - clk: core: Honor CLK_OPS_PARENT_ENABLE for clk gate ops
+ - Revert "clk: core: Honor CLK_OPS_PARENT_ENABLE for clk gate ops"
+ - clk: core: Fix runtime PM sequence in clk_core_unprepare()
+ - [arm64,armhf] clk: bcm: rpi: Fix error handling of raspberrypi_fw_get_rate
+ - [arm64,armhf] clk: bcm: rpi: Use correct order for the parameters of
+ devm_kcalloc()
+ - [arm64,armhf] clk: bcm: rpi: Prevent out-of-bounds access
+ - [arm64,armhf] clk: bcm: rpi: Add missing newline
+ - [armel,armhf] hwmon: (gpio-fan) Fix array out of bounds access
+ - [arm64,armhf] gpio: pca953x: Add mutex_lock for regcache sync in PM
+ - [x86] KVM: x86: Mask off unsupported and unknown bits of
+ IA32_ARCH_CAPABILITIES
+ - xen/grants: prevent integer overflow in gnttab_dma_alloc_pages()
+ - mm: pagewalk: Fix race between unmap and page walker
+ - xen-blkback: Advertise feature-persistent as user requested
+ - xen-blkfront: Advertise feature-persistent as user requested
+ - [x86] thunderbolt: Use the actual buffer in tb_async_error()
+ - media: mceusb: Use new usb_control_msg_*() routines
+ - xhci: Add grace period after xHC start to prevent premature runtime
+ suspend.
+ - USB: serial: cp210x: add Decagon UCA device id
+ - USB: serial: option: add support for OPPO R11 diag port
+ - USB: serial: option: add Quectel EM060K modem
+ - USB: serial: option: add support for Cinterion MV32-WA/WB RmNet mode
+ - usb: typec: altmodes/displayport: correct pin assignment for UFP
+ receptacles
+ - [arm*] usb: dwc2: fix wrong order of phy_power_on and phy_init
+ - USB: cdc-acm: Add Icom PMR F3400 support (0c26:0020)
+ - usb-storage: Add ignore-residue quirk for NXP PN7462AU
+ - [s390x] hugetlb: fix prepare_hugepage_range() check for 2 GB hugepages
+ - [s390x] fix nospec table alignments
+ - USB: core: Prevent nested device-reset calls
+ - usb: gadget: mass_storage: Fix cdrom data transfers on MAC-OS
+ - driver core: Don't probe devices after bus_type.match() probe deferral
+ - wifi: mac80211: Don't finalize CSA in IBSS mode if state is disconnected
+ - wifi: mac80211: Fix UAF in ieee80211_scan_rx()
+ - ip: fix triggering of 'icmp redirect'
+ - net: Use u64_stats_fetch_begin_irq() for stats fetch.
+ - net: mac802154: Fix a condition in the receive path
+ - ALSA: hda/realtek: Add speaker AMP init for Samsung laptops with ALC298
+ - ALSA: seq: oss: Fix data-race for max_midi_devs access
+ - ALSA: seq: Fix data-race at module auto-loading
+ - [x86] drm/i915/glk: ECS Liva Q2 needs GLK HDMI port timing quirk
+ - btrfs: harden identification of a stale device
+ - mmc: core: Fix UHS-I SD 1.8V workaround branch
+ - [arm64,armhf] usb: dwc3: fix PHY disable sequence
+ - [arm64,armhf] usb: dwc3: qcom: fix use-after-free on runtime-PM wakeup
+ - [arm64,armhf] usb: dwc3: disable USB core PHY management
+ - USB: serial: ch341: fix lost character on LCR updates
+ - USB: serial: ch341: fix disabled rx timer on older devices
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.143
+ - NFSD: Fix verifier returned in stable WRITEs
+ - xen-blkfront: Cache feature_persistent value before advertisement
+ - tty: n_gsm: initialize more members at gsm_alloc_mux()
+ - tty: n_gsm: avoid call of sleeping functions from atomic context
+ - efi: capsule-loader: Fix use-after-free in efi_capsule_write
+ (CVE-2022-40307)
+ - wifi: iwlegacy: 4965: corrected fix for potential off-by-one overflow in
+ il4965_rs_fill_link_cmd()
+ - fs: only do a memory barrier for the first set_buffer_uptodate()
+ - scsi: qla2xxx: Disable ATIO interrupt coalesce for quad port ISP27XX
+ - scsi: megaraid_sas: Fix double kfree()
+ - drm/gem: Fix GEM handle release errors
+ - drm/amdgpu: Move psp_xgmi_terminate call from amdgpu_xgmi_remove_device to
+ psp_hw_fini
+ - drm/amdgpu: Check num_gfx_rings for gfx v9_0 rb setup.
+ - drm/radeon: add a force flush to delay work when radeon
+ - [arm64] cacheinfo: Fix incorrect assignment of signed error value to
+ unsigned fw_level
+ - net/core/skbuff: Check the return value of skb_copy_bits()
+ - drm/amdgpu: mmVM_L2_CNTL3 register not initialized correctly
+ - ALSA: emu10k1: Fix out of bounds access in snd_emu10k1_pcm_channel_alloc()
+ - ALSA: aloop: Fix random zeros in capture data when using jiffies timer
+ - ALSA: usb-audio: Fix an out-of-bounds bug in
+ __snd_usb_parse_audio_interface()
+ - kprobes: Prohibit probes in gate area
+ - debugfs: add debugfs_lookup_and_remove()
+ - nvmet: fix a use-after-free
+ - [x86] drm/i915: Implement WaEdpLinkRateDataReload
+ - scsi: mpt3sas: Fix use-after-free warning
+ - scsi: lpfc: Add missing destroy_workqueue() in error path
+ - cgroup: Elide write-locking threadgroup_rwsem when updating csses on an
+ empty subtree
+ - cgroup: Fix threadgroup_rwsem <-> cpus_read_lock() deadlock
+ - cifs: remove useless parameter 'is_fsctl' from SMB2_ioctl()
+ - smb3: missing inode locks in punch hole
+ - regulator: core: Clean up on enable failure
+ - [arm64] tee: fix compiler warning in tee_shm_register()
+ - RDMA/cma: Fix arguments order in net device validation
+ - [arm64] RDMA/hns: Fix supported page size
+ - [arm64] RDMA/hns: Fix wrong fixed value of qp->rq.wqe_shift
+ - netfilter: br_netfilter: Drop dst references before setting.
+ - netfilter: nf_tables: clean up hook list when offload flags check fails
+ - netfilter: nf_conntrack_irc: Fix forged IP logic (CVE-2022-2663)
+ - ALSA: usb-audio: Inform the delayed registration more properly
+ - ALSA: usb-audio: Register card again for iface over delayed_register
+ option
+ - rxrpc: Fix an insufficiently large sglist in rxkad_verify_packet_2()
+ - afs: Use the operation issue time instead of the reply time for callbacks
+ - sch_sfb: Don't assume the skb is still around after enqueueing to child
+ - tipc: fix shift wrapping bug in map_get()
+ - ice: use bitmap_free instead of devm_kfree
+ - i40e: Fix kernel crash during module removal
+ - xen-netback: only remove 'hotplug-status' when the vif is actually
+ destroyed
+ - ipv6: sr: fix out-of-bounds read when setting HMAC data.
+ - IB/core: Fix a nested dead lock as part of ODP flow
+ - RDMA/mlx5: Set local port to one when accessing counters
+ - nvme-tcp: fix UAF when detecting digest errors
+ - nvme-tcp: fix regression that causes sporadic requests to time out
+ - tcp: fix early ETIMEDOUT after spurious non-SACK RTO
+ - sch_sfb: Also store skb len before calling child enqueue
+ - swiotlb: avoid potential left shift overflow
+ - [amd64] iommu/amd: use full 64-bit value in build_completion_wait()
+ - [arm64] errata: add detection for AMEVCNTR01 incrementing incorrectly
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.144
+ - [armhf] dts: imx: align SPI NOR node name with dtschema
+ - [amd64] iommu/vt-d: Correctly calculate sagaw value of IOMMU
+ - tracefs: Only clobber mode/uid/gid on remount if asked
+ - Input: goodix - add support for GT1158
+ - [arm64] drm/msm/rd: Fix FIFO-full deadlock
+ - [amd64] hid: intel-ish-hid: ishtp: Fix ishtp client sending disordered
+ message
+ - tg3: Disable tg3 device on system reboot to avoid triggering AER
+ - ieee802154: cc2520: add rc code in cc2520_tx()
+ - Input: iforce - add support for Boeder Force Feedback Wheel
+ - nvmet-tcp: fix unhandled tcp states in nvmet_tcp_state_change()
+ - drm/amd/amdgpu: skip ucode loading if ucode_size == 0
+ - [arm*] perf/arm_pmu_platform: fix tests for platform_get_irq() failure
+ - [x86] platform/x86: acer-wmi: Acer Aspire One AOD270/Packard Bell Dot
+ keymap fixes
+ - mm: Fix TLB flush for not-first PFNMAP mappings in unmap_region()
+ - [x86] Revert "x86/ftrace: Use alternative RET encoding"
+ - [x86] ibt,ftrace: Make function-graph play nice
+ - [x86] ftrace: Use alternative RET encoding
+ - Input: goodix - add compatible string for GT1158
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.145
+ - [ppc64el] KVM: PPC: Book3S HV: Context tracking exit guest context before
+ enabling irqs
+ - [ppc64el] KVM: PPC: Tick accounting should defer vtime accounting 'til
+ after IRQ handling
+ - serial: 8250: Fix reporting real baudrate value in c_ospeed field
+ - [powerpc*] pseries/mobility: refactor node lookup during DT update
+ - [powerpc*] pseries/mobility: ignore ibm, platform-facilities updates
+ - [x86] platform/x86/intel: hid: add quirk to support Surface Go 3
+ - [arm64,armhf] net: dsa: mv88e6xxx: allow use of PHYs on CPU and DSA ports
+ - of: fdt: fix off-by-one error in unflatten_dt_nodes()
+ - [arm64] pinctrl: sunxi: Fix name for A100 R_PIO
+ - NFSv4: Turn off open-by-filehandle and NFS re-export for NFSv4.0
+ - [arm64] gpio: mpc8xxx: Fix support for IRQ_TYPE_LEVEL_LOW flow_type in
+ mpc85xx
+ - [arm64] drm/meson: Correct OSD1 global alpha value
+ - [arm64] drm/meson: Fix OSD1 RGB to YCbCr coefficient
+ - tracing: hold caller_addr to hardirq_{enable,disable}_ip
+ - of/device: Fix up of_dma_configure_id() stub
+ - cifs: revalidate mapping when doing direct writes
+ - cifs: don't send down the destination address to sendmsg for a SOCK_STREAM
+ - video: fbdev: i740fb: Error out if 'pixclock' equals zero (CVE-2022-3061)
+ - Revert "serial: 8250: Fix reporting real baudrate value in c_ospeed field"
+ - [x86] ASoC: nau8824: Fix semaphore unbalance at error paths
+ - [armhf] regulator: pfuze100: Fix the global-out-of-bounds access in
+ pfuze100_regulator_probe()
+ - rxrpc: Fix local destruction being repeated
+ - rxrpc: Fix calc of resend age
+ - wifi: mac80211_hwsim: check length for virtio packets
+ - ALSA: hda/sigmatel: Keep power up while beep is enabled
+ - [arm64,armhf] ALSA: hda/tegra: Align BDL entry to 4KB boundary
+ - net: usb: qmi_wwan: add Quectel RM520N
+ - afs: Return -EAGAIN, not -EREMOTEIO, when a file already locked
+ - [misp64el,mipsel] OCTEON: irq: Fix octeon_irq_force_ciu_mapping()
+ - mksysmap: Fix the mismatch of 'L0' symbols in System.map
+ - video: fbdev: pxa3xx-gcu: Fix integer overflow in pxa3xx_gcu_write
+ (CVE-2022-39842)
+ - cgroup: Add missing cpus_read_lock() to cgroup_attach_task_all()
+ - ALSA: hda/sigmatel: Fix unused variable warning for beep power change
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.146
+ - drm/amdgpu: move nbio sdma_doorbell_range() into sdma code for vega
+ - drm/amdgpu: indirect register access for nv12 sriov
+ - drm/amdgpu: Separate vf2pf work item init from virt data exchange
+ - drm/amdgpu: make sure to init common IP before gmc
+ - [arm64,armhf] usb: dwc3: gadget: Avoid starting DWC3 gadget during UDC
+ unbind
+ - [arm64,armhf] usb: dwc3: Issue core soft reset before enabling run/stop
+ - [arm64,armhf] usb: dwc3: gadget: Prevent repeat pullup()
+ - [arm64,armhf] usb: dwc3: gadget: Refactor pullup()
+ - [arm64,armhf] usb: dwc3: gadget: Don't modify GEVNTCOUNT in pullup()
+ - [arm64,armhf] usb: dwc3: gadget: Avoid duplicate requests to enable
+ Run/Stop
+ - mmc: core: Fix inconsistent sd3_bus_mode at UHS-I SD voltage switch
+ failure
+ - vfio/type1: Change success value of vaddr_get_pfn()
+ - vfio/type1: Prepare for batched pinning with struct vfio_batch
+ - vfio/type1: Unpin zero pages
+ - USB: core: Fix RST error in hub.c
+ - USB: serial: option: add Quectel BG95 0x0203 composition
+ - USB: serial: option: add Quectel RM520N
+ - ALSA: hda/tegra: set depop delay for tegra
+ - ALSA: hda: add Intel 5 Series / 3400 PCI DID
+ - ALSA: hda/realtek: Add quirk for Huawei WRT-WX9
+ - ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5570 laptop
+ - ALSA: hda/realtek: Re-arrange quirk table entries
+ - ALSA: hda/realtek: Add pincfg for ASUS G513 HP jack
+ - ALSA: hda/realtek: Add pincfg for ASUS G533Z HP jack
+ - ALSA: hda/realtek: Add quirk for ASUS GA503R laptop
+ - ALSA: hda/realtek: Enable 4-speaker output Dell Precision 5530 laptop
+ - [amd64] iommu/vt-d: Check correct capability for sagaw determination
+ - media: flexcop-usb: fix endpoint type check
+ - [x86] efi: x86: Wipe setup_data on pure EFI boot
+ - efi: libstub: check Shim mode using MokSBStateRT
+ - gpiolib: cdev: Set lineevent_state::irq after IRQ register successfully
+ - [arm64,armhf] can: flexcan: flexcan_mailbox_read() fix return value for
+ drop = true
+ - mm/slub: fix to return errno if kmalloc() fails
+ - KVM: SEV: add cache flush to solve SEV cache incoherency issues
+ (CVE-2022-0171)
+ - xfs: fix up non-directory creation in SGID directories (CVE-2021-4037)
+ - xfs: reorder iunlink remove operation in xfs_ifree
+ - xfs: validate inode fork size against fork format
+ - [arm64] dts: rockchip: Pull up wlan wake# on Gru-Bob
+ - netfilter: nf_conntrack_sip: fix ct_sip_walk_headers
+ - netfilter: nf_conntrack_irc: Tighten matching on DCC message
+ (CVE-2022-2663)
+ - netfilter: nfnetlink_osf: fix possible bogus match in nf_osf_find()
+ - iavf: Fix cached head and tail value for iavf_get_tx_pending
+ - ipvlan: Fix out-of-bound bugs caused by unset skb->mac_header
+ - net: let flow have same hash in two directions
+ - net: core: fix flow symmetric hash
+ - net: phy: aquantia: wait for the suspend/resume operations to finish
+ - scsi: mpt3sas: Force PCIe scatterlist allocations to be within same 4 GB
+ region
+ - scsi: mpt3sas: Fix return value check of dma_get_required_mask()
+ - net: bonding: Share lacpdu_mcast_addr definition
+ - net: bonding: Unsync device addresses on ndo_stop
+ - net: team: Unsync device addresses on ndo_stop
+ - [arm64,armhf] drm/panel: simple: Fix innolux_g121i1_l01 bus_format
+ - iavf: Fix bad page state
+ - iavf: Fix set max MTU size with port VLAN and jumbo frames
+ - i40e: Fix VF set max MTU size
+ - i40e: Fix set max_tx_rate when it is lower than 1 Mbps
+ - sfc: fix TX channel offset when using legacy interrupts
+ - sfc: fix null pointer dereference in efx_hard_start_xmit
+ - of: mdio: Add of_node_put() when breaking out of for_each_xx
+ - wireguard: ratelimiter: disable timings test by default
+ - wireguard: netlink: avoid variable-sized memcpy on sockaddr
+ - [arm64] net: enetc: move enetc_set_psfp() out of the common
+ enetc_set_features()
+ - net: socket: remove register_gifconf
+ - net/sched: taprio: avoid disabling offload when it was never enabled
+ - net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child
+ qdiscs
+ - netfilter: nf_tables: fix nft_counters_enabled underflow at
+ nf_tables_addchain()
+ - netfilter: nf_tables: fix percpu memory leak at nf_tables_addchain()
+ - netfilter: ebtables: fix memory leak when blob is malformed
+ - can: gs_usb: gs_can_open(): fix race dev->can.state condition
+ - net/smc: Stop the CLC flow if no link to map buffers on
+ - net: sunhme: Fix packet reception for len < RX_COPY_THRESHOLD
+ - net: sched: fix possible refcount leak in tc_new_tfilter()
+ - drm/amd/amdgpu: fixing read wrong pf2vf data in SRIOV
+ - serial: Create uart_xmit_advance()
+ - [arm64,armhf] serial: tegra: Use uart_xmit_advance(), fixes icount.tx
+ accounting
+ - [s390x] dasd: fix Oops in dasd_alias_get_start_dev due to missing pavgroup
+ - vfio/type1: fix vaddr_get_pfns() return in vfio_pin_page_external()
+ - drm/amdgpu: Fix check for RAS support
+ - cifs: use discard iterator to discard unneeded network data more
+ efficiently
+ - cifs: always initialize struct msghdr smb_msg completely
+ - [x86] Drivers: hv: Never allocate anything besides framebuffer from
+ framebuffer memory region
+ - [x86] drm/gma500: Fix BUG: sleeping function called from invalid context
+ errors
+ - drm/amdgpu: use dirty framebuffer helper
+ - drm/amd/display: Limit user regamma to a valid value
+ - drm/amd/display: Mark dml30's UseMinimumDCFCLK() as noinline for stack
+ usage
+ - [arm64] drm/rockchip: Fix return type of cdn_dp_connector_mode_valid
+ - workqueue: don't skip lockdep work dependency in cancel_work_sync()
+ - [arm64,armhf] i2c: imx: If pm_runtime_get_sync() returned 1 device access
+ is possible
+ - [amd64,arm64] devdax: Fix soft-reservation memory description
+ - ext4: fix bug in extents parsing when eh_entries == 0 and eh_depth > 0
+ - ext4: limit the number of retries after discarding preallocations blocks
+ - ext4: make directory inode spreading reflect flexbg size
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.147
+ - [x86] thunderbolt: Add support for Intel Maple Ridge
+ - [x86] thunderbolt: Add support for Intel Maple Ridge single port
+ controller
+ - [arm64,armhf] ALSA: hda/tegra: Use clk_bulk helpers
+ - [arm64,armhf] ALSA: hda/tegra: Reset hardware
+ - ALSA: hda/hdmi: let new platforms assign the pcm slot dynamically
+ - ALSA: hda: Fix Nvidia dp infoframe
+ - btrfs: fix hang during unmount when stopping a space reclaim worker
+ - [arm64,x86] usb: typec: ucsi: Remove incorrect warning
+ - [x86] thunderbolt: Explicitly reset plug events delay back to USB4 spec
+ value
+ - net: usb: qmi_wwan: Add new usb-id for Dell branded EM7455
+ - libata: add ATA_HORKAGE_NOLPM for Pioneer BDR-207M and BDR-205
+ - mm/page_alloc: fix race condition between build_all_zonelists and page
+ allocation
+ - mm: prevent page_frag_alloc() from corrupting the memory
+ - mm/migrate_device.c: flush TLB while holding PTL
+ - mm: fix madivse_pageout mishandling on non-LRU page
+ - swiotlb: max mapping size takes min align mask into account
+ - [arm64] scsi: hisi_sas: Revert "scsi: hisi_sas: Limit max hw sectors for
+ v3 HW"
+ - [arm64,armhf] soc: sunxi: sram: Actually claim SRAM regions
+ - [arm64,armhf] soc: sunxi: sram: Prevent the driver from being unbound
+ - [arm64,armhf] soc: sunxi_sram: Make use of the helper function
+ devm_platform_ioremap_resource()
+ - [arm64,armhf] soc: sunxi: sram: Fix probe function ordering issues
+ - [arm64,armhf] soc: sunxi: sram: Fix debugfs info for A64 SRAM C
+ - [arm64,armhf] Revert "drm: bridge: analogix/dp: add panel
+ prepare/unprepare in suspend/resume time"
+ - usbnet: Fix memory leak in usbnet_disconnect()
+ - net: sched: act_ct: fix possible refcount leak in tcf_ct_init()
+ - cxgb4: fix missing unlock on ETHOFLD desc collect fail path
+ - nvme: add new line after variable declatation
+ - nvme: Fix IOC_PR_CLEAR and IOC_PR_RELEASE ioctls for nvme devices
+ - net: stmmac: power up/down serdes in stmmac_open/release
+ - [armhf] clk: imx: imx6sx: remove the SET_RATE_PARENT flag for QSPI clocks
+ - [x86] KVM: x86: Hide IA32_PLATFORM_DCA_CAP[31:0] from the guest
+ - [x86] alternative: Fix race in try_get_desc()
+ - ALSA: hda/hdmi: fix warning about PCM count when used with SOF
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.148
+ - nilfs2: fix NULL pointer dereference at nilfs_bmap_lookup_at_level()
+ - nilfs2: fix use-after-free bug of struct nilfs_root
+ - nilfs2: fix leak of nilfs_root in case of writer thread creation failure
+ - nilfs2: replace WARN_ONs by nilfs_error for checkpoint acquisition failure
+ - ceph: don't truncate file in atomic_open
+ - docs: update mediator information in CoC docs
+ - xsk: Inherit need_wakeup flag for shared sockets
+ - ALSA: pcm: oss: Fix race at SNDCTL_DSP_SYNC (CVE-2022-3303)
+ - mm: gup: fix the fast GUP race against THP collapse
+ - [powerpc*] 64s/radix: don't need to broadcast IPI for radix pmd collapse
+ flush
+ - fs: fix UAF/GPF bug in nilfs_mdt_destroy
+ - compiler_attributes.h: move __compiletime_{error|warning}
+ - scsi: qedf: Fix a UAF bug in __qedf_probe()
+ - net/ieee802154: fix uninit value bug in dgram_sendmsg
+ - ALSA: hda/hdmi: Fix the converter reuse for the silent stream
+ - net: atlantic: fix potential memory leak in aq_ndev_close()
+ - drm/amd/display: update gamut remap if plane has changed
+ - drm/amd/display: skip audio setup when audio stream is enabled
+ - mmc: core: Replace with already defined values for readability
+ - mmc: core: Terminate infinite loop in SD-UHS voltage switch
+ - usb: mon: make mmapped memory read only
+ - USB: serial: ftdi_sio: fix 300 bps rate for SIO
+ - [arm64] rpmsg: qcom: glink: replace strncpy() with strscpy_pad()
+ - Revert "clk: ti: Stop using legacy clkctrl names for omap4 and 5"
+ - random: restore O_NONBLOCK support
+ - random: clamp credited irq bits to maximum mixed
+ - ALSA: hda: Fix position reporting on Poulsbo
+ - efi: Correct Macmini DMI match in uefi cert quirk
+ - scsi: stex: Properly zero out the passthrough command structure
+ - USB: serial: qcserial: add new usb-id for Dell branded EM7455
+ - random: avoid reading two cache lines on irq randomness
+ - random: use expired timer rather than wq for mixing fast pool
+ - wifi: cfg80211: fix u8 overflow in cfg80211_update_notlisted_nontrans()
+ (CVE-2022-41674)
+ - wifi: cfg80211/mac80211: reject bad MBSSID elements
+ - wifi: cfg80211: ensure length byte is present before access
+ - wifi: cfg80211: fix BSS refcounting bugs (CVE-2022-42720)
+ - wifi: cfg80211: avoid nontransmitted BSS list corruption (CVE-2022-42721)
+ - wifi: mac80211_hwsim: avoid mac80211 warning on bad rate
+ - wifi: mac80211: fix crash in beacon protection for P2P-device
+ (CVE-2022-42722)
+ - wifi: cfg80211: update hidden BSSes to avoid WARN_ON
+ - Input: xpad - add supported devices as contributed on github
+ - Input: xpad - fix wireless 360 controller breaking after suspend
+
+ [ Aurelien Jarno ]
+ * [arm64] Add support for misalignment fixups for multiword loads from next
+ branch. Enable COMPAT_ALIGNMENT_FIXUPS.
+
+ [ Salvatore Bonaccorso ]
+ * [x86] drivers/edac: Enable EDAC_I10NM as module (Closes: #1019248)
+ * Bump ABI to 19
+ * Refresh "Export symbols needed by Android drivers"
+ * [rt] Update to 5.10.140-rt73
+ * io_uring/af_unix: defer registered files gc to io_uring release
+ (CVE-2022-2602)
+ * ext4: fix check for block being out of directory size (CVE-2022-1184)
+
+ [ Uwe Kleine-König ]
+ * mac80211: mlme: find auth challenge directly
+ * wifi: mac80211: don't parse mbssid in assoc response
+ * wifi: mac80211: fix MBSSID parsing use-after-free (CVE-2022-42719)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 16 Oct 2022 23:18:41 +0200
+
+linux (5.10.140-1) bullseye; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.137
+ - Makefile: link with -z noexecstack --no-warn-rwx-segments
+ - [x86] link vdso and boot with -z noexecstack --no-warn-rwx-segments
+ - Revert "pNFS: nfs3_set_ds_client should set NFS_CS_NOPING"
+ - scsi: Revert "scsi: qla2xxx: Fix disk failure to rediscover"
+ - ALSA: bcd2000: Fix a UAF bug on the error path of probing
+ - ALSA: hda/realtek: Add quirk for Clevo NV45PZ
+ - ALSA: hda/realtek: Add quirk for HP Spectre x360 15-eb0xxx
+ - wifi: mac80211_hwsim: fix race condition in pending packet
+ - wifi: mac80211_hwsim: add back erroneously removed cast
+ - wifi: mac80211_hwsim: use 32-bit skb cookie
+ - add barriers to buffer_uptodate and set_buffer_uptodate
+ - HID: wacom: Only report rotation for art pen
+ - HID: wacom: Don't register pad_input for touch switch
+ - [x86] KVM: nVMX: Snapshot pre-VM-Enter BNDCFGS for !nested_run_pending
+ case
+ - [x86] KVM: nVMX: Snapshot pre-VM-Enter DEBUGCTL for !nested_run_pending
+ case
+ - [x86] KVM: SVM: Don't BUG if userspace injects an interrupt with GIF=0
+ - [s390x] KVM: s390: pv: don't present the ecall interrupt twice
+ - [x86] KVM: nVMX: Let userspace set nVMX MSR to any _host_ supported value
+ - [x86] KVM: x86: Mark TSS busy during LTR emulation _after_ all fault
+ checks
+ - [x86] KVM: x86: Set error code to segment selector on LLDT/LTR
+ non-canonical #GP
+ - [x86] KVM: x86: Tag kvm_mmu_x86_module_init() with __init
+ - mm: Add kvrealloc()
+ - xfs: only set IOMAP_F_SHARED when providing a srcmap to a write
+ - xfs: fix I_DONTCACHE
+ - mm/mremap: hold the rmap lock in write mode when moving page table
+ entries.
+ - ALSA: hda/conexant: Add quirk for LENOVO 20149 Notebook model
+ - ALSA: hda/cirrus - support for iMac 12,1 model
+ - ALSA: hda/realtek: Add quirk for another Asus K42JZ model
+ - ALSA: hda/realtek: Add a quirk for HP OMEN 15 (8786) mute LED
+ - tty: vt: initialize unicode screen buffer
+ - vfs: Check the truncate maximum size in inode_newsize_ok()
+ - fs: Add missing umask strip in vfs_tmpfile
+ - thermal: sysfs: Fix cooling_device_stats_setup() error code path
+ - fbcon: Fix boundary checks for fbcon=vc:n1-n2 parameters
+ - fbcon: Fix accelerated fbdev scrolling while logo is still shown
+ - usbnet: Fix linkwatch use-after-free on disconnect
+ - ovl: drop WARN_ON() dentry is NULL in ovl_encode_fh()
+ - drm/gem: Properly annotate WW context on drm_gem_lock_reservations() error
+ - [arm*] drm/vc4: hdmi: Disable audio if dmas property is present but empty
+ - drm/nouveau: fix another off-by-one in nvbios_addr
+ - drm/nouveau: Don't pm_runtime_put_sync(), only
+ pm_runtime_put_autosuspend()
+ - drm/nouveau/acpi: Don't print error when we get -EINPROGRESS from
+ pm_runtime
+ - drm/amdgpu: Check BO's requested pinning domains against its
+ preferred_domains
+ - iio: light: isl29028: Fix the warning in isl29028_remove()
+ - scsi: sg: Allow waiting for commands to complete on removed device
+ - scsi: qla2xxx: Fix incorrect display of max frame size
+ - scsi: qla2xxx: Zero undefined mailbox IN registers
+ - fuse: limit nsec
+ - [arm64] serial: mvebu-uart: uart2 error bits clearing
+ - md-raid: destroy the bitmap after destroying the thread
+ - md-raid10: fix KASAN warning
+ - PCI: Add defines for normal and subtractive PCI bridges
+ - [powerpc*] powernv: Avoid crashing if rng is NULL
+ - [mips64el,mipsel] cpuinfo: Fix a warning for CONFIG_CPUMASK_OFFSTACK
+ - usb: typec: ucsi: Acknowledge the GET_ERROR_STATUS command completion
+ - USB: HCD: Fix URB giveback issue in tasklet function
+ - [arm64,armhf] usb: dwc3: gadget: refactor dwc3_repare_one_trb
+ - [arm64,armhf] usb: dwc3: gadget: fix high speed multiplier setting
+ - netfilter: nf_tables: fix null deref due to zeroed list head
+ - epoll: autoremove wakers even more aggressively
+ - [x86] Handle idle=nomwait cmdline properly for x86_idle
+ - [arm64] Do not forget syscall when starting a new thread.
+ - [arm64] fix oops in concurrently setting insn_emulation sysctls
+ - genirq: Don't return error on missing optional irq_request_resources()
+ - [mips64el,mipsel] irqchip/mips-gic: Only register IPI domain when SMP is
+ enabled
+ - genirq: GENERIC_IRQ_IPI depends on SMP
+ - [mips64el,mipsel] irqchip/mips-gic: Check the return value of ioremap() in
+ gic_of_init()
+ - wait: Fix __wait_event_hrtimeout for RT/DL tasks
+ - [armhf] OMAP2+: display: Fix refcount leak bug
+ - ACPI: EC: Remove duplicate ThinkPad X1 Carbon 6th entry from DMI quirks
+ - ACPI: EC: Drop the EC_FLAGS_IGNORE_DSDT_GPE quirk
+ - ACPI: PM: save NVS memory for Lenovo G40-45
+ - ACPI: LPSS: Fix missing check in register_device_clock()
+ - [arm64] dts: allwinner: a64: orangepi-win: Fix LED node name
+ - PM: hibernate: defer device probing when resuming from hibernation
+ - selinux: Add boundary check in put_entry()
+ - [armel,armhf] findbit: fix overflowing offset
+ - [arm64,armhf] meson-mx-socinfo: Fix refcount leak in meson_mx_socinfo_init
+ - ACPI: processor/idle: Annotate more functions to live in cpuidle section
+ - Input: atmel_mxt_ts - fix up inverted RESET handler
+ - [arm64] soc: amlogic: Fix refcount leak in meson-secure-pwrc.c
+ - [x86] pmem: Fix platform-device leak in error path
+ - [armhf] dts: ast2500-evb: fix board compatible
+ - [armhf] dts: ast2600-evb: fix board compatible
+ - [arm64] cpufeature: Allow different PMU versions in ID_DFR0_EL1
+ - locking/lockdep: Fix lockdep_init_map_*() confusion
+ - [arm64] soc: fsl: guts: machine variable might be unset
+ - block: fix infinite loop for invalid zone append
+ - [armhf] OMAP2+: Fix refcount leak in omapdss_init_of
+ - [armhf] OMAP2+: Fix refcount leak in omap3xxx_prm_late_init
+ - [arm64] regulator: qcom_smd: Fix pm8916_pldo range
+ - [arm64] ACPI: APEI: Fix _EINJ vs EFI_MEMORY_SP
+ - [arm64] bus: hisi_lpc: fix missing platform_device_put() in
+ hisi_lpc_acpi_probe()
+ - erofs: avoid consecutive detection for Highmem memory
+ - blk-mq: don't create hctx debugfs dir until q->debugfs_dir is created
+ - hwmon: (drivetemp) Add module alias
+ - block: remove the request_queue to argument request based tracepoints
+ - blktrace: Trace remapped requests correctly
+ - regulator: of: Fix refcount leak bug in of_get_regulation_constraints()
+ - nohz/full, sched/rt: Fix missed tick-reenabling bug in dequeue_task_rt()
+ - dm: return early from dm_pr_call() if DM device is suspended
+ - ath10k: do not enforce interrupt trigger type
+ - wifi: rtlwifi: fix error codes in rtl_debugfs_set_write_h2c()
+ - ath11k: fix netdev open race
+ - drm/mipi-dbi: align max_chunk to 2 in spi_transfer
+ - ath11k: Fix incorrect debug_mask mappings
+ - drm/radeon: fix potential buffer overflow in ni_set_mc_special_registers()
+ - virtio-gpu: fix a missing check to avoid NULL dereference
+ - [arm64] drm: adv7511: override i2c address of cec before accessing it
+ - net: fix sk_wmem_schedule() and sk_rmem_schedule() errors
+ - i2c: Fix a potential use after free
+ - media: tw686x: Register the irq at the end of probe
+ - ath9k: fix use-after-free in ath9k_hif_usb_rx_cb (CVE-2022-1679)
+ - wifi: iwlegacy: 4965: fix potential off-by-one overflow in
+ il4965_rs_fill_link_cmd()
+ - drm/radeon: fix incorrrect SPDX-License-Identifiers
+ - [amd64] crypto: ccp - During shutdown, check SEV data pointer before using
+ - [arm64] drm: bridge: adv7511: Add check for mipi_dsi_driver_register
+ - media: hdpvr: fix error value returns in hdpvr_read
+ - [arm64,armhf] media: v4l2-mem2mem: prevent pollerr when
+ last_buffer_dequeued is set
+ - media: tw686x: Fix memory leak in tw686x_video_init
+ - [arm*] drm/vc4: plane: Remove subpixel positioning check
+ - [arm*] drm/vc4: plane: Fix margin calculations for the right/bottom edges
+ - [arm*] drm/vc4: dsi: Correct DSI divider calculations
+ - [arm*] drm/vc4: dsi: Correct pixel order for DSI0
+ - [arm*] drm/vc4: drv: Remove the DSI pointer in vc4_drv
+ - [arm*] drm/vc4: dsi: Use snprintf for the PHY clocks instead of an array
+ - [arm*] drm/vc4: dsi: Introduce a variant structure
+ - [arm*] drm/vc4: dsi: Register dsi0 as the correct vc4 encoder type
+ - [arm*] drm/vc4: dsi: Fix dsi0 interrupt support
+ - [arm*] drm/vc4: dsi: Add correct stop condition to vc4_dsi_encoder_disable
+ iteration
+ - [arm*] drm/vc4: hdmi: Remove firmware logic for MAI threshold setting
+ - [arm*] drm/vc4: hdmi: Avoid full hdmi audio fifo writes
+ - [arm*] drm/vc4: hdmi: Don't access the connector state in reset if kmalloc
+ fails
+ - [arm*] drm/vc4: hdmi: Limit the BCM2711 to the max without scrambling
+ - [arm*] drm/vc4: hdmi: Fix timings for interlaced modes
+ - [arm*] drm/vc4: hdmi: Correct HDMI timing registers for interlaced modes
+ - [arm64,armhf] drm/rockchip: vop: Don't crash for invalid duplicate_state()
+ - [arm64,armhf] drm/rockchip: Fix an error handling path rockchip_dp_probe()
+ - lib: bitmap: order includes alphabetically
+ - lib: bitmap: provide devm_bitmap_alloc() and devm_bitmap_zalloc()
+ - hinic: Use the bitmap API when applicable
+ - net: hinic: fix bug that ethtool get wrong stats
+ - net: hinic: avoid kernel hung in hinic_get_stats64()
+ - [arm64] drm/msm/mdp5: Fix global state lock backoff
+ - mt76: mt76x02u: fix possible memory leak in __mt76x02u_mcu_send_msg
+ - mediatek: mt76: mac80211: Fix missing of_node_put() in mt76_led_init()
+ - tcp: make retransmitted SKB fit into the send window
+ - bpf: Fix subprog names in stack traces.
+ - fs: check FMODE_LSEEK to control internal pipe splicing
+ - wifi: wil6210: debugfs: fix info leak in wil_write_file_wmi()
+ - [i386] can: pch_can: do not report txerr and rxerr during bus-off
+ - can: sja1000: do not report txerr and rxerr during bus-off
+ - [armhf] can: sun4i_can: do not report txerr and rxerr during bus-off
+ - can: kvaser_usb_hydra: do not report txerr and rxerr during bus-off
+ - can: kvaser_usb_leaf: do not report txerr and rxerr during bus-off
+ - can: usb_8dev: do not report txerr and rxerr during bus-off
+ - can: error: specify the values of data[5..7] of CAN error frames
+ - [i386] can: pch_can: pch_can_error(): initialize errc before using it
+ - Bluetooth: hci_intel: Add check for platform_driver_register
+ - wifi: wil6210: debugfs: fix uninitialized variable use in
+ `wil_write_file_wmi()`
+ - wifi: iwlwifi: mvm: fix double list_add at iwl_mvm_mac_wake_tx_queue
+ - wifi: libertas: Fix possible refcount leak in if_usb_probe()
+ - [arm64,armhf] media: cedrus: hevc: Add check for invalid timestamp
+ - net/mlx5e: Remove WARN_ON when trying to offload an unsupported TLS
+ cipher/version
+ - net/mlx5e: Fix the value of MLX5E_MAX_RQ_NUM_MTTS
+ - [arm64] crypto: inside-secure - Add missing MODULE_DEVICE_TABLE for of
+ - inet: add READ_ONCE(sk->sk_bound_dev_if) in INET_MATCH()
+ - tcp: sk->sk_bound_dev_if once in inet_request_bound_dev_if()
+ - ipv6: add READ_ONCE(sk->sk_bound_dev_if) in INET6_MATCH()
+ - tcp: Fix data-races around sysctl_tcp_l3mdev_accept.
+ - net: allow unbound socket for packets in VRF when tcp_l3mdev_accept set
+ - iavf: Fix max_rate limiting
+ - net: rose: fix netdev reference changes
+ - dccp: put dccp_qpolicy_full() and dccp_qpolicy_push() in the same lock
+ - wireguard: ratelimiter: use hrtimer in selftest
+ - wireguard: allowedips: don't corrupt stack when detecting overflow
+ - HID: cp2112: prevent a buffer overflow in cp2112_xfer()
+ - mtd: partitions: Fix refcount leak in parse_redboot_of
+ - [arm64,armhf] usb: xhci: tegra: Fix error check
+ - netfilter: xtables: Bring SPDX identifier back
+ - [arm64,armhf] platform/chrome: cros_ec: Always expose last resume result
+ - KVM: Don't set Accessed/Dirty bits for ZERO_PAGE
+ - mwifiex: Ignore BTCOEX events from the 88W8897 firmware
+ - mwifiex: fix sleep in atomic context bugs caused by dev_coredumpv
+ - misc: rtsx: Fix an error handling path in rtsx_pci_probe()
+ - driver core: fix potential deadlock in __driver_attach
+ - usb: host: xhci: use snprintf() in xhci_decode_trb()
+ - [arm64,armhf] PCI: dwc: Add unroll iATU space support to
+ dw_pcie_disable_atu()
+ - [arm64,armhf] PCI: dwc: Always enable CDM check if "snps,enable-cdm-check"
+ exists
+ - soundwire: bus_type: fix remove and shutdown support
+ - [arm64] KVM: arm64: Don't return from void function
+ - [x86] intel_th: Fix a resource leak in an error handling path
+ - [x86] intel_th: msu-sink: Potential dereference of null pointer
+ - [x86] intel_th: msu: Fix vmalloced buffers
+ - [x86] staging: rtl8192u: Fix sleep in atomic context bug in
+ dm_fsync_timer_callback
+ - [arm64] mmc: sdhci-of-esdhc: Fix refcount leak in
+ esdhc_signal_voltage_switch
+ - mmc: block: Add single read for 4k sector cards
+ - [s390x] KVM: s390: pv: leak the topmost page table when destroy fails
+ - PCI/portdrv: Don't disable AER reporting in get_port_device_capability()
+ - [arm64] PCI: qcom: Set up rev 2.1.0 PARF_PHY before enabling clocks
+ - scsi: smartpqi: Fix DMA direction for RAID requests
+ - [armhf] usb: aspeed-vhub: Fix refcount leak bug in ast_vhub_init_desc()
+ - [arm64,armhf] usb: dwc3: core: Deprecate GCTL.CORESOFTRESET
+ - [arm64,armhf] usb: dwc3: core: Do not perform GCTL_CORE_SOFTRESET during
+ bootup
+ - [arm64,armhf] usb: dwc3: qcom: fix missing optional irq warnings
+ - RDMA/qedr: Improve error logs for rdma_alloc_tid error return
+ - RDMA/qedr: Fix potential memory leak in __qedr_alloc_mr()
+ - [arm64] RDMA/hns: Fix incorrect clearing of interrupt status register
+ - [amd64] RDMA/hfi1: fix potential memory leak in setup_base_ctxt()
+ - gpio: gpiolib-of: Fix refcount bugs in of_mm_gpiochip_add_data()
+ - [mips64el,mipsel] mmc: cavium-octeon: Add of_node_put() when breaking out
+ of loop
+ - HID: alps: Declare U1_UNICORN_LEGACY support
+ - USB: serial: fix tty-port initialized comments
+ - [armhf,i386] platform/olpc: Fix uninitialized data in debugfs write
+ - RDMA/srpt: Duplicate port name members
+ - RDMA/srpt: Introduce a reference count in struct srpt_device
+ - RDMA/srpt: Fix a use-after-free
+ - mm/mmap.c: fix missing call to vm_unacct_memory in mmap_region
+ - RDMA/mlx5: Add missing check for return value in get namespace flow
+ - RDMA/rxe: Fix error unwind in rxe_create_qp()
+ - null_blk: fix ida error handling in null_add_dev()
+ - nvme: use command_id instead of req->tag in trace_nvme_complete_rq()
+ - jbd2: fix outstanding credits assert in jbd2_journal_commit_transaction()
+ - ext4: recover csum seed of tmp_inode after migrating to extents
+ - jbd2: fix assertion 'jh->b_frozen_data == NULL' failure when journal
+ aborted
+ - opp: Fix error check in dev_pm_opp_attach_genpd()
+ - serial: 8250: Export ICR access helpers for internal use
+ - serial: 8250_dw: Store LSR into lsr_saved_flags in dw8250_tx_wait_empty()
+ - profiling: fix shift too large makes kernel panic
+ - tty: n_gsm: Delete gsmtty open SABM frame when config requester
+ - tty: n_gsm: fix user open not possible at responder until initiator open
+ - tty: n_gsm: fix wrong queuing behavior in gsm_dlci_data_output()
+ - tty: n_gsm: fix non flow control frames during mux flow off
+ - tty: n_gsm: fix packet re-transmission without open control channel
+ - tty: n_gsm: fix race condition in gsmld_write()
+ - [arm64] ASoC: qcom: Fix missing of_node_put() in
+ asoc_qcom_lpass_cpu_platform_probe()
+ - vfio: Remove extra put/gets around vfio_device->group
+ - vfio: Simplify the lifetime logic for vfio_device
+ - vfio: Split creation of a vfio_device into init and register ops
+ - tty: n_gsm: fix wrong T1 retry count handling
+ - tty: n_gsm: fix DM command
+ - tty: n_gsm: fix missing corner cases in gsmld_poll()
+ - kfifo: fix kfifo_to_user() return type
+ - lib/smp_processor_id: fix imbalanced instrumentation_end() call
+ - [arm64] mfd: max77620: Fix refcount leak in max77620_initialise_fps
+ - [arm64] iommu/arm-smmu: qcom_iommu: Add of_node_put() when breaking out of
+ loop
+ - [s390x] dump: fix old lowcore virtual vs physical address confusion
+ - fuse: Remove the control interface for virtio-fs
+ - [armhf] ASoC: audio-graph-card: Add of_node_put() in fail path
+ - [arm64] watchdog: armada_37xx_wdt: check the return value of
+ devm_ioremap() in armada_37xx_wdt_probe()
+ - [arm64,armhf] video: fbdev: amba-clcd: Fix refcount leak bugs
+ - video: fbdev: sis: fix typos in SiS_GetModeID()
+ - [powerpc*] pci: Prefer PCI domain assignment via DT 'linux,pci-domain' and
+ alias
+ - f2fs: don't set GC_FAILURE_PIN for background GC
+ - f2fs: write checkpoint during FG_GC
+ - f2fs: fix to remove F2FS_COMPR_FL and tag F2FS_NOCOMP_FL at the same time
+ - [powerpc*] xive: Fix refcount leak in xive_get_max_prio
+ - kprobes: Forbid probing on trampoline and BPF code areas
+ - [powerpc*] pci: Fix PHB numbering when using opal-phbid
+ - sched/deadline: Merge dl_task_can_attach() and dl_cpu_busy()
+ - sched, cpuset: Fix dl_cpu_busy() panic due to empty cs->cpus_allowed
+ - [amd64] x86/numa: Use cpumask_available instead of hardcoded NULL check
+ - video: fbdev: arkfb: Fix a divide-by-zero bug in ark_set_pixclock()
+ - sched: Fix the check of nr_running at queue wakelist
+ - video: fbdev: vt8623fb: Check the size of screen before memset_io()
+ - video: fbdev: arkfb: Check the size of screen before memset_io()
+ - video: fbdev: s3fb: Check the size of screen before memset_io()
+ - [s390x] scsi: zfcp: Fix missing auto port scan and thus missing target
+ ports
+ - scsi: qla2xxx: Fix discovery issues in FC-AL topology
+ - scsi: qla2xxx: Turn off multi-queue for 8G adapters
+ - scsi: qla2xxx: Fix erroneous mailbox timeout after PCI error injection
+ - scsi: qla2xxx: Fix losing FCP-2 targets on long port disable with I/Os
+ - scsi: qla2xxx: Fix losing FCP-2 targets during port perturbation tests
+ - [x86] bugs: Enable STIBP for IBPB mitigated RETBleed
+ - [x86] ftrace/x86: Add back ftrace_expected assignment
+ - __follow_mount_rcu(): verify that mount_lock remains unchanged
+ - spmi: trace: fix stack-out-of-bound access in SPMI tracing functions
+ - [x86] drm/i915/dg1: Update DMC_DEBUG3 register
+ - HID: Ignore battery for Elan touchscreen on HP Spectre X360 15-df0xxx
+ - HID: hid-input: add Surface Go battery quirk
+ - [arm*] drm/vc4: drv: Adopt the dma configuration from the HVS or V3D
+ component
+ - usbnet: smsc95xx: Don't clear read-only PHY interrupt
+ - usbnet: smsc95xx: Avoid link settings race on interrupt reception
+ - [x86] intel_th: pci: Add Meteor Lake-P support
+ - [x86] intel_th: pci: Add Raptor Lake-S PCH support
+ - [x86] intel_th: pci: Add Raptor Lake-S CPU support
+ - [x86] KVM: set_msr_mce: Permit guests to ignore single-bit ECC errors
+ - [x86] KVM: x86: Signal #GP, not -EPERM, on bad WRMSR(MCi_CTL/STATUS)
+ - [amd64] iommu/vt-d: avoid invalid memory access via
+ node_online(NUMA_NO_NODE)
+ - PCI/AER: Write AER Capability only when we control it
+ - PCI/ERR: Bind RCEC devices to the Root Port driver
+ - PCI/ERR: Rename reset_link() to reset_subordinates()
+ - PCI/ERR: Simplify by using pci_upstream_bridge()
+ - PCI/ERR: Simplify by computing pci_pcie_type() once
+ - PCI/ERR: Use "bridge" for clarity in pcie_do_recovery()
+ - PCI/ERR: Avoid negated conditional for clarity
+ - PCI/ERR: Add pci_walk_bridge() to pcie_do_recovery()
+ - PCI/ERR: Recover from RCEC AER errors
+ - PCI/AER: Iterate over error counters instead of error strings
+ - serial: 8250: Dissociate 4MHz Titan ports from Oxford ports
+ - serial: 8250: Correct the clock for OxSemi PCIe devices
+ - serial: 8250_pci: Refactor the loop in pci_ite887x_init()
+ - serial: 8250_pci: Replace dev_*() by pci_*() macros
+ - serial: 8250: Fold EndRun device support into OxSemi Tornado code
+ - dm writecache: set a default MAX_WRITEBACK_JOBS
+ - dm thin: fix use-after-free crash in dm_sm_register_threshold_callback
+ - timekeeping: contribute wall clock to rng on time change
+ - btrfs: reject log replay if there is unsupported RO compat flag
+ - btrfs: reset block group chunk force if we have to wait
+ - [amd64,arm64] ACPI: CPPC: Do not prevent CPPC from working in the future
+ - [x86] KVM: VMX: Drop guest CPUID check for VMXE in vmx_set_cr4()
+ - [x86] KVM: VMX: Drop explicit 'nested' check from vmx_set_cr4()
+ - [x86] KVM: SVM: Drop VMXE check from svm_set_cr4()
+ - [x86] KVM: x86: Move vendor CR4 validity check to dedicated kvm_x86_ops
+ hook
+ - [x86] KVM: nVMX: Inject #UD if VMXON is attempted with incompatible
+ CR0/CR4
+ - [x86] KVM: x86/pmu: preserve IA32_PERF_CAPABILITIES across CPUID refresh
+ - [x86] KVM: x86/pmu: Use binary search to check filtered events
+ - [x86] KVM: x86/pmu: Use different raw event masks for AMD and Intel
+ - [x86] KVM: x86/pmu: Introduce the ctrl_mask value for fixed counter
+ - [x86] KVM: VMX: Mark all PERF_GLOBAL_(OVF)_CTRL bits reserved if there's
+ no vPMU
+ - [x86] KVM: x86/pmu: Ignore pmu->global_ctrl check if vPMU doesn't support
+ global_ctrl
+ - xen-blkback: fix persistent grants negotiation
+ - xen-blkback: Apply 'feature_persistent' parameter when connect
+ - xen-blkfront: Apply 'feature_persistent' parameter when connect
+ - KEYS: asymmetric: enforce SM2 signature use pkey algo
+ - tpm: eventlog: Fix section mismatch for DEBUG_SECTION_MISMATCH
+ - tracing: Use a struct alignof to determine trace event field alignment
+ - ext4: check if directory block is within i_size (CVE-2022-1184)
+ - ext4: add EXT4_INODE_HAS_XATTR_SPACE macro in xattr.h
+ - ext4: fix warning in ext4_iomap_begin as race between bmap and write
+ - ext4: make sure ext4_append() always allocates new block
+ - ext4: fix use-after-free in ext4_xattr_set_entry
+ - ext4: update s_overhead_clusters in the superblock during an on-line
+ resize
+ - ext4: fix extent status tree race in writeback error recovery path
+ - ext4: correct max_inline_xattr_value_size computing
+ - ext4: correct the misjudgment in ext4_iget_extra_inode
+ - dm raid: fix address sanitizer warning in raid_resume
+ - dm raid: fix address sanitizer warning in raid_status
+ - KVM: Add infrastructure and macro to mark VM as bugged
+ - [x86] KVM: x86: Check lapic_in_kernel() before attempting to set a SynIC
+ irq (CVE-2022-2153)
+ - [x86] KVM: x86: Avoid theoretical NULL pointer dereference in
+ kvm_irq_delivery_to_apic_fast() (CVE-2022-2153)
+ - mac80211: fix a memory leak where sta_info is not freed
+ - tcp: fix over estimation in sk_forced_mem_schedule()
+ - Revert "mwifiex: fix sleep in atomic context bugs caused by dev_coredumpv"
+ - [arm*] drm/vc4: change vc4_dma_range_matches from a global to static
+ - Revert "net: usb: ax88179_178a needs FLAG_SEND_ZLP"
+ - Bluetooth: L2CAP: Fix l2cap_global_chan_by_psm regression
+ - [x86] kvm: x86/pmu: Fix the compare function used by the pmu event filter
+ - [arm64] tee: add overflow check in register_shm_helper()
+ - net/9p: Initialize the iounit field during fid creation
+ - net_sched: cls_route: disallow handle of 0
+ - sched/fair: Fix fault in reweight_entity
+ - btrfs: only write the sectors in the vertical stripe which has data
+ stripes
+ - btrfs: raid56: don't trust any cached sector in __raid56_parity_recover()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.138
+ - ALSA: info: Fix llseek return value when using callback
+ - ALSA: hda/realtek: Add quirk for Clevo NS50PU, NS70PU
+ - [x86] mm: Use proper mask when setting PUD mapping
+ - rds: add missing barrier to release_refill
+ - ata: libata-eh: Add missing command name
+ - [arm64] mmc: meson-gx: Fix an error handling path in meson_mmc_probe()
+ - btrfs: fix lost error handling when looking up extended ref on log replay
+ - tracing: Have filter accept "common_cpu" to be consistent
+ - ALSA: usb-audio: More comprehensive mixer map for ASUS ROG Zenith II
+ - can: ems_usb: fix clang's -Wunaligned-access warning
+ - apparmor: fix quiet_denied for file rules
+ - apparmor: fix absroot causing audited secids to begin with =
+ - apparmor: Fix failed mount permission check error message
+ - apparmor: fix aa_label_asxprint return check
+ - apparmor: fix setting unconfined mode on a loaded profile
+ - apparmor: fix overlapping attachment computation
+ - apparmor: fix reference count leak in aa_pivotroot()
+ - apparmor: Fix memleak in aa_simple_write_to_buffer()
+ - Documentation: ACPI: EINJ: Fix obsolete example
+ - NFSv4.1: Don't decrease the value of seq_nr_highest_sent
+ - NFSv4.1: Handle NFS4ERR_DELAY replies to OP_SEQUENCE correctly
+ - NFSv4: Fix races in the legacy idmapper upcall
+ - NFSv4.1: RECLAIM_COMPLETE must handle EACCES
+ - NFSv4/pnfs: Fix a use-after-free bug in open
+ - bpf: Acquire map uref in .init_seq_private for array map iterator
+ - bpf: Acquire map uref in .init_seq_private for hash map iterator
+ - bpf: Acquire map uref in .init_seq_private for sock local storage map
+ iterator
+ - bpf: Acquire map uref in .init_seq_private for sock{map,hash} iterator
+ - bpf: Check the validity of max_rdwr_access for sock local storage map
+ iterator
+ - can: mcp251x: Fix race condition on receive interrupt
+ - [amd64,arm64] net: atlantic: fix aq_vec index out of range error
+ - sunrpc: fix expiry of auth creds
+ - SUNRPC: Reinitialise the backchannel request buffers before reuse
+ - virtio_net: fix memory leak inside XPD_TX with mergeable
+ - devlink: Fix use-after-free after a failed reload
+ - [arm64] pinctrl: qcom: msm8916: Allow CAMSS GP clocks to be muxed
+ - [arm64,armhf] pinctrl: sunxi: Add I/O bias setting for H6 R-PIO
+ - ACPI: property: Return type of acpi_add_nondev_subnodes() should be bool
+ - geneve: do not use RT_TOS for IPv6 flowlabel
+ - ipv6: do not use RT_TOS for IPv6 flowlabel
+ - [x86] plip: avoid rcu debug splat
+ - vsock: Fix memory leak in vsock_connect()
+ - vsock: Set socket state back to SS_UNCONNECTED in vsock_connect_timeout()
+ - dt-bindings: arm: qcom: fix MSM8916 MTP compatibles
+ - dt-bindings: clock: qcom,gcc-msm8996: add more GCC clock sources
+ - ceph: use correct index when encoding client supported features
+ - ceph: don't leak snap_rwsem in handle_cap_grant
+ - nfp: ethtool: fix the display error of `ethtool -m DEVNAME`
+ - xen/xenbus: fix return type in xenbus_file_read()
+ - atm: idt77252: fix use-after-free bugs caused by tst_timer
+ - geneve: fix TOS inheriting for ipv4
+ - [arm64] dpaa2-eth: trace the allocated address instead of page struct
+ - iavf: Fix adminq error handling
+ - netfilter: nf_tables: really skip inactive sets when allocating name
+ - netfilter: nf_tables: validate NFTA_SET_ELEM_OBJREF based on
+ NFT_SET_OBJECT flag
+ - netfilter: nf_tables: check NFT_SET_CONCAT flag if field_count is
+ specified
+ - [powerpc*] pci: Fix get_phb_number() locking
+ - [arm64,armhf] spi: meson-spicc: add local pow2 clock ops to preserve rate
+ between messages
+ - [arm64,armhf] net: dsa: mv88e6060: prevent crash on an unused port
+ - [arm64] net: dsa: felix: fix ethtool 256-511 and 512-1023 TX packet
+ counters
+ - net: genl: fix error path memory leak in policy dumping
+ - ice: Ignore EEXIST when setting promisc mode
+ - [arm64,armhf] i2c: imx: Make sure to unregister adapter on remove()
+ - regulator: pca9450: Remove restrictions for regulator-name
+ - i40e: Fix to stop tx_timeout recovery if GLOBR fails
+ - [arm64,armhf] fec: Fix timer capture timing in `fec_ptp_enable_pps()`
+ - [x86] stmmac: intel: Add a missing clk_disable_unprepare() call in
+ intel_eth_pci_remove()
+ - igb: Add lock to avoid data race
+ - kbuild: fix the modules order between drivers and libs
+ - locking/atomic: Make test_and_*_bit() ordered on failure
+ - [x86] ASoC: SOF: intel: move sof_intel_dsp_desc() forward
+ - [arm64] drm/meson: Fix refcount bugs in
+ meson_vpu_has_available_connectors()
+ - audit: log nftables configuration change events once per table
+ - netfilter: nftables: add helper function to set the base sequence number
+ - netfilter: add helper function to set up the nfnetlink header and use it
+ - [armhf] drm/sun4i: dsi: Prevent underflow when computing packet sizes
+ - PCI: Add ACS quirk for Broadcom BCM5750x NICs
+ - [arm64,armhf] platform/chrome: cros_ec_proto: don't show MKBP version if
+ unsupported
+ - usb: gadget: uvc: call uvc uvcg_warn on completed status instead of
+ uvcg_info
+ - [arm64,armhf] irqchip/tegra: Fix overflow implicit truncation warnings
+ - [arm64] drm/meson: Fix overflow implicit truncation warnings
+ - [armhf] clk: ti: Stop using legacy clkctrl names for omap4 and 5
+ - [arm*] usb: dwc2: gadget: remove D+ pull-up while no vbus with
+ usb-role-switch
+ - [x86] vboxguest: Do not use devm for irq
+ - uacce: Handle parent device removal or parent driver module rmmod
+ - zram: do not lookup algorithm in backends table
+ - [arm64] clk: qcom: clk-alpha-pll: fix clk_trion_pll_configure description
+ - scsi: lpfc: Prevent buffer overflow crashes in debugfs with malformed user
+ input
+ - gadgetfs: ep_io - wait until IRQ finishes
+ - [x86] pinctrl: intel: Check against matching data instead of ACPI
+ companion
+ - [powerpc*] cxl: Fix a memory leak in an error handling path
+ - [arm64] PCI/ACPI: Guard ARM64-specific mcfg_quirks
+ - RDMA/rxe: Limit the number of calls to each tasklet
+ - md: Notify sysfs sync_completed in md_reap_sync_thread()
+ - nvmet-tcp: fix lockdep complaint on nvmet_tcp_wq flush during queue
+ teardown
+ - drivers:md:fix a potential use-after-free bug
+ - ext4: avoid remove directory when directory is corrupted
+ - ext4: avoid resizing to a partial cluster size
+ - lib/list_debug.c: Detect uninitialized lists
+ - vfio: Clear the caps->buf to NULL after free
+ - [mips64el,mipsel] cavium-octeon: Fix missing of_node_put() in
+ octeon2_usb_clocks_start
+ - modules: Ensure natural alignment for .altinstructions and __bug_table
+ sections
+ - watchdog: export lockup_detector_reconfigure
+ - ALSA: core: Add async signal helpers
+ - ALSA: timer: Use deferred fasync helper
+ - ALSA: control: Use deferred fasync helper
+ - f2fs: fix to avoid use f2fs_bug_on() in f2fs_new_node_page()
+ - f2fs: fix to do sanity check on segment type in build_sit_entries()
+ - smb3: check xattr value length earlier
+ - [powerpc*] 64: Init jump labels before parse_early_param()
+ - netfilter: nftables: fix a warning message in
+ nf_tables_commit_audit_collect()
+ - netfilter: nf_tables: fix audit memory leak in nf_tables_commit
+ - tracing/probes: Have kprobes and uprobes use $COMM too
+ - can: j1939: j1939_sk_queue_activate_next_locked(): replace WARN_ON_ONCE
+ with netdev_warn_once()
+ - can: j1939: j1939_session_destroy(): fix memory leak of skbs
+ - PCI/ERR: Retain status from error notification
+ - qrtr: Convert qrtr_ports from IDR to XArray
+ - bpf: Fix KASAN use-after-free Read in compute_effective_progs
+ - [arm64] tee: fix memory leak in tee_shm_register()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.139
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.140
+ - audit: fix potential double free on error path from
+ fsnotify_add_inode_mark
+ - pinctrl: amd: Don't save/restore interrupt status and wake status bits
+ - xfs: prevent a WARN_ONCE() in xfs_ioc_attr_list()
+ - xfs: reject crazy array sizes being fed to XFS_IOC_GETBMAP*
+ - fs: remove __sync_filesystem
+ - vfs: make sync_filesystem return errors from ->sync_fs
+ - xfs: return errors in xfs_fs_sync_fs
+ - xfs: only bother with sync_filesystem during readonly remount
+ - kernel/sched: Remove dl_boosted flag comment
+ - xfrm: fix refcount leak in __xfrm_policy_check()
+ - xfrm: clone missing x->lastused in xfrm_do_migrate
+ - af_key: Do not call xfrm_probe_algs in parallel (CVE-2022-3028)
+ - xfrm: policy: fix metadata dst->dev xmit null pointer dereference
+ - NFS: Don't allocate nfs_fattr on the stack in __nfs42_ssc_open()
+ - NFSv4.2 fix problems with __nfs42_ssc_open
+ - SUNRPC: RPC level errors should set task->tk_rpc_status
+ - mm/huge_memory.c: use helper function migration_entry_to_page()
+ - mm/smaps: don't access young/dirty bit if pte unpresent
+ - rose: check NULL rose_loopback_neigh->loopback
+ - ice: xsk: Force rings to be sized to power of 2
+ - ice: xsk: prohibit usage of non-balanced queue id
+ - net/mlx5e: Properly disable vlan strip on non-UL reps
+ - bonding: 802.3ad: fix no transmission of LACPDUs
+ - net: ipvtap - add __init/__exit annotations to module init/exit funcs
+ - netfilter: ebtables: reject blobs that don't provide all entry points
+ - bnxt_en: fix NQ resource accounting during vf creation on 57500 chips
+ - netfilter: nft_payload: report ERANGE for too long offset and length
+ - netfilter: nft_payload: do not truncate csum_offset and csum_type
+ - netfilter: nf_tables: do not leave chain stats enabled on error
+ - netfilter: nft_osf: restrict osf to ipv4, ipv6 and inet families
+ - netfilter: nft_tunnel: restrict it to netdev family
+ - netfilter: nftables: remove redundant assignment of variable err
+ - netfilter: nf_tables: consolidate rule verdict trace call
+ - netfilter: nft_cmp: optimize comparison for 16-bytes
+ - netfilter: bitwise: improve error goto labels
+ - netfilter: nf_tables: upfront validation of data via nft_data_init()
+ - netfilter: nf_tables: disallow jump to implicit chain from set element
+ - netfilter: nf_tables: disallow binding to already bound chain
+ (CVE-2022-39190)
+ - tcp: tweak len/truesize ratio for coalesce candidates
+ - net: Fix data-races around sysctl_[rw]mem(_offset)?.
+ - net: Fix data-races around sysctl_[rw]mem_(max|default).
+ - net: Fix data-races around weight_p and dev_weight_[rt]x_bias.
+ - net: Fix data-races around netdev_max_backlog.
+ - net: Fix data-races around netdev_tstamp_prequeue.
+ - ratelimit: Fix data-races in ___ratelimit().
+ - bpf: Folding omem_charge() into sk_storage_charge()
+ - net: Fix data-races around sysctl_optmem_max.
+ - net: Fix a data-race around sysctl_tstamp_allow_data.
+ - net: Fix a data-race around sysctl_net_busy_poll.
+ - net: Fix a data-race around sysctl_net_busy_read.
+ - net: Fix a data-race around netdev_budget.
+ - net: Fix a data-race around netdev_budget_usecs.
+ - net: Fix data-races around sysctl_fb_tunnels_only_for_init_net.
+ - net: Fix data-races around sysctl_devconf_inherit_init_net.
+ - net: Fix a data-race around sysctl_somaxconn.
+ - ixgbe: stop resetting SYSTIME in ixgbe_ptp_start_cyclecounter
+ - rxrpc: Fix locking in rxrpc's sendmsg
+ - btrfs: fix silent failure when deleting root reference
+ - btrfs: replace: drop assert for suspended replace
+ - btrfs: add info when mount fails due to stale replace target
+ - btrfs: check if root is readonly while setting security xattr
+ - [x86] perf/x86/lbr: Enable the branch type for the Arch LBR by default
+ - [amd64] x86/unwind/orc: Unwind ftrace trampolines with correct ORC entry
+ - [x86] bugs: Add "unknown" reporting for MMIO Stale Data
+ - loop: Check for overflow while configuring loop
+ - asm-generic: sections: refactor memory_intersects
+ - [s390x] fix double free of GS and RI CBs on fork() failure
+ - [x86] ACPI: processor: Remove freq Qos request for all CPUs
+ - xen/privcmd: fix error exit of privcmd_ioctl_dm_op()
+ - mm/hugetlb: fix hugetlb not supporting softdirty tracking
+ - Revert "md-raid: destroy the bitmap after destroying the thread"
+ - md: call __md_stop_writes in md_stop
+ - [arm64] Fix match_list for erratum 1286807 on Arm Cortex-A76
+ - Documentation/ABI: Mention retbleed vulnerability info file for sysfs
+ - blk-mq: fix io hung due to missing commit_rqs
+ - [x86] perf/x86/intel/uncore: Fix broken read_counter() for SNB IMC PMU
+ - [x86] scsi: storvsc: Remove WQ_MEM_RECLAIM from storvsc_error_wq
+ - bpf: Don't use tnum_range on array range checking for poke descriptors
+ (CVE-2022-2905)
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 18
+ * certs: Rotate to use the "Debian Secure Boot Signer 2022 - linux"
+ certificate (Closes: #1018752)
+ * [x86] nospec: Unwreck the RSB stuffing
+ * [x86] nospec: Fix i386 RSB stuffing (Closes: #1017425)
+ * mm: Force TLB flush for PFNMAP mappings before unlink_file_vma()
+ (CVE-2022-39188)
+ * Revert "PCI/portdrv: Don't disable AER reporting in
+ get_port_device_capability()"
+ * bpf: Don't redirect packets with invalid pkt_len
+ * mm/rmap: Fix anon_vma->degree ambiguity leading to double-reuse
+ * net/af_packet: check len when min_header_len equals to 0
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 02 Sep 2022 15:54:53 +0200
+
+linux (5.10.136-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.128
+ - MAINTAINERS: add Amir as xfs maintainer for 5.10.y
+ - drm: remove drm_fb_helper_modinit
+ - tick/nohz: unexport __init-annotated tick_nohz_full_setup()
+ - bcache: memset on stack variables in bch_btree_check() and
+ bch_sectors_dirty_init()
+ - xfs: use kmem_cache_free() for kmem_cache objects
+ - xfs: punch out data fork delalloc blocks on COW writeback failure
+ - xfs: Fix the free logic of state in xfs_attr_node_hasname
+ - xfs: remove all COW fork extents when remounting readonly
+ - xfs: check sb_meta_uuid for dabuf buffer recovery
+ - [powerpc*] ftrace: Remove ftrace init tramp once kernel init is complete
+ - [arm64] net: mscc: ocelot: allow unregistered IP multicast flooding
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.129
+ - drm/amdgpu: To flush tlb for MMHUB of RAVEN series
+ - ipv6: take care of disable_policy when restoring routes
+ - nvme-pci: add NVME_QUIRK_BOGUS_NID for ADATA XPG SX6000LNP (AKA SPECTRIX
+ S40G)
+ - nvdimm: Fix badblocks clear off-by-one error
+ - [powerpc*] bpf: Fix use of user_pt_regs in uapi
+ - dm raid: fix accesses beyond end of raid member array
+ - [s390x] archrandom: simplify back to earlier design and initialize earlier
+ - SUNRPC: Fix READ_PLUS crasher (Closes: #1014793)
+ - net: usb: ax88179_178a: Fix packet receiving
+ - virtio-net: fix race between ndo_open() and virtio_device_ready()
+ - [armhf] net: dsa: bcm_sf2: force pause link settings
+ - net: tun: unlink NAPI from device on destruction
+ - net: tun: stop NAPI when detaching queues
+ - net: dp83822: disable false carrier interrupt
+ - net: dp83822: disable rx error interrupt
+ - RDMA/qedr: Fix reporting QP timeout attribute
+ - RDMA/cm: Fix memory leak in ib_cm_insert_listen
+ - linux/dim: Fix divide by 0 in RDMA DIM
+ - usbnet: fix memory allocation in helpers
+ - net: ipv6: unexport __init-annotated seg6_hmac_net_init()
+ - NFSD: restore EINVAL error translation in nfsd_commit()
+ - netfilter: nft_dynset: restore set element counter when failing to update
+ - net/sched: act_api: Notify user space if any actions were flushed before
+ error
+ - net: bonding: fix possible NULL deref in rlb code
+ - net: bonding: fix use-after-free after 802.3ad slave unbind
+ - tipc: move bc link creation back to tipc_node_create
+ - epic100: fix use after free on rmmod
+ - io_uring: ensure that send/sendmsg and recv/recvmsg check sqe->ioprio
+ - tunnels: do not assume mac header is set in skb_tunnel_check_pmtu()
+ - net: tun: avoid disabling NAPI twice
+ - xfs: use current->journal_info for detecting transaction recursion
+ - xfs: rename variable mp to parsing_mp
+ - xfs: Skip repetitive warnings about mount options
+ - xfs: ensure xfs_errortag_random_default matches XFS_ERRTAG_MAX
+ - xfs: fix xfs_trans slab cache name
+ - xfs: update superblock counters correctly for !lazysbcount
+ - xfs: fix xfs_reflink_unshare usage of filemap_write_and_wait_range
+ - tcp: add a missing nf_reset_ct() in 3WHS handling
+ - xen/gntdev: Avoid blocking in unmap_grant_pages()
+ - [arm64] drivers: cpufreq: Add missing of_node_put() in qoriq-cpufreq.c
+ - sit: use min
+ - ipv6/sit: fix ipip6_tunnel_get_prl return value
+ - hwmon: (ibmaem) don't call platform_device_del() if platform_device_add()
+ fails
+ - net: usb: qmi_wwan: add Telit 0x1060 composition
+ - net: usb: qmi_wwan: add Telit 0x1070 composition
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.130
+ - mm/slub: add missing TID updates on slab deactivation
+ - ALSA: hda/realtek: Add quirk for Clevo L140PU
+ - can: bcm: use call_rcu() instead of costly synchronize_rcu()
+ - can: gs_usb: gs_usb_open/close(): fix memory leak
+ - bpf: Fix incorrect verifier simulation around jmp32's jeq/jne
+ - bpf: Fix insufficient bounds propagation from adjust_scalar_min_max_vals
+ - usbnet: fix memory leak in error case
+ - netfilter: nft_set_pipapo: release elements in clone from abort path
+ - [amd64] iommu/vt-d: Fix PCI bus rescan device hot add
+ - PM: runtime: Redefine pm_runtime_release_supplier()
+ - memregion: Fix memregion_free() fallback definition
+ - video: of_display_timing.h: include errno.h
+ - [powerpc*] powernv: delay rng platform device creation until later in boot
+ - can: kvaser_usb: replace run-time checks with struct
+ kvaser_usb_driver_info
+ - can: kvaser_usb: kvaser_usb_leaf: fix CAN clock frequency regression
+ - can: kvaser_usb: kvaser_usb_leaf: fix bittiming limits
+ - xfs: remove incorrect ASSERT in xfs_rename
+ - [armhf] meson: Fix refcount leak in meson_smp_prepare_cpus
+ - [armhf] pinctrl: sunxi: a83t: Fix NAND function name for some pins
+ - [arm64] dts: imx8mp-evk: correct mmc pad settings
+ - [arm64] dts: imx8mp-evk: correct the uart2 pinctl value
+ - [arm64] dts: imx8mp-evk: correct gpio-led pad settings
+ - [arm64] dts: imx8mp-evk: correct I2C3 pad settings
+ - [arm64,armhf] pinctrl: sunxi: sunxi_pconf_set: use correct offset
+ - [arm64] dts: qcom: msm8992-*: Fix vdd_lvs1_2-supply typo
+ - xsk: Clear page contiguity bit when unmapping pool
+ - i40e: Fix dropped jumbo frames statistics
+ - r8169: fix accessing unset transport header
+ - [armhf] dmaengine: imx-sdma: Allow imx8m for imx7 FW revs
+ - misc: rtsx_usb: fix use of dma mapped buffer for usb bulk transfer
+ - misc: rtsx_usb: use separate command and response buffers
+ - misc: rtsx_usb: set return value in rsp_buf alloc err path
+ - dt-bindings: dma: allwinner,sun50i-a64-dma: Fix min/max typo
+ - ida: don't use BUG_ON() for debugging
+ - [arm64,armhf] dmaengine: pl330: Fix lockdep warning about non-static key
+ - [armhf] dmaengine: ti: Fix refcount leak in ti_dra7_xbar_route_allocate
+ - [armhf] dmaengine: ti: Add missing put_device in
+ ti_dra7_xbar_route_allocate
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.131
+ - [armhf] Revert "mtd: rawnand: gpmi: Fix setting busy timeout setting"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.132
+ - [x86] ALSA: hda - Add fixup for Dell Latitidue E5430
+ - [x86] ALSA: hda/conexant: Apply quirk for another HP ProDesk 600 G3 model
+ - [x86] ALSA: hda/realtek: Fix headset mic for Acer SF313-51
+ - [x86] ALSA: hda/realtek - Fix headset mic problem for a HP machine with
+ alc671
+ - [x86] ALSA: hda/realtek - Fix headset mic problem for a HP machine with
+ alc221
+ - [x86] ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop
+ - xen/netback: avoid entering xenvif_rx_next_skb() with an empty rx queue
+ - fix race between exit_itimers() and /proc/pid/timers
+ - mm: split huge PUD on wp_huge_pud fallback
+ - tracing/histograms: Fix memory leak problem
+ - net: sock: tracing: Fix sock_exceed_buf_limit not to dereference stale
+ pointer
+ - ip: fix dflt addr selection for connected nexthop
+ - [armhf] 9213/1: Print message about disabled Spectre workarounds only
+ once
+ - [armel,armhf] 9214/1: alignment: advance IT state after emulating Thumb
+ instruction
+ - wifi: mac80211: fix queue selection for mesh/OCB interfaces
+ - cgroup: Use separate src/dst nodes when preloading css_sets for migration
+ - btrfs: return -EAGAIN for NOWAIT dio reads/writes on compressed and
+ inline extents
+ - [arm64,armhf] drm/panfrost: Put mapping instead of shmem obj on
+ panfrost_mmu_map_fault_addr() error
+ - [arm64,armhf] drm/panfrost: Fix shrinker list corruption by madvise IOCTL
+ - fs/remap: constrain dedupe of EOF blocks
+ - nilfs2: fix incorrect masking of permission flags for symlinks
+ - sh: convert nommu io{re,un}map() to static inline functions
+ - Revert "evm: Fix memleak in init_desc"
+ - ext4: fix race condition between ext4_write and ext4_convert_inline_data
+ - [armhf] dts: imx6qdl-ts7970: Fix ngpio typo and count
+ - [armhf] 9209/1: Spectre-BHB: avoid pr_info() every time a CPU comes out
+ of idle
+ - [armel,armhf] 9210/1: Mark the FDT_FIXED sections as shareable
+ - net/mlx5e: Fix capability check for updating vnic env counters
+ - [x86] drm/i915: fix a possible refcount leak in
+ intel_dp_add_mst_connector()
+ - ima: Fix a potential integer overflow in ima_appraise_measurement
+ - [arm64,armhf] ASoC: sgtl5000: Fix noise on shutdown/remove
+ - [x86] ASoC: Intel: Skylake: Correct the ssp rate discovery in
+ skl_get_ssp_clks()
+ - [x86] ASoC: Intel: Skylake: Correct the handling of fmt_config flexible
+ array
+ - sysctl: Fix data races in proc_dointvec().
+ - sysctl: Fix data races in proc_douintvec().
+ - sysctl: Fix data races in proc_dointvec_minmax().
+ - sysctl: Fix data races in proc_douintvec_minmax().
+ - sysctl: Fix data races in proc_doulongvec_minmax().
+ - sysctl: Fix data races in proc_dointvec_jiffies().
+ - tcp: Fix a data-race around sysctl_tcp_max_orphans.
+ - inetpeer: Fix data-races around sysctl.
+ - net: Fix data-races around sysctl_mem.
+ - cipso: Fix data-races around sysctl.
+ - icmp: Fix data-races around sysctl.
+ - ipv4: Fix a data-race around sysctl_fib_sync_mem.
+ - [armhf] dts: sunxi: Fix SPI NOR campatible on Orange Pi Zero
+ - [x86] drm/i915/gt: Serialize TLB invalidates with GT resets
+ - sysctl: Fix data-races in proc_dointvec_ms_jiffies().
+ - icmp: Fix a data-race around sysctl_icmp_ratelimit.
+ - icmp: Fix a data-race around sysctl_icmp_ratemask.
+ - raw: Fix a data-race around sysctl_raw_l3mdev_accept.
+ - ipv4: Fix data-races around sysctl_ip_dynaddr.
+ - nexthop: Fix data-races around nexthop_compat_mode.
+ - [armhf] net: ftgmac100: Hold reference returned by of_get_child_by_name()
+ - ima: force signature verification when CONFIG_KEXEC_SIG is configured
+ - ima: Fix potential memory leak in ima_init_crypto()
+ - sfc: fix use after free when disabling sriov
+ - seg6: fix skb checksum evaluation in SRH encapsulation/insertion
+ - seg6: fix skb checksum in SRv6 End.B6 and End.B6.Encaps behaviors
+ - seg6: bpf: fix skb checksum in bpf_push_seg6_encap()
+ - sfc: fix kernel panic when creating VF
+ - net: atlantic: remove deep parameter on suspend/resume functions
+ - net: atlantic: remove aq_nic_deinit() when resume
+ - [x86] KVM: x86: Fully initialize 'struct kvm_lapic_irq' in
+ kvm_pv_kick_cpu_op()
+ - net/tls: Check for errors in tls_device_init
+ - mm: sysctl: fix missing numa_stat when !CONFIG_HUGETLB_PAGE
+ - virtio_mmio: Add missing PM calls to freeze/restore
+ - virtio_mmio: Restore guest page size on resume
+ - netfilter: br_netfilter: do not skip all hooks with 0 priority
+ - [arm64] scsi: hisi_sas: Limit max hw sectors for v3 HW
+ - [powerpc*] cpufreq: pmac32-cpufreq: Fix refcount leak bug
+ - [x86] platform/x86: hp-wmi: Ignore Sanitization Mode event
+ - net: tipc: fix possible refcount leak in tipc_sk_create()
+ - nvme-tcp: always fail a request when sending it failed
+ - nvme: fix regression when disconnect a recovering ctrl
+ - net: sfp: fix memory leak in sfp_probe()
+ - ASoC: ops: Fix off by one in range control validation
+ - [armhf] pinctrl: aspeed: Fix potential NULL dereference in
+ aspeed_pinmux_set_mux()
+ - [x86] ASoC: SOF: Intel: hda-loader: Clarify the cl_dsp_init() flow
+ - ASoC: dapm: Initialise kcontrol data for mux/demux controls
+ - [amd64] Clear .brk area at early boot
+ - [armhf] dts: stm32: use the correct clock source for CEC on stm32mp151
+ - Revert "can: xilinx_can: Limit CANFD brp to 2"
+ - nvme-pci: phison e16 has bogus namespace ids
+ - signal handling: don't use BUG_ON() for debugging
+ - USB: serial: ftdi_sio: add Belimo device ids
+ - usb: typec: add missing uevent when partner support PD
+ - [arm64,armhf] usb: dwc3: gadget: Fix event pending check
+ - [armhf] tty: serial: samsung_tty: set dma burst_size to 1
+ - vt: fix memory overlapping when deleting chars in the buffer
+ - serial: 8250: fix return error code in serial8250_request_std_resource()
+ - [armhf] serial: stm32: Clear prev values before setting RTS delays
+ - [arm*] serial: pl011: UPSTAT_AUTORTS requires .throttle/unthrottle
+ - serial: 8250: Fix PM usage_count for console handover
+ - [x86] pat: Fix x86_has_pat_wp()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.133
+ - [amd64] Preparation for mitigating RETbleed:
+ + KVM/VMX: Use TEST %REG,%REG instead of CMP $0,%REG in vmenter.S
+ + KVM/nVMX: Use __vmx_vcpu_run in nested_vmx_check_vmentry_hw
+ + objtool: Refactor ORC section generation
+ + objtool: Add 'alt_group' struct
+ + objtool: Support stack layout changes in alternatives
+ + objtool: Support retpoline jump detection for vmlinux.o
+ + objtool: Assume only ELF functions do sibling calls
+ + objtool: Combine UNWIND_HINT_RET_OFFSET and UNWIND_HINT_FUNC
+ + x86/xen: Support objtool validation in xen-asm.S
+ + x86/xen: Support objtool vmlinux.o validation in xen-head.S
+ + x86/alternative: Merge include files
+ + x86/alternative: Support not-feature
+ + x86/alternative: Support ALTERNATIVE_TERNARY
+ + x86/alternative: Use ALTERNATIVE_TERNARY() in _static_cpu_has()
+ + x86/insn: Rename insn_decode() to insn_decode_from_regs()
+ + x86/insn: Add a __ignore_sync_check__ marker
+ + x86/insn: Add an insn_decode() API
+ + x86/insn-eval: Handle return values from the decoder
+ + x86/alternative: Use insn_decode()
+ + x86: Add insn_decode_kernel()
+ + x86/alternatives: Optimize optimize_nops()
+ + x86/retpoline: Simplify retpolines
+ + objtool: Correctly handle retpoline thunk calls
+ + objtool: Handle per arch retpoline naming
+ + objtool: Rework the elf_rebuild_reloc_section() logic
+ + objtool: Add elf_create_reloc() helper
+ + objtool: Create reloc sections implicitly
+ + objtool: Extract elf_strtab_concat()
+ + objtool: Extract elf_symbol_add()
+ + objtool: Add elf_create_undef_symbol()
+ + objtool: Keep track of retpoline call sites
+ + objtool: Cache instruction relocs
+ + objtool: Skip magical retpoline .altinstr_replacement
+ + objtool/x86: Rewrite retpoline thunk calls
+ + objtool: Support asm jump tables
+ + x86/alternative: Optimize single-byte NOPs at an arbitrary position
+ + objtool: Fix .symtab_shndx handling for elf_create_undef_symbol()
+ + objtool: Only rewrite unconditional retpoline thunk calls
+ + objtool/x86: Ignore __x86_indirect_alt_* symbols
+ + objtool: Don't make .altinstructions writable
+ + objtool: Teach get_alt_entry() about more relocation types
+ + objtool: print out the symbol type when complaining about it
+ + objtool: Remove reloc symbol type checks in get_alt_entry()
+ + objtool: Make .altinstructions section entry size consistent
+ + objtool: Introduce CFI hash
+ + objtool: Handle __sanitize_cov*() tail calls
+ + objtool: Classify symbols
+ + objtool: Explicitly avoid self modifying code in .altinstr_replacement
+ + objtool,x86: Replace alternatives with .retpoline_sites
+ + x86/retpoline: Remove unused replacement symbols
+ + x86/asm: Fix register order
+ + x86/asm: Fixup odd GEN-for-each-reg.h usage
+ + x86/retpoline: Move the retpoline thunk declarations to nospec-branch.h
+ + x86/retpoline: Create a retpoline thunk array
+ + x86/alternative: Implement .retpoline_sites support
+ + x86/alternative: Handle Jcc __x86_indirect_thunk_\reg
+ + x86/alternative: Try inline spectre_v2=retpoline,amd
+ + x86/alternative: Add debug prints to apply_retpolines()
+ + bpf,x86: Simplify computing label offsets
+ + bpf,x86: Respect X86_FEATURE_RETPOLINE*
+ + x86/lib/atomic64_386_32: Rename things
+ - [amd64] Mitigate straight-line speculation:
+ + x86: Prepare asm files for straight-line-speculation
+ + x86: Prepare inline-asm for straight-line-speculation
+ + x86/alternative: Relax text_poke_bp() constraint
+ + objtool: Add straight-line-speculation validation
+ + x86: Add straight-line-speculation mitigation
+ + tools arch: Update arch/x86/lib/mem{cpy,set}_64.S copies used in 'perf
+ bench mem memcpy'
+ + kvm/emulate: Fix SETcc emulation function offsets with SLS
+ + objtool: Default ignore INT3 for unreachable
+ + crypto: x86/poly1305 - Fixup SLS
+ + objtool: Fix SLS validation for kcov tail-call replacement
+ - objtool: Fix code relocs vs weak symbols
+ - objtool: Fix type of reloc::addend
+ - objtool: Fix symbol creation
+ - x86/entry: Remove skip_r11rcx
+ - objtool: Fix objtool regression on x32 systems
+ - x86/realmode: build with -D__DISABLE_EXPORTS
+ - [amd64] Add mitigations for RETbleed on AMD/Hygon (CVE-2022-29900) and
+ Intel (CVE-2022-29901) processors:
+ + x86/kvm/vmx: Make noinstr clean
+ + x86/cpufeatures: Move RETPOLINE flags to word 11
+ + x86/retpoline: Cleanup some #ifdefery
+ + x86/retpoline: Swizzle retpoline thunk
+ + Makefile: Set retpoline cflags based on CONFIG_CC_IS_{CLANG,GCC}
+ + x86/retpoline: Use -mfunction-return
+ + x86: Undo return-thunk damage
+ + x86,objtool: Create .return_sites
+ + objtool: skip non-text sections when adding return-thunk sites
+ + x86,static_call: Use alternative RET encoding
+ + x86/ftrace: Use alternative RET encoding
+ + x86/bpf: Use alternative RET encoding
+ + x86/kvm: Fix SETcc emulation for return thunks
+ + x86/vsyscall_emu/64: Don't use RET in vsyscall emulation
+ + x86/sev: Avoid using __x86_return_thunk
+ + x86: Use return-thunk in asm code
+ + objtool: Treat .text.__x86.* as noinstr
+ + x86: Add magic AMD return-thunk
+ + x86/bugs: Report AMD retbleed vulnerability
+ + x86/bugs: Add AMD retbleed= boot parameter
+ + x86/bugs: Enable STIBP for JMP2RET
+ + x86/bugs: Keep a per-CPU IA32_SPEC_CTRL value
+ + x86/entry: Add kernel IBRS implementation
+ + x86/bugs: Optimize SPEC_CTRL MSR writes
+ + x86/speculation: Add spectre_v2=ibrs option to support Kernel IBRS
+ + x86/bugs: Split spectre_v2_select_mitigation() and
+ spectre_v2_user_select_mitigation()
+ + x86/bugs: Report Intel retbleed vulnerability
+ + intel_idle: Disable IBRS during long idle
+ + objtool: Update Retpoline validation
+ + x86/xen: Rename SYS* entry points
+ + x86/bugs: Add retbleed=ibpb
+ + x86/bugs: Do IBPB fallback check only once
+ + objtool: Add entry UNRET validation
+ + x86/cpu/amd: Add Spectral Chicken
+ + x86/speculation: Fix RSB filling with CONFIG_RETPOLINE=n
+ + x86/speculation: Fix firmware entry SPEC_CTRL handling
+ + x86/speculation: Fix SPEC_CTRL write on SMT state change
+ + x86/speculation: Use cached host SPEC_CTRL value for guest entry/exit
+ + x86/speculation: Remove x86_spec_ctrl_mask
+ + objtool: Re-add UNWIND_HINT_{SAVE_RESTORE}
+ + KVM: VMX: Flatten __vmx_vcpu_run()
+ + KVM: VMX: Convert launched argument to flags
+ + KVM: VMX: Prevent guest RSB poisoning attacks with eIBRS
+ + KVM: VMX: Fix IBRS handling after vmexit
+ + x86/speculation: Fill RSB on vmexit for IBRS
+ + x86/common: Stamp out the stepping madness
+ + x86/cpu/amd: Enumerate BTC_NO
+ + x86/retbleed: Add fine grained Kconfig knobs
+ + x86/bugs: Add Cannon lake to RETBleed affected CPU list
+ + x86/bugs: Do not enable IBPB-on-entry when IBPB is not supported
+ + x86/kexec: Disable RET on kexec
+ + x86/speculation: Disable RRSBA behavior
+ - x86/static_call: Serialize __static_call_fixup() properly
+ - tools/insn: Restore the relative include paths for cross building
+ - x86, kvm: use proper ASM macros for kvm_vcpu_is_preempted
+ - x86/xen: Fix initialisation in hypercall_page after rethunk
+ - x86/ftrace: Add UNWIND_HINT_FUNC annotation for ftrace_stub
+ - x86/asm/32: Fix ANNOTATE_UNRET_SAFE use on 32-bit
+ - x86/speculation: Use DECLARE_PER_CPU for x86_spec_ctrl_current
+ - efi/x86: use naked RET on mixed mode call wrapper
+ - x86/kvm: fix FASTOP_SIZE when return thunks are enabled
+ - KVM: emulate: do not adjust size of fastop and setcc subroutines
+ - tools arch x86: Sync the msr-index.h copy with the kernel sources
+ - tools headers cpufeatures: Sync with the kernel sources
+ - x86/bugs: Remove apostrophe typo
+ - um: Add missing apply_returns()
+ - x86: Use -mindirect-branch-cs-prefix for RETPOLINE builds
+ - kvm: fix objtool relocation warning
+ - objtool: Fix elf_create_undef_symbol() endianness
+ - tools arch: Update arch/x86/lib/mem{cpy,set}_64.S copies used in 'perf
+ bench mem memcpy' - again
+ - tools headers: Remove broken definition of __LITTLE_ENDIAN
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.134
+ - [armhf] pinctrl: stm32: fix optional IRQ support to gpios
+ - lockdown: Fix kexec lockdown bypass with ima policy (CVE-2022-21505)
+ - io_uring: Use original task for req identity in io_identity_cow()
+ - xen/gntdev: Ignore failure to unmap INVALID_GRANT_HANDLE
+ - docs: net: explain struct net_device lifetime
+ - net: make free_netdev() more lenient with unregistering devices
+ - net: make sure devices go through netdev_wait_all_refs
+ - net: move net_set_todo inside rollback_registered()
+ - net: inline rollback_registered()
+ - net: move rollback_registered_many()
+ - net: inline rollback_registered_many()
+ - [amd64] PCI: hv: Fix multi-MSI to allow more than one MSI vector
+ - [amd64] PCI: hv: Fix hv_arch_irq_unmask() for multi-MSI
+ - [amd64] PCI: hv: Reuse existing IRTE allocation in compose_msi_msg()
+ - [amd64] PCI: hv: Fix interrupt mapping for multi-MSI
+ - [arm64] serial: mvebu-uart: correctly report configured baudrate value
+ - xfrm: xfrm_policy: fix a possible double xfrm_pols_put() in
+ xfrm_bundle_lookup() (CVE-2022-36879)
+ - perf/core: Fix data race between perf_event_set_output() and
+ perf_mmap_close()
+ - drm/amdgpu/display: add quirk handling for stutter mode
+ - igc: Reinstate IGC_REMOVED logic and implement it properly
+ - ip: Fix data-races around sysctl_ip_no_pmtu_disc.
+ - ip: Fix data-races around sysctl_ip_fwd_use_pmtu.
+ - ip: Fix data-races around sysctl_ip_fwd_update_priority.
+ - ip: Fix data-races around sysctl_ip_nonlocal_bind.
+ - ip: Fix a data-race around sysctl_ip_autobind_reuse.
+ - ip: Fix a data-race around sysctl_fwmark_reflect.
+ - tcp/dccp: Fix a data-race around sysctl_tcp_fwmark_accept.
+ - tcp: Fix data-races around sysctl_tcp_mtu_probing.
+ - tcp: Fix data-races around sysctl_tcp_base_mss.
+ - tcp: Fix data-races around sysctl_tcp_min_snd_mss.
+ - tcp: Fix a data-race around sysctl_tcp_mtu_probe_floor.
+ - tcp: Fix a data-race around sysctl_tcp_probe_threshold.
+ - tcp: Fix a data-race around sysctl_tcp_probe_interval.
+ - net: stmmac: fix unbalanced ptp clock issue in suspend/resume flow
+ - net: stmmac: fix dma queue left shift overflow issue
+ - igmp: Fix data-races around sysctl_igmp_llm_reports.
+ - igmp: Fix a data-race around sysctl_igmp_max_memberships.
+ - igmp: Fix data-races around sysctl_igmp_max_msf.
+ - tcp: Fix data-races around keepalive sysctl knobs.
+ - tcp: Fix data-races around sysctl_tcp_syncookies.
+ - tcp: Fix data-races around sysctl_tcp_reordering.
+ - tcp: Fix data-races around some timeout sysctl knobs.
+ - tcp: Fix a data-race around sysctl_tcp_notsent_lowat.
+ - tcp: Fix a data-race around sysctl_tcp_tw_reuse.
+ - tcp: Fix data-races around sysctl_max_syn_backlog.
+ - tcp: Fix data-races around sysctl_tcp_fastopen.
+ - tcp: Fix data-races around sysctl_tcp_fastopen_blackhole_timeout.
+ - iavf: Fix handling of dummy receive descriptors
+ - i40e: Fix erroneous adapter reinitialization during recovery process
+ - ixgbe: Add locking to prevent panic when setting sriov_numvfs to zero
+ - [arm64,armhf] gpio: pca953x: only use single read/write for No AI mode
+ - [arm64,armhf] gpio: pca953x: use the correct range when do regmap sync
+ - [arm64,armhf] gpio: pca953x: use the correct register address when
+ regcache sync during init
+ - be2net: Fix buffer overflow in be_get_module_eeprom
+ - ipv4: Fix a data-race around sysctl_fib_multipath_use_neigh.
+ - ip: Fix data-races around sysctl_ip_prot_sock.
+ - udp: Fix a data-race around sysctl_udp_l3mdev_accept.
+ - tcp: Fix data-races around sysctl knobs related to SYN option.
+ - tcp: Fix a data-race around sysctl_tcp_early_retrans.
+ - tcp: Fix data-races around sysctl_tcp_recovery.
+ - tcp: Fix a data-race around sysctl_tcp_thin_linear_timeouts.
+ - tcp: Fix data-races around sysctl_tcp_slow_start_after_idle.
+ - tcp: Fix a data-race around sysctl_tcp_retrans_collapse.
+ - tcp: Fix a data-race around sysctl_tcp_stdurg.
+ - tcp: Fix a data-race around sysctl_tcp_rfc1337.
+ - tcp: Fix data-races around sysctl_tcp_max_reordering.
+ - [arm*] spi: bcm2835: bcm2835_spi_handle_err(): fix NULL pointer deref for
+ non DMA transfers
+ - KVM: Don't null dereference ops->destroy
+ - mm/mempolicy: fix uninit-value in mpol_rebind_policy()
+ - bpf: Make sure mac_header was set before using it
+ - sched/deadline: Fix BUG_ON condition for deboosted tasks
+ - [x86] bugs: Warn when "ibrs" mitigation is selected on Enhanced IBRS parts
+ - dlm: fix pending remove if msg allocation fails
+ - bitfield.h: Fix "type of reg too small for mask" test
+ - ALSA: memalloc: Align buffer allocations in page size
+ - Bluetooth: Add bt_skb_sendmsg helper
+ - Bluetooth: Add bt_skb_sendmmsg helper
+ - Bluetooth: SCO: Replace use of memcpy_from_msg with bt_skb_sendmsg
+ - Bluetooth: RFCOMM: Replace use of memcpy_from_msg with bt_skb_sendmmsg
+ - Bluetooth: Fix passing NULL to PTR_ERR
+ - Bluetooth: SCO: Fix sco_send_frame returning skb->len
+ - Bluetooth: Fix bt_skb_sendmmsg not allocating partial chunks
+ - [x86] amd: Use IBPB for firmware calls
+ - [x86] alternative: Report missing return thunk details
+ - watchqueue: make sure to serialize 'wqueue->defunct' properly
+ - tty: drivers/tty/, stop using tty_schedule_flip()
+ - tty: the rest, stop using tty_schedule_flip()
+ - tty: drop tty_schedule_flip()
+ - tty: extract tty_flip_buffer_commit() from tty_flip_buffer_push()
+ - tty: use new tty_insert_flip_string_and_push_buffer() in pty_write()
+ - net: usb: ax88179_178a needs FLAG_SEND_ZLP
+ - watch-queue: remove spurious double semicolon
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.135
+ - Bluetooth: L2CAP: Fix use-after-free caused by l2cap_chan_put
+ - Revert "ocfs2: mount shared volume without ha stack"
+ - [s390x] archrandom: prevent CPACF trng invocations in interrupt context
+ - watch_queue: Fix missing rcu annotation
+ - watch_queue: Fix missing locking in add_watch_to_object()
+ - tcp: Fix data-races around sysctl_tcp_dsack.
+ - tcp: Fix a data-race around sysctl_tcp_app_win.
+ - tcp: Fix a data-race around sysctl_tcp_adv_win_scale.
+ - tcp: Fix a data-race around sysctl_tcp_frto.
+ - tcp: Fix a data-race around sysctl_tcp_nometrics_save.
+ - tcp: Fix data-races around sysctl_tcp_no_ssthresh_metrics_save.
+ - ice: check (DD | EOF) bits on Rx descriptor rather than (EOP | RS)
+ - ice: do not setup vlan for loopback VSI
+ - Revert "tcp: change pingpong threshold to 3"
+ - tcp: Fix data-races around sysctl_tcp_moderate_rcvbuf.
+ - tcp: Fix a data-race around sysctl_tcp_limit_output_bytes.
+ - tcp: Fix a data-race around sysctl_tcp_challenge_ack_limit.
+ - net: ping6: Fix memleak in ipv6_renew_options().
+ - ipv6/addrconf: fix a null-ptr-deref bug for ip6_ptr
+ - igmp: Fix data-races around sysctl_igmp_qrv.
+ - net: sungem_phy: Add of_node_put() for reference returned by
+ of_get_parent()
+ - tcp: Fix a data-race around sysctl_tcp_min_tso_segs.
+ - tcp: Fix a data-race around sysctl_tcp_min_rtt_wlen.
+ - tcp: Fix a data-race around sysctl_tcp_autocorking.
+ - tcp: Fix a data-race around sysctl_tcp_invalid_ratelimit.
+ - Documentation: fix sctp_wmem in ip-sysctl.rst
+ - macsec: fix NULL deref in macsec_add_rxsa
+ - macsec: fix error message in macsec_add_rxsa and _txsa
+ - macsec: limit replay window size with XPN
+ - macsec: always read MACSEC_SA_ATTR_PN as a u64
+ - net: macsec: fix potential resource leak in macsec_add_rxsa() and
+ macsec_add_txsa()
+ - tcp: Fix a data-race around sysctl_tcp_comp_sack_delay_ns.
+ - tcp: Fix a data-race around sysctl_tcp_comp_sack_slack_ns.
+ - tcp: Fix a data-race around sysctl_tcp_comp_sack_nr.
+ - tcp: Fix data-races around sysctl_tcp_reflect_tos.
+ - i40e: Fix interface init with MSI interrupts (no MSI-X)
+ - sctp: fix sleep in atomic context bug in timer handlers
+ - netfilter: nf_queue: do not allow packet truncation below transport header
+ offset (CVE-2022-36946)
+ - virtio-net: fix the race between refill work and close
+ - sfc: disable softirqs for ptp TX
+ - sctp: leave the err path free in sctp_stream_init to sctp_stream_free
+ - page_alloc: fix invalid watermark check on a negative value
+ - mt7601u: add USB device ID for some versions of XiaoDu WiFi Dongle.
+ - [arm*] 9216/1: Fix MAX_DMA_ADDRESS overflow
+ - docs/kernel-parameters: Update descriptions for "mitigations=" param with
+ retbleed
+ - xfs: refactor xfs_file_fsync
+ - xfs: xfs_log_force_lsn isn't passed a LSN
+ - xfs: prevent UAF in xfs_log_item_in_current_chkpt
+ - xfs: fix log intent recovery ENOSPC shutdowns when inactivating inodes
+ - xfs: force the log offline when log intent item recovery fails
+ - xfs: hold buffer across unpin and potential shutdown processing
+ - xfs: remove dead stale buf unpin handling code
+ - xfs: logging the on disk inode LSN can make it go backwards
+ - xfs: Enforce attr3 buffer recovery order
+ - [x86] bugs: Do not enable IBPB at firmware entry when IBPB is not
+ available
+ - bpf: Consolidate shared test timing code
+ - bpf: Add PROG_TEST_RUN support for sk_lookup programs
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.136
+ - [x86] speculation: Make all RETbleed mitigations 64-bit only
+ - ath9k_htc: fix NULL pointer dereference at ath9k_htc_rxep()
+ - ath9k_htc: fix NULL pointer dereference at ath9k_htc_tx_get_packet()
+ - tun: avoid double free in tun_free_netdev
+ - [x86] ACPI: video: Force backlight native for some TongFang devices
+ - [x86] ACPI: video: Shortening quirk list by identifying Clevo by
+ board_name only
+ - ACPI: APEI: Better fix to avoid spamming the console with old error logs
+ - [arm64] crypto: arm64/poly1305 - fix a read out-of-bound
+ - Bluetooth: hci_bcm: Add BCM4349B1 variant
+ - Bluetooth: hci_bcm: Add DT compatible for CYW55572
+ - Bluetooth: btusb: Add support of IMC Networks PID 0x3568
+ - Bluetooth: btusb: Add Realtek RTL8852C support ID 0x04CA:0x4007
+ - Bluetooth: btusb: Add Realtek RTL8852C support ID 0x04C5:0x1675
+ - Bluetooth: btusb: Add Realtek RTL8852C support ID 0x0CB8:0xC558
+ - Bluetooth: btusb: Add Realtek RTL8852C support ID 0x13D3:0x3587
+ - Bluetooth: btusb: Add Realtek RTL8852C support ID 0x13D3:0x3586
+ - [x86] Add mitigations for Post-Barrier Return Stack Buffer Prediction
+ (PBRSB) issue (CVE-2022-26373):
+ + x86/speculation: Add RSB VM Exit protections
+ + x86/speculation: Add LFENCE to RSB fill sequence
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 17
+ * [rt] Update to 5.10.131-rt72
+ * posix-cpu-timers: Cleanup CPU timers before freeing them during exec
+ (CVE-2022-2585)
+ * netfilter: nf_tables: do not allow SET_ID to refer to another table
+ (CVE-2022-2586)
+ * netfilter: nf_tables: do not allow CHAIN_ID to refer to another table
+ * netfilter: nf_tables: do not allow RULE_ID to refer to another chain
+ * net_sched: cls_route: remove from list when handle is 0 (CVE-2022-2588)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 13 Aug 2022 15:25:10 +0200
+
+linux (5.10.127-2) bullseye-security; urgency=high
+
+ * [amd64,arm64,armhf] wireguard: Clear keys after suspend despite
+ CONFIG_ANDROID=y
+ * netfilter: nf_tables: stricter validation of element data (CVE-2022-34918)
+ * net: rose: fix UAF bugs caused by timer handler (CVE-2022-2318)
+ * net: rose: fix UAF bug caused by rose_t0timer_expiry
+ * xen/{blk,net}front: fix leaking data in shared pages (CVE-2022-26365,
+ CVE-2022-33740)
+ * xen/{blk,net}front: force data bouncing when backend is untrusted
+ (CVE-2022-33741, CVE-2022-33742)
+ * xen-netfront: restore __skb_queue_tail() positioning in
+ xennet_get_responses() (CVE-2022-33743)
+ * [arm64,armhf] xen/arm: Fix race in RB-tree based P2M accounting
+ (CVE-2022-33744)
+ * fbdev: fbmem: Fix logo center image dx issue
+ * fbdev: Fix potential out-of-bounds writes (CVE-2021-33655):
+ - fbmem: Check virtual screen sizes in fb_set_var()
+ - fbcon: Disallow setting font bigger than screen size
+ - fbcon: Prevent that screen size is smaller than font size
+
+ -- Ben Hutchings <benh@debian.org> Sun, 24 Jul 2022 00:32:10 +0200
+
+linux (5.10.127-1) bullseye; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.121
+ - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9520 laptop
+ - ALSA: hda/realtek - Fix microphone noise on ASUS TUF B550M-PLUS
+ - ALSA: usb-audio: Cancel pending work at closing a MIDI substream
+ - USB: serial: option: add Quectel BG95 modem
+ - USB: new quirk for Dell Gen 2 devices
+ - usb: dwc3: gadget: Move null pinter check to proper place
+ - usb: core: hcd: Add support for deferring roothub registration
+ - cifs: when extending a file with falloc we should make files not-sparse
+ - xhci: Allow host runtime PM as default for Intel Alder Lake N xHCI
+ - Fonts: Make font size unsigned in font_desc
+ - [x86] MCE/AMD: Fix memory leak when threshold_create_bank() fails
+ - [w86] perf/x86/intel: Fix event constraints for ICL
+ - ptrace/xtensa: Replace PT_SINGLESTEP with TIF_SINGLESTEP
+ - ptrace: Reimplement PTRACE_KILL by always sending SIGKILL
+ - btrfs: add "0x" prefix for unsupported optional features
+ - btrfs: repair super block num_devices automatically
+ - [amd64] iommu/vt-d: Add RPLS to quirk list to skip TE disabling
+ - drm/virtio: fix NULL pointer dereference in virtio_gpu_conn_get_modes
+ - mwifiex: add mutex lock for call in mwifiex_dfs_chan_sw_work_queue
+ - b43legacy: Fix assigning negative value to unsigned variable
+ - b43: Fix assigning negative value to unsigned variable
+ - ipw2x00: Fix potential NULL dereference in libipw_xmit()
+ - ipv6: fix locking issues with loops over idev->addr_list
+ - fbcon: Consistently protect deferred_takeover with console_lock()
+ - [x86] platform/uv: Update TSC sync state for UV5
+ - ACPICA: Avoid cache flush inside virtual machines
+ - drm/komeda: return early if drm_universal_plane_init() fails.
+ - rcu-tasks: Fix race in schedule and flush work
+ - rcu: Make TASKS_RUDE_RCU select IRQ_WORK
+ - sfc: ef10: Fix assigning negative value to unsigned variable
+ - ALSA: jack: Access input_dev under mutex
+ - spi: spi-rspi: Remove setting {src,dst}_{addr,addr_width} based on DMA
+ direction
+ - drm/amd/pm: fix double free in si_parse_power_table()
+ - ath9k: fix QCA9561 PA bias level
+ - media: venus: hfi: avoid null dereference in deinit
+ - media: pci: cx23885: Fix the error handling in cx23885_initdev()
+ - media: cx25821: Fix the warning when removing the module
+ - md/bitmap: don't set sb values if can't pass sanity check
+ - mmc: jz4740: Apply DMA engine limits to maximum segment size
+ - drivers: mmc: sdhci_am654: Add the quirk to set TESTCD bit
+ - scsi: megaraid: Fix error check return value of register_chrdev()
+ - scsi: ufs: Use pm_runtime_resume_and_get() instead of
+ pm_runtime_get_sync()
+ - scsi: lpfc: Fix resource leak in lpfc_sli4_send_seq_to_ulp()
+ - ath11k: disable spectral scan during spectral deinit
+ - ASoC: Intel: bytcr_rt5640: Add quirk for the HP Pro Tablet 408
+ - drm/plane: Move range check for format_count earlier
+ - drm/amd/pm: fix the compile warning
+ - ath10k: skip ath10k_halt during suspend for driver state RESTARTING
+ - [arm64] compat: Do not treat syscall number as ESR_ELx for a bad syscall
+ - drm: msm: fix error check return value of irq_of_parse_and_map()
+ - ipv6: Don't send rs packets to the interface of ARPHRD_TUNNEL
+ - net/mlx5: fs, delete the FTE when there are no rules attached to it
+ - ASoC: dapm: Don't fold register value changes into notifications
+ - mlxsw: spectrum_dcb: Do not warn about priority changes
+ - mlxsw: Treat LLDP packets as control
+ - drm/amdgpu/ucode: Remove firmware load type check in amdgpu_ucode_free_bo
+ - HID: bigben: fix slab-out-of-bounds Write in bigben_probe
+ - ASoC: tscs454: Add endianness flag in snd_soc_component_driver
+ - net: remove two BUG() from skb_checksum_help()
+ - [s390x] preempt: disable __preempt_count_add() optimization for
+ PROFILE_ALL_BRANCHES
+ - perf/amd/ibs: Cascade pmu init functions' return value
+ - spi: stm32-qspi: Fix wait_cmd timeout in APM mode
+ - dma-debug: change allocation mode from GFP_NOWAIT to GFP_ATIOMIC
+ - ACPI: PM: Block ASUS B1400CEAE from suspend to idle by default
+ - ipmi:ssif: Check for NULL msg when handling events and messages
+ - ipmi: Fix pr_fmt to avoid compilation issues
+ - rtlwifi: Use pr_warn instead of WARN_ONCE
+ - media: rga: fix possible memory leak in rga_probe
+ - media: coda: limit frame interval enumeration to supported encoder frame
+ sizes
+ - media: imon: reorganize serialization
+ - media: cec-adap.c: fix is_configuring state
+ - nvme-pci: fix a NULL pointer dereference in nvme_alloc_admin_tags
+ - ASoC: rt5645: Fix errorenous cleanup order
+ - nbd: Fix hung on disconnect request if socket is closed before
+ - net: phy: micrel: Allow probing without .driver_data
+ - media: exynos4-is: Fix compile warning
+ - ASoC: max98357a: remove dependency on GPIOLIB
+ - ASoC: rt1015p: remove dependency on GPIOLIB
+ - can: mcp251xfd: silence clang's -Wunaligned-access warning
+ - [x86] microcode: Add explicit CPU vendor dependency
+ - rxrpc: Return an error to sendmsg if call failed
+ - rxrpc, afs: Fix selection of abort codes
+ - eth: tg3: silence the GCC 12 array-bounds warning
+ - gfs2: use i_lock spin_lock for inode qadata
+ - IB/rdmavt: add missing locks in rvt_ruc_loopback
+ - [arm64] dts: qcom: msm8994: Fix BLSP[12]_DMA channels count
+ - PM / devfreq: rk3399_dmc: Disable edev on remove()
+ - crypto: ccree - use fine grained DMA mapping dir
+ - soc: ti: ti_sci_pm_domains: Check for null return of devm_kcalloc
+ - fs: jfs: fix possible NULL pointer dereference in dbFree()
+ - [powerpc*] fadump: Fix fadump to work with a different endian capture
+ kernel
+ - fat: add ratelimit to fat*_ent_bread()
+ - pinctrl: renesas: rzn1: Fix possible null-ptr-deref in
+ sh_pfc_map_resources()
+ - ARM: versatile: Add missing of_node_put in dcscb_init
+ - ARM: dts: exynos: add atmel,24c128 fallback to Samsung EEPROM
+ - ARM: hisi: Add missing of_node_put after of_find_compatible_node
+ - PCI: Avoid pci_dev_lock() AB/BA deadlock with sriov_numvfs_store()
+ - tracing: incorrect isolate_mote_t cast in mm_vmscan_lru_isolate
+ - [powerpc*] powernv/vas: Assign real address to rx_fifo in vas_rx_win_attr
+ - [powerpc*] xics: fix refcount leak in icp_opal_init()
+ - [powerpc*] powernv: fix missing of_node_put in uv_init()
+ - macintosh/via-pmu: Fix build failure when CONFIG_INPUT is disabled
+ - [powerpc*] iommu: Add missing of_node_put in iommu_init_early_dart
+ - [amd64] RDMA/hfi1: Prevent panic when SDMA is disabled
+ - drm: fix EDID struct for old ARM OABI format
+ - dt-bindings: display: sitronix, st7735r: Fix backlight in example
+ - ath11k: acquire ab->base_lock in unassign when finding the peer by addr
+ - ath9k: fix ar9003_get_eepmisc
+ - drm/edid: fix invalid EDID extension block filtering
+ - drm/bridge: adv7511: clean up CEC adapter when probe fails
+ - spi: qcom-qspi: Add minItems to interconnect-names
+ - ASoC: mediatek: Fix error handling in mt8173_max98090_dev_probe
+ - ASoC: mediatek: Fix missing of_node_put in mt2701_wm8960_machine_probe
+ - [x86] delay: Fix the wrong asm constraint in delay_loop()
+ - drm/ingenic: Reset pixclock rate when parent clock rate changes
+ - drm/mediatek: Fix mtk_cec_mask()
+ - [arm*] drm/vc4: hvs: Reset muxes at probe time
+ - [arm*] drm/vc4: txp: Don't set TXP_VSTART_AT_EOF
+ - [arm*] drm/vc4: txp: Force alpha to be 0xff if it's disabled
+ - bpf: Fix excessive memory allocation in stack_map_alloc()
+ - nl80211: show SSID for P2P_GO interfaces
+ - drm/komeda: Fix an undefined behavior bug in komeda_plane_add()
+ - drm: mali-dp: potential dereference of null pointer
+ - spi: spi-ti-qspi: Fix return value handling of wait_for_completion_timeout
+ - scftorture: Fix distribution of short handler delays
+ - net: dsa: mt7530: 1G can also support 1000BASE-X link mode
+ - NFC: NULL out the dev->rfkill to prevent UAF
+ - efi: Add missing prototype for efi_capsule_setup_info
+ - target: remove an incorrect unmap zeroes data deduction
+ - drbd: fix duplicate array initializer
+ - EDAC/dmc520: Don't print an error for each unconfigured interrupt line
+ - mtd: rawnand: denali: Use managed device resources
+ - HID: hid-led: fix maximum brightness for Dream Cheeky
+ - HID: elan: Fix potential double free in elan_input_configured
+ - drm/bridge: Fix error handling in analogix_dp_probe
+ - sched/fair: Fix cfs_rq_clock_pelt() for throttled cfs_rq
+ - spi: img-spfi: Fix pm_runtime_get_sync() error checking
+ - cpufreq: Fix possible race in cpufreq online error path
+ - ath9k_htc: fix potential out of bounds access with invalid
+ rxstatus->rs_keyix
+ - media: hantro: Empty encoder capture buffers by default
+ - drm/panel: simple: Add missing bus flags for Innolux G070Y2-L01
+ - ALSA: pcm: Check for null pointer of pointer substream before
+ dereferencing it
+ - inotify: show inotify mask flags in proc fdinfo
+ - fsnotify: fix wrong lockdep annotations
+ - of: overlay: do not break notify on NOTIFY_{OK|STOP}
+ - drm/msm/dpu: adjust display_v_end for eDP and DP
+ - scsi: ufs: qcom: Fix ufs_qcom_resume()
+ - scsi: ufs: core: Exclude UECxx from SFR dump list
+ - mtd: spi-nor: core: Check written SR value in
+ spi_nor_write_16bit_sr_and_check()
+ - [x86] pm: Fix false positive kmemleak report in msr_build_context()
+ - mtd: rawnand: cadence: fix possible null-ptr-deref in
+ cadence_nand_dt_probe()
+ - [x86] speculation: Add missing prototype for unpriv_ebpf_notify()
+ - ASoC: rk3328: fix disabling mclk on pclk probe failure
+ - perf tools: Add missing headers needed by util/data.h
+ - drm/msm/disp/dpu1: set vbif hw config to NULL to avoid use after memory
+ free during pm runtime resume
+ - drm/msm/dp: stop event kernel thread when DP unbind
+ - drm/msm/dp: fix error check return value of irq_of_parse_and_map()
+ - drm/msm/dsi: fix error checks and return values for DSI xmit functions
+ - drm/msm/hdmi: check return value after calling
+ platform_get_resource_byname()
+ - drm/msm/hdmi: fix error check return value of irq_of_parse_and_map()
+ - drm/msm: add missing include to msm_drv.c
+ - drm/panel: panel-simple: Fix proper bpc for AM-1280800N3TZQW-T00H
+ - drm/rockchip: vop: fix possible null-ptr-deref in vop_bind()
+ - perf tools: Use Python devtools for version autodetection rather than
+ runtime
+ - virtio_blk: fix the discard_granularity and discard_alignment queue limits
+ - [x86] Fix return value of __setup handlers
+ - irqchip/exiu: Fix acknowledgment of edge triggered interrupts
+ - irqchip/aspeed-i2c-ic: Fix irq_of_parse_and_map() return value
+ - irqchip/aspeed-scu-ic: Fix irq_of_parse_and_map() return value
+ - [x86] mm: Cleanup the control_va_addr_alignment() __setup handler
+ - [arm64] fix types in copy_highpage()
+ - regulator: core: Fix enable_count imbalance with EXCLUSIVE_GET
+ - drm/msm/dp: fix event thread stuck in wait_event after kthread_stop()
+ - drm/msm/mdp5: Return error code in mdp5_pipe_release when deadlock is
+ detected
+ - drm/msm/mdp5: Return error code in mdp5_mixer_release when deadlock is
+ detected
+ - drm/msm: return an error pointer in msm_gem_prime_get_sg_table()
+ - media: uvcvideo: Fix missing check to determine if element is found in
+ list
+ - iomap: iomap_write_failed fix
+ - spi: spi-fsl-qspi: check return value after calling
+ platform_get_resource_byname()
+ - Revert "cpufreq: Fix possible race in cpufreq online error path"
+ - regulator: qcom_smd: Fix up PM8950 regulator configuration
+ - perf/amd/ibs: Use interrupt regs ip for stack unwinding
+ - ath11k: Don't check arvif->is_started before sending management frames
+ - ASoC: fsl: Fix refcount leak in imx_sgtl5000_probe
+ - ASoC: mxs-saif: Fix refcount leak in mxs_saif_probe
+ - regulator: pfuze100: Fix refcount leak in pfuze_parse_regulators_dt
+ - ASoC: samsung: Use dev_err_probe() helper
+ - ASoC: samsung: Fix refcount leak in aries_audio_probe
+ - scripts/faddr2line: Fix overlapping text section failures
+ - media: aspeed: Fix an error handling path in aspeed_video_probe()
+ - media: exynos4-is: Fix PM disable depth imbalance in fimc_is_probe
+ - media: st-delta: Fix PM disable depth imbalance in delta_probe
+ - media: exynos4-is: Change clk_disable to clk_disable_unprepare
+ - media: pvrusb2: fix array-index-out-of-bounds in pvr2_i2c_core_init
+ - media: vsp1: Fix offset calculation for plane cropping
+ - Bluetooth: fix dangling sco_conn and use-after-free in sco_sock_timeout
+ - Bluetooth: Interleave with allowlist scan
+ - Bluetooth: L2CAP: Rudimentary typo fixes
+ - Bluetooth: LL privacy allow RPA
+ - Bluetooth: use inclusive language in HCI role comments
+ - Bluetooth: use inclusive language when filtering devices
+ - Bluetooth: use hdev lock for accept_list and reject_list in conn req
+ - nvme: set dma alignment to dword
+ - lsm,selinux: pass flowi_common instead of flowi to the LSM hooks
+ - sctp: read sk->sk_bound_dev_if once in sctp_rcv()
+ - net: hinic: add missing destroy_workqueue in hinic_pf_to_mgmt_init
+ - ASoC: ti: j721e-evm: Fix refcount leak in j721e_soc_probe_*
+ - media: ov7670: remove ov7670_power_off from ov7670_remove
+ - media: staging: media: rkvdec: Make use of the helper function
+ devm_platform_ioremap_resource()
+ - media: rkvdec: h264: Fix dpb_valid implementation
+ - media: rkvdec: h264: Fix bit depth wrap in pps packet
+ - ext4: reject the 'commit' option on ext2 filesystems
+ - drm/msm/a6xx: Fix refcount leak in a6xx_gpu_init
+ - drm: msm: fix possible memory leak in mdp5_crtc_cursor_set()
+ - [x86] sev: Annotate stack change in the #VC handler
+ - drm/msm/dpu: handle pm_runtime_get_sync() errors in bind path
+ - [x86] drm/i915: Fix CFI violation with show_dynamic_id()
+ - thermal/drivers/bcm2711: Don't clamp temperature at zero
+ - thermal/drivers/broadcom: Fix potential NULL dereference in
+ sr_thermal_probe
+ - thermal/drivers/core: Use a char pointer for the cooling device name
+ - thermal/core: Fix memory leak in __thermal_cooling_device_register()
+ - thermal/drivers/imx_sc_thermal: Fix refcount leak in imx_sc_thermal_probe
+ - ASoC: wm2000: fix missing clk_disable_unprepare() on error in
+ wm2000_anc_transition()
+ - NFC: hci: fix sleep in atomic context bugs in nfc_hci_hcp_message_tx
+ - ASoC: max98090: Move check for invalid values before casting in
+ max98090_put_enab_tlv()
+ - net: stmmac: selftests: Use kcalloc() instead of kzalloc()
+ - net: stmmac: fix out-of-bounds access in a selftest
+ - hv_netvsc: Fix potential dereference of NULL pointer
+ - rxrpc: Fix listen() setting the bar too high for the prealloc rings
+ - rxrpc: Don't try to resend the request if we're receiving the reply
+ - rxrpc: Fix overlapping ACK accounting
+ - rxrpc: Don't let ack.previousPacket regress
+ - rxrpc: Fix decision on when to generate an IDLE ACK
+ - net: huawei: hinic: Use devm_kcalloc() instead of devm_kzalloc()
+ - hinic: Avoid some over memory allocation
+ - net/smc: postpone sk_refcnt increment in connect()
+ - arm64: dts: rockchip: Move drive-impedance-ohm to emmc phy on rk3399
+ - memory: samsung: exynos5422-dmc: Avoid some over memory allocation
+ - ARM: dts: suniv: F1C100: fix watchdog compatible
+ - soc: qcom: smp2p: Fix missing of_node_put() in smp2p_parse_ipc
+ - soc: qcom: smsm: Fix missing of_node_put() in smsm_parse_ipc
+ - PCI: cadence: Fix find_first_zero_bit() limit
+ - PCI: rockchip: Fix find_first_zero_bit() limit
+ - PCI: dwc: Fix setting error return on MSI DMA mapping failure
+ - ARM: dts: ci4x10: Adapt to changes in imx6qdl.dtsi regarding fec clocks
+ - soc: qcom: llcc: Add MODULE_DEVICE_TABLE()
+ - [x86] KVM: nVMX: Leave most VM-Exit info fields unmodified on failed
+ VM-Entry
+ - [x86] KVM: nVMX: Clear IDT vectoring on nested VM-Exit for double/triple
+ fault
+ - platform/chrome: cros_ec: fix error handling in cros_ec_register()
+ - ARM: dts: imx6dl-colibri: Fix I2C pinmuxing
+ - platform/chrome: Re-introduce cros_ec_cmd_xfer and use it for ioctls
+ - can: xilinx_can: mark bit timing constants as const
+ - ARM: dts: stm32: Fix PHY post-reset delay on Avenger96
+ - ARM: dts: bcm2835-rpi-zero-w: Fix GPIO line name for Wifi/BT
+ - ARM: dts: bcm2837-rpi-cm3-io3: Fix GPIO line names for SMPS I2C
+ - ARM: dts: bcm2837-rpi-3-b-plus: Fix GPIO line name of power LED
+ - ARM: dts: bcm2835-rpi-b: Fix GPIO line names
+ - misc: ocxl: fix possible double free in ocxl_file_register_afu
+ - crypto: marvell/cesa - ECB does not IV
+ - gpiolib: of: Introduce hook for missing gpio-ranges
+ - pinctrl: bcm2835: implement hook for missing gpio-ranges
+ - arm: mediatek: select arch timer for mt7629
+ - powerpc/fadump: fix PT_LOAD segment for boot memory area
+ - mfd: ipaq-micro: Fix error check return value of platform_get_irq()
+ - scsi: fcoe: Fix Wstringop-overflow warnings in fcoe_wwn_from_mac()
+ - firmware: arm_scmi: Fix list protocols enumeration in the base protocol
+ - nvdimm: Fix firmware activation deadlock scenarios
+ - nvdimm: Allow overwrite in the presence of disabled dimms
+ - pinctrl: mvebu: Fix irq_of_parse_and_map() return value
+ - drivers/base/node.c: fix compaction sysfs file leak
+ - dax: fix cache flush on PMD-mapped pages
+ - drivers/base/memory: fix an unlikely reference counting issue in
+ __add_memory_block()
+ - powerpc/8xx: export 'cpm_setbrg' for modules
+ - pinctrl: renesas: core: Fix possible null-ptr-deref in
+ sh_pfc_map_resources()
+ - powerpc/idle: Fix return value of __setup() handler
+ - powerpc/4xx/cpm: Fix return value of __setup() handler
+ - ASoC: atmel-pdmic: Remove endianness flag on pdmic component
+ - ASoC: atmel-classd: Remove endianness flag on class d component
+ - proc: fix dentry/inode overinstantiating under /proc/${pid}/net
+ - ipc/mqueue: use get_tree_nodev() in mqueue_get_tree()
+ - PCI: imx6: Fix PERST# start-up sequence
+ - tty: fix deadlock caused by calling printk() under tty_port->lock
+ - crypto: sun8i-ss - rework handling of IV
+ - crypto: sun8i-ss - handle zero sized sg
+ - crypto: cryptd - Protect per-CPU resource by disabling BH.
+ - Input: sparcspkr - fix refcount leak in bbc_beep_probe
+ - PCI/AER: Clear MULTI_ERR_COR/UNCOR_RCV bits
+ - hwrng: omap3-rom - fix using wrong clk_disable() in
+ omap_rom_rng_runtime_resume()
+ - [powerpc*] 64: Only WARN if __pa()/__va() called with bad addresses
+ - [powerpc*] perf: Fix the threshold compare group constraint for power9
+ - macintosh: via-pmu and via-cuda need RTC_LIB
+ - powerpc/fsl_rio: Fix refcount leak in fsl_rio_setup
+ - mfd: davinci_voicecodec: Fix possible null-ptr-deref davinci_vc_probe()
+ - mailbox: forward the hrtimer if not queued and under a lock
+ - [amd64] RDMA/hfi1: Prevent use of lock before it is initialized
+ - Input: stmfts - do not leave device disabled in stmfts_input_open
+ - OPP: call of_node_put() on error path in _bandwidth_supported()
+ - f2fs: fix dereference of stale list iterator after loop body
+ - iommu/mediatek: Add list_del in mtk_iommu_remove
+ - i2c: at91: use dma safe buffers
+ - cpufreq: mediatek: add missing platform_driver_unregister() on error in
+ mtk_cpufreq_driver_init
+ - cpufreq: mediatek: Use module_init and add module_exit
+ - cpufreq: mediatek: Unregister platform device on exit
+ - [mips*] Loongson: Use hwmon_device_register_with_groups() to register
+ hwmon
+ - i2c: at91: Initialize dma_buf in at91_twi_xfer()
+ - dmaengine: idxd: Fix the error handling path in idxd_cdev_register()
+ - NFS: Do not report EINTR/ERESTARTSYS as mapping errors
+ - NFS: fsync() should report filesystem errors over EINTR/ERESTARTSYS
+ - NFS: Do not report flush errors in nfs_write_end()
+ - NFS: Don't report errors from nfs_pageio_complete() more than once
+ - NFSv4/pNFS: Do not fail I/O when we fail to allocate the pNFS layout
+ - video: fbdev: clcdfb: Fix refcount leak in clcdfb_of_vram_setup
+ - dmaengine: stm32-mdma: remove GISR1 register
+ - dmaengine: stm32-mdma: rework interrupt handler
+ - dmaengine: stm32-mdma: fix chan initialization in stm32_mdma_irq_handler()
+ - iommu/amd: Increase timeout waiting for GA log enablement
+ - i2c: npcm: Fix timeout calculation
+ - i2c: npcm: Correct register access width
+ - i2c: npcm: Handle spurious interrupts
+ - i2c: rcar: fix PM ref counts in probe error paths
+ - perf c2c: Use stdio interface if slang is not supported
+ - perf jevents: Fix event syntax error caused by ExtSel
+ - f2fs: fix to avoid f2fs_bug_on() in dec_valid_node_count()
+ - f2fs: fix to do sanity check on block address in f2fs_do_zero_range()
+ - f2fs: fix to clear dirty inode in f2fs_evict_inode()
+ - f2fs: fix deadloop in foreground GC
+ - f2fs: don't need inode lock for system hidden quota
+ - f2fs: fix to do sanity check on total_data_blocks
+ - f2fs: fix fallocate to use file_modified to update permissions
+ consistently
+ - f2fs: fix to do sanity check for inline inode
+ - wifi: mac80211: fix use-after-free in chanctx code
+ - iwlwifi: mvm: fix assert 1F04 upon reconfig
+ - fs-writeback: writeback_sb_inodes:Recalculate 'wrote' according skipped
+ pages
+ - efi: Do not import certificates from UEFI Secure Boot for T2 Macs
+ - bfq: Split shared queues on move between cgroups
+ - bfq: Update cgroup information before merging bio
+ - bfq: Track whether bfq_group is still online
+ - ext4: fix use-after-free in ext4_rename_dir_prepare
+ - ext4: fix warning in ext4_handle_inode_extension
+ - ext4: fix bug_on in ext4_writepages
+ - ext4: filter out EXT4_FC_REPLAY from on-disk superblock field s_state
+ - ext4: fix bug_on in __es_tree_search
+ - ext4: verify dir block before splitting it (CVE-2022-1184)
+ - ext4: avoid cycles in directory h-tree (CVE-2022-1184)
+ - ACPI: property: Release subnode properties with data nodes
+ - tracing: Fix potential double free in create_var_ref()
+ - PCI/PM: Fix bridge_d3_blacklist[] Elo i2 overwrite of Gigabyte X299
+ - PCI: qcom: Fix runtime PM imbalance on probe errors
+ - PCI: qcom: Fix unbalanced PHY init on probe errors
+ - mm, compaction: fast_find_migrateblock() should return pfn in the target
+ zone
+ - [s390x] perf: obtain sie_block from the right address
+ - dlm: fix plock invalid read
+ - dlm: fix missing lkb refcount handling
+ - ocfs2: dlmfs: fix error handling of user_dlm_destroy_lock
+ - scsi: dc395x: Fix a missing check on list iterator
+ - scsi: ufs: qcom: Add a readl() to make sure ref_clk gets enabled
+ - drm/amdgpu/cs: make commands with 0 chunks illegal behaviour.
+ - drm/etnaviv: check for reaped mapping in etnaviv_iommu_unmap_gem
+ - drm/nouveau/clk: Fix an incorrect NULL check on list iterator
+ - drm/nouveau/kms/nv50-: atom: fix an incorrect NULL check on list iterator
+ - drm/bridge: analogix_dp: Grab runtime PM reference for DP-AUX
+ - [x86] drm/i915/dsi: fix VBT send packet port selection for ICL+
+ - md: fix an incorrect NULL check in does_sb_need_changing
+ - md: fix an incorrect NULL check in md_reload_sb
+ - mtd: cfi_cmdset_0002: Move and rename
+ chip_check/chip_ready/chip_good_for_write
+ - mtd: cfi_cmdset_0002: Use chip_ready() for write on S29GL064N
+ - media: coda: Fix reported H264 profile
+ - media: coda: Add more H264 levels for CODA960
+ - [amd64] RDMA/hfi1: Fix potential integer multiplication overflow errors
+ - csky: patch_text: Fixup last cpu should be master
+ - irqchip/armada-370-xp: Do not touch Performance Counter Overflow on A375,
+ A38x, A39x
+ - irqchip: irq-xtensa-mx: fix initial IRQ affinity
+ - cfg80211: declare MODULE_FIRMWARE for regulatory.db
+ - mac80211: upgrade passive scan to active scan on DFS channels after beacon
+ rx
+ - um: chan_user: Fix winch_tramp() return value
+ - um: Fix out-of-bounds read in LDT setup
+ - kexec_file: drop weak attribute from arch_kexec_apply_relocations[_add]
+ - ftrace: Clean up hash direct_functions on register failures
+ - iommu/msm: Fix an incorrect NULL check on list iterator
+ - nodemask.h: fix compilation error with GCC12
+ - hugetlb: fix huge_pmd_unshare address update
+ - xtensa/simdisk: fix proc_read_simdisk()
+ - rtl818x: Prevent using not initialized queues
+ - ASoC: rt5514: Fix event generation for "DSP Voice Wake Up" control
+ - carl9170: tx: fix an incorrect use of list iterator
+ - stm: ltdc: fix two incorrect NULL checks on list iterator
+ - bcache: improve multithreaded bch_btree_check()
+ - bcache: improve multithreaded bch_sectors_dirty_init()
+ - bcache: remove incremental dirty sector counting for
+ bch_sectors_dirty_init()
+ - bcache: avoid journal no-space deadlock by reserving 1 journal bucket
+ - serial: pch: don't overwrite xmit->buf[0] by x_char
+ - tilcdc: tilcdc_external: fix an incorrect NULL check on list iterator
+ - gma500: fix an incorrect NULL check on list iterator
+ - arm64: dts: qcom: ipq8074: fix the sleep clock frequency
+ - phy: qcom-qmp: fix struct clk leak on probe errors
+ - ARM: dts: s5pv210: Remove spi-cs-high on panel in Aries
+ - ARM: pxa: maybe fix gpio lookup tables
+ - SMB3: EBADF/EIO errors in rename/open caused by race condition in
+ smb2_compound_op
+ - docs/conf.py: Cope with removal of language=None in Sphinx 5.0.0
+ - dt-bindings: gpio: altera: correct interrupt-cells
+ - vdpasim: allow to enable a vq repeatedly
+ - blk-iolatency: Fix inflight count imbalances and IO hangs on offline
+ - coresight: core: Fix coresight device probe failure issue
+ - phy: qcom-qmp: fix reset-controller leak on probe errors
+ - net: ipa: fix page free in ipa_endpoint_trans_release()
+ - net: ipa: fix page free in ipa_endpoint_replenish_one()
+ - xfs: set inode size after creating symlink
+ - xfs: sync lazy sb accounting on quiesce of read-only mounts
+ - xfs: fix chown leaking delalloc quota blocks when fssetxattr fails
+ - xfs: fix incorrect root dquot corruption error when switching
+ group/project quota types
+ - xfs: restore shutdown check in mapped write fault path
+ - xfs: force log and push AIL to clear pinned inodes when aborting mount
+ - xfs: consider shutdown in bmapbt cursor delete assert
+ - xfs: assert in xfs_btree_del_cursor should take into account error
+ - kseltest/cgroup: Make test_stress.sh work if run interactively
+ - thermal/core: fix a UAF bug in __thermal_cooling_device_register()
+ - thermal/core: Fix memory leak in the error path
+ - bfq: Avoid merging queues with different parents
+ - bfq: Drop pointless unlock-lock pair
+ - bfq: Remove pointless bfq_init_rq() calls
+ - bfq: Get rid of __bio_blkcg() usage
+ - bfq: Make sure bfqg for which we are queueing requests is online
+ - block: fix bio_clone_blkg_association() to associate with proper blkcg_gq
+ - Revert "random: use static branch for crng_ready()"
+ - RDMA/rxe: Generate a completion for unsupported/invalid opcode
+ - [mips*] IP27: Remove incorrect `cpu_has_fpu' override
+ - [mips*] IP30: Remove incorrect `cpu_has_fpu' override
+ - ext4: only allow test_dummy_encryption when supported
+ - md: bcache: check the return value of kzalloc() in
+ detached_dev_do_request()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.122
+ - pcmcia: db1xxx_ss: restrict to MIPS_DB1XXX boards
+ - staging: greybus: codecs: fix type confusion of list iterator variable
+ - iio: adc: ad7124: Remove shift from scan_type
+ - tty: goldfish: Use tty_port_destroy() to destroy port
+ - tty: serial: owl: Fix missing clk_disable_unprepare() in owl_uart_probe
+ - tty: n_tty: Restore EOF push handling behavior
+ - tty: serial: fsl_lpuart: fix potential bug when using both of_alias_get_id
+ and ida_simple_get
+ - usb: usbip: fix a refcount leak in stub_probe()
+ - usb: usbip: add missing device lock on tweak configuration cmd
+ - USB: storage: karma: fix rio_karma_init return
+ - usb: musb: Fix missing of_node_put() in omap2430_probe
+ - staging: fieldbus: Fix the error handling path in
+ anybuss_host_common_probe()
+ - pwm: lp3943: Fix duty calculation in case period was clamped
+ - rpmsg: qcom_smd: Fix irq_of_parse_and_map() return value
+ - usb: dwc3: pci: Fix pm_runtime_get_sync() error checking
+ - misc: fastrpc: fix an incorrect NULL check on list iterator
+ - firmware: stratix10-svc: fix a missing check on list iterator
+ - usb: typec: mux: Check dev_set_name() return value
+ - iio: adc: stmpe-adc: Fix wait_for_completion_timeout return value check
+ - iio: proximity: vl53l0x: Fix return value check of
+ wait_for_completion_timeout
+ - iio: adc: sc27xx: fix read big scale voltage not right
+ - iio: adc: sc27xx: Fine tune the scale calibration values
+ - rpmsg: qcom_smd: Fix returning 0 if irq_of_parse_and_map() fails
+ - phy: qcom-qmp: fix pipe-clock imbalance on power-on failure
+ - serial: sifive: Report actual baud base rather than fixed 115200
+ - coresight: cpu-debug: Replace mutex with mutex_trylock on panic notifier
+ - extcon: ptn5150: Add queue work sync before driver release
+ - soc: rockchip: Fix refcount leak in rockchip_grf_init
+ - rtc: mt6397: check return value after calling platform_get_resource()
+ - serial: meson: acquire port->lock in startup()
+ - serial: 8250_fintek: Check SER_RS485_RTS_* only with RS485
+ - serial: digicolor-usart: Don't allow CS5-6
+ - serial: rda-uart: Don't allow CS5-6
+ - serial: txx9: Don't allow CS5-6
+ - serial: sh-sci: Don't allow CS5-6
+ - serial: sifive: Sanitize CSIZE and c_iflag
+ - serial: st-asc: Sanitize CSIZE and correct PARENB for CS7
+ - serial: stm32-usart: Correct CSIZE, bits, and parity
+ - firmware: dmi-sysfs: Fix memory leak in dmi_sysfs_register_handle
+ - bus: ti-sysc: Fix warnings for unbind for serial
+ - driver: base: fix UAF when driver_attach failed
+ - driver core: fix deadlock in __device_attach
+ - watchdog: rti-wdt: Fix pm_runtime_get_sync() error checking
+ - watchdog: ts4800_wdt: Fix refcount leak in ts4800_wdt_probe
+ - ASoC: fsl_sai: Fix FSL_SAI_xDR/xFR definition
+ - clocksource/drivers/oxnas-rps: Fix irq_of_parse_and_map() return value
+ - [s390x] crypto: fix scatterwalk_unmap() callers in AES-GCM
+ - net: sched: fixed barrier to prevent skbuff sticking in qdisc backlog
+ - net: ethernet: mtk_eth_soc: out of bounds read in
+ mtk_hwlro_get_fdir_entry()
+ - net: ethernet: ti: am65-cpsw-nuss: Fix some refcount leaks
+ - net: dsa: mv88e6xxx: Fix refcount leak in mv88e6xxx_mdios_register
+ - modpost: fix removing numeric suffixes
+ - jffs2: fix memory leak in jffs2_do_fill_super
+ - ubi: fastmap: Fix high cpu usage of ubi_bgt by making sure wl_pool not
+ empty
+ - ubi: ubi_create_volume: Fix use-after-free when volume creation failed
+ - bpf: Fix probe read error in ___bpf_prog_run()
+ - net/smc: fixes for converting from "struct smc_cdc_tx_pend **" to "struct
+ smc_wr_tx_pend_priv *"
+ - nfp: only report pause frame configuration for physical device
+ - sfc: fix considering that all channels have TX queues
+ - sfc: fix wrong tx channel offset with efx_separate_tx_channels
+ - net/mlx5: Don't use already freed action pointer
+ - net/mlx5: correct ECE offset in query qp output
+ - net/mlx5e: Update netdev features after changing XDP state
+ - net: sched: add barrier to fix packet stuck problem for lockless qdisc
+ - tcp: tcp_rtx_synack() can be called from process context
+ - gpio: pca953x: use the correct register address to do regcache sync
+ - afs: Fix infinite loop found by xfstest generic/676
+ - scsi: sd: Fix potential NULL pointer dereference
+ - tipc: check attribute length for bearer name
+ - driver core: Fix wait_for_device_probe() & deferred_probe_timeout
+ interaction
+ - perf c2c: Fix sorting in percent_rmt_hitm_cmp()
+ - dmaengine: idxd: set DMA_INTERRUPT cap bit
+ - mips: cpc: Fix refcount leak in mips_cpc_default_phys_base
+ - bootconfig: Make the bootconfig.o as a normal object file
+ - tracing: Fix sleeping function called from invalid context on RT kernel
+ - tracing: Avoid adding tracer option before update_tracer_options
+ - iommu/arm-smmu: fix possible null-ptr-deref in arm_smmu_device_probe()
+ - iommu/arm-smmu-v3: check return value after calling
+ platform_get_resource()
+ - f2fs: remove WARN_ON in f2fs_is_valid_blkaddr
+ - i2c: cadence: Increase timeout per message if necessary
+ - dmaengine: zynqmp_dma: In struct zynqmp_dma_chan fix desc_size data type
+ - NFSv4: Don't hold the layoutget locks across multiple RPC calls
+ - video: fbdev: hyperv_fb: Allow resolutions with size > 64 MB for Gen1
+ - video: fbdev: pxa3xx-gcu: release the resources correctly in
+ pxa3xx_gcu_probe/remove()
+ - xprtrdma: treat all calls not a bcall when bc_serv is NULL
+ - netfilter: nat: really support inet nat without l3 address
+ - netfilter: nf_tables: delete flowtable hooks via transaction list
+ - powerpc/kasan: Force thread size increase with KASAN
+ - netfilter: nf_tables: always initialize flowtable hook list in transaction
+ - ata: pata_octeon_cf: Fix refcount leak in octeon_cf_probe
+ - netfilter: nf_tables: release new hooks on unsupported flowtable flags
+ - netfilter: nf_tables: memleak flow rule from commit path
+ - netfilter: nf_tables: bail out early if hardware offload is not supported
+ - xen: unexport __init-annotated xen_xlate_map_ballooned_pages()
+ - af_unix: Fix a data-race in unix_dgram_peer_wake_me().
+ - bpf, arm64: Clear prog->jited_len along prog->jited
+ - net: dsa: lantiq_gswip: Fix refcount leak in gswip_gphy_fw_list
+ - net/mlx4_en: Fix wrong return value on ioctl EEPROM query failure
+ - SUNRPC: Fix the calculation of xdr->end in xdr_get_next_encode_buffer()
+ - net: mdio: unexport __init-annotated mdio_bus_init()
+ - net: xfrm: unexport __init-annotated xfrm4_protocol_init()
+ - net: ipv6: unexport __init-annotated seg6_hmac_init()
+ - net/mlx5: Rearm the FW tracer after each tracer event
+ - net/mlx5: fs, fail conflicting actions
+ - ip_gre: test csum_start instead of transport header
+ - net: altera: Fix refcount leak in altera_tse_mdio_create
+ - drm: imx: fix compiler warning with gcc-12
+ - iio: dummy: iio_simple_dummy: check the return value of kstrdup()
+ - staging: rtl8712: fix a potential memory leak in r871xu_drv_init()
+ - iio: st_sensors: Add a local lock for protecting odr
+ - tty: synclink_gt: Fix null-pointer-dereference in slgt_clean()
+ - tty: Fix a possible resource leak in icom_probe
+ - drivers: staging: rtl8192u: Fix deadlock in ieee80211_beacons_stop()
+ - drivers: staging: rtl8192e: Fix deadlock in rtllib_beacons_stop()
+ - USB: host: isp116x: check return value after calling
+ platform_get_resource()
+ - drivers: tty: serial: Fix deadlock in sa1100_set_termios()
+ - drivers: usb: host: Fix deadlock in oxu_bus_suspend()
+ - USB: hcd-pci: Fully suspend across freeze/thaw cycle
+ - sysrq: do not omit current cpu when showing backtrace of all active CPUs
+ - usb: dwc2: gadget: don't reset gadget's driver->bus
+ - misc: rtsx: set NULL intfdata when probe fails
+ - extcon: Modify extcon device to be created after driver data is set
+ - clocksource/drivers/sp804: Avoid error on multiple instances
+ - staging: rtl8712: fix uninit-value in usb_read8() and friends
+ - staging: rtl8712: fix uninit-value in r871xu_drv_init()
+ - serial: msm_serial: disable interrupts in __msm_console_write()
+ - kernfs: Separate kernfs_pr_cont_buf and rename_lock.
+ - watchdog: wdat_wdt: Stop watchdog when rebooting the system
+ - md: protect md_unregister_thread from reentrancy
+ - scsi: myrb: Fix up null pointer access on myrb_cleanup()
+ - Revert "net: af_key: add check for pfkey_broadcast in function
+ pfkey_process"
+ - ceph: allow ceph.dir.rctime xattr to be updatable
+ - drm/radeon: fix a possible null pointer dereference
+ - modpost: fix undefined behavior of is_arm_mapping_symbol()
+ - [x86] cpu: Elide KCSAN for cpu_has() and friends
+ - jump_label,noinstr: Avoid instrumentation for JUMP_LABEL=n builds
+ - nbd: call genl_unregister_family() first in nbd_cleanup()
+ - nbd: fix race between nbd_alloc_config() and module removal
+ - nbd: fix io hung while disconnecting device
+ - [s390x] gmap: voluntarily schedule during key setting
+ - cifs: version operations for smb20 unneeded when legacy support disabled
+ - nodemask: Fix return values to be unsigned
+ - vringh: Fix loop descriptors check in the indirect cases
+ - scripts/gdb: change kernel config dumping method
+ - ALSA: hda/conexant - Fix loopback issue with CX20632
+ - ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo
+ Yoga DuetITL 2021
+ - cifs: return errors during session setup during reconnects
+ - cifs: fix reconnect on smb3 mount types
+ - ata: libata-transport: fix {dma|pio|xfer}_mode sysfs files
+ - mmc: block: Fix CQE recovery reset success
+ - net: phy: dp83867: retrigger SGMII AN when link change
+ - nfc: st21nfca: fix incorrect validating logic in EVT_TRANSACTION
+ - nfc: st21nfca: fix memory leaks in EVT_TRANSACTION handling
+ - nfc: st21nfca: fix incorrect sizing calculations in EVT_TRANSACTION
+ - ixgbe: fix bcast packets Rx on VF after promisc removal
+ - ixgbe: fix unexpected VLAN Rx in promisc mode on VF
+ - Input: bcm5974 - set missing URB_NO_TRANSFER_DMA_MAP urb flag
+ - drm/bridge: analogix_dp: Support PSR-exit to disable transition
+ - drm/atomic: Force bridge self-refresh-exit on CRTC switch
+ - [powerpc*] 32: Fix overread/overwrite of thread_struct via ptrace
+ (CVE-2022-32981)
+ - [powerpc*] mm: Switch obsolete dssall to .long
+ - interconnect: qcom: sc7180: Drop IP0 interconnects
+ - interconnect: Restore sync state by ignoring ipa-virt in provider count
+ - md/raid0: Ignore RAID0 layout if the second zone has only one device
+ - PCI: qcom: Fix pipe clock imbalance
+ - zonefs: fix handling of explicit_open option on mount
+ - dmaengine: idxd: add missing callback function to support DMA_INTERRUPT
+ - tcp: fix tcp_mtup_probe_success vs wrong snd_cwnd
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.123
+ - [x86] Mitigate Processor MMIO Stale Data vulnerabilities
+ (CVE-2022-21123, CVE-2022-21125, CVE-2022-21166):
+ + Documentation: Add documentation for Processor MMIO Stale Data
+ + x86/speculation/mmio: Enumerate Processor MMIO Stale Data bug
+ + x86/speculation: Add a common function for MD_CLEAR mitigation update
+ + x86/speculation/mmio: Add mitigation for Processor MMIO Stale Data
+ + x86/bugs: Group MDS, TAA & Processor MMIO Stale Data mitigations
+ + x86/speculation/mmio: Enable CPU Fill buffer clearing on idle
+ + x86/speculation/mmio: Add sysfs reporting for Processor MMIO Stale Data
+ + x86/speculation/srbds: Update SRBDS mitigation selection
+ + x86/speculation/mmio: Reuse SRBDS mitigation for SBDS
+ + KVM: x86/speculation: Disable Fill buffer clear within guests
+ + x86/speculation/mmio: Print SMT warning
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.124
+ - 9p: missing chunk of "fs/9p: Don't update file type when updating file
+ attributes"
+ - nfsd: Replace use of rwsem with errseq_t
+ - bpf: Fix incorrect memory charge cost calculation in stack_map_alloc()
+ - ata: libata-core: fix NULL pointer deref in ata_host_alloc_pinfo()
+ - quota: Prevent memory allocation recursion while holding dq_lock
+ - [armhf] ASoC: es8328: Fix event generation for deemphasis control
+ - Input: soc_button_array - also add Lenovo Yoga Tablet2 1051F to
+ dmi_use_low_level_irq
+ - scsi: vmw_pvscsi: Expand vcpuHint to 16 bits
+ - scsi: lpfc: Fix port stuck in bypassed state after LIP in PT2PT topology
+ - scsi: lpfc: Allow reduced polling rate for nvme_admin_async_event cmd
+ completion
+ - scsi: ipr: Fix missing/incorrect resource cleanup in error case
+ - scsi: pmcraid: Fix missing resource cleanup in error case
+ - ALSA: hda/realtek - Add HW8326 support
+ - virtio-mmio: fix missing put_device() when vm_cmdline_parent registration
+ failed
+ - ipv6: Fix signed integer overflow in l2tp_ip6_sendmsg
+ - random: credit cpu and bootloader seeds by default
+ - pNFS: Don't keep retrying if the server replied NFS4ERR_LAYOUTUNAVAILABLE
+ - pNFS: Avoid a live lock condition in pnfs_update_layout()
+ - [x86] clocksource: hyper-v: unexport __init-annotated
+ hv_init_clocksource()
+ - i40e: Fix adding ADQ filter to TC0
+ - i40e: Fix calculating the number of queue pairs
+ - i40e: Fix call trace in setup_tx_descriptors
+ - [x86] Drivers: hv: vmbus: Release cpu lock in error case
+ - [x86] drm/i915/reset: Fix error_state_read ptr + offset use
+ - nvme: use sysfs_emit instead of sprintf
+ - nvme: add device name to warning in uuid_show()
+ - net: ax25: Fix deadlock caused by skb_recv_datagram in ax25_recvmsg
+ - [arm64] ftrace: fix branch range checks
+ - [arm64] ftrace: consistently handle PLTs.
+ - block: Fix handling of offline queues in blk_mq_alloc_request_hctx()
+ - faddr2line: Fix overlapping text section failures, the sequel
+ - [arm64,armhf] irqchip/gic-v3: Fix error handling in
+ gic_populate_ppi_partitions
+ - [arm64,armhf] irqchip/gic-v3: Fix refcount leak in
+ gic_populate_ppi_partitions
+ - i2c: designware: Use standard optional ref clock implementation
+ - [x86] mei: me: add raptor lake point S DID
+ - [x86] comedi: vmk80xx: fix expression for tx buffer size
+ - USB: serial: option: add support for Cinterion MV31 with new baseline
+ - USB: serial: io_ti: add Agilent E5805A support
+ - [arm*] usb: dwc2: Fix memory leak in dwc2_hcd_init
+ - serial: 8250: Store to lsr_save_flags after lsr read
+ - dm mirror log: round up region bitmap size to BITS_PER_LONG
+ - drm/amd/display: Cap OLED brightness per max frame-average luminance
+ - ext4: fix bug_on ext4_mb_use_inode_pa
+ - ext4: make variable "count" signed
+ - ext4: add reserved GDT blocks check
+ - [arm64] KVM: arm64: Don't read a HW interrupt pending state in user
+ context
+ - [x86] KVM: x86: Account a variety of miscellaneous allocations
+ - [x86] KVM: SVM: Use kzalloc for sev ioctl interfaces to prevent kernel
+ data leak
+ - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machine
+ - virtio-pci: Remove wrong address verification in vp_del_vqs()
+ - dma-direct: don't over-decrypt memory
+ - net/sched: act_police: more accurate MTU policing
+ - net: openvswitch: fix misuse of the cached connection on tuple changes
+ - Revert "PCI: Make pci_enable_ptm() private"
+ - igc: Enable PCIe PTM
+ - [arm64] clk: imx8mp: fix usb_root_clk parent
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.125
+ - [s390x] mm: use non-quiescing sske for KVM switch to keyed guest
+ - zonefs: fix zonefs_iomap_begin() for reads
+ - usb: gadget: u_ether: fix regression in setting fixed MAC address
+ - tcp: add some entropy in __inet_hash_connect()
+ - tcp: use different parts of the port_offset for index and offset
+ (CVE-2022-1012)
+ - tcp: add small random increments to the source port (CVE-2022-1012)
+ - tcp: dynamically allocate the perturb table used by source ports
+ (CVE-2022-1012)
+ - tcp: increase source port perturb table to 2^16 (CVE-2022-1012,
+ CVE-2022-32296)
+ - tcp: drop the hash_32() part from the index calculation (CVE-2022-1012)
+ - serial: core: Initialize rs485 RTS polarity already on probe
+ - [arm64] mm: Don't invalidate FROM_DEVICE buffers at start of DMA transfer
+ - io_uring: add missing item types for various requests
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.126
+ - io_uring: use separate list entry for iopoll requests
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.127
+ - vt: drop old FONT ioctls
+ - random: schedule mix_interrupt_randomness() less often
+ - random: quiet urandom warning ratelimit suppression message
+ - ALSA: hda/via: Fix missing beep setup
+ - ALSA: hda/conexant: Fix missing beep setup
+ - ALSA: hda/realtek: Add mute LED quirk for HP Omen laptop
+ - ALSA: hda/realtek - ALC897 headset MIC no sound
+ - ALSA: hda/realtek: Apply fixup for Lenovo Yoga Duet 7 properly
+ - ALSA: hda/realtek: Add quirk for Clevo PD70PNT
+ - ALSA: hda/realtek: Add quirk for Clevo NS50PU
+ - net: openvswitch: fix parsing of nw_proto for IPv6 fragments
+ - btrfs: add error messages to all unrecognized mount options
+ - mmc: sdhci-pci-o2micro: Fix card detect by dealing with debouncing
+ - [armhf] mtd: rawnand: gpmi: Fix setting busy timeout setting
+ - ata: libata: add qc->flags in ata_qc_complete_template tracepoint
+ - dm era: commit metadata in postsuspend after worker stops
+ - dm mirror log: clear log bits up to BITS_PER_LONG boundary
+ - USB: serial: option: add Telit LE910Cx 0x1250 composition
+ - USB: serial: option: add Quectel EM05-G modem
+ - USB: serial: option: add Quectel RM500K module support
+ - [arm64] drm/msm: Fix double pm_runtime_disable() call
+ - netfilter: nftables: add nft_parse_register_load() and use it
+ - netfilter: nftables: add nft_parse_register_store() and use it
+ - netfilter: use get_random_u32 instead of prandom
+ - scsi: scsi_debug: Fix zone transition to full condition
+ - [arm64] drm/msm: use for_each_sgtable_sg to iterate over scatterlist
+ - bpf: Fix request_sock leak in sk lookup helpers
+ - [arm64,armhf] drm/sun4i: Fix crash during suspend after component bind
+ failure
+ - [amd64] bpf, x86: Fix tail call count offset calculation on bpf2bpf call
+ - phy: aquantia: Fix AN when higher speeds than 1G are not advertised
+ - tipc: simplify the finalize work queue
+ - tipc: fix use-after-free Read in tipc_named_reinit
+ - igb: fix a use-after-free issue in igb_clean_tx_ring
+ - bonding: ARP monitor spams NETDEV_NOTIFY_PEERS notifiers
+ - net/sched: sch_netem: Fix arithmetic in netem_dump() for 32-bit platforms
+ - [arm64] drm/msm/mdp4: Fix refcount leak in mdp4_modeset_init_intf
+ - [arm64] drm/msm/dp: check core_initialized before disable interrupts at
+ dp_display_unbind()
+ - [arm64] drm/msm/dp: fixes wrong connection state caused by failure of link
+ train
+ - [arm64] drm/msm/dp: deinitialize mainlink if link training failed
+ - [arm64] drm/msm/dp: promote irq_hpd handle to handle link training
+ correctly
+ - [arm64] drm/msm/dp: fix connect/disconnect handled at irq_hpd
+ - erspan: do not assume transport header is always set
+ - x86/xen: Remove undefined behavior in setup_features()
+ - afs: Fix dynamic root getattr
+ - ice: ethtool: advertise 1000M speeds properly
+ - regmap-irq: Fix a bug in regmap_irq_enable() for type_in_mask chips
+ - igb: Make DMA faster when CPU is active on the PCIe link
+ - virtio_net: fix xdp_rxq_info bug after suspend/resume
+ - nvme: centralize setting the timeout in nvme_alloc_request
+ - nvme: split nvme_alloc_request()
+ - nvme: mark nvme_setup_passsthru() inline
+ - nvme: don't check nvme_req flags for new req
+ - nvme-pci: allocate nvme_command within driver pdu
+ - nvme-pci: add NO APST quirk for Kioxia device
+ - nvme: move the Samsung X5 quirk entry to the core quirks
+ - [s390x] cpumf: Handle events cycles and instructions identical
+ - iio: mma8452: fix probe fail when device tree compatible is used.
+ - iio: adc: vf610: fix conversion mode sysfs node name
+ - xhci: turn off port power in shutdown
+ - xhci-pci: Allow host runtime PM as default for Intel Raptor Lake xHCI
+ - xhci-pci: Allow host runtime PM as default for Intel Meteor Lake xHCI
+ - [arm64,armhf] usb: chipidea: udc: check request status before setting
+ device address
+ - f2fs: attach inline_data after setting compression
+ - iio:accel:bma180: rearrange iio trigger get and register
+ - iio:accel:mxc4005: rearrange iio trigger get and register
+ - iio: accel: mma8452: ignore the return value of reset operation
+ - iio: gyro: mpu3050: Fix the error handling in mpu3050_power_up()
+ - iio: imu: inv_icm42600: Fix broken icm42600 (chip id 0 value)
+ - iio: adc: axp288: Override TS pin bias current for some models
+ - iio: adc: adi-axi-adc: Fix refcount leak in adi_axi_adc_attach_client
+ - [powerpc*] Enable execve syscall exit tracepoint
+ - [powerpc*] rtas: Allow ibm,platform-dump RTAS call with null buffer
+ address
+ - [powerpc*] powernv: wire up rng during setup_arch
+ - [armhf] exynos: Fix refcount leak in exynos_map_pmu
+ - modpost: fix section mismatch check for exported init/exit sections
+ - random: update comment from copy_to_user() -> copy_to_iter()
+ - [powerpc*] pseries: wire up rng during setup_arch()
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.10.120-rt70
+ * [rt] Drop "crypto: cryptd - add a lock instead
+ preempt_disable/local_bh_disable" patch
+ * Bump ABI to 16
+
+ [ Ben Hutchings ]
+ * random: Enable RANDOM_TRUST_BOOTLOADER. This can be reverted using the
+ kernel parameter: random.trust_bootloader=off
+ * [armel,armhf] crypto: Enable optimised implementations (see #922204):
+ - Enable CRYPTO_SHA256_ARM, CRYPTO_SHA512_ARM as modules
+ - [armhf] Enable SHA1_ARM_NEON, CRYPTO_SHA1_ARM_CE, CRYPTO_SHA2_ARM_CE,
+ CRYPTO_AES_ARM_BS, CRYPTO_AES_ARM_CE, CRYPTO_GHASH_ARM_CE,
+ CRYPTO_CRCT10DIF_ARM_CE, CRYPTO_CRC32_ARM_CE as modules
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 30 Jun 2022 21:31:30 +0200
+
+linux (5.10.120-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.114
+ - USB: quirks: add a Realtek card reader
+ - USB: quirks: add STRING quirk for VCOM device
+ - USB: serial: whiteheat: fix heap overflow in WHITEHEAT_GET_DTR_RTS
+ - USB: serial: cp210x: add PIDs for Kamstrup USB Meter Reader
+ - USB: serial: option: add support for Cinterion MV32-WA/MV32-WB
+ - USB: serial: option: add Telit 0x1057, 0x1058, 0x1075 compositions
+ - xhci: Enable runtime PM on second Alderlake controller
+ - xhci: stop polling roothubs after shutdown
+ - xhci: increase usb U3 -> U0 link resume timeout from 100ms to 500ms
+ - iio: dac: ad5592r: Fix the missing return value.
+ - iio: dac: ad5446: Fix read_raw not returning set value
+ - iio: magnetometer: ak8975: Fix the error handling in ak8975_power_on()
+ - iio: imu: inv_icm42600: Fix I2C init possible nack
+ - usb: misc: fix improper handling of refcount in uss720_probe()
+ - [arm64,x86] usb: typec: ucsi: Fix reuse of completion structure
+ - [arm64,x86] usb: typec: ucsi: Fix role swapping
+ - usb: gadget: uvc: Fix crash when encoding data for usb request
+ - usb: gadget: configfs: clear deactivation flag in
+ configfs_composite_unbind()
+ - [arm64,armhf] usb: dwc3: Try usb-role-switch first in dwc3_drd_init
+ - [arm64,armhf] usb: dwc3: core: Fix tx/rx threshold settings
+ - [arm64,armhf] usb: dwc3: core: Only handle soft-reset in DCTL
+ - [arm64,armhf] usb: dwc3: gadget: Return proper request status
+ - [arm*] usb: phy: generic: Get the vbus supply
+ - [arm64,armhf] serial: imx: fix overrun interrupts in DMA mode
+ - serial: 8250: Also set sticky MCR bits in console restoration
+ - serial: 8250: Correct the clock for EndRun PTP/1588 PCIe device
+ - [arm64,armhf] arch_topology: Do not set llc_sibling if llc_id is invalid
+ - hex2bin: make the function hex_to_bin constant-time
+ - hex2bin: fix access beyond string end
+ - iocost: don't reset the inuse weight of under-weighted debtors
+ - video: fbdev: udlfb: properly check endpoint type
+ - iio:imu:bmi160: disable regulator in error path
+ - USB: Fix xhci event ring dequeue pointer ERDP update issue
+ - [armhf] phy: samsung: Fix missing of_node_put() in exynos_sata_phy_probe
+ - [armhf] phy: samsung: exynos5250-sata: fix missing device put in probe
+ error paths
+ - [armhf] OMAP2+: Fix refcount leak in omap_gic_of_init
+ - [armhf] bus: ti-sysc: Make omap3 gpt12 quirk handling SoC specific
+ - [armhf] phy: ti: omap-usb2: Fix error handling in omap_usb2_enable_clocks
+ - [armhf] dts: am3517-evm: Fix misc pinmuxing
+ - [armhf] dts: logicpd-som-lv: Fix wrong pinmuxing on OMAP35
+ - ipvs: correctly print the memory size of ip_vs_conn_tab
+ - [armhf] pinctrl: stm32: Do not call stm32_gpio_get() for edge triggered
+ IRQs in EOI
+ - [arm64,armhf] net: dsa: Add missing of_node_put() in
+ dsa_port_link_register_of
+ - netfilter: nft_set_rbtree: overlap detection with element re-addition
+ after deletion
+ - bpf, lwt: Fix crash when using bpf_skb_set_tunnel_key() from bpf_xmit lwt
+ hook
+ - [arm64,armhf] pinctrl: rockchip: fix RK3308 pinmux bits
+ - tcp: md5: incorrect tcp_header_len for incoming connections
+ - [armhf] pinctrl: stm32: Keep pinctrl block clock enabled when LEVEL IRQ
+ requested
+ - tcp: ensure to use the most recently sent skb when filling the rate sample
+ - wireguard: device: check for metadata_dst with skb_valid_dst()
+ - sctp: check asoc strreset_chunk in sctp_generate_reconf_event
+ - [arm64] dts: imx8mn-ddr4-evk: Describe the 32.768 kHz PMIC clock
+ - [arm64] net: hns3: modify the return code of hclge_get_ring_chain_from_mbx
+ - [arm64] net: hns3: add validity check for message data length
+ - [arm64] net: hns3: add return value for mailbox handling in PF
+ - net/smc: sync err code when tcp connection was refused
+ - ip_gre: Make o_seqno start from 0 in native mode
+ - ip6_gre: Make o_seqno start from 0 in native mode
+ - ip_gre, ip6_gre: Fix race condition on o_seqno in collect_md mode
+ - tcp: fix potential xmit stalls caused by TCP_NOTSENT_LOWAT
+ - tcp: make sure treq->af_specific is initialized
+ - [arm64,armhf] bus: sunxi-rsb: Fix the return value of
+ sunxi_rsb_device_create()
+ - [arm64,armhf] clk: sunxi: sun9i-mmc: check return value after calling
+ platform_get_resource()
+ - [arm64] net: bcmgenet: hide status block before TX timestamping
+ - net: phy: marvell10g: fix return value on error
+ - bnx2x: fix napi API usage sequence
+ - [arm64,armhf] net: fec: add missing of_node_put() in
+ fec_enet_init_stop_mode()
+ - ixgbe: ensure IPsec VF<->PF compatibility
+ - tcp: fix F-RTO may not work correctly when receiving DSACK
+ - [x86] ASoC: Intel: soc-acpi: correct device endpoints for max98373
+ - ext4: fix bug_on in start_this_handle during umount filesystem
+ - [amd64] x86: __memcpy_flushcache: fix wrong alignment if size > 2^32
+ - cifs: destage any unwritten data to the server before calling
+ copychunk_write
+ - [x86] drivers: net: hippi: Fix deadlock in rr_close()
+ - zonefs: Fix management of open zones
+ - zonefs: Clear inode information flags on inode creation
+ - [x86] drm/i915: Fix SEL_FETCH_PLANE_*(PIPE_B+) register addresses
+ - [armhf] net: ethernet: stmmac: fix write to sgmii_adapter_base
+ - [x86] thermal: int340x: Fix attr.show callback prototype
+ - [x86] cpu: Load microcode during restore_processor_state()
+ - tty: n_gsm: fix restart handling via CLD command
+ - tty: n_gsm: fix decoupled mux resource
+ - tty: n_gsm: fix mux cleanup after unregister tty device
+ - tty: n_gsm: fix wrong signal octet encoding in convergence layer type 2
+ - tty: n_gsm: fix malformed counter for out of frame data
+ - netfilter: nft_socket: only do sk lookups when indev is available
+ - tty: n_gsm: fix insufficient txframe size
+ - tty: n_gsm: fix wrong DLCI release order
+ - tty: n_gsm: fix missing explicit ldisc flush
+ - tty: n_gsm: fix wrong command retry handling
+ - tty: n_gsm: fix wrong command frame length field encoding
+ - tty: n_gsm: fix reset fifo race condition
+ - tty: n_gsm: fix incorrect UA handling
+ - tty: n_gsm: fix software flow control handling
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.115
+ - [mips*] Fix CP0 counter erratum detection for R4k CPUs
+ - ALSA: hda/realtek: Add quirk for Yoga Duet 7 13ITL6 speakers
+ - ALSA: fireworks: fix wrong return count shorter than expected by 4 bytes
+ - [arm64] mmc: sdhci-msm: Reset GCC_SDCC_BCR register for SDHC
+ - mmc: core: Set HS clock speed before sending HS CMD13
+ - gpiolib: of: fix bounds check for 'gpio-reserved-ranges'
+ - [x86] KVM: x86/svm: Account for family 17h event renumberings in
+ amd_pmc_perf_hw_id
+ - [amd64] iommu/vt-d: Calculate mask for non-aligned flushes
+ - Revert "SUNRPC: attempt AF_LOCAL connect on setup"
+ - firewire: fix potential uaf in outbound_phy_packet_callback()
+ - firewire: remove check of list iterator against head past the loop body
+ - firewire: core: extend card->lock in fw_core_handle_bus_reset
+ - net: stmmac: disable Split Header (SPH) for Intel platforms
+ - genirq: Synchronize interrupt thread startup
+ - ASoC: da7219: Fix change notifications for tone generator frequency
+ - [s390x] dasd: fix data corruption for ESE devices
+ - [s390x] dasd: prevent double format of tracks for ESE devices
+ - [s390x] dasd: Fix read for ESE with blksize < 4k
+ - [s390x] dasd: Fix read inconsistency for ESE DASD devices
+ - can: isotp: remove re-binding of bound socket
+ - nfc: replace improper check device_is_registered() in netlink related
+ functions (CVE-2022-1974)
+ - NFC: netlink: fix sleep in atomic bug when firmware download timeout
+ (CVE-2022-1975)
+ - [arm64,armhf] gpio: pca953x: fix irq_stat not updated when irq is disabled
+ (irq_mask not set)
+ - hwmon: (adt7470) Fix warning on module removal
+ - [arm*] ASoC: dmaengine: Restore NULL prepare_slave_config() callback
+ - net/mlx5e: Fix trust state reset in reload
+ - net/mlx5e: Don't match double-vlan packets if cvlan is not set
+ - net/mlx5e: CT: Fix queued up restore put() executing after relevant ft
+ release
+ - net/mlx5e: Fix the calling of update_buffer_lossy() API
+ - net/mlx5: Avoid double clear or set of sync reset requested
+ - NFSv4: Don't invalidate inode attributes on delegation return
+ - [arm64,armhf] net: stmmac: dwmac-sun8i: add missing of_node_put() in
+ sun8i_dwmac_register_mdio_mux()
+ - [armhf] net: cpsw: add missing of_node_put() in cpsw_probe_dt()
+ - hinic: fix bug of wq out of bound access
+ - bnxt_en: Fix possible bnxt_open() failure caused by wrong RFS flag
+ - bnxt_en: Fix unnecessary dropping of RX packets
+ - [arm64,armhf] smsc911x: allow using IRQ0
+ - btrfs: always log symlinks in full mode
+ - net: igmp: respect RCU rules in ip_mc_source() and ip_mc_msfilter()
+ - [x86] kvm: x86/cpuid: Only provide CPUID leaf 0xA if host has
+ architectural PMU
+ - net/mlx5: Fix slab-out-of-bounds while reading resource dump menu
+ - [x86] kvm: Preserve BSP MSR_KVM_POLL_CONTROL across suspend/resume
+ - [x86] KVM: x86: Do not change ICR on write to APIC_SELF_IPI
+ - [x86] KVM: x86/mmu: avoid NULL-pointer dereference on page freeing bugs
+ - [x86] KVM: LAPIC: Enable timer posted-interrupt only when mwait/hlt is
+ advertised
+ - rcu: Fix callbacks processing time limit retaining cond_resched()
+ - rcu: Apply callbacks processing time limit only on softirq
+ - block-map: add __GFP_ZERO flag for alloc_page in function bio_copy_kern
+ (CVE-2022-0494)
+ - dm: interlock pending dm_io and dm_wait_for_bios_completion
+ - [arm64] PCI: aardvark: Clear all MSIs at setup
+ - [arm64] PCI: aardvark: Fix reading MSI interrupt number
+ - mmc: rtsx: add 74 Clocks in power on flow
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.116
+ - regulator: consumer: Add missing stubs to regulator/consumer.h
+ - block: drbd: drbd_nl: Make conversion to 'enum drbd_ret_code' explicit
+ - nfp: bpf: silence bitwise vs. logical OR warning
+ - Bluetooth: Fix the creation of hdev->name
+ - mm: fix missing cache flush for all tail pages of compound page
+ - mm: hugetlb: fix missing cache flush in copy_huge_page_from_user()
+ - mm: userfaultfd: fix missing cache flush in mcopy_atomic_pte() and
+ __mcopy_atomic()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.117
+ - batman-adv: Don't skb_split skbuffs with frag_list
+ - iwlwifi: iwl-dbg: Use del_timer_sync() before freeing
+ - hwmon: (tmp401) Add OF device ID table
+ - mac80211: Reset MBSSID parameters upon connection
+ - net: Fix features skip in for_each_netdev_feature()
+ - [arm64] net: mscc: ocelot: fix last VCAP IS1/IS2 filter persisting in
+ hardware when deleted
+ - [arm64] net: mscc: ocelot: fix VCAP IS2 filters matching on both lookups
+ - [arm64] net: mscc: ocelot: restrict tc-trap actions to VCAP IS2 lookup 0
+ - [arm64] net: mscc: ocelot: avoid corrupting hardware counters when moving
+ VCAP filters
+ - ipv4: drop dst in multicast routing path
+ - drm/nouveau: Fix a potential theorical leak in
+ nouveau_get_backlight_name()
+ - netlink: do not reset transport header in netlink_recvmsg()
+ - sfc: Use swap() instead of open coding it
+ - net: sfc: fix memory leak due to ptp channel
+ - mac80211_hwsim: call ieee80211_tx_prepare_skb under RCU protection
+ - nfs: fix broken handling of the softreval mount option
+ - dim: initialize all struct fields
+ - [s390x] ctcm: fix variable dereferenced before check
+ - [s390x] ctcm: fix potential memory leak
+ - [s390x] lcs: fix variable dereferenced before check
+ - net/sched: act_pedit: really ensure the skb is writable
+ - [arm64] net: bcmgenet: Check for Wake-on-LAN interrupt probe deferral
+ - [armhf] net: dsa: bcm_sf2: Fix Wake-on-LAN with mac_link_down()
+ - net/smc: non blocking recvmsg() return -EAGAIN when no data and
+ signal_pending
+ - net: sfc: ef10: fix memory leak in efx_ef10_mtd_probe()
+ - gfs2: Fix filesystem block deallocation for short writes
+ - hwmon: (f71882fg) Fix negative temperature
+ - ASoC: max98090: Reject invalid values in custom control put()
+ - ASoC: max98090: Generate notifications on changes for custom control
+ - ASoC: ops: Validate input values in snd_soc_put_volsw_range()
+ - net: sfp: Add tx-fault workaround for Huawei MA5671A SFP ONT
+ - tcp: resalt the secret every 10 seconds (CVE-2022-1012)
+ - firmware_loader: use kernel credentials when reading firmware
+ - tty: n_gsm: fix mux activation issues in gsm_config()
+ - usb: cdc-wdm: fix reading stuck on device close
+ - USB: serial: pl2303: add device id for HP LM930 Display
+ - USB: serial: qcserial: add support for Sierra Wireless EM7590
+ - USB: serial: option: add Fibocom L610 modem
+ - USB: serial: option: add Fibocom MA510 modem
+ - ceph: fix setting of xattrs on async created inodes
+ - drm/nouveau/tegra: Stop using iommu_present()
+ - i40e: i40e_main: fix a missing check on list iterator
+ - [amd64,arm64] net: atlantic: always deep reset on pm op, fixing up my null
+ deref regression
+ - cgroup/cpuset: Remove cpus_allowed/mems_allowed setup in cpuset_init_smp()
+ - [x86] drm/vmwgfx: Initialize drm_mode_fb_cmd2
+ - SUNRPC: Clean up scheduling of autoclose
+ - SUNRPC: Prevent immediate close+reconnect
+ - SUNRPC: Don't call connect() more than once on a TCP socket
+ - SUNRPC: Ensure we flush any closed sockets before xs_xprt_free()
+ (CVE-2022-28893)
+ - net: phy: Fix race condition on link status change
+ - [arm*] arm[64]/memremap: don't abuse pfn_valid() to ensure presence of
+ linear map
+ - ping: fix address binding wrt vrf
+ - usb: gadget: uvc: rename function to be more consistent
+ - usb: gadget: uvc: allow for application to cleanly shutdown
+ - io_uring: always use original task when preparing req identity
+ (CVE-2022-1786)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.118
+ - io_uring: always grab file table for deferred statx
+ - floppy: use a statically allocated error counter
+ - [x86] Revert "drm/i915/opregion: check port number bounds for SWSCI
+ display power state"
+ - igc: Remove _I_PHY_ID checking
+ - igc: Remove phy->type checking
+ - igc: Update I226_K device ID
+ - rtc: fix use-after-free on device removal
+ - [arm64] rtc: pcf2127: fix bug when reading alarm registers
+ - Input: add bounds checking to input_set_capability()
+ - nvme-pci: add quirks for Samsung X5 SSDs
+ - gfs2: Disable page faults during lockless buffered reads
+ - [arm64,armhf] rtc: sun6i: Fix time overflow handling
+ - [armhf] crypto: stm32 - fix reference leak in stm32_crc_remove
+ - [amd64] crypto: x86/chacha20 - Avoid spurious jumps to other functions
+ - ALSA: hda/realtek: Enable headset mic on Lenovo P360
+ - [s390x] pci: improve zpci_dev reference counting
+ - nvme-multipath: fix hang when disk goes live over reconnect
+ - rtc: mc146818-lib: Fix the AltCentury for AMD platforms
+ - fs: fix an infinite loop in iomap_fiemap
+ - drbd: remove usage of list iterator variable after loop
+ - [arm64] platform/chrome: cros_ec_debugfs: detach log reader wq from devm
+ - [armel,armhf] 9191/1: arm/stacktrace, kasan: Silence KASAN warnings in
+ unwind_frame()
+ - nilfs2: fix lockdep warnings in page operations for btree nodes
+ - nilfs2: fix lockdep warnings during disk space reclamation
+ - Revert "swiotlb: fix info leak with DMA_FROM_DEVICE"
+ - Reinstate some of "swiotlb: rework "fix info leak with DMA_FROM_DEVICE""
+ (CVE-2022-0854)
+ - ALSA: usb-audio: Restore Rane SL-1 quirk
+ - [i386] ALSA: wavefront: Proper check of get_user() error
+ - ALSA: hda/realtek: Add quirk for TongFang devices with pop noise
+ - perf: Fix sys_perf_event_open() race against self (CVE-2022-1729)
+ - selinux: fix bad cleanup on error in hashtab_duplicate()
+ - Fix double fget() in vhost_net_set_backend()
+ - PCI/PM: Avoid putting Elo i2 PCIe Ports in D3cold
+ - [x86] KVM: x86/mmu: Update number of zapped pages even if page list is
+ stable
+ - [arm64] paravirt: Use RCU read locks to guard stolen_time
+ - [arm64] mte: Ensure the cleared tags are visible before setting the PTE
+ - [arm64] crypto: qcom-rng - fix infinite loop on requests not multiple of
+ WORD_SZ
+ - libceph: fix potential use-after-free on linger ping and resends
+ - drm/dp/mst: fix a possible memory leak in fetch_monitor_name()
+ - dma-buf: fix use of DMA_BUF_SET_NAME_{A,B} in userspace
+ - [armhf] pinctrl: pinctrl-aspeed-g6: remove FWQSPID group in pinctrl
+ - [arm64] net: macb: Increment rx bd head after allocating skb and buffer
+ - net: evaluate net.ipvX.conf.all.disable_policy and disable_xfrm
+ - xfrm: Add possibility to set the default to block if we have no policy
+ - net: xfrm: fix shift-out-of-bounce
+ - xfrm: make user policy API complete
+ - xfrm: notify default policy on update
+ - xfrm: fix dflt policy check when there is no policy configured
+ - xfrm: rework default policy structure
+ - xfrm: fix "disable_policy" flag use when arriving from different devices
+ - net/sched: act_pedit: sanitize shift argument before usage
+ - [x86] net: vmxnet3: fix possible use-after-free bugs in
+ vmxnet3_rq_alloc_rx_buf()
+ - [x86] net: vmxnet3: fix possible NULL pointer dereference in
+ vmxnet3_rq_cleanup()
+ - ice: fix possible under reporting of ethtool Tx and Rx statistics
+ - net/qla3xxx: Fix a test in ql_reset_work()
+ - net/mlx5e: Properly block LRO when XDP is enabled
+ - net: af_key: add check for pfkey_broadcast in function pfkey_process
+ - [armhf] 9196/1: spectre-bhb: enable for Cortex-A15
+ - [armel,armhf] 9197/1: spectre-bhb: fix loop8 sequence for Thumb2
+ - igb: skip phy status check where unavailable
+ - net: bridge: Clear offload_fwd_mark when passing frame up bridge
+ interface.
+ - [arm*] gpio: mvebu/pwm: Refuse requests with inverted polarity
+ - scsi: qla2xxx: Fix missed DMA unmap for aborted commands
+ - mac80211: fix rx reordering with non explicit / psmp ack policy
+ - nl80211: validate S1G channel width
+ - nl80211: fix locking in nl80211_set_tx_bitrate_mask()
+ - ethernet: tulip: fix missing pci_disable_device() on error in
+ tulip_init_one()
+ - [amd64,arm64] net: atlantic: fix "frag[0] not initialized"
+ - [amd64,arm64] net: atlantic: reduce scope of is_rsc_complete
+ - [amd64,arm64] net: atlantic: add check for MAX_SKB_FRAGS
+ - [amd64,arm64] net: atlantic: verify hw_head_ lies within TX buffer ring
+ - [arm64] Enable repeat tlbi workaround on KRYO4XX gold CPUs
+ - dt-bindings: pinctrl: aspeed-g6: remove FWQSPID group
+ - afs: Fix afs_getattr() to refetch file status if callback break occurred
+ - include/uapi/linux/xfrm.h: Fix XFRM_MSG_MAPPING ABI breakage
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.119
+ - lockdown: also lock down previous kgdb use (CVE-2022-21499)
+ - staging: rtl8723bs: prevent ->Ssid overflow in rtw_wx_set_scan()
+ - [x86] KVM: x86: Properly handle APF vs disabled LAPIC situation
+ - [x86] KVM: x86/mmu: fix NULL pointer dereference on guest INVPCID
+ (CVE-2022-1789)
+ - tcp: change source port randomizarion at connect() time
+ - secure_seq: use the 64 bits of the siphash for port offset calculation
+ (CVE-2022-1012)
+ - ACPI: sysfs: Make sparse happy about address space in use
+ - ACPI: sysfs: Fix BERT error region memory mapping
+ - random: avoid arch_get_random_seed_long() when collecting IRQ randomness
+ - random: remove dead code left over from blocking pool
+ - MAINTAINERS: co-maintain random.c
+ - MAINTAINERS: add git tree for random.c
+ - crypto: lib/blake2s - Move selftest prototype into header file
+ - crypto: blake2s - define shash_alg structs using macros
+ - [amd64] crypto: x86/blake2s - define shash_alg structs using macros
+ - crypto: blake2s - remove unneeded includes
+ - crypto: blake2s - move update and final logic to internal/blake2s.h
+ - crypto: blake2s - share the "shash" API boilerplate code
+ - crypto: blake2s - optimize blake2s initialization
+ - crypto: blake2s - add comment for blake2s_state fields
+ - crypto: blake2s - adjust include guard naming
+ - crypto: blake2s - include <linux/bug.h> instead of <asm/bug.h>
+ - lib/crypto: blake2s: include as built-in
+ - lib/crypto: blake2s: move hmac construction into wireguard
+ - lib/crypto: sha1: re-roll loops to reduce code size
+ - lib/crypto: blake2s: avoid indirect calls to compression function for
+ Clang CFI
+ - random: document add_hwgenerator_randomness() with other input functions
+ - random: remove unused irq_flags argument from add_interrupt_randomness()
+ - random: use BLAKE2s instead of SHA1 in extraction
+ - random: do not sign extend bytes for rotation when mixing
+ - random: do not re-init if crng_reseed completes before primary init
+ - random: mix bootloader randomness into pool
+ - random: harmonize "crng init done" messages
+ - random: use IS_ENABLED(CONFIG_NUMA) instead of ifdefs
+ - random: early initialization of ChaCha constants
+ - random: avoid superfluous call to RDRAND in CRNG extraction
+ - random: don't reset crng_init_cnt on urandom_read()
+ - random: fix typo in comments
+ - random: cleanup poolinfo abstraction
+ - random: cleanup integer types
+ - random: remove incomplete last_data logic
+ - random: remove unused extract_entropy() reserved argument
+ - random: rather than entropy_store abstraction, use global
+ - random: remove unused OUTPUT_POOL constants
+ - random: de-duplicate INPUT_POOL constants
+ - random: prepend remaining pool constants with POOL_
+ - random: cleanup fractional entropy shift constants
+ - random: access input_pool_data directly rather than through pointer
+ - random: selectively clang-format where it makes sense
+ - random: simplify arithmetic function flow in account()
+ - random: continually use hwgenerator randomness
+ - random: access primary_pool directly rather than through pointer
+ - random: only call crng_finalize_init() for primary_crng
+ - random: use computational hash for entropy extraction
+ - random: simplify entropy debiting
+ - random: use linear min-entropy accumulation crediting
+ - random: always wake up entropy writers after extraction
+ - random: make credit_entropy_bits() always safe
+ - random: remove use_input_pool parameter from crng_reseed()
+ - random: remove batched entropy locking
+ - random: fix locking in crng_fast_load()
+ - random: use RDSEED instead of RDRAND in entropy extraction
+ - random: get rid of secondary crngs
+ - random: inline leaves of rand_initialize()
+ - random: ensure early RDSEED goes through mixer on init
+ - random: do not xor RDRAND when writing into /dev/random
+ - random: absorb fast pool into input pool after fast load
+ - random: use simpler fast key erasure flow on per-cpu keys
+ - random: use hash function for crng_slow_load()
+ - random: make more consistent use of integer types
+ - random: remove outdated INT_MAX >> 6 check in urandom_read()
+ - random: zero buffer after reading entropy from userspace
+ - random: fix locking for crng_init in crng_reseed()
+ - random: tie batched entropy generation to base_crng generation
+ - random: remove ifdef'd out interrupt bench
+ - random: remove unused tracepoints
+ - random: add proper SPDX header
+ - random: deobfuscate irq u32/u64 contributions
+ - random: introduce drain_entropy() helper to declutter crng_reseed()
+ - random: remove useless header comment
+ - random: remove whitespace and reorder includes
+ - random: group initialization wait functions
+ - random: group crng functions
+ - random: group entropy extraction functions
+ - random: group entropy collection functions
+ - random: group userspace read/write functions
+ - random: group sysctl functions
+ - random: rewrite header introductory comment
+ - random: defer fast pool mixing to worker
+ - random: do not take pool spinlock at boot
+ - random: unify early init crng load accounting
+ - random: check for crng_init == 0 in add_device_randomness()
+ - random: pull add_hwgenerator_randomness() declaration into random.h
+ - random: clear fast pool, crng, and batches in cpuhp bring up
+ - random: round-robin registers as ulong, not u32
+ - random: only wake up writers after zap if threshold was passed
+ - random: cleanup UUID handling
+ - random: unify cycles_t and jiffies usage and types
+ - random: do crng pre-init loading in worker rather than irq
+ - random: give sysctl_random_min_urandom_seed a more sensible value
+ - random: don't let 644 read-only sysctls be written to
+ - random: replace custom notifier chain with standard one
+ - random: use SipHash as interrupt entropy accumulator
+ - random: make consistent usage of crng_ready()
+ - random: reseed more often immediately after booting
+ - random: check for signal and try earlier when generating entropy
+ - random: skip fast_init if hwrng provides large chunk of entropy
+ - random: treat bootloader trust toggle the same way as cpu trust toggle
+ - random: re-add removed comment about get_random_{u32,u64} reseeding
+ - random: mix build-time latent entropy into pool at init
+ - random: do not split fast init input in add_hwgenerator_randomness()
+ - random: do not allow user to keep crng key around on stack
+ - random: check for signal_pending() outside of need_resched() check
+ - random: check for signals every PAGE_SIZE chunk of /dev/[u]random
+ - random: allow partial reads if later user copies fail
+ - random: make random_get_entropy() return an unsigned long
+ - random: document crng_fast_key_erasure() destination possibility
+ - random: fix sysctl documentation nits
+ - init: call time_init() before rand_initialize()
+ - [s390x] define get_cycles macro for arch-override
+ - [powerpc*] define get_cycles macro for arch-override
+ - timekeeping: Add raw clock fallback for random_get_entropy()
+ - [mips*] use fallback for random_get_entropy() instead of just c0 random
+ - [arm*] use fallback for random_get_entropy() instead of zero
+ - [x86] tsc: Use fallback for random_get_entropy() instead of zero
+ - random: insist on random_get_entropy() existing in order to simplify
+ - random: do not use batches when !crng_ready()
+ - random: use first 128 bits of input as fast init
+ - random: do not pretend to handle premature next security model
+ - random: order timer entropy functions below interrupt functions
+ - random: do not use input pool from hard IRQs
+ - random: help compiler out with fast_mix() by using simpler arguments
+ - siphash: use one source of truth for siphash permutations
+ - random: use symbolic constants for crng_init states
+ - random: avoid initializing twice in credit race
+ - random: move initialization out of reseeding hot path
+ - random: remove ratelimiting for in-kernel unseeded randomness
+ - random: use proper jiffies comparison macro
+ - random: handle latent entropy and command line from random_init()
+ - random: credit architectural init the exact amount
+ - random: use static branch for crng_ready()
+ - random: remove extern from functions in header
+ - random: use proper return types on get_random_{int,long}_wait()
+ - random: make consistent use of buf and len
+ - random: move initialization functions out of hot pages
+ - random: move randomize_page() into mm where it belongs
+ - random: unify batched entropy implementations
+ - random: convert to using fops->read_iter()
+ - random: convert to using fops->write_iter()
+ - random: wire up fops->splice_{read,write}_iter()
+ - random: check for signals after page of pool writes
+ - ALSA: ctxfi: Add SB046x PCI ID
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.120
+ - percpu_ref_init(): clean ->percpu_count_ref on failure
+ - net: af_key: check encryption module availability consistency
+ - nfc: pn533: Fix buggy cleanup order
+ - [armhf] net: ftgmac100: Disable hardware checksum on AST2600
+ - [x86] i2c: ismt: Provide a DMA buffer for Interrupt Cause Logging
+ - [arm64] drivers: i2c: thunderx: Allow driver to work with ACPI defined
+ TWSI controllers
+ - netfilter: nf_tables: disallow non-stateful expression in sets earlier
+ (CVE-2022-1966)
+ - pipe: make poll_usage boolean and annotate its access
+ - pipe: Fix missing lock in pipe_resize_ring() (ZDI-CAN-17291)
+ - cfg80211: set custom regdomain after wiphy registration
+ - assoc_array: Fix BUG_ON during garbage collect
+ - io_uring: don't re-import iovecs from callbacks
+ - io_uring: fix using under-expanded iters
+ - xfs: detect overflows in bmbt records
+ - xfs: show the proper user quota options
+ - xfs: fix the forward progress assertion in xfs_iwalk_run_callbacks
+ - xfs: fix an ABBA deadlock in xfs_rename
+ - xfs: Fix CIL throttle hang when CIL space used going backwards
+ - exfat: check if cluster num is valid
+ - crypto: drbg - prepare for more fine-grained tracking of seeding state
+ - crypto: drbg - track whether DRBG was seeded with !rng_is_initialized()
+ - crypto: drbg - move dynamic ->reseed_threshold adjustments to
+ __drbg_seed()
+ - crypto: drbg - make reseeding from get_random_bytes() synchronous
+ - netfilter: nf_tables: sanitize nft_set_desc_concat_parse() (CVE-2022-1972)
+ - netfilter: conntrack: re-fetch conntrack after insertion
+ - [x86] kvm: Alloc dummy async #PF token outside of raw spinlock
+ - [x86] kvm: use correct GFP flags for preemption disabled
+ - [x86] KVM: x86: avoid calling x86 emulator without a decoded instruction
+ (CVE-2022-1852)
+ - [arm64] crypto: caam - fix i.MX6SX entropy delay value
+ - crypto: ecrdsa - Fix incorrect use of vli_cmp
+ - zsmalloc: fix races between asynchronous zspage free and page migration
+ - Bluetooth: hci_qca: Use del_timer_sync() before freeing
+ - dm integrity: fix error code in dm_integrity_ctr()
+ - dm crypt: make printing of the key constant-time
+ - dm stats: add cond_resched when looping over entries
+ - dm verity: set DM_TARGET_IMMUTABLE feature flag
+ - raid5: introduce MD_BROKEN
+ - HID: multitouch: Add support for Google Whiskers Touchpad
+ - HID: multitouch: add quirks to enable Lenovo X12 trackpoint
+ - tpm: Fix buffer access in tpm2_get_tpm_pt()
+ - docs: submitting-patches: Fix crossref to 'The canonical patch format'
+ - NFS: Memory allocation failures are not server fatal errors
+ - NFSD: Fix possible sleep during nfsd4_release_lockowner()
+ - bpf: Fix potential array overflow in bpf_trampoline_get_progs()
+ - bpf: Enlarge offset check value to INT_MAX in bpf_skb_{load,store}_bytes
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.10.115-rt67
+ * Bump ABI to 15
+ * [rt] Drop "random: Make it work on rt"
+
+ [ Mateusz Łukasik ]
+ * [armhf] drivers/thermal: Enable SUN8I_THERMAL as module (Closes: #1007799)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 09 Jun 2022 23:37:36 +0200
+
+linux (5.10.113-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.107
+ - Revert "xfrm: state and policy should fail if XFRMA_IF_ID 0"
+ (Closes: #1008299)
+ - xfrm: Check if_id in xfrm_migrate
+ - xfrm: Fix xfrm migrate issues when address family changes
+ - mac80211: refuse aggregations sessions before authorized
+ - [mips64el,mipsel] smp: fill in sibling and core maps earlier
+ - [x86] atm: firestream: check the return value of ioremap() in fs_init()
+ - iwlwifi: don't advertise TWT support
+ - drm/vrr: Set VRR capable prop only if it is attached to connector
+ - nl80211: Update bss channel on channel switch for P2P_CLIENT
+ - sfc: extend the locking on mcdi->seqno
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.108
+ - [arm64] crypto: qcom-rng - ensure buffer for generate is completely filled
+ - ocfs2: fix crash when initialize filecheck kobj fails
+ - mm: swap: get rid of livelock in swapin readahead
+ - efi: fix return value of __setup handlers
+ - vsock: each transport cycles only on its own sockets
+ - esp6: fix check on ipv6_skip_exthdr's return value
+ - net: phy: marvell: Fix invalid comparison in the resume and suspend
+ functions
+ - net/packet: fix slab-out-of-bounds access in packet_recvmsg()
+ - atm: eni: Add check for dma_map_single
+ - [x86] hv_netvsc: Add check for kvmalloc_array
+ - [armhf] drm/imx: parallel-display: Remove bus flags check in
+ imx_pd_bridge_atomic_check()
+ - [arm64,armhf] drm/panel: simple: Fix Innolux G070Y2-L01 BPP settings
+ - net: handle ARPHRD_PIMREG in dev_is_mac_header_xmit()
+ - [arm64,armhf] net: dsa: Add missing of_node_put() in dsa_port_parse_of
+ - net: phy: mscc: Add MODULE_FIRMWARE macros
+ - bnx2x: fix built-in kernel driver load failure
+ - [arm64] net: bcmgenet: skip invalid partial checksums
+ - [arm64] net: mscc: ocelot: fix backwards compatibility with single-chain
+ tc-flower offload
+ - usb: gadget: rndis: prevent integer overflow in rndis_set_response()
+ - usb: gadget: Fix use-after-free bug by not setting udc->dev.driver
+ - usb: usbtmc: Fix bug in pipe direction for control transfers
+ - scsi: mpt3sas: Page fault in reply q processing
+ - Input: aiptek - properly check endpoint type
+ - perf symbols: Fix symbol size calculation condition
+ - net: usb: Correct PHY handling of smsc95xx
+ - net: usb: Correct reset handling of smsc95xx
+ - smsc95xx: Ignore -ENODEV errors when device is unplugged
+ - esp: Fix possible buffer overflow in ESP transformation (CVE-2022-27666)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.109
+ - nfc: st21nfca: Fix potential buffer overflows in EVT_TRANSACTION
+ (CVE-2022-26490)
+ - net: ipv6: fix skb_over_panic in __ip6_append_data
+ - exfat: avoid incorrectly releasing for root inode
+ - cgroup: Allocate cgroup_file_ctx for kernfs_open_file->priv
+ (CVE-2021-4197)
+ - cgroup: Use open-time cgroup namespace for process migration perm checks
+ (CVE-2021-4197)
+ - cgroup-v1: Correct privileges check in release_agent writes
+ - tpm: Fix error handling in async work
+ - llc: fix netdevice reference leaks in llc_ui_bind() (CVE-2022-28356)
+ - ALSA: oss: Fix PCM OSS buffer allocation overflow
+ - ALSA: hda/realtek: Add quirk for Clevo NP70PNJ
+ - ALSA: hda/realtek: Add quirk for Clevo NP50PNJ
+ - ALSA: hda/realtek - Fix headset mic problem for a HP machine with alc671
+ - ALSA: hda/realtek: Add quirk for ASUS GA402
+ - ALSA: pcm: Fix races among concurrent hw_params and hw_free calls
+ (CVE-2022-1048)
+ - ALSA: pcm: Fix races among concurrent read/write and buffer changes
+ (CVE-2022-1048)
+ - ALSA: pcm: Fix races among concurrent prepare and hw_params/hw_free calls
+ (CVE-2022-1048)
+ - ALSA: pcm: Fix races among concurrent prealloc proc writes (CVE-2022-1048)
+ - ALSA: pcm: Add stream lock during PCM reset ioctl operations
+ - ALSA: usb-audio: Add mute TLV for playback volumes on RODE NT-USB
+ - ALSA: cmipci: Restore aux vol on suspend/resume
+ - ALSA: pci: fix reading of swapped values from pcmreg in AC97 codec
+ - [arm64] drivers: net: xgene: Fix regression in CRC stripping
+ - netfilter: nf_tables: initialize registers in nft_do_chain()
+ (CVE-2022-1016)
+ - [x86] ACPI / x86: Work around broken XSDT on Advantech DAC-BJ01 board
+ - ACPI: battery: Add device HID and quirk for Microsoft Surface Go 3
+ - [x86] ACPI: video: Force backlight native for Clevo NL5xRU and NL5xNU
+ - [x86] crypto: qat - disable registration of algorithms
+ - Revert "ath: add support for special 0x0 regulatory domain"
+ - rcu: Don't deboost before reporting expedited quiescent state
+ - mac80211: fix potential double free on mesh join
+ - tpm: use try_get_ops() in tpm-space.c
+ - [arm64] wcn36xx: Differentiate wcn3660 from wcn3620
+ - llc: only change llc->dev when bind() succeeds
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.110
+ - swiotlb: fix info leak with DMA_FROM_DEVICE (CVE-2022-0854)
+ - USB: serial: pl2303: add IBM device IDs
+ - USB: serial: simple: add Nokia phone driver
+ - netdevice: add the case if dev is NULL
+ - HID: logitech-dj: add new lightspeed receiver id
+ - xfrm: fix tunnel model fragmentation behavior
+ - virtio_console: break out of buf poll on remove
+ - ethernet: sun: Free the coherent when failing in probing
+ - gpio: Revert regression in sysfs-gpio (gpiolib.c)
+ - spi: Fix invalid sgs value
+ - Revert "gpio: Revert regression in sysfs-gpio (gpiolib.c)"
+ - spi: Fix erroneous sgs value with min_t()
+ - af_key: add __GFP_ZERO flag for compose_sadb_supported in function
+ pfkey_register (CVE-2022-1353)
+ - [arm*] iommu/iova: Improve 32-bit free space estimate
+ - tpm: fix reference counting for struct tpm_chip
+ - virtio-blk: Use blk_validate_block_size() to validate block size
+ - USB: usb-storage: Fix use of bitfields for hardware data in ene_ub6250.c
+ - xhci: fix garbage USBSTS being logged in some cases
+ - xhci: fix runtime PM imbalance in USB2 resume
+ - xhci: make xhci_handshake timeout for xhci_reset() adjustable
+ - xhci: fix uninitialized string returned by xhci_decode_ctrl_ctx()
+ - [x86] mei: me: add Alder Lake N device id.
+ - [x86] mei: avoid iterator usage outside of list_for_each_entry
+ - iio: inkern: apply consumer scale on IIO_VAL_INT cases
+ - iio: inkern: apply consumer scale when no channel scale is available
+ - iio: inkern: make a best effort on offset calculation
+ - ptrace: Check PTRACE_O_SUSPEND_SECCOMP permission on PTRACE_SEIZE
+ - KEYS: fix length validation in keyctl_pkey_params_get_2()
+ - Documentation: add link to stable release candidate tree
+ - Documentation: update stable tree link
+ - firmware: stratix10-svc: add missing callback parameter on RSU
+ - SUNRPC: avoid race between mod_timer() and del_timer_sync()
+ - NFSD: prevent underflow in nfssvc_decode_writeargs()
+ - NFSD: prevent integer overflow on 32 bit systems
+ - f2fs: fix to unlock page correctly in error path of is_alive()
+ - f2fs: quota: fix loop condition at f2fs_quota_sync()
+ - f2fs: fix to do sanity check on .cp_pack_total_block_count
+ - [armhf] remoteproc: Fix count check in rproc_coredump_write()
+ - [armhf] pinctrl: samsung: drop pin banks references on error paths
+ - mtd: rawnand: protect access to rawnand devices while in suspend
+ - can: ems_usb: ems_usb_start_xmit(): fix double dev_kfree_skb() in error
+ path (CVE-2022-28390)
+ - jffs2: fix use-after-free in jffs2_clear_xattr_subsystem
+ - jffs2: fix memory leak in jffs2_do_mount_fs
+ - jffs2: fix memory leak in jffs2_scan_medium
+ - mm/pages_alloc.c: don't create ZONE_MOVABLE beyond the end of a node
+ - mm: invalidate hwpoison page cache page in fault path
+ - mempolicy: mbind_range() set_policy() after vma_merge()
+ - scsi: libsas: Fix sas_ata_qc_issue() handling of NCQ NON DATA commands
+ - qed: display VF trust config
+ - qed: validate and restrict untrusted VFs vlan promisc mode
+ - Revert "Input: clear BTN_RIGHT/MIDDLE on buttonpads"
+ - cifs: prevent bad output lengths in smb2_ioctl_query_info()
+ - cifs: fix NULL ptr dereference in smb2_ioctl_query_info()
+ (CVE-2022-0168)
+ - [i386] ALSA: cs4236: fix an incorrect NULL check on list iterator
+ - ALSA: hda: Avoid unsol event during RPM suspending
+ - ALSA: pcm: Fix potential AB/BA lock with buffer_mutex and mmap_lock
+ - ALSA: hda/realtek: Fix audio regression on Mi Notebook Pro 2020
+ - mm: madvise: skip unmapped vma holes passed to process_madvise
+ - mm: madvise: return correct bytes advised with process_madvise
+ - Revert "mm: madvise: skip unmapped vma holes passed to process_madvise"
+ - mm,hwpoison: unmap poisoned page before invalidation
+ - dm integrity: set journal entry unused when shrinking device
+ - drbd: fix potential silent data corruption
+ - can: isotp: sanitize CAN ID checks in isotp_bind()
+ - [powerpc*] kvm: Fix kvm_use_magic_page
+ - udp: call udp_encap_enable for v6 sockets when enabling encap
+ - [arm64] signal: nofpsimd: Do not allocate fp/simd context when not
+ available
+ - ACPI: properties: Consistently return -ENOENT if there are no more
+ references
+ - coredump: Also dump first pages of non-executable ELF libraries
+ - ext4: fix ext4_fc_stats trace point
+ - ext4: fix fs corruption when tring to remove a non-empty directory with IO
+ error
+ - drivers: hamradio: 6pack: fix UAF bug caused by mod_timer()
+ (CVE-2022-1198)
+ - block: limit request dispatch loop duration
+ - block: don't merge across cgroup boundaries if blkcg is enabled
+ - drm/edid: check basic audio support on CEA extension block
+ - [armhf] dts: exynos: add missing HDMI supplies on SMDK5250
+ - [armhf] dts: exynos: add missing HDMI supplies on SMDK5420
+ - [x86] mgag200 fix memmapsl configuration in GCTL6 register
+ - carl9170: fix missing bit-wise or operator for tx_params
+ - pstore: Don't use semaphores in always-atomic-context code
+ - [x86] thermal: int340x: Increase bitmap size
+ - exec: Force single empty string when argv is empty
+ - crypto: rsa-pkcs1pad - only allow with rsa
+ - crypto: rsa-pkcs1pad - correctly get hash from source scatterlist
+ - crypto: rsa-pkcs1pad - restore signature length check
+ - crypto: rsa-pkcs1pad - fix buffer overread in pkcs1pad_verify_complete()
+ - bcache: fixup multiple threads crash
+ - DEC: Limit PMAX memory probing to R3k systems
+ - brcmfmac: firmware: Allocate space for default boardrev in nvram
+ - brcmfmac: pcie: Release firmwares in the brcmf_pcie_setup error path
+ - brcmfmac: pcie: Replace brcmf_pcie_copy_mem_todev with memcpy_toio
+ - brcmfmac: pcie: Fix crashes due to early IRQs
+ - [x86] drm/i915/opregion: check port number bounds for SWSCI display power
+ state
+ - [x86] drm/i915/gem: add missing boundary check in vm_access
+ - PCI: pciehp: Clear cmd_busy bit in polling mode
+ - [arm64] PCI: xgene: Revert "PCI: xgene: Fix IB window setup"
+ - [arm64] regulator: qcom_smd: fix for_each_child.cocci warnings
+ - selinux: check return value of sel_make_avc_files
+ - [arm64] hwrng: cavium - Check health status while reading random data
+ - [arm64] hwrng: cavium - HW_RANDOM_CAVIUM should depend on ARCH_THUNDER
+ - crypto: authenc - Fix sleep in atomic context in decrypt_tail
+ - [x86] thermal: int340x: Check for NULL after calling kmemdup()
+ - [arm64,armhf] spi: tegra114: Add missing IRQ check in tegra_spi_probe
+ - [arm64] mm: avoid fixmap race condition when create pud mapping
+ - audit: log AUDIT_TIME_* records only from rules
+ - spi: pxa2xx-pci: Balance reference count for PCI DMA device
+ - [armhf] hwmon: (pmbus) Add mutex to regulator ops
+ - hwmon: (sch56xx-common) Replace WDOG_ACTIVE with WDOG_HW_RUNNING
+ - nvme: cleanup __nvme_check_ids
+ - block: don't delete queue kobject before its children
+ - PM: hibernate: fix __setup handler error handling
+ - PM: suspend: fix return value of __setup handler
+ - [arm64] crypto: sun8i-ce - call finalize with bh disabled
+ - [arm64,armhf] crypto: amlogic - call finalize with bh disabled
+ - [armhf] clocksource/drivers/timer-ti-dm: Fix regression from errata i940
+ fix
+ - [armhf] clocksource/drivers/exynos_mct: Refactor resources allocation
+ - [armhf] clocksource/drivers/exynos_mct: Handle DTS with higher number of
+ interrupts
+ - clocksource/drivers/timer-of: Check return value of of_iomap in
+ timer_of_base_init()
+ - ACPI: APEI: fix return value of __setup handlers
+ - [x86] crypto: ccp - ccp_dmaengine_unregister release dma channels
+ - [arm*] amba: Make the remove callback return void
+ - [armhf] hwmon: (pmbus) Add Vin unit off handling
+ - [x86] clocksource: acpi_pm: fix return value of __setup handler
+ - io_uring: terminate manual loop iterator loop correctly for non-vecs
+ - watch_queue: Fix NULL dereference in error cleanup
+ - watch_queue: Actually free the watch
+ - f2fs: fix to enable ATGC correctly via gc_idle sysfs interface
+ - sched/debug: Remove mpol_get/put and task_lock/unlock from sched_show_numa
+ - sched/core: Export pelt_thermal_tp
+ - rseq: Optimise rseq_get_rseq_cs() and clear_rseq_cs()
+ - rseq: Remove broken uapi field layout on 32-bit little endian
+ - perf/core: Fix address filter parser for multiple filters
+ - [x86] perf/x86/intel/pt: Fix address filter config for 32-bit kernel
+ - f2fs: fix missing free nid in f2fs_handle_failed_inode
+ - nfsd: more robust allocation failure handling in nfsd_file_cache_init
+ - f2fs: fix to avoid potential deadlock
+ - btrfs: fix unexpected error path when reflinking an inline extent
+ - f2fs: compress: remove unneeded read when rewrite whole cluster
+ - f2fs: fix compressed file start atomic write may cause data corruption
+ - [arm64,armhf] media: v4l2-mem2mem: Apply DST_QUEUE_OFF_BASE on MMAP
+ buffers across ioctls
+ - media: bttv: fix WARNING regression on tunerless devices
+ - [arm*] ASoC: generic: simple-card-utils: remove useless assignment
+ - [armhf] media: coda: Fix missing put_device() call in coda_get_vdoa_data
+ - [armhf] media: aspeed: Correct value for h-total-pixels
+ - video: fbdev: matroxfb: set maxvram of vbG200eW to the same as vbG200 to
+ avoid black screen
+ - video: fbdev: smscufx: Fix null-ptr-deref in ufx_usb_probe()
+ - video: fbdev: fbcvt.c: fix printing in fb_cvt_print_name()
+ - [arm64] firmware: qcom: scm: Remove reassignment to desc following
+ initializer
+ - firmware: ti_sci: Fix compilation failure when CONFIG_TI_SCI_PROTOCOL is
+ not defined
+ - [armhf] dts: imx: Add missing LVDS decoder on M53Menlo
+ - media: em28xx: initialize refcount before kref_get
+ - media: usb: go7007: s2250-board: fix leak in probe()
+ - [arm64,armhf] media: cedrus: H265: Fix neighbour info buffer size
+ - [arm64,armhf] media: cedrus: h264: Fix neighbour info buffer size
+ - [x86] ASoC: rt5663: check the return value of devm_kzalloc() in
+ rt5663_parse_dp()
+ - printk: fix return value of printk.devkmsg __setup handler
+ - [x86] ASoC: soc-compress: prevent the potentially use of null pointer
+ - [armhf] memory: emif: Add check for setup_interrupts
+ - [armhf] memory: emif: check the pointer temp in get_device_details()
+ - ALSA: firewire-lib: fix uninitialized flag for AV/C deferred transaction
+ - [arm64] dts: rockchip: Fix SDIO regulator supply properties on
+ rk3399-firefly
+ - media: stk1160: If start stream fails, return buffers with
+ VB2_BUF_STATE_QUEUED
+ - media: saa7134: convert list_for_each to entry variant
+ - media: saa7134: fix incorrect use to determine if list is empty
+ - ivtv: fix incorrect device_caps for ivtvfb
+ - [arm64,armhf] ASoC: rockchip: i2s: Use
+ devm_platform_get_and_ioremap_resource()
+ - [arm64,armhf] ASoC: rockchip: i2s: Fix missing clk_disable_unprepare() in
+ rockchip_i2s_probe
+ - ASoC: dmaengine: do not use a NULL prepare_slave_config() callback
+ - [armhf] ASoC: fsl_spdif: Disable TX clock when stop
+ - [armhf] ASoC: imx-es8328: Fix error return code in imx_es8328_probe()
+ - [arm64] drm/meson: osd_afbcd: Add an exit callback to struct
+ meson_afbcd_ops
+ - [arm64,armhf] drm/bridge: Add missing pm_runtime_disable() in
+ __dw_mipi_dsi_probe
+ - [arm64] drm: bridge: adv7511: Fix ADV7535 HPD enablement
+ - ath10k: fix memory overwrite of the WoWLAN wakeup packet pattern
+ - [arm64,armhf] drm/panfrost: Check for error num after setting mask
+ - Bluetooth: hci_serdev: call init_rwsem() before p->open()
+ - [armhf] mtd: rawnand: gpmi: fix controller timings setting
+ - drm/edid: Don't clear formats if using deep color
+ - drm/nouveau/acr: Fix undefined behavior in nvkm_acr_hsfw_load_bl()
+ - drm/amd/display: Fix a NULL pointer dereference in
+ amdgpu_dm_connector_add_common_modes()
+ - drm/amd/pm: return -ENOTSUPP if there is no get_dpm_ultimate_freq function
+ - ath9k_htc: fix uninit value bugs
+ - RDMA/core: Set MR type in ib_reg_user_mr
+ - [powerpc*] KVM: PPC: Fix vmx/vsx mixup in mmio emulation
+ - i40e: don't reserve excessive XDP_PACKET_HEADROOM on XSK Rx to skb
+ - i40e: respect metadata on XSK Rx to skb
+ - [x86] ray_cs: Check ioremap return value
+ - [powerpc*] KVM: PPC: Book3S HV: Check return value of kvmppc_radix_init
+ - [powerpc*] perf: Don't use perf_hw_context for trace IMC PMU
+ - [arm64,armhf] net: dsa: mv88e6xxx: Enable port policy support on 6097
+ - [arm64] PCI: aardvark: Fix reading PCI_EXP_RTSTA_PME bit on emulated
+ bridge
+ - [arm64,armhf] drm/bridge: dw-hdmi: use safe format when first in bridge
+ chain
+ - HID: i2c-hid: fix GET/SET_REPORT for unnumbered reports
+ - drm/amd/pm: enable pm sysfs write for one VF mode
+ - drm/amd/display: Add affected crtcs to atomic state for dsc mst unplug
+ - IB/cma: Allow XRC INI QPs to set their local ACK timeout
+ - dax: make sure inodes are flushed before destroy cache
+ - iwlwifi: Fix -EIO error code that is never returned
+ - iwlwifi: mvm: Fix an error code in iwl_mvm_up()
+ - [arm64] drm/msm/dp: populate connector of struct dp_panel
+ - [arm64] drm/msm/dpu: add DSPP blocks teardown
+ - [arm64] drm/msm/dpu: fix dp audio condition
+ - scsi: pm8001: Fix command initialization in pm80XX_send_read_log()
+ - scsi: pm8001: Fix command initialization in pm8001_chip_ssp_tm_req()
+ - scsi: pm8001: Fix payload initialization in pm80xx_set_thermal_config()
+ - scsi: pm8001: Fix le32 values handling in
+ pm80xx_set_sas_protocol_timer_config()
+ - scsi: pm8001: Fix payload initialization in pm80xx_encrypt_update()
+ - scsi: pm8001: Fix le32 values handling in pm80xx_chip_ssp_io_req()
+ - scsi: pm8001: Fix le32 values handling in pm80xx_chip_sata_req()
+ - scsi: pm8001: Fix NCQ NON DATA command task initialization
+ - scsi: pm8001: Fix NCQ NON DATA command completion handling
+ - scsi: pm8001: Fix abort all task initialization
+ - RDMA/mlx5: Fix the flow of a miss in the allocation of a cache ODP MR
+ - drm/amd/display: Remove vupdate_int_entry definition
+ - TOMOYO: fix __setup handlers return values
+ - [arm64,armhf] drm/tegra: Fix reference leak in tegra_dsi_ganged_probe
+ - [x86] power: supply: bq24190_charger: Fix bq24190_vbus_is_enabled() wrong
+ false return
+ - [arm64] scsi: hisi_sas: Change permission of parameter prot_mask
+ - [arm64] bpf, arm64: Call build_prologue() first in first JIT pass
+ - [arm64] bpf, arm64: Feed byte-offset into bpf line info
+ - [arm64,armhf] gpu: host1x: Fix a memory leak in 'host1x_remove()'
+ - [powerpc*] mm/numa: skip NUMA_NO_NODE onlining in parse_numa_properties()
+ - [x86] KVM: x86: Fix emulation in writing cr8
+ - [x86] KVM: x86/emulator: Defer not-present segment check in
+ __load_segment_descriptor()
+ - [x86] hv_balloon: rate-limit "Unhandled message" warning
+ - [amd64] IB/hfi1: Allow larger MTU without AIP
+ - PCI: Reduce warnings on possible RW1C corruption
+ - [armhf] mfd: mc13xxx: Add check for mc13xxx_irq_request
+ - [x86] platform/x86: huawei-wmi: check the return value of
+ device_create_file()
+ - vxcan: enable local echo for sent CAN frames
+ - ath10k: Fix error handling in ath10k_setup_msa_resources
+ - [mips*] pgalloc: fix memory leak caused by pgd_free()
+ - RDMA/mlx5: Fix memory leak in error flow for subscribe event routine
+ - bpf, sockmap: Fix memleak in tcp_bpf_sendmsg while sk msg is full
+ - bpf, sockmap: Fix more uncharged while msg has more_data
+ - bpf, sockmap: Fix double uncharge the mem of sk_msg
+ - USB: storage: ums-realtek: fix error code in rts51x_read_mem()
+ - can: isotp: return -EADDRNOTAVAIL when reading from unbound socket
+ - can: isotp: support MSG_TRUNC flag when reading from socket
+ - Bluetooth: call hci_le_conn_failed with hdev lock in hci_le_conn_failed
+ - ipv4: Fix route lookups when handling ICMP redirects and PMTU updates
+ - af_netlink: Fix shift out of bounds in group mask calculation
+ - [arm64,armhf] i2c: meson: Fix wrong speed use from probe
+ - PCI: Avoid broken MSI on SB600 USB devices
+ - [arm64] net: bcmgenet: Use stronger register read/writes to assure
+ ordering
+ - tcp: ensure PMTU updates are processed during fastopen
+ - openvswitch: always update flow key after nat
+ - tipc: fix the timer expires after interval 100ms
+ - [x86] mxser: fix xmit_buf leak in activate when LSR == 0xff
+ - [armhf] fsi: aspeed: convert to devm_platform_ioremap_resource
+ - [armhf] fsi: Aspeed: Fix a potential double free
+ - soundwire: intel: fix wrong register name in intel_shim_wake
+ - iio: mma8452: Fix probe failing when an i2c_device_id is used
+ - [arm64,armhf] phy: dphy: Correct lpx parameter and its
+ derivatives(ta_{get,go,sure})
+ - [x86] serial: 8250_mid: Balance reference count for PCI DMA device
+ - [x86] serial: 8250_lpss: Balance reference count for PCI DMA device
+ - NFS: Use of mapping_set_error() results in spurious errors
+ - serial: 8250: Fix race condition in RTS-after-send handling
+ - NFS: Return valid errors from nfs2/3_decode_dirent()
+ - [arm64] clk: qcom: clk-rcg2: Update logic to calculate D value for RCG
+ - [arm64] clk: qcom: clk-rcg2: Update the frac table for pixel clock
+ - nvdimm/region: Fix default alignment for small regions
+ - [armhf] clk: tegra: tegra124-emc: Fix missing put_device() call in
+ emc_ensure_emc_driver
+ - NFS: remove unneeded check in decode_devicenotify_args()
+ - [arm64,armhf] pinctrl/rockchip: Add missing of_node_put() in
+ rockchip_pinctrl_probe
+ - [s390x] tty: hvc: fix return value of __setup handler
+ - serial: 8250: fix XOFF/XON sending when DMA is used
+ - driver core: dd: fix return value of __setup handler
+ - jfs: fix divide error in dbNextAG
+ - netfilter: nf_conntrack_tcp: preserve liberal flag in tcp options
+ - NFSv4.1: don't retry BIND_CONN_TO_SESSION on session error
+ - kdb: Fix the putarea helper function
+ - clk: Initialize orphan req_rate
+ - [amd64] xen: fix is_xen_pmu()
+ - [arm64] net: enetc: report software timestamping via SO_TIMESTAMPING
+ - [arm64] net: hns3: fix bug when PF set the duplicate MAC address for VFs
+ - net: phy: broadcom: Fix brcm_fet_config_init()
+ - NFSv4/pNFS: Fix another issue with a list iterator pointing to the head
+ - [armhf] net: dsa: bcm_sf2_cfp: fix an incorrect NULL check on list
+ iterator
+ - fs: fd tables have to be multiples of BITS_PER_LONG
+ - fs: fix fd table size alignment properly
+ - LSM: general protection fault in legacy_parse_param
+ - block, bfq: don't move oom_bfqq
+ - selinux: use correct type for context length
+ - selinux: allow FIOCLEX and FIONCLEX with policy capability
+ - loop: use sysfs_emit() in the sysfs xxx show()
+ - Fix incorrect type in assignment of ipv6 port for audit
+ - fs/binfmt_elf: Fix AT_PHDR for unusual ELF files
+ - bfq: fix use-after-free in bfq_dispatch_request
+ - ACPICA: Avoid walking the ACPI Namespace if it is not there
+ - Revert "Revert "block, bfq: honor already-setup queue merges""
+ - ACPI/APEI: Limit printable size of BERT table data
+ - PM: core: keep irq flags in device_pm_check_callbacks()
+ - nvme-tcp: lockdep: annotate in-kernel sockets
+ - [arm64] spi: tegra20: Use of_device_get_match_data()
+ - ext4: correct cluster len and clusters changed accounting in
+ ext4_mb_mark_bb
+ - ext4: fix ext4_mb_mark_bb() with flex_bg with fast_commit
+ - ext4: don't BUG if someone dirty pages without asking ext4 first
+ - f2fs: fix to do sanity check on curseg->alloc_type
+ - NFSD: Fix nfsd_breaker_owns_lease() return values
+ - f2fs: compress: fix to print raw data size in error path of lz4
+ decompression
+ - video: fbdev: cirrusfb: check pixclock to avoid divide by zero
+ - [armel,armhf] ftrace: avoid redundant loads or clobbering IP
+ - video: fbdev: udlfb: replace snprintf in show functions with sysfs_emit
+ - ASoC: soc-core: skip zero num_dai component in searching dai name
+ - media: cx88-mpeg: clear interrupt status register before streaming video
+ - uaccess: fix type mismatch warnings from access_ok()
+ - media: Revert "media: em28xx: add missing em28xx_close_extension"
+ - media: hdpvr: initialize dev->worker at hdpvr_register_videodev
+ - mmc: host: Return an error when ->enable_sdio_irq() ops is missing
+ - ALSA: hda/realtek: Add alc256-samsung-headphone fixup
+ - [x86] KVM: x86/mmu: Check for present SPTE when clearing dirty bit in TDP
+ MMU
+ - [powerpc*] lib/sstep: Fix 'sthcx' instruction
+ - [powerpc*] lib/sstep: Fix build errors with newer binutils
+ - scsi: qla2xxx: Fix stuck session in gpdb
+ - scsi: qla2xxx: Fix scheduling while atomic
+ - scsi: qla2xxx: Fix wrong FDMI data for 64G adapter
+ - scsi: qla2xxx: Fix warning for missing error code
+ - scsi: qla2xxx: Fix device reconnect in loop topology
+ - scsi: qla2xxx: Add devids and conditionals for 28xx
+ - scsi: qla2xxx: Check for firmware dump already collected
+ - scsi: qla2xxx: Suppress a kernel complaint in qla_create_qpair()
+ - scsi: qla2xxx: Fix disk failure to rediscover
+ - scsi: qla2xxx: Fix incorrect reporting of task management failure
+ - scsi: qla2xxx: Fix hang due to session stuck
+ - scsi: qla2xxx: Fix missed DMA unmap for NVMe ls requests
+ - scsi: qla2xxx: Fix N2N inconsistent PLOGI
+ - scsi: qla2xxx: Reduce false trigger to login
+ - scsi: qla2xxx: Use correct feature type field during RFF_ID processing
+ - [arm64] platform: chrome: Split trace include file
+ - [x86] KVM: x86: Forbid VMM to set SYNIC/STIMER MSRs when SynIC wasn't
+ activated
+ - KVM: Prevent module exit until all VMs are freed
+ - [x86] KVM: x86: fix sending PV IPI
+ - [x86] KVM: SVM: fix panic on out-of-bounds guest IRQ
+ - [x86] ASoC: SOF: Intel: Fix NULL ptr dereference when ENOMEM
+ - ubifs: rename_whiteout: Fix double free for whiteout_ui->data
+ - ubifs: Fix deadlock in concurrent rename whiteout and inode writeback
+ - ubifs: Add missing iput if do_tmpfile() failed in rename whiteout
+ - ubifs: setflags: Make dirtied_ino_d 8 bytes aligned
+ - ubifs: Fix read out-of-bounds in ubifs_wbuf_write_nolock()
+ - ubifs: Fix to add refcount once page is set private
+ - ubifs: rename_whiteout: correct old_dir size computing
+ - wireguard: queueing: use CFI-safe ptr_ring cleanup function
+ - wireguard: socket: free skb in send6 when ipv6 is disabled
+ - wireguard: socket: ignore v6 endpoints when ipv6 is disabled
+ - XArray: Fix xas_create_range() when multi-order entry present
+ - can: mcba_usb: mcba_usb_start_xmit(): fix double dev_kfree_skb in error
+ path (CVE-2022-28389)
+ - can: mcba_usb: properly check endpoint type
+ - XArray: Update the LRU list in xas_split()
+ - rtc: check if __rtc_read_time was successful
+ - gfs2: Make sure FITRIM minlen is rounded up to fs block size
+ - [arm64] net: hns3: fix software vlan talbe of vlan 0 inconsistent with
+ hardware
+ - rxrpc: Fix call timer start racing with call destruction
+ - [arm64] mailbox: imx: fix wakeup failure from freeze mode
+ - watch_queue: Free the page array when watch_queue is dismantled
+ - pinctrl: pinconf-generic: Print arguments for bias-pull-*
+ - ubi: Fix race condition between ctrl_cdev_ioctl and ubi_cdev_ioctl
+ - [arm*] iop32x: offset IRQ numbers by 1
+ - io_uring: fix memory leak of uid in files registration
+ - [amd64,arm64] ACPI: CPPC: Avoid out of bounds access when parsing _CPC
+ data
+ - [arm64] platform/chrome: cros_ec_typec: Check for EC device
+ - can: isotp: restore accidentally removed MSG_PEEK feature
+ - proc: bootconfig: Add null pointer check
+ - [x86] ASoC: soc-compress: Change the check for codec_dai
+ - batman-adv: Check ptr for NULL before reducing its refcnt
+ - mm/mmap: return 1 from stack_guard_gap __setup() handler
+ - mm/memcontrol: return 1 from cgroup.memory __setup() handler
+ - mm/usercopy: return 1 from hardened_usercopy __setup() handler
+ - bpf: Adjust BPF stack helper functions to accommodate skip > 0
+ - bpf: Fix comment for helper bpf_current_task_under_cgroup()
+ - dt-bindings: mtd: nand-controller: Fix the reg property description
+ - dt-bindings: mtd: nand-controller: Fix a comment in the examples
+ - dt-bindings: spi: mxic: The interrupt property is not mandatory
+ - [x86] ASoC: topology: Allow TLV control to be either read or write
+ - docs: sysctl/kernel: add missing bit to panic_print
+ - openvswitch: Fixed nd target mask field in the flow dump.
+ - [x86] KVM: x86/mmu: do compare-and-exchange of gPTE via the user address
+ (CVE-2022-1158)
+ - can: usb_8dev: usb_8dev_start_xmit(): fix double dev_kfree_skb() in error
+ path (CVE-2022-28388)
+ - coredump: Snapshot the vmas in do_coredump
+ - coredump: Remove the WARN_ON in dump_vma_snapshot
+ - coredump/elf: Pass coredump_params into fill_note_info
+ - coredump: Use the vma snapshot in fill_files_note
+ - [arm64] Do not defer reserve_crashkernel() for platforms with no DMA
+ memory zones
+ - [arm64] PCI: xgene: Revert "PCI: xgene: Use inbound resources for setup"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.111
+ - ubifs: Rectify space amount budget for mkdir/tmpfile operations
+ - gfs2: Check for active reservation in gfs2_release
+ - gfs2: Fix gfs2_release for non-writers regression
+ - gfs2: gfs2_setattr_size error path fix
+ - [x86] KVM: x86/svm: Clear reserved bits written to PerfEvtSeln MSRs
+ - [x86] KVM: x86/emulator: Emulate RDPID only if it is enabled in guest
+ - drm: Add orientation quirk for GPD Win Max
+ - ath5k: fix OOB in ath5k_eeprom_read_pcal_info_5111
+ - drm/amd/display: Add signal type check when verify stream backends same
+ - drm/amd/amdgpu/amdgpu_cs: fix refcount leak of a dma_fence obj
+ - ptp: replace snprintf with sysfs_emit
+ - [armhf] ath11k: fix kernel panic during unload/load ath11k modules
+ - ath11k: mhi: use mhi_sync_power_up()
+ - bpf: Make dst_port field in struct bpf_sock 16-bit wide
+ - scsi: mvsas: Replace snprintf() with sysfs_emit()
+ - scsi: bfa: Replace snprintf() with sysfs_emit()
+ - [arm64,armhf] power: supply: axp20x_battery: properly report current when
+ discharging
+ - mt76: dma: initialize skip_unmap in mt76_dma_rx_fill
+ - cfg80211: don't add non transmitted BSS to 6GHz scanned channels
+ - ipv6: make mc_forwarding atomic
+ - [powerpc*] Set crashkernel offset to mid of RMA region
+ - drm/amdgpu: Fix recursive locking warning
+ - [arm64] PCI: aardvark: Fix support for MSI interrupts
+ - [arm64] iommu/arm-smmu-v3: fix event handling soft lockup
+ - usb: ehci: add pci device support for Aspeed platforms
+ - tcp: Don't acquire inet_listen_hashbucket::lock with disabled BH.
+ - PCI: pciehp: Add Qualcomm quirk for Command Completed erratum
+ - iwlwifi: mvm: Correctly set fragmented EBS
+ - ipv4: Invalidate neighbour for broadcast address upon address addition
+ - dm ioctl: prevent potential spectre v1 gadget
+ - dm: requeue IO if mapping table not yet available
+ - scsi: pm8001: Fix pm80xx_pci_mem_copy() interface
+ - scsi: pm8001: Fix pm8001_mpi_task_abort_resp()
+ - scsi: pm8001: Fix task leak in pm8001_send_abort_all()
+ - scsi: pm8001: Fix tag leaks on error
+ - scsi: pm8001: Fix memory leak in pm8001_chip_fw_flash_update_req()
+ - scsi: aha152x: Fix aha152x_setup() __setup handler return value
+ - [arm64] scsi: hisi_sas: Free irq vectors in order for v3 HW
+ - net/smc: correct settings of RMB window update limit
+ - macvtap: advertise link netns via netlink
+ - tuntap: add sanity checks about msg_controllen in sendmsg
+ - Bluetooth: Fix not checking for valid hdev on bt_dev_{info,warn,err,dbg}
+ - Bluetooth: use memset avoid memory leaks
+ - bnxt_en: Eliminate unintended link toggle during FW reset
+ - [mps64el,mipsel] fix fortify panic when copying asm exception handlers
+ - scsi: libfc: Fix use after free in fc_exch_abts_resp()
+ - can: isotp: set default value for N_As to 50 micro seconds
+ - net: account alternate interface name memory
+ - net: limit altnames to 64k total
+ - net: sfp: add 2500base-X quirk for Lantech SFP module
+ - [armhf] usb: dwc3: omap: fix "unbalanced disables for smps10_out1" on
+ omap5evm
+ - Bluetooth: Fix use after free in hci_send_acl
+ - netlabel: fix out-of-bounds memory accesses
+ - ceph: fix memory leak in ceph_readdir when note_last_dentry returns error
+ - init/main.c: return 1 from handled __setup() functions
+ - minix: fix bug when opening a file with O_DIRECT
+ - [arm*] staging: vchiq_core: handle NULL result of find_service_by_handle
+ - [arm64,armhf] phy: amlogic: meson8b-usb2: Use dev_err_probe()
+ - w1: w1_therm: fixes w1_seq for ds28ea00 sensors
+ - NFSv4.2: fix reference count leaks in _nfs42_proc_copy_notify()
+ - NFSv4: Protect the state recovery thread against direct reclaim
+ - xen: delay xen_hvm_init_time_ops() if kdump is boot on vcpu>=32
+ - [armhf] clk: ti: Preserve node in ti_dt_clocks_register()
+ - clk: Enforce that disjoints limits are invalid
+ - SUNRPC/call_alloc: async tasks mustn't block waiting for memory
+ - SUNRPC/xprt: async tasks mustn't block waiting for memory
+ - SUNRPC: remove scheduling boost for "SWAPPER" tasks.
+ - NFS: swap IO handling is slightly different for O_DIRECT IO
+ - NFS: swap-out must always use STABLE writes.
+ - [armhf] serial: samsung_tty: do not unlock port->lock for
+ uart_write_wakeup()
+ - virtio_console: eliminate anonymous module_init & module_exit
+ - jfs: prevent NULL deref in diFree
+ - SUNRPC: Fix socket waits for write buffer space
+ - NFS: nfsiod should not block forever in mempool_alloc()
+ - NFS: Avoid writeback threads getting stuck in mempool_alloc()
+ - mm: fix race between MADV_FREE reclaim and blkdev direct IO read
+ - drm/amdgpu: fix off by one in amdgpu_gfx_kiq_acquire()
+ - [x86] Drivers: hv: vmbus: Fix potential crash on module unload
+ - Revert "NFSv4: Handle the special Linux file open access mode"
+ - NFSv4: fix open failure with O_ACCMODE flag
+ - ice: Clear default forwarding VSI during VSI release
+ - net: ipv4: fix route with nexthop object delete warning
+ - net: stmmac: Fix unset max_speed difference between DT and non-DT
+ platforms
+ - [armhf] drm/imx: imx-ldb: Check for null pointer after calling kmemdup
+ - [armhf] drm/imx: Fix memory leak in imx_pd_connector_get_modes
+ - sfc: Do not free an empty page_ring
+ - RDMA/mlx5: Don't remove cache MRs when a delay is needed
+ - [amd64] IB/rdmavt: add lock to call to rvt_error_qp to prevent a race
+ condition
+ - [arm64] dpaa2-ptp: Fix refcount leak in dpaa2_ptp_probe
+ - ice: Set txq_teid to ICE_INVAL_TEID on ring creation
+ - ice: Do not skip not enabled queues in ice_vc_dis_qs_msg
+ - ipv6: Fix stats accounting in ip6_pkt_drop
+ - ice: synchronize_rcu() when terminating rings
+ - net: openvswitch: don't send internal clone attribute to the userspace.
+ - net: openvswitch: fix leak of nested actions
+ - rxrpc: fix a race in rxrpc_exit_net()
+ - qede: confirm skb is allocated before using
+ - bpf: Support dual-stack sockets in bpf_tcp_check_syncookie
+ - drbd: Fix five use after free bugs in get_initial_state
+ - io_uring: don't touch scm_fp_list after queueing skb
+ - SUNRPC: Handle ENOMEM in call_transmit_status()
+ - SUNRPC: Handle low memory situations in call_status()
+ - SUNRPC: svc_tcp_sendmsg() should handle errors from xdr_alloc_bvec()
+ - [armhf] iommu/omap: Fix regression in probe for NULL pointer dereference
+ - [arm64] Add part number for Arm Cortex-A78AE
+ - [arm64] Revert "mmc: sdhci-xenon: fix annoying 1.8V regulator warning"
+ - [arm64,armhf] mmc: mmci: stm32: correctly check all elements of sg list
+ - lz4: fix LZ4_decompress_safe_partial read out of bound
+ - mmmremap.c: avoid pointless invalidate_range_start/end on
+ mremap(old_size=0)
+ - mm/mempolicy: fix mpol_new leak in shared_policy_replace
+ - io_uring: fix race between timeout flush and removal (CVE-2022-29582)
+ - [x86] pm: Save the MSR validity status at context setup
+ - [x86] speculation: Restore speculation related MSRs during S3 resume
+ - btrfs: fix qgroup reserve overflow the qgroup limit
+ - btrfs: prevent subvol with swapfile from being deleted
+ - [arm64] patch_text: Fixup last cpu should be master
+ - [amd64] RDMA/hfi1: Fix use-after-free bug for mm struct
+ - gpio: Restrict usage of GPIO chip irq members before initialization
+ - [arm64] perf: qcom_l2_pmu: fix an incorrect NULL check on list iterator
+ - [arm64,armhf] irqchip/gic-v3: Fix GICR_CTLR.RWP polling
+ - drm/nouveau/pmu: Add missing callbacks for Tegra devices
+ - mm: don't skip swap entry even if zap_details specified
+ - cgroup: Use open-time credentials for process migraton perm checks
+ (CVE-2021-4197)
+ - [x86] Drivers: hv: vmbus: Replace smp_store_mb() with virt_store_mb()
+ - [arm64,armhf] irqchip/gic, gic-v3: Prevent GSI to SGI translations
+ - [powerpc*] Fix virt_addr_valid() for 64-bit Book3E & 32-bit
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.112
+ - [amd64] drm/amdkfd: Use drm_priv to pass VM from KFD to amdgpu
+ - hamradio: defer 6pack kfree after unregister_netdev (CVE-2022-1195)
+ - hamradio: remove needs_free_netdev to avoid UAF (CVE-2022-1195)
+ - [arm64] cpuidle: PSCI: Move the `has_lpi` check to the beginning of the
+ function
+ - ACPI: processor idle: Check for architectural support for LPI
+ - btrfs: remove unused variable in btrfs_{start,write}_dirty_block_groups()
+ - [arm64] drm/msm: Add missing put_task_struct() in debugfs path
+ - SUNRPC: Fix the svc_deferred_event trace class
+ - net/sched: flower: fix parsing of ethertype following VLAN header
+ - veth: Ensure eth header is in skb's linear part
+ - gpiolib: acpi: use correct format characters
+ - net: mdio: Alphabetically sort header inclusion
+ - net/sched: fix initialization order when updating chain 0 head
+ - [arm64] net: dsa: felix: suppress -EPROBE_DEFER errors
+ - [armhf] net: ethernet: stmmac: fix altr_tse_pcs function when using a
+ fixed-link
+ - net/sched: taprio: Check if socket flags are valid
+ - cfg80211: hold bss_lock while updating nontrans_list
+ - [arm64] drm/msm: Fix range size vs end confusion
+ - [arm64] drm/msm/dsi: Use connector directly in
+ msm_dsi_manager_connector_init()
+ - net/smc: Fix NULL pointer dereference in smc_pnet_find_ib()
+ - scsi: pm80xx: Mask and unmask upper interrupt vectors 32-63
+ - scsi: pm80xx: Enable upper inbound, outbound queues
+ - scsi: iscsi: Stop queueing during ep_disconnect
+ - scsi: iscsi: Force immediate failure during shutdown
+ - scsi: iscsi: Use system_unbound_wq for destroy_work
+ - scsi: iscsi: Rel ref after iscsi_lookup_endpoint()
+ - scsi: iscsi: Fix in-kernel conn failure handling
+ - scsi: iscsi: Move iscsi_ep_disconnect()
+ - scsi: iscsi: Fix offload conn cleanup when iscsid restarts
+ - scsi: iscsi: Fix conn cleanup and stop race during iscsid restart
+ - sctp: Initialize daddr on peeled off socket
+ - cifs: potential buffer overflow in handling symlinks
+ - [arm64] net: bcmgenet: Revert "Use stronger register read/writes to assure
+ ordering"
+ - drm/amd: Add USBC connector ID
+ - btrfs: fix fallocate to use file_modified to update permissions
+ consistently
+ - btrfs: do not warn for free space inode in cow_file_range
+ - drm/amd/display: fix audio format not updated after edid updated
+ - drm/amd/display: FEC check in timing validation
+ - drm/amd/display: Update VTEM Infopacket definition
+ - drm/amdkfd: Fix Incorrect VMIDs passed to HWS
+ - drm/amdgpu/vcn: improve vcn dpg stop procedure
+ - [x86] Drivers: hv: vmbus: Prevent load re-ordering when reading ring
+ buffer
+ - scsi: target: tcmu: Fix possible page UAF
+ - scsi: lpfc: Fix queue failures when recovering from PCI parity error
+ - [powerpc*] scsi: ibmvscsis: Increase INITIAL_SRP_LIMIT to 1024
+ - ata: libata-core: Disable READ LOG DMA EXT for Samsung 840 EVOs
+ - [armhf] gpu: ipu-v3: Fix dev_dbg frequency output
+ - [arm64] alternatives: mark patch_alternative() as `noinstr`
+ - tlb: hugetlb: Add more sizes to tlb_remove_huge_tlb_entry
+ - net: usb: aqc111: Fix out-of-bounds accesses in RX fixup
+ - myri10ge: fix an incorrect free for skb in myri10ge_sw_tso
+ - drm/amd/display: Revert FEC check in validation
+ - drm/amd/display: Fix allocate_mst_payload assert on resume
+ - scsi: mvsas: Add PCI ID of RocketRaid 2640
+ - scsi: megaraid_sas: Target with invalid LUN ID is deleted during scan
+ - drivers: net: slip: fix NPD bug in sl_tx_timeout()
+ - mm, page_alloc: fix build_zonerefs_node()
+ - mm: fix unexpected zeroed page mapping with zram swap
+ - [x86] KVM: x86/mmu: Resolve nx_huge_pages when kvm.ko is loaded
+ - ath9k: Properly clear TX status area before reporting to mac80211
+ - ath9k: Fix usage of driver-private space in tx_info
+ - btrfs: fix root ref counts in error handling in btrfs_get_root_ref
+ - btrfs: mark resumed async balance as writing
+ - ALSA: hda/realtek: Add quirk for Clevo PD50PNT
+ - ALSA: hda/realtek: add quirk for Lenovo Thinkpad X12 speakers
+ - ALSA: pcm: Test for "silence" field in struct "pcm_format_data"
+ - nl80211: correctly check NL80211_ATTR_REG_ALPHA2 size
+ - ipv6: fix panic when forwarding a pkt with no in6 dev
+ - drm/amd/display: don't ignore alpha property on pre-multiplied mode
+ - drm/amdgpu: Enable gfxoff quirk on MacBook Pro
+ - genirq/affinity: Consider that CPUs on nodes can be unbalanced
+ - tick/nohz: Use WARN_ON_ONCE() to prevent console saturation
+ - dm integrity: fix memory corruption when tag_size is less than digest size
+ - smp: Fix offline cpu check in flush_smp_call_function_queue()
+ - timers: Fix warning condition in __run_timers()
+ - dma-direct: avoid redundant memory sync for swiotlb
+ - scsi: iscsi: Fix endpoint reuse regression
+ - scsi: iscsi: Fix unbound endpoint error handling
+ - ax25: add refcount in ax25_dev to avoid UAF bugs (CVE-2022-1204)
+ - ax25: fix reference count leaks of ax25_dev (CVE-2022-1204)
+ - ax25: fix UAF bugs of net_device caused by rebinding operation
+ (CVE-2022-1204)
+ - ax25: Fix refcount leaks caused by ax25_cb_del() (CVE-2022-1204)
+ - ax25: fix UAF bug in ax25_send_control()
+ - ax25: fix NPD bug in ax25_disconnect (CVE-2022-1199)
+ - ax25: Fix NULL pointer dereferences in ax25 timers (CVE-2022-1205)
+ - ax25: Fix UAF bugs in ax25 timers (CVE-2022-1205)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.113
+ - tracing: Dump stacktrace trigger to the corresponding instance
+ - gfs2: assign rgrp glock before compute_bitstructs
+ - net/sched: cls_u32: fix netns refcount changes in u32_change()
+ - ALSA: usb-audio: Clear MIDI port active flag after draining
+ - ALSA: hda/realtek: Add quirk for Clevo NP70PNP
+ - dm: fix mempool NULL pointer race when completing IO
+ - [armhf] dmaengine: imx-sdma: Fix error checking in sdma_event_remap
+ - esp: limit skb_page_frag_refill use to a single page
+ - igc: Fix infinite loop in release_swfw_sync
+ - igc: Fix BUG: scheduling while atomic
+ - rxrpc: Restore removed timer deletion
+ - net/smc: Fix sock leak when release after smc_shutdown()
+ - net/packet: fix packet_sock xmit return value checking
+ - ip6_gre: Avoid updating tunnel->tun_hlen in __gre6_xmit()
+ - ip6_gre: Fix skb_under_panic in __gre6_xmit()
+ - net/sched: cls_u32: fix possible leak in u32_init_knode()
+ - l3mdev: l3mdev_master_upper_ifindex_by_index_rcu should be using
+ netdev_master_upper_dev_get_rcu
+ - ipv6: make ip6_rt_gc_expire an atomic_t
+ - netlink: reset network and mac headers in netlink_dump()
+ - net: stmmac: Use readl_poll_timeout_atomic() in atomic state
+ - [arm64] mm: Remove [PUD|PMD]_TABLE_BIT from [pud|pmd]_bad()
+ - [arm64] mm: fix p?d_leaf()
+ - [x86] platform/x86: samsung-laptop: Fix an unsigned comparison which can
+ never be negative
+ - ALSA: usb-audio: Fix undefined behavior due to shift overflowing the
+ constant
+ - vxlan: fix error return code in vxlan_fdb_append
+ - cifs: Check the IOCB_DIRECT flag, not O_DIRECT
+ - [amd64,arm64] net: atlantic: Avoid out-of-bounds indexing
+ - mt76: Fix undefined behavior due to shift overflowing the constant
+ - brcmfmac: sdio: Fix undefined behavior due to shift overflowing the
+ constant
+ - [arm64] drm/msm/mdp5: check the return of kzalloc()
+ - [arm64] net: macb: Restart tx only if queue pointer is lagging
+ - scsi: qedi: Fix failed disconnect handling
+ - stat: fix inconsistency between struct stat and struct compat_stat
+ - nvme: add a quirk to disable namespace identifiers
+ - nvme-pci: disable namespace identifiers for Qemu controllers
+ - mm, hugetlb: allow for "high" userspace addresses
+ - oom_kill.c: futex: delay the OOM reaper to allow time for proper futex
+ cleanup
+ - mm/mmu_notifier.c: fix race in mmu_interval_notifier_remove()
+ - ata: pata_marvell: Check the 'bmdma_addr' beforing reading
+ - [amd64,arm64] net: atlantic: invert deep par in pm functions, preventing
+ null derefs
+ - openvswitch: fix OOB access in reserve_sfa_size()
+ - gpio: Request interrupts after IRQ is initialized
+ - ASoC: soc-dapm: fix two incorrect uses of list iterator
+ - e1000e: Fix possible overflow in LTR decoding
+ - [arm*] arm_pmu: Validate single/group leader events
+ - sched/pelt: Fix attach_entity_load_avg() corner case
+ - [arm64,armhf] drm/panel/raspberrypi-touchscreen: Avoid NULL deref if not
+ initialised
+ - [arm64,armhf] drm/panel/raspberrypi-touchscreen: Initialise the bridge in
+ prepare
+ - [powerpc*] KVM: PPC: Fix TCE handling for VFIO
+ - [arm*] drm/vc4: Use pm_runtime_resume_and_get to fix pm_runtime_get_sync()
+ usage
+ - [powerpc*] perf: Fix power9 event alternatives
+ - ext4: fix fallocate to use file_modified to update permissions
+ consistently
+ - ext4: fix symlink file size not match to file content
+ - ext4: fix use-after-free in ext4_search_dir
+ - ext4: limit length to bitmap_maxbytes - blocksize in punch_hole
+ - ext4, doc: fix incorrect h_reserved size
+ - ext4: fix overhead calculation to account for the reserved gdt blocks
+ - ext4: force overhead calculation if the s_overhead_cluster makes no sense
+ - can: isotp: stop timeout monitoring when no first frame was sent
+ - jbd2: fix a potential race while discarding reserved buffers after an
+ abort
+ - block/compat_ioctl: fix range check in BLKGETSIZE
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 14
+ * [rt] Drop "tcp: Remove superfluous BH-disable around"
+ * [rt] Update "tracing: Merge irqflags + preempt counter." for upstream
+ changes in 5.10.113
+ * [x86] pci/xen: Disable PCI/MSI[-X] masking for XEN_HVM guests
+ (Closes: #1006346)
+ * floppy: disable FDRAWCMD by default
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 29 Apr 2022 11:36:50 +0200
+
+linux (5.10.106-1) bullseye; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.104
+ - mac80211_hwsim: report NOACK frames in tx_status
+ - mac80211_hwsim: initialize ieee80211_tx_info at hw_scan_work
+ - [arm*] i2c: bcm2835: Avoid clock stretching timeouts
+ - ASoC: rt5682: do not block workqueue if card is unbound
+ - regulator: core: fix false positive in regulator_late_cleanup()
+ - Input: clear BTN_RIGHT/MIDDLE on buttonpads
+ - [arm64] KVM: arm64: vgic: Read HW interrupt pending state from the HW
+ - tipc: fix a bit overflow in tipc_crypto_key_rcv()
+ - cifs: fix double free race when mount fails in cifs_get_root()
+ - net: usb: cdc_mbim: avoid altsetting toggling for Telit FN990
+ - usb: gadget: don't release an existing dev->buf (CVE-2022-24958)
+ - usb: gadget: clear related members when goto fail (CVE-2022-24958)
+ - exfat: reuse exfat_inode_info variable instead of calling EXFAT_I()
+ - exfat: fix i_blocks for files truncated over 4 GiB
+ - tracing: Add test for user space strings when filtering on string pointers
+ - [armhf] serial: stm32: prevent TDR register overwrite when sending x_char
+ - ata: pata_hpt37x: fix PCI clock detection
+ - drm/amdgpu: check vm ready by amdgpu_vm->evicting flag
+ - tracing: Add ustring operation to filtering string pointers
+ - [x86] ALSA: intel_hdmi: Fix reference to PCM buffer address
+ - ASoC: ops: Shift tested values in snd_soc_put_volsw() by +min
+ - [amd64] iommu/amd: Recover from event log overflow
+ - [x86] drm/i915: s/JSP2/ICP2/ PCH
+ - xen/netfront: destroy queues before real_num_tx_queues is zeroed
+ - mm: Consider __GFP_NOWARN flag for oversized kvmalloc() calls
+ - xfrm: fix MTU regression
+ - netfilter: fix use-after-free in __nf_register_net_hook()
+ - bpf, sockmap: Do not ignore orig_len parameter
+ - xfrm: fix the if_id check in changelink
+ - xfrm: enforce validity of offload input flags
+ - e1000e: Correct NVM checksum verification flow
+ - net: fix up skbs delta_truesize in UDP GRO frag_list
+ - netfilter: nf_queue: don't assume sk is full socket
+ - netfilter: nf_queue: fix possible use-after-free
+ - netfilter: nf_queue: handle socket prefetch
+ - batman-adv: Request iflink once in batadv-on-batadv check
+ - batman-adv: Request iflink once in batadv_get_real_netdevice
+ - batman-adv: Don't expect inter-netns unique iflink indices
+ - net: ipv6: ensure we call ipv6_mc_down() at most once
+ - net: dcb: flush lingering app table entries for unregistered devices
+ - net/smc: fix connection leak
+ - net/smc: fix unexpected SMC_CLC_DECL_ERR_REGRMB error generated by client
+ - net/smc: fix unexpected SMC_CLC_DECL_ERR_REGRMB error cause by server
+ - rcu/nocb: Fix missed nocb_timer requeue
+ - ice: Fix race conditions between virtchnl handling and VF ndo ops
+ - ice: fix concurrent reset and removal of VFs
+ - sched/topology: Make sched_init_numa() use a set for the deduplicating
+ sort
+ - sched/topology: Fix sched_domain_topology_level alloc in sched_init_numa()
+ - mac80211: fix forwarded mesh frames AC & queue selection
+ - net: stmmac: fix return value of __setup handler
+ - mac80211: treat some SAE auth steps as final
+ - iavf: Fix missing check for running netdev
+ - net: arcnet: com20020: Fix null-ptr-deref in com20020pci_probe()
+ - ixgbe: xsk: change !netif_carrier_ok() handling in ixgbe_xmit_zc()
+ - efivars: Respect "block" flag in efivar_entry_set_safe()
+ - can: gs_usb: change active_channels's type from atomic_t to u8
+ - igc: igc_read_phy_reg_gpy: drop premature return
+ - [armel,armhf] 9182/1: mmu: fix returns from early_param() and __setup()
+ functions
+ - [arm64,armhf] pinctrl: sunxi: Use unique lockdep classes for IRQs
+ - igc: igc_write_phy_reg_gpy: drop premature return
+ - memfd: fix F_SEAL_WRITE after shmem huge page allocated
+ - [armhf] dts: switch timer config to common devkit8000 devicetree
+ - [armhf] dts: Use 32KiHz oscillator on devkit8000
+ - [arm64] soc: fsl: guts: Revert commit 3c0d64e867ed
+ - [arm64] soc: fsl: guts: Add a missing memory allocation failure check
+ - [armhf] tegra: Move panels to AUX bus
+ - net: chelsio: cxgb3: check the return value of pci_find_capability()
+ - iavf: Refactor iavf state machine tracking
+ - nl80211: Handle nla_memdup failures in handle_nan_filter
+ - drm/amdgpu: fix suspend/resume hang regression
+ - net: dcb: disable softirqs in dcbnl_flush_dev()
+ - Input: elan_i2c - move regulator_[en|dis]able() out of
+ elan_[en|dis]able_power()
+ - Input: elan_i2c - fix regulator enable count imbalance after
+ suspend/resume
+ - HID: add mapping for KEY_DICTATE
+ - HID: add mapping for KEY_ALL_APPLICATIONS
+ - tracing/histogram: Fix sorting on old "cpu" value
+ - tracing: Fix return value of __setup handlers
+ - btrfs: fix lost prealloc extents beyond eof after full fsync
+ - btrfs: qgroup: fix deadlock between rescan worker and remove qgroup
+ - btrfs: add missing run of delayed items after unlink during log replay
+ - Revert "xfrm: xfrm_state_mtu should return at least 1280 for ipv6"
+ - hamradio: fix macro redefine warning
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.105
+ - [x86] bugs: Unconditionally allow spectre_v2=retpoline,amd
+ - [armhf] report Spectre v2 status through sysfs
+ - [armel,armhf] early traps initialisation
+ - [armel,armhf] use LOADADDR() to get load address of sections
+ - [armel,armhf] Spectre-BHB workaround
+ - [armel,armhf] include unprivileged BPF status in Spectre V2 reporting
+ - [arm64] cputype: Add CPU implementor & types for the Apple M1 cores
+ - [arm64] Add Neoverse-N2, Cortex-A710 CPU part definition
+ - [arm64] Add Cortex-X2 CPU part definition
+ - [arm64] Add Cortex-A510 CPU part definition
+ - [arm64] Add HWCAP for self-synchronising virtual counter
+ - [arm64] add ID_AA64ISAR2_EL1 sys register
+ - [arm64] cpufeature: add HWCAP for FEAT_AFP
+ - [arm64] cpufeature: add HWCAP for FEAT_RPRES
+ - [arm64] entry.S: Add ventry overflow sanity checks
+ - [arm64] spectre: Rename spectre_v4_patch_fw_mitigation_conduit
+ - [arm64] entry: Make the trampoline cleanup optional
+ - [arm64] entry: Free up another register on kpti's tramp_exit path
+ - [arm64] entry: Move the trampoline data page before the text page
+ - [arm64] entry: Allow tramp_alias to access symbols after the 4K boundary
+ - [arm64] entry: Don't assume tramp_vectors is the start of the vectors
+ - [arm64] entry: Move trampoline macros out of ifdef'd section
+ - [arm64] entry: Make the kpti trampoline's kpti sequence optional
+ - [arm64] entry: Allow the trampoline text to occupy multiple pages
+ - [arm64] entry: Add non-kpti __bp_harden_el1_vectors for mitigations
+ - [arm64] entry: Add vectors that have the bhb mitigation sequences
+ - [arm64] entry: Add macro for reading symbol addresses from the trampoline
+ - [arm64] Add percpu vectors for EL1
+ - [arm64] proton-pack: Report Spectre-BHB vulnerabilities as part of
+ Spectre-v2
+ - [arm64] KVM: arm64: Allow indirect vectors to be used without SPECTRE_V3A
+ - [arm64] Mitigate spectre style branch history side channels
+ - [arm64] KVM: arm64: Allow SMCCC_ARCH_WORKAROUND_3 to be discovered and
+ migrated
+ - [arm64] Use the clearbhb instruction in mitigations
+ - [arm64] proton-pack: Include unprivileged eBPF status in Spectre v2
+ mitigation reporting
+ - [armel,armhf] fix co-processor register typo
+ - [armel,armhf] Do not use NOCROSSREFS directive with ld.lld
+ - [armhf] fix build warning in proc-v7-bugs.c
+ - xen/xenbus: don't let xenbus_grant_ring() remove grants in error case
+ (CVE-2022-23040, XSA-396)
+ - xen/grant-table: add gnttab_try_end_foreign_access() (CVE-2022-23036,
+ CVE-2022-23038, XSA-396)
+ - xen/blkfront: don't use gnttab_query_foreign_access() for mapped status
+ (CVE-2022-23036, XSA-396)
+ - xen/netfront: don't use gnttab_query_foreign_access() for mapped status
+ (CVE-2022-23037, XSA-396)
+ - xen/scsifront: don't use gnttab_query_foreign_access() for mapped status
+ (CVE-2022-23038, XSA-396)
+ - xen/gntalloc: don't use gnttab_query_foreign_access() (CVE-2022-23039,
+ XSA-396)
+ - xen: remove gnttab_query_foreign_access()
+ - xen/9p: use alloc/free_pages_exact() (CVE-2022-23041, XSA-396)
+ - xen/pvcalls: use alloc/free_pages_exact() (CVE-2022-23041, XSA-396)
+ - xen/gnttab: fix gnttab_end_foreign_access() without page specified
+ (CVE-2022-23041, XSA-396)
+ - xen/netfront: react properly to failing gnttab_end_foreign_access_ref()
+ (CVE-2022-23042, XSA-396)
+ - Revert "ACPI: PM: s2idle: Cancel wakeup before dispatching EC GPE"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.106
+ - [arm64] clk: qcom: gdsc: Add support to update GDSC transition delay
+ - [arm64] dts: armada-3720-turris-mox: Add missing ethernet0 alias
+ - tipc: fix kernel panic when enabling bearer
+ - mISDN: Remove obsolete PIPELINE_DEBUG debugging information
+ - mISDN: Fix memory leak in dsp_pipeline_build()
+ - virtio-blk: Don't use MAX_DISCARD_SEGMENTS if max_discard_seg is zero
+ - isdn: hfcpci: check the return value of dma_set_mask() in setup_hw()
+ - net: qlogic: check the return value of dma_alloc_coherent() in
+ qed_vf_hw_prepare()
+ - esp: Fix BEET mode inter address family tunneling on GSO
+ - qed: return status of qed_iov_get_link
+ - i40e: stop disabling VFs due to PF error responses
+ - ice: stop disabling VFs due to PF error responses
+ - ice: Align macro names to the specification
+ - ice: Remove unnecessary checker loop
+ - ice: Rename a couple of variables
+ - ice: Fix curr_link_speed advertised speed
+ - tipc: fix incorrect order of state message data sanity check
+ - [armhf] net: ethernet: ti: cpts: Handle error for clk_enable
+ - ax25: Fix NULL pointer dereference in ax25_kill_by_device
+ - net/mlx5: Fix size field in bufferx_reg struct
+ - net/mlx5: Fix a race on command flush flow
+ - net/mlx5e: Lag, Only handle events from highest priority multipath entry
+ - NFC: port100: fix use-after-free in port100_send_complete
+ - net: phy: DP83822: clear MISR2 register to disable interrupts
+ - sctp: fix kernel-infoleak for SCTP sockets
+ - [arm64] net: bcmgenet: Don't claim WOL when its not available
+ - [arm64,armhf] spi: rockchip: Fix error in getting num-cs property
+ - [arm64,armhf] spi: rockchip: terminate dma transmission when slave abort
+ - net-sysfs: add check for netdevice being present to speed_show
+ - [armhf] hwmon: (pmbus) Clear pmbus fault/warning bits after read
+ - gpio: Return EPROBE_DEFER if gc->to_irq is NULL
+ - Revert "xen-netback: remove 'hotplug-status' once it has served its
+ purpose"
+ - Revert "xen-netback: Check for hotplug-status existence before watching"
+ - ipv6: prevent a possible race condition with lifetimes
+ - tracing: Ensure trace buffer is at least 4096 bytes large
+ - fuse: fix pipe buffer lifetime for direct_io
+ - staging: rtl8723bs: Fix access-point mode deadlock
+ - [arm64] net: macb: Fix lost RX packet wakeup race in NAPI receive
+ - [arm64] mmc: meson: Fix usage of meson_mmc_post_req()
+ - [arm64] dts: marvell: armada-37xx: Remap IO space to bus address 0x0
+ - virtio: unexport virtio_finalize_features
+ - virtio: acknowledge all features before access
+ - watch_queue, pipe: Free watchqueue state after clearing pipe ring
+ (CVE-2022-0995)
+ - watch_queue: Fix to release page in ->release() (CVE-2022-0995)
+ - watch_queue: Fix to always request a pow-of-2 pipe ring size
+ (CVE-2022-0995)
+ - watch_queue: Fix the alloc bitmap size to reflect notes allocated
+ (CVE-2022-0995)
+ - watch_queue: Free the alloc bitmap when the watch_queue is torn down
+ (CVE-2022-0995)
+ - watch_queue: Fix lack of barrier/sync/lock between post and read
+ (CVE-2022-0995)
+ - watch_queue: Make comment about setting ->defunct more accurate
+ (CVE-2022-0995)
+ - [x86] boot: Fix memremap of setup_indirect structures
+ - [x86] boot: Add setup_indirect support in early_memremap_is_setup_data()
+ - [x86] traps: Mark do_int3() NOKPROBE_SYMBOL
+ - ext4: add check to prevent attempting to resize an fs with sparse_super2
+ - [armel,armhf] fix Thumb2 regression with Spectre BHB
+ - watch_queue: Fix filter limit check ((CVE-2022-0995)
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 13
+ * [rt] Update to 5.10.104-rt63
+ * [rt] Update to 5.10.106-rt64
+ * sctp: fix the processing for INIT chunk (CVE-2021-3772)
+ * tcp: make tcp_read_sock() more robust
+ * io_uring: return back safer resurrect
+ * [arm64] kvm: Fix copy-and-paste error in bhb templates for v5.10 stable
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 17 Mar 2022 16:40:47 +0100
+
+linux (5.10.103-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.93
+ - kbuild: Add $(KBUILD_HOSTLDFLAGS) to 'has_libelf' test
+ - devtmpfs regression fix: reconfigure on each mount
+ - orangefs: Fix the size of a memory allocation in orangefs_bufmap_alloc()
+ - perf: Protect perf_guest_cbs with RCU
+ - [x86] KVM: Register Processor Trace interrupt hook iff PT enabled in guest
+ - [s390x] KVM: Clarify SIGP orders versus STOP/RESTART
+ - 9p: only copy valid iattrs in 9P2000.L setattr implementation
+ - [x86] video: vga16fb: Only probe for EGA and VGA 16 color graphic cards
+ - media: uvcvideo: fix division by zero at stream start
+ - rtlwifi: rtl8192cu: Fix WARNING when calling local_irq_restore() with
+ interrupts enabled
+ - firmware: qemu_fw_cfg: fix sysfs information leak
+ - firmware: qemu_fw_cfg: fix NULL-pointer deref on duplicate entries
+ - firmware: qemu_fw_cfg: fix kobject leak in probe error path
+ - [x86] KVM: remove PMU FIXED_CTR3 from msrs_to_save_all
+ - ALSA: hda/realtek: Add speaker fixup for some Yoga 15ITL5 devices
+ - ALSA: hda/realtek - Fix silent output on Gigabyte X570 Aorus Master after
+ reboot from Windows
+ - ALSA: hda: ALC287: Add Lenovo IdeaPad Slim 9i 14ITL5 speaker quirk
+ - ALSA: hda/realtek: Add quirk for Legion Y9000X 2020
+ - ALSA: hda/realtek: Re-order quirk entries for Lenovo
+ - [powerpc*] pseries: Get entry and uaccess flush required bits from
+ H_GET_CPU_CHARACTERISTICS
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.94
+ - [x86] KVM: VMX: switch blocked_vcpu_on_cpu_lock to raw spinlock
+ - HID: uhid: Fix worker destroying device without any protection
+ - HID: wacom: Reset expected and received contact counts at the same time
+ - HID: wacom: Ignore the confidence flag when a touch is removed
+ - HID: wacom: Avoid using stale array indicies to read contact count
+ - f2fs: fix to do sanity check in is_alive()
+ - nfc: llcp: fix NULL error pointer dereference on sendmsg() after failed
+ bind()
+ - [armhf] mtd: rawnand: gpmi: Add ERR007117 protection for nfc_apply_timings
+ - [armhf] mtd: rawnand: gpmi: Remove explicit default gpmi clock setting for
+ i.MX6
+ - mtd: Fixed breaking list in __mtd_del_partition.
+ - [x86] gpu: Reserve stolen memory for first integrated Intel GPU
+ - rtc: cmos: take rtc_lock while reading from CMOS
+ - media: v4l2-ioctl.c: readbuffers depends on V4L2_CAP_READWRITE
+ - media: flexcop-usb: fix control-message timeouts
+ - media: mceusb: fix control-message timeouts
+ - media: em28xx: fix control-message timeouts
+ - media: cpia2: fix control-message timeouts
+ - media: s2255: fix control-message timeouts
+ - media: dib0700: fix undefined behavior in tuner shutdown
+ - media: redrat3: fix control-message timeouts
+ - media: pvrusb2: fix control-message timeouts
+ - media: stk1160: fix control-message timeouts
+ - [armhf] media: cec-pin: fix interrupt en/disable handling
+ - [x86] can: softing_cs: softingcs_probe(): fix memleak on registration
+ failure
+ - iio: adc: ti-adc081c: Partial revert of removal of ACPI IDs
+ - [arm64,armhf] gpu: host1x: Add back arm_iommu_detach_device()
+ - dma_fence_array: Fix PENDING_ERROR leak in dma_fence_array_signaled()
+ - PCI: Add function 1 DMA alias quirk for Marvell 88SE9125 SATA controller
+ - mm_zone: add function to check if managed dma zone exists
+ - [arm64] dma/pool: create dma atomic pool only if dma zone has managed
+ pages
+ - mm/page_alloc.c: do not warn allocation failure on zone DMA if no managed
+ pages
+ - shmem: fix a race between shmem_unused_huge_shrink and shmem_evict_inode
+ - drm/ttm: Put BO in its memory manager's lru list
+ - Bluetooth: L2CAP: Fix not initializing sk_peer_pid
+ - [armhf] drm/bridge: display-connector: fix an uninitialized pointer in
+ probe()
+ - drm: fix null-ptr-deref in drm_dev_init_release()
+ - [arm64,armhf] drm/rockchip: dsi: Fix unbalanced clock on probe error
+ - [arm64,armhf] drm/rockchip: dsi: Hold pm-runtime across bind/unbind
+ - [arm64,armhf] drm/rockchip: dsi: Disable PLL clock on bind error
+ - [arm64,armhf] drm/rockchip: dsi: Reconfigure hardware on resume()
+ - Bluetooth: cmtp: fix possible panic when cmtp_init_sockets() fails
+ - [arm*] clk: bcm-2835: Pick the closest clock rate
+ - [arm*] clk: bcm-2835: Remove rounding up the dividers
+ - [arm*] drm/vc4: hdmi: Set a default HSM rate
+ - [arm64] wcn36xx: ensure pairing of init_scan/finish_scan and
+ start_scan/end_scan
+ - [arm64] wcn36xx: Indicate beacon not connection loss on MISSED_BEACON_IND
+ - [arm64] wcn36xx: Fix DMA channel enable/disable cycle
+ - [arm64] wcn36xx: Release DMA channel descriptor allocations
+ - [arm64] wcn36xx: Put DXE block into reset before freeing memory
+ - [arm64] wcn36xx: populate band before determining rate on RX
+ - [arm64] wcn36xx: fix RX BD rate mapping for 5GHz legacy rates
+ - ath11k: Send PPDU_STATS_CFG with proper pdev mask to firmware
+ - media: videobuf2: Fix the size printk format
+ - [armhf] media: aspeed: fix mode-detect always time out at 2nd run
+ - media: em28xx: fix memory leak in em28xx_init_dev
+ - [armhf] media: aspeed: Update signal status immediately to ensure sane hw
+ state
+ - fs: dlm: use sk->sk_socket instead of con->sock
+ - fs: dlm: don't call kernel_getpeername() in error_report()
+ - Bluetooth: stop proccessing malicious adv data
+ - ath11k: Fix ETSI regd with weather radar overlap
+ - ath11k: clear the keys properly via DISABLE_KEY
+ - ath11k: reset RSN/WPA present state for open BSS
+ - [arm64] tee: fix put order in teedev_close_context()
+ - [x86] drm/vboxvideo: fix a NULL vs IS_ERR() check
+ - media: dmxdev: fix UAF when dvb_register_device() fails
+ - [arm64] crypto: qce - fix uaf on qce_ahash_register_one
+ - [arm64] crypto: qce - fix uaf on qce_skcipher_register_one
+ - [armhf] dts: stm32: fix dtbs_check warning on ili9341 dts binding on
+ stm32f429 disco
+ - [x86] crypto: qat - fix spelling mistake: "messge" -> "message"
+ - [x86] crypto: qat - remove unnecessary collision prevention step in PFVF
+ - [x86] crypto: qat - make pfvf send message direction agnostic
+ - [x86] crypto: qat - fix undetected PFVF timeout in ACK loop
+ - ath11k: Use host CE parameters for CE interrupts configuration
+ - [armhf] media: imx-pxp: Initialize the spinlock prior to using it
+ - [armhf] media: coda: fix CODA960 JPEG encoder buffer overflow
+ - [arm64] media: venus: pm_helpers: Control core power domain manually
+ - [arm64] media: venus: core, venc, vdec: Fix probe dependency error
+ - [arm64] media: venus: core: Fix a potential NULL pointer dereference in an
+ error handling path
+ - [arm64] media: venus: core: Fix a resource leak in the error handling path
+ of 'venus_probe()'
+ - [armhf] thermal/drivers/imx: Implement runtime PM support
+ - netfilter: bridge: add support for pppoe filtering
+ - cgroup: Trace event cgroup id fields should be u64
+ - ACPI: EC: Rework flushing of EC work while suspended to idle
+ - drm/amdgpu: Fix a NULL pointer dereference in
+ amdgpu_connector_lcd_native_mode()
+ - drm/radeon/radeon_kms: Fix a NULL pointer dereference in
+ radeon_driver_open_kms()
+ - [arm*] serial: amba-pl011: do not request memory region twice
+ - floppy: Fix hang in watchdog when disk is ejected
+ - [x86] staging: rtl8192e: return error code from rtllib_softmac_init()
+ - [x86] staging: rtl8192e: rtllib_module: fix error handle case in
+ alloc_rtllib()
+ - sched/fair: Fix detection of per-CPU kthreads waking a task
+ - sched/fair: Fix per-CPU kthread and wakee stacking for asym CPU capacity
+ - bpf: Adjust BTF log size limit.
+ - bpf: Disallow BPF_LOG_KERNEL log level for bpf(BPF_BTF_LOAD)
+ - bpf: Remove config check to enable bpf support for branch records
+ - [arm64] lib: Annotate {clear, copy}_page() as position-independent
+ - [arm64] clear_page() shouldn't use DC ZVA when DCZID_EL0.DZP == 1
+ - media: dib8000: Fix a memleak in dib8000_init()
+ - media: saa7146: mxb: Fix a NULL pointer dereference in mxb_attach()
+ - media: si2157: Fix "warm" tuner state detection
+ - wireless: iwlwifi: Fix a double free in iwl_txq_dyn_alloc_dma
+ - sched/rt: Try to restart rt period timer when rt runtime exceeded
+ - rcu/exp: Mark current CPU as exp-QS in IPI loop second pass
+ - mwifiex: Fix possible ABBA deadlock
+ - xfrm: fix a small bug in xfrm_sa_len()
+ - [x86] uaccess: Move variable into switch case statement
+ - [armhf] crypto: stm32 - Fix last sparse warning in
+ stm32_cryp_check_ctr_counter
+ - [armhf] crypto: stm32/cryp - fix CTR counter carry
+ - [armhf] crypto: stm32/cryp - fix xts and race condition in crypto_engine
+ requests
+ - [armhf] crypto: stm32/cryp - check early input data
+ - [armhf] crypto: stm32/cryp - fix double pm exit
+ - [armhf] crypto: stm32/cryp - fix lrw chaining mode
+ - [armhf] crypto: stm32/cryp - fix bugs and crash in tests
+ - [armhf] crypto: stm32 - Revert broken pm_runtime_resume_and_get changes
+ - ath11k: Fix deleting uninitialized kernel timer during fragment cache
+ flush
+ - media: dw2102: Fix use after free
+ - media: msi001: fix possible null-ptr-deref in msi001_probe()
+ - [armhf] media: coda/imx-vdoa: Handle dma_set_coherent_mask error codes
+ - ath11k: Fix a NULL pointer dereference in ath11k_mac_op_hw_scan()
+ - [arm64] dts: qcom: c630: Fix soundcard setup
+ - [arm64] drm/msm/dpu: fix safe status debugfs file
+ - [arm64,armhf] drm/tegra: vic: Fix DMA API misuse
+ - xfrm: interface with if_id 0 should return error
+ - xfrm: state and policy should fail if XFRMA_IF_ID 0
+ - [armel,armhf] 9159/1: decompressor: Avoid UNPREDICTABLE NOP encoding
+ - usb: ftdi-elan: fix memory leak on device disconnect
+ - iwlwifi: mvm: fix 32-bit build in FTM
+ - iwlwifi: mvm: test roc running status bits before removing the sta
+ - [armhf] mmc: meson-mx-sdio: add IRQ check
+ - selinux: fix potential memleak in selinux_add_opt()
+ - Bluetooth: L2CAP: Fix using wrong mode
+ - bpftool: Enable line buffering for stdout
+ - software node: fix wrong node passed to find nargs_prop
+ - Bluetooth: hci_qca: Stop IBS timer during BT OFF
+ - [x86] mce/inject: Avoid out-of-bounds write when setting flags
+ - ACPI: scan: Create platform device for BCM4752 and LNV4752 ACPI nodes
+ - [x86] pcmcia: rsrc_nonstatic: Fix a NULL pointer dereference in
+ __nonstatic_find_io_region()
+ - [x86] pcmcia: rsrc_nonstatic: Fix a NULL pointer dereference in
+ nonstatic_find_mem_region()
+ - netfilter: ipt_CLUSTERIP: fix refcount leak in clusterip_tg_check()
+ - bpf: Don't promote bogus looking registers after null check.
+ - bpf: Fix SO_RCVBUF/SO_SNDBUF handling in _bpf_setsockopt().
+ - netfilter: nft_set_pipapo: allocate pcpu scratch maps on clone
+ - ppp: ensure minimum packet size in ppp_write()
+ - Bluetooth: hci_bcm: Check for error irq
+ - Bluetooth: hci_qca: Fix NULL vs IS_ERR_OR_NULL check in qca_serdev_probe
+ - [arm64] usb: dwc3: qcom: Fix NULL vs IS_ERR checking in dwc3_qcom_probe
+ - HID: hid-uclogic-params: Invalid parameter check in uclogic_params_init
+ - HID: hid-uclogic-params: Invalid parameter check in
+ uclogic_params_get_str_desc
+ - HID: hid-uclogic-params: Invalid parameter check in
+ uclogic_params_huion_init
+ - HID: hid-uclogic-params: Invalid parameter check in
+ uclogic_params_frame_init_v1_buttonpad
+ - debugfs: lockdown: Allow reading debugfs files that are not world readable
+ - net/mlx5e: Fix page DMA map/unmap attributes
+ - net/mlx5e: Don't block routes with nexthop objects in SW
+ - Revert "net/mlx5e: Block offload of outer header csum for UDP tunnels"
+ - net/mlx5: Set command entry semaphore up once got index free
+ - lib/mpi: Add the return value check of kcalloc()
+ - Bluetooth: L2CAP: uninitialized variables in l2cap_sock_setsockopt()
+ - [arm64,armhf] spi: spi-meson-spifc: Add missing pm_runtime_disable() in
+ meson_spifc_probe
+ - ax25: uninitialized variable in ax25_setsockopt()
+ - netrom: fix api breakage in nr_setsockopt()
+ - regmap: Call regmap_debugfs_exit() prior to _init()
+ - tpm: add request_locality before write TPM_INT_ENABLE
+ - tpm_tis: Fix an error handling path in 'tpm_tis_core_init()'
+ - can: softing: softing_startstop(): fix set but not used variable warning
+ - pcmcia: fix setting of kthread task states
+ - iwlwifi: mvm: Use div_s64 instead of do_div in iwl_mvm_ftm_rtt_smoothing()
+ - net: mcs7830: handle usb read errors properly
+ - ext4: avoid trim error on fs with small groups
+ - ALSA: jack: Add missing rwsem around snd_ctl_remove() calls
+ - ALSA: PCM: Add missing rwsem around snd_ctl_remove() calls
+ - ALSA: hda: Add missing rwsem around snd_ctl_remove() calls
+ - RDMA/bnxt_re: Scan the whole bitmap when checking if "disabling RCFW with
+ pending cmd-bit"
+ - [arm64] RDMA/hns: Validate the pkey index
+ - scsi: pm80xx: Update WARN_ON check in pm8001_mpi_build_cmd()
+ - [arm64] clk: imx8mn: Fix imx8mn_clko1_sels
+ - [powerpc*] prom_init: Fix improper check of prom_getprop()
+ - dt-bindings: thermal: Fix definition of cooling-maps contribution property
+ - [powerpc*] 64s: Convert some cpu_setup() and cpu_restore() functions to C
+ - [powerpc*] perf: MMCR0 control for PMU registers under PMCC=00
+ - [powerpc*] perf: move perf irq/nmi handling details into traps.c
+ - [powerpc*] irq: Add helper to set regs->softe
+ - [powerpc*] perf: Fix PMU callbacks to clear pending PMI before resetting
+ an overflown PMC
+ - clocksource: Reduce clocksource-skew threshold
+ - clocksource: Avoid accidental unstable marking of clocksources
+ - ALSA: oss: fix compile error when OSS_DEBUG is enabled
+ - ALSA: usb-audio: Drop superfluous '0' in Presonus Studio 1810c's ID
+ - [arm*] binder: fix handling of error during copy
+ - [arm64,armhf] iommu/io-pgtable-arm: Fix table descriptor paddr formatting
+ - scsi: ufs: Fix race conditions related to driver data
+ - RDMA/qedr: Fix reporting max_{send/recv}_wr attrs
+ - PCI/MSI: Fix pci_irq_vector()/pci_irq_get_affinity()
+ - RDMA/core: Let ib_find_gid() continue search even after empty entry
+ - RDMA/cma: Let cma_resolve_ib_dev() continue search even after empty entry
+ - [x86] ASoC: rt5663: Handle device_property_read_u32_array error codes
+ - [amd64] iommu/amd: Remove iommu_init_ga()
+ - [amd64] iommu/amd: Restore GA log/tail pointer on host resume
+ - [x86] ASoC: Intel: catpt: Test dmaengine_submit() result before moving on
+ - iommu/iova: Fix race between FQ timeout and teardown
+ - scsi: block: pm: Always set request queue runtime active in
+ blk_post_runtime_resume()
+ - [powerpc*] xive: Add missing null check after calling kmalloc
+ - RDMA/cxgb4: Set queue pair state when being queried
+ - of: base: Fix phandle argument length mismatch error message
+ - [armhf] dts: omap3-n900: Fix lp5523 for multi color
+ - Bluetooth: Fix debugfs entry leak in hci_register_dev()
+ - fs: dlm: filter user dlm messages for kernel locks
+ - [arm64,armhf] drm/lima: fix warning when CONFIG_DEBUG_SG=y &
+ CONFIG_DMA_API_DEBUG=y
+ - ar5523: Fix null-ptr-deref with unexpected WDCMSG_TARGET_START reply
+ - [arm64,armhf] drm/bridge: dw-hdmi: handle ELD when
+ DRM_BRIDGE_ATTACH_NO_CONNECTOR
+ - drm/nouveau/pmu/gm200-: avoid touching PMU outside of DEVINIT/PREOS/ACR
+ - batman-adv: allow netlink usage in unprivileged containers
+ - ath11k: Fix crash caused by uninitialized TX ring
+ - usb: gadget: f_fs: Use stream_open() for endpoint files
+ - drm: panel-orientation-quirks: Add quirk for the Lenovo Yoga Book X91F/L
+ - HID: apple: Do not reset quirks when the Fn key is not found
+ - media: b2c2: Add missing check in flexcop_pci_isr:
+ - drm/amdgpu/display: set vblank_disable_immediate for DC
+ - [arm64,armhf] tty: serial: imx: disable UCR4_OREN in .stop_rx() instead of
+ .shutdown()
+ - gpiolib: acpi: Do not set the IRQ type if the IRQ is already in use
+ - [armhf] HSI: core: Fix return freed object in hsi_new_client
+ - crypto: jitter - consider 32 LSB for APT
+ - rsi: Fix use-after-free in rsi_rx_done_handler()
+ - rsi: Fix out-of-bounds read in rsi_read_pkt()
+ - ath11k: Avoid NULL ptr access during mgmt tx cleanup
+ - [arm64] media: venus: avoid calling core_clk_setrate() concurrently during
+ concurrent video sessions
+ - [x86] ACPI / x86: Drop PWM2 device on Lenovo Yoga Book from always present
+ table
+ - ACPI: Change acpi_device_always_present() into
+ acpi_device_override_status()
+ - [x86] ACPI / x86: Allow specifying acpi_device_override_status() quirks by
+ path
+ - [x86] ACPI / x86: Add not-present quirk for the PCI0.SDHB.BRC1 device on
+ the GPD win
+ - floppy: Add max size check for user space request
+ - [x86] mm: Flush global TLB when switching to trampoline page-table
+ - media: saa7146: hexium_orion: Fix a NULL pointer dereference in
+ hexium_attach()
+ - media: m920x: don't use stack on USB reads
+ - [x86] thunderbolt: Runtime PM activate both ends of the device link
+ - iwlwifi: mvm: synchronize with FW after multicast commands
+ - iwlwifi: mvm: avoid clearing a just saved session protection id
+ - ath11k: avoid deadlock by change ieee80211_queue_work for regd_update_work
+ - ath10k: Fix tx hanging
+ - net-sysfs: update the queue counts in the unregistration path
+ - net: phy: prefer 1000baseT over 1000baseKX
+ - [armhf] gpio: aspeed: Convert aspeed_gpio.lock to raw_spinlock
+ - ath11k: Avoid false DEADLOCK warning reported by lockdep
+ - [x86] mce: Allow instrumentation during task work queueing
+ - [x86] mce: Mark mce_panic() noinstr
+ - [x86] mce: Mark mce_end() noinstr
+ - [x86] mce: Mark mce_read_aux() noinstr
+ - net: bonding: debug: avoid printing debug logs when bond is not notifying
+ peers
+ - bpf: Do not WARN in bpf_warn_invalid_xdp_action()
+ - HID: quirks: Allow inverting the absolute X/Y values
+ - media: igorplugusb: receiver overflow should be reported
+ - media: saa7146: hexium_gemini: Fix a NULL pointer dereference in
+ hexium_attach()
+ - mmc: core: Fixup storing of OCR for MMC_QUIRK_NONSTD_SDIO
+ - audit: ensure userspace is penalized the same as the kernel when under
+ pressure
+ - [arm64] dts: ls1028a-qds: move rtc node to the correct i2c bus
+ - PM: runtime: Add safety net to supplier device release
+ - cpufreq: Fix initialization of min and max frequency QoS requests
+ - usb: hub: Add delay for SuperSpeed hub resume to let links transit to U0
+ - ath9k: Fix out-of-bound memcpy in ath9k_hif_usb_rx_stream
+ - rtw88: 8822c: update rx settings to prevent potential hw deadlock
+ - iwlwifi: fix leaks/bad data after failed firmware load
+ - iwlwifi: remove module loading failure message
+ - iwlwifi: mvm: Fix calculation of frame length
+ - iwlwifi: pcie: make sure prph_info is set when treating wakeup IRQ
+ - ath11k: Fix napi related hang
+ - Bluetooth: vhci: Set HCI_QUIRK_VALID_LE_STATES
+ - xfrm: rate limit SA mapping change message to user space
+ - [armhf] drm/etnaviv: consider completed fence seqno in hang check
+ - jffs2: GC deadlock reading a page that is used in jffs2_write_begin()
+ - ACPICA: actypes.h: Expand the ACPI_ACCESS_ definitions
+ - ACPICA: Utilities: Avoid deleting the same object twice in a row
+ - ACPICA: Executer: Fix the REFCLASS_REFOF case in acpi_ex_opcode_1A_0T_1R()
+ - ACPICA: Fix wrong interpretation of PCC address
+ - ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5
+ - drm/amdgpu: fixup bad vram size on gmc v8
+ - ACPI: battery: Add the ThinkPad "Not Charging" quirk
+ - btrfs: remove BUG_ON() in find_parent_nodes()
+ - btrfs: remove BUG_ON(!eie) in find_parent_nodes
+ - net: mdio: Demote probed message to debug print
+ - mac80211: allow non-standard VHT MCS-10/11
+ - dm btree: add a defensive bounds check to insert_at()
+ - dm space map common: add bounds check to sm_ll_lookup_bitmap()
+ - net: phy: marvell: configure RGMII delays for 88E1118
+ - [arm64] regulator: qcom_smd: Align probe function with rpmh-regulator
+ - [arm64,armhf] serial: pl010: Drop CR register reset on set_termios
+ - serial: core: Keep mctrl register state and cached copy in sync
+ - random: do not throw away excess input to crng_fast_load
+ - [powerpc*] powernv: add missing of_node_put
+ - [powerpc*] btext: add missing of_node_put
+ - [powerpc*] watchdog: Fix missed watchdog reset due to memory ordering race
+ - [x86] i2c: i801: Don't silently correct invalid transfer size
+ - [powerpc*] smp: Move setup_profiling_timer() under CONFIG_PROFILING
+ - [powerpc*] i2c: mpc: Correct I2C reset procedure
+ - [arm64] clk: meson: gxbb: Fix the SDM_EN bit for MPLL0 on GXBB
+ - [powerpc*] KVM: PPC: Book3S: Suppress warnings when allocating too big
+ memory slots
+ - [powerpc*] KVM: PPC: Book3S: Suppress failed alloc warning in
+ H_COPY_TOFROM_GUEST
+ - w1: Misuse of get_user()/put_user() reported by sparse
+ - nvmem: core: set size for sysfs bin file
+ - dm: fix alloc_dax error handling in alloc_dev
+ - scsi: lpfc: Trigger SLI4 firmware dump before doing driver cleanup
+ - ALSA: seq: Set upper limit of processed events
+ - [powerpc*] handle kdump appropriately with crash_kexec_post_notifiers
+ option
+ - [powerpc*] fadump: Fix inaccurate CPU state info in vmcore generated with
+ panic
+ - udf: Fix error handling in udf_new_inode()
+ - [mips64el,mipsel] OCTEON: add put_device() after of_find_device_by_node()
+ - [arm64,armhf] irqchip/gic-v4: Disable redistributors' view of the VPE
+ table at boot time
+ - [x86] i2c: designware-pci: Fix to change data types of hcnt and lcnt
+ parameters
+ - scsi: sr: Don't use GFP_DMA
+ - [arm64] rpmsg: core: Clean up resources on announce_create failure.
+ - [armhf] crypto: stm32/crc32 - Fix kernel BUG triggered in probe()
+ - [arm64] crypto: caam - replace this_cpu_ptr with raw_cpu_ptr
+ - ubifs: Error path in ubifs_remount_rw() seems to wrongly free write
+ buffers
+ - tpm: fix NPE on probe for missing device
+ - xen/gntdev: fix unmap notification order
+ - fuse: Pass correct lend value to filemap_write_and_wait_range()
+ - serial: Fix incorrect rs485 polarity on uart open
+ - cputime, cpuacct: Include guest time in user time in cpuacct.stat
+ - tracing/kprobes: 'nmissed' not showed correctly for kretprobe
+ - iwlwifi: mvm: Increase the scan timeout guard to 30 seconds
+ - [s390x] mm: fix 2KB pgtable release race
+ - device property: Fix fwnode_graph_devcon_match() fwnode leak
+ - [armhf] drm/etnaviv: limit submit sizes
+ - drm/nouveau/kms/nv04: use vzalloc for nv04_display
+ - [arm64,armhf] drm/bridge: analogix_dp: Make PSR-exit block less
+ - [powerpc*] 64s/radix: Fix huge vmap false positive
+ - [arm64] PCI: xgene: Fix IB window setup
+ - PCI: pciehp: Use down_read/write_nested(reset_lock) to fix lockdep errors
+ - [arm*] PCI: pci-bridge-emul: Make expansion ROM Base Address register
+ read-only
+ - [arm*] PCI: pci-bridge-emul: Properly mark reserved PCIe bits in PCI
+ config space
+ - [arm*] PCI: pci-bridge-emul: Fix definitions of reserved bits
+ - [arm*] PCI: pci-bridge-emul: Correctly set PCIe capabilities
+ - [arm*] PCI: pci-bridge-emul: Set PCI_STATUS_CAP_LIST for PCIe device
+ - xfrm: fix policy lookup for ipv6 gre packets
+ - btrfs: fix deadlock between quota enable and other quota operations
+ - btrfs: check the root node for uptodate before returning it
+ - btrfs: respect the max size in the header when activating swap file
+ - ext4: make sure to reset inode lockdep class when quota enabling fails
+ - ext4: make sure quota gets properly shutdown on error
+ - ext4: fix a possible ABBA deadlock due to busy PA
+ - ext4: initialize err_blk before calling __ext4_get_inode_loc
+ - ext4: fix fast commit may miss tracking range for FALLOC_FL_ZERO_RANGE
+ - ext4: set csum seed in tmp inode while migrating to extents
+ - ext4: Fix BUG_ON in ext4_bread when write quota data
+ - ext4: use ext4_ext_remove_space() for fast commit replay delete range
+ - ext4: fast commit may miss tracking unwritten range during ftruncate
+ - ext4: destroy ext4_fc_dentry_cachep kmemcache on module removal
+ - ext4: fix null-ptr-deref in '__ext4_journal_ensure_credits'
+ - ext4: don't use the orphan list when migrating an inode
+ - drm/radeon: fix error handling in radeon_driver_open_kms
+ - of: base: Improve argument length mismatch error
+ - firmware: Update Kconfig help text for Google firmware
+ - [arm*] drm/vc4: hdmi: Make sure the device is powered with CEC
+ - Documentation: dmaengine: Correctly describe dmatest with channel unset
+ - Documentation: ACPI: Fix data node reference documentation
+ - Documentation: refer to config RANDOMIZE_BASE for kernel address-space
+ randomization
+ - Documentation: fix firewire.rst ABI file path error
+ - Bluetooth: hci_sync: Fix not setting adv set duration
+ - scsi: core: Show SCMD_LAST in text form
+ - [arm64] RDMA/hns: Modify the mapping attribute of doorbell to device
+ - RDMA/rxe: Fix a typo in opcode name
+ - [armhf] dmaengine: stm32-mdma: fix STM32_MDMA_CTBR_TSEL_MASK
+ - Revert "net/mlx5: Add retry mechanism to the command entry index
+ allocation"
+ - block: Fix fsync always failed if once failed
+ - bpftool: Remove inclusion of utilities.mak from Makefiles
+ - xdp: check prog type before updating BPF link
+ - ipv4: update fib_info_cnt under spinlock protection
+ - ipv4: avoid quadratic behavior in netns dismantle
+ - [arm64] net/fsl: xgmac_mdio: Add workaround for erratum A-009885
+ - [arm64] net/fsl: xgmac_mdio: Fix incorrect iounmap when removing module
+ - f2fs: compress: fix potential deadlock of compress file
+ - f2fs: fix to reserve space for IO align feature
+ - af_unix: annote lockless accesses to unix_tot_inflight & gc_in_progress
+ - clk: Emit a stern warning with writable debugfs enabled
+ - net/smc: Fix hung_task when removing SMC-R devices
+ - virtio_ring: mark ring unused on error
+ - taskstats: Cleanup the use of task->exit_code
+ - inet: frags: annotate races around fqdir->dead and fqdir->high_thresh
+ - netns: add schedule point in ops_exit_list()
+ - xfrm: Don't accidentally set RTO_ONLINK in decode_session4()
+ - gre: Don't accidentally set RTO_ONLINK in gre_fill_metadata_dst()
+ - libcxgb: Don't accidentally set RTO_ONLINK in cxgb_find_route()
+ - perf script: Fix hex dump character output
+ - perf probe: Fix ppc64 'perf probe add events failed' case
+ - devlink: Remove misleading internal_flags from health reporter dump
+ - net: bonding: fix bond_xmit_broadcast return value error bug
+ - net_sched: restore "mpu xxx" handling
+ - [arm64] bcmgenet: add WOL IRQ check
+ - net: sfp: fix high power modules without diagnostic monitoring
+ - [arm64] net: mscc: ocelot: fix using match before it is set
+ - dt-bindings: display: meson-dw-hdmi: add missing sound-name-prefix
+ property
+ - dt-bindings: display: meson-vpu: Add missing amlogic,canvas property
+ - dt-bindings: watchdog: Require samsung,syscon-phandle for Exynos7
+ - mm/hmm.c: allow VM_MIXEDMAP to work with hmm_range_fault
+ - mtd: nand: bbt: Fix corner case in bad block table handling
+ - ath10k: Fix the MTU size on QCA9377 SDIO
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.95
+ - bnx2x: Utilize firmware 7.13.21.0
+ - bnx2x: Invalidate fastpath HSI version for VFs
+ - rcu: Tighten rcu_advance_cbs_nowake() checks
+ - [x86] KVM: x86/mmu: Fix write-protection of PTs mapped by the TDP MMU
+ - select: Fix indefinitely sleeping task in poll_schedule_timeout()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.96
+ - Bluetooth: refactor malicious adv data check
+ - [arm64] media: venus: core: Drop second v4l2 device unregister
+ - net: sfp: ignore disabled SFP node
+ - net: stmmac: skip only stmmac_ptp_register when resume from suspend
+ - [s390x] module: fix loading modules with a lot of relocations
+ - [s390x] hypfs: include z/VM guests with access control group set
+ - bpf: Guard against accessing NULL pt_regs in bpf_get_task_stack()
+ - [s390x] scsi: zfcp: Fix failed recovery on gone remote port with non-NPIV
+ FCP devices
+ - udf: Restore i_lenAlloc when inode expansion fails (CVE-2022-0617)
+ - udf: Fix NULL ptr deref when converting from inline format (CVE-2022-0617)
+ - efi: runtime: avoid EFIv2 runtime services on Apple x86 machines
+ - tracing: Don't inc err_log entry count if entry allocation fails
+ - ceph: properly put ceph_string reference after async create attempt
+ - ceph: set pool_ns in new inode layout for async creates
+ - fsnotify: fix fsnotify hooks in pseudo filesystems
+ - Revert "KVM: SVM: avoid infinite loop on NPF from bad address"
+ - [x86] perf/x86/intel/uncore: Fix CAS_COUNT_WRITE issue for ICX
+ - [armhf] drm/etnaviv: relax submit size limits
+ - [x86] KVM: x86: Update vCPU's runtime CPUID on write to MSR_IA32_XSS
+ - [arm64] errata: Fix exec handling in erratum 1418040 workaround
+ - netfilter: nft_payload: do not update layer 4 checksum when mangling
+ fragments
+ - serial: 8250: of: Fix mapped region size when using reg-offset property
+ - [armhf] serial: stm32: fix software flow control transfer
+ - tty: n_gsm: fix SW flow control encoding/handling
+ - tty: Add support for Brainboxes UC cards.
+ - usb-storage: Add unusual-devs entry for VL817 USB-SATA bridge
+ - [arm64,armhf] usb: xhci-plat: fix crash when suspend if remote wake enable
+ - [arm64,armhf] usb: common: ulpi: Fix crash in ulpi_match()
+ - usb: gadget: f_sourcesink: Fix isoc transfer for USB_SPEED_SUPER_PLUS
+ - USB: core: Fix hang in usb_kill_urb by adding memory barriers
+ - usb: typec: tcpm: Do not disconnect while receiving VBUS off
+ - jbd2: export jbd2_journal_[grab|put]_journal_head
+ - ocfs2: fix a deadlock when commit trans
+ - sched/membarrier: Fix membarrier-rseq fence command missing from query
+ bitmask
+ - [x86] MCE/AMD: Allow thresholding interface updates after init
+ - i40e: Increase delay to 1 s after global EMP reset
+ - i40e: Fix issue when maximum queues is exceeded
+ - i40e: Fix queues reservation for XDP
+ - i40e: Fix for failed to init adminq while VF reset
+ - i40e: fix unsigned stat widths
+ - scsi: bnx2fc: Flush destroy_work queue before calling
+ bnx2fc_interface_put()
+ - ipv6_tunnel: Rate limit warning messages
+ - net: fix information leakage in /proc/net/ptype
+ - hwmon: (lm90) Mark alert as broken for MAX6646/6647/6649
+ - hwmon: (lm90) Mark alert as broken for MAX6680
+ - ping: fix the sk_bound_dev_if match in ping_lookup
+ - ipv4: avoid using shared IP generator for connected sockets
+ - hwmon: (lm90) Reduce maximum conversion rate for G781
+ - NFSv4: nfs_atomic_open() can race when looking up a non-regular file
+ - net-procfs: show net devices bound packet types
+ - [arm64] drm/msm: Fix wrong size calculation
+ - [arm64] drm/msm/dsi: Fix missing put_device() call in dsi_get_phy
+ - [arm64] drm/msm/dsi: invalid parameter check in msm_dsi_phy_enable
+ - ipv6: annotate accesses to fn->fn_sernum
+ - NFS: Ensure the server has an up to date ctime before hardlinking
+ - NFS: Ensure the server has an up to date ctime before renaming
+ - [powerpc*] powerpc64/bpf: Limit 'ldbrx' to processors compliant with ISA
+ v2.06
+ - netfilter: conntrack: don't increment invalid counter on NF_REPEAT
+ - kernel: delete repeated words in comments
+ - perf: Fix perf_event_read_local() time
+ - sched/pelt: Relax the sync of util_sum with util_avg
+ - net: phy: broadcom: hook up soft_reset for BCM54616S
+ - phylib: fix potential use-after-free
+ - rxrpc: Adjust retransmission backoff
+ - [arm64] efi/libstub: arm64: Fix image check alignment at entry
+ - hwmon: (lm90) Mark alert as broken for MAX6654
+ - [powerpc*] perf: Fix power_pmu_disable to call clear_pmi_irq_pending only
+ if PMI is pending
+ - net: ipv4: Move ip_options_fragment() out of loop
+ - net: ipv4: Fix the warning for dereference
+ - ipv4: fix ip option filtering for locally generated fragments
+ - [x86] video: hyperv_fb: Fix validation of screen resolution
+ - [arm64] drm/msm/hdmi: Fix missing put_device() call in msm_hdmi_get_phy
+ - [arm64] drm/msm/dpu: invalid parameter check in dpu_setup_dspp_pcc
+ - [armhf] net: cpsw: Properly initialise struct page_pool_params
+ - [arm64] net: hns3: handle empty unknown interrupt for VF
+ - Revert "ipv6: Honor all IPv6 PIO Valid Lifetime values"
+ - net: bridge: vlan: fix single net device option dumping
+ - ipv4: raw: lock the socket in raw_bind()
+ - ipv4: tcp: send zero IPID in SYNACK messages
+ - ipv4: remove sparse error in ip_neigh_gw4()
+ - net: bridge: vlan: fix memory leak in __allowed_ingress
+ - dt-bindings: can: tcan4x5x: fix mram-cfg RX FIFO config
+ - fsnotify: invalidate dcache before IN_DELETE event
+ - block: Fix wrong offset in bio_truncate()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.97
+ - PCI: pciehp: Fix infinite loop in IRQ handler upon power fault
+ - [x86] KVM: x86: Forcibly leave nested virt when SMM state is toggled
+ - psi: Fix uaf issue when psi trigger is destroyed while being polled
+ - [x86] mce: Add Xeon Sapphire Rapids to list of CPUs that support PPIN
+ - [x86] cpu: Add Xeon Icelake-D to list of CPUs that support PPIN
+ - [arm*] drm/vc4: hdmi: Make sure the device is powered with CEC
+ - cgroup-v1: Require capabilities to set release_agent (CVE-2022-0492)
+ - net/mlx5e: Fix handling of wrong devices during bond netevent
+ - net/mlx5: Use del_timer_sync in fw reset flow of halting poll
+ - net/mlx5: E-Switch, Fix uninitialized variable modact
+ - ipheth: fix EOVERFLOW in ipheth_rcvbulk_callback
+ - [amd64,arm64] net: amd-xgbe: ensure to reset the tx_timer_active flag
+ - [amd64,arm64] net: amd-xgbe: Fix skb data length underflow
+ - fanotify: Fix stale file descriptor in copy_event_to_user()
+ - net: sched: fix use-after-free in tc_new_tfilter()
+ - rtnetlink: make sure to refresh master_dev/m_ops in __rtnl_newlink()
+ - cpuset: Fix the bug that subpart_cpus updated wrongly in update_cpumask()
+ - af_packet: fix data-race in packet_setsockopt / packet_setsockopt
+ - tcp: add missing tcp_skb_can_collapse() test in tcp_shift_skb_data()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.98
+ - [arm*] Revert "drm/vc4: hdmi: Make sure the device is powered with CEC"
+ - [arm*] Revert "drm/vc4: hdmi: Make sure the device is powered with CEC"
+ again
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.99
+ - selinux: fix double free of cond_list on error paths
+ - audit: improve audit queue handling when "audit=1" on cmdline
+ - ASoC: ops: Reject out of bounds values in snd_soc_put_volsw()
+ - ASoC: ops: Reject out of bounds values in snd_soc_put_volsw_sx()
+ - ASoC: ops: Reject out of bounds values in snd_soc_put_xr_sx()
+ - ALSA: usb-audio: Correct quirk for VF0770
+ - ALSA: hda: Fix UAF of leds class devs at unbinding
+ - ALSA: hda: realtek: Fix race at concurrent COEF updates
+ - ALSA: hda/realtek: Add quirk for ASUS GU603
+ - ALSA: hda/realtek: Add missing fixup-model entry for Gigabyte X570 ALC1220
+ quirks
+ - ALSA: hda/realtek: Fix silent output on Gigabyte X570S Aorus Master (newer
+ chipset)
+ - ALSA: hda/realtek: Fix silent output on Gigabyte X570 Aorus Xtreme after
+ reboot from Windows
+ - btrfs: fix deadlock between quota disable and qgroup rescan worker
+ - drm/nouveau: fix off by one in BIOS boundary checking
+ - mm/pgtable: define pte_index so that preprocessor could recognize it
+ - block: bio-integrity: Advance seed correctly for larger interval sizes
+ - dma-buf: heaps: Fix potential spectre v1 gadget
+ - [amd64] IB/hfi1: Fix AIP early init panic
+ - memcg: charge fs_context and legacy_fs_context
+ - RDMA/cma: Use correct address when leaving multicast group
+ - RDMA/ucma: Protect mc during concurrent multicast leaves
+ - [amd64] IB/rdmavt: Validate remote_addr during loopback atomic tests
+ - RDMA/mlx4: Don't continue event handler after memory allocation failure
+ - [amd64] iommu/vt-d: Fix potential memory leak in
+ intel_setup_irq_remapping()
+ - [amd64] iommu/amd: Fix loop timeout issue in iommu_ga_log_enable()
+ - [arm64,armhf] spi: meson-spicc: add IRQ check in meson_spicc_probe
+ - net: ieee802154: hwsim: Ensure proper channel selection at probe time
+ - net: ieee802154: Return meaningful error codes from the netlink helpers
+ - net: macsec: Fix offload support for NETDEV_UNREGISTER event
+ - net: macsec: Verify that send_sci is on when setting Tx sci explicitly
+ - net: stmmac: dump gmac4 DMA registers correctly
+ - net: stmmac: ensure PTP time register reads are consistent
+ - [x86] drm/i915/overlay: Prevent divide by zero bugs in scaling
+ - [x86] pinctrl: intel: Fix a glitch when updating IRQ flags on a
+ preconfigured line
+ - [x86] pinctrl: intel: fix unexpected interrupt
+ - [arm*] pinctrl: bcm2835: Fix a few error paths
+ - scsi: bnx2fc: Make bnx2fc_recv_frame() mp safe
+ - nfsd: nfsd4_setclientid_confirm mistakenly expires confirmed client.
+ - [amd64,arm64] gve: fix the wrong AdminQ buffer queue index check
+ - bpf: Use VM_MAP instead of VM_ALLOC for ringbuf
+ - rtc: cmos: Evaluate century appropriate
+ - Revert "fbcon: Disable accelerated scrolling"
+ - fbcon: Add option to enable legacy hardware acceleration
+ - perf stat: Fix display of grouped aliased events
+ - [x86] perf/x86/intel/pt: Fix crash with stop filters in single-range mode
+ - [x86] perf: Default set FREEZE_ON_SMI for all
+ - [arm64] EDAC/xgene: Fix deferred probing
+ - ext4: prevent used blocks from being allocated during fast commit replay
+ - ext4: modify the logic of ext4_mb_new_blocks_simple
+ - ext4: fix error handling in ext4_restore_inline_data()
+ - ext4: fix error handling in ext4_fc_record_modified_inode()
+ - ext4: fix incorrect type issue during replay_del_range
+ - cgroup/cpuset: Fix "suspicious RCU usage" lockdep warning
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.100
+ - moxart: fix potential use-after-free on remove path (CVE-2022-0487)
+ - crypto: api - Move cryptomgr soft dependency into algapi
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.101
+ - integrity: check the return value of audit_log_start()
+ - [arm64] mmc: sdhci-of-esdhc: Check for error num after setting mask
+ - can: isotp: fix potential CAN frame reception race in isotp_rcv()
+ - net: phy: marvell: Fix RGMII Tx/Rx delays setting in 88e1121-compatible
+ PHYs
+ - net: phy: marvell: Fix MDI-x polarity setting in 88e1118-compatible PHYs
+ - NFS: Fix initialisation of nfs_client cl_flags field
+ - NFSD: Clamp WRITE offsets
+ - NFSD: Fix offset type in I/O trace points
+ - drm/amdgpu: Set a suitable dev_info.gart_page_size (Closes: #990279)
+ - NFS: change nfs_access_get_cached to only report the mask
+ - NFSv4 only print the label when its queried
+ - nfs: nfs4clinet: check the return value of kstrdup()
+ - NFSv4.1: Fix uninitialised variable in devicenotify
+ - NFSv4 remove zero number of fs_locations entries error check
+ - NFSv4 expose nfs_parse_server_name function
+ - NFSv4 handle port presence in fs_location server string
+ - [x86] perf: Avoid warning for Arch LBR without XSAVE
+ - drm: panel-orientation-quirks: Add quirk for the 1Netbook OneXPlayer
+ - net: sched: Clarify error message when qdisc kind is unknown
+ - [powerpc*] fixmap: Fix VM debug warning on unmap
+ - scsi: target: iscsi: Make sure the np under each tpg is unique
+ - scsi: qedf: Add stag_work to all the vports
+ - scsi: qedf: Fix refcount issue when LOGO is received during TMF
+ - scsi: pm8001: Fix bogus FW crash for maxcpus=1
+ - scsi: ufs: Treat link loss as fatal error
+ - scsi: myrs: Fix crash in error case
+ - PM: hibernate: Remove register_nosave_region_late()
+ - [arm*] usb: dwc2: gadget: don't try to disable ep0 in dwc2_hsotg_suspend
+ - perf: Always wake the parent event
+ - nvme-pci: add the IGNORE_DEV_SUBNQN quirk for Intel P4500/P4600 SSDs
+ - [arm64,armhf] net: stmmac: dwmac-sun8i: use return val of
+ readl_poll_timeout()
+ - KVM: eventfd: Fix false positive RCU usage warning
+ - [x86] KVM: nVMX: eVMCS: Filter out VM_EXIT_SAVE_VMX_PREEMPTION_TIMER
+ - [x86] KVM: nVMX: Also filter MSR_IA32_VMX_TRUE_PINBASED_CTLS when eVMCS
+ - [x86] KVM: SVM: Don't kill SEV guest if SMAP erratum triggers in usermode
+ - [x86] KVM: VMX: Set vmcs.PENDING_DBG.BS on #DB in STI/MOVSS blocking
+ shadow
+ - nvme-tcp: fix bogus request completion when failing to send AER
+ - [arm64] ACPI/IORT: Check node revision for PMCG resources
+ - PM: s2idle: ACPI: Fix wakeup interrupts handling
+ - [arm64,armhf] drm/rockchip: vop: Correct RK3399 VOP register fields
+ - [armhf] ARM: dts: Fix timer regression for beagleboard revision c
+ - usb: f_fs: Fix use-after-free for epfile
+ - [arm*] drm/vc4: hdmi: Allow DBLCLK modes even if horz timing is odd.
+ - netfilter: ctnetlink: disable helper autoassign
+ - ixgbevf: Require large buffers for build_skb on 82599VF
+ - [arm64,armhf] drm/panel: simple: Assign data from panel_dpi_probe()
+ correctly
+ - ACPI: PM: s2idle: Cancel wakeup before dispatching EC GPE
+ - bonding: pair enable_port with slave_arr_updates
+ - [arm64,armhf] net: dsa: mv88e6xxx: don't use devres for mdiobus
+ - [armhf] net: dsa: bcm_sf2: don't use devres for mdiobus
+ - [arm64] net: dsa: felix: don't use devres for mdiobus
+ - ipmr,ip6mr: acquire RTNL before calling ip[6]mr_free_table() on failure
+ path
+ - nfp: flower: fix ida_idx not being released
+ - net: do not keep the dst cache when uncloning an skb dst and its metadata
+ - net: fix a memleak when uncloning an skb dst and its metadata
+ - veth: fix races around rq->rx_notify_masked
+ - [armhf] net: mdio: aspeed: Add missing MODULE_DEVICE_TABLE
+ - tipc: rate limit warning for received illegal binding update
+ - [amd64,arm64] net: amd-xgbe: disable interrupts during pci removal
+ - [arm64] dpaa2-eth: unregister the netdev before disconnecting from the PHY
+ - ice: fix an error code in ice_cfg_phy_fec()
+ - ice: fix IPIP and SIT TSO offload
+ - [arm64] net: mscc: ocelot: fix mutex lock error during ethtool stats read
+ - [arm64,armhf] net: dsa: mv88e6xxx: fix use-after-free in
+ mv88e6xxx_mdios_unregister
+ - vt_ioctl: fix array_index_nospec in vt_setactivate
+ - vt_ioctl: add array_index_nospec to VT_ACTIVATE
+ - n_tty: wake up poll(POLLRDNORM) on receiving data
+ - eeprom: ee1004: limit i2c reads to I2C_SMBUS_BLOCK_MAX
+ - [arm*] usb: dwc2: drd: fix soft connect when gadget is unconfigured
+ - [arm*] Revert "usb: dwc2: drd: fix soft connect when gadget is
+ unconfigured"
+ - net: usb: ax88179_178a: Fix out-of-bounds accesses in RX fixup
+ - [arm64,armhf] usb: ulpi: Move of_node_put to ulpi_dev_release
+ - [arm64,armhf] usb: ulpi: Call of_node_put correctly
+ - [arm64,armhf] usb: dwc3: gadget: Prevent core from processing stale TRBs
+ - usb: gadget: f_uac2: Define specific wTerminalType
+ - USB: serial: ftdi_sio: add support for Brainboxes US-159/235/320
+ - USB: serial: option: add ZTE MF286D modem
+ - USB: serial: ch341: add support for GW Instek USB2.0-Serial devices
+ - USB: serial: cp210x: add NCR Retail IO box id
+ - USB: serial: cp210x: add CPI Bulk Coin Recycler id
+ - speakup-dectlk: Restore pitch setting
+ - [x86] hwmon: (dell-smm) Speed up setting of fan speed
+ - can: isotp: fix error path in isotp_sendmsg() to unlock wait queue
+ - scsi: lpfc: Remove NVMe support if kernel has NVME_FC disabled
+ - scsi: lpfc: Reduce log messages seen after firmware download
+ - perf: Fix list corruption in perf_cgroup_switch()
+ - iommu: Fix potential use-after-free during probe
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.102
+ - drm/nouveau/pmu/gm200-: use alternate falcon reset sequence
+ - mm: memcg: synchronize objcg lists with a dedicated spinlock
+ - rcu: Do not report strict GPs for outgoing CPUs
+ - fget: clarify and improve __fget_files() implementation
+ - fs/proc: task_mmu.c: don't read mapcount for migration entry
+ - can: isotp: prevent race between isotp_bind() and isotp_setsockopt()
+ - can: isotp: add SF_BROADCAST support for functional addressing
+ - scsi: lpfc: Fix mailbox command failure during driver initialization
+ - HID:Add support for UGTABLET WP5540
+ - [x86] Revert "svm: Add warning message for AVIC IPI invalid target"
+ - mmc: block: fix read single on recovery logic
+ - mm: don't try to NUMA-migrate COW pages that have other uses
+ - [amd64] PCI: hv: Fix NUMA node assignment when kernel boots with custom
+ NUMA topology
+ - btrfs: send: in case of IO error log it
+ - net: ieee802154: at86rf230: Stop leaking skb's
+ - ax25: improve the incomplete fix to avoid UAF and NPD bugs
+ - vfs: make freeze_super abort when sync_filesystem returns error
+ - quota: make dquot_quota_sync return errors from ->sync_fs
+ - scsi: pm8001: Fix use-after-free for aborted TMF sas_task
+ - scsi: pm8001: Fix use-after-free for aborted SSP/STP sas_task
+ - nvme: fix a possible use-after-free in controller reset during load
+ - nvme-tcp: fix possible use-after-free in transport error_recovery work
+ - nvme-rdma: fix possible use-after-free in transport error_recovery work
+ - drm/amdgpu: fix logic inversion in check
+ - [amd64] x86/Xen: streamline (and fix) PV CPU enumeration
+ - Revert "module, async: async_synchronize_full() on module init iff async
+ is used"
+ - random: wake up /dev/random writers after zap
+ - iwlwifi: fix use-after-free
+ - drm/radeon: Fix backlight control on iMac 12,1
+ - [x86] drm/i915/opregion: check port number bounds for SWSCI display power
+ state
+ - vsock: remove vsock from connected table when connect is interrupted by a
+ signal
+ - [x86] drm/i915/gvt: Make DRM_I915_GVT depend on X86
+ - iwlwifi: pcie: fix locking when "HW not ready"
+ - iwlwifi: pcie: gen2: fix locking when "HW not ready"
+ - netfilter: nft_synproxy: unregister hooks on init error path
+ - ipv6: per-netns exclusive flowlabel checks
+ - net: dsa: lantiq_gswip: fix use after free in gswip_remove()
+ - ping: fix the dif and sdif check in ping_lookup
+ - bonding: force carrier update when releasing slave
+ - drop_monitor: fix data-race in dropmon_net_event / trace_napi_poll_hit
+ - net_sched: add __rcu annotation to netdev->qdisc
+ - bonding: fix data-races around agg_select_timer
+ - libsubcmd: Fix use-after-free for realloc(..., 0)
+ - [arm64] dpaa2-eth: Initialize mutex used in one step timestamping path
+ - ALSA: hda/realtek: Add quirk for Legion Y9000X 2019
+ - ALSA: hda/realtek: Fix deadlock by COEF mutex
+ - ALSA: hda: Fix regression on forced probe mask option
+ - ALSA: hda: Fix missing codec probe on Shenker Dock 15
+ - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw()
+ - ASoC: ops: Fix stereo change notifications in snd_soc_put_volsw_range()
+ - [powerpc*[ lib/sstep: fix 'ptesync' build error
+ - [armhf] mtd: rawnand: gpmi: don't leak PM reference in error path
+ - [x86] KVM: SVM: Never reject emulation due to SMAP errata for !SEV guests
+ (CVE-2020-36310)
+ - block/wbt: fix negative inflight counter when remove scsi device
+ - NFS: LOOKUP_DIRECTORY is also ok with symlinks
+ - NFS: Do not report writeback errors in nfs_getattr()
+ - tty: n_tty: do not look ahead for EOL character past the end of the buffer
+ - [x86] Drivers: hv: vmbus: Fix memory leak in vmbus_add_channel_kobj
+ - [x86] KVM: x86/pmu: Refactoring find_arch_event() to pmc_perf_hw_id()
+ - [x86] KVM: x86/pmu: Don't truncate the PerfEvtSeln MSR when creating a
+ perf event
+ - [x86] KVM: x86/pmu: Use AMD64_RAW_EVENT_MASK for PERF_TYPE_RAW
+ - NFS: Don't set NFS_INO_INVALID_XATTR if there is no xattr cache
+ - [armhf] OMAP2+: hwmod: Add of_node_put() before break
+ - [armhf] OMAP2+: adjust the location of put_device() call in
+ omapdss_init_of
+ - netfilter: conntrack: don't refresh sctp entries in closed state
+ - kconfig: let 'shell' return enough output for deep path names
+ - ata: libata-core: Disable TRIM on M88V29
+ - [armhf] soc: aspeed: lpc-ctrl: Block error printing on probe defer cases
+ - xprtrdma: fix pointer derefs in error cases of rpcrdma_ep_create
+ - [arm64,armhf] drm/rockchip: dw_hdmi: Do not leave clock enabled in error
+ case
+ - tracing: Fix tp_printk option related with tp_printk_stop_on_boot
+ - net: usb: qmi_wwan: Add support for Dell DW5829e
+ - [arm64] net: macb: Align the dma and coherent dma masks
+ - kconfig: fix failing to generate auto.conf
+ - scsi: lpfc: Fix pt2pt NVMe PRLI reject LOGO loop
+ - EDAC: Fix calculation of returned address and next offset in
+ edac_align_ptr()
+ - net: sched: limit TC_ACT_REPEAT loops
+ - [armhf] dmaengine: stm32-dmamux: Fix PM disable depth imbalance in
+ stm32_dmamux_probe
+ - copy_process(): Move fd_install() out of sighand->siglock critical section
+ - [arm*] i2c: brcmstb: fix support for DSL and CM variants
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.103
+ - cgroup/cpuset: Fix a race between cpuset_attach() and cpu hotplug
+ - btrfs: tree-checker: check item_size for inode_item
+ - btrfs: tree-checker: check item_size for dev_item
+ - vhost/vsock: don't check owner in vhost_vsock_stop() while releasing
+ - [x86] KVM: x86/mmu: make apf token non-zero to fix bug
+ - drm/amdgpu: disable MMHUB PG for Picasso
+ - [x86] drm/i915: Correctly populate use_sagv_wm for all pipes
+ - sr9700: sanity check for packet length
+ - USB: zaurus: support another broken Zaurus
+ - CDC-NCM: avoid overflow in sanity checking
+ - netfilter: nf_tables_offload: incorrect flow offload action array size
+ (CVE-2022-25636)
+ - [x86] fpu: Correct pkru/xstate inconsistency
+ - [arm64] tee: export teedev_open() and teedev_close_context()
+ - [arm64] optee: use driver internal tee_context for some rpc
+ - ping: remove pr_err from ping_lookup
+ - perf data: Fix double free in perf_session__delete()
+ - bnx2x: fix driver load from initrd
+ - bnxt_en: Fix active FEC reporting to ethtool
+ - hwmon: Handle failure to register sensor with thermal zone correctly
+ - bpf: Do not try bpf_msg_push_data with len 0
+ - bpf: Add schedule points in batch ops
+ - io_uring: add a schedule point in io_add_buffers()
+ - net: __pskb_pull_tail() & pskb_carve_frag_list() drop_monitor friends
+ - tipc: Fix end of loop tests for list_for_each_entry()
+ - gso: do not skip outer ip header in case of ipip and net_failover
+ - openvswitch: Fix setting ipv6 fields causing hw csum failure
+ - drm/edid: Always set RGB444
+ - net/mlx5e: Fix wrong return value on ioctl EEPROM query failure
+ - net/sched: act_ct: Fix flow table lookup after ct clear or switching zones
+ - net: Force inlining of checksum functions in net/checksum.h
+ - nfp: flower: Fix a potential leak in nfp_tunnel_add_shared_mac()
+ - netfilter: nf_tables: fix memory leak during stateful obj update
+ - net/smc: Use a mutex for locking "struct smc_pnettable"
+ - udp_tunnel: Fix end of loop test in udp_tunnel_nic_unregister()
+ - net/mlx5: Fix possible deadlock on rule deletion
+ - net/mlx5: Fix wrong limitation of metadata match on ecpf
+ - net/mlx5e: kTLS, Use CHECKSUM_UNNECESSARY for device-offloaded packets
+ - regmap-irq: Update interrupt clear register for proper reset
+ - configfs: fix a race in configfs_{,un}register_subsystem()
+ - RDMA/ib_srp: Fix a deadlock
+ - tracing: Have traceon and traceoff trigger honor the instance
+ - iio: adc: ad7124: fix mask used for setting AIN_BUFP & AIN_BUFM bits
+ - iio: imu: st_lsm6dsx: wait for settling time in st_lsm6dsx_read_oneshot
+ - iio: Fix error handling for PM
+ - ata: pata_hpt37x: disable primary channel on HPT371
+ - Revert "USB: serial: ch341: add new Product ID for CH341A"
+ - usb: gadget: rndis: add spinlock for rndis response list
+ - tracefs: Set the group ownership in apply_options() not parse_options()
+ - USB: serial: option: add support for DW5829e
+ - USB: serial: option: add Telit LE910R1 compositions
+ - [arm*] usb: dwc2: drd: fix soft connect when gadget is unconfigured
+ - [arm64] usb: dwc3: pci: Fix Bay Trail phy GPIO mappings
+ - [arm64,armhf] usb: dwc3: gadget: Let the interrupt handler disable bottom
+ halves.
+ - xhci: re-initialize the HC during resume if HCE was set
+ - xhci: Prevent futile URB re-submissions due to incorrect return value.
+ - driver core: Free DMA range map when device is released
+ - RDMA/cma: Do not change route.addr.src_addr outside state checks
+ - [x86] thermal: int340x: fix memory leak in int3400_notify()
+ - tty: n_gsm: fix encoding of control signal octet bit DV
+ - tty: n_gsm: fix proper link termination after failed open
+ - tty: n_gsm: fix NULL pointer access due to DLCI release
+ - tty: n_gsm: fix wrong tty control line for flow control
+ - tty: n_gsm: fix deadlock in gsmtty_open()
+ - memblock: use kfree() to release kmalloced memblock regions
+
+ [ Salvatore Bonaccorso ]
+ * Refresh "Makefile: Do not check for libelf when building OOT module"
+ * Bump ABI to 12
+ * Refresh "firmware: Remove redundant log messages from drivers"
+ * [rt] Refresh "locking/rtmutex: add sleeping lock implementation"
+ * [rt] Refresh "cpuset: Convert callback_lock to raw_spinlock_t"
+ * [rt] Update to 5.10.100-rt62
+ * Mitigate Spectre v2-type Branch History Buffer attacks (CVE-2022-0001,
+ CVE-2022-0002)
+ - [x86] bugs: Unconditionally allow spectre_v2=retpoline,amd
+ - [x86] speculation: Rename RETPOLINE_AMD to RETPOLINE_LFENCE
+ - [x86] speculation: Add eIBRS + Retpoline options
+ - Documentation/hw-vuln: Update spectre doc
+ - [x86] speculation: Include unprivileged eBPF status in Spectre v2
+ mitigation reporting
+ - [x86] speculation: Use generic retpoline by default on AMD
+ - [x86] speculation: Update link to AMD speculation whitepaper
+ - [x86] speculation: Warn about Spectre v2 LFENCE mitigation
+ - [x86] speculation: Warn about eIBRS + LFENCE + Unprivileged eBPF + SMT
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Mon, 07 Mar 2022 22:06:21 +0100
+
+linux (5.10.92-2) bullseye-security; urgency=high
+
+ * lib/iov_iter: initialize "flags" in new pipe_buffer
+ * [x86] mwifiex: Fix skb_over_panic in mwifiex_usb_recv() (CVE-2021-43976)
+ * [x86] drm/i915: Flush TLBs before releasing backing store (CVE-2022-0330)
+ * [x86] drm/vmwgfx: Fix stale file descriptors on failed usercopy
+ (CVE-2022-22942)
+ * NFSv4: Handle case where the lookup of a directory fails (CVE-2022-24448)
+ * yam: fix a memory leak in yam_siocdevprivate() (CVE-2022-24959)
+ * tipc: improve size validations for received domain records (CVE-2022-0435)
+ * [s390x] KVM: s390: Return error on SIDA memop on normal guest
+ (CVE-2022-0516)
+ * USB: gadget: validate interface OS descriptor requests (CVE-2022-25258)
+ * usb: gadget: rndis: check size of RNDIS_MSG_SET command (CVE-2022-25375)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Mon, 28 Feb 2022 12:23:03 +0100
+
+linux (5.10.92-1) bullseye-security; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.85
+ - usb: gadget: uvc: fix multiple opens
+ - gcc-plugins: simplify GCC plugin-dev capability test
+ - gcc-plugins: fix gcc 11 indigestion with plugins...
+ - HID: quirks: Add quirk for the Microsoft Surface 3 type-cover
+ - HID: add hid_is_usb() function to make it simpler for USB detection
+ - HID: bigbenff: prevent null pointer dereference
+ - HID: wacom: fix problems when device is not a valid USB device
+ - HID: check for valid USB device for many HID drivers
+ - [amd64] nft_set_pipapo: Fix bucket load in AVX2 lookup routine for six
+ 8-bit groups
+ - [amd64] IB/hfi1: Insure use of smp_processor_id() is preempt disabled
+ - [amd64] IB/hfi1: Fix early init panic
+ - [amd64] IB/hfi1: Fix leak of rcvhdrtail_dummy_kvaddr
+ - can: kvaser_usb: get CAN clock frequency from device
+ - [x86] can: sja1000: fix use after free in ems_pcmcia_add_card()
+ - drm/amdgpu: move iommu_resume before ip init/resume
+ - drm/amdgpu: init iommu after amdkfd device init
+ - nfc: fix potential NULL pointer deref in nfc_genl_dump_ses_done
+ - vrf: don't run conntrack on vrf with !dflt qdisc
+ - bpf, x86: Fix "no previous prototype" warning
+ - bpf: Fix the off-by-two error in range markings
+ - ice: ignore dropped packets during init
+ - bonding: make tx_rebalance_counter an atomic
+ - nfp: Fix memory leak in nfp_cpp_area_cache_add()
+ - seg6: fix the iif in the IPv6 socket control block
+ - udp: using datalen to cap max gso segments
+ - netfilter: conntrack: annotate data-races around ct->timeout
+ - iavf: restore MSI state on reset
+ - iavf: Fix reporting when setting descriptor count
+ - [amd64] IB/hfi1: Correct guard on eager buffer deallocation
+ - devlink: fix netns refcount leak in devlink_nl_cmd_reload()
+ - net/sched: fq_pie: prevent dismantle issue
+ - [x86] KVM: x86: Wait for IPIs to be delivered when handling Hyper-V TLB
+ flush hypercall
+ - mm: bdi: initialize bdi_min_ratio when bdi is unregistered
+ - ALSA: hda/realtek - Add headset Mic support for Lenovo ALC897 platform
+ - ALSA: hda/realtek: Fix quirk for TongFang PHxTxX1
+ - ALSA: pcm: oss: Fix negative period/buffer sizes
+ - ALSA: pcm: oss: Limit the period size to 16MB
+ - ALSA: pcm: oss: Handle missing errors in snd_pcm_oss_change_params*()
+ - scsi: qla2xxx: Format log strings only if needed
+ - btrfs: clear extent buffer uptodate when we fail to write it
+ - btrfs: replace the BUG_ON in btrfs_del_root_ref with proper error handling
+ - md: fix update super 1.0 on rdev size change
+ - nfsd: fix use-after-free due to delegation race (Closes: #988044)
+ - nfsd: Fix nsfd startup race (again)
+ - tracefs: Have new files inherit the ownership of their parent
+ - [arm64] clk: qcom: regmap-mux: fix parent clock lookup
+ - drm/syncobj: Deal with signalled fences in drm_syncobj_find_fence.
+ - [i386] can: pch_can: pch_can_rx_normal: fix use after free
+ - libata: add horkage for ASMedia 1092
+ - wait: add wake_up_pollfree()
+ - binder: use wake_up_pollfree()
+ - signalfd: use wake_up_pollfree()
+ - aio: keep poll requests on waitqueue until completed
+ - aio: fix use-after-free due to missing POLLFREE handling
+ - [arm64,armhf] net: mvpp2: fix XDP rx queues registering
+ - tracefs: Set all files to the same group ownership as the mount option
+ - block: fix ioprio_get(IOPRIO_WHO_PGRP) vs setuid(2)
+ - scsi: pm80xx: Do not call scsi_remove_host() in pm8001_alloc()
+ - scsi: scsi_debug: Fix buffer size of REPORT ZONES command
+ - qede: validate non LSO skb length
+ - PM: runtime: Fix pm_runtime_active() kerneldoc comment
+ - ASoC: rt5682: Fix crash due to out of scope stack vars
+ - [arm64] RDMA/hns: Do not halt commands during reset until later
+ - [arm64] RDMA/hns: Do not destroy QP resources in the hw resetting phase
+ - i40e: Fix failed opcode appearing if handling messages from VF
+ - i40e: Fix pre-set max number of queues for VF
+ - i40e: Fix NULL pointer dereference in i40e_dbg_dump_desc
+ - [arm64] Revert "PCI: aardvark: Fix support for PCI_ROM_ADDRESS1 on
+ emulated bridge"
+ - Documentation/locking/locktypes: Update migrate_disable() bits.
+ - dt-bindings: net: Reintroduce PHY no lane swap binding
+ - net: cdc_ncm: Allow for dwNtbOutMaxSize to be unset or zero
+ - [arm64,armhf] net: fec: only clear interrupt of handling queue in
+ fec_enet_rx_queue()
+ - net, neigh: clear whole pneigh_entry at alloc time
+ - net/qla3xxx: fix an error code in ql_adapter_up()
+ - USB: gadget: detect too-big endpoint 0 requests (CVE-2021-39685)
+ - USB: gadget: zero allocate endpoint 0 buffers (CVE-2021-39685)
+ - usb: core: config: fix validation of wMaxPacketValue entries
+ - xhci: Remove CONFIG_USB_DEFAULT_PERSIST to prevent xHCI from runtime
+ suspending
+ - usb: core: config: using bit mask instead of individual bits
+ - xhci: avoid race between disable slot command and host runtime suspend
+ - iio: gyro: adxrs290: fix data signedness
+ - iio: trigger: Fix reference counting
+ - iio: stk3310: Don't return error code in interrupt handler
+ - iio: mma8452: Fix trigger reference couting
+ - iio: ltr501: Don't return error code in trigger handler
+ - iio: kxsd9: Don't return error code in trigger handler
+ - iio: itg3200: Call iio_trigger_notify_done() on error
+ - iio: adc: axp20x_adc: fix charging current reporting on AXP22x
+ - iio: ad7768-1: Call iio_trigger_notify_done() on error
+ - iio: accel: kxcjk-1013: Fix possible memory leak in probe and remove
+ - [armhf] irqchip/aspeed-scu: Replace update_bits with write_bits.
+ - [armhf] irqchip/armada-370-xp: Fix return value of
+ armada_370_xp_msi_alloc()
+ - [armhf] irqchip/armada-370-xp: Fix support for Multi-MSI interrupts
+ - [arm64,armhf] irqchip/irq-gic-v3-its.c: Force synchronisation when issuing
+ INVALL
+ - kbuild: simplify GCC_PLUGINS enablement in dummy-tools/gcc
+ - doc: gcc-plugins: update gcc-plugins.rst
+ - MAINTAINERS: adjust GCC PLUGINS after gcc-plugin.sh removal
+ - Documentation/Kbuild: Remove references to gcc-plugin.sh
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.86
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.87
+ - nfc: fix segfault in nfc_genl_dump_devices_done
+ - [arm64] drm/msm/dsi: set default num_data_lanes
+ - [arm64] KVM: arm64: Save PSTATE early on exit
+ - [arm64] Revert "tty: serial: fsl_lpuart: drop earlycon entry for i.MX8QXP"
+ - net/mlx4_en: Update reported link modes for 1/10G
+ - ALSA: hda: Add Intel DG2 PCI ID and HDMI codec vid
+ - ALSA: hda/hdmi: fix HDA codec entry table order for ADL-P
+ - [arm64,armhf] i2c: rk3x: Handle a spurious start completion interrupt flag
+ - net: netlink: af_netlink: Prevent empty skb by adding a check on len.
+ - [x86] KVM: x86: Ignore sparse banks size for an "all CPUs", non-sparse IPI
+ req
+ - bpf: Fix integer overflow in argument calculation for bpf_map_area_alloc
+ - fuse: make sure reclaim doesn't write the inode
+ - [x86] hwmon: (dell-smm) Fix warning on /proc/i8k creation error
+ - ethtool: do not perform operations on net devices being unregistered
+ - [armel,armhf] memblock: free_unused_memmap: use pageblock units instead of
+ MAX_ORDER
+ - [armel,armhf] memblock: align freed memory map on pageblock boundaries
+ with SPARSEMEM
+ - memblock: ensure there is no overflow in memblock_overlaps_region()
+ - [armel,armhf] arm: extend pfn_valid to take into account freed memory map
+ alignment
+ - [armel,armhf] arm: ioremap: don't abuse pfn_valid() to check if pfn is in
+ RAM
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.88
+ - KVM: downgrade two BUG_ONs to WARN_ON_ONCE
+ - mac80211: fix regression in SSN handling of addba tx
+ - mac80211: mark TX-during-stop for TX in in_reconfig
+ - mac80211: send ADDBA requests using the tid/queue of the aggregation
+ session
+ - mac80211: validate extended element ID is present
+ - bpf: Fix signed bounds propagation after mov32
+ - bpf: Make 32->64 bounds propagation slightly more robust
+ - virtio_ring: Fix querying of maximum DMA mapping size for virtio device
+ - dm btree remove: fix use after free in rebalance_children()
+ - audit: improve robustness of the audit queue handling
+ - [arm64] dts: imx8mp-evk: Improve the Ethernet PHY description
+ - [arm64] dts: rockchip: fix rk3308-roc-cc vcc-sd supply
+ - [arm64] dts: rockchip: fix rk3399-leez-p710 vcc3v3-lan supply
+ - mac80211: track only QoS data frames for admission control
+ - ceph: fix duplicate increment of opened_inodes metric
+ - ceph: initialize pathlen variable in reconnect_caps_cb
+ - [armhf] socfpga: dts: fix qspi node compatible
+ - clk: Don't parent clks until the parent is fully registered
+ - [armhf] soc: imx: Register SoC device only on i.MX boards
+ - virtio/vsock: fix the transport to work with VMADDR_CID_ANY
+ - [s390x] kexec_file: fix error handling when applying relocations
+ - sch_cake: do not call cake_destroy() from cake_init()
+ - inet_diag: fix kernel-infoleak for UDP sockets
+ - [arm64] net: hns3: fix use-after-free bug in hclgevf_send_mbx_msg
+ - net/sched: sch_ets: don't remove idle classes from the round-robin list
+ - drm/ast: potential dereference of null pointer
+ - mac80211: agg-tx: don't schedule_and_wake_txq() under sta->lock
+ - mac80211: fix lookup when adding AddBA extension element
+ - flow_offload: return EOPNOTSUPP for the unsupported mpls action type
+ - rds: memory leak in __rds_conn_create() (CVE-2021-45480)
+ - [arm64,armhf] soc/tegra: fuse: Fix bitwise vs. logical OR warning
+ - igb: Fix removal of unicast MAC filters of VFs
+ - igbvf: fix double free in `igbvf_probe`
+ - igc: Fix typo in i225 LTR functions
+ - ixgbe: Document how to enable NBASE-T support
+ - ixgbe: set X550 MDIO speed before talking to PHY
+ - netdevsim: Zero-initialize memory for new map's value in function
+ nsim_bpf_map_alloc (CVE-2021-4135)
+ - net/packet: rx_owner_map depends on pg_vec
+ - sfc_ef100: potential dereference of null pointer
+ - net: Fix double 0x prefix print in SKB dump
+ - net/smc: Prevent smc_release() from long blocking
+ - sit: do not call ipip6_dev_free() from sit_init_net()
+ - USB: gadget: bRequestType is a bitfield, not a enum
+ - Revert "usb: early: convert to readl_poll_timeout_atomic()"
+ - [x86] KVM: x86: Drop guest CPUID check for host initiated writes to
+ MSR_IA32_PERF_CAPABILITIES
+ - [x86] tty: n_hdlc: make n_hdlc_tty_wakeup() asynchronous
+ - USB: NO_LPM quirk Lenovo USB-C to Ethernet Adapher(RTL8153-04)
+ - [arm*] usb: dwc2: fix STM ID/VBUS detection startup delay in
+ dwc2_driver_probe
+ - PCI/MSI: Clear PCI_MSIX_FLAGS_MASKALL on error
+ - PCI/MSI: Mask MSI-X vectors only on success
+ - usb: xhci: Extend support for runtime power management for AMD's Yellow
+ carp.
+ - USB: serial: cp210x: fix CP2105 GPIO registration
+ - USB: serial: option: add Telit FN990 compositions
+ - btrfs: fix memory leak in __add_inode_ref()
+ - btrfs: fix double free of anon_dev after failure to create subvolume
+ - zonefs: add MODULE_ALIAS_FS
+ - iocost: Fix divide-by-zero on donation from low hweight cgroup
+ - [x86] serial: 8250_fintek: Fix garbled text for console
+ - timekeeping: Really make sure wall_to_monotonic isn't positive
+ - libata: if T_LENGTH is zero, dma direction should be DMA_NONE
+ - drm/amdgpu: correct register access for RLC_JUMP_TABLE_RESTORE
+ - Input: touchscreen - avoid bitwise vs logical OR warning
+ - xsk: Do not sleep in poll() when need_wakeup set
+ - media: mxl111sf: change mutex_init() location
+ - fuse: annotate lock in fuse_reverse_inval_entry()
+ - ovl: fix warning in ovl_create_real()
+ - scsi: scsi_debug: Don't call kcalloc() if size arg is zero
+ - scsi: scsi_debug: Fix type in min_t to avoid stack OOB
+ - scsi: scsi_debug: Sanity check block descriptor length in
+ resp_mode_select()
+ - rcu: Mark accesses to rcu_state.n_force_qs
+ - [armhf] bus: ti-sysc: Fix variable set but not used warning for
+ reinit_modules
+ - Revert "xsk: Do not sleep in poll() when need_wakeup set"
+ - xen/blkfront: harden blkfront against event channel storms
+ (CVE-2021-28711)
+ - xen/netfront: harden netfront against event channel storms
+ (CVE-2021-28712)
+ - xen/console: harden hvc_xen against event channel storms (CVE-2021-28713)
+ - xen/netback: fix rx queue stall detection (CVE-2021-28714)
+ - xen/netback: don't queue unlimited number of packages (CVE-2021-28715)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.89
+ - net: usb: lan78xx: add Allied Telesis AT29M2-AF
+ - ext4: prevent partial update of the extent blocks
+ - ext4: check for out-of-order index extents in ext4_valid_extent_entries()
+ - ext4: check for inconsistent extents between index and leaf block
+ - HID: holtek: fix mouse probing
+ - [arm64] dts: allwinner: orangepi-zero-plus: fix PHY mode
+ - [arm64] spi: change clk_disable_unprepare to clk_unprepare
+ - [amd64] IB/qib: Fix memory leak in qib_user_sdma_queue_pkts()
+ - [arm64] RDMA/hns: Replace kfree() with kvfree()
+ - netfilter: fix regression in looped (broad|multi)cast's MAC handling
+ - qlcnic: potential dereference null pointer of rx_queue->page_ring
+ - net: accept UFOv6 packages in virtio_net_hdr_to_skb
+ - net: skip virtio_net_hdr_set_proto if protocol already set
+ - igb: fix deadlock caused by taking RTNL in RPM resume path
+ - ipmi: Fix UAF when uninstall ipmi_si and ipmi_msghandler module
+ - bonding: fix ad_actor_system option setting to default
+ - [amd64] fjes: Check for error irq
+ - [armhf] drivers: net: smc911x: Check for error irq
+ - sfc: Check null pointer of rx_queue->page_ring
+ - sfc: falcon: Check null pointer of rx_queue->page_ring
+ - Input: elantech - fix stack out of bound access in
+ elantech_change_report_id()
+ - [arm*] pinctrl: bcm2835: Change init order for gpio hogs
+ - hwmon: (lm90) Fix usage of CONFIG2 register in detect function
+ - hwmon: (lm90) Add basic support for TI TMP461
+ - hwmon: (lm90) Introduce flag indicating extended temperature support
+ - hwmon: (lm90) Drop critical attribute support for MAX6654
+ - ALSA: jack: Check the return value of kstrdup()
+ - ALSA: drivers: opl3: Fix incorrect use of vp->state
+ - ALSA: hda/realtek: Amp init fixup for HP ZBook 15 G6
+ - ALSA: hda/realtek: Add new alc285-hp-amp-init model
+ - ALSA: hda/realtek: Fix quirk for Clevo NJ51CU
+ - Input: atmel_mxt_ts - fix double free in mxt_read_info_block
+ - ipmi: bail out if init_srcu_struct fails
+ - ipmi: ssif: initialize ssif_info->client early
+ - ipmi: fix initialization when workqueue allocation fails
+ - [arm64] tee: handle lookup of shm with reference count 0
+ - [x86] pkey: Fix undefined behaviour with PKRU_WD_BIT
+ - [x86] platform/x86: intel_pmc_core: fix memleak on registration failure
+ - [x86] KVM: VMX: Wake vCPU when delivering posted IRQ even if vCPU == this
+ vCPU
+ - [armhf] pinctrl: stm32: consider the GPIO offset to expose all the GPIO
+ lines
+ - [arm64,armhf] mmc: sdhci-tegra: Fix switch to HS400ES mode
+ - mmc: core: Disable card detect during shutdown
+ - [arm64,armhf] mmc: mmci: stm32: clear DLYB_CR after sending tuning command
+ - [armel,armhf] 9169/1: entry: fix Thumb2 bug in iWMMXt exception handling
+ - mac80211: fix locking in ieee80211_start_ap error path
+ - mm/hwpoison: clear MF_COUNT_INCREASED before retrying get_any_page()
+ - [arm64] tee: optee: Fix incorrect page free bug
+ - f2fs: fix to do sanity check on last xattr entry in __f2fs_setxattr()
+ (CVE-2021-45469)
+ - ceph: fix up non-directory creation in SGID directories
+ - usb: gadget: u_ether: fix race in setting MAC address in setup phase
+ - [x86] KVM: VMX: Fix stale docs for kvm-intel.emulate_invalid_guest_state
+ - mm: mempolicy: fix THP allocations escaping mempolicy restrictions
+ - [arm64] Input: elants_i2c - do not check Remark ID on eKTH3900/eKTH5312
+ - Input: goodix - add id->model mapping for the "9111" model
+ - ASoC: rt5682: fix the wrong jack type detected
+ - hwmom: (lm90) Fix citical alarm status for MAX6680/MAX6681
+ - hwmon: (lm90) Do not report 'busy' status bit as alarm
+ - ax25: NPD bug when detaching AX25 device
+ - hamradio: defer ax25 kfree after unregister_netdev
+ - hamradio: improve the incomplete fix to avoid NPD
+ - phonet/pep: refuse to enable an unbound pipe
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.90
+ - Input: i8042 - add deferred probe support
+ - Input: i8042 - enable deferred probe quirk for ASUS UM325UA
+ - tomoyo: Check exceeded quota early in tomoyo_domain_quota_is_ok().
+ - tomoyo: use hwight16() in tomoyo_domain_quota_is_ok()
+ - [x86] platform/x86: apple-gmux: use resource_size() with res
+ - memblock: fix memblock_phys_alloc() section mismatch error
+ - selinux: initialize proto variable in selinux_ip_postroute_compat()
+ - scsi: lpfc: Terminate string in lpfc_debugfs_nvmeio_trc_write()
+ - net/mlx5: DR, Fix NULL vs IS_ERR checking in dr_domain_init_resources
+ - net/mlx5e: Wrap the tx reporter dump callback to extract the sq
+ - net/mlx5e: Fix ICOSQ recovery flow for XSK
+ - udp: using datalen to cap ipv6 udp max gso segments
+ - sctp: use call_rcu to free endpoint
+ - net/smc: fix using of uninitialized completions
+ - net: usb: pegasus: Do not drop long Ethernet frames
+ - net/smc: improved fix wait on already cleared link
+ - net/smc: don't send CDC/LLC message if link not ready
+ - net/smc: fix kernel panic caused by race of smc_sock
+ - igc: Fix TX timestamp support for non-MSI-X platforms
+ - net/mlx5e: Fix wrong features assignment in case of error
+ - [armhf] net/ncsi: check for error return from call to nla_put_u32
+ - i2c: validate user data in compat ioctl
+ - nfc: uapi: use kernel size_t to fix user-space builds
+ - uapi: fix linux/nfc.h userspace compilation errors
+ - drm/amdgpu: When the VCN(1.0) block is suspended, powergating is
+ explicitly enabled
+ - drm/amdgpu: add support for IP discovery gc_info table v2
+ - xhci: Fresco FL1100 controller should not have BROKEN_MSI quirk set.
+ - usb: gadget: f_fs: Clear ffs_eventfd in ffs_data_clear.
+ - [arm*] binder: fix async_free_space accounting for empty parcels
+ - [x86] scsi: vmw_pvscsi: Set residual data length conditionally
+ - Input: appletouch - initialize work before device registration
+ - Input: spaceball - fix parsing of movement data packets
+ - net: fix use-after-free in tw_timer_handler
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.91
+ - f2fs: quota: fix potential deadlock
+ - tracing: Fix check for trace_percpu_buffer validity in get_trace_buf()
+ - tracing: Tag trace_percpu_buffer as a percpu pointer
+ - ieee802154: atusb: fix uninit value in atusb_set_extended_addr
+ - i40e: Fix to not show opcode msg on unsuccessful VF MAC change
+ - iavf: Fix limit of total number of queues to active queues of VF
+ - RDMA/core: Don't infoleak GRH fields
+ - netrom: fix copying in user data in nr_setsockopt
+ - RDMA/uverbs: Check for null return of kmalloc_array
+ - mac80211: initialize variable have_higher_than_11mbit
+ - sfc: The RX page_ring is optional
+ - i40e: fix use-after-free in i40e_sync_filters_subtask()
+ - i40e: Fix for displaying message regarding NVM version
+ - i40e: Fix incorrect netdev's real number of RX/TX queues
+ - ipv4: Check attribute length for RTA_GATEWAY in multipath route
+ - ipv4: Check attribute length for RTA_FLOW in multipath route
+ - ipv6: Check attribute length for RTA_GATEWAY in multipath route
+ - ipv6: Check attribute length for RTA_GATEWAY when deleting multipath route
+ - lwtunnel: Validate RTA_ENCAP_TYPE attribute length
+ - batman-adv: mcast: don't send link-local multicast to mcast routers
+ - sch_qfq: prevent shift-out-of-bounds in qfq_init_qdisc
+ - net: ena: Fix undefined state when tx request id is out of bounds
+ - net: ena: Fix error handling when calculating max IO queues number
+ - xfs: map unwritten blocks in XFS_IOC_{ALLOC,FREE}SP just like fallocate
+ (CVE-2021-4155)
+ - power: supply: core: Break capacity loop
+ - rndis_host: support Hytera digital radios
+ - phonet: refcount leak in pep_sock_accep (CVE-2021-45095)
+ - ipv6: Continue processing multipath route even if gateway attribute is
+ invalid
+ - ipv6: Do cleanup if attribute validation fails in multipath route
+ - scsi: libiscsi: Fix UAF in iscsi_conn_get_param()/iscsi_conn_teardown()
+ - ip6_vti: initialize __ip6_tnl_parm struct in vti6_siocdevprivate
+ - net: udp: fix alignment problem in udp4_seq_show()
+ - [amd64,arm64] atlantic: Fix buff_ring OOB in aq_ring_rx_clean
+ - mISDN: change function names to avoid conflicts
+ - drm/amd/display: Added power down for DCN10
+ - ipv6: raw: check passed optlen before reading
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.92
+ - md: revert io stats accounting
+ - workqueue: Fix unbind_workers() VS wq_worker_running() race
+ - bpf: Fix out of bounds access from invalid *_or_null type verification
+ (CVE-2022-23222)
+ - Bluetooth: btusb: fix memory leak in btusb_mtk_submit_wmt_recv_urb()
+ - Bluetooth: btusb: Add two more Bluetooth parts for WCN6855
+ - Bluetooth: btusb: Add support for Foxconn MT7922A
+ - Bluetooth: btusb: Add support for Foxconn QCA 0xe0d0
+ - Bluetooth: bfusb: fix division by zero in send path
+ - [armhf] dts: exynos: Fix BCM4330 Bluetooth reset polarity in I9100
+ - USB: core: Fix bug in resuming hub's handling of wakeup requests
+ - USB: Fix "slab-out-of-bounds Write" bug in usb_hcd_poll_rh_status
+ - ath11k: Fix buffer overflow when scanning with extraie
+ - mmc: sdhci-pci: Add PCI ID for Intel ADL
+ - veth: Do not record rx queue hint in veth_xmit
+ - [x86] mfd: intel-lpss: Fix too early PM enablement in the ACPI ->probe()
+ - can: gs_usb: fix use of uninitialized variable, detach device on reception
+ of invalid USB data
+ - can: isotp: convert struct tpcon::{idx,len} to unsigned int
+ - can: gs_usb: gs_can_start_xmit(): zero-initialize hf->{flags,reserved}
+ - random: fix data race on crng_node_pool
+ - random: fix data race on crng init time
+ - random: fix crash on multiple early calls to add_bootloader_randomness()
+ - media: Revert "media: uvcvideo: Set unique vdev name based in type"
+ - [x86] drm/i915: Avoid bitwise vs logical OR warning in
+ snb_wm_latency_quirk()
+
+ [ Salvatore Bonaccorso ]
+ * [arm64] drivers/net/ethernet/google: Enable GVE as module (Closes: #996974)
+ * Refresh "Export symbols needed by Android drivers"
+ * [rt] Update to 5.10.87-rt59
+ * Bump ABI to 11
+ * [rt] Update to 5.10.90-rt60
+ * vfs: fs_context: fix up param length parsing in legacy_parse_param
+ (CVE-2022-0185)
+
+ [ Andrew Balmos ]
+ * net/can: Enable CONFIG_CAN_MCP251X as module
+
+ [ Cyril Brulebois ]
+ * arm64: dts: Add support for Raspberry Pi Compute Module 4 IO Board,
+ producing a DTB that's almost entirely identical to what a v5.16-rc8
+ build produces, with lots of thanks to Uwe Kleine-König for the heavy
+ lifting!
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Tue, 18 Jan 2022 16:54:31 +0100
+
+linux (5.10.84-1) bullseye; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.71
+ - tty: Fix out-of-bound vmalloc access in imageblit
+ - cpufreq: schedutil: Use kobject release() method to free sugov_tunables
+ - scsi: qla2xxx: Changes to support kdump kernel for NVMe BFS
+ - cpufreq: schedutil: Destroy mutex before kobject_put() frees the memory
+ - ALSA: hda/realtek: Quirks to enable speaker output for Lenovo Legion 7i
+ 15IMHG05, Yoga 7i 14ITL5/15ITL5, and 13s Gen2 laptops.
+ - [amd64,arm64] ACPI: NFIT: Use fallback node id when numa info in NFIT
+ table is incorrect
+ - fs-verity: fix signed integer overflow with i_size near S64_MAX
+ - hwmon: (tmp421) handle I2C errors
+ - hwmon: (w83793) Fix NULL pointer dereference by removing unnecessary
+ structure field
+ - hwmon: (w83792d) Fix NULL pointer dereference by removing unnecessary
+ structure field
+ - hwmon: (w83791d) Fix NULL pointer dereference by removing unnecessary
+ structure field
+ - [arm64,armhf] gpio: pca953x: do not ignore i2c errors
+ - scsi: ufs: Fix illegal offset in UPIU event trace
+ - mac80211: fix use-after-free in CCMP/GCMP RX
+ - [x86] kvmclock: Move this_cpu_pvti into kvmclock.h
+ - [x86] KVM: x86: Fix stack-out-of-bounds memory access from
+ ioapic_write_indirect()
+ - [x86] KVM: x86: nSVM: don't copy virt_ext from vmcb12
+ - [x86] KVM: nVMX: Filter out all unsupported controls when eVMCS was
+ activated
+ - KVM: rseq: Update rseq when processing NOTIFY_RESUME on xfer to KVM guest
+ - RDMA/cma: Do not change route.addr.src_addr.ss_family
+ - drm/amd/display: Pass PCI deviceid into DC
+ - drm/amdgpu: correct initial cp_hqd_quantum for gfx9
+ - ipvs: check that ip_vs_conn_tab_bits is between 8 and 20
+ - bpf: Handle return value of BPF_PROG_TYPE_STRUCT_OPS prog
+ - IB/cma: Do not send IGMP leaves for sendonly Multicast groups
+ - RDMA/cma: Fix listener leak in rdma_cma_listen_on_all() failure
+ - mac80211: Fix ieee80211_amsdu_aggregate frag_tail bug
+ - mac80211: limit injected vht mcs/nss in ieee80211_parse_tx_radiotap
+ - mac80211: mesh: fix potentially unaligned access
+ - mac80211-hwsim: fix late beacon hrtimer handling
+ - sctp: break out if skb_header_pointer returns NULL in sctp_rcv_ootb
+ - hwmon: (tmp421) report /PVLD condition as fault
+ - hwmon: (tmp421) fix rounding for negative values
+ - [arm64] net: enetc: fix the incorrect clearing of IF_MODE bits
+ - net: ipv4: Fix rtnexthop len when RTA_FLOW is present
+ - smsc95xx: fix stalled rx after link change
+ - [x86] drm/i915/request: fix early tracepoints
+ - [arm64,armhf] dsa: mv88e6xxx: 6161: Use chip wide MAX MTU
+ - [arm64,armhf] dsa: mv88e6xxx: Fix MTU definition
+ - [arm64,armhf] dsa: mv88e6xxx: Include tagger overhead when setting MTU for
+ DSA and CPU ports
+ - e100: fix length calculation in e100_get_regs_len
+ - e100: fix buffer overrun in e100_get_regs
+ - [arm64] RDMA/hns: Fix inaccurate prints
+ - bpf: Exempt CAP_BPF from checks against bpf_jit_limit
+ - Revert "block, bfq: honor already-setup queue merges"
+ - scsi: csiostor: Add module softdep on cxgb4
+ - ixgbe: Fix NULL pointer dereference in ixgbe_xdp_setup
+ - [arm64] net: hns3: do not allow call hns3_nic_net_open repeatedly
+ - [arm64] net: hns3: keep MAC pause mode when multiple TCs are enabled
+ - [arm64] net: hns3: fix mixed flag HCLGE_FLAG_MQPRIO_ENABLE and
+ HCLGE_FLAG_DCB_ENABLE
+ - [arm64] net: hns3: fix show wrong state when add existing uc mac address
+ - [arm64] net: hns3: fix prototype warning
+ - [arm64] net: hns3: reconstruct function hns3_self_test
+ - [arm64] net: hns3: fix always enable rx vlan filter problem after selftest
+ - [arm64,armhf] net: phy: bcm7xxx: Fixed indirect MMD operations
+ - net: sched: flower: protect fl_walk() with rcu
+ - af_unix: fix races in sk_peer_pid and sk_peer_cred accesses
+ - [x86] perf/x86/intel: Update event constraints for ICX
+ - nvme: add command id quirk for apple controllers
+ - elf: don't use MAP_FIXED_NOREPLACE for elf interpreter mappings
+ - debugfs: debugfs_create_file_size(): use IS_ERR to check for error
+ - ext4: fix loff_t overflow in ext4_max_bitmap_size()
+ - ext4: limit the number of blocks in one ADD_RANGE TLV (Closes: #995425)
+ - ext4: fix reserved space counter leakage
+ - ext4: add error checking to ext4_ext_replay_set_iblocks()
+ - ext4: fix potential infinite loop in ext4_dx_readdir()
+ - HID: u2fzero: ignore incomplete packets without data
+ - net: udp: annotate data race around udp_sk(sk)->corkflag
+ - ASoC: dapm: use component prefix when checking widget names
+ - usb: hso: remove the bailout parameter
+ - [x86] crypto: ccp - fix resource leaks in ccp_run_aes_gcm_cmd()
+ (CVE-2021-3744, CVE-2021-3764)
+ - HID: betop: fix slab-out-of-bounds Write in betop_probe
+ - netfilter: ipset: Fix oversized kvmalloc() calls
+ - mm: don't allow oversized kvmalloc() calls
+ - HID: usbhid: free raw_report buffers in usbhid_stop
+ - [x86] KVM: x86: Handle SRCU initialization failure during page track init
+ - netfilter: conntrack: serialize hash resizes and cleanups
+ - netfilter: nf_tables: Fix oversized kvmalloc() calls
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.72
+ - [arm64,armhf] spi: rockchip: handle zero length transfers without timing
+ out
+ - nfsd: back channel stuck in SEQ4_STATUS_CB_PATH_DOWN
+ - btrfs: replace BUG_ON() in btrfs_csum_one_bio() with proper error handling
+ - btrfs: fix mount failure due to past and transient device flush error
+ - net: mdio: introduce a shutdown method to mdio device drivers
+ - xen-netback: correct success/error reporting for the SKB-with-fraglist
+ case
+ - scsi: sd: Free scsi_disk device via put_device()
+ - [arm*] usb: dwc2: check return value after calling platform_get_resource()
+ - nvme-fc: update hardware queues before using them
+ - nvme-fc: avoid race between time out and tear down
+ - [arm64] thermal/drivers/tsens: Fix wrong check for tzd in irq handlers
+ - scsi: ses: Retry failed Send/Receive Diagnostic commands
+ - [arm64,armhf] irqchip/gic: Work around broken Renesas integration
+ - smb3: correct smb3 ACL security descriptor
+ - KVM: do not shrink halt_poll_ns below grow_start
+ - [x86] kvm: Add AMD PMU MSRs to msrs_to_save_all[]
+ - [x86] KVM: nSVM: restore int_vector in svm_clear_vintr
+ - [x86] perf/x86: Reset destroy callback on event init failure
+ - libata: Add ATA_HORKAGE_NO_NCQ_ON_ATI for Samsung 860 and 870 SSD.
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.73
+ - [arm64,armhf] usb: chipidea: ci_hdrc_imx: Also search for 'phys' phandle
+ - USB: cdc-acm: fix racy tty buffer accesses
+ - USB: cdc-acm: fix break reporting
+ - usb: typec: tcpm: handle SRC_STARTUP state if cc changes
+ - drm/nouveau/kms/tu102-: delay enabling cursor until after assign_windows
+ - xen/privcmd: fix error handling in mmap-resource processing
+ - [arm64] mmc: meson-gx: do not use memcpy_to/fromio for dram-access-quirk
+ - ovl: fix missing negative dentry check in ovl_rename() (CVE-2021-20321)
+ - ovl: fix IOCB_DIRECT if underlying fs doesn't support direct IO
+ - nfsd: fix error handling of register_pernet_subsys() in init_nfsd()
+ - nfsd4: Handle the NFSv4 READDIR 'dircount' hint being zero
+ - SUNRPC: fix sign error causing rpcsec_gss drops
+ - xen/balloon: fix cancelled balloon action
+ - [armhf] dts: omap3430-sdp: Fix NAND device node
+ - [armhf] bus: ti-sysc: Add break in switch statement in sysc_init_soc()
+ - [arm64] soc: qcom: mdt_loader: Drop PT_LOAD check on hash segment
+ - [armhf] dts: imx: Add missing pinctrl-names for panel on M53Menlo
+ - [armhf] dts: imx: Fix USB host power regulator polarity on M53Menlo
+ - [amd64] PCI: hv: Fix sleep while in non-sleep context when removing child
+ devices from the bus
+ - iwlwifi: pcie: add configuration of a Wi-Fi adapter on Dell XPS 15
+ - [armel,armhf] bpf, arm: Fix register clobbering in div/mod implementation
+ - [armhf] soc: ti: omap-prm: Fix external abort for am335x pruss
+ - bpf: Fix integer overflow in prealloc_elems_and_freelist()
+ (CVE-2021-41864)
+ - net/mlx5e: IPSEC RX, enable checksum complete
+ - net/mlx5: E-Switch, Fix double allocation of acl flow counter
+ - phy: mdio: fix memory leak
+ - net_sched: fix NULL deref in fifo_set_limit()
+ - [i386] ptp_pch: Load module automatically if ID matches
+ - [armhf] imx6: disable the GIC CPU interface before calling stby-poweroff
+ sequence
+ - net: bridge: use nla_total_size_64bit() in br_get_linkxstats_size()
+ - net: bridge: fix under estimation in br_get_linkxstats_size()
+ - net/sched: sch_taprio: properly cancel timer from taprio_destroy()
+ - net: sfp: Fix typo in state machine debug string
+ - netlink: annotate data races around nlk->bound
+ - perf jevents: Tidy error handling
+ - [armhf] bus: ti-sysc: Use CLKDM_NOAUTO for dra7 dcan1 for errata i893
+ - [arm64,armhf] drm/sun4i: dw-hdmi: Fix HDMI PHY clock setup
+ - drm/nouveau: avoid a use-after-free when BO init fails
+ - drm/nouveau/kms/nv50-: fix file release memory leak
+ - drm/nouveau/debugfs: fix file release memory leak
+ - [amd64] gve: Correct available tx qpl check
+ - [amd64] gve: Avoid freeing NULL pointer
+ - rtnetlink: fix if_nlmsg_stats_size() under estimation
+ - [amd64] gve: fix gve_get_stats()
+ - [amd64] gve: report 64bit tx_bytes counter from gve_handle_report_stats()
+ - i40e: fix endless loop under rtnl
+ - i40e: Fix freeing of uninitialized misc IRQ vector
+ - net: prefer socket bound to interface when not in VRF
+ - [powerpc*] iommu: Report the correct most efficient DMA mask for PCI
+ devices
+ - i2c: acpi: fix resource leak in reconfiguration device addition
+ - [s390x] bpf, s390: Fix potential memory leak about jit_data
+ - [powerpc*] bpf: Fix BPF_SUB when imm == 0x80000000
+ - [powerpc*] pseries/eeh: Fix the kdump kernel crash during eeh_pseries_init
+ - [i386] x86/platform/olpc: Correct ifdef symbol to intended
+ CONFIG_OLPC_XO15_SCI
+ - [x86] entry: Correct reference to intended CONFIG_64_BIT
+ - [x86] hpet: Use another crystalball to evaluate HPET usability
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.74
+ - ext4: check and update i_disksize properly
+ - ext4: correct the error path of ext4_write_inline_data_end()
+ - [x86] ASoC: Intel: sof_sdw: tag SoundWire BEs as non-atomic
+ - HID: apple: Fix logical maximum and usage maximum of Magic Keyboard JIS
+ - netfilter: ip6_tables: zero-initialize fragment offset
+ - HID: wacom: Add new Intuos BT (CTL-4100WL/CTL-6100WL) device IDs
+ - [x86] ASoC: SOF: loader: release_firmware() on load failure to avoid
+ batching
+ - netfilter: nf_nat_masquerade: make async masq_inet6_event handling generic
+ - netfilter: nf_nat_masquerade: defer conntrack walk to work queue
+ - mac80211: Drop frames from invalid MAC address in ad-hoc mode
+ - net: prevent user from passing illegal stab size
+ - mac80211: check return value of rhashtable_init
+ - [x86] vboxfs: fix broken legacy mount signature checking
+ - drm/amdgpu: fix gart.bo pin_count leak
+ - scsi: ses: Fix unsigned comparison with less than zero
+ - scsi: virtio_scsi: Fix spelling mistake "Unsupport" -> "Unsupported"
+ - perf/core: fix userpage->time_enabled of inactive events
+ - sched: Always inline is_percpu_thread()
+ - [armhf] hwmon: (pmbus/ibm-cffps) max_power_out swap changes
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.75
+ - ALSA: usb-audio: Add quirk for VF0770
+ - ALSA: pcm: Workaround for a wrong offset in SYNC_PTR compat ioctl
+ - ALSA: seq: Fix a potential UAF by wrong private_free call order
+ - ALSA: hda/realtek: Enable 4-speaker output for Dell Precision 5560 laptop
+ - ALSA: hda - Enable headphone mic on Dell Latitude laptops with ALC3254
+ - ALSA: hda/realtek: Complete partial device name to avoid ambiguity
+ - ALSA: hda/realtek: Add quirk for Clevo X170KM-G
+ - ALSA: hda/realtek - ALC236 headset MIC recording issue
+ - ALSA: hda/realtek: Add quirk for TongFang PHxTxX1
+ - ALSA: hda/realtek: Fix for quirk to enable speaker output on the Lenovo
+ 13s Gen2
+ - ALSA: hda/realtek: Fix the mic type detection issue for ASUS G551JW
+ - [s390x] fix strrchr() implementation
+ - [arm64] hugetlb: fix CMA gigantic page order for non-4K PAGE_SIZE
+ - drm/msm: Avoid potential overflow in timeout_to_jiffies()
+ - btrfs: unlock newly allocated extent buffer after error
+ - btrfs: deal with errors when replaying dir entry during log replay
+ - btrfs: deal with errors when adding inode reference during log replay
+ - btrfs: check for error when looking up inode during dir entry replay
+ - btrfs: update refs for any root except tree log roots
+ - btrfs: fix abort logic in btrfs_replace_file_extents
+ - [x86] resctrl: Free the ctrlval arrays when domain_setup_mon_state() fails
+ - [x86] mei: me: add Ice Lake-N device id.
+ - xhci: guard accesses to ep_state in xhci_endpoint_reset()
+ - xhci: Fix command ring pointer corruption while aborting a command
+ - xhci: Enable trust tx length quirk for Fresco FL11 USB controller
+ - cb710: avoid NULL pointer subtraction
+ - [arm64,x86] efi/cper: use stack buffer for error record decoding
+ - efi: Change down_interruptible() in virt_efi_reset_system() to
+ down_trylock()
+ - [armhf] usb: musb: dsps: Fix the probe error path (Closes: 1000900)
+ - Input: xpad - add support for another USB ID of Nacon GC-100
+ - USB: serial: qcserial: add EM9191 QDL support
+ - USB: serial: option: add Quectel EC200S-CN module support
+ - USB: serial: option: add Telit LE910Cx composition 0x1204
+ - USB: serial: option: add prod. id for Quectel EG91
+ - virtio: write back F_VERSION_1 before validate
+ - nvmem: Fix shift-out-of-bound (UBSAN) with byte size cells
+ - [powerpc*] xive: Discard disabled interrupts in get_irqchip_state()
+ - driver core: Reject pointless SYNC_STATE_ONLY device links
+ - iio: adc: ad7192: Add IRQ flag
+ - iio: adc: ad7780: Fix IRQ flag
+ - iio: adc: ad7793: Fix IRQ flag
+ - iio: adc128s052: Fix the error handling path of 'adc128_probe()'
+ - iio: adc: max1027: Fix wrong shift with 12-bit devices
+ - iio: light: opt3001: Fixed timeout error when 0 lux
+ - iio: adc: max1027: Fix the number of max1X31 channels
+ - iio: dac: ti-dac5571: fix an error code in probe()
+ - [arm64] tee: optee: Fix missing devices unregister during optee_remove
+ - [armel,armhf] dts: bcm2711-rpi-4-b: Fix usb's unit address
+ - [armel,armhf] dts: bcm2711-rpi-4-b: fix sd_io_1v8_reg regulator states
+ - [armel,armhf] dts: bcm2711-rpi-4-b: Fix pcie0's unit address formatting
+ - nvme-pci: Fix abort command id
+ - sctp: account stream padding length for reconf chunk
+ - [arm64,armhf] gpio: pca953x: Improve bias setting
+ - net/mlx5e: Fix memory leak in mlx5_core_destroy_cq() error path
+ - net/mlx5e: Mutually exclude RX-FCS and RX-port-timestamp
+ - net: stmmac: fix get_hw_feature() on old hardware
+ - ethernet: s2io: fix setting mac address during resume
+ - nfc: fix error handling of nfc_proto_register()
+ - NFC: digital: fix possible memory leak in digital_tg_listen_mdaa()
+ - NFC: digital: fix possible memory leak in digital_in_send_sdd_req()
+ - [i386] pata_legacy: fix a couple uninitialized variable bugs
+ - ata: ahci_platform: fix null-ptr-deref in
+ ahci_platform_enable_regulators()
+ - drm/edid: In connector_bad_edid() cap num_of_ext by num_blocks read
+ - [arm64] drm/msm: Fix null pointer dereference on pointer edp
+ - [arm64] drm/msm/mdp5: fix cursor-related warnings
+ - [arm64] drm/msm/a6xx: Track current ctx by seqno
+ - [arm64] drm/msm/dsi: Fix an error code in msm_dsi_modeset_init()
+ - [arm64] drm/msm/dsi: fix off by one in dsi_bus_clk_enable error handling
+ - [arm64] acpi/arm64: fix next_platform_timer() section mismatch error
+ - [x86] platform/x86: intel_scu_ipc: Fix busy loop expiry time
+ - mqprio: Correct stats in mqprio_dump_class_stats().
+ - qed: Fix missing error code in qed_slowpath_start()
+ - nfp: flow_offload: move flow_indr_dev_register from app init to app start
+ - [arm64] net: mscc: ocelot: warn when a PTP IRQ is raised for an unknown
+ skb
+ - [arm64,armhf] net: dsa: mv88e6xxx: don't use PHY_DETECT on internal PHY's
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.76
+ - xhci: add quirk for host controllers that don't update endpoint DCS
+ - io_uring: fix splice_fd_in checks backport typo
+ - [armhf] dts: vexpress-v2p-ca9: Fix the SMB unit-address
+ - block: decode QUEUE_FLAG_HCTX_ACTIVE in debugfs output
+ - [x86] xen/x86: prevent PVH type from getting clobbered
+ - NFSD: Keep existing listeners on portlist error
+ - netfilter: xt_IDLETIMER: fix panic that occurs when timer_type has garbage
+ value
+ - ice: fix getting UDP tunnel entry
+ - netfilter: ip6t_rt: fix rt0_hdr parsing in rt_mt6
+ - netfilter: ipvs: make global sysctl readonly in non-init netns
+ - tcp: md5: Fix overlap between vrf and non-vrf keys
+ - ipv6: When forwarding count rx stats on the orig netdev
+ - [powerpc*] smp: do not decrement idle task preempt count in CPU offline
+ - [arm64] net: hns3: reset DWRR of unused tc to zero
+ - [arm64] net: hns3: add limit ets dwrr bandwidth cannot be 0
+ - [arm64] net: hns3: schedule the polling again when allocation fails
+ - [arm64] net: hns3: fix vf reset workqueue cannot exit
+ - [arm64] net: hns3: disable sriov before unload hclge layer
+ - net: stmmac: Fix E2E delay mechanism
+ - e1000e: Fix packet loss on Tiger Lake and later
+ - ice: Add missing E810 device ids
+ - [arm64] net: enetc: fix ethtool counter name for PM0_TERR
+ - can: peak_usb: pcan_usb_fd_decode_status(): fix back to ERROR_ACTIVE state
+ notification
+ - can: peak_pci: peak_pci_remove(): fix UAF
+ - can: isotp: isotp_sendmsg(): fix return error on FC timeout on TX path
+ - can: isotp: isotp_sendmsg(): add result check for
+ wait_event_interruptible()
+ - can: j1939: j1939_tp_rxtimer(): fix errant alert in j1939_tp_rxtimer
+ - can: j1939: j1939_netdev_start(): fix UAF for rx_kref of j1939_priv
+ - can: j1939: j1939_xtp_rx_dat_one(): cancel session if receive TP.DT with
+ error length
+ - can: j1939: j1939_xtp_rx_rts_session_new(): abort TP less than 9 bytes
+ - ceph: skip existing superblocks that are blocklisted or shut down when
+ mounting
+ - ceph: fix handling of "meta" errors
+ - ocfs2: fix data corruption after conversion from inline format
+ - ocfs2: mount fails with buffer overflow in strlen
+ - userfaultfd: fix a race between writeprotect and exit_mmap()
+ - vfs: check fd has read access in kernel_read_file_from_fd()
+ - ALSA: usb-audio: Provide quirk for Sennheiser GSP670 Headset
+ - ALSA: hda/realtek: Add quirk for Clevo PC50HS
+ - ASoC: DAPM: Fix missing kctl change notifications
+ - audit: fix possible null-pointer dereference in audit_filter_rules
+ - [powerpc*] powerpc64/idle: Fix SP offsets when saving GPRs
+ - [powerpc*] KVM: PPC: Book3S HV: Fix stack handling in
+ idle_kvm_start_guest()
+ - [powerpc*] KVM: PPC: Book3S HV: Make idle_kvm_start_guest() return 0 if it
+ went to guest (CVE-2021-43056)
+ - [powerpc*] idle: Don't corrupt back chain when going idle
+ - mm, slub: fix mismatch between reconstructed freelist depth and cnt
+ - mm, slub: fix potential memoryleak in kmem_cache_open()
+ - mm, slub: fix incorrect memcg slab count for bulk free
+ - [x86] KVM: nVMX: promptly process interrupts delivered while in guest mode
+ - nfc: nci: fix the UAF of rf_conn_info object (CVE-2021-3760)
+ - isdn: cpai: check ctr->cnr to avoid array index out of bound
+ (CVE-2021-43389)
+ - [arm64] net: hns3: fix the max tx size according to user manual
+ - ALSA: hda: intel: Allow repeatedly probing on codec configuration errors
+ - btrfs: deal with errors when checking if a dir entry exists during log
+ replay
+ - net: stmmac: add support for dwmac 3.40a
+ - isdn: mISDN: Fix sleeping function called from invalid context
+ - [x86] platform/x86: intel_scu_ipc: Update timeout value in comment
+ - ALSA: hda: avoid write to STATESTS if controller is in reset
+ - [x86] perf/x86/msr: Add Sapphire Rapids CPU support
+ - scsi: iscsi: Fix set_param() handling
+ - scsi: qla2xxx: Fix a memory leak in an error path of qla2x00_process_els()
+ - sched/scs: Reset the shadow stack when idle_task_exit
+ - [arm64] net: hns3: fix for miscalculation of rx unused desc
+ - scsi: core: Fix shost->cmd_per_lun calculation in scsi_add_host_with_dma()
+ - can: isotp: isotp_sendmsg(): fix TX buffer concurrent access in
+ isotp_sendmsg()
+ - [s390x] pci: fix zpci_zdev_put() on reserve
+ - net: mdiobus: Fix memory leak in __mdiobus_register
+ - tracing: Have all levels of checks prevent recursion
+ - e1000e: Separate TGP board type from SPT
+ - [armhf] pinctrl: stm32: use valid pin identifier in stm32_pinctrl_resume()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.77
+ - [armel,armhf] 9139/1: kprobes: fix arch_init_kprobes() prototype
+ - io_uring: don't take uring_lock during iowq cancel
+ - [powerpc*] bpf: Fix BPF_MOD when imm == 1
+ - [arm64] Avoid premature usercopy failure
+ - ext4: fix possible UAF when remounting r/o a mmp-protected file system
+ - usbnet: sanity check for maxpacket
+ - usbnet: fix error return code in usbnet_probe()
+ - pinctrl: amd: disable and mask interrupts on probe
+ - ata: sata_mv: Fix the error handling of mv_chip_id()
+ - tipc: fix size validations for the MSG_CRYPTO type (CVE-2021-43267)
+ - nfc: port100: fix using -ERRNO as command type mask
+ - Revert "net: mdiobus: Fix memory leak in __mdiobus_register"
+ - mmc: vub300: fix control-message timeouts
+ - mmc: cqhci: clear HALT state after CQE enable
+ - [armhf] mmc: dw_mmc: exynos: fix the finding clock sample value
+ - mmc: sdhci: Map more voltage level to SDHCI_POWER_330
+ - [arm64,armhf] mmc: sdhci-esdhc-imx: clear the buffer_read_ready to reset
+ standard tuning circuit
+ - ocfs2: fix race between searching chunks and release journal_head from
+ buffer_head
+ - nvme-tcp: fix H2CData PDU send accounting (again)
+ - cfg80211: scan: fix RCU in cfg80211_add_nontrans_list()
+ - cfg80211: fix management registrations locking
+ - net: lan78xx: fix division by zero in send path
+ - mm, thp: bail out early in collapse_file for writeback page
+ - drm/ttm: fix memleak in ttm_transfered_destroy
+ - drm/amdgpu: fix out of bounds write (CVE-2021-42327)
+ - cgroup: Fix memory leak caused by missing cgroup_bpf_offline
+ - tcp_bpf: Fix one concurrency problem in the tcp_bpf_send_verdict function
+ - bpf: Fix potential race in tail call compatibility check
+ - bpf: Fix error usage of map_fd and fdget() in generic_map_update_batch()
+ - [amd64] IB/qib: Protect from buffer overflow in struct qib_user_sdma_pkt
+ fields
+ - [amd64] IB/hfi1: Fix abba locking issue with sc_disable()
+ - nvmet-tcp: fix data digest pointer calculation
+ - nvme-tcp: fix data digest pointer calculation
+ - nvme-tcp: fix possible req->offset corruption
+ - RDMA/mlx5: Set user priority for DCT
+ - [arm64] dts: allwinner: h5: NanoPI Neo 2: Fix ethernet node
+ - regmap: Fix possible double-free in regcache_rbtree_exit()
+ - net: batman-adv: fix error handling
+ - net-sysfs: initialize uid and gid before calling net_ns_get_ownership
+ - cfg80211: correct bridge/4addr mode check
+ - net: Prevent infinite while loop in skb_tx_hash()
+ - RDMA/sa_query: Use strscpy_pad instead of memcpy to copy a string
+ - net: ethernet: microchip: lan743x: Fix driver crash when lan743x_pm_resume
+ fails
+ - net: ethernet: microchip: lan743x: Fix dma allocation failure by using
+ dma_set_mask_and_coherent
+ - phy: phy_ethtool_ksettings_get: Lock the phy for consistency
+ - phy: phy_ethtool_ksettings_set: Move after phy_start_aneg
+ - phy: phy_start_aneg: Add an unlocked version
+ - phy: phy_ethtool_ksettings_set: Lock the PHY while changing settings
+ - sctp: use init_tag from inithdr for ABORT chunk (CVE-2021-3772)
+ - sctp: fix the processing for INIT_ACK chunk (CVE-2021-3772)
+ - sctp: fix the processing for COOKIE_ECHO chunk (CVE-2021-3772)
+ - sctp: add vtag check in sctp_sf_violation (CVE-2021-3772)
+ - sctp: add vtag check in sctp_sf_do_8_5_1_E_sa (CVE-2021-3772)
+ - sctp: add vtag check in sctp_sf_ootb (CVE-2021-3772)
+ - lan743x: fix endianness when accessing descriptors
+ - [s390x] KVM: clear kicked_mask before sleeping again
+ - [s390x] KVM: preserve deliverable_mask in __airqs_kick_single_vcpu
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.78
+ - scsi: core: Put LLD module refcnt after SCSI device is released
+ - Revert "io_uring: reinforce cancel on flush during exit"
+ - sfc: Fix reading non-legacy supported link modes
+ - vrf: Revert "Reset skb conntrack connection..."
+ - net: ethernet: microchip: lan743x: Fix skb allocation failure
+ - media: firewire: firedtv-avc: fix a buffer overflow in avc_ca_pmt()
+ (CVE-2021-42739)
+ - Revert "xhci: Set HCD flag to defer primary roothub registration"
+ - Revert "usb: core: hcd: Add support for deferring roothub registration"
+ - mm: khugepaged: skip huge page collapse for special files
+ - Revert "drm/ttm: fix memleak in ttm_transfered_destroy"
+ - [arm*] 9120/1: Revert "amba: make use of -1 IRQs warn"
+ - [arm64] Revert "wcn36xx: Disable bmps when encryption is disabled"
+ - ALSA: usb-audio: Add Schiit Hel device to mixer map quirk table
+ - ALSA: usb-audio: Add Audient iD14 to mixer map quirk table
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.79
+ - [x86] Revert "x86/kvm: fix vcpu-id indexed array sizes"
+ - [arm64,armhf] usb: musb: Balance list entry in musb_gadget_queue
+ - usb-storage: Add compatibility quirk flags for iODD 2531/2541
+ - [arm*] binder: don't detect sender/target during buffer cleanup
+ - printk/console: Allow to disable console output by using console="" or
+ console=null
+ - staging: rtl8712: fix use-after-free in rtl8712_dl_fw
+ - isofs: Fix out of bound access for corrupted isofs image
+ - [x86] comedi: dt9812: fix DMA buffers on stack
+ - [x86] comedi: ni_usb6501: fix NULL-deref in command paths
+ - [x86] comedi: vmk80xx: fix transfer-buffer overflows
+ - [x86] comedi: vmk80xx: fix bulk-buffer overflow
+ - [x86] comedi: vmk80xx: fix bulk and interrupt message timeouts
+ - staging: r8712u: fix control-message timeout
+ - [x86] staging: rtl8192u: fix control-message timeouts
+ - rsi: fix control-message timeout
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.80
+ - xhci: Fix USB 3.1 enumeration issues by increasing roothub power-on-good
+ delay
+ - usb: xhci: Enable runtime-pm by default on AMD Yellow Carp platform
+ - [arm*] binder: use euid from cred instead of using task
+ - [arm*] binder: use cred instead of task for selinux checks
+ - [arm*] binder: use cred instead of task for getsecid
+ - Input: iforce - fix control-message timeout
+ - Input: elantench - fix misreporting trackpoint coordinates
+ (Closes: #989285)
+ - libata: fix read log timeout value
+ - ocfs2: fix data corruption on truncate
+ - scsi: core: Remove command size deduction from scsi_setup_scsi_cmnd()
+ - scsi: qla2xxx: Fix kernel crash when accessing port_speed sysfs file
+ - scsi: qla2xxx: Fix use after free in eh_abort path
+ - [arm64,armhf] mmc: dw_mmc: Dont wait for DRTO on Write RSP error
+ - exfat: fix incorrect loading of i_blocks for large files
+ - tpm: Check for integer overflow in tpm2_map_response_body()
+ - media: ite-cir: IR receiver stop working after receive overflow
+ (Closes: #996672)
+ - media: ir-kbd-i2c: improve responsiveness of hauppauge zilog receivers
+ (Closes: #994050)
+ - media: v4l2-ioctl: Fix check_ext_ctrls
+ - ALSA: hda/realtek: Fix mic mute LED for the HP Spectre x360 14
+ - ALSA: hda/realtek: Add a quirk for HP OMEN 15 mute LED
+ - ALSA: hda/realtek: Add quirk for Clevo PC70HS
+ - ALSA: hda/realtek: Headset fixup for Clevo NH77HJQ
+ - ALSA: hda/realtek: Add a quirk for Acer Spin SP513-54N
+ - ALSA: hda/realtek: Add quirk for ASUS UX550VE
+ - ALSA: hda/realtek: Add quirk for HP EliteBook 840 G7 mute LED
+ - ALSA: ua101: fix division by zero at probe
+ - ALSA: 6fire: fix control and bulk message timeouts
+ - ALSA: line6: fix control and interrupt message timeouts
+ - ALSA: usb-audio: Line6 HX-Stomp XL USB_ID for 48k-fixed quirk
+ - ALSA: usb-audio: Add registration quirk for JBL Quantum 400
+ - ALSA: hda: Free card instance properly at probe errors
+ - ALSA: synth: missing check for possible NULL after the call to kstrdup
+ - ALSA: timer: Fix use-after-free problem
+ - ALSA: timer: Unconditionally unlink slave instances, too
+ - ext4: fix lazy initialization next schedule time computation in more
+ granular unit
+ - ext4: ensure enough credits in ext4_ext_shift_path_extents
+ - ext4: refresh the ext4_ext_path struct after dropping i_data_sem.
+ - fuse: fix page stealing
+ - [x86] cpu: Fix migration safety with X86_BUG_NULL_SEL
+ - [x86] irq: Ensure PI wakeup handler is unregistered before module unload
+ - ASoC: soc-core: fix null-ptr-deref in snd_soc_del_component_unlocked()
+ - ALSA: hda/realtek: Fixes HP Spectre x360 15-eb1xxx speakers
+ - [arm64] cavium: Return negative value when pci_alloc_irq_vectors() fails
+ - scsi: qla2xxx: Return -ENOMEM if kzalloc() fails
+ - scsi: qla2xxx: Fix unmap of already freed sgl
+ - mISDN: Fix return values of the probe function
+ - [arm64] cavium: Fix return values of the probe function
+ - sfc: Export fibre-specific supported link modes
+ - sfc: Don't use netif_info before net_device setup
+ - [armhf] reset: socfpga: add empty driver allowing consumers to probe
+ - drm: panel-orientation-quirks: Add quirk for Aya Neo 2021
+ - bpf: Define bpf_jit_alloc_exec_limit for arm64 JIT
+ - bpf: Prevent increasing bpf_jit_limit above max
+ - xen/netfront: stop tx queues during live migration
+ - nvmet-tcp: fix a memory leak when releasing a queue
+ - [armhf] spi: spl022: fix Microwire full duplex mode
+ - net: multicast: calculate csum of looped-back and forwarded packets
+ - [armhf] watchdog: Fix OMAP watchdog early handling
+ - drm: panel-orientation-quirks: Add quirk for GPD Win3
+ - block: schedule queue restart after BLK_STS_ZONE_RESOURCE
+ - nvmet-tcp: fix header digest verification
+ - r8169: Add device 10ec:8162 to driver r8169
+ - [x86] vmxnet3: do not stop tx queues after netif_device_detach()
+ - nfp: bpf: relax prog rejection for mtu check through max_pkt_offset
+ - net/smc: Fix smc_link->llc_testlink_time overflow
+ - net/smc: Correct spelling mistake to TCPF_SYN_RECV
+ - rds: stop using dmapool
+ - btrfs: clear MISSING device status bit in btrfs_close_one_device
+ - btrfs: fix lost error handling when replaying directory deletes
+ - btrfs: call btrfs_check_rw_degradable only if there is a missing device
+ - [x86] KVM: VMX: Unregister posted interrupt wakeup handler on hardware
+ unsetup
+ - selinux: fix race condition when computing ocontext SIDs
+ - [armhf] regulator: s5m8767: do not use reset value as DVS voltage if GPIO
+ DVS is disabled
+ - [amd64] EDAC/sb_edac: Fix top-of-high-memory value for Broadwell/Haswell
+ - [x86] mwifiex: fix division by zero in fw download path
+ - ath6kl: fix division by zero in send path
+ - ath6kl: fix control-message timeout
+ - ath10k: fix control-message timeout
+ - ath10k: fix division by zero in send path
+ - PCI: Mark Atheros QCA6174 to avoid bus reset
+ - rtl8187: fix control-message timeouts
+ - [arm64] wcn36xx: Fix HT40 capability for 2Ghz band
+ - [arm64] wcn36xx: Fix tx_status mechanism
+ - [arm64] wcn36xx: Fix (QoS) null data frame bitrate/modulation
+ - PM: sleep: Do not let "syscore" devices runtime-suspend during system
+ transitions
+ - mwifiex: Read a PCI register after writing the TX ring write pointer
+ - mwifiex: Try waking the firmware until we get an interrupt
+ - libata: fix checking of DMA state
+ - [arm64] wcn36xx: handle connection loss indication
+ - rsi: fix occasional initialisation failure with BT coex
+ - rsi: fix key enabled check causing unwanted encryption for vap_id > 0
+ - rsi: fix rate mask set leading to P2P failure
+ - rsi: Fix module dev_oper_mode parameter description
+ - [x86] perf/x86/intel/uncore: Support extra IMC channel on Ice Lake server
+ - [x86] perf/x86/intel/uncore: Fix Intel ICX IIO event constraints
+ - RDMA/qedr: Fix NULL deref for query_qp on the GSI QP
+ - signal: Remove the bogus sigkill_pending in ptrace_stop
+ - [mips*] signal/mips: Update (_save|_restore)_fp_context to fail with
+ -EFAULT
+ - [arm64] soc: fsl: dpio: replace smp_processor_id with raw_smp_processor_id
+ - [arm64] soc: fsl: dpio: use the combined functions to protect critical
+ zone
+ - [x86] power: supply: max17042_battery: Prevent int underflow in
+ set_soc_threshold
+ - [x86] power: supply: max17042_battery: use VFSOC for capacity when no rsns
+ - [arm64] KVM: arm64: Extract ESR_ELx.EC only
+ - [x86] KVM: nVMX: Query current VMCS when determining if MSR bitmaps are in
+ use
+ - can: j1939: j1939_tp_cmd_recv(): ignore abort message in the BAM transport
+ - can: j1939: j1939_can_recv(): ignore messages with invalid source address
+ - ring-buffer: Protect ring_buffer_reset() from reentrancy
+ - serial: core: Fix initializing and restoring termios speed
+ - ifb: fix building without CONFIG_NET_CLS_ACT
+ - ALSA: mixer: oss: Fix racy access to slots
+ - ALSA: mixer: fix deadlock in snd_mixer_oss_set_volume
+ - xen/balloon: add late_initcall_sync() for initial ballooning done
+ - ovl: fix use after free in struct ovl_aio_req
+ - [arm*] PCI: pci-bridge-emul: Fix emulation of W1C bits
+ - [arm64] PCI: aardvark: Do not clear status bits of masked interrupts
+ - [arm64] PCI: aardvark: Fix checking for link up via LTSSM state
+ - [arm64] PCI: aardvark: Do not unmask unused interrupts
+ - [arm64] PCI: aardvark: Fix reporting Data Link Layer Link Active
+ - [arm64] PCI: aardvark: Fix configuring Reference clock
+ - [arm64] PCI: aardvark: Fix return value of MSI domain .alloc() method
+ - [arm64] PCI: aardvark: Read all 16-bits from PCIE_MSI_PAYLOAD_REG
+ - [arm64] PCI: aardvark: Fix support for bus mastering and PCI_COMMAND on
+ emulated bridge
+ - [arm64] PCI: aardvark: Fix support for PCI_BRIDGE_CTL_BUS_RESET on
+ emulated bridge
+ - [arm64] PCI: aardvark: Set PCI Bridge Class Code to PCI Bridge
+ - [arm64] PCI: aardvark: Fix support for PCI_ROM_ADDRESS1 on emulated bridge
+ - quota: check block number when reading the block in quota file
+ - quota: correct error number in free_dqentry()
+ - pinctrl: core: fix possible memory leak in pinctrl_enable()
+ - iio: dac: ad5446: Fix ad5622_write() return value
+ - iio: ad5770r: make devicetree property reading consistent
+ - USB: serial: keyspan: fix memleak on probe errors
+ - serial: 8250: fix racy uartclk update
+ - USB: iowarrior: fix control-message timeouts
+ - [arm64,armhf] USB: chipidea: fix interrupt deadlock
+ - [x86] power: supply: max17042_battery: Clear status bits in interrupt
+ handler
+ - dma-buf: WARN on dmabuf release with pending attachments
+ - drm: panel-orientation-quirks: Update the Lenovo Ideapad D330 quirk (v2)
+ - drm: panel-orientation-quirks: Add quirk for KD Kurio Smart C15200 2-in-1
+ - drm: panel-orientation-quirks: Add quirk for the Samsung Galaxy Book 10.6
+ - Bluetooth: sco: Fix lock_sock() blockage by memcpy_from_msg()
+ (CVE-2021-3640)
+ - Bluetooth: fix use-after-free error in lock_sock_nested()
+ - drm/panel-orientation-quirks: add Valve Steam Deck
+ - [x86] platform/x86: wmi: do not fail if disabling fails
+ - locking/lockdep: Avoid RCU-induced noinstr fail
+ - net: sched: update default qdisc visibility after Tx queue cnt changes
+ - rcu-tasks: Move RTGS_WAIT_CBS to beginning of rcu_tasks_kthread() loop
+ - ath11k: Align bss_chan_info structure with firmware
+ - [x86] Increase exception stack sizes
+ - mwifiex: Run SET_BSS_MODE when changing from P2P to STATION vif-type
+ - mwifiex: Properly initialize private structure on interface type changes
+ - fscrypt: allow 256-bit master keys with AES-256-XTS
+ - drm/amdgpu: Fix MMIO access page fault
+ - ath11k: Avoid reg rules update during firmware recovery
+ - ath11k: add handler for scan event WMI_SCAN_EVENT_DEQUEUED
+ - ath11k: Change DMA_FROM_DEVICE to DMA_TO_DEVICE when map reinjected
+ packets
+ - ath10k: high latency fixes for beacon buffer
+ - media: netup_unidvb: handle interrupt properly according to the firmware
+ - media: uvcvideo: Set capability in s_param
+ - media: uvcvideo: Return -EIO for control errors
+ - media: uvcvideo: Set unique vdev name based in type
+ - [armhf] media: imx: set a media_device bus_info string
+ - media: mceusb: return without resubmitting URB in case of -EPROTO error.
+ - rtw88: fix RX clock gate setting while fifo dump
+ - brcmfmac: Add DMI nvram filename quirk for Cyberbook T116 tablet
+ - ipmi: Disable some operations during a panic
+ - fs/proc/uptime.c: Fix idle time reporting in /proc/uptime
+ - ACPICA: Avoid evaluating methods too early during system resume
+ - media: usb: dvd-usb: fix uninit-value bug in dibusb_read_eeprom_byte()
+ - net-sysfs: try not to restart the syscall if it will fail eventually
+ - tracefs: Have tracefs directories not set OTH permission bits by default
+ - ath: dfs_pattern_detector: Fix possible null-pointer dereference in
+ channel_detector_create()
+ - iov_iter: Fix iov_iter_get_pages{,_alloc} page fault return value
+ - ACPI: battery: Accept charges over the design capacity as full
+ - net: phy: micrel: make *-skew-ps check more lenient
+ - [arm64] drm/msm: prevent NULL dereference in msm_gpu_crashstate_capture()
+ - block: bump max plugged deferred size from 16 to 32
+ - md: update superblock after changing rdev flags in state_store
+ - memstick: r592: Fix a UAF bug when removing the driver
+ - lib/xz: Avoid overlapping memcpy() with invalid input with in-place
+ decompression
+ - lib/xz: Validate the value before assigning it to an enum variable
+ - workqueue: make sysfs of unbound kworker cpumask more clever
+ - mwl8k: Fix use-after-free in mwl8k_fw_state_machine()
+ - block: remove inaccurate requeue check
+ - nvmet: fix use-after-free when a port is removed
+ - nvmet-rdma: fix use-after-free when a port is removed
+ - nvmet-tcp: fix use-after-free when a port is removed
+ - nvme: drop scan_lock and always kick requeue list when removing namespaces
+ - PM: hibernate: Get block device exclusively in swsusp_check()
+ - iwlwifi: mvm: disable RX-diversity in powersave
+ - gre/sit: Don't generate link-local addr if addr_gen_mode is
+ IN6_ADDR_GEN_MODE_NONE
+ - gfs2: Cancel remote delete work asynchronously
+ - gfs2: Fix glock_hash_walk bugs
+ - vrf: run conntrack only in context of lower/physdev for locally generated
+ packets
+ - net: annotate data-race in neigh_output()
+ - ACPI: AC: Quirk GK45 to skip reading _PSR
+ - btrfs: reflink: initialize return value to 0 in btrfs_extent_same()
+ - btrfs: do not take the uuid_mutex in btrfs_rm_device
+ - [arm64] wcn36xx: Correct band/freq reporting on RX
+ - [x86] hyperv: Protect set_hv_tscchange_cb() against getting preempted
+ - drm/amd/display: dcn20_resource_construct reduce scope of FPU enabled
+ - task_stack: Fix end_of_stack() for architectures with upwards-growing
+ stack
+ - erofs: don't trigger WARN() when decompression fails
+ - netfilter: conntrack: set on IPS_ASSURED if flows enters internal stream
+ state
+ - Bluetooth: fix init and cleanup of sco_conn.timeout_work
+ - rcu: Fix existing exp request check in sync_sched_exp_online_cleanup()
+ - objtool: Add xen_start_kernel() to noreturn list
+ - [x86] xen: Mark cpu_bringup_and_idle() as dead_end_function
+ - objtool: Fix static_call list generation
+ - virtio-gpu: fix possible memory allocation failure
+ - lockdep: Let lock_is_held_type() detect recursive read as read
+ - net: net_namespace: Fix undefined member in key_remove_domain()
+ - cgroup: Make rebind_subsystems() disable v2 controllers all at once
+ - [arm64] wcn36xx: Fix Antenna Diversity Switching
+ - Bluetooth: btmtkuart: fix a memleak in mtk_hci_wmt_sync
+ - [arm64] crypto: caam - disable pkc for non-E SoCs
+ - rxrpc: Fix _usecs_to_jiffies() by using usecs_to_jiffies()
+ - ath11k: fix some sleeping in atomic bugs
+ - ath11k: Avoid race during regd updates
+ - ath11k: fix packet drops due to incorrect 6 GHz freq value in rx status
+ - ath11k: Fix memory leak in ath11k_qmi_driver_event_work
+ - ath10k: Fix missing frame timestamp for beacon/probe-resp
+ - ath10k: sdio: Add missing BH locking around napi_schdule()
+ - drm/ttm: stop calling tt_swapin in vm_access
+ - [arm64] mm: update max_pfn after memory hotplug
+ - drm/amdgpu: fix warning for overflow check
+ - media: em28xx: add missing em28xx_close_extension
+ - media: dvb-usb: fix ununit-value in az6027_rc_query
+ - media: v4l2-ioctl: S_CTRL output the right value
+ - media: si470x: Avoid card name truncation
+ - [x86] media: tm6000: Avoid card name truncation
+ - media: cx23885: Fix snd_card_free call on null card pointer
+ - kprobes: Do not use local variable when creating debugfs file
+ - cpuidle: Fix kobject memory leaks in error paths
+ - media: em28xx: Don't use ops->suspend if it is NULL
+ - ath9k: Fix potential interrupt storm on queue reset
+ - PM: EM: Fix inefficient states detection
+ - [amd64] EDAC/amd64: Handle three rank interleaving mode
+ - rcu: Always inline rcu_dynticks_task*_{enter,exit}()
+ - netfilter: nft_dynset: relax superfluous check on set updates
+ - [x86] crypto: qat - detect PFVF collision after ACK
+ - [x86] crypto: qat - disregard spurious PFVF interrupts
+ - b43legacy: fix a lower bounds test
+ - b43: fix a lower bounds test
+ - [amd64] gve: Recover from queue stall due to missed IRQ
+ - [armhf] mmc: sdhci-omap: Fix NULL pointer exception if regulator is not
+ configured
+ - [armhf] mmc: sdhci-omap: Fix context restore
+ - memstick: jmb38x_ms: use appropriate free function in
+ jmb38x_ms_alloc_host()
+ - net, neigh: Fix NTF_EXT_LEARNED in combination with NTF_USE
+ - hwmon: Fix possible memleak in __hwmon_device_register()
+ - ath10k: fix max antenna gain unit
+ - kernel/sched: Fix sched_fork() access an invalid sched_task_group
+ - tcp: switch orphan_count to bare per-cpu counters
+ - [arm64] drm/msm: potential error pointer dereference in init()
+ - [arm64] drm/msm: uninitialized variable in msm_gem_import()
+ - net: stream: don't purge sk_error_queue in sk_stream_kill_queues()
+ - [x86] platform/x86: thinkpad_acpi: Fix bitwise vs. logical warning
+ - mt76: mt76x02: fix endianness warnings in mt76x02_mac.c
+ - rsi: stop thread firstly in rsi_91x_init() error handling
+ - mwifiex: Send DELBA requests according to spec
+ - [arm64] net: enetc: unmap DMA in enetc_send_cmd()
+ - phy: micrel: ksz8041nl: do not use power down mode
+ - nvme-rdma: fix error code in nvme_rdma_setup_ctrl
+ - PM: hibernate: fix sparse warnings
+ - [arm64] drm/msm: Fix potential NULL dereference in DPU SSPP
+ - bpftool: Avoid leaking the JSON writer prepared for program metadata
+ - [s390x] gmap: don't unconditionally call pte_unmap_unlock() in
+ __gmap_zap()
+ - [s390x] KVM: pv: avoid double free of sida page
+ - [s390x] KVM: pv: avoid stalls for kvm_s390_pv_init_vm
+ - tpm: fix Atmel TPM crash caused by too frequent queries
+ - tpm_tis_spi: Add missing SPI ID
+ - tcp: don't free a FIN sk_buff in tcp_remove_empty_skb()
+ - [s390x] KVM: Fix handle_sske page fault handling
+ - libertas_tf: Fix possible memory leak in probe and disconnect
+ - libertas: Fix possible memory leak in probe and disconnect
+ - [arm64] wcn36xx: add proper DMA memory barriers in rx path
+ - [arm64] wcn36xx: Fix discarded frames due to wrong sequence number
+ - drm/amdgpu/gmc6: fix DMA mask from 44 to 40 bits
+ - [amd64,arm64] net: amd-xgbe: Toggle PLL settings during rate change
+ - net: phylink: avoid mvneta warning when setting pause parameters
+ - crypto: pcrypt - Delay write to padata->info
+ - udp6: allow SO_MARK ctrl msg to affect routing
+ - cgroup: Fix rootcg cpu.stat guest double counting
+ - bpf: Fix propagation of bounds from 64-bit min/max into 32-bit and
+ var_off.
+ - bpf: Fix propagation of signed bounds from 64-bit min/max into 32-bit.
+ - iio: st_sensors: Call st_sensors_power_enable() from bus drivers
+ - iio: st_sensors: disable regulators after device unregistration
+ - RDMA/bnxt_re: Fix query SRQ failure
+ - [arm64] dts: meson-g12a: Fix the pwm regulator supply properties
+ - [armhf] bus: ti-sysc: Fix timekeeping_suspended warning on resume
+ - scsi: dc395: Fix error case unwinding
+ - JFS: fix memleak in jfs_mount
+ - ALSA: hda: Reduce udelay() at SKL+ position reporting
+ - ALSA: hda: Release controller display power during shutdown/reboot
+ - ALSA: hda: Fix hang during shutdown due to link reset
+ - ALSA: hda: Use position buffer for SKL+ again
+ - soundwire: debugfs: use controller id and link_id for debugfs
+ - scsi: pm80xx: Fix misleading log statement in pm8001_mpi_get_nvmd_resp()
+ - driver core: Fix possible memory leak in device_link_add()
+ - [x86] ASoC: SOF: topology: do not power down primary core during topology
+ removal
+ - [arm64,armhf] soc/tegra: Fix an error handling path in
+ tegra_powergate_power_up()
+ - [powerpc*] Refactor is_kvm_guest() declaration to new header
+ - [powerpc*] Rename is_kvm_guest() to check_kvm_guest()
+ - [powerpc*] Reintroduce is_kvm_guest() as a fast-path check
+ - [powerpc*] Fix is_kvm_guest() / kvm_para_available()
+ - [powerpc*] fix unbalanced node refcount in check_kvm_guest()
+ - serial: 8250_dw: Drop wrong use of ACPI_PTR()
+ - scsi: csiostor: Uninitialized data in csio_ln_vnp_read_cbfn()
+ - RDMA/mlx4: Return missed an error if device doesn't support steering
+ - iio: adis: do not disabe IRQs in 'adis_init()'
+ - scsi: ufs: Refactor ufshcd_setup_clocks() to remove skip_ref_clk
+ - [arm64,armhf] serial: imx: fix detach/attach of serial console
+ - [arm*] usb: dwc2: drd: fix dwc2_force_mode call in dwc2_ovr_init
+ - [arm*] usb: dwc2: drd: fix dwc2_drd_role_sw_set when clock could be
+ disabled
+ - [arm*] usb: dwc2: drd: reset current session before setting the new one
+ - [arm64] firmware: qcom_scm: Fix error retval in
+ __qcom_scm_is_call_available()
+ - [arm64] phy: qcom-qusb2: Fix a memory leak on probe
+ - [armhf] phy: ti: gmii-sel: check of_get_address() for failure
+ - [arm64] serial: xilinx_uartps: Fix race condition causing stuck TX
+ - HID: u2fzero: clarify error check and length calculations
+ - HID: u2fzero: properly handle timeouts in usb_submit_urb
+ - virtio_ring: check desc == NULL when using indirect with packed
+ - [mips*] cm: Convert to bitfield API to fix out-of-bounds access
+ - apparmor: fix error check
+ - rpmsg: Fix rpmsg_create_ept return when RPMSG config is not defined
+ - nfsd: don't alloc under spinlock in rpc_parse_scope_id
+ - NFS: Fix dentry verifier races
+ - pnfs/flexfiles: Fix misplaced barrier in nfs4_ff_layout_prepare_ds
+ - drm/plane-helper: fix uninitialized variable reference
+ - [arm64] PCI: aardvark: Don't spam about PIO Response Status
+ - [arm64] PCI: aardvark: Fix preserving PCI_EXP_RTCTL_CRSSVE flag on
+ emulated bridge
+ - opp: Fix return in _opp_add_static_v2()
+ - NFS: Fix deadlocks in nfs_scan_commit_list()
+ - fs: orangefs: fix error return code of orangefs_revalidate_lookup()
+ - [arm64] mtd: spi-nor: hisi-sfc: Remove excessive clk_disable_unprepare()
+ - mtd: core: don't remove debugfs directory if device is in use
+ - [armhf] remoteproc: Fix a memory leak in an error handling path in
+ 'rproc_handle_vdev()'
+ - NFS: Fix up commit deadlocks
+ - NFS: Fix an Oops in pnfs_mark_request_commit()
+ - Fix user namespace leak
+ - [arm64] soc: fsl: dpaa2-console: free buffer before returning from
+ dpaa2_console_read
+ - netfilter: nfnetlink_queue: fix OOB when mac header was cleared
+ - [x86] watchdog: f71808e_wdt: fix inaccurate report in WDIOC_GETTIMEOUT
+ - scsi: qla2xxx: Changes to support FCP2 Target
+ - scsi: qla2xxx: Relogin during fabric disturbance
+ - scsi: qla2xxx: Fix gnl list corruption
+ - scsi: qla2xxx: Turn off target reset during issue_lip
+ - NFSv4: Fix a regression in nfs_set_open_stateid_locked()
+ - xen-pciback: Fix return in pm_ctrl_init()
+ - [armhf] net: davinci_emac: Fix interrupt pacing disable
+ - ethtool: fix ethtool msg len calculation for pause stats
+ - net: vlan: fix a UAF in vlan_dev_real_dev()
+ - ice: Fix replacing VF hardware MAC to existing MAC filter
+ - ice: Fix not stopping Tx queues for VFs
+ - [x86] ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses
+ - net: phy: fix duplex out of sync problem while changing settings
+ - bonding: Fix a use-after-free problem when bond_sysfs_slave_add() failed
+ - mfd: core: Add missing of_node_put for loop iteration
+ - mm/zsmalloc.c: close race window between zs_pool_dec_isolated() and
+ zs_unregister_migration()
+ - zram: off by one in read_block_state()
+ - llc: fix out-of-bound array index in llc_sk_dev_hash()
+ - nfc: pn533: Fix double free when pn533_fill_fragment_skbs() fails
+ - [arm64] pgtable: make __pte_to_phys/__phys_to_pte_val inline functions
+ - bpf, sockmap: Remove unhash handler for BPF sockmap usage
+ - bpf: sockmap, strparser, and tls are reusing qdisc_skb_cb and colliding
+ - [amd64] gve: Fix off by one in gve_tx_timeout()
+ - seq_file: fix passing wrong private data
+ - net/sched: sch_taprio: fix undefined behavior in ktime_mono_to_any
+ - [arm64] net: hns3: fix kernel crash when unload VF while it is being reset
+ - [arm64] net: hns3: allow configure ETS bandwidth of all TCs
+ - net: stmmac: allow a tc-taprio base-time of zero
+ - vsock: prevent unnecessary refcnt inc for nonblocking connect
+ - net/smc: fix sk_refcnt underflow on linkdown and fallback
+ - cxgb4: fix eeprom len when diagnostics not implemented
+ - [armel,armhf] 9155/1: fix early early_iounmap()
+ - [armhf] 9156/1: drop cc-option fallbacks for architecture selection
+ - [x86] mce: Add errata workaround for Skylake SKX37
+ - posix-cpu-timers: Clear task::posix_cputimers_work in copy_process()
+ - f2fs: should use GFP_NOFS for directory inodes
+ - net, neigh: Enable state migration between NUD_PERMANENT and NTF_USE
+ - 9p/net: fix missing error check in p9_check_errors
+ - memcg: prohibit unconditional exceeding the limit of dying tasks
+ - [powerpc*] lib: Add helper to check if offset is within conditional branch
+ range
+ - [powerpc*] bpf: Validate branch ranges
+ - [powerpc*] security: Add a helper to query stf_barrier type
+ - [powerpc*] bpf: Emit stf barrier instruction sequences for BPF_NOSPEC
+ - mm, oom: pagefault_out_of_memory: don't force global OOM for dying tasks
+ - mm, oom: do not trigger out_of_memory from the #PF
+ - video: backlight: Drop maximum brightness override for brightness zero
+ - [s390x] cio: check the subchannel validity for dev_busid
+ - [s390x] tape: fix timer initialization in tape_std_assign()
+ - [s390x] ap: Fix hanging ioctl caused by orphaned replies
+ - [s390x] cio: make ccw_device_dma_* more robust
+ - [powerpc*] powernv/prd: Unregister OPAL_MSG_PRD2 notifier during module
+ unload
+ - [arm64,armhf] drm/sun4i: Fix macros in sun8i_csc.h
+ - PCI: Add PCI_EXP_DEVCTL_PAYLOAD_* macros
+ - [arm64] PCI: aardvark: Fix PCIe Max Payload Size setting
+ - SUNRPC: Partial revert of commit 6f9f17287e78
+ - ath10k: fix invalid dma_addr_t token assignment
+ - arch/cc: Introduce a function to check for confidential computing features
+ - [arm64,armhf] soc/tegra: pmc: Fix imbalanced clock disabling in error code
+ path
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.81
+ - block: Add a helper to validate the block size
+ - loop: Use blk_validate_block_size() to validate block size
+ - bootconfig: init: Fix memblock leak in xbc_make_cmdline()
+ - net: stmmac: add clocks management for gmac driver
+ - net: stmmac: fix missing unlock on error in stmmac_suspend()
+ - net: stmmac: fix system hang if change mac address after interface ifdown
+ - net: stmmac: fix issue where clk is being unprepared twice
+ - [arm64,armhf] net: stmmac: dwmac-rk: fix unbalanced pm_runtime_enable
+ warnings
+ - [x86] iopl: Fake iopl(3) CLI/STI usage
+ - PCI/MSI: Destroy sysfs before freeing entries
+ - PCI/MSI: Deal with devices lying about their MSI mask capability
+ - PCI: Add MSI masking quirk for Nvidia ION AHCI
+ - erofs: remove the occupied parameter from z_erofs_pagevec_enqueue()
+ - erofs: fix unsafe pagevec reuse of hooked pclusters
+ - scripts/lld-version.sh: Rewrite based on upstream ld-version.sh
+ - perf/core: Avoid put_page() when GUP fails
+ - thermal: Fix NULL pointer dereferences in of_thermal_ functions
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.82
+ - [arm64] zynqmp: Do not duplicate flash partition label property
+ - [arm64] zynqmp: Fix serial compatible string
+ - scsi: lpfc: Fix list_add() corruption in lpfc_drain_txq()
+ - [armhf] bus: ti-sysc: Add quirk handling for reinit on context lost
+ - [armhf] bus: ti-sysc: Use context lost quirk for otg
+ - [armhf] usb: musb: tusb6010: check return value after calling
+ platform_get_resource()
+ - [x86] usb: typec: tipd: Remove WARN_ON in tps6598x_block_read
+ - staging: rtl8723bs: remove possible deadlock when disconnect (v2)
+ - [x86] ASoC: SOF: Intel: hda-dai: fix potential locking issue
+ - [armhf] clk: imx: imx6ul: Move csi_sel mux to correct base register
+ - [x86] ASoC: nau8824: Add DMI quirk mechanism for active-high jack-detect
+ - scsi: advansys: Fix kernel pointer leak
+ - ALSA: intel-dsp-config: add quirk for APL/GLK/TGL devices based on ES8336
+ codec
+ - firmware_loader: fix pre-allocated buf built-in firmware use
+ - tty: tty_buffer: Fix the softlockup issue in flush_to_ldisc
+ - scsi: scsi_debug: Fix out-of-bound read in resp_readcap16()
+ - scsi: scsi_debug: Fix out-of-bound read in resp_report_tgtpgs()
+ - scsi: target: Fix ordered tag handling
+ - scsi: target: Fix alua_tg_pt_gps_count tracking
+ - iio: imu: st_lsm6dsx: Avoid potential array overflow in
+ st_lsm6dsx_set_odr()
+ - [i386] ALSA: gus: fix null pointer dereference on pointer block
+ - maple: fix wrong return value of maple_bus_init().
+ - f2fs: fix up f2fs_lookup tracepoints
+ - f2fs: fix to use WHINT_MODE
+ - f2fs: compress: disallow disabling compress on non-empty compressed file
+ - f2fs: fix incorrect return value in f2fs_sanity_check_ckpt()
+ - [armhf] clk/ast2600: Fix soc revision for AHB
+ - [arm64] clk: qcom: gcc-msm8996: Drop (again) gcc_aggre1_pnoc_ahb_clk
+ - sched/core: Mitigate race cpus_share_cache()/update_top_cache_domain()
+ - [x86] perf/x86/vlbr: Add c->flags to vlbr event constraints
+ - blkcg: Remove extra blkcg_bio_issue_init
+ - perf bpf: Avoid memory leak from perf_env__insert_btf()
+ - perf bench futex: Fix memory leak of perf_cpu_map__new()
+ - perf tests: Remove bash construct from record+zstd_comp_decomp.sh
+ - drm/nouveau: hdmigv100.c: fix corrupted HDMI Vendor InfoFrame
+ - net-zerocopy: Copy straggler unaligned data for TCP Rx. zerocopy.
+ - net-zerocopy: Refactor skb frag fast-forward op.
+ - tcp: Fix uninitialized access in skb frags array for Rx 0cp.
+ - tracing: Add length protection to histogram string copies
+ - bnxt_en: reject indirect blk offload when hw-tc-offload is off
+ - tipc: only accept encrypted MSG_CRYPTO msgs
+ - net: reduce indentation level in sk_clone_lock()
+ - sock: fix /proc/net/sockstat underflow in sk_clone_lock()
+ - net/smc: Make sure the link_id is unique
+ - iavf: Fix return of set the new channel count
+ - iavf: check for null in iavf_fix_features
+ - iavf: free q_vectors before queues in iavf_disable_vf
+ - iavf: Fix failure to exit out from last all-multicast mode
+ - iavf: prevent accidental free of filter structure
+ - iavf: validate pointers
+ - iavf: Fix for the false positive ASQ/ARQ errors while issuing VF reset
+ - iavf: Fix for setting queues to 0
+ - [x86] platform/x86: hp_accel: Fix an error handling path in
+ 'lis3lv02d_probe()'
+ - net/mlx5e: nullify cq->dbg pointer in mlx5_debug_cq_remove()
+ - net/mlx5: Lag, update tracker when state change event received
+ - net/mlx5: E-Switch, Change mode lock from mutex to rw semaphore
+ - net/mlx5: E-Switch, return error if encap isn't supported
+ - scsi: core: sysfs: Fix hang when device state is set via sysfs
+ - net: sched: act_mirred: drop dst for the direction from egress to ingress
+ - [arm64] net: dpaa2-eth: fix use-after-free in dpaa2_eth_remove
+ - net: virtio_net_hdr_to_skb: count transport header in UFO
+ - i40e: Fix correct max_pkt_size on VF RX queue
+ - i40e: Fix NULL ptr dereference on VSI filter sync
+ - i40e: Fix changing previously set num_queue_pairs for PFs
+ - i40e: Fix ping is lost after configuring ADq on VF
+ - i40e: Fix warning message and call stack during rmmod i40e driver
+ - i40e: Fix creation of first queue by omitting it if is not power of two
+ - i40e: Fix display error code in dmesg
+ - e100: fix device suspend/resume (Closes: #995927)
+ - [powerpc*] KVM: PPC: Book3S HV: Use GLOBAL_TOC for
+ kvmppc_h_set_dabr/xdabr()
+ - [x86] perf/x86/intel/uncore: Fix filter_tid mask for CHA events on Skylake
+ Server
+ - [x86] perf/x86/intel/uncore: Fix IIO event constraints for Skylake Server
+ - [s390x] kexec: fix return code handling
+ - [arm64,armhf] net: stmmac: dwmac-rk: Fix ethernet on rk3399 based devices
+ - tun: fix bonding active backup with arp monitoring
+ - tipc: check for null after calling kmemdup
+ - ipc: WARN if trying to remove ipc object which is absent
+ - [x86] hyperv: Fix NULL deref in set_hv_tscchange_cb() if Hyper-V setup
+ fails
+ - scsi: qla2xxx: Fix mailbox direction flags in qla2xxx_get_adapter_id()
+ - [s390x] kexec: fix memory leak of ipl report buffer
+ - block: Check ADMIN before NICE for IOPRIO_CLASS_RT
+ - [x86] KVM: nVMX: don't use vcpu->arch.efer when checking host state on
+ nested state load
+ - udf: Fix crash after seekdir
+ - [armhf] net: stmmac: socfpga: add runtime suspend/resume callback for
+ stratix10 platform
+ - btrfs: fix memory ordering between normal and ordered work functions
+ - cfg80211: call cfg80211_stop_ap when switch from P2P_GO type
+ - drm/udl: fix control-message timeout
+ - drm/nouveau: Add a dedicated mutex for the clients list (CVE-2020-27820)
+ - drm/nouveau: use drm_dev_unplug() during device removal (CVE-2020-27820)
+ - drm/nouveau: clean up all clients on device removal (CVE-2020-27820)
+ - [x86] drm/i915/dp: Ensure sink rate values are always valid
+ - drm/amdgpu: fix set scaling mode Full/Full aspect/Center not works on vga
+ and dvi connectors
+ - scsi: ufs: core: Fix task management completion
+ - scsi: ufs: core: Fix task management completion timeout race
+ - hugetlbfs: flush TLBs correctly after huge_pmd_unshare (CVE-2021-4002)
+ - RDMA/netlink: Add __maybe_unused to static inline in C file
+ - selinux: fix NULL-pointer dereference when hashtab allocation fails
+ - ASoC: DAPM: Cover regression by kctl change notification fix
+ - ice: Delete always true check of PF pointer
+ - fs: export an inode_update_time helper
+ - btrfs: update device path inode time instead of bd_inode
+ - [x86] ALSA: hda: hdac_ext_stream: fix potential locking issues
+ - ALSA: hda: hdac_stream: fix potential locking issue in
+ snd_hdac_stream_assign()
+ - Revert "perf: Rework perf_event_exit_event()"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.83
+ - bpf: Fix toctou on read-only map's constant scalar tracking
+ (CVE-2021-4001)
+ - ACPI: Get acpi_device's parent from the parent field
+ - USB: serial: option: add Telit LE910S1 0x9200 composition
+ - USB: serial: option: add Fibocom FM101-GL variants
+ - [arm*] usb: dwc2: gadget: Fix ISOC flow for elapsed frames
+ - [arm*] usb: dwc2: hcd_queue: Fix use of floating point literal
+ - [arm64,armhf] usb: dwc3: gadget: Ignore NoStream after End Transfer
+ - [arm64,armhf] usb: dwc3: gadget: Check for L1/L2/U3 for Start Transfer
+ - [arm64,armhf] usb: dwc3: gadget: Fix null pointer exception
+ - net: nexthop: fix null pointer dereference when IPv6 is not enabled
+ - [arm64,armhf] usb: chipidea: ci_hdrc_imx: fix potential error pointer
+ dereference in probe
+ - usb: typec: fusb302: Fix masking of comparator and bc_lvl interrupts
+ - usb: hub: Fix usb enumeration issue due to address0 race
+ - usb: hub: Fix locking issues with address0_mutex
+ - [arm*] binder: fix test regression due to sender_euid change
+ - ALSA: ctxfi: Fix out-of-range access
+ - ALSA: hda/realtek: Add quirk for ASRock NUC Box 1100
+ - ALSA: hda/realtek: Fix LED on HP ProBook 435 G7
+ - media: cec: copy sequence field for the reply
+ - HID: wacom: Use "Confidence" flag to prevent reporting invalid contacts
+ - [x86] staging: rtl8192e: Fix use after free in _rtl92e_pci_disconnect()
+ - fuse: release pipe buf after last use
+ - xen: don't continue xenstore initialization in case of errors
+ - xen: detect uninitialized xenbus in xenbus_init
+ - [powerpc*] KVM: PPC: Book3S HV: Prevent POWER7/8 TLB flush flushing SLB
+ - tracing/uprobe: Fix uprobe_perf_open probes iteration
+ - tracing: Fix pid filtering when triggers are attached
+ - [arm64,armhf] mmc: sdhci-esdhc-imx: disable CMDQ support
+ - mmc: sdhci: Fix ADMA for PAGE_SIZE >= 64KiB
+ - [armhf] mdio: aspeed: Fix "Link is Down" issue
+ - [arm64] PCI: aardvark: Deduplicate code in advk_pcie_rd_conf()
+ - [arm64] PCI: aardvark: Update comment about disabling link training
+ - [arm64] PCI: aardvark: Implement re-issuing config requests on CRS
+ response
+ - [arm64] PCI: aardvark: Simplify initialization of rootcap on virtual
+ bridge
+ - [arm64] PCI: aardvark: Fix link training
+ - proc/vmcore: fix clearing user buffer by properly using clear_user()
+ - netfilter: ctnetlink: fix filtering with CTA_TUPLE_REPLY
+ - netfilter: ctnetlink: do not erase error code with EINVAL
+ - netfilter: ipvs: Fix reuse connection if RS weight is 0
+ - netfilter: flowtable: fix IPv6 tunnel addr match
+ - [x86] ASoC: topology: Add missing rwsem around snd_ctl_remove() calls
+ - net: ieee802154: handle iftypes as u32
+ - NFSv42: Don't fail clone() unless the OP_CLONE operation failed
+ - [armhf] socfpga: Fix crash with CONFIG_FORTIRY_SOURCE
+ - drm/nouveau/acr: fix a couple NULL vs IS_ERR() checks
+ - scsi: mpt3sas: Fix kernel panic during drive powercycle test
+ - [arm*] drm/vc4: fix error code in vc4_create_object()
+ - iavf: Prevent changing static ITR values if adaptive moderation is on
+ - ALSA: intel-dsp-config: add quirk for JSL devices based on ES8336 codec
+ - [arm64,armhf] firmware: smccc: Fix check for ARCH_SOC_ID not implemented
+ - ipv6: fix typos in __ip6_finish_output()
+ - nfp: checking parameter process for rx-usecs/tx-usecs is invalid
+ - net: stmmac: fix system hang caused by eee_ctrl_timer during
+ suspend/resume
+ - net: stmmac: retain PTP clock time during SIOCSHWTSTAMP ioctls
+ - net: ipv6: add fib6_nh_release_dsts stub
+ - net: nexthop: release IPv6 per-cpu dsts when replacing a nexthop group
+ - ice: fix vsi->txq_map sizing
+ - ice: avoid bpf_prog refcount underflow
+ - scsi: core: sysfs: Fix setting device state to SDEV_RUNNING
+ - scsi: scsi_debug: Zero clear zones at reset write pointer
+ - erofs: fix deadlock when shrink erofs slab
+ - net/smc: Ensure the active closing peer first closes clcsock
+ - [arm64,armhf] net: marvell: mvpp2: increase MTU limit when XDP enabled
+ - nvmet-tcp: fix incomplete data digest send
+ - [armhf] net/ncsi : Add payload to be 32-bit aligned to fix dropped packets
+ - PM: hibernate: use correct mode for swsusp_close()
+ - drm/amd/display: Set plane update flags for all planes in reset
+ - tcp_cubic: fix spurious Hystart ACK train detections for not-cwnd-limited
+ flows
+ - lan743x: fix deadlock in lan743x_phy_link_status_change()
+ - net: phylink: Force link down and retrigger resolve on interface change
+ - net: phylink: Force retrigger in case of latched link-fail indicator
+ - net/smc: Fix NULL pointer dereferencing in smc_vlan_by_tcpsk()
+ - net/smc: Fix loop in smc_listen
+ - nvmet: use IOCB_NOWAIT only if the filesystem supports it
+ - igb: fix netpoll exit with traffic
+ - [mips*] loongson64: fix FTLB configuration
+ - [mips*] use 3-level pgtable for 64KB page size on MIPS_VA_BITS_48
+ - net/sched: sch_ets: don't peek at classes beyond 'nbands'
+ - net: vlan: fix underflow for the real_dev refcnt
+ - net/smc: Don't call clcsock shutdown twice when smc shutdown
+ - [arm64] net: hns3: fix VF RSS failed problem after PF enable multi-TCs
+ - [arm64] net: mscc: ocelot: don't downgrade timestamping RX filters in
+ SIOCSHWTSTAMP
+ - [arm64] net: mscc: ocelot: correctly report the timestamping RX filters in
+ ethtool
+ - tcp: correctly handle increased zerocopy args struct size
+ - sched/scs: Reset task stack state in bringup_cpu()
+ - f2fs: set SBI_NEED_FSCK flag when inconsistent node block found
+ - ceph: properly handle statfs on multifs setups
+ - smb3: do not error on fsync when readonly
+ - [amd64] iommu/amd: Clarify AMD IOMMUv2 initialization messages
+ - vhost/vsock: fix incorrect used length reported to the guest
+ - tracing: Check pid filtering when creating events
+ - xen: sync include/xen/interface/io/ring.h with Xen's newest version
+ - xen/blkfront: read response from backend only once
+ - xen/blkfront: don't take local copy of a request from the ring page
+ - xen/blkfront: don't trust the backend response data blindly
+ - xen/netfront: read response from backend only once
+ - xen/netfront: don't read data from request on the ring page
+ - xen/netfront: disentangle tx_skb_freelist
+ - xen/netfront: don't trust the backend response data blindly
+ - tty: hvc: replace BUG_ON() with negative return value
+ - [s390x] mm: validate VMA in PGSTE manipulation functions
+ - shm: extend forced shm destroy to support objects from several IPC nses
+ - net: stmmac: platform: fix build warning when with !CONFIG_PM_SLEEP
+ - drm/amdgpu/gfx9: switch to golden tsc registers for renoir+
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.84
+ - NFSv42: Fix pagecache invalidation after COPY/CLONE
+ - can: j1939: j1939_tp_cmd_recv(): check the dst address of TP.CM_BAM
+ - ovl: simplify file splice
+ - ovl: fix deadlock in splice write
+ - gfs2: release iopen glock early in evict
+ - gfs2: Fix length of holes reported at end-of-file
+ - [powerpc*] pseries/ddw: Revert "Extend upper limit for huge DMA window for
+ persistent memory"
+ - mac80211: do not access the IV when it was stripped
+ - net/smc: Transfer remaining wait queue entries during fallback
+ - [amd64,arm64] atlantic: Fix OOB read and write in hw_atl_utils_fw_rpc_wait
+ (CVE-2021-43975)
+ - net: return correct error code
+ - [x86] platform/x86: thinkpad_acpi: Add support for dual fan control
+ - [x86] platform/x86: thinkpad_acpi: Fix WWAN device disabled issue after S3
+ deep
+ - [s390x] setup: avoid using memblock_enforce_memory_limit
+ - btrfs: check-integrity: fix a warning on write caching disabled disk
+ - thermal: core: Reset previous low and high trip during thermal zone init
+ - scsi: iscsi: Unblock session then wake up error handler
+ - drm/amd/amdgpu: fix potential memleak
+ - ata: ahci: Add Green Sardine vendor ID as board_ahci_mobile
+ - [arm64] ethernet: hisilicon: hns: hns_dsaf_misc: fix a possible array
+ overflow in hns_dsaf_ge_srst_by_port()
+ - ipv6: check return value of ipv6_skip_exthdr
+ - net/smc: Avoid warning of possible recursive locking
+ - ACPI: Add stubs for wakeup handler functions
+ - vrf: Reset IPCB/IP6CB when processing outbound pkts in vrf dev xmit
+ - kprobes: Limit max data_size of the kretprobe instances
+ - rt2x00: do not mark device gone on EPROTO errors during start
+ - ipmi: Move remove_work to dedicated workqueue
+ - cpufreq: Fix get_cpu_device() failure in add_cpu_dev_symlink()
+ - [s390x] pci: move pseudo-MMIO to prevent MIO overlap
+ - fget: check that the fd still exists after getting a ref to it
+ - ipv6: fix memory leak in fib6_rule_suppress
+ - drm/amd/display: Allow DSC on supported MST branch devices
+ - KVM: Disallow user memslot with size that exceeds "unsigned long"
+ - [x86] KVM: nVMX: Flush current VPID (L1 vs. L2) for
+ KVM_REQ_TLB_FLUSH_GUEST
+ - [x86] KVM: x86: Use a stable condition around all VT-d PI paths
+ - [arm64] KVM: arm64: Avoid setting the upper 32 bits of TCR_EL2 and
+ CPTR_EL2 to 1
+ - [x86] KVM: X86: Use vcpu->arch.walk_mmu for kvm_mmu_invlpg()
+ - wireguard: allowedips: add missing __rcu annotation to satisfy sparse
+ - wireguard: device: reset peer src endpoint when netns exits
+ - wireguard: receive: use ring buffer for incoming handshakes
+ - wireguard: receive: drop handshakes if queue lock is contended
+ - wireguard: ratelimiter: use kvcalloc() instead of kvzalloc()
+ - [armhf] i2c: stm32f7: flush TX FIFO upon transfer errors
+ - [armhf] i2c: stm32f7: recover the bus on access timeout
+ - [armhf] i2c: stm32f7: stop dma transfer in case of NACK
+ - tcp: fix page frag corruption on page fault
+ - net: qlogic: qlcnic: Fix a NULL pointer dereference in
+ qlcnic_83xx_add_rings()
+ - net: mpls: Fix notifications when deleting a device
+ - siphash: use _unaligned version by default
+ - [arm64] ftrace: add missing BTIs
+ - net/mlx4_en: Fix an use-after-free bug in mlx4_en_try_alloc_resources()
+ - rxrpc: Fix rxrpc_peer leak in rxrpc_look_up_bundle()
+ - rxrpc: Fix rxrpc_local leak in rxrpc_lookup_peer()
+ - ALSA: intel-dsp-config: add quirk for CML devices based on ES8336 codec
+ - net: usb: lan78xx: lan78xx_phy_init(): use PHY_POLL instead of "0" if no
+ IRQ is available
+ - [arm64,armhf] net: marvell: mvpp2: Fix the computation of shared CPUs
+ - [arm64] dpaa2-eth: destroy workqueue at the end of remove function
+ - net: annotate data-races on txq->xmit_lock_owner
+ - ipv4: convert fib_num_tclassid_users to atomic_t
+ - net/smc: fix wrong list_del in smc_lgr_cleanup_early
+ - net/rds: correct socket tunable error in rds_tcp_tune()
+ - net/smc: Keep smc_close_final rc during active close
+ - [arm64] drm/msm/a6xx: Allocate enough space for GMU registers
+ - [arm64] drm/msm: Do hw_init() before capturing GPU state
+ - [amd64,arm64] atlantic: Increase delay for fw transactions
+ - [amd64,arm64] atlatnic: enable Nbase-t speeds with base-t
+ - [amd64,arm64] atlantic: Fix to display FW bundle version instead of FW mac
+ version.
+ - [amd64,arm64] atlantic: Add missing DIDs and fix 115c.
+ - [amd64,arm64] Remove Half duplex mode speed capabilities.
+ - [amd64,arm64] atlantic: Fix statistics logic for production hardware
+ - [amd64,arm64] atlantic: Remove warn trace message.
+ - [x86] KVM: x86/pmu: Fix reserved bits for AMD PerfEvtSeln register
+ - [x86] KVM: VMX: Set failure code in prepare_vmcs02()
+ - [x86] entry: Use the correct fence macro after swapgs in kernel CR3
+ - [x86] xen: Add xenpv_restore_regs_and_return_to_usermode()
+ - sched/uclamp: Fix rq->uclamp_max not set on first enqueue
+ - [x86] pv: Switch SWAPGS to ALTERNATIVE
+ - [x86] entry: Add a fence for kernel entry SWAPGS in paranoid_entry()
+ - vgacon: Propagate console boot parameters before calling `vc_resize'
+ - xhci: Fix commad ring abort, write all 64 bits to CRCR register.
+ - USB: NO_LPM quirk Lenovo Powered USB-C Travel Hub
+ - usb: typec: tcpm: Wait in SNK_DEBOUNCED until disconnect
+ - [x86] tsc: Add a timer to make sure TSC_adjust is always checked
+ - [x86] tsc: Disable clocksource watchdog for TSC on qualified platorms
+ - [x86] 64/mm: Map all kernel memory into trampoline_pgd
+ - [arm64] tty: serial: msm_serial: Deactivate RX DMA for polling support
+ - [arm*] serial: pl011: Add ACPI SBSA UART match id
+ - [arm64,armhf] serial: tegra: Change lower tolerance baud rate limit for
+ tegra20 and tegra30
+ - serial: core: fix transmit-buffer reset and memleak
+ - serial: 8250_pci: Fix ACCES entries in pci_serial_quirks array
+ - serial: 8250_pci: rewrite pericom_do_set_divisor()
+ - serial: 8250: Fix RTS modem control while in rs485 mode
+ - iwlwifi: mvm: retry init flow if failed
+ - ipmi: msghandler: Make symbol 'remove_work_wq' static
+
+ [ Salvatore Bonaccorso ]
+ * integrity: Drop "MODSIGN: load blacklist from MOKx" as redundant after
+ 5.10.47.
+ * Bump ABI to 10
+ * Refresh "tools/perf: pmu-events: Fix reproducibility"
+ * [rt] Update to 5.10.73-rt54
+ * [rt] Refresh "tracing: Merge irqflags + preempt counter."
+ * Refresh "Export symbols needed by Android drivers"
+ * [rt] Refresh "printk: introduce kernel sync mode"
+ * [rt] Refresh "printk: move console printing to kthreads"
+ * [rt] Drop "rcutorture: Avoid problematic critical section nesting on RT"
+ * [rt] Add new signing key for Luis Claudio R. Goncalves
+ * [rt] Update to 5.10.83-rt58
+
+ [ Ben Hutchings ]
+ * tools/perf: Fix warning introduced by "tools/perf: pmu-events: Fix
+ reproducibility"
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 08 Dec 2021 17:21:12 +0100
+
+linux (5.10.70-1) bullseye; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.47
+ - module: limit enabling module.sig_enforce (CVE-2021-35039)
+ - drm: add a locked version of drm_is_current_master
+ - drm/nouveau: wait for moving fence after pinning v2
+ - drm/radeon: wait for moving fence after pinning
+ - drm/amdgpu: wait for moving fence after pinning
+ - [arm64] mmc: meson-gx: use memcpy_to/fromio for dram-access-quirk
+ - [arm64] Ignore any DMA offsets in the max_zone_phys() calculation
+ - [arm64] Force NO_BLOCK_MAPPINGS if crashkernel reservation is required
+ - [arm64] spi: spi-nxp-fspi: move the register operation after the clock
+ enable
+ - [arm*] drm/vc4: hdmi: Move the HSM clock enable to runtime_pm
+ - [arm*] drm/vc4: hdmi: Make sure the controller is powered in detect
+ - [x86] entry: Fix noinstr fail in __do_fast_syscall_32()
+ - [amd64] x86/xen: Fix noinstr fail in exc_xen_unknown_trap()
+ - locking/lockdep: Improve noinstr vs errors
+ - [x86] perf/x86/lbr: Remove cpuc->lbr_xsave allocation from atomic context
+ - [x86] perf/x86/intel/lbr: Zero the xstate buffer on allocation
+ - [armhf] dmaengine: stm32-mdma: fix PM reference leak in
+ stm32_mdma_alloc_chan_resourc()
+ - mac80211: remove warning in ieee80211_get_sband()
+ - mac80211_hwsim: drop pending frames on stop
+ - cfg80211: call cfg80211_leave_ocb when switching away from OCB
+ - net: ipv4: Remove unneed BUG() function
+ - mac80211: drop multicast fragments
+ - net: ethtool: clear heap allocations for ethtool function
+ - inet: annotate data race in inet_send_prepare() and inet_dgram_connect()
+ - ping: Check return value of function 'ping_queue_rcv_skb'
+ - net: annotate data race in sock_error()
+ - inet: annotate date races around sk->sk_txhash
+ - net/packet: annotate data race in packet_sendmsg()
+ - net: phy: dp83867: perform soft reset and retain established link
+ - net/packet: annotate accesses to po->bind
+ - net/packet: annotate accesses to po->ifindex
+ - r8152: Avoid memcpy() over-reading of ETH_SS_STATS
+ - r8169: Avoid memcpy() over-reading of ETH_SS_STATS
+ - net: qed: Fix memcpy() overflow of qed_dcbx_params()
+ - mac80211: reset profile_periodicity/ema_ap
+ - mac80211: handle various extensible elements correctly
+ - [x86] PCI: Add AMD RS690 quirk to enable 64-bit DMA
+ - [x86] perf/x86: Track pmu in per-CPU cpu_hw_events
+ - [armhf] pinctrl: stm32: fix the reported number of GPIO lines per bank
+ - i2c: i801: Ensure that SMBHSTSTS_INUSE_STS is cleared when leaving
+ i801_access
+ - gpiolib: cdev: zero padding during conversion to gpioline_info_changed
+ - scsi: sd: Call sd_revalidate_disk() for ioctl(BLKRRPART)
+ - nilfs2: fix memory leak in nilfs_sysfs_delete_device_group
+ - [s390x] stack: fix possible register corruption with stack switch helper
+ - i2c: robotfuzz-osif: fix control-request directions
+ - ceph: must hold snap_rwsem when filling inode for async create
+ - kthread_worker: split code for canceling the delayed work timer
+ - kthread: prevent deadlock when kthread_mod_delayed_work() races with
+ kthread_cancel_delayed_work_sync()
+ - [x86] fpu: Preserve supervisor states in sanitize_restored_user_xstate()
+ - [x86] fpu: Make init_fpstate correct with optimized XSAVE
+ - mm: add VM_WARN_ON_ONCE_PAGE() macro
+ - mm/rmap: remove unneeded semicolon in page_not_mapped()
+ - mm/rmap: use page_not_mapped in try_to_unmap()
+ - mm, thp: use head page in __migration_entry_wait()
+ - mm/thp: fix __split_huge_pmd_locked() on shmem migration entry
+ - mm/thp: make is_huge_zero_pmd() safe and quicker
+ - mm/thp: try_to_unmap() use TTU_SYNC for safe splitting
+ - mm/thp: fix vma_address() if virtual address below file offset
+ - mm/thp: fix page_address_in_vma() on file THP tails
+ - mm/thp: unmap_mapping_page() to fix THP truncate_cleanup_page()
+ - mm: thp: replace DEBUG_VM BUG with VM_WARN when unmap fails for split
+ - mm: page_vma_mapped_walk(): use page for pvmw->page
+ - mm: page_vma_mapped_walk(): settle PageHuge on entry
+ - mm: page_vma_mapped_walk(): use pmde for *pvmw->pmd
+ - mm: page_vma_mapped_walk(): prettify PVMW_MIGRATION block
+ - mm: page_vma_mapped_walk(): crossing page table boundary
+ - mm: page_vma_mapped_walk(): add a level of indentation
+ - mm: page_vma_mapped_walk(): use goto instead of while (1)
+ - mm: page_vma_mapped_walk(): get vma_address_end() earlier
+ - mm/thp: fix page_vma_mapped_walk() if THP mapped by ptes
+ - mm/thp: another PVMW_SYNC fix in page_vma_mapped_walk()
+ - mm, futex: fix shared futex pgoff on shmem huge page
+ - [x86] KVM: SVM: Call SEV Guest Decommission if ASID binding fails
+ - netfs: fix test for whether we can skip read when writing beyond EOF
+ - Revert "drm: add a locked version of drm_is_current_master"
+ - certs: Add EFI_CERT_X509_GUID support for dbx entries (CVE-2020-26541)
+ - certs: Move load_system_certificate_list to a common function
+ - certs: Add ability to preload revocation certs
+ - integrity: Load mokx variables into the blacklist keyring
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.48
+ - scsi: sr: Return appropriate error code when disk is ejected
+ - [arm64,armhf] gpio: mxc: Fix disabled interrupt wake-up support
+ - drm/nouveau: fix dma_address check for CPU/GPU sync
+ - RDMA/mlx5: Block FDB rules when not in switchdev mode
+ - [x86] Revert "KVM: x86/mmu: Drop kvm_mmu_extended_role.cr4_la57 hack"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.49
+ - [powerpc*] KVM: PPC: Book3S HV: Save and restore FSCR in the P9 path
+ - media: uvcvideo: Support devices that report an OT as an entity source
+ - xen/events: reset active flag for lateeoi events later
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.50
+ - Bluetooth: hci_qca: fix potential GPF
+ - Bluetooth: btqca: Don't modify firmware contents in-place
+ - Bluetooth: Remove spurious error message
+ - ALSA: usb-audio: fix rate on Ozone Z90 USB headset
+ - ALSA: usb-audio: Fix OOB access at proc output
+ - ALSA: firewire-motu: fix stream format for MOTU 8pre FireWire
+ - ALSA: usb-audio: scarlett2: Fix wrong resume call
+ - ALSA: intel8x0: Fix breakage at ac97 clock measurement
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 450 G8
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G8
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 630 G8
+ - ALSA: hda/realtek: Add another ALC236 variant support
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook x360 830 G8
+ - ALSA: hda/realtek: Improve fixup for HP Spectre x360 15-df0xxx
+ - ALSA: hda/realtek: Fix bass speaker DAC mapping for Asus UM431D
+ - ALSA: hda/realtek: Apply LED fixup for HP Dragonfly G1, too
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 830 G8 Notebook
+ PC
+ - media: dvb-usb: fix wrong definition
+ - Input: usbtouchscreen - fix control-request directions
+ - net: can: ems_usb: fix use-after-free in ems_usb_disconnect()
+ - usb: gadget: eem: fix echo command packet response issue
+ - USB: cdc-acm: blacklist Heimann USB Appset device
+ - [arm64,armhf] usb: dwc3: Fix debugfs creation flow
+ - usb: typec: Add the missed altmode_id_remove() in typec_register_altmode()
+ - xhci: solve a double free problem while doing s4
+ - gfs2: Fix underflow in gfs2_page_mkwrite
+ - gfs2: Fix error handling in init_statfs
+ - copy_page_to_iter(): fix ITER_DISCARD case
+ - iov_iter_fault_in_readable() should do nothing in xarray case
+ - [powerpc*] crypto: nx - Fix memcpy() over-reading in nonce
+ - [amd64] crypto: ccp - Annotate SEV Firmware file names
+ - [armel,armhf] arm_pmu: Fix write counter incorrect in ARMv7 big-endian
+ mode
+ - btrfs: send: fix invalid path for unlink operations after parent
+ orphanization
+ - btrfs: compression: don't try to compress if we don't have enough pages
+ - btrfs: clear defrag status of a root if starting transaction fails
+ - ext4: cleanup in-core orphan list if ext4_truncate() failed to get a
+ transaction handle
+ - ext4: fix kernel infoleak via ext4_extent_header
+ - ext4: fix overflow in ext4_iomap_alloc()
+ - ext4: return error code when ext4_fill_flex_info() fails
+ - ext4: correct the cache_nr in tracepoint ext4_es_shrink_exit
+ - ext4: remove check for zero nr_to_scan in ext4_es_scan()
+ - ext4: fix avefreec in find_group_orlov
+ - ext4: use ext4_grp_locked_error in mb_find_extent
+ - can: gw: synchronize rcu operations before removing gw job entry
+ - can: isotp: isotp_release(): omit unintended hrtimer restart on socket
+ release
+ - can: j1939: j1939_sk_init(): set SOCK_RCU_FREE to call sk_destruct() after
+ RCU is done
+ - can: peak_pciefd: pucan_handle_status(): fix a potential starvation issue
+ in TX path
+ - mac80211: remove iwlwifi specific workaround that broke sta NDP tx
+ - SUNRPC: Fix the batch tasks count wraparound.
+ - SUNRPC: Should wake up the privileged task firstly.
+ - bus: mhi: Wait for M2 state during system resume
+ - mm/gup: fix try_grab_compound_head() race with split_huge_page()
+ - [arm64] perf/smmuv3: Don't trample existing events with global filter
+ - [x86] KVM: nVMX: Handle split-lock #AC exceptions that happen in L2
+ - [x86] KVM: x86/mmu: Treat NX as used (not reserved) for all !TDP shadow
+ MMUs
+ - [x86] KVM: x86/mmu: Use MMU's role to detect CR4.SMEP value in nested NPT
+ walk
+ - [s390x] cio: dont call css_wait_for_slow_path() inside a lock
+ - [s390x] mm: Fix secure storage access exception handling
+ - f2fs: Prevent swap file in LFS mode
+ - [armhf] rtc: stm32: Fix unbalanced clk_disable_unprepare() on probe error
+ path
+ - iio: light: tcs3472: do not free unallocated IRQ
+ - iio: ltr501: mark register holding upper 8 bits of ALS_DATA{0,1} and
+ PS_DATA as volatile, too
+ - iio: ltr501: ltr559: fix initialization of LTR501_ALS_CONTR
+ - iio: ltr501: ltr501_read_ps(): add missing endianness conversion
+ - iio: accel: bma180: Fix BMA25x bandwidth register values
+ - [arm64] serial: mvebu-uart: fix calculation of clock divisor
+ - [sh4] serial: sh-sci: Stop dmaengine transfer in sci_stop_tx()
+ - serial_cs: Add Option International GSM-Ready 56K/ISDN modem
+ - serial_cs: remove wrong GLOBETROTTER.cis entry
+ - ath9k: Fix kernel NULL pointer dereference during ath_reset_internal()
+ - ssb: sdio: Don't overwrite const buffer if block_write fails
+ - rsi: Assign beacon rate settings to the correct rate_info descriptor field
+ - rsi: fix AP mode with WPA failure due to encrypted EAPOL
+ - tracepoint: Add tracepoint_probe_register_may_exist() for BPF tracing
+ - seq_buf: Make trace_seq_putmem_hex() support data longer than 8
+ - [powerpc*] stacktrace: Fix spurious "stale" traces in
+ raise_backtrace_ipi()
+ - loop: Fix missing discard support when using LOOP_CONFIGURE
+ - fuse: Fix crash in fuse_dentry_automount() error path
+ - fuse: Fix crash if superblock of submount gets killed early
+ - fuse: Fix infinite loop in sget_fc()
+ - fuse: ignore PG_workingset after stealing
+ - fuse: check connected before queueing on fpq->io
+ - fuse: reject internal errno
+ - [arm*] thermal/cpufreq_cooling: Update offline CPUs per-cpu
+ thermal_pressure
+ - spi: Make of_register_spi_device also set the fwnode
+ - Add a reference to ucounts for each cred
+ - media: marvel-ccic: fix some issues when getting pm_runtime
+ - [i386] spi: spi-topcliff-pch: Fix potential double free in
+ pch_spi_process_messages()
+ - sched/core: Initialize the idle task with preemption disabled
+ - [armhf] hwrng: exynos - Fix runtime PM imbalance on error
+ - [powerpc*] crypto: nx - add missing MODULE_DEVICE_TABLE
+ - media: cpia2: fix memory leak in cpia2_usb_probe
+ - [arm64,armhf] media: hevc: Fix dependent slice segment flags
+ - media: pvrusb2: fix warning in pvr2_i2c_core_done
+ - [armhf] media: imx: imx7_mipi_csis: Fix logging of only error event
+ counters
+ - [x86] crypto: qat - check return code of qat_hal_rd_rel_reg()
+ - [x86] crypto: qat - remove unused macro in FW loader
+ - [arm64] crypto: qce: skcipher: Fix incorrect sg count for dma transfers
+ - [arm64] perf: Convert snprintf to sysfs_emit
+ - sched/fair: Fix ascii art by relpacing tabs
+ - media: bt878: do not schedule tasklet when it is not setup
+ - media: em28xx: Fix possible memory leak of em28xx struct
+ - media: v4l2-core: Avoid the dangling pointer in v4l2_fh_release
+ - media: bt8xx: Fix a missing check bug in bt878_probe
+ - media: dvd_usb: memory leak in cinergyt2_fe_attach
+ - memstick: rtsx_usb_ms: fix UAF
+ - mmc: via-sdmmc: add a check against NULL pointer dereference
+ - [arm64,armhf] spi: meson-spicc: fix a wrong goto jump for avoiding memory
+ leak.
+ - [arm64,armhf] spi: meson-spicc: fix memory leak in meson_spicc_probe
+ - crypto: shash - avoid comparing pointers to exported functions under CFI
+ - media: dvb_net: avoid speculation from net slot
+ - media: siano: fix device register error path
+ - [armhf] media: imx-csi: Skip first few frames from a BT.656 source
+ - [powerpc*] KVM: PPC: Book3S HV: Fix TLB management on SMT8 POWER9 and
+ POWER10 processors
+ - btrfs: fix error handling in __btrfs_update_delayed_inode
+ - btrfs: abort transaction if we fail to update the delayed inode
+ - btrfs: sysfs: fix format string for some discard stats
+ - btrfs: don't clear page extent mapped if we're not invalidating the full
+ page
+ - btrfs: disable build on platforms having page size 256K
+ - [s390x] KVM: get rid of register asm usage
+ - [armhf] regulator: da9052: Ensure enough delay time for
+ .set_voltage_time_sel
+ - [x86] ACPI: video: use native backlight for GA401/GA502/GA503
+ - HID: do not use down_interruptible() when unbinding devices
+ - ACPI: processor idle: Fix up C-state latency if not ordered
+ - [x86] hv_utils: Fix passing zero to 'PTR_ERR' warning
+ - lib: vsprintf: Fix handling of number field widths in vsscanf
+ - ACPI: EC: Make more Asus laptops use ECDT _GPE
+ - block_dump: remove block_dump feature in mark_inode_dirty()
+ - blk-mq: grab rq->refcount before calling ->fn in blk_mq_tagset_busy_iter
+ - blk-mq: clear stale request in tags->rq[] before freeing one request pool
+ - fs: dlm: cancel work sync othercon
+ - random32: Fix implicit truncation warning in prandom_seed_state()
+ - open: don't silently ignore unknown O-flags in openat2()
+ - [x86] drivers: hv: Fix missing error code in vmbus_connect()
+ - fs: dlm: fix memory leak when fenced
+ - ACPICA: Fix memory leak caused by _CID repair function
+ - ACPI: bus: Call kobject_put() in acpi_init() error path
+ - ACPI: resources: Add checks for ACPI IRQ override
+ - block: fix race between adding/removing rq qos and normal IO
+ - [x86] platform/x86: asus-nb-wmi: Revert "Drop duplicate DMI quirk
+ structures"
+ - [x86] platform/x86: asus-nb-wmi: Revert "add support for ASUS ROG Zephyrus
+ G14 and G15"
+ - [x86] platform/x86: toshiba_acpi: Fix missing error code in
+ toshiba_acpi_setup_keyboard()
+ - nvme-pci: fix var. type for increasing cq_head
+ - nvmet-fc: do not check for invalid target port in
+ nvmet_fc_handle_fcp_rqst()
+ - [amd64] EDAC/Intel: Do not load EDAC driver when running as a guest
+ - [amd64] PCI: hv: Add check for hyperv_initialized in init_hv_pci_drv()
+ - cifs: improve fallocate emulation
+ - ACPI: EC: trust DSDT GPE for certain HP laptop
+ - clocksource: Retry clock read if long delays detected
+ - clocksource: Check per-CPU clock synchronization when marked unstable
+ - tpm_tis_spi: add missing SPI device ID entries
+ - ACPI: tables: Add custom DSDT file as makefile prerequisite
+ - HID: wacom: Correct base usage for capacitive ExpressKey status bits
+ - cifs: fix missing spinlock around update to ses->status
+ - [arm64] mailbox: qcom: Use PLATFORM_DEVID_AUTO to register platform device
+ - block: fix discard request merge
+ - kthread_worker: fix return value when kthread_mod_delayed_work() races
+ with kthread_cancel_delayed_work_sync()
+ - [ia64] mca_drv: fix incorrect array size calculation
+ - writeback, cgroup: increment isw_nr_in_flight before grabbing an inode
+ - spi: Allow to have all native CSs in use along with GPIOs
+ - spi: Avoid undefined behaviour when counting unused native CSs
+ - [arm64] media: venus: Rework error fail recover logic
+ - [armhf] sata_highbank: fix deferred probing
+ - sched/uclamp: Fix wrong implementation of cpu.uclamp.min
+ - sched/uclamp: Fix locking around cpu_util_update_eff()
+ - [mips*] pata_octeon_cf: avoid WARN_ON() in ata_host_activate()
+ - [x86] elf: Use _BITUL() macro in UAPI headers
+ - [x86] crypto: ccp - Fix a resource leak in an error handling path
+ - media: rc: i2c: Fix an error message
+ - media: au0828: fix a NULL vs IS_ERR() check
+ - media: gspca/gl860: fix zero-length control requests
+ - media: siano: Fix out-of-bounds warnings in
+ smscore_load_firmware_family2()
+ - [arm64] crypto: nitrox - fix unchecked variable in
+ nitrox_register_interrupts
+ - [amd64] crypto: x86/curve25519 - fix cpu feature checking logic in
+ mod_exit
+ - [arm64[ consistently use reserved_pg_dir
+ - [arm64] mm: Fix ttbr0 values stored in struct thread_info for software-pan
+ - media: subdev: remove VIDIOC_DQEVENT_TIME32 handling
+ - hwmon: (lm70) Use device_get_match_data()
+ - hwmon: (lm70) Revert "hwmon: (lm70) Add support for ACPI"
+ - [x86] KVM: nVMX: Sync all PGDs on nested transition with shadow paging
+ - [x86] KVM: nVMX: Ensure 64-bit shift when checking VMFUNC bitmap
+ - [x86] KVM: nVMX: Don't clobber nested MMU's A/D status on EPTP switch
+ - [x86] KVM: x86/mmu: Fix return value in tdp_mmu_map_handle_target_level()
+ - [arm64] perf/arm-cmn: Fix invalid pointer when access dtc object sharing
+ the same IRQ number
+ - [arm64] KVM: arm64: Don't zero the cycle count register when PMCR_EL0.P is
+ set
+ - [arm64] regulator: hi655x: Fix pass wrong pointer to config.driver_data
+ - btrfs: clear log tree recovering status if starting transaction fails
+ - sched/rt: Fix RT utilization tracking during policy change
+ - sched/rt: Fix Deadline utilization tracking during policy change
+ - sched/uclamp: Fix uclamp_tg_restrict()
+ - [armhf] spi: spi-sun6i: Fix chipselect/clock bug
+ - [powerpc*] crypto: nx - Fix RCU warning in nx842_OF_upd_status
+ - psi: Fix race between psi_trigger_create/destroy
+ - media: v4l2-async: Clean v4l2_async_notifier_add_fwnode_remote_subdev
+ - [armhf] media: video-mux: Skip dangling endpoints
+ - PM / devfreq: Add missing error code in devfreq_add_device()
+ - ACPI: PM / fan: Put fan device IDs into separate header file
+ - block: avoid double io accounting for flush request
+ - nvme-pci: look for StorageD3Enable on companion ACPI device instead
+ - ACPI: sysfs: Fix a buffer overrun problem with description_show()
+ - mark pstore-blk as broken
+ - [armhf] clocksource/drivers/timer-ti-dm: Save and restore timer TIOCP_CFG
+ - ACPI: APEI: fix synchronous external aborts in user-mode
+ - blk-wbt: introduce a new disable state to prevent false positive by
+ rwb_enabled()
+ - blk-wbt: make sure throttle is enabled properly
+ - ACPI: Use DEVICE_ATTR_<RW|RO|WO> macros
+ - ACPI: bgrt: Fix CFI violation
+ - cpufreq: Make cpufreq_online() call driver->offline() on errors
+ - blk-mq: update hctx->dispatch_busy in case of real scheduler
+ - ocfs2: fix snprintf() checking
+ - dax: fix ENOMEM handling in grab_mapping_entry()
+ - swap: fix do_swap_page() race with swapoff
+ - mm/shmem: fix shmem_swapin() race with swapoff
+ - mm: memcg/slab: properly set up gfp flags for objcg pointer array
+ - mm: page_alloc: refactor setup_per_zone_lowmem_reserve()
+ - mm/page_alloc: fix counting of managed_pages
+ - xfrm: xfrm_state_mtu should return at least 1280 for ipv6
+ - drm/bridge: Fix the stop condition of drm_bridge_chain_pre_enable()
+ - drm/ast: Fix missing conversions to managed API
+ - [arm64,armhf] net: mvpp2: Put fwnode in error case during ->probe()
+ - [i386] net: pch_gbe: Propagate error from devm_gpio_request_one()
+ - [x86] drm/vmwgfx: Mark a surface gpu-dirty after the SVGA3dCmdDXGenMips
+ command
+ - [x86] drm/vmwgfx: Fix cpu updates of coherent multisample surfaces
+ - net: qrtr: ns: Fix error return code in qrtr_ns_init()
+ - [arm64] clk: meson: g12a: fix gp0 and hifi ranges
+ - [armhf] net: ftgmac100: add missing error return code in ftgmac100_probe()
+ - [arm64,armhf] drm: rockchip: set alpha_en to 0 if it is not used
+ - [arm64] drm/rockchip: cdn-dp-core: add missing clk_disable_unprepare() on
+ error in cdn_dp_grf_write()
+ - [arm64,armhf] drm/rockchip: dsi: move all lane config except LCDC mux to
+ bind()
+ - [arm64] drm/rockchip: cdn-dp: fix sign extension on an int multiply for a
+ u64 result
+ - RDMA/srp: Fix a recently introduced memory leak
+ - [powerpc*] ehea: fix error return code in ehea_restart_qps()
+ - xfrm: remove the fragment check for ipv6 beet mode
+ - net/sched: act_vlan: Fix modify to allow 0
+ - RDMA/core: Sanitize WQ state received from the userspace
+ - RDMA/rxe: Fix failure during driver load
+ - [arm*] drm/vc4: hdmi: Fix error path of hpd-gpios
+ - drm: qxl: ensure surf.data is ininitialized
+ - tools/bpftool: Fix error return code in do_batch()
+ - ath10k: go to path err_unsupported when chip id is not supported
+ - ath10k: add missing error return code in ath10k_pci_probe()
+ - wireless: carl9170: fix LEDS build errors & warnings
+ - ieee802154: hwsim: Fix possible memory leak in hwsim_subscribe_all_others
+ - [arm64] clk: imx8mq: remove SYS PLL 1/2 clock gates
+ - [arm64] wcn36xx: Move hal_buf allocation to devm_kmalloc in probe
+ - ssb: Fix error return code in ssb_bus_scan()
+ - brcmfmac: fix setting of station info chains bitmask
+ - brcmfmac: correctly report average RSSI in station info
+ - brcmfmac: Fix a double-free in brcmf_sdio_bus_reset
+ - brcmsmac: mac80211_if: Fix a resource leak in an error handling path
+ - ath11k: Fix an error handling path in ath11k_core_fetch_board_data_api_n()
+ - ath10k: Fix an error code in ath10k_add_interface()
+ - ath11k: send beacon template after vdev_start/restart during csa
+ - netlabel: Fix memory leak in netlbl_mgmt_add_common
+ - RDMA/mlx5: Don't add slave port to unaffiliated list
+ - netfilter: nft_exthdr: check for IPv6 packet before further processing
+ - netfilter: nft_osf: check for TCP packet before further processing
+ - netfilter: nft_tproxy: restrict support to TCP and UDP transport protocols
+ - RDMA/rxe: Fix qp reference counting for atomic ops
+ - xsk: Fix missing validation for skb and unaligned mode
+ - xsk: Fix broken Tx ring validation
+ - bpf: Fix libelf endian handling in resolv_btfids
+ - mt76: fix possible NULL pointer dereference in mt76_tx
+ - vrf: do not push non-ND strict packets with a source LLA through packet
+ taps again
+ - net: sched: add barrier to ensure correct ordering for lockless qdisc
+ - netfilter: nf_tables_offload: check FLOW_DISSECTOR_KEY_BASIC in VLAN
+ transfer logic
+ - pkt_sched: sch_qfq: fix qfq_change_class() error path
+ - xfrm: Fix xfrm offload fallback fail case
+ - iwlwifi: increase PNVM load timeout
+ - rtw88: 8822c: fix lc calibration timing
+ - vxlan: add missing rcu_read_lock() in neigh_reduce()
+ - ip6_tunnel: fix GRE6 segmentation
+ - net/ipv4: swap flow ports when validating source
+ - ieee802154: hwsim: Fix memory leak in hwsim_add_one
+ - ieee802154: hwsim: avoid possible crash in hwsim_del_edge_nl()
+ - bpf: Fix null ptr deref with mixed tail calls and subprogs
+ - [arm64] drm/msm: Fix error return code in msm_drm_init()
+ - [arm64] drm/msm/dpu: Fix error return code in dpu_mdss_init()
+ - mac80211: remove iwlwifi specific workaround NDPs of null_response
+ - net: bcmgenet: Fix attaching to PYH failed on RPi 4B
+ - ipv6: exthdrs: do not blindly use init_net
+ - can: j1939: j1939_sk_setsockopt(): prevent allocation of j1939 filter for
+ optlen == 0
+ - bpf: Do not change gso_size during bpf_skb_change_proto()
+ - i40e: Fix error handling in i40e_vsi_open
+ - i40e: Fix autoneg disabling for non-10GBaseT links
+ - i40e: Fix missing rtnl locking when setting up pf switch
+ - RDMA/cma: Protect RMW with qp_mutex
+ - net: macsec: fix the length used to copy the key for offloading
+ - net: phy: mscc: fix macsec key length
+ - ipv6: fix out-of-bound access in ip6_parse_tlv()
+ - e1000e: Check the PCIm state
+ - RDMA/cma: Fix incorrect Packet Lifetime calculation
+ - [amd64] gve: Fix swapped vars when fetching max queues
+ - Revert "be2net: disable bh with spin_lock in be_process_mcc"
+ - Bluetooth: mgmt: Fix slab-out-of-bounds in tlv_data_is_valid
+ - Bluetooth: Fix not sending Set Extended Scan Response
+ - Bluetooth: Fix Set Extended (Scan Response) Data
+ - Bluetooth: Fix handling of HCI_LE_Advertising_Set_Terminated event
+ - [arm64] clk: qcom: clk-alpha-pll: fix CAL_L write in
+ alpha_pll_fabia_prepare
+ - writeback: fix obtain a reference to a freeing memcg css
+ - net: lwtunnel: handle MTU calculation in forwading
+ - net: sched: fix warning in tcindex_alloc_perfect_hash
+ - net: tipc: fix FB_MTU eat two pages
+ - RDMA/mlx5: Don't access NULL-cleared mpi pointer
+ - RDMA/core: Always release restrack object
+ - [mips*] Fix PKMAP with 32-bit MIPS huge page support
+ - [x86] ASoC: rt5682: Disable irq on shutdown
+ - rcu: Invoke rcu_spawn_core_kthreads() from rcu_spawn_gp_kthread()
+ - [arm64] serial: fsl_lpuart: don't modify arbitrary data on lpuart32
+ - [arm64] serial: fsl_lpuart: remove RTSCTS handling from get_mctrl()
+ - tty: nozomi: Fix a resource leak in an error handling function
+ - mwifiex: re-fix for unaligned accesses
+ - iio: adis_buffer: do not return ints in irq handlers
+ - iio: adis16475: do not return ints in irq handlers
+ - [arm64] ASoC: hisilicon: fix missing clk_disable_unprepare() on error in
+ hi6210_i2s_startup()
+ - mtd: partitions: redboot: seek fis-index-block in the right node
+ - [arm*] staging: mmal-vchiq: Fix incorrect static vchiq_instance.
+ - char: pcmcia: error out if 'num_bytes_read' is greater than 4 in
+ set_protocol()
+ - leds: class: The -ENOTSUPP should never be seen by user space
+ - scsi: FlashPoint: Rename si_flags field
+ - scsi: iscsi: Flush block work before unblock
+ - [armhf] fsi: core: Fix return of error values on failures
+ - [armhf] fsi: scom: Reset the FSI2PIB engine for any error
+ - [armhf] fsi: occ: Don't accept response from un-initialized OCC
+ - [armhf] fsi/sbefifo: Clean up correct FIFO when receiving reset request
+ from SBE
+ - [armhf] fsi/sbefifo: Fix reset timeout
+ - [amd64] iommu/amd: Fix extended features logging
+ - [s390x] irq: select HAVE_IRQ_EXIT_ON_IRQ_STACK
+ - [s390x] enable HAVE_IOREMAP_PROT
+ - [s390x] appldata depends on PROC_SYSCTL
+ - [amd64,arm64] iommu/dma: Fix IOVA reserve dma ranges
+ - ASoC: max98373-sdw: use first_hw_init flag on resume
+ - ASoC: rt1308-sdw: use first_hw_init flag on resume
+ - ASoC: rt5682-sdw: use first_hw_init flag on resume
+ - ASoC: rt700-sdw: use first_hw_init flag on resume
+ - ASoC: rt711-sdw: use first_hw_init flag on resume
+ - ASoC: rt715-sdw: use first_hw_init flag on resume
+ - ASoC: rt5682: fix getting the wrong device id when the suspend_stress_test
+ - ASoC: rt5682-sdw: set regcache_cache_only false before reading
+ RT5682_DEVICE_ID
+ - usb: gadget: f_fs: Fix setting of device and driver data cross-references
+ - [arm*] usb: dwc2: Don't reset the core after setting turnaround time
+ - [armhf] ASoC: fsl_spdif: Fix error handler with pm_runtime_enable
+ - staging: rtl8712: fix error handling in r871xu_drv_init
+ - staging: rtl8712: fix memory leak in rtl871x_load_fw_cb
+ - serial: 8250: Actually allow UPF_MAGIC_MULTIPLIER baud rates
+ - of: Fix truncation of memory sizes on 32-bit platforms
+ - [armhf] mtd: rawnand: marvell: add missing clk_disable_unprepare() on
+ error in marvell_nfc_resume()
+ - scsi: mpt3sas: Fix error return value in _scsih_expander_add()
+ - soundwire: stream: Fix test for DP prepare complete
+ - [powerpc*] powernv: Fix machine check reporting of async store errors
+ - configfs: fix memleak in configfs_release_bin_file
+ - [x86] ASoC: Intel: sof_sdw: add SOF_RT715_DAI_ID_FIX for AlderLake
+ - [armhf] ASoC: fsl_spdif: Fix unexpected interrupt after suspend
+ - [powerpc*] Offline CPU in stop_this_cpu()
+ - [powerpc*] papr_scm: Properly handle UUID types and API
+ - [powerpc*] 64s: Fix copy-paste data exposure into newly created tasks
+ - [powerpc*] papr_scm: Make 'perf_stats' invisible if perf-stats unavailable
+ - ALSA: firewire-lib: Fix 'amdtp_domain_start()' when no AMDTP_OUT_STREAM
+ stream is found
+ - [arm64] serial: mvebu-uart: do not allow changing baudrate when uartclk is
+ not available
+ - [arm64] serial: mvebu-uart: correctly calculate minimal possible baudrate
+ - vfio/pci: Handle concurrent vma faults
+ - mm/pmem: avoid inserting hugepage PTE entry with fsdax if hugepage support
+ is disabled
+ - mm/huge_memory.c: remove dedicated macro HPAGE_CACHE_INDEX_MASK
+ - mm/huge_memory.c: add missing read-only THP checking in
+ transparent_hugepage_enabled()
+ - mm/huge_memory.c: don't discard hugepage if other processes are mapping it
+ - mm/hugetlb: use helper huge_page_order and pages_per_huge_page
+ - mm/hugetlb: remove redundant check in preparing and destroying gigantic
+ page
+ - hugetlb: remove prep_compound_huge_page cleanup
+ - include/linux/huge_mm.h: remove extern keyword
+ - mm/z3fold: fix potential memory leak in z3fold_destroy_pool()
+ - mm/z3fold: use release_z3fold_page_locked() to release locked z3fold page
+ - lib/math/rational.c: fix divide by zero
+ - exfat: handle wrong stream entry size in exfat_readdir()
+ - scsi: fc: Correct RHBA attributes length
+ - scsi: target: cxgbit: Unmap DMA buffer before calling target_execute_cmd()
+ - fscrypt: don't ignore minor_hash when hash is 0
+ - fscrypt: fix derivation of SipHash keys on big endian CPUs
+ - tpm: Replace WARN_ONCE() with dev_err_once() in tpm_tis_status()
+ - erofs: fix error return code in erofs_read_superblock()
+ - io_uring: fix blocking inline submission
+ - mmc: block: Disable CMDQ on the ioctl path
+ - mmc: vub3000: fix control-request direction
+ - scsi: core: Retry I/O for Notify (Enable Spinup) Required error
+ - [arm64] crypto: qce - fix error return code in
+ qce_skcipher_async_req_handle()
+ - [s390x] preempt: Fix preempt_count initialization
+ - cred: add missing return error code when set_cred_ucounts() failed
+ - [amd64,arm64] iommu/dma: Fix compile warning in 32-bit builds
+ - [powerpc*] preempt: Don't touch the idle task's preempt_count during
+ hotplug
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.51
+ - drm/ast: Fixed CVE for DP501
+ - drm/amd/amdgpu/sriov disable all ip hw status by default
+ - [arm*] drm/vc4: fix argument ordering in vc4_crtc_get_margins()
+ - [i386] net: pch_gbe: Use proper accessors to BE data in pch_ptp_match()
+ - hugetlb: clear huge pte during flush function on mips platform
+ - atm: iphase: fix possible use-after-free in ia_module_exit()
+ - mISDN: fix possible use-after-free in HFC_cleanup()
+ - atm: nicstar: Fix possible use-after-free in nicstar_cleanup()
+ - net: Treat __napi_schedule_irqoff() as __napi_schedule() on PREEMPT_RT
+ - reiserfs: add check for invalid 1st journal block
+ - drm/virtio: Fix double free on probe failure
+ - net: mdio: provide shim implementation of devm_of_mdiobus_register
+ - net/sched: cls_api: increase max_reclassify_loop
+ - drm/scheduler: Fix hang when sched_entity released
+ - drm/sched: Avoid data corruptions
+ - udf: Fix NULL pointer dereference in udf_symlink function
+ - [arm*] drm/vc4: Fix clock source for VEC PixelValve on BCM2711
+ - [arm*] drm/vc4: hdmi: Fix PM reference leak in
+ vc4_hdmi_encoder_pre_crtc_co()
+ - e100: handle eeprom as little endian
+ - igb: handle vlan types with checker enabled
+ - igb: fix assignment on big endian machines
+ - net/mlx5e: IPsec/rep_tc: Fix rep_tc_update_skb drops IPsec packet
+ - net/mlx5: Fix lag port remapping logic
+ - [arm64,armhf] drm: rockchip: add missing registers for RK3188
+ - [arm64,armhf] drm: rockchip: add missing registers for RK3066
+ - net: stmmac: the XPCS obscures a potential "PHY not found" error
+ - [arm64,armhf] clk: tegra: Fix refcounting of gate clocks
+ - [arm64,armhf] clk: tegra: Ensure that PLLU configuration is applied
+ properly
+ - virtio-net: Add validation for used length
+ - ipv6: use prandom_u32() for ID generation
+ - [mips*] cpu-probe: Fix FPU detection on Ingenic JZ4760(B)
+ - drm/amdgpu: remove unsafe optimization to drop preamble ib
+ - net: tcp better handling of reordering then loss cases
+ - RDMA/cxgb4: Fix missing error code in create_qp()
+ - dm space maps: don't reset space map allocation cursor when committing
+ - dm writecache: don't split bios when overwriting contiguous cache content
+ - dm: Fix dm_accept_partial_bio() relative to zone management commands
+ - [armhf] pinctrl: mcp23s08: fix race condition in irq handler
+ - ice: set the value of global config lock timeout longer
+ - virtio_net: Remove BUG() to avoid machine dead
+ - [arm64] net: bcmgenet: check return value after calling
+ platform_get_resource()
+ - [arm64,armhf] net: mvpp2: check return value after calling
+ platform_get_resource()
+ - net: phy: realtek: add delay to fix RXC generation issue
+ - [amd64] drm/amdkfd: use allowed domain for vmbo validation
+ - [amd64] fjes: check return value after calling platform_get_resource()
+ - selinux: use __GFP_NOWARN with GFP_NOWAIT in the AVC
+ - r8169: avoid link-up interrupt issue on RTL8106e if user enables ASPM
+ - xfrm: Fix error reporting in xfrm_state_construct.
+ - dm writecache: commit just one block, not a full page
+ - [arm64,armhf] wlcore/wl12xx: Fix wl12xx get_mac error if device is in ELP
+ - [arm64,armhf] wl1251: Fix possible buffer overflow in wl1251_cmd_scan
+ - ice: fix incorrect payload indicator on PTYPE
+ - ice: mark PTYPE 2 as reserved
+ - mt76: mt7615: fix fixed-rate tx status reporting
+ - net: fix mistake path for netdev_features_strings
+ - net: sched: fix error return code in tcf_del_walker()
+ - io_uring: fix false WARN_ONCE
+ - drm/amdgpu: fix bad address translation for sienna_cichlid
+ - rtl8xxxu: Fix device info for RTL8192EU devices
+ - [mips*] add PMD table accounting into MIPS'pmd_alloc_one
+ - [arm64,armhf] net: fec: add ndo_select_queue to fix TX bandwidth
+ fluctuations
+ - atm: nicstar: use 'dma_free_coherent' instead of 'kfree'
+ - atm: nicstar: register the interrupt handler in the right place
+ - vsock: notify server to shutdown when client has pending signal
+ - RDMA/rxe: Don't overwrite errno from ib_umem_get()
+ - iwlwifi: mvm: don't change band on bound PHY contexts
+ - iwlwifi: mvm: fix error print when session protection ends
+ - iwlwifi: pcie: free IML DMA memory allocation
+ - iwlwifi: pcie: fix context info freeing
+ - sfc: avoid double pci_remove of VFs
+ - sfc: error code if SRIOV cannot be disabled
+ - wireless: wext-spy: Fix out-of-bounds warning
+ - cfg80211: fix default HE tx bitrate mask in 2G band
+ - mac80211: consider per-CPU statistics if present
+ - mac80211_hwsim: add concurrent channels scanning support over virtio
+ - IB/isert: Align target max I/O size to initiator size
+ - net: ip: avoid OOM kills with large UDP sends over loopback
+ - RDMA/cma: Fix rdma_resolve_route() memory leak
+ - Bluetooth: btusb: Fixed too many in-token issue for Mediatek Chip.
+ - Bluetooth: Fix the HCI to MGMT status conversion table
+ - Bluetooth: Fix alt settings for incoming SCO with transparent coding
+ format
+ - Bluetooth: Shutdown controller after workqueues are flushed or cancelled
+ - Bluetooth: btusb: Add a new QCA_ROME device (0cf3:e500)
+ - Bluetooth: L2CAP: Fix invalid access if ECRED Reconfigure fails
+ - Bluetooth: L2CAP: Fix invalid access on ECRED Connection response
+ - Bluetooth: btusb: Add support USB ALT 3 for WBS
+ - Bluetooth: mgmt: Fix the command returns garbage parameter value
+ - Bluetooth: btusb: fix bt fiwmare downloading failure issue for qca btsoc.
+ - sched/fair: Ensure _sum and _avg values stay consistent
+ - bpf: Fix false positive kmemleak report in bpf_ringbuf_area_alloc()
+ - flow_offload: action should not be NULL when it is referenced
+ - [mips*] loongsoon64: Reserve memory below starting pfn to prevent Oops
+ - [mips*] set mips32r5 for virt extensions
+ - [mips*] MT extensions are not available on MIPS32r1
+ - ath11k: unlock on error path in ath11k_mac_op_add_interface()
+ - [arm64] dts: rockchip: Enable USB3 for rk3328 Rock64
+ - loop: fix I/O error on fsync() in detached loop devices
+ - mm,hwpoison: return -EBUSY when migration fails
+ - io_uring: simplify io_remove_personalities()
+ - io_uring: Convert personality_idr to XArray
+ - io_uring: convert io_buffer_idr to XArray
+ - scsi: iscsi: Fix race condition between login and sync thread
+ - scsi: iscsi: Fix iSCSI cls conn state
+ - [powerpc*] mm: Fix lockup on kernel exec fault
+ - [powerpc*] barrier: Avoid collision with clang's __lwsync macro
+ - [powerpc*] powernv/vas: Release reference to tgid during window close
+ - drm/amdgpu: enable sdma0 tmz for Raven/Renoir(V2)
+ - drm/radeon: Add the missed drm_gem_object_put() in
+ radeon_user_framebuffer_create()
+ - drm/radeon: Call radeon_suspend_kms() in radeon_pci_shutdown() for
+ Loongson64
+ - [arm*] drm/vc4: txp: Properly set the possible_crtcs mask
+ - [arm*] drm/vc4: crtc: Skip the TXP
+ - [arm*] drm/vc4: hdmi: Prevent clock unbalance
+ - drm/dp: Handle zeroed port counts in drm_dp_read_downstream_info()
+ - [arm64,armhf] drm/rockchip: dsi: remove extra component_del() call
+ - pinctrl/amd: Add device HID for new AMD GPIO controller
+ - drm/amd/display: Reject non-zero src_y and src_x for video planes
+ - [arm64,armhf] drm/tegra: Don't set allow_fb_modifiers explicitly
+ - [arm64] drm/msm/mdp4: Fix modifier support enabling
+ - [arm64] drm/arm/malidp: Always list modifiers
+ - drm/nouveau: Don't set allow_fb_modifiers explicitly
+ - [x86] drm/i915/display: Do not zero past infoframes.vsc
+ - mmc: sdhci-acpi: Disable write protect detection on Toshiba Encore 2 WT8-B
+ - mmc: sdhci: Fix warning message when accessing RPMB in HS400 mode
+ - mmc: core: clear flags before allowing to retune
+ - mmc: core: Allow UHS-I voltage switch for SDSC cards if supported
+ - [armhf] ata: ahci_sunxi: Disable DIPM
+ - [arm64] tlb: fix the TTL value of tlb_get_level
+ - cpu/hotplug: Cure the cpusets trainwreck
+ - [arm64,armhf] clocksource/arm_arch_timer: Improve Allwinner A64 timer
+ workaround
+ - [arm64,armhf] ASoC: tegra: Set driver_name=tegra for all machine drivers
+ - i40e: fix PTP on 5Gb links
+ - qemu_fw_cfg: Make fw_cfg_rev_attr a proper kobj_attribute
+ - ipmi/watchdog: Stop watchdog timer when the current action is 'none'
+ - [x86] thermal/drivers/int340x/processor_thermal: Fix tcc setting
+ - ubifs: Fix races between xattr_{set|get} and listxattr operations
+ - power: supply: ab8500: Fix an old bug
+ - mfd: syscon: Free the allocated name field of struct regmap_config
+ - nvmem: core: add a missing of_node_put
+ - seq_buf: Fix overflow in seq_buf_putmem_hex()
+ - rq-qos: fix missed wake-ups in rq_qos_throttle try two
+ - tracing: Simplify & fix saved_tgids logic
+ - tracing: Resize tgid_map to pid_max, not PID_MAX_DEFAULT
+ - dm zoned: check zone capacity
+ - dm writecache: flush origin device when writing and cache is full
+ - dm btree remove: assign new_root only when removal succeeds
+ - PCI: Leave Apple Thunderbolt controllers on for s2idle or standby
+ - [arm64] PCI: aardvark: Fix checking for PIO Non-posted Request
+ - [arm64] PCI: aardvark: Implement workaround for the readback value of
+ VEND_ID
+ - media: subdev: disallow ioctl for saa6588/davinci
+ - media: dtv5100: fix control-request directions
+ - media: zr364xx: fix memory leak in zr364xx_start_readpipe
+ - media: gspca/sq905: fix control-request direction
+ - media: gspca/sunplus: fix zero-length control requests
+ - media: uvcvideo: Fix pixel format change for Elgato Cam Link 4K
+ - io_uring: fix clear IORING_SETUP_R_DISABLED in wrong function
+ - dm writecache: write at least 4k when committing
+ - [armhf] pinctrl: mcp23s08: Fix missing unlock on error in mcp23s08_irq()
+ - drm/ast: Remove reference to struct drm_device.pdev
+ - jfs: fix GPF in diFree
+ - ext4: fix memory leak in ext4_fill_super
+ - f2fs: fix to avoid racing on fsync_entry_slab by multi filesystem
+ instances
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.52
+ - cifs: handle reconnect of tcon when there is no cached dfs referral
+ - KVM: mmio: Fix use-after-free Read in
+ kvm_vm_ioctl_unregister_coalesced_mmio
+ - [x86] KVM: x86: Use guest MAXPHYADDR from CPUID.0x8000_0008 iff TDP is
+ enabled
+ - [x86] KVM: x86/mmu: Do not apply HPA (memory encryption) mask to GPAs
+ - [x86] KVM: nSVM: Check the value written to MSR_VM_HSAVE_PA
+ - [x86] KVM: X86: Disable hardware breakpoints unconditionally before
+ kvm_x86->run()
+ - scsi: core: Fix bad pointer dereference when ehandler kthread is invalid
+ - [s390x] scsi: zfcp: Report port fc_security as unknown early during remote
+ cable pull
+ - tracing: Do not reference char * as a string in histograms
+ - [x86] drm/i915/gtt: drop the page table optimisation
+ - [x86] drm/i915/gt: Fix -EDEADLK handling regression
+ - cgroup: verify that source is a string
+ - fbmem: Do not delete the mode that is still in use
+ - drm/dp_mst: Do not set proposed vcpi directly
+ - drm/dp_mst: Avoid to mess up payload table by ports in stale topology
+ - drm/dp_mst: Add missing drm parameters to recently added call to
+ drm_dbg_kms()
+ - Revert "drm/ast: Remove reference to struct drm_device.pdev"
+ - net: bridge: multicast: fix PIM hello router port marking race
+ - net: bridge: multicast: fix MRD advertisement router port marking race
+ - [x86] ASoC: Intel: sof_sdw: add mutual exclusion between PCH DMIC and
+ RT715
+ - [arm64] dmaengine: fsl-qdma: check dma_set_mask return value
+ - scsi: arcmsr: Fix the wrong CDB payload report to IOP
+ - srcu: Fix broken node geometry after early ssp init
+ - rcu: Reject RCU_LOCKDEP_WARN() false positives
+ - [arm64] tty: serial: fsl_lpuart: fix the potential risk of division or
+ modulo by zero
+ - [arm64] serial: fsl_lpuart: disable DMA for console and fix sysrq
+ - [x86] misc/libmasm/module: Fix two use after free in ibmasm_init_one
+ - [x86] ASoC: intel/boards: add missing MODULE_DEVICE_TABLE
+ - partitions: msdos: fix one-byte get_unaligned()
+ - iio: gyro: fxa21002c: Balance runtime pm + use
+ pm_runtime_resume_and_get().
+ - iio: magn: bmc150: Balance runtime pm + use pm_runtime_resume_and_get()
+ - Revert "ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro"
+ - [arm64,armhf] usb: common: usb-conn-gpio: fix NULL pointer dereference of
+ charger
+ - w1: ds2438: fixing bug that would always get page0
+ - scsi: arcmsr: Fix doorbell status being updated late on ARC-1886
+ - [arm64] scsi: hisi_sas: Propagate errors in interrupt_init_v1_hw()
+ - scsi: lpfc: Fix "Unexpected timeout" error in direct attach topology
+ - scsi: lpfc: Fix crash when lpfc_sli4_hba_setup() fails to initialize the
+ SGLs
+ - scsi: core: Cap scsi_host cmd_per_lun at can_queue
+ - tty: serial: 8250: serial_cs: Fix a memory leak in error handling path
+ - scsi: mpt3sas: Fix deadlock while cancelling the running firmware event
+ - scsi: core: Fixup calling convention for scsi_mode_sense()
+ - scsi: scsi_dh_alua: Check for negative result value
+ - fs/jfs: Fix missing error code in lmLogInit()
+ - scsi: megaraid_sas: Fix resource leak in case of probe failure
+ - scsi: megaraid_sas: Early detection of VD deletion through RaidMap update
+ - scsi: megaraid_sas: Handle missing interrupts while re-enabling IRQs
+ - scsi: iscsi: Add iscsi_cls_conn refcount helpers
+ - scsi: iscsi: Fix conn use after free during resets
+ - scsi: iscsi: Fix shost->max_id use
+ - scsi: qedi: Fix null ref during abort handling
+ - scsi: qedi: Fix race during abort timeouts
+ - scsi: qedi: Fix TMF session block/unblock use
+ - scsi: qedi: Fix cleanup session block/unblock use
+ - [armhf] mfd: da9052/stmpe: Add and modify MODULE_DEVICE_TABLE
+ - [armhf] fsi: Add missing MODULE_DEVICE_TABLE
+ - [s390x] disable SSP when needed
+ - [i386] ALSA: sb: Fix potential double-free of CSP mixer elements
+ - [powerpc*] ps3: Add dma_mask to ps3_dma_region
+ - [arm64,armhf] iommu/arm-smmu: Fix arm_smmu_device refcount leak when
+ arm_smmu_rpm_get fails
+ - [arm64,armhf] iommu/arm-smmu: Fix arm_smmu_device refcount leak in address
+ translation
+ - ASoC: soc-pcm: fix the return value in dpcm_apply_symmetry()
+ - [arm64] gpio: zynq: Check return value of pm_runtime_get_sync
+ - [arm64] gpio: zynq: Check return value of irq_get_irq_data
+ - [x86] scsi: storvsc: Correctly handle multiple flags in srb_status
+ - [powerpc*] ALSA: ppc: fix error return code in snd_pmac_probe()
+ - [arm64,armhf] gpio: pca953x: Add support for the On Semi pca9655
+ - [powerpc*] mm/book3s64: Fix possible build error
+ - ASoC: soc-core: Fix the error return code in
+ snd_soc_of_parse_audio_routing()
+ - [s390x] processor: always inline stap() and __load_psw_mask()
+ - [s390x] ipl_parm: fix program check new psw handling
+ - [s390x] mem_detect: fix diag260() program check new psw handling
+ - [s390x] mem_detect: fix tprot() program check new psw handling
+ - ALSA: bebob: add support for ToneWeal FW66
+ - ALSA: usb-audio: scarlett2: Fix 18i8 Gen 2 PCM Input count
+ - ALSA: usb-audio: scarlett2: Fix data_mutex lock
+ - ALSA: usb-audio: scarlett2: Fix scarlett2_*_ctl_put() return values
+ - usb: gadget: f_hid: fix endianness issue with descriptors
+ - [powerpc*] boot: Fixup device-tree on little endian
+ - [x86] ASoC: Intel: kbl_da7219_max98357a: shrink platform_id below 20
+ characters
+ - [arm64,armhf] ALSA: hda: Add IRQ check for platform_get_irq()
+ - ALSA: usb-audio: scarlett2: Fix 6i6 Gen 2 line out descriptions
+ - ALSA: firewire-motu: fix detection for S/PDIF source on optical interface
+ in v2 protocol
+ - staging: rtl8723bs: fix macro value for 2.4Ghz only device
+ - [x86] intel_th: Wait until port is in reset before programming it
+ - i2c: core: Disable client irq on reboot/shutdown
+ - lib/decompress_unlz4.c: correctly handle zero-padding around initrds.
+ - kcov: add __no_sanitize_coverage to fix noinstr for all architectures
+ - [amd64] PCI: hv: Fix a race condition when removing the device
+ - [x86] power: supply: max17042: Do not enforce (incorrect) interrupt
+ trigger type
+ - power: reset: gpio-poweroff: add missing MODULE_DEVICE_TABLE
+ - PCI/P2PDMA: Avoid pci_get_slot(), which may sleep
+ - NFSv4: Fix delegation return in cases where we have to retry
+ - PCI: pciehp: Ignore Link Down/Up caused by DPC
+ - [x86] watchdog: Fix possible use-after-free in wdt_startup()
+ - [x86] watchdog: Fix possible use-after-free by calling del_timer_sync()
+ - watchdog: iTCO_wdt: Account for rebooting on second timeout
+ - [x86] fpu: Return proper error codes from user access functions
+ - [armhf] remoteproc: core: Fix cdev remove and rproc del
+ - [arm64,armhf] PCI: tegra: Add missing MODULE_DEVICE_TABLE
+ - orangefs: fix orangefs df output.
+ - ceph: remove bogus checks and WARN_ONs from ceph_set_page_dirty
+ - [x86] drm/gma500: Add the missed drm_gem_object_put() in
+ psb_user_framebuffer_create()
+ - NFS: nfs_find_open_context() may only select open files
+ - [arm64,armhf] pwm: tegra: Don't modify HW state in .remove callback
+ - [arm64] ACPI: AMBA: Fix resource name in /proc/iomem
+ - [x86] ACPI: video: Add quirk for the Dell Vostro 3350
+ - [arm64] PCI: rockchip: Register IRQ handlers after device and data are
+ ready
+ - virtio-blk: Fix memory leak among suspend/resume procedure
+ - virtio_net: Fix error handling in virtnet_restore()
+ - f2fs: atgc: fix to set default age threshold
+ - NFSD: Fix TP_printk() format specifier in nfsd_clid_class
+ - [x86] signal: Detect and prevent an alternate signal stack overflow
+ - f2fs: add MODULE_SOFTDEP to ensure crc32 is included in the initramfs
+ - f2fs: compress: fix to disallow temp extension
+ - PCI/sysfs: Fix dsm_label_utf16s_to_utf8s() buffer overrun
+ - NFSv4: Fix an Oops in pnfs_mark_request_commit() when doing O_DIRECT
+ - ubifs: Fix off-by-one error
+ - ubifs: journal: Fix error return code in ubifs_jnl_write_inode()
+ - [armhf] watchdog: aspeed: fix hardware timeout calculation
+ - SUNRPC: prevent port reuse on transports which don't request it.
+ - nfs: fix acl memory leak of posix_acl_create()
+ - ubifs: Set/Clear I_LINKABLE under i_lock for whiteout inode
+ - f2fs: fix to avoid adding tab before doc section
+ - [x86] fpu: Fix copy_xstate_to_kernel() gap handling
+ - [x86] fpu: Limit xstate copy size in xstateregs_set()
+ - virtio_net: move tx vq operation under tx queue lock
+ - nvme-tcp: can't set sk_user_data without write_lock
+ - nfsd: Reduce contention for the nfsd_file nf_rwsem
+ - [i386] ALSA: isa: Fix error return code in snd_cmi8330_probe()
+ - vdpa/mlx5: Clear vq ready indication upon device reset
+ - NFSv4/pnfs: Fix the layout barrier update
+ - NFSv4/pnfs: Fix layoutget behaviour after invalidation
+ - NFSv4/pNFS: Don't call _nfs4_pnfs_v3_ds_connect multiple times
+ - [armhf] exynos: add missing of_node_put for loop iteration
+ - [armhf] dts: exynos: fix PWM LED max brightness on Odroid HC1
+ - [armhf] dts: exynos: fix PWM LED max brightness on Odroid XU4
+ - [armel,armhf] memory: pl353: Fix error return code in pl353_smc_probe()
+ - rtc: fix snprintf() checking in is_rtc_hctosys()
+ - dt-bindings: i2c: at91: fix example for scl-gpios
+ - [arm64] dts: allwinner: a64-sopine-baseboard: change RGMII mode to TXID
+ - [armhf] dts: am335x: align ti,pindir-d0-out-d1-in property with dt-shema
+ - [arm64] firmware: turris-mox-rwtm: fix reply status decoding function
+ - [arm64] firmware: turris-mox-rwtm: report failures better
+ - [arm64] firmware: turris-mox-rwtm: fail probing when firmware does not
+ support hwrng
+ - [arm64] firmware: turris-mox-rwtm: show message about HWRNG registration
+ - scsi: be2iscsi: Fix an error handling path in beiscsi_dev_probe()
+ - jump_label: Fix jump_label_text_reserved() vs __init
+ - static_call: Fix static_call_text_reserved() vs __init
+ - [mips*] always link byteswap helpers into decompressor
+ - [mips*] disable branch profiling in boot/decompress.o
+ - [mips*] vdso: Invalid GIC access through VDSO
+ - scsi: scsi_dh_alua: Fix signedness bug in alua_rtpg()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.53
+ - [armhf] dts: rockchip: fix pinctrl sleep nodename for rk3036-kylin and
+ rk3288
+ - [armhf] imx: pm-imx5: Fix references to imx5_cpu_suspend_info
+ - [arm64] dts: rockchip: fix regulator-gpio states array
+ - [armhf] dts: imx6dl-riotboard: configure PHY clock and set proper EEE
+ value
+ - [armhf] dts: am57xx-cl-som-am57x: fix ti,no-reset-on-init flag for gpios
+ - [armhf] dts: am335x: fix ti,no-reset-on-init flag for gpios
+ - [armhf] dts: OMAP2+: Replace underscores in sub-mailbox node names
+ - [arm64] dts: qcom: sc7180: Move rmtfs memory region
+ - [armhf] memory: tegra: Fix compilation warnings on 64bit platforms
+ - [armel,armhf] dts: bcm283x: Fix up GPIO LED node names
+ - [armhf] dts: rockchip: fix supply properties in io-domains nodes
+ - [armhf] OMAP2+: Block suspend for am3 and am4 if PM is not configured
+ - [arm64,armhf] soc/tegra: fuse: Fix Tegra234-only builds
+ - thermal/core: Correct function name thermal_zone_device_unregister()
+ - [arm64] arch/arm64/boot/dts/marvell: fix NAND partitioning scheme
+ - [arm64,armhf] rtc: max77686: Do not enforce (incorrect) interrupt trigger
+ type
+ - scsi: aic7xxx: Fix unintentional sign extension issue on left shift of u8
+ - scsi: libsas: Add LUN number check in .slave_alloc callback
+ - scsi: libfc: Fix array index out of bound exception
+ - scsi: qedf: Add check to synchronize abort and flush
+ - sched/fair: Fix CFS bandwidth hrtimer expiry type
+ - [x86] perf/x86/intel/uncore: Clean up error handling path of iio mapping
+ - thermal/core/thermal_of: Stop zone device before unregistering it
+ - [s390x] traps: do not test MONITOR CALL without CONFIG_BUG
+ - [s390x] introduce proper type handling call_on_stack() macro
+ - cifs: prevent NULL deref in cifs_compose_mount_options()
+ - [arm64] firmware: turris-mox-rwtm: add marvell,armada-3700-rwtm-firmware
+ compatible string
+ - [arm64] dts: marvell: armada-37xx: move firmware node to generic dtsi file
+ - Revert "swap: fix do_swap_page() race with swapoff"
+ - f2fs: Show casefolding support only when supported
+ - mm/thp: simplify copying of huge zero page pmd when fork
+ - mm/userfaultfd: fix uffd-wp special cases for fork()
+ - mm/page_alloc: fix memory map initialization for descending nodes
+ - [arm64] net: bcmgenet: ensure EXT_ENERGY_DET_MASK is clear
+ - [arm64,armhf] net: dsa: mv88e6xxx: enable .port_set_policy() on Topaz
+ - [arm64,armhf] net: dsa: mv88e6xxx: use correct .stats_set_histogram() on
+ Topaz
+ - [arm64,armhf] net: dsa: mv88e6xxx: enable .rmu_disable() on Topaz
+ - [arm64,armhf] net: dsa: mv88e6xxx: enable devlink ATU hash param for Topaz
+ - net: ipv6: fix return value of ip6_skb_dst_mtu
+ - netfilter: ctnetlink: suspicious RCU usage in ctnetlink_dump_helpinfo
+ - net/sched: act_ct: fix err check for nf_conntrack_confirm
+ - [x86] vmxnet3: fix cksum offload issues for tunnels with non-default udp
+ ports
+ - net/sched: act_ct: remove and free nf_table callbacks
+ - net: bridge: sync fdb to new unicast-filtering ports
+ - [arm64] net: bcmgenet: Ensure all TX/RX queues DMAs are disabled
+ - net: ip_tunnel: fix mtu calculation for ETHER tunnel devices
+ - [arm64] net: qcom/emac: fix UAF in emac_remove
+ - net: ti: fix UAF in tlan_remove_one
+ - net: send SYNACK packet with accepted fwmark
+ - net: validate lwtstate->data before returning from skb_tunnel_info()
+ - Revert "mm/shmem: fix shmem_swapin() race with swapoff"
+ - [arm64,armhf] net: dsa: properly check for the bridge_leave methods in
+ dsa_switch_bridge_leave()
+ - dma-buf/sync_file: Don't leak fences on merge failure
+ - [armhf] dts: aspeed: Fix AST2600 machines line names
+ - [armhf] dts: tacoma: Add phase corrections for eMMC
+ - tcp: annotate data races around tp->mtu_info
+ - tcp: fix tcp_init_transfer() to not reset icsk_ca_initialized
+ - ipv6: tcp: drop silly ICMPv6 packet too big messages
+ - tcp: call sk_wmem_schedule before sk_mem_charge in zerocopy path
+ - bpf: Track subprog poke descriptors correctly and fix use-after-free
+ - udp: annotate data races around unix_sk(sk)->gso_size
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.54
+ - igc: Fix use-after-free error during reset
+ - igb: Fix use-after-free error during reset
+ - igc: change default return of igc_read_phy_reg()
+ - ixgbe: Fix an error handling path in 'ixgbe_probe()'
+ - igc: Fix an error handling path in 'igc_probe()'
+ - igb: Fix an error handling path in 'igb_probe()'
+ - e1000e: Fix an error handling path in 'e1000_probe()'
+ - iavf: Fix an error handling path in 'iavf_probe()'
+ - igb: Check if num of q_vectors is smaller than max before array access
+ - igb: Fix position of assignment to *ring
+ - [amd64] gve: Fix an error handling path in 'gve_probe()'
+ - bonding: fix suspicious RCU usage in bond_ipsec_add_sa()
+ - bonding: fix null dereference in bond_ipsec_add_sa()
+ - ixgbevf: use xso.real_dev instead of xso.dev in callback functions of
+ struct xfrmdev_ops
+ - bonding: fix suspicious RCU usage in bond_ipsec_del_sa()
+ - bonding: disallow setting nested bonding + ipsec offload
+ - bonding: Add struct bond_ipesc to manage SA
+ - bonding: fix suspicious RCU usage in bond_ipsec_offload_ok()
+ - bonding: fix incorrect return value of bond_ipsec_offload_ok()
+ - ipv6: fix 'disable_policy' for fwd packets
+ - stmmac: platform: Fix signedness bug in stmmac_probe_config_dt()
+ - cxgb4: fix IRQ free race during driver unload
+ - nvme-pci: do not call nvme_dev_remove_admin from nvme_remove
+ - [x86] KVM: x86/pmu: Clear anythread deprecated bit when 0xa leaf is
+ unsupported on the SVM
+ - [armhf] spi: imx: add a check for speed_hz before calculating the clock
+ - [armhf] spi: stm32: fixes pm_runtime calls in probe/remove
+ - bpf, test: fix NULL pointer dereference on invalid expected_attach_type
+ - bpf: Fix tail_call_reachable rejection for interpreter when jit failed
+ - xdp, net: Fix use-after-free in bpf_xdp_link_release
+ - timers: Fix get_next_timer_interrupt() with no timers pending
+ - liquidio: Fix unintentional sign extension issue on left shift of u16
+ - [s390x] bpf: Perform r1 range checking before accessing jit->seen_reg[r1]
+ - bpf, sockmap: Fix potential memory leak on unlikely error case
+ - bpf, sockmap, tcp: sk_prot needs inuse_idx set for proc stats
+ - bpf, sockmap, udp: sk_prot needs inuse_idx set for proc stats
+ - bpftool: Check malloc return value in mount_bpffs_for_pin
+ - net: fix uninit-value in caif_seqpkt_sendmsg
+ - usb: hso: fix error handling code of hso_create_net_device
+ (CVE-2021-37159)
+ - dma-mapping: handle vmalloc addresses in dma_common_{mmap,get_sgtable}
+ - efi/tpm: Differentiate missing and invalid final event log table.
+ - net: decnet: Fix sleeping inside in af_decnet
+ - [powerpc*] KVM: PPC: Fix kvm_arch_vcpu_ioctl vcpu_load leak
+ - net: sched: fix memory leak in tcindex_partial_destroy_work
+ - sctp: trim optlen when it's a huge value in sctp_setsockopt
+ - netrom: Decrease sock refcount when sock timers expire
+ - scsi: iscsi: Fix iface sysfs attr detection
+ - scsi: target: Fix protect handling in WRITE SAME(32)
+ - bnxt_en: don't disable an already disabled PCI device
+ - bnxt_en: Refresh RoCE capabilities in bnxt_ulp_probe()
+ - bnxt_en: Add missing check for BNXT_STATE_ABORT_ERR in bnxt_fw_rset_task()
+ - bnxt_en: Validate vlan protocol ID on RX packets
+ - bnxt_en: Check abort error state in bnxt_half_open_nic()
+ - net/tcp_fastopen: fix data races around tfo_active_disable_stamp
+ - ALSA: hda: intel-dsp-cfg: add missing ElkhartLake PCI ID
+ - [arm64] net: hns3: fix possible mismatches resp of mailbox
+ - [arm64] net: hns3: fix rx VLAN offload state inconsistent issue
+ - [arm*] spi: spi-bcm2835: Fix deadlock
+ - net/sched: act_skbmod: Skip non-Ethernet packets
+ - ipv6: fix another slab-out-of-bounds in fib6_nh_flush_exceptions
+ - ceph: don't WARN if we're still opening a session to an MDS
+ - nvme-pci: don't WARN_ON in nvme_reset_work if ctrl.state is not RESETTING
+ - Revert "USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem"
+ - afs: Fix tracepoint string placement with built-in AFS
+ - r8169: Avoid duplicate sysfs entry creation error
+ - nvme: set the PRACT bit when using Write Zeroes with T10 PI
+ - sctp: update active_key for asoc when old key is being replaced
+ - tcp: disable TFO blackhole logic by default
+ - net: sched: cls_api: Fix the the wrong parameter
+ - [arm64,armhf] drm/panel: raspberrypi-touchscreen: Prevent double-free
+ - cifs: only write 64kb at a time when fallocating a small region of a file
+ - cifs: fix fallocate when trying to allocate a hole.
+ - proc: Avoid mixing integer types in mem_rw()
+ - mmc: core: Don't allocate IDA for OF aliases
+ - [s390x] ftrace: fix ftrace_update_ftrace_func implementation
+ - [s390x] boot: fix use of expolines in the DMA code
+ - ALSA: usb-audio: Add missing proc text entry for BESPOKEN type
+ - ALSA: usb-audio: Add registration quirk for JBL Quantum headsets
+ - [i386] ALSA: sb: Fix potential ABBA deadlock in CSP driver
+ - ALSA: hda/realtek: Fix pop noise and 2 Front Mic issues on a machine
+ - ALSA: hdmi: Expose all pins on MSI MS-7C94 board
+ - ALSA: pcm: Call substream ack() method upon compat mmap commit
+ - ALSA: pcm: Fix mmap capability check
+ - xhci: Fix lost USB 2 remote wake
+ - [powerpc*] KVM: PPC: Book3S HV Nested: Sanitise H_ENTER_NESTED TM state
+ - usb: hub: Disable USB 3 device initiated lpm if exit latency is too high
+ - usb: hub: Fix link power management max exit latency (MEL) calculations
+ - USB: usb-storage: Add LaCie Rugged USB3-FW to IGNORE_UAS
+ - USB: serial: option: add support for u-blox LARA-R6 family
+ - USB: serial: cp210x: fix comments for GE CS1000
+ - USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick
+ - [arm*] usb: dwc2: gadget: Fix GOUTNAK flow for Slave mode.
+ - [arm*] usb: dwc2: gadget: Fix sending zero length packet in DDMA mode.
+ - firmware/efi: Tell memblock about EFI iomem reservations
+ - tracepoints: Update static_call before tp_funcs when adding a tracepoint
+ - tracing/histogram: Rename "cpu" to "common_cpu"
+ - tracing: Synthetic event field_pos is an index not a boolean
+ - btrfs: check for missing device in btrfs_trim_fs
+ - media: ngene: Fix out-of-bounds bug in ngene_command_config_free_buf()
+ - ixgbe: Fix packet corruption due to missing DMA sync
+ - bus: mhi: core: Validate channel ID when processing command completions
+ - posix-cpu-timers: Fix rearm racing against process tick
+ - io_uring: explicitly count entries for poll reqs
+ - io_uring: remove double poll entry on arm failure
+ - userfaultfd: do not untag user pointers
+ - memblock: make for_each_mem_range() traverse MEMBLOCK_HOTPLUG regions
+ - hugetlbfs: fix mount mode command line processing
+ - rbd: don't hold lock_rwsem while running_list is being drained
+ - rbd: always kick acquire on "acquired" and "released" notifications
+ - misc: eeprom: at24: Always append device id even if label property is set.
+ - driver core: Prevent warning when removing a device link from unregistered
+ consumer
+ - drm: Return -ENOTTY for non-drm ioctls
+ - drm/amdgpu: update golden setting for sienna_cichlid
+ - [arm64,armhf] net: dsa: mv88e6xxx: enable SerDes RX stats for Topaz
+ - [arm64,armhf] net: dsa: mv88e6xxx: enable SerDes PCS register dump via
+ ethtool -d on Topaz
+ - PCI: Mark AMD Navi14 GPU ATS as broken
+ - skbuff: Release nfct refcount on napi stolen or re-used skbs
+ - Documentation: Fix intiramfs script name
+ - usb: ehci: Prevent missed ehci interrupts with edge-triggered MSI
+ - [amd64] drm/i915/gvt: Clear d3_entered on elsp cmd submission.
+ - sfc: ensure correct number of XDP queues
+ - xhci: add xhci_get_virt_ep() helper
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.55
+ - io_uring: fix link timeout refs
+ - [x86] KVM: determine if an exception has an error code only when injecting
+ it.
+ - af_unix: fix garbage collect vs MSG_PEEK
+ - workqueue: fix UAF in pwq_unbound_release_workfn()
+ - cgroup1: fix leaked context root causing sporadic NULL deref in LTP
+ - net/802/mrp: fix memleak in mrp_request_join()
+ - net/802/garp: fix memleak in garp_request_join()
+ - net: annotate data race around sk_ll_usec
+ - sctp: move 198 addresses from unusable to private scope
+ - rcu-tasks: Don't delete holdouts within trc_inspect_reader()
+ - rcu-tasks: Don't delete holdouts within trc_wait_for_one_reader()
+ - ipv6: allocate enough headroom in ip6_finish_output2()
+ - drm/ttm: add a check against null pointer dereference
+ - hfs: add missing clean-up in hfs_fill_super
+ - hfs: fix high memory mapping in hfs_bnode_read
+ - hfs: add lock nesting notation to hfs_find_init
+ - cifs: fix the out of range assignment to bit fields in
+ parse_server_interfaces
+ - iomap: remove the length variable in iomap_seek_data
+ - iomap: remove the length variable in iomap_seek_hole
+ - ipv6: ip6_finish_output2: set sk into newly allocated nskb
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.56
+ - io_uring: fix null-ptr-deref in io_sq_offload_start()
+ - [x86] asm: Ensure asm/proto.h can be included stand-alone
+ - pipe: make pipe writes always wake up readers
+ - btrfs: fix rw device counting in __btrfs_free_extra_devids
+ - btrfs: mark compressed range uptodate only if all bio succeed
+ - Revert "ACPI: resources: Add checks for ACPI IRQ override"
+ - [x86] kvm: fix vcpu-id indexed array sizes
+ - KVM: add missing compat KVM_CLEAR_DIRTY_LOG
+ - ocfs2: fix zero out valid data
+ - ocfs2: issue zeroout to EOF blocks
+ - can: j1939: j1939_xtp_rx_dat_one(): fix rxtimer value between consecutive
+ TP.DT to 750ms
+ - can: raw: raw_setsockopt(): fix raw_rcv panic for sock UAF
+ - can: peak_usb: pcan_usb_handle_bus_evt(): fix reading rxerr/txerr values
+ - can: mcba_usb_start(): add missing urb->transfer_dma initialization
+ (Closes: #990850)
+ - can: usb_8dev: fix memory leak
+ - can: ems_usb: fix memory leak
+ - can: esd_usb2: fix memory leak
+ - HID: wacom: Re-enable touch by default for Cintiq 24HDT / 27QHDT
+ - NIU: fix incorrect error return, missed in previous revert
+ - drm/amdgpu: Avoid printing of stack contents on firmware load error
+ - drm/amdgpu: Fix resource leak on probe error path
+ - blk-iocost: fix operation ordering in iocg_wake_fn()
+ - nfc: nfcsim: fix use after free during module unload
+ - cfg80211: Fix possible memory leak in function cfg80211_bss_update
+ - bpf: Fix OOB read when printing XDP link fdinfo
+ - mac80211: fix enabling 4-address mode on a sta vif after assoc
+ - netfilter: conntrack: adjust stop timestamp to real expiry value
+ - netfilter: nft_nat: allow to specify layer 4 protocol NAT only
+ - i40e: Fix logic of disabling queues
+ - i40e: Fix firmware LLDP agent related warning
+ - i40e: Fix queue-to-TC mapping on Tx
+ - i40e: Fix log TC creation failure when max num of queues is exceeded
+ - tipc: fix implicit-connect for SYN+
+ - tipc: fix sleeping in tipc accept routine
+ - net: Set true network header for ECN decapsulation
+ - net: qrtr: fix memory leaks
+ - tipc: do not write skb_shinfo frags when doing decrytion
+ - mlx4: Fix missing error code in mlx4_load_one()
+ - [x86] KVM: x86: Check the right feature bit for MSR_KVM_ASYNC_PF_ACK
+ access
+ - net: llc: fix skb_over_panic
+ - [arm64] drm/msm/dpu: Fix sm8250_mdp register length
+ - [arm64] drm/msm/dp: Initialize the INTF_CONFIG register
+ - skmsg: Make sk_psock_destroy() static
+ - net/mlx5: Fix flow table chaining
+ - net/mlx5e: Fix nullptr in mlx5e_hairpin_get_mdev()
+ - tulip: windbond-840: Fix missing pci_disable_device() in probe and remove
+ - sis900: Fix missing pci_disable_device() in probe and remove
+ - SMB3: fix readpage for large swap cache
+ - [powerpc*] pseries: Fix regression while building external modules
+ - Revert "perf map: Fix dso->nsinfo refcounting"
+ - i40e: Add additional info to PHY type error
+ - can: j1939: j1939_session_deactivate(): clarify lifetime of session object
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.57
+ - [x86] drm/i915: Revert "drm/i915/gem: Asynchronous cmdparser"
+ - [x86] Revert "drm/i915: Propagate errors on awaiting already signaled
+ fences"
+ - btrfs: fix race causing unnecessary inode logging during link and rename
+ - btrfs: fix lost inode on log replay after mix of fsync, rename and inode
+ eviction
+ - [armhf] spi: stm32h7: fix full duplex irq handler handling
+ - r8152: Fix potential PM refcount imbalance
+ - qed: fix possible unpaired spin_{un}lock_bh in _qed_mcp_cmd_and_union()
+ - ASoC: rt5682: Fix the issue of garbled recording after powerd_dbus_suspend
+ - net: Fix zero-copy head len calculation.
+ - efi/mokvar: Reserve the table only if it is in boot services data
+ - nvme: fix nvme_setup_command metadata trace event
+ - ACPI: fix NULL pointer dereference
+ - Revert "Bluetooth: Shutdown controller after workqueues are flushed or
+ cancelled"
+ - Revert "watchdog: iTCO_wdt: Account for rebooting on second timeout"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.58
+ - Revert "ACPICA: Fix memory leak caused by _CID repair function"
+ - ALSA: seq: Fix racy deletion of subscriber
+ - [armhf] bus: ti-sysc: Fix gpt12 system timer issue with reserved status
+ - net: xfrm: fix memory leak in xfrm_user_rcv_msg
+ - [armhf] imx: add missing iounmap()
+ - [armhf] imx: add missing clk_disable_unprepare()
+ - [arm64] dts: ls1028: sl28: fix networking for variant 2
+ - [armhf] imx: fix missing 3rd argument in macro imx_mmdc_perf_init
+ - [armhf] dts: imx: Swap M53Menlo pinctrl_power_button/pinctrl_power_out
+ pins
+ - [arm64] dts: armada-3720-turris-mox: fixed indices for the SDHC
+ controllers
+ - [arm64] dts: armada-3720-turris-mox: remove mrvl,i2c-fast-mode
+ - ALSA: usb-audio: fix incorrect clock source setting
+ - [arm64,armhf] clk: tegra: Implement disable_unused() of
+ tegra_clk_sdmmc_mux_ops
+ - [armhf] dmaengine: stm32-dma: Fix PM usage counter imbalance in stm32 dma
+ ops
+ - [armhf] dmaengine: stm32-dmamux: Fix PM usage counter unbalance in stm32
+ dmamux ops
+ - [armhf] spi: imx: mx51-ecspi: Reinstate low-speed CONFIGREG delay
+ - [armhf] spi: imx: mx51-ecspi: Fix low-speed CONFIGREG delay calculation
+ - scsi: sr: Return correct event when media event code is 3
+ - media: videobuf2-core: dequeue if start_streaming fails
+ - [armhf] dmaengine: imx-dma: configure the generic DMA type to make it work
+ - net, gro: Set inner transport header offset in tcp/udp GRO hook
+ - net: phy: micrel: Fix detection of ksz87xx switch
+ - net: natsemi: Fix missing pci_disable_device() in probe and remove
+ - RDMA/mlx5: Delay emptying a cache entry when a new MR is added to it
+ recently
+ - sctp: move the active_key update after sh_keys is added
+ - nfp: update ethtool reporting of pauseframe control
+ - net: ipv6: fix returned variable type in ip6_skb_dst_mtu
+ - net: sched: fix lockdep_set_class() typo error for sch->seqlock
+ - [mips*] check return value of pgtable_pmd_page_ctor
+ - bnx2x: fix an error code in bnx2x_nic_load()
+ - net: pegasus: fix uninit-value in get_interrupt_interval
+ - [arm64,armhf] net: fec: fix use-after-free in fec_drv_remove
+ - net: vxge: fix use-after-free in vxge_device_unregister
+ - Bluetooth: defer cleanup of resources in hci_unregister_dev()
+ - USB: usbtmc: Fix RCU stall warning
+ - USB: serial: option: add Telit FD980 composition 0x1056
+ - USB: serial: ch341: fix character loss at high transfer rates
+ - USB: serial: ftdi_sio: add device ID for Auto-M3 OP-COM v2
+ - [x86] firmware_loader: use -ETIMEDOUT instead of -EAGAIN in
+ fw_load_sysfs_fallback
+ - [x86] firmware_loader: fix use-after-free in firmware_fallback_sysfs
+ - ALSA: pcm - fix mmap capability check for the snd-dummy driver
+ - ALSA: hda/realtek: add mic quirk for Acer SF314-42
+ - ALSA: hda/realtek: Fix headset mic for Acer SWIFT SF314-56 (ALC256)
+ - ALSA: usb-audio: Fix superfluous autosuspend recovery
+ - ALSA: usb-audio: Add registration quirk for JBL Quantum 600
+ - [arm64,armhf] usb: dwc3: gadget: Avoid runtime resume if disabling pullup
+ - usb: gadget: f_hid: added GET_IDLE and SET_IDLE handlers
+ - usb: gadget: f_hid: fixed NULL pointer dereference
+ - usb: gadget: f_hid: idle uses the highest byte for duration
+ - usb: typec: tcpm: Keep other events when receiving FRS and Sourcing_vbus
+ events
+ - clk: fix leak on devm_clk_bulk_get_all() unwind
+ - tracing: Fix NULL pointer dereference in start_creating
+ - tracepoint: static call: Compare data on transition from 2->1 callees
+ - tracepoint: Fix static call function vs data state mismatch
+ - [arm64] stacktrace: avoid tracing arch_stack_walk()
+ - [arm64] optee: Clear stale cache entries during initialization
+ - [arm64] tee: add tee_shm_alloc_kernel_buf()
+ - [arm64] optee: Fix memory leak when failing to register shm pages
+ - [arm64] optee: Refuse to load the driver under the kdump kernel
+ - [arm64] optee: fix tee out of memory failure seen during kexec reboot
+ - staging: rtl8723bs: Fix a resource leak in sd_int_dpc
+ - staging: rtl8712: get rid of flush_scheduled_work
+ - staging: rtl8712: error handling refactoring
+ - drivers core: Fix oops when driver probe fails
+ - media: rtl28xxu: fix zero-length control request
+ - pipe: increase minimum default pipe size to 2 pages
+ - ext4: fix potential htree corruption when growing large_dir directories
+ - [arm64,armhf] serial: tegra: Only print FIFO error message when an error
+ occurs
+ - serial: 8250: Mask out floating 16/32-bit bus bits
+ - [mips*] Malta: Do not byte-swap accesses to the CBUS UART
+ - serial: 8250_pci: Enumerate Elkhart Lake UARTs via dedicated driver
+ - serial: 8250_pci: Avoid irq sharing for MSI(-X) interrupts.
+ - timers: Move clearing of base::timer_running under base:: Lock
+ - xfrm: Fix RCU vs hash_resize_mutex lock inversion
+ - pcmcia: i82092: fix a null pointer dereference bug
+ - selinux: correct the return value when loads initial sids
+ - [armhf] bus: ti-sysc: AM3: RNG is GP only
+ - [arm64] Revert "gpio: mpc8xxx: change the gpio interrupt flags."
+ - [armhf] omap2+: hwmod: fix potential NULL pointer access
+ - md/raid10: properly indicate failure when ending a failed write request
+ - [x86] KVM: accept userspace interrupt only if no event is injected
+ - KVM: Do not leak memory for duplicate debugfs directories
+ - [x86] KVM: x86/mmu: Fix per-cpu counter corruption on 32-bit builds
+ - [arm64] vdso: Avoid ISB after reading from cntvct_el0
+ - [arm64,armhf] spi: meson-spicc: fix memory leak in meson_spicc_remove
+ - [x86] drm/i915: Correct SFC_DONE register offset
+ - sched/rt: Fix double enqueue caused by rt_effective_prio
+ - [x86] drm/i915: avoid uninitialised var in eb_parse()
+ - libata: fix ata_pio_sector for CONFIG_HIGHMEM
+ - reiserfs: add check for root_inode in reiserfs_fill_super
+ - reiserfs: check directory items on read from disk
+ - net: qede: Fix end of loop tests for list_for_each_entry
+ - net/qla3xxx: fix schedule while atomic in ql_wait_for_drvr_lock and
+ ql_adapter_reset
+ - smb3: rc uninitialized in one fallocate path
+ - drm/amdgpu/display: only enable aux backlight control for OLED panels
+ - [arm64] fix compat syscall return truncation
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.59
+ - [x86] KVM: SVM: Fix off-by-one indexing when nullifying last used SEV VMCB
+ - [arm64] tee: Correct inappropriate usage of TEE_SHM_DMA_BUF flag
+ - bpf: Add lockdown check for probe_write_user helper
+ - mm: make zone_to_nid() and zone_set_nid() available for DISCONTIGMEM
+ - [x86] vboxsf: Honor excl flag to the dir-inode create op
+ - [x86] vboxsf: Make vboxsf_dir_create() return the handle for the created
+ file
+ - USB:ehci:fix Kunpeng920 ehci hardware problem
+ - ALSA: pcm: Fix mmap breakage without explicit buffer setup
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 650 G8 Notebook PC
+ - ALSA: hda: Add quirk for ASUS Flow x13
+ - ppp: Fix generating ppp unit id when ifname is not specified
+ - net: xilinx_emaclite: Do not print real IOMEM pointer (CVE-2021-38205)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.60
+ - iio: adc: ti-ads7950: Ensure CS is deasserted after reading channels
+ - iio: adis: set GPIO reset pin direction
+ - [x86] ASoC: amd: Fix reference to PCM buffer address
+ - [x86] ASoC: intel: atom: Fix reference to PCM buffer address
+ - i2c: dev: zero out array used for i2c reads from userspace
+ - cifs: create sd context must be a multiple of 8
+ - scsi: lpfc: Move initialization of phba->poll_list earlier to avoid crash
+ - seccomp: Fix setting loaded filter count during TSYNC
+ - [armhf] net: ethernet: ti: cpsw: fix min eth packet size for non-switch
+ use-cases
+ - ceph: reduce contention in ceph_check_delayed_caps()
+ - [amd64,arm64] ACPI: NFIT: Fix support for virtual SPA ranges
+ - libnvdimm/region: Fix label activation vs errors
+ - drm/amd/display: use GFP_ATOMIC in amdgpu_dm_irq_schedule_work
+ - drm/amdgpu: don't enable baco on boco platforms in runpm
+ - ieee802154: hwsim: fix GPF in hwsim_set_edge_lqi
+ - ieee802154: hwsim: fix GPF in hwsim_new_edge_nl
+ - [x86] ASoC: SOF: Intel: hda-ipc: fix reply size checking
+ - netfilter: nf_conntrack_bridge: Fix memory leak when error
+ - [x86] pinctrl: tigerlake: Fix GPIO mapping for newer version of software
+ - [x86] platform/x86: pcengines-apuv2: Add missing terminating entries to
+ gpio-lookup tables
+ - net: phy: micrel: Fix link detection on ksz87xx switch"
+ - ppp: Fix generating ifname when empty IFLA_IFNAME is specified
+ - net/smc: fix wait on already cleared link
+ - net: sched: act_mirred: Reset ct info when mirror/redirect skb
+ - ice: Prevent probing virtual functions
+ - ice: don't remove netdev->dev_addr from uc sync list
+ - iavf: Set RSS LUT and key in reset handle path
+ - net/mlx5: Synchronize correct IRQ when destroying CQ
+ - net/mlx5: Fix return value from tracer initialization
+ - [arm64] drm/meson: fix colour distortion from HDR set during vendor u-boot
+ - net: Fix memory leak in ieee802154_raw_deliver
+ - net: igmp: fix data-race in igmp_ifc_timer_expire()
+ - net: bridge: validate the NUD_PERMANENT bit when adding an extern_learn
+ FDB entry
+ - net: bridge: fix flags interpretation for extern learn fdb entries
+ - net: bridge: fix memleak in br_add_if()
+ - net: linkwatch: fix failure to restore device state across suspend/resume
+ - tcp_bbr: fix u32 wrap bug in round logic if bbr_init() called after 2B
+ packets
+ - net: igmp: increase size of mr_ifc_count
+ - [x86] drm/i915: Only access SFC_DONE when media domain is not fused off
+ - xen/events: Fix race in set_evtchn_to_irq
+ - vsock/virtio: avoid potential deadlock when vsock device remove
+ - nbd: Aovid double completion of a request
+ - [arm64] efi/libstub: arm64: Force Image reallocation if BSS was not
+ reserved
+ - [arm64] efi/libstub: arm64: Relax 2M alignment again for relocatable
+ kernels
+ - [powerpc*] kprobes: Fix kprobe Oops happens in booke
+ - genirq: Provide IRQCHIP_AFFINITY_PRE_STARTUP
+ - [x86] msi: Force affinity setup before startup
+ - [x86] ioapic: Force affinity setup before startup
+ - [x86] resctrl: Fix default monitoring groups reporting
+ - genirq/msi: Ensure deactivation on teardown
+ - PCI/MSI: Enable and mask MSI-X early
+ - PCI/MSI: Mask all unused MSI-X entries
+ - PCI/MSI: Enforce that MSI-X table entry is masked for update
+ - PCI/MSI: Enforce MSI[X] entry updates to be visible
+ - PCI/MSI: Do not set invalid bits in MSI mask
+ - PCI/MSI: Correct misleading comments
+ - PCI/MSI: Use msi_mask_irq() in pci_msi_shutdown()
+ - PCI/MSI: Protect msi_desc::masked for multi-MSI
+ - [powerpc*] smp: Fix OOPS in topology_init()
+ - [arm64] efi/libstub: arm64: Double check image alignment at entry
+ - [x86] KVM: VMX: Use current VMCS to query WAITPKG support for MSR
+ emulation
+ - [x86] KVM: nVMX: Use vmx_need_pf_intercept() when deciding if L0 wants a
+ #PF
+ - [x86] vboxsf: Add vboxsf_[create|release]_sf_handle() helpers
+ - [x86] vboxsf: Add support for the atomic_open directory-inode op
+ - ceph: add some lockdep assertions around snaprealm handling
+ - ceph: clean up locking annotation for ceph_get_snap_realm and
+ __lookup_snap_realm
+ - ceph: take snap_empty_lock atomically with snaprealm refcount change
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.61
+ - mtd: cfi_cmdset_0002: fix crash when erasing/writing AMD cards
+ - media: zr364xx: propagate errors from zr364xx_start_readpipe()
+ - media: zr364xx: fix memory leaks in probe()
+ - media: drivers/media/usb: fix memory leak in zr364xx_probe
+ - [x86] KVM: Factor out x86 instruction emulation with decoding
+ - [x86] KVM: Fix warning caused by stale emulation context
+ - USB: core: Avoid WARNings for 0-length descriptor requests
+ - USB: core: Fix incorrect pipe calculation in do_proc_control()
+ - dmaengine: xilinx_dma: Fix read-after-free bug when terminating transfers
+ - net: xfrm: Fix end of loop tests for list_for_each_entry
+ - dmaengine: of-dma: router_xlate to return -EPROBE_DEFER if controller is
+ not yet available
+ - scsi: pm80xx: Fix TMF task completion race condition
+ - scsi: megaraid_mm: Fix end of loop tests for list_for_each_entry()
+ - scsi: scsi_dh_rdac: Avoid crash during rdac_bus_attach()
+ - scsi: core: Avoid printing an error if target_alloc() returns -ENXIO
+ - scsi: core: Fix capacity set to zero after offlinining device
+ - drm/amdgpu: fix the doorbell missing when in CGPG issue for renoir.
+ - qede: fix crash in rmmod qede while automatic debug collection
+ - net: usb: pegasus: Check the return value of get_geristers() and friends;
+ - net: usb: lan78xx: don't modify phy_device state concurrently
+ - Bluetooth: hidp: use correct wait queue when removing ctrl_wait
+ (Closes: #992121)
+ - [arm64] dts: qcom: c630: fix correct powerdown pin for WSA881x
+ - [arm64] dts: qcom: msm8992-bullhead: Remove PSCI
+ - iommu: Check if group is NULL before remove device
+ - [arm64] cpufreq: armada-37xx: forbid cpufreq for 1.2 GHz variant
+ - virtio: Protect vqs list access
+ - [armhf] bus: ti-sysc: Fix error handling for sysc_check_active_timer()
+ - vhost: Fix the calculation in vhost_overflow()
+ - bpf: Clear zext_dst of dead insns
+ - bnxt: don't lock the tx queue from napi poll
+ - bnxt: disable napi before canceling DIM
+ - bnxt: make sure xmit_more + errors does not miss doorbells
+ - bnxt: count Tx drops
+ - net: 6pack: fix slab-out-of-bounds in decode_data
+ - bnxt_en: Disable aRFS if running on 212 firmware
+ - bnxt_en: Add missing DMA memory barriers
+ - vrf: Reset skb conntrack connection on VRF rcv
+ - virtio-net: support XDP when not more queues
+ - virtio-net: use NETIF_F_GRO_HW instead of NETIF_F_LRO
+ - net: qlcnic: add missed unlock in qlcnic_83xx_flash_read32
+ - ixgbe, xsk: clean up the resources in ixgbe_xsk_pool_enable error path
+ - sch_cake: fix srchost/dsthost hashing mode
+ - [arm64,armhf] net: mdio-mux: Don't ignore memory allocation errors
+ - [arm64,armhf] net: mdio-mux: Handle -EPROBE_DEFER correctly
+ - ovs: clear skb->tstamp in forwarding path
+ - [amd64] iommu/vt-d: Consolidate duplicate cache invaliation code
+ - [amd64] iommu/vt-d: Fix incomplete cache flush in
+ intel_pasid_tear_down_entry()
+ - r8152: fix writing USB_BP2_EN
+ - i40e: Fix ATR queue selection
+ - iavf: Fix ping is lost after untrusted VF had tried to change MAC
+ - Revert "flow_offload: action should not be NULL when it is referenced"
+ - [arm64,armhf] mmc: dw_mmc: Fix hang on data CRC error
+ - [arm64,armhf] mmc: mmci: stm32: Check when the voltage switch procedure
+ should be done
+ - [arm64] mmc: sdhci-msm: Update the software timeout value for sdhc
+ - [armhf] clk: imx6q: fix uart earlycon unwork
+ - [arm64] clk: qcom: gdsc: Ensure regulator init state matches GDSC state
+ - ALSA: hda - fix the 'Capture Switch' value change notifications
+ - slimbus: messaging: start transaction ids from 1 instead of zero
+ - slimbus: messaging: check for valid transaction id
+ - ALSA: hda/realtek: Enable 4-speaker output for Dell XPS 15 9510 laptop
+ - [arm*] mmc: sdhci-iproc: Cap min clock frequency on BCM2711
+ - [arm*] mmc: sdhci-iproc: Set SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN on BCM2711
+ - btrfs: prevent rename2 from exchanging a subvol with a directory from
+ different parents
+ - ALSA: hda/via: Apply runtime PM workaround for ASUS B23E
+ - [s390x] pci: fix use after free of zpci_dev
+ - PCI: Increase D3 delay for AMD Renoir/Cezanne XHCI
+ - ALSA: hda/realtek: Limit mic boost on HP ProBook 445 G8
+ - [x86] ASoC: intel: atom: Fix breakage for PCM buffer address setup
+ - mm: memcontrol: fix occasional OOMs due to proportional memory.low reclaim
+ - fs: warn about impending deprecation of mandatory locks
+ - io_uring: fix xa_alloc_cycle() error return value check
+ - io_uring: only assign io_uring_enter() SQPOLL error in actual error case
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.62
+ - bpf: Fix ringbuf helper function compatibility
+ - bpf: Fix NULL pointer dereference in bpf_get_local_storage() helper
+ - ASoC: rt5682: Adjust headset volume button threshold
+ - ASoC: component: Remove misplaced prefix handling in pin control functions
+ - netfilter: conntrack: collect all entries in one cycle
+ - once: Fix panic when module unload
+ - blk-iocost: fix lockdep warning on blkcg->lock
+ - ovl: fix uninitialized pointer read in ovl_lookup_real_one()
+ - [arm64] net: mscc: Fix non-GPL export of regmap APIs
+ - can: usb: esd_usb2: esd_usb2_rx_event(): fix the interchange of the CAN RX
+ and TX error counters
+ - ceph: correctly handle releasing an embedded cap flush
+ - Revert "btrfs: compression: don't try to compress if we don't have enough
+ pages"
+ - drm/amdgpu: Cancel delayed work when GFXOFF is disabled
+ - Revert "USB: serial: ch341: fix character loss at high transfer rates"
+ - USB: serial: option: add new VID/PID to support Fibocom FG150
+ - [arm64,armhf] usb: dwc3: gadget: Fix dwc3_calc_trbs_left()
+ - [arm64,armhf] usb: dwc3: gadget: Stop EP0 transfers during pullup disable
+ - scsi: core: Fix hang of freezing queue between blocking and running device
+ - [amd64] IB/hfi1: Fix possible null-pointer dereference in
+ _extend_sdma_tx_descs()
+ - ice: do not abort devlink info if board identifier can't be found
+ - net: usb: pegasus: fixes of set_register(s) return value evaluation;
+ - igc: fix page fault when thunderbolt is unplugged
+ - igc: Use num_tx_queues when iterating over tx_ring queue
+ - e1000e: Fix the max snoop/no-snoop latency for 10M
+ - e1000e: Do not take care about recovery NVM checksum
+ - ip_gre: add validation for csum_start
+ - [arm64] xgene-v2: Fix a resource leak in the error handling path of
+ 'xge_probe()'
+ - [arm64,armhf] net: marvell: fix MVNETA_TX_IN_PRGRS bit number
+ - ucounts: Increase ucounts reference counter before the security hook
+ - net/sched: ets: fix crash when flipping from 'strict' to 'quantum'
+ - ipv6: use siphash in rt6_exception_hash()
+ - ipv4: use siphash instead of Jenkins in fnhe_hashfun()
+ - cxgb4: dont touch blocked freelist bitmap after free
+ - rtnetlink: Return correct error on changing device netns
+ - [arm64] net: hns3: clear hardware resource when loading driver
+ - [arm64] net: hns3: add waiting time before cmdq memory is released
+ - [arm64] net: hns3: fix duplicate node in VLAN list
+ - [arm64] net: hns3: fix get wrong pfc_en when query PFC configuration
+ - [arm*] Revert "mmc: sdhci-iproc: Set SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN on
+ BCM2711"
+ - net: stmmac: add mutex lock to protect est parameters
+ - net: stmmac: fix kernel panic due to NULL pointer dereference of plat->est
+ - [x86] drm/i915: Fix syncmap memory leak
+ - usb: gadget: u_audio: fix race condition on endpoint stop
+ - [x86] perf/x86/intel/uncore: Fix integer overflow on 23 bit left shift of
+ a u32
+ - iwlwifi: pnvm: accept multiple HW-type TLVs
+ - opp: remove WARN when no valid OPPs remain
+ - [arm64,armhf] cpufreq: blocklist Qualcomm sm8150 in cpufreq-dt-platdev
+ - virtio: Improve vq->broken access to avoid any compiler optimization
+ - virtio_pci: Support surprise removal of virtio pci device
+ - qed: qed ll2 race condition fixes
+ - qed: Fix null-pointer dereference in qed_rdma_create_qp()
+ - blk-mq: don't grab rq's refcount in blk_mq_check_expired()
+ - drm: Copy drm_wait_vblank to user before returning
+ - drm/nouveau/disp: power down unused DP links during init
+ - drm/nouveau/kms/nv50: workaround EFI GOP window channel format differences
+ - net/rds: dma_map_sg is entitled to merge entries
+ - btrfs: fix race between marking inode needs to be logged and log syncing
+ - pipe: avoid unnecessary EPOLLET wakeups under normal loads
+ - pipe: do FASYNC notifications for every pipe IO, not just state changes
+ - tipc: call tipc_wait_for_connect only when dlen is not 0
+ - Bluetooth: btusb: check conditions before enabling USB ALT 3 for WBS
+ - [powerpc*] perf: Invoke per-CPU variable access with disabled interrupts
+ - srcu: Provide internal interface to start a Tree SRCU grace period
+ - srcu: Provide polling interfaces for Tree SRCU grace periods
+ - srcu: Provide internal interface to start a Tiny SRCU grace period
+ - srcu: Make Tiny SRCU use multi-bit grace-period counter
+ - srcu: Provide polling interfaces for Tiny SRCU grace periods
+ - tracepoint: Use rcu get state and cond sync for static call updates
+ - usb: typec: ucsi: acpi: Always decode connector change information
+ (Closes: #992004)
+ - usb: typec: ucsi: Work around PPM losing change information
+ - usb: typec: ucsi: Clear pending after acking connector change
+ - [arm64] dts: qcom: msm8994-angler: Fix gpio-reserved-ranges 85-88
+ - kthread: Fix PF_KTHREAD vs to_kthread() race
+ - Revert "floppy: reintroduce O_NDELAY fix"
+ - net: don't unconditionally copy_from_user a struct ifreq for socket ioctls
+ - audit: move put_tree() to avoid trim_trees refcount underflow and UAF
+ - bpf: Fix potentially incorrect results with bpf_get_local_storage()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.63
+ - fscrypt: add fscrypt_symlink_getattr() for computing st_size
+ - ext4: report correct st_size for encrypted symlinks
+ - f2fs: report correct st_size for encrypted symlinks
+ - ubifs: report correct st_size for encrypted symlinks
+ - Revert "ucounts: Increase ucounts reference counter before the security
+ hook"
+ - Revert "cred: add missing return error code when set_cred_ucounts()
+ failed"
+ - Revert "Add a reference to ucounts for each cred"
+ - [armhf] gpu: ipu-v3: Fix i.MX IPU-v3 offset calculations for (semi)planar
+ U/V formats
+ - qed: Fix the VF msix vectors flow
+ - [arm64] net: macb: Add a NULL check on desc_ptp
+ - qede: Fix memset corruption
+ - [x86] perf/x86/intel/pt: Fix mask of num_address_ranges
+ - ceph: fix possible null-pointer dereference in ceph_mdsmap_decode()
+ - [x86] perf/x86/amd/ibs: Work around erratum #1197
+ - [x86] perf/x86/amd/power: Assign pmu.module
+ - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup
+ - ALSA: hda/realtek: Workaround for conflicting SSID on ASUS ROG Strix G17
+ - ALSA: pcm: fix divide error in snd_pcm_lib_ioctl
+ - spi: Switch to signed types for *_native_cs SPI controller fields
+ - new helper: inode_wrong_type()
+ - fuse: fix illegal access to inode with reused nodeid
+ - media: stkwebcam: fix memory leak in stk_camera_probe
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.64
+ - igmp: Add ip_mc_list lock in ip_check_mc_rcu
+ - USB: serial: mos7720: improve OOM-handling in read_mos_reg()
+ - mm/page_alloc: speed up the iteration of max_order
+ - Revert "r8169: avoid link-up interrupt issue on RTL8106e if user enables
+ ASPM"
+ - [amd64] x86/events/amd/iommu: Fix invalid Perf result due to IOMMU PMC
+ power-gating
+ - blk-mq: fix kernel panic during iterating over flush request
+ - blk-mq: fix is_flush_rq
+ - blk-mq: clearing flush request reference in tags->rqs[]
+ - ALSA: usb-audio: Add registration quirk for JBL Quantum 800
+ - xhci: fix even more unsafe memory usage in xhci tracing
+ - xhci: fix unsafe memory usage in xhci tracing
+ - [x86] reboot: Limit Dell Optiplex 990 quirk to early BIOS versions
+ - PCI: Call Max Payload Size-related fixup quirks early
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.65
+ - locking/mutex: Fix HANDOFF condition
+ - regmap: fix the offset of register error log
+ - sched/deadline: Fix reset_on_fork reporting of DL tasks
+ - power: supply: axp288_fuel_gauge: Report register-address on readb /
+ writeb errors
+ - sched/deadline: Fix missing clock update in migrate_task_rq_dl()
+ - rcu/tree: Handle VM stoppage in stall detection
+ - [x86] EDAC/mce_amd: Do not load edac_mce_amd module on guests
+ - posix-cpu-timers: Force next expiration recalc after itimer reset
+ - hrtimer: Avoid double reprogramming in __hrtimer_start_range_ns()
+ - hrtimer: Ensure timerfd notification for HIGHRES=n
+ - udf: Check LVID earlier
+ - udf: Fix iocharset=utf8 mount option
+ - isofs: joliet: Fix iocharset=utf8 mount option
+ - bcache: add proper error unwinding in bcache_device_init
+ - blk-throtl: optimize IOPS throttle for large IO scenarios
+ - nvme-tcp: don't update queue count when failing to set io queues
+ - nvme-rdma: don't update queue count when failing to set io queues
+ - nvmet: pass back cntlid on successful completion
+ - [x86] power: supply: max17042_battery: fix typo in MAx17042_TOFF
+ - [s390x] cio: add dev_busid sysfs entry for each subchannel
+ - [s390x] zcrypt: fix wrong offset index for APKA master key valid state
+ - libata: fix ata_host_start()
+ - [x86] crypto: qat - do not ignore errors from enable_vf2pf_comms()
+ - [x86] crypto: qat - handle both source of interrupt in VF ISR
+ - [x86] crypto: qat - fix reuse of completion variable
+ - [x86] crypto: qat - fix naming for init/shutdown VF to PF notifications
+ - [x86] crypto: qat - do not export adf_iov_putmsg()
+ - fcntl: fix potential deadlock for &fasync_struct.fa_lock
+ - udf_get_extendedattr() had no boundary checks.
+ - [s390x] pci: fix misleading rc in clp_set_pci_fn()
+ - [s390x] debug: keep debug data on resize
+ - [s390x] debug: fix debug area life cycle
+ - [s390x] ap: fix state machine hang after failure to enable irq
+ - [arm64] power: supply: cw2015: use dev_err_probe to allow deferred probe
+ - sched/numa: Fix is_core_idle()
+ - sched: Fix UCLAMP_FLAG_IDLE setting
+ - rcu: Fix to include first blocked task in stall warning
+ - rcu: Add lockdep_assert_irqs_disabled() to rcu_sched_clock_irq() and
+ callees
+ - rcu: Fix stall-warning deadlock due to non-release of rcu_node ->lock
+ - block: return ELEVATOR_DISCARD_MERGE if possible
+ - [arm64] spi: spi-fsl-dspi: Fix issue with uninitialized dma_slave_config
+ - genirq/timings: Fix error return code in irq_timings_test_irqs()
+ - [mips64el,mipsel] irqchip/loongson-pch-pic: Improve edge triggered
+ interrupt support
+ - lib/mpi: use kcalloc in mpi_resize
+ - block: nbd: add sanity check for first_minor
+ - [arm64,armhf] irqchip/gic-v3: Fix priority comparison when non-secure
+ priorities are used
+ - [x86] crypto: qat - use proper type for vf_mask
+ - [x86] mce: Defer processing of early errors
+ - [arm64] regulator: vctrl: Use locked regulator_get_voltage in probe path
+ - [arm64] regulator: vctrl: Avoid lockdep warning in enable/disable ops
+ - [arm64,armhf] drm/panfrost: Fix missing clk_disable_unprepare() on error
+ in panfrost_clk_init()
+ - [x86] drm/gma500: Fix end of loop tests for list_for_each_entry
+ - drm/of: free the right object
+ - bpf: Fix a typo of reuseport map in bpf.h.
+ - bpf: Fix potential memleak and UAF in the verifier.
+ - drm/of: free the iterator object on failure
+ - [amd64] gve: fix the wrong AdminQ buffer overflow check
+ - i40e: improve locking of mac_filter_hash
+ - gfs2: Fix memory leak of object lsi on error return path
+ - firmware: fix theoretical UAF race with firmware cache and resume
+ - driver core: Fix error return code in really_probe()
+ - media: dvb-usb: fix uninit-value in dvb_usb_adapter_dvb_init
+ - media: dvb-usb: fix uninit-value in vp702x_read_mac_addr
+ - media: dvb-usb: Fix error handling in dvb_usb_i2c_init
+ - media: go7007: fix memory leak in go7007_usb_probe
+ - media: go7007: remove redundant initialization
+ - [armhf] media: coda: fix frame_mem_ctrl for YUV420 and YVU420 formats
+ - Bluetooth: sco: prevent information leak in sco_conn_defer_accept()
+ - [x86] drm/amdgpu/acp: Make PM domain really work
+ - tcp: seq_file: Avoid skipping sk during tcp_seek_last_pos
+ - [armhf] dts: meson8b: odroidc1: Fix the pwm regulator supply properties
+ - [armhf] dts: meson8b: mxq: Fix the pwm regulator supply properties
+ - [armhf] dts: meson8b: ec100: Fix the pwm regulator supply properties
+ - net/mlx5e: Prohibit inner indir TIRs in IPoIB
+ - net/mlx5e: Block LRO if firmware asks for tunneled LRO
+ - cgroup/cpuset: Fix a partition bug with hotplug
+ - net: cipso: fix warnings in netlbl_cipsov4_add_std
+ - Bluetooth: mgmt: Fix wrong opcode in the response for add_adv cmd
+ - devlink: Break parameter notification sequence to be before/after
+ unload/load driver
+ - net/mlx5: Fix missing return value in
+ mlx5_devlink_eswitch_inline_mode_set()
+ - leds: lt3593: Put fwnode in any case during ->probe()
+ - leds: trigger: audio: Add an activate callback to ensure the initial
+ brightness is set
+ - media: em28xx-input: fix refcount bug in em28xx_usb_disconnect
+ - [arm64] media: venus: venc: Fix potential null pointer dereference on
+ pointer fmt
+ - PCI: PM: Avoid forcing PCI_D0 for wakeup reasons inconsistently
+ - PCI: PM: Enable PME if it can be signaled from D3cold
+ - debugfs: Return error during {full/open}_proxy_open() on rmmod
+ - Bluetooth: increase BTNAMSIZ to 21 chars to fix potential buffer overflow
+ - PM: EM: Increase energy calculation precision
+ - [arm64] drm/msm/mdp4: refactor HW revision detection into
+ read_mdp_hw_revision
+ - [arm64] drm/msm/mdp4: move HW revision detection to earlier phase
+ - [arm64] drm/msm/dpu: make dpu_hw_ctl_clear_all_blendstages clear necessary
+ LMs
+ - cgroup/cpuset: Miscellaneous code cleanup
+ - cgroup/cpuset: Fix violation of cpuset locking rule
+ - [x86] ASoC: Intel: Fix platform ID matching
+ - Bluetooth: fix repeated calls to sco_sock_kill
+ - [arm64] drm/msm/dsi: Fix some reference counted resource leaks
+ - net/mlx5: Register to devlink ingress VLAN filter trap
+ - net/mlx5: Fix unpublish devlink parameters
+ - [x86] ASoC: rt5682: Implement remove callback
+ - [x86] ASoC: rt5682: Properly turn off regulators if wrong device ID
+ - [arm64,armhf] usb: dwc3: meson-g12a: add IRQ check
+ - [arm64] usb: dwc3: qcom: add IRQ check
+ - [armhf] usb: phy: twl6030: add IRQ checks
+ - devlink: Clear whole devlink_flash_notify struct
+ - Bluetooth: Move shutdown callback before flushing tx and rx queue
+ - PM: cpu: Make notifier chain use a raw_spinlock_t
+ - mac80211: Fix insufficient headroom issue for AMSDU
+ - locking/lockdep: Mark local_lock_t
+ - locking/local_lock: Add missing owner initialization
+ - lockd: Fix invalid lockowner cast after vfs_test_lock
+ - nfsd4: Fix forced-expiry locking
+ - [arm64] dts: marvell: armada-37xx: Extend PCIe MEM space
+ - [arm*] firmware: raspberrypi: Keep count of all consumers
+ - [arm*] firmware: raspberrypi: Fix a leak in 'rpi_firmware_get()'
+ - mm/swap: consider max pages in iomap_swapfile_add_extent
+ - Bluetooth: add timeout sanity check to hci_inquiry
+ - [armhf] i2c: s3c2410: fix IRQ check
+ - gfs2: init system threads before freeze lock
+ - rsi: fix error code in rsi_load_9116_firmware()
+ - rsi: fix an error code in rsi_probe()
+ - [x86] ASoC: Intel: Skylake: Leave data as is when invoking TLV IPCs
+ - [x86] ASoC: Intel: Skylake: Fix module resource and format selection
+ - mmc: sdhci: Fix issue with uninitialized dma_slave_config
+ - [arm64,armhf] mmc: dw_mmc: Fix issue with uninitialized dma_slave_config
+ - bpf: Fix possible out of bound write in narrow load handling
+ - CIFS: Fix a potencially linear read overflow
+ - [arm64] i2c: xlp9xx: fix main IRQ check
+ - [arm*] usb: ehci-orion: Handle errors of clk_prepare_enable() in probe
+ - [arm64] tty: serial: fsl_lpuart: fix the wrong mapbase value
+ - iwlwifi: follow the new inclusive terminology
+ - iwlwifi: skip first element in the WTAS ACPI table
+ - ice: Only lock to update netdev dev_addr
+ - ath6kl: wmi: fix an error code in ath6kl_wmi_sync_point()
+ - [amd64,arm64] atlantic: Fix driver resume flow.
+ - bcma: Fix memory leak for internally-handled cores
+ - brcmfmac: pcie: fix oops on failure to resume and reprobe
+ - ipv6: make exception cache less predictible
+ - ipv4: make exception cache less predictible
+ - net: sched: Fix qdisc_rate_table refcount leak when get tcf_block failed
+ - ipv4: fix endianness issue in inet_rtm_getroute_build_skb()
+ - [x86] ASoC: rt5682: Remove unused variable in rt5682_i2c_remove()
+ - iwlwifi Add support for ax201 in Samsung Galaxy Book Flex2 Alpha
+ - f2fs: guarantee to write dirty data when enabling checkpoint back
+ - time: Handle negative seconds correctly in timespec64_to_ns()
+ - io_uring: IORING_OP_WRITE needs hash_reg_file set
+ - bio: fix page leak bio_add_hw_page failure
+ - tty: Fix data race between tiocsti() and flush_to_ldisc()
+ - [x86] perf/x86/amd/ibs: Extend PERF_PMU_CAP_NO_EXCLUDE to IBS Op
+ - [x86] resctrl: Fix a maybe-uninitialized build warning treated as error
+ - [x86] Revert "KVM: x86: mmu: Add guest physical address check in
+ translate_gpa()"
+ - [s390x] KVM: index kvm->arch.idle_mask by vcpu_idx
+ - [x86] KVM: x86: Update vCPU's hv_clock before back to guest when
+ tsc_offset is adjusted
+ - [x86] KVM: VMX: avoid running vmx_handle_exit_irqoff in case of emulation
+ - [x86] KVM: nVMX: Unconditionally clear nested.pi_pending on nested
+ VM-Enter
+ - fuse: truncate pagecache on atomic_o_trunc
+ - fuse: flush extending writes
+ - fbmem: don't allow too huge resolutions
+ - backlight: pwm_bl: Improve bootloader/kernel device handover
+ - [armel] clk: kirkwood: Fix a clocking boot regression
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.66
+ - Revert "Bluetooth: Move shutdown callback before flushing tx and rx queue"
+ - Revert "block: nbd: add sanity check for first_minor"
+ - Revert "posix-cpu-timers: Force next expiration recalc after itimer reset"
+ - Revert "time: Handle negative seconds correctly in timespec64_to_ns()"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.67
+ - io_uring: limit fixed table size by RLIMIT_NOFILE
+ - io_uring: place fixed tables under memcg limits
+ - io_uring: add ->splice_fd_in checks
+ - io_uring: fail links of cancelled timeouts
+ - io-wq: fix wakeup race when adding new work
+ - btrfs: wake up async_delalloc_pages waiters after submit
+ - btrfs: reset replace target device to allocation state on close
+ - blk-zoned: allow zone management send operations without CAP_SYS_ADMIN
+ - blk-zoned: allow BLKREPORTZONE without CAP_SYS_ADMIN
+ - PCI/MSI: Skip masking MSI-X on Xen PV
+ - [powerpc*] perf/hv-gpci: Fix counter value parsing
+ - xen: fix setting of max_pfn in shared_info
+ - 9p/xen: Fix end of loop tests for list_for_each_entry
+ - ceph: fix dereference of null pointer cf
+ - [armhf] soc: aspeed: lpc-ctrl: Fix boundary check for mmap
+ - [armhf] soc: aspeed: p2a-ctrl: Fix boundary check for mmap
+ - [arm64] mm: Fix TLBI vs ASID rollover
+ - [arm64] head: avoid over-mapping in map_memory
+ - iio: ltc2983: fix device probe
+ - [arm64] wcn36xx: Ensure finish scan is not requested before start scan
+ - block: bfq: fix bfq_set_next_ioprio_data()
+ - [x86] power: supply: max17042: handle fails of reading status register
+ - dm crypt: Avoid percpu_counter spinlock contention in crypt_page_alloc()
+ - [x86] crypto: ccp - shutdown SEV firmware on kexec
+ - [x86] VMCI: fix NULL pointer dereference when unmapping queue pair
+ - media: uvc: don't do DMA on stack
+ - media: rc-loopback: return number of emitters rather than error
+ - [s390x] qdio: fix roll-back after timeout on ESTABLISH ccw
+ - [s390x] qdio: cancel the ESTABLISH ccw after timeout
+ - [armhf] Revert "dmaengine: imx-sdma: refine to load context only once"
+ - [armhf] dmaengine: imx-sdma: remove duplicated sdma_load_context
+ - libata: add ATA_HORKAGE_NO_NCQ_TRIM for Samsung 860 and 870 SSDs
+ - f2fs: fix to do sanity check for sb/cp fields correctly
+ - PCI/portdrv: Enable Bandwidth Notification only if port supports it
+ - PCI: Restrict ASMedia ASM1062 SATA Max Payload Size Supported
+ - PCI: Return ~0 data on pciconfig_read() CAP_SYS_ADMIN failure
+ - [arm64] PCI: xilinx-nwl: Enable the clock through CCF
+ - [arm64] PCI: aardvark: Configure PCIe resources from 'ranges' DT property
+ - PCI: Export pci_pio_to_address() for module use
+ - [arm64] PCI: aardvark: Fix checking for PIO status
+ - [arm64] PCI: aardvark: Fix masking and unmasking legacy INTx interrupts
+ - HID: input: do not report stylus battery state as "full"
+ - f2fs: quota: fix potential deadlock
+ - [arm64] pinctrl: armada-37xx: Correct PWM pins definitions
+ - scsi: bsg: Remove support for SCSI_IOCTL_SEND_COMMAND
+ - [arm64,armhf] clk: rockchip: drop GRF dependency for rk3328/rk3036 pll
+ types
+ - [amd64] IB/hfi1: Adjust pkey entry in index 0
+ - RDMA/iwcm: Release resources if iw_cm module initialization fails
+ - docs: Fix infiniband uverbs minor number
+ - scsi: BusLogic: Use %X for u32 sized integer rather than %lX
+ - [armhf] pinctrl: samsung: Fix pinctrl bank pin count
+ - scsi: ufs: Fix memory corruption by ufshcd_read_desc_param()
+ - [powerpc*] cpuidle: pseries: Fixup CEDE0 latency only for POWER10 onwards
+ - [powerpc*] stacktrace: Include linux/delay.h
+ - RDMA/mlx5: Delete not-available udata check
+ - [powerpc*] cpuidle: pseries: Mark pseries_idle_proble() as __init
+ - f2fs: reduce the scope of setting fsck tag when de->name_len is zero
+ - NFSv4/pNFS: Fix a layoutget livelock loop
+ - NFSv4/pNFS: Always allow update of a zero valued layout barrier
+ - NFSv4/pnfs: The layout barrier indicate a minimal value for the seqid
+ - SUNRPC: Fix potential memory corruption
+ - SUNRPC/xprtrdma: Fix reconnection locking
+ - SUNRPC query transport's source port
+ - sunrpc: Fix return value of get_srcport()
+ - [arm64,armhf] pinctrl: single: Fix error return code in
+ pcs_parse_bits_in_pinctrl_entry()
+ - [powerpc*] numa: Consider the max NUMA node for migratable LPAR
+ - scsi: smartpqi: Fix an error code in pqi_get_raid_map()
+ - scsi: qedi: Fix error codes in qedi_alloc_global_queues()
+ - scsi: qedf: Fix error codes in qedf_alloc_global_queues()
+ - iommu/vt-d: Update the virtual command related registers
+ - HID: i2c-hid: Fix Elan touchpad regression
+ - [arm64,armhf] clk: imx8m: fix clock tree update of TF-A managed clocks
+ - [powerpc*] KVM: PPC: Book3S HV: Fix copy_tofrom_guest routines
+ - [powerpc*] KVM: PPC: Book3S HV Nested: Reflect guest PMU in-use to L0 when
+ guest SPRs are live
+ - [x86] platform/x86: dell-smbios-wmi: Add missing kfree in error-exit from
+ run_smbios_call
+ - [powerpc*] smp: Update cpu_core_map on all PowerPc systems
+ - [arm64] RDMA/hns: Fix QP's resp incomplete assignment
+ - fscache: Fix cookie key hashing
+ - [powerpc*] KVM: PPC: Fix clearing never mapped TCEs in realmode
+ - f2fs: fix to account missing .skipped_gc_rwsem
+ - f2fs: fix unexpected ENOENT comes from f2fs_map_blocks()
+ - f2fs: fix to unmap pages from userspace process in punch_hole()
+ - f2fs: deallocate compressed pages when error happens
+ - f2fs: should put a page beyond EOF when preparing a write
+ - [mips64el,mipsel] Malta: fix alignment of the devicetree buffer
+ - userfaultfd: prevent concurrent API initialization
+ - [arm*] drm/vc4: hdmi: Set HD_CTL_WHOLSMP and HD_CTL_CHALIGN_SET
+ - drm/amdgpu: Fix amdgpu_ras_eeprom_init()
+ - media: dib8000: rewrite the init prbs logic
+ - [x86] hyperv: fix for unwanted manipulation of sched_clock when TSC marked
+ unstable
+ - PCI: Use pci_update_current_state() in pci_enable_device_flags()
+ - tipc: keep the skb in rcv queue until the whole data is read
+ - net: phy: Fix data type in DP83822 dp8382x_disable_wol()
+ - iio: dac: ad5624r: Fix incorrect handling of an optional regulator.
+ - iavf: do not override the adapter state in the watchdog task
+ - iavf: fix locking of critical sections
+ - video: fbdev: kyro: fix a DoS bug by restricting user input
+ - netlink: Deal with ESRCH error in nlmsg_notify()
+ - drm: avoid blocking in drm_clients_info's rcu section
+ - drm: serialize drm_file.master with a new spinlock
+ - drm: protect drm_master pointers in drm_lease.c
+ - rcu: Fix macro name CONFIG_TASKS_RCU_TRACE
+ - igc: Check if num of q_vectors is smaller than max before array access
+ - usb: gadget: u_ether: fix a potential null pointer dereference
+ - [armhf] USB: EHCI: ehci-mv: improve error handling in mv_ehci_enable()
+ - usb: gadget: composite: Allow bMaxPower=0 if self-powered
+ - tty: serial: jsm: hold port lock when reporting modem line changes
+ - [arm64] bus: fsl-mc: fix mmio base address for child DPRCs
+ - nfp: fix return statement in nfp_net_parse_meta()
+ - ethtool: improve compat ioctl handling
+ - drm/amdgpu: Fix a printing message
+ - [arm64] dts: allwinner: h6: tanix-tx6: Fix regulator node names
+ - video: fbdev: kyro: Error out if 'pixclock' equals zero
+ - ipv4: ip_output.c: Fix out-of-bounds warning in ip_copy_addrs()
+ - flow_dissector: Fix out-of-bounds warnings
+ - [s390x] jump_label: print real address in a case of a jump label bug
+ - [s390x] make PCI mio support a machine flag
+ - serial: 8250: Define RX trigger levels for OxSemi 950 devices
+ - serial: 8250_pci: make setup_port() parameters explicitly unsigned
+ - Bluetooth: skip invalid hci_sync_conn_complete_evt
+ - workqueue: Fix possible memory leaks in wq_numa_init()
+ - bonding: 3ad: fix the concurrency between __bond_release_one() and
+ bond_3ad_state_machine_handler()
+ - [x86] ASoC: Intel: bytcr_rt5640: Move "Platform Clock" routes to the maps
+ for the matching in-/output
+ - [x86] ASoC: Intel: update sof_pcm512x quirks
+ - media: v4l2-dv-timings.c: fix wrong condition in two for-loops
+ - gfs2: Fix glock recursion in freeze_go_xmote_bh
+ - [armhf] dts: imx53-ppd: Fix ACHC entry
+ - [arm64] nvmem: qfprom: Fix up qfprom_disable_fuse_blowing() ordering
+ - [arm64] net: ethernet: stmmac: Do not use unreachable() in
+ ipq806x_gmac_probe()
+ - [arm64] drm/msm: mdp4: drop vblank get/put from prepare/complete_commit
+ - [arm64] drm/msm/dsi: Fix DSI and DSI PHY regulator config from SDM660
+ - [x86] thunderbolt: Fix port linking by checking all adapters
+ - [x86] drm/vmwgfx: fix potential UAF in vmwgfx_surface.c
+ - Bluetooth: schedule SCO timeouts with delayed_work
+ - Bluetooth: avoid circular locks in sco_sock_connect
+ - [arm64] drm/msm/dp: return correct edid checksum after corrupted edid
+ checksum read
+ - net/mlx5: Fix variable type to match 64bit
+ - gpu: drm: amd: amdgpu: amdgpu_i2c: fix possible uninitialized-variable
+ access in amdgpu_i2c_router_select_ddc_port()
+ - mac80211: Fix monitor MTU limit so that A-MSDUs get through
+ - [arm64] dts: ls1046a: fix eeprom entries
+ - nvme-tcp: don't check blk_mq_tag_to_rq when receiving pdu data
+ - nvme: code command_id with a genctr for use-after-free validation
+ - Bluetooth: Fix handling of LE Enhanced Connection Complete
+ - opp: Don't print an error if required-opps is missing
+ - iomap: pass writeback errors to the mapping
+ - tcp: enable data-less, empty-cookie SYN with TFO_SERVER_COOKIE_NOT_REQD
+ - rpc: fix gss_svc_init cleanup on failure
+ - [armhf] hwmon: (pmbus/ibm-cffps) Fix write bits for LED control
+ - [x86] staging: rts5208: Fix get_ms_information() heap buffer size
+ - net: Fix offloading indirect devices dependency on qdisc order creation
+ - gfs2: Don't call dlm after protocol is unmounted
+ - [arm64,armhf] usb: chipidea: host: fix port index underflow and UBSAN
+ complains
+ - lockd: lockd server-side shouldn't set fl_ops
+ - [armhf] drm/exynos: Always initialize mapping in exynos_drm_register_dma()
+ - rtl8xxxu: Fix the handling of TX A-MPDU aggregation
+ - rtw88: use read_poll_timeout instead of fixed sleep
+ - rtw88: wow: build wow function only if CONFIG_PM is on
+ - rtw88: wow: fix size access error of probe request
+ - btrfs: tree-log: check btrfs_lookup_data_extent return value
+ - soundwire: intel: fix potential race condition during power down
+ - [x86] ASoC: Intel: Skylake: Fix module configuration for KPB and MIXER
+ - [x86] ASoC: Intel: Skylake: Fix passing loadable flag for module
+ - of: Don't allow __of_attached_node_sysfs() without CONFIG_SYSFS
+ - [arm64] mmc: sdhci-of-arasan: Modified SD default speed to 19MHz for
+ ZynqMP
+ - [arm64] mmc: sdhci-of-arasan: Check return value of non-void funtions
+ - mmc: rtsx_pci: Fix long reads when clock is prescaled
+ - mmc: core: Return correct emmc response in case of ioctl error
+ - cifs: fix wrong release in sess_alloc_buffer() failed path
+ - Revert "USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST
+ quirk set"
+ - [armhf] usb: musb: musb_dsps: request_irq() after initializing musb
+ - usbip: give back URBs for unsent unlink requests during cleanup
+ - usbip:vhci_hcd USB port can get stuck in the disabled state
+ - [arm64,armhf] ASoC: rockchip: i2s: Fix regmap_ops hang
+ - [arm64,armhf] ASoC: rockchip: i2s: Fixup config for DAIFMT_DSP_A/B
+ - nfsd: fix crash on LOCKT on reexported NFSv3
+ - iwlwifi: pcie: free RBs during configure
+ - iwlwifi: mvm: fix a memory leak in iwl_mvm_mac_ctxt_beacon_changed
+ - iwlwifi: mvm: avoid static queue number aliasing
+ - iwlwifi: mvm: fix access to BSS elements
+ - iwlwifi: fw: correctly limit to monitor dump
+ - iwlwifi: mvm: Fix scan channel flags settings
+ - net/mlx5: DR, fix a potential use-after-free bug
+ - net/mlx5: DR, Enable QP retransmission
+ - parport: remove non-zero check on count
+ - [arm64] wcn36xx: Fix missing frame timestamp for beacon/probe-resp
+ - ath9k: fix OOB read ar9300_eeprom_restore_internal
+ - ath9k: fix sleeping in atomic context
+ - net: fix NULL pointer reference in cipso_v4_doi_free
+ - fix array-index-out-of-bounds in taprio_change
+ - [arm64] net: hns3: clean up a type mismatch warning
+ - fs/io_uring Don't use the return value from import_iovec().
+ - io_uring: remove duplicated io_size from rw
+ - ovl: fix BUG_ON() in may_delete() when called from ovl_cleanup()
+ - scsi: BusLogic: Fix missing pr_cont() use
+ - scsi: qla2xxx: Changes to support kdump kernel
+ - scsi: qla2xxx: Sync queue idx with queue_pair_map idx
+ - [powerpc*] cpufreq: powernv: Fix init_chip_info initialization in numa=off
+ - [s390x] pv: fix the forcing of the swiotlb
+ - hugetlb: fix hugetlb cgroup refcounting during vma split
+ - mm/hmm: bypass devmap pte when all pfn requested flags are fulfilled
+ - mm/hugetlb: initialize hugetlb_usage in mm_init
+ - mm,vmscan: fix divide by zero in get_scan_count
+ - memcg: enable accounting for pids in nested pid namespaces
+ - libnvdimm/pmem: Fix crash triggered when I/O in-flight during unbind
+ - [arm64,armhf] platform/chrome: cros_ec_proto: Send command again when
+ timeout occurs
+ - [x86] drm/mgag200: Select clock in PLL update functions
+ - [arm64] drm/msi/mdp4: populate priv->kms in mdp4_kms_init
+ - drm/dp_mst: Fix return code on sideband message failure
+ - [arm64,armhf] drm/panfrost: Make sure MMU context lifetime is not bound to
+ panfrost_priv
+ - drm/amdgpu: Fix BUG_ON assert
+ - [arm64,armhf] drm/panfrost: Simplify lock_region calculation
+ - [arm64,armhf] drm/panfrost: Use u64 for size in lock_region
+ - [arm64,armhf] drm/panfrost: Clamp lock region to Bifrost minimum
+ - fanotify: limit number of event merge attempts
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.68
+ - btrfs: fix upper limit for max_inline for page size 64K
+ - [amd64] xen: reset legacy rtc flag for PV domU
+ - [arm64] sve: Use correct size when reinitialising SVE state
+ - PCI: Add AMD GPU multi-function power dependencies
+ - drm/amd/amdgpu: Increase HWIP_MAX_INSTANCE to 10
+ - [armhf] drm/etnaviv: return context from etnaviv_iommu_context_get
+ - [armhf] drm/etnaviv: put submit prev MMU context when it exists
+ - [armhf] drm/etnaviv: stop abusing mmu_context as FE running marker
+ - [armhf] drm/etnaviv: keep MMU context across runtime suspend/resume
+ - [armhf] drm/etnaviv: exec and MMU state is lost when resetting the GPU
+ - [armhf] drm/etnaviv: fix MMU context leak on GPU reset
+ - [armhf] drm/etnaviv: reference MMU context when setting up hardware state
+ - [armhf] drm/etnaviv: add missing MMU context put when reaping MMU mapping
+ - [s390x] sclp: fix Secure-IPL facility detection
+ - [x86] pat: Pass valid address to sanitize_phys()
+ - [x86] mm: Fix kern_addr_valid() to cope with existing but not present
+ entries
+ - tipc: fix an use-after-free issue in tipc_recvmsg
+ - ethtool: Fix rxnfc copy to user buffer overflow
+ - net/{mlx5|nfp|bnxt}: Remove unnecessary RTNL lock assert
+ - net/l2tp: Fix reference count leak in l2tp_udp_recv_core
+ - r6040: Restore MDIO clock frequency after MAC reset
+ - tipc: increase timeout in tipc_sk_enqueue()
+ - [arm64] drm/rockchip: cdn-dp-core: Make cdn_dp_core_resume __maybe_unused
+ - net/mlx5: FWTrace, cancel work on alloc pd error flow
+ - net/mlx5: Fix potential sleeping in atomic context
+ - nvme-tcp: fix io_work priority inversion
+ - events: Reuse value read using READ_ONCE instead of re-reading it
+ - vhost_net: fix OoB on sendmsg() failure.
+ - net/af_unix: fix a data-race in unix_dgram_poll
+ - [arm64,armhf] net: dsa: destroy the phylink instance on any error in
+ dsa_slave_phy_setup
+ - [x86] uaccess: Fix 32-bit __get_user_asm_u64() when
+ CC_HAS_ASM_GOTO_OUTPUT=y
+ - tcp: fix tp->undo_retrans accounting in tcp_sacktag_one()
+ - qed: Handle management FW error
+ - udp_tunnel: Fix udp_tunnel_nic work-queue type
+ - dt-bindings: arm: Fix Toradex compatible typo
+ - [powerpc*] KVM: PPC: Book3S HV: Tolerate treclaim. in fake-suspend mode
+ changing registers
+ - bnxt_en: make bnxt_free_skbs() safe to call after bnxt_free_mem()
+ - [arm64] net: hns3: pad the short tunnel frame before sending to hardware
+ - [arm64] net: hns3: change affinity_mask to numa node range
+ - [arm64] net: hns3: disable mac in flr process
+ - [arm64] net: hns3: fix the timing issue of VF clearing interrupt sources
+ - mm/memory_hotplug: use "unsigned long" for PFN in zone_for_pfn_range()
+ - dt-bindings: mtd: gpmc: Fix the ECC bytes vs. OOB bytes equation
+ - PCI: Add ACS quirks for NXP LX2xx0 and LX2xx2 platforms
+ - fuse: fix use after free in fuse_read_interrupt()
+ - [arm64,armhf] PCI: tegra: Fix OF node reference leak
+ - [armhf] mfd: Don't use irq_create_mapping() to resolve a mapping
+ - tracing/probes: Reject events which have the same name of existing one
+ - PCI: Add ACS quirks for Cavium multi-function devices
+ - watchdog: Start watchdog in watchdog_set_last_hw_keepalive only if
+ appropriate
+ - Set fc_nlinfo in nh_create_ipv4, nh_create_ipv6
+ - net: usb: cdc_mbim: avoid altsetting toggling for Telit LN920
+ - block, bfq: honor already-setup queue merges
+ - [i386] PCI: ibmphp: Fix double unmap of io_mem
+ - ethtool: Fix an error code in cxgb2.c
+ - [s390x] bpf: Fix optimizing out zero-extensions
+ - [s390x] bpf: Fix 64-bit subtraction of the -0x80000000 constant
+ - [s390x] bpf: Fix branch shortening during codegen pass
+ - mfd: axp20x: Update AXP288 volatile ranges
+ - PCI: of: Don't fail devm_pci_alloc_host_bridge() on missing 'ranges'
+ - netfilter: nft_ct: protect nft_ct_pcpu_template_refcnt with mutex
+ - [arm64] KVM: Restrict IPA size to maximum 48 bits on 4K and 16K page size
+ - PCI: Fix pci_dev_str_match_path() alloc while atomic bug
+ - mtd: mtdconcat: Judge callback existence based on the master
+ - mtd: mtdconcat: Check _read, _write callbacks existence before assignment
+ - [arm64] KVM: Fix read-side race on updates to vcpu reset state
+ - [arm64] KVM: Handle PSCI resets before userspace touches vCPU state
+ - mtd: rawnand: cafe: Fix a resource leak in the error handling path of
+ 'cafe_nand_probe()'
+ - perf unwind: Do not overwrite
+ FEATURE_CHECK_LDFLAGS-libunwind-{x86,aarch64}
+ - [arm64] gpio: mpc8xxx: Fix a resources leak in the error handling path of
+ 'mpc8xxx_probe()'
+ - [arm64] gpio: mpc8xxx: Use 'devm_gpiochip_add_data()' to simplify the code
+ and avoid a leak
+ - net: hso: add failure handler for add_net_device
+ - [armhf] net: dsa: b53: Fix calculating number of switch ports
+ - [armhf] net: dsa: b53: Set correct number of ports in the DSA struct
+ - netfilter: socket: icmp6: fix use-after-scope
+ - fq_codel: reject silly quantum parameters
+ - qlcnic: Remove redundant unlock in qlcnic_pinit_from_rom
+ - ip_gre: validate csum_start only on pull
+ - [armhf] net: dsa: b53: Fix IMP port setup on BCM5301x
+ - bnxt_en: fix stored FW_PSID version masks
+ - bnxt_en: Fix asic.rev in devlink dev info command
+ - bnxt_en: log firmware debug notifications
+ - bnxt_en: Consolidate firmware reset event logging.
+ - bnxt_en: Convert to use netif_level() helpers.
+ - bnxt_en: Improve logging of error recovery settings information.
+ - bnxt_en: Fix possible unintended driver initiated error recovery
+ - mfd: lpc_sch: Partially revert "Add support for Intel Quark X1000"
+ - mfd: lpc_sch: Rename GPIOBASE to prevent build error
+ - [x86] mce: Avoid infinite loop for copy from user recovery
+ - bnxt_en: Fix error recovery regression
+ - [armhf] net: dsa: bcm_sf2: Fix array overrun in bcm_sf2_num_active_ports()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.69
+ - PCI: pci-bridge-emul: Add PCIe Root Capabilities Register
+ - [arm64] PCI: aardvark: Fix reporting CRS value
+ - console: consume APC, DM, DCS
+ - [s390x] pci_mmio: fully validate the VMA before calling follow_pte()
+ - [armel,armhf] Qualify enabling of swiotlb_init()
+ - [armel,armhf] 9077/1: PLT: Move struct plt_entries definition to header
+ - [armel,armhf] 9078/1: Add warn suppress parameter to arm_gen_branch_link()
+ - [armel,armhf] 9079/1: ftrace: Add MODULE_PLTS support
+ - [armel,armhf] 9098/1: ftrace: MODULE_PLT: Fix build problem without
+ DYNAMIC_FTRACE
+ - Revert "net/mlx5: Register to devlink ingress VLAN filter trap"
+ - sctp: validate chunk size in __rcv_asconf_lookup (CVE-2021-3655)
+ - sctp: add param size validation for SCTP_PARAM_SET_PRIMARY (CVE-2021-3655)
+ - [x86] staging: rtl8192u: Fix bitwise vs logical operator in
+ TranslateRxSignalStuff819xUsb()
+ - coredump: fix memleak in dump_vma_snapshot()
+ - dmaengine: acpi: Avoid comparison GSI with Linux vIRQ
+ - [armhf] thermal/drivers/exynos: Fix an error code in exynos_tmu_probe()
+ - 9p/trans_virtio: Remove sysfs file on probe failure
+ - prctl: allow to setup brk for et_dyn executables
+ - nilfs2: use refcount_dec_and_lock() to fix potential UAF
+ - profiling: fix shift-out-of-bounds bugs
+ - PM: sleep: core: Avoid setting power.must_resume to false
+ - platform/chrome: sensorhub: Add trace events for sample
+ - platform/chrome: cros_ec_trace: Fix format warnings
+ - ceph: allow ceph_put_mds_session to take NULL or ERR_PTR
+ - ceph: cancel delayed work instead of flushing on mdsc teardown
+ - thermal/core: Fix thermal_cooling_device_register() prototype
+ - drivers: base: cacheinfo: Get rid of DEFINE_SMP_CALL_CACHE_FUNCTION()
+ - dma-buf: DMABUF_MOVE_NOTIFY should depend on DMA_SHARED_BUFFER
+ - [amd64] iommu/amd: Relocate GAMSup check to early_enable_iommus
+ - ceph: request Fw caps before updating the mtime in ceph_write_iter
+ - ceph: remove the capsnaps when removing caps
+ - ceph: lockdep annotations for try_nonblocking_invalidate
+ - btrfs: update the bdev time directly when closing
+ - btrfs: fix lockdep warning while mounting sprout fs
+ - nilfs2: fix memory leak in nilfs_sysfs_create_device_group
+ - nilfs2: fix NULL pointer in nilfs_##name##_attr_release
+ - nilfs2: fix memory leak in nilfs_sysfs_create_##name##_group
+ - nilfs2: fix memory leak in nilfs_sysfs_delete_##name##_group
+ - nilfs2: fix memory leak in nilfs_sysfs_create_snapshot_group
+ - nilfs2: fix memory leak in nilfs_sysfs_delete_snapshot_group
+ - [arm64,armhf] pwm: rockchip: Don't modify HW state in .remove() callback
+ - [armhf] pwm: stm32-lp: Don't modify HW state in .remove() callback
+ - blk-throttle: fix UAF by deleteing timer in blk_throtl_exit()
+ - blk-mq: allow 4x BLK_MAX_REQUEST_COUNT at blk_plug for multiple_queues
+ - sched/idle: Make the idle timer expire in hard interrupt context
+ - drm/nouveau/nvkm: Replace -ENOSYS with -ENODEV
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.70
+ - [arm64] PCI: aardvark: Increase polling delay to 1.5s while waiting for
+ PIO response
+ - ocfs2: drop acl cache for directories too
+ - mm: fix uninitialized use in overcommit_policy_handler
+ - [arm*] usb: dwc2: gadget: Fix ISOC flow for BDMA and Slave
+ - [arm*] usb: dwc2: gadget: Fix ISOC transfer complete handling for DDMA
+ - [armhf] usb: musb: tusb6010: uninitialized data in
+ tusb_fifo_write_unaligned()
+ - cifs: fix incorrect check for null pointer in header_assemble
+ - [x86] xen/x86: fix PV trap handling on secondary processors
+ - usb-storage: Add quirk for ScanLogic SL11R-IDE older than 2.6c
+ - USB: serial: cp210x: add ID for GW Instek GDM-834x Digital Multimeter
+ - USB: cdc-acm: fix minor-number release
+ - [arm*] binder: make sure fd closes complete
+ - [arm64,armhf] usb: dwc3: core: balance phy init and exit
+ - usb: core: hcd: Add support for deferring roothub registration
+ - USB: serial: mos7840: remove duplicated 0xac24 device ID
+ - USB: serial: option: add Telit LN920 compositions
+ - USB: serial: option: remove duplicate USB device ID
+ - USB: serial: option: add device id for Foxconn T99W265
+ - erofs: fix up erofs_lookup tracepoint
+ - btrfs: prevent __btrfs_dump_space_info() to underflow its free space
+ - xhci: Set HCD flag to defer primary roothub registration
+ - [arm64] serial: mvebu-uart: fix driver's tx_empty callback
+ - scsi: sd_zbc: Ensure buffer size is aligned to SECTOR_SIZE
+ - net: hso: fix muxed tty registration
+ - afs: Fix incorrect triggering of sillyrename on 3rd-party invalidation
+ - afs: Fix updating of i_blocks on file/dir extension
+ - [arm64] enetc: Fix illegal access when reading affinity_hint
+ - [arm64] enetc: Fix uninitialized struct dim_sample field usage
+ - bnxt_en: Fix TX timeout when TX ring size is set to the smallest
+ - [arm64] net: hns3: fix change RSS 'hfunc' ineffective issue
+ - [arm64] net: hns3: check queue id range before using
+ - net/smc: add missing error check in smc_clc_prfx_set()
+ - net/smc: fix 'workqueue leaked lock' in smc_conn_abort_work
+ - [arm64,armhf] net: dsa: don't allocate the slave_mii_bus using devres
+ - [s390x] qeth: fix NULL deref in qeth_clear_working_pool_list()
+ - qed: rdma - don't wait for resources under hw error recovery flow
+ - net/mlx4_en: Don't allow aRFS for encapsulated packets
+ - atlantic: Fix issue in the pm resume flow.
+ - scsi: iscsi: Adjust iface sysfs attr detection
+ - scsi: target: Fix the pgr/alua_support_store functions
+ - [x86] tty: synclink_gt, drop unneeded forward declarations
+ - [x86] tty: synclink_gt: rename a conflicting function name
+ - nvme-tcp: fix incorrect h2cdata pdu offset accounting
+ - treewide: Change list_sort to use const pointers
+ - nvme: keep ctrl->namespaces ordered
+ - thermal/core: Potential buffer overflow in
+ thermal_build_list_of_policies()
+ - cifs: fix a sign extension bug
+ - scsi: qla2xxx: Restore initiator in dual mode
+ - scsi: lpfc: Use correct scnprintf() limit
+ - [arm64,armhf] irqchip/gic-v3-its: Fix potential VPE leak on error
+ - md: fix a lock order reversal in md_alloc
+ - [x86] asm: Add a missing __iomem annotation in enqcmds()
+ - [x86] asm: Fix SETZ size enqcmds() build failure
+ - io_uring: put provided buffer meta data under memcg accounting
+ - blktrace: Fix uaf in blk_trace access after removing by sysfs
+ - net: phylink: Update SFP selected interface on advertising changes
+ - net: stmmac: allow CSR clock of 300MHz
+ - blk-mq: avoid to iterate over stale request
+ - ipv6: delay fib6_sernum increase in fib6_add
+ - [x86] cpufreq: intel_pstate: Override parameters if HWP forced by BIOS
+ - bpf: Add oversize check before call kvcalloc()
+ - xen/balloon: use a kernel thread instead a workqueue
+ - nvme-multipath: fix ANA state updates when a namespace is not present
+ - nvme-rdma: destroy cm id before destroy qp to avoid use after free
+ - amd/display: downgrade validation failure log level
+ - block: check if a profile is actually registered in
+ blk_integrity_unregister
+ - block: flush the integrity workqueue in blk_integrity_unregister
+ - blk-cgroup: fix UAF by grabbing blkcg lock before destroying blkg pd
+ - qnx4: avoid stringop-overread errors
+ - [arm64] Mark __stack_chk_guard as __ro_after_init
+ - net: 6pack: Fix tx timeout and slot time
+ - [x86] thermal/drivers/int340x: Do not set a wrong tcc offset on resume
+ - USB: serial: cp210x: fix dropped characters with CP2102
+ - xen/balloon: fix balloon kthread freezing
+
+ [ Salvatore Bonaccorso ]
+ * Refresh "MODSIGN: do not load mok when secure boot disabled"
+ * Refresh "MODSIGN: load blacklist from MOKx"
+ * [rt] Update to 5.10.47-rt46
+ - sched: Fix migration_cpu_stop() requeueing
+ - sched: Simplify migration_cpu_stop()
+ - sched: Collate affine_move_task() stoppers
+ - sched: Optimize migration_cpu_stop()
+ - sched: Fix affine_move_task() self-concurrency
+ - sched: Simplify set_affinity_pending refcounts
+ - sched: Don't defer CPU pick to migration_cpu_stop()
+ * Bump ABI to 9
+ * Disalbe PSTORE_BLK (Marked broken upstream)
+ * Refresh "fs: Add MODULE_SOFTDEP declarations for hard-coded crypto drivers"
+ * [rt] Update to 5.10.52-rt47
+ * [rt] Refresh "sched: Fix balance_callback()"
+ * [rt] Drop "timers: Move clearing of base::timer_running under base::lock"
+ (applied upstream)
+ * [rt] Refresh "net/Qdisc: use a seqlock instead seqcount"
+ * [rt] Refresh "net: xfrm: Use sequence counter with associated"
+ * [rt] Update to 5.10.59-rt51
+ * [rt] Update to 5.10.59-rt52
+ * [rt] Update to 5.10.65-rt53
+ * Refresh "Partially revert "net: socket: implement 64-bit timestamps""
+ * [armhf] dts: sun7i: A20-olinuxino-lime2: Fix ethernet phy-mode
+ * [mipsel] bpf, mips: Validate conditional branch offsets (CVE-2021-38300)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 30 Sep 2021 21:36:41 +0200
+
+linux (5.10.46-5) bullseye-security; urgency=high
+
+ * virtio_console: Assure used length from device is limited (CVE-2021-38160)
+ * NFSv4: Initialise connection to the server in nfs4_alloc_client()
+ (CVE-2021-38199)
+ * tracing: Fix bug in rb_per_cpu_empty() that might cause deadloop.
+ (CVE-2021-3679)
+ * [poewrpc*] KVM: PPC: Book3S: Fix H_RTAS rets buffer overflow
+ (CVE-2021-37576)
+ * ovl: prevent private clone if bind mount is not allowed (CVE-2021-3732)
+ * [x86] KVM: nSVM: avoid picking up unsupported bits from L2 in int_ctl
+ (CVE-2021-3653)
+ * [x86] KVM: nSVM: always intercept VMLOAD/VMSAVE when nested (CVE-2021-3656)
+ * bpf: Fix integer overflow involving bucket_size (CVE-2021-38166)
+ * ath: Use safer key clearing with key cache entries (CVE-2020-3702)
+ * ath9k: Clear key cache explicitly on disabling hardware (CVE-2020-3702)
+ * ath: Export ath_hw_keysetmac() (CVE-2020-3702)
+ * ath: Modify ath_key_delete() to not need full key entry (CVE-2020-3702)
+ * ath9k: Postpone key cache entry deletion for TXQ frames reference it
+ (CVE-2020-3702)
+ * btrfs: fix NULL pointer dereference when deleting device by invalid id
+ (CVE-2021-3739)
+ * net: qrtr: fix another OOB Read in qrtr_endpoint_post (CVE-2021-3743)
+ * vt_kdsetmode: extend console locking (CVE-2021-3753)
+ * ext4: fix race writing to an inline_data file while its xattrs are changing
+ (CVE-2021-40490)
+ * dccp: don't duplicate ccid when cloning dccp sock (CVE-2020-16119)
+ * io_uring: ensure symmetry in handling iter types in loop_rw_iter()
+ (CVE-2021-41073)
+ * netfilter: nftables: avoid potential overflows on 32bit arches
+ * netfilter: nf_tables: initialize set before expression setup
+ (Closes: #993978)
+ * netfilter: nftables: clone set element expression template
+ * bnx2x: Fix enabling network interfaces without VFs (Closes: #993948)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 23 Sep 2021 22:35:21 +0200
+
+linux (5.10.46-4) unstable; urgency=medium
+
+ * bpf: Introduce BPF nospec instruction for mitigating Spectre v4
+ (CVE-2021-34556, CVE-2021-35477)
+ * bpf: Fix leakage due to insufficient speculative store bypass mitigation
+ (CVE-2021-34556, CVE-2021-35477)
+ * bpf: Remove superfluous aux sanitation on subprog rejection
+ * Ignore ABI changes for bpf_offload_dev_create and bpf_verifier_log_write
+ * bpf: Add kconfig knob for disabling unpriv bpf by default
+ * init: Enable BPF_UNPRIV_DEFAULT_OFF (Closes: #990411)
+ * linux-image: Add NEWS entry documenting that unprivileged calls to bpf() are
+ disabled by default in Debian.
+ * bpf: verifier: Allocate idmap scratch in verifier env
+ * bpf: Fix pointer arithmetic mask tightening under state pruning
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Tue, 03 Aug 2021 07:50:50 +0200
+
+linux (5.10.46-3) unstable; urgency=medium
+
+ * [armhf] Add mdio-aspeed to nic-modules.
+ Thanks to Joel Stanley <joel@jms.id.au> (Closes: #991262)
+ * Revert "drm/amdgpu/gfx9: fix the doorbell missing when in CGPG issue."
+ (Closes: #990312)
+ * Revert "drm/amdgpu/gfx10: enlarge CP_MEC_DOORBELL_RANGE_UPPER to cover full
+ doorbell." (Closes: #990312)
+ * Input: joydev - prevent use of not validated data in JSIOCSBTNMAP ioctl
+ (CVE-2021-3612)
+ * sctp: validate from_addr_param return (CVE-2021-3655)
+ * sctp: add size validation when walking chunks (CVE-2021-3655)
+ * [s390x] sclp_vt220: fix console name to match device (Closes: #961056)
+ * block: return the correct bvec when checking for gaps
+ * sctp: fix return value check in __sctp_rcv_asconf_lookup
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 28 Jul 2021 07:55:40 +0200
+
+linux (5.10.46-2) unstable; urgency=medium
+
+ * swiotlb: manipulate orig_addr when tlb_addr has offset (Closes: #989778)
+ * KVM: do not allow mapping valid but non-reference-counted pages
+ (CVE-2021-22543)
+ * [x86] platform/x86: toshiba_haps: Fix missing newline in pr_debug call in
+ toshiba_haps_notify (Closes: #799193)
+ * seq_file: Disallow extremely large seq buffer allocations (CVE-2021-33909)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Tue, 20 Jul 2021 14:06:36 +0200
+
+linux (5.10.46-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.41
+ - context_tracking: Move guest exit context tracking to separate helpers
+ - context_tracking: Move guest exit vtime accounting to separate helpers
+ - [x86] KVM: Defer vtime accounting 'til after IRQ handling
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.42
+ - ALSA: hda/realtek: the bass speaker can't output sound on Yoga 9i
+ - ALSA: hda/realtek: Headphone volume is controlled by Front mixer
+ - ALSA: hda/realtek: Chain in pop reduction fixup for ThinkStation P340
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP 855 G8
+ - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook G8
+ - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 15
+ G8
+ - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Zbook Fury 17
+ G8
+ - ALSA: usb-audio: scarlett2: Fix device hang with ehci-pci
+ - ALSA: usb-audio: scarlett2: Improve driver startup messages
+ - cifs: set server->cipher_type to AES-128-CCM for SMB3.0
+ - NFSv4: Fix a NULL pointer dereference in pnfs_mark_matching_lsegs_return()
+ - iommu/vt-d: Fix sysfs leak in alloc_iommu()
+ - proc: Check /proc/$pid/attr/ writes against file opener
+ - net: hso: fix control-request directions
+ - net/sched: fq_pie: re-factor fix for fq_pie endless loop
+ - net/sched: fq_pie: fix OOB access in the traffic path
+ - netfilter: nft_set_pipapo_avx2: Add irq_fpu_usable() check, fallback to
+ non-AVX2 version
+ - mac80211: assure all fragments are encrypted (CVE-2020-26147)
+ - mac80211: prevent mixed key and fragment cache attacks (CVE-2020-24586,
+ CVE-2020-24587)
+ - mac80211: properly handle A-MSDUs that start with an RFC 1042 header
+ - cfg80211: mitigate A-MSDU aggregation attacks (CVE-2020-24588)
+ - mac80211: drop A-MSDUs on old ciphers (CVE-2020-24588)
+ - mac80211: add fragment cache to sta_info
+ - mac80211: check defrag PN against current frame
+ - mac80211: prevent attacks on TKIP/WEP as well
+ - mac80211: do not accept/forward invalid EAPOL frames (CVE-2020-26139)
+ - mac80211: extend protection against mixed key and fragment cache attacks
+ (CVE-2020-24586, CVE-2020-24587)
+ - ath10k: add CCMP PN replay protection for fragmented frames for PCIe
+ - ath10k: drop fragments with multicast DA for PCIe (CVE-2020-26145)
+ - ath10k: drop fragments with multicast DA for SDIO (CVE-2020-26145)
+ - ath10k: drop MPDU which has discard flag set by firmware for SDIO
+ (CVE-2020-24588)
+ - ath10k: Fix TKIP Michael MIC verification for PCIe (CVE-2020-26141)
+ - ath10k: Validate first subframe of A-MSDU before processing the list
+ - ath11k: Clear the fragment cache during key install (CVE-2020-24587)
+ - dm snapshot: properly fix a crash when an origin has no snapshots
+ - drm/amdgpu/vcn1: add cancel_delayed_work_sync before power gate
+ - [amd64] drm/amdkfd: correct sienna_cichlid SDMA RLC register offset error
+ - drm/amdgpu/vcn2.0: add cancel_delayed_work_sync before power gate
+ - drm/amdgpu/vcn2.5: add cancel_delayed_work_sync before power gate
+ - drm/amdgpu/jpeg2.0: add cancel_delayed_work_sync before power gate
+ - Documentation: seccomp: Fix user notification documentation
+ - seccomp: Refactor notification handler to prepare for new semantics
+ - serial: core: fix suspicious security_locked_down() call
+ - misc/uss720: fix memory leak in uss720_probe
+ - [x86] thunderbolt: usb4: Fix NVM read buffer bounds and offset issue
+ - [x86] thunderbolt: dma_port: Fix NVM read buffer bounds and offset issue
+ - [x86] KVM: Fix vCPU preempted state from guest's point of view
+ - [arm64] KVM: Prevent mixed-width VM creation
+ - [x86] mei: request autosuspend after sending rx flow control
+ - iio: gyro: fxas21002c: balance runtime power in error path
+ - iio: dac: ad5770r: Put fwnode in error case during ->probe()
+ - iio: adc: ad7768-1: Fix too small buffer passed to
+ iio_push_to_buffers_with_timestamp()
+ - iio: adc: ad7124: Fix missbalanced regulator enable / disable on error.
+ - iio: adc: ad7124: Fix potential overflow due to non sequential channel
+ numbers
+ - iio: adc: ad7923: Fix undersized rx buffer.
+ - iio: adc: ad7793: Add missing error code in ad7793_setup()
+ - iio: adc: ad7192: Avoid disabling a clock that was never enabled.
+ - iio: adc: ad7192: handle regulator voltage error first
+ - serial: 8250: Add UART_BUG_TXRACE workaround for Aspeed VUART
+ - serial: 8250_dw: Add device HID for new AMD UART controller
+ - serial: 8250_pci: Add support for new HPE serial device
+ - serial: 8250_pci: handle FL_NOIRQ board flag
+ - USB: trancevibrator: fix control-request direction
+ - Revert "irqbypass: do not start cons/prod when failed connect"
+ - USB: usbfs: Don't WARN about excessively large memory allocations
+ - drivers: base: Fix device link removal
+ - [arm64,armhf] serial: tegra: Fix a mask operation that is always true
+ - serial: rp2: use 'request_firmware' instead of 'request_firmware_nowait'
+ - USB: serial: ti_usb_3410_5052: add startech.com device id
+ - USB: serial: option: add Telit LE910-S1 compositions 0x7010, 0x7011
+ - USB: serial: ftdi_sio: add IDs for IDS GmbH Products
+ - USB: serial: pl2303: add device id for ADLINK ND-6530 GC
+ - [x86] thermal/drivers/intel: Initialize RW trip to THERMAL_TEMP_INVALID
+ - [arm64,armhf] usb: dwc3: gadget: Properly track pending and queued SG
+ - [arm64,x86] usb: typec: mux: Fix matching with typec_altmode_desc
+ - net: usb: fix memory leak in smsc75xx_bind
+ - Bluetooth: cmtp: fix file refcount when cmtp_attach_device fails
+ - fs/nfs: Use fatal_signal_pending instead of signal_pending
+ - NFS: fix an incorrect limit in filelayout_decode_layout()
+ - NFS: Fix an Oopsable condition in __nfs_pageio_add_request()
+ - NFS: Don't corrupt the value of pg_bytes_written in nfs_do_recoalesce()
+ - NFSv4: Fix v4.0/v4.1 SEEK_DATA return -ENOTSUPP when set NFS_V4_2 config
+ - [arm64] drm/meson: fix shutdown crash when component not probed
+ - net/mlx5e: reset XPS on error flow if netdev isn't registered yet
+ - net/mlx5e: Fix multipath lag activation
+ - net/mlx5e: Fix error path of updating netdev queues
+ - {net,vdpa}/mlx5: Configure interface MAC into mpfs L2 table
+ - net/mlx5e: Fix nullptr in add_vlan_push_action()
+ - net/mlx5: Set reformat action when needed for termination rules
+ - net/mlx5e: Fix null deref accessing lag dev
+ - net/mlx4: Fix EEPROM dump support
+ - net/mlx5: Set term table as an unmanaged flow table
+ - SUNRPC in case of backlog, hand free slots directly to waiting task
+ - Revert "net:tipc: Fix a double free in tipc_sk_mcast_rcv"
+ - tipc: wait and exit until all work queues are done
+ - tipc: skb_linearize the head skb when reassembling msgs
+ - [arm64] spi: spi-fsl-dspi: Fix a resource leak in an error handling path
+ - netfilter: flowtable: Remove redundant hw refresh bit
+ - [arm64,armhf] net: dsa: fix a crash if ->get_sset_count() fails
+ - [armhf] i2c: s3c2410: fix possible NULL pointer deref on read message
+ after write
+ - [x86] i2c: i801: Don't generate an interrupt on bus reset
+ - afs: Fix the nlink handling of dir-over-dir rename
+ - nvmet-tcp: fix inline data size comparison in nvmet_tcp_queue_response
+ - [x86] platform/x86: hp_accel: Avoid invoking _INI to speed up resume
+ - [arm64] Revert "crypto: cavium/nitrox - add an error message to explain
+ the failure of pci_request_mem_regions"
+ - Revert "media: usb: gspca: add a missed check for goto_low_power"
+ - [i386] Revert "ALSA: sb: fix a missing check of snd_ctl_add"
+ - Revert "net: fujitsu: fix a potential NULL pointer dereference"
+ - net: fujitsu: fix potential null-ptr-deref
+ - Revert "net/smc: fix a NULL pointer dereference"
+ - net/smc: properly handle workqueue allocation failure
+ - [x86] Revert "char: hpet: fix a missing check of ioremap"
+ - [x86] char: hpet: add checks after calling ioremap
+ - [i386] Revert "ALSA: gus: add a check of the status of snd_ctl_add"
+ - Revert "isdn: mISDNinfineon: fix potential NULL pointer dereference"
+ - isdn: mISDNinfineon: check/cleanup ioremap failure correctly in setup_io
+ - Revert "ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()"
+ - ath6kl: return error code in ath6kl_wmi_set_roam_lrssi_cmd()
+ - Revert "isdn: mISDN: Fix potential NULL pointer dereference of kzalloc"
+ - isdn: mISDN: correctly handle ph_info allocation failure in
+ hfcsusb_ph_info
+ - [arm64] Revert "dmaengine: qcom_hidma: Check for driver register failure"
+ - [arm64] dmaengine: qcom_hidma: comment platform_driver_register call
+ - Revert "libertas: add checks for the return value of sysfs_create_group"
+ - libertas: register sysfs groups properly
+ - Revert "media: dvb: Add check on sp8870_readreg"
+ - media: dvb: Add check on sp8870_readreg return
+ - Revert "media: gspca: mt9m111: Check write_bridge for timeout"
+ - media: gspca: mt9m111: Check write_bridge for timeout
+ - Revert "media: gspca: Check the return value of write_bridge for timeout"
+ - media: gspca: properly check for errors in po1030_probe()
+ - Revert "net: liquidio: fix a NULL pointer dereference"
+ - net: liquidio: Add missing null pointer checks
+ - Revert "brcmfmac: add a check for the status of usb_register"
+ - brcmfmac: properly check for bus register errors
+ - btrfs: return whole extents in fiemap
+ - [powerpc,x86] scsi: BusLogic: Fix 64-bit system enumeration error for
+ Buslogic
+ - scsi: pm80xx: Fix drives missing during rmmod/insmod loop
+ - btrfs: release path before starting transaction when cloning inline extent
+ - btrfs: do not BUG_ON in link_to_fixup_dir
+ - [x86] platform/x86: hp-wireless: add AMD's hardware id to the supported
+ list
+ - SMB3: incorrect file id in requests compounded with open
+ - drm/amd/amdgpu: fix refcount leak
+ - drm/amdgpu: Fix a use-after-free
+ - drm/amd/amdgpu: fix a potential deadlock in gpu reset
+ - drm/amdgpu: stop touching sched.ready in the backend
+ - block: fix a race between del_gendisk and BLKRRPART
+ - linux/bits.h: fix compilation error with GENMASK
+ - [arm64,armhf] net: dsa: fix error code getting shifted with 4 in
+ dsa_slave_get_sset_count
+ - net: stmmac: Fix MAC WoL not working if PHY does not support WoL
+ - spi: Assume GPIO CS active high in ACPI case
+ - net: really orphan skbs tied to closing sk
+ - net: packetmmap: fix only tx timestamp on request
+ - [arm64,armhf] net: fec: fix the potential memory leak in fec_enet_init()
+ - [arm64] net: mdio: thunder: Fix a double free issue in the .remove
+ function
+ - [mips64el,mipsel] net: mdio: octeon: Fix some double free issues
+ - cxgb4/ch_ktls: Clear resources when pf4 device is removed
+ - openvswitch: meter: fix race when getting now_ms.
+ - net: sched: fix packet stuck problem for lockless qdisc
+ - net: sched: fix tx action rescheduling issue during deactivation
+ - net: sched: fix tx action reschedule issue with stopped queue
+ - net: hso: check for allocation failure in hso_create_bulk_serial_device()
+ - net: bnx2: Fix error return code in bnx2_init_board()
+ - bnxt_en: Include new P5 HV definition in VF check.
+ - bnxt_en: Fix context memory setup for 64K page size.
+ - mld: fix panic in mld_newpack()
+ - net/smc: remove device from smcd_dev_list after failed device_add()
+ - [amd64] gve: Check TX QPL was actually assigned
+ - [amd64] gve: Update mgmt_msix_idx if num_ntfy changes
+ - [amd64] gve: Add NULL pointer checks when freeing irqs.
+ - [amd64] gve: Upgrade memory barrier in poll routine
+ - [amd64] gve: Correct SKB queue index validation.
+ - [arm64] net: hns3: fix incorrect resp_msg issue
+ - [arm64] net: hns3: put off calling register_netdev() until client
+ initialize complete
+ - [amd64] iommu/vt-d: Use user privilege for RID2PASID translation
+ - cxgb4: avoid accessing registers when clearing filters
+ - bpf, offload: Reorder offload callback 'prepare' in verifier
+ - bpf: Set mac_len in bpf_skb_change_head
+ - ixgbe: fix large MTU request from VF
+ - [arm64] ASoC: qcom: lpass-cpu: Use optional clk APIs
+ - scsi: libsas: Use _safe() loop in sas_resume_port()
+ - ipv6: record frag_max_size in atomic fragments in input path
+ - ALSA: usb-audio: scarlett2: snd_scarlett_gen2_controls_create() can be
+ static
+ - sch_dsmark: fix a NULL deref in qdisc_reset()
+ - net: zero-initialize tc skb extension on allocation
+ - [arm64,armhf] net: mvpp2: add buffer header handling in RX
+ - [x86] i915: fix build warning in intel_dp_get_link_status()
+ - [arm64] net: hns3: check the return of skb_checksum_help()
+ - bpftool: Add sock_release help info for cgroup attach/prog load command
+ - SUNRPC: More fixes for backlog congestion
+ - net: hso: bail out on interrupt URB allocation failure
+ - neighbour: Prevent Race condition in neighbour subsytem
+ - usb: core: reduce power-on-good delay time of root hub
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.43
+ - btrfs: tree-checker: do not error out if extent ref hash doesn't match
+ - net: usb: cdc_ncm: don't spew notifications (Closes: #989451)
+ - [x86] hwmon: (dell-smm-hwmon) Fix index values
+ - netfilter: conntrack: unregister ipv4 sockopts on error unwind
+ - efi/fdt: fix panic when no valid fdt found
+ - efi: Allow EFI_MEMORY_XP and EFI_MEMORY_RO both to be cleared
+ - efi/libstub: prevent read overflow in find_file_option()
+ - [arm64,x86] efi: cper: fix snprintf() use in cper_dimm_err_location()
+ - vfio/pci: Fix error return code in vfio_ecap_init()
+ - ipvs: ignore IP_VS_SVC_F_HASHED flag when adding service
+ - HID: logitech-hidpp: initialize level variable
+ - HID: pidff: fix error return code in hid_pidff_init()
+ - [arm64,x86] HID: i2c-hid: fix format string mismatch
+ - devlink: Correct VIRTUAL port to not have phys_port attributes
+ - net/sched: act_ct: Offload connections with commit action
+ - net/sched: act_ct: Fix ct template allocation for zone 0
+ - nvme-rdma: fix in-casule data send for chained sgls
+ - ACPICA: Clean up context mutex during object deletion
+ - perf probe: Fix NULL pointer dereference in convert_variable_location()
+ - net: sock: fix in-kernel mark setting
+ - net/mlx5e: Fix incompatible casting
+ - net/mlx5: Check firmware sync reset requested is set before trying to
+ abort it
+ - net/mlx5e: Check for needed capability for cvlan matching
+ - net/mlx5: DR, Create multi-destination flow table with level less than 64
+ - nvmet: fix freeing unallocated p2pmem
+ - netfilter: nft_ct: skip expectations for confirmed conntrack
+ - netfilter: nfnetlink_cthelper: hit EBUSY on updates if size mismatches
+ - bpf: Simplify cases in bpf_base_func_proto
+ - bpf, lockdown, audit: Fix buggy SELinux lockdown permission checks
+ - ieee802154: fix error return code in ieee802154_add_iface()
+ - ieee802154: fix error return code in ieee802154_llsec_getparams()
+ - igb: add correct exception tracing for XDP
+ - ixgbevf: add correct exception tracing for XDP
+ - cxgb4: fix regression with HASH tc prio value update
+ - ipv6: Fix KASAN: slab-out-of-bounds Read in fib6_nh_flush_exceptions
+ - ice: Fix allowing VF to request more/less queues via virtchnl
+ - ice: Fix VFR issues for AVF drivers that expect ATQLEN cleared
+ - ice: handle the VF VSI rebuild failure
+ - ice: report supported and advertised autoneg using PHY capabilities
+ - ice: Allow all LLDP packets from PF to Tx
+ - cxgb4: avoid link re-train during TC-MQPRIO configuration
+ - i40e: optimize for XDP_REDIRECT in xsk path
+ - i40e: add correct exception tracing for XDP
+ - ice: simplify ice_run_xdp
+ - ice: optimize for XDP_REDIRECT in xsk path
+ - ice: add correct exception tracing for XDP
+ - ixgbe: optimize for XDP_REDIRECT in xsk path
+ - ixgbe: add correct exception tracing for XDP
+ - [arm64] optee: use export_uuid() to copy client UUID
+ - [armhf] bus: ti-sysc: Fix am335x resume hang for usb otg module
+ - [arm64] dts: freescale: sl28: var4: fix RGMII clock and voltage
+ - [armhf] bus: ti-sysc: Fix flakey idling of uarts and stop using
+ swsup_sidle_act
+ - tipc: add extack messages for bearer/media failure
+ - tipc: fix unique bearer names sanity check
+ - [armhf] serial: stm32: fix threaded interrupt handling
+ - io_uring: fix link timeout refs
+ - io_uring: use better types for cflags
+ - drm/amdgpu/vcn3: add cancel_delayed_work_sync before power gate
+ - drm/amdgpu/jpeg2.5: add cancel_delayed_work_sync before power gate
+ - drm/amdgpu/jpeg3: add cancel_delayed_work_sync before power gate
+ - Bluetooth: fix the erroneous flush_work() order (CVE-2021-3564)
+ - Bluetooth: use correct lock to prevent UAF of hdev object (CVE-2021-3573)
+ - wireguard: do not use -O3
+ - wireguard: peer: allocate in kmem_cache
+ - wireguard: use synchronize_net rather than synchronize_rcu
+ - wireguard: allowedips: initialize list head in selftest
+ - wireguard: allowedips: remove nodes in O(1)
+ - wireguard: allowedips: allocate nodes in kmem_cache
+ - wireguard: allowedips: free empty intermediate nodes when removing single
+ node
+ - [arm64,x86] HID: i2c-hid: Skip ELAN power-on command after reset
+ - HID: magicmouse: fix NULL-deref on disconnect
+ - HID: multitouch: require Finger field to mark Win8 reports as MT
+ - gfs2: fix scheduling while atomic bug in glocks
+ - ALSA: timer: Fix master timer notification
+ - ALSA: hda: Fix for mute key LED for HP Pavilion 15-CK0xx
+ - ALSA: hda: update the power_state during the direct-complete
+ - ext4: fix memory leak in ext4_fill_super
+ - ext4: fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed
+ - ext4: fix fast commit alignment issues
+ - ext4: fix memory leak in ext4_mb_init_backend on error path.
+ - ext4: fix accessing uninit percpu counter variable with fast_commit
+ - [arm*] usb: dwc2: Fix build in periphal-only mode
+ - pid: take a reference when initializing `cad_pid`
+ - ocfs2: fix data corruption by fallocate
+ - mm/page_alloc: fix counting of free pages after take off from buddy
+ - [x86] cpufeatures: Force disable X86_FEATURE_ENQCMD and remove
+ update_pasid()
+ - nfc: fix NULL ptr dereference in llcp_sock_getname() after failed connect
+ (CVE-2021-3587)
+ - drm/amdgpu: Don't query CE and UE errors
+ - drm/amdgpu: make sure we unpin the UVD BO
+ - [x86] apic: Mark _all_ legacy interrupts when IO/APIC is missing
+ - [powerpc] kprobes: Fix validation of prefixed instructions across page
+ boundary
+ - btrfs: mark ordered extent and inode with error if we fail to finish
+ - btrfs: fix error handling in btrfs_del_csums
+ - btrfs: return errors from btrfs_del_csums in cleanup_ref_head
+ - btrfs: fixup error handling in fixup_inode_link_counts
+ - btrfs: abort in rename_exchange if we fail to insert the second ref
+ - btrfs: fix deadlock when cloning inline extents and low on available space
+ - mm, hugetlb: fix simple resv_huge_pages underflow on UFFDIO_COPY
+ - [arm64] drm/msm/dpu: always use mdp device to scale bandwidth
+ - btrfs: fix unmountable seed device after fstrim
+ - [x86] KVM: SVM: Truncate GPR value for DR and CR accesses in !64-bit mode
+ - [arm64] KVM: Fix debug register indexing
+ - [x86] kvm: Teardown PV features on boot CPU as well
+ - [x86] kvm: Disable kvmclock on all CPUs on shutdown
+ - [x86] kvm: Disable all PV features on crash
+ - lib/lz4: explicitly support in-place decompression
+ - netfilter: nf_tables: missing error reporting for not selected expressions
+ - xen-netback: take a reference to the RX task thread (CVE-2021-28691)
+ - neighbour: allow NUD_NOARP entries to be forced GCed
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.44
+ - proc: Track /proc/$pid/attr/ opener mm_struct
+ - [amd64] ASoC: amd: fix for pcm_read() error
+ - spi: Fix spi device unregister flow
+ - bpf: Forbid trampoline attach for functions with variable arguments
+ - net/nfc/rawsock.c: fix a permission check bug
+ - [x86] ASoC: Intel: bytcr_rt5640: Add quirk for the Glavey TM800A550L
+ tablet
+ - [x86] ASoC: Intel: bytcr_rt5640: Add quirk for the Lenovo Miix 3-830
+ tablet
+ - [arm64,armhf] usb: chipidea: udc: assign interrupt number to USB gadget
+ structure
+ - bonding: init notify_work earlier to avoid uninitialized use
+ - netlink: disable IRQs for netlink_lock_table()
+ - net: mdiobus: get rid of a BUG_ON()
+ - cgroup: disable controllers at parse time
+ - wq: handle VM suspension in stall detection
+ - net/qla3xxx: fix schedule while atomic in ql_sem_spinlock
+ - RDS tcp loopback connection can hang
+ - net:sfc: fix non-freed irq in legacy irq mode
+ - scsi: bnx2fc: Return failure if io_req is already in ABTS processing
+ - [x86] scsi: vmw_pvscsi: Set correct residual data length
+ - [arm64] scsi: hisi_sas: Drop free_irq() of devm_request_irq() allocated
+ irq
+ - scsi: target: qla2xxx: Wait for stop_phase1 at WWN removal
+ - net: macb: ensure the device is available before accessing GEMGXL control
+ registers
+ - nvme-fabrics: decode host pathing error for connect
+ - dm verity: fix require_signatures module_param permissions
+ - bnx2x: Fix missing error code in bnx2x_iov_init_one()
+ - nvmet: fix false keep-alive timeout when a controller is torn down
+ - spi: Don't have controller clean up spi device before driver unbind
+ - spi: Cleanup on failure of initial setup
+ - [powerpc] i2c: mpc: Make use of i2c_recover_bus()
+ - [powerpc] i2c: mpc: implement erratum A-004447 workaround
+ - ALSA: seq: Fix race of snd_seq_timer_open()
+ - ALSA: firewire-lib: fix the context to call snd_pcm_stop_xrun()
+ - ALSA: hda/realtek: headphone and mic don't work on an Acer laptop
+ - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP Elite
+ Dragonfly G2
+ - ALSA: hda/realtek: fix mute/micmute LEDs and speaker for HP EliteBook x360
+ 1040 G8
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP EliteBook 840 Aero G8
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP ZBook Power G8
+ - [arm*] spi: bcm2835: Fix out-of-bounds access with more than 4 slaves
+ - Revert "ACPI: sleep: Put the FACS table after using it"
+ - drm: Fix use-after-free read in drm_getunique()
+ - drm: Lock pointer access in drm_master_release()
+ - [x86] perf/x86/intel/uncore: Fix M2M event umask for Ice Lake server
+ - [x86] KVM: X86: MMU: Use the correct inherited permissions to get shadow
+ page
+ - kvm: avoid speculation-based attacks from out-of-range memslot accesses
+ - [arm64,x86] staging: rtl8723bs: Fix uninitialized variables
+ - async_xor: check src_offs is not NULL before updating it
+ - btrfs: return value from btrfs_mark_extent_written() in case of error
+ - btrfs: promote debugging asserts to full-fledged checks in validate_super
+ - cgroup1: don't allow '\n' in renaming
+ - ftrace: Do not blindly read the ip address in ftrace_bug()
+ - USB: f_ncm: ncm_bitrate (speed) is unsigned
+ - usb: f_ncm: only first packet of aggregate needs to start timer
+ - usb: pd: Set PD_T_SINK_WAIT_CAP to 310ms
+ - [arm64,armhf] usb: dwc3-meson-g12a: fix usb2 PHY glue init when phy0 is
+ disabled
+ - [arm64,armhf] usb: dwc3: meson-g12a: Disable the regulator in the error
+ handling path of the probe
+ - [arm64,armhf] usb: dwc3: gadget: Bail from dwc3_gadget_exit() if
+ dwc->gadget is NULL
+ - [arm64,armhf] usb: dwc3: ep0: fix NULL pointer exception
+ - [arm64,armhf] usb: musb: fix MUSB_QUIRK_B_DISCONNECT_99 handling
+ - usb: typec: ucsi: Clear PPM capability data in ucsi_init() error path
+ - usb: gadget: f_fs: Ensure io_completion_wq is idle during unbind
+ - USB: serial: ftdi_sio: add NovaTech OrionMX product ID
+ - USB: serial: omninet: add device id for Zyxel Omni 56K Plus
+ - USB: serial: quatech2: fix control-request directions
+ - USB: serial: cp210x: fix alternate function for CP2102N QFN20
+ - usb: gadget: eem: fix wrong eem header operation
+ - usb: fix various gadgets null ptr deref on 10gbps cabling.
+ - usb: fix various gadget panics on 10gbps cabling
+ - usb: typec: tcpm: cancel vdm and state machine hrtimer when unregister
+ tcpm port
+ - usb: typec: tcpm: cancel frs hrtimer when unregister tcpm port
+ - regulator: core: resolve supply for boot-on/always-on regulators
+ - [arm64] regulator: max77620: Use device_set_of_node_from_dev()
+ - regulator: bd71828: Fix .n_voltages settings
+ - [arm64,armhf] usb: dwc3: gadget: Disable gadget IRQ during pullup disable
+ - usb: typec: mux: Fix copy-paste mistake in typec_mux_match
+ - [arm64] drm/msm/a6xx: fix incorrectly set uavflagprd_inv field for A650
+ - [arm64] drm/msm/a6xx: update/fix CP_PROTECT initialization
+ - [arm64] drm/msm/a6xx: avoid shadow NULL reference in failure path
+ - RDMA/ipoib: Fix warning caused by destroying non-initial netns
+ - RDMA/mlx4: Do not map the core_clock page to user space unless enabled
+ - ASoC: core: Fix Null-point-dereference in fmt_single_name()
+ - perf: Fix data race between pin_count increment/decrement
+ - sched/fair: Keep load_avg and load_sum synced
+ - sched/fair: Make sure to update tg contrib for blocked load
+ - sched/fair: Fix util_est UTIL_AVG_UNCHANGED handling
+ - [x86] nmi_watchdog: Fix old-style NMI watchdog regression on old Intel
+ CPUs
+ - [x86] KVM: x86: Ensure liveliness of nested VM-Enter fail tracepoint
+ message
+ - IB/mlx5: Fix initializing CQ fragments buffer
+ - NFS: Fix a potential NULL dereference in nfs_get_client()
+ - NFSv4: Fix deadlock between nfs4_evict_inode() and
+ nfs4_opendata_get_inode()
+ - kvm: fix previous commit for 32-bit builds
+ - NFS: Fix use-after-free in nfs4_init_client()
+ - NFSv4: Fix second deadlock in nfs4_evict_inode()
+ - NFSv4: nfs4_proc_set_acl needs to restore NFS_CAP_UIDGID_NOMAP on error.
+ - scsi: core: Fix error handling of scsi_host_alloc()
+ - scsi: core: Fix failure handling of scsi_add_host_with_dma()
+ - scsi: core: Put .shost_dev in failure path if host state changes to
+ RUNNING
+ - scsi: core: Only put parent device if host state differs from
+ SHOST_CREATED
+ - tracing: Correct the length check which causes memory corruption
+ - proc: only require mm_struct for writing
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.45
+ - net: ieee802154: fix null deref in parse dev addr
+ - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for Saitek X65
+ - HID: a4tech: use A4_2WHEEL_MOUSE_HACK_B8 for A4TECH NB-95
+ - HID: hid-input: add mapping for emoji picker key
+ - HID: hid-sensor-hub: Return error for hid_set_field() failure
+ - HID: quirks: Add quirk for Lenovo optical mouse
+ - HID: multitouch: set Stylus suffix for Stylus-application devices, too
+ - HID: Add BUS_VIRTUAL to hid_connect logging
+ - HID: usbhid: fix info leak in hid_submit_ctrl
+ - [arm64,armhf] drm/tegra: sor: Do not leak runtime PM reference
+ - [arm64,armhf] gpu: host1x: Split up client initalization and registration
+ - [arm64,armhf] drm/tegra: sor: Fully initialize SOR before registration
+ - gfs2: Prevent direct-I/O write fallback errors from getting lost
+ - gfs2: fix a deadlock on withdraw-during-mount
+ - HID: gt683r: add missing MODULE_DEVICE_TABLE
+ - gfs2: Fix use-after-free in gfs2_glock_shrink_scan
+ - scsi: target: core: Fix warning on realtime kernels
+ - ethernet: myri10ge: Fix missing error code in myri10ge_probe()
+ - scsi: qedf: Do not put host in qedf_vport_create() unconditionally
+ - Bluetooth: Add a new USB ID for RTL8822CE
+ - scsi: scsi_devinfo: Add blacklist entry for HPE OPEN-V
+ - net: ipconfig: Don't override command-line hostnames or domains
+ - drm/amd/display: Allow bandwidth validation for 0 streams.
+ - drm/amdgpu: refine amdgpu_fru_get_product_info
+ - drm/amd/display: Fix potential memory leak in DMUB hw_init
+ - drm/amd/amdgpu:save psp ring wptr to avoid attack
+ - rtnetlink: Fix missing error code in rtnl_bridge_notify()
+ - net: Return the correct errno code
+ - fib: Return the correct errno code
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.46
+ - afs: Fix an IS_ERR() vs NULL check
+ - mm/memory-failure: make sure wait for page writeback in memory_failure
+ - [x86] kvm: LAPIC: Restore guard to prevent illegal APIC register access
+ - fanotify: fix copy_event_to_user() fid error clean up
+ - batman-adv: Avoid WARN_ON timing related checks
+ - mac80211: fix skb length check in ieee80211_scan_rx()
+ - net: ipv4: fix memory leak in netlbl_cipsov4_add_std
+ - vrf: fix maximum MTU
+ - net: rds: fix memory leak in rds_recvmsg
+ - [arm64] net: dsa: felix: re-enable TX flow control in ocelot_port_flush()
+ - netfilter: nft_fib_ipv6: skip ipv6 packets from any to link-local
+ - ice: add ndo_bpf callback for safe mode netdev ops
+ - ice: parameterize functions responsible for Tx ring management
+ - udp: fix race between close() and udp_abort()
+ - rtnetlink: Fix regression in bridge VLAN configuration
+ - net/sched: act_ct: handle DNAT tuple collision
+ - net/mlx5e: Fix page reclaim for dead peer hairpin
+ - net/mlx5: Consider RoCE cap before init RDMA resources
+ - net/mlx5: DR, Allow SW steering for sw_owner_v2 devices
+ - net/mlx5: DR, Don't use SW steering when RoCE is not supported
+ - net/mlx5e: Block offload of outer header csum for UDP tunnels
+ - netfilter: synproxy: Fix out of bounds when parsing TCP options
+ - sch_cake: Fix out of bounds when parsing TCP options and header
+ - alx: Fix an error handling path in 'alx_probe()'
+ - cxgb4: fix endianness when flashing boot image
+ - cxgb4: fix sleep in atomic when flashing PHY firmware
+ - cxgb4: halt chip before flashing PHY firmware image
+ - net: make get_net_ns return error if NET_NS is disabled
+ - ethtool: strset: fix message length calculation
+ - qlcnic: Fix an error handling path in 'qlcnic_probe()'
+ - netxen_nic: Fix an error handling path in 'netxen_nic_probe()'
+ - cxgb4: fix wrong ethtool n-tuple rule lookup
+ - ipv4: Fix device used for dst_alloc with local routes
+ - net: qrtr: fix OOB Read in qrtr_endpoint_post
+ - bpf: Fix leakage under speculation on mispredicted branches
+ (CVE-2021-33624)
+ - ptp: improve max_adj check against unreasonable values
+ - net: cdc_ncm: switch to eth%d interface naming
+ - net: usb: fix possible use-after-free in smsc75xx_bind
+ - [arm64,armhf] net: fec_ptp: fix issue caused by refactor the fec_devtype
+ - net: ipv4: fix memory leak in ip_mc_add1_src
+ - net/af_unix: fix a data-race in unix_dgram_sendmsg / unix_release_sock
+ - net/mlx5: E-Switch, Read PF mac address
+ - net/mlx5: E-Switch, Allow setting GUID for host PF vport
+ - net/mlx5: Reset mkey index on creation
+ - be2net: Fix an error handling path in 'be_probe()'
+ - net: hamradio: fix memory leak in mkiss_close
+ - net: cdc_eem: fix tx fixup skb leak
+ - cxgb4: fix wrong shift.
+ - bnxt_en: Rediscover PHY capabilities after firmware reset
+ - bnxt_en: Fix TQM fastpath ring backing store computation
+ - bnxt_en: Call bnxt_ethtool_free() in bnxt_init_one() error path
+ - icmp: don't send out ICMP messages with a source address of 0.0.0.0
+ - [x86] platform/x86: thinkpad_acpi: Add X1 Carbon Gen 9 second fan support
+ - sched/pelt: Ensure that *_sum is always synced with *_avg
+ - [armhf] spi: stm32-qspi: Always wait BUSY bit to be cleared in
+ stm32_qspi_wait_cmd()
+ - ASoC: rt5682: Fix the fast discharge for headset unplugging in soundwire
+ mode
+ - [arm64,armhf] drm/sun4i: dw-hdmi: Make HDMI PHY into a platform device
+ - [arm64] ASoC: qcom: lpass-cpu: Fix pop noise during audio capture begin
+ - radeon: use memcpy_to/fromio for UVD fw upload
+ - mm: relocate 'write_protect_seq' in struct mm_struct
+ - [arm64,armhf] irqchip/gic-v3: Workaround inconsistent PMR setting on NMI
+ entry
+ - bpf: Inherit expanded/patched seen count from old aux data
+ (CVE-2021-33624)
+ - bpf: Do not mark insn as seen under speculative path verification
+ (CVE-2021-33624)
+ - can: bcm: fix infoleak in struct bcm_msg_head (CVE-2021-34693)
+ - can: bcm/raw/isotp: use per module netdevice notifier
+ - can: j1939: fix Use-after-Free, hold skb ref while in use
+ - can: mcba_usb: fix memory leak in mcba_usb
+ - usb: core: hub: Disable autosuspend for Cypress CY7C65632
+ - [arm64,armhf] usb: chipidea: imx: Fix Battery Charger 1.2 CDP detection
+ - tracing: Do not stop recording cmdlines when tracing is off
+ - tracing: Do not stop recording comms if the trace file is being read
+ - tracing: Do no increment trace_clock_global() by one
+ - PCI: Mark TI C667X to avoid bus reset
+ - PCI: Mark some NVIDIA GPUs to avoid bus reset
+ - [arm64] PCI: aardvark: Fix kernel panic during PIO transfer
+ - PCI: Add ACS quirk for Broadcom BCM57414 NIC
+ - PCI: Work around Huawei Intelligent NIC VF FLR erratum
+ - [x86] KVM: x86: Immediately reset the MMU context when the SMM flag is
+ cleared
+ - [x86] KVM: x86/mmu: Calculate and check "full" mmu_role for nested MMU
+ - [x86] KVM: X86: Fix x86_emulator slab cache leak
+ - [s390x] mcck: fix calculation of SIE critical section size
+ - [s390x] ap: Fix hanging ioctl caused by wrong msg counter
+ - [amd64] x86/mm: Avoid truncating memblocks for SGX memory
+ - [x86] process: Check PF_KTHREAD and not current->mm for kernel threads
+ - [x86] ioremap: Map EFI-reserved memory as encrypted for SEV
+ - [x86] pkru: Write hardware init value to PKRU when xstate is init
+ - [x86] fpu: Prevent state corruption in __fpu__restore_sig()
+ - [x86] fpu: Invalidate FPU state after a failed XRSTOR from a user buffer
+ - [x86] fpu: Reset state for all signal restore failures
+ - crash_core, vmcoreinfo: append 'SECTION_SIZE_BITS' to vmcoreinfo
+ - [arm64,armhf] dmaengine: pl330: fix wrong usage of spinlock flags in
+ dma_cyclc
+ - mac80211: Fix NULL ptr deref for injected rate info
+ - cfg80211: avoid double free of PMSR request
+ - drm/amdgpu/gfx10: enlarge CP_MEC_DOORBELL_RANGE_UPPER to cover full
+ doorbell.
+ - drm/amdgpu/gfx9: fix the doorbell missing when in CGPG issue.
+ - net: ll_temac: Fix TX BD buffer overwrite
+ - net: bridge: fix vlan tunnel dst null pointer dereference
+ - net: bridge: fix vlan tunnel dst refcnt when egressing
+ - mm/swap: fix pte_same_as_swp() not removing uffd-wp bit when compare
+ - mm/slub: clarify verification reporting
+ - mm/slub: fix redzoning for small allocations
+ - mm/slub: actually fix freelist pointer vs redzoning
+ - mm/slub.c: include swab.h
+ - net: stmmac: disable clocks in stmmac_remove_config_dt()
+ - [arm64,armhf] net: fec_ptp: add clock rate zero check
+ - [arm64,armhf] usb: dwc3: debugfs: Add and remove endpoint dirs dynamically
+ - [arm64,armhf] usb: dwc3: core: fix kernel panic when do reboot
+
+ [ Josua Mayer ]
+ * [armhf] drivers/bluetooth: Enable BT_HCIUART as a module, with support
+ for all features already enabled in the generic config. (Closes: #987361)
+ * [armhf] enable i.MX6 MIPI-CSI video capture device. (Closes: #987365)
+ - drivers/mux: Enable MUX_MMIO as a module.
+ - drivers/media/platform: Enable VIDEO_MUX as a module.
+ - drivers/staging/media/imx: Enable VIDEO_IMX_MEDIA and VIDEO_IMX_CSI as
+ modules.
+
+ [ Uwe Kleine-König ]
+ * [arm64] Update device tree for Kobol's helios64 from next
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Refresh "net/Qdisc: use a seqlock instead seqcount"
+ * Ignore some ABI changes that should not affect OOT modules
+ * Bump ABI to 8
+ * [rt] Refresh "tracing: Merge irqflags + preempt counter"
+ * can: bcm: delay release of struct bcm_op after synchronize_rcu()
+ (CVE-2021-3609)
+ * Revert "PCI: PM: Do not read power state in pci_enable_device_flags()"
+ (Closes: #990008)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Add pwm-rockchip to fb-modules udeb.
+ * [arm64] Add fusb302, tcpm and typec to usb-modules udeb.
+ * [armhf] Add gpio-mxc to kernel-image udeb. Thanks to Rick Thomas.
+ (Closes: #982270)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 24 Jun 2021 14:11:37 +0200
+
+linux (5.10.40-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.39
+ - [x86] msr: Fix wr/rdmsr_safe_regs_on_cpu() prototypes
+ - [x86] drm/i915/display: fix compiler warning about array overrun
+ - airo: work around stack usage warning
+ - usb: sl811-hcd: improve misleading indentation
+ - cxgb4: Fix the -Wmisleading-indentation warning
+ - isdn: capi: fix mismatched prototypes
+ - virtio_net: Do not pull payload in skb->head
+ - [armel,armhf] 9066/1: ftrace: pause/unpause function graph tracer in
+ cpu_suspend()
+ - [arm64,x86] ACPI / hotplug / PCI: Fix reference count leak in
+ enable_slot()
+ - [arm64] Input: elants_i2c - do not bind to i2c-hid compatible ACPI
+ instantiated devices
+ - NFS: NFS_INO_REVAL_PAGECACHE should mark the change attribute invalid
+ - [armel,armhf] 9075/1: kernel: Fix interrupted SMC calls
+ - [arm64] platform/chrome: cros_ec_typec: Add DP mode check
+ - scsi: lpfc: Fix illegal memory access on Abort IOCBs
+ - ceph: fix fscache invalidation
+ - ceph: don't clobber i_snap_caps on non-I_NEW inode
+ - ceph: don't allow access to MDS-private inodes
+ - scsi: target: tcmu: Return from tcmu_handle_completions() if cmd_id not
+ found
+ - bridge: Fix possible races between assigning rx_handler_data and setting
+ IFF_BRIDGE_PORT bit
+ - nvmet: remove unsupported command noise
+ - drm/amd/display: Fix two cursor duplication when using overlay
+ - [arm64,x86] gpiolib: acpi: Add quirk to ignore EC wakeups on Dell Venue 10
+ Pro 5055
+ - net:CXGB4: fix leak if sk_buff is not used
+ - ALSA: hda: generic: change the DAC ctl name for LO+SPK or LO+HP
+ - block: reexpand iov_iter after read/write
+ - net: stmmac: Do not enable RX FIFO overflow interrupts
+ - ip6_gre: proper dev_{hold|put} in ndo_[un]init methods
+ - sit: proper dev_{hold|put} in ndo_[un]init methods
+ - ip6_tunnel: sit: proper dev_{hold|put} in ndo_[un]init methods
+ - ipv6: remove extra dev_hold() for fallback tunnels
+ - tweewide: Fix most Shebang lines
+ - scripts: switch explicitly to Python 3
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.40
+ - RDMA/core: Prevent divide-by-zero error triggered by the user
+ - RDMA/rxe: Clear all QP fields if creation failed
+ - scsi: ufs: core: Increase the usable queue depth
+ - scsi: qedf: Add pointer checks in qedf_update_link_speed()
+ - scsi: qla2xxx: Fix error return code in qla82xx_write_flash_dword()
+ - RDMA/mlx5: Recover from fatal event in dual port mode
+ - RDMA/core: Don't access cm_id after its destruction
+ - nvmet: remove unused ctrl->cqs
+ - nvmet: fix memory leak in nvmet_alloc_ctrl()
+ - nvme-tcp: rerun io_work if req_list is not empty
+ - nvme-fc: clear q_live at beginning of association teardown
+ - [x86] platform/x86: intel_int0002_vgpio: Only call enable_irq_wake() when
+ using s2idle
+ - [x86] platform/x86: dell-smbios-wmi: Fix oops on rmmod dell_smbios
+ - RDMA/mlx5: Fix query DCT via DEVX
+ - RDMA/uverbs: Fix a NULL vs IS_ERR() bug
+ - [powerpc*] pseries: Fix hcall tracing recursion in pv queued spinlocks
+ - ptrace: make ptrace() fail if the tracee changed its pid unexpectedly
+ - nvmet: seset ns->file when open fails
+ - [x86] perf/x86: Avoid touching LBR_TOS MSR for Arch LBR
+ - locking/lockdep: Correct calling tracepoints
+ - locking/mutex: clear MUTEX_FLAGS if wait_list is empty due to signal
+ - [powerpc*] Fix early setup to make early_ioremap() work
+ - btrfs: avoid RCU stalls while running delayed iputs
+ - cifs: fix memory leak in smb2_copychunk_range
+ - misc: eeprom: at24: check suspend status before disable regulator
+ - ALSA: dice: fix stream format for TC Electronic Konnekt Live at high
+ sampling transfer frequency
+ - ALSA: intel8x0: Don't update period unless prepared
+ - ALSA: firewire-lib: fix amdtp_packet tracepoints event for packet_index
+ field
+ - ALSA: line6: Fix racy initialization of LINE6 MIDI
+ - ALSA: dice: fix stream format at middle sampling rate for Alesis iO 26
+ - ALSA: firewire-lib: fix calculation for size of IR context payload
+ - ALSA: usb-audio: Validate MS endpoint descriptors
+ - ALSA: bebob/oxfw: fix Kconfig entry for Mackie d.2 Pro
+ - ALSA: hda: fixup headset for ASUS GU502 laptop
+ - Revert "ALSA: sb8: add a check for request_region"
+ - ALSA: firewire-lib: fix check for the size of isochronous packet payload
+ - ALSA: hda/realtek: reset eapd coeff to default value for alc287
+ - ALSA: hda/realtek: Add some CLOVE SSIDs of ALC293
+ - ALSA: hda/realtek: Fix silent headphone output on ASUS UX430UA
+ - ALSA: hda/realtek: Add fixup for HP OMEN laptop
+ - ALSA: hda/realtek: Add fixup for HP Spectre x360 15-df0xxx
+ - [x86] uio_hv_generic: Fix a memory leak in error handling paths
+ - [arm64] Revert "serial: mvebu-uart: Fix to avoid a potential NULL pointer
+ dereference"
+ - nvme-tcp: fix possible use-after-completion
+ - drm/amdgpu: Fix GPU TLB update error when PAGE_SIZE > AMDGPU_PAGE_SIZE
+ - drm/amdgpu: disable 3DCGCG on picasso/raven1 to avoid compute hang
+ - drm/amdgpu: update gc golden setting for Navi12
+ - drm/amdgpu: update sdma golden setting for Navi12
+ - [powerpc*] 64s/syscall: Use pt_regs.trap to distinguish syscall ABI
+ difference between sc and scv syscalls
+ - [powerpc*] 64s/syscall: Fix ptrace syscall info with scv syscalls
+ - mmc: sdhci-pci-gli: increase 1.8V regulator wait
+ - [x86] xen-pciback: redo VF placement in the virtual topology
+ - [x86] xen-pciback: reconfigure also from backend watch handler
+ - ipc/mqueue, msg, sem: avoid relying on a stack reference past its expiry
+ - dm snapshot: fix crash with transient storage and zero chunk size
+ - Revert "video: hgafb: fix potential NULL pointer dereference"
+ - [arm64,armhf] Revert "net: stmicro: fix a missing check of clk_prepare"
+ - Revert "hwmon: (lm80) fix a missing check of bus read in lm80 probe"
+ - Revert "ecryptfs: replace BUG_ON with error handling code"
+ - Revert "rtlwifi: fix a potential NULL pointer dereference"
+ - Revert "qlcnic: Avoid potential NULL pointer dereference"
+ - Revert "niu: fix missing checks of niu_pci_eeprom_read"
+ - ethernet: sun: niu: fix missing checks of niu_pci_eeprom_read()
+ - [arm64,armhf] net: stmicro: handle clk_prepare() failure during init
+ - net: rtlwifi: properly check for alloc_workqueue() failure
+ - ics932s401: fix broken handling of errors when word reading fails
+ - qlcnic: Add null check after calling netdev_alloc_skb
+ - [x86] video: hgafb: fix potential NULL pointer dereference
+ - vgacon: Record video mode changes with VT_RESIZEX
+ - vt_ioctl: Revert VT_RESIZEX parameter handling removal
+ - vt: Fix character height handling with VT_RESIZEX
+ - tty: vt: always invoke vc->vc_sw->con_resize callback
+ - [x86] drm/i915/gt: Disable HiZ Raw Stall Optimization on broken gen7
+ - [amd64] x86/Xen: swap NX determination and GDT setup on BSP
+ - nvme-multipath: fix double initialization of ANA state
+ - [arm64] rtc: pcf85063: fallback to parent of_node
+ - nvmet: use new ana_log_size instead the old one
+ - [x86] video: hgafb: correctly handle card detect failure during probe
+ - Bluetooth: SMP: Fail if remote and local public keys are identical
+
+ [ Salvatore Bonaccorso ]
+ * bpf: Wrap aux data inside bpf_sanitize_info container (CVE-2021-33200)
+ * bpf: Fix mask direction swap upon off reg sign change (CVE-2021-33200)
+ * bpf: No need to simulate speculative domain for immediates (CVE-2021-33200)
+ * [armhf] dts: sun8i: h3: orangepi-plus: Fix ethernet phy-mode
+ (Closes: #988574)
+ * [rt] Refresh "ptrace: fix ptrace vs tasklist_lock race"
+ * Deal with vc_data ABI changes in 5.10.40
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 28 May 2021 10:31:38 +0200
+
+linux (5.10.38-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.29
+ - [armhf] bus: ti-sysc: Fix warning on unbind if reset is not deasserted
+ - [x86] platform/x86: intel-hid: Support Lenovo ThinkPad X1 Tablet Gen 2
+ - [amd64] bpf, x86: Use kvmalloc_array instead kmalloc_array in bpf_jit_comp
+ - net/mlx5e: Enforce minimum value check for ICOSQ size
+ - mISDN: fix crash in fritzpci
+ - mac80211: Check crypto_aead_encrypt for errors
+ - mac80211: choose first enabled channel for monitor
+ - [arm64] drm/msm/dsi_pll_7nm: Fix variable usage for pll_lockdet_rate
+ - [arm64] drm/msm/adreno: a5xx_power: Don't apply A540 lm_setup to other
+ GPUs
+ - [arm64] drm/msm: Ratelimit invalid-fence message
+ - netfilter: conntrack: Fix gre tunneling over ipv6
+ - netfilter: nftables: skip hook overlap logic if flowtable is stale
+ - [x86] platform/x86: thinkpad_acpi: Allow the FnLock LED to change state
+ - [arm64] drm/msm/disp/dpu1: icc path needs to be set before dpu runtime
+ resume
+ - block: clear GD_NEED_PART_SCAN later in bdev_disk_changed
+ - [x86] platform/x86: intel_pmc_core: Ignore GBE LTR on Tiger Lake platforms
+ - [arm64] ptp_qoriq: fix overflow in ptp_qoriq_adjfine() u64 calcalation
+ - scsi: target: pscsi: Clean up after failure in pscsi_map_sg()
+ - [ia64] mca: allocate early mca with GFP_ATOMIC
+ - [ia64] fix format strings for err_inject
+ - cifs: revalidate mapping when we open files for SMB1 POSIX
+ - cifs: Silently ignore unknown oplock break handle
+ - io_uring: fix timeout cancel return code
+ - math: Export mul_u64_u64_div_u64
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.30
+ - ALSA: aloop: Fix initialization of controls
+ - ALSA: hda/realtek: Fix speaker amp setup on Acer Aspire E1
+ - ALSA: hda/conexant: Apply quirk for another HP ZBook G5 model
+ - [x86] ASoC: intel: atom: Stop advertising non working S24LE support
+ - nfc: fix refcount leak in llcp_sock_bind() (CVE-2020-25670)
+ - nfc: fix refcount leak in llcp_sock_connect() (CVE-2020-25671)
+ - nfc: fix memory leak in llcp_sock_connect() (CVE-2020-25672)
+ - nfc: Avoid endless loops caused by repeated llcp_sock_connect()
+ - selinux: make nslot handling in avtab more robust
+ - selinux: fix cond_list corruption when changing booleans
+ - selinux: fix race between old and new sidtab
+ - xen/evtchn: Change irq_info lock to raw_spinlock_t
+ - net: ipv6: check for validity before dereferencing cfg->fc_nlinfo.nlh
+ - [x86] drm/i915: Fix invalid access to ACPI _DSM objects
+ - [amd64] IB/hfi1: Fix probe time panic when AIP is enabled with a buggy
+ BIOS
+ - LOOKUP_MOUNTPOINT: we are cleaning "jumped" flag too late
+ - [ia64] fix user_stack_pointer() for ptrace()
+ - ocfs2: fix deadlock between setattr and dio_end_io_write
+ - fs: direct-io: fix missing sdio->boundary
+ - ethtool: fix incorrect datatype in set_eee ops
+ - of: property: fw_devlink: do not link ".*,nr-gpios"
+ - [armhf] dts: turris-omnia: configure LED[2]/INTn pin as interrupt pin
+ - batman-adv: initialize "struct batadv_tvlv_tt_vlan_data"->reserved field
+ - ice: Continue probe on link/PHY errors
+ - ice: Increase control queue timeout
+ - ice: prevent ice_open and ice_stop during reset
+ - ice: fix memory allocation call
+ - ice: remove DCBNL_DEVRESET bit from PF state
+ - ice: Fix for dereference of NULL pointer
+ - ice: Use port number instead of PF ID for WoL
+ - ice: Cleanup fltr list in case of allocation issues
+ - iwlwifi: pcie: properly set LTR workarounds on 22000 devices
+ - ice: fix memory leak of aRFS after resuming from suspend
+ - net: hso: fix null-ptr-deref during tty device unregistration
+ - bpf: Enforce that struct_ops programs be GPL-only
+ - bpf: link: Refuse non-O_RDWR flags in BPF_OBJ_GET
+ - ethernet/netronome/nfp: Fix a use after free in nfp_bpf_ctrl_msg_rx
+ - bpf: Refcount task stack in bpf_get_task_stack
+ - bpf, sockmap: Fix sk->prot unhash op reset
+ - bpf, sockmap: Fix incorrect fwd_alloc accounting
+ - net: ensure mac header is set in virtio_net_hdr_to_skb()
+ - i40e: Fix sparse warning: missing error code 'err'
+ - i40e: Fix sparse error: 'vsi->netdev' could be null
+ - i40e: Fix sparse error: uninitialized symbol 'ring'
+ - i40e: Fix sparse errors in i40e_txrx.c
+ - net: sched: sch_teql: fix null-pointer dereference
+ - net: sched: fix action overwrite reference counting
+ - nl80211: fix beacon head validation
+ - nl80211: fix potential leak of ACL params
+ - cfg80211: check S1G beacon compat element length
+ - mac80211: fix time-is-after bug in mlme
+ - mac80211: fix TXQ AC confusion
+ - net-ipv6: bugfix - raw & sctp - switch to ipv6_can_nonlocal_bind()
+ - net: let skb_orphan_partial wake-up waiters.
+ - [x86] thunderbolt: Fix a leak in tb_retimer_add()
+ - [x86] thunderbolt: Fix off by one in tb_port_find_retimer()
+ - usbip: add sysfs_lock to synchronize sysfs code paths
+ - usbip: stub-dev synchronize sysfs code paths
+ - usbip: vudc synchronize sysfs code paths
+ - usbip: synchronize event handler with sysfs code paths
+ - driver core: Fix locking bug in deferred_probe_timeout_work_func()
+ - scsi: pm80xx: Fix chip initialization failure
+ - scsi: target: iscsi: Fix zero tag inside a trace event
+ - percpu: make pcpu_nr_empty_pop_pages per chunk type
+ - i2c: turn recovery error on init to debug
+ - [x86] KVM: x86/mmu: change TDP MMU yield function returns to match
+ cond_resched
+ - [x86] KVM: x86/mmu: Merge flush and non-flush tdp_mmu_iter_cond_resched
+ - [x86] KVM: x86/mmu: Rename goal_gfn to next_last_level_gfn
+ - [x86] KVM: x86/mmu: Ensure forward progress when yielding in TDP MMU iter
+ - [x86] KVM: x86/mmu: Yield in TDU MMU iter even if no SPTES changed
+ - [x86] KVM: x86/mmu: Ensure TLBs are flushed when yielding during GFN range
+ zap
+ - [x86] KVM: x86/mmu: Ensure TLBs are flushed for TDP MMU during NX zapping
+ - [x86] KVM: x86/mmu: Don't allow TDP MMU to yield when recovering NX pages
+ - [x86] KVM: x86/mmu: preserve pending TLB flush across calls to
+ kvm_tdp_mmu_zap_sp
+ - net: sched: fix err handler in tcf_action_init()
+ - ice: Refactor DCB related variables out of the ice_port_info struct
+ - ice: Recognize 860 as iSCSI port in CEE mode
+ - xfrm: interface: fix ipv4 pmtu check to honor ip header df
+ - xfrm: Use actual socket sk instead of skb socket for xfrm_output_resume
+ - [armhf] OMAP4: PM: update ROM return address for OSWR and OFF
+ - net: xfrm: Localize sequence counter per network namespace
+ - esp: delete NETIF_F_SCTP_CRC bit from features for esp offload
+ - [x86] ASoC: SOF: Intel: HDA: fix core status verification
+ - xfrm: Fix NULL pointer dereference on policy lookup
+ - virtchnl: Fix layout of RSS structures
+ - i40e: Added Asym_Pause to supported link modes
+ - i40e: Fix kernel oops when i40e driver removes VF's
+ - vxlan: do not modify the shared tunnel info when PMTU triggers an ICMP
+ reply
+ - geneve: do not modify the shared tunnel info when PMTU triggers an ICMP
+ reply
+ - sch_red: fix off-by-one checks in red_check_params()
+ - drivers/net/wan/hdlc_fr: Fix a double free in pvc_xmit
+ - xfrm: Provide private skb extensions for segmented and hw offloaded ESP
+ packets
+ - can: bcm/raw: fix msg_namelen values depending on CAN_REQUIRED_SIZE
+ - can: isotp: fix msg_namelen values depending on CAN_REQUIRED_SIZE
+ - ethernet: myri10ge: Fix a use after free in myri10ge_sw_tso
+ - gianfar: Handle error code at MAC address change
+ - [arm64,armhf] net: dsa: Fix type was not set for devlink port
+ - cxgb4: avoid collecting SGE_QBASE regs during traffic
+ - net:tipc: Fix a double free in tipc_sk_mcast_rcv
+ - [armhf] net/ncsi: Avoid channel_monitor hrtimer deadlock
+ - net: qrtr: Fix memory leak on qrtr_tx_wait failure
+ - nfp: flower: ignore duplicate merge hints from FW
+ - net: phy: broadcom: Only advertise EEE for supported modes
+ - [armhf] ASoC: sunxi: sun4i-codec: fill ASoC card owner (Closes: #980539)
+ - net/mlx5e: Fix mapping of ct_label zero
+ - net/mlx5e: Fix ethtool indication of connector type
+ - net/mlx5: Don't request more than supported EQs
+ - net/rds: Fix a use after free in rds_message_map_pages
+ - xdp: fix xdp_return_frame() kernel BUG throw for page_pool memory model
+ - i40e: Fix display statistics for veb_tc
+ - [arm64] drm/msm: Set drvdata to NULL when msm_drm_init() fails
+ - net: udp: Add support for getsockopt(..., ..., UDP_GRO, ..., ...);
+ - scsi: ufs: core: Fix task management request completion timeout
+ - scsi: ufs: core: Fix wrong Task Tag used in task management request UPIUs
+ - net: cls_api: Fix uninitialised struct field bo->unlocked_driver_cb
+ - [arm64,riscv64] net: macb: restore cmp registers on resume path
+ - clk: fix invalid usage of list cursor in register
+ - clk: fix invalid usage of list cursor in unregister
+ - workqueue: Move the position of debug_work_activate() in __queue_work()
+ - [s390x] cpcmd: fix inline assembly register clobbering
+ - net: openvswitch: conntrack: simplify the return expression of
+ ovs_ct_limit_get_default_limit()
+ - openvswitch: fix send of uninitialized stack memory in ct limit reply
+ - i2c: designware: Adjust bus_freq_hz when refuse high speed mode set
+ - iwlwifi: fix 11ax disabled bit in the regulatory capability flags
+ - tipc: increment the tmp aead refcnt before attaching it
+ - [arm64] net: hns3: clear VF down state bit before request link status
+ - net/mlx5: Fix placement of log_max_flow_counter
+ - net/mlx5: Fix PPLM register mapping
+ - net/mlx5: Fix PBMC register mapping
+ - RDMA/cxgb4: check for ipv6 address properly while destroying listener
+ - RDMA/qedr: Fix kernel panic when trying to access recv_cq
+ - [arm*] drm/vc4: crtc: Reduce PV fifo threshold on hvs4
+ - i40e: Fix parameters in aq_get_phy_register()
+ - RDMA/addr: Be strict with gid size
+ - [armhf] clk: socfpga: fix iomem pointer cast on 64-bit
+ - dt-bindings: net: ethernet-controller: fix typo in NVMEM
+ - net: sched: bump refcount for new action in ACT replace mode
+ - gpiolib: Read "gpio-line-names" from a firmware node
+ - cfg80211: remove WARN_ON() in cfg80211_sme_connect
+ - net: tun: set tun->dev->addr_len during TUNSETLINK processing
+ - drivers: net: fix memory leak in atusb_probe
+ - drivers: net: fix memory leak in peak_usb_create_dev
+ - net: mac802154: Fix general protection fault (CVE-2021-33033)
+ - net: ieee802154: nl-mac: fix check on panid
+ - net: ieee802154: fix nl802154 del llsec key
+ - net: ieee802154: fix nl802154 del llsec dev
+ - net: ieee802154: fix nl802154 add llsec key
+ - net: ieee802154: fix nl802154 del llsec devkey
+ - net: ieee802154: forbid monitor for set llsec params
+ - net: ieee802154: forbid monitor for del llsec seclevel
+ - net: ieee802154: stop dump llsec params for monitors
+ - Revert "net: sched: bump refcount for new action in ACT replace mode"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.31
+ - gfs2: Flag a withdraw if init_threads() fails
+ - [arm64] KVM: Hide system instruction access to Trace registers
+ - [arm64] KVM: Disable guest access to trace filter controls
+ - [armhf] drm/imx: imx-ldb: fix out of bounds array access warning
+ - gfs2: report "already frozen/thawed" errors
+ - ftrace: Check if pages were allocated before calling free_pages()
+ - [arm64,armhf] drm/tegra: dc: Don't set PLL clock to 0Hz
+ - [arm64,armhf] gpu: host1x: Use different lock classes for each client
+ - XArray: Fix splitting to non-zero orders
+ - block: only update parent bi_status when bio fail
+ - null_blk: fix command timeout completion handling
+ - io_uring: don't mark S_ISBLK async work as unbounded
+ - [riscv64] entry: fix misaligned base for excp_vect_table
+ - block: don't ignore REQ_NOWAIT for direct IO
+ - netfilter: x_tables: fix compat match/target pad out-of-bound write
+ - net: sfp: relax bitrate-derived mode check
+ - net: sfp: cope with SFPs that set both LOS normal and LOS inverted
+ - xen/events: fix setting irq affinity
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.32
+ - net/sctp: fix race condition in sctp_destroy_sock
+ - gpio: sysfs: Obey valid_mask
+ - dmaengine: Fix a double free in dma_async_device_register
+ - [x86] ACPI: x86: Call acpi_boot_table_init() after acpi_table_upgrade()
+ - iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_enqueue_hcmd()
+ - xfrm: BEET mode doesn't support fragments for inner packets
+ - ASoC: max98373: Changed amp shutdown register as volatile
+ - ASoC: max98373: Added 30ms turn on/off time delay
+ - [x86] gpu/xen: Fix a use after free in xen_drm_drv_init
+ - neighbour: Disregard DEAD dst in neigh_update
+ - [arm64] drm/msm: Fix a5xx/a6xx timestamps
+ - scsi: scsi_transport_srp: Don't block target in SRP_PORT_LOST state
+ - iwlwifi: add support for Qu with AX201 device
+ - net: ieee802154: stop dump llsec keys for monitors
+ - net: ieee802154: forbid monitor for add llsec key
+ - net: ieee802154: forbid monitor for del llsec key
+ - net: ieee802154: stop dump llsec devs for monitors
+ - net: ieee802154: forbid monitor for add llsec dev
+ - net: ieee802154: forbid monitor for del llsec dev
+ - net: ieee802154: stop dump llsec devkeys for monitors
+ - net: ieee802154: forbid monitor for add llsec devkey
+ - net: ieee802154: forbid monitor for del llsec devkey
+ - net: ieee802154: stop dump llsec seclevels for monitors
+ - net: ieee802154: forbid monitor for add llsec seclevel
+ - pcnet32: Use pci_resource_len to validate PCI resource
+ - mac80211: clear sta->fast_rx when STA removed from 4-addr VLAN
+ - Input: i8042 - fix Pegatron C15B ID entry
+ - HID: wacom: set EV_KEY and EV_ABS only for non-HID_GENERIC type of devices
+ - readdir: make sure to verify directory entry for legacy interfaces too
+ - [arm64] fix inline asm in load_unaligned_zeropad()
+ - [arm64] alternatives: Move length validation in alternative_{insn, endif}
+ - vfio/pci: Add missing range check in vfio_pci_mmap
+ - scsi: libsas: Reset num_scatter if libata marks qc as NODATA
+ - ixgbe: fix unbalanced device enable/disable in suspend/resume
+ - netfilter: flowtable: fix NAT IPv6 offload mangling
+ - netfilter: conntrack: do not print icmpv6 as unknown via /proc
+ - ice: Fix potential infinite loop when using u8 loop counter
+ - libnvdimm/region: Fix nvdimm_has_flush() to handle ND_REGION_ASYNC
+ - netfilter: bridge: add pre_exit hooks for ebtable unregistration
+ - netfilter: arp_tables: add pre_exit hook for table unregister
+ - [arm64,riscv64] net: macb: fix the restore of cmp registers
+ - net/mlx5e: fix ingress_ifindex check in mlx5e_flower_parse_meta
+ - netfilter: nft_limit: avoid possible divide error in nft_limit_init
+ - net/mlx5e: Fix setting of RS FEC mode
+ - net: sit: Unregister catch-all devices
+ - net: ip6_tunnel: Unregister catch-all devices
+ - mm: ptdump: fix build failure
+ - net: Make tcp_allowed_congestion_control readonly in non-init netns
+ - i40e: fix the panic when running bpf in xdpdrv mode
+ - ethtool: pause: make sure we init driver stats
+ - [ia64] tools: remove inclusion of ia64-specific version of errno.h header
+ - gro: ensure frag0 meets IP header alignment
+ - [armhf] OMAP2+: Fix warning for omap_init_time_of()
+ - [armhf] OMAP2+: Fix uninitialized sr_inst
+ - [arm64] dts: allwinner: Fix SD card CD GPIO for SOPine systems
+ - [arm64] dts: allwinner: h6: beelink-gs1: Remove ext. 32 kHz osc reference
+ - bpf: Use correct permission flag for mixed signed bounds arithmetic
+ (CVE-2021-29155)
+ - [x86] KVM: VMX: Convert vcpu_vmx.exit_reason to a union
+ - [x86] KVM: VMX: Don't use vcpu->run->internal.ndata as an array index
+ (CVE-2021-3501)
+ - r8169: tweak max read request size for newer chips also in jumbo mtu mode
+ - r8169: don't advertise pause in jumbo mode
+ - bpf: Ensure off_reg has no mixed signed bounds for all types
+ (CVE-2021-29155)
+ - bpf: Move off_reg into sanitize_ptr_alu (CVE-2021-29155)
+ - [armel,armhf] 9071/1: uprobes: Don't hook on thumb instructions
+ - [arm64] mte: Ensure TIF_MTE_ASYNC_FAULT is set atomically
+ - bpf: Rework ptr_limit into alu_limit and add common error path
+ (CVE-2021-29155)
+ - bpf: Improve verifier error messages for users (CVE-2021-29155)
+ - bpf: Move sanitize_val_alu out of op switch
+ - net: phy: marvell: fix detection of PHY on Topaz switches
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.33
+ - [armhf] gpio: omap: Save and restore sysconfig
+ - [x86] pinctrl: lewisburg: Update number of pins in community
+ - block: return -EBUSY when there are open partitions in blkdev_reread_part
+ - pinctrl: core: Show pin numbers for the controllers with base = 0
+ - [arm64] dts: allwinner: Revert SD card CD GPIO for Pine64-LTS
+ - bpf: Permits pointers on stack for helper calls
+ - bpf: Allow variable-offset stack access
+ - bpf: Refactor and streamline bounds check into helper (CVE-2021-29155)
+ - bpf: Tighten speculative pointer arithmetic mask
+ - locking/qrwlock: Fix ordering in queued_write_lock_slowpath()
+ - [x86] perf/x86/intel/uncore: Remove uncore extra PCI dev HSWEP_PCI_PCU_3
+ - [x86] perf/x86/kvm: Fix Broadwell Xeon stepping in isolation_ucodes[]
+ - HID: alps: fix error return code in alps_input_configured()
+ - HID cp2112: fix support for multiple gpiochips
+ - HID: wacom: Assign boolean values to a bool variable
+ - net: geneve: check skb is large enough for IPv4/IPv6 header
+ - [arm64,armhf] dmaengine: tegra20: Fix runtime PM imbalance on error
+ - [s390x] entry: save the caller of psw_idle
+ - [arm64] kprobes: Restore local irqflag if kprobes is cancelled
+ - xen-netback: Check for hotplug-status existence before watching
+ - [x86] crash: Fix crash_setup_memmap_entries() out-of-bounds access
+ - net: hso: fix NULL-deref on disconnect regression
+ - USB: CDC-ACM: fix poison/unpoison imbalance (Closes: #986995)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.34
+ - iwlwifi: Fix softirq/hardirq disabling in iwl_pcie_gen2_enqueue_hcmd()
+ - [x86] mei: me: add Alder Lake P device id.
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.35
+ - [mips*] Do not include hi and lo in clobber list for R6
+ - netfilter: conntrack: Make global sysctls readonly in non-init netns
+ - net: usb: ax88179_178a: initialize local variables before use
+ - igb: Enable RSS for Intel I211 Ethernet Controller
+ - bpf: Fix masking negation logic upon negative dst register
+ (CVE-2021-31829)
+ - bpf: Fix leakage of uninitialized bpf stack under speculation
+ (CVE-2021-31829)
+ - net: qrtr: Avoid potential use after free in MHI send
+ - perf data: Fix error return code in perf_data__create_dir()
+ - capabilities: require CAP_SETFCAP to map uid 0
+ - perf ftrace: Fix access to pid in array when setting a pid filter
+ - driver core: add a min_align_mask field to struct device_dma_parameters
+ - swiotlb: add a IO_TLB_SIZE define
+ - swiotlb: factor out an io_tlb_offset helper
+ - swiotlb: factor out a nr_slots helper
+ - swiotlb: clean up swiotlb_tbl_unmap_single
+ - swiotlb: refactor swiotlb_tbl_map_single
+ - swiotlb: don't modify orig_addr in swiotlb_tbl_sync_single
+ - swiotlb: respect min_align_mask
+ - nvme-pci: set min_align_mask
+ - ovl: fix leaked dentry
+ - ovl: allow upperdir inside lowerdir
+ - ALSA: usb-audio: Add MIDI quirk for Vox ToneLab EX
+ - USB: Add LPM quirk for Lenovo ThinkPad USB-C Dock Gen2 Ethernet
+ - USB: Add reset-resume quirk for WD19's Realtek Hub
+ - [x86] platform/x86: thinkpad_acpi: Correct thermal sensor allocation
+ - perf/core: Fix unconditional security_locked_down() call
+ - vfio: Depend on MMU
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.36
+ - bus: mhi: core: Fix check for syserr at power_up
+ - bus: mhi: core: Clear configuration from channel context during reset
+ - bus: mhi: core: Sanity check values from remote device before use
+ - dyndbg: fix parsing file query without a line-range suffix
+ - [s390x] disassembler: increase ebpf disasm buffer size
+ - [s390x] zcrypt: fix zcard and zqueue hot-unplug memleak
+ - [arm64,x86] tpm: acpi: Check eventlog signature before using it
+ - ftrace: Handle commands when closing set_ftrace_filter file
+ - ecryptfs: fix kernel panic with null dev_name
+ - fs/epoll: restore waking from ep_done_scan()
+ - mtd: spi-nor: core: Fix an issue of releasing resources during read/write
+ - Revert "mtd: spi-nor: macronix: Add support for mx25l51245g"
+ - erofs: add unsupported inode i_format check
+ - [armhf] spi: stm32-qspi: fix pm_runtime usage_count counter
+ - [armhf] spi: spi-ti-qspi: Free DMA resources
+ - scsi: qla2xxx: Fix crash in qla2xxx_mqueuecommand()
+ - scsi: mpt3sas: Block PCI config access from userspace during reset
+ - mmc: sdhci: Check for reset prior to DMA address unmap
+ - mmc: sdhci-pci: Fix initialization of some SD cards for Intel BYT-based
+ controllers
+ - [arm64,armhf] mmc: sdhci-tegra: Add required callbacks to set/clear CQE_EN
+ bit
+ - mmc: block: Update ext_csd.cache_ctrl if it was written
+ - mmc: block: Issue a cache flush only when it's enabled
+ - mmc: core: Do a power cycle when the CMD11 fails
+ - mmc: core: Set read only for SD cards with permanent write protect bit
+ - mmc: core: Fix hanging on I/O during system suspend for removable cards
+ - [arm64,armhf] irqchip/gic-v3: Do not enable irqs when handling spurious
+ interrups
+ - cifs: Return correct error code from smb2_get_enc_key
+ - cifs: fix out-of-bound memory access when calling smb3_notify() at mount
+ point
+ - cifs: detect dead connections only when echoes are enabled.
+ - smb2: fix use-after-free in smb2_ioctl_query_info()
+ - btrfs: handle remount to no compress during compression
+ - btrfs: fix metadata extent leak after failure to create subvolume
+ - [x86] intel_th: pci: Add Rocket Lake CPU support
+ - btrfs: fix race between transaction aborts and fsyncs leading to
+ use-after-free
+ - posix-timers: Preserve return value in clock_adjtime32()
+ - fbdev: zero-fill colormap in fbcmap.c
+ - [armhf] bus: ti-sysc: Probe for l4_wkup and l4_cfg interconnect devices
+ first
+ - staging: wimax/i2400m: fix byte-order issue
+ - bus: mhi: core: Destroy SBL devices when moving to mission mode
+ - crypto: api - check for ERR pointers in crypto_destroy_tfm()
+ - [x86] crypto: qat - fix unmap invalid dma address
+ - usb: gadget: uvc: add bInterval checking for HS mode
+ - usb: webcam: Invalid size of Processing Unit Descriptor
+ - [x86] genirq/matrix: Prevent allocation counter corruption
+ - usb: gadget: f_uac2: validate input parameters
+ - usb: gadget: f_uac1: validate input parameters
+ - [arm64,armhf] usb: dwc3: gadget: Ignore EP queue requests during bus reset
+ - usb: xhci: Fix port minor revision
+ - PCI: PM: Do not read power state in pci_enable_device_flags()
+ - [arm64,armhf] soc/tegra: pmc: Fix completion of power-gate toggling
+ - [arm64] dts: imx8mq-librem5-r3: Mark buck3 as always on
+ - [arm64] tee: optee: do not check memref size on return from Secure World
+ - [arm64,x86] soundwire: cadence: only prepare attached devices on clock
+ stop
+ - [arm*] perf/arm_pmu_platform: Use dev_err_probe() for IRQ errors
+ - [arm*] perf/arm_pmu_platform: Fix error handling
+ - random: initialize ChaCha20 constants with correct endianness
+ - xhci: check port array allocation was successful before dereferencing it
+ - xhci: check control context is valid before dereferencing it.
+ - xhci: fix potential array out of bounds with several interrupters
+ - bus: mhi: core: Clear context for stopped channels from remove()
+ - [arm64] spi: qup: fix PM reference leak in spi_qup_remove()
+ - [arm64,armhf] usb: musb: fix PM reference leak in musb_irq_work()
+ - usb: core: hub: Fix PM reference leak in usb_port_resume()
+ - [arm64,armhf] usb: dwc3: gadget: Check for disabled LPM quirk
+ - tty: n_gsm: check error while registering tty devices
+ - [x86] intel_th: Consistency and off-by-one fix
+ - [armhf] phy: phy-twl4030-usb: Fix possible use-after-free in
+ twl4030_usb_remove()
+ - [arm64] crypto: sun8i-ce - Fix PM reference leak in sun8i_ce_probe()
+ - [armhf] crypto: stm32/hash - Fix PM reference leak on stm32-hash.c
+ - [armhf] crypto: stm32/cryp - Fix PM reference leak on stm32-cryp.c
+ - [x86] platform/x86: intel_pmc_core: Don't use global pmcdev in quirks
+ - spi: sync up initial chipselect state
+ - btrfs: do proper error handling in create_reloc_root
+ - btrfs: do proper error handling in btrfs_update_reloc_root
+ - btrfs: convert logic BUG_ON()'s in replace_path to ASSERT()'s
+ - drm: Added orientation quirk for OneGX1 Pro
+ - drm/qxl: do not run release if qxl failed to init
+ - drm/qxl: release shadow on shutdown
+ - drm/ast: Fix invalid usage of AST_MAX_HWC_WIDTH in cursor atomic_check
+ - drm/ast: fix memory leak when unload the driver
+ - drm/amd/display: Check for DSC support instead of ASIC revision
+ - drm/amdgpu/display: buffer INTERRUPT_LOW_IRQ_CONTEXT interrupt work
+ - scsi: lpfc: Fix incorrect dbde assignment when building target abts wqe
+ - scsi: lpfc: Fix pt2pt connection does not recover after LOGO
+ - drm/amdgpu: Fix some unload driver issues
+ - sched/pelt: Fix task util_est update filtering
+ - kvfree_rcu: Use same set of GFP flags as does single-argument
+ - scsi: target: pscsi: Fix warning in pscsi_complete_cmd()
+ - [x86] media: ite-cir: check for receive overflow
+ - power: supply: bq27xxx: fix power_avg for newer ICs
+ - media: media/saa7164: fix saa7164_encoder_register() memory leak bugs
+ - media: gspca/sq905.c: fix uninitialized variable
+ - drm/amdgpu: mask the xgmi number of hops reported from psp to kfd
+ - drm/amdgpu : Fix asic reset regression issue introduce by 8f211fe8ac7c4f
+ - drm/amd/display: Fix UBSAN warning for not a valid value for type '_Bool'
+ - scsi: qla2xxx: Always check the return value of qla24xx_get_isp_stats()
+ - scsi: qla2xxx: Fix use after free in bsg
+ - [arm64,armhf] mmc: sdhci-esdhc-imx: validate pinctrl before use it
+ - mmc: sdhci-pci: Add PCI IDs for Intel LKF
+ - ata: ahci: Disable SXS for Hisilicon Kunpeng920
+ - nvmet: return proper error code from discovery ctrl
+ - scsi: smartpqi: Use host-wide tag space
+ - scsi: smartpqi: Correct request leakage during reset operations
+ - scsi: smartpqi: Add new PCI IDs
+ - scsi: scsi_dh_alua: Remove check for ASC 24h in alua_rtpg()
+ - media: em28xx: fix memory leak
+ - media: vivid: update EDID
+ - [arm64] drm/msm/dp: Fix incorrect NULL check kbot warnings in DP driver
+ - [armhf] clk: socfpga: arria10: Fix memory leak of socfpga_clk on error
+ return
+ - media: dvb-usb: fix memory leak in dvb_usb_adapter_init
+ - media: gscpa/stv06xx: fix memory leak
+ - sched/fair: Ignore percpu threads for imbalance pulls
+ - [arm64] drm/msm/mdp5: Configure PP_SYNC_HEIGHT to double the vtotal
+ - [arm64] drm/msm/mdp5: Do not multiply vclk line count by 100
+ - drm/amdgpu/ttm: Fix memory leak userptr pages
+ - drm/radeon/ttm: Fix memory leak userptr pages
+ - drm/amd/display: Try YCbCr420 color when YCbCr444 fails
+ - drm/amdgpu: fix NULL pointer dereference
+ - scsi: lpfc: Fix crash when a REG_RPI mailbox fails triggering a LOGO
+ response
+ - scsi: lpfc: Fix error handling for mailboxes completed in MBX_POLL mode
+ - scsi: lpfc: Remove unsupported mbox PORT_CAPABILITIES logic
+ - mfd: intel-m10-bmc: Fix the register access range
+ - mfd: da9063: Support SMBus and I2C mode
+ - scsi: libfc: Fix a format specifier
+ - perf: Rework perf_event_exit_event()
+ - sched,fair: Alternative sched_slice()
+ - [s390x] archrandom: add parameter check for s390_arch_random_generate
+ - sched,psi: Handle potential task count underflow bugs more gracefully
+ - [i386] ALSA: emu8000: Fix a use after free in snd_emu8000_create_mixer
+ - ALSA: hda/conexant: Re-order CX5066 quirk table entries
+ - [i386] ALSA: sb: Fix two use after free in snd_sb_qsound_build
+ - ALSA: usb-audio: Explicitly set up the clock selector
+ - ALSA: usb-audio: Add dB range mapping for Sennheiser Communications
+ Headset PC 8
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP ProBook 445 G7
+ - ALSA: hda/realtek: GA503 use same quirks as GA401
+ - ALSA: hda/realtek: fix mic boost on Intel NUC 8
+ - ALSA: hda/realtek - Headset Mic issue on HP platform
+ - ALSA: hda/realtek: fix static noise on ALC285 Lenovo laptops
+ - ALSA: hda/realtek: Add quirk for Intel Clevo PCx0Dx
+ - [x86] tools/power/turbostat: Fix turbostat for AMD Zen CPUs
+ (Closes: #985681)
+ - btrfs: fix race when picking most recent mod log operation for an old root
+ - [arm64] vdso: Discard .note.gnu.property sections in vDSO
+ - Makefile: Move -Wno-unused-but-set-variable out of GCC only block
+ - fs: fix reporting supported extra file attributes for statx()
+ - virtiofs: fix memory leak in virtio_fs_probe()
+ - ubifs: Only check replay with inode type to judge if inode linked
+ - f2fs: fix error handling in f2fs_end_enable_verity()
+ - f2fs: fix to avoid out-of-bounds memory access (CVE-2021-3506)
+ - openvswitch: fix stack OOB read while fragmenting IPv4 packets
+ - [arm64] ACPI: GTDT: Don't corrupt interrupt mappings on watchdow probe
+ failure
+ - NFS: fs_context: validate UDP retrans to prevent shift out-of-bounds
+ - NFS: Don't discard pNFS layout segments that are marked for return
+ - NFSv4: Don't discard segments marked for return in _pnfs_return_layout()
+ - jffs2: Fix kasan slab-out-of-bounds problem
+ - jffs2: Hook up splice_write callback
+ - [powerpc*] powernv: Enable HAIL (HV AIL) for ISA v3.1 processors
+ - [powerpc*] eeh: Fix EEH handling for hugepages in ioremap space.
+ - [x86] intel_th: pci: Add Alder Lake-M support
+ - [arm64,x86] tpm: efi: Use local variable for calculating final log size
+ - [arm64,x86] tpm: vtpm_proxy: Avoid reading host log when using a virtual
+ device
+ - [armhf] crypto: arm/curve25519 - Move '.fpu' after '.arch'
+ - md/raid1: properly indicate failure when ending a failed write request
+ - dm raid: fix inconclusive reshape layout on fast raid4/5/6 table reload
+ sequences
+ - fuse: fix write deadlock
+ - exfat: fix erroneous discard when clear cluster bit
+ - sfc: farch: fix TX queue lookup in TX flush done handling
+ - sfc: farch: fix TX queue lookup in TX event handling
+ - security: commoncap: fix -Wstringop-overread warning
+ - Fix misc new gcc warnings
+ - jffs2: check the validity of dstlen in jffs2_zlib_compress()
+ - smb3: when mounting with multichannel include it in requested capabilities
+ - smb3: do not attempt multichannel to server which does not support it
+ - Revert 337f13046ff0 ("futex: Allow FUTEX_CLOCK_REALTIME with FUTEX_WAIT
+ op")
+ - futex: Do not apply time namespace adjustment on FUTEX_LOCK_PI
+ - [x86] cpu: Initialize MSR_TSC_AUX if RDTSCP *or* RDPID is supported
+ - ext4: annotate data race in start_this_handle()
+ - ext4: annotate data race in jbd2_journal_dirty_metadata()
+ - ext4: fix check to prevent false positive report of incorrect used inodes
+ - ext4: do not set SB_ACTIVE in ext4_orphan_cleanup()
+ - ext4: fix error code in ext4_commit_super
+ - ext4: fix ext4_error_err save negative errno into superblock
+ - ext4: fix error return code in ext4_fc_perform_commit()
+ - ext4: allow the dax flag to be set and cleared on inline directories
+ - ext4: Fix occasional generic/418 failure
+ - media: dvbdev: Fix memory leak in dvb_media_device_free()
+ - media: dvb-usb: Fix use-after-free access
+ - media: dvb-usb: Fix memory leak at error in dvb_usb_device_init()
+ - media: v4l2-ctrls: fix reference to freed memory
+ - [arm64] media: venus: hfi_parser: Don't initialize parser on v1
+ - usb: gadget: dummy_hcd: fix gpf in gadget_setup
+ - usb: gadget: Fix double free of device descriptor pointers
+ - usb: gadget/function/f_fs string table fix for multiple languages
+ - [arm64,armhf] usb: dwc3: gadget: Remove FS bInterval_m1 limitation
+ - [arm64,armhf] usb: dwc3: gadget: Fix START_TRANSFER link state check
+ - [arm64,armhf] usb: dwc3: core: Do core softreset when switch mode
+ - [arm*] usb: dwc2: Fix session request interrupt handler
+ - tty: fix memory leak in vc_deallocate
+ - [x86] tools/power turbostat: Fix offset overflow issue in index converting
+ - tracing: Map all PIDs to command lines
+ - tracing: Restructure trace_clock_global() to never block
+ - dm space map common: fix division bug in sm_ll_find_free_block()
+ - dm integrity: fix missing goto in bitmap_flush_interval error handling
+ - dm rq: fix double free of blk_mq_tag_set in dev remove after table load
+ fails
+ - lib/vsprintf.c: remove leftover 'f' and 'F' cases from bstr_printf()
+ - [arm*] thermal/drivers/cpufreq_cooling: Fix slab OOB issue
+ - thermal/core/fair share: Lock the thermal zone while looping over
+ instances
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.37
+ - Bluetooth: verify AMP hci_chan before amp_destroy (CVE-2021-33034)
+ - bluetooth: eliminate the potential race condition when removing the HCI
+ controller (CVE-2021-32399)
+ - net/nfc: fix use-after-free llcp_sock_bind/connect (CVE-2021-23134)
+ - io_uring: truncate lengths larger than MAX_RW_COUNT on provide buffers
+ (CVE-2021-3491)
+ - Revert "USB: cdc-acm: fix rounding error in TIOCSSERIAL"
+ - usb: roles: Call try_module_get() from usb_role_switch_find_by_fwnode()
+ - [amd64] tty: moxa: fix TIOCSSERIAL jiffies conversions
+ - USB: serial: usb_wwan: fix TIOCSSERIAL jiffies conversions
+ - USB: serial: ti_usb_3410_5052: fix TIOCSSERIAL permission check
+ - [amd64] tty: moxa: fix TIOCSSERIAL permission check
+ - [x86] usb: typec: tcpm: Address incorrect values of tcpm psy for fixed
+ supply
+ - [x86] usb: typec: tcpm: Address incorrect values of tcpm psy for pps
+ supply
+ - [x86] usb: typec: tcpm: update power supply once partner accepts
+ - FDDI: defxx: Bail out gracefully with unassigned PCI resource for CSR
+ - PCI: Allow VPD access for QLogic ISP2722
+ - [x86] KVM: Defer the MMU unload to the normal path on an global INVPCID
+ - [arm64] PCI: xgene: Fix cfg resource mapping
+ - PM / devfreq: Unlock mutex and free devfreq struct in error path
+ - iio: inv_mpu6050: Fully validate gyro and accel scale writes
+ - iio:accel:adis16201: Fix wrong axis assignment that prevents loading
+ - iio:adc:ad7476: Fix remove handling
+ - misc: lis3lv02d: Fix false-positive WARN on various HP models
+ - [x86] misc: vmw_vmci: explicitly initialize vmci_notify_bm_set_msg struct
+ - [x86] misc: vmw_vmci: explicitly initialize vmci_datagram payload
+ - selinux: add proper NULL termination to the secclass_map permissions
+ - [x86] sched: Treat Intel SNC topology as default, COD as exception
+ - async_xor: increase src_offs when dropping destination page
+ - md/bitmap: wait for external bitmap writes to complete during tear down
+ - md-cluster: fix use-after-free issue when removing rdev
+ - md: split mddev_find
+ - md: factor out a mddev_find_locked helper from mddev_find
+ - md: md_open returns -EBUSY when entering racing area
+ - md: Fix missing unused status line of /proc/mdstat
+ - ipw2x00: potential buffer overflow in libipw_wx_set_encodeext()
+ - cfg80211: scan: drop entry from hidden_list on overflow
+ - rtw88: Fix array overrun in rtw_get_tx_power_params()
+ - mt76: fix potential DMA mapping leak
+ - [amd64] drm/i915/gvt: Fix virtual display setup for BXT/APL
+ - [amd64] drm/i915/gvt: Fix vfio_edid issue for BXT/APL
+ - drm/qxl: use ttm bo priorities
+ - [arm64,armhf] drm/panfrost: Clear MMU irqs before handling the fault
+ - [arm64,armhf] drm/panfrost: Don't try to map pages that are already mapped
+ - drm/radeon: fix copy of uninitialized variable back to userspace
+ - drm/dp_mst: Revise broadcast msg lct & lcr
+ - drm/dp_mst: Set CLEAR_PAYLOAD_ID_TABLE as broadcast
+ - drm: bridge/panel: Cleanup connector on bridge detach
+ - drm/amd/display: Reject non-zero src_y and src_x for video planes
+ - drm/amdgpu: fix concurrent VM flushes on Vega/Navi v2
+ - ALSA: hda/realtek: Re-order ALC882 Acer quirk table entries
+ - ALSA: hda/realtek: Re-order ALC882 Sony quirk table entries
+ - ALSA: hda/realtek: Re-order ALC882 Clevo quirk table entries
+ - ALSA: hda/realtek: Re-order ALC269 HP quirk table entries
+ - ALSA: hda/realtek: Re-order ALC269 Acer quirk table entries
+ - ALSA: hda/realtek: Re-order ALC269 Dell quirk table entries
+ - ALSA: hda/realtek: Re-order ALC269 ASUS quirk table entries
+ - ALSA: hda/realtek: Re-order ALC269 Sony quirk table entries
+ - ALSA: hda/realtek: Re-order ALC269 Lenovo quirk table entries
+ - ALSA: hda/realtek: Re-order remaining ALC269 quirk table entries
+ - ALSA: hda/realtek: Re-order ALC662 quirk table entries
+ - ALSA: hda/realtek: Remove redundant entry for ALC861 Haier/Uniwill devices
+ - ALSA: hda/realtek: ALC285 Thinkpad jack pin quirk is unreachable
+ - ALSA: hda/realtek: Fix speaker amp on HP Envy AiO 32
+ - [s390x] KVM: VSIE: correctly handle MVPG when in VSIE
+ - [s390x] KVM: split kvm_s390_logical_to_effective
+ - [s390x] KVM: fix guarded storage control register handling
+ - [s390x] fix detection of vector enhancements facility 1 vs. vector packed
+ decimal facility
+ - [s390x] KVM: VSIE: fix MVPG handling for prefixing and MSO
+ - [s390x] KVM: split kvm_s390_real_to_abs
+ - [s390x] KVM: extend kvm_s390_shadow_fault to return entry pointer
+ - [x86] KVM: x86/mmu: Alloc page for PDPTEs when shadowing 32-bit NPT with
+ 64-bit
+ - [x86] KVM: x86: Remove emulator's broken checks on CR0/CR3/CR4 loads
+ - [x86] KVM: nSVM: Set the shadow root level to the TDP level for nested NPT
+ - [x86] KVM: SVM: Don't strip the C-bit from CR2 on #PF interception
+ - [x86] KVM: SVM: Do not allow SEV/SEV-ES initialization after vCPUs are
+ created
+ - [x86] KVM: SVM: Inject #GP on guest MSR_TSC_AUX accesses if RDTSCP
+ unsupported
+ - [x86] KVM: nVMX: Defer the MMU reload to the normal path on an EPTP switch
+ - [x86] KVM: nVMX: Truncate bits 63:32 of VMCS field on nested check in
+ !64-bit
+ - [x86] KVM: nVMX: Truncate base/index GPR value on address calc in !64-bit
+ - [arm64] KVM: arm/arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST read
+ - KVM: Destroy I/O bus devices on unregister failure _after_ sync'ing SRCU
+ - KVM: Stop looking for coalesced MMIO zones if the bus is destroyed
+ - [arm64] KVM: Fully zero the vcpu state on reset
+ - [arm64] KVM: arm64: Fix KVM_VGIC_V3_ADDR_TYPE_REDIST_REGION read
+ - Revert "drivers/net/wan/hdlc_fr: Fix a double free in pvc_xmit"
+ - Revert "i3c master: fix missing destroy_workqueue() on error in
+ i3c_master_register"
+ - ovl: fix missing revert_creds() on error path
+ - Revert "drm/qxl: do not run release if qxl failed to init"
+ - [x86] usb: gadget: pch_udc: Revert d3cb25a12138 completely
+ - Revert "tools/power turbostat: adjust for temperature offset"
+ - [arm64] firmware: xilinx: Fix dereferencing freed memory
+ - [armhf] memory: gpmc: fix out of bounds read and dereference on gpmc_cs[]
+ - [armhf] ARM: dts: exynos: correct fuel gauge interrupt trigger level on
+ GT-I9100
+ - [armhf] ARM: dts: exynos: correct PMIC interrupt trigger level on SMDK5250
+ - [armhf] serial: stm32: fix code cleaning warnings and checks
+ - [armhf] serial: stm32: add "_usart" prefix in functions name
+ - [armhf] serial: stm32: fix probe and remove order for dma
+ - [armhf] serial: stm32: Use of_device_get_match_data()
+ - [armhf] serial: stm32: fix startup by enabling usart for reception
+ - [armhf] serial: stm32: fix incorrect characters on console
+ - [armhf] serial: stm32: fix TX and RX FIFO thresholds
+ - [armhf] serial: stm32: fix a deadlock condition with wakeup event
+ - [armhf] serial: stm32: fix wake-up flag handling
+ - [armhf] serial: stm32: fix a deadlock in set_termios
+ - [armhf] serial: stm32: fix tx dma completion, release channel
+ - [armhf] serial: stm32: call stm32_transmit_chars locked
+ - [armhf] serial: stm32: fix FIFO flush in startup and set_termios
+ - [armhf] serial: stm32: add FIFO flush when port is closed
+ - [armhf] serial: stm32: fix tx_empty condition
+ - [x86] usb: typec: tps6598x: Fix return value check in tps6598x_probe()
+ - regmap: set debugfs_name to NULL after it is freed
+ - [arm64,armhf] spi: rockchip: avoid objtool warning
+ - mtd: Handle possible -EPROBE_DEFER from parse_mtd_partitions()
+ - mtd: don't lock when recursively deleting partitions
+ - mtd: maps: fix error return code of physmap_flash_remove()
+ - [arm64] dts: qcom: db845c: fix correct powerdown pin for WSA881x
+ - [armhf] spi: stm32: drop devres version of spi_register_master
+ - [armhf] spi: stm32: Fix use-after-free on unbind
+ - [x86] microcode: Check for offline CPUs before requesting new microcode
+ - devtmpfs: fix placement of complete() call
+ - [x86] usb: gadget: pch_udc: Replace cpu_to_le32() by lower_32_bits()
+ - [x86] usb: gadget: pch_udc: Check if driver is present before calling
+ ->setup()
+ - [x86] usb: gadget: pch_udc: Check for DMA mapping error
+ - [x86] usb: gadget: pch_udc: Initialize device pointer before use
+ - [x86] usb: gadget: pch_udc: Provide a GPIO line used on Intel Minnowboard
+ (v1)
+ - [amd64] crypto: ccp - fix command queuing to TEE ring buffer
+ - [x86] crypto: qat - don't release uninitialized resources
+ - [x86] crypto: qat - ADF_STATUS_PF_RUNNING should be set after adf_dev_init
+ - dt-bindings: serial: stm32: Use 'type: object' instead of false for
+ 'additionalProperties'
+ - mtd: require write permissions for locking and badblock ioctls
+ - [arm64] bus: qcom: Put child node before return
+ - soundwire: bus: Fix device found flag correctly
+ - NFSD: Fix sparse warning in nfs4proc.c
+ - NFSv4.2: fix copy stateid copying for the async copy
+ - crypto: poly1305 - fix poly1305_core_setkey() declaration
+ - [x86] crypto: qat - fix error path in adf_isr_resource_alloc()
+ - [armhf] usb: gadget: aspeed: fix dma map failure
+ - [arm64] drivers: nvmem: Fix voltage settings for QTI qfprom-efuse
+ - driver core: platform: Declare early_platform_cleanup() prototype
+ - [armel,armhf] memory: pl353: fix mask of ECC page_size config register
+ - soundwire: stream: fix memory leak in stream config error path
+ - [arm64] firmware: qcom_scm: Make __qcom_scm_is_call_available() return
+ bool
+ - [arm64] firmware: qcom_scm: Reduce locking section for __get_convention()
+ - [arm64] firmware: qcom_scm: Workaround lack of "is available" call on
+ SC7180
+ - [arm64,armhf] irqchip/gic-v3: Fix OF_BAD_ADDR error handling
+ - [x86] staging: rtl8192u: Fix potential infinite loop
+ - PM / devfreq: Use more accurate returned new_freq as resume_freq
+ - [armhf] clocksource/drivers/timer-ti-dm: Fix posted mode status check
+ order
+ - [armhf] clocksource/drivers/timer-ti-dm: Add missing
+ set_state_oneshot_stopped
+ - spi: Fix use-after-free with devm_spi_alloc_*
+ - [arm64] soc: qcom: mdt_loader: Validate that p_filesz < p_memsz
+ - [arm64] soc: qcom: mdt_loader: Detect truncated read of segments
+ - PM: runtime: Replace inline function pm_runtime_callbacks_present()
+ - [amd64,arm64] ACPI: CPPC: Replace cppc_attr with kobj_attribute
+ - [x86] crypto: qat - Fix a double free in adf_create_ring
+ - [arm64] cpufreq: armada-37xx: Fix setting TBG parent for load levels
+ - [arm64] clk: mvebu: armada-37xx-periph: remove .set_parent method for CPU
+ PM clock
+ - [arm64] cpufreq: armada-37xx: Fix the AVS value for load L1
+ - [arm64] clk: mvebu: armada-37xx-periph: Fix switching CPU freq from 250
+ Mhz to 1 GHz
+ - [arm64] clk: mvebu: armada-37xx-periph: Fix workaround for switching from
+ L1 to L0
+ - [arm64] cpufreq: armada-37xx: Fix driver cleanup when registration failed
+ - [arm64] cpufreq: armada-37xx: Fix determining base CPU frequency
+ - USB: cdc-acm: fix unprivileged TIOCCSERIAL
+ - USB: cdc-acm: fix TIOCGSERIAL implementation
+ - tty: actually undefine superseded ASYNC flags
+ - tty: fix return value for unsupported ioctls
+ - tty: fix return value for unsupported termiox ioctls
+ - serial: core: return early on unsupported ioctls
+ - node: fix device cleanups in error handling code
+ - crypto: chelsio - Read rxchannel-id from firmware
+ - usbip: vudc: fix missing unlock on error in usbip_sockfd_store()
+ - security: keys: trusted: fix TPM2 authorizations
+ - [x86] platform/x86: pmc_atom: Match all Beckhoff Automation baytrail
+ boards with critclk_systems DMI table
+ - [armhf] dts: aspeed: Rainier: Fix humidity sensor bus address
+ - [x86] Drivers: hv: vmbus: Use after free in __vmbus_open()
+ - [x86] Drivers: hv: vmbus: Increase wait time for VMbus unload
+ - [x86] PM: hibernate: x86: Use crc32 instead of md5 for hibernation e820
+ integrity check
+ - [arm*] usb: dwc2: Fix host mode hibernation exit with remote wakeup flow.
+ - [arm*] usb: dwc2: Fix hibernation between host and device modes.
+ - ttyprintk: Add TTY hangup callback.
+ - [armhf] serial: omap: don't disable rs485 if rts gpio is missing
+ - [armhf] serial: omap: fix rs485 half-duplex filtering
+ - xen-blkback: fix compatibility bug with single page rings
+ - [armhf] soc: aspeed: fix a ternary sign expansion bug
+ - [armhf] drm/tilcdc: send vblank event when disabling crtc
+ - [armhf] drm/stm: Fix bus_flags handling
+ - drm/amd/display: Fix off by one in hdmi_14_process_transaction()
+ - sched/fair: Fix shift-out-of-bounds in load_balance()
+ - afs: Fix updating of i_mode due to 3rd party change
+ - rcu: Remove spurious instrumentation_end() in rcu_nmi_enter()
+ - media: vivid: fix assignment of dev->fbuf_out_flags
+ - media: saa7134: use sg_dma_len when building pgtable
+ - media: saa7146: use sg_dma_len when building pgtable
+ - [armhf] media: aspeed: fix clock handling logic
+ - drm/probe-helper: Check epoch counter in output_poll_execute()
+ - [arm64] media: venus: core: Fix some resource leaks in the error path of
+ 'venus_probe()'
+ - media: m88ds3103: fix return value check in m88ds3103_probe()
+ - media: m88rs6000t: avoid potential out-of-bounds reads on arrays
+ - [x86] kprobes: Fix to check non boostable prefixes correctly
+ - sata_mv: add IRQ checks
+ - ata: libahci_platform: fix IRQ check
+ - seccomp: Fix CONFIG tests for Seccomp_filters
+ - nvme-tcp: block BH in sk state_change sk callback
+ - nvmet-tcp: fix incorrect locking in state_change sk callback
+ - [armhf] clk: imx: Fix reparenting of UARTs not associated with stdout
+ - nvme: retrigger ANA log update if group descriptor isn't found
+ - media: v4l2-ctrls.c: fix race condition in hdl->requests list
+ - vfio/pci: Move VGA and VF initialization to functions
+ - vfio/pci: Re-order vfio_pci_probe()
+ - [amd64] vfio/mdev: Do not allow a mdev_type to have a NULL parent pointer
+ - drm/amd/display: use GFP_ATOMIC in dcn20_resource_construct
+ - drm/radeon: Fix a missing check bug in radeon_dp_mst_detect()
+ - scsi: pm80xx: Increase timeout for pm80xx mpi_uninit_check()
+ - scsi: pm80xx: Fix potential infinite loop
+ - scsi: ufs: ufshcd-pltfrm: Fix deferred probing
+ - [amd64] scsi: hisi_sas: Fix IRQ checks
+ - [powerpc*] scsi: ibmvfc: Fix invalid state machine BUG_ON()
+ - nvmet-tcp: fix a segmentation fault during io parsing error
+ - nvme-pci: don't simple map sgl when sgls are disabled
+ - [armhf] HSI: core: fix resource leaks in hsi_add_client_from_dt()
+ - [amd64] x86/events/amd/iommu: Fix sysfs type mismatch
+ - [x86] perf/amd/uncore: Fix sysfs type mismatch
+ - io_uring: fix overflows checks in provide buffers
+ - sched/debug: Fix cgroup_path[] serialization
+ - drivers/block/null_blk/main: Fix a double free in null_init.
+ - xsk: Respect device's headroom and tailroom on generic xmit path
+ - HID: plantronics: Workaround for double volume key presses
+ - RDMA/mlx5: Fix mlx5 rates to IB rates map
+ - [x86] KVM: x86/mmu: Retry page faults that hit an invalid memslot
+ - Bluetooth: avoid deadlock between hci_dev->lock and socket lock
+ - bpftool: Fix maybe-uninitialized warnings
+ - iommu: Check dev->iommu in iommu_dev_xxx functions
+ - [amd64] iommu/vt-d: Reject unsupported page request modes
+ - [powerpc*] prom: Mark identical_pvr_fixup as __init
+ - inet: use bigger hash table for IP ID generation
+ - [arm64,armhf] pinctrl: pinctrl-single: remove unused parameter
+ - [arm64,armhf] pinctrl: pinctrl-single: fix pcs_pin_dbg_show() when
+ bits_per_mux is not zero
+ - [mips64el,mipsel] loongson64: fix bug when PAGE_SIZE > 16KB
+ - RDMA/mlx5: Fix drop packet rule in egress table
+ - IB/isert: Fix a use after free in isert_connect_request
+ - gpio: guard gpiochip_irqchip_add_domain() with GPIOLIB_IRQCHIP
+ - ALSA: core: remove redundant spin_lock pair in snd_card_disconnect
+ - net: phy: lan87xx: fix access to wrong register of LAN87xx
+ - udp: never accept GSO_FRAGLIST packets
+ - [powerpc*] pseries: Only register vio drivers if vio bus exists
+ - net/tipc: fix missing destroy_workqueue() on error in tipc_crypto_start()
+ - bug: Remove redundant condition check in report_bug
+ - RDMA/core: Fix corrupted SL on passive side
+ - nfc: pn533: prevent potential memory corruption
+ - [arm64] net: hns3: Limiting the scope of vector_ring_chain variable
+ - [amd64] iommu/vt-d: Don't set then clear private data in
+ prq_event_thread()
+ - iommu: Fix a boundary issue to avoid performance drop
+ - [amd64] iommu/vt-d: Report right snoop capability when using FL for IOVA
+ - [amd64] iommu/vt-d: Report the right page fault address
+ - [amd64] iommu/vt-d: Preset Access/Dirty bits for IOVA over FL
+ - [amd64] iommu/vt-d: Remove WO permissions on second-level paging entries
+ - [amd64] iommu/vt-d: Invalidate PASID cache when root/context entry changed
+ - ALSA: usb-audio: Add error checks for usb_driver_claim_interface() calls
+ - HID: lenovo: Use brightness_set_blocking callback for setting LEDs
+ brightness
+ - HID: lenovo: Fix lenovo_led_set_tp10ubkbd() error handling
+ - HID: lenovo: Check hid_get_drvdata() returns non NULL in lenovo_event()
+ - HID: lenovo: Map mic-mute button to KEY_F20 instead of KEY_MICMUTE
+ - [arm64] KVM: Initialize VCPU mdcr_el2 before loading it
+ - [arm*] ASoC: simple-card: fix possible uninitialized single_cpu local
+ variable
+ - [amd64] IB/hfi1: Use kzalloc() for mmu_rb_handler allocation
+ - [powerpc*] 64s: Fix pte update for kernel memory on radix
+ - [powerpc*] perf: Fix PMU constraint check for EBB events
+ - mac80211: bail out if cipher schemes are invalid
+ - perf vendor events amd: Fix broken L2 Cache Hits from L2 HWPF metric
+ - xfs: fix return of uninitialized value in variable error
+ - rtw88: Fix an error code in rtw_debugfs_set_rsvd_page()
+ - mt7601u: fix always true expression
+ - [powerpc*] KVM: PPC: Book3S HV P9: Restore host CTRL SPR after guest exit
+ - ovl: invalidate readdir cache on changes to dir with origin
+ - RDMA/qedr: Fix error return code in qedr_iw_connect()
+ - [amd64] IB/hfi1: Fix error return code in parse_platform_config()
+ - cxgb4: Fix unintentional sign extension issues
+ - [arm64] net: thunderx: Fix unintentional sign extension issue
+ - RDMA/srpt: Fix error return code in srpt_cm_req_recv()
+ - [arm64,armhf] i2c: imx: fix reference leak when pm_runtime_get_sync fails
+ - [armhf] i2c: omap: fix reference leak when pm_runtime_get_sync fails
+ - [armhf] i2c: stm32f7: fix reference leak when pm_runtime_get_sync fails
+ - [powerpc*] xive: Drop check on irq_data in xive_core_debug_show()
+ - [powerpc*] xive: Fix xmon command "dxi"
+ - net/packet: make packet_fanout.arr size configurable up to 64K
+ - net/packet: remove data races in fanout operations
+ - [amd64] drm/i915/gvt: Fix error code in intel_gvt_init_device()
+ - [amd64] iommu/amd: Put newline after closing bracket in warning
+ - [mips64el,mipsel] pci-legacy: stop using of_pci_range_to_resource
+ - [powerpc*] pseries: extract host bridge from pci_bus prior to bus removal
+ - [powerpc*] smp: Reintroduce cpu_core_mask
+ - [x86] KVM: dump_vmcs should not assume GUEST_IA32_EFER is valid
+ - rtlwifi: 8821ae: upgrade PHY and RF parameters
+ - [arm64,armhf] wlcore: fix overlapping snprintf arguments in debugfs
+ - mwl8k: Fix a double Free in mwl8k_probe_hw
+ - netfilter: nft_payload: fix C-VLAN offload support
+ - netfilter: nftables_offload: VLAN id needs host byteorder in flow
+ dissector
+ - netfilter: nftables_offload: special ethertype handling for VLAN
+ - [x86] vsock/vmci: log once the failed queue pair allocation
+ - gro: fix napi_gro_frags() Fast GRO breakage due to IP alignment check
+ - RDMA/cxgb4: add missing qpid increment
+ - RDMA/i40iw: Fix error unwinding when i40iw_hmc_sd_one fails
+ - ALSA: usb: midi: don't return -ENOMEM when usb_urb_ep_type_check fails
+ - sfc: ef10: fix TX queue lookup in TX event handling
+ - vsock/virtio: free queued packets when closing socket
+ - [armhf] net: davinci_emac: Fix incorrect masking of tx and rx error
+ channel
+ - [amd64] crypto: ccp: Detect and reject "invalid" addresses destined for
+ PSP
+ - nfp: devlink: initialize the devlink port attribute "lanes"
+ - net: stmmac: fix TSO and TBS feature enabling during driver open
+ - RDMA/rxe: Fix a bug in rxe_fill_ip_info()
+ - RDMA/core: Add CM to restrack after successful attachment to a device
+ - [powerpc*] 64: Fix the definition of the fixmap area
+ - ath9k: Fix error check in ath9k_hw_read_revisions() for PCI devices
+ - ath10k: Fix a use after free in ath10k_htc_send_bundle
+ - ath10k: Fix ath10k_wmi_tlv_op_pull_peer_stats_info() unlock without lock
+ - wlcore: Fix buffer overrun by snprintf due to incorrect buffer size
+ - [powerpc*] perf: Fix the threshold event selection for memory events in
+ power10
+ - net: phy: marvell: fix m88e1011_set_downshift
+ - net: phy: marvell: fix m88e1111_set_downshift
+ - bnxt_en: fix ternary sign extension bug in bnxt_show_temp()
+ - net: geneve: modify IP header check in geneve6_xmit_skb and
+ geneve_xmit_skb
+ - bnxt_en: Fix RX consumer index logic in the error path.
+ - [x86] KVM: VMX: Intercept FS/GS_BASE MSR accesses for 32-bit KVM
+ - [arm64] net:emac/emac-mac: Fix a use after free in emac_mac_tx_buf_send
+ - bpf: Fix propagation of 32 bit unsigned bounds from 64 bit bounds
+ - net: bridge: mcast: fix broken length + header check for MRDv6 Adv.
+ - net:nfc:digital: Fix a double free in digital_tg_recv_dep_req
+ - perf tools: Change fields type in perf_record_time_conv
+ - perf jit: Let convert_timestamp() to be backwards-compatible
+ - perf session: Add swap operation for event TIME_CONV
+ - mm/sl?b.c: remove ctor argument from kmem_cache_flags
+ - mm: memcontrol: slab: fix obtain a reference to a freeing memcg
+ - mm/sparse: add the missing sparse_buffer_fini() in error branch
+ - mm/memory-failure: unnecessary amount of unmapping
+ - afs: Fix speculative status fetches
+ - bpf: Fix alu32 const subreg bound tracking on bitwise operations
+ (CVE-2021-3490)
+ - bpf, ringbuf: Deny reserve of buffers larger than ringbuf (CVE-2021-3489)
+ - bpf: Prevent writable memory-mapping of read-only ringbuf pages
+ - [arm64] Remove arm64_dma32_phys_limit and its uses
+ - net: Only allow init netns to set default tcp cong to a restricted algo
+ - smp: Fix smp_call_function_single_async prototype
+ - Revert "net/sctp: fix race condition in sctp_destroy_sock"
+ - sctp: delay auto_asconf init until binding the first addr (CVE-2021-23133)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.38
+ - [arm64,x86] tpm: fix error return code in tpm2_get_cc_attrs_tbl()
+ - [arm64,x86] tpm, tpm_tis: Extend locality handling to TPM2 in
+ tpm_tis_gen_interrupt()
+ - [arm64,x86] tpm, tpm_tis: Reserve locality in tpm_tis_resume()
+ - [x86] KVM: x86/mmu: Remove the defunct update_pte() paging hook
+ - [x86] KVM/VMX: Invoke NMI non-IST entry instead of IST entry
+ - ACPI: PM: Add ACPI ID of Alder Lake Fan
+ - PM: runtime: Fix unpaired parent child_count for force_resume
+ - [x86] cpufreq: intel_pstate: Use HWP if enabled by platform firmware
+ - kvm: Cap halt polling at kvm->max_halt_poll_ns
+ - ath11k: fix thermal temperature read
+ - fs: dlm: fix debugfs dump
+ - fs: dlm: add errno handling to check callback
+ - fs: dlm: check on minimum msglen size
+ - fs: dlm: flush swork on shutdown
+ - tipc: convert dest node's address to network order
+ - [x86] ASoC: Intel: bytcr_rt5640: Enable jack-detect support on Asus
+ T100TAF
+ - net/mlx5e: Use net_prefetchw instead of prefetchw in MPWQE TX datapath
+ - [arm64] net: stmmac: Set FIFO sizes for ipq806x
+ - Bluetooth: Fix incorrect status handling in LE PHY UPDATE event
+ - i2c: bail out early when RDWR parameters are wrong
+ - ALSA: hdsp: don't disable if not enabled
+ - ALSA: hdspm: don't disable if not enabled
+ - ALSA: rme9652: don't disable if not enabled
+ - ALSA: bebob: enable to deliver MIDI messages for multiple ports
+ - Bluetooth: Set CONF_NOT_COMPLETE as l2cap_chan default
+ - Bluetooth: initialize skb_queue_head at l2cap_chan_create()
+ - net/sched: cls_flower: use ntohs for struct flow_dissector_key_ports
+ - net: bridge: when suppression is enabled exclude RARP packets
+ - Bluetooth: check for zapped sk before connecting
+ - [powerpc] 32: Statically initialise first emergency context
+ - [arm64] net: hns3: remediate a potential overflow risk of bd_num_list
+ - [arm64] net: hns3: add handling for xmit skb with recursive fraglist
+ - ip6_vti: proper dev_{hold|put} in ndo_[un]init methods
+ - [x86] ASoC: Intel: bytcr_rt5640: Add quirk for the Chuwi Hi8 tablet
+ - ice: handle increasing Tx or Rx ring sizes
+ - Bluetooth: btusb: Enable quirk boolean flag for Mediatek Chip.
+ - [x86] ASoC: rt5670: Add a quirk for the Dell Venue 10 Pro 5055
+ - i2c: Add I2C_AQ_NO_REP_START adapter quirk
+ - [mips64el,mipsel] MIPS: Loongson64: Use _CACHE_UNCACHED instead of
+ _CACHE_UNCACHED_ACCELERATED
+ - [amd64] IB/hfi1: Correct oversized ring allocation
+ - mac80211: clear the beacon's CRC after channel switch
+ - [armhf] pinctrl: samsung: use 'int' for register masks in Exynos
+ - rtw88: 8822c: add LC calibration for RTL8822C
+ - mt76: mt76x0: disable GTK offloading
+ - fuse: invalidate attrs when page writeback completes
+ - virtiofs: fix userns
+ - cuse: prevent clone
+ - iwlwifi: pcie: make cfg vs. trans_cfg more robust
+ - [powerpc*] mm: Add cond_resched() while removing hpte mappings
+ - Revert "iommu/amd: Fix performance counter initialization"
+ - [amd64] iommu/amd: Remove performance counter pre-initialization test
+ - ALSA: hda/realtek: Add quirk for Lenovo Ideapad S740
+ - [x86] ASoC: Intel: sof_sdw: add quirk for new ADL-P Rvp
+ - ALSA: hda/hdmi: fix race in handling acomp ELD notification at resume
+ - sctp: Fix out-of-bounds warning in sctp_process_asconf_param()
+ - flow_dissector: Fix out-of-bounds warning in __skb_flow_bpf_to_target()
+ - [powerpc*] smp: Set numa node before updating mask
+ - [x86] ASoC: rt286: Generalize support for ALC3263 codec
+ - ethtool: ioctl: Fix out-of-bounds warning in
+ store_link_ksettings_for_user()
+ - net: sched: tapr: prevent cycle_time == 0 in parse_taprio_schedule
+ - [powerpc*] pseries: Stop calling printk in rtas_stop_self()
+ - wl3501_cs: Fix out-of-bounds warnings in wl3501_send_pkt
+ - wl3501_cs: Fix out-of-bounds warnings in wl3501_mgmt_join
+ - [powerpc*] iommu: Annotate nested lock for lockdep
+ - iavf: remove duplicate free resources calls
+ - kbuild: generate Module.symvers only when vmlinux exists
+ - bnxt_en: Add PCI IDs for Hyper-V VF devices.
+ - [ia64] module: fix symbolizer crash on fdescr
+ - watchdog: rename __touch_watchdog() to a better descriptive name
+ - watchdog: explicitly update timestamp when reporting softlockup
+ - watchdog/softlockup: remove logic that tried to prevent repeated reports
+ - watchdog: fix barriers when printing backtraces from all CPUs
+ - [x86] ASoC: rt286: Make RT286_SET_GPIO_* readable and writable
+ - thermal: thermal_of: Fix error return code of
+ thermal_of_populate_bind_params()
+ - f2fs: move ioctl interface definitions to separated file
+ - f2fs: fix compat F2FS_IOC_{MOVE,GARBAGE_COLLECT}_RANGE
+ - f2fs: fix to allow migrating fully valid segment
+ - f2fs: fix panic during f2fs_resize_fs()
+ - f2fs: fix a redundant call to f2fs_balance_fs if an error occurs
+ - PCI: Release OF node in pci_scan_device()'s error path
+ - [armel,armhf] 9064/1: hw_breakpoint: Do not directly check the event's
+ overflow_handler hook
+ - f2fs: fix to align to section for fallocate() on pinned file
+ - f2fs: fix to update last i_size if fallocate partially succeeds
+ - f2fs: fix to avoid touching checkpointed data in get_victim()
+ - f2fs: fix to cover __allocate_new_section() with curseg_lock
+ - f2fs: Fix a hungtask problem in atomic write
+ - f2fs: fix to avoid accessing invalid fio in f2fs_allocate_data_block()
+ - [arm64] rpmsg: qcom_glink_native: fix error return code of
+ qcom_glink_rx_data()
+ - NFS: nfs4_bitmask_adjust() must not change the server global bitmasks
+ - NFS: Fix attribute bitmask in _nfs42_proc_fallocate()
+ - NFSv4.2: Always flush out writes in nfs42_proc_fallocate()
+ - NFS: Deal correctly with attribute generation counter overflow
+ - pNFS/flexfiles: fix incorrect size check in decode_nfs_fh()
+ - NFSv4.2 fix handling of sr_eof in SEEK's reply
+ - SUNRPC: Move fault injection call sites
+ - SUNRPC: Remove trace_xprt_transmit_queued
+ - SUNRPC: Handle major timeout in xprt_adjust_timeout()
+ - [arm64] thermal/drivers/tsens: Fix missing put_device error
+ - NFSv4.x: Don't return NFS4ERR_NOMATCHING_LAYOUT if we're unmounting
+ - nfsd: ensure new clients break delegations
+ - SUNRPC: fix ternary sign expansion bug in tracing
+ - xprtrdma: Avoid Receive Queue wrapping
+ - xprtrdma: Fix cwnd update ordering
+ - xprtrdma: rpcrdma_mr_pop() already does list_del_init()
+ - swiotlb: Fix the type of index
+ - ceph: fix inode leak on getattr error in __fh_to_dentry
+ - scsi: qla2xxx: Prevent PRLI in target mode
+ - scsi: ufs: core: Do not put UFS power into LPM if link is broken
+ - scsi: ufs: core: Cancel rpm_dev_flush_recheck_work during system suspend
+ - scsi: ufs: core: Narrow down fast path in system suspend path
+ - rtc: ds1307: Fix wday settings for rx8130
+ - [arm64] net: hns3: fix incorrect configuration for igu_egu_hw_err
+ - [arm64] net: hns3: initialize the message content in hclge_get_link_mode()
+ - [arm64] net: hns3: add check for HNS3_NIC_STATE_INITED in
+ hns3_reset_notify_up_enet()
+ - [arm64] net: hns3: fix for vxlan gpe tx checksum bug
+ - [arm64] net: hns3: use netif_tx_disable to stop the transmit queue
+ - [arm64] net: hns3: disable phy loopback setting in hclge_mac_start_phy
+ - sctp: do asoc update earlier in sctp_sf_do_dupcook_a
+ - [riscv64] Fix error code returned by riscv_hartid_to_cpuid()
+ - sunrpc: Fix misplaced barrier in call_decode
+ - ethernet:enic: Fix a use after free bug in enic_hard_start_xmit
+ - sctp: fix a SCTP_MIB_CURRESTAB leak in sctp_sf_do_dupcook_b
+ - netfilter: xt_SECMARK: add new revision to fix structure layout
+ - net: stmmac: Clear receive all(RA) bit when promiscuous mode is off
+ - drm/radeon: Fix off-by-one power_state index heap overwrite
+ - drm/radeon: Avoid power table parsing memory leaks
+ - [arm64] entry: factor irq triage logic into macros
+ - [arm64] entry: always set GIC_PRIO_PSR_I_SET during entry
+ - khugepaged: fix wrong result value for
+ trace_mm_collapse_huge_page_isolate()
+ - mm/hugeltb: handle the error case in hugetlb_fix_reserve_counts()
+ - mm/migrate.c: fix potential indeterminate pte entry in
+ migrate_vma_insert_page()
+ - ksm: fix potential missing rmap_item for stable_node
+ - mm/gup: check every subpage of a compound page during isolation
+ - mm/gup: return an error on migration failure
+ - mm/gup: check for isolation errors
+ - ethtool: fix missing NLM_F_MULTI flag when dumping
+ - net: fix nla_strcmp to handle more then one trailing null character
+ - smc: disallow TCP_ULP in smc_setsockopt()
+ - netfilter: nfnetlink_osf: Fix a missing skb_header_pointer() NULL check
+ - netfilter: nftables: Fix a memleak from userdata error path in new objects
+ - sched: Fix out-of-bound access in uclamp
+ - sched/fair: Fix unfairness caused by missing load decay
+ - fs/proc/generic.c: fix incorrect pde_is_permanent check
+ - kernel: kexec_file: fix error return code of
+ kexec_calculate_store_digests()
+ - kernel/resource: make walk_system_ram_res() find all busy
+ IORESOURCE_SYSTEM_RAM resources
+ - kernel/resource: make walk_mem_res() find all busy IORESOURCE_MEM
+ resources
+ - netfilter: nftables: avoid overflows in nft_hash_buckets()
+ - i40e: fix broken XDP support
+ - i40e: Fix use-after-free in i40e_client_subtask()
+ - i40e: fix the restart auto-negotiation after FEC modified
+ - i40e: Fix PHY type identifiers for 2.5G and 5G adapters
+ - f2fs: avoid unneeded data copy in f2fs_ioc_move_range()
+ - [powerpc*] 64s: Fix crashes when toggling stf barrier
+ - [powerpc*] 64s: Fix crashes when toggling entry flush barrier
+ - hfsplus: prevent corruption in shrinking truncate
+ - squashfs: fix divide error in calculate_skip()
+ - userfaultfd: release page in error path to avoid BUG_ON
+ - mm/hugetlb: fix F_SEAL_FUTURE_WRITE
+ - blk-iocost: fix weight updates of inner active iocgs
+ - [arm64] mte: initialize RGSR_EL1.SEED in __cpu_setup
+ - [arm64] Fix race condition on PG_dcache_clean in __sync_icache_dcache()
+ - btrfs: fix race leading to unpersisted data and metadata on fsync
+ - drm/radeon/dpm: Disable sclk switching on Oland when two 4K 60Hz monitors
+ are connected
+ - [x86] drm/i915: Avoid div-by-zero on gen2
+ - kvm: exit halt polling on need_resched() as well
+ - [x86] KVM: LAPIC: Accurately guarantee busy wait for timer to expire when
+ using hv_timer
+ - [arm64] drm/msm/dp: initialize audio_comp when audio starts
+ - [x86] KVM: x86: Cancel pvclock_gtod_work on module removal
+ - [x86] KVM: x86: Prevent deadlock against tk_core.seq
+ - dax: Add an enum for specifying dax wakup mode
+ - dax: Add a wakeup mode parameter to put_unlocked_entry()
+ - dax: Wake up all waiters after invalidating dax entry
+ - [amd64] xen/unpopulated-alloc: consolidate pgmap manipulation
+ - [amd64] xen/unpopulated-alloc: fix error return code in fill_list()
+ - [arm64,armhf] usb: dwc3: gadget: Free gadget structure only after freeing
+ endpoints
+ - iio: light: gp2ap002: Fix rumtime PM imbalance on error
+ - iio: proximity: pulsedlight: Fix rumtime PM imbalance on error
+ - [armhf] hwmon: (occ) Fix poll rate limiting
+ - ACPI: scan: Fix a memory leak in an error handling path
+ - kyber: fix out of bounds access when preempted
+ - nvmet: add lba to sect conversion helpers
+ - nvmet: fix inline bio check for bdev-ns
+ - nvmet-rdma: Fix NULL deref when SEND is completed with error
+ - f2fs: compress: fix to free compress page correctly
+ - f2fs: compress: fix race condition of overwrite vs truncate
+ - f2fs: compress: fix to assign cc.cluster_idx correctly
+ - nbd: Fix NULL pointer in flush_workqueue
+ - blk-mq: plug request for shared sbitmap
+ - blk-mq: Swap two calls in blk_mq_exit_queue()
+ - [armhf] usb: dwc3: omap: improve extcon initialization
+ - [arm64] usb: dwc3: pci: Enable usb2-gadget-lpm-disable for Intel
+ Merrifield
+ - usb: xhci: Increase timeout for HC halt
+ - [arm*] usb: dwc2: Fix gadget DMA unmap direction
+ - usb: core: hub: fix race condition about TRSMRCY of resume
+ - [arm64,armhf] usb: dwc3: gadget: Enable suspend events
+ - [arm64,armhf] usb: dwc3: gadget: Return success always for kick transfer
+ in ep queue
+ - [x86] usb: typec: ucsi: Retrieve all the PDOs instead of just the first 4
+ - [x86] usb: typec: ucsi: Put fwnode in any case during ->probe()
+ - xhci-pci: Allow host runtime PM as default for Intel Alder Lake xHCI
+ - xhci: Do not use GFP_KERNEL in (potentially) atomic context
+ - xhci: Add reset resume quirk for AMD xhci controller.
+ - iio: gyro: mpu3050: Fix reported temperature value
+ - iio: tsl2583: Fix division by a zero lux_val
+ - cdc-wdm: untangle a circular dependency between callback and softint
+ - xen/gntdev: fix gntdev_mmap() error exit path
+ - [x86] KVM: Emulate RDPID only if RDTSCP is supported
+ - [x86] KVM: Move RDPID emulation intercept to its own enum
+ - [x86] KVM: nVMX: Always make an attempt to map eVMCS after migration
+ - [x86] KVM: VMX: Do not advertise RDPID if ENABLE_RDTSCP control is
+ unsupported
+ - [x86] KVM: VMX: Disable preemption when probing user return MSRs
+ - Revert "iommu/vt-d: Remove WO permissions on second-level paging entries"
+ - Revert "iommu/vt-d: Preset Access/Dirty bits for IOVA over FL"
+ - iommu/vt-d: Preset Access/Dirty bits for IOVA over FL
+ - iommu/vt-d: Remove WO permissions on second-level paging entries
+ - mm: fix struct page layout on 32-bit systems
+ - [mips*] Reinstate platform `__div64_32' handler
+ - [mips*] Avoid DIVU in `__div64_32' is result would be zero
+ - [mips*] Avoid handcoded DIVU in `__div64_32' altogether
+ - [armhf] clocksource/drivers/timer-ti-dm: Prepare to handle dra7 timer wrap
+ issue
+ - [armhf] clocksource/drivers/timer-ti-dm: Handle dra7 timer wrap errata
+ i940
+ - [armel,armhf] 9011/1: centralize phys-to-virt conversion of DT/ATAGS
+ address
+ - [armel,armhf] 9012/1: move device tree mapping out of linear region
+ - [armel,armhf] 9020/1: mm: use correct section size macro to describe the
+ FDT virtual address
+ - [armel,armhf] 9027/1: head.S: explicitly map DT even if it lives in the
+ first physical section
+ - [x86] usb: typec: tcpm: Fix error while calculating PPS out values
+ - kobject_uevent: remove warning in init_uevent_argv()
+ - [x86] drm/i915/gt: Fix a double free in gen8_preallocate_top_level_pdp
+ - [x86] drm/i915: Read C0DRB3/C1DRB3 as 16 bits again
+ - [x86] drm/i915/overlay: Fix active retire callback alignment
+ - [x86] drm/i915: Fix crash in auto_retire
+ - debugfs: Make debugfs_allow RO after init
+ - ext4: fix debug format string warning
+ - nvme: do not try to reconfigure APST when the controller is not live
+
+ [ Vincent Blut ]
+ * [x86] sound/soc/intel: Enable SND_SOC_INTEL_CATPT as module
+ (Closes: #986822)
+ * [x86] sound/soc/intel/boards: Enable SND_SOC_INTEL_BDW_RT5650_MACH as
+ module
+ * drivers/input/rmi4: Enable RMI4_F3A (Closes: #986848)
+ * [armhf] drivers/gpio: Enable GPIO_MXC as module (Closes: #987019)
+ * [x86] drivers/misc/mei: Enable INTEL_MEI_TXE, INTEL_MEI_HDCP as modules
+ (Closes: #987281)
+
+ [ Uwe Kleine-König ]
+ * [arm64] Enable more options for NXP's i.MX8 (Closes: #985862)
+
+ [ Salvatore Bonaccorso ]
+ * vfs: move cap_convert_nscap() call into vfs_setxattr() (CVE-2021-3493)
+ * Refresh "Makefile: Do not check for libelf when building OOT module"
+ * Bump ABI to 7
+ * Refresh "tools/include/uapi: Fix <asm/errno.h>"
+ * [rt] Update to 5.10.35-rt39
+ * [rt] Refresh "powerpc/mm/highmem: Switch to generic kmap atomic"
+ * [arm64] udeb: Include mdio module for RPi4 ethernet in installer
+ (Closes: #985956)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Disable USB type-C DisplayPort in pinebook pro device-tree.
+ * [arm64] Enable TYPEC_FUSB302, SND_SOC_ES8316, TYPEC and TYPEC_TCPM as
+ modules. (Closes: #987638)
+
+ [ Michal Simek ]
+ * [arm64] Enable clock driver for Xilinx ZynqMP SoC
+
+ [ Valentin Vidic ]
+ * [s390x] udeb: Include standard scsi-modules containing the virtio_blk
+ module (Closes: #988005)
+
+ [ Ben Hutchings ]
+ * kbuild: Abort build if SUBDIRS used (Closes: #987575)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 20 May 2021 07:47:35 +0200
+
+linux (5.10.28-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.27
+ - mm/memcg: rename mem_cgroup_split_huge_fixup to split_page_memcg and add
+ nr_pages argument
+ - mm/memcg: set memcg when splitting page
+ - mt76: fix tx skb error handling in mt76_dma_tx_queue_skb
+ - net: stmmac: fix dma physical address of descriptor when display ring
+ - [arm64,armhf] net: fec: ptp: avoid register access when ipg clock is
+ disabled
+ - [powerpc*] 4xx: Fix build errors from mfdcr()
+ - atm: eni: dont release is never initialized
+ - atm: lanai: dont run lanai_dev_close if not open
+ - Revert "r8152: adjust the settings about MAC clock speed down for RTL8153"
+ - [x86] ALSA: hda: ignore invalid NHLT table
+ - ixgbe: Fix memleak in ixgbe_configure_clsu32
+ - blk-cgroup: Fix the recursive blkg rwstat
+ - net: tehuti: fix error return code in bdx_probe()
+ - net: intel: iavf: fix error return code of iavf_init_get_resources()
+ - sun/niu: fix wrong RXMAC_BC_FRM_CNT_COUNT count
+ - gianfar: fix jumbo packets+napi+rx overrun crash (CVE-2021-29264)
+ - cifs: ask for more credit on async read/write code paths
+ - gfs2: fix use-after-free in trans_drain
+ - [arm64,armhf] cpufreq: blacklist Arm Vexpress platforms in
+ cpufreq-dt-platdev
+ - gpiolib: acpi: Add missing IRQF_ONESHOT
+ - nfs: fix PNFS_FLEXFILE_LAYOUT Kconfig default
+ - NFS: Correct size calculation for create reply length
+ - [arm64] net: hisilicon: hns: fix error return code of
+ hns_nic_clear_all_rx_fetch()
+ - [arm64] net: enetc: set MAC RX FIFO to recommended value
+ - atm: uPD98402: fix incorrect allocation
+ - atm: idt77252: fix null-ptr-dereference
+ - cifs: change noisy error message to FYI
+ - kbuild: add image_name to no-sync-config-targets
+ - umem: fix error return code in mm_pci_probe()
+ - [sparc64] Fix opcode filtering in handling of no fault loads
+ - u64_stats,lockdep: Fix u64_stats_init() vs lockdep
+ - block: Fix REQ_OP_ZONE_RESET_ALL handling
+ - drm/amdgpu: fb BO should be ttm_bo_type_device
+ - drm/radeon: fix AGP dependency
+ - nvme: simplify error logic in nvme_validate_ns()
+ - nvme: add NVME_REQ_CANCELLED flag in nvme_cancel_request()
+ - nvme-fc: set NVME_REQ_CANCELLED in nvme_fc_terminate_exchange()
+ - nvme-fc: return NVME_SC_HOST_ABORTED_CMD when a command has been aborted
+ - nvme-core: check ctrl css before setting up zns
+ - nvme-rdma: Fix a use after free in nvmet_rdma_write_data_done
+ - nvme-pci: add the DISABLE_WRITE_ZEROES quirk for a Samsung PM1725a
+ - nfs: we don't support removing system.nfs4_acl
+ - block: Suppress uevent for hidden device when removed
+ - mm/fork: clear PASID for new mm
+ - [ia64] fix ia64_syscall_get_set_arguments() for break-based syscalls
+ - [ia64] fix ptrace(PTRACE_SYSCALL_INFO_EXIT) sign
+ - static_call: Pull some static_call declarations to the type headers
+ - [x86] static_call: Allow module use without exposing static_call_key
+ - [x86] static_call: Fix the module key fixup
+ - [x86] static_call: Fix static_call_set_init()
+ - [x86] KVM: Protect userspace MSR filter with SRCU, and set atomically-ish
+ - btrfs: fix sleep while in non-sleep context during qgroup removal
+ - selinux: don't log MAC_POLICY_LOAD record on failed policy load
+ - selinux: fix variable scope issue in live sidtab conversion
+ - [arm64] netsec: restore phy power state after controller reset
+ - [x86] platform/x86: intel-vbtn: Stop reporting SW_DOCK events
+ - psample: Fix user API breakage
+ - z3fold: prevent reclaim/free race for headless pages
+ - squashfs: fix inode lookup sanity checks
+ - squashfs: fix xattr id and id lookup sanity checks
+ - hugetlb_cgroup: fix imbalanced css_get and css_put pair for shared
+ mappings
+ - [x86] ACPI: video: Add missing callback back for Sony VPCEH3U1E
+ - ACPICA: Always create namespace nodes using acpi_ns_create_node()
+ - [arm64] stacktrace: don't trace arch_stack_walk()
+ - integrity: double check iint_cache was initialized
+ - [armhf] drm/etnaviv: Use FOLL_FORCE for userptr
+ - drm/amdgpu: Add additional Sienna Cichlid PCI ID
+ - [x86] drm/i915: Fix the GT fence revocation runtime PM logic
+ - dm verity: fix DM_VERITY_OPTS_MAX value
+ - dm ioctl: fix out of bounds array access when no devices
+ - [armhf] bus: omap_l3_noc: mark l3 irqs as IRQF_NO_THREAD
+ - [armhf] OMAP2+: Fix smartreflex init regression after dropping legacy data
+ - [armhf] soc: ti: omap-prm: Fix occasional abort on reset deassert for dra7
+ iva
+ - veth: Store queue_mapping independently of XDP prog presence
+ - bpf: Change inode_storage's lookup_elem return value from NULL to -EBADF
+ - net/mlx5e: RX, Mind the MPWQE gaps when calculating offsets
+ - net/mlx5e: When changing XDP program without reset, take refs for XSK RQs
+ - net/mlx5e: Don't match on Geneve options in case option masks are all zero
+ - ipv6: fix suspecious RCU usage warning
+ - drop_monitor: Perform cleanup upon probe registration failure
+ - macvlan: macvlan_count_rx() needs to be aware of preemption
+ - net: sched: validate stab values
+ - [armhf] net: dsa: bcm_sf2: Qualify phydev->dev_flags based on port
+ - igc: reinit_locked() should be called with rtnl_lock
+ - igc: Fix Pause Frame Advertising
+ - igc: Fix Supported Pause Frame Link Setting
+ - igc: Fix igc_ptp_rx_pktstamp()
+ - e1000e: add rtnl_lock() to e1000_reset_task
+ - e1000e: Fix error handling in e1000_set_d0_lplu_state_82571
+ - net/qlcnic: Fix a use after free in qlcnic_83xx_get_minidump_template
+ - net: phy: broadcom: Add power down exit reset state delay
+ - [armhf] ftgmac100: Restart MAC HW once
+ - net: qrtr: fix a kernel-infoleak in qrtr_recvmsg() (CVE-2021-29647)
+ - flow_dissector: fix byteorder of dissected ICMP ID
+ - netfilter: ctnetlink: fix dump of the expect mask attribute
+ - net: phylink: Fix phylink_err() function name error in
+ phylink_major_config
+ - tipc: better validate user input in tipc_nl_retrieve_key()
+ (CVE-2021-29646)
+ - tcp: relookup sock for RST+ACK packets handled by obsolete req sock
+ - can: isotp: isotp_setsockopt(): only allow to set low level TX flags for
+ CAN-FD
+ - can: isotp: TX-path: ensure that CAN frame flags are initialized
+ - can: peak_usb: add forgotten supported devices
+ - [arm64,armhf] can: flexcan: flexcan_chip_freeze(): fix chip freeze for
+ missing bitrate
+ - can: c_can_pci: c_can_pci_remove(): fix use-after-free
+ - [armhf] can: c_can: move runtime PM enable/disable to c_can_platform
+ - mac80211: fix rate mask reset
+ - mac80211: Allow HE operation to be longer than expected.
+ - nfp: flower: fix unsupported pre_tunnel flows
+ - nfp: flower: add ipv6 bit to pre_tunnel control message
+ - nfp: flower: fix pre_tun mask id allocation
+ - ftrace: Fix modify_ftrace_direct.
+ - [arm64] drm/msm/dsi: fix check-before-set in the 7nm dsi_pll code
+ - net/sched: cls_flower: fix only mask bit check in the validate_ct_state
+ - netfilter: nftables: report EOPNOTSUPP on unsupported flowtable flags
+ - netfilter: nftables: allow to update flowtable flags
+ - netfilter: flowtable: Make sure GC works periodically in idle system
+ - [armhf] dts: imx6ull: fix ubi filesystem mount failed
+ - ipv6: weaken the v4mapped source check
+ - net: check all name nodes in __dev_alloc_name
+ - net: cdc-phonet: fix data-interface release on probe failure
+ - igb: check timestamp validity
+ - r8152: limit the RX buffer size of RTL8153A for USB 2.0
+ - [arm64,armhf] net: stmmac: dwmac-sun8i: Provide TX and RX fifo sizes
+ - selinux: vsock: Set SID for socket returned by accept()
+ - bpf: Fix umd memory leak in copy_process() (CVE-2021-29649)
+ - can: isotp: tx-path: zero initialize outgoing CAN frames
+ - [arm64] drm/msm: fix shutdown hook in case GPU components failed to bind
+ - [arm64] drm/msm: Fix suspend/resume on i.MX5
+ - [arm64] kdump: update ppos when reading elfcorehdr
+ - PM: runtime: Defer suspending suppliers
+ - net/mlx5: Add back multicast stats for uplink representor
+ - net/mlx5e: Allow to match on MPLS parameters only for MPLS over UDP
+ - net/mlx5e: Offload tuple rewrite for non-CT flows
+ - net/mlx5e: Fix error path for ethtool set-priv-flag
+ - PM: EM: postpone creating the debugfs dir till fs_initcall
+ - net: bridge: don't notify switchdev for local FDB addresses
+ - [amd64] xen/x86: make XEN_BALLOON_MEMORY_HOTPLUG_LIMIT depend on
+ MEMORY_HOTPLUG
+ - RDMA/cxgb4: Fix adapter LE hash errors while destroying ipv6 listening
+ server
+ - bpf: Don't do bpf_cgroup_storage_set() for kuprobe/tp programs
+ - net: Consolidate common blackhole dst ops
+ - net, bpf: Fix ip6ip6 crash with collect_md populated skbs
+ - igb: avoid premature Rx buffer reuse
+ - net: phy: introduce phydev->port
+ - net: phy: broadcom: Avoid forward for bcm54xx_config_clock_delay()
+ - net: phy: broadcom: Set proper 1000BaseX/SGMII interface mode for
+ BCM54616S
+ - net: phy: broadcom: Fix RGMII delays for BCM50160 and BCM50610M
+ - Revert "netfilter: x_tables: Switch synchronization to RCU"
+ - netfilter: x_tables: Use correct memory barriers. (CVE-2021-29650)
+ - dm table: Fix zoned model check and zone sectors check
+ - mm/mmu_notifiers: ensure range_end() is paired with range_start()
+ - Revert "netfilter: x_tables: Update remaining dereference to RCU"
+ - ACPI: scan: Rearrange memory allocation in acpi_device_add()
+ - ACPI: scan: Use unique number for instance_no
+ - io_uring: fix provide_buffers sign extension
+ - block: recalculate segment count for multi-segment discards correctly
+ - scsi: Revert "qla2xxx: Make sure that aborted commands are freed"
+ - scsi: qedi: Fix error return code of qedi_alloc_global_queues()
+ - scsi: mpt3sas: Fix error return code of mpt3sas_base_attach()
+ - smb3: fix cached file size problems in duplicate extents (reflink)
+ - cifs: Adjust key sizes and key generation routines for AES256 encryption
+ - locking/mutex: Fix non debug version of mutex_lock_io_nested()
+ - mm/memcg: fix 5.10 backport of splitting page memcg
+ - fs/cachefiles: Remove wait_bit_key layout dependency
+ - can: dev: Move device back to init netns on owning netns delete
+ - r8169: fix DMA being used after buffer free if WoL is enabled
+ - [armhf] net: dsa: b53: VLAN filtering is global to all users
+ - mac80211: fix double free in ibss_leave
+ - ext4: add reclaim checks to xattr code
+ - fs/ext4: fix integer overflow in s_log_groups_per_flex
+ - [amd64] Revert "xen: fix p2m size in dom0 for disabled memory hotplug
+ case"
+ - Revert "net: bonding: fix error return code of bond_neigh_init()"
+ - nvme: fix the nsid value to print in nvme_validate_or_alloc_ns
+ - can: peak_usb: Revert "can: peak_usb: add forgotten supported devices"
+ - xen-blkback: don't leak persistent grants from xen_blkbk_map()
+ (CVE-2021-28688)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.28
+ - [arm64] mm: correct the inside linear map range during hotplug check
+ - bpf: Fix fexit trampoline.
+ - virtiofs: Fail dax mount if device does not support it
+ - ext4: shrink race window in ext4_should_retry_alloc()
+ - ext4: fix bh ref count on error paths
+ - rpc: fix NULL dereference on kmalloc failure
+ - iomap: Fix negative assignment to unsigned sis->pages in
+ iomap_swapfile_activate
+ - [x86] ASoC: rt1015: fix i2c communication error
+ - ASoC: rt5640: Fix dac- and adc- vol-tlv values being off by a factor of 10
+ - [x86] ASoC: rt5651: Fix dac- and adc- vol-tlv values being off by a factor
+ of 10
+ - [armhf] ASoC: sgtl5000: set DAP_AVC_CTRL register to correct default value
+ on probe
+ - [x86] ASoC: es8316: Simplify adc_pga_gain_tlv table
+ - ASoC: soc-core: Prevent warning if no DMI table is present
+ - NFSD: fix error handling in NFSv4.0 callbacks
+ - kernel: freezer should treat PF_IO_WORKER like PF_KTHREAD for freezing
+ - vhost: Fix vhost_vq_reset()
+ - io_uring: fix ->flags races by linked timeouts
+ - scsi: st: Fix a use after free in st_open()
+ - scsi: qla2xxx: Fix broken #endif placement
+ - [x86] staging: comedi: cb_pcidas: fix request_irq() warn
+ - [x86] staging: comedi: cb_pcidas64: fix request_irq() warn
+ - ASoC: rt711: add snd_soc_component remove callback
+ - thermal/core: Add NULL pointer check before using cooling device stats
+ - locking/ww_mutex: Simplify use_ww_ctx & ww_ctx handling
+ - locking/ww_mutex: Fix acquire/release imbalance in
+ ww_acquire_init()/ww_acquire_fini()
+ - nvmet-tcp: fix kmap leak when data digest in use
+ - io_uring: imply MSG_NOSIGNAL for send[msg]()/recv[msg]() calls
+ - [x86] static_call: Align static_call_is_init() patching condition
+ - ext4: do not iput inode under running transaction in ext4_rename()
+ - io_uring: call req_set_fail_links() on short send[msg]()/recv[msg]() with
+ MSG_WAITALL
+ - [arm64,armhf] net: mvpp2: fix interrupt mask/unmask skip condition
+ - flow_dissector: fix TTL and TOS dissection on IPv4 fragments
+ - net: introduce CAN specific pointer in the struct net_device
+ - brcmfmac: clear EAP/association status bits on linkdown events
+ - ath11k: add ieee80211_unregister_hw to avoid kernel crash caused by NULL
+ pointer
+ - rtw88: coex: 8821c: correct antenna switch function
+ - iwlwifi: pcie: don't disable interrupts for reg_lock
+ - ath10k: hold RCU lock when calling ieee80211_find_sta_by_ifaddr()
+ - [amd64,arm64] net: ethernet: aquantia: Handle error cleanup of start on
+ open
+ - appletalk: Fix skb allocation size in loopback case
+ - net: wan/lmc: unregister device when no matching device is found
+ - net: 9p: advance iov on empty read
+ - bpf: Remove MTU check in __bpf_skb_max_len
+ - ACPI: tables: x86: Reserve memory occupied by ACPI tables
+ - ACPI: processor: Fix CPU0 wakeup in acpi_idle_play_dead()
+ - ALSA: usb-audio: Apply sample rate quirk to Logitech Connect
+ - ALSA: hda: Re-add dropped snd_poewr_change_state() calls
+ - ALSA: hda: Add missing sanity checks in PM prepare/complete callbacks
+ - ALSA: hda/realtek: fix a determine_headset_type issue for a Dell AIO
+ - ALSA: hda/realtek: call alc_update_headset_mode() in hp_automute_hook
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP 640 G8
+ - [x86] KVM: SVM: load control fields from VMCB12 before checking them
+ (CVE-2021-29657)
+ - [x86] KVM: SVM: ensure that EFER.SVME is set when running nested guest or
+ on nested vmexit
+ - PM: runtime: Fix race getting/putting suppliers at probe
+ - PM: runtime: Fix ordering in pm_runtime_get_suppliers()
+ - tracing: Fix stack trace event size
+ - [s390x] vdso: copy tod_steering_delta value to vdso_data page
+ - [s390x] vdso: fix tod_steering_delta type
+ - mm: fix race by making init_zero_pfn() early_initcall
+ - drm/amdgpu: fix offset calculation in amdgpu_vm_bo_clear_mappings()
+ - drm/amdgpu: check alignment on CPU page for bo map
+ - reiserfs: update reiserfs_xattrs_initialized() condition
+ - [armhf] drm/imx: fix memory leak when fails to init
+ - [arm64,armhf] drm/tegra: dc: Restore coupling of display controllers
+ - [arm64,armhf] drm/tegra: sor: Grab runtime PM reference across reset
+ - [arm64,armhf] pinctrl: rockchip: fix restore error in resume
+ - extcon: Add stubs for extcon_register_notifier_all() functions
+ - extcon: Fix error handling in extcon_dev_register
+ - firmware: stratix10-svc: reset COMMAND_RECONFIG_FLAG_PARTIAL to 0
+ - [arm64] usb: dwc3: pci: Enable dis_uX_susphy_quirk for Intel Merrifield
+ - [x86] video: hyperv_fb: Fix a double free in hvfb_probe
+ - firewire: nosy: Fix a use-after-free bug in nosy_ioctl() (CVE-2021-3483)
+ - usbip: vhci_hcd fix shift out-of-bounds in vhci_hub_control()
+ - USB: quirks: ignore remote wake-up on Fibocom L850-GL LTE modem
+ - [arm64,armhf] usb: musb: Fix suspend with devices connected for a64
+ - cdc-acm: fix BREAK rx code path adding necessary calls
+ - USB: cdc-acm: untangle a circular dependency between callback and softint
+ - USB: cdc-acm: downgrade message to debug
+ - USB: cdc-acm: fix double free on probe failure
+ - USB: cdc-acm: fix use-after-free after probe failure
+ - [i386] usb: gadget: udc: amd5536udc_pci fix null-ptr-dereference
+ - [arm*] usb: dwc2: Fix HPRT0.PrtSusp bit setting for HiKey 960 board.
+ - [arm*] usb: dwc2: Prevent core suspend when port connection flag is 0
+ - [arm64] usb: dwc3: qcom: skip interconnect init for ACPI probe
+ - [arm64,armhf] usb: dwc3: gadget: Clear DEP flags after stop transfers in
+ ep disable
+ - soc: qcom-geni-se: Cleanup the code to remove proxy votes
+ - [x86] staging: rtl8192e: Fix incorrect source in memcpy()
+ - [x86] staging: rtl8192e: Change state information from u16 to u8
+ - driver core: clear deferred probe reason on probe retry
+ - drivers: video: fbcon: fix NULL dereference in fbcon_cursor()
+ - [riscv64] evaluate put_user() arg before enabling user access
+ - Revert "kernel: freezer should treat PF_IO_WORKER like PF_KTHREAD for
+ freezing"
+ - [amd64] bpf: Use NOP_ATOMIC5 instead of emit_nops(&prog, 5) for
+ BPF_TRAMP_F_CALL_ORIG
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Refresh "u64_stats: Disable preemption on 32bit-UP/SMP with RT
+ during updates"
+ * Bump ABI to 6
+ * [rt] Refresh "tracing: Merge irqflags + preempt counter."
+ * bpf, x86: Validate computation of branch displacements for x86-64
+ (CVE-2021-29154)
+ * bpf, x86: Validate computation of branch displacements for x86-32
+ (CVE-2021-29154)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 09 Apr 2021 20:17:58 +0200
+
+linux (5.10.26-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.25
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.26
+ - ALSA: dice: fix null pointer dereference when node is disconnected
+ - ALSA: hda/realtek: apply pin quirk for XiaomiNotebook Pro
+ - ALSA: hda: generic: Fix the micmute led init state
+ - ALSA: hda/realtek: Apply headset-mic quirks for Xiaomi Redmibook Air
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP 840 G8
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP 440 G8
+ - ALSA: hda/realtek: fix mute/micmute LEDs for HP 850 G8
+ - Revert "PM: runtime: Update device status before letting suppliers
+ suspend"
+ - [s390x] vtime: fix increased steal time accounting
+ - [s390x] pci: refactor zpci_create_device()
+ - [s390x] pci: remove superfluous zdev->zbus check
+ - [s390x] pci: fix leak of PCI device structure
+ - zonefs: Fix O_APPEND async write handling
+ - zonefs: prevent use of seq files as swap file
+ - zonefs: fix to update .i_wr_refcnt correctly in zonefs_open_zone()
+ - btrfs: fix race when cloning extent buffer during rewind of an old root
+ (CVE-2021-28964)
+ - btrfs: fix slab cache flags for free space tree bitmap
+ - vhost-vdpa: fix use-after-free of v->config_ctx (CVE-2021-29266)
+ - [armhf] ASoC: fsl_ssi: Fix TDM slot setup for I2S mode
+ - [x86] ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 10-p0XX OVCD current
+ threshold
+ - [x86] ASoC: SOF: Intel: unregister DMIC device on probe error
+ - [x86] ASoC: SOF: intel: fix wrong poll bits in dsp power down
+ - ASoC: qcom: sdm845: Fix array out of bounds access (CVE-2021-28952)
+ - ASoC: qcom: sdm845: Fix array out of range on rx slim channels
+ - [arm64] ASoC: qcom: lpass-cpu: Fix lpass dai ids parse
+ - [arm*] ASoC: simple-card-utils: Do not handle device clock
+ - afs: Fix accessing YFS xattrs on a non-YFS server
+ - afs: Stop listxattr() from listing "afs.*" attributes
+ - ALSA: usb-audio: Fix unintentional sign extension issue
+ - nvme: fix Write Zeroes limitations
+ - nvme-tcp: fix misuse of __smp_processor_id with preemption enabled
+ - nvme-tcp: fix possible hang when failing to set io queues
+ - nvme-tcp: fix a NULL deref when receiving a 0-length r2t PDU
+ - nvmet: don't check iosqes,iocqes for discovery controllers
+ - nfsd: Don't keep looking up unhashed files in the nfsd file cache
+ - nfsd: don't abort copies early
+ - NFSD: Repair misuse of sv_lock in 5.10.16-rt30.
+ - NFSD: fix dest to src mount in inter-server COPY
+ - svcrdma: disable timeouts on rdma backchannel
+ - sunrpc: fix refcount leak for rpc auth modules
+ - [x86] i915/perf: Start hrtimer only if sampling the OA buffer
+ - pstore: Fix warning in pstore_kill_sb()
+ - io_uring: ensure that SQPOLL thread is started for exit (CVE-2021-28951)
+ - net/qrtr: fix __netdev_alloc_skb call
+ - cifs: fix allocation size on newly created files
+ - scsi: lpfc: Fix some error codes in debugfs
+ - scsi: myrs: Fix a double free in myrs_cleanup()
+ - [riscv64] correct enum sbi_ext_rfence_fid
+ - gpiolib: Assign fwnode to parent's if no primary one provided
+ - nvme-rdma: fix possible hang when failing to set io queues
+ - [armhf] tty: serial: stm32-usart: Remove set but unused 'cookie' variables
+ - [armhf] serial: stm32: fix DMA initialization error handling
+ - bpf: Declare __bpf_free_used_maps() unconditionally
+ - module: merge repetitive strings in module_sig_check()
+ - module: avoid *goto*s in module_sig_check()
+ - module: harden ELF info handling
+ - scsi: pm80xx: Make mpi_build_cmd locking consistent
+ - scsi: pm80xx: Make running_req atomic
+ - scsi: pm80xx: Fix pm8001_mpi_get_nvmd_resp() race condition
+ - scsi: pm8001: Neaten debug logging macros and uses
+ - scsi: libsas: Remove notifier indirection
+ - scsi: libsas: Introduce a _gfp() variant of event notifiers
+ - scsi: mvsas: Pass gfp_t flags to libsas event notifiers
+ - [x86] scsi: isci: Pass gfp_t flags in isci_port_link_down()
+ - [x86] scsi: isci: Pass gfp_t flags in isci_port_link_up()
+ - [x86] scsi: isci: Pass gfp_t flags in isci_port_bc_change_received()
+ - RDMA/mlx5: Allow creating all QPs even when non RDMA profile is used
+ - [powerpc*] sstep: Fix load-store and update emulation
+ - [powerpc*] sstep: Fix darn emulation
+ - i40e: Fix endianness conversions
+ - net: phy: micrel: set soft_reset callback to genphy_soft_reset for KSZ8081
+ - drm/amd/display: turn DPMS off on connector unplug
+ - iwlwifi: Add a new card for MA family
+ - io_uring: fix inconsistent lock state
+ - [arm64,armhf] media: cedrus: h264: Support profile controls
+ - [s390x] qeth: schedule TX NAPI on QAOB completion
+ - io_uring: don't attempt IO reissue from the ring exit path
+ - io_uring: clear IOCB_WAITQ for non -EIOCBQUEUED return
+ - net: bonding: fix error return code of bond_neigh_init()
+ - gfs2: Add common helper for holding and releasing the freeze glock
+ - gfs2: move freeze glock outside the make_fs_rw and _ro functions
+ - gfs2: bypass signal_our_withdraw if no journal
+ - [powerpc*] Force inlining of cpu_has_feature() to avoid build failure
+ - usb-storage: Add quirk to defeat Kindle's automatic unload
+ - usbip: Fix incorrect double assignment to udc->ud.tcp_rx
+ - usb: gadget: configfs: Fix KASAN use-after-free
+ - [x86] usb: typec: Remove vdo[3] part of tps6598x_rx_identity_reg struct
+ - [x86] usb: typec: tcpm: Invoke power_supply_changed for tcpm-source-psy-
+ - [arm64,armhf] usb: dwc3: gadget: Allow runtime suspend if UDC unbinded
+ - [arm64,armhf] usb: dwc3: gadget: Prevent EP queuing while stopping
+ transfers
+ - [x86] thunderbolt: Initialize HopID IDAs in tb_switch_alloc()
+ - [x86] thunderbolt: Increase runtime PM reference count on DP tunnel
+ discovery
+ - iio: gyro: mpu3050: Fix error handling in mpu3050_trigger_handler
+ - iio: adc: ad7949: fix wrong ADC result due to incorrect bit mask
+ - iio: hid-sensor-prox: Fix scale not correct issue
+ - iio: hid-sensor-temperature: Fix issues of timestamp channel
+ - [powerpc*] PCI: rpadlpar: Fix potential drc_name corruption in store
+ functions (CVE-2021-28972)
+ - [x86] perf/x86/intel: Fix a crash caused by zero PEBS status
+ (CVE-2021-28971)
+ - [x86] perf/x86/intel: Fix unchecked MSR access error caused by VLBR_EVENT
+ - [x86] ioapic: Ignore IRQ2 again
+ - kernel, fs: Introduce and use set_restart_fn() and arch_set_restart_data()
+ - [x86] Move TS_COMPAT back to asm/thread_info.h
+ - [x86] Introduce TS_COMPAT_RESTART to fix get_nr_restart_syscall()
+ - efivars: respect EFI_UNSUPPORTED return from firmware
+ - ext4: fix error handling in ext4_end_enable_verity()
+ - ext4: find old entry again if failed to rename whiteout
+ - ext4: stop inode update before return
+ - ext4: do not try to set xattr into ea_inode if value is empty
+ - ext4: fix potential error in ext4_do_update_inode
+ - ext4: fix rename whiteout with fast commit
+ - static_call: Fix static_call_update() sanity check
+ - efi: use 32-bit alignment for efi_guid_t literals
+ - firmware/efi: Fix a use after bug in efi_mem_reserve_persistent
+ - genirq: Disable interrupts for force threaded handlers
+ - [x86] apic/of: Fix CPU devicetree-node lookups
+ - cifs: Fix preauth hash corruption
+
+ [ Salvatore Bonaccorso ]
+ * linux-image: Add Breaks: relation with old fwupdate versions
+ (Closes: #985801)
+ * [rt] Update to 5.10.25-rt35
+ * Refresh "Include package version along with kernel release in stack
+ traces"
+ * Refresh "firmware: Remove redundant log messages from drivers"
+ * Refresh "MODSIGN: checking the blacklisted hash before loading a kernel
+ module"
+ * libsas: Avoid ABI change for removal of notifier indirection
+
+ [ Uwe Kleine-König ]
+ * [arm64] Enable various configurations for i.MX8 (Closes: #985862)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 27 Mar 2021 15:14:11 +0100
+
+linux (5.10.24-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.20
+ - vmlinux.lds.h: add DWARF v5 sections
+ - debugfs: be more robust at handling improper input in debugfs_lookup()
+ - debugfs: do not attempt to create a new file before the filesystem is
+ initalized
+ - scsi: libsas: docs: Remove notify_ha_event()
+ - scsi: qla2xxx: Fix mailbox Ch erroneous error
+ - kdb: Make memory allocations more robust
+ - w1: w1_therm: Fix conversion result for negative temperatures
+ - [arm64] PCI: qcom: Use PHY_REFCLK_USE_PAD only for ipq8064
+ - PCI: Decline to resize resources if boot config must be preserved
+ - [x86] virt: vbox: Do not use wait_event_interruptible when called from
+ kernel context
+ - bfq: Avoid false bfq queue merging
+ - ALSA: usb-audio: Fix PCM buffer allocation in non-vmalloc mode
+ - [mips*] vmlinux.lds.S: add missing PAGE_ALIGNED_DATA() section
+ - random: fix the RNDRESEEDCRNG ioctl
+ - ALSA: pcm: Call sync_stop at disconnection
+ - ALSA: pcm: Assure sync with the pending stop operation at suspend
+ - ALSA: pcm: Don't call sync_stop if it hasn't been stopped
+ - [arm64] Bluetooth: btqcomsmd: Fix a resource leak in error handling
+ paths in the probe function
+ - Bluetooth: hci_uart: Fix a race for write_work scheduling
+ - Bluetooth: Fix initializing response id after clearing struct
+ - [armhf] dts: exynos: correct PMIC interrupt trigger level on Spring
+ - [armhf] dts: exynos: correct PMIC interrupt trigger level on Arndale
+ Octa
+ - Bluetooth: hci_qca: Fix memleak in qca_controller_memdump
+ - [arm*] staging: vchiq: Fix bulk userdata handling
+ - [arm*] staging: vchiq: Fix bulk transfers on 64-bit builds
+ - [arm64,armhf] net: stmmac: dwmac-meson8b: fix enabling the
+ timing-adjustment clock
+ - bpf: Add bpf_patch_call_args prototype to include/linux/bpf.h
+ - bpf: Avoid warning when re-casting __bpf_call_base into
+ __bpf_call_base_args
+ - [arm64] dts: allwinner: A64: properly connect USB PHY to port 0
+ - [arm64] dts: allwinner: A64: Limit MMC2 bus frequency to 150 MHz
+ - ACPICA: Fix exception code class checks
+ - usb: gadget: u_audio: Free requests only after callback
+ - Bluetooth: drop HCI device reference before return
+ - Bluetooth: Put HCI device if inquiry procedure interrupts
+ - [arm*] usb: dwc2: Do not update data length if it is 0 on inbound
+ transfers
+ - [arm*] usb: dwc2: Abort transaction after errors with unknown reason
+ - [arm*] usb: dwc2: Make "trimming xfer length" a debug message
+ - staging: rtl8723bs: wifi_regd.c: Fix incorrect number of regulatory
+ rules
+ - [x86] MSR: Filter MSR writes through X86_IOC_WRMSR_REGS ioctl too
+ - [armhf] dts: armada388-helios4: assign pinctrl to LEDs
+ - [armhf] dts: armada388-helios4: assign pinctrl to each fan
+ - opp: Correct debug message in _opp_add_static_v2()
+ - Bluetooth: btusb: Fix memory leak in btusb_mtk_wmt_recv
+ - iwlwifi: mvm: set enabled in the PPAG command properly
+ - [arm64] optee: simplify i2c access
+ - ath10k: Fix suspicious RCU usage warning in
+ ath10k_wmi_tlv_parse_peer_stats_info()
+ - ath10k: Fix lockdep assertion warning in ath10k_sta_statistics
+ - iwlwifi: mvm: fix the type we use in the PPAG table validity checks
+ - iwlwifi: mvm: store PPAG enabled/disabled flag properly
+ - iwlwifi: mvm: send stored PPAG command instead of local
+ - iwlwifi: mvm: assign SAR table revision to the command later
+ - iwlwifi: mvm: don't check if CSA event is running before removing
+ - bpf_lru_list: Read double-checked variable once without lock
+ - iwlwifi: pnvm: set the PNVM again if it was already loaded
+ - iwlwifi: pnvm: increment the pointer before checking the TLV
+ - bnxt_en: reverse order of TX disable and carrier off
+ - bnxt_en: Fix devlink info's stored fw.psid version format.
+ - xen/netback: fix spurious event detection for common event case
+ - net: phy: consider that suspend2ram may cut off PHY power
+ - net/mlx5e: Don't change interrupt moderation params when DIM is enabled
+ - net/mlx5e: Change interrupt moderation channel params also when channels
+ are closed
+ - net/mlx5: Fix health error state handling
+ - net/mlx5e: Replace synchronize_rcu with synchronize_net
+ - net/mlx5e: kTLS, Use refcounts to free kTLS RX priv context
+ - net/mlx5: Disable devlink reload for multi port slave device
+ - net/mlx5: Disallow RoCE on multi port slave device
+ - net/mlx5: Disallow RoCE on lag device
+ - net/mlx5: Disable devlink reload for lag devices
+ - net/mlx5e: CT: manage the lifetime of the ct entry object
+ - net/mlx5e: Check tunnel offload is required before setting SWP
+ - mac80211: fix potential overflow when multiplying to u32 integers
+ - libbpf: Ignore non function pointer member in struct_ops
+ - bpf: Fix an unitialized value in bpf_iter
+ - bpf, devmap: Use GFP_KERNEL for xdp bulk queue allocation
+ - bpf: Fix bpf_fib_lookup helper MTU check for SKB ctx
+ - tcp: fix SO_RCVLOWAT related hangs under mem pressure
+ - cxgb4/chtls/cxgbit: Keeping the max ofld immediate data size same in
+ cxgb4 and ulds
+ - b43: N-PHY: Fix the update of coef for the PHY revision >= 3case
+ - bpf: Clear subreg_def for global function return values
+ - [amd64,arm64] net: amd-xgbe: Reset the PHY rx data path when mailbox
+ command timeout
+ - [amd64,arm64] net: amd-xgbe: Fix NETDEV WATCHDOG transmit queue timeout
+ warning
+ - [amd64,arm64] net: amd-xgbe: Reset link when the link never comes back
+ - [amd64,arm64] net: amd-xgbe: Fix network fluctuations when using 1G
+ BELFUSE SFP
+ - [arm64,armhf] net: mvneta: Remove per-cpu queue mapping for Armada 3700
+ - tty: convert tty_ldisc_ops 'read()' function to take a kernel pointer
+ - tty: implement read_iter
+ - [x86] drm/gma500: Fix error return code in psb_driver_load()
+ - [x86] gma500: clean up error handling in init
+ - drm/fb-helper: Add missed unlocks in setcmap_legacy()
+ - [arm*] drm/vc4: hdmi: Take into account the clock doubling flag in
+ atomic_check
+ - [arm64] crypto: arm64/aes-ce - really hide slower algos when faster ones
+ are enabled
+ - [mips*] c-r4k: Fix section mismatch for loongson2_sc_init
+ - drm/virtio: make sure context is created in gem open
+ - media: em28xx: Fix use-after-free in em28xx_alloc_urbs
+ - media: media/pci: Fix memleak in empress_init
+ - [x86] media: tm6000: Fix memleak in tm6000_start_stream
+ - sched/fair: Avoid stale CPU util_est value for schedutil in task dequeue
+ - [arm64,armhf] drm/sun4i: tcon: fix inverted DCLK polarity
+ - [mips*] properly stop .eh_frame generation
+ - [arm64,armhf] drm/tegra: Fix reference leak when pm_runtime_get_sync()
+ fails
+ - bsg: free the request before return error code
+ - media: lmedm04: Fix misuse of comma
+ - media: qm1d1c0042: fix error return code in qm1d1c0042_init()
+ - media: uvcvideo: Accept invalid bFormatIndex and bFrameIndex values
+ - sched/eas: Don't update misfit status if the task is pinned
+ - f2fs: compress: fix potential deadlock
+ - [arm64] ASoC: qcom: lpass-cpu: Remove bit clock state check
+ - perf/arm-cmn: Fix PMU instance naming
+ - perf/arm-cmn: Move IRQs when migrating context
+ - mm: proc: Invalidate TLB after clearing soft-dirty page state
+ - f2fs: fix to avoid inconsistent quota data
+ - f2fs: fix a wrong condition in __submit_bio
+ - [arm64] ASoC: qcom: Fix typo error in HDMI regmap config callbacks
+ - [x86] KVM: nSVM: Don't strip host's C-bit from guest's CR3 when reading
+ PDPTRs
+ - [x86] Drivers: hv: vmbus: Avoid use-after-free in
+ vmbus_onoffer_rescind()
+ - [x86] ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A5E
+ - [x86] ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A3E
+ - locking/lockdep: Avoid unmatched unlock
+ - [arm64] ASoC: qcom: lpass: Fix i2s ctl register bit map
+ - btrfs: clarify error returns values in __load_free_space_cache
+ - btrfs: fix double accounting of ordered extent for subpage case in
+ btrfs_invalidapge
+ - [x86] KVM: Restore all 64 bits of DR6 and DR7 during RSM on x86-64
+ - [s390x] zcrypt: return EIO when msg retry limit reached
+ - [arm*] drm/vc4: hdmi: Move hdmi reset to bind
+ - [arm*] drm/vc4: hdmi: Fix register offset with longer CEC messages
+ - [arm*] drm/vc4: hdmi: Fix up CEC registers
+ - [arm*] drm/vc4: hdmi: Restore cec physical address on reconnect
+ - [arm*] drm/vc4: hdmi: Compute the CEC clock divider from the clock rate
+ - [arm*] drm/vc4: hdmi: Update the CEC clock divider on HSM rate change
+ - drm/dp_mst: Don't cache EDIDs for physical ports
+ - crypto: ecdh_helper - Ensure 'len >= secret.len' in decode_key()
+ - io_uring: fix possible deadlock in io_uring_poll
+ - nvme-multipath: set nr_zones for zoned namespaces
+ - nvmet: remove extra variable in identify ns
+ - nvmet: set status to 0 in case for invalid nsid
+ - [armel,armhf] ASoC: simple-card-utils: Fix device module clock
+ - fs/jfs: fix potential integer overflow on shift of a int
+ - jffs2: fix use after free in jffs2_sum_write_data()
+ - smp: Process pending softirqs in flush_smp_call_function_from_idle()
+ - capabilities: Don't allow writing ambiguous v3 file capabilities
+ - [armhf] HSI: Fix PM usage counter unbalance in ssi_hw_init
+ - [arm64,armhf] clk: meson: clk-pll: fix initializing the old rate
+ (fallback) for a PLL
+ - [arm64,armhf] clk: meson: clk-pll: make "ret" a signed integer
+ - [arm64,armhf] clk: meson: clk-pll: propagate the error from
+ meson_clk_pll_set_rate()
+ - quota: Fix memory leak when handling corrupted quota file
+ - [arm64] clk: sunxi-ng: h6: Fix CEC clock
+ - HID: core: detect and skip invalid inputs to snto32()
+ - fdt: Properly handle "no-map" field in the memory region
+ - of/fdt: Make sure no-map does not remove already reserved regions
+ - [armhf] spi: imx: Don't print error on -EPROBEDEFER
+ - RDMA/mlx5: Use the correct obj_id upon DEVX TIR creation
+ - IB/mlx5: Add mutex destroy call to cap_mask_mutex mutex
+ - [arm64] clk: sunxi-ng: h6: Fix clock divider range on some clocks
+ - [arm64,armhf] platform/chrome: cros_ec_proto: Use EC_HOST_EVENT_MASK not
+ BIT
+ - [arm64,armhf] platform/chrome: cros_ec_proto: Add LID and BATTERY to
+ default mask
+ - [arm64,armhf] regulator: axp20x: Fix reference cout leak
+ - watch_queue: Drop references to /dev/watch_queue
+ - certs: Fix blacklist flag type confusion
+ - [armhf] regulator: s5m8767: Fix reference count leak
+ - [armhf] regulator: s5m8767: Drop regulators OF node reference
+ - [arm64,armhf] power: supply: axp20x_usb_power: Init work before enabling
+ IRQs
+ - regulator: core: Avoid debugfs: Directory ... already present! error
+ - isofs: release buffer head before return
+ - objtool: Fix error handling for STD/CLD warnings
+ - objtool: Fix retpoline detection in asm code
+ - objtool: Fix ".cold" section suffix check for newer versions of GCC
+ - scsi: lpfc: Fix ancient double free
+ - iommu: Switch gather->end to the inclusive end
+ - IB/umad: Return EIO in case of when device disassociated
+ - IB/umad: Return EPOLLERR in case of when device disassociated
+ - [ppc64el] KVM: Make the VMX instruction emulation routines static
+ - [powerpc*] time: Enable sched clock for irqtime
+ - [armel,armhf] 9046/1: decompressor: Do not clear SCTLR.nTLSMD for ARMv7+
+ cores
+ - [arm*] amba: Fix resource leak for drivers without .remove
+ - iommu: Move iotlb_sync_map out from __iommu_map
+ - iommu: Properly pass gfp_t in _iommu_map() to avoid atomic sleeping
+ - IB/mlx5: Return appropriate error code instead of ENOMEM
+ - IB/cm: Avoid a loop when device has 255 ports
+ - tracepoint: Do not fail unregistering a probe due to memory failure
+ - perf tools: Fix DSO filtering when not finding a map for a sampled
+ address
+ - perf vendor events arm64: Fix Ampere eMag event typo
+ - RDMA/rxe: Fix coding error in rxe_recv.c
+ - RDMA/rxe: Fix coding error in rxe_rcv_mcast_pkt
+ - RDMA/rxe: Correct skb on loopback path
+ - [powerpc*] pseries/dlpar: handle ibm, configure-connector delay status
+ - [arm64] RDMA/hns: Fixed wrong judgments in the goto branch
+ - [arm64] RDMA/hns: Fix type of sq_signal_bits
+ - [arm64] RDMA/hns: Disable RQ inline by default
+ - clk: divider: fix initialization with parent_hw
+ - [amd64] spi: pxa2xx: Fix the controller numbering for Wildcat Point
+ - [powerpc*] uaccess: Avoid might_fault() when user access is enabled
+ - [powerpc*] kuap: Restore AMR after replaying soft interrupts
+ - perf symbols: Use (long) for iterator for bfd symbols
+ - spi: Skip zero-length transfers in spi_transfer_one_message()
+ - printk: avoid prb_first_valid_seq() where possible
+ - perf symbols: Fix return value when loading PE DSO
+ - nfsd: register pernet ops last, unregister first
+ - svcrdma: Hold private mutex while invoking rdma_accept()
+ - ceph: fix flush_snap logic after putting caps
+ - [arm64] RDMA/hns: Fixes missing error code of CMDQ
+ - RDMA/ucma: Fix use-after-free bug in ucma_create_uevent
+ - Input: sur40 - fix an error code in sur40_probe()
+ - perf record: Fix continue profiling after draining the buffer
+ - perf intel-pt: Fix missing CYC processing in PSB
+ - perf intel-pt: Fix premature IPC
+ - perf intel-pt: Fix IPC with CYC threshold
+ - perf test: Fix unaligned access in sample parsing test
+ - Input: elo - fix an error code in elo_connect()
+ - [arm64,armhf] phy: rockchip-emmc: emmc_phy_init() always return 0
+ - [arm64,armhf] pwm: rockchip: Enable APB clock during register access
+ while probing
+ - [arm64,armhf] pwm: rockchip: rockchip_pwm_probe(): Remove superfluous
+ clk_unprepare()
+ - [arm64,armhf] pwm: rockchip: Eliminate potential race condition when
+ probing
+ - [x86] VMCI: Use set_page_dirty_lock() when unregistering guest memory
+ - PCI: Align checking of syscall user config accessors
+ - [x86] mei: hbm: call mei_set_devstate() on hbm stop response
+ - [arm64] drm/msm: Fix MSM_INFO_GET_IOVA with carveout
+ - [arm64] drm/msm/dsi: Correct io_start for MSM8994 (20nm PHY)
+ - [arm64] drm/msm/mdp5: Fix wait-for-commit for cmd panels
+ - [arm64] drm/msm: Fix race of GPU init vs timestamp power management.
+ - [arm64] drm/msm: Fix races managing the OOB state for timestamp vs
+ timestamps.
+ - [arm64] drm/msm/dp: trigger unplug event in msm_dp_display_disable
+ - [amd64,arm64] vfio/iommu_type1: Populate full dirty when detach
+ non-pinned group
+ - [amd64,arm64] vfio/iommu_type1: Fix some sanity checks in detach group
+ - ext4: fix potential htree index checksum corruption
+ - nvmem: core: Fix a resource leak on error in nvmem_add_cells_from_of()
+ - nvmem: core: skip child nodes not matching binding
+ - soundwire: bus: use sdw_update_no_pm when initializing a device
+ - soundwire: bus: use sdw_write_no_pm when setting the bus scale registers
+ - soundwire: export sdw_write/read_no_pm functions
+ - soundwire: bus: fix confusion on device used by pm_runtime
+ - ext: EXT4_KUNIT_TESTS should depend on EXT4_FS instead of selecting it
+ - PCI: pci-bridge-emul: Fix array overruns, improve safety
+ - i40e: Fix flow for IPv6 next header (extension header)
+ - i40e: Add zero-initialization of AQ command structures
+ - i40e: Fix overwriting flow control settings during driver loading
+ - i40e: Fix addition of RX filters after enabling FW LLDP agent
+ - i40e: Fix VFs not created
+ - Take mmap lock in cacheflush syscall
+ - i40e: Fix add TC filter for IPv6
+ - [amd64,arm64] vfio/type1: Use follow_pte()
+ - ice: report correct max number of TCs
+ - ice: Account for port VLAN in VF max packet size calculation
+ - ice: Fix state bits on LLDP mode switch
+ - ice: update the number of available RSS queues
+ - [arm64,armhf] net: stmmac: fix CBS idleslope and sendslope calculation
+ - net/mlx4_core: Add missed mlx4_free_cmd_mailbox()
+ - [arm64] PCI: rockchip: Make 'ep-gpios' DT property optional
+ - vxlan: move debug check after netdev unregister
+ - wireguard: device: do not generate ICMP for non-IP packets
+ - wireguard: kconfig: use arm chacha even with no neon
+ - ocfs2: fix a use after free on error
+ - mm: memcontrol: fix NR_ANON_THPS accounting in charge moving
+ - mm: memcontrol: fix slub memory accounting
+ - mm/memory.c: fix potential pte_unmap_unlock pte error
+ - mm/hugetlb: fix potential double free in hugetlb_register_node() error
+ path
+ - mm/hugetlb: suppress wrong warning info when alloc gigantic page
+ - mm/compaction: fix misbehaviors of fast_find_migrateblock()
+ - NFSv4: Fixes for nfs4_bitmask_adjust()
+ - [x86] KVM: SVM: Intercept INVPCID when it's disabled to inject #UD
+ - [x86] KVM: x86/mmu: Expand collapsible SPTE zap for TDP MMU to
+ ZONE_DEVICE and HugeTLB pages
+ - [arm64] Add missing ISB after invalidating TLB in __primary_switch
+ - [armhf] i2c: exynos5: Preserve high speed master code
+ - mm,thp,shmem: make khugepaged obey tmpfs mount flags
+ - mm: fix memory_failure() handling of dax-namespace metadata
+ - mm/rmap: fix potential pte_unmap on an not mapped pte
+ - proc: use kvzalloc for our kernel buffer
+ - scsi: sd: sd_zbc: Don't pass GFP_NOIO to kvcalloc
+ - block: reopen the device in blkdev_reread_part
+ - scsi: sd: Fix Opal support
+ - blk-settings: align max_sectors on "logical_block_size" boundary
+ - ACPI: property: Fix fwnode string properties matching
+ - ACPI: configfs: add missing check after
+ configfs_register_default_group()
+ - cpufreq: ACPI: Set cpuinfo.max_freq directly if max boost is known
+ - HID: logitech-dj: add support for keyboard events in eQUAD step 4 Gaming
+ - HID: wacom: Ignore attempts to overwrite the touch_max value from HID
+ - Input: xpad - add support for PowerA Enhanced Wired Controller for Xbox
+ Series X|S
+ - Input: joydev - prevent potential read overflow in ioctl
+ - Input: i8042 - add ASUS Zenbook Flip to noselftest list
+ - media: mceusb: Fix potential out-of-bounds shift
+ - USB: serial: option: update interface mapping for ZTE P685M
+ - [arm64,armhf] usb: musb: Fix runtime PM race in musb_queue_resume_work
+ - [arm64,armhf] usb: dwc3: gadget: Fix setting of DEPCFG.bInterval_m1
+ - [arm64,armhf] usb: dwc3: gadget: Fix dep->interval for fullspeed
+ interrupt
+ - USB: serial: ftdi_sio: fix FTX sub-integer prescaler
+ - USB: serial: pl2303: fix line-speed handling on newer chips
+ - USB: serial: mos7840: fix error code in mos7840_write()
+ - USB: serial: mos7720: fix error code in mos7720_write()
+ - ALSA: hda: Add another CometLake-H PCI ID
+ - ALSA: hda/hdmi: Drop bogus check at closing a stream
+ - ALSA: hda/realtek: modify EAPD in the ALC886
+ - ALSA: hda/realtek: Quirk for HP Spectre x360 14 amp setup
+ - [mips*] Ingenic: Disable HPTLB for D0 XBurst CPUs too
+ - [mips*] Revert "MIPS: Octeon: Remove special handling of
+ CONFIG_MIPS_ELF_APPENDED_DTB=y"
+ - Revert "bcache: Kill btree_io_wq"
+ - bcache: Give btree_io_wq correct semantics again
+ - bcache: Move journal work to new flush wq
+ - drm/amdgpu: Set reference clock to 100Mhz on Renoir (v2)
+ - drm/nouveau/kms: handle mDP connectors
+ - drm/modes: Switch to 64bit maths to avoid integer overflow
+ - drm/sched: Cancel and flush all outstanding jobs before finish.
+ - selinux: fix inconsistency between inode_getxattr and inode_listsecurity
+ - tpm_tis: Fix check_locality for correct locality acquisition
+ - tpm_tis: Clean up locality release
+ - KEYS: trusted: Fix incorrect handling of tpm_get_random()
+ - KEYS: trusted: Fix migratable=1 failing
+ - KEYS: trusted: Reserve TPM for seal and unseal operations
+ - btrfs: do not cleanup upper nodes in btrfs_backref_cleanup_node
+ - btrfs: do not warn if we can't find the reloc root when looking up
+ backref
+ - btrfs: add asserts for deleting backref cache nodes
+ - btrfs: abort the transaction if we fail to inc ref in btrfs_copy_root
+ - btrfs: fix reloc root leak with 0 ref reloc roots on recovery
+ - btrfs: splice remaining dirty_bg's onto the transaction dirty bg list
+ - btrfs: handle space_info::total_bytes_pinned inside the delayed ref
+ itself
+ - btrfs: account for new extents being deleted in total_bytes_pinned
+ - btrfs: fix extent buffer leak on failure to copy root
+ - [arm64] crypto: arm64/sha - add missing module aliases
+ - [x86] crypto: aesni - prevent misaligned buffers on the stack
+ - crypto: michael_mic - fix broken misalignment handling
+ - seccomp: Add missing return in non-void function
+ - [arm64] ptrace: Fix seccomp of traced syscall -1 (NO_SYSCALL)
+ - misc: rtsx: init of rts522a add OCP power off when no card is present
+ - [x86] drivers/misc/vmw_vmci: restrict too big queue size in
+ qp_host_alloc_queue
+ - pstore: Fix typo in compression option name
+ - staging: rtl8188eu: Add Edimax EW-7811UN V2 to device table
+ - floppy: reintroduce O_NDELAY fix
+ - media: marvell-ccic: power up the device on mclk enable
+ - media: smipcie: fix interrupt handling and IR timeout
+ - [x86] virt: Eat faults on VMXOFF in reboot flows
+ - [x86] reboot: Force all cpus to exit VMX root if VMX is supported
+ - [x86] fault: Fix AMD erratum #91 errata fixup for user code
+ - [x86] entry: Fix instrumentation annotation
+ - [powerpc*] prom: Fix "ibm,arch-vec-5-platform-support" scan
+ - rcu: Pull deferred rcuog wake up to rcu_eqs_enter() callers
+ - rcu/nocb: Perform deferred wake up before last idle's need_resched()
+ check
+ - kprobes: Fix to delay the kprobes jump optimization
+ - [arm64] Extend workaround for erratum 1024718 to all versions of
+ Cortex-A55
+ - [arm64] uprobe: Return EOPNOTSUPP for AARCH32 instruction probing
+ - [arm64] module: set plt* section addresses to 0x0
+ - [arm64] spectre: Prevent lockdep splat on v4 mitigation enable path
+ - [arm64] watchdog: qcom: Remove incorrect usage of QCOM_WDT_ENABLE_IRQ
+ - [x86] watchdog: mei_wdt: request stop on unregister
+ - fs/affs: release old buffer head on error path
+ - seq_file: document how per-entry resources are managed.
+ - [x86] fix seq_file iteration for pat/memtype.c
+ - mm: memcontrol: fix swap undercounting in cgroup2
+ - mm: memcontrol: fix get_active_memcg return value
+ - hugetlb: fix update_and_free_page contig page struct assumption
+ - hugetlb: fix copy_huge_page_from_user contig page struct assumption
+ - mm/vmscan: restore zone_reclaim_mode ABI
+ - mm, compaction: make fast_isolate_freepages() stay within zone
+ - [x86] KVM: nSVM: fix running nested guests when npt=0
+ - nvmem: qcom-spmi-sdam: Fix uninitialized pdev pointer
+ - module: Ignore _GLOBAL_OFFSET_TABLE_ when warning for undefined symbols
+ - [armhf] mmc: sdhci-esdhc-imx: fix kernel panic when remove module
+ - mmc: sdhci-pci-o2micro: Bug fix for SDR104 HW tuning failure
+ - [arm64] spmi: spmi-pmic-arb: Fix hw_irq overflow
+ - [x86] mei: fix transfer over dma with extended header
+ - [x86] mei: me: emmitsburg workstation DID
+ - [x86] mei: me: add adler lake point S DID
+ - [x86] mei: me: add adler lake point LP DID
+ - [armhf] gpio: pcf857x: Fix missing first interrupt
+ - printk: fix deadlock when kernel panic
+ - exfat: fix shift-out-of-bounds in exfat_fill_super()
+ - zonefs: Fix file size of zones in full condition
+ - [x86] cpufreq: intel_pstate: Change intel_pstate_get_hwp_max() argument
+ - [x86] cpufreq: intel_pstate: Get per-CPU max freq via
+ MSR_HWP_CAPABILITIES if available
+ - proc: don't allow async path resolution of /proc/thread-self components
+ - [s390x] vtime: fix inline assembly clobber list
+ - [s390x] virtio/s390: implement virtio-ccw revision 2 correctly
+ - f2fs: fix out-of-repair __setattr_copy()
+ - f2fs: enforce the immutable flag on open files
+ - f2fs: flush data when enabling checkpoint back
+ - gfs2: fix glock confusion in function signal_our_withdraw
+ - gfs2: Don't skip dlm unlock if glock has an lvb
+ - gfs2: Lock imbalance on error path in gfs2_recover_one
+ - gfs2: Recursive gfs2_quota_hold in gfs2_iomap_end
+ - dm: fix deadlock when swapping to encrypted device
+ - dm table: fix iterate_devices based device capability checks
+ - dm table: fix DAX iterate_devices based device capability checks
+ - dm table: fix zoned iterate_devices based device capability checks
+ - dm writecache: fix performance degradation in ssd mode
+ - dm writecache: return the exact table values that were set
+ - dm writecache: fix writing beyond end of underlying device when
+ shrinking
+ - dm era: Recover committed writeset after crash
+ - dm era: Update in-core bitset after committing the metadata
+ - dm era: Verify the data block size hasn't changed
+ - dm era: Fix bitset memory leaks
+ - dm era: Use correct value size in equality function of writeset tree
+ - dm era: Reinitialize bitset cache before digesting a new writeset
+ - dm era: only resize metadata in preresume
+ - kgdb: fix to kill breakpoints on initmem after boot
+ - ipv6: silence compilation warning for non-IPV6 builds
+ - net: icmp: pass zeroed opts from icmp{,v6}_ndo_send before sending
+ - wireguard: queueing: get rid of per-peer ring buffers
+ - net: sched: fix police ext initialization
+ - net_sched: fix RTNL deadlock again caused by request_module()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.21
+ - net: usb: qmi_wwan: support ZTE P685M modem
+ - Input: elantech - fix protocol errors for some trackpoints in SMBus mode
+ - Input: elan_i2c - add new trackpoint report type 0x5F
+ - drm/virtio: use kvmalloc for large allocations
+ - [x86] build: Treat R_386_PLT32 relocation as R_386_PC32
+ - JFS: more checks for invalid superblock
+ - sched/core: Allow try_invoke_on_locked_down_task() with irqs disabled
+ - udlfb: Fix memory leak in dlfb_usb_probe
+ - media: mceusb: sanity check for prescaler value
+ - erofs: fix shift-out-of-bounds of blkszbits
+ - media: v4l2-ctrls.c: fix shift-out-of-bounds in std_validate
+ - xfs: Fix assert failure in xfs_setattr_size()
+ - [s390x] net/af_iucv: remove WARN_ONCE on malformed RX packets
+ - tomoyo: ignore data race while checking quota
+ - net: fix up truesize of cloned skb in skb_prepare_for_shift()
+ - [riscv64] Get rid of MAX_EARLY_MAPPING_SIZE
+ - nbd: handle device refs for DESTROY_ON_DISCONNECT properly
+ - mm/hugetlb.c: fix unnecessary address expansion of pmd sharing
+ - tcp: fix tcp_rmem documentation
+ - net: bridge: use switchdev for port flags set through sysfs too
+ - net/sched: cls_flower: Reject invalid ct_state flags rules
+ - net: psample: Fix netlink skb length with tunnel info
+ - net: fix dev_ifsioc_locked() race condition
+ - dt-bindings: ethernet-controller: fix fixed-link specification
+ - dt-bindings: net: btusb: DT fix s/interrupt-name/interrupt-names/
+ - [arm64] ASoC: qcom: Remove useless debug print
+ - rsi: Fix TX EAPOL packet handling against iwlwifi AP
+ - rsi: Move card interrupt handling to RX thread
+ - [x86] EDAC/amd64: Do not load on family 0x15, model 0x13
+ - [x86] reboot: Add Zotac ZBOX CI327 nano PCI reboot quirk
+ - vt/consolemap: do font sum unsigned
+ - [arm64,armhf] wlcore: Fix command execute failure 19 for wl12xx
+ - Bluetooth: hci_h5: Set HCI_QUIRK_SIMULTANEOUS_DISCOVERY for btrtl
+ - Bluetooth: btusb: fix memory leak on suspend and resume
+ - pktgen: fix misuse of BUG_ON() in pktgen_thread_worker()
+ - ath10k: fix wmi mgmt tx queue full due to race condition
+ - net: sfp: add mode quirk for GPON module Ubiquiti U-Fiber Instant
+ - Bluetooth: Add new HCI_QUIRK_NO_SUSPEND_NOTIFIER quirk
+ - Bluetooth: Fix null pointer dereference in amp_read_loc_assoc_final_data
+ - [arm*] staging: bcm2835-audio: Replace unsafe strcpy() with strscpy()
+ - brcmfmac: Add DMI nvram filename quirk for Predia Basic tablet
+ - brcmfmac: Add DMI nvram filename quirk for Voyo winpad A15 tablet
+ - [arm64] drm/hisilicon: Fix use-after-free
+ - crypto: tcrypt - avoid signed overflow in byte count
+ - fs: make unlazy_walk() error handling consistent
+ - drm/amdgpu: Add check to prevent IH overflow
+ - PCI: Add a REBAR size quirk for Sapphire RX 5600 XT Pulse
+ - [x86] ASoC: Intel: bytcr_rt5640: Add new BYT_RT5640_NO_SPEAKERS
+ quirk-flag
+ - media: uvcvideo: Allow entities with no pads
+ - f2fs: handle unallocated section and zone on pinned/atgc
+ - f2fs: fix to set/clear I_LINKABLE under i_lock
+ - nvme-core: add cancel tagset helpers
+ - nvme-rdma: add clean action for failed reconnection
+ - nvme-tcp: add clean action for failed reconnection
+ - ASoC: Intel: Add DMI quirk table to soc_intel_is_byt_cr()
+ - btrfs: fix error handling in commit_fs_roots
+ - [x86] perf/x86/kvm: Add Cascade Lake Xeon steppings to
+ isolation_ucodes[]
+ - [x86] ASoC: Intel: sof-sdw: indent and add quirks consistently
+ - [x86] ASoC: Intel: sof_sdw: detect DMIC number based on mach params
+ - sched/features: Fix hrtick reprogramming
+ - [x86] ASoC: Intel: bytcr_rt5640: Add quirk for the Estar Beauty HD MID
+ 7316R tablet
+ - [x86] ASoC: Intel: bytcr_rt5640: Add quirk for the Voyo Winpad A15
+ tablet
+ - [x86] ASoC: Intel: bytcr_rt5651: Add quirk for the Jumper EZpad 7 tablet
+ - [x86] ASoC: Intel: bytcr_rt5640: Add quirk for the Acer One S1002 tablet
+ - scsi: iscsi: Restrict sessions and handles to admin capabilities
+ (CVE-2021-27363, CVE-2021-27364)
+ - scsi: iscsi: Ensure sysfs attributes are limited to PAGE_SIZE
+ (CVE-2021-27365)
+ - scsi: iscsi: Verify lengths on passthrough PDUs (CVE-2021-27365)
+ - Xen/gnttab: handle p2m update errors on a per-slot basis
+ (CVE-2021-28038)
+ - xen-netback: respect gnttab_map_refs()'s return value (CVE-2021-28038)
+ - xen: fix p2m size in dom0 for disabled memory hotplug case
+ (CVE-2021-28039)
+ - zsmalloc: account the number of compacted pages correctly
+ - swap: fix swapfile read/write offset
+ - [powerpc*] sstep: Check instruction validity against ISA version before
+ emulation
+ - [powerpc*] sstep: Fix incorrect return from analyze_instr()
+ - tty: fix up iterate_tty_read() EOVERFLOW handling
+ - tty: fix up hung_up_tty_read() conversion
+ - tty: clean up legacy leftovers from n_tty line discipline
+ - tty: teach n_tty line discipline about the new "cookie continuations"
+ - tty: teach the n_tty ICANON case about the new "cookie continuations"
+ too
+ - media: v4l: ioctl: Fix memory leak in video_usercopy
+ - ALSA: hda/realtek: Add quirk for Clevo NH55RZQ
+ - ALSA: hda/realtek: Add quirk for Intel NUC 10
+ - ALSA: hda/realtek: Apply dual codec quirks for MSI Godlike X570 board
+ - net: sfp: VSOL V2801F / CarlitoxxPro CPGOS03-0490 v2.0 workaround
+ - net: sfp: add workaround for Realtek RTL8672 and RTL9601C chips
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.22
+ - ALSA: hda/realtek: Enable headset mic of Acer SWIFT with ALC256
+ - ALSA: usb-audio: Drop bogus dB range in too low level
+ - tpm, tpm_tis: Decorate tpm_tis_gen_interrupt() with request_locality()
+ - tpm, tpm_tis: Decorate tpm_get_timeouts() with request_locality()
+ - btrfs: avoid double put of block group when emptying cluster
+ - btrfs: fix raid6 qstripe kmap
+ - btrfs: fix race between writes to swap files and scrub
+ - btrfs: fix race between swap file activation and snapshot creation
+ - btrfs: fix stale data exposure after cloning a hole with NO_HOLES
+ enabled
+ - btrfs: fix race between extent freeing/allocation when using bitmaps
+ - btrfs: validate qgroup inherit for SNAP_CREATE_V2 ioctl
+ - btrfs: free correct amount of space in
+ btrfs_delayed_inode_reserve_metadata
+ - btrfs: unlock extents in btrfs_zero_range in case of quota reservation
+ errors
+ - btrfs: fix warning when creating a directory with smack enabled
+ - PM: runtime: Update device status before letting suppliers suspend
+ - ring-buffer: Force before_stamp and write_stamp to be different on
+ discard
+ - io_uring: ignore double poll add on the same waitqueue head
+ - dm bufio: subtract the number of initial sectors in
+ dm_bufio_get_device_size
+ - drm/amdgpu:disable VCN for Navi12 SKU
+ - drm/amdgpu: fix parameter error of RREG32_PCIE() in amdgpu_regs_pcie
+ - [arm64] mm: Move reserve_crashkernel() into mem_init()
+ - [arm64] mm: Move zone_dma_bits initialization into zone_sizes_init()
+ - of/address: Introduce of_dma_get_max_cpu_address()
+ - [arm64] mm: Set ZONE_DMA size based on devicetree's dma-ranges
+ - [arm64] mm: Set ZONE_DMA size based on early IORT scan
+ - ALSA: ctxfi: cthw20k2: fix mask on conf to allow 4 bits
+ - RDMA/cm: Fix IRQ restore in ib_send_cm_sidr_rep
+ - IB/mlx5: Add missing error code
+ - ALSA: hda: intel-nhlt: verify config type
+ - ftrace: Have recordmcount use w8 to read relp->r_info in
+ arm64_is_fake_mcount
+ - rsxx: Return -EFAULT if copy_to_user() fails
+ - [amd64] iommu/vt-d: Fix status code for Allocate/Free PASID command
+ - tomoyo: recognize kernel threads correctly
+ - r8169: fix resuming from suspend on RTL8105e if machine runs on battery
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.23
+ - ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region
+ parameter handling
+ - nvme-pci: mark Kingston SKC2000 as not supporting the deepest power
+ state
+ - btrfs: export and rename qgroup_reserve_meta
+ - btrfs: don't flush from btrfs_delayed_inode_reserve_metadata
+ - [amd64] iommu/amd: Fix sleeping in atomic in increase_address_space()
+ - Bluetooth: btqca: Add valid le states quirk
+ - mwifiex: pcie: skip cancel_work_sync() on reset failure path
+ - [x86] ASoC: Intel: sof_sdw: add quirk for new TigerLake-SDCA device
+ - [armhf] bus: ti-sysc: Implement GPMC debug quirk to drop platform data
+ - [x86] platform/x86: acer-wmi: Cleanup ACER_CAP_FOO defines
+ - [x86] platform/x86: acer-wmi: Cleanup accelerometer device handling
+ - [x86] platform/x86: acer-wmi: Add new force_caps module parameter
+ - [x86] platform/x86: acer-wmi: Add ACER_CAP_SET_FUNCTION_MODE capability
+ flag
+ - [x86] platform/x86: acer-wmi: Add support for SW_TABLET_MODE on Switch
+ devices
+ - [x86] platform/x86: acer-wmi: Add ACER_CAP_KBD_DOCK quirk for the Aspire
+ Switch 10E SW3-016
+ - HID: mf: add support for 0079:1846 Mayflash/Dragonrise USB Gamecube
+ Adapter
+ - media: cx23885: add more quirks for reset DMA on some AMD IOMMU
+ - [x86] ACPI: video: Add DMI quirk for GIGABYTE GB-BXBT-2807
+ - [x86] ASoC: Intel: bytcr_rt5640: Add quirk for ARCHOS Cesium 140
+ - PCI: Add function 1 DMA alias quirk for Marvell 9215 SATA controller
+ - [x86] KVM: x86: Supplement __cr4_reserved_bits() with X86_FEATURE_PCID
+ check
+ - [x86] ASoC: Intel: sof_sdw: add missing TGL_HDMI quirk for Dell SKU 0A32
+ - scsi: ufs: Add a quirk to permit overriding UniPro defaults
+ - misc: eeprom_93xx46: Add quirk to support Microchip 93LC46B eeprom
+ - scsi: ufs: Introduce a quirk to allow only page-aligned sg entries
+ - [arm64] drm/msm/a5xx: Remove overwriting A5XX_PC_DBG_ECO_CNTL register
+ - HID: i2c-hid: Add I2C_HID_QUIRK_NO_IRQ_AFTER_RESET for ITE8568 EC on
+ Voyo Winpad A15
+ - ALSA: usb-audio: Add DJM750 to Pioneer mixer quirk
+ - ALSA: usb-audio: add mixer quirks for Pioneer DJM-900NXS2
+ - [x86] ASoC: Intel: sof_sdw: reorganize quirks by generation
+ - [x86] ASoC: Intel: sof_sdw: add quirk for HP Spectre x360 convertible
+ - [x86] KVM: SVM: Clear the CR4 register on reset
+ - nvme-pci: mark Seagate Nytro XM1440 as QUIRK_NO_NS_DESC_LIST.
+ - nvme-pci: add quirks for Lexar 256GB SSD
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.24
+ - uapi: nfnetlink_cthelper.h: fix userspace compilation error
+ - [powerpc*] perf: Fix handling of privilege level checks in perf interrupt
+ context
+ - [powerpc*] pseries: Don't enforce MSI affinity with kdump
+ - ethernet: alx: fix order of calls on resume (Closes: #983595)
+ - [mips*] crypto: mips/poly1305 - enable for all MIPS processors
+ - ath9k: fix transmitting to stations in dynamic SMPS mode
+ - net: Fix gro aggregation for udp encaps with zero csum
+ - net: check if protocol extracted by virtio_net_hdr_set_proto is correct
+ - net: avoid infinite loop in mpls_gso_segment when mpls_hlen == 0
+ - net: l2tp: reduce log level of messages in receive path, add counter
+ instead
+ - can: skb: can_skb_set_owner(): fix ref counting if socket was closed
+ before setting skb ownership
+ - [armhf] can: flexcan: assert FRZ bit in flexcan_chip_freeze()
+ - [armhf] can: flexcan: enable RX FIFO after FRZ/HALT valid
+ - [armhf] can: flexcan: invoke flexcan_chip_freeze() to enter freeze mode
+ - tcp: Fix sign comparison bug in getsockopt(TCP_ZEROCOPY_RECEIVE)
+ - tcp: add sanity tests to TCP_QUEUE_SEQ
+ - netfilter: nf_nat: undo erroneous tcp edemux lookup
+ - netfilter: x_tables: gpf inside xt_find_revision()
+ - net: always use icmp{,v6}_ndo_send from ndo_start_xmit
+ - net: phy: fix save wrong speed and duplex problem if autoneg is on
+ - mt76: dma: do not report truncated frames to mac80211
+ - [powerpc*] 603: Fix protection of user pages mapped with PROT_NONE
+ - mount: fix mounting of detached mounts onto targets that reside on shared
+ mounts
+ - cifs: return proper error code in statfs(2)
+ - Revert "mm, slub: consider rest of partial list if acquire_slab() fails"
+ - docs: networking: drop special stable handling
+ - [arm64] net: enetc: don't overwrite the RSS indirection table when
+ initializing
+ - [arm64] net: enetc: take the MDIO lock only once per NAPI poll cycle
+ - [arm64] net: enetc: fix incorrect TPID when receiving 802.1ad tagged
+ packets
+ - [arm64] net: enetc: don't disable VLAN filtering in IFF_PROMISC mode
+ - [arm64] net: enetc: force the RGMII speed and duplex instead of operating
+ in inband mode
+ - [arm64] net: enetc: remove bogus write to SIRXIDR from enetc_setup_rxbdr
+ - [arm64] net: enetc: keep RX ring consumer index in sync with hardware
+ - net/mlx4_en: update moderation when config reset
+ - net: stmmac: fix incorrect DMA channel intr enable setting of EQoS v4.10
+ - nexthop: Do not flush blackhole nexthops when loopback goes down
+ - net: sched: avoid duplicates in classes dump
+ - [arm64] net: mscc: ocelot: properly reject destination IP keys in VCAP IS1
+ - net: usb: qmi_wwan: allow qmimux add/del with master up
+ - cipso,calipso: resolve a number of problems with the DOI refcounts
+ - net: stmmac: Fix VLAN filter delete timeout issue in Intel mGBE SGMII
+ - [x86] stmmac: intel: Fixes clock registration error seen for multiple
+ interfaces
+ - [arm64] net: enetc: allow hardware timestamping on TX queues with tc-etf
+ enabled
+ - net: qrtr: fix error return code of qrtr_sendmsg()
+ - [s390x] qeth: fix memory leak after failed TX Buffer allocation
+ - r8169: fix r8168fp_adjust_ocp_cmd function
+ - ixgbe: fail to create xfrm offload of IPsec tunnel mode SA
+ - net: stmmac: stop each tx channel independently
+ - net: stmmac: fix watchdog timeout during suspend/resume stress test
+ - net: stmmac: fix wrongly set buffer2 valid when sph unsupport
+ - ethtool: fix the check logic of at least one channel for RX/TX
+ - net: phy: make mdio_bus_phy_suspend/resume as __maybe_unused
+ - perf traceevent: Ensure read cmdlines are null terminated.
+ - perf report: Fix -F for branch & mem modes
+ - [arm64] net: hns3: fix query vlan mask value error for flow director
+ - [arm64] net: hns3: fix bug when calculating the TCAM table info
+ - bnxt_en: reliably allocate IRQ table on reset to avoid crash
+ - gpiolib: acpi: Add ACPI_GPIO_QUIRK_ABSOLUTE_NUMBER quirk
+ - gpiolib: acpi: Allow to find GpioInt() resource by name and index
+ - [arm64,armhf] gpio: pca953x: Set IRQ type when handle Intel Galileo Gen 2
+ - gpio: fix gpio-device list corruption
+ - drm/compat: Clear bounce structures
+ - drm/amd/display: Add a backlight module option
+ - drm/amd/display: Fix nested FPU context in dcn21_validate_bandwidth()
+ - drm/shmem-helper: Check for purged buffers in fault handler
+ - drm/shmem-helper: Don't remove the offset in vm_area_struct pgoff
+ - drm: Use USB controller's DMA mask when importing dmabufs
+ - [arm64] drm: meson_drv add shutdown function
+ - drm/shmem-helpers: vunmap: Don't put pages for dma-buf
+ - [x86] drm/i915: Wedge the GPU if command parser setup fails
+ - qxl: Fix uninitialised struct field head.surface_id
+ - media: usbtv: Fix deadlock on suspend
+ - media: rc: compile rc-cec.c into rc-core
+ - cifs: fix credit accounting for extra channel
+ - [arm64] net: hns3: fix error mask definition of flow director
+ - [s390x] qeth: don't replace a fully completed async TX buffer
+ - [s390x] qeth: remove QETH_QDIO_BUF_HANDLED_DELAYED state
+ - [s390x] qeth: improve completion of pending TX buffers
+ - [s390x] qeth: fix notification for pending buffers during teardown
+ - [arm64,armhf] net: dsa: implement a central TX reallocation procedure
+ - [arm64,armhf] net: dsa: trailer: don't allocate additional memory for
+ padding/tagging
+ - [arm64] net: dsa: tag_ocelot: let DSA core deal with TX reallocation
+ - [arm64,armhf] net: dsa: tag_edsa: let DSA core deal with TX reallocation
+ - [armhf] net: dsa: tag_brcm: let DSA core deal with TX reallocation
+ - [arm64,armhf] net: dsa: tag_dsa: let DSA core deal with TX reallocation
+ - [arm64] enetc: Fix unused var build warning for CONFIG_OF
+ - [arm64] net: enetc: initialize RFS/RSS memories for unused ports too
+ - ath11k: peer delete synchronization with firmware
+ - ath11k: start vdev if a bss peer is already created
+ - ath11k: fix AP mode for QCA6390
+ - scsi: ufs: WB is only available on LUN #0 to #7
+ - udf: fix silent AED tagLocation corruption
+ - [amd64] iommu/vt-d: Clear PRQ overflow only when PRQ is empty
+ - [arm*] mmc: sdhci-iproc: Add ACPI bindings for the RPi
+ - Platform: OLPC: Fix probe error handling
+ - [powerpc*] pci: Add ppc_md.discover_phbs()
+ - [armhf] spi: stm32: make spurious and overrun interrupts visible
+ - [powerpc] improve handling of unrecoverable system reset
+ - [powerpc] perf: Record counter overflow always if SAMPLE_IP is unset
+ - HID: logitech-dj: add support for the new lightspeed connection iteration
+ - [powerpc*] 64: Fix stack trace not displaying final frame
+ - [amd64] iommu/amd: Fix performance counter initialization
+ - [arm64] clk: qcom: gdsc: Implement NO_RET_PERIPH flag
+ - [x86] Input: applespi - don't wait for responses to commands indefinitely.
+ - [arm64] PCI: xgene-msi: Fix race in installing chained irq handler
+ - ext4: don't try to processed freed blocks until mballoc is initialized
+ - kbuild: clamp SUBLEVEL to 255
+ - PCI: Fix pci_register_io_range() memory leak
+ - i40e: Fix memory leak in i40e_probe
+ - [s390x] smp: __smp_rescan_cpus() - move cpumask away from stack
+ - drivers/base/memory: don't store phys_device in memory blocks
+ - sysctl.c: fix underflow value setting risk in vm_table
+ - scsi: libiscsi: Fix iscsi_prep_scsi_cmd_pdu() error handling
+ - scsi: target: core: Add cmd length set before cmd complete
+ - scsi: target: core: Prevent underflow for service actions
+ - mmc: sdhci: Update firmware interface API
+ - [arm*] assembler: introduce adr_l, ldr_l and str_l macros
+ - [arm*] efistub: replace adrl pseudo-op with adr_l macro invocation
+ - ALSA: usb: Add Plantronics C320-M USB ctrl msg delay quirk
+ - ALSA: hda/hdmi: Cancel pending works before suspend
+ - ALSA: hda/conexant: Add quirk for mute LED control on HP ZBook G5
+ - ALSA: hda/ca0132: Add Sound BlasterX AE-5 Plus support
+ - ALSA: hda: Drop the BATCH workaround for AMD controllers
+ - ALSA: hda: Flush pending unsolicited events before suspend
+ - ALSA: hda: Avoid spurious unsol event handling during S3/S4
+ - ALSA: usb-audio: Fix "cannot get freq eq" errors on Dell AE515 sound bar
+ - ALSA: usb-audio: Apply the control quirk to Plantronics headsets
+ - ALSA: usb-audio: Disable USB autosuspend properly in
+ setup_disable_autosuspend()
+ - ALSA: usb-audio: fix NULL ptr dereference in usb_audio_probe
+ - ALSA: usb-audio: fix use after free in usb_audio_disconnect
+ - Revert 95ebabde382c ("capabilities: Don't allow writing ambiguous v3 file
+ capabilities")
+ - block: Discard page cache of zone reset target range
+ - block: Try to handle busy underlying device on discard
+ - [arm64] mte: Map hotplugged memory as Normal Tagged
+ - [arm64] perf: Fix 64-bit event counter read truncation
+ - [s390x] dasd: fix hanging DASD driver unbind
+ - [s390]x dasd: fix hanging IO request during DASD driver unbind
+ - software node: Fix node registration
+ - xen/events: reset affinity of 2-level event when tearing it down
+ - [arm64,armhf] mmc: mmci: Add MMC_CAP_NEED_RSP_BUSY for the stm32 variants
+ - mmc: core: Fix partition switch time for eMMC
+ - mmc: cqhci: Fix random crash when remove mmc module/card
+ - cifs: do not send close in compound create+close requests
+ - Goodix Fingerprint device is not a modem
+ - usb: gadget: f_uac2: always increase endpoint max_packet_size by one audio
+ slot
+ - usb: gadget: f_uac1: stop playback on function disable
+ - [arm64] usb: dwc3: qcom: Add missing DWC3 OF node refcount decrement
+ - [arm64] usb: dwc3: qcom: add URS Host support for sdm845 ACPI boot
+ - [arm64] usb: dwc3: qcom: add ACPI device id for sc8180x
+ - [arm64] usb: dwc3: qcom: Honor wakeup enabled/disabled state
+ - USB: usblp: fix a hang in poll() if disconnected
+ - usb: xhci: do not perform Soft Retry for some xHCI hosts
+ - xhci: Improve detection of device initiated wake signal.
+ - usb: xhci: Fix ASMedia ASM1042A and ASM3242 DMA addressing
+ - xhci: Fix repeated xhci wake after suspend due to uncleared internal wake
+ state
+ - USB: serial: io_edgeport: fix memory leak in edge_startup
+ - USB: serial: ch341: add new Product ID
+ - USB: serial: cp210x: add ID for Acuity Brands nLight Air Adapter
+ - USB: serial: cp210x: add some more GE USB IDs
+ - usbip: fix stub_dev to check for stream socket
+ - usbip: fix vhci_hcd to check for stream socket
+ - usbip: fix vudc to check for stream socket
+ - usbip: fix stub_dev usbip_sockfd_store() races leading to gpf
+ - usbip: fix vhci_hcd attach_store() races leading to gpf
+ - usbip: fix vudc usbip_sockfd_store races leading to gpf
+ - [x86] misc/pvpanic: Export module FDT device table
+ - misc: fastrpc: restrict user apps from sending kernel RPC messages
+ (CVE-2021-28375)
+ - [x86] staging: rtl8192u: fix ->ssid overflow in r8192_wx_set_scan()
+ - staging: rtl8188eu: prevent ->ssid overflow in rtw_wx_set_scan()
+ (CVE-2021-28660)
+ - staging: rtl8712: unterminated string leads to read overflow
+ - staging: rtl8188eu: fix potential memory corruption in
+ rtw_check_beacon_data()
+ - staging: rtl8712: Fix possible buffer overflow in r8712_sitesurvey_cmd
+ - [x86] staging: rtl8192e: Fix possible buffer overflow in
+ _rtl92e_wx_set_scan
+ - [x86] staging: comedi: addi_apci_1032: Fix endian problem for COS sample
+ - [x86] staging: comedi: addi_apci_1500: Fix endian problem for command
+ sample
+ - [x86] staging: comedi: adv_pci1710: Fix endian problem for AI command data
+ - [i386] staging: comedi: das6402: Fix endian problem for AI command data
+ - [i386] staging: comedi: das800: Fix endian problem for AI command data
+ - [i386] staging: comedi: dmm32at: Fix endian problem for AI command data
+ - [x86] staging: comedi: me4000: Fix endian problem for AI command data
+ - [i386] staging: comedi: pcl711: Fix endian problem for AI command data
+ - [i386] staging: comedi: pcl818: Fix endian problem for AI command data
+ - [arm64] mm: Fix pfn_valid() for ZONE_DEVICE based memory
+ - SUNRPC: Set memalloc_nofs_save() for sync tasks
+ - NFS: Don't revalidate the directory permissions on a lookup failure
+ - NFS: Don't gratuitously clear the inode cache when lookup failed
+ - NFSv4.2: fix return value of _nfs4_get_security_label()
+ - block: rsxx: fix error return code of rsxx_pci_probe()
+ - nvme-fc: fix racing controller reset and create association
+ - configfs: fix a use-after-free in __configfs_open_file
+ - [arm64] mm: use a 48-bit ID map when possible on 52-bit VA builds
+ - perf/core: Flush PMU internal buffers for per-CPU events
+ - [x86] perf/x86/intel: Set PERF_ATTACH_SCHED_CB for large PEBS and LBR
+ - hrtimer: Update softirq_expires_next correctly after
+ __hrtimer_get_next_event()
+ - seqlock,lockdep: Fix seqcount_latch_init()
+ - stop_machine: mark helpers __always_inline
+ - include/linux/sched/mm.h: use rcu_dereference in in_vfork()
+ - zram: fix return value on writeback_store
+ - sched/membarrier: fix missing local execution of ipi_sync_rq_state()
+ - efi: stub: omit SetVirtualAddressMap() if marked unsupported in RT_PROP
+ table
+ - [powerpc*] 64s: Fix instruction encoding for lis in ppc_function_entry()
+ - [powerpc*] Fix inverted SET_FULL_REGS bitop
+ - [powerpc*] Fix missing declaration of [en/dis]able_kernel_vsx()
+ - binfmt_misc: fix possible deadlock in bm_register_write
+ - [amd64] x86/unwind/orc: Disable KASAN checking in the ORC unwinder, part 2
+ - [x86] entry: Move nmi entry/exit into common code
+ - [x86] entry: Fix entry/exit mismatch on failed fast 32-bit syscalls
+ - [x86] KVM: Ensure deadline timer has truly expired before posting its IRQ
+ - [x86] KVM: kvmclock: Fix vCPUs > 64 can't be online/hotpluged
+ - [arm64] KVM: Fix range alignment when walking page tables
+ - [arm64] KVM: Avoid corrupting vCPU context register in guest exit
+ - [arm64] KVM: nvhe: Save the SPE context early
+ - [arm64] KVM: Reject VM creation when the default IPA size is unsupported
+ - [arm64] KVM: Fix exclusive limit for IPA size
+ - mm/userfaultfd: fix memory corruption due to writeprotect
+ - mm/madvise: replace ptrace attach requirement for process_madvise
+ - [arm64] KVM: Ensure I-cache isolation between vcpus of a same VM
+ - mm/page_alloc.c: refactor initialization of struct page for holes in
+ memory layout
+ - xen/events: don't unmask an event channel when an eoi is pending
+ - xen/events: avoid handling the same event on two cpus at the same time
+ - [arm64] KVM: Fix nVHE hyp panic host context restore
+ - RDMA/umem: Use ib_dma_max_seg_size instead of dma_get_max_seg_size
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 5
+ * [rt] Refresh "printk: remove logbuf_lock"
+ * [rt] Refresh "printk: remove safe buffers"
+ * [rt] Refresh "printk: remove deferred printing"
+ * [rt] Refresh "mm/memcontrol: Replace local_irq_disable with local locks"
+ * [rt] Update to 5.10.21-rt34
+ * Refresh "Include package version along with kernel release in stack
+ traces"
+ * bpf: Prohibit alu ops for pointer types not defining ptr_limit
+ (CVE-2020-27170)
+ * bpf: Fix off-by-one for area size in creating mask to left
+ (CVE-2020-27171)
+ * bpf: Simplify alu_limit masking for pointer arithmetic
+ * bpf: Add sanity check for upper ptr_limit
+ * bpf, selftests: Fix up some test_verifier cases for unprivileged
+ * [x86] crypto: aesni - Use TEST %reg,%reg instead of CMP $0,%reg
+ * [x86] crypto: x86/aes-ni-xts - use direct calls to and 4-way stride
+ * RDMA/srp: Fix support for unpopulated and unbalanced NUMA nodes
+ * fuse: fix live lock in fuse_iget()
+ * Revert "nfsd4: remove check_conflicting_opens warning"
+ * Revert "nfsd4: a client's own opens needn't prevent delegations"
+ * ALSA: usb-audio: Don't avoid stopping the stream at disconnection
+ * [armhf] net: dsa: b53: Support setting learning on port
+
+ [ Wookey ]
+ * [arm64] drivers/perf: Enable ARM_CMN as module (Closes: #981186)
+
+ [ Vincent Blut ]
+ * [arm64] drivers/perf: Enable ARM_SMMU_V3_PMU as module
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 19 Mar 2021 19:20:52 +0100
+
+linux (5.10.19-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.14
+ - [armhf] net: fec: put child node on error path
+ - [x86] stmmac: intel: Configure EHL PSE0 GbE and PSE1 GbE to 32 bits DMA
+ addressing
+ - [armhf] net: dsa: bcm_sf2: put device node before return
+ - net: switchdev: don't set port_obj_info->handled true when -EOPNOTSUPP
+ - [arm64,armhf] iommu/io-pgtable-arm: Support coherency for Mali LPAE
+ - [arm64,armhf] drm/panfrost: Support cache-coherent integrations
+ - [arm64] Fix kernel address detection of __is_lm_address()
+ - [arm64] Do not pass tagged addresses to __is_lm_address()
+ - Revert "x86/setup: don't remove E820_TYPE_RAM for pfn 0"
+ - [amd64] iommu/vt-d: Do not use flush-queue when caching-mode is on
+ - [x86] platform/x86: touchscreen_dmi: Add swap-x-y quirk for Goodix
+ touchscreen on Estar Beauty HD tablet
+ - [x86] platform/x86: intel-vbtn: Support for tablet mode on Dell Inspiron
+ 7352
+ - [x86] __always_inline __{rd,wr}msr()
+ - scsi: scsi_transport_srp: Don't block target in failfast state
+ - scsi: libfc: Avoid invoking response handler twice if ep is already
+ completed
+ - [x86] scsi: fnic: Fix memleak in vnic_dev_init_devcmd2
+ - [x86] ASoC: SOF: Intel: hda: Resume codec to do jack detection
+ - ALSA: hda: Add AlderLake-P PCI ID and HDMI codec vid
+ - mac80211: fix fast-rx encryption check
+ - mac80211: fix encryption key selection for 802.3 xmit
+ - [powerpc*] scsi: ibmvfc: Set default timeout to avoid crash during
+ migration
+ - ALSA: hda: Add Cometlake-R PCI ID
+ - [arm64,armhf] i2c: tegra: Create i2c_writesl_vi() to use with VI I2C for
+ filling TX FIFO
+ - udf: fix the problem that the disc content is not displayed
+ - nvme: check the PRINFO bit before deciding the host buffer length
+ - nvme-rdma: avoid request double completion for concurrent
+ nvme_rdma_timeout
+ - nvme-tcp: avoid request double completion for concurrent
+ nvme_tcp_timeout
+ - nvme-pci: allow use of cmb on v1.4 controllers
+ - nvmet: set right status on error in id-ns handler
+ - [x86] platform/x86: thinkpad_acpi: Add P53/73 firmware to
+ fan_quirk_table for dual fan control
+ - objtool: Don't fail the kernel build on fatal errors
+ - [x86] cpu: Add another Alder Lake CPU to the Intel family
+ - kthread: Extract KTHREAD_IS_PER_CPU
+ - workqueue: Restrict affinity change to rescuer
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.15
+ - USB: serial: cp210x: add pid/vid for WSDA-200-USB
+ - USB: serial: cp210x: add new VID/PID for supporting Teraoka AD2000
+ - USB: serial: option: Adding support for Cinterion MV31
+ - [arm64,armhf] usb: host: xhci: mvebu: make USB 3.0 PHY optional for
+ Armada 3720
+ - USB: gadget: legacy: fix an error code in eth_bind()
+ - [armhf] usb: gadget: aspeed: add missing of_node_put
+ - USB: usblp: don't call usb_set_interface if there's a single alt
+ - [arm*] usb: dwc2: Fix endpoint direction check in ep_from_windex
+ - [arm64,armhf] usb: dwc3: fix clock issue during resume in OTG mode
+ - [arm64] dts: qcom: c630: keep both touchpad devices enabled
+ - Input: i8042 - unbreak Pegatron C15B
+ - [arm64] dts: rockchip: Use only supported PCIe link speed on Pinebook
+ Pro
+ - bpf, cgroup: Fix optlen WARN_ON_ONCE toctou (CVE-2021-20194)
+ - bpf, cgroup: Fix problematic bounds check (CVE-2021-20194)
+ - bpf, inode_storage: Put file handler if no storage was found
+ - bpf, preload: Fix build when $(O) points to a relative path
+ - [arm64] dts: meson: switch TFLASH_VDD_EN pin to open drain on Odroid-C4
+ - r8169: work around RTL8125 UDP hw bug
+ - rxrpc: Fix deadlock around release of dst cached on udp tunnel
+ - SUNRPC: Fix NFS READs that start at non-page-aligned offsets
+ - igc: set the default return value to -IGC_ERR_NVM in igc_write_nvm_srwr
+ - igc: check return value of ret_val in igc_config_fc_after_link_up
+ - i40e: Revert "i40e: don't report link up for a VF who hasn't enabled
+ queues"
+ - net/mlx5: Fix function calculation for page trees
+ - net/mlx5: Fix leak upon failure of rule creation
+ - net/mlx5e: Update max_opened_tc also when channels are closed
+ - net/mlx5e: Release skb in case of failure in tc update skb
+ - net: lapb: Copy the skb before sending a packet
+ - [arm64,armhf] net: mvpp2: TCAM entry enable should be written after SRAM
+ data
+ - [armhf] dts: sun7i: a20: bananapro: Fix ethernet phy-mode
+ - nvmet-tcp: fix out-of-bounds access when receiving multiple h2cdata PDUs
+ - memblock: do not start bottom-up allocations with kernel_end
+ - [x86] thunderbolt: Fix possible NULL pointer dereference in
+ tb_acpi_add_link()
+ - ovl: fix dentry leak in ovl_get_redirect
+ - ovl: avoid deadlock on directory ioctl
+ - ovl: implement volatile-specific fsync error behaviour
+ - mac80211: fix station rate table updates on assoc
+ - gpiolib: free device name on error path to fix kmemleak
+ - fgraph: Initialize tracing_graph_pause at task creation
+ - tracing/kprobe: Fix to support kretprobe events on unloaded modules
+ - kretprobe: Avoid re-registration of the same kretprobe earlier
+ - tracing: Use pause-on-trace with the latency tracers
+ - tracepoint: Fix race between tracing and removing tracepoint
+ - [arm64,x86] libnvdimm/namespace: Fix visibility of namespace resource
+ attribute
+ - [arm64,x86] libnvdimm/dimm: Avoid race between probe and
+ available_slots_show()
+ - genirq: Prevent [devm_]irq_alloc_desc from returning irq 0
+ - genirq/msi: Activate Multi-MSI early when MSI_FLAG_ACTIVATE_EARLY is set
+ - scripts: use pkg-config to locate libcrypto
+ - xhci: fix bounce buffer usage for non-sg list case
+ - cifs: report error instead of invalid when revalidating a dentry fails
+ - iommu: Check dev->iommu in dev_iommu_priv_get() before dereferencing it
+ - smb3: Fix out-of-bounds bug in SMB2_negotiate()
+ - smb3: fix crediting for compounding when only one request in flight
+ - mmc: core: Limit retries when analyse of SDIO tuples fails
+ - [x86] Fix unsynchronized access to sev members through
+ svm_register_enc_region
+ - drm/dp/mst: Export drm_dp_get_vc_payload_bw()
+ - [x86] drm/i915: Fix the MST PBN divider calculation
+ - [x86] drm/i915/gem: Drop lru bumping on display unpinning
+ - [x86] drm/i915/gt: Close race between enable_breadcrumbs and
+ cancel_breadcrumbs
+ - [x86] drm/i915/display: Prevent double YUV range correction on HDR
+ planes
+ - [x86] drm/i915: Extract intel_ddi_power_up_lanes()
+ - [x86] drm/i915: Power up combo PHY lanes for for HDMI as well
+ - drm/amd/display: Revert "Fix EDID parsing after resume from suspend"
+ - io_uring: don't modify identity's files uncess identity is cowed
+ - nvme-pci: avoid the deepest sleep state on Kingston A2000 SSDs
+ - [x86] KVM: SVM: Treat SVM as unsupported when running as an SEV guest
+ - [x86] KVM: x86/mmu: Fix TDP MMU zap collapsible SPTEs
+ - [x86] KVM: x86: Allow guests to see MSR_IA32_TSX_CTRL even if tsx=off
+ - [x86] KVM: x86: fix CPUID entries returned by KVM_GET_CPUID2 ioctl
+ - [x86] KVM: x86: Update emulator context mode if SYSENTER xfers to 64-bit
+ mode
+ - [x86] KVM: x86: Set so called 'reserved CR3 bits in LM mask' at vCPU
+ reset
+ - mm: hugetlbfs: fix cannot migrate the fallocated HugeTLB page
+ - mm: hugetlb: fix a race between freeing and dissolving the page
+ - mm: hugetlb: fix a race between isolating and freeing page
+ - mm: hugetlb: remove VM_BUG_ON_PAGE from page_huge_active
+ - mm, compaction: move high_pfn to the for loop scope
+ - mm/vmalloc: separate put pages and flush VM flags
+ - mm: thp: fix MADV_REMOVE deadlock on shmem THP
+ - mm/filemap: add missing mem_cgroup_uncharge() to
+ __add_to_page_cache_locked()
+ - [x86] build: Disable CET instrumentation in the kernel
+ - [x86] debug: Fix DR6 handling
+ - [x86] debug: Prevent data breakpoints on __per_cpu_offset
+ - [x86] debug: Prevent data breakpoints on cpu_dr7
+ - [x86] apic: Add extra serialization for non-serializing MSRs
+ - Input: goodix - add support for Goodix GT9286 chip
+ - Input: xpad - sync supported devices with fork on GitHub
+ - md: Set prev_flush_start and flush_bio in an atomic way
+ - igc: Report speed and duplex as unknown when device is runtime suspended
+ - neighbour: Prevent a dead entry from updating gc_list
+ - net: ip_tunnel: fix mtu calculation
+ - udp: ipv4: manipulate network header of NATed UDP GRO fraglist
+ - [arm64,armhf] net: dsa: mv88e6xxx: override existent unicast portvec in
+ port_fdb_add
+ - net: sched: replaced invalid qdisc tree flush helper in qdisc_replace
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.16
+ - io_uring: simplify io_task_match()
+ - io_uring: add a {task,files} pair matching helper
+ - io_uring: don't iterate io_uring_cancel_files()
+ - io_uring: pass files into kill timeouts/poll
+ - io_uring: always batch cancel in *cancel_files()
+ - io_uring: fix files cancellation
+ - io_uring: account io_uring internal files as REQ_F_INFLIGHT
+ - io_uring: if we see flush on exit, cancel related tasks
+ - io_uring: fix __io_uring_files_cancel() with TASK_UNINTERRUPTIBLE
+ - io_uring: replace inflight_wait with tctx->wait
+ - io_uring: fix cancellation taking mutex while TASK_UNINTERRUPTIBLE
+ - io_uring: fix flush cqring overflow list while TASK_INTERRUPTIBLE
+ - io_uring: fix list corruption for splice file_get
+ - io_uring: fix sqo ownership false positive warning
+ - io_uring: reinforce cancel on flush during exit
+ - io_uring: drop mm/files between task_work_submit
+ - gpiolib: cdev: clear debounce period if line set to output
+ - [powerpc*] 64/signal: Fix regression in __kernel_sigtramp_rt64()
+ semantics
+ - af_key: relax availability checks for skb size calculation
+ - regulator: core: avoid regulator_resolve_supply() race condition
+ - drm/nouveau/nvif: fix method count when pushing an array
+ - mac80211: 160MHz with extended NSS BW in CSA
+ - [x86] ASoC: Intel: Skylake: Zero snd_ctl_elem_value
+ - pNFS/NFSv4: Try to return invalid layout in pnfs_layout_process()
+ - pNFS/NFSv4: Improve rejection of out-of-order layouts
+ - ALSA: hda: intel-dsp-config: add PCI id for TGL-H
+ - [x86] ASoC: Intel: sof_sdw: set proper flags for Dell TGL-H SKU 0A5E
+ - iwlwifi: mvm: skip power command when unbinding vif during CSA
+ - iwlwifi: pcie: add a NULL check in iwl_pcie_txq_unmap
+ - iwlwifi: pcie: fix context info memory leak
+ - iwlwifi: mvm: invalidate IDs of internal stations at mvm start
+ - iwlwifi: pcie: add rules to match Qu with Hr2
+ - iwlwifi: mvm: guard against device removal in reprobe
+ - iwlwifi: queue: bail out on invalid freeing
+ - SUNRPC: Move simple_get_bytes and simple_get_netobj into private header
+ - SUNRPC: Handle 0 length opaque XDR object data properly
+ - blk-cgroup: Use cond_resched() when destroy blkgs
+ - regulator: Fix lockdep warning resolving supplies
+ - bpf: Fix verifier jmp32 pruning decision logic
+ - bpf: Fix 32 bit src register truncation on div/mod
+ - bpf: Fix verifier jsgt branch analysis on max bound
+ - [x86] drm/i915: Fix ICL MG PHY vswing handling
+ - [x86] drm/i915: Skip vswing programming for TBT
+ - nilfs2: make splice write available again
+ - Revert "mm: memcontrol: avoid workload stalls when lowering memory.high"
+ - squashfs: avoid out of bounds writes in decompressors
+ - squashfs: add more sanity checks in id lookup
+ - squashfs: add more sanity checks in inode lookup
+ - squashfs: add more sanity checks in xattr id lookup
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.17
+ - objtool: Fix seg fault with Clang non-section symbols
+ - Revert "dts: phy: add GPIO number and active state used for phy reset"
+ - tracing: Do not count ftrace events in top level enable output
+ - tracing: Check length before giving out the filter buffer
+ - [x86] drm/i915: Fix overlay frontbuffer tracking
+ - arm/xen: Don't probe xenbus as part of an early initcall
+ - cgroup: fix psi monitor for root cgroup
+ - [x86] drm/i915/tgl+: Make sure TypeC FIA is powered up when initializing
+ it
+ - drm/dp_mst: Don't report ports connected if nothing is attached to them
+ - dmaengine: move channel device_node deletion to driver
+ - [armhf] soc: ti: omap-prm: Fix boot time errors for rst_map_012 bits 0
+ and 1
+ - [arm64] dts: qcom: sdm845: Reserve LPASS clocks in gcc
+ - [x86] platform/x86: hp-wmi: Disable tablet-mode reporting by default
+ - [arm64] dts: rockchip: Disable display for NanoPi R2S
+ - ovl: perform vfs_getxattr() with mounter creds
+ - cap: fix conversions on getxattr
+ - ovl: skip getxattr of security labels
+ - scsi: lpfc: Fix EEH encountering oops with NVMe traffic
+ - [x86] split_lock: Enable the split lock feature on another Alder Lake
+ CPU
+ - nvme-pci: ignore the subsysem NQN on Phison E16
+ - [riscv64] virt_addr_valid must check the address belongs to linear
+ mapping
+ - bfq-iosched: Revert "bfq: Fix computation of shallow depth"
+ - kallsyms: fix nonconverging kallsyms table with lld
+ - [armel,armhf] ensure the signal page contains defined contents
+ - [armel,armhf] kexec: fix oops after TLB are invalidated
+ - Revert "lib: Restrict cpumask_local_spread to houskeeping CPUs"
+ - [amd64] x86/efi: Remove EFI PGD build time checks
+ - [x86] KVM: x86: cleanup CR3 reserved bits checks
+ - cgroup-v1: add disabled controller check in cgroup1_parse_param()
+ - mt76: dma: fix a possible memory leak in mt76_add_fragment()
+ - [arm*] drm/vc4: hvs: Fix buffer overflow with the dlist handling
+ - bpf: Unbreak BPF_PROG_TYPE_KPROBE when kprobe is called via do_int3
+ - bpf: Check for integer overflow when using roundup_pow_of_two()
+ - netfilter: xt_recent: Fix attempt to update deleted entry
+ - netfilter: nftables: fix possible UAF over chains from packet path in
+ netns
+ - netfilter: flowtable: fix tcp and udp header checksum update
+ - xen/netback: avoid race in xenvif_rx_ring_slots_available()
+ - [x86] hv_netvsc: Reset the RSC count if NVSP_STAT_FAIL in
+ netvsc_receive()
+ - [arm64] net: enetc: initialize the RFS and RSS memories
+ - net: stmmac: set TxQ mode back to DCB after disabling CBS
+ - netfilter: conntrack: skip identical origin tuple in same zone only
+ - scsi: scsi_debug: Fix a memory leak
+ - [x86] build: Disable CET instrumentation in the kernel for 32-bit too
+ - [arm64] net: dsa: felix: implement port flushing on
+ .phylink_mac_link_down
+ - [arm64] net: hns3: add a check for queue_id in hclge_reset_vf_queue()
+ - [arm64] net: hns3: add a check for tqp_index in
+ hclge_get_ring_chain_from_mbx()
+ - [arm64] net: hns3: add a check for index in hclge_get_rss_key()
+ - firmware_loader: align .builtin_fw to 8
+ - [arm64,armhf] drm/sun4i: tcon: set sync polarity for tcon1 channel
+ - [arm64,armhf] drm/sun4i: dw-hdmi: always set clock rate
+ - [arm64,armhf] drm/sun4i: Fix H6 HDMI PHY configuration
+ - [arm64,armhf] drm/sun4i: dw-hdmi: Fix max. frequency for H6
+ - [arm64,armhf] clk: sunxi-ng: mp: fix parent rate change flag check
+ - [armhf] i2c: stm32f7: fix configuration of the digital filter
+ - scripts: set proper OpenSSL include dir also for sign-file
+ - [x86] pci: Create PCI/MSI irqdomain after x86_init.pci.arch_init()
+ - arm64: mte: Allow PTRACE_PEEKMTETAGS access to the zero page
+ - rxrpc: Fix clearance of Tx/Rx ring when releasing a call
+ - udp: fix skb_copy_and_csum_datagram with odd segment sizes
+ - [arm64,armhf] net: dsa: call teardown method on probe failure
+ - [x86] cpufreq: ACPI: Extend frequency tables to cover boost frequencies
+ - [x86] cpufreq: ACPI: Update arch scale-invariance max perf ratio if CPPC
+ is not there
+ - net: gro: do not keep too many GRO packets in napi->rx_list
+ - net: fix iteration for sctp transport seq_files
+ - net/vmw_vsock: fix NULL pointer dereference
+ - net/vmw_vsock: improve locking in vsock_connect_timeout()
+ - net: watchdog: hold device global xmit lock during tx disable
+ - switchdev: mrp: Remove SWITCHDEV_ATTR_ID_MRP_PORT_STAT
+ - vsock/virtio: update credit only if socket is not closed
+ - vsock: fix locking in vsock_shutdown()
+ - net/rds: restrict iovecs length for RDS_CMSG_RDMA_ARGS
+ - ovl: expand warning in ovl_d_real()
+ - kcov, usb: only collect coverage from __usb_hcd_giveback_urb in softirq
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.18
+ - IB/isert: add module param to set sg_tablesize for IO cmd
+ - net: qrtr: Fix port ID for control messages
+ - net/sched: fix miss init the mru in qdisc_skb_cb
+ - net: openvswitch: fix TTL decrement exception action execution
+ - net: bridge: Fix a warning when del bridge sysfs
+ - net: fix proc_fs init handling in af_packet and tls
+ - [amd64] Xen/x86: don't bail early from clear_foreign_p2m_mapping()
+ (CVE-2021-26932)
+ - [amd64] Xen/x86: also check kernel mapping in set_foreign_p2m_mapping()
+ (CVE-2021-26932)
+ - Xen/gntdev: correct dev_bus_addr handling in gntdev_map_grant_pages()
+ (CVE-2021-26932)
+ - Xen/gntdev: correct error checking in gntdev_map_grant_pages()
+ (CVE-2021-26932)
+ - [armhf] xen/arm: don't ignore return errors from set_phys_to_machine
+ (CVE-2021-26932)
+ - xen-blkback: don't "handle" error by BUG() (CVE-2021-26931)
+ - xen-netback: don't "handle" error by BUG() (CVE-2021-26931)
+ - xen-scsiback: don't "handle" error by BUG() (CVE-2021-26931)
+ - xen-blkback: fix error handling in xen_blkbk_map() (CVE-2021-26930)
+ - tty: protect tty_write from odd low-level tty disciplines
+ - Bluetooth: btusb: Always fallback to alt 1 for WBS
+ - btrfs: fix crash after non-aligned direct IO write with O_DSYNC
+ - media: pwc: Use correct device for DMA
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.19
+ - bpf: Fix truncation handling for mod32 dst reg wrt zero
+ - HID: make arrays usage and value to be the same
+ - RDMA: Lift ibdev_to_node from rds to common code
+ - nvme-rdma: Use ibdev_to_node instead of dereferencing ->dma_device
+ - USB: quirks: sort quirk entries
+ - usb: quirks: add quirk to start video capture on ELMO L-12F document
+ camera reliable
+ - ceph: downgrade warning from mdsmap decode to debug
+ - Bluetooth: btusb: Some Qualcomm Bluetooth adapters stop working
+ (Closes: #981005)
+ - [x86] hwmon: (dell-smm) Add XPS 15 L502X to fan control blacklist
+ - [x86] KVM: Zap the oldest MMU pages, not the newest
+ - mm: unexport follow_pte_pmd
+ - mm: simplify follow_pte{,pmd}
+ - KVM: do not assume PTE is writable after follow_pfn
+ - mm: provide a saner PTE walking API for modules
+ - KVM: Use kvm_pfn_t for local PFN variable in hva_to_pfn_remapped()
+ - NET: usb: qmi_wwan: Adding support for Cinterion MV31
+ - cifs: Set CIFS_MOUNT_USE_PREFIX_PATH flag on setting cifs_sb->prepath.
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.10.14-rt28
+ * Ignore __udp_gso_segment to avoid ABI changes
+ * Ignore xhci_init_driver to avoid ABI changes
+ * [rt] Update to 5.10.16-rt30
+ * [rt] Refresh "tracing: Merge irqflags + preempt counter." for context
+ changes
+ * [rt] Update to 5.10.17-rt32
+ * [rt] Refresh "um: synchronize kmsg_dumper" for context changes
+ * [rt] Refresh "printk: move console printing to kthreads" for context
+ changes
+ * Bump ABI to 4
+ * soundwire: intel: fix possible crash when no device is detected
+ (Closes: #981003)
+ * drm/nouveau: bail out of nouveau_channel_new if channel init fails
+ (CVE-2020-25639)
+ * [x86] drm/i915/gt: One more flush for Baytrail clear residuals
+ * [x86] drm/i915/gt: Flush before changing register state
+ * [x86] drm/i915/gt: Correct surface base address for renderclear
+ * certs: Rotate to use the "Debian Secure Boot Signer 2021 - linux"
+ certificate
+
+ [ Vincent Blut ]
+ * [x86] Enable PWM_CRC (Closes: #982808)
+ * net/can: Enable CAN_J1939 as module
+ * misc/eeprom: Enable EEPROM_EE1004 as module (Closes: #983495)
+ * [arm64] Enable DRM_DW_HDMI_CEC as module (Closes: #983759)
+
+ [ Luca Boccassi ]
+ * bpf: enable CONFIG_BPF_LSM on all architectures. Not active by default,
+ by explicitly setting CONFIG_LSM to include all other LSMs but not bpf.
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Tue, 02 Mar 2021 17:49:25 +0100
+
+linux (5.10.13-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.13
+ - iwlwifi: provide gso_type to GSO packets
+ - nbd: freeze the queue while we're adding connections (CVE-2021-3348)
+ - tty: avoid using vfs_iocb_iter_write() for redirected console writes
+ - ACPI: sysfs: Prefer "compatible" modalias
+ - ACPI: thermal: Do not call acpi_thermal_check() directly
+ - kernel: kexec: remove the lock operation of system_transition_mutex
+ - ALSA: hda/realtek: Enable headset of ASUS B1400CEPE with ALC256
+ - ALSA: hda/via: Apply the workaround generically for Clevo machines
+ - [arm64,armhf] media: cedrus: Fix H264 decoding
+ - media: rc: fix timeout handling after switch to microsecond durations
+ - [x86] media: rc: ite-cir: fix min_timeout calculation
+ - media: rc: ensure that uevent can be read directly after rc device
+ register
+ - [armhf] dts: tbs2910: rename MMC node aliases
+ - wext: fix NULL-ptr-dereference with cfg80211's lack of commit()
+ - [amd64] ASoC: AMD Renoir - refine DMI entries for some Lenovo products
+ - drm/nouveau/kms/gk104-gp1xx: Fix > 64x64 cursors
+ - [x86] drm/i915: Always flush the active worker before returning from the
+ wait
+ - [x86] drm/i915/gt: Always try to reserve GGTT address 0x0
+ - drivers/nouveau/kms/nv50-: Reject format modifiers for cursor planes
+ - bcache: only check feature sets when sb->version >=
+ BCACHE_SB_VERSION_CDEV_WITH_FEATURES
+ - net: usb: qmi_wwan: added support for Thales Cinterion PLSx3 modem
+ family
+ - [s390x] uv: Fix sysfs max number of VCPUs reporting
+ - PM: hibernate: flush swap writer after marking
+ - [x86] efi/apple-properties: Reinstate support for boolean properties
+ - btrfs: fix lockdep warning due to seqcount_mutex on 32bit arch
+ - btrfs: fix possible free space tree corruption with online conversion
+ - [x86] KVM: x86/pmu: Fix HW_REF_CPU_CYCLES event pseudo-encoding in
+ intel_arch_events[]
+ - [x86] KVM: x86/pmu: Fix UBSAN shift-out-of-bounds warning in
+ intel_pmu_refresh()
+ - [arm64] KVM: Filter out v8.1+ events on v8.0 HW
+ - [x86] KVM: nSVM: cancel KVM_REQ_GET_NESTED_STATE_PAGES on nested vmexit
+ - [x86] KVM: x86: allow KVM_REQ_GET_NESTED_STATE_PAGES outside guest mode
+ for VMX
+ - [x86] KVM: nVMX: Sync unsync'd vmcs02 state to vmcs12 on migration
+ - [x86] KVM: get smi pending status correctly
+ - KVM: Forbid the use of tagged userspace addresses for memslots
+ - io_uring: fix wqe->lock/completion_lock deadlock
+ - leds: trigger: fix potential deadlock with libata
+ - mt7601u: fix kernel crash unplugging the device
+ - mt7601u: fix rx buffer refcounting
+ - iwlwifi: Fix IWL_SUBDEVICE_NO_160 macro to use the correct bit.
+ - [x86] drm/i915/gt: Clear CACHE_MODE prior to clearing residuals
+ - [x86] drm/i915/pmu: Don't grab wakeref when enabling events
+ - [arm*] drm/vc4: Correct lbm size and calculation
+ - [arm*] drm/vc4: Correct POS1_SCL for hvs5
+ - drm/nouveau/dispnv50: Restore pushing of all data.
+ - [x86] drm/i915: Check for all subplatform bits
+ - uapi: fix big endian definition of ipv6_rpl_sr_hdr
+ - KVM: Documentation: Fix spec for KVM_CAP_ENABLE_CAP_VM
+ - [arm64] tee: optee: replace might_sleep with cond_resched
+ - xen-blkfront: allow discard-* nodes to be optional
+ - blk-mq: test QUEUE_FLAG_HCTX_ACTIVE for sbitmap_shared in hctx_may_queue
+ - [armhf] imx: build suspend-imx6.S with arm instruction set
+ - netfilter: nft_dynset: add timeout extension to template
+ - Revert "RDMA/mlx5: Fix devlink deadlock on net namespace deletion"
+ - Revert "block: simplify set_init_blocksize" to regain lost performance
+ - xfrm: Fix oops in xfrm_replay_advance_bmp
+ - xfrm: fix disable_xfrm sysctl when used on xfrm interfaces
+ - xfrm: Fix wraparound in xfrm_policy_addr_delta()
+ - RDMA/cxgb4: Fix the reported max_recv_sge value
+ - [arm64] ASoC: qcom: Fix incorrect volatile registers
+ - [arm64] ASoC: qcom: Fix broken support to MI2S TERTIARY and QUATERNARY
+ - [x86] ASoC: Intel: Skylake: skl-topology: Fix OOPs ib skl_tplg_complete
+ - [powerpc*] 64s: prevent recursive replay_soft_interrupts causing
+ superfluous interrupt
+ - pNFS/NFSv4: Fix a layout segment leak in pnfs_layout_process()
+ - pNFS/NFSv4: Update the layout barrier when we schedule a layoutreturn
+ - ASoC: SOF: Intel: soundwire: fix select/depend unmet dependencies
+ - ASoC: qcom: lpass: Fix out-of-bounds DAI ID lookup
+ - iwlwifi: pcie: avoid potential PNVM leaks
+ - iwlwifi: pnvm: don't skip everything when not reloading
+ - iwlwifi: pnvm: don't try to load after failures
+ - iwlwifi: pcie: set LTR on more devices
+ - iwlwifi: pcie: use jiffies for memory read spin time limit
+ - iwlwifi: pcie: reschedule in long-running memory reads
+ - mac80211: pause TX while changing interface type
+ - ice: fix FDir IPv6 flexbyte
+ - ice: Implement flow for IPv6 next header (extension header)
+ - ice: update dev_addr in ice_set_mac_address even if HW filter exists
+ - ice: Don't allow more channels than LAN MSI-X available
+ - ice: Fix MSI-X vector fallback logic
+ - i40e: acquire VSI pointer only after VF is initialized
+ - igc: fix link speed advertising
+ - net/mlx5: Fix memory leak on flow table creation error flow
+ - net/mlx5e: E-switch, Fix rate calculation for overflow
+ - net/mlx5e: free page before return
+ - net/mlx5e: Reduce tc unsupported key print level
+ - net/mlx5: Maintain separate page trees for ECPF and PF functions
+ - net/mlx5e: Disable hw-tc-offload when MLX5_CLS_ACT config is disabled
+ - net/mlx5e: Fix CT rule + encap slow path offload and deletion
+ - net/mlx5e: Correctly handle changing the number of queues when the
+ interface is down
+ - net/mlx5e: Revert parameters on errors when changing trust state without
+ reset
+ - net/mlx5e: Revert parameters on errors when changing MTU and LRO state
+ without reset
+ - can: dev: prevent potential information leak in can_fill_info()
+ - [arm64] ACPI/IORT: Do not blindly trust DMA masks from firmware
+ - of/device: Update dma_range_map only when dev has valid dma-ranges
+ - [amd64] iommu/amd: Use IVHD EFR for early initialization of IOMMU
+ features
+ - [amd64] iommu/vt-d: Correctly check addr alignment in
+ qi_flush_dev_iotlb_pasid()
+ - nvme-multipath: Early exit if no path is available
+ - rxrpc: Fix memory leak in rxrpc_lookup_local
+ - NFC: fix resource leak when target index is invalid
+ - NFC: fix possible resource leak
+ - [x86] ASoC: topology: Properly unregister DAI on removal
+ - [x86] ASoC: topology: Fix memory corruption in
+ soc_tplg_denum_create_values()
+ - scsi: qla2xxx: Fix description for parameter ql2xenforce_iocb_limit
+ - team: protect features update by RCU to avoid deadlock
+ - tcp: make TCP_USER_TIMEOUT accurate for zero window probes
+ - tcp: fix TLP timer not set when CA_STATE changes from DISORDER to OPEN
+ - vsock: fix the race conditions in multi-transport support
+ (CVE-2021-26708)
+
+ [ Salvatore Bonaccorso ]
+ * arch/s390: uv_info: Ignore ABI changes
+
+ [ Vincent Blut ]
+ * [arm64] Enable CRYPTO_NHPOLY1305_NEON. (closes: #980214)
+ * [armhf] Enable KERNEL_MODE_NEON.
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 06 Feb 2021 09:23:52 +0100
+
+linux (5.10.12-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.10
+ - [x86] hyperv: Initialize clockevents after LAPIC is initialized
+ - bpf: Fix signed_{sub,add32}_overflows type handling
+ - nfsd4: readdirplus shouldn't return parent of export (CVE-2021-3178)
+ - bpf: Don't leak memory in bpf getsockopt when optlen == 0
+ - bpf: Support PTR_TO_MEM{,_OR_NULL} register spilling
+ - bpf: Fix helper bpf_map_peek_elem_proto pointing to wrong callback
+ - net: fix use-after-free when UDP GRO with shared fraglist
+ - udp: Prevent reuseport_select_sock from reading uninitialized socks
+ - netxen_nic: fix MSI/MSI-x interrupts
+ - net: ipv6: Validate GSO SKB before finish IPv6 processing
+ - tipc: fix NULL deref in tipc_link_xmit()
+ - [arm64,armhf] net: mvpp2: Remove Pause and Asym_Pause support
+ - rndis_host: set proper input size for OID_GEN_PHYSICAL_MEDIUM request
+ - esp: avoid unneeded kmap_atomic call
+ - net: dcb: Validate netlink message in DCB handler
+ - net: dcb: Accept RTM_GETDCB messages carrying set-like DCB commands
+ - rxrpc: Call state should be read with READ_ONCE() under some
+ circumstances
+ - i40e: fix potential NULL pointer dereferencing
+ - [arm64,armhf] net: stmmac: Fixed mtu channged by cache aligned
+ - net: sit: unregister_netdevice on newlink's error path
+ - [arm64,armhf] net: stmmac: fix taprio schedule configuration
+ - [arm64,armhf] net: stmmac: fix taprio configuration when base_time is in
+ the past
+ - net: avoid 32 x truesize under-estimation for tiny skbs
+ - net: phy: smsc: fix clk error handling
+ - [arm64,armhf] net: dsa: clear devlink port type before unregistering
+ slave netdevs
+ - rxrpc: Fix handling of an unsupported token type in rxrpc_read()
+ - [arm64,armhf] net: stmmac: use __napi_schedule() for PREEMPT_RT
+ - [armhf] drm/panel: otm8009a: allow using non-continuous dsi clock
+ - mac80211: do not drop tx nulldata packets on encrypted links
+ - mac80211: check if atf has been disabled in __ieee80211_schedule_txq
+ - [arm64,armhf] net: dsa: unbind all switches from tree when DSA master
+ unbinds
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.11
+ - scsi: target: tcmu: Fix use-after-free of se_cmd->priv
+ - [armhf] mtd: rawnand: gpmi: fix dst bit offset when extracting raw
+ payload
+ - mtd: rawnand: nandsim: Fix the logic when selecting Hamming soft ECC
+ engine
+ - [arm64,armhf] i2c: tegra: Wait for config load atomically while in ISR
+ - [x86] platform/x86: i2c-multi-instantiate: Don't create platform device
+ for INT3515 ACPI nodes
+ - [x86] platform/x86: ideapad-laptop: Disable touchpad_switch for ELAN0634
+ - ALSA: hda/realtek - Limit int mic boost on Acer Aspire E5-575T
+ - ALSA: hda/via: Add minimum mute flag
+ - crypto: xor - Fix divide error in do_xor_speed()
+ - dm crypt: fix copy and paste bug in crypt_alloc_req_aead
+ - ACPI: scan: Make acpi_bus_get_device() clear return pointer on error
+ - btrfs: don't get an EINTR during drop_snapshot for reloc
+ - btrfs: do not double free backref nodes on error
+ - btrfs: fix lockdep splat in btrfs_recover_relocation
+ - btrfs: don't clear ret in btrfs_start_dirty_block_groups
+ - btrfs: send: fix invalid clone operations when cloning from the same
+ file and root
+ - fs: fix lazytime expiration handling in __writeback_single_inode()
+ - mmc: core: don't initialize block size from ext_csd if not present
+ - [arm64] mmc: sdhci-xenon: fix 1.8v regulator stabilization
+ - dm: avoid filesystem lookup in dm_get_dev_t()
+ - dm integrity: fix a crash if "recalculate" used without "internal_hash"
+ - dm integrity: conditionally disable "recalculate" feature
+ - drm/atomic: put state on error path
+ - drm/syncobj: Fix use-after-free
+ - drm/amdgpu: remove gpu info firmware of green sardine
+ - [x86] drm/i915/gt: Prevent use of engine->wa_ctx after error
+ - [x86] drm/i915: Check for rq->hwsp validity after acquiring RCU lock
+ - ASoC: rt711: mutex between calibration and power state changes
+ - SUNRPC: Handle TCP socket sends with kernel_sendpage() again
+ - HID: multitouch: Enable multi-input for Synaptics pointstick/touchpad
+ device
+ - dm integrity: select CRYPTO_SKCIPHER
+ - [x86] hyperv: Fix kexec panic/hang issues
+ - scsi: ufs: Relax the condition of UFSHCI_QUIRK_SKIP_MANUAL_WB_FLUSH_CTRL
+ - scsi: ufs: Correct the LUN used in eh_device_reset_handler() callback
+ - scsi: qedi: Correct max length of CHAP secret
+ - scsi: scsi_debug: Fix memleak in scsi_debug_init()
+ - scsi: sd: Suppress spurious errors when WRITE SAME is being disabled
+ - [riscv64] Fix kernel time_init()
+ - [riscv64] Fix sifive serial driver
+ - [riscv64] Enable interrupts during syscalls with M-Mode
+ - HID: logitech-dj: add the G602 receiver
+ - HID: Ignore battery for Elan touchscreen on ASUS UX550
+ - [arm64,armhf] ALSA: hda/tegra: fix tegra-hda on tegra30 soc
+ - [riscv64] cacheinfo: Fix using smp_processor_id() in preemptible
+ - [arm64] make atomic helpers __always_inline
+ - xen: Fix event channel callback via INTX/GSI
+ - [x86] xen: Add xen_no_vector_callback option to test PCI INTX delivery
+ - [x86] xen: Fix xen_hvm_smp_init() when vector callback not available
+ - [riscv64] dts: phy: fix missing mdio device and probe failure of
+ vsc8541-01 device
+ - [riscv64] dts: phy: add GPIO number and active state used for phy reset
+ - drm/amdgpu/psp: fix psp gfx ctrl cmds
+ - HID: logitech-hidpp: Add product ID for MX Ergo in Bluetooth mode
+ - drm/nouveau/bios: fix issue shadowing expansion ROMs
+ - drm/nouveau/privring: ack interrupts the same way as RM
+ - drm/nouveau/i2c/gm200: increase width of aux semaphore owner fields
+ - drm/nouveau/mmu: fix vram heap sizing
+ - drm/nouveau/kms/nv50-: fix case where notifier buffer is at offset 0
+ - io_uring: flush timeouts that should already have expired
+ - [riscv64] Set current memblock limit
+ - [riscv64] Fix maximum allowed phsyical memory for RV32
+ - nfsd: Fixes for nfsd4_encode_read_plus_data()
+ - nfsd: Don't set eof on a truncated READ_PLUS
+ - gpiolib: cdev: fix frame size warning in gpio_ioctl()
+ - [armhf] pinctrl: aspeed: g6: Fix PWMG0 pinctrl setting
+ - RDMA/ucma: Do not miss ctx destruction steps in some cases
+ - btrfs: print the actual offset in btrfs_root_name
+ - scsi: megaraid_sas: Fix MEGASAS_IOC_FIRMWARE regression
+ - scsi: ufs: Fix tm request when non-fatal error happens
+ - bpf: Prevent double bpf_prog_put call from bpf_tracing_prog_attach
+ - [powerpc*] Use the common INIT_DATA_SECTION macro in vmlinux.lds.S
+ - [powerpc*] Fix alignment bug within the init sections
+ - [arm64] entry: remove redundant IRQ flag tracing
+ - bpf: Reject too big ctx_size_in for raw_tp test run
+ - RDMA/umem: Avoid undefined behavior of rounddown_pow_of_two()
+ - RDMA/cma: Fix error flow in default_roce_mode_store
+ - printk: ringbuffer: fix line counting
+ - printk: fix kmsg_dump_get_buffer length calulations
+ - iov_iter: fix the uaccess area in copy_compat_iovec_from_user
+ - [mips*] i2c: octeon: check correct size of maximum RECV_LEN packet
+ - [armel,armhf] drm/vc4: Unify PCM card's driver_name
+ - [x86] platform/x86: intel-vbtn: Drop HP Stream x360 Convertible PC 11
+ from allow-list
+ - [x86] platform/x86: hp-wmi: Don't log a warning on
+ HPWMI_RET_UNKNOWN_COMMAND errors
+ - ALSA: hda: Balance runtime/system PM if direct-complete is disabled
+ - xsk: Clear pool even for inactive queues
+ - can: dev: can_restart: fix use after free bug
+ - can: vxcan: vxcan_xmit: fix use after free bug
+ - can: peak_usb: fix use after free bugs
+ - iio: common: st_sensors: fix possible infinite loop in
+ st_sensors_irq_thread
+ - iio: ad5504: Fix setting power-down state
+ - drivers: iio: temperature: Add delay after the addressed reset command
+ in mlx90632.c
+ - [powerpc*] 64s: fix scv entry fallback flush vs interrupt
+ - cifs: do not fail __smb_send_rqst if non-fatal signals are pending
+ - [mips*] irqchip/mips-cpu: Set IPI domain parent chip
+ - [x86] fpu: Add kernel_fpu_begin_mask() to selectively initialize state
+ - [x86] topology: Make __max_die_per_package available unconditionally
+ - [x86] mmx: Use KFPU_387 for MMX string operations
+ - [x86] setup: don't remove E820_TYPE_RAM for pfn 0
+ - proc_sysctl: fix oops caused by incorrect command parameters
+ - mm: memcg/slab: optimize objcg stock draining
+ - mm: memcg: fix memcg file_dirty numa stat
+ - mm: fix numa stats for thp migration
+ - io_uring: iopoll requests should also wake task ->in_idle state
+ - io_uring: fix SQPOLL IORING_OP_CLOSE cancelation state
+ - io_uring: fix short read retries for non-reg files
+ - [x86] intel_th: pci: Add Alder Lake-P support
+ - [arm64] serial: mvebu-uart: fix tx lost characters at power off
+ - ehci: fix EHCI host controller initialization sequence
+ - [armhf] usb: gadget: aspeed: fix stop dma register setting.
+ - USB: gadget: dummy-hcd: Fix errors in port-reset handling
+ - usb: udc: core: Use lock when write to soft_connect
+ - xhci: make sure TRB is fully written before giving it to the controller
+ - [arm64,armhf] xhci: tegra: Delay for disabling LFPS detector
+ - drivers core: Free dma_range_map when driver probe failed
+ - driver core: Fix device link device name collision
+ - driver core: Extend device_is_dependent()
+ - [x86] drm/i915: s/intel_dp_sink_dpms/intel_dp_set_power/
+ - [x86] drm/i915: Only enable DFP 4:4:4->4:2:0 conversion when outputting
+ YCbCr 4:4:4
+ - [x86] entry: Fix noinstr fail
+ - [x86] cpu/amd: Set __max_die_per_package on AMD
+ - cls_flower: call nla_ok() before nla_next()
+ - netfilter: rpfilter: mask ecn bits before fib lookup
+ - [x86] drm/i915/hdcp: Update CP property in update_pipe
+ - locking/lockdep: Cure noinstr fail
+ - [x86] ASoC: SOF: Intel: fix page fault at probe if i915 init fails
+ - [arm64,armhf] net: dsa: mv88e6xxx: also read STU state in
+ mv88e6250_g1_vtu_getnext
+ - nvme-pci: refactor nvme_unmap_data
+ - nvme-pci: fix error unwind in nvme_map_data
+ - cachefiles: Drop superfluous readpages aops NULL check
+ - skbuff: back tiny skbs with kmalloc() in __netdev_alloc_skb() too
+ - tcp: fix TCP socket rehash stats mis-accounting
+ - net_sched: gen_estimator: support large ewma log
+ - udp: mask TOS bits in udp_v4_early_demux()
+ - ipv6: create multicast route with RTPROT_KERNEL
+ - net_sched: avoid shift-out-of-bounds in tcindex_set_parms()
+ - net_sched: reject silly cell_log in qdisc_get_rtab()
+ - ipv6: set multicast flag on the multicast route
+ - net: Disable NETIF_F_HW_TLS_RX when RXCSUM is disabled
+ - [armhf] net: dsa: b53: fix an off by one in checking "vlan->vid"
+ - tcp: do not mess with cloned skbs in tcp_add_backlog()
+ - tcp: fix TCP_USER_TIMEOUT with zero window
+ - net: core: devlink: use right genl user_ptr when handling port param
+ get/set
+ - [arm64] pinctrl: qcom: Allow SoCs to specify a GPIO function that's not
+ 0
+ - [arm64] pinctrl: qcom: No need to read-modify-write the interrupt status
+ - [arm64] pinctrl: qcom: Properly clear "intr_ack_high" interrupts when
+ unmasking
+ - [arm64] pinctrl: qcom: Don't clear pending interrupts when enabling
+ - tty: implement write_iter
+ - tty: fix up hung_up_tty_write() conversion
+ - tcp: Fix potential use-after-free due to double kfree()
+ - [x86] ASoC: SOF: Intel: hda: Avoid checking jack on system suspend
+ - [x86] drm/i915/hdcp: Get conn while content_type changed
+ - bpf: Local storage helpers should check nullness of owner ptr passed
+ - kernfs: implement ->read_iter
+ - kernfs: implement ->write_iter
+ - kernfs: wire up ->splice_read and ->splice_write
+ - fs/pipe: allow sendfile() to pipe again
+ - mm: fix initialization of struct page for holes in memory layout
+ - Revert "mm: fix initialization of struct page for holes in memory
+ layout"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.12
+ - [arm*] gpio: mvebu: fix pwm .get_state period calculation
+ - Revert "mm/slub: fix a memory leak in sysfs_slab_add()"
+ - HID: wacom: Correct NULL dereference on AES pen proximity
+ - HID: multitouch: Apply MT_QUIRK_CONFIDENCE quirk for multi-input devices
+ - media: Revert "media: videobuf2: Fix length check for single plane
+ dmabuf queueing"
+ - media: v4l2-subdev.h: BIT() is not available in userspace
+ - RDMA/vmw_pvrdma: Fix network_hdr_type reported in WC
+ - iwlwifi: dbg: Don't touch the tlv data
+ - kernel/io_uring: cancel io_uring before task works
+ - io_uring: inline io_uring_attempt_task_drop()
+ - io_uring: add warn_once for io_uring_flush()
+ - io_uring: stop SQPOLL submit on creator's death
+ - io_uring: fix null-deref in io_disable_sqo_submit
+ - io_uring: do sqo disable on install_fd error
+ - io_uring: fix false positive sqo warning on flush
+ - io_uring: fix uring_flush in exit_files() warning
+ - io_uring: fix skipping disabling sqo on exec
+ - io_uring: dont kill fasync under completion_lock
+ - io_uring: fix sleeping under spin in __io_clean_op
+ - objtool: Don't fail on missing symbol table
+ - mm/page_alloc: add a missing mm_page_alloc_zone_locked() tracepoint
+ - mm: fix a race on nr_swap_pages
+ - tools: Factor HOSTCC, HOSTLD, HOSTAR definitions
+ - printk: fix buffer overflow potential for print_text()
+ - printk: fix string termination for record_print_text()
+
+ [ Salvatore Bonaccorso ]
+ * Add set of PI futex fixes (CVE-2021-3347)
+ - futex: Ensure the correct return value from futex_lock_pi()
+ - futex: Replace pointless printk in fixup_owner()
+ - futex: Provide and use pi_state_update_owner()
+ - rtmutex: Remove unused argument from rt_mutex_proxy_unlock()
+ - futex: Use pi_state_update_owner() in put_pi_state()
+ - futex: Simplify fixup_pi_state_owner()
+ - futex: Handle faults correctly for PI futexes
+ * Bump ABI to 3
+ * xen: Fix XenStore initialisation for XS_LOCAL
+ * [rt] Refresh "printk: refactor kmsg_dump_get_buffer()"
+ * [rt] Refresh "locking/rtmutex: Handle the various new futex race
+ conditions"
+ * [rt] Refresh "locking/rtmutex: add sleeping lock implementation"
+ * [rt] Refresh "crypto: limit more FPU-enabled sections"
+ * Unset CRYPTO_USER_API_ENABLE_OBSOLETE
+
+ [ Ricardo Ribalda ]
+ * Enable USB_NET_AQC111 as module (Closes: #968760)
+
+ [ Vincent Blut ]
+ * [arm64] Enable DRM_VC4 again. (Closes: #968181, #968188)
+ * [arm64] Enable DRM_VC4_HDMI_CEC. (Closes: #977438)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 30 Jan 2021 21:38:57 +0100
+
+linux (5.10.9-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.6
+ - [arm64] rtc: pcf2127: move watchdog initialisation to a separate
+ function
+ - [arm64] rtc: pcf2127: only use watchdog when explicitly available
+ - dt-bindings: rtc: add reset-source property
+ - kdev_t: always inline major/minor helper functions
+ - ALSA: hda/realtek - Modify Dell platform name
+ - ALSA: hda/hdmi: Fix incorrect mutex unlock in silent_stream_disable()
+ - [x86] drm/i915/tgl: Fix Combo PHY DPLL fractional divider for 38.4MHz
+ ref clock
+ - RDMA/core: remove use of dma_virt_ops
+ - RDMA/siw,rxe: Make emulated devices virtual in the device tree
+ - fuse: fix bad inode
+ - perf: Break deadlock involving exec_update_mutex
+ - rwsem: Implement down_read_killable_nested
+ - rwsem: Implement down_read_interruptible
+ - exec: Transform exec_update_mutex into a rw_semaphore
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.7
+ - i40e: Fix Error I40E_AQ_RC_EINVAL when removing VFs
+ - iavf: fix double-release of rtnl_lock
+ - net/sched: sch_taprio: ensure to reset/destroy all child qdiscs
+ - [arm64,armhf] net: mvpp2: Add TCAM entry to drop flow control pause
+ frames
+ - [arm64,armhf] net: mvpp2: prs: fix PPPoE with ipv6 packet parse
+ - atm: idt77252: call pci_disable_device() on error path
+ - [arm64,armhf] net: mvpp2: Fix GoP port 3 Networking Complex Control
+ configurations
+ - [arm64,armhf] net: stmmac: dwmac-meson8b: ignore the second clock input
+ - [arm64,armhf] net: ethernet: mvneta: Fix error handling in mvneta_probe
+ - qede: fix offload for IPIP tunnel packets
+ - virtio_net: Fix recursive call to cpus_read_lock()
+ - [armhf] net/ncsi: Use real net-device for response handler
+ - net-sysfs: take the rtnl lock when storing xps_cpus
+ - net-sysfs: take the rtnl lock when accessing xps_cpus_map and num_tc
+ - net-sysfs: take the rtnl lock when storing xps_rxqs
+ - net-sysfs: take the rtnl lock when accessing xps_rxqs_map and num_tc
+ - [armhf] net: ethernet: ti: cpts: fix ethtool output when no ptp_clock
+ registered
+ - tun: fix return value when the number of iovs exceeds MAX_SKB_FRAGS
+ - e1000e: Only run S0ix flows if shutdown succeeded
+ - e1000e: bump up timeout to wait when ME un-configures ULP mode
+ - Revert "e1000e: disable s0ix entry and exit flows for ME systems"
+ - e1000e: Export S0ix flags to ethtool
+ - bnxt_en: Check TQM rings for maximum supported value.
+ - [arm64,armhf] net: mvpp2: fix pkt coalescing int-threshold configuration
+ - bnxt_en: Fix AER recovery.
+ - ipv4: Ignore ECN bits for fib lookups in fib_compute_spec_dst()
+ - net: sched: prevent invalid Scell_log shift count
+ - [arm64] net: hns: fix return value check in __lb_other_process()
+ - erspan: fix version 1 check in gre_parse_header()
+ - net: hdlc_ppp: Fix issues when mod_timer is called while timer is
+ running
+ - vhost_net: fix ubuf refcount incorrectly when sendmsg fails
+ - r8169: work around power-saving bug on some chip versions
+ - CDC-NCM: remove "connected" log message
+ - net: usb: qmi_wwan: add Quectel EM160R-GL
+ - block: add debugfs stanza for QUEUE_FLAG_NOWAIT
+ - workqueue: Kick a worker based on the actual activation of delayed works
+ - scsi: ufs: Fix wrong print message in dev_err()
+ - scsi: ufs-pci: Fix restore from S4 for Intel controllers
+ - scsi: ufs-pci: Ensure UFS device is in PowerDown mode for
+ suspend-to-disk ->poweroff()
+ - scsi: ufs-pci: Fix recovery from hibernate exit errors for Intel
+ controllers
+ - scsi: ufs-pci: Enable UFSHCD_CAP_RPM_AUTOSUSPEND for Intel controllers
+ - scsi: block: Introduce BLK_MQ_REQ_PM
+ - scsi: ide: Do not set the RQF_PREEMPT flag for sense requests
+ - scsi: scsi_transport_spi: Set RQF_PM for domain validation commands
+ - scsi: core: Only process PM requests if rpm_status != RPM_ACTIVE
+ - lib/genalloc: fix the overflow when size is too big
+ - scsi: ufs: Clear UAC for FFU and RPMB LUNs
+ - Bluetooth: revert: hci_h5: close serdev device and free hu in h5_close
+ - scsi: block: Remove RQF_PREEMPT and BLK_MQ_REQ_PREEMPT
+ - scsi: block: Do not accept any requests while suspended
+ - crypto: ecdh - avoid buffer overflow in ecdh_set_secret()
+ - [powerpc*] Handle .text.{hot,unlikely}.* in linker script
+ - [x86] Staging: comedi: Return -EFAULT if copy_to_user() fails
+ - usb: gadget: enable super speed plus
+ - USB: cdc-acm: blacklist another IR Droid device
+ - USB: cdc-wdm: Fix use after free in service_outstanding_interrupt().
+ - [arm64,armhf] usb: dwc3: meson-g12a: disable clk on error handling path
+ in probe
+ - [arm64,armhf] usb: dwc3: gadget: Restart DWC3 gadget when enabling
+ pullup
+ - [arm64,armhf] usb: dwc3: gadget: Clear wait flag on dequeue
+ - [arm64] usb: dwc3: ulpi: Use VStsDone to detect PHY regs access
+ completion
+ - [arm64] usb: dwc3: ulpi: Replace CPU-based busyloop with Protocol-based
+ one
+ - [arm64] usb: dwc3: ulpi: Fix USB2.0 HS/FS/LS PHY suspend regression
+ - [arm64,armhf] usb: chipidea: ci_hdrc_imx: add missing put_device() call
+ in usbmisc_get_init_data()
+ - USB: xhci: fix U1/U2 handling for hardware with XHCI_INTEL_HOST quirk
+ set
+ - usb: usbip: vhci_hcd: protect shift size
+ - usb: uas: Add PNY USB Portable SSD to unusual_uas
+ - USB: serial: iuu_phoenix: fix DMA from stack
+ - USB: serial: option: add LongSung M5710 module support
+ - USB: serial: option: add Quectel EM160R-GL
+ - USB: yurex: fix control-URB timeout handling
+ - USB: usblp: fix DMA to stack
+ - ALSA: usb-audio: Fix UBSAN warnings for MIDI jacks
+ - USB: Gadget: dummy-hcd: Fix shift-out-of-bounds bug
+ - usb: gadget: f_uac2: reset wMaxPacketSize
+ - usb: gadget: function: printer: Fix a memory leak for interface
+ descriptor
+ - usb: gadget: u_ether: Fix MTU size mismatch with RX packet size
+ - usb: gadget: Fix spinlock lockup on usb_function_deactivate
+ - usb: gadget: configfs: Preserve function ordering after bind failure
+ - usb: gadget: configfs: Fix use-after-free issue with udc_name
+ - USB: serial: keyspan_pda: remove unused variable
+ - mm: make wait_on_page_writeback() wait for multiple pending writebacks
+ - [x86] mm: Fix leak of pmd ptlock
+ - [x86] KVM: mmu: Use -1 to flag an undefined spte in get_mmio_spte()
+ - [x86] KVM: mmu: Get root level from walkers when retrieving MMIO SPTE
+ - kvm: check tlbs_dirty directly
+ - [x86] KVM: mmu: Ensure TDP MMU roots are freed after yield
+ - [x86] resctrl: Use an IPI instead of task_work_add() to update PQR_ASSOC
+ MSR
+ - [x86] resctrl: Don't move a task to the same resource group
+ - blk-iocost: fix NULL iocg deref from racing against initialization
+ - ALSA: hda/via: Fix runtime PM for Clevo W35xSS
+ - ALSA: hda/conexant: add a new hda codec CX11970
+ - ALSA: hda/realtek - Fix speaker volume control on Lenovo C940
+ - ALSA: hda/realtek: Add mute LED quirk for more HP laptops
+ - ALSA: hda/realtek: Enable mute and micmute LED on HP EliteBook 850 G7
+ - ALSA: hda/realtek: Add two "Intel Reference board" SSID in the ALC256.
+ - [amd64] iommu/vt-d: Move intel_iommu info from struct intel_svm to
+ struct intel_svm_dev
+ - btrfs: qgroup: don't try to wait flushing if we're already holding a
+ transaction
+ - btrfs: send: fix wrong file path when there is an inode with a pending
+ rmdir
+ - Revert "device property: Keep secondary firmware node secondary by type"
+ - dmabuf: fix use-after-free of dmabuf's file->f_inode
+ - [x86] drm/i915: clear the shadow batch
+ - [x86] drm/i915: clear the gpu reloc batch
+ - bcache: check unsupported feature sets for bcache register
+ - bcache: introduce BCH_FEATURE_INCOMPAT_LOG_LARGE_BUCKET_SIZE for large
+ bucket
+ - net/mlx5e: Fix SWP offsets when vlan inserted by driver
+ - netfilter: x_tables: Update remaining dereference to RCU
+ - netfilter: ipset: fix shift-out-of-bounds in htable_bits()
+ - netfilter: xt_RATEEST: reject non-null terminated string from userspace
+ - netfilter: nft_dynset: report EOPNOTSUPP on missing set feature
+ - [x86] mtrr: Correct the range check before performing MTRR type lookups
+ - xsk: Fix memory leak for failed bind
+ - rtlwifi: rise completion at the last step of firmware callback
+ - scsi: target: Fix XCOPY NAA identifier lookup (CVE-2020-28374)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.8
+ - [powerpc] 32s: Fix RTAS machine check with VMAP stack
+ - io_uring: synchronise IOPOLL on task_submit fail
+ - io_uring: limit {io|sq}poll submit locking scope
+ - io_uring: patch up IOPOLL overflow_flush sync
+ - [arm64] RDMA/hns: Avoid filling sl in high 3 bits of vlan_id
+ - [arm64,armhf] iommu/arm-smmu-qcom: Initialize SCTLR of the bypass
+ context
+ - [arm64,armhf] drm/panfrost: Don't corrupt the queue mutex on open/close
+ - io_uring: Fix return value from alloc_fixed_file_ref_node
+ - scsi: ufs: Fix -Wsometimes-uninitialized warning
+ - btrfs: skip unnecessary searches for xattrs when logging an inode
+ - btrfs: fix deadlock when cloning inline extent and low on free metadata
+ space
+ - btrfs: shrink delalloc pages instead of full inodes
+ - [arm64] net: hns3: fix incorrect handling of sctp6 rss tuple
+ - [arm64] net: hns3: fix the number of queues actually used by ARQ
+ - [arm64] net: hns3: fix a phy loopback fail issue
+ - [arm64,armhf] net: stmmac: dwmac-sun8i: Fix probe error handling
+ - [arm64,armhf] net: stmmac: dwmac-sun8i: Balance internal PHY resource
+ references
+ - [arm64,armhf] net: stmmac: dwmac-sun8i: Balance internal PHY power
+ - [arm64,armhf] net: stmmac: dwmac-sun8i: Balance syscon
+ (de)initialization
+ - net: vlan: avoid leaks on register_vlan_dev() failures
+ - net: ipv6: fib: flush exceptions when purging route
+ - net: fix pmtu check in nopmtudisc mode
+ - net: ip: always refragment ip defragmented packets
+ - nexthop: Fix off-by-one error in error path
+ - nexthop: Unlink nexthop group entry in error path
+ - nexthop: Bounce NHA_GATEWAY in FDB nexthop groups
+ - [s390x] qeth: fix deadlock during recovery
+ - [s390x] qeth: fix locking for discipline setup / removal
+ - [s390x] qeth: fix L2 header access in qeth_l3_osa_features_check()
+ - net/mlx5: Use port_num 1 instead of 0 when delete a RoCE address
+ - net/mlx5e: ethtool, Fix restriction of autoneg with 56G
+ - net/mlx5e: In skb build skip setting mark in switchdev mode
+ - net/mlx5: Check if lag is supported before creating one
+ - scsi: lpfc: Fix variable 'vport' set but not used in
+ lpfc_sli4_abts_err_handler()
+ - HID: wacom: Fix memory leakage caused by kfifo_alloc
+ - fanotify: Fix sys_fanotify_mark() on native x86-32
+ - [armhf] OMAP2+: omap_device: fix idling of devices during probe
+ - [x86] cpufreq: powernow-k8: pass policy rather than use
+ cpufreq_cpu_get()
+ - [armhf] spi: stm32: FIFO threshold level - fix align packet size
+ - i2c: i801: Fix the i2c-mux gpiod_lookup_table not being properly
+ terminated
+ - bcache: set bcache device into read-only mode for
+ BCH_FEATURE_INCOMPAT_OBSO_LARGE_BUCKET
+ - [amd64] iommu/vt-d: Fix misuse of ALIGN in qi_flush_piotlb()
+ - [amd64] iommu/intel: Fix memleak in intel_irq_remapping_alloc
+ - nvme-tcp: Fix possible race of io_work and direct send
+ - net/mlx5e: Fix memleak in mlx5e_create_l2_table_groups
+ - net/mlx5e: Fix two double free cases
+ - regmap: debugfs: Fix a memory leak when calling regmap_attach_dev
+ - [arm64,armhf] net: mvpp2: disable force link UP during port init
+ procedure
+ - [x86] drm/i915/dp: Track pm_qos per connector
+ - [arm64,armhf] net: mvneta: fix error message when MTU too large for XDP
+ - [arm64] KVM: Don't access PMCR_EL0 when no PMU is available
+ - xsk: Fix race in SKB mode transmit with shared cq
+ - xsk: Rollback reservation at NETDEV_TX_BUSY
+ - can: isotp: isotp_getname(): fix kernel information leak
+ - block: fix use-after-free in disk_part_iter_next
+ - net: drop bogus skb with CHECKSUM_PARTIAL and offset beyond end of
+ trimmed packet
+ - regmap: debugfs: Fix a reversed if statement in regmap_debugfs_init()
+ - [arm64,armhf] drm/panfrost: Remove unused variables in
+ panfrost_job_close()
+ - tools headers UAPI: Sync linux/fscrypt.h with the kernel sources
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.9
+ - btrfs: reloc: fix wrong file extent type check to avoid false ENOENT
+ - btrfs: prevent NULL pointer dereference in extent_io_tree_panic
+ - ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP
+ machines
+ - ALSA: doc: Fix reference to mixart.rst
+ - [amd64] ASoC: AMD Renoir - add DMI entry for Lenovo ThinkPad X395
+ - ASoC: dapm: remove widget from dirty list on free
+ - [x86] hyperv: check cpu mask after interrupt has been disabled
+ - drm/amdgpu: add green_sardine device id (v2)
+ - drm/amdgpu: fix DRM_INFO flood if display core is not supported (bug
+ 210921)
+ - drm/amdgpu: add new device id for Renior
+ - [x86] drm/i915: Allow the sysadmin to override security mitigations
+ - [x86] drm/i915/gt: Limit VFE threads based on GT
+ - [x86] drm/i915/backlight: fix CPU mode backlight takeover on LPT
+ - [armhf] drm/bridge: sii902x: Refactor init code into separate function
+ - dt-bindings: display: sii902x: Add supply bindings
+ - [armhf] drm/bridge: sii902x: Enable I/O and core VCC supplies if present
+ - tracing/kprobes: Do the notrace functions check without kprobes on
+ ftrace
+ - tools/bootconfig: Add tracing_on support to helper scripts
+ - ext4: use IS_ERR instead of IS_ERR_OR_NULL and set inode null when
+ IS_ERR
+ - ext4: fix wrong list_splice in ext4_fc_cleanup
+ - ext4: fix bug for rename with RENAME_WHITEOUT
+ - cifs: check pointer before freeing
+ - cifs: fix interrupted close commands
+ - [riscv64] Drop a duplicated PAGE_KERNEL_EXEC
+ - [riscv64] return -ENOSYS for syscall -1
+ - [riscv64] Fixup CONFIG_GENERIC_TIME_VSYSCALL
+ - [mips*] fix Section mismatch in reference
+ - [mips*] lib: uncached: fix non-standard usage of variable 'sp'
+ - [mips*] boot: Fix unaligned access with CONFIG_MIPS_RAW_APPENDED_DTB
+ - [mips*] Fix malformed NT_FILE and NT_SIGINFO in 32bit coredumps
+ - [mips*] relocatable: fix possible boot hangup with KASLR enabled
+ - RDMA/ocrdma: Fix use after free in ocrdma_dealloc_ucontext_pd()
+ - ACPI: scan: Harden acpi_device_add() against device ID overflows
+ - xen/privcmd: allow fetching resource sizes
+ - mm/vmalloc.c: fix potential memory leak
+ - mm/hugetlb: fix potential missing huge page size info
+ - mm/process_vm_access.c: include compat.h
+ - dm raid: fix discard limits for raid1
+ - dm snapshot: flush merged data before committing metadata
+ - dm integrity: fix flush with external metadata device
+ - dm integrity: fix the maximum number of arguments
+ - dm crypt: use GFP_ATOMIC when allocating crypto requests from softirq
+ - dm crypt: do not wait for backlogged crypto request completion in
+ softirq
+ - dm crypt: do not call bio_endio() from the dm-crypt tasklet
+ - dm crypt: defer decryption to a tasklet if interrupts disabled
+ - r8152: Add Lenovo Powered USB-C Travel Hub
+ - btrfs: tree-checker: check if chunk item end overflows
+ - ext4: don't leak old mountpoint samples
+ - io_uring: don't take files/mm for a dead task
+ - io_uring: drop mm and files after task_work_run
+ - ath11k: fix crash caused by NULL rx_channel
+ - netfilter: ipset: fixes possible oops in mtype_resize
+ - ath11k: qmi: try to allocate a big block of DMA memory first
+ - btrfs: fix async discard stall
+ - btrfs: merge critical sections of discard lock in workfn
+ - btrfs: fix transaction leak and crash after RO remount caused by qgroup
+ rescan
+ - ethernet: ucc_geth: fix definition and size of ucc_geth_tx_global_pram
+ - [arm64,armhf] hwmon: (pwm-fan) Ensure that calculation doesn't discard
+ big period values
+ - spi: fix the divide by 0 error when calculating xfer waiting time
+ - io_uring: drop file refs after task cancel
+ - bfq: Fix computation of shallow depth
+ - misdn: dsp: select CONFIG_BITREVERSE
+ - net: ethernet: fs_enet: Add missing MODULE_LICENSE
+ - nvme-pci: mark Samsung PM1725a as IGNORE_DEV_SUBNQN
+ - nvme: avoid possible double fetch in handling CQE
+ - nvmet-rdma: Fix list_del corruption on queue establishment failure
+ - drm/amdgpu: fix a GPU hang issue when remove device
+ - drm/amdgpu: fix potential memory leak during navi12 deinitialization
+ - [amd64] iommu/vt-d: Fix lockdep splat in sva bind()/unbind()
+ - ACPI: scan: add stub acpi_create_platform_device() for !CONFIG_ACPI
+ - [arm64] drm/msm: Call msm_init_vram before binding the gpu
+ - poll: fix performance regression due to out-of-line __put_user()
+ - rcu-tasks: Move RCU-tasks initialization to before early_initcall()
+ - bpf: Simplify task_file_seq_get_next()
+ - bpf: Save correct stopping point in file seq iteration
+ - nvme-fc: avoid calling _nvme_fc_abort_outstanding_ios from interrupt
+ context
+ - [amd64] iommu/vt-d: Update domain geometry in iommu_ops.at(de)tach_dev
+ - net/mlx5: Fix passing zero to 'PTR_ERR'
+ - net/mlx5: E-Switch, fix changing vf VLANID
+ - blk-mq-debugfs: Add decode for BLK_MQ_F_TAG_HCTX_SHARED
+ - mm: fix clear_refs_write locking
+ - mm: don't play games with pinned pages in clear_page_refs
+ - mm: don't put pinned pages into the swap cache
+ - perf intel-pt: Fix 'CPU too large' error
+ - dump_common_audit_data(): fix racy accesses to ->d_name
+ - [x86] ASoC: Intel: fix error code cnl_set_dsp_D0()
+ - nvmet-rdma: Fix NULL deref when setting pi_enable and traddr INADDR_ANY
+ - nvme: don't intialize hwmon for discovery controllers
+ - nvme-tcp: fix possible data corruption with bio merges
+ - nvme-tcp: Fix warning with CONFIG_DEBUG_PREEMPT
+ - NFS4: Fix use-after-free in trace_event_raw_event_nfs4_set_lock
+ - pNFS: We want return-on-close to complete when evicting the inode
+ - pNFS: Mark layout for return if return-on-close was not sent
+ - pNFS: Stricter ordering of layoutget and layoutreturn
+ - NFS: Adjust fs_context error logging
+ - NFS/pNFS: Don't call pnfs_free_bucket_lseg() before removing the request
+ - NFS/pNFS: Don't leak DS commits in pnfs_generic_retry_commit()
+ - NFS/pNFS: Fix a leak of the layout 'plh_outstanding' counter
+ - NFS: nfs_delegation_find_inode_server must first reference the
+ superblock
+ - NFS: nfs_igrab_and_active must first reference the superblock
+ - scsi: ufs: Fix possible power drain during system suspend
+ - ext4: fix superblock checksum failure when setting password salt
+ - RDMA/restrack: Don't treat as an error allocation ID wrapping
+ - [amd64] RDMA/usnic: Fix memleak in find_free_vf_and_create_qp_grp
+ - bnxt_en: Improve stats context resource accounting with RDMA driver
+ loaded.
+ - RDMA/mlx5: Fix wrong free of blue flame register on error
+ - IB/mlx5: Fix error unwinding when set_has_smi_cap fails
+ - umount(2): move the flag validity checks first
+ - [x86] drm/i915/dsi: Use unconditional msleep for the panel_on_delay when
+ there is no reset-deassert MIPI-sequence
+ - [x86] drm/i915/icl: Fix initing the DSI DSC power refcount during HW
+ readout
+ - [x86] drm/i915/gt: Restore clear-residual mitigations for Ivybridge,
+ Baytrail
+ - mm, slub: consider rest of partial list if acquire_slab() fails
+ - [riscv64] Trace irq on only interrupt is enabled
+ - [amd64] iommu/vt-d: Fix unaligned addresses for
+ intel_flush_svm_range_dev()
+ - net: sunrpc: interpret the return value of kstrtou32 correctly
+ - dm: eliminate potential source of excessive kernel log noise
+ - ALSA: fireface: Fix integer overflow in transmit_midi_msg()
+ - ALSA: firewire-tascam: Fix integer overflow in midi_port_work()
+ - netfilter: conntrack: fix reading nf_conntrack_buckets
+ - netfilter: nf_nat: Fix memleak in nf_nat_init
+
+ [ Aurelien Jarno ]
+ * Ignore ABI change for dfltcc_* symbols.
+ * [riscv64] PCI: Enable PCI_HOST_GENERIC.
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 2
+ * [rt] Update to 5.10.8-rt24
+
+ [ Bastian Blank ]
+ * [arm64] Enable support for Marvell EBU SoC.
+ * Enable remaining NET_ACT_*.
+ * Enable ACPI_HMAT, EFI_SOFT_RESERVE.
+ * Enable remaining THERMAL_GOV_*, ENERGY_MODEL.
+ * Set SCTP_DEFAULT_COOKIE_HMAC_SHA1.
+ * [x86] Enable SERIAL_8250_LPSS. (closes: #973985)
+ * Enable CRYPTO_DEV_VIRTIO.
+ * Enable DRM_AMD_DC_*.
+ * [arm] Enable CRYPTO_NHPOLY1305_NEON. (closes: #980214)
+ * [arm64] Enable MFD_AXP20X_I2C. (closes: #980114)
+ * [amd64] Enable SENSORS_AMD_ENERGY. (closes: #970699)
+ * [cloud] Enable SUSPEND. (closes: #964845)
+ * [armhf] Enable GPIO_PCA953X_IRQ. (closes: #972221)
+ * [arm] Enable DRM_VC4, DRM_VC4_HDMI_CEC. (closes: #956951)
+ * [x86] Enable STMMAC_ETH, DWMAC_INTEL. (closes: #980180)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 20 Jan 2021 17:40:43 +0100
+
+linux (5.10.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.5
+ - net/sched: sch_taprio: reset child qdiscs before freeing them
+ - ethtool: fix error paths in ethnl_set_channels()
+ - ethtool: fix string set id check
+ - md/raid10: initialize r10_bio->read_slot before use.
+ - io_uring: close a small race gap for files cancel
+ - jffs2: Allow setting rp_size to zero during remounting
+ - jffs2: Fix NULL pointer dereference in rp_size fs option parsing
+ - opp: fix memory leak in _allocate_opp_table
+ - opp: Call the missing clk_put() on error
+ - scsi: block: Fix a race in the runtime power management code
+ - mm/hugetlb: fix deadlock in hugetlb_cow error path
+ - mm: memmap defer init doesn't work as expected
+ - [s390x] lib/zlib: fix inflating zlib streams on s390
+ - io_uring: don't assume mm is constant across submits
+ - io_uring: use bottom half safe lock for fixed file data
+ - io_uring: add a helper for setting a ref node
+ - io_uring: fix io_sqe_files_unregister() hangs
+ - uapi: move constants from <linux/kernel.h> to <linux/const.h>
+ - tools headers UAPI: Sync linux/const.h with the kernel headers
+ - cgroup: Fix memory leak when parsing multiple source parameters
+ - [s390x] zlib: move EXPORT_SYMBOL() and MODULE_LICENSE() out of
+ dfltcc_syms.c
+ - Bluetooth: hci_h5: close serdev device and free hu in h5_close
+ - fbcon: Disable accelerated scrolling
+ - reiserfs: add check for an invalid ih_entry_count
+ - [x86] misc: vmw_vmci: fix kernel info-leak by initializing dbells in
+ vmci_ctx_get_chkpt_doorbells()
+ - media: gp8psk: initialize stats at power control logic
+ - f2fs: fix shift-out-of-bounds in sanity_check_raw_super()
+ - ALSA: seq: Use bool for snd_seq_queue internal flags
+ - ALSA: rawmidi: Access runtime->avail always in spinlock
+ - bfs: don't use WARNING: string when it's just info.
+ - ext4: check for invalid block size early when mounting a file system
+ - fcntl: Fix potential deadlock in send_sig{io, urg}()
+ - io_uring: check kthread stopped flag when sq thread is unparked
+ - [arm64,armhf] rtc: sun6i: Fix memleak in sun6i_rtc_clk_init
+ - module: set MODULE_STATE_GOING state when a module fails to load
+ - quota: Don't overflow quota file offsets
+ - [arm64,armhf] rtc: pl031: fix resource leak in pl031_probe
+ - i3c master: fix missing destroy_workqueue() on error in
+ i3c_master_register
+ - NFSv4: Fix a pNFS layout related use-after-free race when freeing the
+ inode
+ - f2fs: avoid race condition for shrinker count
+ - f2fs: fix race of pending_pages in decompression
+ - module: delay kobject uevent until after module init call
+ - [powerpc*] 64: irq replay remove decrementer overflow check
+ - fs/namespace.c: WARN if mnt_count has become negative
+ - ceph: fix inode refcount leak when ceph_fill_inode on non-I_NEW inode
+ fails
+ - tick/sched: Remove bogus boot "safety" check
+ - [s390x] always clear kernel stack backchain before calling functions
+ - io_uring: remove racy overflow list fast checks
+ - ALSA: pcm: Clear the full allocated memory at hw_params
+ - dm verity: skip verity work if I/O error when system is shutting down
+ - ext4: avoid s_mb_prefetch to be zero in individual scenarios
+ - device-dax: Fix range release
+
+ [ Luca Boccassi ]
+ * [amd64,arm64] Generate BTF debug info: (partially closes: #973870)
+ - Enable DEBUG_INFO_BTF.
+ - Build-Depend on dwarves >= 1.16~.
+
+ [ Aurelien Jarno ]
+ * usbip: depend on usb.ids instead of usbutils.
+ * [mips*] Fix build with binutils configured with
+ --enable-mips-fix-loongson3-llsc=yes.
+
+ [ Salvatore Bonaccorso ]
+ * Bluetooth: Fix attempting to set RPA timeout when unsupported
+ (Closes: #972968)
+ * net: cdc_ncm: correct overhead in delayed_ndp_size (Closes: #970736)
+ * mwifiex: Fix possible buffer overflows in mwifiex_cmd_802_11_ad_hoc_start
+ (CVE-2020-36158)
+ * [rt] Update to 5.10.4-rt22
+ * X.509: Fix crash caused by NULL pointer (Closes: #979496)
+ * Revert "drm/amd/display: Fix memory leaks in S3 resume"
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 09 Jan 2021 21:25:11 +0100
+
+linux (5.10.4-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.3
+ - net: ipconfig: Avoid spurious blank lines in boot log
+ - [x86] split-lock: Avoid returning with interrupts enabled
+ - exfat: Avoid allocating upcase table using kcalloc()
+ - [arm64] soc/tegra: fuse: Fix index bug in get_process_id
+ - USB: serial: option: add interface-number sanity check to flag handling
+ - USB: gadget: f_acm: add support for SuperSpeed Plus
+ - USB: gadget: f_midi: setup SuperSpeed Plus descriptors
+ - usb: gadget: f_fs: Re-use SS descriptors for SuperSpeedPlus
+ - USB: gadget: f_rndis: fix bitrate for SuperSpeed and above
+ - [arm64,armhf] usb: chipidea: ci_hdrc_imx: Pass DISABLE_DEVICE_STREAMING
+ flag to imx6ul
+ - [armhf] dts: exynos: fix roles of USB 3.0 ports on Odroid XU
+ - [armhf] dts: exynos: fix USB 3.0 pins supply being turned off on Odroid
+ XU
+ - f2fs: fix to seek incorrect data offset in inline data file
+ - f2fs: init dirty_secmap incorrectly
+ - scsi: megaraid_sas: Check user-provided offsets
+ - [arm64,x86] HID: i2c-hid: add Vero K147 to descriptor override
+ - serial_core: Check for port state when tty is in error state
+ - fscrypt: remove kernel-internal constants from UAPI header
+ - fscrypt: add fscrypt_is_nokey_name()
+ - ubifs: prevent creating duplicate encrypted filenames
+ - ext4: prevent creating duplicate encrypted filenames
+ - f2fs: prevent creating duplicate encrypted filenames
+ - Bluetooth: Fix slab-out-of-bounds read in hci_le_direct_adv_report_evt()
+ - quota: Sanity-check quota file headers on load
+ - fs: quota: fix array-index-out-of-bounds bug by passing correct argument
+ to vfs_cleanup_quota_inode()
+ - media: msi2500: assign SPI bus number dynamically
+ - crypto: af_alg - avoid undefined behavior accessing salg_name
+ - nl80211: validate key indexes for cfg80211_registered_device
+ - md: fix a warning caused by a race between concurrent md_ioctl()s
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.4
+ - [x86] hwmon: (k10temp) Remove support for displaying voltage and current
+ on Zen CPUs
+ - [x86] drm/gma500: fix double free of gma_connector
+ - [arm64] rtc: pcf2127: fix pcf2127_nvmem_read/write() returns
+ - selinux: fix error initialization in inode_doinit_with_dentry()
+ - [armhf] dts: aspeed: s2600wf: Fix VGA memory region location
+ - RDMA/core: Fix error return in _ib_modify_qp()
+ - RDMA/rxe: Compute PSN windows correctly
+ - [x86] /mm/ident_map: Check for errors from ident_pud_init()
+ - [armel,armhf] p2v: fix handling of LPAE translation in BE mode
+ - [x86] apic: Fix x2apic enablement without interrupt remapping
+ - sched/deadline: Fix sched_dl_global_validate()
+ - sched: Reenable interrupts in do_sched_yield()
+ - [arm64] crypto: inside-secure - Fix sizeof() mismatch
+ - [arm64] ASoC: sun4i-i2s: Fix lrck_period computation for I2S justified
+ mode
+ - drm/msm: Add missing stub definition
+ - [armhf] dts: aspeed: tiogapass: Remove vuart
+ - [powerpc*] 64: Set up a kernel stack for secondaries before
+ cpu_restore()
+ - f2fs: call f2fs_get_meta_page_retry for nat page
+ - RDMA/mlx5: Fix corruption of reg_pages in mlx5_ib_rereg_user_mr()
+ - [arm64] drm/msm/dp: DisplayPort PHY compliance tests fixup
+ - [arm64] drm/msm/dsi_pll_7nm: restore VCO rate during restore_state
+ - [arm64] drm/msm/dsi_pll_10nm: restore VCO rate during restore_state
+ - [arm64] drm/msm/dpu: fix clock scaling on non-sc7180 board
+ - spi: spi-mem: fix reference leak in spi_mem_access_start
+ - scsi: aacraid: Improve compat_ioctl handlers
+ - ASoC: pcm: DRAIN support reactivation
+ - [armhf] drm/bridge: tpd12s015: Fix irq registering in tpd12s015_probe
+ - [arm64] crypto: arm64/poly1305-neon - reorder PAC authentication with SP
+ update
+ - [arm64] crypto: caam - fix printing on xts fallback allocation error
+ path
+ - selinux: fix inode_doinit_with_dentry() LABEL_INVALID error handling
+ - nl80211/cfg80211: fix potential infinite loop
+ - [armhf] spi: stm32: fix reference leak in stm32_spi_resume
+ - [x86] mce: Correct the detection of invalid notifier priorities
+ - drm/edid: Fix uninitialized variable in drm_cvt_modes()
+ - ath11k: Initialize complete alpha2 for regulatory change
+ - ath11k: Fix number of rules in filtered ETSI regdomain
+ - ath11k: fix wmi init configuration
+ - brcmfmac: Fix memory leak for unpaired brcmf_{alloc/free}
+ - [arm64,armhf] drm/panel: simple: Add flags to boe_nv133fhm_n61
+ - Bluetooth: Fix null pointer dereference in hci_event_packet()
+ - Bluetooth: Fix: LL PRivacy BLE device fails to connect
+ - Bluetooth: hci_h5: fix memory leak in h5_close
+ - [armhf] spi: stm32-qspi: fix reference leak in stm32 qspi operations
+ - [armhf] spi: spi-ti-qspi: fix reference leak in ti_qspi_setup
+ - [arm64] spi: tegra20-slink: fix reference leak in slink ops of tegra20
+ - [arm64,armhf] spi: tegra20-sflash: fix reference leak in
+ tegra_sflash_resume
+ - [arm64,armhf] spi: tegra114: fix reference leak in tegra spi ops
+ - [armhf] spi: imx: fix reference leak in two imx operations
+ - [arm64] ASoC: qcom: common: Fix refcounting in qcom_snd_parse_of()
+ - ath11k: Handle errors if peer creation fails
+ - mwifiex: fix mwifiex_shutdown_sw() causing sw reset failure
+ - [arm64] drm/msm/a6xx: Clear shadow on suspend
+ - [arm64] drm/msm/a5xx: Clear shadow on suspend
+ - [arm64] drm/msm/dp: return correct connection status after suspend
+ - [arm64] drm/msm/dp: skip checking LINK_STATUS_UPDATED bit
+ - [arm64] drm/msm/dp: do not notify audio subsystem if sink doesn't
+ support audio
+ - virtiofs fix leak in setup
+ - RDMa/mthca: Work around -Wenum-conversion warning
+ - [armhf] soc: ti: omap-prm: Do not check rstst bit on deassert if already
+ deasserted
+ - [x86] crypto: qat - fix status check in qat_hal_put_rel_rd_xfer()
+ - drm/udl: Fix missing error code in udl_handle_damage()
+ - [x86] media: tm6000: Fix sizeof() mismatches
+ - media: v4l2-fwnode: Return -EINVAL for invalid bus-type
+ - media: v4l2-fwnode: v4l2_fwnode_endpoint_parse caller must init vep
+ argument
+ - [arm64,armhf] media: cedrus: fix reference leak in
+ cedrus_start_streaming
+ - [arm64] media: venus: core: change clk enable and disable order in
+ resume and suspend
+ - [arm64] media: venus: core: vote for video-mem path
+ - [arm64] media: venus: core: vote with average bandwidth and peak
+ bandwidth as zero
+ - RDMA/cma: Add missing error handling of listen_id
+ - scsi: core: Fix VPD LUN ID designator priorities
+ - [arm64] media: venus: put dummy vote on video-mem path after last
+ session release
+ - media: solo6x10: fix missing snd_card_free in error handling case
+ - [arm64,armhf] mmc: sdhci: tegra: fix wrong unit with busy_timeout
+ - [armhf] drm/omap: dmm_tiler: fix return error code in omap_dmm_probe()
+ - [arm64] drm/meson: Free RDMA resources after tearing down DRM
+ - [arm64] drm/meson: Unbind all connectors on module removal
+ - [arm64] drm/meson: dw-hdmi: Register a callback to disable the regulator
+ - [arm64] drm/meson: dw-hdmi: Ensure that clocks are enabled before
+ touching the TOP registers
+ - [amd64] iommu/vt-d: include conditionally on CONFIG_INTEL_IOMMU_SVM
+ - Input: ads7846 - fix race that causes missing releases
+ - Input: ads7846 - fix integer overflow on Rt calculation
+ - Input: ads7846 - fix unaligned access on 7845
+ - bus: mhi: core: Remove double locking from mhi_driver_remove()
+ - bus: mhi: core: Fix null pointer access when parsing MHI configuration
+ - [powerpc*] Avoid broken GCC __attribute__((optimize))
+ - [powerpc*] feature: Fix CPU_FTRS_ALWAYS by removing CPU_FTRS_GENERIC_32
+ - [armhf] dts: tacoma: Fix node vs reg mismatch for flash memory
+ - Revert "powerpc/pseries/hotplug-cpu: Remove double free in error path"
+ - [powerpc*] powernv/sriov: fix unsigned int win compared to less than
+ zero
+ - [x86] EDAC/mce_amd: Use struct cpuinfo_x86.cpu_die_id for AMD NodeId
+ - scsi: ufs: Avoid to call REQ_CLKS_OFF to CLKS_OFF
+ - scsi: ufs: Fix clkgating on/off
+ - rcu: Allow rcu_irq_enter_check_tick() from NMI
+ - rcu,ftrace: Fix ftrace recursion
+ - rcu/tree: Defer kvfree_rcu() allocation to a clean context
+ - spi: fix resource leak for drivers without .remove callback
+ - [arm64] drm/meson: dw-hdmi: Disable clocks on driver teardown
+ - [arm64] drm/meson: dw-hdmi: Enable the iahb clock early enough
+ - PCI: Disable MSI for Pericom PCIe-USB adapter
+ - [arm64] PCI: brcmstb: Initialize "tmp" before use
+ - [arm64] dts: qcom: sm8250: correct compatible for sm8250-mtp
+ - [armhf] Input: omap4-keypad - fix runtime PM error handling
+ - ath11k: Fix the rx_filter flag setting for peer rssi stats
+ - RDMA/cxgb4: Validate the number of CQEs
+ - [arm64] pinctrl: sunxi: fix irq bank map for the Allwinner A100 pin
+ controller
+ - memstick: fix a double-free bug in memstick_check
+ - brcmfmac: fix error return code in brcmf_cfg80211_connect()
+ - orinoco: Move context allocation after processing the skb
+ - rsi: fix error return code in rsi_reset_card()
+ - [arm64] dmaengine: mv_xor_v2: Fix error return code in mv_xor_v2_probe()
+ - [armel] leds: netxbig: add missing put_device() call in
+ netxbig_leds_get_of_pdata()
+ - RDMA/cma: Fix deadlock on &lock in rdma_cma_listen_on_all() error unwind
+ - media: siano: fix memory leak of debugfs members in smsdvb_hotplug
+ - [x86] platform/x86: mlx-platform: Remove PSU EEPROM from default
+ platform configuration
+ - [x86] platform/x86: mlx-platform: Remove PSU EEPROM from MSN274x
+ platform configuration
+ - [arm64] RDMA/hns: Only record vlan info for HIP08
+ - [arm64] RDMA/hns: Fix missing fields in address vector
+ - [arm64] RDMA/hns: Avoid setting loopback indicator when smac is same as
+ dmac
+ - RDMA/core: Track device memory MRs
+ - [armhf] HSI: omap_ssi: Don't jump to free ID in ssi_add_controller()
+ - [arm64] dts: armada-3720-turris-mox: update ethernet-phy handle name
+ - [arm64] dts: rockchip: Set dr_mode to "host" for OTG on rk3328-roc-cc
+ - [x86] power: supply: max17042_battery: Fix current_{avg,now} hiding with
+ no current sense
+ - [x86] power: supply: bq24190_charger: fix reference leak
+ - genirq/irqdomain: Don't try to free an interrupt that has no mapping
+ - [arm64] dts: freescale: sl28: combine SPI MTD partitions
+ - [arm64,armhf] phy: tegra: xusb: Fix usb_phy device driver field
+ - [arm64] dts: qcom: c630: Polish i2c-hid devices
+ - [arm64] dts: qcom: c630: Fix pinctrl pins properties
+ - PCI: Bounds-check command-line resource alignment requests
+ - PCI: Fix overflow in command-line resource alignment requests
+ - [arm64] dts: meson: fix spi-max-frequency on Khadas VIM2
+ - [arm64] soc: amlogic: canvas: add missing put_device() call in
+ meson_canvas_get()
+ - [arm64] scsi: hisi_sas: Fix up probe error handling for v3 hw
+ - scsi: pm80xx: Do not sleep in atomic context
+ - [arm64] spi: spi-fsl-dspi: Use max_native_cs instead of num_chipselect
+ to set SPI_MCR
+ - [arm64] RDMA/hns: Fix 0-length sge calculation error
+ - [arm64] RDMA/hns: Bugfix for calculation of extended sge
+ - soundwire: master: use pm_runtime_set_active() on add
+ - [x86] platform/x86: dell-smbios-base: Fix error return code in
+ dell_smbios_init
+ - [x86] ASoC: Intel: Boards: tgl_max98373: update TDM slot_width
+ - ath11k: Don't cast ath11k_skb_cb to ieee80211_tx_info.control
+ - ath11k: Reset ath11k_skb_cb before setting new flags
+ - ath11k: Fix an error handling path
+ - ath10k: Fix the parsing error in service available event
+ - ath10k: Fix an error handling path
+ - ath10k: Release some resources in an error handling path
+ - SUNRPC: rpc_wake_up() should wake up tasks in the correct order
+ - NFSv4.2: condition READDIR's mask for security label based on LSM state
+ - SUNRPC: xprt_load_transport() needs to support the netid "rdma6"
+ - NFSv4: Fix the alignment of page data in the getdeviceinfo reply
+ - net: sunrpc: Fix 'snprintf' return value check in 'do_xprt_debugfs'
+ - lockd: don't use interval-based rebinding over TCP
+ - NFS: switch nfsiod to be an UNBOUND workqueue.
+ - vfio-pci: Use io_remap_pfn_range() for PCI IO memory
+ - f2fs: fix double free of unicode map
+ - media: tvp5150: Fix wrong return value of tvp5150_parse_dt()
+ - media: saa7146: fix array overflow in vidioc_s_audio()
+ - [powerpc*] perf: Fix crash with is_sier_available when pmu is not set
+ - [powerpc*] 64: Fix an EMIT_BUG_ENTRY in head_64.S
+ - [powerpc*] xmon: Fix build failure for 8xx
+ - [powerpc*] perf: Fix to update radix_scope_qual in power10
+ - [powerpc*] perf: Update the PMU group constraints for l2l3 events in
+ power10
+ - [powerpc*] perf: Fix the PMU group constraints for threshold events in
+ power10
+ - [armel,armhf] clocksource/drivers/orion: Add missing
+ clk_disable_unprepare() on error path
+ - [arm64] mte: fix prctl(PR_GET_TAGGED_ADDR_CTRL) if TCF0=NONE
+ - bpf: Fix bpf_put_raw_tracepoint()'s use of __module_address()
+ - [arm64,armhf] soc: rockchip: io-domain: Fix error return code in
+ rockchip_iodomain_probe()
+ - memstick: r592: Fix error return in r592_probe()
+ - [mips64el] Don't round up kernel sections size for memblock_add()
+ - mt76: dma: fix possible deadlock running mt76_dma_cleanup
+ - net/mlx5: Properly convey driver version to firmware
+ - mt76: fix memory leak if device probing fails
+ - dm ioctl: fix error return code in target_message
+ - [arm64] drm/msm: a5xx: Make preemption reset case reentrant
+ - [arm64,armhf] clocksource/drivers/arm_arch_timer: Use stable count
+ reader in erratum sne
+ - [arm64,armhf] clocksource/drivers/arm_arch_timer: Correct fault
+ programming of CNTKCTL_EL1.EVNTI
+ - [m68k] macintosh/adb-iop: Always wait for reply message from IOP
+ - [m68k] macintosh/adb-iop: Send correct poll command
+ - Bluetooth: btusb: Add the missed release_firmware() in
+ btusb_mtk_setup_firmware()
+ - Bluetooth: btmtksdio: Add the missed release_firmware() in
+ mtk_setup_firmware()
+ - Bluetooth: sco: Fix crash when using BT_SNDMTU/BT_RCVMTU option
+ - Bluetooth: btusb: Fix detection of some fake CSR controllers with a
+ bcdDevice val of 0x0134
+ - [x86] platform/x86: intel-vbtn: Fix SW_TABLET_MODE always reporting 1 on
+ some HP x360 models
+ - adm8211: fix error return code in adm8211_probe()
+ - mtd: spi-nor: sst: fix BPn bits for the SST25VF064C
+ - mtd: spi-nor: ignore errors in spi_nor_unlock_all()
+ - mtd: spi-nor: atmel: remove global protection flag
+ - mtd: spi-nor: atmel: fix unlock_all() for AT25FS010/040
+ - [arm64] dts: meson: fix PHY deassert timing requirements
+ - [armhf] dts: meson: fix PHY deassert timing requirements
+ - [arm64] dts: meson: g12a: x96-max: fix PHY deassert timing requirements
+ - [arm64] clk: fsl-sai: fix memory leak
+ - scsi: qedi: Fix missing destroy_workqueue() on error in __qedi_probe
+ - scsi: pm80xx: Fix error return in pm8001_pci_probe()
+ - scsi: iscsi: Fix inappropriate use of put_device()
+ - seq_buf: Avoid type mismatch for seq_buf_init
+ - [x86] scsi: fnic: Fix error return code in fnic_probe()
+ - [x86] platform/x86: mlx-platform: Fix item counter assignment for
+ MSN2700, MSN24xx systems
+ - [x86] platform/x86: mlx-platform: Fix item counter assignment for
+ MSN2700/ComEx system
+ - [armel,armhf] 9030/1: entry: omit FP emulation for UND exceptions taken
+ in kernel mode
+ - [powerpc*] pseries/hibernation: drop pseries_suspend_begin() from
+ suspend ops
+ - [powerpc*] pseries/hibernation: remove redundant cacheinfo update
+ - [powerpc*] powermac: Fix low_sleep_handler with CONFIG_VMAP_STACK
+ - [x86] ASoC: amd: change clk_get() to devm_clk_get() and add missed
+ checks
+ - [x86] ASoC: max98390: Fix error codes in max98390_dsm_init()
+ - [powerpc*] mm: sanity_check_fault() should work for all, not only BOOK3S
+ - [armhf] usb: ehci-omap: Fix PM disable depth umbalance in
+ ehci_hcd_omap_probe
+ - speakup: fix uninitialized flush_lock
+ - nfsd: Fix message level for normal termination
+ - NFSD: Fix 5 seconds delay when doing inter server copy
+ - nfs_common: need lock during iterate through the list
+ - [x86] kprobes: Restore BTF if the single-stepping is cancelled
+ - scsi: qla2xxx: Fix FW initialization error on big endian machines
+ - scsi: qla2xxx: Fix N2N and NVMe connect retry failure
+ - [arm64,armhf] platform/chrome: cros_ec_spi: Don't overwrite spi::mode
+ - [arm64] bus: fsl-mc: add back accidentally dropped error check
+ - [arm64] bus: fsl-mc: fix error return code in fsl_mc_object_allocate()
+ - [armhf] fsi: Aspeed: Add mutex to protect HW access
+ - [s390x] cio: fix use-after-free in ccw_device_destroy_console
+ - iwlwifi: dbg-tlv: fix old length in is_trig_data_contained()
+ - iwlwifi: mvm: hook up missing RX handlers
+ - erofs: avoid using generic_block_bmap
+ - [powerpc*] sstep: Emulate prefixed instructions only when
+ CPU_FTR_ARCH_31 is set
+ - [powerpc*] sstep: Cover new VSX instructions under CONFIG_VSX
+ - ALSA: hda/hdmi: fix silent stream for first playback to DP
+ - RDMA/core: Do not indicate device ready when device enablement fails
+ - RDMA/uverbs: Fix incorrect variable type
+ - [arm64,armhf] clk: tegra: Fix duplicated SE clock entry
+ - [armhf] mtd: rawnand: gpmi: fix reference count leak in gpmi ops
+ - [armhf] mtd: rawnand: gpmi: Fix the random DMA timeout issue
+ - samples/bpf: Fix possible hang in xdpsock with multiple threads
+ - fs: Handle I_DONTCACHE in iput_final() instead of generic_drop_inode()
+ - mac80211: don't set set TDLS STA bandwidth wider than possible
+ - mac80211: fix a mistake check for rx_stats update
+ - [arm64] irqchip/alpine-msi: Fix freeing of interrupts on allocation
+ error path
+ - [arm64] RDMA/hns: Limit the length of data copied between kernel and
+ userspace
+ - [arm64] RDMA/hns: Normalization the judgment of some features
+ - [arm64] RDMA/hns: Do shift on traffic class when using RoCEv2
+ - gpiolib: irq hooks: fix recursion in gpiochip_irq_unmask
+ - ath11k: Fix incorrect tlvs in scan start command
+ - watchdog: Fix potential dereferencing of null pointer
+ - sunrpc: fix xs_read_xdr_buf for partial pages receive
+ - RDMA/mlx5: Fix MR cache memory leak
+ - RDMA/cma: Don't overwrite sgid_attr after device is released
+ - [powerpc*] perf: Fix Threshold Event Counter Multiplier width for P10
+ - [powerpc*] ps3: use dma_mapping_error()
+ - mm/gup: reorganize internal_get_user_pages_fast()
+ - mm/gup: prevent gup_fast from racing with COW during fork
+ - mm/gup: combine put_compound_head() and unpin_user_page()
+ - mm: memcg/slab: fix return of child memcg objcg for root memcg
+ - mm: memcg/slab: fix use after free in obj_cgroup_charge
+ - mm/rmap: always do TTU_IGNORE_ACCESS
+ - [sparc64] fix handling of page table constructor failure
+ - mm/vmalloc: Fix unlock order in s_stop()
+ - mm/vmalloc.c: fix kasan shadow poisoning size
+ - mm,memory_failure: always pin the page in madvise_inject_error
+ - hugetlb: fix an error code in hugetlb_reserve_pages()
+ - mm: don't wake kswapd prematurely when watermark boosting is disabled
+ - proc: fix lookup in /proc/net subdirectories after setns(2)
+ - lan743x: fix rx_napi_poll/interrupt ping-pong
+ - ice, xsk: clear the status bits for the next_to_use descriptor
+ - i40e, xsk: clear the status bits for the next_to_use descriptor
+ - [arm64] dpaa2-eth: fix the size of the mapped SGT buffer
+ - [arm64] net: bcmgenet: Fix a resource leak in an error handling path in
+ the probe functin
+ - [armhf] net: allwinner: Fix some resources leak in the error handling
+ path of the probe and in the remove function
+ - NFS/pNFS: Fix a typo in ff_layout_resend_pnfs_read()
+ - devlink: use _BITUL() macro instead of BIT() in the UAPI header
+ - libnvdimm/label: Return -ENXIO for no slot in __blk_label_update
+ - [powerpc*] 32s: Fix cleanup_cpu_mmu_context() compile bug
+ - [arm64] watchdog: qcom: Avoid context switch in restart handler
+ - [armhf] clk: ti: Fix memleak in ti_fapll_synth_setup
+ - [armhf] pwm: imx27: Fix overflow for bigger periods
+ - [arm64,armhf] pwm: sun4i: Remove erroneous else branch
+ - io_uring: cancel only requests of current task
+ - perf record: Fix memory leak when using '--user-regs=?' to list
+ registers
+ - qlcnic: Fix error code in probe
+ - nfp: move indirect block cleanup to flower app stop callback
+ - virtio_ring: Cut and paste bugs in vring_create_virtqueue_packed()
+ - virtio_net: Fix error code in probe()
+ - virtio_ring: Fix two use after free bugs
+ - vhost scsi: fix error return code in vhost_scsi_set_endpoint()
+ - epoll: check for events when removing a timed out thread from the wait
+ queue
+ - [arm*] clk: bcm: dvp: Add MODULE_DEVICE_TABLE()
+ - [armhf] clk: s2mps11: Fix a resource leak in error handling paths in the
+ probe function
+ - [arm64,armhf] clk: sunxi-ng: Make sure divider tables have sentinel
+ - [powerpc*] smp: Add __init to init_big_cores()
+ - [armel,armhf] 9044/1: vfp: use undef hook for VFP support detection
+ - [armel,armhf] 9036/1: uncompress: Fix dbgadtb size parameter name
+ - perf probe: Fix memory leak when synthesizing SDT probes
+ - io_uring: fix racy IOPOLL flush overflow
+ - io_uring: cancel reqs shouldn't kill overflow list
+ - proc mountinfo: make splice available again
+ - io_uring: fix io_cqring_events()'s noflush
+ - io_uring: fix racy IOPOLL completions
+ - io_uring: always let io_iopoll_complete() complete polled io
+ - vfio/pci: Move dummy_resources_list init in vfio_pci_probe()
+ - media: gspca: Fix memory leak in probe
+ - io_uring: fix io_wqe->work_list corruption
+ - io_uring: fix 0-iov read buffer select
+ - io_uring: hold uring_lock while completing failed polled io in
+ io_wq_submit_work()
+ - io_uring: fix ignoring xa_store errors
+ - io_uring: fix double io_uring free
+ - io_uring: make ctx cancel on exit targeted to actual ctx
+ - [armhf] media: sunxi-cir: ensure IR is handled when it is continuous
+ - media: netup_unidvb: Don't leak SPI master in probe error path
+ - [x86] Input: cyapa_gen6 - fix out-of-bounds stack access
+ - ALSA: hda/ca0132 - Change Input Source enum strings.
+ - [amd64,arm64] ACPI: NFIT: Fix input validation of bus-family
+ - PM: ACPI: PCI: Drop acpi_pm_set_bridge_wakeup()
+ - Revert "ACPI / resources: Use AE_CTRL_TERMINATE to terminate resources
+ walks"
+ - ACPI: PNP: compare the string length in the matching_id()
+ - ALSA: hda: Fix regressions on clear and reconfig sysfs
+ - ALSA: hda/ca0132 - Fix AE-5 rear headphone pincfg.
+ - ALSA: hda/realtek: make bass spk volume adjustable on a yoga laptop
+ - ALSA: hda/realtek - Enable headset mic of ASUS X430UN with ALC256
+ - ALSA: hda/realtek - Enable headset mic of ASUS Q524UQK with ALC255
+ - ALSA: hda/realtek - Add supported for more Lenovo ALC285 Headset Button
+ - ALSA: pcm: oss: Fix a few more UBSAN fixes
+ - ALSA/hda: apply jack fixup for the Acer Veriton N4640G/N6640G/N2510G
+ - ALSA: hda/realtek: Add quirk for MSI-GP73
+ - ALSA: hda/realtek: Apply jack fixup for Quanta NL3
+ - ALSA: hda/realtek: Remove dummy lineout on Acer TravelMate P648/P658
+ - ALSA: hda/realtek - Supported Dell fixed type headset
+ - ALSA: usb-audio: Add VID to support native DSD reproduction on FiiO
+ devices
+ - ALSA: usb-audio: Disable sample read check if firmware doesn't give back
+ - ALSA: usb-audio: Add alias entry for ASUS PRIME TRX40 PRO-S
+ - ALSA: core: memalloc: add page alignment for iram
+ - [s390x] smp: perform initial CPU reset also for SMT siblings
+ - [s390x] idle: add missing mt_cycles calculation
+ - [s390x] idle: fix accounting with machine checks
+ - [s390x] dasd: fix hanging device offline processing
+ - [s390x] dasd: prevent inconsistent LCU device data
+ - [s390x] dasd: fix list corruption of pavgroup group list
+ - [s390x] dasd: fix list corruption of lcu list
+ - binder: add flag to clear buffer on txn complete
+ - [x86] ASoC: cx2072x: Fix doubly definitions of Playback and Capture
+ streams
+ - [amd64] ASoC: AMD Renoir - add DMI table to avoid the ACP mic probe
+ (broken BIOS)
+ - [amd64] ASoC: AMD Raven/Renoir - fix the PCI probe (PCI revision)
+ - [x86] staging: comedi: mf6x4: Fix AI end-of-conversion detection
+ - z3fold: simplify freeing slots
+ - z3fold: stricter locking and more careful reclaim
+ - [x86] perf/x86/intel: Add event constraint for
+ CYCLE_ACTIVITY.STALLS_MEM_ANY
+ - [x86] perf/x86/intel: Fix rtm_abort_event encoding on Ice Lake
+ - [x86] perf/x86/intel/lbr: Fix the return type of get_lbr_cycles()
+ - [powerpc*] perf: Exclude kernel samples while counting events in user
+ space.
+ - [x86] cpufreq: intel_pstate: Use most recent guaranteed performance
+ values
+ - crypto: ecdh - avoid unaligned accesses in ecdh_set_secret()
+ - [x86] EDAC/amd64: Fix PCI component registration
+ - cpuset: fix race between hotplug work and later CPU offline
+ - dyndbg: fix use before null check
+ - USB: serial: mos7720: fix parallel-port state restore
+ - USB: serial: digi_acceleport: fix write-wakeup deadlocks
+ - USB: serial: keyspan_pda: fix dropped unthrottle interrupts
+ - USB: serial: keyspan_pda: fix write deadlock
+ - USB: serial: keyspan_pda: fix stalled writes
+ - USB: serial: keyspan_pda: fix write-wakeup use-after-free
+ - USB: serial: keyspan_pda: fix tx-unthrottle use-after-free
+ - USB: serial: keyspan_pda: fix write unthrottling
+ - btrfs: do not shorten unpin len for caching block groups
+ - btrfs: update last_byte_to_unpin in switch_commit_roots
+ - btrfs: fix race when defragmenting leads to unnecessary IO
+ - ext4: fix an IS_ERR() vs NULL check
+ - ext4: fix a memory leak of ext4_free_data
+ - ext4: fix deadlock with fs freezing and EA inodes
+ - ext4: don't remount read-only with errors=continue on reboot
+ - [riscv64] Fix usage of memblock_enforce_memory_limit
+ - [arm64] KVM: Introduce handling of AArch32 TTBCR2 traps
+ - [x86] KVM: reinstate vendor-agnostic check on SPEC_CTRL cpuid bits
+ - [x86] KVM: SVM: Remove the call to sev_platform_status() during setup
+ - [arm64,armhf] iommu/arm-smmu: Allow implementation specific write_s2cr
+ - [arm64,armhf] iommu/arm-smmu-qcom: Read back stream mappings
+ - [arm64,armhf] iommu/arm-smmu-qcom: Implement S2CR quirk
+ - [armhf] dts: pandaboard: fix pinmux for gpio user button of Pandaboard
+ ES
+ - xprtrdma: Fix XDRBUF_SPARSE_PAGES support
+ - [powerpc*] 32: Fix vmap stack - Properly set r1 before activating MMU on
+ syscall too
+ - [powerpc*] Fix incorrect stw{, ux, u, x} instructions in __set_pte_at
+ - [powerpc*] rtas: Fix typo of ibm,open-errinjct in RTAS filter
+ - [powerpc*] bitops: Fix possible undefined behaviour with fls() and
+ fls64()
+ - [powerpc*] feature: Add CPU_FTR_NOEXECUTE to G2_LE
+ - [powerpc*] xmon: Change printk() to pr_cont()
+ - [powerpc*] 8xx: Fix early debug when SMC1 is relocated
+ - [powerpc*] mm: Fix verification of MMU_FTR_TYPE_44x
+ - [powerpc*] powernv/npu: Do not attempt NPU2 setup on POWER8NVL NPU
+ - [powerpc*] powernv/memtrace: Don't leak kernel memory to user space
+ - [powerpc*] powernv/memtrace: Fix crashing the kernel when enabling
+ concurrently
+ - ovl: make ioctl() safe
+ - ceph: fix race in concurrent __ceph_remove_cap invocations
+ - SMB3: avoid confusing warning message on mount to Azure
+ - SMB3.1.1: remove confusing mount warning when no SPNEGO info on negprot
+ rsp
+ - SMB3.1.1: do not log warning message if server doesn't populate salt
+ - ubifs: wbuf: Don't leak kernel memory to flash
+ - jffs2: Fix GC exit abnormally
+ - jffs2: Fix ignoring mounting options problem during remounting
+ - fsnotify: generalize handle_inode_event()
+ - inotify: convert to handle_inode_event() interface
+ - fsnotify: fix events reported to watching parent and child
+ - jfs: Fix array index bounds check in dbAdjTree (CVE-2020-27815)
+ - [arm64,armhf] drm/panfrost: Fix job timeout handling
+ - [arm64,armhf] drm/panfrost: Move the GPU reset bits outside the timeout
+ handler
+ - [x86] platform/x86: mlx-platform: remove an unused variable
+ - drm/dp_aux_dev: check aux_dev before use in
+ drm_dp_aux_dev_get_by_minor()
+ - [x86] drm/i915: Fix mismatch between misplaced vma check and vma insert
+ - iio: ad_sigma_delta: Don't put SPI transfer buffer on the stack
+ - [arm64,armhf] spi: pxa2xx: Fix use-after-free on unbind
+ - [armhf] spi: gpio: Don't leak SPI master in probe error path
+ - [armel] mtd: parser: cmdline: Fix parsing of part-names with colons
+ - mtd: core: Fix refcounting for unpartitioned MTDs
+ - scsi: qla2xxx: Fix crash during driver load on big endian machines
+ - scsi: lpfc: Fix invalid sleeping context in lpfc_sli4_nvmet_alloc()
+ - scsi: lpfc: Fix scheduling call while in softirq context in
+ lpfc_unreg_rpi
+ - scsi: lpfc: Re-fix use after free in lpfc_rq_buf_free()
+ - openat2: reject RESOLVE_BENEATH|RESOLVE_IN_ROOT
+ - iio: buffer: Fix demux update
+ - iio: imu: st_lsm6dsx: fix edge-trigger interrupts
+ - iio:light:rpr0521: Fix timestamp alignment and prevent data leak.
+ - iio:light:st_uvis25: Fix timestamp alignment and prevent data leak.
+ - iio:magnetometer:mag3110: Fix alignment and data leak issues.
+ - iio:pressure:mpl3115: Force alignment of buffer
+ - iio:imu:bmi160: Fix too large a buffer.
+ - iio:imu:bmi160: Fix alignment and data leak issues
+ - md/cluster: block reshape with remote resync job
+ - md/cluster: fix deadlock when node is doing resync job
+ - [arm64,armhf] pinctrl: sunxi: Always call chained_irq_{enter, exit} in
+ sunxi_pinctrl_irq_handler
+ - [arm64] clk: mvebu: a3700: fix the XTAL MODE pin to MPP1_9
+ - [arm64,armhf] clk: tegra: Do not return 0 on failure
+ - device-dax/core: Fix memory leak when rmmod dax.ko
+ - dma-buf/dma-resv: Respect num_fences when initializing the shared fence
+ list.
+ - driver: core: Fix list corruption after device_del()
+ - libnvdimm/namespace: Fix reaping of invalidated block-window-namespace
+ labels
+ - [x86] platform/x86: intel-vbtn: Allow switch events on Acer Switch Alpha
+ 12
+ - tracing: Disable ftrace selftests when any tracer is running
+ - mt76: add back the SUPPORTS_REORDERING_BUFFER flag
+ - PCI: Fix pci_slot_release() NULL pointer dereference
+ - [arm64,armhf] regulator: axp20x: Fix DLDO2 voltage control register mask
+ for AXP22x
+ - [arm*] thermal/drivers/cpufreq_cooling: Update cpufreq_state only if
+ state has changed
+ - null_blk: Fix zone size initialization
+ - null_blk: Fail zone append to conventional zones
+ - drm/edid: fix objtool warning in drm_cvt_modes()
+ - [x86] CPU/AMD: Save AMD NodeId as cpu_die_id
+
+ [ Uwe Kleine-König ]
+ * [armhf] Enable VIDEO_CODA and VIDEO_IMX_PXP for i.MX6 platforms
+
+ [ Vincent Blut ]
+ * [x86] Enable SND_SOC_INTEL_USER_FRIENDLY_LONG_NAMES. (Closes: #976791)
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Drop "z3fold: simplify freeing slots"
+ * [rt] Drop "z3fold: stricter locking and more careful reclaim"
+ * [rt] Refresh "sched: Move mmdrop to RCU on RT"
+ * Set ABI to 1
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 31 Dec 2020 07:26:43 +0100
+
+linux (5.10.2-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.2
+ - ptrace: Prevent kernel-infoleak in ptrace_get_syscall_info()
+ - USB: legotower: fix logical error in recent commit
+ - USB: add RESET_RESUME quirk for Snapscan 1212
+ - ALSA: usb-audio: Fix potential out-of-bounds shift
+ - ALSA: usb-audio: Fix control 'access overflow' errors from chmap
+ - xhci: Give USB2 ports time to enter U3 in bus suspend
+ - usb: xhci: Set quirk for XHCI_SG_TRB_CACHE_SIZE_QUIRK
+ - xhci-pci: Allow host runtime PM as default for Intel Alpine Ridge LP
+ - xhci-pci: Allow host runtime PM as default for Intel Maple Ridge xHCI
+ - USB: UAS: introduce a quirk to set no_write_same
+ - ALSA: pcm: oss: Fix potential out-of-bounds shift
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.10.1-rt20
+ * Revert "Generate BTF debug info" (fixes FTBFS on 32bit architectures)
+ (Reopen: #973870) (Cf. #977715)
+ * Enable USB_DUMMY_HCD as module (Closes: #868771)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Tue, 22 Dec 2020 22:22:59 +0100
+
+linux (5.10.1-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_5.10
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.10.1
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.10-rt17
+
+ [ Ben Hutchings ]
+ * userns: Enable unprivileged user namespaces by default (Closes: #898446)
+ (sysctl: kernel.unprivileged_userns_clone)
+
+ [ Bastian Blank ]
+ * Enable all Industrial I/O accelerometers. (closes: #975572)
+ * Enable all Industrial I/O ADC.
+ * Enable all Industrial I/O DAC.
+ * Enable all Industrial I/O digital gyroscopes.
+ * Enable all Industrial I/O IMU.
+ * Enable all Industrial I/O light sensors.
+ * Enable all Industrial I/O magnetometers.
+ * Enable all Industrial I/O pressure sensors.
+ * Enable all Industrial I/O proximity sensors.
+ * Enable all Industrial I/O temperatur sensors.
+ * Enable BT_LEDS.
+ * Enable remaining LEDS_TRIGGER_*.
+ * Enable ZONEFS_FS.
+ * Gemerate BTF debug info: (closes: #973870)
+ - Enable DEBUG_INFO_BTF.
+ - Build-depend on dwarves.
+ * [amd64] Support high CPU counts:
+ - Set MAXSMP.
+ - Remove not longer modifiable NR_CPUS.
+ * [armel/marvell] Disable uncompressed size check.
+ * [x86] Enable INTEL_TXT. (closes: #960195)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 17 Dec 2020 10:06:31 +0100
+
+linux (5.10~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Vincent Blut ]
+ * net/sched: Enable NET_SCH_ETS and NET_SCH_FQ_PIE as modules.
+
+ [ Bastian Blank ]
+ * Enable SOUNDWIRE, SOUNDWIRE_INTEL, SOUNDWIRE_QCOM.
+ * Enable SND_SOC_RT700_SDW, SND_SOC_RT711_SDW, SND_SOC_RT715_SDW.
+ (closes: #976791)
+ * [x86] Enable SND_SOC_SOF_INTEL_SOUNDWIRE_LINK.
+ * [x86] Enable SND_SOC_SOF_COMETLAKE_LP_SUPPORT,
+ SND_SOC_SOF_ELKHARTLAKE_SUPPORT, SND_SOC_SOF_JASPERLAKE_SUPPORT.
+ * [cloud] Disable some further filesystems. (closes: #977005)
+ * [cloud] Disable NET_VENDOR_MICROCHIP.
+ * [cloud] Disable ICE, IGC.
+ * [amd64] Make GVE module.
+ * [x86] Enable X86_CPU_RESCTRL.
+ * [amd64/cloud] Disable INFINIBAND_USNIC.
+ * Enable PSTORE_BLK.
+ * Set SQUASHFS_FILE_DIRECT, SQUASHFS_DECOMP_MULTI_PERCPU.
+ * Disable EFI_VARS.
+ * [x86] Enable APPLE_PROPERTIES.
+ * Enable CRYPTO_ECRDSA, CRYPTO_CURVE25519, disable CRYPTO_SM2.
+ * Enable CRYPTO_CFB, CRYPTO_OFB, CRYPTO_KEYWRAP, CRYPTO_ADIANTUM.
+ * Enable CRYPTO_BLAKE2S, disable CRYPTO_SM3.
+ * Enable CRYPTO_AES_TI, disable CRYPTO_SM4.
+ * Enable CRYPTO_DRBG_HASH, CRYPTO_DRBG_CTR.
+ * Enable SND_SOC_MAX98373_SDW, SND_SOC_RT1308_SDW, SND_SOC_RT5682_SDW.
+ * Enable SND_SOC_INTEL_SOUNDWIRE_SOF_MACH.
+ * Enable ATH11K. (closes: #977004)
+ * [arm64] Enable most accelerated crypto modules. (closes: #976635)
+ * [s390x] Disable IIO.
+ * Enable BLK_CGROUP_IOCOST.
+ * Enable CGROUP_HUGETLB.
+
+ [ Ben Hutchings ]
+ * Fix missing module.lds for building out-of-tree modules (Closes: #975571)
+ - debian/rules.real: Install module.lds under arch directory
+ - kbuild: Look for module.lds under arch directory too
+
+ -- Bastian Blank <waldi@debian.org> Fri, 11 Dec 2020 11:16:29 +0100
+
+linux (5.10~rc6-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Romain Perier ]
+ * Enable F2FS compression support (Closes: #969139)
+
+ [ Uwe Kleine-König ]
+ * [arm64] Enable support for Kontron's sl28cpld Board Management Controller
+ * [arm64] Enable support for NXP's PCF85063 RTC (Closes: #972345)
+
+ [ Salvatore Bonaccorso ]
+ * udeb: Remove efivars from efi-modules.
+ * [rt] Update to 5.10-rc6-rt13
+
+ [ Aurelien Jarno ]
+ * [mips*] Increase RELOCATION_TABLE_SIZE to 0x180000.
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 03 Dec 2020 15:42:50 +0100
+
+linux (5.10~rc4-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Uwe Kleine-König ]
+ * enable support for ISO 15765-2:2016 CAN (CAN_ISOTP)
+
+ [ YunQiang Su ]
+ * [mips/loongson-3]: enable some new features for 3A 4000
+ - VIRTUALIZATION/KVM
+ - HOTPLUG_PCI
+ - RTC based on GOLDFISH
+ - ieee754 to relaxed mode
+
+ [ Madhu Adav M J ]
+ * nvme: Enable NVME_TCP and NVME_TARGET_TCP as modules (Closes: #961573)
+
+ [ Ben Hutchings ]
+ * Rewrite "MODSIGN: load blacklist from MOKx" for 5.10
+ * Revert "lockdown: Refer to Debian wiki until manual page exists";
+ the page was added in man-pages 5.09
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.10-rc4-rt8
+ * linux-cpupower: Add librt to turbostat linker flags
+
+ [ Nicolas Dandrimont ]
+ * udeb: add bonding driver to nic-modules
+
+ -- Ben Hutchings <benh@debian.org> Thu, 19 Nov 2020 12:58:26 +0000
+
+linux (5.9.15-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.12
+ - io_uring: get an active ref_node from files_data
+ - io_uring: order refnode recycling
+ - [arm*] spi: bcm2835: Fix use-after-free on unbind
+ - ipv4: use IS_ENABLED instead of ifdef
+ - [amd64] IB/hfi1: Ensure correct mm is used at all times (CVE-2020-27835)
+ - RDMA/i40iw: Address an mmap handler exploit in i40iw
+ - btrfs: fix missing delalloc new bit for new delalloc ranges
+ - btrfs: tree-checker: add missing return after error in root_item
+ - btrfs: tree-checker: add missing returns after data_ref alignment checks
+ - btrfs: don't access possibly stale fs_info data for printing duplicate
+ device
+ - btrfs: fix lockdep splat when reading qgroup config on mount
+ - [arm64] rtc: pcf2127: fix a bug when not specify interrupts property
+ - [s390x] fix fpu restore in entry.S
+ - mm: fix VM_BUG_ON(PageTail) and BUG_ON(PageWriteback)
+ - smb3: Call cifs reconnect from demultiplex thread
+ - smb3: Avoid Mid pending list corruption
+ - smb3: Handle error case during offload read path
+ - cifs: fix a memleak with modefromsid
+ - [powerpc*] KVM: PPC: Book3S HV: XIVE: Fix possible oops when accessing
+ ESB page
+ - [arm64] KVM: vgic-v3: Drop the reporting of GICR_TYPER.Last for
+ userspace
+ - [x86] KVM: x86: handle !lapic_in_kernel case in kvm_cpu_*_extint
+ - [x86] KVM: x86: Fix split-irqchip vs interrupt injection window request
+ - [amd64] iommu/vt-d: Don't read VCCAP register unless it exists
+ - [arm64] firmware: xilinx: Use hash-table for api feature check
+ - drm/amdgpu: fix SI UVD firmware validate resume fail
+ - io_uring: fix ITER_BVEC check
+ - trace: fix potenial dangerous pointer
+ - [arm64] pgtable: Fix pte_accessible()
+ - [arm64] pgtable: Ensure dirty bit is preserved across pte_wrprotect()
+ - drm/amdgpu: fix a page fault
+ - drm/amdgpu: update golden setting for sienna_cichlid
+ - drm/amd/amdgpu: fix null pointer in runtime pm
+ - HID: uclogic: Add ID for Trust Flex Design Tablet
+ - HID: ite: Replace ABS_MISC 120/121 events with touchpad on/off
+ keypresses
+ - HID: cypress: Support Varmilo Keyboards' media hotkeys
+ - HID: add support for Sega Saturn
+ - Input: i8042 - allow insmod to succeed on devices without an i8042
+ controller
+ - HID: hid-sensor-hub: Fix issue with devices with no report ID
+ - HID: add HID_QUIRK_INCREMENT_USAGE_ON_DUPLICATE for Gamevice devices
+ - [x86] xen: don't unbind uninitialized lock_kicker_irq
+ - HID: logitech-hidpp: Add HIDPP_CONSUMER_VENDOR_KEYS quirk for the Dinovo
+ Edge
+ - HID: Add Logitech Dinovo Edge battery quirk
+ - proc: don't allow async path resolution of /proc/self components
+ - nvme: free sq/cq dbbuf pointers when dbbuf set fails
+ - io_uring: handle -EOPNOTSUPP on path resolution
+ - [arm64,armhf] net: stmmac: dwmac_lib: enlarge dma reset timeout
+ - vhost: add helper to check if a vq has been setup
+ - vhost scsi: alloc cmds per vq instead of session
+ - vhost scsi: fix cmd completion race
+ - [arm64,armhf] dmaengine: pl330: _prep_dma_memcpy: Fix wrong burst size
+ - scsi: libiscsi: Fix NOP race condition
+ - scsi: target: iscsi: Fix cmd abort fabric stop race
+ - lockdep: Put graph lock/unlock under lock_recursion protection
+ - [x86] perf/x86: fix sysfs type mismatches
+ - [x86] dumpstack: Do not try to access user space code of other tasks
+ - [arm64,armhf] net: dsa: mv88e6xxx: Wait for EEPROM done after HW reset
+ - [armhf] bus: ti-sysc: Fix reset status check for modules with quirks
+ - [armhf] bus: ti-sysc: Fix bogus resetdone warning on enable for cpsw
+ - [arm64,armhf] phy: tegra: xusb: Fix dangling pointer on probe failure
+ - iwlwifi: mvm: use the HOT_SPOT_CMD to cancel an AUX ROC
+ - iwlwifi: mvm: properly cancel a session protection for P2P
+ - iwlwifi: mvm: write queue_sync_state only for sync
+ - [s390x] KVM: pv: Mark mm as protected after the set secure parameters
+ and improve cleanup
+ - [s390x] KVM: remove diag318 reset code
+ - btrfs: qgroup: don't commit transaction when we already hold the handle
+ - arch: pgtable: define MAX_POSSIBLE_PHYSMEM_BITS where needed
+ - [armhf] bus: ti-sysc: suppress err msg for timers used as
+ clockevent/source
+ - scsi: ufs: Fix race between shutdown and runtime resume flow
+ - bnxt_en: fix error return code in bnxt_init_one()
+ - bnxt_en: fix error return code in bnxt_init_board()
+ - [x86] video: hyperv_fb: Fix the cache type when mapping the VRAM
+ - bnxt_en: Release PCI regions when DMA mask setup fails during probe.
+ - cxgb4: fix the panic caused by non smac rewrite
+ - [s390x] qeth: make af_iucv TX notification call more robust
+ - [s390x] qeth: fix af_iucv notification race
+ - [s390x] qeth: fix tear down of async TX buffers
+ - bonding: wait for sysfs kobject destruction before freeing struct slave
+ - [powerpc*] 64s: Fix allnoconfig build since uaccess flush
+ - iommu: Check return of __iommu_attach_device()
+ - IB/mthca: fix return value of error branch in mthca_init_cq()
+ - i40e: Fix removing driver while bare-metal VFs pass traffic
+ - [arm64] firmware: xilinx: Fix SD DLL node reset issue
+ - [armhf] spi: imx: fix the unbalanced spi runtime pm management
+ - io_uring: fix shift-out-of-bounds when round up cq size
+ - [amd64,arm64] aquantia: Remove the build_skb path
+ - net: ena: handle bad request id in ena_netdev
+ - net: ena: set initial DMA width to avoid intel iommu issue
+ - net: ena: fix packet's addresses for rx_offset feature
+ - [arm64] optee: add writeback to valid memory type
+ - efi/efivars: Set generic ops before loading SSDT
+ - efivarfs: revert "fix memory leak in efivarfs_create()"
+ (Closes: #977048)
+ - efi: EFI_EARLYCON should depend on EFI
+ - [riscv64] Add missing jump label initialization
+ - [riscv64] fix barrier() use in <vdso/processor.h>
+ - [arm64,armhf] net: stmmac: fix incorrect merge of patch upstream
+ - [arm64] enetc: Let the hardware auto-advance the taprio base-time of 0
+ - drm/nouveau: fix relocations applying logic and a double-free
+ - can: gs_usb: fix endianess problem with candleLight firmware
+ - [x86] platform/x86: thinkpad_acpi: Send tablet mode switch at wakeup
+ time
+ - [x86] platform/x86: toshiba_acpi: Fix the wrong variable assignment
+ - [arm64] RDMA/hns: Fix retry_cnt and rnr_cnt when querying QP
+ - [arm64] RDMA/hns: Bugfix for memory window mtpt configuration
+ - perf record: Synthesize cgroup events only if needed
+ - perf stat: Use proper cpu for shadow stats
+ - perf probe: Fix to die_entrypc() returns error correctly
+ - [arm*] spi: bcm2835aux: Restore err assignment in bcm2835aux_spi_probe
+ - USB: core: Change %pK for __user pointers to %px
+ - usb: gadget: f_midi: Fix memleak in f_midi_alloc
+ - USB: core: Fix regression in Hercules audio card
+ - USB: quirks: Add USB_QUIRK_DISCONNECT_SUSPEND quirk for Lenovo A630Z TIO
+ built-in usb-audio card
+ - usb: gadget: Fix memleak in gadgetfs_fill_super
+ - [arm64] irqchip/exiu: Fix the index of fwspec for IRQ type
+ - [x86] mce: Do not overwrite no_way_out if mce_end() fails
+ - [x86] speculation: Fix prctl() when spectre_v2_user={seccomp,prctl},ibpb
+ - drm/amdgpu: add rlc iram and dram firmware support
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.13
+ - devlink: Hold rtnl lock while reading netdev attributes
+ - devlink: Make sure devlink instance and port are in same net namespace
+ - ipv6: addrlabel: fix possible memory leak in ip6addrlbl_net_init
+ - [s390x] net/af_iucv: set correct sk_protocol for child sockets
+ - net: openvswitch: fix TTL decrement action netlink message format
+ - rose: Fix Null pointer dereference in rose_send_frame()
+ - sock: set sk_err to ee_errno on dequeue from errq
+ - tcp: Set INET_ECN_xmit configuration in tcp_reinit_congestion_control
+ - tun: honor IOCB_NOWAIT flag
+ - vsock/virtio: discard packets only when socket is really closed
+ - net/packet: fix packet receive on L3 devices without visible hard header
+ - netfilter: bridge: reset skb->pkt_type after NF_INET_POST_ROUTING
+ traversal
+ - ipv4: Fix tos mask in inet_rtm_getroute()
+ - dt-bindings: net: correct interrupt flags in examples
+ - tipc: fix incompatible mtu of transmission
+ - inet_ecn: Fix endianness of checksum update when setting ECT(1)
+ - geneve: pull IP header before ECN decapsulation
+ - net: ip6_gre: set dev->hard_header_len when using header_ops
+ - cxgb3: fix error return code in t3_sge_alloc_qset()
+ - [powerpc*] net: pasemi: fix error return code in pasemi_mac_open()
+ - vxlan: fix error return code in __vxlan_dev_create()
+ - [arm64,armhf] net: mvpp2: Fix error return code in mvpp2_open()
+ - net: skbuff: ensure LSE is pullable before decrementing the MPLS ttl
+ - net: openvswitch: ensure LSE is pullable before reading it
+ - net/mlx5: DR, Proper handling of unsupported Connect-X6DX SW steering
+ - net/mlx5: Fix wrong address reclaim when command interface is down
+ - net: mlx5e: fix fs_tcp.c build when IPV6 is not enabled
+ - ALSA: usb-audio: US16x08: fix value count for level meters
+ - Input: xpad - support Ardwiino Controllers
+ - Input: i8042 - add ByteSpeed touchpad to noloop table
+ - Input: atmel_mxt_ts - fix lost interrupts
+ - tracing: Fix alignment of static buffer
+ - tracing: Remove WARN_ON in start_thread()
+ - uapi: fix statx attribute value overlap for DAX & MOUNT_ROOT
+ - [x86] drm/i915/gt: Fixup tgl mocs for PTE tracking
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.14
+ - usb: gadget: f_fs: Use local copy of descriptors for userspace copy
+ - USB: serial: kl5kusb105: fix memleak on open
+ - USB: serial: ch341: add new Product ID for CH341A
+ - USB: serial: ch341: sort device-id entries
+ - USB: serial: option: add Fibocom NL668 variants
+ - USB: serial: option: add support for Thales Cinterion EXS82
+ - USB: serial: option: fix Quectel BG96 matching
+ - tty: Fix ->pgrp locking in tiocspgrp() (CVE-2020-29661)
+ - tty: Fix ->session locking (CVE-2020-29660)
+ - speakup: Reject setting the speakup line discipline outside of speakup
+ (CVE-2020-27830)
+ - ALSA: hda/realtek: Fix bass speaker DAC assignment on Asus Zephyrus G14
+ - ALSA: hda/realtek: Add mute LED quirk to yet another HP x360 model
+ - ALSA: hda/realtek: Enable headset of ASUS UX482EG & B9400CEA with ALC294
+ - ALSA: hda/realtek - Add new codec supported for ALC897
+ - ALSA: hda/realtek - Fixed Dell AIO wrong sound tone
+ - ALSA: hda/generic: Add option to enforce preferred_dacs pairs
+ - ring-buffer: Update write stamp with the correct ts
+ - ring-buffer: Set the right timestamp in the slow path of
+ __rb_reserve_next()
+ - ring-buffer: Always check to put back before stamp when crossing pages
+ - ftrace: Fix updating FTRACE_FL_TRAMP
+ - ftrace: Fix DYNAMIC_FTRACE_WITH_DIRECT_CALLS dependency
+ - cifs: allow syscalls to be restarted in __smb_send_rqst()
+ - cifs: fix potential use-after-free in cifs_echo_request()
+ - cifs: refactor create_sd_buf() and and avoid corrupting the buffer
+ - cifs: add NULL check for ses->tcon_ipc
+ - gfs2: Upgrade shared glocks for atime updates
+ - gfs2: Fix deadlock between gfs2_{create_inode,inode_lookup} and
+ delete_work_func
+ - [s390x] pci: fix CPU address in MSI for directed IRQ
+ - [arm64,armhf] i2c: imx: Fix reset of I2SR_IAL flag
+ - [arm64,armhf] i2c: imx: Check for I2SR_IAL after every byte
+ - [arm64,armhf] i2c: imx: Don't generate STOP condition if arbitration has
+ been lost
+ - tracing: Fix userstacktrace option for instances
+ - [x86] thunderbolt: Fix use-after-free in remove_unplugged_switch()
+ - [armhf] drm/omap: sdi: fix bridge enable/disable
+ - drm/amdgpu/vcn3.0: stall DPG when WPTR/RPTR reset
+ - drm/amdgpu/vcn3.0: remove old DPG workaround
+ - [x86] drm/i915/gt: Retain default context state across shrinking
+ - [x86] drm/i915/gt: Limit frequency drop to RPe on parking
+ - [x86] drm/i915/gt: Program mocs:63 for cache eviction on gen9
+ - [powerpc*] KVM: PPC: Book3S HV: XIVE: Fix vCPU id sanity check
+ - scsi: mpt3sas: Fix ioctl timeout
+ - io_uring: fix recvmsg setup with compat buf-select
+ - dm writecache: advance the number of arguments when reporting max_age
+ - dm writecache: fix the maximum number of arguments
+ - [powerpc*] 64s/powernv: Fix memory corruption when saving SLB entries on
+ MCE
+ - genirq/irqdomain: Add an irq_create_mapping_affinity() function
+ - [powerpc*] pseries: Pass MSI affinity to irq_create_mapping()
+ - dm: fix bug with RCU locking in dm_blk_report_zones
+ - dm: fix double RCU unlock in dm_dax_zero_page_range() error path
+ - dm: remove invalid sparse __acquires and __releases annotations
+ - [x86] uprobes: Do not use prefixes.nbytes when looping over
+ prefixes.bytes
+ - coredump: fix core_pattern parse error
+ - mm: list_lru: set shrinker map bit when child nr_items is not zero
+ - mm/swapfile: do not sleep with a spin lock held
+ - hugetlb_cgroup: fix offline of hugetlb cgroup with reservations
+ - Revert "amd/amdgpu: Disable VCN DPG mode for Picasso"
+ - iommu/amd: Set DTE[IntTabLen] to represent 512 IRTEs
+ - mm: memcg/slab: fix obj_cgroup_charge() return value handling
+ - lib/syscall: fix syscall registers retrieval on 32-bit platforms
+ (CVE-2020-28588)
+ - can: af_can: can_rx_unregister(): remove WARN() statement from list
+ operation sanity check
+ - gfs2: check for empty rgrp tree in gfs2_ri_update
+ - netfilter: ipset: prevent uninit-value in hash_ip6_add
+ - tipc: fix a deadlock when flushing scheduled work
+ - gfs2: Fix deadlock dumping resource group glocks
+ - gfs2: Don't freeze the file system during unmount
+ - rtw88: debug: Fix uninitialized memory in debugfs code
+ - [arm64] i2c: qup: Fix error return code in qup_i2c_bam_schedule_desc()
+ - dm writecache: remove BUG() and fail gracefully instead
+ - Input: i8042 - fix error return code in i8042_setup_aux()
+ - netfilter: nf_tables: avoid false-postive lockdep splat
+ - netfilter: nftables_offload: set address type in control dissector
+ - netfilter: nftables_offload: build mask based from the matching bytes
+ - [x86] insn-eval: Use new for_each_insn_prefix() macro to loop over
+ prefixes bytes
+ - Revert "geneve: pull IP header before ECN decapsulation"
+ - bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds.
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.15
+ - mm/zsmalloc.c: drop ZSMALLOC_PGTABLE_MAPPING
+ - kprobes: Remove NMI context check
+ - kprobes: Tell lockdep about kprobe nesting
+ - [x86] ASoC: Intel: bytcr_rt5640: Fix HP Pavilion x2 Detachable quirks
+ - net, xsk: Avoid taking multiple skbuff references
+ - bpftool: Fix error return value in build_btf_type_table
+ - [powerpc*] 64s: Fix hash ISA v3.0 TLBIEL instruction generation
+ - batman-adv: Consider fragmentation for needed_headroom
+ - batman-adv: Reserve needed_*room for fragments
+ - batman-adv: Don't always reallocate the fragmentation skb head
+ - ipvs: fix possible memory leak in ip_vs_control_net_init
+ - [armhf] drm/panel: sony-acx565akm: Fix race condition in probe
+ - can: sja1000: sja1000_err(): don't count arbitration lose as an error
+ - [armhf] can: sun4i_can: sun4i_can_err(): don't count arbitration lose as
+ an error
+ - [armhf] can: c_can: c_can_power_up(): fix error handling
+ - [x86] scsi: storvsc: Fix error return in storvsc_probe()
+ - iwlwifi: pcie: invert values of NO_160 device config entries
+ - [x86] perf/x86/intel: Fix a warning on x86_pmu_stop() with large PEBS
+ - [x390x] zlib: export S390 symbols for zlib modules
+ - mm/mmap.c: fix mmap return value when vma is merged after call_mmap()
+ - [arm64] dts: rockchip: Remove system-power-controller from pmic on
+ Odroid Go Advance
+ - iwlwifi: pcie: limit memory read spin time
+ - iwlwifi: sta: set max HE max A-MPDU according to HE capa
+ - iwlwifi: pcie: set LTR to avoid completion timeout
+ - iwlwifi: mvm: fix kernel panic in case of assert during CSA
+ - [powerpc*] Drop -me200 addition to build flags
+ - scsi: ufs: Fix unexpected values from ufshcd_read_desc_param()
+ - scsi: ufs: Make sure clk scaling happens only when HBA is runtime ACTIVE
+ - [arm64,armhf] irqchip/gic-v3-its: Unconditionally save/restore the ITS
+ state on suspend
+ - [arm64] spi: spi-nxp-fspi: fix fspi panic by unexpected interrupts
+ - [arm64,armhf] arm-smmu-qcom: Ensure the qcom_scm driver has finished
+ probing
+ - btrfs: do nofs allocations when adding and removing qgroup relations
+ - btrfs: fix lockdep splat when enabling and disabling qgroups
+ - [arm64] soc: fsl: dpio: Get the cpumask through cpumask_of(cpu)
+ - sched/idle: Fix arch_cpu_idle() vs tracing
+ - [x86] intel_idle: Fix intel_idle() vs tracing
+ - [x86] platform/x86: thinkpad_acpi: add P1 gen3 second fan support
+ - [x86] platform/x86: thinkpad_acpi: Do not report SW_TABLET_MODE on Yoga
+ 11e
+ - [x86] platform/x86: thinkpad_acpi: Add BAT1 is primary battery quirk for
+ Thinkpad Yoga 11e 4th gen
+ - [x86] platform/x86: thinkpad_acpi: Whitelist P15 firmware for dual fan
+ control
+ - [x86] platform/x86: acer-wmi: add automatic keyboard background light
+ toggle key as KEY_LIGHTS_TOGGLE
+ - [x86] platform/x86: intel-vbtn: Support for tablet mode on HP Pavilion
+ 13 x360 PC
+ - [s390x] fix irq state tracing
+ - [x86] intel_idle: Build fix
+ - media: pulse8-cec: fix duplicate free at disconnect or probe error
+ - media: pulse8-cec: add support for FW v10 and up
+ - xen: add helpers for caching grant mapping pages
+ - xen: don't use page->lru for ZONE_DEVICE memory
+ - Input: cm109 - do not stomp on control URB
+ - Input: i8042 - add Acer laptops to the i8042 reset list
+ - pinctrl: amd: remove debounce filter setting in IRQ type setting
+ - [arm64] mmc: sdhci-of-arasan: Fix clock registration error for Keem Bay
+ SOC
+ - mmc: block: Fixup condition for CMD13 polling for RPMB requests
+ - [x86] drm/i915/gem: Propagate error from cancelled submit due to context
+ closure
+ - [x86] drm/i915/display/dp: Compute the correct slice count for VDSC on
+ DP
+ - [x86] drm/i915/gt: Declare gen9 has 64 mocs entries!
+ - [x86] drm/i915/gt: Ignore repeated attempts to suspend request flow
+ across reset
+ - [x86] drm/i915/gt: Cancel the preemption timeout on responding to it
+ - drm/amdgpu: fix sdma instance fw version and feature version init
+ - kbuild: avoid static_assert for genksyms
+ - proc: use untagged_addr() for pagemap_read addresses
+ - mm/hugetlb: clear compound_nr before freeing gigantic pages
+ - scsi: be2iscsi: Revert "Fix a theoretical leak in beiscsi_create_eqs()"
+ - [x86] membarrier: Get rid of a dubious optimization
+ - [x86] apic/vector: Fix ordering in vector assignment
+ - [x86] kprobes: Fix optprobe to detect INT3 padding correctly
+
+ [ Salvatore Bonaccorso ]
+ * [x86] drm/i915: Update TGL and RKL DMC firmware versions (Closes: #974646)
+ * [rt] Refresh "mm/zsmalloc: copy with get_cpu_var() and locking"
+ * xen/xenbus: Allow watches discard events before queueing (CVE-2020-29568,
+ XSA-349)
+ * xen/xenbus: Add 'will_handle' callback support in xenbus_watch_path()
+ (CVE-2020-29568, XSA-349)
+ * xen/xenbus/xen_bus_type: Support will_handle watch callback
+ (CVE-2020-29568, XSA-349)
+ * xen/xenbus: Count pending messages for each watch (CVE-2020-29568,
+ XSA-349)
+ * xenbus/xenbus_backend: Disallow pending watch messages (CVE-2020-29568,
+ XSA-349)
+ * xen-blkback: set ring->xenblkd to NULL after kthread_stop()
+ (CVE-2020-29569, XSA-350)
+ * Bump ABI to 5
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 17 Dec 2020 06:31:52 +0100
+
+linux (5.9.11-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.10
+ - [powerpc*] 64s: flush L1D on kernel entry (CVE-2020-4788)
+ - [powerpc*] 64s: flush L1D after user accesses (CVE-2020-4788)
+ - [powerpc*] Only include kup-radix.h for 64-bit Book3S
+ - Input: sunkbd - avoid use-after-free in teardown paths (CVE-2020-25669)
+ - mac80211: always wind down STA state
+ - can: proc: can_remove_proc(): silence remove_proc_entry warning
+ - [powerpc*] smp: Call rcu_cpu_starting() earlier
+ - [x86] perf/x86/intel/uncore: Fix Add BW copypasta
+ - [x86] KVM: clflushopt should be treated as a no-op by emulation
+ - [arm64,x86] ACPI: GED: fix -Wformat
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.11
+ - ah6: fix error return code in ah6_input()
+ - atm: nicstar: Unmap DMA on send error
+ - bnxt_en: read EEPROM A2h address using page 0
+ - devlink: Add missing genlmsg_cancel() in devlink_nl_sb_port_pool_fill()
+ - [arm64] enetc: Workaround for MDIO register access issue
+ - Exempt multicast addresses from five-second neighbor lifetime
+ - inet_diag: Fix error path to cancel the meseage in inet_req_diag_fill()
+ - ipv6: Fix error path to cancel the meseage
+ - lan743x: fix issue causing intermittent kernel log warnings
+ - lan743x: prevent entire kernel HANG on open, for some platforms
+ - net: b44: fix error return code in b44_init_one()
+ - net: bridge: add missing counters to ndo_get_stats64 callback
+ - [arm64,armhf] net: dsa: mv88e6xxx: Avoid VTU corruption on 6097
+ - [armhf] net: ethernet: ti: cpsw: fix cpts irq after suspend
+ - [armhf] net: ethernet: ti: cpsw: fix error return code in cpsw_probe()
+ - [armhf] net: ftgmac100: Fix crash when removing driver
+ - net: Have netpoll bring-up DSA management interface
+ - netlabel: fix our progress tracking in netlbl_unlabel_staticlist()
+ - netlabel: fix an uninitialized warning in netlbl_unlabel_staticlist()
+ - net/mlx4_core: Fix init_hca fields offset
+ - [armhf] net/ncsi: Fix netlink registration
+ - net: phy: mscc: remove non-MACSec compatible phy
+ - net/smc: fix direct access to ib_gid_addr->ndev in
+ smc_ib_determine_gid()
+ - [arm64,armhf] net: stmmac: Use rtnl_lock/unlock on
+ netif_set_real_num_rx_queues() call
+ - page_frag: Recover from memory pressure
+ - qed: fix error return code in qed_iwarp_ll2_start()
+ - qed: fix ILT configuration of SRC block
+ - qlcnic: fix error return code in qlcnic_83xx_restart_hw()
+ - sctp: change to hold/put transport for proto_unreach_timer
+ - tcp: only postpone PROBE_RTT if RTT is < current min_rtt estimate
+ - vsock: forward all packets to the host when no H2G is registered
+ - net/mlx5e: Fix check if netdev is bond slave
+ - net/mlx5: Add handling of port type in rule deletion
+ - net/mlx5: Clear bw_share upon VF disable
+ - net/mlx5: Disable QoS when min_rates on all VFs are zero
+ - PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter
+ - [armhf] net: fec: Fix reference count leak in fec series ops
+ - bnxt_en: Fix counter overflow logic.
+ - bnxt_en: Free port stats during firmware reset.
+ - [arm64,armhf] net: mvneta: fix possible memory leak in
+ mvneta_swbm_add_rx_fragment
+ - net: usb: qmi_wwan: Set DTR quirk for MR400
+ - [armhf] Revert "Revert "gpio: omap: Fix lost edge wake-up interrupts""
+ - tools, bpftool: Avoid array index warnings.
+ - [arm64,armhf] pinctrl: rockchip: enable gpio pclk for
+ rockchip_gpio_to_irq
+ - scsi: ufs: Fix unbalanced scsi_block_reqs_cnt caused by ufshcd_hold()
+ - scsi: ufs: Try to save power mode change and UIC cmd completion timeout
+ - [armhf] pinctrl: mcp23s08: Print error message when regmap init fails
+ - [x86] ACPI: button: Add DMI quirk for Medion Akoya E2228T
+ - [arm64] errata: Fix handling of 1418040 with late CPU onlining
+ - [arm64] psci: Avoid printing in cpu_psci_cpu_die()
+ - [arm64] smp: Tell RCU about CPUs that fail to come online
+ - vfs: remove lockdep bogosity in __sb_start_write
+ - gfs2: fix possible reference leak in gfs2_check_blk_type
+ - [arm64,armhf] hwmon: (pwm-fan) Fix RPM calculation
+ - gfs2: Fix case in which ail writes are done to jdata holes
+ - [arm64] Add MIDR value for KRYO2XX gold/silver CPU cores
+ - [arm64] kpti: Add KRYO2XX gold/silver CPU cores to kpti safelist
+ - [arm64] cpu_errata: Apply Erratum 845719 to KRYO2XX Silver
+ - [arm64,armhf] usb: dwc2: Avoid leaving the error_debugfs label unused
+ - [arm64] dts: allwinner: beelink-gs1: Enable both RGMII RX/TX delay
+ - [arm64] dts: allwinner: Pine H64: Enable both RGMII RX/TX delay
+ - [arm64] dts: allwinner: a64: OrangePi Win: Fix ethernet node
+ - [arm64] dts: allwinner: a64: Pine64 Plus: Fix ethernet node
+ - [arm64] dts: allwinner: h5: OrangePi PC2: Fix ethernet node
+ - [armhf] dts: sun8i: r40: bananapi-m2-ultra: Fix ethernet node
+ - [armhf] Revert "arm: sun8i: orangepi-pc-plus: Set EMAC activity LEDs to
+ active high"
+ - [armhf] dts: sun6i: a31-hummingbird: Enable RGMII RX/TX delay on
+ Ethernet PHY
+ - [armhf] dts: sun7i: cubietruck: Enable RGMII RX/TX delay on Ethernet PHY
+ - [armhf] dts: sun7i: bananapi-m1-plus: Enable RGMII RX/TX delay on
+ Ethernet PHY
+ - [armhf] dts: sun8i: h3: orangepi-plus2e: Enable RGMII RX/TX delay on
+ Ethernet PHY
+ - [armhf] dts: sun9i: Enable both RGMII RX/TX delay on Ethernet PHY
+ - [arm64] dts: allwinner: h5: libretech-all-h5-cc: Enable RGMII RX/TX
+ delay on PHY
+ - [arm64] dts: allwinner: a64: bananapi-m64: Enable RGMII RX/TX delay on
+ PHY
+ - [mips64el,mipsel] export has_transparent_hugepage() for modules
+ - [arm64] dts: allwinner: h5: OrangePi Prime: Fix ethernet node
+ - [armhf] dts: imx6q-prti6q: fix PHY address
+ - swiotlb: using SIZE_MAX needs limits.h included
+ - [armhf] dmaengine: ti: omap-dma: Block PM if SDMA is busy to fix audio
+ - rcu: Don't invoke try_invoke_on_locked_down_task() with irqs disabled
+ - spi: fix client driver breakages when using GPIO descriptors
+ - Input: elan_i2c - fix firmware update on newer ICs
+ - rfkill: Fix use-after-free in rfkill_resume()
+ - perf lock: Correct field name "flags"
+ - perf lock: Don't free "lock_seq_stat" if read_count isn't zero
+ - SUNRPC: Fix oops in the rpc_xdr_buf event class
+ - [arm64,armhf] drm: bridge: dw-hdmi: Avoid resetting force in the detect
+ function
+ - tools, bpftool: Add missing close before bpftool net attach exit
+ - [amd64] IB/hfi1: Fix error return code in hfi1_init_dd()
+ - ip_tunnels: Set tunnel option flag when tunnel metadata is present
+ - can: af_can: prevent potential access of uninitialized member in
+ can_rcv()
+ - can: af_can: prevent potential access of uninitialized member in
+ canfd_rcv()
+ - can: dev: can_restart(): post buffer from the right context
+ - can: mcba_usb: mcba_usb_start_xmit(): first fill skb, then pass to
+ can_put_echo_skb()
+ - can: peak_usb: fix potential integer overflow on shift of a int
+ - [armhf] can: flexcan: fix failure handling of pm_runtime_get_sync()
+ - [arm64] ASoC: qcom: lpass-platform: Fix memory leak
+ - [arm64,armhf] drm/sun4i: dw-hdmi: fix error return code in
+ sun8i_dw_hdmi_bind()
+ - net/mlx5: E-Switch, Fail mlx5_esw_modify_vport_rate if qos disabled
+ - bpf, sockmap: Fix partial copy_page_to_iter so progress can still be
+ made
+ - bpf, sockmap: Ensure SO_RCVBUF memory is observed on ingress redirect
+ - can: kvaser_usb: kvaser_usb_hydra: Fix KCAN bittiming limits
+ - dmaengine: fix error codes in channel_register()
+ - [amd64] iommu/vt-d: Move intel_iommu_gfx_mapped to Intel IOMMU header
+ - [amd64] iommu/vt-d: Avoid panic if iommu init fails in tboot system
+ - [armhf] can: flexcan: flexcan_chip_start(): fix erroneous
+ flexcan_transceiver_enable() during bus-off recovery
+ - xfs: ensure inobt record walks always make forward progress
+ - xfs: return corresponding errcode if xfs_initialize_perag() fail
+ - [x86] ASOC: Intel: kbl_rt5663_rt5514_max98927: Do not try to disable
+ disabled clock
+ - [armhf] regulator: ti-abb: Fix array out of bound read access on the
+ first transition
+ - lib/strncpy_from_user.c: Mask out bytes after NUL terminator.
+ - xfs: revert "xfs: fix rmap key and record comparison functions"
+ - bpf, sockmap: Skb verdict SK_PASS to self already checked rmem limits
+ - bpf, sockmap: On receive programs try to fast track SK_PASS ingress
+ - bpf, sockmap: Use truesize with sk_rmem_schedule()
+ - bpf, sockmap: Avoid returning unneeded EAGAIN when redirecting to self
+ - [armhf] efi/arm: set HSCTLR Thumb2 bit correctly for HVC calls from HYP
+ - [amd64] efi/x86: Free efi_pgd with free_pages()
+ - sched/fair: Fix overutilized update in enqueue_task_fair()
+ - sched: Fix data-race in wakeup
+ - sched: Fix rq->nr_iowait ordering
+ - libfs: fix error cast of negative value in simple_attr_write()
+ - afs: Fix speculative status fetch going out of order wrt to
+ modifications
+ - HID: logitech-hidpp: Add PID for MX Anywhere 2
+ - HID: logitech-dj: Handle quad/bluetooth keyboards with a builtin
+ trackpad
+ - HID: logitech-dj: Fix Dinovo Mini when paired with a MX5x00 receiver
+ - speakup: Do not let the line discipline be used several times
+ (CVE-2020-28941)
+ - ALSA: firewire: Clean up a locking issue in copy_resp_to_buf()
+ - ALSA: usb-audio: Add delay quirk for all Logitech USB devices
+ - ALSA: ctl: fix error path at adding user-defined element set
+ - ALSA: mixart: Fix mutex deadlock
+ - ALSA: hda/realtek - Add supported for Lenovo ThinkPad Headset Button
+ - ALSA: hda/realtek - Add supported mute Led for HP
+ - ALSA: hda/realtek: Add some Clove SSID in the ALC293(ALC1220)
+ - ALSA: hda/realtek - HP Headset Mic can't detect after boot
+ - [armhf] tty: serial: imx: fix potential deadlock
+ - [armhf] tty: serial: imx: keep console clocks always on
+ - HID: logitech-dj: Fix an error in mse_bluetooth_descriptor
+ - [arm64,armhf,x86] efivarfs: fix memory leak in efivarfs_create()
+ - [arm64,x86] staging: rtl8723bs: Add 024c:0627 to the list of SDIO
+ device-ids
+ - xfs: fix forkoff miscalculation related to XFS_LITINO(mp)
+ - [arm64,x86] ACPI: fan: Initialize performance state sysfs attribute
+ - [x86] iio: accel: kxcjk1013: Replace is_smo8500_device with an acpi_type
+ enum
+ - [x86] iio: accel: kxcjk1013: Add support for KIOX010A ACPI DSM for
+ setting tablet-mode
+ - [arm64] iio: cros_ec: Use default frequencies when EC returns invalid
+ information
+ - spi: Introduce device-managed SPI controller allocation
+ - [arm64,armhf] spi: bcm2835aux: Fix use-after-free on unbind
+ - [armhf] regulator: pfuze100: limit pfuze-support-disable-sw to
+ pfuze{100,200}
+ - regulator: fix memory leak with repeated set_machine_constraints()
+ - regulator: avoid resolve_supply() infinite recursion
+ - regulator: workaround self-referent regulators
+ - gfs2: Fix regression in freeze_go_sync
+ - mac80211: minstrel: remove deferred sampling code
+ - mac80211: minstrel: fix tx status processing corner case
+ - mac80211: free sta in sta_info_insert_finish() on errors
+ - [s390x] fix system call exit path
+ - [s390x] cpum_sf.c: fix file permission for cpum_sfb_size
+ - [s390x] dasd: fix null pointer dereference for ERP requests
+ - [x86] Drivers: hv: vmbus: Allow cleanup of VMBUS_CONNECT_CPU if
+ disconnected
+ - [x86] drm/i915: Handle max_bpc==16
+ - [x86] drm/i915/tgl: Fix Media power gate sequence.
+ - io_uring: don't double complete failed reissue request
+ - mmc: sdhci-pci: Prefer SDR25 timing for High Speed mode for BYT-based
+ Intel controllers
+ - [arm64] mmc: sdhci-of-arasan: Allow configuring zero tap values
+ - [arm64] mmc: sdhci-of-arasan: Use Mask writes for Tap delays
+ - [arm64] mmc: sdhci-of-arasan: Issue DLL reset explicitly
+ - blk-cgroup: fix a hd_struct leak in blkcg_fill_root_iostats
+ - ptrace: Set PF_SUPERPRIV when checking capability
+ - seccomp: Set PF_SUPERPRIV when checking capability
+ - fanotify: fix logic of reporting name info with watched parent
+ - [x86] microcode/intel: Check patch signature before saving microcode for
+ early loading
+ - mm: never attempt async page lock if we've transferred data already
+ - mm: fix readahead_page_batch for retry entries
+ - mm: memcg/slab: fix root memcg vmstats
+ - mm/userfaultfd: do not access vma->vm_mm after calling
+ handle_userfault()
+
+ [ Ben Hutchings ]
+ * [arm64][rt] Disable KVM, which currently conflicts with PREEMPT_RT
+
+ [ Yves-Alexis Perez ]
+ * usbnet: ipheth: fix connectivity with iOS 14
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 4
+
+ [ Julien Cristau ]
+ * Disable NOUVEAU_LEGACY_CTX_SUPPORT, which was keeping DRM_LEGACY enabled
+ for no good reason (closes: #975038)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 27 Nov 2020 22:02:14 +0100
+
+linux (5.9.9-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.7
+ - net: core: use list_del_init() instead of list_del() in
+ netdev_run_todo()
+ - tipc: fix use-after-free in tipc_bcast_get_mode
+ - [x86] drm/i915/gem: Avoid implicit vmap for highmem on x86-32
+ - [x86] drm/i915/gem: Prevent using pgprot_writecombine() if PAT is not
+ supported
+ - [x86] drm/i915/gem: Always test execution status on closing the context
+ - [x86] drm/i915/gt: Always send a pulse down the engine after disabling
+ heartbeat
+ - [x86] drm/i915: Break up error capture compression loops with
+ cond_resched()
+ - [x86] drm/i915: Cancel outstanding work after disabling heartbeats on an
+ engine
+ - [x86] drm/i915: Avoid mixing integer types during batch copies
+ - [x86] drm/i915: Fix TGL DKL PHY DP vswing handling
+ - [x86] drm/i915/gt: Initialize reserved and unspecified MOCS indices
+ - [x86] drm/i915/gt: Undo forced context restores after trivial
+ preemptions
+ - [x86] drm/i915/gt: Delay execlist processing for tgl
+ - [x86] drm/i915: Drop runtime-pm assert from vgpu io accessors
+ - [x86] drm/i915: Exclude low pages (128KiB) of stolen from use
+ - [x86] drm/i915: Mark ininitial fb obj as WT on eLLC machines to avoid
+ rcu lockup during fbdev init
+ - [x86] drm/i915: Use the active reference on the vma while capturing
+ - [x86] drm/i915: Reject 90/270 degree rotated initial fbs
+ - [x86] drm/i915: Restore ILK-M RPS support
+ - drm/nouveau/kms/nv50-: Program notifier offset before requesting disp
+ caps
+ - drm/nouveau/device: fix changing endianess code to work on older GPUs
+ - ptrace: fix task_join_group_stop() for the case when current is traced
+ - [arm64,riscv64] cadence: force nonlinear buffers to be cloned
+ - ip_tunnel: fix over-mtu packet send fail without TUNNEL_DONT_FRAGMENT
+ flags
+ - [armhf] net: ethernet: ti: cpsw: disable PTPv1 hw timestamping
+ advertisement
+ - net: usb: qmi_wwan: add Telit LE910Cx 0x1230 composition
+ - sctp: Fix COMM_LOST/CANT_STR_ASSOC err reporting on big-endian platforms
+ - [arm64,armhf,riscv64] sfp: Fix error handing in sfp_probe()
+ - ip6_tunnel: set inner ipproto before ip6_tnl_encap
+ - [armhf] net: fec: fix MDIO probing for some FEC hardware blocks
+ - net: openvswitch: silence suspicious RCU usage warning
+ - r8169: work around short packet hw bug on RTL8125
+ - drm/nouveau/kms/nv50-: Get rid of bogus nouveau_conn_mode_valid()
+ - drm/nouveau/kms/nv50-: Fix clock checking algorithm in
+ nv50_dp_mode_valid()
+ - Fonts: Replace discarded const qualifier
+ - ALSA: hda/realtek - Fixed HP headset Mic can't be detected
+ - ALSA: hda/realtek - Enable headphone for ASUS TM420
+ - ALSA: usb-audio: Add implicit feedback quirk for Zoom UAC-2
+ - ALSA: usb-audio: add usb vendor id as DSD-capable for Khadas devices
+ - ALSA: usb-audio: Add implicit feedback quirk for Qu-16
+ - ALSA: usb-audio: Add implicit feedback quirk for MODX
+ - hugetlb_cgroup: fix reservation accounting
+ - mm: mempolicy: fix potential pte_unmap_unlock pte error
+ - kthread_worker: prevent queuing delayed work from timer_fn when it is
+ being canceled
+ - mm: always have io_remap_pfn_range() set pgprot_decrypted()
+ - gfs2: Wake up when sd_glock_disposal becomes zero
+ - gfs2: Don't call cancel_delayed_work_sync from within delete work
+ function
+ - ring-buffer: Fix recursion protection transitions between interrupt
+ context
+ - drm/amdgpu: update golden setting for sienna_cichlid
+ - drm/amdgpu: resolved ASD loading issue on sienna
+ - [amd64] iommu/vt-d: Fix kernel NULL pointer dereference in find_domain()
+ - mtd: spi-nor: Don't copy self-pointing struct around
+ - ftrace: Fix recursion check for NMI test
+ - ftrace: Handle tracing when switching between context
+ - regulator: defer probe when trying to get voltage from unresolved supply
+ - [arm*] spi: bcm2835: fix gpio cs level inversion
+ - tracing: Fix out of bounds write in get_trace_buf
+ - futex: Handle transient "ownerless" rtmutex state correctly
+ - [amd64] x86/lib: Change .weak to SYM_FUNC_START_WEAK for
+ arch/x86/lib/mem*_64.S
+ - [x86] kexec: Use up-to-dated screen_info copy to fill boot params
+ - [x86] hyperv_fb: Update screen_info after removing old framebuffer
+ - io_uring: don't miss setting IO_WQ_WORK_CONCURRENT
+ - of: Fix reserved-memory overlap detection
+ - [arm64,armhf] drm/sun4i: frontend: Rework a bit the phase data
+ - [arm64,armhf] drm/sun4i: frontend: Reuse the ch0 phase for RGB formats
+ - [arm64,armhf] drm/sun4i: frontend: Fix the scaler phase on A33
+ - blk-cgroup: Fix memleak on error path
+ - blk-cgroup: Pre-allocate tree node on blkg_conf_prep
+ - btrfs: drop the path before adding qgroup items when enabling qgroups
+ - btrfs: add a helper to read the tree_root commit root for backref lookup
+ - scsi: core: Don't start concurrent async scan on same host
+ - drm/amdgpu: disable DCN and VCN for navi10 blockchain SKU(v3)
+ - drm/amdgpu: add DID for navi10 blockchain SKU
+ - [powerpc*] scsi: ibmvscsi: Fix potential race after loss of transport
+ - vsock: use ns_capable_noaudit() on socket create
+ - nvme-rdma: handle unexpected nvme completion data length
+ - nvmet: fix a NULL pointer dereference when tracing the flush command
+ - [arm*] staging: mmal-vchiq: Fix memory leak for vchiq_instance
+ - [arm*] drm/vc4: drv: Add error handding for bind
+ - [amd64,arm64] ACPI: NFIT: Fix comparison to '-ENXIO'
+ - drm/nouveau/gem: fix "refcount_t: underflow; use-after-free"
+ - [arm64] smp: Move rcu_cpu_starting() earlier
+ - vt: Disable KD_FONT_OP_COPY
+ - tty: fix crash in release_tty if tty->port is not set
+ - fork: fix copy_process(CLONE_PARENT) race with the exiting ->real_parent
+ - entry: Fix the incorrect ordering of lockdep and RCU check
+ - [s390x] pci: fix hot-plug of PCI function missing bus
+ - [s390x] mm: make pmd/pud_deref() large page aware
+ - [s390x] pkey: fix paes selftest failure with paes and pkey static build
+ - USB: serial: cyberjack: fix write-URB completion race
+ - USB: serial: option: add Quectel EC200T module support
+ - USB: serial: option: add LE910Cx compositions 0x1203, 0x1230, 0x1231
+ - USB: serial: option: add Telit FN980 composition 0x1055
+ - [arm64,armhf] usb: dwc3: ep0: Fix delay status handling
+ - USB: Add NO_LPM quirk for Kingston flash drive
+ - io_uring: fix link lookup racing with link timeout
+ - mac80211: fix regression where EAPOL frames were sent in plaintext
+ - [arm64,armhf] drm/panfrost: Fix a deadlock between the shrinker and
+ madvise path
+ - PM: runtime: Drop runtime PM references to supplier on link removal
+ - PM: runtime: Drop pm_runtime_clean_up_links()
+ - PM: runtime: Resume the device earlier in __device_release_driver()
+ - [x86] drm/i915: Fix encoder lookup during PSR atomic check
+ - [x86] drm/i915/gt: Use the local HWSP offset during submission
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.8
+ - [x86] powercap: restrict energy meter to root access (CVE-2020-8694)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.9
+ - [x86] drm/i915: Hold onto an explicit ref to i915_vma_work.pinned
+ - [x86] drm/i915/gem: Flush coherency domains on first set-domain-ioctl
+ - mm: memcg: link page counters to root if use_hierarchy is false
+ - nbd: don't update block size after device is started
+ - [arm64] KVM: Force PTE mapping on fault resulting in a device mapping
+ - xfrm: interface: fix the priorities for ipip and ipv6 tunnels
+ - [x86] ASoC: Intel: kbl_rt5663_max98927: Fix kabylake_ssp_fixup function
+ - [x86] hv_balloon: disable warning when floor reached
+ - net: xfrm: fix a race condition during allocing spi
+ - [riscv64] irqchip/sifive-plic: Fix broken irq_set_affinity() callback
+ - mtd: spi-nor: Fix address width on flash chips > 16MB
+ - xfs: set xefi_discard when creating a deferred agfl free log intent item
+ - mac80211: don't require VHT elements for HE on 2.4 GHz
+ - netfilter: nftables: fix netlink report logic in flowtable and genid
+ - netfilter: use actual socket sk rather than skb sk when routing harder
+ - netfilter: nf_tables: missing validation from the abort path
+ - PCI: Always enable ACS even if no ACS Capability
+ - netfilter: ipset: Update byte and packet counters regardless of whether
+ they match
+ - [riscv64] irqchip/sifive-plic: Fix chip_data access within a hierarchy
+ - [powerpc*] eeh_cache: Fix a possible debugfs deadlock
+ - [arm*] drm/vc4: bo: Add a managed action to cleanup the cache
+ - IB/srpt: Fix memory leak in srpt_add_one
+ - mm: memcontrol: correct the NR_ANON_THPS counter of hierarchical memcg
+ - [arm64,armhf] drm/panfrost: rename error labels in device_init
+ - [arm64,armhf] drm/panfrost: move devfreq_init()/fini() in device
+ - [arm64,armhf] drm/panfrost: Fix module unload
+ - perf trace: Fix segfault when trying to trace events by cgroup
+ - perf tools: Add missing swap for ino_generation
+ - perf tools: Add missing swap for cgroup events
+ - [x86] ALSA: hda: prevent undefined shift in snd_hdac_ext_bus_get_link()
+ - [amd64] iommu/vt-d: Fix sid not set issue in intel_svm_bind_gpasid()
+ - [amd64] iommu/vt-d: Fix a bug for PDP check in prq_event_thread
+ - afs: Fix warning due to unadvanced marshalling pointer
+ - afs: Fix incorrect freeing of the ACL passed to the YFS ACL store op
+ - vfio/pci: Implement ioeventfd thread handler for contended memory lock
+ - can: rx-offload: don't call kfree_skb() from IRQ context
+ - can: dev: can_get_echo_skb(): prevent call to kfree_skb() in hard IRQ
+ context
+ - can: dev: __can_get_echo_skb(): fix real payload length return value for
+ RTR frames
+ - can: can_create_echo_skb(): fix echo skb generation: always use
+ skb_clone()
+ - can: j1939: swap addr and pgn in the send example
+ - can: j1939: j1939_sk_bind(): return failure if netdev is down
+ - can: peak_usb: add range checking in decode operations
+ - can: peak_usb: peak_usb_get_ts_time(): fix timestamp wrapping
+ - can: peak_canfd: pucan_handle_can_rx(): fix echo management when
+ loopback is on
+ - [armhf] can: flexcan: remove FLEXCAN_QUIRK_DISABLE_MECR quirk for
+ LS1021A
+ - [armhf] can: flexcan: flexcan_remove(): disable wakeup completely
+ - xfs: flush new eof page on truncate to avoid post-eof corruption
+ - xfs: fix missing CoW blocks writeback conversion retry
+ - xfs: fix scrub flagging rtinherit even if there is no rt device
+ - io_uring: ensure consistent view of original task ->mm from SQPOLL
+ - [arm64] spi: fsl-dspi: fix wrong pointer in suspend/resume
+ - [armel,armhf] PCI: mvebu: Fix duplicate resource requests
+ - ceph: check session state after bumping session->s_seq
+ - [x86] speculation: Allow IBPB to be conditionally enabled on CPUs with
+ always-on STIBP
+ - USB: apple-mfi-fastcharge: fix reference leak in
+ apple_mfi_fc_set_property
+ - [arm64,x86] tpm: efi: Don't create binary_bios_measurements file for an
+ empty log
+ - [arm64] KVM: ARM_SMCCC_ARCH_WORKAROUND_1 doesn't return
+ SMCCC_RET_NOT_REQUIRED
+ - ath9k_htc: Use appropriate rs_datalen type
+ - scsi: ufs: Fix missing brace warning for old compilers
+ - [arm64] usb: dwc3: pci: add support for the Intel Alder Lake-S
+ - opp: Reduce the size of critical section in _opp_table_kref_release()
+ - usb: raw-gadget: fix memory leak in gadget_setup
+ - ALSA: hda: Separate runtime and system suspend
+ - ALSA: hda: Reinstate runtime_allow() for all hda controllers
+ - [amd64] x86/boot/compressed/64: Introduce sev_status
+ - gfs2: Free rd_bits later in gfs2_clear_rgrpd to fix use-after-free
+ - gfs2: Add missing truncate_inode_pages_final for sd_aspace
+ - gfs2: check for live vs. read-only file system in gfs2_fitrim
+ - scsi: hpsa: Fix memory leak in hpsa_init_one()
+ - drm/amdgpu: perform srbm soft reset always on SDMA resume
+ - mac80211: fix use of skb payload instead of header
+ - cfg80211: initialize wdev data earlier
+ - cfg80211: regulatory: Fix inconsistent format argument
+ - tracing: Fix the checking of stackidx in __ftrace_trace_stack
+ - Revert "nvme-pci: remove last_sq_tail"
+ - scsi: scsi_dh_alua: Avoid crash during alua_bus_detach()
+ - scsi: mpt3sas: Fix timeouts observed while reenabling IRQ
+ - nvme: introduce nvme_sync_io_queues
+ - nvme-rdma: avoid race between time out and tear down
+ - nvme-rdma: avoid repeated request completion
+ - [amd64] iommu/amd: Increase interrupt remapping table limit to 512
+ entries
+ - [s390x] smp: move rcu_cpu_starting() earlier
+ - vfio/pci: Bypass IGD init in case of -ENODEV
+ - amd/amdgpu: Disable VCN DPG mode for Picasso
+ - iomap: clean up writeback state logic on writepage error
+ - [riscv64] Set text_offset correctly for M-Mode
+ - tpm_tis: Disable interrupts on ThinkPad T490s
+ - [arm*] spi: bcm2835: remove use of uninitialized gpio flags variable
+ - [x86] pinctrl: intel: Fix 2 kOhm bias which is 833 Ohm
+ - [x86] pinctrl: intel: Set default bias in case no particular value given
+ - [armhf] gpio: aspeed: fix ast2600 bank properties
+ - [armel,armhf] 9019/1: kprobes: Avoid fortify_panic() when copying
+ optprobe template
+ - bpf: Don't rely on GCC __attribute__((optimize)) to disable GCSE
+ - libbpf, hashmap: Fix undefined behavior in hash_bits
+ - [armhf] pinctrl: mcp23s08: Use full chunk of memory for regmap
+ configuration
+ - [armhf] pinctrl: aspeed: Fix GPI only function problem.
+ - net/mlx5e: Fix modify header actions memory leak
+ - net/mlx5e: Protect encap route dev from concurrent release
+ - net/mlx5e: Use spin_lock_bh for async_icosq_lock
+ - net/mlx5: Fix deletion of duplicate rules
+ - net/mlx5: E-switch, Avoid extack error log for disabled vport
+ - net/mlx5e: Fix VXLAN synchronization after function reload
+ - net/mlx5e: Fix incorrect access of RCU-protected xdp_prog
+ - SUNRPC: Fix general protection fault in trace_rpc_xdr_overflow()
+ - NFSD: Fix use-after-free warning when doing inter-server copy
+ - NFSD: fix missing refcount in nfsd4_copy by nfsd4_do_async_copy
+ - tools/bpftool: Fix attaching flow dissector
+ - bpf: Zero-fill re-used per-cpu map element
+ - r8169: fix potential skb double free in an error path
+ - r8169: disable hw csum for short packets on all chip versions
+ - [arm64] pinctrl: qcom: Move clearing pending IRQ to
+ .irq_request_resources callback
+ - nbd: fix a block_device refcount leak in nbd_release
+ - i40e: Fix MAC address setting for a VF via Host/VM
+ - igc: Fix returning wrong statistics (Closes: #970722)
+ - lan743x: correctly handle chips with internal PHY
+ - net: phy: realtek: support paged operations on RTL8201CP
+ - xfs: fix flags argument to rmap lookup when converting shared file rmaps
+ - xfs: set the unwritten bit in rmap lookup flags in
+ xchk_bmap_get_rmapextents
+ - xfs: fix rmap key and record comparison functions
+ - xfs: fix brainos in the refcount scrubber's rmap fragment processor
+ - lan743x: fix "BUG: invalid wait context" when setting rx mode
+ - xfs: fix a missing unlock on error in xfs_fs_map_blocks
+ - of/address: Fix of_node memory leak in of_dma_is_coherent
+ - ch_ktls: Update cheksum information
+ - ch_ktls: tcb update fails sometimes
+ - [i386] cosa: Add missing kfree in error path of cosa_write
+ - hwmon: (applesmc) Re-work SMC comms
+ - NFS: Fix listxattr receive buffer size
+ - vrf: Fix fast path output packet handling with async Netfilter rules
+ - lan743x: fix use of uninitialized variable
+ - [arm64] mm: Validate hotplug range before creating linear mapping
+ - kernel/watchdog: fix watchdog_allowed_mask not used warning
+ - mm: memcontrol: fix missing wakeup polling thread
+ - afs: Fix afs_write_end() when called with copied == 0 [ver #3]
+ - perf: Fix get_recursion_context()
+ - nvme: factor out a nvme_configure_metadata helper
+ - nvme: freeze the queue over ->lba_shift updates
+ - nvme: fix incorrect behavior when BLKROSET is called by the user
+ - perf: Simplify group_sched_in()
+ - perf: Fix event multiplexing for exclusive groups
+ - [arm64] firmware: xilinx: fix out-of-bounds access
+ - erofs: fix setting up pcluster for temporary pages
+ - erofs: derive atime instead of leaving it empty
+ - ext4: correctly report "not supported" for {usr,grp}jquota when
+ !CONFIG_QUOTA
+ - ext4: unlock xattr_sem properly in ext4_inline_data_truncate()
+ - btrfs: fix potential overflow in cluster_pages_for_defrag on 32bit arch
+ - btrfs: ref-verify: fix memory leak in btrfs_ref_tree_mod
+ - btrfs: fix min reserved size calculation in merge_reloc_root
+ - btrfs: dev-replace: fail mount if we don't have replace item with target
+ device
+ - [arm64] KVM: Don't hide ID registers from userspace
+ - [x86] thunderbolt: Fix memory leak if ida_simple_get() fails in
+ enumerate_services()
+ - [x86] thunderbolt: Add the missed ida_simple_remove() in
+ ring_request_msix()
+ - block: add a return value to set_capacity_revalidate_and_notify
+ - loop: Fix occasional uevent drop
+ - uio: Fix use-after-free in uio_unregister_device()
+ - Revert "usb: musb: convert to devm_platform_ioremap_resource_byname"
+ - usb: cdc-acm: Add DISABLE_ECHO for Renesas USB Download mode
+ - [x86] usb: typec: ucsi: Report power supply changes
+ - virtio: virtio_console: fix DMA memory allocation for rproc serial
+ - futex: Don't enable IRQs unconditionally in put_pi_state()
+ - jbd2: fix up sparse warnings in checkpoint code
+ - bootconfig: Extend the magic check range to the preceding 3 bytes
+ - mm/compaction: count pages and stop correctly during page isolation
+ - mm/compaction: stop isolation if too many pages are isolated and we have
+ pages to migrate
+ - mm/slub: fix panic in slab_alloc_node()
+ - mm/vmscan: fix NR_ISOLATED_FILE corruption on 64-bit
+ - mm/gup: use unpin_user_pages() in __gup_longterm_locked()
+ - Revert "kernel/reboot.c: convert simple_strtoul to kstrtoint"
+ - reboot: fix overflow parsing reboot cpu number
+ - hugetlbfs: fix anon huge page migration race
+ - ocfs2: initialize ip_next_orphan
+ - hwmon: (amd_energy) modify the visibility of the counters
+ (CVE-2020-12912)
+ - selinux: Fix error return code in sel_ib_pkey_sid_slow()
+ - io_uring: round-up cq size before comparing with rounded sq size
+ - [riscv64] gpio: sifive: Fix SiFive gpio probe
+ - gpio: pcie-idio-24: Fix irq mask when masking
+ - gpio: pcie-idio-24: Fix IRQ Enable Register value
+ - gpio: pcie-idio-24: Enable PEX8311 interrupts
+ - [arm64] mmc: sdhci-of-esdhc: Handle pulse width detection erratum for
+ more SoCs
+ - don't dump the threads that had been already exiting when zapped.
+ - [x86] drm/i915: Correctly set SFC capability for video engines
+ - [x86] drm/gma500: Fix out-of-bounds access to struct drm_device.vblank[]
+ - NFSv4.2: fix failure to unregister shrinker
+ - pinctrl: amd: use higher precision for 512 RtcClk
+ - pinctrl: amd: fix incorrect way to disable debounce filter
+ - swiotlb: fix "x86: Don't panic if can not alloc buffer for swiotlb"
+ - cpufreq: Introduce governor flags
+ - cpufreq: Introduce CPUFREQ_GOV_STRICT_TARGET
+ - cpufreq: Add strict_target to struct cpufreq_policy
+ - cpufreq: intel_pstate: Take CPUFREQ_GOV_STRICT_TARGET into account
+ - ethtool: netlink: add missing netdev_features_change() call
+ - IPv6: Set SIT tunnel hard_header_len to zero
+ - [s390x] net/af_iucv: fix null pointer dereference on shutdown
+ - net: udp: fix IP header access and skb lookup on Fast/frag0 UDP GRO
+ - net: udp: fix UDP header access on Fast/frag0 UDP GRO
+ - net: Update window_clamp if SOCK_RCVBUF is set
+ - tipc: fix memory leak in tipc_topsrv_start()
+ - devlink: Avoid overwriting port attributes of registered port
+ - tunnels: Fix off-by-one in lower MTU bounds for ICMP/ICMPv6 replies
+ - [powerpc*] 603: Always fault when _PAGE_ACCESSED is not set
+ - null_blk: Fix scheduling in atomic with zoned mode
+ - Convert trailing spaces and periods in path components
+
+ [ Uwe Kleine-König ]
+ * [amd64] Enable SND_SOC_AMD_ACP3x, SND_SOC_AMD_RENOIR and
+ SND_SOC_AMD_RENOIR_MACH (Closes: #973252)
+ * [arm64] Add device tree for Kobol helios64 from rockchip next branch.
+
+ [ John L. Villalovos ]
+ * [arm64] NUMA: Kconfig: Increase NODES_SHIFT to 4
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Refresh "signals: Allow rt tasks to cache one sigqueue struct"
+ * [armhf] dts: sun8i: a83t: Enable both RGMII RX/TX delay on Ethernet PHY
+ (Closes: #973369)
+ * Bump ABI to 3
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 19 Nov 2020 08:19:18 +0100
+
+linux (5.9.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.2
+ - [powerpc*] ibmveth: Switch order of ibmveth_helper calls.
+ - [powerpc*] ibmveth: Identify ingress large send packets.
+ - cxgb4: handle 4-tuple PEDIT to NAT mode translation
+ - ipv4: Restore flowi4_oif update before call to xfrm_lookup_route
+ - mlx4: handle non-napi callers to napi_poll
+ - net: dsa: microchip: fix race condition
+ - net: fec: Fix phy_device lookup for phy_reset_after_clk_enable()
+ - net: fec: Fix PHY init after phy_reset_after_clk_enable()
+ - net: fix pos incrementment in ipv6_route_seq_next
+ - net: ipa: skip suspend/resume activities if not set up
+ - net: sched: Fix suspicious RCU usage while accessing tcf_tunnel_info
+ - net/smc: fix use-after-free of delayed events
+ - net/smc: fix valid DMBE buffer sizes
+ - tipc: fix NULL pointer dereference in tipc_named_rcv
+ - tipc: fix the skb_unshare() in tipc_buf_append()
+ - socket: fix option SO_TIMESTAMPING_NEW
+ - socket: don't clear SOCK_TSTAMP_NEW when SO_TIMESTAMPNS is disabled
+ - can: m_can_platform: don't call m_can_class_suspend in runtime suspend
+ - can: j1935: j1939_tp_tx_dat_new(): fix missing initialization of skbcnt
+ - net: j1939: j1939_session_fresh_new(): fix missing initialization of
+ skbcnt
+ - binder: fix UAF when releasing todo list (CVE-2020-0423)
+ - ALSA: bebob: potential info leak in hwdep_read()
+ - ALSA: hda: fix jack detection with Realtek codecs when in D3
+ - ALSA: hda/hdmi: fix incorrect locking in hdmi_pcm_close
+ - tipc: re-configure queue limit for broadcast link
+ - tipc: fix incorrect setting window for bcast link
+ - ibmvnic: save changed mac address to adapter->mac_addr
+ - icmp: randomize the global rate limiter
+ - net: ftgmac100: Fix Aspeed ast2600 TX hang issue
+ - net: hdlc: In hdlc_rcv, check to make sure dev is an HDLC device
+ - net: hdlc_raw_eth: Clear the IFF_TX_SKB_SHARING flag after calling
+ ether_setup
+ - net: Properly typecast int values to set sk_max_pacing_rate
+ - net/sched: act_ct: Fix adding udp port mangle operation
+ - net/sched: act_tunnel_key: fix OOB write in case of IPv6 ERSPAN tunnels
+ - netsec: ignore 'phy-mode' device property on ACPI systems
+ - nexthop: Fix performance regression in nexthop deletion
+ - nfc: Ensure presence of NFC_ATTR_FIRMWARE_NAME attribute in
+ nfc_genl_fw_download()
+ - r8169: fix operation under forced interrupt threading
+ - tcp: fix to update snd_wl1 in bulk receiver fast path
+ - net: ethernet: mtk-star-emac: select REGMAP_MMIO
+ - net/sched: act_gate: Unlock ->tcfa_lock in tc_setup_flow_action()
+ - ixgbe: fix probing of multi-port devices with one MDIO
+ - net: openvswitch: fix to make sure flow_lookup() is not preempted
+ - sfc: move initialisation of efx->filter_sem to efx_init_struct()
+ - ALSA: hda - Don't register a cb func if it is registered already
+ - ALSA: hda - Fix the return value if cb func is already registered
+ - ALSA: usb-audio: Line6 Pod Go interface requires static clock rate quirk
+ - ALSA: hda/realtek - The front Mic on a HP machine doesn't work
+ - ALSA: hda/realtek - set mic to auto detect on a HP AIO machine
+ - ALSA: hda/realtek - Add mute Led support for HP Elitebook 845 G7
+ - ALSA: hda/realtek: Enable audio jacks of ASUS D700SA with ALC887
+ - cifs: remove bogus debug code
+ - cifs: Return the error from crypt_message when enc/dec key not found.
+ - SMB3: Resolve data corruption of TCP server info fields
+ - SMB3.1.1: Fix ids returned in POSIX query dir
+ - smb3: do not try to cache root directory if dir leases not supported
+ - smb3: fix stat when special device file and mounted with modefromsid
+ - [arm64] Make use of ARCH_WORKAROUND_1 even when KVM is not enabled
+ - [x86] KVM: nVMX: Morph notification vector IRQ on nested VM-Enter to
+ pending PI
+ - [x86] KVM: nVMX: Reset the segment cache when stuffing guest segs
+ - [x86] KVM: nVMX: Reload vmcs01 if getting vmcs12's pages fails
+ - [x86] KVM: x86/mmu: Commit zap of remaining invalid pages when
+ recovering lpages
+ - [x86] KVM: x86: Intercept LA57 to inject #GP fault when it's reserved
+ - [x86] KVM: SVM: Initialize prev_ga_tag before use
+ - crypto: caam - add xts check for block length equal to zero
+ - crypto: algif_aead - Do not set MAY_BACKLOG on the async path
+ - crypto: caam/qi - add fallback for XTS with more than 8B IV
+ - crypto: caam/qi - add support for more XTS key lengths
+ - crypto: caam/jr - add fallback for XTS with more than 8B IV
+ - crypto: caam/jr - add support for more XTS key lengths
+ - crypto: caam/qi2 - add fallback for XTS with more than 8B IV
+ - crypto: caam/qi2 - add support for more XTS key lengths
+ - RAS/CEC: Fix cec_init() prototype
+ - sched/fair: Fix wrong negative conversion in find_energy_efficient_cpu()
+ - microblaze: fix kbuild redundant file warning
+ - [x86] EDAC/i5100: Fix error handling order in i5100_init_one()
+ - [x86] perf/x86/intel/ds: Fix x86_pmu_stop warning for large PEBS
+ - [x86] x86/fpu: Allow multiple bits in clearcpuid= parameter
+ - irqchip/ti-sci-inta: Fix unsigned comparison to zero
+ - irqchip/ti-sci-intr: Fix unsigned comparison to zero
+ - [arm64] kprobe: add checks for ARMv8.3-PAuth combined instructions
+ - seqlock: Unbreak lockdep
+ - drivers/perf: xgene_pmu: Fix uninitialized resource struct
+ - drivers/perf: thunderx2_pmu: Fix memory resource error handling
+ - sched/fair: Fix wrong cpu selecting from isolated domain
+ - sched/fair: Use dst group while checking imbalance for NUMA balancer
+ - [arm64] perf: Add missing ISB in armv8pmu_enable_counter()
+ - [x86] perf/x86/intel/uncore: Update Ice Lake uncore units
+ - [x86] perf/x86/intel/uncore: Reduce the number of CBOX counters
+ - [x86] perf/x86/intel/uncore: Fix for iio mapping on Skylake Server
+ - [x86] perf/x86/intel/uncore: Fix the scale of the IMC free-running
+ events
+ - [x86] x86/nmi: Fix nmi_handle() duration miscalculation
+ - [amd64] x86/events/amd/iommu: Fix sizeof mismatch
+ - [arm64] pinctrl: qcom: Set IRQCHIP_SET_TYPE_MASKED and
+ IRQCHIP_MASK_ON_SUSPEND flags
+ - [arm64] pinctrl: qcom: Use return value from irq_set_wake() call
+ - [x86] perf/x86: Fix n_pair for cancelled txn
+ - lockdep: Fix usage_traceoverflow
+ - lockdep: Fix lockdep recursion
+ - lockdep: Revert "lockdep: Use raw_cpu_*() for per-cpu variables"
+ - perf/core: Fix race in the perf_mmap_close() function (CVE-2020-14351)
+ - crypto: algif_skcipher - EBUSY on aio should be an error
+ - crypto: ixp4xx - Fix the size used in a 'dma_free_coherent()' call
+ - crypto: picoxcell - Fix potential race condition bug
+ - media: vivid: Fix global-out-of-bounds read in precalculate_color()
+ - crypto: ccree - fix runtime PM imbalance on error
+ - media: hantro: h264: Get the correct fallback reference buffer
+ - media: hantro: postproc: Fix motion vector space allocation
+ - media: ov5640: Correct Bit Div register in clock tree diagram
+ - media: i2c: fix error check on max9286_read call
+ - media: m5mols: Check function pointer in m5mols_sensor_power
+ - fscrypt: restrict IV_INO_LBLK_32 to ino_bits <= 32
+ - media: uvcvideo: Set media controller entity functions
+ - media: uvcvideo: Silence shift-out-of-bounds warning
+ - media: staging/intel-ipu3: css: Correctly reset some memory
+ - media: omap3isp: Fix memleak in isp_probe
+ - media: i2c: ov5640: Remain in power down for DVP mode unless streaming
+ - media: i2c: ov5640: Separate out mipi configuration from s_power
+ - media: i2c: ov5640: Enable data pins on poweron for DVP mode
+ - media: i2c: max9286: Allocate v4l2_async_subdev dynamically
+ - crypto: sa2ul - fix compiler warning produced by clang
+ - spi: fsi: Handle 9 to 15 byte transfers lengths
+ - spi: fsi: Fix use of the bneq+ sequencer instruction
+ - spi: fsi: Implement restricted size for certain controllers
+ - spi: dw-pci: free previously allocated IRQs if desc->setup() fails
+ - crypto: sa2ul - Select CRYPTO_AUTHENC
+ - crypto: omap-sham - fix digcnt register handling with export/import
+ - crypto: sa2ul - Fix pm_runtime_get_sync() error checking
+ - regmap: debugfs: Fix more error path regressions
+ - hwmon: (pmbus/max34440) Fix status register reads for MAX344{51,60,61}
+ - hwmon: (w83627ehf) Fix a resource leak in probe
+ - crypto: stm32/crc32 - Avoid lock if hardware is already used
+ - crypto: sun8i-ce - handle endianness of t_common_ctl
+ - media: mx2_emmaprp: Fix memleak in emmaprp_probe
+ - media: mtk-mdp: Fix Null pointer dereference when calling list_add
+ - media: tc358743: initialize variable
+ - media: tc358743: cleanup tc358743_cec_isr
+ - nvme: fix error handling in nvme_ns_report_zones
+ - media: rcar-vin: Fix a reference count leak.
+ - media: rockchip/rga: Fix a reference count leak.
+ - media: platform: fcp: Fix a reference count leak.
+ - media: camss: Fix a reference count leak.
+ - media: s5p-mfc: Fix a reference count leak
+ - media: stm32-dcmi: Fix a reference count leak
+ - media: ti-vpe: Fix a missing check and reference count leak
+ - regulator: resolve supply after creating regulator
+ - hwmon: (bt1-pvt) Test sensor power supply on probe
+ - hwmon: (bt1-pvt) Cache current update timeout
+ - hwmon: (bt1-pvt) Wait for the completion with timeout
+ - spi: imx: Fix freeing of DMA channels if spi_bitbang_start() fails
+ - btrfs: add owner and fs_info to alloc_state io_tree
+ - blk-mq: move cancel of hctx->run_work to the front of blk_exit_queue
+ - ath10k: provide survey info as accumulated data
+ - Bluetooth: hci_uart: Cancel init work before unregistering
+ - [arm64,armhf] drm: panel: Fix bus format for OrtusTech COM43H4M85ULC
+ panel
+ - ath6kl: prevent potential array overflow in ath6kl_add_new_sta()
+ - ath9k: Fix potential out of bounds in ath9k_htc_txcompletion_cb()
+ - ath10k: Fix the size used in a 'dma_free_coherent()' call in an error
+ handling path
+ - wcn36xx: Fix reported 802.11n rx_highest rate wcn3660/wcn3680
+ - [arm64] ASoC: qcom: lpass-platform: fix memory leak
+ - [arm64] ASoC: qcom: lpass-cpu: fix concurrency issue
+ - ath11k: Fix possible memleak in ath11k_qmi_init_service
+ - brcmfmac: check ndev pointer
+ - mwifiex: Do not use GFP_KERNEL in atomic context
+ - [arm64] drm/malidp: Use struct drm_gem_object_funcs.get_sg_table
+ internally
+ - staging: rtl8192u: Do not use GFP_KERNEL in atomic context
+ - drm/gma500: fix error check
+ - scsi: qla4xxx: Fix an error handling path in 'qla4xxx_get_host_stats()'
+ - scsi: qla2xxx: Fix the size used in a 'dma_free_coherent()' call
+ - scsi: qla2xxx: Fix wrong return value in qlt_chk_unresolv_exchg()
+ - scsi: qla2xxx: Fix wrong return value in qla_nvme_register_hba()
+ - scsi: csiostor: Fix wrong return value in csio_hw_prep_fw()
+ - libbpf: Fix unintentional success return code in bpf_object__load
+ - wilc1000: Fix memleak in wilc_sdio_probe
+ - wilc1000: Fix memleak in wilc_bus_probe
+ - rtw88: don't treat NULL pointer as an array
+ - backlight: sky81452-backlight: Fix refcount imbalance on error
+ - staging: wfx: fix frame reordering
+ - staging: emxx_udc: Fix passing of NULL to dma_alloc_coherent()
+ - [x86] VMCI: check return value of get_user_pages_fast() for errors
+ - mm/error_inject: Fix allow_error_inject function signatures.
+ - drm: panel: Fix bpc for OrtusTech COM43H4M85ULC panel
+ - Bluetooth: Clear suspend tasks on unregister
+ - scsi: ufs: Make ufshcd_print_trs() consider UFSHCD_QUIRK_PRDT_BYTE_GRAN
+ - binder: Remove bogus warning on failed same-process transaction
+ - drm/amdgpu: fix max_entries calculation v4
+ - soundwire: stream: fix NULL/IS_ERR confusion
+ - soundwire: intel: fix NULL/ERR_PTR confusion
+ - tty: hvcs: Don't NULL tty->driver_data until hvcs_cleanup()
+ - pty: do tty_flip_buffer_push without port->lock in pty_write
+ - [x86] pwm: lpss: Fix off by one error in base_unit math in
+ pwm_lpss_prepare()
+ - [x86] pwm: lpss: Add range limit check for the base_unit register value
+ - sfc: don't double-down() filters in ef100_reset()
+ - ath11k: fix a double free and a memory leak
+ - video: fbdev: vga16fb: fix setting of pixclock because a pass-by-value
+ error
+ - video: fbdev: sis: fix null ptr dereference
+ - video: fbdev: radeon: Fix memleak in radeonfb_pci_register
+ - HID: roccat: add bounds checking in kone_sysfs_write_settings()
+ - ath11k: fix uninitialized return in ath11k_spectral_process_data()
+ - drm/msm: Avoid div-by-zero in dpu_crtc_atomic_check()
+ - [arm64,armhf] drm/panfrost: Ensure GPU quirks are always initialised
+ - iomap: Clear page error before beginning a write
+ - iomap: Mark read blocks uptodate in write_begin
+ - Bluetooth: Fix memory leak in read_adv_mon_features()
+ - Bluetooth: Re-order clearing suspend tasks
+ - [armhf] pinctrl: mcp23s08: Fix mcp23x17_regmap initialiser
+ - [armhf] pinctrl: mcp23s08: Fix mcp23x17 precious range
+ - pinctrl: devicetree: Keep deferring even on timeout
+ - [s390x] bpf: Fix multiple tail calls
+ - net/mlx5: Fix uninitialized variable warning
+ - net/mlx5: Don't call timecounter cyc2time directly from 1PPS flow
+ - scsi: mpt3sas: Fix sync irqs
+ - [arm64,armhf] net: stmmac: Fix incorrect location to set
+ real_num_rx|tx_queues
+ - [arm64,armhf] net: stmmac: use netif_tx_start|stop_all_queues() function
+ - xfs: force the log after remapping a synchronous-writes file
+ - [arm64] cpufreq: armada-37xx: Add missing MODULE_DEVICE_TABLE
+ - ASoC: topology: disable size checks for bytes_ext controls if needed
+ - ASoC: tlv320adcx140: Fix digital gain range
+ - nvmem: core: fix missing of_node_put() in of_nvmem_device_get()
+ - dmaengine: ti: k3-udma-glue: fix channel enable functions
+ - Bluetooth: Fix auto-creation of hci_conn at Conn Complete event
+ - xhci: don't create endpoint debugfs entry before ring buffer is set.
+ - [arm64] drm/msm: Fix the a650 hw_apriv check
+ - net: dsa: rtl8366: Check validity of passed VLANs
+ - net: dsa: rtl8366: Refactor VLAN/PVID init
+ - net: dsa: rtl8366: Skip PVID setting if not requested
+ - net: wilc1000: clean up resource in error path of init mon interface
+ - ASoC: tlv320aic32x4: Fix bdiv clock rate derivation
+ - net: dsa: rtl8366rb: Support all 4096 VLANs
+ - ASoC: SOF: control: add size checks for ext_bytes control .put()
+ - ASoC: tas2770: Fix unbalanced calls to pm_runtime
+ - [armhf] spi: omap2-mcspi: Improve performance waiting for CHSTAT
+ - ath11k: Add checked value for ath11k_ahb_remove
+ - ath6kl: wmi: prevent a shift wrapping bug in
+ ath6kl_wmi_delete_pstream_cmd()
+ - drm: rcar-du: Put reference to VSP device
+ - phy: rockchip-dphy-rx0: Include linux/delay.h
+ - dmaengine: dmatest: Check list for emptiness before access its last
+ entry
+ - ASoC: cros_ec_codec: fix kconfig dependency warning for
+ SND_SOC_CROS_EC_CODEC
+ - misc: mic: scif: Fix error handling path
+ - ALSA: seq: oss: Avoid mutex lock for a long-time ioctl
+ - net/mlx5e: IPsec: Use kvfree() for memory allocated with kvzalloc()
+ - [arm*] usb: dwc2: Fix parameter type in function pointer prototype
+ - [arm64,armhf] usb: dwc3: core: Properly default unspecified speed
+ - [arm*] usb: dwc2: Add missing cleanups when usb_add_gadget_udc() fails
+ - rtw88: Fix probe error handling race with firmware loading
+ - rtw88: Fix potential probe error handling race with wow firmware loading
+ - quota: clear padding in v2r1_mem2diskdqb()
+ - [arm*] drm/vc4: crtc: Rework a bit the CRTC state code
+ - ASoC: fsl_sai: Instantiate snd_soc_dai_driver
+ - HID: hid-input: fix stylus battery reporting
+ - tty: hvc: fix link error with CONFIG_SERIAL_CORE_CONSOLE=n
+ - tty: serial: imx: fix link error with CONFIG_SERIAL_CORE_CONSOLE=n
+ - nvmem: core: fix possibly memleak when use
+ nvmem_cell_info_to_nvmem_cell()
+ - [x86] hv: clocksource: Add notrace attribute to read_hv_sched_clock_*()
+ functions
+ - nl80211: fix OBSS PD min and max offset validation
+ - iomap: Use kzalloc to allocate iomap_page
+ - ibmvnic: set up 200GBPS speed
+ - bpf: disallow attaching modify_return tracing functions to other BPF
+ programs
+ - qtnfmac: fix resource leaks on unsupported iftype error return path
+ - pinctrl: aspeed: Use the right pinconf mask
+ - [arm64] iommu/qcom: add missing put_device() call in
+ qcom_iommu_of_xlate()
+ - iio: adc: stm32-adc: fix runtime autosuspend delay when slow polling
+ - net: enic: Cure the enic api locking trainwreck
+ - pinctrl: tigerlake: Fix register offsets for TGL-H variant
+ - serial: 8250: Discard RTS/DTS setting from clock update method
+ - serial: 8250: Skip uninitialized TTY port baud rate update
+ - serial: 8250_dw: Fix clk-notifier/port suspend deadlock
+ - mfd: syscon: Don't free allocated name for regmap_config
+ - mfd: sm501: Fix leaks in probe()
+ - dm: fix missing imposition of queue_limits from dm_wq_work() thread
+ - pinctrl: single: fix pinctrl_spec.args_count bounds check
+ - pinctrl: single: fix debug output when #pinctrl-cells = 2
+ - staging: rtl8712: Fix enqueue_reorder_recvframe()
+ - ASoC: wm_adsp: Pass full name to snd_ctl_notify
+ - iwlwifi: mvm: split a print to avoid a WARNING in ROC
+ - iwlwifi: dbg: remove no filter condition
+ - iwlwifi: dbg: run init_cfg function once per driver load
+ - usb: gadget: f_ncm: fix ncm_bitrate for SuperSpeed and above.
+ - usb: gadget: u_serial: clear suspended flag when disconnecting
+ - usb: gadget: u_ether: enable qmult on SuperSpeed Plus as well
+ - bus: mhi: core: Fix the building of MHI module
+ - ocxl: fix kconfig dependency warning for OCXL
+ - nl80211: fix non-split wiphy information
+ - [arm*] usb: dwc2: Fix INTR OUT transfers in DDMA mode.
+ - scsi: target: tcmu: Fix warning: 'page' may be used uninitialized
+ - scsi: be2iscsi: Fix a theoretical leak in beiscsi_create_eqs()
+ - dmaengine: ioat: Allocate correct size for descriptor chunk
+ - staging: qlge: fix build breakage with dumping enabled
+ - ipmi_si: Fix wrong return value in try_smi_init()
+ - tracing: Fix parse_synth_field() error handling
+ - staging: wfx: fix BA sessions for older firmwares
+ - [x86] platform/x86: mlx-platform: Remove PSU EEPROM configuration
+ - dm: fix request-based DM to not bounce through indirect dm_submit_bio
+ - mwifiex: fix double free
+ - [arm64,armhf] drm/panfrost: increase readl_relaxed_poll_timeout values
+ - drm/amdgpu: Fix invalid number of character '{' in amdgpu_acpi_init
+ - ipvs: clear skb->tstamp in forwarding path
+ - bpf, sockmap: Remove skb_orphan and let normal skb_kfree do cleanup
+ - netfilter: nf_log: missing vlan offload tag and proto
+ - mm/swapfile.c: fix potential memory leak in sys_swapon
+ - mm: memcg/slab: fix racy access to page->mem_cgroup in
+ mem_cgroup_from_obj()
+ - mm/memcg: fix device private memcg accounting
+ - mm/mmap.c: replace do_brk with do_brk_flags in comment of
+ insert_vm_struct()
+ - mm/page_alloc.c: fix freeing non-compound pages
+ - mm, oom_adj: don't loop through tasks in __set_oom_adj when not
+ necessary
+ - fs: fix NULL dereference due to data race in prepend_path()
+ - tracing: Handle synthetic event array field type checking correctly
+ - i3c: master add i3c_master_attach_boardinfo to preserve boardinfo
+ - IB/mlx4: Fix starvation in paravirt mux/demux
+ - IB/mlx4: Adjust delayed work when a dup is observed
+ - [powerpc*] pseries: Fix missing of_node_put() in rng_init()
+ - [powerpc*] icp-hv: Fix missing of_node_put() in success path
+ - rcu/tree: Force quiescent state on callback overload
+ - rcutorture: Properly set rcu_fwds for OOM handling
+ - refperf: Avoid null pointer dereference when buf fails to allocate
+ - RDMA/ucma: Fix locking for ctx->events_reported
+ - RDMA/ucma: Add missing locking around rdma_leave_multicast()
+ - mtd: lpddr: fix excessive stack usage with clang
+ - RDMA/hns: Add a check for current state before modifying QP
+ - RDMA/umem: Fix signature of stub ib_umem_find_best_pgsz()
+ - [powerpc*] pseries: explicitly reschedule during drmem_lmb list
+ traversal
+ - [powerpc*] pseries/drmem: don't cache node id in drmem_lmb struct
+ - RDMA/mlx5: Fix potential race between destroy and CQE poll
+ - mtd: mtdoops: Don't write panic data twice
+ - perf tools: Make GTK2 support opt-in
+ - [armel,armhf] 9007/1: l2c: fix prefetch bits init in L2X0_AUX_CTRL using
+ DT values
+ - xfs: fix finobt btree block recovery ordering
+ - m68knommu: include SDHC support only when hardware has it
+ - xfs: limit entries returned when counting fsmap records
+ - xfs: fix deadlock and streamline xfs_getfsmap performance
+ - nfs: add missing "posix" local_lock constant table definition
+ - xfs: fix high key handling in the rt allocator's query_range function
+ - RDMA/rtrs-srv: Incorporate ib_register_client into rtrs server init
+ - RDMA/core: Delete function indirection for alloc/free kernel CQ
+ - RDMA: Allow fail of destroy CQ
+ - RDMA: Change XRCD destroy return value
+ - RDMA: Restore ability to return error for destroy WQ
+ - RDMA/umem: Fix ib_umem_find_best_pgsz() for mappings that cross a page
+ boundary
+ - RDMA/umem: Prevent small pages from being returned by
+ ib_umem_find_best_pgsz()
+ - RDMA/qedr: Fix qp structure memory leak
+ - RDMA/qedr: Fix doorbell setting
+ - RDMA/qedr: Fix use of uninitialized field
+ - RDMA/qedr: Fix return code if accept is called on a destroyed qp
+ - RDMA/qedr: Fix inline size returned for iWARP
+ - [powerpc*] pseries/svm: Allocate SWIOTLB buffer anywhere in memory
+ - [powerpc*] watchpoint: Fix quadword instruction handling on p10
+ predecessors
+ - [powerpc*] watchpoint: Fix handling of vector instructions
+ - [powerpc*] watchpoint: Add hw_len wherever missing
+ - [powerpc*] book3s64/hash/4k: Support large linear mapping range with 4K
+ - [powerpc*] 64s/radix: Fix mm_cpumask trimming race vs kthread_use_mm
+ - [powerpc*] papr_scm: Fix warning triggered by perf_stats_show()
+ - RDMA/cma: Combine cma_ndev_work with cma_work
+ - RDMA/cma: Remove dead code for kernel rdmacm multicast
+ - RDMA/cma: Consolidate the destruction of a cma_multicast in one place
+ - RDMA/cma: Fix use after free race in roce multicast join
+ - perf intel-pt: Fix "context_switch event has no tid" error
+ - perf metricgroup: Fix uncore metric expressions
+ - RDMA/qedr: Fix resource leak in qedr_create_qp
+ - RDMA/hns: Set the unsupported wr opcode
+ - RDMA/mlx5: Use set_mkc_access_pd_addr_fields() in reg_create()
+ - RDMA/mlx5: Make mkeys always owned by the kernel's PD when not enabled
+ - RDMA/mlx5: Disable IB_DEVICE_MEM_MGT_EXTENSIONS if IB_WR_REG_MR can't
+ work
+ - i40iw: Add support to make destroy QP synchronous
+ - perf stat: Skip duration_time in setup_system_wide
+ - RDMA/hns: Add check for the validity of sl configuration
+ - RDMA/hns: Solve the overflow of the calc_pg_sz()
+ - RDMA/hns: Fix the wrong value of rnr_retry when querying qp
+ - RDMA/hns: Fix configuration of ack_req_freq in QPC
+ - RDMA/hns: Fix missing sq_sig_type when querying QP
+ - RDMA/mlx5: Fix type warning of sizeof in __mlx5_ib_alloc_counters()
+ - mtd: hyperbus: hbmc-am654: Fix direct mapping setup flash access
+ - overflow: Include header file with SIZE_MAX declaration
+ - mtd: parsers: bcm63xx: Do not make it modular
+ - RDMA/ipoib: Set rtnl_link_ops for ipoib interfaces
+ - [powerpc*] 64: fix irq replay missing preempt
+ - [powerpc*] 64: fix irq replay pt_regs->softe value
+ - [powerpc*] perf: Exclude pmc5/6 from the irrelevant PMU group
+ constraints
+ - [powerpc*] perf/hv-gpci: Fix starting index value
+ - perf stat: Fix out of bounds CPU map access when handling armv8_pmu
+ events
+ - i3c: master: Fix error return in cdns_i3c_master_probe()
+ - [powerpc*] security: Fix link stack flush instruction
+ - [powerpc*] book3s64/radix: Make radix_mem_block_size 64bit
+ - [powerpc*] papr_scm: Add PAPR command family to pass-through command-set
+ - [powerpc*] cpufreq: powernv: Fix frame-size-overflow in
+ powernv_cpufreq_reboot_notifier
+ - IB/rdmavt: Fix sizeof mismatch
+ - RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt()
+ - f2fs: reject CASEFOLD inode flag without casefold feature
+ - um: vector: Use GFP_ATOMIC under spin lock
+ - um: time-travel: Fix IRQ handling in time_travel_handle_message()
+ - thermal: core: Adding missing nlmsg_free() in
+ thermal_genl_sampling_temp()
+ - perf trace: Fix off by ones in memset() after realloc() in arches using
+ libaudit
+ - f2fs: wait for sysfs kobject removal before freeing f2fs_sb_info
+ - afs: Fix rapid cell addition/removal by not using RCU on cells tree
+ - afs: Fix cell refcounting by splitting the usage counter
+ - afs: Fix cell purging with aliases
+ - afs: Fix cell removal
+ - RDMA/rxe: Handle skb_clone() failure in rxe_recv.c
+ - mm/page_owner: change split_page_owner to take a count
+ - mm/huge_memory: fix split assumption of page size
+ - mm: fix a race during THP splitting
+ - lib/crc32.c: fix trivial typo in preprocessor condition
+ - ramfs: fix nommu mmap with gaps in the page cache
+ - rapidio: fix error handling path
+ - rapidio: fix the missed put_device() for rio_mport_add_riodev
+ - clk: meson: axg-audio: separate axg and g12a regmap tables
+ - rtc: ds1307: Clear OSF flag on DS1388 when setting time
+ - clk: meson: g12a: mark fclk_div2 as critical
+ - PCI: designware-ep: Fix the Header Type check
+ - PCI: aardvark: Fix compilation on s390
+ - PCI: aardvark: Check for errors from pci_bridge_emul_init() call
+ - PCI: iproc: Set affinity mask on MSI interrupts
+ - PCI/IOV: Mark VFs as not implementing PCI_COMMAND_MEMORY
+ - vfio: add a singleton check for vfio_group_pin_pages
+ - [s390x] pci: Mark all VFs as not implementing PCI_COMMAND_MEMORY
+ - vfio/pci: Decouple PCI_COMMAND_MEMORY bit checks from is_virtfn
+ - vfio: fix a missed vfio group put in vfio_pin_pages
+ - [x86,arm64] vfio/type1: fix dirty bitmap calculation in vfio_dma_rw
+ - nfsd: Cache R, RW, and W opens separately
+ - [x86] PCI: hv: Fix hibernation in case interrupts are not re-created
+ - module: statically initialize init section freeing data
+ - clk: at91: clk-main: update key before writing AT91_CKGR_MOR
+ - clk: bcm2835: add missing release if devm_clk_hw_register fails
+ - kbuild: deb-pkg: do not build linux-headers package if CONFIG_MODULES=n
+ - watchdog: Fix memleak in watchdog_cdev_register
+ - watchdog: Use put_device on error
+ - watchdog: sp5100: Fix definition of EFCH_PM_DECODEEN3
+ - clk: at91: sam9x60: support only two programmable clocks
+ - svcrdma: fix bounce buffers for unaligned offsets and multiple pages
+ - ext4: fix dead loop in ext4_mb_new_blocks
+ - ext4: discard preallocations before releasing group lock
+ - ext4: disallow modifying DAX inode flag if inline_data has been set
+ - ext4: limit entries returned when counting fsmap records
+ - vfio/pci: Clear token on bypass registration failure
+ - [x86,arm64] vfio iommu type1: Fix memory leak in
+ vfio_iommu_type1_pin_pages
+ - clk: qcom: gdsc: Keep RETAIN_FF bit set if gdsc is already on
+ - clk: imx8mq: Fix usdhc parents order
+ - SUNRPC: fix copying of multiple pages in gss_read_proxy_verf()
+ - NFSv4.2: Fix NFS4ERR_STALE error when doing inter server copy
+ - platform/chrome: cros_ec_typec: Send enum values to
+ usb_role_switch_set_role()
+ - platform/chrome: cros_ec_lightbar: Reduce ligthbar get version command
+ - Input: elants_i2c - fix typo for an attribute to show calibration count
+ - Input: imx6ul_tsc - clean up some errors in imx6ul_tsc_resume()
+ - Input: stmfts - fix a & vs && typo
+ - Input: ep93xx_keypad - fix handling of platform_get_irq() error
+ - Input: omap4-keypad - fix handling of platform_get_irq() error
+ - Input: twl4030_keypad - fix handling of platform_get_irq() error
+ - Input: sun4i-ps2 - fix handling of platform_get_irq() error
+ - [x86] KVM: x86: emulating RDPID failure shall return #UD rather than #GP
+ - [x86] KVM: nSVM: CR3 MBZ bits are only 63:52
+ - scsi: bfa: Fix error return in bfad_pci_init()
+ - [arm64] mm: use single quantity to represent the PA to VA translation
+ - bpf: Enforce id generation for all may-be-null register type
+ - net: dsa: seville: the packet buffer is 2 megabits, not megabytes
+ - netfilter: conntrack: connection timeout after re-register
+ - netfilter: ebtables: Fixes dropping of small packets in bridge nat
+ - vdpa/mlx5: Make use of a specific 16 bit endianness API
+ - vdpa/mlx5: Fix failure to bring link up
+ - vdpa/mlx5: Setup driver only if VIRTIO_CONFIG_S_DRIVER_OK
+ - netfilter: nf_fwd_netdev: clear timestamp in forwarding path
+ - [arm64] soc: xilinx: Fix error code in zynqmp_pm_probe()
+ - [arm64] arm64: dts: meson: vim3: correct led polarity
+ - [armhf] dts: sun8i: r40: bananapi-m2-ultra: Fix dcdc1 regulator
+ - [arm64] dts: allwinner: h5: remove Mali GPU PMU module
+ - [armhf] memory: omap-gpmc: Fix a couple off by ones
+ - [armhf] memory: omap-gpmc: Fix build error without CONFIG_OF
+ - [arm64] dts: qcom: msm8992: Fix UART interrupt property
+ - [arm64] dts: qcom: sdm845-db845c: Fix hdmi nodes
+ - [arm64] dts: qcom: sm8150: fix up primary USB nodes
+ - [arm64] dts: qcom: sc7180: Fix the LLCC base register size
+ - memory: fsl-corenet-cf: Fix handling of platform_get_irq() error
+ - firmware: arm_scmi: Fix NULL pointer dereference in mailbox_chan_free
+ - [arm64] dts: mt8173-elm: fix supported values for
+ regulator-allowed-modes of da9211
+ - [arm64] dts: qcom: sm8250: Rename UART2 node to UART12
+ - dmaengine: ti: k3-udma-glue: Fix parameters for rx ring pair request
+ - [arm64] dts: imx8mq: Add missing interrupts to GPC
+ - [arm64] dts: qcom: sc7180: Drop flags on mdss irqs
+ - [arm64] dts: sdm845: Fixup OPP table for all qup devices
+ - [arm64] dts: qcom: msm8916: Remove one more thermal trip point unit name
+ - [arm64] dts: qcom: pm8916: Remove invalid reg size from wcd_codec
+ - [arm64] dts: qcom: msm8916: Fix MDP/DSI interrupts
+ - [arm64] dts: mt8173: elm: Fix nor_flash node property
+ - [arm64] dts: ti: k3-j721e: Rename mux header and update macro names
+ - [arm64] dts: actions: limit address range for pinctrl node
+ - lightnvm: fix out-of-bounds write to array devices->info[]
+ - [powerpc*] powernv/dump: Fix race while processing OPAL dump
+ - [powerpc*] 64s: Remove TM from Power10 features
+ - [powerpc*] pseries: Avoid using addr_to_pfn in real mode
+ - nvmet: fix uninitialized work for zero kato
+ - nvmet: limit passthru MTDS by BIO_MAX_PAGES
+ - [x86] KVM: ioapic: break infinite recursion on lazy EOI (CVE-2020-27152)
+ - NTB: hw: amd: fix an issue about leak system resources
+ - sched/features: Fix !CONFIG_JUMP_LABEL case
+ - perf: correct SNOOPX field offset
+ - random32: make prandom_u32() output unpredictable
+ - i2c: core: Restore acpi_walk_dep_device_list() getting called after
+ registering the ACPI i2c devs
+ - md/bitmap: fix memory leak of temporary bitmap
+ - block: ratelimit handle_bad_sector() message
+ - [x86] dumpstack: Fix misleading instruction pointer error message
+ - crypto: ccp - fix error handling
+ - [x86] asm: Replace __force_order with a memory clobber
+ - [x86] mce: Add Skylake quirk for patrol scrub reported errors
+ - media: firewire: fix memory leak
+ - media: ati_remote: sanity check for both endpoints
+ - media: st-delta: Fix reference count leak in delta_run_work
+ - media: sti: Fix reference count leaks
+ - media: exynos4-is: Fix several reference count leaks due to
+ pm_runtime_get_sync
+ - media: exynos4-is: Fix a reference count leak due to pm_runtime_get_sync
+ - media: exynos4-is: Fix a reference count leak
+ - media: vsp1: Fix runtime PM imbalance on error
+ - media: platform: s3c-camif: Fix runtime PM imbalance on error
+ - media: platform: sti: hva: Fix runtime PM imbalance on error
+ - media: bdisp: Fix runtime PM imbalance on error
+ - media: media/pci: prevent memory leak in bttv_probe
+ - [x86] mce: Annotate mce_rd/wrmsrl() with noinstr
+ - crypto: hisilicon - fixed memory allocation error
+ - spi: fsi: Fix clock running too fast
+ - blk-mq: always allow reserved allocation in hctx_may_queue
+ - [x86] mce: Make mce_rdmsrl() panic on an inaccessible MSR
+ - media: uvcvideo: Ensure all probed info is returned to v4l2
+ - mmc: sdio: Check for CISTPL_VERS_1 buffer size
+ - media: saa7134: avoid a shift overflow
+ - media: atomisp: fix memleak in ia_css_stream_create
+ - media: venus: fixes for list corruption
+ - notifier: Fix broken error handling pattern
+ - fs: dlm: fix configfs memory leak
+ - media: venus: core: Fix error handling in probe
+ - media: venus: core: Fix runtime PM imbalance in venus_probe
+ - ntfs: add check for mft record size in superblock
+ - ip_gre: set dev->hard_header_len and dev->needed_headroom properly
+ - mac80211: handle lack of sband->bitrates in rates
+ - staging: wfx: fix handling of MMIC error
+ - libbpf: Close map fd if init map slots failed
+ - bpf: Use raw_spin_trylock() for pcpu_freelist_push/pop in NMI
+ - PM: hibernate: remove the bogus call to get_gendisk() in
+ software_resume()
+ - scsi: mvumi: Fix error return in mvumi_io_attach()
+ - scsi: target: core: Add CONTROL field for trace events
+ - [amd64] mic: vop: copy data to kernel space then write to io memory
+ - [amd64] misc: vop: add round_up(x,4) for vring_size to avoid kernel
+ panic
+ - [arm64,armhf] usb: dwc3: Add splitdisable quirk for Hisilicon Kirin Soc
+ - usb: gadget: function: printer: fix use-after-free in __lock_acquire
+ - rtw88: pci: Power cycle device during shutdown
+ - udf: Limit sparing table size
+ - udf: Avoid accessing uninitialized data on failed inode read
+ - rtw88: increse the size of rx buffer size
+ - USB: cdc-acm: handle broken union descriptors
+ - [arm64,armhf] usb: dwc3: simple: add support for Hikey 970
+ - can: flexcan: flexcan_chip_stop(): add error handling and propagate
+ error value
+ - HID: multitouch: Lenovo X1 Tablet Gen3 trackpoint and buttons
+ - ath9k: hif_usb: fix race condition between usb_get_urb() and
+ usb_kill_anchored_urbs()
+ - [arm64,armhf] drm/panfrost: add Amlogic GPU integration quirks
+ - [arm64,armhf] drm/panfrost: add amlogic reset quirk callback
+ - [arm64,armhf] drm/panfrost: add support for vendor quirk
+ - bpf: Limit caller's stack depth 256 for subprogs with tailcalls
+ - dma-direct: Fix potential NULL pointer dereference
+ - misc: rtsx: Fix memory leak in rtsx_pci_probe
+ - reiserfs: only call unlock_new_inode() if I_NEW
+ - opp: Prevent memory leak in dev_pm_opp_attach_genpd()
+ - xfs: make sure the rt allocator doesn't run off the end
+ - usb: ohci: Default to per-port over-current protection
+ - drm: fix double free for gbo in drm_gem_vram_init and
+ drm_gem_vram_create
+ - Bluetooth: Only mark socket zapped after unlocking
+ - drm/msm/a6xx: fix a potential overflow issue
+ - drm/xlnx: Use devm_drm_dev_alloc
+ - iomap: fix WARN_ON_ONCE() from unprivileged users
+ - scsi: ibmvfc: Fix error return in ibmvfc_probe()
+ - scsi: qla2xxx: Warn if done() or free() are called on an already freed
+ srb
+ - soundwire: cadence: fix race condition between suspend and Slave device
+ alerts
+ - brcmsmac: fix memory leak in wlc_phy_attach_lcnphy
+ - rtl8xxxu: prevent potential memory leak
+ - Fix use after free in get_capset_info callback.
+ - HID: ite: Add USB id match for Acer One S1003 keyboard dock
+ - scsi: qedf: Return SUCCESS if stale rport is encountered
+ - scsi: qedi: Mark all connections for recovery on link down event
+ - scsi: qedi: Protect active command list to avoid list corruption
+ - scsi: qedi: Fix list_del corruption while removing active I/O
+ - fbmem: add margin check to fb_check_caps()
+ - tty: ipwireless: fix error handling
+ - Bluetooth: btusb: Fix memleak in btusb_mtk_submit_wmt_recv_urb
+ - ipvs: Fix uninit-value in do_ip_vs_set_ctl()
+ - reiserfs: Fix memory leak in reiserfs_parse_options()
+ - [s390x] qeth: strictly order bridge address events
+ - mwifiex: don't call del_timer_sync() on uninitialized timer
+ - ALSA: hda/ca0132 - Add AE-7 microphone selection commands.
+ - ALSA: hda/ca0132 - Add new quirk ID for SoundBlaster AE-7.
+ - [x86] ASoC: SOF: Add topology filename override based on dmi data match
+ - [x86] ASoC: Intel: sof_rt5682: override quirk data for
+ tgl_max98373_rt5682
+ - scsi: smartpqi: Avoid crashing kernel for controller issues
+ - brcm80211: fix possible memleak in brcmf_proto_msgbuf_attach
+ - usb: core: Solve race condition in anchor cleanup functions
+ - soundwire: intel: reinitialize IP+DSP in .prepare(), but only when
+ resuming
+ - scsi: ufs: ufs-qcom: Fix race conditions caused by
+ ufs_qcom_testbus_config()
+ - dmaengine: dw: Add DMA-channels mask cell support
+ - dmaengine: dw: Activate FIFO-mode for memory peripherals only
+ - drm/hisilicon: Code refactoring for hibmc_drv_de
+ - [arm64,armhf] drm/panfrost: perfcnt: fix ref count leak in
+ panfrost_perfcnt_enable_locked
+ - ath10k: check idx validity in __ath10k_htt_rx_ring_fill_n()
+ - [s390x] qeth: don't let HW override the configured port role
+ - tty: serial: lpuart: fix lpuart32_write usage
+ - tty: serial: fsl_lpuart: fix lpuart32_poll_get_char
+ - usb: gadget: bcm63xx_udc: fix up the error of undeclared usb_debug_root
+ - usb: cdc-acm: add quirk to blacklist ETAS ES58X devices
+ - USB: cdc-wdm: Make wdm_flush() interruptible and add wdm_fsync().
+ - usb: cdns3: gadget: free interrupt after gadget has deleted
+ - eeprom: at25: set minimum read/write access stride to 1
+ - usb: gadget: f_ncm: allow using NCM in SuperSpeed Plus gadgets.
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.3
+ - cpufreq: Improve code around unlisted freq check
+ - netfilter: nftables_offload: KASAN slab-out-of-bounds Read in
+ nft_flow_rule_create
+ - io_uring: allow timeout/poll/files killing to take task into account
+ - io_uring: move dropping of files into separate helper
+ - io_uring: stash ctx task reference for SQPOLL
+ - io_uring: unconditionally grab req->task
+ - io_uring: return cancelation status from poll/timeout/files handlers
+ - io_uring: enable task/files specific overflow flushing
+ - io_uring: don't rely on weak ->files references
+ - io_uring: reference ->nsproxy for file table commands
+ - io_wq: Make io_wqe::lock a raw_spinlock_t
+ - io-wq: fix use-after-free in io_wq_worker_running
+ - io_uring: no need to call xa_destroy() on empty xarray
+ - io_uring: Fix use of XArray in __io_uring_files_cancel
+ - io_uring: Fix XArray usage in io_uring_add_task_file
+ - io_uring: Convert advanced XArray uses to the normal API
+ - scripts/setlocalversion: make git describe output more reliable
+ - [arm64] efi/arm64: libstub: Deal gracefully with EFI_RNG_PROTOCOL
+ failure
+ - fs/kernel_read_file: Remove FIRMWARE_EFI_EMBEDDED enum
+ - [arm64] Run ARCH_WORKAROUND_1 enabling code on all CPUs
+ - [arm64] Run ARCH_WORKAROUND_2 enabling code on all CPUs
+ - [arm64] link with -z norelro regardless of CONFIG_RELOCATABLE
+ - [x86] PCI: Fix intel_mid_pci.c build error when ACPI is not enabled
+ - efivarfs: Replace invalid slashes with exclamation marks in dentries.
+ - bnxt_en: Check abort error state in bnxt_open_nic().
+ - bnxt_en: Fix regression in workqueue cleanup logic in bnxt_remove_one().
+ - bnxt_en: Invoke cancel_delayed_work_sync() for PFs also.
+ - bnxt_en: Re-write PCI BARs after PCI fatal error.
+ - bnxt_en: Send HWRM_FUNC_RESET fw command unconditionally.
+ - cxgb4: set up filter action after rewrites
+ - gtp: fix an use-before-init in gtp_newlink()
+ - ibmveth: Fix use of ibmveth in a bridge.
+ - ibmvnic: fix ibmvnic_set_mac
+ - mlxsw: core: Fix memory leak on module removal
+ - mlxsw: Only advertise link modes supported by both driver and device
+ - netem: fix zero division in tabledist
+ - net: hns3: Clear the CMDQ registers before unmapping BAR region
+ - net: ipa: command payloads already mapped
+ - net/sched: act_mpls: Add softdep on mpls_gso.ko
+ - r8169: fix issue with forced threading in combination with shared
+ interrupts
+ - ravb: Fix bit fields checking in ravb_hwtstamp_get()
+ - tcp: Prevent low rmem stalls with SO_RCVLOWAT.
+ - tipc: fix memory leak caused by tipc_buf_append()
+ - net/smc: fix invalid return code in smcd_new_buf_create()
+ - net/smc: fix suppressed return code
+ - net: protect tcf_block_unbind with block lock
+ - erofs: avoid duplicated permission check for "trusted." xattrs
+ - [x86] arch/x86/amd/ibs: Fix re-arming IBS Fetch
+ - [x86] traps: Fix #DE Oops message regression
+ - [x86] xen: disable Firmware First mode for correctable memory errors
+ - PCI: aardvark: Fix initialization with old Marvell's Arm Trusted
+ Firmware
+ - ata: ahci: mvebu: Make SATA PHY optional for Armada 3720
+ - fuse: fix page dereference after free
+ - bpf: Fix comment for helper bpf_current_task_under_cgroup()
+ - evm: Check size of security.evm before using it
+ - p54: avoid accessing the data mapped to streaming DMA
+ - cxl: Rework error message for incompatible slots
+ - RDMA/addr: Fix race with netevent_callback()/rdma_addr_cancel()
+ - mtd: lpddr: Fix bad logic in print_drs_error
+ - [x86] drm/i915/gem: Serialise debugfs i915_gem_objects with ctx->mutex
+ - serial: qcom_geni_serial: To correct QUP Version detection logic
+ - serial: pl011: Fix lockdep splat when handling magic-sysrq interrupt
+ - PM: runtime: Fix timer_expires data type on 32-bit arches
+ - ata: sata_rcar: Fix DMA boundary mask
+ - mm: mark async iocb read as NOWAIT once some data has been copied
+ - xen/gntdev.c: Mark pages as dirty
+ - io_uring: don't reuse linked_timeout
+ - misc: rtsx: do not setting OC_POWER_DOWN reg in rtsx_pci_init_ocp()
+ - phy: marvell: comphy: Convert internal SMCC firmware return codes to
+ errno
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.4
+ - [x86,powerpc] Rename memcpy_mcsafe() to copy_mc_to_{user, kernel}()
+ - [x86] copy_mc: Introduce copy_mc_enhanced_fast_string()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.5
+ - xen/events: avoid removing an event channel while handling it
+ (CVE-2020-27675)
+ - xen/events: add a proper barrier to 2-level uevent unmasking
+ (CVE-2020-27673)
+ - xen/events: fix race in evtchn_fifo_unmask() (CVE-2020-27673)
+ - xen/events: add a new "late EOI" evtchn framework (CVE-2020-27673)
+ - xen/blkback: use lateeoi irq binding (CVE-2020-27673)
+ - xen/netback: use lateeoi irq binding (CVE-2020-27673)
+ - xen/scsiback: use lateeoi irq binding (CVE-2020-27673)
+ - xen/pvcallsback: use lateeoi irq binding (CVE-2020-27673)
+ - xen/pciback: use lateeoi irq binding (CVE-2020-27673)
+ - xen/events: switch user event channels to lateeoi model (CVE-2020-27673)
+ - xen/events: use a common cpu hotplug hook for event channels
+ (CVE-2020-27673)
+ - xen/events: defer eoi in case of excessive number of events
+ (CVE-2020-27673)
+ - xen/events: block rogue events for some time (CVE-2020-27673)
+ - [arm64] tee: client UUID: Skip REE kernel login method as well
+ - [x86] unwind/orc: Fix inactive tasks with stack pointer in %sp on GCC 10
+ compiled kernels
+ - [x86] alternative: Don't call text_poke() in lazy TLB mode
+ - RDMA/mlx5: Fix devlink deadlock on net namespace deletion
+ - afs: Fix a use after free in afs_xattr_get_acl()
+ - afs: Fix afs_launder_page to not clear PG_writeback
+ - RDMA/qedr: Fix memory leak in iWARP CM
+ - ata: sata_nv: Fix retrieving of active qcs
+ - [arm64] efi: increase EFI PE/COFF header padding to 64 KB
+ - afs: Fix to take ref on page when PG_private is set
+ - afs: Fix page leak on afs_write_begin() failure
+ - afs: Fix where page->private is set during write
+ - afs: Wrap page->private manipulations in inline functions
+ - afs: Alter dirty range encoding in page->private
+ - afs: Fix afs_invalidatepage to adjust the dirty region
+ - afs: Fix dirty-region encoding on ppc32 with 64K pages
+ - lockdep: Fix preemption WARN for spurious IRQ-enable
+ - [arm64,armhf] usb: host: ehci-tegra: Fix error handling in
+ tegra_ehci_probe()
+ - futex: Fix incorrect should_fail_futex() handling
+ - [powerpc*] vmemmap: Fix memory leak with vmemmap list allocation
+ failures.
+ - [powerpc*] powernv/smp: Fix spurious DBG() warning
+ - RDMA/core: Change how failing destroy is handled during uobj abort
+ - f2fs: allocate proper size memory for zstd decompress
+ - mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race
+ - [powerpc*] select ARCH_WANT_IRQS_OFF_ACTIVATE_MM
+ - [sparc64] remove mm_cpumask clearing to fix kthread_use_mm race
+ - f2fs: add trace exit in exception path
+ - f2fs: do sanity check on zoned block device path
+ - f2fs: fix uninit-value in f2fs_lookup
+ - f2fs: fix to check segment boundary during SIT page readahead
+ - [s390x] startup: avoid save_area_sync overflow
+ - f2fs: compress: fix to disallow enabling compress on non-empty file
+ - [s390x] ap/zcrypt: revisit ap and zcrypt error handling
+ - f2fs: handle errors of f2fs_get_meta_page_nofail
+ - afs: Don't assert on unpurgeable server records
+ - [powerpc*] 64s: handle ISA v3.1 local copy-paste context switches
+ - [armel,armhf] 8997/2: hw_breakpoint: Handle inexact watchpoint addresses
+ - NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source
+ - xfs: Set xfs_buf type flag when growing summary/bitmap files
+ - xfs: Set xfs_buf's b_ops member when zeroing bitmap/summary files
+ - xfs: log new intent items created as part of finishing recovered intent
+ items
+ - power: supply: bq27xxx: report "not charging" on all types
+ - xfs: change the order in which child and parent defer ops are finished
+ - xfs: fix realtime bitmap/summary file truncation when growing rt volume
+ - io_uring: don't set COMP_LOCKED if won't put
+ - ath10k: fix retry packets update in station dump
+ - [x86] kaslr: Initialize mem_limit to the real maximum address
+ - drm/ast: Separate DRM driver from PCI code
+ - drm/amdgpu: restore ras flags when user resets eeprom(v2)
+ - ath10k: start recovery process when payload length exceeds max htc
+ length for sdio
+ - ath10k: fix VHT NSS calculation when STBC is enabled
+ - drm/scheduler: Scheduler priority fixes (v2)
+ - [x86] ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't
+ work
+ - drm/bridge_connector: Set default status connected for eDP connectors
+ - media: videodev2.h: RGB BT2020 and HSV are always full range
+ - [x86] usb: typec: tcpm: During PR_SWAP, source caps should be sent only
+ after tSwapSourceStart
+ - mmc: via-sdmmc: Fix data race bug
+ - brcmfmac: increase F2 watermark for BCM4329
+ - [arm64] topology: Stop using MPIDR for topology information
+ - printk: reduce LOG_BUF_SHIFT range for H8300
+ - [ia64] kprobes: Use generic kretprobe trampoline handler
+ - bpf: Permit map_ptr arithmetic with opcode add and offset 0
+ - [arm64,armhf] drm: lima: fix common struct sg_table related issues
+ - [arm64,armhf] drm: panfrost: fix common struct sg_table related issues
+ - media: uvcvideo: Fix dereference of out-of-bound list iterator
+ - selinux: access policycaps with READ_ONCE/WRITE_ONCE
+ - samples/bpf: Fix possible deadlock in xdpsock
+ - [riscv64] Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO
+ - cpufreq: sti-cpufreq: add stih418 support
+ - USB: adutux: fix debugging
+ - mac80211: add missing queue/hash initialization to 802.3 xmit
+ - usb: xhci: omit duplicate actions when suspending a runtime suspended
+ host.
+ - SUNRPC: Mitigate cond_resched() in xprt_transmit()
+ - [arm64] mm: return cpu_all_mask when node is NUMA_NO_NODE
+ - [armhf] can: flexcan: disable clocks during stop mode
+ - xfs: don't free rt blocks when we're doing a REMAP bunmapi call
+ - xfs: avoid LR buffer overrun due to crafted h_len
+ - ACPI: Add out of bounds and numa_off protections to pxm_to_node()
+ - brcmfmac: Fix warning message after dongle setup failed
+ - ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in
+ ath11k_dp_htt_get_ppdu_desc
+ - ath11k: fix warning caused by lockdep_assert_held
+ - ath11k: change to disable softirqs for ath11k_regd_update to solve
+ deadlock
+ - drivers/net/wan/hdlc_fr: Correctly handle special skb->protocol values
+ - [arm64,armhf] usb: dwc3: core: do not queue work if dr_mode is not
+ USB_DR_MODE_OTG
+ - [arm64] bus/fsl_mc: Do not rely on caller to provide non NULL mc_io
+ - ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3
+ - block: Consider only dispatched requests for inflight statistic
+ - btrfs: fix replace of seed device
+ - md/bitmap: md_bitmap_get_counter returns wrong blocks
+ - f2fs: fix to set SBI_NEED_FSCK flag for inconsistent inode
+ - bnxt_en: Log unknown link speed appropriately.
+ - [arm64] rpmsg: glink: Use complete_all for open states
+ - PCI/ACPI: Add Ampere Altra SOC MCFG quirk
+ - [armhf] clk: ti: clockdomain: fix static checker warning
+ - nfsd: rename delegation related tracepoints to make them less confusing
+ - nfsd4: remove check_conflicting_opens warning
+ - net: 9p: initialize sun_server.sun_path to have addr's value only when
+ addr is valid
+ - ceph: encode inodes' parent/d_name in cap reconnect message
+ - jbd2: avoid transaction reuse after reformatting
+ - ext4: Detect already used quota file early
+ - [ppc64el] KVM: PPC: Book3S HV: Do not allocate HPT for a nested guest
+ - scsi: core: Clean up allocation and freeing of sgtables
+ - gfs2: call truncate_inode_pages_final for address space glocks
+ - gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump
+ - gfs2: use-after-free in sysfs deregistration
+ - gfs2: add validation checks for size of superblock
+ - Handle STATUS_IO_TIMEOUT gracefully
+ - cifs: handle -EINTR in cifs_setattr
+ - [armhf] memory: emif: Remove bogus debugfs error handling
+ - nbd: make the config put is called before the notifying the waiter
+ - sgl_alloc_order: fix memory leak
+ - nvme-rdma: fix crash when connect rejected
+ - vmlinux.lds.h: Add PGO and AutoFDO input sections
+ - [mips64el,mipsel] irqchip/loongson-htvec: Fix initial interrupt clearing
+ - md: fix the checking of wrong work queue
+ - md/raid5: fix oops during stripe resizing
+ - mmc: sdhci: Add LTR support for some Intel BYT based controllers
+ - mmc: sdhci-acpi: AMDI0040: Set SDHCI_QUIRK2_PRESET_VALUE_BROKEN
+ - mm: memcg/slab: uncharge during kmem_cache_free_bulk()
+ - seccomp: Make duplicate listener detection non-racy
+ - [x86] perf/x86/intel: Fix Ice Lake event constraint table
+ - [x86] perf/x86/amd: Fix sampling Large Increment per Cycle events
+ - [x86] perf/amd/uncore: Set all slices and threads to restore perf stat
+ -a behaviour
+ - [x86] perf/x86/amd/ibs: Don't include randomized bits in
+ get_ibs_op_count()
+ - [x86] perf/x86/amd/ibs: Fix raw sample data accumulation
+ - media: uvcvideo: Fix uvc_ctrl_fixup_xu_info() not having any effect
+ - fs: Don't invalidate page buffers in block_write_full_page()
+ - ACPI: configfs: Add missing config_item_put() to fix refcount leak
+ - NFS: fix nfs_path in case of a rename retry
+ - ACPI: button: fix handling lid state changes when input device closed
+ - ACPI: video: use ACPI backlight for HP 635 Notebook
+ - ACPI: debug: don't allow debugging when ACPI is disabled
+ - PCI/ACPI: Whitelist hotplug ports for D3 if power managed by ACPI
+ - ACPI: EC: PM: Flush EC work unconditionally after wakeup
+ - ACPI: EC: PM: Drop ec_no_wakeup check from acpi_ec_dispatch_gpe()
+ - acpi-cpufreq: Honor _PSD table setting on new AMD CPUs
+ - io-wq: assign NUMA node locality if appropriate
+ - w1: mxc_w1: Fix timeout resolution problem leading to bus error
+ - fs/kernel_read_file: Remove FIRMWARE_PREALLOC_BUFFER enum
+ - scsi: mptfusion: Fix null pointer dereferences in mptscsih_remove()
+ - scsi: qla2xxx: Fix MPI reset needed message
+ - scsi: qla2xxx: Fix reset of MPI firmware
+ - scsi: qla2xxx: Fix crash on session cleanup with unload
+ - PM: runtime: Remove link state checks in rpm_get/put_supplier()
+ - btrfs: qgroup: fix wrong qgroup metadata reserve for delayed inode
+ - btrfs: improve device scanning messages
+ - btrfs: qgroup: fix qgroup meta rsv leak for subvolume operations
+ - btrfs: sysfs: init devices outside of the chunk_mutex
+ - btrfs: tracepoints: output proper root owner for
+ trace_find_free_extent()
+ - btrfs: reschedule if necessary when logging directory items
+ - btrfs: send, orphanize first all conflicting inodes when processing
+ references
+ - btrfs: send, recompute reference path after orphanization of a directory
+ - btrfs: use kvzalloc() to allocate clone_roots in btrfs_ioctl_send()
+ - btrfs: tree-checker: fix false alert caused by legacy btrfs root item
+ - btrfs: reschedule when cloning lots of extents
+ - btrfs: cleanup cow block on error
+ - btrfs: skip devices without magic signature when mounting
+ - btrfs: tree-checker: validate number of chunk stripes and parity
+ - btrfs: fix use-after-free on readahead extent after failure to create it
+ - btrfs: fix readahead hang and use-after-free after removing a device
+ - btrfs: drop the path before adding block group sysfs files
+ - usb: xhci: Workaround for S3 issue on AMD SNPS 3.0 xHC
+ - [arm64] usb: dwc3: pci: Allow Elkhart Lake to utilize DSM method for PM
+ functionality
+ - [arm64,armhf] usb: dwc3: ep0: Fix ZLP for OUT ep0 requests
+ - [arm64,armhf] usb: dwc3: gadget: Check MPS of the request length
+ - [arm64,armhf] usb: dwc3: gadget: Reclaim extra TRBs after request
+ completion
+ - [arm64,armhf] usb: dwc3: core: add phy cleanup for probe error handling
+ - [arm64,armhf] usb: dwc3: core: don't trigger runtime pm when remove
+ driver
+ - [arm64,armhf] usb: dwc3: gadget: Resume pending requests after
+ CLEAR_STALL
+ - [arm64,armhf] usb: dwc3: gadget: END_TRANSFER before CLEAR_STALL command
+ - usb: cdc-acm: fix cooldown mechanism
+ - [x86] usb: typec: tcpm: reset hard_reset_count for any disconnect
+ - usbcore: Check both id_table and match() when both available
+ - USB: apple-mfi-fastcharge: don't probe unhandled devices
+ - [x86] drm/i915: Force VT'd workarounds when running as a guest OS
+ - vt: keyboard, simplify vt_kdgkbsent
+ - vt: keyboard, extend func_buf_lock to readers (CVE-2020-25656)
+ - vt_ioctl: fix GIO_UNIMAP regression
+ - HID: wacom: Avoid entering wacom_wac_pen_report for pad / battery
+ - [x86] mce: Allow for copy_mc_fragile symbol checksum to be generated
+ - [arm64] tty: serial: fsl_lpuart: LS1021A has a FIFO size of 16 words,
+ like LS1028A
+ - tracing: Fix race in trace_open and buffer resize call
+ - [powerpc*] Fix random segfault when freeing hugetlb range
+ - udf: Fix memory leak when mounting
+ - rcu-tasks: Fix grace-period/unlock race in RCU Tasks Trace
+ - rcu-tasks: Fix low-probability task_struct leak
+ - rcu-tasks: Enclose task-list scan in rcu_read_lock()
+ - [s390x] stp: add locking to sysfs functions
+ - [powerpc*] rtas: Restrict RTAS requests from userspace
+ - [powerpc*] Warn about use of smt_snooze_delay
+ - [powerpc*] memhotplug: Make lmb size 64bit
+ - [powerpc*] powernv/elog: Fix race while processing OPAL error log event.
+ - [powerpc*] powermac: Fix low_sleep_handler with KUAP and KUEP
+ - [powerpc*] mce: Avoid nmi_enter/exit in real mode on pseries hash
+ - [powerpc*] Fix undetected data corruption with P9N DD2.1 VSX CI load
+ emulation
+ - [powerpc*] 32: Fix vmap stack - Do not activate MMU before reading task
+ struct
+ - [powerpc*] 32: Fix vmap stack - Properly set r1 before activating MMU
+ - block: advance iov_iter on bio_add_hw_page failure
+ - io_uring: use type appropriate io_kiocb handler for double poll
+ - [armhf] remoteproc: Fixup coredump debugfs disable request
+ - gfs2: Make sure we don't miss any delayed withdraws
+ - gfs2: Only access gl_delete for iopen glocks
+ - NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE
+ - NFSv4.2: support EXCHGID4_FLAG_SUPP_FENCE_OPS 4.2 EXCHANGE_ID flag
+ - NFSD: Add missing NFSv2 .pc_func methods
+ - ubifs: dent: Fix some potential memory leaks while iterating entries
+ - ubifs: xattr: Fix some potential memory leaks while iterating entries
+ - ubifs: journal: Make sure to not dirty twice for auth nodes
+ - ubifs: Fix a memleak after dumping authentication mount options
+ - ubifs: Don't parse authentication mount options in remount process
+ - ubifs: mount_ubifs: Release authentication resource in error handling
+ path
+ - perf vendor events amd: Add L2 Prefetch events for zen1
+ - perf python scripting: Fix printable strings in python3 scripts
+ - ubi: check kthread_should_stop() after the setting of task state
+ - [arm64,armhf] i2c: imx: Fix external abort on interrupt in exit paths
+ - drm/amdgpu: don't map BO in reserved region
+ - drm/amdgpu: vcn and jpeg ring synchronization
+ - drm/amdgpu: update golden setting for sienna_cichlid
+ - drm/amdgpu: correct the gpu reset handling for job != NULL case
+ - drm/amdgpu: add function to program pbb mode for sienna cichlid
+ - drm/amdgpu: increase the reserved VM size to 2MB
+ - ceph: promote to unsigned long long before shifting
+ - libceph: clear con->out_msg on Policy::stateful_server faults
+ - 9P: Cast to loff_t before multiplying
+ - net/sunrpc: Fix return value for sysctl sunrpc.transports
+ - [arm64] PCI: qcom: Make sure PCIe is reset before init for rev 2.1.0
+ - ring-buffer: Return 0 on success from ring_buffer_resize()
+ - [x86] intel_idle: Ignore _CST if control cannot be taken from the
+ platform
+ - [x86] intel_idle: Fix max_cstate for processor models without C-state
+ tables
+ - cpufreq: Avoid configuring old governors as default with intel_pstate
+ - cpufreq: Introduce CPUFREQ_NEED_UPDATE_LIMITS driver flag
+ - cpufreq: intel_pstate: Avoid missing HWP max updates in passive mode
+ - [amd64] vringh: fix __vringh_iov() when riov and wiov are different
+ - ext4: fix leaking sysfs kobject after failed mount
+ - ext4: fix error handling code in add_new_gdb
+ - ext4: implement swap_activate aops using iomap
+ - ext4: fix invalid inode checksum
+ - ext4: clear buffer verified flag if read meta block from disk
+ - ext4: fix bdev write error check failed when mount fs with ro
+ - ext4: fix bs < ps issue reported with dioread_nolock mount opt
+ - ext4: do not use extent after put_bh
+ - drm/ttm: fix eviction valuable range check.
+ - [arm64] mmc: sdhci-of-esdhc: make sure delay chain locked for HS400
+ - [arm64] mmc: sdhci-of-esdhc: set timeout to max before tuning
+ - mmc: sdhci: Use Auto CMD Auto Select only when v4_mode is true
+ - [arm64,armhf] memory: tegra: Remove GPU from DRM IOMMU group
+ - futex: Adjust absolute futex timeouts with per time namespace offset
+ - drm/amd/psp: Fix sysfs: cannot create duplicate filename
+ - drm/amdgpu: correct the cu and rb info for sienna cichlid
+ - tty: make FONTX ioctl use the tty pointer they were actually passed
+ (CVE-2020-25668)
+ - cachefiles: Handle readpage error correctly
+ - [hppa] hil/parisc: Disable HIL driver when it gets stuck
+ - [arm64] Change .weak to SYM_FUNC_START_WEAK_PI for arch/arm64/lib/mem*.S
+ - [arm64] dts: marvell: espressobin: Add ethernet switch aliases
+ - null_blk: synchronization fix for zoned device
+ - device property: Keep secondary firmware node secondary by type
+ - device property: Don't clear secondary pointer for shared primary
+ firmware node
+ - [x86] KVM: Fix NULL dereference at kvm_msr_ignored_check()
+ - [arm64] KVM: Fix AArch32 handling of DBGD{CCINT,SCRext} and DBGVCR
+ - stop_machine, rcu: Mark functions as notrace
+ - [x86] staging: comedi: cb_pcidas: Allow 2-channel commands for AO
+ subdevice
+ - [mips64el,mipsel] staging: octeon: repair "fixed-link" support
+ - [mips64el,mipsel] staging: octeon: Drop on uncorrectable alignment or
+ FCS error
+ - cpufreq: Introduce cpufreq_driver_test_flags()
+ - cpufreq: schedutil: Always call driver if CPUFREQ_NEED_UPDATE_LIMITS is
+ set
+ - time: Prevent undefined behaviour in timespec64_to_ns()
+ - time/sched_clock: Mark sched_clock_read_begin/retry() as notrace
+ - null_blk: Fix zone reset all tracing
+ - null_blk: Fix locking in zoned mode
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.6
+ - [x86] ASOC: SOF: Intel: hda-codec: move unused label to correct position
+
+ [ Sudip Mukherjee ]
+ * Remove libtraceevent. (See: #971976)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Add i2c_mv64xxx i2c-modules udeb.
+ * [arm64] Add drivers/pinctrl to kernel-image udeb.
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.9.1-rt20
+ * [rt] Drop "io_wq: Make io_wqe::lock a raw_spinlock_t"
+ * [rt] Refresh "kernel/sched: move stack + kprobe clean up to
+ __put_task_struct()" for context changes in 5.9.3
+ * Bump ABI to 2
+ * [x86] media/cec: Enable MEDIA_CEC_SUPPORT; Enable CEC_SECO as module
+ (Closes: #972973)
+ * [rt] Drop "printk: reduce LOG_BUF_SHIFT range for H8300"
+ * [rt] Drop "mm: fix exec activate_mm vs TLB shootdown and lazy tlb
+ switching race"
+ * [x86] pinctrl: Enable PINCTRL_TIGERLAKE (Closes: #973372)
+ * [x86] sound/soc: Enable SND_SOC_SOF_TIGERLAKE_SUPPORT (Closes: #973879)
+ * perf/core: Fix a memory leak in perf_event_parse_addr_filter()
+
+ [ Ben Hutchings ]
+ * [rt] Rebase seqlock patches on top of 5.9.6
+
+ [ John Paul Adrian Glaubitz ]
+ * [sh4] Update kernel configuration for sh7785lcr flavor
+ - Compile CONFIG_HID, CONFIG_USB_HID, CONFIG_INPUT_EVDEV and
+ CONFIG_R8169 as modules to reduce kernel image size
+ - Disable CONFIG_KEYBOARD_ATKBD, CONFIG_MOUSE_PS2*, CONFIG_SERIO*
+ and CONFIG_PARPORT_1284 as the SH-7785LCR board does not support
+ PC-style keyboards, serial and parallel ports and mice
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 08 Nov 2020 13:40:04 +0100
+
+linux (5.9.1-1) unstable; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_5.9
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.9.1
+ - Bluetooth: A2MP: Fix not initializing all members (CVE-2020-12352)
+ - Bluetooth: L2CAP: Fix calling sk_filter on non-socket based channel
+ (CVE-2020-12351)
+ - Bluetooth: MGMT: Fix not checking if BT_HS is enabled
+ - media: usbtv: Fix refcounting mixup
+ - USB: serial: option: add Cellient MPL200 card
+ - USB: serial: option: Add Telit FT980-KS composition
+ - [x86] staging: comedi: check validity of wMaxPacketSize of usb endpoints
+ found
+ - USB: serial: pl2303: add device-id for HP GC device
+ - USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters
+ - vt_ioctl: make VT_RESIZEX behave like VT_RESIZE
+ - reiserfs: Initialize inode keys properly
+ - reiserfs: Fix oops during mount
+ - Revert "drm/amdgpu: Fix NULL dereference in dpm sysfs handlers"
+ - [x86] crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA
+
+ [ Romain Perier ]
+ * [rt] Update to 5.9-rc8-rt12
+
+ [ Uwe Kleine-König ]
+ * [armhf,arm64] Enable CONFIG_VIDEO_SUNXI_CEDRUS (Closes: #972123)
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.9-rt16
+ * [x86] ACPI / extlog: Check for RDMSR failure (Closes: #971058)
+ * Set ABI to 1
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 17 Oct 2020 15:14:43 +0200
+
+linux (5.9~rc8-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * linux-doc: Correct index filename in package description
+ * [amd64/cloud-amd64] Generalise the description of supported platforms
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.9-rc8-rt11
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Mon, 05 Oct 2020 23:17:12 +0200
+
+linux (5.9~rc6-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate:
+
+ [ Ben Hutchings ]
+ * linux-signed-*: Set Uploaders and Standards-Version to match linux
+ * [rt] Update to 5.9-rc5-rt7 and re-enable
+
+ [ Uwe Kleine-König ]
+ * [arm64,generic] Enable configs used on SMARC-sAL28 board and its carriers.
+ Patch by Michael Walle.
+
+ [ Gianfranco Costamagna ]
+ * Provide virtualbox-guest-modules now that the module is inside the kernel
+ itself.
+
+ [ Salvatore Bonaccorso ]
+ * Set ABI to trunk
+ * drivers/net/wireless: Enable RTW88_8821CE (Closes: #917941)
+
+ -- Ben Hutchings <benh@debian.org> Mon, 21 Sep 2020 03:23:41 +0100
+
+linux (5.9~rc4-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * Un-export symbols no longer needed by the Android ashmem and binder drivers
+ * aufs: Disable support patchset until it is updated for Linux 5.9
+ * Makefile: Do not check for libelf when building OOT module
+ * udeb: Move any compression modules to kernel-image; drop compress-modules
+ * libtraceevent1: Update symbols list for functions added in 5.9
+ * drm/virtio: Revert "drm/virtio: Call the right shmem helpers"
+
+ -- Ben Hutchings <benh@debian.org> Fri, 11 Sep 2020 04:20:59 +0100
+
+linux (5.8.14-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.11
+ - dt-bindings: spi: Fix spi-bcm-qspi compatible ordering
+ - net: handle the return value of pskb_carve_frag_list() correctly
+ - dt-bindings: PCI: intel,lgm-pcie: Fix matching on all snps,dw-pcie
+ instances
+ - [x86] hv_netvsc: Remove "unlikely" from netvsc_select_queue
+ - loop: Set correct device size when using LOOP_CONFIGURE
+ - firmware_loader: fix memory leak for paged buffer
+ - xprtrdma: Release in-flight MRs on disconnect
+ - NFSv4.1 handle ERR_DELAY error reclaiming locking state on delegation
+ recall
+ - [armhf] phy: omap-usb2-phy: disable PHY charger detect
+ - scsi: pm8001: Fix memleak in pm8001_exec_internal_task_abort
+ - scsi: libfc: Fix for double free()
+ - scsi: lpfc: Fix FLOGI/PLOGI receive race condition in pt2pt discovery
+ - scsi: lpfc: Extend the RDF FPIN Registration descriptor for additional
+ events
+ - [arm64] regulator: pwm: Fix machine constraints application
+ - NFS: Zero-stateid SETATTR should first return delegation
+ - SUNRPC: stop printk reading past end of string
+ - cifs: fix DFS mount with cifsacl/modefromsid
+ - nvme-fc: cancel async events before freeing event struct
+ - nvme-rdma: cancel async events before freeing event struct
+ - block: only call sched requeue_request() for scheduled requests
+ - f2fs: fix indefinite loop scanning for free nid
+ - f2fs: Return EOF on unaligned end of file DIO read
+ - i2c: algo: pca: Reapply i2c bus settings after reset
+ - spi: Fix memory leak on splited transfers
+ - [mips*] KVM: Change the definition of kvm type
+ - [arm64,armhf] clk: rockchip: Fix initialization of mux_pll_src_4plls_p
+ - [x86] ASoC: Intel: skl_hda_dsp_generic: Fix NULLptr dereference in
+ autosuspend delay
+ - [arm64] ASoC: qcom: Set card->owner to avoid warnings
+ - ASoC: qcom: common: Fix refcount imbalance on error
+ - [powerpc*] book3s64/radix: Fix boot failure with large amount of guest
+ memory
+ - ASoC: soc-core: add snd_soc_find_dai_with_mutex()
+ - [x86] ASoC: Intel: haswell: Fix power transition refactor
+ - ASoC: core: Do not cleanup uninitialized dais on soc_pcm_open failure
+ - [x86] Drivers: hv: vmbus: hibernation: do not hang forever in
+ vmbus_bus_resume()
+ - scsi: libsas: Fix error path in sas_notify_lldd_dev_found()
+ - [arm64] Allow CPUs unffected by ARM erratum 1418040 to come in late
+ - [x86] Drivers: hv: vmbus: Add timeout to vmbus_wait_for_unload
+ - [x86] drm/i915/gem: Reduce context termination list iteration guard to
+ RCU
+ - fbcon: Fix user font detection test at fbcon_resize().
+ - [arm64] bpf: Fix branch offset in JIT
+ - [amd64] iommu/amd: Fix potential @entry null deref
+ - [amd64] iommu/amd: Restore IRTE.RemapEn bit for
+ amd_iommu_activate_guest_mode
+ - [riscv64] Add sfence.vma after early page table changes
+ - locking/lockdep: Fix "USED" <- "IN-NMI" inversions
+ - efi: efibc: check for efivars write capability
+ - locking/percpu-rwsem: Use this_cpu_{inc,dec}() for read_count
+ - [x86] unwind/fp: Fix FP unwinding in ret_from_fork
+ - [x86] drm/i915/gem: Delay tracking the GEM context until it is
+ registered
+ - [x86] drm/i915: Filter wake_flags passed to default_wake_function
+ - USB: quirks: Add USB_QUIRK_IGNORE_REMOTE_WAKEUP quirk for BYD zhaoxin
+ notebook
+ - USB: UAS: fix disconnect by unplugging a hub
+ - usblp: fix race between disconnect() and read()
+ - [x86] usb: typec: ucsi: acpi: Increase command completion timeout value
+ - [x86] usb: typec: ucsi: Prevent mode overrun
+ - [x86] i2c: i801: Fix resume bug
+ - Revert "ALSA: hda - Fix silent audio output and corrupted input on MSI
+ X570-A PRO"
+ - ALSA: hda: fixup headset for ASUS GX502 laptop
+ - ALSA: hda/realtek - The Mic on a RedmiBook doesn't work
+ - percpu: fix first chunk size calculation for populated bitmap
+ - Input: trackpoint - add new trackpoint variant IDs
+ - Input: i8042 - add Entroware Proteus EL07R4 to nomux and reset lists
+ - [x86] thunderbolt: Retry DROM read once if parsing fails
+ - serial: 8250_pci: Add Realtek 816a and 816b
+ - serial: core: fix port-lock initialisation
+ - serial: core: fix console port-lock regression
+ - ksm: reinstate memcg charge on copied pages
+ - kprobes: fix kill kprobe which has been marked as gone
+ - mm/thp: fix __split_huge_pmd_locked() for migration PMD
+ - [s390x] add 3f program exception handler
+ - [s390x] pci: fix leak of DMA tables on hard unplug
+ - [s390x] zcrypt: fix kmalloc 256k failure
+ - ehci-hcd: Move include to keep CRC stable
+ - [arm64] paravirt: Initialize steal time when cpu is online
+ - [powerpc*] dma: Fix dma_map_ops::get_required_mask
+ - dm/dax: Fix table reference counts
+ - mm/memory_hotplug: drain per-cpu pages again during memory offline
+ - dm: Call proper helper to determine dax support
+ - dax: Fix compilation for CONFIG_DAX && !CONFIG_FS_DAX
+ - mm: memcg: fix memcg reclaim soft lockup
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.12
+ - act_ife: load meta modules before tcf_idr_check_alloc()
+ - bnxt_en: Avoid sending firmware messages when AER error is detected.
+ - bnxt_en: Fix NULL ptr dereference crash in bnxt_fw_reset_task()
+ - cxgb4: fix memory leak during module unload
+ - cxgb4: Fix offset when clearing filter byte counters
+ - geneve: add transport ports in route lookup for geneve (CVE-2020-25645)
+ - hdlc_ppp: add range checks in ppp_cp_parse_cr() (CVE-2020-25643)
+ - [arm64,x86] hinic: bump up the timeout of SET_FUNC_STATE cmd
+ - ip: fix tos reflection in ack and reset packets
+ - ipv4: Initialize flowi4_multipath_hash in data path
+ - ipv4: Update exception handling for multipath routes via same device
+ - ipv6: avoid lockdep issue in fib6_del()
+ - net: bridge: br_vlan_get_pvid_rcu() should dereference the VLAN group
+ under RCU
+ - net: DCB: Validate DCB_ATTR_DCB_BUFFER argument
+ - net: Fix bridge enslavement failure
+ - net: ipv6: fix kconfig dependency warning for IPV6_SEG6_HMAC
+ - net/mlx5: Fix FTE cleanup
+ - net: phy: call phy_disable_interrupts() in phy_attach_direct() instead
+ - net: sched: initialize with 0 before setting erspan md->u
+ - net: sch_generic: aviod concurrent reset and enqueue op for lockless
+ qdisc
+ - net: sctp: Fix IPv6 ancestor_size calc in sctp_copy_descendant
+ - nfp: use correct define to return NONE fec
+ - tipc: Fix memory leak in tipc_group_create_member()
+ - tipc: fix shutdown() of connection oriented socket
+ - tipc: use skb_unshare() instead in tipc_buf_append()
+ - net/mlx5e: Enable adding peer miss rules only if merged eswitch is
+ supported
+ - bnxt_en: Use memcpy to copy VPD field info.
+ - bnxt_en: return proper error codes in bnxt_show_temp
+ - bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex.
+ - net: phy: Avoid NPD upon phy_detach() when driver is unbound
+ - net: phy: Do not warn in phy_stop() on PHY_DOWN
+ - net: add __must_check to skb_put_padto()
+ - [armhf] net: ethernet: ti: cpsw_new: fix suspend/resume
+ - wireguard: noise: take lock when removing handshake entry from table
+ - wireguard: peerlookup: take lock before checking hash in replace
+ operation
+ - net/mlx5e: Fix memory leak of tunnel info when rule under multipath not
+ ready
+ - [arm64,x86] hinic: fix rewaking txq after netif_tx_disable
+ - [x86] hv_netvsc: Fix hibernation for mlx5 VF driver
+ - [arm64,armhf] net: dsa: link interfaces with the DSA master to get rid
+ of lockdep warnings
+ - net: macb: fix for pause frame receive enable bit
+ - Revert "netns: don't disable BHs when locking "nsid_lock""
+ - net/mlx5e: Use RCU to protect rq->xdp_prog
+ - net/mlx5e: Use synchronize_rcu to sync with NAPI
+ - net/mlx5e: Fix endianness when calculating pedit mask first bit
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.13
+ - device_cgroup: Fix RCU list debugging warning
+ - [x86] ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN Converter9 2-in-1
+ - [riscv64] Take text_mutex in ftrace_init_nop()
+ - [armhf] i2c: aspeed: Mask IRQ status to relevant bits
+ - [s390x] init: add missing __init annotations
+ - lockdep: fix order in trace_hardirqs_off_caller()
+ - i2c: core: Call i2c_acpi_install_space_handler() before
+ i2c_acpi_register_devices()
+ - objtool: Fix noreturn detection for ignored functions
+ - mwifiex: Increase AES key storage size to 256 bits
+ - batman-adv: bla: fix type misuse for backbone_gw hash indexing
+ - libbpf: Fix build failure from uninitialized variable warning
+ - atm: eni: fix the missed pci_disable_device() for eni_init_one()
+ - batman-adv: mcast/TT: fix wrongly dropped or rerouted packets
+ - netfilter: ctnetlink: add a range check for l3/l4 protonum
+ (CVE-2020-25211)
+ - netfilter: ctnetlink: fix mark based dump filtering regression
+ - netfilter: conntrack: nf_conncount_init is failing with IPv6 disabled
+ - netfilter: nft_meta: use socket user_ns to retrieve skuid and skgid
+ - mac802154: tx: fix use-after-free
+ - bpf: Fix clobbering of r2 in bpf_gen_ld_abs
+ - tools/libbpf: Avoid counting local symbols in ABI check
+ - [arm*] drm/vc4/vc4_hdmi: fill ASoC card owner
+ - net: qed: Disable aRFS for NPAR and 100G
+ - net: qede: Disable aRFS for NPAR and 100G
+ - net: qed: RDMA personality shouldn't fail VF load
+ - igc: Fix wrong timestamp latency numbers
+ - igc: Fix not considering the TX delay for timestamps
+ - [x86] hv_netvsc: Switch the data path at the right time during
+ hibernation
+ - RDMA/core: Fix ordering of CQ pool destruction
+ - batman-adv: Add missing include for in_interrupt()
+ - xsk: Fix number of pinned pages/umem size discrepancy
+ - batman-adv: mcast: fix duplicate mcast packets in BLA backbone from LAN
+ - batman-adv: mcast: fix duplicate mcast packets in BLA backbone from mesh
+ - batman-adv: mcast: fix duplicate mcast packets from BLA backbone to mesh
+ - bpf: Fix a rcu warning for bpffs map pretty-print
+ - mac80211: do not disable HE if HT is missing on 2.4 GHz
+ - cfg80211: fix 6 GHz channel conversion
+ - mac80211: fix 80 MHz association to 160/80+80 AP on 6 GHz
+ - [x86] ALSA: asihpi: fix iounmap in error handler
+ - io_uring: fix openat/openat2 unified prep handling
+ - SUNRPC: Fix svc_flush_dcache()
+ - regmap: fix page selection for noinc reads
+ - regmap: fix page selection for noinc writes
+ - net/mlx5e: mlx5e_fec_in_caps() returns a boolean
+ - [mips64el,mipsel] Loongson-3: Fix fp register access if MSA enabled
+ - [armhf] PM / devfreq: tegra30: Disable clock on error in probe
+ - [arm64,armhf] regulator: axp20x: fix LDO2/4 description
+ - [x86] KVM: Reset MMU context if guest toggles CR4.SMAP or CR4.PKE
+ - [x86] KVM: SVM: Add a dedicated INVD intercept routine
+ - mm: validate pmd after splitting
+ - [x86] arch/x86/lib/usercopy_64.c: fix __copy_user_flushcache() cache
+ writeback
+ - [x86] irq: Make run_on_irqstack_cond() typesafe
+ - [x86] ioapic: Unbreak check_timer()
+ - scsi: lpfc: Fix initial FLOGI failure due to BBSCN not supported
+ - ALSA: usb-audio: Add delay quirk for H570e USB headsets
+ - ALSA: hda/realtek - Couldn't detect Mic if booting with headset plugged
+ - ALSA: hda/realtek: Enable front panel headset LED on Lenovo ThinkStation
+ P520
+ - lib/string.c: implement stpcpy
+ - tracing: fix double free
+ - [s390x] dasd: Fix zero write for FBA devices
+ - kprobes: Fix to check probe enabled before disarm_kprobe_ftrace()
+ - kprobes: tracing/kprobes: Fix to kill kprobes on initmem after boot
+ - btrfs: fix put of uninitialized kobject after seed device delete
+ - btrfs: fix overflow when copying corrupt csums for a message
+ - media: cec-adap.c: don't use flush_scheduled_work()
+ - dmabuf: fix NULL pointer dereference in dma_buf_release()
+ - mm, THP, swap: fix allocating cluster for swapfile by mistake
+ - mm/gup: fix gup_fast with dynamic page table folding
+ - mm: replace memmap_context by meminit_context
+ - mm: don't rely on system state to detect hot-plug operations
+ - [s390x] zcrypt: Fix ZCRYPT_PERDEV_REQCNT ioctl
+ - io_uring: ensure open/openat2 name is cleaned on cancelation
+ - [arm64] KVM: Assume write fault on S1PTW permission fault on instruction
+ fetch
+ - dm: fix bio splitting and its bio completion order for regular IO
+ - [armhf] clocksource/drivers/timer-ti-dm: Do reset before enable
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.14
+ - io_uring: always delete double poll wait entry on match
+ - btrfs: fix filesystem corruption after a device replace
+ - mmc: sdhci: Workaround broken command queuing on Intel GLK based IRBIS
+ models
+ - USB: gadget: f_ncm: Fix NDP16 datagram validation
+ - Revert "usbip: Implement a match function to fix usbip"
+ - usbcore/driver: Fix specific driver selection
+ - usbcore/driver: Fix incorrect downcast
+ - usbcore/driver: Accommodate usbip
+ - [x86] gpio: amd-fch: correct logic of GPIO_LINE_DIRECTION
+ - [armhf] clk: samsung: Keep top BPLL mux on Exynos542x enabled
+ - scsi: iscsi: iscsi_tcp: Avoid holding spinlock while calling
+ getpeername()
+ - [arm64,x86] i2c: i801: Exclude device from suspend direct complete
+ optimization
+ - Input: i8042 - add nopnp quirk for Acer Aspire 5 A515
+ - ftrace: Move RCU is watching check after recursion check
+ - tracing: Fix trace_find_next_entry() accounting of temp buffer size
+ - memstick: Skip allocating card when removing host
+ - drm/amdgpu: restore proper ref count in amdgpu_display_crtc_set_config
+ - xen/events: don't use chip_data for legacy IRQs
+ - [x86] vboxsf: Fix the check for the old binary mount-arguments struct
+ - drivers/net/wan/hdlc_fr: Add needed_headroom for PVC devices
+ - Revert "wlcore: Adding suppoprt for IGTK key in wlcore driver"
+ - [arm64,armhf] drm/sun4i: mixer: Extend regmap max_register
+ - [x86] hv_netvsc: Cache the current data path to avoid duplicate call and
+ message
+ - net: dec: de2104x: Increase receive ring size for Tulip
+ - rndis_host: increase sleep time in the query-response loop
+ - nvme-pci: disable the write zeros command for Intel 600P/P3100
+ - nvme-core: get/put ctrl and transport module in nvme_dev_open/release()
+ - fuse: fix the ->direct_IO() treatment of iov_iter
+ - drivers/net/wan/hdlc: Set skb->protocol before transmitting
+ - mac80211: Fix radiotap header channel flag for 6GHz band
+ - mac80211: do not allow bigger VHT MPDUs than the hardware supports
+ - tracing: Make the space reserved for the pid wider
+ - tools/io_uring: fix compile breakage
+ - io_uring: mark statx/files_update/epoll_ctl as non-SQPOLL
+ - cpuidle: psci: Fix suspicious RCU usage
+ - nvme-pci: fix NULL req in completion handler
+ - nvme-fc: fail new connections to a deleted host or remote port
+ - scripts/kallsyms: skip ppc compiler stub *.long_branch.* /
+ *.plt_branch.*
+ - [armhf] pinctrl: mvebu: Fix i2c sda definition for 98DX3236
+ - nfs: Fix security label length not being reset
+ - NFSv4.2: fix client's attribute cache management for copy_file_range
+ - pNFS/flexfiles: Ensure we initialise the mirror bsizes correctly on read
+ - [arm64,armhf] clk: tegra: Always program PLL_E when enabled
+ - [arm64,armhf] clk: tegra: Fix missing prototype for
+ tegra210_clk_register_emc()
+ - [armhf] clk: samsung: exynos4: mark 'chipid' clock as CLK_IGNORE_UNUSED
+ - scsi: target: Fix lun lookup for TARGET_SCF_LOOKUP_LUN_FROM_TAG case
+ - [arm64,armhf] gpio: pca953x: Fix uninitialized pending variable
+ - Input: trackpoint - enable Synaptics trackpoints
+ - blk-mq: call commit_rqs while list empty but error happen
+ - scripts/dtc: only append to HOST_EXTRACFLAGS instead of overwriting
+ - autofs: use __kernel_write() for the autofs pipe writing
+ - [arm64,armhf] gpio: pca953x: Correctly initialize registers 6 and 7 for
+ PCA957x
+ - [amd64] iommu/amd: Fix the overwritten field in IVMD header
+ - pipe: remove pipe_wait() and fix wakeup race with splice
+ - random32: Restore __latent_entropy attribute on net_rand_state
+ - gpiolib: Fix line event handling in syscall compatible mode
+ - [x86] drm/i915/gvt: Fix port number for BDW on EDID region setup
+ - scsi: sd: sd_zbc: Fix handling of host-aware ZBC disks
+ - scsi: sd: sd_zbc: Fix ZBC disk initialization
+ - epoll: do not insert into poll queues until all sanity checks are done
+ - epoll: replace ->visited/visited_list with generation count
+ - epoll: EPOLL_CTL_ADD: close the race in decision to take fast path
+ - ep_create_wakeup_source(): dentry name can change under you...
+
+ [ Vagrant Cascadian ]
+ * [armhf] Enable MFD_AXP20X_RSB as a built-in (Closes: #914813). Thanks
+ to Bernhard.
+
+ [ Salvatore Bonaccorso ]
+ * [x86] Enable INTEL_PMC_CORE as module (Closes: #971017)
+ * Bump ABI to 3
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 10 Oct 2020 21:40:31 +0200
+
+linux (5.8.10-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.8
+ - HID: quirks: Always poll three more Lenovo PixArt mice
+ - [arm64] drm/msm/dpu: Fix reservation failures in modeset
+ - [arm64] drm/msm/dpu: Fix scale params in plane validation
+ - [arm64] drm/msm/dpu: fix unitialized variable error
+ - [arm64] drm/msm: add shutdown support for display platform_driver
+ - [x86] hwmon: (applesmc) check status earlier.
+ - nvmet: Disable keep-alive timer when kato is cleared to 0h
+ - [arm64] drm/msm: enable vblank during atomic commits
+ - [arm64] drm/msm/a6xx: fix gmu start on newer firmware
+ - gfs2: add some much needed cleanup for log flushes that fail
+ - [x86] hv_utils: return error if host timesysnc update is stale
+ - [x86] hv_utils: drain the timesync packets on onchannelcallback
+ - ceph: don't allow setlease on cephfs
+ - [armhf] drm/omap: fix incorrect lock state
+ - cpuidle: Fixup IRQ state
+ - nbd: restore default timeout when setting it to zero
+ - [s390x] don't trace preemption in percpu macros
+ - xen/xenbus: Fix granting of vmalloc'd memory
+ - dmaengine: of-dma: Fix of_dma_router_xlate's of_dma_xlate handling
+ - batman-adv: Avoid uninitialized chaddr when handling DHCP
+ - batman-adv: Fix own OGM check in aggregated OGMs
+ - batman-adv: bla: use netif_rx_ni when not in interrupt context
+ - rxrpc: Keep the ACK serial in a var in rxrpc_input_ack()
+ - rxrpc: Fix loss of RTT samples due to interposed ACK
+ - rxrpc: Make rxrpc_kernel_get_srtt() indicate validity
+ - [mips*] mm: BMIPS5000 has inclusive physical caches
+ - [arm64,x86] mmc: sdhci-acpi: Fix HS400 tuning for AMDI0040
+ - perf sched timehist: Fix use of CPU list with summary option
+ - perf top: Skip side-band event setup if HAVE_LIBBPF_SUPPORT is not set
+ - netfilter: nf_tables: add NFTA_SET_USERDATA if not null
+ - netfilter: nf_tables: incorrect enum nft_list_attributes definition
+ - netfilter: nf_tables: fix destination register zeroing
+ - [arm64] net: hns: Fix memleak in hns_nic_dev_probe
+ - bpf: Fix a buffer out-of-bound access when filling raw_tp link_info
+ - [arm64,armhf] dmaengine: pl330: Fix burst length if burst size is
+ smaller than bus width
+ - gtp: add GTPA_LINK info to msg sent to userspace
+ - [armhf] net: ethernet: ti: cpsw: fix clean up of vlan mc entries for
+ host port
+ - [armhf] net: ethernet: ti: cpsw_new: fix clean up of vlan mc entries for
+ host port
+ - bnxt_en: Don't query FW when netif_running() is false.
+ - bnxt_en: Check for zero dir entries in NVRAM.
+ - bnxt_en: Fix ethtool -S statitics with XDP or TCs enabled.
+ - bnxt_en: Fix PCI AER error recovery flow
+ - bnxt_en: Fix possible crash in bnxt_fw_reset_task().
+ - bnxt_en: fix HWRM error when querying VF temperature
+ - xfs: finish dfops on every insert range shift iteration
+ - xfs: fix boundary test in xfs_attr_shortform_verify
+ - bnxt: don't enable NAPI until rings are ready
+ - [armhf] net: ethernet: ti: cpsw_new: fix error handling in
+ cpsw_ndo_vlan_rx_kill_vid()
+ - netfilter: nfnetlink: nfnetlink_unicast() reports EAGAIN instead of
+ ENOBUFS
+ - nvmet-fc: Fix a missed _irqsave version of spin_lock in
+ 'nvmet_fc_fod_op_done()'
+ - nvme: fix controller instance leak
+ - netfilter: conntrack: do not auto-delete clash entries on reply
+ - opp: Don't drop reference for an OPP table that was never parsed
+ - cxgb4: fix thermal zone device registration
+ - [mips*] perf: Fix wrong check condition of Loongson event IDs
+ - block: fix locking in bdev_del_partition
+ - perf top/report: Fix infinite loop in the TUI for grouped events
+ - perf cs-etm: Fix corrupt data after perf inject from
+ - perf intel-pt: Fix corrupt data after perf inject from
+ - perf tools: Correct SNOOPX field offset
+ - net: ethernet: mlx4: Fix memory allocation in mlx4_buddy_init()
+ - fix regression in "epoll: Keep a reference on files added to the check
+ list"
+ - [arm64] net: bcmgenet: fix mask check in bcmgenet_validate_flow()
+ - nfp: flower: fix ABI mismatch between driver and firmware
+ - net: dp83867: Fix WoL SecureOn password
+ - [mips*] add missing MSACSR and upper MSA initialization
+ - xfs: fix xfs_bmap_validate_extent_raw when checking attr fork of rt
+ files
+ - perf jevents: Fix suspicious code in fixregex()
+ - perf stat: Turn off summary for interval mode by default
+ - perf bench: The do_run_multi_threaded() function must use
+ IS_ERR(perf_session__new())
+ - tg3: Fix soft lockup when tg3_reset_task() fails.
+ - [amd64] x86, fakenuma: Fix invalid starting node ID
+ - [amd64] iommu/vt-d: Serialize IOMMU GCMD register modifications
+ - [armhf] thermal: ti-soc-thermal: Fix bogus thermal shutdowns for
+ omap4430
+ - [arm64] thermal: qcom-spmi-temp-alarm: Don't suppress negative temp
+ - [amd64] iommu/amd: Restore IRTE.RemapEn bit after programming IRTE
+ - [amd64] iommu/amd: Use cmpxchg_double() when updating 128-bit IRTE
+ - [amd64] iommu/vt-d: Handle 36bit addressing for x86-32
+ - [x86] tracing/kprobes, x86/ptrace: Fix regs argument order for i386
+ - [x86] entry: Fix AC assertion
+ - [x86] debug: Allow a single level of #DB recursion
+ - ext2: don't update mtime on COW faults
+ - xfs: don't update mtime on COW faults
+ - btrfs: drop path before adding new uuid tree entry
+ - btrfs: fix potential deadlock in the search ioctl
+ - btrfs: allocate scrub workqueues outside of locks
+ - btrfs: set the correct lockdep class for new nodes
+ - btrfs: set the lockdep class for log tree extent buffers
+ - btrfs: block-group: fix free-space bitmap threshold
+ - btrfs: tree-checker: fix the error message for transid error
+ - Bluetooth: Return NOTIFY_DONE for hci_suspend_notifier (Closes: #964839)
+ - [x86] mm/32: Bring back vmalloc faulting on x86_32
+ - Revert "ALSA: hda: Add support for Loongson 7A1000 controller"
+ - ALSA: ca0106: fix error code handling
+ - ALSA: usb-audio: Add basic capture support for Pioneer DJ DJM-250MK2
+ - ALSA: usb-audio: Add implicit feedback quirk for UR22C
+ - ALSA: pcm: oss: Remove superfluous WARN_ON() for mulaw sanity check
+ - ALSA: hda/hdmi: always check pin power status in i915 pin fixup
+ - ALSA: firewire-digi00x: exclude Avid Adrenaline from detection
+ - ALSA: hda - Fix silent audio output and corrupted input on MSI X570-A
+ PRO
+ - ALSA; firewire-tascam: exclude Tascam FE-8 from detection
+ - ALSA: hda/realtek: Add quirk for Samsung Galaxy Book Ion NT950XCJ-X716A
+ - ALSA: hda/realtek - Improved routing for Thinkpad X1 7th/8th Gen
+ - mmc: sdhci-pci: Fix SDHCI_RESET_ALL for CQHCI for Intel GLK-based
+ controllers
+ - media: rc: do not access device via sysfs after rc_unregister_device()
+ - media: rc: uevent sysfs file races with rc_unregister_device()
+ - affs: fix basic permission bits to actually work
+ - block: allow for_each_bvec to support zero len bvec
+ - block: ensure bdi->io_pages is always initialized
+ - io_uring: set table->files[i] to NULL when io_sqe_file_register failed
+ - io_uring: fix removing the wrong file in __io_sqe_files_update()
+ - libata: implement ATA_HORKAGE_MAX_TRIM_128M and apply to Sandisks
+ - [mips*] oprofile: Fix fallthrough placement
+ - blk-stat: make q->stats->lock irqsafe
+ - [x86] drm/i915: Fix sha_text population code
+ - dm writecache: handle DAX to partitions on persistent memory correctly
+ - dm mpath: fix racey management of PG initialization
+ - dm integrity: fix error reporting in bitmap mode after creation
+ - dm crypt: Initialize crypto wait structures
+ - dm cache metadata: Avoid returning cmd->bm wild pointer on error
+ - dm thin metadata: Avoid returning cmd->bm wild pointer on error
+ - dm thin metadata: Fix use-after-free in dm_bm_set_read_only
+ - mm: slub: fix conversion of freelist_corrupted()
+ - mm: track page table modifications in __apply_to_page_range()
+ - mm: madvise: fix vma user-after-free
+ - mm/rmap: fixup copying of soft dirty and uffd ptes
+ - io_uring: no read/write-retry on -EAGAIN error and O_NONBLOCK marked
+ file
+ - perf record: Correct the help info of option "--no-bpf-event"
+ - [arm64,armhf] sdhci: tegra: Add missing TMCLK for data timeout
+ - mm/migrate: fixup setting UFFD_WP flag
+ - mm/hugetlb: try preferred node first when alloc gigantic page from cma
+ - mm/hugetlb: fix a race between hugetlb sysctl handlers (CVE-2020-25285)
+ - mm/khugepaged.c: fix khugepaged's request size in collapse_file
+ - cfg80211: regulatory: reject invalid hints
+ - net: usb: Fix uninit-was-stored issue in asix_read_phy_addr()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.9
+ - io_uring: fix cancel of deferred reqs with ->files
+ - io_uring: fix linked deferred ->files cancellation
+ - RDMA/cma: Simplify DEVICE_REMOVAL for internal_id
+ - RDMA/cma: Using the standard locking pattern when delivering the removal
+ event
+ - RDMA/cma: Remove unneeded locking for req paths
+ - RDMA/cma: Execute rdma_cm destruction from a handler properly
+ - ipv4: Silence suspicious RCU usage warning
+ - ipv6: Fix sysctl max for fib_multipath_hash_policy
+ - netlabel: fix problems with mapping removal
+ - net: usb: dm9601: Add USB ID of Keenetic Plus DSL
+ - sctp: not disable bh in the whole sctp_get_port_local()
+ - tipc: fix shutdown() of connectionless socket
+ - tipc: fix using smp_processor_id() in preemptible
+ - net: disable netpoll on fresh napis
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.10
+ - [armhf] OMAP2+: Fix an IS_ERR() vs NULL check in _get_pwrdm()
+ - regulator: push allocation in regulator_ena_gpio_request() out of lock
+ - regulator: remove superfluous lock in regulator_resolve_coupling()
+ - RDMA/rxe: Fix memleak in rxe_mem_init_user
+ - RDMA/rxe: Drop pointless checks in rxe_init_ports
+ - RDMA/rxe: Fix panic when calling kmem_cache_create()
+ - [arm64,armhf] drm/sun4i: add missing put_device() call in
+ sun8i_r40_tcon_tv_set_mux()
+ - [armhf] drm/sun4i: Fix dsi dcs long write function
+ - scsi: libsas: Set data_dir as DMA_NONE if libata marks qc as NODATA
+ - drm/virtio: fix unblank
+ - RDMA/core: Fix unsafe linked list traversal after failing to allocate CQ
+ - RDMA/core: Fix reported speed and width
+ - scsi: megaraid_sas: Don't call disable_irq from process IRQ poll
+ - scsi: mpt3sas: Don't call disable_irq from IRQ poll handler
+ - padata: fix possible padata_works_lock deadlock
+ - [arm64,armhf] drm/sun4i: Fix DE2 YVU handling
+ - [arm64,armhf] drm/sun4i: backend: Support alpha property on lowest plane
+ - [arm64,armhf] drm/sun4i: backend: Disable alpha on the lowest plane on
+ the A20
+ - [arm64] KVM: Update page shift if stage 2 block mapping not supported
+ - [arm64,x86] mmc: sdhci-acpi: Clear amd_sdhci_host on reset
+ - [arm64] mmc: sdhci-msm: Add retries when all tuning phases are found
+ valid
+ - [armhf] spi: stm32: Rate-limit the 'Communication suspended' message
+ - btrfs: fix NULL pointer dereference after failure to create snapshot
+ - block: restore a specific error code in bdev_del_partition
+ - seccomp: don't leak memory when filter install races
+ - nvme-fabrics: allow to queue requests for live queues
+ - [armhf] spi: stm32: fix pm_runtime_get_sync() error checking
+ - block: Set same_page to false in __bio_try_merge_page if ret is false
+ - IB/isert: Fix unaligned immediate-data handling
+ - [x86] KVM: nVMX: Fix the update value of nested load
+ IA32_PERF_GLOBAL_CTRL control
+ - [x86] KVM: always allow writing '0' to MSR_KVM_ASYNC_PF_EN
+ - [arm64,x86] dmaengine: acpi: Put the CSRT table after using it
+ - netfilter: conntrack: allow sctp hearbeat after connection re-use
+ - netfilter: nft_set_rbtree: Detect partial overlap with start endpoint
+ match
+ - [x86] firestream: Fix memleak in fs_open
+ - scsi: qedf: Fix null ptr reference in qedf_stag_change_work
+ - [arm64,armhf] ALSA: hda: Fix 2 channel swapping for Tegra
+ - [arm64,armhf] ALSA: hda/tegra: Program WAKEEN register for Tegra
+ - [arm64] net: hns3: Fix for geneve tx checksum bug
+ - xfs: fix off-by-one in inode alloc block reservation calculation
+ - wireless: fix wrong 160/80+80 MHz setting
+ - mac80211: reduce packet loss event false positives
+ - cfg80211: Adjust 6 GHz frequency to channel conversion
+ - xfs: initialize the shortform attr header padding entry
+ - nvme-fabrics: don't check state NVME_CTRL_NEW for request acceptance
+ - nvme: have nvme_wait_freeze_timeout return if it timed out
+ - nvme-rdma: serialize controller teardown sequences
+ - nvme-rdma: fix timeout handler
+ - nvme-rdma: fix reset hang if controller died in the middle of a reset
+ - nvme-pci: cancel nvme device request before disabling
+ - HID: quirks: Set INCREMENT_USAGE_ON_DUPLICATE for all Saitek X52 devices
+ - HID: microsoft: Add rumble support for the 8bitdo SN30 Pro+ controller
+ - drivers/net/wan/hdlc_cisco: Add hard_header_len
+ - HID: elan: Fix memleak in elan_input_configured
+ - [x86] cpufreq: intel_pstate: Refuse to turn off with HWP enabled
+ - [x86] cpufreq: intel_pstate: Fix intel_pstate_get_hwp_max() for turbo
+ disabled
+ - [arm64] module: set trampoline section flags regardless of
+ CONFIG_DYNAMIC_FTRACE
+ - ALSA: hda: hdmi - add Rocketlake support
+ - ALSA: hda: fix a runtime pm issue in SOF when integrated GPU is disabled
+ - ALSA: hda: use consistent HDAudio spelling in comments/docs
+ - drivers/net/wan/hdlc: Change the default of hard_header_len to 0
+ - [amd64] iommu/amd: Do not force direct mapping when SME is active
+ - [amd64] iommu/amd: Do not use IOMMUv2 functionality when SME is active
+ - gcov: Disable gcov build with GCC 10
+ - iio: adc: ti-ads1015: fix conversion when CONFIG_PM is not set
+ - [arm64] iio: cros_ec: Set Gyroscope default frequency to 25Hz
+ - [x86] iio:accel:bmc150-accel: Fix timestamp alignment and prevent data
+ leak.
+ - [x86] iio:magnetometer:ak8975 Fix alignment and data leak issues.
+ - [armhf] iio:accel:mma8452: Fix timestamp alignment and prevent data
+ leak.
+ - [x86] staging: wlan-ng: fix out of bounds read in prism2sta_probe_usb()
+ - btrfs: require only sector size alignment for parent eb bytenr
+ - btrfs: fix lockdep splat in add_missing_dev
+ - btrfs: free data reloc tree on failed mount
+ - btrfs: fix wrong address when faulting in pages in the search ioctl
+ - [x86] thunderbolt: Disable ports that are not implemented
+ - kobject: Restore old behaviour of kobject_del(NULL)
+ - regulator: push allocation in regulator_init_coupling() outside of lock
+ - regulator: push allocations in create_regulator() outside of lock
+ - regulator: push allocation in set_consumer_device_supply() out of lock
+ - regulator: plug of_node leak in regulator_register()'s error path
+ - regulator: core: Fix slab-out-of-bounds in regulator_unlock_recursive()
+ - misc: eeprom: at24: register nvmem only after eeprom is ready to use
+ - scsi: target: iscsi: Fix data digest calculation
+ - scsi: lpfc: Fix setting IRQ affinity with an empty CPU mask
+ - scsi: target: iscsi: Fix hang in iscsit_access_np() when getting
+ tpg->np_login_sem
+ - [arm64] drm/msm: Split the a5xx preemption record
+ - [arm64] drm/msm: Disable preemption on all 5xx targets
+ - [arm64] drm/msm: Disable the RPTR shadow
+ - mmc: sdio: Use mmc_pre_req() / mmc_post_req()
+ - [arm64] mmc: sdhci-of-esdhc: Don't walk device-tree on every interrupt
+ - nvme: Revert: Fix controller creation races with teardown flow
+ - rbd: require global CAP_SYS_ADMIN for mapping and unmapping
+ (CVE-2020-25284)
+ - RDMA/rxe: Fix the parent sysfs read when the interface has 15 chars
+ - RDMA/mlx4: Read pkey table length instead of hardcoded value
+ - fbcon: remove soft scrollback code (CVE-2020-14390)
+ - fbcon: remove now unusued 'softback_lines' cursor() argument
+ - vgacon: remove software scrollback support
+ - [x86] KVM: VMX: Don't freeze guest when event delivery causes an
+ APIC-access exit
+ - [arm64] KVM: Do not try to map PUDs when they are folded into PMD
+ - [x86] kvm x86/mmu: use KVM_REQ_MMU_SYNC to sync when needed
+ - KVM: fix memory leak in kvm_io_bus_unregister_dev()
+ - [arm64,armhf] Revert "usb: dwc3: meson-g12a: fix shared reset control
+ use"
+ - debugfs: Fix module state check condition
+ - test_firmware: Test platform fw loading on non-EFI systems
+ - [x86] video: fbdev: fix OOB read in vga_8planes_imageblit()
+ - [arm64] phy: qcom-qmp: Use correct values for ipq8074 PCIe Gen2 PHY init
+ - usb: core: fix slab-out-of-bounds Read in read_descriptors
+ - USB: serial: ftdi_sio: add IDs for Xsens Mti USB converter
+ - USB: serial: option: support dynamic Quectel USB compositions
+ - USB: serial: option: add support for SIM7070/SIM7080/SIM7090 modules
+ - usb: Fix out of sync data toggle if a configured device is reconfigured
+ - [x86] usb: typec: ucsi: acpi: Check the _DEP dependencies
+ - [arm64] drm/msm/gpu: make ringbuffer readonly
+ - gcov: add support for GCC 10.1
+
+ [ Salvatore Bonaccorso ]
+ * [x86] drivers/input/keyboard: Enable KEYBOARD_APPLESPI as module
+ (Closes: #943337)
+ * drivers/net/wireless: Enable RTW88_8723DE
+ * Bump ABI to 2
+ * udeb: Make input-modules depend on crc-modules.
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable BATTERY_CW2015 as a module.
+ * [arm64] Apply patch from upstream to support battery status on
+ Pinebook Pro.
+
+ [ Ben Hutchings ]
+ * [hppa] Set Build-Profiles for linux-image-parisc{,64}-smp (Closes: #970011)
+ * Provide linux-{image,headers}-generic virtual packages on most
+ architectures (Closes: #960209)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 19 Sep 2020 14:17:19 +0200
+
+linux (5.8.7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.4
+ - ext4: fix potential negative array index in do_split() (CVE-2020-14314)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.5
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.6
+ - nfsd: fix oops on mixed NFSv4/NFSv3 client access
+ - [powerpc] 32s: Disable VMAP stack which CONFIG_ADB_PMU (Closes: #963689)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.7
+
+ [ Ben Hutchings ]
+ * [mips*] udeb: Drop hfs-modules (fixes FTBFS)
+ * [m68k,powerpc,ppc64] udeb: Make hfs-modules depend on cdrom-core-modules
+ (fixes FTBFS)
+ * tools/include/uapi: Fix <asm/errno.h> (probably fixes FTBFS on ia64)
+ * bpftool: Build with Debian recommended compiler options
+
+ [ Salvatore Bonaccorso ]
+ * iwlwifi: yoyo: don't print failure if debug firmware is missing
+ (Closes: #966218)
+ * debian/tests/python: pycodestyle: Increase max-line-length to 100.
+ * net/packet: fix overflow in tpacket_rcv (CVE-2020-14386)
+ * Set ABI to 1
+
+ [ Uwe Kleine-König ]
+ * [arm64] Enable a few options for Kobol's helios64
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 05 Sep 2020 16:52:44 +0200
+
+linux (5.8.3-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_5.8
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.1
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.2
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.8.3
+
+ [ Jeremy Stanley ]
+ * [x86] PMIC operation region support (Closes: #925965)
+ - Enable CONFIG_PMIC_OPREGION for general ACPI support of operation
+ regions with Power Management Integrated Circuits. Turn on specific
+ opregion support for:
+ + CONFIG_BYTCRC_PMIC_OPREGION (Bay Trail Crystal Cove PMIC)
+ + CONFIG_CHTCRC_PMIC_OPREGION (Cherry Trail Crystal Cove PMIC)
+ + CONFIG_XPOWER_PMIC_OPREGION (XPower AXP288 PMIC)
+ + CONFIG_BXT_WC_PMIC_OPREGION (BXT WhiskeyCove PMIC)
+ + CONFIG_CHT_WC_PMIC_OPREGION (CHT Whiskey Cove PMIC)
+ + CONFIG_CHT_DC_TI_PMIC_OPREGION (Dollar Cove TI PMIC)
+ Additionally enable CONFIG_MFD_INTEL_PMC_BXT as a module (multi-function
+ device driver for Intel Broxton Whiskey Cove PMIC), along with
+ CONFIG_INTEL_SOC_PMIC (Crystal Cove PMIC) as a dependency for it.
+ * [x86] Fix Cherry Trail power management regression (Closes: #949886)
+ - Switch CONFIG_I2C_DESIGNWARE_PLATFORM from being compiled as a module to
+ compiled into the kernel directly, since as of kernel version 5.1 this
+ state became a dependency for CONFIG_INTEL_SOC_PMIC_CHTWC which is
+ already enabled.
+ - Enable CONFIG_USB_ROLES_INTEL_XHCI and CONFIG_TYPEC_MUX_PI3USB30532 as
+ modules, which became dependencies for the already enabled
+ CONFIG_INTEL_CHT_INT33FE as of kernel version 4.17.
+
+ [ Romain Perier ]
+ * Rebased patches onto 5.8.
+
+ [ Uwe Kleine-König ]
+ * [armhf] Enable BCM2835 auxiliar mini UART support found on Raspberry Pi
+ (all models); patch by Marc Kleine-Budde. (Closes: #963619)
+ * [arm64] Enable IR_MESON and SPI_MESON_SPICC.
+
+ [ Helge Deller ]
+ * [hppa] Build linux-image-parisc-smp and linux-image-parisc64-smp
+ transition packages
+
+ [ Yves-Alexis Perez ]
+ * usb: Enable APPLE_MFI_FASTCHARGE as a module
+
+ [ Salvatore Bonaccorso ]
+ * Set ABI to trunk
+
+ [ Bastian Blank ]
+ * [x86] hyperv-daemons:
+ - Rename services to remove "hyperv-daemons." prefix
+ - Use debhelper for services.
+ - Make systemd service bind to device.
+ - Start kvp daemon way earlier in boot.
+ - Specify some service restrictions.
+ * udeb: Reverse order of cdrom-core and isofs/udf.
+ * Fix build of documentation.
+ * [amd64] Enable GVE. (closes: #964812)
+ * Compile with gcc-10 on all architectures.
+ * [cloud] Enable TARGET_CORE. (closes: #952108)
+ * [cloud] Disable DLM, GFS2_FS, OCFS2_FS.
+ * Move System.map into debug package and replace with pointer.
+
+ [ Ben Hutchings ]
+ * [x86] hyperv-daemons: Complete renaming of init scripts
+ * [x86] hyperv-daemons: Correct old names in Conflicts field of unit files
+ * [hppa] Use standard metadata for transitional packages
+ * bpftool: Fix version string in recursive builds
+ * Revert "linux-libc-dev: Re-add "Provides: linux-kernel-headers""
+ (Closes: #959462)
+ * mm: Enable INIT_ON_ALLOC_DEFAULT_ON. This can be reverted using the
+ kernel parameter: init_on_alloc=0
+ * libtraceevent1: Add new APIs to symbols file
+
+ [ Christian Barcenas ]
+ * bpftool: add packaging for tools/bpf/bpftool (Closes: #896165)
+ - Thank you to Noah Meyerhans for the first iteration of packaging.
+
+ [ Thomas W ]
+ * [x86] Enable CONFIG_XIAOMI_WMI
+
+ [ Matthew Gabeler-Lee ]
+ * [x86] Re-enable APU2 LED control (Closes: 949448)
+
+ [ Joel Stanley ]
+ * [armhf] Enable NET_NCSI
+
+ [ Walter Lozano ]
+ * [armhf] Enable NVMEM_IMX_OCOTP (Closes: #968253)
+
+ [ Philipp Kern ]
+ * [s390x] Add virtio_net to nic-modules.
+
+ -- Ben Hutchings <benh@debian.org> Mon, 24 Aug 2020 01:23:22 +0100
+
+linux (5.7.17-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.11
+ - bpf: Set the number of exception entries properly for subprograms
+ - mac80211: allow rx of mesh eapol frames with default rx key
+ - scsi: scsi_transport_spi: Fix function pointer check
+ - scsi: mpt3sas: Fix unlock imbalance
+ - ALSA: hda/hdmi: fix failures at PCM open on Intel ICL and later
+ - net: sky2: initialize return of gm_phy_read
+ - drm/nouveau/i2c/g94-: increase NV_PMGR_DP_AUXCTL_TRANSACTREQ timeout
+ - scsi: mpt3sas: Fix error returns in BRM_status_show
+ - scsi: dh: Add Fujitsu device to devinfo and dh lists
+ - dm: use bio_uninit instead of bio_disassociate_blkg
+ - fuse: fix weird page warning
+ - [x86] irqdomain/treewide: Keep firmware node unconditionally allocated
+ - SUNRPC reverting d03727b248d0 ("NFSv4 fix CLOSE not waiting for direct
+ IO compeletion")
+ - exfat: fix overflow issue in exfat_cluster_to_sector()
+ - exfat: fix wrong hint_stat initialization in exfat_find_dir_entry()
+ - exfat: fix wrong size update of stream entry by typo
+ - exfat: fix name_hash computation on big endian systems
+ - btrfs: reloc: clear DEAD_RELOC_TREE bit for orphan roots to prevent
+ runaway balance
+ - uprobes: Change handle_swbp() to send SIGTRAP with si_code=SI_KERNEL, to
+ fix GDB regression
+ - ALSA: hda/realtek: Fixed ALC298 sound bug by adding quirk for Samsung
+ Notebook Pen S
+ - ALSA: info: Drop WARN_ON() from buffer NULL sanity check
+ - [x86] ASoC: rt5670: Correct RT5670_LDO_SEL_MASK
+ - [x86] ASoC: Intel: cht_bsw_rt5672: Change bus format to I2S 2 channel
+ - [s390x] cpum_cf,perf: change DFLT_CCERROR counter name
+ - btrfs: fix double free on ulist after backref resolution failure
+ - btrfs: fix mount failure caused by race with umount
+ - btrfs: fix page leaks after failure to lock page for delalloc
+ - mt76: mt76x02: fix handling MCU timeouts during hw restart
+ - efi/efivars: Expose RT service availability via efivars abstraction
+ - bnxt_en: Fix race when modifying pause settings.
+ - bnxt_en: Init ethtool link settings after reading updated PHY
+ configuration.
+ - bnxt_en: Fix completion ring sizing with TPA enabled.
+ - [x86] hippi: Fix a size used in a 'pci_free_consistent()' in an error
+ handling path
+ - netfilter: nf_tables: fix nat hook table deletion
+ - [arm64] dpaa2-eth: check fsl_mc_get_endpoint for IS_ERR_OR_NULL()
+ - vsock/virtio: annotate 'the_virtio_vsock' RCU pointer
+ - ax88172a: fix ax88172a_unbind() failures
+ - RDMA/mlx5: Use xa_lock_irq when access to SRQ table
+ - RDMA/core: Fix race in rdma_alloc_commit_uobject()
+ - RDMA/cm: Protect access to remote_sidr_table
+ - [armhf] net: fec: fix hardware time stamping by external devices
+ - [x86] ASoC: Intel: bytcht_es8316: Add missed put_device()
+ - ieee802154: fix one possible memleak in adf7242_probe
+ - [arm64,armhf] drm: sun4i: hdmi: Fix inverted HPD result
+ - [arm64,armhf] net: smc91x: Fix possible memory leak in smc_drv_probe()
+ - [arm64,armhf] net: dsa: mv88e6xxx: fix in-band AN link establishment
+ - [arm64] dts: clearfog-gt-8k: fix switch link configuration
+ - bonding: check error value of register_netdevice() immediately
+ - iwlwifi: Make some Killer Wireless-AC 1550 cards work again
+ - [arm64] net: bcmgenet: fix error returns in bcmgenet_probe()
+ - RDMA/mlx5: Prevent prefetch from racing with implicit destruction
+ - [arm64] net: hns3: fix for not calculating TX BD send size correctly
+ - [arm64] net: hns3: fix error handling for desc filling
+ - [arm64] net: hns3: fix return value error when query MAC link status
+ fail
+ - qed: suppress "don't support RoCE & iWARP" flooding on HW init
+ - qed: suppress false-positives interrupt error messages on HW init
+ - ipvs: fix the connection sync failed in some cases
+ - [arm64] iommu/qcom: Use domain rather than dev as tlb cookie
+ - Revert "PCI/PM: Assume ports without DLL Link Active train links in 100
+ ms"
+ - nfsd4: fix NULL dereference in nfsd/clients display code
+ - bonding: check return value of register_netdevice() in bond_newlink()
+ - geneve: fix an uninitialized value in geneve_changelink()
+ - serial: exar: Fix GPIO configuration for Sealevel cards based on
+ XR17V35X
+ - scripts/decode_stacktrace: strip basepath from all paths
+ - scripts/gdb: fix lx-symbols 'gdb.error' while loading modules
+ - [riscv64] Do not rely on initrd_start/end computed during early dt
+ parsing
+ - kbuild: fix single target builds for external modules
+ - [arm64,x86] HID: i2c-hid: add Mediacom FlexBook edge13 to descriptor
+ override
+ - HID: alps: support devices with report id 2
+ - HID: steam: fixes race in handling device list.
+ - dmaengine: idxd: fix hw descriptor fields for delta record
+ - HID: apple: Disable Fn-key key-re-mapping on clone keyboards
+ - [arm64] dmaengine: tegra210-adma: Fix runtime PM imbalance on error
+ - [arm64,armhf] soc: amlogic: meson-gx-socinfo: Fix S905X3 and S905D3 ID's
+ - Input: add `SW_MACHINE_COVER`
+ - [armhf] dts: n900: remove mmc1 card detect gpio
+ - regmap: dev_get_regmap_match(): fix string comparison
+ - hwmon: (aspeed-pwm-tacho) Avoid possible buffer overflow
+ - [amd64] dmaengine: ioat setting ioat timeout as module parameter
+ - Input: synaptics - enable InterTouch for ThinkPad X1E 1st gen
+ - Input: elan_i2c - only increment wakeup count on touch
+ - [arm64] usb: dwc3: pci: add support for the Intel Tiger Lake PCH -H
+ variant
+ - [arm64] usb: dwc3: pci: add support for the Intel Jasper Lake
+ - drm/amdgpu/gfx10: fix race condition for kiq
+ - drm/amdgpu: fix preemption unit test
+ - hwmon: (nct6775) Accept PECI Calibration as temperature source for
+ NCT6798D
+ - [x86] platform: asus-wmi: allow BAT1 battery name
+ - ALSA: hda/realtek - fixup for yet another Intel reference board
+ - drivers/perf: Fix kernel panic when rmmod PMU modules during perf
+ sampling
+ - [arm64] Use test_tsk_thread_flag() for checking TIF_SINGLESTEP
+ - asm-generic/mmiowb: Allow mmiowb_set_pending() when preemptible()
+ - drivers/perf: Prevent forced unbinding of PMU drivers
+ - [riscv64] Upgrade smp_mb__after_spinlock() to iorw,iorw
+ - [x86] boot: Don't add the EFI stub to targets
+ - [arm*] binder: Don't use mmput() from shrinker function.
+ - [arm64,armhf] usb: tegra: Fix allocation for the FPCI context
+ - usb: xhci: Fix ASM2142/ASM3142 DMA addressing
+ - Revert "cifs: Fix the target file was deleted when rename failed."
+ (Closes: #966917)
+ - iwlwifi: mvm: don't call iwl_mvm_free_inactive_queue() under RCU
+ - [arm64] tty: xilinx_uartps: Really fix id assignment
+ - [x86] staging: wlan-ng: properly check endpoint types
+ - [x86] staging: comedi: addi_apci_1032: check INSN_CONFIG_DIGITAL_TRIG
+ shift
+ - [x86] staging: comedi: ni_6527: fix INSN_CONFIG_DIGITAL_TRIG support
+ - [x86] staging: comedi: addi_apci_1500: check INSN_CONFIG_DIGITAL_TRIG
+ shift
+ - [x86] staging: comedi: addi_apci_1564: check INSN_CONFIG_DIGITAL_TRIG
+ shift
+ - [arm64,armhf] serial: tegra: fix CREAD handling for PIO
+ - serial: 8250: fix null-ptr-deref in serial8250_start_tx()
+ - /dev/mem: Add missing memory barriers for devmem_inode
+ - fbdev: Detect integer underflow at "struct fbcon_ops"->clear_margins.
+ - vt: Reject zero-sized screen buffer size.
+ - mm/mmap.c: close race between munmap() and expand_upwards()/downwards()
+ - vfs/xattr: mm/shmem: kernfs: release simple xattr entry in a right way
+ - mm/memcg: fix refcount error while moving and swapping
+ - mm: memcg/slab: fix memory leak at non-root kmem_cache destroy
+ - mm/hugetlb: avoid hardcoding while checking if cma is enabled
+ - khugepaged: fix null-pointer dereference due to race
+ - io-mapping: indicate mapping failure
+ - [armhf] mmc: sdhci-of-aspeed: Fix clock divider calculation
+ - drm/amdgpu: Fix NULL dereference in dpm sysfs handlers
+ - [x86] vmlinux.lds: Page-align end of ..page_aligned sections
+ - [x86] ASoC: rt5670: Add new gpio1_is_ext_spk_en quirk and enable it on
+ the Lenovo Miix 2 10
+ - [x86] ASoC: topology: fix kernel oops on route addition error
+ - [x86] ASoC: topology: fix tlvs in error handling for widget_dmixer
+ - [x86] ASoC: Intel: bdw-rt5677: fix non BE conversion
+ - dm integrity: fix integrity recalculation that is improperly skipped
+ - ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb
+ - ath9k: Fix regression with Atheros 9271
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.12
+ - AX.25: Fix out-of-bounds read in ax25_connect()
+ - AX.25: Prevent out-of-bounds read in ax25_sendmsg()
+ - dev: Defer free of skbs in flush_backlog
+ - ip6_gre: fix null-ptr-deref in ip6gre_init_net()
+ - net-sysfs: add a newline when printing 'tx_timeout' by sysfs
+ - net: udp: Fix wrong clean up for IS_UDPLITE macro
+ - rtnetlink: Fix memory(net_device) leak when ->newlink fails
+ - rxrpc: Fix sendmsg() returning EPIPE due to recvmsg() returning ENODATA
+ - tcp: allow at most one TLP probe per flight
+ - AX.25: Prevent integer overflows in connect and sendmsg
+ - sctp: shrink stream outq only when new outcnt < old outcnt
+ - sctp: shrink stream outq when fails to do addstream reconf
+ - udp: Copy has_conns in reuseport_grow().
+ - udp: Improve load balancing for SO_REUSEPORT.
+ - tipc: allow to build NACK message in link timeout function
+ - io_uring: ensure double poll additions work with both request types
+ - regmap: debugfs: check count when read regmap file
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.13
+ - sunrpc: check that domain table is empty at module unload.
+ - PCI/ASPM: Disable ASPM on ASMedia ASM1083/1085 PCIe-to-PCI bridge
+ - ALSA: usb-audio: Add implicit feedback quirk for SSL2
+ - ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus G15(GA502)
+ series with ALC289
+ - ALSA: hda/realtek: typo_fix: enable headset mic of ASUS ROG Zephyrus
+ G14(GA401) series with ALC289
+ - ALSA: hda/realtek: Fix add a "ultra_low_power" function for intel
+ reference board (alc256)
+ - ALSA: hda/realtek - Fixed HP right speaker no sound
+ - ALSA: hda: Workaround for spurious wakeups on some Intel platforms
+ - ALSA: hda/hdmi: Fix keep_power assignment for non-component devices
+ - RDMA/mlx5: Fix prefetch memory leak if get_prefetchable_mr fails
+ - [amd64] IB/rdmavt: Fix RQ counting issues causing use of an invalid RWQE
+ - vhost/scsi: fix up req type endian-ness
+ - 9p/trans_fd: Fix concurrency del of req_list in
+ p9_fd_cancelled/p9_read_work
+ - revert: 1320a4052ea1 ("audit: trigger accompanying records when no rules
+ present") (Closes: #966822)
+ - [armel,armhf] 8986/1: hw_breakpoint: Don't invoke overflow handler on
+ uaccess watchpoints
+ - [armhf] 8987/1: VDSO: Fix incorrect clock_gettime64
+ - [armhf] dts: imx6sx-sabreauto: Fix the phy-mode on fec2
+ - virtio_balloon: fix up endian-ness for free cmd id
+ - Revert "drm/amdgpu: Fix NULL dereference in dpm sysfs handlers"
+ - drm/amd/display: Clear dm_state for fast updates (Closes: #963868)
+ - drm/amdgpu: Prevent kernel-infoleak in amdgpu_info_ioctl()
+ - drm/dbi: Fix SPI Type 1 (9-bit) transfer
+ - drm: hold gem reference until object is no longer accessed
+ - drm: of: Fix double-free bug
+ - rds: Prevent kernel-infoleak in rds_notify_queue_get()
+ - xfrm: policy: match with both mark and mask on user interfaces
+ - [arm64] pinctrl: qcom: Handle broken/missing PDC dual edge IRQs on
+ sc7180
+ - espintcp: recv() should return 0 when the peer socket is closed
+ - xfrm: Fix crash when the hold queue is used.
+ - [arm64] net: hns3: fix desc filling bug when skb is expanded or lineared
+ - [arm64] net: hns3: fix a TX timeout issue
+ - [arm64] net: hns3: add reset check for VF updating port based VLAN
+ - [arm64] net: hns3: fix aRFS FD rules leftover after add a user FD rule
+ - [arm64] net: hns3: fix for VLAN config when reset failed
+ - net/mlx5: E-switch, Destroy TSAR when fail to enable the mode
+ - net/mlx5: E-switch, Destroy TSAR after reload interface
+ - net/mlx5e: Fix error path of device attach
+ - net/mlx5: Fix a bug of using ptp channel index as pin index
+ - net/mlx5: Verify Hardware supports requested ptp function on a given pin
+ - net/mlx5: Query PPS pin operational status before registering it
+ - net/mlx5e: Modify uplink state on interface up/down
+ - net/mlx5e: Fix kernel crash when setting vf VLANID on a VF dev
+ - net: lan78xx: add missing endpoint sanity check
+ - net: lan78xx: fix transfer-buffer memory leak
+ - rhashtable: Fix unprotected RCU dereference in __rht_ptr
+ - mlx4: disable device on shutdown
+ - nvme: add a Identify Namespace Identification Descriptor list quirk
+ - bpf: Fix map leak in HASH_OF_MAPS map
+ - espintcp: handle short messages instead of breaking the encap socket
+ - mac80211: mesh: Free ie data when leaving mesh
+ - mac80211: mesh: Free pending skb when destroying a mpath
+ - RDMA/core: Stop DIM before destroying CQ
+ - RDMA/core: Free DIM memory in error unwind
+ - [arm64] alternatives: move length validation inside the subsection
+ - [arm64] csum: Fix handling of bad packets
+ - Bluetooth: fix kernel oops in store_pending_adv_report
+ - net/mlx5e: E-Switch, Add misc bit when misc fields changed for mirroring
+ - net/mlx5e: fix bpf_prog reference count leaks in mlx5e_alloc_rq
+ - vxlan: fix memleak of fdb
+ - iwlwifi: fix crash in iwl_dbg_tlv_alloc_trigger
+ - qed: Disable "MFW indication via attention" SPAM every 5 minutes
+ - io_uring: always allow drain/link/hardlink/async sqe flags
+ - scsi: core: Run queue in case of I/O resource contention failure
+ - [amd64] x86/unwind/orc: Fix ORC for newly forked tasks
+ - [x86] stacktrace: Fix reliable check for empty user task stacks
+ - cxgb4: add missing release on skb in uld_send()
+ - xen-netfront: fix potential deadlock in xennet_remove()
+ - [riscv64] Set maximum number of mapped pages correctly
+ - [riscv64] Parse all memory blocks to remove unusable memory
+ - [arm64] KVM: Don't inherit exec permission across page-table levels
+ - [x86] KVM: LAPIC: Prevent setting the tscdeadline timer if the lapic is
+ hw disabled
+ - [x86] KVM: SVM: Fix disable pause loop exit/pause filtering capability
+ on SVM
+ - [x86] i8259: Use printk_deferred() to prevent deadlock
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.14
+ - random32: update the net random state on interrupt and activity
+ (CVE-2020-16166)
+ - [armel] percpu.h: fix build error
+ - [arm64] random: fix circular include dependency on arm64 after addition
+ of percpu.h
+ - random32: remove net_rand_state from the latent entropy gcc plugin
+ - random32: move the pseudo-random 32-bit definitions to prandom.h
+ - [arm64] Workaround circular dependency in pointer_auth.h
+ - random: random.h should include archrandom.h, not the other way around
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.15
+ - scsi: ufs: Fix and simplify setup_xfer_req variant operation
+ - USB: serial: qcserial: add EM7305 QDL product ID
+ - USB: iowarrior: fix up report size handling for some devices
+ - usb: xhci: define IDs for various ASMedia host controllers
+ - usb: xhci: Fix ASMedia ASM1142 DMA addressing
+ - Revert "ALSA: hda: call runtime_allow() for all hda controllers"
+ - ALSA: hda/realtek: Add alc269/alc662 pin-tables for Loongson-3 laptops
+ - ALSA: hda/ca0132 - Add new quirk ID for Recon3D.
+ - ALSA: hda/ca0132 - Fix ZxR Headphone gain control get value.
+ - ALSA: hda/ca0132 - Fix AE-5 microphone selection commands.
+ - ALSA: seq: oss: Serialize ioctls
+ - [arm*] staging: android: ashmem: Fix lockdep warning for write operation
+ - staging: rtl8712: handle firmware load failure
+ - Staging: rtl8188eu: rtw_mlme: Fix uninitialized variable authmode
+ - Bluetooth: Fix slab-out-of-bounds read in
+ hci_extended_inquiry_result_evt()
+ - Bluetooth: Prevent out-of-bounds read in hci_inquiry_result_evt()
+ - Bluetooth: Prevent out-of-bounds read in
+ hci_inquiry_result_with_rssi_evt()
+ - [arm*] binder: Prevent context manager from incrementing ref 0
+ - Smack: fix use-after-free in smk_write_relabel_self()
+ - vgacon: Fix for missing check in scrollback handling (CVE-2020-14331)
+ - mtd: properly check all write ioctls for permissions
+ - [arm64] gpio: max77620: Fix missing release of interrupt
+ - bpf: Fix NULL pointer dereference in __btf_resolve_helper_id()
+ - net/9p: validate fds in p9_fd_open
+ - drm/nouveau/kms/tu102: wait for core update to complete when assigning
+ windows
+ - drm/nouveau/fbcon: fix module unload when fbcon init has failed for some
+ reason
+ - drm/nouveau/fbcon: zero-initialise the mode_cmd2 structure
+ - io_uring: fix lockup in io_fail_links()
+ - nvme-pci: prevent SK hynix PC400 from using Write Zeroes command
+ - [arm64] drm/bridge/adv7511: set the bridge type properly
+ - [armhf] i2c: slave: improve sanity check when registering
+ - [armhf] i2c: slave: add sanity check when unregistering
+ - usb: hso: check for return value in hso_serial_common_create()
+ - ALSA: hda: fix NULL pointer dereference during suspend
+ - firmware: Fix a reference count leak.
+ - cfg80211: check vendor command doit pointer before use
+ - igb: reinit_locked() should be called with rtnl_lock
+ - atm: fix atm_dev refcnt leaks in atmtcp_remove_persistent
+ - tools lib traceevent: Fix memory leak in process_dynamic_array_len
+ - xattr: break delegations in {set,remove}xattr
+ - [arm64,armhf] PCI: tegra: Revert tegra124 raw_violation_fixup
+ - ipv4: Silence suspicious RCU usage warning
+ - ipv6: fix memory leaks on IPV6_ADDRFORM path
+ - ipv6: Fix nexthop refcnt leak when creating ipv6 route info
+ - rxrpc: Fix race between recvmsg and sendmsg on immediate call failure
+ - vxlan: Ensure FDB dump is performed under RCU
+ - net: lan78xx: replace bogus endpoint lookup
+ - rhashtable: Restore RCU marking on rhash_lock_head
+ - devlink: ignore -EOPNOTSUPP errors on dumpit
+ - appletalk: Fix atalk_proc_init() return path
+ - [arm64] dpaa2-eth: Fix passing zero to 'PTR_ERR' warning
+ - [x86] hv_netvsc: do not use VF device if link is down
+ - net: bridge: clear bridge's private skb space on xmit
+ - net: gre: recompute gre csum for sctp over gre tunnels
+ - net: macb: Properly handle phylink on at91sam9x
+ - [arm64,armhf] net: mvpp2: fix memory leak in mvpp2_rx
+ - net/sched: act_ct: fix miss set mru for ovs after defrag in act_ct
+ - [arm64] net: thunderx: use spin_lock_bh in nicvf_set_rx_mode_task()
+ - openvswitch: Prevent kernel-infoleak in ovs_ct_put_key()
+ - Revert "vxlan: fix tos value before xmit"
+ - tcp: apply a floor of 1 for RTT samples from TCP timestamps
+ - [arm64] kaslr: Use standard early random function
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.16
+ - tracepoint: Mark __tracepoint_string's __used
+ - io_uring: abstract out task work running
+ - HID: input: Fix devices that return multiple bytes in battery report
+ - [x86] mce/inject: Fix a wrong assignment of i_mce.status
+ - [x86] perf/x86/intel/uncore: Fix oops when counting IMC uncore events on
+ some TGL
+ - [x86] sched: Bail out of frequency invariance if turbo frequency is
+ unknown
+ - [x86] sched: Bail out of frequency invariance if turbo_freq/base_freq
+ gives 0
+ - sched/fair: Fix NOHZ next idle balance
+ - sched: correct SD_flags returned by tl->sd_flags()
+ - EDAC: Fix reference count leaks
+ - crc-t10dif: Fix potential crypto notify dead-lock
+ - blktrace: fix debugfs use after free (CVE-2019-19770)
+ - [armhf] exynos: MCPM: Restore big.LITTLE cpuidle support
+ - rcu/tree: Repeat the monitor if any free channel is busy
+ - sched/uclamp: Fix initialization of struct uclamp_rq
+ - [x86] crypto: qat - allow xts requests not multiple of block
+ - [x86] platform/x86: intel-hid: Fix return value check in
+ check_acpi_dev()
+ - [x86] platform/x86: intel-vbtn: Fix return value check in
+ check_acpi_dev()
+ - tpm: Require that all digests are present in TCG_PCR_EVENT2 structures
+ - recordmcount: only record relocation of type R_AARCH64_CALL26 on arm64.
+ - regulator: fix memory leak on error path of regulator_register()
+ - io_uring: fix sq array offset calculation
+ - [arm64] dts: meson: fix mmc0 tuning error on Khadas VIM3
+ - [arm64,armhf] spi: rockchip: Fix error in SPI slave pio read
+ - seccomp: Fix ioctl number for SECCOMP_IOCTL_NOTIF_ID_VALID
+ - md: raid0/linear: fix dereference before null check on pointer mddev
+ - [mips64el,mipsel] irqchip/loongson-liointc: Fix potential dead lock
+ - [arm64,armhf] irqchip/gic-v4.1: Use GFP_ATOMIC flag in
+ allocate_vpe_l1_table()
+ - nvme-tcp: fix controller reset hang during traffic
+ - nvme-rdma: fix controller reset hang during traffic
+ - nvme-multipath: fix logic for non-optimized paths
+ - nvme-multipath: do not fall back to __nvme_find_path() for non-optimized
+ paths
+ - block: don't do revalidate zones on invalid devices
+ - [armhf] drm/tilcdc: fix leak & null ref in panel_connector_get_modes
+ - [armhf] exynos: clear L310_AUX_CTRL_FULL_LINE_ZERO in default
+ l2c_aux_val
+ - Bluetooth: add a mutex lock to avoid UAF in do_enale_set
+ - loop: be paranoid on exit and prevent new additions / removals
+ - io_uring: fix req->work corruption
+ - fs/btrfs: Add cond_resched() for try_release_extent_mapping() stalls
+ - drm/amdgpu: avoid dereferencing a NULL pointer
+ - drm/radeon: Fix reference count leaks caused by pm_runtime_get_sync
+ - video: fbdev: savage: fix memory leak on error handling path in probe
+ - video: fbdev: neofb: fix memory leak in neo_scan_monitor()
+ - [armhf] bus: ti-sysc: Add missing quirk flags for usb_host_hs
+ - md-cluster: fix wild pointer of unlock_all_bitmaps()
+ - drm/nouveau/kms/nv50-: Fix disabling dithering
+ - [arm64] dts: hisilicon: hikey: fixes to comply with adi, adv7533 DT
+ binding
+ - [armhf] drm/etnaviv: fix ref count leak via pm_runtime_get_sync
+ - drm/nouveau: fix reference count leak in nouveau_debugfs_strap_peek
+ - drm/nouveau: fix multiple instances of reference count leaks
+ - btrfs: fix lockdep splat from btrfs_dump_space_info
+ - [arm64] drm: msm: a6xx: fix gpu failure after system resume
+ - [arm64] drm/msm: Fix a null pointer access in msm_gem_shrinker_count()
+ - drm/debugfs: fix plain echo to connector "force" attribute
+ - drm/radeon: disable AGP by default
+ - net: phy: mscc: restore the base page in vsc8514/8584_config_init
+ - mm/mmap.c: Add cond_resched() for exit_mmap() CPU stalls
+ - bpf: Fix fds_example SIGSEGV error
+ - Bluetooth: hci_qca: Bug fixes for SSR
+ - brcmfmac: keep SDIO watchdog running when console_interval is non-zero
+ - brcmfmac: To fix Bss Info flag definition Bug
+ - brcmfmac: set state of hanger slot to FREE when flushing PSQ
+ - [x86] platform/x86: asus-nb-wmi: add support for ASUS ROG Zephyrus G14
+ and G15
+ - iwlegacy: Check the return value of pcie_capability_read_*()
+ - [arm64,armhf] gpu: host1x: debug: Fix multiple channels emitting
+ messages simultaneously
+ - [x86] uaccess: Make __get_user_size() Clang compliant on 32-bit
+ - mmc: sdhci-pci-o2micro: Bug fix for O2 host controller Seabird1
+ - usb: gadget: net2280: fix memory leak on probe error handling paths
+ - dyndbg: fix a BUG_ON in ddebug_describe_flags
+ - bcache: fix super block seq numbers comparision in register_cache_set()
+ - btrfs: allow btrfs_truncate_block() to fallback to nocow for data space
+ reservation
+ - btrfs: qgroup: free per-trans reserved space when a subvolume gets
+ dropped
+ - [arm64,x86] ACPICA: Do not increment operation_region reference counts
+ for field units
+ - io_uring: fix racy overflow count reporting
+ - io_uring: fix stalled deferred requests
+ - [arm64] crypto: caam - silence .setkey in case of bad key length
+ - [arm64] drm/msm: ratelimit crtc event overflow error
+ - drm/gem: Fix a leak in drm_gem_objects_lookup()
+ - drm/amdgpu: use the unlocked drm_gem_object_put
+ - [x86] agp/intel: Fix a memory leak on module initialisation failure
+ - btmrvl: Fix firmware filename for sd8977 chipset
+ - btmrvl: Fix firmware filename for sd8997 chipset
+ - Bluetooth: hci_qca: Fix an error pointer dereference
+ - Bluetooth: hci_qca: Only remove TX clock vote after TX is completed
+ - Bluetooth: Allow suspend even when preparation has failed
+ - ath10k: Acquire tx_lock in tx error paths
+ - Bluetooth: hci_qca: Bug fix during SSR timeout
+ - Bluetooth: hci_qca: Increase SoC idle timeout to 200ms
+ - iio: improve IIO_CONCENTRATION channel type description
+ - scsi: ufs: Fix imprecise load calculation in devfreq window
+ - [armhf] drm/etnaviv: Fix error path on failure to enable bus clk
+ - [arm64,armhf] drm/panfrost: Fix inbalance of devfreq record_busy/idle()
+ - [arm64] drm/arm: fix unintentional integer overflow on left shift
+ - Bluetooth: btusb: fix up firmware download sequence
+ - Bluetooth: btmtksdio: fix up firmware download sequence
+ - media: marvell-ccic: Add missed v4l2_async_notifier_cleanup()
+ - [armhf] media: omap3isp: Add missed v4l2_ctrl_handler_free() for
+ preview_init_entities()
+ - [arm64] dpaa2-eth: fix condition for number of buffer acquire retries
+ - drm/mipi: use dcs write for mipi_dsi_dcs_set_tear_scanline
+ - [powerpc*] cxl: Fix kobject memleak
+ - tracing: Move pipe reference to trace array instead of current_tracer
+ - drm/amdgpu: ensure 0 is returned for success in jpeg_v2_5_wait_for_idle
+ - drm/radeon: fix array out-of-bounds read and write issues
+ - [arm*] staging: vchiq_arm: Add a matching unregister call
+ - iavf: fix error return code in iavf_init_get_resources()
+ - iavf: Fix updating statistics
+ - RDMA/core: Fix bogus WARN_ON during ib_unregister_device_queued()
+ - ipvs: allow connection reuse for unconfirmed conntrack
+ - media: firewire: Using uninitialized values in node_probe()
+ - media: tvp5150: Add missed media_entity_cleanup()
+ - xfs: don't eat an EIO/ENOSPC writeback error when scrubbing data fork
+ - xfs: fix reflink quota reservation accounting error
+ - RDMA/rxe: Skip dgid check in loopback mode
+ - PCI: Fix pci_cfg_wait queue locking problem
+ - samples: bpf: Fix bpf programs with kprobe/sys_connect event
+ - [armhf] drm/stm: repair runtime power management
+ - kobject: Avoid premature parent object freeing in kobject_cleanup()
+ - leds: core: Flush scheduled work for system suspend
+ - [arm64,armhf] drm: panel: simple: Fix bpc for LG LB070WV8 panel
+ - [armhf] phy: exynos5-usbdrd: Calibrating makes sense only for USB2.0 PHY
+ - [arm64] mmc: sdhci-of-arasan: Add missed checks for devm_clk_register()
+ - scsi: scsi_debug: Add check for sdebug_max_queue during module init
+ - mwifiex: Prevent memory corruption handling keys
+ - kernfs: do not call fsnotify() with name without a parent
+ - [powerpc*] pseries: remove cede offline state for CPUs
+ - [powerpc*] rtas: don't online CPUs for partition suspend
+ - [powerpc*] vdso: Fix vdso cpu truncation
+ - RDMA/qedr: SRQ's bug fixes
+ - RDMA/rxe: Prevent access to wr->next ptr afrer wr is posted to send
+ queue
+ - [x86] staging: rtl8192u: fix a dubious looking mask before a shift
+ - PCI/ASPM: Add missing newline in sysfs 'policy'
+ - go7007: add sanity checking for endpoints
+ - [powerpc*] book3s64/pkeys: Use PVR check instead of cpu feature
+ - [armhf] drm/imx: fix use after free
+ - [armhf] gpu: ipu-v3: Restore RGB32, BGR32
+ - USB: serial: iuu_phoenix: fix led-activity helpers
+ - usb: core: fix quirks_param_set() writing to a const pointer
+ - [armhf] thermal: ti-soc-thermal: Fix reversed condition in
+ ti_thermal_expose_sensor()
+ - [powerpc*] perf: Fix missing is_sier_aviable() during build
+ - [armhf] phy: armada-38x: fix NETA lockup when repeatedly switching
+ speeds
+ - [x86] ASoC: hdac_hda: fix deadlock after PCM open error
+ - [mips64el,mipsel] OCTEON: add missing put_device() call in
+ dwc3_octeon_device_init()
+ - [x86] thermal: int340x: processor_thermal: fix: update Jasper Lake PCI
+ id
+ - [arm*] usb: dwc2: Fix error path in gadget registration
+ - usb: gadget: f_uac2: fix AC Interface Header Descriptor wTotalLength
+ - scsi: megaraid_sas: Clear affinity hint
+ - [powerpc] scsi: mesh: Fix panic after host or bus reset
+ - [arm64,armhf] net: dsa: mv88e6xxx: MV88E6097 does not support jumbo
+ configuration
+ - RDMA/core: Fix return error value in _ib_modify_qp() to negative
+ - Bluetooth: btusb: Fix and detect most of the Chinese Bluetooth
+ controllers
+ - Bluetooth: hci_h5: Set HCI_UART_RESET_ON_INIT to correct flags
+ - Bluetooth: hci_serdev: Only unregister device if it was registered
+ - Bluetooth: Fix suspend notifier race
+ - Bluetooth: hci_qca: Stop collecting memdump again for command timeout
+ during SSR
+ - xfs: fix inode allocation block res calculation precedence
+ - xfs: clear XFS_DQ_FREEING if we can't lock the dquot buffer to flush
+ - RDMA/netlink: Remove CAP_NET_RAW check when dump a raw QP
+ - PCI: Release IVRS table in AMD ACS quirk
+ - [powerpc*] pseries/hotplug-cpu: Remove double free in error path
+ - ASoC: soc-core: Fix regression causing sysfs entries to disappear
+ - [s390x] qeth: tolerate pre-filled RX buffer
+ - [s390x] qeth: don't process empty bridge port events
+ - ice: Clear and free XLT entries on reset
+ - ice: Graceful error handling in HW table calloc failure
+ - netfilter: nft_meta: fix iifgroup matching
+ - rtw88: fix LDPC field for RA info
+ - rtw88: fix short GI capability based on current bandwidth
+ - rtw88: coex: only skip coex triggered by BT info
+ - [arm64,armhf] wl1251: fix always return 0 error
+ - net/mlx5: DR, Change push vlan action sequence
+ - net/mlx5: Delete extra dump stack that gives nothing
+ - ftrace: Fix ftrace_trace_task return value
+ - [amd64,arm64] net: ethernet: aquantia: Fix wrong return value
+ - liquidio: Fix wrong return value in cn23xx_get_pf_num()
+ - [powerpc] net: spider_net: Fix the size used in a 'dma_free_coherent()'
+ call
+ - gpio: don't use same lockdep class for all devm_gpiochip_add_data users
+ - [arm64] net: thunderx: initialize VF's mailbox mutex before first usage
+ - dlm: Fix kobject memleak
+ - ocfs2: fix unbalanced locking
+ - [arm64,armhf] pinctrl-single: fix pcs_parse_pinconf() return value
+ - svcrdma: Fix page leak in svc_rdma_recv_read_chunk()
+ - nfsd: avoid a NULL dereference in __cld_pipe_upcall()
+ - SUNRPC: Fix ("SUNRPC: Add "@len" parameter to gss_unwrap()")
+ - [amd64] x86/fsgsbase/64: Fix NULL deref in 86_fsgsbase_read_task
+ - [amd64] crypto: aesni - add compatibility with IAS
+ - af_packet: TPACKET_V3: fix fill status rwlock imbalance
+ - net: Fix potential memory leak in proto_register()
+ - net/nfc/rawsock.c: add CAP_NET_RAW check.
+ - net: phy: fix memory leak in device-create error path
+ - net: Set fput_needed iff FDPUT_FPUT is set
+ - tcp: correct read of TFO keys on big endian systems
+ - [x86] vmxnet3: use correct tcp hdr length when packet is encapsulated
+ - net: refactor bind_bucket fastreuse into helper
+ - net: initialize fastreuse on inet_inherit_port
+ - vsock: fix potential null pointer dereference in vsock_poll()
+ - net: phy: marvell10g: fix null pointer dereference
+ - USB: serial: cp210x: re-enable auto-RTS on open
+ - USB: serial: cp210x: enable usb generic throttle/unthrottle
+ - ALSA: hda - fix the micmute led status for Lenovo ThinkCentre AIO
+ - ALSA: usb-audio: Creative USB X-Fi Pro SB1095 volume knob support
+ - ALSA: usb-audio: fix overeager device match for MacroSilicon MS2109
+ - ALSA: usb-audio: work around streaming quirk for MacroSilicon MS2109
+ - ALSA: usb-audio: add quirk for Pioneer DDJ-RB
+ - [arm64,x86] tpm: Unify the mismatching TPM space buffer sizes
+ - [x86] crypto: qat - fix double free in qat_uclo_create_batch_init_list
+ - [x86] crypto: ccp - Fix use of merged scatterlists
+ - [arm64] crypto: cpt - don't sleep of CRYPTO_TFM_REQ_MAY_SLEEP was not
+ specified
+ - tick/nohz: Narrow down noise while setting current task's tick
+ dependency
+ - bitfield.h: don't compile-time validate _val in FIELD_FIT
+ - fs/minix: check return value of sb_getblk()
+ - fs/minix: don't allow getting deleted inodes
+ - fs/minix: reject too-large maximum file size
+ - [x86] kvm: x86: replace kvm_spec_ctrl_test_value with runtime test on
+ the host
+ - 9p: Fix memory leak in v9fs_mount
+ - driver core: Fix probe_count imbalance in really_probe()
+ - media: media-request: Fix crash if memory allocation fails
+ - drm/ttm/nouveau: don't call tt destroy callback on alloc failure.
+ - io_uring: set ctx sq/cq entry count earlier
+ - io_uring: use TWA_SIGNAL for task_work uncondtionally
+ - io_uring: fail poll arm on queue proc failure
+ - NFS: Don't move layouts to plh_return_segs list while in use
+ - NFS: Don't return layout segments that are in use
+ - cpufreq: Fix locking issues with governors
+ - [arm64] cpufreq: dt: fix oops on armada37xx
+ - include/asm-generic/vmlinux.lds.h: align ro_after_init
+ - [arm64] PM / devfreq: rk3399_dmc: Fix kernel oops when rockchip,pmu is
+ absent
+ - PM / devfreq: Fix indentaion of devfreq_summary debugfs node
+ - spi: spidev: Align buffers for DMA
+ - erofs: fix extended inode could cross boundary
+ - [arm64] firmware: qcom_scm: Fix legacy convention SCM accessors
+ - [x86] irqdomain/treewide: Free firmware node after domain removal
+ - xen/balloon: fix accounting in alloc_xenballooned_pages error path
+ - xen/balloon: make the balloon wait interruptible
+ - [x86] drm/xen-front: Fix misused IS_ERR_OR_NULL checks
+ - [s390x] dasd: fix inability to use DASD with DIAG driver
+ - [s390x] numa: set node distance to LOCAL_DISTANCE
+ - [s390x] gmap: improve THP splitting
+ - io_uring: sanitize double poll handling
+ - io_uring: Fix NULL pointer dereference in loop_rw_iter()
+ - task_work: only grab task signal lock when needed
+ - io_uring: add missing REQ_F_COMP_LOCKED for nested requests
+ - io_uring: enable lookup of links holding inflight files
+ - io_uring: hold 'ctx' reference around task_work queue + execute
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.17
+ - smb3: warn on confusing error scenario with sec=krb5
+ - genirq/affinity: Make affinity setting if activated opt-in
+ - genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq()
+ - [arm64,x86] PCI: hotplug: ACPI: Fix context refcounting in
+ acpiphp_grab_context()
+ - PCI/ATS: Add pci_pri_supported() to check device or associated PF
+ - PCI: Mark AMD Navi10 GPU rev 0x00 ATS as broken
+ - PCI: Add device even if driver attach failed
+ - [arm64] PCI: qcom: Define some PARF params needed for ipq8064 SoC
+ - [arm64] PCI: qcom: Add support for tx term offset for rev 2.1.0
+ - btrfs: allow use of global block reserve for balance item deletion
+ - btrfs: free anon block device right after subvolume deletion
+ - btrfs: don't allocate anonymous block device for user invisible roots
+ - btrfs: ref-verify: fix memory leak in add_block_entry
+ - btrfs: only commit the delayed inode when doing a full fsync
+ - btrfs: stop incremening log_batch for the log root tree when syncing log
+ - btrfs: only commit delayed items at fsync if we are logging a directory
+ - btrfs: remove no longer needed use of log_writers for the log root tree
+ - btrfs: don't traverse into the seed devices in show_devname
+ - btrfs: pass checksum type via BTRFS_IOC_FS_INFO ioctl
+ - btrfs: open device without device_list_mutex
+ - btrfs: move the chunk_mutex in btrfs_read_chunk_tree
+ - btrfs: relocation: review the call sites which can be interrupted by
+ signal
+ - btrfs: add missing check for nocow and compression inode flags
+ - btrfs: avoid possible signal interruption of btrfs_drop_snapshot() on
+ relocation tree
+ - btrfs: return EROFS for BTRFS_FS_STATE_ERROR cases
+ - btrfs: sysfs: use NOFS for device creation
+ - btrfs: don't WARN if we abort a transaction with EROFS
+ - btrfs: fix race between page release and a fast fsync
+ - btrfs: don't show full path of bind mounts in subvol=
+ - btrfs: fix messages after changing compression level by remount
+ - btrfs: only search for left_info if there is no right_info in
+ try_merge_free_space
+ - btrfs: inode: fix NULL pointer dereference if inode doesn't need
+ compression
+ - btrfs: fix memory leaks after failure to lookup checksums during inode
+ logging
+ - btrfs: trim: fix underflow in trim length to prevent access beyond
+ device boundary
+ - btrfs: make sure SB_I_VERSION doesn't get unset by remount
+ - btrfs: fix return value mixup in btrfs_get_extent
+ - [arm64] perf: Correct the event index in sysfs
+ - cifs: Fix leak when handling lease break for cached root fid
+ - [powerpc*] Allow 4224 bytes of stack expansion for the signal frame
+ - [powerpc*] Fix circular dependency between percpu.h and mmu.h
+ - [arm64] media: venus: fix multiple encoder crash
+ - [arm64] net: ethernet: stmmac: Disable hardware multicast filter
+ - [arm64,armhf] net: stmmac: dwmac1000: provide multicast filter fallback
+ - [mips64el,mipsel] irqchip/loongson-liointc: Fix misuse of gc->mask_cache
+ - [arm64,armhf] irqchip/gic-v4.1: Ensure accessing the correct RD when
+ writing INVALLR
+ - pidfd: Add missing sock updates for pidfd_getfd()
+ - net/compat: Add missing sock updates for SCM_RIGHTS
+ - md/raid5: Fix Force reconstruct-write io stuck in degraded raid5
+ - bcache: allocate meta data pages as compound pages
+ - bcache: fix overflow in offset_to_stripe()
+ - mac80211: fix misplaced while instead of if
+ - driver core: Avoid binding drivers to dead devices
+ - [mips*] CPU#0 is not hotpluggable
+ - ext2: fix missing percpu_counter_inc
+ - khugepaged: collapse_pte_mapped_thp() flush the right range
+ - mm/hugetlb: fix calculation of adjust_range_if_pmd_sharing_possible
+ - khugepaged: collapse_pte_mapped_thp() protect the pmd lock
+ - hugetlbfs: remove call to huge_pte_alloc without i_mmap_rwsem
+ - [amd64,arm64] mm/shuffle: don't move pages between zones and don't read
+ garbage memmaps
+ - ocfs2: change slot number type s16 to u16
+ - mm/page_counter.c: fix protection usage propagation
+ - cma: don't quit at first error when activating reserved areas
+ - mm/memory_hotplug: fix unpaired mem_hotplug_begin/done
+ - ftrace: Setup correct FTRACE_FL_REGS flags for module
+ - kprobes: Fix NULL pointer dereference at kprobe_ftrace_handler
+ - tracing: Use trace_sched_process_free() instead of exit() for pid
+ tracing
+ - [x86] watchdog: f71808e_wdt: indicate WDIOF_CARDRESET support in
+ watchdog_info.options
+ - [x86] watchdog: f71808e_wdt: remove use of wrong watchdog_info option
+ - [x86] watchdog: f71808e_wdt: clear watchdog timeout occurred flag
+ - ceph: set sec_context xattr on symlink creation
+ - ceph: handle zero-length feature mask in session messages
+ - [powerpc*] pseries: Fix 64 bit logical memory block panic
+ - dm: don't call report zones for more than the user requested
+ - module: Correctly truncate sysfs sections output
+ - bootconfig: Fix to find the initargs correctly
+ - perf probe: Fix wrong variable warning when the probe point is not found
+ - perf probe: Fix memory leakage when the probe point is not found
+ - perf intel-pt: Fix FUP packet state
+ - perf intel-pt: Fix duplicate branch after CBR
+ - gfs2: Never call gfs2_block_zero_range with an open transaction
+ - [armhf] drm/imx: imx-ldb: Disable both channels for split mode in
+ enc->disable()
+ - crypto: algif_aead - Only wake up when ctx->more is zero
+ - RDMA/ipoib: Return void from ipoib_ib_dev_stop()
+ - RDMA/ipoib: Fix ABBA deadlock with ipoib_reap_ah()
+ - rtc: cpcap: fix range
+ - IB/uverbs: Set IOVA on IB MR in uverbs layer
+ - sched/uclamp: Protect uclamp fast path code with static key
+ - USB: serial: ftdi_sio: make process-packet buffer unsigned
+ - USB: serial: ftdi_sio: clean up receive processing
+ - crypto: af_alg - Fix regression on empty requests
+ - devres: keep both device name and resource name in pretty name
+ - RDMA/counter: Only bind user QPs in auto mode
+ - RDMA/counter: Allow manually bind QPs with different pids to same
+ counter
+ - rtw88: pci: disable aspm for platform inter-op with module parameter
+ - [arm64,armhf] rtc: pl031: fix set_alarm by adding back call to
+ alarm_irq_enable
+ - [armhf] gpu: ipu-v3: image-convert: Combine rotate/no-rotate irq
+ handlers
+ - [armhf] gpu: ipu-v3: image-convert: Wait for all EOFs before completing
+ a tile
+ - dm rq: don't call blk_mq_queue_stopped() in dm_stop_queue()
+ - f2fs: compress: fix to avoid memory leak on cc->cpages
+ - [arm64] clk: qcom: clk-alpha-pll: remove unused/incorrect PLL_CAL_VAL
+ - iommu/vt-d: Enforce PASID devTLB field mask
+ - f2fs: compress: fix to update isize when overwriting compressed file
+ - nvme: fix deadlock in disconnect during scan_work and/or ana_work
+ - sched/uclamp: Fix a deadlock when enabling uclamp static key
+ - nfs: ensure correct writeback errors are returned on close()
+ - ubifs: Fix wrong orphan node deletion in ubifs_jnl_update|rename
+ - [arm*] clk: bcm2835: Do not use prediv with bcm2711's PLLs
+ - scsi: lpfc: nvmet: Avoid hang / use-after-free again when destroying
+ targetport
+ - nfs: nfs_file_write() should check for writeback errors
+ - watchdog: initialize device before misc_register
+ - md-cluster: Fix potential error pointer dereference in resize_bitmaps()
+ - [x86] tsr: Fix tsc frequency enumeration bug on Lightning Mountain SoC
+ - [x86] bugs/multihit: Fix mitigation reporting when VMX is not in use
+ - Input: sentelic - fix error return when fsp_reg_write fails
+ - [x86] drm/vmwgfx: Use correct vmw_legacy_display_unit pointer
+ - [x86] drm/vmwgfx: Fix two list_for_each loop exit tests
+ - [arm64] net: qcom/emac: add missed clk_disable_unprepare in error path
+ of emac_clks_phase1_init
+ - nfs: Fix getxattr kernel panic and memory overflow
+ - NFS: Fix flexfiles read failover
+ - fs/minix: set s_maxbytes correctly
+ - fs/minix: fix block limit check for V1 filesystems
+ - fs/minix: remove expected error message in block_to_path()
+ - fs/ufs: avoid potential u32 multiplication overflow
+ - crypto: algif_aead - fix uninitialized ctx->init
+ - perf bench mem: Always memset source before memcpy
+ - [x86] perf/x86/rapl: Fix missing psys sysfs attributes
+ - khugepaged: retract_page_tables() remember to test exit
+ - [arm64,armhf] ASoC: tegra: Use device managed resource APIs to get the
+ clock
+ - [arm64,armhf] ASoC: tegra: Add audio mclk parent configuration
+ - [arm64,armhf] ASoC: tegra: Enable audio mclk during
+ tegra_asoc_utils_init()
+ - [x86] drm/i915/gt: Force the GT reset on shutdown
+ - [arm64,armhf] drm/panfrost: Use kvfree() to free bo->sgts
+ - drm/dp_mst: Fix the DDC I2C device registration of an MST port
+ - drm/amdgpu: fix ordering of psp suspend
+ - [armhf] drm/omap: force runtime PM suspend on system suspend
+ - drm: Added orientation quirk for ASUS tablet model T103HAF
+ - drm: fix drm_dp_mst_port refcount leaks in drm_dp_mst_allocate_vcpi
+ - drm/amdgpu: Fix bug where DPM is not enabled after hibernate and resume
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 3
+
+ [ Ben Hutchings ]
+ * doc: Disable extension incompatible with Sphinx 3 (fixes FTBFS)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 23 Aug 2020 15:44:14 +0200
+
+linux (5.7.10-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.7
+ - block/bio-integrity: don't free 'buf' if bio_integrity_add_page() failed
+ - ethtool: Fix check in ethtool_rx_flow_rule_create
+ - geneve: allow changing DF behavior after creation
+ - [powerpc*] ibmveth: Fix max MTU limit
+ - mld: fix memory leak in ipv6_mc_destroy_dev()
+ - [arm64,armhf] mvpp2: ethtool rxtx stats fix
+ - net: bridge: enfore alignment for ethernet address
+ - net: core: reduce recursion limit value
+ - net: Do not clear the sock TX queue in sk_set_socket()
+ - net: ethtool: add missing string for NETIF_F_GSO_TUNNEL_REMCSUM
+ - net: fix memleak in register_netdevice()
+ - net: Fix the arp error in some cases
+ - net: increment xmit_recursion level in dev_direct_xmit()
+ - net: usb: ax88179_178a: fix packet alignment padding
+ - openvswitch: take into account de-fragmentation/gso_size in
+ execute_check_pkt_len
+ - rxrpc: Fix notification call on completion of discarded calls
+ - sctp: Don't advertise IPv4 addresses if ipv6only is set on the socket
+ - tcp: don't ignore ECN CWR on pure ACK
+ - tcp: grow window for OOO packets only for SACK flows
+ - tg3: driver sleeps indefinitely when EEH errors exceed eeh_max_freezes
+ - ip6_gre: fix use-after-free in ip6gre_tunnel_lookup()
+ - net: phy: Check harder for errors in get_phy_id()
+ - ip_tunnel: fix use-after-free in ip_tunnel_lookup()
+ - bnxt_en: Store the running firmware version code.
+ - bnxt_en: Do not enable legacy TX push on older firmware.
+ - bnxt_en: Fix statistics counters issue during ifdown with older firmware.
+ - bnxt_en: Read VPD info only for PFs
+ - net: phylink: fix ethtool -A with attached PHYs
+ - net: phylink: ensure manual pause mode configuration takes effect
+ - sch_cake: don't try to reallocate or unshare skb unconditionally
+ - sch_cake: don't call diffserv parsing code when it is not needed
+ - sch_cake: fix a few style nits
+ - tcp_cubic: fix spurious HYSTART_DELAY exit upon drop in min RTT
+ - bpf: tcp: bpf_cubic: fix spurious HYSTART_DELAY exit upon drop in min RTT
+ - [arm64,riscv64] net: macb: undo operations in case of failure
+ - r8169: fix firmware not resetting tp->ocp_base
+ - net: ethtool: add missing NETIF_F_GSO_FRAGLIST feature string
+ - [arm64,riscv64] net: macb: call pm_runtime_put_sync on failure path
+ - net: phy: mscc: avoid skcipher API for single block AES encryption
+ - of: of_mdio: Correct loop scanning logic
+ - wireguard: device: avoid circular netns references
+ - bareudp: Fixed multiproto mode configuration
+ - [armhf] net: dsa: bcm_sf2: Fix node reference count
+ - net: phy: smsc: fix printing too many logs
+ - genetlink: clean up family attributes allocations
+ - nvmet: cleanups the loop in nvmet_async_events_process
+ - nvmet: fail outstanding host posted AEN req
+ - ALSA: usb-audio: Fix potential use-after-free of streams
+ - [arm64,armhf] Revert "i2c: tegra: Fix suspending in active runtime PM
+ state"
+ - btrfs: fix a block group ref counter leak after failure to remove block
+ group
+ - binder: fix null deref of proc->context
+ - [x86] mei: me: disable mei interface on Mehlow server platforms
+ - [x86] mei: me: add tiger lake point device ids for H platforms.
+ - [armhf] Revert "usb: dwc3: exynos: Add support for Exynos5422 suspend
+ clk"
+ - [mips*/*-malta,sh4] USB: ohci-sm501: Add missed iounmap() in remove
+ - [arm64,armhf] usb: dwc2: Postponed gadget registration to the udc class
+ driver
+ - usb: add USB_QUIRK_DELAY_INIT for Logitech C922
+ - USB: ehci: reopen solution for Synopsys HC bug
+ - xhci: Poll for U0 after disabling USB2 LPM
+ - [armhf] usb: host: ehci-exynos: Fix error check in exynos_ehci_probe()
+ - ALSA: usb-audio: Add implicit feedback quirk for SSL2+.
+ - ALSA: usb-audio: add quirk for Denon DCD-1500RE
+ - ALSA: usb-audio: Set 48 kHz rate for Rodecaster
+ - ALSA: usb-audio: Add registration quirk for Kingston HyperX Cloud Flight S
+ - ALSA: usb-audio: add quirk for Samsung USBC Headset (AKG)
+ - ALSA: usb-audio: Fix OOB access of mixer element list
+ - scsi: qla2xxx: Keep initiator ports after RSCN
+ - [s390x] scsi: zfcp: Fix panic on ERP timeout for previously dismissed ERP
+ action
+ - cifs: Fix cached_fid refcnt leak in open_shroot
+ - cifs/smb3: Fix data inconsistent when punch hole
+ - cifs/smb3: Fix data inconsistent when zero file range
+ - xhci: Fix incorrect EP_STATE_MASK
+ - xhci: Fix enumeration issue when setting max packet size for FS devices.
+ - xhci: Return if xHCI doesn't support LPM
+ - cdc-acm: Add DISABLE_ECHO quirk for Microchip/SMSC chip
+ - loop: replace kill_bdev with invalidate_bdev
+ - IB/mad: Fix use after free when destroying MAD agent
+ - IB/hfi1: Fix module use count flaw due to leftover module put calls
+ - [armhf] bus: ti-sysc: Flush posted write on enable and disable
+ - [armhf] bus: ti-sysc: Use optional clocks on for enable and wait for
+ softreset bit
+ - [armhf] bus: ti-sysc: Ignore clockactivity unless specified as a quirk
+ - [armhf] bus: ti-sysc: Fix uninitialized framedonetv_irq
+ - [armhf] OMAP2+: Fix legacy mode dss_reset
+ - xfrm: Fix double ESP trailer insertion in IPsec crypto offload.
+ - [armhf] dts: Fix am33xx.dtsi USB ranges length
+ - [armhf] dts: Fix am33xx.dtsi ti,sysc-mask wrong softreset flag
+ - [x86] resctrl: Support CPUID enumeration of MBM counter width
+ - [x86] resctrl: Fix memory bandwidth counter width for AMD
+ - efi/tpm: Verify event log header before parsing
+ - ASoC: soc-pcm: fix checks for multi-cpu FE dailinks
+ - [arm64] ASoC: qcom: common: set correct directions for dailinks
+ - [armhf] regualtor: pfuze100: correct sw1a/sw2 on pfuze3000
+ - efi/libstub: Fix path separator regression
+ - RDMA/siw: Fix pointer-to-int-cast warning in siw_rx_pbl()
+ - [armhf] dts: am335x-pocketbeagle: Fix mmc0 Write Protect
+ - [armhf] dts: Fix duovero smsc interrupt for suspend
+ - dma-direct: re-encrypt memory if dma_direct_alloc_pages() fails
+ - dma-direct: check return value when encrypting or decrypting memory
+ - [x86] resctrl: Fix a NULL vs IS_ERR() static checker warning in
+ rdt_cdp_peer_get()
+ - [x86] efi/x86: Setup stack correctly for efi_pe_entry
+ - regmap: Fix memory leak from regmap_register_patch
+ - devmap: Use bpf_map_area_alloc() for allocating hash buckets
+ - bpf: Don't return EINVAL from {get,set}sockopt when optlen > PAGE_SIZE
+ - rxrpc: Fix handling of rwind from an ACK packet
+ - RDMA/rvt: Fix potential memory leak caused by rvt_alloc_rq
+ - RDMA/efa: Set maximum pkeys device attribute
+ - RDMA/qedr: Fix KASAN: use-after-free in ucma_event_handler+0x532
+ - RDMA/cma: Protect bind_list and listen_list while finding matching cm id
+ - RDMA/core: Check that type_attrs is not NULL prior access
+ - [arm64,armhf] ASoC: rockchip: Fix a reference count leak.
+ - [s390x] qeth: fix error handling for isolation mode cmds
+ - RDMA/mad: Fix possible memory leak in ib_mad_post_receive_mads()
+ - [x86] Revert "KVM: VMX: Micro-optimize vmexit time when not exposing PMU"
+ - [x86] iommu/vt-d: Set U/S bit in first level page table by default
+ - [x86] iommu/vt-d: Enable PCI ACS for platform opt in hint
+ - [x86] iommu/vt-d: Update scalable mode paging structure coherency
+ - dma-direct: add missing set_memory_decrypted() for coherent mapping
+ - net: qed: fix left elements count calculation
+ - net: qed: fix async event callbacks unregistering
+ - net: qede: stop adding events on an already destroyed workqueue
+ - net: qed: fix NVMe login fails over VFs
+ - net: qed: fix excessive QM ILT lines consumption
+ - net: qede: fix PTP initialization on recovery
+ - net: qede: fix use-after-free on recovery and AER handling
+ - net: qed: reset ILT block sizes before recomputing to fix crashes
+ - cxgb4: move handling L2T ARP failures to caller
+ - cxgb4: move PTP lock and unlock to caller in Tx path
+ - [armhf] imx5: add missing put_device() call in imx_suspend_alloc_ocram()
+ - scsi: lpfc: Avoid another null dereference in lpfc_sli4_hba_unset()
+ - usb: gadget: udc: Potential Oops in error handling code
+ - nvme: don't protect ns mutation with ns->head->lock
+ - qed: add missing error test for DBG_STATUS_NO_MATCHING_FRAMING_MODE
+ - netfilter: ipset: fix unaligned atomic access
+ - [arm64] net: bcmgenet: use hardware padding of runt frames
+ - io_uring: fix hanging iopoll in case of -EAGAIN
+ - [riscv64] clk: sifive: allocate sufficient memory for struct __prci_data
+ - [armhf] i2c: fsi: Fix the port number field in status register
+ - wireguard: receive: account for napi_gro_receive never returning GRO_DROP
+ - [arm64] socionext: account for napi_gro_receive never returning GRO_DROP
+ - wil6210: account for napi_gro_receive never returning GRO_DROP
+ - i2c: core: check returned size of emulated smbus block read
+ - afs: Fix storage of cell names
+ - sched/deadline: Initialize ->dl_boosted
+ - sched/core: Fix PI boosting between RT and DEADLINE tasks
+ - sched/cfs: change initial value of runnable_avg
+ - ata/libata: Fix usage of page address by page_address in
+ ata_scsi_mode_select_xlat function
+ - drm/amd/display: Use kfree() to free rgb_user in
+ calculate_user_regamma_ramp()
+ - [riscv64] atomic: Fix sign extension for RV64I
+ - bcache: check and adjust logical block size for backing devices
+ - net: alx: fix race condition in alx_remove
+ - [arm64] pinctrl: qcom: spmi-gpio: fix warning about irq chip reusage
+ - [arm64,armhf] pinctrl: tegra: Use noirq suspend/resume callbacks
+ - [s390x] seccomp: pass syscall arguments via seccomp_data
+ - [s390x] ptrace: return -ENOSYS when invalid syscall is supplied
+ - [s390x] ptrace: pass invalid syscall numbers to tracing
+ - [s390x] ptrace: fix setting syscall number
+ - [s390x] vdso: Use $(LD) instead of $(CC) to link vDSO
+ - [s390x] vdso: fix vDSO clock_getres()
+ - [arm64] sve: Fix build failure when ARM64_SVE=y and SYSCTL=n
+ - kbuild: improve cc-option to clean up all temporary files
+ - recordmcount: support >64k sections
+ - kprobes: Suppress the suspicious RCU warning on kprobes
+ - blktrace: break out of blktrace setup on concurrent calls
+ - nvdimm/region: always show the 'align' attribute
+ - block: update hctx map when use multiple maps
+ - [riscv64] Don't allow write+exec only page mapping request in mmap
+ - syscalls: Fix offset type of ksys_ftruncate()
+ - ALSA: hda: Add NVIDIA codec IDs 9a & 9d through a0 to patch table
+ - [x86] ALSA: hda/realtek - Add quirk for MSI GE63 laptop
+ - [x86] ALSA: hda/realtek: Add mute LED and micmute LED support for HP
+ systems
+ - ACPI: sysfs: Fix pm_profile_attr type
+ - ACPI: configfs: Disallow loading ACPI tables when locked down
+ (CVE-2020-15780)
+ - erofs: fix partially uninitialized misuse in z_erofs_onlinepage_fixup
+ - [x86] KVM: X86: Fix MSR range of APIC registers in X2APIC mode
+ - [x86] kvm: lapic: fix broken vcpu hotplug
+ - [x86] KVM: nVMX: Plumb L2 GPA through to PML emulation
+ - [x86] KVM: VMX: Stop context switching MSR_IA32_UMWAIT_CONTROL
+ - [x86] cpu: Use pinning mask for CR4 bits needing to be 0
+ - [x86] cpu: Reinitialize IA32_FEAT_CTL MSR on BSP during wakeup
+ - [amd64] asm/64: Align start of __clear_user() loop to 16-bytes
+ - btrfs: fix bytes_may_use underflow when running balance and scrub in
+ parallel
+ - btrfs: fix data block group relocation failure due to concurrent scrub
+ - btrfs: check if a log root exists before locking the log_mutex on unlink
+ - btrfs: fix hang on snapshot creation after RWF_NOWAIT write
+ - btrfs: fix failure of RWF_NOWAIT write into prealloc extent beyond eof
+ - btrfs: fix RWF_NOWAIT write not failling when we need to cow
+ - mm, compaction: make capture control handling safe wrt interrupts
+ - mm, slab: fix sign conversion problem in memcg_uncharge_slab()
+ - mm/slab: use memzero_explicit() in kzfree()
+ - ocfs2: avoid inode removal while nfsd is accessing it
+ - ocfs2: load global_inode_alloc
+ - ocfs2: fix value of OCFS2_INVALID_SLOT
+ - ocfs2: fix panic on nfs server over ocfs2
+ - mm: memcontrol: handle div0 crash race condition in memory.low
+ - mm/memcontrol.c: add missed css_put()
+ - mm/memory_hotplug.c: fix false softlockup during pfn range removal
+ - [arm64] perf: Report the PC value in REGS_ABI_32 mode
+ - tracing/boottime: Fix kprobe multiple events
+ - tracing: Fix event trigger to accept redundant spaces
+ - ring-buffer: Zero out time extend if it is nested and not absolute
+ - drm/amd/display: Enable output_bpc property on all outputs
+ - drm/amd: fix potential memleak in err branch
+ - drm/radeon: fix fb_div check in ni_init_smc_spll_table()
+ - drm/fb-helper: Fix vt restore
+ - drm/amdgpu: add fw release for sdma v5_0
+ - drm/amdgpu/display: Unlock mutex on error
+ - drm/panel-simple: fix connector type for newhaven_nhd_43_480272ef_atxl
+ - drm/panel-simple: fix connector type for LogicPD Type28 Display
+ - [armhf] dts: imx6ul-kontron: Move watchdog from Kontron i.MX6UL/ULL board
+ to SoM
+ - [armhf] dts: imx6ul-kontron: Change WDOG_ANY signal from push-pull to
+ open-drain
+ - [x86,arm64] Staging: rtl8723bs: prevent buffer overflow in
+ update_sta_support_rate()
+ - sunrpc: fixed rollback in rpc_gssd_dummy_populate()
+ - SUNRPC: Properly set the @subbuf parameter of xdr_buf_subsegment()
+ - pNFS/flexfiles: Fix list corruption if the mirror count changes
+ - NFSv4 fix CLOSE not waiting for direct IO compeletion
+ - [x86] EDAC/amd64: Read back the scrub rate PCI register on F15h
+ - xprtrdma: Fix handling of RDMA_ERROR replies
+ - dm writecache: correct uncommitted_block when discarding uncommitted entry
+ - dm writecache: add cond_resched to loop in persistent_memory_claim()
+ - Revert "tty: hvc: Fix data abort due to race in hvc_open"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.8
+ - exfat: Set the unused characters of FileName field to the value 0000h
+ - exfat: add missing brelse() calls on error paths
+ - exfat: call sync_filesystem for read-only remount
+ - exfat: move setting VOL_DIRTY over exfat_remove_entries()
+ - exfat: flush dirty metadata in fsync
+ - btrfs: block-group: refactor how we delete one block group item
+ - btrfs: fix race between block group removal and block group creation
+ - mm: fix swap cache node allocation mask
+ - drm/amd/display: Fix incorrectly pruned modes with deep color
+ - drm/amd/display: Fix ineffective setting of max bpc property
+ - seg6: fix seg6_validate_srh() to avoid slab-out-of-bounds
+ - tipc: add test for Nagle algorithm effectiveness
+ - tipc: fix kernel WARNING in tipc_msg_append()
+ - usbnet: smsc95xx: Fix use-after-free after removal
+ - tipc: Fix NULL pointer dereference in __tipc_sendstream()
+ - [x86] drm/i915/gt: Mark timeline->cacheline as destroyed after rcu grace
+ period
+ - drm/amdgpu: disable ras query and iject during gpu reset
+ - drm/amdgpu: fix non-pointer dereference for non-RAS supported
+ - drm/amdgpu: fix kernel page fault issue by ras recovery on sGPU
+ - sched/debug: Make sd->flags sysctl read-only
+ - soc: ti: omap-prm: use atomic iopoll instead of sleeping one
+ - [powerpc*] kvm/book3s: Add helper to walk partition scoped linux page
+ table.
+ - [powerpc*] book3s64/kvm: Fix secondary page table walk warning during
+ migration
+ - mm/slub.c: fix corrupted freechain in deactivate_slab()
+ - mm/slub: fix stack overruns with SLUB_STATS
+ - mm, dump_page(): do not crash with invalid mapping pointer
+ - io_uring: fix {SQ,IO}POLL with unsupported opcodes
+ - rxrpc: Fix race between incoming ACK parser and retransmitter
+ - usb: usbtest: fix missing kfree(dev->buf) in usbtest_disconnect
+ (CVE-2020-15393)
+ - tools lib traceevent: Add append() function helper for appending strings
+ - tools lib traceevent: Handle __attribute__((user)) in field names
+ - [s390x] debug: avoid kernel warning on too large number of pages
+ - io_uring: fix io_sq_thread no schedule when busy
+ - nvme-multipath: set bdi capabilities once
+ - nvme: fix possible deadlock when I/O is blocked
+ - nvme-multipath: fix deadlock between ana_work and scan_work
+ - nvme-multipath: fix deadlock due to head->lock
+ - nvme-multipath: fix bogus request queue reference put
+ - io_uring: fix current->mm NULL dereference on exit
+ - tpm: Fix TIS locality timeout problems
+ - crypto: af_alg - fix use-after-free in af_alg_accept() due to
+ bh_lock_sock()
+ - task_work: teach task_work_add() to do signal_wake_up()
+ - io_uring: use signal based task_work running
+ - [arm64] drm/msm/dpu: fix error return code in dpu_encoder_init
+ - btrfs: fix RWF_NOWAIT writes blocking on extent locks and waiting for IO
+ - rxrpc: Fix afs large storage transmission performance drop
+ - RDMA/counter: Query a counter before release
+ - xfs: fix use-after-free on CIL context on shutdown
+ - hsr: remove hsr interface if all slaves are removed
+ - hsr: avoid to create proc file after unregister
+ - cxgb4: use unaligned conversion for fetching timestamp
+ - cxgb4: parse TC-U32 key values and masks natively
+ - cxgb4: fix endian conversions for L4 ports in filters
+ - cxgb4: use correct type for all-mask IP address comparison
+ - cxgb4: fix SGE queue dump destination buffer context
+ - security: Fix hook iteration and default value for inode_copy_up_xattr
+ - [x86] hwmon: (acpi_power_meter) Fix potential memory leak in
+ acpi_power_meter_add()
+ - scsi: qla2xxx: Fix a condition in qla2x00_find_all_fabric_devs()
+ - nfsd4: fix nfsdfs reference count loop
+ - nfsd: fix nfsdfs inode reference count leak
+ - [arm64,armhf] drm: sun4i: hdmi: Remove extra HPD polling
+ - virtio-blk: free vblk-vqs in error path of virtblk_probe()
+ - SMB3: Honor 'posix' flag for multiuser mounts
+ - nvme: fix identify error status silent ignore
+ - nvme: fix a crash in nvme_mpath_add_disk
+ - [sh4] i2c: algo-pca: Add 0x78 as SCL stuck low status for PCA9665
+ - [x86,arm64] i2c: designware: platdrv: Set class based on DMI
+ - io_uring: fix regression with always ignoring signals in io_cqring_wait()
+ - Revert "ALSA: usb-audio: Improve frames size computation"
+ - padata: upgrade smp_mb__after_atomic to smp_mb in padata_do_serial
+ - SMB3: Honor 'seal' flag for multiuser mounts
+ - SMB3: Honor persistent/resilient handle flags for multiuser mounts
+ - SMB3: Honor lease disabling for multiuser mounts
+ - SMB3: Honor 'handletimeout' flag for multiuser mounts
+ - cifs: Fix the target file was deleted when rename failed.
+ - [x86] Drivers: hv: Change flag to write log level in panic msg to false
+ - hwmon: (pmbus) Fix page vs. register when accessing fans
+ - [x86] ACPI: fan: Fix Tiger Lake ACPI device ID
+ - gfs2: fix trans slab error when withdraw occurs inside log_flush
+ - [x86] split_lock: Don't write MSR_TEST_CTRL on CPUs that aren't
+ whitelisted
+ - [mips*] Add missing EHB in mtc0 -> mfc0 sequence for DSPen
+ - [x86] drm/i915: Include asm sources for {ivb, hsw}_clear_kernel.c
+ - drm/amd/powerplay: Fix NULL dereference in lock_bus() on Vega20 w/o RAS
+ - drm/amd/display: Only revalidate bandwidth on medium and fast updates
+ - drm/amdgpu: use %u rather than %d for sclk/mclk
+ - drm/amdgpu/atomfirmware: fix vram_info fetching for renoir
+ - dma-buf: Move dma_buf_release() from fops to dentry_ops
+ - [arm64,armhf] irqchip/gic: Atomically update affinity
+ - mm/hugetlb.c: fix pages per hugetlb calculation
+ - [arm*] mm/cma.c: use exact_nid true to fix possible per-numa cma leak
+ - dm zoned: assign max_io_len correctly
+ - efi: Make it possible to disable efivar_ssdt entirely
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.9
+ - [s389x] KVM: s390: reduce number of IO pins to 1
+ - regmap: fix alignment issue
+ - [x86] perf/x86/rapl: Move RAPL support to common x86 code
+ - [x86] perf/x86/rapl: Fix RAPL config variable bug
+ - [armhf] dts: omap4-droid4: Fix spi configuration and increase rate
+ - drm/ttm: Fix dma_fence refcnt leak in ttm_bo_vm_fault_reserved
+ - drm/ttm: Fix dma_fence refcnt leak when adding move fence
+ - [arm64,armhf] gpu: host1x: Clean up debugfs in error handling path
+ - [arm64,armhf] drm/tegra: hub: Do not enable orphaned window group
+ - [arm64,armhf] gpu: host1x: Detach driver on unregister
+ - [x86] ASoC: SOF: Intel: add PCI ID for CometLake-S
+ - ASoC: hdac_hda: fix memleak with regmap not freed on remove
+ - [x86] ALSA: hda: Intel: add missing PCI IDs for ICL-H, TGL-H and EKL
+ - spi: spidev: fix a race between spidev_release and spidev_remove
+ - spi: spidev: fix a potential use-after-free in spidev_release()
+ - [arm64,armhf] net: ethernet: mvneta: Fix Serdes configuration for SoCs
+ without comphy
+ - [arm64,armhf] net: ethernet: mvneta: Add 2500BaseX support for SoCs
+ without comphy
+ - ixgbe: protect ring accesses with READ- and WRITE_ONCE
+ - i40e: protect ring accesses with READ- and WRITE_ONCE
+ - ice: protect ring accesses with WRITE_ONCE
+ - [powerpc*] kvm/book3s64: Fix kernel crash with nested kvm & DEBUG_VIRTUAL
+ - xprtrdma: Prevent dereferencing r_xprt->rx_ep after it is freed
+ - [x86] iommu/vt-d: Don't apply gfx quirks to untrusted devices
+ - [x86] drm: panel-orientation-quirks: Add quirk for Asus T101HA panel
+ - [x86] drm: panel-orientation-quirks: Use generic orientation-data for
+ Acer S1003
+ - [s390x] kasan: fix early pgm check handler execution
+ - cifs: update ctime and mtime during truncate
+ - [armhf] imx6: add missing put_device() call in imx6q_suspend_init()
+ - scsi: qla2xxx: Fix MPI failure AEN (8200) handling
+ - scsi: mptscsih: Fix read sense data size
+ - [arm64,armhf] usb: dwc3: pci: Fix reference count leak in
+ dwc3_pci_resume_work
+ - [arm64] kpti: Add KRYO{3, 4}XX silver CPU cores to kpti safelist
+ - block: release bip in a right way in error path
+ - nvme-rdma: assign completion vector correctly
+ - [x86] entry: Increase entry_stack size to a full page
+ - [arm64] Add KRYO{3,4}XX silver CPU cores to SSB safelist
+ - nfs: Fix memory leak of export_path
+ - sched/core: Check cpus_mask, not cpus_ptr in __set_cpus_allowed_ptr(), to
+ fix mask corruption
+ - mtd: set master partition panic write flag
+ - [arm64,armhf] gpio: pca953x: Synchronize interrupt handler properly
+ - [arm64,armhf] gpio: pca953x: Fix direction setting when configure an IRQ
+ - [arm64] KVM: arm64: vgic-v4: Plug race between non-residency and v4.1
+ doorbell
+ - mac80211: Fix dropping broadcast packets in 802.11 encap
+ - bpf: Do not allow btf_ctx_access with __int128 types
+ - nl80211: don't return err unconditionally in nl80211_start_ap()
+ - nl80211: fix memory leak when parsing NL80211_ATTR_HE_BSS_COLOR
+ - bpf, sockmap: RCU splat with redirect and strparser error or TLS
+ - bpf, sockmap: RCU dereferenced psock may be used outside RCU block
+ - netfilter: ipset: call ip_set_free() instead of kfree()
+ - [arm64,armhf] net: mvneta: fix use of state->speed
+ - net: cxgb4: fix return error value in t4_prep_fw
+ - btrfs: fix reclaim_size counter leak after stealing from global reserve
+ - [arm64] drm/meson: viu: fix setting the OSD burst length in
+ VIU_OSD1_FIFO_CTRL_STAT
+ - IB/sa: Resolv use-after-free in ib_nl_make_request()
+ - netfilter: conntrack: refetch conntrack after nf_conntrack_update()
+ - perf report TUI: Fix segmentation fault in perf_evsel__hists_browse()
+ - [x86] perf intel-pt: Fix recording PEBS-via-PT with registers
+ - [x86] perf intel-pt: Fix PEBS sample for XMM registers
+ - smsc95xx: check return value of smsc95xx_reset
+ - smsc95xx: avoid memory leak in smsc95xx_bind
+ - [arm64] net: hns3: check reset pending after FLR prepare
+ - [arm64] net: hns3: fix for mishandle of asserting VF reset fail
+ - [arm64] net: hns3: add a missing uninit debugfs when unload driver
+ - [arm64] net: hns3: fix use-after-free when doing self test
+ - ALSA: compress: fix partial_drain completion state
+ - net: qed: fix buffer overflow on ethtool -d
+ - [powerpc*] 64s/exception: Fix 0x1500 interrupt handler crash
+ - RDMA/siw: Fix reporting vendor_part_id
+ - net: atlantic: fix ip dst and ipv6 address filters
+ - nbd: Fix memory leak in nbd_add_socket
+ - cxgb4: fix all-mask IP address comparison
+ - IB/mlx5: Fix 50G per lane indication
+ - qed: Populate nvm-file attributes while reading nvm config partition.
+ - net/mlx5: Fix eeprom support for SFP module
+ - net/mlx5e: Fix VXLAN configuration restore after function reload
+ - net/mlx5e: Fix CPU mapping after function reload to avoid aRFS RX crash
+ - net/mlx5e: Fix 50G per lane indication
+ - net/mlx5e: CT: Fix memory leak in cleanup
+ - bnxt_en: fix NULL dereference in case SR-IOV configuration fails
+ - [arm64,riscv64] net: macb: fix wakeup test in runtime suspend/resume
+ routines
+ - [arm64,riscv64] net: macb: mark device wake capable when "magic-packet"
+ property present
+ - [arm64,riscv64] net: macb: fix macb_get/set_wol() when moving to phylink
+ - [arm64,riscv64] net: macb: fix macb_suspend() by removing call to
+ netif_carrier_off()
+ - [arm64,riscv64] net: macb: fix call to pm_runtime in the suspend/resume
+ functions
+ - IB/hfi1: Do not destroy hfi1_wq when the device is shut down
+ - IB/hfi1: Do not destroy link_wq when the device is shut down
+ - [i386,alpha,hppa] ALSA: opl3: fix infoleak in opl3
+ - ALSA: hda - let hs_mic be picked ahead of hp_mic
+ - ALSA: usb-audio: add quirk for MacroSilicon MS2109
+ - ALSA: usb-audio: Add implicit feedback quirk for RTX6001
+ - [x86] ALSA: hda/realtek - Fix Lenovo Thinkpad X1 Carbon 7th quirk
+ subdevice id
+ - ALSA: hda/realtek - Enable audio jacks of Acer vCopperbox with ALC269VC
+ - [x86] ALSA: hda/realtek: Enable headset mic of Acer C20-820 with ALC269VC
+ - [x86] ALSA: hda/realtek: Enable headset mic of Acer Veriton N4660G with
+ ALC269VC
+ - [arm64] KVM: arm64: Fix definition of PAGE_HYP_DEVICE
+ - [arm64] KVM: arm64: Stop clobbering x0 for HVC_SOFT_RESTART
+ - [arm64] KVM: arm64: Annotate hyp NMI-related functions as __always_inline
+ - [x86] KVM: x86: bit 8 of non-leaf PDPEs is not reserved
+ - [x86] KVM: x86: Inject #GP if guest attempts to toggle CR4.LA57 in 64-bit
+ mode
+ - [x86] KVM: x86: Mark CR4.TSD as being possibly owned by the guest
+ - [arm64] KVM: arm64: Fix kvm_reset_vcpu() return code being incorrect with
+ SVE
+ - io_uring: fix memleak in __io_sqe_files_update()
+ - io_uring: account user memory freed when exit has been queued
+ - io_uring: fix memleak in io_sqe_files_register()
+ - io_uring: fix missing msg_name assignment
+ - kallsyms: Refactor kallsyms_show_value() to take cred
+ - module: Refactor section attr into bin attribute
+ - module: Do not expose section addresses to non-CAP_SYSLOG
+ - kprobes: Do not expose probe addresses to non-CAP_SYSLOG
+ - bpf: Check correct cred for CAP_SYSLOG in bpf_dump_raw_ok()
+ - Revert "ath9k: Fix general protection fault in ath9k_hif_usb_rx_cb"
+ (Closes: #964153, #964480)
+ - btrfs: fix fatal extent_buffer readahead vs releasepage race
+ - btrfs: reset tree root pointer after error in init_tree_roots
+ - btrfs: discard: add missing put when grabbing block group from unused list
+ - btrfs: fix double put of block group with nocow
+ - drm/radeon: fix double free
+ - [x86] drm/i915/gt: Pin the rings before marking active
+ - [x86] drm/i915: Skip stale object handle for debugfs per-file-stats
+ - drm/amdgpu: don't do soft recovery if gpu_recovery=0
+ - drm/amdgpu: add TMR destory function for psp
+ - drm/amdgpu: asd function needs to be unloaded in suspend phase
+ - [x86] drm/i915: Drop vm.ref for duplicate vma on construction
+ - [x86] drm/i915: Also drop vm.ref along error paths for vma construction
+ - cifs: fix reference leak for tlink
+ - smb3: fix access denied on change notify request to some servers
+ - smb3: fix unneeded error message on change notify
+ - dm: use noio when sending kobject event
+ - [arm64] mmc: meson-gx: limit segments to 1 when dram-access-quirk is
+ needed
+ - [x86] pinctrl: baytrail: Fix pin being driven low for a while on
+ gpiod_get(..., GPIOD_OUT_HIGH)
+ - [s390x] setup: init jump labels before command line parsing
+ - [s390x] mm: fix huge pte soft dirty copying
+ - [arm64] Introduce a way to disable the 32bit vdso
+ - [arm64] arch_timer: Allow an workaround descriptor to disable compat vdso
+ - [arm64] arch_timer: Disable the compat vdso for cores affected by
+ ARM64_WORKAROUND_1418040
+ - blk-mq: consider non-idle request as "inflight" in blk_mq_rq_inflight()
+ - dm writecache: reject asynchronous pmem devices
+ - perf scripts python: export-to-postgresql.py: Fix struct.pack() int
+ argument
+ - perf scripts python: exported-sql-viewer.py: Fix zero id in call graph
+ 'Find' result
+ - perf scripts python: exported-sql-viewer.py: Fix zero id in call tree
+ 'Find' result
+ - perf scripts python: exported-sql-viewer.py: Fix unexpanded 'Find' result
+ - perf scripts python: exported-sql-viewer.py: Fix time chart call tree
+ - [s390x] Change s390_kernel_write() return type to match memcpy()
+ - [s390x] maccess: add no DAT mode to kernel_write
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.10
+ - bridge: mcast: Fix MLD2 Report IPv6 payload length check
+ - genetlink: remove genl_bind
+ - ipv4: fill fl4_icmp_{type,code} in ping_v4_sendmsg
+ - ipv6: fib6_select_path can not use out path for nexthop objects
+ - ipv6: Fix use of anycast address with loopback
+ - l2tp: remove skb_dst_set() from l2tp_xmit_skb()
+ - llc: make sure applications use ARPHRD_ETHER
+ - net: Added pointer check for dst->ops->neigh_lookup in
+ dst_neigh_lookup_skb
+ - net_sched: fix a memory leak in atm_tc_init()
+ - net: usb: qmi_wwan: add support for Quectel EG95 LTE modem
+ - sched: consistently handle layer3 header accesses in the presence of
+ VLANs
+ - tcp: fix SO_RCVLOWAT possible hangs under high mem pressure
+ - tcp: make sure listeners don't initialize congestion-control state
+ - tcp: md5: add missing memory barriers in tcp_md5_do_add()/
+ tcp_md5_hash_key()
+ - tcp: md5: do not send silly options in SYNCOOKIES
+ - vlan: consolidate VLAN parsing code and limit max parsing depth
+ - tcp: md5: refine tcp_md5_do_add()/tcp_md5_hash_key() barriers
+ - tcp: md5: allow changing MD5 keys in all socket states
+ - cgroup: fix cgroup_sk_alloc() for sk_clone_lock()
+ - cgroup: Fix sock_cgroup_data on big-endian.
+ - ip: Fix SO_MARK in RST, ACK and ICMP packets
+ - genetlink: get rid of family->attrbuf
+ - net: ipv4: Fix wrong type conversion from hint to rt in
+ ip_route_use_hint()
+ - ethtool: fix genlmsg_put() failure handling in ethnl_default_dumpit()
+ - [arm64] drm/msm: fix potential memleak in error branch
+ - [arm64] drm/msm/dpu: allow initialization of encoder locks during encoder
+ init
+ - [armhf] drm/exynos: Properly propagate return value in
+ drm_iommu_attach_device()
+ - [armhf] drm/exynos: fix ref count leak in mic_pre_enable
+ - [x86] fpu: Reset MXCSR to default in kernel_fpu_begin()
+ - [armhf] thermal/drivers: imx: Fix missing of_node_put() at probe time
+ - [x86] ACPI: DPTF: Add battery participant for TigerLake
+ - blk-mq-debugfs: update blk_queue_flag_name[] accordingly for new flags
+ - [m68k] mm: fix node memblock init
+ - cifs: prevent truncation from long to int in wait_for_free_credits
+ - [arm64] alternatives: use subsections for replacement sequences
+ - tpm_tis: extra chip->ops check on error path in tpm_tis_core_init
+ - xen/xenbus: avoid large structs and arrays on the stack
+ - xen/xenbus: let xenbus_map_ring_valloc() return errno values only
+ - gfs2: eliminate GIF_ORDERED in favor of list_empty
+ - gfs2: freeze should work on read-only mounts
+ - gfs2: read-only mounts should grab the sd_freeze_gl glock
+ - gfs2: When freezing gfs2, use GL_EXACT and not GL_NOCACHE
+ - gfs2: The freeze glock should never be frozen
+ - [arm64] Add MIDR value for KRYO4XX gold CPU cores
+ - [arm64] Add KRYO4XX gold CPU cores to erratum list 1463225 and 1418040
+ - [arm64] Add KRYO4XX silver CPU cores to erratum list 1530923 and 1024718
+ - [i386,mips*/boston] i2c: eg20t: Load module automatically if ID matches
+ - [arm64] alternatives: don't patch up internal branches
+ - iio: core: add missing IIO_MOD_H2/ETHANOL string identifiers
+ - [armhf] iio: mma8452: Add missed iio_device_unregister() call in
+ mma8452_probe()
+ - [arm64] Add missing sentinel to erratum_1463225
+ - xen/xenbus: Fix a double free in xenbus_map_ring_pv()
+ - [arm64,armhf] net: ethernet: mvneta: Do not error out in non serdes modes
+ - [arm64,armhf] net: ethernet: mvneta: Add back interface mode validation
+ - scsi: qla2xxx: make 1-bit bit-fields unsigned int
+ - io_uring: fix recvmsg memory leak with buffer selection
+ - [arm64,armhf] phy: rockchip: Fix return value of inno_dsidphy_probe()
+ - [arm64,armhf] phy: sun4i-usb: fix dereference of pointer phy0 before it
+ is null checked
+ - [arm64] dts: meson: add missing gxl rng clock
+ - [arm64] dts: meson-gxl-s805x: reduce initial Mali450 core frequency
+ - [armhf] bus: ti-sysc: Fix wakeirq sleeping function called from invalid
+ context
+ - [armhf] bus: ti-sysc: Fix sleeping function called from invalid context
+ for RTC quirk
+ - [armhf] bus: ti-sysc: Do not disable on suspend for no-idle
+ - [x86] dmaengine: dw: Initialize channel before each transfer
+ - [armhf] spi: spi-sun6i: sun6i_spi_transfer_one(): fix setting of clock
+ rate
+ - [x86] staging: comedi: verify array index is correct before using it
+ - serial: core: Initialise spin lock before use in uart_configure_port()
+ - [arm64,armhf] clk: mvebu: ARMADA_AP_CPU_CLK needs to select
+ ARMADA_AP_CP_HELPER
+ - [armhf] clk: AST2600: Add mux for EMMC clock
+ - xprtrdma: Fix double-free in rpcrdma_ep_create()
+ - xprtrdma: Fix recursion into rpcrdma_xprt_disconnect()
+ - xprtrdma: Fix return code from rpcrdma_xprt_connect()
+ - xprtrdma: Fix handling of connect errors
+ - NFS: Fix interrupted slots by sending a solo SEQUENCE operation
+ - fuse: don't ignore errors from fuse_writepages_fill()
+ - xprtrdma: fix incorrect header size calculations
+ - [armhf] dts: socfpga: Align L2 cache-controller nodename with dtschema
+ - keys: asymmetric: fix error return code in software_key_query()
+ - nvme: explicitly update mpath disk capacity on revalidation
+ - regmap: debugfs: Don't sleep while atomic for fast_io regmaps
+ - copy_xstate_to_kernel: Fix typo which caused GDB regression
+ - apparmor: ensure that dfa state tables have entries
+ - RDMA/rxe: Set default vendor ID
+ - PCI/PM: Call .bridge_d3() hook only if non-NULL
+ - perf stat: Zero all the 'ena' and 'run' array slot stats for interval
+ mode
+ - RDMA/mlx5: Verify that QP is created with RQ or SQ
+ - [arm64] clk: qcom: Add missing msm8998 ufs_unipro_core_clk_src
+ - mtd: spi-nor: winbond: Fix 4-byte opcode support for w25q256
+ - mtd: spi-nor: spansion: fix writes on S25FS512S
+ - [armhf] mtd: rawnand: marvell: Fix the condition on a return code
+ - [armhf] mtd: rawnand: marvell: Use nand_cleanup() when the device is not
+ yet registered
+ - [armhf] mtd: rawnand: marvell: Fix probe error path
+ - mtd: rawnand: timings: Fix default tR_max and tCCS_min timings
+ - [arm64] clk: qcom: gcc: Add GPU and NPU clocks for SM8150
+ - [arm64] clk: qcom: gcc: Add missing UFS clocks for SM8150
+ - [arm64] clk: qcom: gcc: Add support for a new frequency for SC7180
+ - HID: logitech-hidpp: avoid repeated "multiplier = " log messages
+ - HID: magicmouse: do not set up autorepeat
+ - HID: quirks: Always poll Obins Anne Pro 2 keyboard
+ - HID: quirks: Ignore Simply Automated UPB PIM
+ - ALSA: line6: Perform sanity check for each URB creation
+ - ALSA: line6: Sync the pending work cancel at disconnection
+ - ALSA: usb-audio: Fix race against the error recovery URB submission
+ - [x86] ALSA: hda/realtek - change to suitable link model for ASUS platform
+ - [x86] ALSA: hda/realtek: enable headset mic of ASUS ROG Zephyrus
+ G14(G401) series with ALC289
+ - [x86] ALSA: hda/realtek: Enable headset mic of Acer TravelMate B311R-31
+ with ALC256
+ - [x86] ALSA: hda/realtek - Enable Speaker for ASUS UX533 and UX534
+ - [x86] ALSA: hda/realtek - Enable Speaker for ASUS UX563
+ - [x86] thunderbolt: Fix path indices used in USB3 tunnel discovery
+ - [arm64,armhf] usb: dwc2: Fix shutdown callback in platform
+ - [arm64,armh] usb: chipidea: core: add wakeup support for extcon
+ - usb: gadget: function: fix missing spinlock in f_uac1_legacy
+ - USB: serial: iuu_phoenix: fix memory corruption
+ - USB: serial: cypress_m8: enable Simply Automated UPB PIM
+ - USB: serial: ch341: add new Product ID for CH340
+ - USB: serial: option: add GosunCn GM500 series
+ - USB: serial: option: add Quectel EG95 LTE modem
+ - [x86] virt: vbox: Fix VBGL_IOCTL_VMMDEV_REQUEST_BIG and _LOG req numbers
+ to match upstream
+ - [x86] virt: vbox: Fix guest capabilities mask check
+ - [arm64] Revert "tty: xilinx_uartps: Fix missing id assignment to the
+ console"
+ - virtio: virtio_console: add missing MODULE_DEVICE_TABLE() for rproc
+ serial
+ - [sh4] serial: sh-sci: Initialize spinlock for uart console
+ - Revert "serial: core: Refactor uart_unlock_and_check_sysrq()"
+ - serial: core: fix sysrq overhead regression
+ - ovl: fix regression with re-formatted lower squashfs
+ - ovl: inode reference leak in ovl_is_inuse true case.
+ - ovl: relax WARN_ON() when decoding lower directory file handle
+ - ovl: fix unneeded call to ovl_change_flags()
+ - fuse: ignore 'data' argument of mount(..., MS_REMOUNT)
+ - fuse: use ->reconfigure() instead of ->remount_fs()
+ - fuse: Fix parameter for FS_IOC_{GET,SET}FLAGS
+ - Revert "zram: convert remaining CLASS_ATTR() to CLASS_ATTR_RO()"
+ (CVE-2020-10781)
+ - [x86] mei: bus: don't clean driver pointer
+ - [arm64] Revert "Input: elants_i2c - report resolution information for
+ touch major"
+ - [x86] Input: i8042 - add Lenovo XiaoXin Air 12 to i8042 nomux list
+ - [x86] Input: elan_i2c - add more hardware ID for Lenovo laptops
+ - scsi: megaraid_sas: Remove undefined ENABLE_IRQ_POLL macro
+ - timer: Prevent base->clk from moving backward
+ - timer: Fix wheel index calculation on last level
+ - [riscv64] use 16KB kernel stack on 64-bit
+ - hwmon: (emc2103) fix unable to change fan pwm1_enable attribute
+ - hwmon: (drivetemp) Avoid SCT usage on Toshiba DT01ACA family drives
+ - [powerpc*] book3s64/pkeys: Fix pkey_access_permitted() for execute
+ disable pkey
+ - [powerpc*] pseries/svm: Fix incorrect check for shared_lppaca_size
+ - [x86] intel_th: pci: Add Jasper Lake CPU support
+ - [x86] intel_th: pci: Add Tiger Lake PCH-H support
+ - [x86] intel_th: pci: Add Emmitsburg PCH support
+ - [x86] intel_th: Fix a NULL dereference when hub driver is not loaded
+ - opp: Increase parsed_static_opps in _of_add_opp_table_v1()
+ - dmabuf: use spinlock to access dmabuf->name
+ - [x86] thermal: int3403_thermal: Downgrade error message
+ - [armhf] dts: imx6qdl-gw551x: fix audio SSI
+ - [arm64] ptrace: Override SPSR.SS when single-stepping is enabled
+ - [arm64] ptrace: Consistently use pseudo-singlestep exceptions
+ - [arm64] compat: Ensure upper 32 bits of x0 are zero on syscall return
+ - sched: Fix unreliable rseq cpu_id for new tasks
+ - sched/fair: handle case of task_h_load() returning 0
+ - [x86] ioperm: Fix io bitmap invalidation on Xen PV
+ - genirq/affinity: Handle affinity setting on inactive interrupts correctly
+ - [x86] drm/vmwgfx: fix update of display surface when resolution changes
+ - drm/amdgpu/powerplay: Modify SMC message name for setting power profile
+ mode
+ - drm/amdgpu/sdma5: fix wptr overwritten in ->get_wptr()
+ - drm/amd/display: handle failed allocation during stream construction
+ - drm/amd/display: OLED panel backlight adjust not work with external
+ display connected
+ - drm/amdgpu/display: create fake mst encoders ahead of time (v4)
+ - [x86] drm/i915: Move cec_notifier to intel_hdmi_connector_unregister, v2.
+ - [x86] drm/i915/gt: Ignore irq enabling on the virtual engines
+ - [x86] drm/i915/gt: Only swap to a random sibling once upon creation
+ - libceph: don't omit recovery_deletes in target_copy()
+ - rxrpc: Fix trace string
+ - [x86] iommu/vt-d: Make Intel SVM code 64-bit only
+ - mm/memory.c: properly pte_offset_map_lock/unlock in vm_insert_pages()
+ - [x86] drm/i915/gvt: Fix two CFL MMIO handling caused by regression.
+ - [arm64,armhf] gpio: pca953x: disable regmap locking for automatic address
+ incrementing
+ - bpf: sockmap: Check value of unused args to BPF_PROG_ATTACH
+ - bpf: sockmap: Require attach_bpf_fd when detaching a program
+ - [x86] drm/i915/perf: Use GTT when saving/restoring engine GPR
+
+ [ Aurelien Jarno ]
+ * Enable perf on riscv64.
+
+ [ Salvatore Bonaccorso ]
+ * drivers/net/ethernet/intel: Enable IGC as module (Closes: #965931)
+ * [x86] ioperm: Fix io bitmap invalidation on Xen PV (CVE-2020-15852,
+ XSA-329)
+ * certs: Rotate to use the Debian Secure Boot Signer 2020 certificate
+ * perf cs-etm: Move definition of 'traceid_list' global variable from header
+ file (Closes: #957491)
+ * usbip: tools: fix build error for multiple definition
+
+ [ Ben Hutchings ]
+ * libtraceevent: Fix build with binutils 2.35
+ * Bump ABI to 2
+
+ [ John Paul Adrian Glaubitz ]
+ * [sh4] Add patch to implement __get_user_u64()
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 26 Jul 2020 08:40:40 +0200
+
+linux (5.7.6-1) unstable; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_5.7
+ - [x86] syscalls: Revert "x86/syscalls: Make __X32_SYSCALL_BIT be unsigned
+ long" (Closes: #954294)
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.1
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.2
+ - vt: keyboard: avoid signed integer overflow in k_ascii (CVE-2020-13974)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.3
+ - [x86] speculation: Prevent rogue cross-process SSBD shutdown
+ (CVE-2020-10766)
+ - [x86] speculation: Avoid force-disabling IBPB based on STIBP and
+ enhanced IBRS. (CVE-2020-10767)
+ - [x86] speculation: PR_SPEC_FORCE_DISABLE enforcement for indirect
+ branches. (CVE-2020-10768)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.4
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.5
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.7.6
+
+ [ Ben Hutchings ]
+ * fs: Enable EXFAT_FS as module (Closes: #959781)
+ * Fix conversion of meta-package doc directories to symlinks
+ (Closes: #942861)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable DRM_ANALOGIX_ANX6345 as a module.
+ * [arm64] Add analogix-anx6345, pwm-sun4i, sun4i-drm and sun8i-mixer to
+ fb-modules udeb.
+
+ [ Helge Deller ]
+ * [hppa] Don't run dh_strip on vmlinuz (Closes: #961299)
+
+ [ YunQiang Su ]
+ * [mips/loongson-3] Enable SERIAL_OF_PLATFORM and OF (Closes: 961328)
+
+ [ Aurelien Jarno ]
+ * Enable CONFIG_NVME_HWMON (Closes: #961823)
+
+ [ Romain Perier ]
+ * [arm64] Enable PCIE_BRCMSTB
+ * [arm64] Enable BCM2711_THERMAL
+
+ [ Salvatore Bonaccorso ]
+ * nfsd: apply umask on fs without ACL support (Closes: #962254)
+ * [rt] Add new signing key for Tom Zanussi
+ * Set ABI to 1
+ * [arm64] Remove explicit setting of CONFIG_HNS
+ * debian/config: Clean up with the help of kconfigeditor2
+
+ [ Gianfranco Costamagna ]
+ * [x86] Enable VBOXSF_FS as a module (Closes: #961516)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 24 Jun 2020 20:56:57 +0200
+
+linux (5.7~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Romain Perier ]
+ * Enable support for fsverity
+
+ [ Ben Hutchings ]
+ * [rt] Disable until it is updated for 5.5 or later
+ * lockdown: Update Secure Boot support patches for 5.7
+ * [amd64] Update "x86: Make x32 syscall support conditional ..." for 5.7
+ * Update "tools/perf: pmu-events: Fix reproducibility" for 5.7
+
+ -- Ben Hutchings <benh@debian.org> Sun, 10 May 2020 23:42:53 +0100
+
+linux (5.6.14-2) unstable; urgency=medium
+
+ [ Vagrant Cascadian ]
+ * [arm64] Add pwm-sun4i to fb-modules udeb.
+
+ [ Salvatore Bonaccorso ]
+ * kernel/relay.c: handle alloc_percpu returning NULL in relay_open
+ (CVE-2019-19462)
+ * fs/binfmt_elf.c: allocate initialized memory in fill_thread_core_info()
+ (CVE-2020-10732)
+ * mm: Fix mremap not considering huge pmd devmap (CVE-2020-10757)
+
+ [ Ben Hutchings ]
+ * [x86] Add support for mitigation of Special Register Buffer Data Sampling
+ (SRBDS) (CVE-2020-0543):
+ - x86/cpu: Add 'table' argument to cpu_matches()
+ - x86/speculation: Add Special Register Buffer Data Sampling (SRBDS)
+ mitigation
+ - x86/speculation: Add SRBDS vulnerability and mitigation documentation
+ - x86/speculation: Add Ivy Bridge to affected list
+ * [x86] speculation: Do not match steppings, to avoid an ABI change
+
+ -- Ben Hutchings <benh@debian.org> Tue, 09 Jun 2020 18:50:00 +0100
+
+linux (5.6.14-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.8
+ - mm: check that mm is still valid in madvise()
+ - watchdog: reset last_hw_keepalive time at start
+ - scsi: lpfc: Fix kasan slab-out-of-bounds error in lpfc_unreg_login
+ - xfs: correctly acount for reclaimable slabs
+ - scsi: lpfc: Fix crash after handling a pci error
+ - scsi: lpfc: Fix crash in target side cable pulls hitting WAIT_FOR_UNREG
+ - scsi: libfc: If PRLI rejected, move rport to PLOGI state
+ - ceph: return ceph_mdsc_do_request() errors from __get_parent()
+ - ceph: don't skip updating wanted caps when cap is stale
+ - [armhf] pwm: imx27: Fix clock handling in pwm_imx27_apply()
+ - nvme-tcp: fix possible crash in write_zeroes processing
+ - scsi: iscsi: Report unbind session event when the target has been
+ removed
+ - [x86] ASoC: Intel: atom: Take the drv->lock mutex before calling
+ sst_send_slot_map()
+ - nvme: fix deadlock caused by ANA update wrong locking
+ - drm/amd/display: Update stream adjust in dc_stream_adjust_vmin_vmax
+ - dma-direct: fix data truncation in dma_direct_get_required_mask()
+ - kernel/gcov/fs.c: gcov_seq_next() should increase position index
+ - ipc/util.c: sysvipc_find_ipc() should increase position index
+ - block: fix busy device checking in blk_drop_partitions
+ - [s390x] cio: generate delayed uevent for vfio-ccw subchannels
+ - [s390x] cio: avoid duplicated 'ADD' uevents
+ - loop: Better discard support for block devices
+ - [powerpc*] Revert "powerpc/64: irq_work avoid interrupt when called with
+ hardware irqs enabled"
+ - [powerpc*] pseries: Fix MCE handling on pseries
+ - nvme: fix compat address handling in several ioctls
+ - pwm: renesas-tpu: Fix late Runtime PM enablement
+ - [armel, armhf, arm64] pwm: bcm2835: Dynamically allocate base
+ - scsi: lpfc: Fix erroneous cpu limit of 128 on I/O statistics
+ - scsi: lpfc: Fix lockdep error - register non-static key
+ - perf/core: Disable page faults when getting phys address
+ - drm/amd/display: Calculate scaling ratios on every medium/full update
+ - ASoC: Intel: bytcr_rt5640: Add quirk for MPMAN MPWIN895CL tablet
+ - ALSA: usb-audio: Add Pioneer DJ DJM-250MK2 quirk
+ - xhci: Ensure link state is U3 after setting USB_SS_PORT_LS_U3
+ - xhci: Wait until link state trainsits to U0 after setting
+ USB_SS_PORT_LS_U0
+ - xhci: Finetune host initiated USB3 rootport link suspend and resume
+ - block: fix busy device checking in blk_drop_partitions again
+ - cxgb4: fix adapter crash due to wrong MC size
+ - cxgb4: fix large delays in PTP synchronization
+ - ipv4: Update fib_select_default to handle nexthop objects
+ - ipv6: fix restrict IPV6_ADDRFORM operation
+ - macsec: avoid to set wrong mtu
+ - macvlan: fix null dereference in macvlan_device_event()
+ - mlxsw: Fix some IS_ERR() vs NULL bugs
+ - [arm64] net: bcmgenet: correct per TX/RX ring statistics
+ - net/mlx4_en: avoid indirect call in TX completion
+ - net: netrom: Fix potential nr_neigh refcnt leak in nr_add_node
+ - net: openvswitch: ovs_ct_exit to be done under ovs_lock
+ - [armhf, arm64] net: stmmac: dwmac-meson8b: Add missing boundary to RGMII
+ TX clock array
+ - net/x25: Fix x25_neigh refcnt leak when receiving frame
+ - sched: etf: do not assume all sockets are full blown
+ - tcp: cache line align MAX_TCP_HEADER
+ - team: fix hang in team_mode_get()
+ - tipc: Fix potential tipc_aead refcnt leak in tipc_crypto_rcv
+ - tipc: Fix potential tipc_node refcnt leak in tipc_rcv
+ - vrf: Fix IPv6 with qdisc and xfrm
+ - net: dsa: b53: Lookup VID in ARL searches when VLAN is enabled
+ - net: dsa: b53: Fix valid setting for MDB entries
+ - net: dsa: b53: Fix ARL register definitions
+ - net: dsa: b53: Rework ARL bin logic
+ - net: dsa: b53: b53_arl_rw_op() needs to select IVL or SVL
+ - vxlan: use the correct nlattr array in NL_SET_ERR_MSG_ATTR
+ - geneve: use the correct nlattr array in NL_SET_ERR_MSG_ATTR
+ - xfrm: Always set XFRM_TRANSFORMED in xfrm{4,6}_output_finish
+ - vrf: Check skb for XFRM_TRANSFORMED flag
+ - net: ethernet: ixp4xx: Add error handling in ixp4xx_eth_probe()
+ - KEYS: Avoid false positive ENOMEM error on key read
+ - ALSA: hda: Remove ASUS ROG Zenith from the blacklist
+ - ALSA: usb-audio: Add static mapping table for ALC1220-VB-based mobos
+ - ALSA: usb-audio: Add connector notifier delegation
+ - mac80211: populate debugfs only after cfg80211 init
+ - libbpf: Only check mode flags in get_xdp_id
+ - iio: core: remove extra semi-colon from devm_iio_device_register() macro
+ - iio: imu: st_lsm6dsx: flush hw FIFO before resetting the device
+ - iio: st_sensors: rely on odr mask to know if odr can be set
+ - iio: adc: stm32-adc: fix sleep in atomic context
+ - iio: adc: ti-ads8344: properly byte swap value
+ - USB: sisusbvga: Change port variable from signed to unsigned
+ - USB: Add USB_QUIRK_DELAY_CTRL_MSG and USB_QUIRK_DELAY_INIT for Corsair
+ K70 RGB RAPIDFIRE
+ - USB: early: Handle AMD's spec-compliant identifiers, too
+ - USB: core: Fix free-while-in-use bug in the USB S-Glibrary
+ (CVE-2020-12464)
+ - USB: hub: Fix handling of connect changes during sleep
+ - USB: hub: Revert commit bd0e6c9614b9 ("usb: hub: try old enumeration
+ scheme first for high speed devices")
+ - tty: serial: owl: add "much needed" clk_prepare_enable()
+ - vmalloc: fix remap_vmalloc_range() bounds checks
+ - staging: gasket: Fix incongruency in handling of sysfs entries creation
+ - coredump: fix null pointer dereference on coredump
+ - mm/hugetlb: fix a addressing exception caused by huge_pte_offset
+ - mm/ksm: fix NULL pointer dereference when KSM zero page is enabled
+ - ALSA: usx2y: Fix potential NULL dereference
+ - ALSA: hda/realtek - Fix unexpected init_amp override
+ - ALSA: hda/realtek - Add new codec supported for ALC245
+ - ALSA: hda/hdmi: Add module option to disable audio component binding
+ - ALSA: usb-audio: Fix usb audio refcnt leak when getting spdif
+ - ALSA: usb-audio: Filter out unsupported sample rates on Focusrite
+ devices
+ - tpm/tpm_tis: Free IRQ if probing fails
+ - tpm: fix wrong return value in tpm_pcr_extend
+ - tpm: ibmvtpm: retry on H_CLOSED in tpm_ibmvtpm_send()
+ - [s390x] KVM: Return last valid slot if approx index is out-of-bounds
+ - KVM: Check validity of resolved slot when searching memslots
+ - [x86] KVM: VMX: Enable machine check support for 32bit targets
+ - tty: hvc: fix buffer overflow during hvc_alloc().
+ - tty: rocket, avoid OOB access
+ - usb-storage: Add unusual_devs entry for JMicron JMS566
+ - signal: Avoid corrupting si_pid and si_uid in do_notify_parent
+ - drm/dp_mst: Zero assigned PBN when releasing VCPI slots
+ - audit: check the length of userspace generated audit records
+ - ASoC: dapm: fixup dapm kcontrol widget
+ - SUNRPC: Fix backchannel RPC soft lockups
+ - iwlwifi: pcie: actually release queue memory in TVQM
+ - iwlwifi: mvm: beacon statistics shouldn't go backwards
+ - iwlwifi: pcie: indicate correct RB size to device
+ - iwlwifi: mvm: limit maximum queue appropriately
+ - iwlwifi: mvm: Do not declare support for ACK Enabled Aggregation
+ - iwlwifi: mvm: fix inactive TID removal return value usage
+ - iwlwifi: fix WGDS check when WRDS is disabled
+ - cifs: fix uninitialised lease_key in open_shroot()
+ - [armhf] imx: provide v7_cpu_resume() only on ARM_CPU_SUSPEND=y
+ - [powerpc*] 8xx: Fix STRICT_KERNEL_RWX startup test failure
+ - [powerpc*] setup_64: Set cache-line-size based on cache-block-size
+ - [x86] staging: comedi: dt2815: fix writing hi byte of analog output
+ - [x86] staging: comedi: Fix comedi_device refcnt leak in comedi_open
+ - vt: don't hardcode the mem allocation upper bound
+ - vt: don't use kmalloc() for the unicode screen buffer
+ - [x86] staging: vt6656: Don't set RCR_MULTICAST or RCR_BROADCAST by
+ default.
+ - [x86] staging: vt6656: Fix calling conditions of vnt_set_bss_mode
+ - [x86] staging: vt6656: Fix drivers TBTT timing counter.
+ - [x86] staging: vt6656: Fix pairwise key entry save.
+ - [x86] staging: vt6656: Power save stop wake_up_count wrap around.
+ - [x86] mei: me: fix irq number stored in hw struct
+ - cdc-acm: close race betrween suspend() and acm_softint
+ - cdc-acm: introduce a cool down
+ - UAS: no use logging any details in case of ENODEV
+ - UAS: fix deadlock in error handling and PM flushing work
+ - fpga: dfl: pci: fix return value of cci_pci_sriov_configure
+ - [armhf, arm64] usb: dwc3: gadget: Fix request completion check
+ - usb: f_fs: Clear OS Extended descriptor counts to zero in
+ ffs_data_reset()
+ - [x86] usb: typec: tcpm: Ignore CC and vbus changes in PORT_RESET change
+ - [x86] usb: typec: altmode: Fix typec_altmode_get_partner sometimes
+ returning an invalid pointer
+ - xhci: Fix handling halted endpoint even if endpoint ring appears empty
+ - xhci: prevent bus suspend if a roothub port detected a over-current
+ condition
+ - xhci: Don't clear hub TT buffer on ep0 protocol stall
+ - serial: sh-sci: Make sure status register SCxSR is read in correct
+ sequence
+ - Revert "serial: uartps: Fix uartps_major handling"
+ - Revert "serial: uartps: Use the same dynamic major number for all ports"
+ - Revert "serial: uartps: Fix error path when alloc failed"
+ - Revert "serial: uartps: Do not allow use aliases >= MAX_UART_INSTANCES"
+ - Revert "serial: uartps: Change uart ID port allocation"
+ - Revert "serial: uartps: Move Port ID to device data structure"
+ - Revert "serial: uartps: Register own uart console and driver structures"
+ - [x86] drm/i915/gt: Update PMINTRMSK holding fw
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.9
+ - ubifs: Fix ubifs_tnc_lookup() usage in do_kill_orphans()
+ - printk: queue wake_up_klogd irq_work only if per-CPU areas are ready
+ - [armhf] ASoC: stm32: sai: fix sai probe
+ - [armhf, arm64] usb: dwc3: gadget: Do link recovery for SS and SSP
+ - [armel, armhf] ARM: dts: bcm283x: Add cells encoding format to firmware
+ bus
+ - usb: gadget: udc: bdc: Remove unnecessary NULL checks in
+ bdc_req_complete
+ - usb: gadget: udc: atmel: Fix vbus disconnect handling
+ - afs: Make record checking use TASK_UNINTERRUPTIBLE when appropriate
+ - afs: Fix to actually set AFS_SERVER_FL_HAVE_EPOCH
+ - iio:ad7797: Use correct attribute_group
+ - iio: imu: st_lsm6dsx: fix read misalignment on untagged FIFO
+ - iio: imu: st_lsm6dsx: specify slave odr in slv_odr
+ - propagate_one(): mnt_set_mountpoint() needs mount_lock
+ - counter: 104-quad-8: Add lock guards - generic interface
+ - [s390x] ftrace: fix potential crashes when switching tracers
+ - ASoC: q6dsp6: q6afe-dai: add missing channels to MI2S DAIs
+ - iwlwifi: actually check allocated conf_tlv pointer
+ - ASoC: tas571x: disable regulators on failed probe
+ - [armhf, arm64] ASoC: meson: axg-card: fix codec-to-codec link setup
+ - ASoC: wm8960: Fix wrong clock after suspend & resume
+ - nfsd: memory corruption in nfsd4_lock()
+ - [armhf] dts: OMAP3: disable RNG on N950/N9
+ - bpf: Forbid XADD on spilled pointers for unprivileged users
+ - brcmfmac: add stub for monitor interface xmit
+ - i2c: altera: use proper variable to hold errno
+ - clk: asm9260: fix __clk_hw_register_fixed_rate_with_accuracy typo
+ - rtw88: avoid unused function warnings
+ - hwmon: (drivetemp) Return -ENODATA for invalid temperatures
+ - rxrpc: Fix DATA Tx to disable nofrag for UDP on AF_INET6 socket
+ - netfilter: nf_tables: reintroduce the NFT_SET_CONCAT flag
+ - [x86] efi: Don't remap text<->rodata gap read-only for mixed mode
+ - net/cxgb4: Check the return from t4_query_params properly
+ - tipc: fix incorrect increasing of link window
+ - xfs: acquire superblock freeze protection on eofblocks scans
+ - svcrdma: Fix trace point use-after-free race
+ - svcrdma: Fix leak of svc_rdma_recv_ctxt objects
+ - [armhf, arm64] net/mlx5e: Don't trigger IRQ multiple times on XSK wakeup
+ to avoid WQ overruns
+ - [armhf, arm64] net/mlx5e: Get the latest values from counters in
+ switchdev mode
+ - PCI: Avoid ASMedia XHCI USB PME# from D0 defect
+ - PCI: Add Zhaoxin Vendor ID
+ - PCI: Add ACS quirk for Zhaoxin multi-function devices
+ - PCI: Add ACS quirk for Zhaoxin Root/Downstream Ports
+ - PCI: Move Apex Edge TPU class quirk to fix BAR assignment
+ - ARM: dts: bcm283x: Disable dsi0 node
+ - cpumap: Avoid warning when CONFIG_DEBUG_PER_CPU_MAPS is enabled
+ - [s390x] pci: do not set affinity for floating irqs
+ - remoteproc: mtk_scp: use dma_addr_t for DMA API
+ - net/mlx5: Fix failing fw tracer allocation on s390
+ - sched/core: Fix reset-on-fork from RT with uclamp
+ - perf/core: fix parent pid/tid in task exit events
+ - netfilter: nat: fix error handling upon registering inet hook
+ - PM: sleep: core: Switch back to async_schedule_dev()
+ - blk-iocost: Fix error on iocost_ioc_vrate_adj
+ - bpf: Fix handling of XADD on BTF memory
+ - [x86] bpf: Fix encoding for lower 8-bit registers in BPF_STX BPF_B
+ - [x86] bpf: x32: Fix incorrect encoding in BPF_LDX zero-extension
+ - [x86] bpf: x32: Fix clobbering of dst for BPF_JSET
+ - [x86] bpf, x32: Fix logic error in BPF_LDX zero-extension
+ - bpf: Propagate expected_attach_type when verifying freplace programs
+ - mm: shmem: disable interrupt when acquiring info->lock in
+ userfaultfd_copy path
+ - xfs: clear PF_MEMALLOC before exiting xfsaild thread
+ - libbpf: Initialize *nl_pid so gcc 10 is happy
+ - [armhf] net: fec: set GPR bit on suspend by DT configuration.
+ - [x86] hyperv: report value of misc_features
+ - signal: check sig before setting info in kill_pid_usb_asyncio
+ - afs: Fix length of dump of bad YFSFetchStatus record
+ - xfs: fix partially uninitialized structure in xfs_reflink_remap_extent
+ - ALSA: hda: Release resources at error in delayed probe
+ - ALSA: hda: Keep the controller initialization even if no codecs found
+ - ALSA: hda: Explicitly permit using autosuspend if runtime PM is
+ supported
+ - drm/amdgpu: fix wrong vram lost counter increment V2
+ - scsi: target: fix PR IN / READ FULL STATUS for FC
+ - scsi: target: tcmu: reset_ring should reset TCMU_DEV_BIT_BROKEN
+ - objtool: Fix CONFIG_UBSAN_TRAP unreachable warnings
+ - objtool: Support Clang non-section symbols in ORC dump
+ - xen/xenbus: ensure xenbus_map_ring_valloc() returns proper grant status
+ - ALSA: hda: call runtime_allow() for all hda controllers
+ - net: stmmac: socfpga: Allow all RGMII modes
+ - mac80211: fix channel switch trigger from unknown mesh peer
+ - sched/isolation: Allow "isolcpus=" to skip unknown sub-parameters
+ - sched/vtime: Work around an unitialized variable warning
+ - [arm64] Delete the space separator in __emit_inst
+ - ext4: use matching invalidatepage in ext4_writepage
+ - ext4: increase wait time needed before reuse of deleted inode numbers
+ - ext4: convert BUG_ON's to WARN_ON's in mballoc.c
+ - irqchip/gic-v4.1: Add support for VPENDBASER's Dirty+Valid signaling
+ - blk-mq: Put driver tag in blk_mq_dispatch_rq_list() when no budget
+ - irqchip/meson-gpio: Fix HARDIRQ-safe -> HARDIRQ-unsafe lock order
+ - hwmon: (jc42) Fix name to have no illegal characters
+ - sfc: fix XDP-redirect in this driver
+ - taprio: do not use BIT() in TCA_TAPRIO_ATTR_FLAG_* definitions
+ - tipc: Add a missing case of TIPC_DIRECT_MSG type
+ - qed: Fix race condition between scheduling and destroying the slowpath
+ workqueue
+ - Crypto: chelsio - Fixes a hang issue during driver registration
+ - net: use indirect call wrappers for skb_copy_datagram_iter()
+ - qed: Fix use after free in qed_chain_free
+ - ext4: check for non-zero journal inum in ext4_calculate_overhead
+ - ASoC: soc-pcm: fix regression in soc_new_pcm()
+ - ASoC: soc-core: disable route checks for legacy devices
+ - [armhf] ASoC: stm32: spdifrx: fix regmap status check
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.10
+ - Revert "ASoC: meson: axg-card: fix codec-to-codec link setup"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.11
+ - drm/scheduler: fix drm_sched_get_cleanup_job
+ - dma-buf: Fix SET_NAME ioctl uapi
+ - drm/amdgpu: invalidate L2 before SDMA IBs (v2)
+ - drm/edid: Fix off-by-one in DispID DTD pixel clock
+ - drm/amd/display: Fix green screen issue after suspend
+ - [x86] drm/i915/gem: Hold obj->vma.lock over for_each_ggtt_vma()
+ - [x86] drm/i915/gt: Check cacheline is valid before acquiring
+ - drm/qxl: qxl_release leak in qxl_draw_dirty_fb()
+ - drm/qxl: qxl_release leak in qxl_hw_surface_alloc()
+ - drm/qxl: qxl_release use after free
+ - NFSv4.1: fix handling of backchannel binding in BIND_CONN_TO_SESSION
+ - btrfs: fix transaction leak in btrfs_recover_relocation
+ - btrfs: fix block group leak when removing fails
+ - btrfs: fix partial loss of prealloc extent past i_size after fsync
+ - btrfs: transaction: Avoid deadlock due to bad initialization timing of
+ fs_info::journal_info
+ - mmc: cqhci: Avoid false "cqhci: CQE stuck on" by not open-coding timeout
+ loop
+ - [arm64] mmc: sdhci-xenon: fix annoying 1.8V regulator warning
+ - mmc: sdhci-pci: Fix eMMC driver strength for BYT-based controllers
+ - [arm64] mmc: sdhci-msm: Enable host capabilities pertains to R1b
+ response
+ - [armhf] mmc: meson-mx-sdio: Set MMC_CAP_WAIT_WHILE_BUSY
+ - [armhf] mmc: meson-mx-sdio: remove the broken ->card_busy() op
+ - ALSA: hda/realtek - Two front mics on a Lenovo ThinkCenter
+ - ALSA: usb-audio: Correct a typo of NuPrime DAC-10 USB ID
+ - ALSA: hda/hdmi: fix without unlocked before return
+ - ALSA: line6: Fix POD HD500 audio playback
+ - ALSA: pcm: oss: Place the plugin buffer overflow checks correctly
+ - [x86] i2c: amd-mp2-pci: Fix Oops in amd_mp2_pci_init() error handling
+ - [x86] hyperv: Suspend/resume the VP assist page for hibernation
+ - [x86] Drivers: hv: vmbus: Fix Suspend-to-Idle for Generation-2 VM
+ - dlmfs_file_write(): fix the bogosity in handling non-zero *ppos
+ - selinux: properly handle multiple messages in selinux_netlink_send()
+ - [amd64] IB/rdmavt: Always return ERR_PTR from rvt_create_mmap_info()
+ - PM: ACPI: Output correct message on target power state
+ - PM: hibernate: Freeze kernel threads in software_resume()
+ - dm writecache: fix data corruption when reloading the target
+ - dm multipath: use updated MPATHF_QUEUE_IO on mapping for bio-based mpath
+ - block: remove the bd_openers checks in blk_drop_partitions
+ - scsi: qla2xxx: set UNLOADING before waiting for session deletion
+ - scsi: qla2xxx: check UNLOADING before posting async work
+ - RDMA/mlx5: Set GRH fields in query QP on RoCE
+ - RDMA/uverbs: Fix a race with disassociate and exit_mmap()
+ - RDMA/mlx4: Initialize ib_spec on the stack
+ - RDMA/core: Prevent mixed use of FDs between shared ufiles
+ - RDMA/core: Fix overwriting of uobj in case of error
+ - RDMA/core: Fix race between destroy and release FD object
+ - RDMA/cm: Fix ordering of xa_alloc_cyclic() in ib_create_cm_id()
+ - RDMA/cm: Fix an error check in cm_alloc_id_priv()
+ - [arm64] dmaengine: hisilicon: Fix build error without PCI_MSI
+ - [x86,arm64] vfio: avoid possible overflow in vfio_iommu_type1_pin_pages
+ - [x86,arm64] vfio/type1: Fix VA->PA translation for PFNMAP VMAs in
+ vaddr_get_pfn()
+ - [arm64] iommu/qcom: Fix local_base status check
+ - dmaengine: fix channel index enumeration
+ - scsi: target/iblock: fix WRITE SAME zeroing
+ - iommu: Properly export iommu_group_get_for_dev()
+ - [amd64] iommu/vt-d: Use right Kconfig option name
+ - [amd64] iommu/amd: Fix legacy interrupt remapping for x2APIC-enabled
+ system
+ - [armhf] i2c: aspeed: Avoid i2c interrupt status clear race condition.
+ - [i386] ALSA: opti9xx: shut up gcc-10 range warning
+ - Fix use after free in get_tree_bdev()
+ - nvme: prevent double free in nvme_alloc_ns() error handling
+ - nfs: Fix potential posix_acl refcnt leak in nfs3_set_acl
+ - [x86] drm/i915: Use proper fault mask in interrupt postinstall too
+ - [arm64] vdso: Add -fasynchronous-unwind-tables to cflags
+ - io_uring: statx must grab the file table for valid fd
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.12
+ - vhost: vsock: kick send_pkt worker once device is started
+ - [arm64,armhf] drm/bridge: analogix_dp: Split bind() into probe() and
+ real bind()
+ - [x86] ASoC: topology: Add missing memory checks
+ - [x86] ASoC: topology: Check return value of soc_tplg_create_tlv
+ - [x86] ASoC: topology: Check return value of soc_tplg_*_create
+ - [x86] ASoC: topology: Check soc_tplg_add_route return value
+ - [x86] ASoC: topology: Check return value of pcm_new_ver
+ - [x86] ASoC: topology: Check return value of soc_tplg_dai_config
+ - SUNRPC/cache: Fix unsafe traverse caused double-free in cache_purge
+ - scsi: sg: add sg_remove_request in sg_write (CVE-2020-12770)
+ - [armhf] ASoC: sgtl5000: Fix VAG power-on handling
+ - [x86] ASoC: topology: Fix endianness issue
+ - [arm64,armhf] usb: dwc3: gadget: Properly set maxpacket limit
+ - [x86] ASoC: codecs: hdac_hdmi: Fix incorrect use of list_for_each_entry
+ - wimax/i2400m: Fix potential urb refcnt leak
+ - [armhf] net: stmmac: fix enabling socfpga's ptp_ref_clock
+ - [arm64,armhf] net: stmmac: Fix sub-second increment
+ - cifs: protect updating server->dstaddr with a spinlock
+ - cifs: do not share tcons with DFS
+ - tracing: Fix memory leaks in trace_events_hist.c
+ - ftrace: Fix memory leak caused by not freeing entry in
+ unregister_ftrace_direct()
+ - mac80211: sta_info: Add lockdep condition for RCU list usage
+ - [arm64] net: bcmgenet: suppress warnings on failed Rx SKB allocations
+ - sctp: Fix SHUTDOWN CTSN Ack in the peer restart case
+ - drm/amdgpu: Fix oops when pp_funcs is unset in ACPI event
+ - ALSA: hda: Match both PCI ID and SSID for driver blacklist
+ - [x86] kvm: fix a missing-prototypes "vmread_error"
+ - [x86] platform: GPD pocket fan: Fix error message when temp-limits are
+ out of range
+ - ACPI: PM: s2idle: Fix comment in acpi_s2idle_prepare_late()
+ - mac80211: add ieee80211_is_any_nullfunc()
+ - cgroup, netclassid: remove double cond_resched
+ - mm/mremap: Add comment explaining the untagging behaviour of mremap()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.13
+ - [x86] thunderbolt: Check return value of tb_sw_read() in
+ usb4_switch_op()
+ - USB: serial: qcserial: Add DW5816e support
+ - drm/amdgpu: move kfd suspend after ip_suspend_phase1
+ - drm/amdgpu: drop redundant cg/pg ungate on runpm enter
+ - vt: fix unicode console freeing with a common interface
+ - [arm64] tty: xilinx_uartps: Fix missing id assignment to the console
+ - ext4: don't set dioread_nolock by default for blocksize < pagesize
+ - ext4: disable dioread_nolock whenever delayed allocation is disabled
+ - nvme: refactor nvme_identify_ns_descs error handling
+ - nvme: fix possible hang when ns scanning fails during error recovery
+ - tracing/kprobes: Fix a double initialization typo
+ - [arm64,riscv64] net: macb: Fix runtime PM refcounting
+ - cxgb4: fix EOTID leak when disabling TC-MQPRIO offload
+ - devlink: Fix reporter's recovery condition
+ - devlink: fix return value after hitting end in region read
+ - fq_codel: fix TCA_FQ_CODEL_DROP_BATCH_SIZE sanity checks
+ - ipv6: Use global sernum for dst validation with nexthop objects
+ - neigh: send protocol value in neighbor create notification
+ - net: bridge: vlan: Add a schedule point during VLAN processing
+ - [arm64,armhf] net: dsa: Do not leave DSA master with NULL netdev_ops
+ - [arm64,armhf] net: dsa: Do not make user port errors fatal
+ - [arm64,riscv64] net: macb: fix an issue about leak related system
+ resources
+ - net: macsec: preserve ingress frame ordering
+ - net/mlx4_core: Fix use of ENOSPC around mlx4_counter_alloc()
+ - net: phy: marvell10g: fix temperature sensor on 2110
+ - net_sched: sch_skbprio: add message validation to skbprio_change()
+ - net: stricter validation of untrusted gso packets
+ - net: usb: qmi_wwan: add support for DW5816e
+ - nfp: abm: fix a memory leak bug
+ - sch_choke: avoid potential panic in choke_reset()
+ - sch_sfq: validate silly quantum values
+ - tipc: fix partial topology connection closure
+ - tunnel: Propagate ECT(1) when decapsulating as recommended by RFC6040
+ - bnxt_en: Fix VF anti-spoof filter setup.
+ - bnxt_en: Reduce BNXT_MSIX_VEC_MAX value to supported CQs per PF.
+ - bnxt_en: Improve AER slot reset.
+ - bnxt_en: Return error when allocating zero size context memory.
+ - bnxt_en: Fix VLAN acceleration handling in bnxt_fix_features().
+ - net/mlx5: DR, On creation set CQ's arm_db member to right value
+ - net/mlx5: Fix forced completion access non initialized command entry
+ - net/mlx5: Fix command entry leak in Internal Error State
+ - net/mlx5e: Fix q counters on uplink representors
+ - [arm64,armhf] net: mvpp2: prevent buffer overflow in mvpp22_rss_ctx()
+ - [arm64,armhf] net: mvpp2: cls: Prevent buffer overflow in
+ mvpp2_ethtool_cls_rule_del()
+ - wireguard: queueing: cleanup ptr_ring in error path of packet_queue_init
+ - wireguard: receive: use tunnel helpers for decapsulating ECN markings
+ - wireguard: socket: remove errant restriction on looping to self
+ - wireguard: send/receive: cond_resched() when processing worker
+ ringbuffers
+ - HID: wacom: Read HID_DG_CONTACTMAX directly for non-generic devices
+ - sctp: Fix bundling of SHUTDOWN with COOKIE-ACK
+ - Revert "HID: wacom: generic: read the number of expected touches on a
+ per collection basis"
+ - HID: usbhid: Fix race between usbhid_close() and usbhid_stop()
+ - HID: wacom: Report 2nd-gen Intuos Pro S center button status over BT
+ - USB: uas: add quirk for LaCie 2Big Quadra
+ - [arm64,armhf] usb: chipidea: msm: Ensure proper controller reset using
+ role switch API
+ - USB: serial: garmin_gps: add sanity checking for data length
+ - tracing/boottime: Fix kprobe event API usage
+ - tracing/kprobes: Reject new event if loc is NULL
+ - tracing: Wait for preempt irq delay thread to finish
+ - tracing: Add a vmalloc_sync_mappings() for safe measure
+ - crypto: arch/lib - limit simd usage to 4k chunks
+ - [s390x] KVM: Remove false WARN_ON_ONCE for the PQAP instruction
+ - [x86] KVM: VMX: Explicitly clear RFLAGS.CF and RFLAGS.ZF in VM-Exit RSB
+ path
+ - [arm64,armhf] KVM: vgic: Fix limit condition when writing to
+ GICD_I[CS]ACTIVER
+ - [arm64] KVM: Fix 32bit PC wrap-around
+ - [arm64] hugetlb: avoid potential NULL dereference
+ - driver core: platform: Initialize dma_parms for platform devices
+ - [arm*] amba: Initialize dma_parms for amba devices
+ - [x86] mei: me: disable mei interface on LBG servers.
+ - ipc/mqueue.c: change __do_notify() to bypass check_kill_permission()
+ - epoll: atomically remove wait entry on wake up
+ - eventpoll: fix missing wakeup for ovflist in ep_poll_callback
+ - mm/page_alloc: fix watchdog soft lockups during set_zone_contiguous()
+ - mm: limit boost_watermark on small zones
+ - ceph: fix endianness bug when handling MDS session feature bits
+ - ceph: demote quotarealm lookup warning to a debug message
+ - coredump: fix crash when umh is disabled
+ - [riscv64] set max_pfn to the PFN of the last page
+ - batman-adv: fix batadv_nc_random_weight_tq
+ - batman-adv: Fix refcnt leak in batadv_show_throughput_override
+ - batman-adv: Fix refcnt leak in batadv_store_throughput_override
+ - batman-adv: Fix refcnt leak in batadv_v_ogm_process
+ - [x86] mm/cpa: Flush direct map alias during cpa
+ - [x86] entry/64: Fix unwind hints in register clearing code
+ - [x86] entry/64: Fix unwind hints in kernel exit path
+ - [x86] entry/64: Fix unwind hints in __switch_to_asm()
+ - [x86] entry/64: Fix unwind hints in rewind_stack_do_exit()
+ - [amd64] x86/unwind/orc: Don't skip the first frame for inactive tasks
+ - [amd64] x86/unwind/orc: Prevent unwinding before ORC initialization
+ - [amd64] x86/unwind/orc: Fix error path for bad ORC entry type
+ - [amd64] x86/unwind/orc: Fix premature unwind stoppage due to IRET frames
+ - [x86] KVM: Fixes posted interrupt check for IRQs delivery modes
+ - [x86] arch/x86/kvm/svm/sev.c: change flag passed to GUP fast in
+ sev_pin_memory()
+ - netfilter: nat: never update the UDP checksum when it's 0
+ - netfilter: nf_osf: avoid passing pointer to local var
+ - [x86] kvm: ioapic: Restrict lazy EOI update to edge-triggered interrupts
+ - scripts/decodecode: fix trapping instruction formatting
+ - mm, memcg: fix error return value of mem_cgroup_css_alloc()
+ - bdi: move bdi_dev_name out of line
+ - bdi: add a ->dev_name field to struct backing_dev_info
+ - io_uring: don't use 'fd' for openat/openat2/statx
+ - fsnotify: replace inode pointer with an object id
+ - fanotify: merge duplicate events on parent and child
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.14
+ - [x86] KVM: nVMX: Consolidate nested MTF checks to helper function
+ - [x86] kvm: nVMX: reflect MTF VM-exits if injected by L1
+ - xprtrdma: Clean up the post_send path
+ - xprtrdma: Fix trace point use-after-free race
+ - [x86] drm/i915/tgl: Add Wa_14010477008:tgl
+ - [x86] drm/i915/tgl: TBT AUX should use TC power well ops
+ - [x86] drm/i915/display: Load DP_TP_CTL/STATUS offset before use it
+ - shmem: fix possible deadlocks on shmlock_user_lock
+ - net: phy: microchip_t1: add lan87xx_phy_init to initialize the lan87xx
+ phy.
+ - [arm64,armhf] KVM: vgic: Synchronize the whole guest on
+ GIC{D,R}_I{S,C}ACTIVER read
+ - [arm64,armhf] KVM: vgic-v2: Only use the virtual state when userspace
+ accesses pending bits
+ - gpio: pca953x: Fix pca953x_gpio_set_config
+ - SUNRPC: Add "@len" parameter to gss_unwrap()
+ - SUNRPC: Fix GSS privacy computation of auth->au_ralign
+ - [x86] hv_netvsc: Fix netvsc_start_xmit's return type
+ - drop_monitor: work around gcc-10 stringop-overflow warning
+ - virtio-blk: handle block_device_operations callbacks after hot unplug
+ - net_sched: fix tcm_parent in tc filter dump
+ - [arm64,armhf] net: stmmac: gmac5+: fix potential integer overflow on 32
+ bit multiply
+ - [amd64] iommu/amd: Fix race in increase_address_space()/fetch_pte()
+ - [amd64] iommu/amd: Update Device Table in increase_address_space()
+ - mmc: sdhci-acpi: Add SDHCI_QUIRK2_BROKEN_64_BIT_DMA for AMDI0040
+ - [arm64] dpaa2-eth: properly handle buffer size restrictions
+ - mptcp: set correct vfs info for subflows
+ - net: fix a potential recursive NETDEV_FEAT_CHANGE
+ - netlabel: cope with NULL catmap (CVE-2020-10711)
+ - net: phy: fix aneg restart in phy_ethtool_set_eee
+ - [arm64] net: stmmac: fix num_por initialization
+ - pppoe: only process PADT targeted at local interfaces
+ - Revert "ipv6: add mtu lock check in __ip6_rt_update_pmtu"
+ - tcp: fix error recovery in tcp_zerocopy_receive()
+ - tcp: fix SO_RCVLOWAT hangs with fat skbs
+ - virtio_net: fix lockdep warning on 32 bit
+ - [arm64] dpaa2-eth: prevent array underflow in update_cls_rule()
+ - hinic: fix a bug of ndo_stop
+ - net: ipv4: really enforce backoff for redirects
+ - netprio_cgroup: Fix unlimited memory leak of v2 cgroups
+ - net: tcp: fix rx timestamp behavior for tcp_recvmsg
+ - nfp: abm: fix error return code in nfp_abm_vnic_alloc()
+ - r8169: re-establish support for RTL8401 chip version
+ - umh: fix memory leak on execve failure
+ - [arm64] net: broadcom: Select BROADCOM_PHY for BCMGENET
+ - [i386] dmaengine: pch_dma.c: Avoid data race between probe and irq
+ handler
+ - [x86] cpufreq: intel_pstate: Only mention the BIOS disabling turbo mode
+ once
+ - ALSA: hda/hdmi: fix race in monitor detection during probe
+ - drm/qxl: lost qxl_bo_kunmap_atomic_page in qxl_image_init_helper()
+ - fibmap: Warn and return an error in case of block > INT_MAX
+ - io_uring: use cond_resched() in io_ring_ctx_wait_and_kill()
+ - io_uring: check non-sync defer_list carefully
+ - ipc/util.c: sysvipc_find_ipc() incorrectly updates position index
+ - ALSA: hda/realtek - Fix S3 pop noise on Dell Wyse
+ - gfs2: Another gfs2_walk_metadata fix
+ - mmc: sdhci-pci-gli: Fix no irq handler from suspend
+ - [amd64] IB/hfi1: Fix another case where pq is left on waitlist
+ - ACPI: EC: PM: Avoid premature returns from acpi_s2idle_wake()
+ - [x86] pinctrl: sunrisepoint: Fix PAD lock register offset for SPT-H
+ - [x86] pinctrl: baytrail: Enable pin configuration setting for GPIO chip
+ - [arm64] pinctrl: qcom: fix wrong write in update_dual_edge
+ - [x86] pinctrl: cherryview: Add missing spinlock usage in
+ chv_gpio_irq_handler
+ - [arm64,armhf] drm/tegra: Fix SMMU support on Tegra124 and Tegra210
+ - bpf: Fix error return code in map_lookup_and_delete_elem()
+ - ALSA: firewire-lib: fix 'function sizeof not defined' error of
+ tracepoints format
+ - cachefiles: Fix corruption of the return value in
+ cachefiles_read_or_alloc_pages()
+ - i40iw: Fix error handling in i40iw_manage_arp_cache()
+ - [x86] drm/i915/gt: Make timeslicing an explicit engine property
+ - [x86] drm/i915: Don't enable WaIncreaseLatencyIPCEnabled when IPC is
+ disabled
+ - bpf, sockmap: msg_pop_data can incorrecty set an sge length
+ - bpf, sockmap: bpf_tcp_ingress needs to subtract bytes from sg.size
+ - [x86] drm/i915/gem: Remove object_is_locked assertion from
+ unpin_from_display_plane
+ - mmc: sdhci-pci-gli: Fix can not access GL9750 after reboot from Windows
+ 10
+ - mmc: core: Check request type before completing the request
+ - mmc: core: Fix recursive locking issue in CQE recovery path
+ - mmc: block: Fix request completion in the CQE timeout path
+ - gfs2: More gfs2_find_jhead fixes
+ - fork: prevent accidental access to clone3 features
+ - drm/amdgpu: force fbdev into vram
+ - NFS: Fix fscache super_cookie index_key from changing after umount
+ - NFS: Fix fscache super_cookie allocation
+ - NFSv4: Fix fscache cookie aux_data to ensure change_attr is included
+ - hwmon: (drivetemp) Fix SCT support if SCT data tables are not supported
+ - netfilter: conntrack: avoid gcc-10 zero-length-bounds warning
+ - [x86] drm/i915/gvt: Fix kernel oops for 3-level ppgtt guest
+ - [arm64] fix the flush_icache_range arguments in machine_kexec
+ - netfilter: conntrack: fix infinite loop on rmmod
+ - [x86] drm/i915: Mark concurrent submissions with a weak-dependency
+ - nfs: fix NULL deference in nfs4_get_valid_delegation
+ - SUNRPC: Signalled ASYNC tasks need to exit
+ - tracing: Wait for preempt irq delay thread to execute
+ - netfilter: flowtable: set NF_FLOW_TEARDOWN flag on entry expiration
+ - netfilter: nft_set_rbtree: Add missing expired checks
+ - RDMA/rxe: Always return ERR_PTR from rxe_create_mmap_info()
+ - IB/mlx4: Test return value of calls to ib_get_cached_pkey
+ - IB/core: Fix potential NULL pointer dereference in pkey cache
+ - RDMA/core: Fix double put of resource
+ - RDMA/iw_cxgb4: Fix incorrect function parameters
+ - [x86] ftrace: Have ftrace trampolines turn read-only at the end of
+ system boot up
+ - [x86] drm/i915: Handle idling during i915_gem_evict_something busy loops
+ - mm, memcg: fix inconsistent oom event behavior
+ - epoll: call final ep_events_available() check under the lock
+ - bpf: Fix bug in mmap() implementation for BPF array map
+ - NFSv3: fix rpc receive buffer size for MOUNT call
+ - pnp: Use list_for_each_entry() instead of open coding
+ - net/rds: Use ERR_PTR for rds_message_alloc_sgs()
+ - Stop the ad-hoc games with -Wno-maybe-initialized
+ - gcc-10: disable 'zero-length-bounds' warning for now
+ - gcc-10: disable 'array-bounds' warning for now
+ - gcc-10: disable 'stringop-overflow' warning for now
+ - gcc-10: disable 'restrict' warning for now
+ - gcc-10 warnings: fix low-hanging fruit
+ - gcc-10: mark more functions __init to avoid section mismatch warnings
+ - gcc-10: avoid shadowing standard library 'free()' in crypto
+ - bootconfig: Fix to remove bootconfig data from initrd while boot
+ - bootconfig: Fix to prevent warning message if no bootconfig option
+ - usb: usbfs: correct kernel->user page attribute mismatch
+ - USB: usbfs: fix mmap dma mismatch
+ - ALSA: hda/realtek - Limit int mic boost for Thinkpad T530
+ - ALSA: hda/realtek - Add COEF workaround for ASUS ZenBook UX431DA
+ - ALSA: rawmidi: Fix racy buffer resize under concurrent accesses
+ - ALSA: usb-audio: Add control message quirk delay for Kingston HyperX
+ headset
+ - usb: core: hub: limit HUB_QUIRK_DISABLE_AUTOSUSPEND to USB5534B
+ - [arm64,armhf,riscv64] usb: host: xhci-plat: keep runtime active when
+ removing host
+ - USB: gadget: fix illegal array access in binding with UDC
+ (CVE-2020-13143)
+ - usb: xhci: Fix NULL pointer dereference when enqueuing trbs from urb sg
+ list
+ - [x86] Make the "Reducing compressed framebufer size" message be
+ DRM_INFO_ONCE()
+ - [armhf] dts: imx6dl-yapp4: Fix Ursa board Ethernet connection
+ - drm/amd/amdgpu: add raven1 part to the gfxoff quirk list
+ - [x86] drm/i915/tgl+: Fix interrupt handling for DP AUX transactions
+ - [powerpc*] vdso32: Fallback on getres syscall when clock is unknown
+ - cifs: fix leaked reference on requeued write
+ - [x86] KVM: Fix pkru save/restore when guest CR4.PKE=0, move it to x86.c
+ - [x86] Fix early boot crash on gcc-10, third try
+ - [amd64] x86/unwind/orc: Fix error handling in __unwind_start()
+ - exec: Move would_dump into flush_old_exec
+ - [arm64,armhf] clk: rockchip: fix incorrect configuration of rk3228
+ aclk_gpu* clocks
+ - [arm64,armhf] dwc3: Remove check for HWO flag in
+ dwc3_gadget_ep_reclaim_trb_sg()
+ - fanotify: fix merging marks masks with FAN_ONDIR
+ - [arm64] dts: meson-g12b-ugoos-am6: fix usb vbus-supply
+ - Revert "ALSA: hda/realtek: Fix pop noise on ALC225"
+ - [armhf] clk: ti: clkctrl: Fix Bad of_node_put within clkctrl_get_name
+ - clk: Unlink clock if failed to prepare or enable
+ - [arm64] dts: rockchip: Replace RK805 PMIC node name with "pmic" on
+ rk3328 boards
+ - dt-bindings: dma: fsl-edma: fix ls1028a-edma compatible
+ - SUNRPC: Revert 241b1f419f0e ("SUNRPC: Remove xdr_buf_trim()")
+ - bpf: Fix sk_psock refcnt leak when receiving message
+ - RDMA/uverbs: Do not discard the IB_EVENT_DEVICE_FATAL event
+ - RDMA/uverbs: Move IB_EVENT_DEVICE_FATAL to destroy_uobj
+ - [x86] KVM: Fix off-by-one error in kvm_vcpu_ioctl_x86_setup_mce
+ - bpf: Enforce returning 0 for fentry/fexit progs
+ - bpf: Restrict bpf_trace_printk()'s %s usage and add %pks, %pus specifier
+ - Makefile: disallow data races on gcc-10 as well
+
+ [ Ben Hutchings ]
+ * linux-libc-dev: Re-add "Provides: linux-kernel-headers" as several
+ source packages still have this in Build-Depends
+
+ [ Luca Boccassi ]
+ * [cloud] Enable INFINIBAND configs for HyperV/Azure (Closes: #958300)
+
+ [ Bastian Blank ]
+ * [cloud] Re-enable some FB drivers.
+
+ [ Romain Perier ]
+ * Enable support for fsverity
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.6.10-rt5 and re-enable
+ * Bump ABI to 2.
+ * xfs: add agf freeblocks verify in xfs_agf_verify (CVE-2020-12655)
+
+ [ Domenico Andreoli ]
+ * [arm64] udeb: Add armada_37xx_wdt to kernel-image (Closes: #961086)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 23 May 2020 16:29:21 +0200
+
+linux (5.6.7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.5
+ - perf tools: Support Python 3.8+ in Makefile (Closes: #958165)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.6
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.7
+
+ [ Ben Hutchings ]
+ * [armhf,arm64] lockdown: Update arm Secure Boot patch for 5.6
+ (fixes FTBFS)
+ * Use debhelper compatibility level 12:
+ - Build-Depend on debhelper-compat and remove debian/compat
+ - hyperv-daemons: Use dh_installsystemd instead of
+ dh_systemd_{enable,start}
+ - hyperv-daemons: Add "Pre-Depends: ${misc:Pre-Depends}"
+ * debian/README.source: Refer to upload checklist in kernel-team.git
+ * [armel] Disable NETLABEL, since SECURITY_SELINUX is also disabled
+ * Drop linux-headers-<ver>-all and linux-headers-<ver>-all-<arch> packages,
+ which are no longer needed
+ * linux-libc-dev: Drop "Provides: linux-kernel-headers" which is no longer
+ needed
+ * [s390x] mm: fix page table upgrade vs 2ndary address mode accesses
+ (CVE-2020-11884)
+ * Set ABI to 1
+
+ [ Romain Perier ]
+ * Rebased patch firmware-remove-redundant-log-messages-from-drivers.patch
+ onto 5.6.7.
+
+ [ Philip Rinn ]
+ * [arm64] Enable CRYPTO_DEV_SUN8I_CE (closes: #958037)
+ * [arm64] Enable SUN8I_THERMAL
+
+ [ Roberto Bampi ]
+ * [arm64] Enable ARMADA_37XX_WATCHDOG as module
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable SENSORS_PWM_FAN as a module.
+
+ [ Paul Tagliamonte ]
+ * Enable CONFIG_NETLABEL (Closes: #958804)
+
+ -- Ben Hutchings <benh@debian.org> Wed, 29 Apr 2020 04:46:47 +0100
+
+linux (5.6.4-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_5.6
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.1
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.2
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.3
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.6.4
+
+ [ Ben Hutchings ]
+ * Set ABI to trunk
+ * [mips*] Revert "staging: octeon-usb: delete the octeon usb host controller
+ driver"
+ * [mips*] Revert "staging: octeon: delete driver"
+ * [powerpc*] i2c: Enable I2C_PARPORT instead of I2C_PARPORT_LIGHT
+ * aufs: Update support patchset to aufs5.x-rcN 20200302; no functional
+ change
+ * linux-signed-*: Build-Depend on kernel-wedge 2.102 for consistency
+ * aufs: Update support patchset to aufs5.6 20200413; no functional change
+ * [rt] Update to 5.6.4-rt3 and re-enable
+
+ [ Aurelien Jarno ]
+ * Enable SENSORS_DRIVETEMP
+ * [riscv64] Enable SOC_VIRT
+ * [riscv64] Enable GPIOLIB, GPIO_SIFIVE, POWER_RESET, POWER_RESET_GPIO,
+ POWER_RESET_GPIO_RESTART, POWER_RESET_RESTART, CONFIG_PWM,
+ CONFIG_PWM_SIFIVE, CONFIG_SIFIVE_L2
+
+ [ Christian Barcenas ]
+ * linux-kbuild: Stop building conmakehash
+ * linux-cpupower: Add libcap to Build-Depends and turbostat linker flags
+ * [x86] Drop EFI cold boot mitigation patch in favor of upstream
+ * [amd64] Update "x86: Make x32 syscall support conditional ..." for 5.6
+
+ [ Romain Perier ]
+ * [x86] udeb: Add crc32_pclmul to crc-modules
+ * udeb: Add crc32_generic to crc-modules
+
+ [ Luca Boccassi ]
+ * lockdown: set default (with Secure Boot) to LOCKDOWN_INTEGRITY_MAX
+ (Closes: #956197)
+
+ -- Ben Hutchings <benh@debian.org> Fri, 17 Apr 2020 01:26:42 +0100
+
+linux (5.5.17-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.14
+ - mmc: core: Allow host controllers to require R1B for CMD6
+ - mmc: core: Respect MMC_CAP_NEED_RSP_BUSY for erase/trim/discard
+ - mmc: core: Respect MMC_CAP_NEED_RSP_BUSY for eMMC sleep command
+ - [armhf] mmc: sdhci-omap: Fix busy detection by enabling
+ MMC_CAP_NEED_RSP_BUSY
+ - [armhf,arm64] mmc: sdhci-tegra: Fix busy detection by enabling
+ MMC_CAP_NEED_RSP_BUSY
+ - cxgb4: fix throughput drop during Tx backpressure
+ - cxgb4: fix Txq restart check during backpressure
+ - geneve: move debug check after netdev unregister
+ - hsr: fix general protection fault in hsr_addr_is_self()
+ - ipv4: fix a RCU-list lock in inet_dump_fib()
+ - macsec: restrict to ethernet devices
+ - net/bpfilter: fix dprintf usage for /dev/kmsg
+ - net: cbs: Fix software cbs to consider packet sending time
+ - [armhf,arm64] net: dsa: Fix duplicate frames flooded by learning
+ - net: ena: Add PCI shutdown handler to allow safe kexec
+ - [armhf] net: mvneta: Fix the case where the last poll did not process all
+ rx
+ - net/packet: tpacket_rcv: avoid a producer race condition
+ - net: phy: dp83867: w/a for fld detect threshold bootstrapping issue
+ - [armhf,arm64] net: phy: mdio-bcm-unimac: Fix clock handling
+ - net: qmi_wwan: add support for ASKEY WWHC050
+ - net/sched: act_ct: Fix leak of ct zone template on replace
+ - net_sched: cls_route: remove the right filter from hashtable
+ - net_sched: hold rtnl lock in tcindex_partial_destroy_work()
+ - net_sched: keep alloc_hash updated after hash allocation
+ - [armhf,arm64] net: stmmac: dwmac-rk: fix error path in rk_gmac_probe
+ - r8169: re-enable MSI on RTL8168c
+ - slcan: not call free_netdev before rtnl_unlock in slcan_open
+ - tcp: also NULL skb->dev when copy was needed
+ - tcp: ensure skb->dev is NULL before leaving TCP stack
+ - tcp: repair: fix TCP_QUEUE_SEQ implementation
+ - vxlan: check return value of gro_cells_init()
+ - [arm64] Revert "net: bcmgenet: use RGMII loopback for MAC reset"
+ - [arm64] net: bcmgenet: keep MAC in reset until PHY is up
+ - bnxt_en: Fix Priority Bytes and Packets counters in ethtool -S.
+ - bnxt_en: fix memory leaks in bnxt_dcbnl_ieee_getets()
+ - bnxt_en: Return error if bnxt_alloc_ctx_mem() fails.
+ - bnxt_en: Free context memory after disabling PCI in probe error path.
+ - bnxt_en: Reset rings if ring reservation fails during open()
+ - net: ena: fix incorrect setting of the number of msix vectors
+ - net: ena: fix request of incorrect number of IRQ vectors
+ - net: ena: avoid memory access violation by validating req_id properly
+ - net: ena: fix continuous keep-alive resets
+ - net: ip_gre: Separate ERSPAN newlink / changelink callbacks
+ - net: ip_gre: Accept IFLA_INFO_DATA-less configuration
+ - hsr: use rcu_read_lock() in hsr_get_node_{list/status}()
+ - hsr: add restart routine into hsr_get_node_list()
+ - hsr: set .netnsok flag
+ - net/mlx5: DR, Fix postsend actions write length
+ - net/mlx5e: Enhance ICOSQ WQE info fields
+ - net/mlx5e: Fix missing reset of SW metadata in Striding RQ reset
+ - net/mlx5e: Fix ICOSQ recovery flow with Striding RQ
+ - net/mlx5e: Do not recover from a non-fatal syndrome
+ - net/mlx5_core: Set IB capability mask1 to fix ib_srpt connection failure
+ - net/mlx5e: kTLS, Fix TCP seq off-by-1 issue in TX resync flow
+ - net/mlx5e: Fix endianness handling in pedit mask
+ - cgroup-v1: cgroup_pidlist_next should update position index
+ - nfs: add minor version to nfs_server_key for fscache
+ - drivers/of/of_mdio.c:fix of_mdiobus_register()
+ - cgroup1: don't call release_agent when it is ""
+ - veth: ignore peer tx_dropped when counting local rx_dropped
+ - drm/amd/display: update soc bb for nv14
+ - drm/amdgpu: correct ROM_INDEX/DATA offset for VEGA20
+ - [armhf] drm/exynos: Fix cleanup of IOMMU related objects
+ - [x86] iommu/vt-d: Silence RCU-list debugging warnings
+ - scsi: ipr: Fix softlockup when rescanning devices in petitboot
+ - mac80211: Do not send mesh HWMP PREQ if HWMP is disabled
+ - [x86] iommu/vt-d: Fix debugfs register reads
+ - [x86] iommu/vt-d: Populate debugfs if IOMMUs are detected
+ - Input: fix stale timestamp on key autorepeat events
+ - [x86] Input: synaptics - enable RMI on HP Envy 13-ad105ng
+ - Input: avoid BIT() macro usage in the serio.h UAPI header
+ - IB/rdmavt: Free kernel completion queue when done
+ - RDMA/core: Fix missing error check on dev_set_name()
+ - RDMA/odp: Fix leaking the tgid for implicit ODP
+ - gpiolib: Fix irq_disable() semantics
+ - RDMA/nl: Do not permit empty devices names during
+ RDMA_NLDEV_CMD_NEWLINK/SET
+ - RDMA/mad: Do not crash if the rdma device does not have a umad interface
+ - ceph: check POOL_FLAG_FULL/NEARFULL in addition to OSDMAP_FULL/NEARFULL
+ - ceph: fix memory leak in ceph_cleanup_snapid_map()
+ - [x86] KVM: SVM: Issue WBINVD after deactivating an SEV guest
+ - [armhf] dts: dra7: Add bus_dma_limit for L3 bus
+ - [armhf] dts: omap5: Add bus_dma_limit for L3 bus
+ - perf probe: Fix to delete multiple probe event
+ - perf probe: Do not depend on dwfl_module_addrsym()
+ - rtlwifi: rtl8188ee: Fix regression due to commit d1d1a96bdb44
+ - drm/prime: use dma length macro when mapping sg
+ - drm/amdgpu: fix scatter-gather mapping with user pages
+ - drm/radeon: fix scatter-gather mapping with user pages
+ - [armhf] soc: samsung: chipid: Fix return value on non-Exynos platforms
+ - scsi: sd: Fix optimal I/O size for devices that change reported values
+ - nl80211: fix NL80211_ATTR_CHANNEL_WIDTH attribute type
+ - mac80211: drop data frames without key on encrypted links
+ - mac80211: mark station unauthorized before key removal
+ - mm/swapfile.c: move inode_lock out of claim_swapfile
+ - drivers/base/memory.c: indicate all memory blocks as removable
+ - mm/sparse: fix kernel crash with pfn_section_valid check
+ - mm: fork: fix kernel_stack memcg stats for various stack implementations
+ - [x86] gpiolib: acpi: Correct comment for HP x2 10 honor_wakeup quirk
+ - gpiolib: acpi: Rework honor_wakeup option into an ignore_wake option
+ - [x86] gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 BYT +
+ AXP288 model
+ - bpf: Fix cgroup ref leak in cgroup_bpf_inherit on out-of-memory
+ - RDMA/core: Ensure security pkey modify is not lost
+ - afs: Fix handling of an abort from a service handler
+ - genirq: Fix reference leaks on irq affinity notifiers
+ - xfrm: handle NETDEV_UNREGISTER for xfrm device
+ - vti[6]: fix packet tx through bpf_redirect() in XinY cases
+ - RDMA/mlx5: Fix the number of hwcounters of a dynamic counter
+ - RDMA/mlx5: Fix access to wrong pointer while performing flush due to
+ error
+ - RDMA/mlx5: Block delay drop to unprivileged users
+ - xfrm: fix uctx len check in verify_sec_ctx_len
+ - xfrm: add the missing verify_sec_ctx_len check in xfrm_add_acquire
+ - xfrm: policy: Fix doulbe free in xfrm_policy_timer
+ - afs: Fix client call Rx-phase signal handling
+ - afs: Fix some tracing details
+ - afs: Fix unpinned address list during probing
+ - ieee80211: fix HE SPR size calculation
+ - mac80211: set IEEE80211_TX_CTRL_PORT_CTRL_PROTO for nl80211 TX
+ - netfilter: flowtable: reload ip{v6}h in nf_flow_tuple_ip{v6}
+ - netfilter: flowtable: populate addr_type mask
+ - netfilter: nft_fwd_netdev: validate family and chain type
+ - netfilter: nft_fwd_netdev: allow to redirect to ifb via ingress
+ - [i386] bpf, x32: Fix bug with JMP32 JSET BPF_X checking upper bits
+ - bpf: Initialize storage pointers to NULL to prevent freeing garbage
+ pointer
+ - bpf/btf: Fix BTF verification of enum members in struct/union
+ - bpf, sockmap: Remove bucket->lock from sock_{hash|map}_free
+ - [armhf] dts: sun8i-a83t-tbs-a711: Fix USB OTG mode detection
+ - vti6: Fix memory leak of skb if input policy check fails
+ - r8169: fix PHY driver check on platforms w/o module softdeps
+ - [x86] clocksource/drivers/hyper-v: Untangle stimers and timesync from
+ clocksources
+ - bpf: Undo incorrect __reg_bound_offset32 handling
+ - USB: serial: option: add support for ASKEY WWHC050
+ - USB: serial: option: add BroadMobi BM806U
+ - USB: serial: option: add Wistron Neweb D19Q1
+ - USB: cdc-acm: restore capability check order
+ - USB: serial: io_edgeport: fix slab-out-of-bounds read in
+ edge_interrupt_callback
+ - [armhf,arm64] usb: musb: fix crash with highmen PIO and usbmon
+ - media: flexcop-usb: fix endpoint sanity check
+ - media: usbtv: fix control-message timeouts
+ - staging: rtl8188eu: Add ASUS USB-N10 Nano B1 to device table
+ - [x86] staging: wlan-ng: fix ODEBUG bug in prism2sta_disconnect_usb
+ - [x86] staging: wlan-ng: fix use-after-free Read in hfa384x_usbin_callback
+ - [x86] ahci: Add Intel Comet Lake H RAID PCI ID
+ - libfs: fix infoleak in simple_attr_read()
+ - media: ov519: add missing endpoint sanity checks (CVE-2020-11608)
+ - media: dib0700: fix rc endpoint lookup
+ - media: stv06xx: add missing descriptor sanity checks (CVE-2020-11609)
+ - media: xirlink_cit: add missing descriptor sanity checks
+ (CVE-2020-11668)
+ - media: v4l2-core: fix a use-after-free bug of sd->devnode
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.15
+ - bpf: update jmp32 test cases to fix range bound deduction
+ - mac80211: Check port authorization in the ieee80211_tx_dequeue() case
+ - mac80211: fix authentication with iwlwifi/mvm
+ - vt: selection, introduce vc_is_sel
+ - vt: ioctl, switch VT_IS_IN_USE and VT_BUSY to inlines
+ - vt: switch vt_dont_switch to bool
+ - vt: vt_ioctl: remove unnecessary console allocation checks
+ - vt: vt_ioctl: fix VT_DISALLOCATE freeing in-use virtual console
+ - vt: vt_ioctl: fix use-after-free in vt_in_use()
+ - [x86] platform: pmc_atom: Add Lex 2I385SW to critclk_systems DMI table
+ - bpf: Explicitly memset the bpf_attr structure
+ - bpf: Explicitly memset some bpf info structures declared on the stack
+ - iwlwifi: don't send GEO_TX_POWER_LIMIT if no wgds table
+ - [x86] gpiolib: acpi: Add quirk to ignore EC wakeups on HP x2 10 CHT +
+ AXP288 model
+ - [armhf] clk: imx: Align imx sc clock msg structs to 4
+ - [armhf] clk: imx: Align imx sc clock parent msg structs to 4
+ - libceph: fix alloc_msg_with_page_vector() memory leaks
+ - perf map: Fix off by one in strncpy() size argument
+ - [armel,armhf] dts: bcm283x: Fix vc4's firmware bus DMA limitations
+ - [armel] bcm2835-rpi-zero-w: Add missing pinctrl name
+ - [armhf] dts: imx6: phycore-som: fix arm and soc minimum voltage
+ - [armhf] dts: N900: fix onenand timings
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.16
+ - ipv4: fix a RCU-list lock in fib_triestat_seq_show
+ - net, ip_tunnel: fix interface lookup with no key
+ - sctp: fix possibly using a bad saddr with a given dst
+ - sctp: fix refcount bug in sctp_wfree
+ - [arm64,riscv64] net: macb: Fix handling of fixed-link node
+ - nvme-rdma: Avoid double freeing of async event data
+ - drm/amdgpu: add fbdev suspend/resume on gpu reset
+ - [x86] drm/amd/display: Add link_rate quirk for Apple 15" MBP 2017
+ - drm/bochs: downgrade pci_request_region failure from error to warning
+ - initramfs: restore default compression behavior
+ - drm/amdgpu: fix typo for vcn1 idle check
+ - tools/power turbostat: Fix gcc build warnings
+ - tools/power turbostat: Fix missing SYS_LPI counter on some Chromebooks
+ - tools/power turbostat: Fix 32-bit capabilities warning
+ - padata: fix uninitialized return value in padata_replace()
+ - brcmfmac: abort and release host after error
+ - XArray: Fix xa_find_next for large multi-index entries
+ - misc: rtsx: set correct pcr_ops for rts522A
+ - PCI: sysfs: Revert "rescan" file renames
+ - [x86] mei: me: add cedar fork device ids
+ - nvmem: check for NULL reg_read and reg_write before dereferencing
+ - [armhf] extcon: axp288: Add wakeup support
+ - Revert "dm: always call blk_queue_split() in dm_process_bio()"
+ - [x86] ALSA: hda/ca0132 - Add Recon3Di quirk to handle integrated sound on
+ EVGA X99 Classified motherboard
+ - iwlwifi: consider HE capability when setting LDPC
+ - iwlwifi: yoyo: don't add TLV offset when reading FIFOs
+ - iwlwifi: dbg: don't abort if sending DBGC_SUSPEND_RESUME fails
+ - rxrpc: Fix sendmsg(MSG_WAITALL) handling
+ - IB/hfi1: Ensure pq is not left on waitlist
+ - sched: act: count in the size of action flags bitfield
+ - tcp: fix TFO SYNACK undo to avoid double-timestamp-undo
+ - [x86,ia64] watchdog: iTCO_wdt: Export vendorsupport
+ - [x86,ia64] watchdog: iTCO_wdt: Make ICH_RES_IO_SMI optional
+ - i2c: i801: Do not add ICH_RES_IO_SMI for the iTCO_wdt device
+ - net: genetlink: return the error code when attribute parsing fails.
+ - net: Fix Tx hash bound checking
+ - net/smc: fix cleanup for linkgroup setup failures
+ - padata: always acquire cpu_hotplug_lock before pinst->lock
+ - mm: mempolicy: require at least one nodeid for MPOL_PREFERRED
+ (CVE-2020-11565)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.17
+ - cxgb4: fix MPS index overwrite when setting MAC address
+ - ipv6: don't auto-add link-local address to lag ports
+ - [armhf] net: dsa: bcm_sf2: Do not register slave MDIO bus with OF
+ - [armhf] net: dsa: bcm_sf2: Ensure correct sub-node is parsed
+ - net: phy: micrel: kszphy_resume(): add delay after genphy_resume() before
+ accessing PHY registers
+ - net_sched: add a temporary refcnt for struct tcindex_data
+ - net_sched: fix a missing refcnt in tcindex_init()
+ - [armhf,arm64] net: stmmac: dwmac1000: fix out-of-bounds mac address reg
+ setting
+ - slcan: Don't transmit uninitialized stack data in padding
+ - tun: Don't put_page() for all negative return values from XDP program
+ - r8169: change back SG and TSO to be disabled by default
+ - cxgb4: free MQPRIO resources in shutdown path
+ - [s390x] prevent leaking kernel address in BEAR
+ - random: always use batched entropy for get_random_u{32,64}
+ - [armhf,arm64] usb: dwc3: gadget: Wrap around when skip TRBs
+ - slub: improve bit diffusion for freelist ptr obfuscation
+ - ubi: fastmap: Free unused fastmap anchor peb during detach
+ - RDMA/ucma: Put a lock around every call to the rdma_cm layer
+ - RDMA/cma: Teach lockdep about the order of rtnl and lock
+ - RDMA/siw: Fix passive connection establishment
+ - Bluetooth: RFCOMM: fix ODEBUG bug in rfcomm_dev_ioctl
+ - RDMA/cm: Update num_paths in cma_resolve_iboe_route error flow
+ - blk-mq: Keep set->nr_hw_queues and set->map[].nr_queues in sync
+ - fbcon: fix null-ptr-deref in fbcon_switch
+ - driver core: Reevaluate dev->links.need_for_probe as suppliers are added
+ - [x86] iommu/vt-d: Allow devices with RMRRs to use identity domain
+ - ACPI: PM: Add acpi_[un]register_wakeup_handler()
+ - [x86] platform: intel_int0002_vgpio: Use acpi_register_wakeup_handler()
+ - IB/hfi1: Call kobject_put() when kobject_init_and_add() fails
+ - IB/hfi1: Fix memory leaks in sysfs registration and unregistration
+ - IB/mlx5: Replace tunnel mpls capability bits for tunnel_offloads
+ - [armhf] imx: Enable ARM_ERRATA_814220 for i.MX6UL and i.MX7D
+ - [armhf] imx: only select ARM_ERRATA_814220 for ARMv7-A
+ - ceph: remove the extra slashes in the server path
+ - ceph: canonicalize server path in place
+
+ [ Noah Meyerhans ]
+ * Fix autopkgtest failure due to pycodestyle violation
+ * [cloud] Re-enable kernel page merge functionality (Closes: #955366)
+ * [cloud] Apply a number of additional optimizations (Closes: #947759)
+ - Statically link nvme and ext4 drivers with the kernel
+ - [amd64] Re-enable SCHED_MC_PRIO
+ - Switch to LZ4 for compression
+ - Disable a number of additional drivers unlikely to be found in
+ cloud environments
+
+ [ Ben Hutchings ]
+ * drm: Disable DRM_LEGACY (DRI1)
+ * Bump ABI to 2
+ * WireGuard: Update for renaming of skb_reset_tc() to skb_reset_redirect()
+ * lib/fonts: Enable FONTS, FONT_8x8, FONT_8x16, FONT_TER16x32 for most
+ flavours (Closes: #956173)
+ * keys: Enable PERSISTENT_KEYRINGS
+ * mm: Enable DEFERRED_STRUCT_PAGE_INIT (Closes: #954025)
+ * [armel/marvell] mm: Enable COMPACTION (Closes: #949171)
+ * [x86} media/cec: Enable CEC_PLATFORM_DRIVERS; enable VIDEO_SECO_CEC as a
+ module (Closes: #951543)
+ * [x86] sound/soc/intel: Enable SND_SOC_INTEL_BYT_CHT_CX2072X_MACH as module
+ (Closes: #951482)
+
+ [ Sudip Mukherjee ]
+ * Remove libbpf. (See: #948041)
+
+ [ Jason A. Donenfeld ]
+ * Provide wireguard-modules as stop-gap for packages.
+
+ [ Christian Barcenas ]
+ * linux-cpupower: Add libcap to Build-Depends and turbostat linker flags
+
+ [ Joel Johnson ]
+ * [armhf] Build PHY_MVEBU_A38X_COMPHY module (Closes: #951409)
+
+ [ Josua Mayer ]
+ * [arm64] enable support for the Honeycomb arm64 workstation
+ (Closes: #948576)
+
+ -- Ben Hutchings <benh@debian.org> Wed, 15 Apr 2020 03:37:48 +0100
+
+linux (5.5.13-2) unstable; urgency=medium
+
+ * bpf: Undo incorrect __reg_bound_offset32 handling (CVE-2020-8835)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Mon, 30 Mar 2020 23:06:57 +0200
+
+linux (5.5.13-1) unstable; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_5.5
+ (Closes: #953680)
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.1
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.2
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.3
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.4
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.5
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.6
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.7
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.8
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.9
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.10
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.11
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.12
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.5.13
+
+ [ Ben Hutchings ]
+ * aufs: Update support patchset to aufs5.x-rcN 20200120; no functional
+ change
+ * net: Enable NET_SWITCHDEV; disable on armel/marvell (Closes: #949863)
+ * [armhf] net/ethernet/ti: Enable TI_CPSW_SWITCHDEV as module; enable TI_CPTS
+ * wireless: Enable regulatory.db direct loading:
+ - Drop "wireless: Disable regulatory.db direct loading"
+ - linux-image: Add Breaks: relation with old wireless-regdb versions
+ - Regenerate my wireless-regdb certificate with expected attributes
+ * [x86] Drop "Add a SysRq option to lift kernel lockdown" (Closes: #947021)
+ - This patch allowed remotely disabling lockdown using usbip
+ - Lockdown can be disabled by running "mokutil --disable-validation",
+ rebooting, and confirming the change when prompted
+ * Set PYTHON=python3 for document build (fixes FTBFS)
+ * [x86,arm64] Move linux-headers metapackages to src:linux-signed-*.
+ This should ensure that src:linux and src:linux-signed-* transition to
+ testing together.
+ * debian/bin/gencontrol_signed.py: Generate valid versions in a linux binNMU
+ * udeb: Drop zlib-modules packages, as zlib_deflate is now always built-in
+ (fixes FTBFS on several architectures)
+ * [mips*/octeon] Fix and re-enable the Octeon Ethernet driver
+ * [mips*] Fix FTBFS:
+ - Increase RELOCATION_TABLE_SIZE to 0x160000
+ - Fix exception handler memcpy()
+ * debian/config: Delete redundant arch/flavour-specific "debug-info: true"
+ * linux-source: Suggest qtbase5-dev instead of the removed libqt4-dev
+ (Closes: #953386)
+ * Add WireGuard driver and required crypto changes from 5.6-rc7 and
+ cryptodev-2.6, thanks to Jason A. Donenfeld (Closes: #953569)
+ * drivers/net: Enable WIREGUARD as module
+ * debian/control: Use my debian.org email in Uploaders field
+ * debian/certs: Rename Romain Perier's certificate to match email address
+ * security/integrity/platform_certs: Rebase db-mok-keyring patch set for
+ 5.5.9
+ * [x86] Enable X86_UMIP (previously configured as X86_INTEL_UMIP)
+ * Set ABI to 1
+ * [amd64] Enable Intel GVT-g (except cloud-amd64) (Closes: #954088):
+ - vfio: Enable VFIO_MDEV, VFIO_MDEV_DEVICE as modules
+ - i915: Enable DRM_I915_GVT; enable DRM_I915_GVT_KVMGT as module
+ * drivers/net/wireless: Enable MT76x0E as module (Closes: #953683)
+ * bcmgenet: Backport ACPI support, supporting Raspberry Pi 4
+ (Closes: #950578)
+
+ [ Aurelien Jarno ]
+ * [riscv64] Enable SECCOMP.
+
+ [ Romain Perier ]
+ * [arm64] Enable BCMGENET
+ * [arm64] Fix CONFIG_INFINIBAND_HNS_HIP06 and CONFIG_INFINIBAND_HNS_HIP08
+ from tristate to boolean
+ * debian/certs: Add my own certificate for wireless-regdb
+ * debian/patches/debian/wireless-add-debian-wireless-regdb-certificates.patch:
+ Add the hexdump of my certificate to this patch, so the kernel can
+ directly load the regulatory db and trust it if have I signed it.
+
+ [ Noah Meyerhans ]
+ * [arm64] Enable KVM_ARM_HOST and KVM_ARM_PMU
+ * [arm64] Enable CONFIG_ARM64_ERRATUM_1418040
+ * [arm64/cloud-arm64] Introduce cloud build flavour
+ * [cloud] random: Enable RANDOM_TRUST_BOOTLOADER
+
+ [ Mark Pearson ]
+ * [amd64] ASoC: Enable SND_SOC_SOF_COMETLAKE_LP_SUPPORT,
+ SND_SOC_SOF_COMETLAKE_H_SUPPORT
+
+ [ Christian Barcenas ]
+ * lockdown: honor LOCK_DOWN_IN_EFI_SECURE_BOOT=n (Closes: #945604)
+
+ [ Salvatore Bonaccorso ]
+ * libcpupower: Lower back soname version to 1 and add new
+ cpufreq_{get,put}_boost_frequencies methods
+
+ [ Joel Stanley ]
+ * [armhf] Enable ASPEED AST2600 SoC family. This includes all ASPEED symbols
+ for the AST2600 and FTGMAC100, the network device used by this SoC. The
+ SoC has 5 UARTs so CONFIG_SERIAL_8250_NR_UARTS is bumped to 5 from 4
+ in order to correctly register UART5, the boot console.
+
+ [ Petr Stastny ]
+ * [x86] i2c: Enable I2C_AMD_MP2 as module (Closes: #955004)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Add patch from next-20200325 to enable device-tree for
+ Pinebook Pro.
+
+ -- Ben Hutchings <benh@debian.org> Mon, 30 Mar 2020 03:03:47 +0100
+
+linux (5.5~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Romain Perier ]
+ * [rt] Disable until it is updated for 5.5 or later
+ * [mips*] Remove obsolete patch
+ MIPS-Loongson-3-Add-Loongson-LS3A-RS780E-1-way-machi.patch
+ * Retrieve the new aufs5 patches from the upstream tree, with an update in
+ aufs5-standalone.patch (see its header).
+ * Refreshed patches:
+ - debian/dfsg/vs6624-disable.patch
+ - bugfix/all/firmware_class-log-every-success-and-failure.patch
+ - bugfix/all/
+ radeon-amdgpu-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
+ - bugfix/all/disable-some-marvell-phys.patch
+ - features/all/
+ security-perf-allow-further-restriction-of-perf_event_open.patch
+ - features/x86/x86-make-x32-syscall-support-conditional.patch
+ - bugfix/all/fs-add-module_softdep-declarations-for-hard-coded-cr.patch
+ - features/all/lockdown/
+ efi-add-an-efi_secure_boot-flag-to-indicate-secure-b.patch
+
+ [ Ben Hutchings ]
+ * udeb: Add f2fs-modules package
+ * linux-kbuild: Stop building pnmtologo
+ * linux-kbuild: Add new file to Makefile for kconfig
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 06 Jan 2020 04:26:45 +0000
+
+linux (5.4.19-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.14
+ - [arm64,armhf] soc: amlogic: meson-ee-pwrc: propagate PD provider
+ registration errors
+ - [arm64,armhf] soc: amlogic: meson-ee-pwrc: propagate errors from
+ pm_genpd_init()
+ - [armhf] bus: ti-sysc: Fix iterating over clocks
+ - clk: Don't try to enable critical clocks if prepare failed
+ - [armhf] ASoC: stm32: sai: fix possible circular locking
+ - [armhf] ASoC: stm32: dfsdm: fix 16 bits record
+ - [armhf] OMAP2+: Fix ti_sysc_find_one_clockdomain to check for
+ to_clk_hw_omap
+ - [armhf] dts: imx6q-dhcom: Fix SGTL5000 VDDIO regulator connection
+ - [x86] ASoC: Intel: bytcht_es8316: Fix Irbis NB41 netbook quirk
+ - ALSA: dice: fix fallback from protocol extension into limited
+ functionality
+ - ALSA: seq: Fix racy access for queue timer in proc read
+ - ALSA: firewire-tascam: fix corruption due to spin lock without
+ restoration in SoftIRQ context
+ - ALSA: usb-audio: fix sync-ep altsetting sanity check
+ - [arm64] dts: allwinner: a64: olinuxino: Fix SDIO supply regulator
+ - [arm64] dts: allwinner: a64: olinuxino: Fix eMMC supply regulator
+ - [armhf] clk: sunxi-ng: r40: Allow setting parent rate for external clock
+ outputs
+ - block: fix an integer overflow in logical block size
+ - fuse: fix fuse_send_readpages() in the syncronous read case
+ - io_uring: only allow submit from owning task
+ - [armhf] dts: am571x-idk: Fix gpios property to have the correct gpio
+ number
+ - [armel] davinci: select CONFIG_RESET_CONTROLLER
+ - perf: Correctly handle failed perf_get_aux_event()
+ - iio: buffer: align the size of scan bytes to size of the largest element
+ - USB: serial: simple: Add Motorola Solutions TETRA MTP3xxx and MTP85xx
+ - USB: serial: option: Add support for Quectel RM500Q
+ - USB: serial: opticon: fix control-message timeouts
+ - USB: serial: option: add support for Quectel RM500Q in QDL mode
+ - USB: serial: suppress driver bind attributes
+ - USB: serial: ch341: handle unbound port at reset_resume
+ - USB: serial: io_edgeport: handle unbound ports on URB completion
+ - USB: serial: io_edgeport: add missing active-port sanity check
+ - USB: serial: keyspan: handle unbound ports
+ - USB: serial: quatech2: handle unbound ports
+ - [x86] staging: comedi: ni_routes: fix null dereference in
+ ni_find_route_source()
+ - [x86] staging: comedi: ni_routes: allow partial routing information
+ - [x86] scsi: fnic: fix invalid stack access
+ - scsi: mptfusion: Fix double fetch bug in ioctl
+ - ptrace: reintroduce usage of subjective credentials in ptrace_has_cap()
+ - [armhf] mtd: rawnand: gpmi: Fix suspend/resume problem
+ - [armhf] mtd: rawnand: gpmi: Restore nfc timing setup after
+ suspend/resume
+ - usb: core: hub: Improved device recognition on remote wakeup
+ - cpu/SMT: Fix x86 link error without CONFIG_SYSFS
+ - [x86] CPU/AMD: Ensure clearing of SME/SEV features is maintained
+ - locking/rwsem: Fix kernel crash when spinning on RWSEM_OWNER_UNKNOWN
+ - [x86] perf/x86/intel/uncore: Fix missing marker for
+ snr_uncore_imc_freerunning_events
+ - [amd64] x86/efistub: Disable paging at mixed mode entry
+ - [s390x] zcrypt: Fix CCA cipher key gen with clear key value function
+ - [x86] scsi: storvsc: Correctly set number of hardware queues for IDE
+ disk
+ - mtd: spi-nor: Fix selection of 4-byte addressing opcodes on Spansion
+ - [x86] efi/earlycon: Fix write-combine mapping on x86
+ - [s390x] setup: Fix secure ipl message
+ - [armhf] clk: samsung: exynos5420: Keep top G3D clocks enabled
+ - perf hists: Fix variable name's inconsistency in hists__for_each() macro
+ - locking/lockdep: Fix buffer overrun problem in stack_trace[]
+ - perf report: Fix incorrectly added dimensions as switch perf data file
+ - mm/shmem.c: thp, shmem: fix conflict of above-47bit hint address and PMD
+ alignment
+ - mm/huge_memory.c: thp: fix conflict of above-47bit hint address and PMD
+ alignment
+ - mm: memcg/slab: fix percpu slab vmstats flushing
+ - mm: memcg/slab: call flush_memcg_workqueue() only if memcg workqueue is
+ valid
+ - mm, debug_pagealloc: don't rely on static keys too early
+ - btrfs: rework arguments of btrfs_unlink_subvol
+ - btrfs: fix invalid removal of root ref
+ - btrfs: do not delete mismatched root refs
+ - btrfs: relocation: fix reloc_root lifespan and access
+ - btrfs: fix memory leak in qgroup accounting
+ - btrfs: check rw_devices, not num_devices for balance
+ - Btrfs: always copy scrub arguments back to user space
+ - mm/memory_hotplug: don't free usage map when removing a re-added early
+ section
+ - mm/page-writeback.c: avoid potential division by zero in
+ wb_min_max_ratio()
+ - mm: khugepaged: add trace status description for SCAN_PAGE_HAS_PRIVATE
+ - [armhf] dts: imx6sx-sdb: Remove incorrect power supply assignment
+ - [armhf] dts: imx6sl-evk: Remove incorrect power supply assignment
+ - [armhf] dts: imx6sll-evk: Remove incorrect power supply assignment
+ - [armhf] dts: imx6q-icore-mipi: Use 1.5 version of i.Core MX6DL
+ - [arm64,armhf] net: stmmac: 16KB buffer must be 16 byte aligned
+ - [arm64,armhf] net: stmmac: Enable 16KB buffer size
+ - [arm*] reset: Fix {of,devm}_reset_control_array_get kerneldoc return
+ types
+ - tipc: fix potential hanging after b/rcast changing
+ - tipc: fix retrans failure due to wrong destination
+ - block: Fix the type of 'sts' in bsg_queue_rq()
+ - bpf: Fix incorrect verifier simulation of ARSH under ALU32
+ - bpf: Sockmap/tls, during free we may call tcp_bpf_unhash() in loop
+ - bpf: Sockmap, ensure sock lock held during tear down
+ - bpf: Sockmap/tls, push write_space updates through ulp updates
+ - bpf: Sockmap, skmsg helper overestimates push, pull, and pop bounds
+ - bpf: Sockmap/tls, msg_push_data may leave end mark in place
+ - bpf: Sockmap/tls, tls_sw can create a plaintext buf > encrypt buf
+ - bpf: Sockmap/tls, skmsg can have wrapped skmsg that needs extra chaining
+ - bpf: Sockmap/tls, fix pop data with SK_DROP return code
+ - [arm64,armhf] i2c: tegra: Fix suspending in active runtime PM state
+ - [arm64,armhf] i2c: tegra: Properly disable runtime PM on driver's probe
+ error
+ - cfg80211: fix deadlocks in autodisconnect work
+ - cfg80211: fix memory leak in nl80211_probe_mesh_link
+ - cfg80211: fix memory leak in cfg80211_cqm_rssi_update
+ - cfg80211: fix page refcount issue in A-MSDU decap
+ - bpf/sockmap: Read psock ingress_msg before sk_receive_queue
+ - netfilter: fix a use-after-free in mtype_destroy()
+ - netfilter: arp_tables: init netns pointer in xt_tgdtor_param struct
+ - netfilter: nat: fix ICMP header corruption on ICMP errors
+ - netfilter: nft_tunnel: fix null-attribute check
+ - netfilter: nft_tunnel: ERSPAN_VERSION must not be null
+ - netfilter: nf_tables: remove WARN and add NLA_STRING upper limits
+ - netfilter: nf_tables: store transaction list locally while requesting
+ module
+ - netfilter: nf_tables: fix flowtable list del corruption
+ - NFC: pn533: fix bulk-message timeout
+ - net: bpf: Don't leak time wait and request sockets
+ - bpftool: Fix printing incorrect pointer in btf_dump_ptr
+ - batman-adv: Fix DAT candidate selection on little endian systems
+ - macvlan: use skb_reset_mac_header() in macvlan_queue_xmit()
+ - [x86] hv_netvsc: Fix memory leak when removing rndis device
+ - net: avoid updating qdisc_xmit_lock_key in netdev_update_lockdep_key()
+ - [arm64] net: hns3: pad the short frame before sending to the hardware
+ - [arm64] net: hns: fix soft lockup when there is not enough memory
+ - net: phy: dp83867: Set FORCE_LINK_GOOD to default after reset
+ - net/sched: act_ife: initalize ife->metalist earlier
+ - net: usb: lan78xx: limit size of local TSO packets
+ - ptp: free ptp device pin descriptors properly
+ - r8152: add missing endpoint sanity check
+ - tcp: fix marked lost packets not being retransmitted
+ - bnxt_en: Fix NTUPLE firmware command failures.
+ - bnxt_en: Fix ipv6 RFS filter matching logic.
+ - bnxt_en: Do not treat DSN (Digital Serial Number) read failure as fatal.
+ - net: sched: act_ctinfo: fix memory leak
+ - [armhf] net: dsa: bcm_sf2: Configure IMP port for 2Gb/sec
+ - i40e: prevent memory leak in i40e_setup_macvlans (CVE-2019-19043)
+ - drm/amdgpu: allow direct upload save restore list for raven2
+ - [arm64,armhf] net: stmmac: tc: Do not setup flower filtering if RSS is
+ enabled
+ - devlink: Wait longer before warning about unset port type
+ - xen/blkfront: Adjust indentation in xlvbd_alloc_gendisk
+ - tcp: refine rule to allow EPOLLOUT generation under mem pressure
+ - [arm64] dts: meson-gxl-s905x-khadas-vim: fix gpio-keys-polled node
+ - cfg80211: check for set_wiphy_params
+ - tick/sched: Annotate lockless access to last_jiffies_update
+ - [armhf] dts: imx6ul-kontron-n6310-s: Disable the snvs-poweroff driver
+ - mtd: cfi_cmdset_0002: only check errors when ready in
+ cfi_check_err_status()
+ - mtd: cfi_cmdset_0002: fix delayed error detection on HyperFlash
+ - reiserfs: fix handling of -EOPNOTSUPP in reiserfs_for_each_xattr
+ - scsi: esas2r: unlock on error in esas2r_nvram_read_direct()
+ - [arm64] scsi: hisi_sas: Don't create debugfs dump folder twice
+ - [arm64] scsi: hisi_sas: Set the BIST init value before enabling BIST
+ - scsi: qla4xxx: fix double free bug
+ - scsi: bnx2i: fix potential use after free
+ - scsi: target: core: Fix a pr_debug() argument
+ - scsi: lpfc: fix: Coverity: lpfc_get_scsi_buf_s3(): Null pointer
+ dereferences
+ - [arm64] scsi: hisi_sas: Return directly if init hardware failed
+ - scsi: scsi_transport_sas: Fix memory leak when removing devices
+ - scsi: qla2xxx: Fix qla2x00_request_irqs() for MSI
+ - scsi: qla2xxx: fix rports not being mark as lost in sync fabric scan
+ - scsi: core: scsi_trace: Use get_unaligned_be*()
+ - scsi: lpfc: Fix list corruption detected in lpfc_put_sgl_per_hdwq
+ - scsi: lpfc: Fix hdwq sgl locks and irq handling
+ - scsi: lpfc: Fix a kernel warning triggered by lpfc_get_sgl_per_hdwq()
+ - rtw88: fix potential read outside array boundary
+ - perf probe: Fix wrong address verification
+ - perf script: Allow --time with --reltime
+ - perf script: Fix --reltime with --time
+ - scsi: lpfc: use hdwq assigned cpu for allocation
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.15
+ - [x86] drm/i915: Fix pid leak with banned clients
+ - libbpf: Fix compatibility for kernels without need_wakeup
+ - libbpf: Fix memory leak/double free issue
+ - libbpf: Fix potential overflow issue
+ - libbpf: Fix another potential overflow issue in bpf_prog_linfo
+ - libbpf: Make btf__resolve_size logic always check size error condition
+ - bpf: Force .BTF section start to zero when dumping from vmlinux
+ - [armhf] OMAP2+: Add missing put_device() call in omapdss_init_of()
+ - xfs: Sanity check flags of Q_XQUOTARM call
+ - [armhf] i2c: stm32f7: rework slave_id allocation
+ - [armhf] i2c: i2c-stm32f7: fix 10-bits check in slave free id search loop
+ - [x86] mfd: intel-lpss: Add default I2C device properties for Gemini Lake
+ - SUNRPC: Fix svcauth_gss_proxy_init()
+ - SUNRPC: Fix backchannel latency metrics
+ - [powerpc*] security: Fix debugfs data leak on 32-bit
+ - [powerpc*] pseries: Enable support for ibm,drc-info property
+ - tipc: reduce sensitive to retransmit failures
+ - tipc: update mon's self addr when node addr generated
+ - tipc: fix potential memory leak in __tipc_sendmsg()
+ - tipc: fix wrong socket reference counter after tipc_sk_timeout() returns
+ - tipc: fix wrong timeout input for tipc_wait_for_cond()
+ - [arm64,armhf] net/mlx5e: Fix free peer_flow when refcount is 0
+ - net: phy: broadcom: Fix RGMII delays configuration for BCM54210E
+ - [armhf] phy: ti: gmii-sel: fix mac tx internal delay for rgmii-rxid
+ - mt7601u: fix bbp version check in mt7601u_wait_bbp_ready
+ - ice: fix stack leakage
+ - [s390x] pkey: fix memory leak within _copy_apqns_from_user()
+ - nfsd: depend on CRYPTO_MD5 for legacy client tracking
+ - [armhf] crypto: sun4i-ss - fix big endian issues
+ - perf map: No need to adjust the long name of modules
+ - [arm64,armhf] soc/tegra: pmc: Fix crashes for hierarchical interrupts
+ - watchdog: sprd: Fix the incorrect pointer getting from driver data
+ - ipmi: Fix memory leak in __ipmi_bmc_register (CVE-2019-19046)
+ - sched/core: Further clarify sched_class::set_next_task()
+ - gpiolib: No need to call gpiochip_remove_pin_ranges() twice
+ - rtw88: fix beaconing mode rsvd_page memory violation issue
+ - rtw88: fix error handling when setup efuse info
+ - [arm64,armhf] drm/panfrost: Add missing check for pfdev->regulator
+ - drm/amdgpu: remove excess function parameter description
+ - [armhf] hwrng: omap3-rom - Fix missing clock by probing with device tree
+ - [arm64,armhf] drm/rockchip: Round up _before_ giving to the clock
+ framework
+ - software node: Get reference to parent swnode in get_parent op
+ - [arm64] net: netsec: Correct dma sync for XDP_TX frames
+ - ACPI: platform: Unregister stale platform devices
+ - [arm64,armhf] pwm: sun4i: Fix incorrect calculation of duty_cycle/period
+ - libbpf: Don't use kernel-side u32 type in xsk.c
+ - scsi: ufs: delete redundant function ufshcd_def_desc_sizes()
+ - net: openvswitch: don't unlock mutex when changing the user_features
+ fails
+ - [x86] hv_netvsc: flag software created hash value
+ - rt2800: remove errornous duplicate condition
+ - net: neigh: use long type to store jiffies delta
+ - packet: fix data-race in fanout_flow_is_huge()
+ - [armhf] i2c: stm32f7: report dma error during probe
+ - [arm64] tee: optee: Fix dynamic shm pool allocations
+ - [arm64] tee: optee: fix device enumeration error handling
+ - workqueue: Add RCU annotation for pwq list walk
+ - SUNRPC: Fix another issue with MIC buffer space
+ - sched/cpufreq: Move the cfs_rq_util_change() call to
+ cpufreq_update_util()
+ - mt76: mt76u: rely on usb_interface instead of usb_dev
+ - dma-direct: don't check swiotlb=force in dma_direct_map_resource
+ - afs: Remove set but not used variables 'before', 'after'
+ - [armhf] dmaengine: ti: edma: fix missed failure handling
+ - drm/radeon: fix bad DMA from INTERRUPT_CNTL2
+ - xdp: Fix cleanup on map free for devmap_hash map type
+ - block: fix memleak of bio integrity data
+ - [s390x] qeth: fix dangling IO buffers after halt/clear
+ - net-sysfs: Call dev_hold always in netdev_queue_add_kobject
+ - [arm64,armhf] phy/rockchip: inno-hdmi: round clock rate down to closest
+ 1000 Hz
+ - [arm64] optee: Fix multi page dynamic shm pool alloc
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.16
+ - can, slip: Protect tty->disc_data in write_wakeup and close with RCU
+ - firestream: fix memory leaks
+ - gtp: make sure only SOCK_DGRAM UDP sockets are accepted
+ - ipv6: sr: remove SKB_GSO_IPXIP6 on End.D* actions
+ - net: cxgb3_main: Add CAP_NET_ADMIN check to CHELSIO_GET_MEM
+ - net: ip6_gre: fix moving ip6gre between namespaces
+ - net, ip6_tunnel: fix namespaces move
+ - net, ip_tunnel: fix namespaces move
+ - net: rtnetlink: validate IFLA_MTU attribute in rtnl_create_link()
+ - net_sched: fix datalen for ematch
+ - net_sched: use validated TCA_KIND attribute in tc_new_tfilter()
+ - net-sysfs: Fix reference count leak
+ - net: usb: lan78xx: Add .ndo_features_check
+ - Revert "udp: do rmem bulk free even if the rx sk queue is empty"
+ - tcp_bbr: improve arithmetic division in bbr_update_bw()
+ - tcp: do not leave dangling pointers in tp->highest_sack
+ - tun: add mutex_unlock() call and napi.skb clearing in tun_get_user()
+ - airo: Fix possible info leak in AIROOLDIOCTL/SIOCDEVPRIVATE
+ - airo: Add missing CAP_NET_ADMIN check in AIROOLDIOCTL/SIOCDEVPRIVATE
+ - fou: Fix IPv6 netlink policy
+ - net: Fix packet reordering caused by GRO and listified RX cooperation
+ - [arm64,armhf] net/mlx5: Fix lowest FDB pool size
+ - [arm64,armhf] net/mlx5: Update the list of the PCI supported devices
+ - [arm64,armhf] net/mlx5: DR, Enable counter on non-fwd-dest objects
+ - [arm64,armhf] net/mlx5: E-Switch, Prevent ingress rate configuration of
+ uplink rep
+ - [arm64,armhf] net/mlx5: DR, use non preemptible call to get the current
+ cpu number
+ - ipv4: Detect rollover in specific fib table dump
+ - Revert "io_uring: only allow submit from owning task"
+ - afs: Fix characters allowed into cell names
+ - hwmon: (adt7475) Make volt2reg return same reg as reg2volt input
+ - hwmon: (core) Do not use device managed functions for memory allocations
+ - ceph: hold extra reference to r_parent over life of request
+ - PCI: Mark AMD Navi14 GPU rev 0xc5 ATS as broken
+ - [arm64,armhf] drm/panfrost: Add the panfrost_gem_mapping concept
+ - [x86] drm/i915: Align engine->uabi_class/instance with i915_drm.h
+ - PM: hibernate: fix crashes with init_on_free=1
+ - tracing: trigger: Replace unneeded RCU-list traversals
+ - tracing/uprobe: Fix double perf_event linking on multiprobe uprobe
+ - tracing: Do not set trace clock if tracefs lockdown is in effect
+ - tracing: Fix histogram code when expression has same var as value
+ - [powerpc*] xive: Discard ESB load value when interrupt is invalid
+ - Revert "iwlwifi: mvm: fix scan config command size"
+ - iwlwifi: mvm: don't send the IWL_MVM_RXQ_NSSN_SYNC notif to Rx queues
+ - XArray: Fix infinite loop with entry at ULONG_MAX
+ - XArray: Fix xa_find_after with multi-index entries
+ - XArray: Fix xas_find returning too many entries
+ - [x86] pinctrl: sunrisepoint: Add missing Interrupt Status register
+ offset
+ - [amd64] iommu/vt-d: Call __dmar_remove_one_dev_info with valid pointer
+ - Input: keyspan-remote - fix control-message timeouts
+ - [x86] Revert "Input: synaptics-rmi4 - don't increment rmiaddr for SMBus
+ transfers"
+ - [arm64,armhf] mmc: tegra: fix SDR50 tuning override
+ - mmc: sdhci: fix minimum clock rate for v3 controller
+ - Input: sur40 - fix interface sanity checks
+ - Input: gtco - fix endpoint sanity check
+ - Input: aiptek - fix endpoint sanity check
+ - Input: pegasus_notetaker - fix endpoint sanity check
+ - Input: sun4i-ts - add a check for devm_thermal_zone_of_sensor_register
+ - netfilter: nft_osf: add missing check for DREG attribute
+ - [amd64] iommu/amd: Fix IOMMU perf counter clobbering during init
+ - readdir: make user_access_begin() use the real access range
+ - leds: gpio: Fix uninitialized gpio label for fwnode based probe
+ - hwmon: (nct7802) Fix voltage limits to wrong registers
+ - hwmon: (nct7802) Fix non-working alarm on voltages
+ - scsi: RDMA/isert: Fix a recently introduced regression related to logout
+ - tracing: xen: Ordered comparison of function pointers
+ - iwlwifi: mvm: fix SKB leak on invalid queue
+ - iwlwifi: mvm: fix potential SKB leak on TXQ TX
+ - [x86] drm/i915/userptr: fix size calculation
+ - xfrm: support output_mark for offload ESP packets
+ - net, sk_msg: Don't check if sock is locked when tearing down psock
+ - do_last(): fetch directory ->i_mode and ->i_uid before it's too late
+ (CVE-2020-8428)
+ - readdir: be more conservative with directory entry names
+ - libertas: Fix two buffer overflows at parsing bss descriptor
+ (CVE-2019-14896 CVE-2019-14897)
+ - media: v4l2-ioctl.c: zero reserved fields for S/TRY_FMT
+ - netfilter: ipset: use bitmap infrastructure completely
+ - netfilter: nf_tables: add __nft_chain_type_get()
+ - netfilter: nf_tables: autoload modules from the abort path
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.17
+ - Bluetooth: btusb: fix non-atomic allocation in completion handler
+ - orinoco_usb: fix interface sanity check
+ - rsi_91x_usb: fix interface sanity check
+ - usb: dwc3: pci: add ID for the Intel Comet Lake -V variant
+ - [arm64,armhf] usb: host: xhci-tegra: set MODULE_FIRMWARE for tegra186
+ - USB: serial: ir-usb: add missing endpoint sanity check
+ - USB: serial: ir-usb: fix link-speed handling
+ - USB: serial: ir-usb: fix IrLAP framing
+ - [arm64,armhf] usb: dwc3: turn off VBUS when leaving host mode
+ - [x86] usb: typec: fusb302: fix "op-sink-microwatt" default that was in
+ mW
+ - [x86] staging: vt6656: correct packet types for CTS protect, mode.
+ - [x86] staging: vt6656: use NULLFUCTION stack on mac80211
+ - [x86] staging: vt6656: Fix false Tx excessive retries reporting.
+ - [arm64,armel] serial: 8250_bcm2835aux: Fix line mismatch on driver
+ unbind
+ - [armhf] serial: imx: fix a race condition in receive path
+ - debugfs: Return -EPERM when locked down
+ - component: do not dereference opaque pointer in debugfs
+ - [arm*] binder: fix log spam for existing debugfs file creation.
+ - [x86] mei: me: add comet point (lake) H device ids
+ - crypto: chelsio - fix writing tfm flags to wrong place
+ - CIFS: Fix task struct use-after-free on reconnect
+ - cifs: set correct max-buffer-size for smb2_ioctl_init()
+ - cifs: Fix memory allocation in __smb2_handle_cancelled_cmd()
+ - ath9k: fix storage endpoint lookup
+ - brcmfmac: fix interface sanity check
+ - rtl8xxxu: fix interface sanity check
+ - zd1211rw: fix storage endpoint lookup
+ - net_sched: ematch: reject invalid TCF_EM_SIMPLE
+ - net_sched: fix ops->bind_class() implementations
+ - net_sched: walk through all child classes in tc_bind_tclass()
+ - [arm64] net: socionext: fix possible user-after-free in
+ netsec_process_rx
+ - [arm64] net: socionext: fix xdp_result initialization in
+ netsec_process_rx
+ - udp: segment looped gso packets correctly
+ - net: include struct nhmsg size in nh nlmsg size
+ - rxrpc: Fix use-after-free in rxrpc_receive_data()
+ - HID: multitouch: Add LG MELF0410 I2C touchscreen support
+ - HID: Add quirk for Xin-Mo Dual Controller
+ - HID: ite: Add USB id match for Acer SW5-012 keyboard dock
+ - HID: asus: Ignore Asus vendor-page usage-code 0xff events
+ - HID: Add quirk for incorrect input length on Lenovo Y720
+ - HID: intel-ish-hid: ipc: add CMP device id
+ - HID: wacom: Recognize new MobileStudio Pro PID
+ - [x86] ASoC: SOF: fix fault at driver unload after failed probe
+ - [x86] ASoC: SOF: Intel: hda: hda-dai: fix oops on hda_link .hw_free
+ - drivers/hid/hid-multitouch.c: fix a possible null pointer access.
+ - phy: qcom-qmp: Increase PHY ready timeout
+ - [x86] ASoC: topology: Prevent use-after-free in
+ snd_soc_get_pcm_runtime()
+ - HID: intel-ish-hid: ipc: Add Tiger Lake PCI device ID
+ - [arm64] watchdog: max77620_wdt: fix potential build errors
+ - [armel,armhf] watchdog: orion: fix platform_get_irq() complaints
+ - drivers/net/b44: Change to non-atomic bit operations on pwol_mask
+ - [i386] net: wan: sdla: Fix cast from pointer to integer of different
+ size
+ - [arm64] gpio: max77620: Add missing dependency on GPIOLIB_IRQCHIP
+ - [arm64] iommu/dma: fix variable 'cookie' set but not used
+ - [arm64,armhf] stmmac: debugfs entry name is not be changed when udev
+ rename device name.
+ - atm: eni: fix uninitialized variable warning
+ - HID: steam: Fix input device disappearing
+ - [x86] ASoC: Intel: cht_bsw_rt5645: Add quirk for boards using
+ pmc_plt_clk_0
+ - drm/amdgpu/SRIOV: add navi12 pci id for SRIOV (v2)
+ - libbpf: Fix BTF-defined map's __type macro handling of arrays
+ - [x86] platform/x86: dell-laptop: disable kbd backlight on Inspiron 10xx
+ - PCI: Add DMA alias quirk for Intel VCA NTB
+ - media: dvbsky: add support for eyeTV Geniatech T2 lite
+ - [armhf] bus: ti-sysc: Handle mstandby quirk and use it for musb
+ - [armhf] bus: ti-sysc: Use swsup quirks also for am335x musb
+ - [amd64,armhf] spi: pxa2xx: Add support for Intel Comet Lake-H
+ - [amd64] iommu/amd: Support multiple PCI DMA aliases in device table
+ - [amd64] iommu/amd: Support multiple PCI DMA aliases in IRQ Remapping
+ - perf/imx_ddr: Add enhanced AXI ID filter support
+ - [x86] mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs
+ - mmc: sdhci-pci: Quirk for AMD SDHC Device 0x7906
+ - mmc: sdhci-pci: Add support for Intel JSL
+ - [armhf] bus: ti-sysc: Add module enable quirk for audio AESS
+ - usb-storage: Disable UAS on JMicron SATA enclosure
+ - ALSA: hda/realtek - Move some alc236 pintbls to fallback table
+ - Bluetooth: Allow combination of BDADDR_PROPERTY and INVALID_BDADDR
+ quirks
+ - Bluetooth: btbcm: Use the BDADDR_PROPERTY quirk
+ - [armhf] bus: ti-sysc: Fix missing force mstandby quirk handling
+ - rsi: fix use-after-free on failed probe and unbind
+ - rsi: fix use-after-free on probe errors
+ - rsi: fix memory leak on failed URB submission
+ - rsi: fix non-atomic allocation in completion handler
+ - crypto: af_alg - Use bh_lock_sock in sk_destruct
+ - [powerpc*] crypto: vmx - reject xts inputs that are too short
+ - crypto: pcrypt - Fix user-after-free on module unload
+ - [arm64] KVM: Write arch.mdcr_el2 changes since last vcpu_load on VHE
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.18
+ - vfs: fix do_last() regression
+ - cifs: fix soft mounts hanging in the reconnect code
+ - e1000e: Drop unnecessary __E1000_DOWN bit twiddling
+ - e1000e: Revert "e1000e: Make watchdog use delayed work"
+ - gfs2: Another gfs2_find_jhead fix
+ - perf c2c: Fix return type for histogram sorting comparision functions
+ - PM / devfreq: Add new name attribute for sysfs
+ - mm/mempolicy.c: fix out of bounds write in mpol_parse_str()
+ - reiserfs: Fix memory leak of journal device string
+ - media: digitv: don't continue if remote control state can't be read
+ - media: af9005: uninitialized variable printked
+ - media: vp7045: do not read uninitialized values if usb transfer fails
+ - media: gspca: zero usb_buf
+ - media: dvb-usb/dvb-usb-urb.c: initialize actlen to 0
+ - tomoyo: Use atomic_t for statistics counter
+ - ttyprintk: fix a potential deadlock in interrupt context issue
+ - Bluetooth: Fix race condition in hci_release_sock()
+ - cgroup: Prevent double killing of css when enabling threaded cgroup
+ - [armhf] clk: sunxi-ng: v3s: Fix incorrect number of hw_clks.
+ - [arm64] dts: meson-sm1-sei610: add gpio bluetooth interrupt
+ - [armhf] dts: sun8i: a83t: Correct USB3503 GPIOs polarity
+ - [armhf] dts: am57xx-beagle-x15/am57xx-idk: Remove "gpios" for endpoint
+ dt nodes
+ - rseq: Unregister rseq for clone CLONE_VM
+ - [arm64,armhf] clk: sunxi-ng: sun8i-r: Fix divider on APB0 clock
+ - [arm64] clk: sunxi-ng: h6-r: Fix AR100/R_APB2 parent order
+ - mac80211: mesh: restrict airtime metric to peered established plinks
+ - [armhf] clk: mmp2: Fix the order of timer mux parents
+ - ASoC: rt5640: Fix NULL dereference on module unload
+ - [s390x] zcrypt: move ap device reset from bus to driver code
+ - i40e: Fix virtchnl_queue_select bitmap validation
+ - ixgbevf: Remove limit of 10 entries for unicast filter list
+ - ixgbe: Fix calculation of queue with VFs and flow director on interface
+ flap
+ - igb: Fix SGMII SFP module discovery for 100FX/LX.
+ - iavf: remove current MAC address filter on VF reset
+ - [x86] platform/x86: GPD pocket fan: Allow somewhat lower/higher
+ temperature limits
+ - [x86] platform/x86: intel_pmc_core: update Comet Lake platform driver
+ - [x86] ASoC: SOF: Intel: fix HDA codec driver probe with multiple
+ controllers
+ - [x86] ASoC: hdac_hda: Fix error in driver removal after failed probe
+ - qmi_wwan: Add support for Quectel RM500Q
+ - [hppa/parisc] Use proper printk format for resource_size_t
+ - wireless: fix enabling channel 12 for custom regulatory domain
+ - cfg80211: Fix radar event during another phy CAC
+ - mac80211: Fix TKIP replay protection immediately after key setup
+ - [x86] perf/x86/intel/uncore: Add PCI ID of IMC for Xeon E3 V5 Family
+ - [x86] perf/x86/intel/uncore: Remove PCIe3 unit for SNR
+ - XArray: Fix xas_pause at ULONG_MAX
+ - iwlwifi: pcie: allocate smaller dev_cmd for TX headers
+ - iwlwifi: Don't ignore the cap field upon mcc update
+ - iwlwifi: dbg: force stop the debug monitor HW
+ - Input: evdev - convert kzalloc()/vzalloc() to kvzalloc()
+ - vti[6]: fix packet tx through bpf_redirect()
+ - xfrm interface: fix packet tx through bpf_redirect()
+ - xfrm: interface: do not confirm neighbor when do pmtu update
+ - [x86] scsi: fnic: do not queue commands during fwreset
+ - [armhf] 8955/1: virt: Relax arch timer version check during early boot
+ - r8152: get default setting of WOL before initializing
+ - r8152: disable U2P3 for RTL8153B
+ - r8152: Disable PLA MCU clock speed down
+ - r8152: disable test IO for RTL8153B
+ - r8152: avoid the MCU to clear the lanwake
+ - r8152: disable DelayPhyPwrChg
+ - qlcnic: Fix CPU soft lockup while collecting firmware dump
+ - seq_tab_next() should increase position index
+ - l2t_seq_next should increase position index
+ - netfilter: conntrack: sctp: use distinct states for new SCTP connections
+ - netfilter: nf_tables_offload: fix check the chain offload flag
+ - net: Fix skb->csum update in inet_proto_csum_replace16().
+ - btrfs: do not zero f_bavail if we have available space
+ - flow_dissector: Fix to use new variables for port ranges in bpf hook
+ - dm thin: fix use-after-free in metadata_pre_commit_callback
+ - perf report: Fix no libunwind compiled warning break s390 issue
+ - mm/migrate.c: also overwrite error when it is bigger than zero
+ - [x86] ASoC: topology: fix soc_tplg_fe_link_create() - link->dobj
+ initialization order
+ - Revert "rsi: fix potential null dereference in rsi_probe()"
+ - tracing/uprobe: Fix to make trace_uprobe_filter alignment safe
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.19
+ - bnxt_en: Move devlink_register before registering netdev
+ - gtp: use __GFP_NOWARN to avoid memalloc warning
+ - l2tp: Allow duplicate session creation with UDP
+ - net_sched: fix an OOB access in cls_tcindex
+ - [arm64,armhf] net: stmmac: Delete txtimer in suspend()
+ - bnxt_en: Fix TC queue mapping.
+ - rxrpc: Fix use-after-free in rxrpc_put_local()
+ - rxrpc: Fix insufficient receive notification generation
+ - rxrpc: Fix missing active use pinning of rxrpc_local object
+ - rxrpc: Fix NULL pointer deref due to call->conn being cleared on
+ disconnect
+ - tcp: clear tp->total_retrans in tcp_disconnect()
+ - tcp: clear tp->delivered in tcp_disconnect()
+ - tcp: clear tp->data_segs{in|out} in tcp_disconnect()
+ - tcp: clear tp->segs_{in|out} in tcp_disconnect()
+ - bnxt_en: Fix logic that disables Bus Master during firmware reset.
+ - media: uvcvideo: Avoid cyclic entity chains due to malformed USB
+ descriptors
+ - netfilter: ipset: fix suspicious RCU usage in find_set_and_id
+ - ipc/msg.c: consolidate all xxxctl_down() functions
+ - tracing/kprobes: Have uname use __get_str() in print_fmt
+ - tracing: Fix sched switch start/stop refcount racy updates
+ - rcu: Use *_ONCE() to protect lockless ->expmask accesses
+ - rcu: Avoid data-race in rcu_gp_fqs_check_wake()
+ - srcu: Apply *_ONCE() to ->srcu_last_gp_end
+ - rcu: Use READ_ONCE() for ->expmask in rcu_read_unlock_special()
+ - nvmet: Fix error print message at nvmet_install_queue function
+ - nvmet: Fix controller use after free
+ - Bluetooth: btusb: fix memory leak on fw
+ - Bluetooth: btusb: Disable runtime suspend on Realtek devices
+ - brcmfmac: Fix memory leak in brcmf_usbdev_qinit
+ - [arm64,armhf] usb: dwc3: gadget: Check END_TRANSFER completion
+ - [arm64,armhf] usb: dwc3: gadget: Delay starting transfer
+ - usb: gadget: f_fs: set req->num_sgs as 0 for non-sg transfer
+ - usb: gadget: legacy: set max_speed to super-speed
+ - usb: gadget: f_ncm: Use atomic_t to track in-flight request
+ - usb: gadget: f_ecm: Use atomic_t to track in-flight request
+ - ALSA: usb-audio: Fix endianess in descriptor validation
+ - ALSA: usb-audio: Annotate endianess in Scarlett gen2 quirk
+ - ALSA: dummy: Fix PCM format loop in proc output
+ - memcg: fix a crash in wb_workfn when a device disappears
+ - mm/sparse.c: reset section's mem_map when fully deactivated
+ - mmc: sdhci-pci: Make function amd_sdhci_reset static
+ - utimes: Clamp the timestamps in notify_change()
+ - mm/memory_hotplug: fix remove_memory() lockdep splat
+ - mm: thp: don't need care deferred split queue in memcg charge move path
+ - mm: move_pages: report the number of non-attempted pages
+ - media/v4l2-core: set pages dirty upon releasing DMA buffers
+ - media: v4l2-core: compat: ignore native command codes
+ - media: v4l2-rect.h: fix v4l2_rect_map_inside() top/left adjustments
+ - irqdomain: Fix a memory leak in irq_domain_push_irq()
+ - [x86] cpu: Update cached HLE state on write to TSX_CTRL_CPUID_CLEAR
+ - ALSA: hda: Apply aligned MMIO access only conditionally
+ - ALSA: hda: Add Clevo W65_67SB the power_save blacklist
+ - ALSA: hda: Add JasperLake PCI ID and codec vid
+ - [arm64] acpi: fix DAIF manipulation with pNMI
+ - [arm64] KVM: Correct PSTATE on exception entry
+ - [arm64,armhf] KVM: Correct CPSR on exception entry
+ - [arm64,armhf] KVM: Correct AArch32 SPSR on exception entry
+ - [arm64] KVM: Only sign-extend MMIO up to register width
+ - [s390x] mm: fix dynamic pagetable upgrade for hugetlbfs
+ - [powerpc*] xmon: don't access ASDR in VMs
+ - [powerpc*] pseries: Advance pfn if section is not present in
+ lmb_is_removable()
+ - tracing: Fix now invalid var_ref_vals assumption in trace action
+ - [arm64,armhf] PCI: tegra: Fix return value check of
+ pm_runtime_get_sync()
+ - mmc: spi: Toggle SPI polarity, do not hardcode it
+ - [x86] ACPI: video: Do not export a non working backlight interface on
+ MSI MS-7721 boards
+ - ACPI / battery: Deal with design or full capacity being reported as -1
+ - ACPI / battery: Use design-cap for capacity calculations if full-cap is
+ not available
+ - ACPI / battery: Deal better with neither design nor full capacity not
+ being reported
+ - alarmtimer: Unregister wakeup source when module get fails
+ - fscrypt: don't print name of busy file when removing key
+ - ubifs: don't trigger assertion on invalid no-key filename
+ - ubifs: Fix wrong memory allocation
+ - ubifs: Fix FS_IOC_SETFLAGS unexpectedly clearing encrypt flag
+ - ubifs: Fix deadlock in concurrent bulk-read and writepage
+ - [x86] ASoC: SOF: core: free trace on errors
+ - [x86] hv_balloon: Balloon up according to request page number
+ - mfd: axp20x: Mark AXP20X_VBUS_IPSOUT_MGMT as volatile
+ - nvmem: core: fix memory abort in cleanup path
+ - crypto: api - Check spawn->alg under lock in crypto_drop_spawn
+ - padata: Remove broken queue flushing
+ - fs: allow deduplication of eof block into the end of the destination
+ file
+ - erofs: fix out-of-bound read for shifted uncompressed block
+ - scsi: megaraid_sas: Do not initiate OCR if controller is not in ready
+ state
+ - scsi: qla2xxx: Fix mtcp dump collection failure
+ - cpupower: Revert library ABI changes from commit ae2917093fb60bdc1ed3e
+ - [arm64,armhf] power: supply: axp20x_ac_power: Fix reporting online
+ status
+ - ovl: fix wrong WARN_ON() in ovl_cache_update_ino()
+ - ovl: fix lseek overflow on 32bit
+ - f2fs: choose hardlimit when softlimit is larger than hardlimit in
+ f2fs_statfs_project()
+ - f2fs: fix miscounted block limit in f2fs_statfs_project()
+ - f2fs: code cleanup for f2fs_statfs_project()
+ - f2fs: fix dcache lookup of !casefolded directories
+ - f2fs: fix race conditions in ->d_compare() and ->d_hash()
+ - PM: core: Fix handling of devices deleted during system-wide resume
+ - cpufreq: Avoid creating excessively large stack frames
+ - [armel,armhf] dma-api: fix max_pfn off-by-one error in __dma_supported()
+ - dm zoned: support zone sizes smaller than 128MiB
+ - dm space map common: fix to ensure new block isn't already in use
+ - dm writecache: fix incorrect flush sequence when doing SSD mode commit
+ - dm crypt: fix GFP flags passed to skcipher_request_alloc()
+ - dm crypt: fix benbi IV constructor crash if used in authenticated mode
+ - dm thin metadata: use pool locking at end of dm_pool_metadata_close
+ - dm: fix potential for q->make_request_fn NULL pointer
+ - scsi: qla2xxx: Fix stuck login session using prli_pend_timer
+ - [x86] ASoC: SOF: Introduce state machine for FW boot
+ - [x86] ASoC: SOF: core: release resources on errors in probe_continue
+ - tracing: Annotate ftrace_graph_hash pointer with __rcu
+ - tracing: Annotate ftrace_graph_notrace_hash pointer with __rcu
+ - ftrace: Add comment to why rcu_dereference_sched() is open coded
+ - ftrace: Protect ftrace_graph_hash with ftrace_sync
+ - crypto: pcrypt - Avoid deadlock by using per-instance padata queues
+ - btrfs: fix improper setting of scanned for range cyclic write cache
+ pages
+ - btrfs: Handle another split brain scenario with metadata uuid feature
+ - [riscv64] bpf: Fix broken BPF tail calls
+ - bpf, devmap: Pass lockdep expression to RCU lists
+ - libbpf: Fix realloc usage in bpf_core_find_cands
+ - crypto: api - fix unexpectedly getting generic implementation
+ - [arm64] crypto: hisilicon - Use the offset fields in sqe to avoid need
+ to split scatterlists
+ - [x86] crypto: ccp - set max RSA modulus size for v3 platform devices as
+ well
+ - [arm64] crypto: arm64/ghash-neon - bump priority to 150
+ - crypto: pcrypt - Do not clear MAY_SLEEP flag in original request
+ - crypto: api - Fix race condition in crypto_spawn_alg
+ - [powerpc*] futex: Fix incorrect user access blocking
+ - scsi: qla2xxx: Fix unbound NVME response length
+ - NFS: Fix memory leaks and corruption in readdir
+ - NFS: Directory page cache pages need to be locked when read
+ - nfsd: fix filecache lookup
+ - jbd2_seq_info_next should increase position index
+ - ext4: fix deadlock allocating crypto bounce page from mempool
+ - ext4: fix race conditions in ->d_compare() and ->d_hash()
+ - Btrfs: fix missing hole after hole punching and fsync when using
+ NO_HOLES
+ - Btrfs: make deduplication with range including the last block work
+ - Btrfs: fix infinite loop during fsync after rename operations
+ - btrfs: set trans->drity in btrfs_commit_transaction
+ - btrfs: drop log root for dropped roots
+ - Btrfs: fix race between adding and putting tree mod seq elements and
+ nodes
+ - btrfs: flush write bio if we loop in extent_write_cache_pages
+ - btrfs: Correctly handle empty trees in find_first_clear_extent_bit
+ - [armhf] tegra: Enable PLLP bypass during Tegra124 LP1
+ - iwlwifi: don't throw error when trying to remove IGTK
+ - mwifiex: fix unbalanced locking in mwifiex_process_country_ie()
+ - sunrpc: expiry_time should be seconds not timeval
+ - gfs2: fix gfs2_find_jhead that returns uninitialized jhead with seq 0
+ - gfs2: move setting current->backing_dev_info
+ - gfs2: fix O_SYNC write handling
+ - drm/rect: Avoid division by zero
+ - media: iguanair: fix endpoint sanity check
+ - media: rc: ensure lirc is initialized before registering input device
+ - xen/balloon: Support xend-based toolstack take two
+ - watchdog: fix UAF in reboot notifier handling in watchdog core code
+ - bcache: add readahead cache policy options via sysfs interface
+ - eventfd: track eventfd_signal() recursion depth
+ - aio: prevent potential eventfd recursion on poll
+ - [x86] KVM: Refactor picdev_write() to prevent Spectre-v1/L1TF attacks
+ - [x86] KVM: Refactor prefix decoding to prevent Spectre-v1/L1TF attacks
+ - [x86] KVM: Protect pmu_intel.c from Spectre-v1/L1TF attacks
+ - [x86] KVM: Protect DR-based index computations from Spectre-v1/L1TF
+ attacks
+ - [x86] KVM: Protect kvm_lapic_reg_write() from Spectre-v1/L1TF attacks
+ - [x86] KVM: Protect kvm_hv_msr_[get|set]_crash_data() from
+ Spectre-v1/L1TF attacks
+ - [x86] KVM: Protect ioapic_write_indirect() from Spectre-v1/L1TF attacks
+ - [x86] KVM: Protect MSR-based index computations in pmu.h from
+ Spectre-v1/L1TF attacks
+ - [x86] KVM: Protect ioapic_read_indirect() from Spectre-v1/L1TF attacks
+ - [x86] KVM: Protect MSR-based index computations from Spectre-v1/L1TF
+ attacks in x86.c
+ - [x86] KVM: Protect x86_decode_insn from Spectre-v1/L1TF attacks
+ - [x86] KVM: Protect MSR-based index computations in
+ fixed_msr_to_seg_unit() from Spectre-v1/L1TF attacks
+ - [x86] KVM: Fix potential put_fpu() w/o load_fpu() on MPX platform
+ - [powerpc*] KVM: PPC: Book3S HV: Uninit vCPU if vcore creation fails
+ - [powerpc*] KVM: PPC: Book3S PR: Free shared page if mmu initialization
+ fails
+ - [x86] kvm/svm: PKU not currently supported
+ - [x86] kvm: Be careful not to clear KVM_VCPU_FLUSH_TLB bit
+ (CVE-2019-3016)
+ - [x86] kvm: Introduce kvm_(un)map_gfn() (CVE-2019-3016)
+ - [x86] KVM: Make sure KVM_VCPU_FLUSH_TLB flag is not missed
+ (CVE-2019-3016)
+ - [x86] kvm: Cache gfn to pfn translation (CVE-2019-3016)
+ - [x86] KVM: Clean up host's steal time structure (CVE-2019-3016)
+ - [x86] KVM: VMX: Add non-canonical check on writes to RTIT address MSRs
+ - [x86] KVM: Don't let userspace set host-reserved cr4 bits
+ - [x86] KVM: Free wbinvd_dirty_mask if vCPU creation fails
+ - [x86] KVM: Handle TIF_NEED_FPU_LOAD in kvm_{load,put}_guest_fpu()
+ - [x86] KVM: Ensure guest's FPU state is loaded when accessing for
+ emulation
+ - [x86] KVM: Revert "KVM: X86: Fix fpu state crash in kvm guest"
+ - [s390x] KVM: do not clobber registers during guest reset/store status
+ - ocfs2: fix oops when writing cloned file
+ - mm/page_alloc.c: fix uninitialized memmaps on a partially populated last
+ section
+ - mm/mmu_gather: invalidate TLB correctly on batch allocation failure and
+ flush
+ - [arm64,armhf] clk: tegra: Mark fuse clock as critical
+ - virtio-balloon: initialize all vq callbacks
+ - virtio-pci: check name when counting MSI-X vectors
+ - fix up iter on short count in fuse_direct_io()
+ - broken ping to ipv6 linklocal addresses on debian buster
+ - percpu: Separate decrypted varaibles anytime encryption can be enabled
+ - scsi: qla2xxx: Fix the endianness of the qla82xx_get_fw_size() return
+ type
+ - scsi: csiostor: Adjust indentation in csio_device_reset
+ - scsi: qla4xxx: Adjust indentation in qla4xxx_mem_free
+ - scsi: ufs: Recheck bkops level if bkops is disabled
+ - mtd: spi-nor: Split mt25qu512a (n25q512a) entry into two
+ - [arm64] phy: qualcomm: Adjust indentation in read_poll_timeout
+ - ext2: Adjust indentation in ext2_fill_super
+ - [arm64] drm: msm: mdp4: Adjust indentation in mdp4_dsi_encoder_enable
+ - [x86] NFC: pn544: Adjust indentation in pn544_hci_check_presence
+ - ppp: Adjust indentation into ppp_async_input
+ - [armhf] net: smc911x: Adjust indentation in smc911x_phy_configure
+ - net: tulip: Adjust indentation in {dmfe, uli526x}_init_module
+ - IB/mlx5: Fix outstanding_pi index for GSI qps
+ - IB/core: Fix ODP get user pages flow
+ - nfsd: fix delay timer on 32-bit architectures
+ - nfsd: fix jiffies/time_t mixup in LRU list
+ - nfsd: Return the correct number of bytes written to the file
+ - virtio-balloon: Fix memory leak when unloading while hinting is in
+ progress
+ - virtio_balloon: Fix memory leaks on errors in virtballoon_probe()
+ - ubifs: Fix memory leak from c->sup_node
+ - regulator: core: Add regulator_is_equal() helper
+ - [armhf] ASoC: sgtl5000: Fix VDDA and VDDIO comparison
+ - bonding/alb: properly access headers in bond_alb_xmit()
+ - devlink: report 0 after hitting end in region read
+ - [armhf] net: dsa: b53: Always use dev->vlan_enabled in
+ b53_configure_vlan()
+ - [armhf] net: dsa: bcm_sf2: Only 7278 supports 2Gb/sec IMP port
+ - [arm64,armhf] net: mvneta: move rx_dropped and rx_errors in per-cpu
+ stats
+ - net_sched: fix a resource leak in tcindex_set_parms()
+ - [arm64] net: stmmac: fix a possible endless loop
+ - [arm64,riscv64] net: macb: Remove unnecessary alignment check for TSO
+ - [arm64,riscv64] net: macb: Limit maximum GEM TX length in TSO
+ - ipv6/addrconf: fix potential NULL deref in inet6_set_link_af()
+ - qed: Fix timestamping issue for L2 unicast ptp packets.
+ - drop_monitor: Do not cancel uninitialized work item
+ - net/mlx5: Fix deadlock in fs_core
+ - net/mlx5: Deprecate usage of generic TLS HW capability bit
+ - [x86] ASoC: Intel: skl_hda_dsp_common: Fix global-out-of-bounds bug
+ - [x86] timer: Don't skip PIT setup when APIC is disabled or in legacy
+ mode
+ - btrfs: use bool argument in free_root_pointers()
+ - btrfs: free block groups after free'ing fs trees
+ - drm/dp_mst: Remove VCPI while disabling topology mgr
+ - [x86] KVM: x86/mmu: Apply max PA check for MMIO sptes to 32-bit KVM
+ - [x86] KVM: x86: use CPUID to locate host page table reserved bits
+ - [x86] KVM: x86: Use gpa_t for cr2/gpa to fix TDP support on 32-bit KVM
+ - [x86] KVM: x86: fix overlap between SPTE_MMIO_MASK and generation
+ - [x86] KVM: nVMX: vmread should not set rflags to specify success in case
+ of #PF
+ - KVM: Use vcpu-specific gva->hva translation when querying host page size
+ - KVM: Play nice with read-only memslots when querying host page size
+ - cifs: fail i/o on soft mounts if sessionsetup errors out
+ - [x86] apic/msi: Plug non-maskable MSI affinity race
+ - clocksource: Prevent double add_timer_on() for watchdog_timer
+ - perf/core: Fix mlock accounting in perf_mmap()
+ - rxrpc: Fix service call disconnection
+
+ [ Aurelien Jarno ]
+ * [mips*/malta] Enable POWER_RESET_PIIX4_POWEROFF.
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.4.13-rt6
+ * [rt] Update to 5.4.13-rt7
+ * [rt] Update to 5.4.17-rt8
+ * [rt] Update to 5.4.17-rt9
+ * Bump ABI to 4.
+ * Revert "cpupower: Revert library ABI changes from commit
+ ae2917093fb60bdc1ed3e"
+
+ [ Ben Hutchings ]
+ * linux-perf: Build with CORESIGHT=1 (thanks to Wookey) (Closes: #924673)
+
+ [ Steve McIntyre ]
+ * [arm64] Include the Hisilicon Hibmc drm driver in fb-modules
+ Closes: #944546)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 13 Feb 2020 06:14:49 +0100
+
+linux (5.4.13-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.9
+ - nvme_fc: add module to ops template to allow module references
+ - nvme-fc: fix double-free scenarios on hw queues
+ - drm/amdgpu: add check before enabling/disabling broadcast mode
+ - drm/amdgpu: add header line for power profile on Arcturus
+ - drm/amdgpu: add cache flush workaround to gfx8 emit_fence
+ - nvme/pci: Fix write and poll queue types
+ - nvme/pci: Fix read queue count
+ - [armhf] iio: st_accel: Fix unused variable warning
+ - PM / devfreq: Fix devfreq_notifier_call returning errno
+ - PM / devfreq: Set scaling_max_freq to max on OPP notifier error
+ - PM / devfreq: Don't fail devfreq_dev_release if not in list
+ - afs: Fix afs_find_server lookups for ipv4 peers
+ - afs: Fix SELinux setting security label on /afs
+ - RDMA/cma: add missed unregister_pernet_subsys in init failure
+ - rxe: correctly calculate iCRC for unaligned payloads
+ - scsi: lpfc: Fix memory leak on lpfc_bsg_write_ebuf_set func
+ - scsi: qla2xxx: Use explicit LOGO in target mode
+ - scsi: qla2xxx: Drop superfluous INIT_WORK of del_work
+ - scsi: qla2xxx: Don't call qlt_async_event twice
+ - scsi: qla2xxx: Fix PLOGI payload and ELS IOCB dump length
+ - scsi: qla2xxx: Configure local loop for N2N target
+ - scsi: qla2xxx: Send Notify ACK after N2N PLOGI
+ - scsi: qla2xxx: Don't defer relogin unconditonally
+ - scsi: qla2xxx: Ignore PORT UPDATE after N2N PLOGI
+ - scsi: iscsi: qla4xxx: fix double free in probe
+ - scsi: libsas: stop discovering if oob mode is disconnected
+ (CVE-2019-19965)
+ - scsi: iscsi: Avoid potential deadlock in iscsi_if_rx func
+ - [x86] staging/wlan-ng: add CRC32 dependency in Kconfig
+ - drm/nouveau: Move the declaration of struct nouveau_conn_atom up a bit
+ - drm/nouveau: Fix drm-core using atomic code-paths on pre-nv50 hardware
+ - drm/nouveau/kms/nv50-: fix panel scaling
+ - usb: gadget: fix wrong endpoint desc
+ - net: make socket read/write_iter() honor IOCB_NOWAIT
+ - afs: Fix mountpoint parsing
+ - afs: Fix creation calls in the dynamic root to fail with EOPNOTSUPP
+ - raid5: need to set STRIPE_HANDLE for batch head
+ - md: raid1: check rdev before reference in raid1_sync_request func
+ - [s390x] cpum_sf: Adjust sampling interval to avoid hitting sample limits
+ - [s390x] cpum_sf: Avoid SBD overflow condition in irq handler
+ - RDMA/counter: Prevent auto-binding a QP which are not tracked with res
+ - IB/mlx4: Follow mirror sequence of device add during device removal
+ - IB/mlx5: Fix steering rule of drop and count
+ - xen-blkback: prevent premature module unload
+ - xen/balloon: fix ballooned page accounting without hotplug enabled
+ - PM / hibernate: memory_bm_find_bit(): Tighten node optimisation
+ - ALSA: hda/realtek - Add Bass Speaker and fixed dac for bass speaker
+ - ALSA: hda/realtek - Enable the bass speaker of ASUS UX431FLC
+ - PCI: Add a helper to check Power Resource Requirements _PR3 existence
+ - ALSA: hda: Allow HDA to be runtime suspended when dGPU is not bound to a
+ driver
+ - PCI: Fix missing inline for pci_pr3_present()
+ - ALSA: hda - fixup for the bass speaker on Lenovo Carbon X1 7th gen
+ - tcp: fix data-race in tcp_recvmsg()
+ - shmem: pin the file in shmem_fault() if mmap_sem is dropped
+ - taskstats: fix data-race
+ - ALSA: hda - Downgrade error message for single-cmd fallback
+ - netfilter: nft_tproxy: Fix port selector on Big Endian
+ - block: add bio_truncate to fix guard_bio_eod
+ - mm: drop mmap_sem before calling balance_dirty_pages() in write fault
+ - ALSA: ice1724: Fix sleep-in-atomic in Infrasonic Quartet support code
+ - ALSA: usb-audio: fix set_format altsetting sanity check
+ - ALSA: usb-audio: set the interface format after resume on Dell WD19
+ - ALSA: hda - Apply sync-write workaround to old Intel platforms, too
+ - ALSA: hda/realtek - Add headset Mic no shutup for ALC283
+ - [arm64,armhf] drm/sun4i: hdmi: Remove duplicate cleanup calls
+ - [mips*] BPF: Disable MIPS32 eBPF JIT
+ - [mips*] BPF: eBPF JIT: check for MIPS ISA compliance in Kconfig
+ - [mips*] Avoid VDSO ABI breakage due to global register variable
+ - media: pulse8-cec: fix lost cec_transmit_attempt_done() call
+ - media: cec: CEC 2.0-only bcast messages were ignored
+ - media: cec: avoid decrementing transmit_queue_sz if it is 0
+ - media: cec: check 'transmit_in_progress', not 'transmitting'
+ - mm/memory_hotplug: shrink zones when offlining memory
+ - mm/zsmalloc.c: fix the migrated zspage statistics.
+ - memcg: account security cred as well to kmemcg
+ - mm: move_pages: return valid node id in status if the page is already on
+ the target node
+ - mm/oom: fix pgtables units mismatch in Killed process message
+ - ocfs2: fix the crash due to call ocfs2_get_dlm_debug once less
+ - [x86,arm64] pstore/ram: Write new dumps to start of recycled zones
+ - [x86,arm64] pstore/ram: Fix error-path memory leak in
+ persistent_ram_new() callers
+ - locks: print unsigned ino in /proc/locks
+ - seccomp: Check that seccomp_notif is zeroed out by the user
+ - Btrfs: fix infinite loop during nocow writeback due to race
+ - compat_ioctl: block: handle Persistent Reservations
+ - compat_ioctl: block: handle BLKREPORTZONE/BLKRESETZONE
+ - compat_ioctl: block: handle BLKGETZONESZ/BLKGETNRZONES
+ - bpf: Fix precision tracking for unbounded scalars
+ - ata: libahci_platform: Export again ahci_platform_<en/dis>able_phys()
+ - libata: Fix retrieving of active qcs
+ - gpiolib: fix up emulated open drain outputs
+ - [riscv64] clocksource: riscv: add notrace to riscv_sched_clock
+ - [riscv64] ftrace: correct the condition logic in function graph tracer
+ - tracing: Fix lock inversion in trace_event_enable_tgid_record()
+ - tracing: Avoid memory leak in process_system_preds()
+ - tracing: Have the histogram compare functions convert to u64 first
+ - tracing: Fix endianness bug in histogram trigger
+ - io_uring: use current task creds instead of allocating a new one
+ - mm/gup: fix memory leak in __gup_benchmark_ioctl
+ - apparmor: fix aa_xattrs_match() may sleep while holding a RCU lock
+ - dmaengine: virt-dma: Fix access after free in vchan_complete()
+ - [i386] ALSA: cs4236: fix error return comparison of an unsigned integer
+ - ALSA: pcm: Yet another missing check of non-cached buffer type
+ - ALSA: firewire-motu: Correct a typo in the clock proc string
+ - scsi: lpfc: Fix rpi release when deleting vport
+ - exit: panic before exit_mm() on global init exit
+ - [arm64] Revert support for execute-only user mappings
+ - ftrace: Avoid potential division by zero in function profiler
+ - [arm64] drm/msm: include linux/sched/task.h
+ - PM / devfreq: Check NULL governor in available_governors_show
+ - sunrpc: fix crash when cache_head become valid before update
+ - nfsd4: fix up replay_matches_cache()
+ - [powerpc*] Chunk calls to flush_dcache_range in arch_*_memory
+ - [x86,arm64] HID: i2c-hid: Reset ALPS touchpads on resume
+ - net/sched: annotate lockless accesses to qdisc->empty
+ - kernel/module.c: wakeup processes in module_wq on module unload
+ - ACPI: sysfs: Change ACPI_MASKABLE_GPE_MAX to 0x100
+ - perf callchain: Fix segfault in thread__resolve_callchain_sample()
+ - [amd64] iommu/vt-d: Remove incorrect PSI capability check
+ - cifs: Fix potential softlockups while refreshing DFS cache
+ - xfs: don't check for AG deadlock for realtime files in bunmapi
+ - [x86] platform/x86: pmc_atom: Add Siemens CONNECT X300 to
+ critclk_systems DMI table
+ - netfilter: nf_queue: enqueue skbs with NULL dst
+ - [arm64,armhf] regulator: axp20x: Fix axp20x_set_ramp_delay
+ - [arm64,armhf] regulator: axp20x: Fix AXP22x ELDO2 regulator enable
+ bitmask
+ - [powerpc*] mm: Mark get_slice_psize() & slice_addr_is_low() as notrace
+ - Bluetooth: btusb: fix PM leak in error case of setup
+ - Bluetooth: delete a stray unlock
+ - Bluetooth: Fix memory leak in hci_connect_le_scan
+ - [arm64] dts: meson-gxl-s905x-khadas-vim: fix uart_A bluetooth node
+ - [arm64] dts: meson-gxm-khadas-vim2: fix uart_A bluetooth node
+ - media: flexcop-usb: ensure -EIO is returned on error condition
+ - media: usb: fix memory leak in af9005_identify_state (CVE-2019-18809)
+ - [arm64] dts: meson: odroid-c2: Disable usb_otg bus to avoid power failed
+ warning
+ - [arm64] tty: serial: msm_serial: Fix lockup for sysrq and oops
+ - cifs: Fix lookup of root ses in DFS referral cache
+ - fs: cifs: Fix atime update check vs mtime
+ - fix compat handling of FICLONERANGE, FIDEDUPERANGE and FS_IOC_FIEMAP
+ - ath9k_htc: Modify byte order for an error message
+ - ath9k_htc: Discard undersized packets
+ - [x86] drm/i915/execlists: Fix annotation for decoupling virtual request
+ - xfs: periodically yield scrub threads to the scheduler
+ - net: add annotations on hh->hh_len lockless accesses
+ - ubifs: ubifs_tnc_start_commit: Fix OOB in layout_in_gaps
+ - btrfs: get rid of unique workqueue helper functions
+ - Btrfs: only associate the locked page with one async_chunk struct
+ - [s390x] smp: fix physical to logical CPU map for SMT
+ - mm/sparse.c: mark populate_section_memmap as __meminit
+ - xen/blkback: Avoid unmapping unmapped grant pages
+ - lib/ubsan: don't serialize UBSAN report
+ - [x86] perf/x86/intel/bts: Fix the use of page_private()
+ - net: annotate lockless accesses to sk->sk_pacing_shift
+ - mm/hugetlb: defer freeing of huge pages if in non-task context
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.10
+ - [powerpc*] pmem: Fix kernel crash due to wrong range value usage in
+ flush_dcache_range
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.11
+ - bpf: Fix passing modified ctx to ld/abs/ind instruction
+ - [x86] ASoC: rt5682: fix i2c arbitration lost issue
+ - spi: pxa2xx: Add support for Intel Jasper Lake
+ - regulator: fix use after free issue
+ - ASoC: max98090: fix possible race conditions
+ - gpio: Handle counting of Freescale chipselects
+ - netfilter: ctnetlink: netns exit must wait for callbacks
+ - [x86] intel: Disable HPET on Intel Ice Lake platforms
+ - netfilter: nf_tables_offload: Check for the NETDEV_UNREGISTER event
+ - mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame()
+ (CVE-2019-14901)
+ - regulator: core: fix regulator_register() error paths to properly
+ release rdev
+ - [x86] efi: Update e820 with reserved EFI boot services data to fix kexec
+ breakage
+ - [x86] ASoC: Intel: bytcr_rt5640: Update quirk for Teclast X89
+ - efi/gop: Return EFI_NOT_FOUND if there are no usable GOPs
+ - efi/gop: Return EFI_SUCCESS if a usable GOP was found
+ - efi/gop: Fix memory leak in __gop_query32/64()
+ - [x86,arm64] efi/earlycon: Remap entire framebuffer after page
+ initialization
+ - netfilter: uapi: Avoid undefined left-shift in xt_sctp.h
+ - netfilter: nft_set_rbtree: bogus lookup/get on consecutive elements in
+ named sets
+ - netfilter: nf_tables: validate NFT_SET_ELEM_INTERVAL_END
+ - netfilter: nf_tables: validate NFT_DATA_VALUE after nft_data_init()
+ - netfilter: nf_tables: skip module reference count bump on object updates
+ - netfilter: nf_tables_offload: return EOPNOTSUPP if rule specifies no
+ actions
+ - [arm64] spi: spi-cavium-thunderx: Add missing pci_release_regions()
+ - [arm*] reset: Do not register resource data for missing resets
+ - [x86] ASoC: topology: Check return value for snd_soc_add_dai_link()
+ - [x86] ASoC: topology: Check return value for soc_tplg_pcm_create()
+ - [x86] ASoC: SOF: loader: snd_sof_fw_parse_ext_data log warning on
+ unknown header
+ - [x86] ASoC: SOF: Intel: split cht and byt debug window sizes
+ - [armhf] dts: am335x-sancloud-bbe: fix phy mode
+ - [riscv64] bpf, riscv: Limit to 33 tail calls
+ - [mips64el,mipsel] bpf, mips: Limit to 33 tail calls
+ - perf header: Fix false warning when there are no duplicate cache entries
+ - [armhf] spi: spi-ti-qspi: Fix a bug when accessing non default CS
+ - [armhf] bus: ti-sysc: Fix missing reset delay handling
+ - clk: walk orphan list on clock provider registration
+ - mac80211: fix TID field in monitor mode transmit
+ - cfg80211: fix double-free after changing network namespace
+ - pinctrl: pinmux: fix a possible null pointer in
+ pinmux_can_be_used_for_gpio
+ - [powerpc*] Ensure that swiotlb buffer is allocated from low memory
+ - btrfs: Fix error messages in qgroup_rescan_init
+ - Btrfs: fix cloning range with a hole when using the NO_HOLES feature
+ - [powerpc*] vcpu: Assume dedicated processors as non-preempt
+ - [powerpc*] spinlocks: Include correct header for static key
+ - btrfs: handle error in btrfs_cache_block_group
+ - Btrfs: fix hole extent items with a zero size after range cloning
+ - [powerpc*] ocxl: Fix potential memory leak on context creation
+ - bpf: Clear skb->tstamp in bpf_redirect when necessary
+ - bnx2x: Do not handle requests from VFs after parity
+ - bnx2x: Fix logic to get total no. of PFs per engine
+ - cxgb4: Fix kernel panic while accessing sge_info
+ - net: usb: lan78xx: Fix error message format specifier
+ - [hppa/parisc] add missing __init annotation
+ - rfkill: Fix incorrect check to avoid NULL pointer dereference
+ - staging: axis-fifo: add unspecified HAS_IOMEM dependency
+ - [arm*] iommu/iova: Init the struct iova to fix the possible memleak
+ - [x86] perf/x86: Fix potential out-of-bounds access
+ - [x86] perf/x86/intel: Fix PT PMI handling
+ - sched/psi: Fix sampling error and rare div0 crashes with cgroups and
+ high uptime
+ - psi: Fix a division error in psi poll()
+ - [x86] usb: typec: fusb302: Fix an undefined reference to
+ 'extcon_get_state'
+ - block: end bio with BLK_STS_AGAIN in case of non-mq devs and REQ_NOWAIT
+ - fs: avoid softlockups in s_inodes iterators
+ - fs: call fsnotify_sb_delete after evict_inodes
+ - [arm64] iommu/dma: Relax locking in iommu_dma_prepare_msi()
+ - io_uring: don't wait when under-submitting
+ - clk: Move clk_core_reparent_orphans() under CONFIG_OF
+ - [arm64,armhf] net: stmmac: Determine earlier the size of RX buffer
+ - [arm64,armhf] net: stmmac: Do not accept invalid MTU values
+ - [arm64,armhf] net: stmmac: xgmac: Clear previous RX buffer size
+ - [arm64,armhf] net: stmmac: RX buffer size must be 16 byte aligned
+ - [arm64,armhf] net: stmmac: Always arm TX Timer at end of transmission
+ start
+ - xsk: Add rcu_read_lock around the XSK wakeup
+ - net/mlx5e: Fix concurrency issues between config flow and XSK
+ - net/i40e: Fix concurrency issues between config flow and XSK
+ - net/ixgbe: Fix concurrency issues between config flow and XSK
+ - [arm64] cpu_errata: Add Hisilicon TSV110 to spectre-v2 safe list
+ - block: Fix a lockdep complaint triggered by request queue flushing
+ - [s390x] dasd/cio: Interpret ccw_device_get_mdc return value correctly
+ - [s390x] dasd: fix memleak in path handling error case
+ - block: fix memleak when __blk_rq_map_user_iov() is failed
+ - sbitmap: only queue kyber's wait callback if not already active
+ - [s390x] qeth: handle error due to unsupported transport mode
+ - [s390x] qeth: fix promiscuous mode after reset
+ - [s390x] qeth: don't return -ENOTSUPP to userspace
+ - llc2: Fix return statement of llc_stat_ev_rx_null_dsap_xid_c (and
+ _test_c)
+ - [x86] hv_netvsc: Fix unwanted rx_table reset
+ - gtp: fix bad unlock balance in gtp_encap_enable_socket
+ - macvlan: do not assume mac_header is set in macvlan_broadcast()
+ - [arm64,armhf] net: dsa: mv88e6xxx: Preserve priority when setting CPU
+ port.
+ - [armhf] net: freescale: fec: Fix ethtool -d runtime PM
+ - [arm64,armhf] net: stmmac: dwmac-sun8i: Allow all RGMII modes
+ - [arm64,armhf] net: stmmac: dwmac-sunxi: Allow all RGMII modes
+ - [arm64,armhf] net: stmmac: Fixed link does not need MDIO Bus
+ - net: usb: lan78xx: fix possible skb leak
+ - pkt_sched: fq: do not accept silly TCA_FQ_QUANTUM
+ - sch_cake: avoid possible divide by zero in cake_enqueue()
+ - sctp: free cmd->obj.chunk for the unprocessed SCTP_CMD_REPLY
+ - tcp: fix "old stuff" D-SACK causing SACK to be treated as D-SACK
+ - vxlan: fix tos value before xmit
+ - net: sch_prio: When ungrafting, replace with FIFO
+ - vlan: fix memory leak in vlan_dev_set_egress_priority
+ - vlan: vlan_changelink() should propagate errors
+ - [arm64,riscv64] macb: Don't unregister clks unconditionally
+ - net/mlx5: Move devlink registration before interfaces load
+ - [arm64,armhf] net: dsa: mv88e6xxx: force cmode write on 6141/6341
+ - net/mlx5e: Always print health reporter message to dmesg
+ - net/mlx5: DR, No need for atomic refcount for internal SW steering
+ resources
+ - net/mlx5e: Fix hairpin RSS table size
+ - net/mlx5: DR, Init lists that are used in rule's member
+ - [arm64,armhf] usb: dwc3: gadget: Fix request complete check
+ - USB: core: fix check for duplicate endpoints
+ - USB: serial: option: add Telit ME910G1 0x110a composition
+ - usb: missing parentheses in USE_NEW_SCHEME
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.12
+ - chardev: Avoid potential use-after-free in 'chrdev_open()'
+ - i2c: fix bus recovery stop mode timing
+ - [x86] powercap: intel_rapl: add NULL pointer check to
+ rapl_mmio_cpu_online()
+ - [arm64,armhf] usb: chipidea: host: Disable port power only if previously
+ enabled
+ - ALSA: usb-audio: Apply the sample rate quirk for Bose Companion 5
+ - ALSA: hda/realtek - Add new codec supported for ALCS1200A
+ - ALSA: hda/realtek - Set EAPD control to default for ALC222
+ - ALSA: hda/realtek - Add quirk for the bass speaker on Lenovo Yoga X1 7th
+ gen
+ - tpm: Revert "tpm_tis: reserve chip for duration of tpm_tis_core_init"
+ - tpm: Revert "tpm_tis_core: Set TPM_CHIP_FLAG_IRQ before probing for
+ interrupts"
+ - tpm: Revert "tpm_tis_core: Turn on the TPM before probing IRQ's"
+ - tpm: Handle negative priv->response_len in tpm_common_read()
+ - [arm64,armhf] rtc: sun6i: Add support for RTC clocks on R40
+ - kernel/trace: Fix do not unregister tracepoints when register
+ sched_migrate_task fail
+ - tracing: Have stack tracer compile when MCOUNT_INSN_SIZE is not defined
+ - tracing: Change offset type to s32 in preempt/irq tracepoints
+ - HID: Fix slab-out-of-bounds read in hid_field_extract
+ - HID: uhid: Fix returning EPOLLOUT from uhid_char_poll
+ - HID: hidraw: Fix returning EPOLLOUT from hidraw_poll
+ - HID: hid-input: clear unmapped usages
+ - Input: add safety guards to input_set_keycode()
+ - [x86] drm/i915: Add Wa_1408615072 and Wa_1407596294 to icl,ehl
+ - [arm64,armhf] drm/sun4i: tcon: Set RGB DCLK min. divider based on
+ hardware model
+ - drm/fb-helper: Round up bits_per_pixel if possible
+ - drm/dp_mst: correct the shifting in DP_REMOTE_I2C_READ
+ - [x86] drm/i915: Add Wa_1407352427:icl,ehl
+ - [x86] drm/i915/gt: Mark up virtual engine uabi_instance
+ - [amd64] IB/hfi1: Adjust flow PSN with the correct resync_psn
+ - can: kvaser_usb: fix interface sanity check
+ - can: gs_usb: gs_usb_probe(): use descriptors of current altsetting
+ - gpiolib: acpi: Turn dmi_system_id table into a generic quirk table
+ - gpiolib: acpi: Add honor_wakeup module-option + quirk mechanism
+ - pstore/ram: Regularize prz label allocation lifetime
+ - [x86] staging: vt6656: set usb_set_intfdata on driver fail.
+ - [x86] staging: vt6656: Fix non zero logical return of, usb_control_msg
+ - USB: serial: option: add ZLP support for 0x1bc7/0x9010
+ - [arm64,armhf] usb: musb: fix idling for suspend after disconnect
+ interrupt
+ - [arm64,armhf] usb: musb: Disable pullup at init
+ - [arm64,armhf] usb: musb: dma: Correct parameter passed to IRQ handler
+ - [x86] staging: comedi: adv_pci1710: fix AI channels 16-31 for PCI-1713
+ - [x86] staging: vt6656: correct return of vnt_init_registers.
+ - [x86] staging: vt6656: limit reg output to block size
+ - staging: rtl8188eu: Add device code for TP-Link TL-WN727N v5.21
+ - serdev: Don't claim unsupported ACPI serial devices
+ - [amd64] iommu/vt-d: Fix adding non-PCI devices to Intel IOMMU
+ - tty: link tty and port before configuring it as console
+ - tty: always relink the port
+ - [arm64] Move __ARCH_WANT_SYS_CLONE3 definition to uapi headers
+ - [arm64] Implement copy_thread_tls
+ - [arm*] Implement copy_thread_tls
+ - [hppa/parisc] Implement copy_thread_tls
+ - [riscv64] Implement copy_thread_tls
+ - clone3: ensure copy_thread_tls is implemented
+ - um: Implement copy_thread_tls
+ - [x86] staging: vt6656: remove bool from vnt_radio_power_on ret
+ - mwifiex: fix possible heap overflow in mwifiex_process_country_ie()
+ (CVE-2019-14895)
+ - mwifiex: pcie: Fix memory leak in mwifiex_pcie_alloc_cmdrsp_buf
+ (CVE-2019-19056)
+ - rpmsg: char: release allocated memory (CVE-2019-19053)
+ - scsi: bfa: release allocated memory in case of error (CVE-2019-19066)
+ - rtl8xxxu: prevent leaking urb (CVE-2019-19068)
+ - ath10k: fix memory leak (CVE-2019-19078)
+ - HID: hiddev: fix mess in hiddev_open()
+ - USB: Fix: Don't skip endpoint descriptors with maxpacket=0
+ - netfilter: arp_tables: init netns pointer in xt_tgchk_param struct
+ - netfilter: conntrack: dccp, sctp: handle null timeout argument
+ - netfilter: ipset: avoid null deref when IPSET_ATTR_LINENO is present
+ - [x86] drm/i915/gen9: Clear residual context state on context switch
+ (CVE-2019-14615)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.13
+ - HID: hidraw, uhid: Always report EPOLLOUT
+ - [amd64] IB/hfi1: Don't cancel unused work item
+ - [armhf] mtd: rawnand: stm32_fmc2: avoid to lock the CPU bus
+ - [arm*] 2c: bcm2835: Store pointer to bus clock
+ - ASoC: soc-core: Set dpcm_playback / dpcm_capture
+ - [armhf] ASoC: stm32: spdifrx: fix inconsistent lock state
+ - [armhf] ASoC: stm32: spdifrx: fix race condition in irq handler
+ - [armhf] ASoC: stm32: spdifrx: fix input pin state management
+ - netfilter: nft_flow_offload: fix underflow in flowtable reference
+ counter
+ - [armhf] mtd: onenand: omap2: Pass correct flags for prep_dma_memcpy
+ - [arm64] gpio: zynq: Fix for bug in zynq_gpio_restore_context API
+ - [arm64,armhf] pinctrl: meson: Fix wrong shift value when get
+ drive-strength
+ - [amd64] iommu/vt-d: Unlink device if failed to add to group
+ - iommu: Remove device link to group on failure
+ - bpf: cgroup: prevent out-of-order release of cgroup bpf
+ - fs: move guard_bio_eod() after bio_set_op_attrs
+ - scsi: mpt3sas: Fix double free in attach error handling
+ - gpio: Fix error message on out-of-range GPIO in lookup table
+ - [arm64,armhf] PM / devfreq: tegra: Add COMMON_CLK dependency
+ - [arm64,armhf] drm/tegra: Fix ordering of cleanup code
+ - [s390x] qeth: fix qdio teardown after early init error
+ - [s390x] qeth: fix false reporting of VNIC CHAR config failure
+ - [s390x] qeth: Fix vnicc_is_in_use if rx_bcast not set
+ - [s390x] qeth: vnicc Fix init to default
+ - [s390x] qeth: fix initialization on old HW
+ - scsi: smartpqi: Update attribute name to `driver_version`
+ - afs: Fix missing cell comparison in afs_test_super()
+ - [x86] syscalls/x86: Wire up COMPAT_SYSCALL_DEFINE0
+ - [x86] syscalls/x86: Use COMPAT_SYSCALL_DEFINE0 for IA32 (rt_)sigreturn
+ - [x86] syscalls/x86: Use the correct function type for sys_ni_syscall
+ - [x86] syscalls/x86: Fix function types in COND_SYSCALL
+ - btrfs: simplify inode locking for RWF_NOWAIT
+ - netfilter: nf_tables_offload: release flow_rule on error from commit
+ path
+ - netfilter: nft_meta: use 64-bit time arithmetic
+ - [arm64] RDMA/hns: Prevent undefined behavior in
+ hns_roce_set_user_sq_size()
+ - [arm64] RDMA/hns: remove a redundant le16_to_cpu
+ - [arm64] RDMA/hns: Modify return value of restrack functions
+ - RDMA/counter: Prevent QP counter manual binding in auto mode
+ - [arm64] RDMA/hns: Release qp resources when failed to destroy qp
+ - xprtrdma: Add unique trace points for posting Local Invalidate WRs
+ - xprtrdma: Connection becomes unstable after a reconnect
+ - xprtrdma: Fix MR list handling
+ - xprtrdma: Close window between waking RPC senders and posting Receives
+ - [arm64] RDMA/hns: Fix to support 64K page for srq
+ - [arm64] RDMA/hns: Bugfix for qpc/cqc timer configuration
+ - RDMA/mlx5: Return proper error value
+ - RDMA/srpt: Report the SCSI residual to the initiator
+ - uaccess: Add non-pagefault user-space write function
+ - bpf: Make use of probe_user_write in probe write helper
+ - bpf: skmsg, fix potential psock NULL pointer dereference
+ - libbpf: Fix Makefile' libbpf symbol mismatch diagnostic
+ - afs: Fix use-after-loss-of-ref
+ - afs: Fix afs_lookup() to not clobber the version on a new dentry
+ - keys: Fix request_key() cache
+ - scsi: enclosure: Fix stale device oops with hot replug
+ - scsi: sd: Clear sdkp->protection_type if disk is reformatted without PI
+ - [x86] platform/x86: asus-wmi: Fix keyboard brightness cannot be set to 0
+ - [x86] platform/x86: GPD pocket fan: Use default values when wrong
+ modparams are given
+ - Documentation/ABI: Fix documentation inconsistency for mlxreg-io sysfs
+ interfaces
+ - Documentation/ABI: Add missed attribute for mlxreg-io sysfs interfaces
+ - xprtrdma: Fix create_qp crash on device unload
+ - xprtrdma: Fix completion wait during device removal
+ - xprtrdma: Fix oops in Receive handler after device removal
+ - dm: add dm-clone to the documentation index
+ - scsi: ufs: Give an unique ID to each ufs-bsg
+ - [arm64] crypto: cavium/nitrox - fix firmware assignment to AE cores
+ - crypto: virtio - implement missing support for output IVs
+ - crypto: algif_skcipher - Use chunksize instead of blocksize
+ - [i386] crypto: geode-aes - convert to skcipher API and make thread-safe
+ - NFSv2: Fix a typo in encode_sattr()
+ - nfsd: Fix cld_net->cn_tfm initialization
+ - nfsd: v4 support requires CRYPTO_SHA256
+ - NFSv4.x: Handle bad/dead sessions correctly in nfs41_sequence_process()
+ - NFSv4.x: Drop the slot if nfs4_delegreturn_prepare waits for
+ layoutreturn
+ - mei: fix modalias documentation
+ - [armhf] clk: samsung: exynos5420: Preserve CPU clocks configuration
+ during suspend/resume
+ - clk: Fix memory leak in clk_unregister()
+ - [arm64,armhf] dmaengine: dw: platform: Mark 'hclk' clock optional
+ - [armhf] clk: imx: pll14xx: Fix quick switch of S/K parameter
+ - rsi: fix potential null dereference in rsi_probe()
+ - affs: fix a memory leak in affs_remount
+ - [armhf] pinctl: ti: iodelay: fix error checking on
+ pinctrl_count_index_with_args call
+ - [x86] pinctrl: lewisburg: Update pin list according to v1.1v6
+ - PCI: pciehp: Do not disable interrupt twice on suspend
+ - Revert "drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper."
+ - drm/amdgpu: cleanup creating BOs at fixed location
+ - drm/amdgpu/discovery: reserve discovery data at the top of VRAM
+ - scsi: sd: enable compat ioctls for sed-opal
+ - gfs2: add compat_ioctl support
+ - af_unix: add compat_ioctl support
+ - compat_ioctl: handle SIOCOUTQNSD
+ - [arm64] PCI: aardvark: Use LTSSM state to build link training flag
+ - [arm64] PCI: aardvark: Fix PCI_EXP_RTCTL register configuration
+ - [arm64,armhf] PCI: dwc: Fix find_next_bit() usage
+ - PCI: Fix missing bridge dma_ranges resource list cleanup
+ - PCI/PM: Clear PCIe PME Status even for legacy power management
+ - PCI/PTM: Remove spurious "d" from granularity message
+ - [powerpc*] powernv: Disable native PCIe port management
+ - [mips64el,mipsel] Loongson: Fix return value of loongson_hwmon_init
+ - [armhf] tty: serial: imx: use the sg count from dma_map_sg
+ - [i386] tty: serial: pch_uart: correct usage of dma_unmap_sg
+ - ARM: 8943/1: Fix topology setup in case of CPU hotplug for
+ CONFIG_SCHED_MC
+ - Revert "ubifs: Fix memory leak bug in alloc_ubifs_info() error path"
+ - ubifs: Fixed missed le64_to_cpu() in journal
+ - ubifs: do_kill_orphans: Fix a memory leak bug
+ - mtd: spi-nor: fix silent truncation in spi_nor_read()
+ - mtd: spi-nor: fix silent truncation in spi_nor_read_raw()
+ - [arm64,armhf] spi: pxa2xx: Set controller->max_transfer_size in dma mode
+ - iwlwifi: mvm: consider ieee80211 station max amsdu value
+ - rtlwifi: Remove unnecessary NULL check in rtl_regd_init
+ - iwlwifi: mvm: fix support for single antenna diversity
+ - sch_cake: Add missing NLA policy entry TCA_CAKE_SPLIT_GSO
+ - f2fs: fix potential overflow
+ - NFSD fixing possible null pointer derefering in copy offload
+ - scsi: libcxgbi: fix NULL pointer dereference in cxgbi_device_destroy()
+ - scsi: target/iblock: Fix protection error with blocks greater than 512B
+ - [riscv64] export flush_icache_all to modules
+ - [mips64el,mipsel] cacheinfo: report shared CPU map
+ - [mips64el,mipsel] Fix gettimeofday() in the vdso library
+ - tomoyo: Suppress RCU warning at list_for_each_entry_rcu().
+ - [arm64] drm/arm/mali: make malidp_mw_connector_helper_funcs static
+ - rxrpc: Unlock new call in rxrpc_new_incoming_call() rather than the
+ caller
+ - rxrpc: Don't take call->user_mutex in rxrpc_new_incoming_call()
+ - rxrpc: Fix missing security check on incoming calls
+ - [arm64] dmaengine: k3dma: Avoid null pointer traversal
+ - [s390x] qeth: lock the card while changing its hsuid
+ - [amd64] ioat: ioat_alloc_ring() failure handling.
+ - drm/amdgpu: enable gfxoff for raven1 refresh
+ - ocfs2: call journal flush to mark journal as empty after journal
+ recovery when mount
+
+ [ Salvatore Bonaccorso ]
+ * signing_templates/rules.real: Include modules.builtin.modinfo file in
+ image (Closes: #948427)
+ * [rt] Drop "lib/ubsan: Don't seralize UBSAN report"
+ * nvme: Ignore ABI changes
+ * Drop "ARM: dts: bcm283x: Fix critical trip point"
+ * Drop "tracing: Do not create directories if lockdown is in affect"
+ * Drop "libtraceevent: Fix lib installation with O="
+ * Drop "libtraceevent: Copy pkg-config file to output folder when using O="
+ * Refresh "libbpf: fix readelf output parsing on powerpc with recent
+ binutils"
+ * Refresh "x86: Make x32 syscall support conditional on a kernel parameter"
+ * Bump ABI to 3.
+
+ [ Ben Hutchings ]
+ * f2fs: Fix crypto softdep: it uses crc32, not crc32c
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 19 Jan 2020 10:22:58 +0100
+
+linux (5.4.8-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.7
+ - af_packet: set defaule value for tmo
+ - [amd64] fjes: fix missed check in fjes_acpi_add
+ - mod_devicetable: fix PHY module format
+ - net: dst: Force 4-byte alignment of dst_metrics
+ - [arm64] net: hisilicon: Fix a BUG trigered by wrong bytes_compl
+ - net: phy: ensure that phy IDs are correctly typed
+ - net: qlogic: Fix error paths in ql_alloc_large_buffers()
+ - net-sysfs: Call dev_hold always in rx_queue_add_kobject
+ - net: usb: lan78xx: Fix suspend/resume PHY register access error
+ - [arm64,armhf] nfp: flower: fix stats id allocation
+ - qede: Disable hardware gro when xdp prog is installed
+ - qede: Fix multicast mac configuration
+ - sctp: fix memleak on err handling of stream initialization
+ - sctp: fully initialize v4 addr in some functions
+ - neighbour: remove neigh_cleanup() method
+ - bonding: fix bond_neigh_init()
+ - net: ena: fix default tx interrupt moderation interval
+ - net: ena: fix issues in setting interrupt moderation params in ethtool
+ - [armhf] net: ethernet: ti: davinci_cpdma: fix warning "device driver
+ frees DMA memory with different size"
+ - [arm64,armhf] net: stmmac: platform: Fix MDIO init for platforms without
+ PHY
+ - [armhf] net: dsa: b53: Fix egress flooding settings
+ - btrfs: don't double lock the subvol_sem for rename exchange
+ - btrfs: do not call synchronize_srcu() in inode_tree_del
+ - Btrfs: make tree checker detect checksum items with overlapping ranges
+ - btrfs: return error pointer from alloc_test_extent_buffer
+ - Btrfs: fix missing data checksums after replaying a log tree
+ - btrfs: send: remove WARN_ON for readonly mount
+ - btrfs: abort transaction after failed inode updates in create_subvol
+ - btrfs: skip log replay on orphaned roots
+ - btrfs: do not leak reloc root if we fail to read the fs root
+ - btrfs: handle ENOENT in btrfs_uuid_tree_iterate
+ - Btrfs: fix removal logic of the tree mod log that leads to
+ use-after-free issues
+ - ALSA: pcm: Avoid possible info leaks from PCM stream buffers
+ - ALSA: hda/ca0132 - Keep power on during processing DSP response
+ - ALSA: hda/ca0132 - Avoid endless loop
+ - ALSA: hda/ca0132 - Fix work handling in delayed HP detection
+ - [arm*] drm/vc4/vc4_hdmi: fill in connector info
+ - drm/virtio: switch virtio_gpu_wait_ioctl() to gem helper.
+ - drm: mst: Fix query_payload ack reply struct
+ - [arm64,armhf] drm/panel: Add missing drm_panel_init() in panel drivers
+ - [armhf] drm: exynos: exynos_hdmi: use cec_notifier_conn_(un)register
+ - drm: Use EOPNOTSUPP, not ENOTSUPP
+ - drm/amdgpu/sriov: add ring_stop before ring_create in psp v11 code
+ - drm/amdgpu: grab the id mgr lock while accessing passid_mapping
+ - drm/ttm: return -EBUSY on pipelining with no_gpu_wait (v2)
+ - ath10k: add cleanup in ath10k_sta_state()
+ - ath10k: Check if station exists before forwarding tx airtime report
+ - spi: Add call to spi_slave_abort() function when spidev driver is
+ released
+ - [arm64] drm/meson: vclk: use the correct G12A frac max value
+ - [x86] staging: rtl8192u: fix multiple memory leaks on error path
+ - staging: rtl8188eu: fix possible null dereference
+ - rtlwifi: prevent memory leak in rtl_usb_probe (CVE-2019-19063)
+ - libertas: fix a potential NULL pointer dereference
+ - ath10k: fix backtrace on coredump
+ - IB/iser: bound protection_sg size by data_sg size
+ - [armhf] spi: gpio: prevent memory leak in spi_gpio_probe
+ - media: max2175: Fix build error without CONFIG_REGMAP_I2C
+ - [arm64] media: venus: core: Fix msm8996 frequency table
+ - ath10k: fix offchannel tx failure when no ath10k_mac_tx_frm_has_freq
+ - pinctrl: devicetree: Avoid taking direct reference to device name string
+ - [armhf] drm/sun4i: dsi: Fix TCON DRQ set bits
+ - [arm64] media: venus: Fix occasionally failures to suspend
+ - rtw88: fix NSS of hw_cap
+ - [armhf] hwrng: omap3-rom - Call clk_disable_unprepare() on exit only if
+ not idled
+ - media: flexcop-usb: fix NULL-ptr deref in flexcop_usb_transfer_init()
+ - [arm64,armhf] drm/bridge: dw-hdmi: Refuse DDC/CI transfers on the
+ internal I2C controller
+ - mwifiex: pcie: Fix memory leak in mwifiex_pcie_init_evt_ring
+ (CVE-2019-19057)
+ - drm/drm_vblank: Change EINVAL by the correct errno
+ - libbpf: Fix struct end padding in btf_dump
+ - libbpf: Fix passing uninitialized bytes to setsockopt
+ - net/smc: increase device refcount for added link group
+ - team: call RCU read lock when walking the port_list
+ - media: cx88: Fix some error handling path in 'cx8800_initdev()'
+ - [arm64] crypto: inside-secure - Fix a maybe-uninitialized warning
+ - [arm64] crypto: aegis128/simd - build 32-bit ARM for v8 architecture
+ explicitly
+ - [x86] ASoC: SOF: enable sync_write in hdac_bus
+ - [armhf] media: ti-vpe: vpe: Fix Motion Vector vpdma stride
+ - [armhf] media: ti-vpe: vpe: fix a v4l2-compliance warning about invalid
+ pixel format
+ - [armhf] media: ti-vpe: vpe: fix a v4l2-compliance failure about frame
+ sequence number
+ - [armhf] media: ti-vpe: vpe: Make sure YUYV is set as default format
+ - [armhf] media: ti-vpe: vpe: fix a v4l2-compliance failure causing a
+ kernel panic
+ - [armhf] media: ti-vpe: vpe: ensure buffers are cleaned up properly in
+ abort cases
+ - [armhf] media: ti-vpe: vpe: fix a v4l2-compliance failure about invalid
+ sizeimage
+ - [x86] syscalls/x86: Use the correct function type in SYSCALL_DEFINE0
+ - [x86] mm: Use the correct function type for native_set_fixmap()
+ - ath10k: Correct error handling of dma_map_single()
+ - rtw88: coex: Set 4 slot mode for A2DP
+ - [arm64,armhf] drm/bridge: dw-hdmi: Restore audio when setting a mode
+ - perf vendor events arm64: Fix Hisi hip08 DDRC PMU eventname
+ - usb: usbfs: Suppress problematic bind and unbind uevents.
+ - Bluetooth: btusb: avoid unused function warning
+ - Bluetooth: missed cpu_to_le16 conversion in hci_init4_req
+ - Bluetooth: Workaround directed advertising bug in Broadcom controllers
+ - Bluetooth: hci_core: fix init for HCI_USER_CHANNEL
+ - bpf/stackmap: Fix deadlock with rq_lock in bpf_get_stack()
+ - [x86] mce: Lower throttling MCE messages' priority to warning
+ - [arm64] net: hns3: log and clear hardware error after reset complete
+ - [arm64] RDMA/hns: Fix wrong parameters when initial mtt of srq->idx_que
+ - [x86] drm/gma500: fix memory disclosures due to uninitialized bytes
+ - ASoC: soc-pcm: fixup dpcm_prune_paths() loop continue
+ - rtl8xxxu: fix RTL8723BU connection failure issue after warm reboot
+ - ipmi: Don't allow device module unload when in use
+ - [x86] ioapic: Prevent inconsistent state when moving an interrupt
+ - media: cedrus: Fix undefined shift with a SHIFT_AND_MASK_BITS macro
+ - drm/nouveau: Don't grab runtime PM refs for HPD IRQs
+ - md: no longer compare spare disk superblock events in super_load
+ - md/bitmap: avoid race window between md_bitmap_resize and
+ bitmap_file_clear_bit
+ - drm: Don't free jobs in wait_event_interruptible()
+ - EDAC/amd64: Set grain per DIMM
+ - [arm64] psci: Reduce the waiting time for cpu_psci_cpu_kill()
+ - i40e: initialize ITRN registers with correct values
+ - i40e: Wrong 'Advertised FEC modes' after set FEC to AUTO
+ - net: phy: dp83867: enable robust auto-mdix
+ - [arm64,armhf] drm/tegra: sor: Use correct SOR index on Tegra210
+ - regulator: core: Release coupled_rdevs on regulator_init_coupling()
+ error
+ - ubsan, x86: Annotate and allow __ubsan_handle_shift_out_of_bounds() in
+ uaccess regions
+ - ACPI: button: Add DMI quirk for Medion Akoya E2215T
+ - RDMA/qedr: Fix memory leak in user qp and mr
+ - [arm64] RDMA/hns: Fix memory leak on 'context' on error return path
+ - RDMA/qedr: Fix srqs xarray initialization
+ - RDMA/core: Set DMA parameters correctly
+ - [arm64,armhf] gpu: host1x: Allocate gather copy for host1x
+ - [arm64,armhf] net: dsa: LAN9303: select REGMAP when LAN9303 enable
+ - [arm64] phy: qcom-usb-hs: Fix extcon double register after power cycle
+ - [s390x] time: ensure get_clock_monotonic() returns monotonic values
+ - [s390x] add error handling to perf_callchain_kernel
+ - [s390x] mm: add mm_pxd_folded() checks to pxd_free()
+ - [arm64] net: hns3: add struct netdev_queue debug info for TX timeout
+ - libata: Ensure ata_port probe has completed before detach
+ - loop: fix no-unmap write-zeroes request behavior
+ - [arm64,armhf] net/mlx5e: Verify that rule has at least one fwd/drop
+ action
+ - ALSA: bebob: expand sleep just after breaking connections for protocol
+ version 1
+ - libbpf: Fix error handling in bpf_map__reuse_fd()
+ - Bluetooth: Fix advertising duplicated flags
+ - ALSA: pcm: Fix missing check of the new non-cached buffer type
+ - [riscv64] spi: sifive: disable clk when probe fails and remove
+ - pinctrl: amd: fix __iomem annotation in amd_gpio_irq_handler()
+ - ixgbe: protect TX timestamping from API misuse
+ - media: rcar_drif: fix a memory disclosure (CVE-2019-18786)
+ - media: v4l2-core: fix touch support in v4l_g_fmt
+ - nvme: introduce "Command Aborted By host" status code
+ - nvmem: core: fix nvmem_cell_write inline function
+ - ASoC: SOF: topology: set trigger order for FE DAI link
+ - media: vivid: media_device_cleanup was called too early
+ - bnx2x: Fix PF-VF communication over multi-cos queues.
+ - ALSA: timer: Limit max amount of slave instances
+ - RDMA/core: Fix return code when modify_port isn't supported
+ - [arm64] drm: msm: a6xx: fix debug bus register configuration
+ - rtlwifi: fix memory leak in rtl92c_set_fw_rsvdpagepkt()
+ - perf probe: Fix to find range-only function instance
+ - perf cs-etm: Fix definition of macro TO_CS_QUEUE_NR
+ - perf probe: Fix to list probe event with correct line number
+ - perf jevents: Fix resource leak in process_mapfile() and main()
+ - perf probe: Walk function lines in lexical blocks
+ - perf probe: Fix to probe an inline function which has no entry pc
+ - perf probe: Fix to show ranges of variables in functions without
+ entry_pc
+ - perf probe: Fix to show inlined function callsite without entry_pc
+ - perf probe: Fix to probe a function which has no entry pc
+ - perf tools: Fix cross compile for ARM64
+ - perf tools: Splice events onto evlist even on error
+ - ice: Check for null pointer dereference when setting rings
+ - perf parse: If pmu configuration fails free terms
+ - perf probe: Skip overlapped location on searching variables
+ - net: avoid potential false sharing in neighbor related code
+ - perf probe: Return a better scope DIE if there is no best scope
+ - perf probe: Fix to show calling lines of inlined functions
+ - perf probe: Skip end-of-sequence and non statement lines
+ - perf probe: Filter out instances except for inlined subroutine and
+ subprogram
+ - libbpf: Fix negative FD close() in xsk_setup_xdp_prog()
+ - [s390x] bpf: Use kvcalloc for addrs array
+ - cgroup: freezer: don't change task and cgroups status unnecessarily
+ - ath10k: fix get invalid tx rate for Mesh metric
+ - media: pvrusb2: Fix oops on tear-down when radio support is not present
+ - ice: delay less
+ - media: cedrus: Use helpers to access capture queue
+ - [arm64,armhf] spi: pxa2xx: Add missed security checks
+ - ASoC: rt5677: Mark reg RT5677_PWR_ANLG2 as volatile
+ - iio: dac: ad5446: Add support for new AD5600 DAC
+ - [x86] ASoC: Intel: kbl_rt5663_rt5514_max98927: Add dmic format
+ constraint
+ - r8169: respect EEE user setting when restarting network
+ - [s390x] disassembler: don't hide instruction addresses
+ - [armhf] net: ethernet: ti: Add dependency for TI_DAVINCI_EMAC
+ - nvme: Discard workaround for non-conformant devices
+ - parport: load lowlevel driver if ports not found
+ - bcache: fix static checker warning in bcache_device_free()
+ - cpufreq: Register drivers only after CPU devices have been registered
+ - [x86] crash: Add a forward declaration of struct kimage
+ - tracing: use kvcalloc for tgid_map array allocation
+ - tracing/kprobe: Check whether the non-suffixed symbol is notrace
+ - bcache: fix deadlock in bcache_allocator
+ - iwlwifi: mvm: fix unaligned read of rx_pkt_status
+ - regulator: core: Let boot-on regulators be powered off
+ - [arm64] spi: tegra20-slink: add missed clk_unprepare
+ - tun: fix data-race in gro_normal_list()
+ - xhci-pci: Allow host runtime PM as default also for Intel Ice Lake xHCI
+ - crypto: virtio - deal with unsupported input sizes
+ - btrfs: don't prematurely free work in end_workqueue_fn()
+ - btrfs: don't prematurely free work in run_ordered_work()
+ - sched/uclamp: Fix overzealous type replacement
+ - perf/core: Fix the mlock accounting, again
+ - bnxt_en: Return proper error code for non-existent NVM variable
+ - net: phy: avoid matching all-ones clause 45 PHY IDs
+ - [x86] ASoC: Intel: bytcr_rt5640: Update quirk for Acer Switch 10 SW5-012
+ 2-in-1
+ - [x86] insn: Add some Intel instructions to the opcode map
+ - brcmfmac: remove monitor interface when detaching
+ - perf session: Fix decompression of PERF_RECORD_COMPRESSED records
+ - perf probe: Fix to show function entry line as probe-able
+ - [s390x] crypto: Fix unsigned variable compared with zero
+ - [s390x] kasan: support memcpy_real with TRACE_IRQFLAGS
+ - bnxt_en: Improve RX buffer error handling.
+ - iwlwifi: check kasprintf() return value
+ - ASoC: soc-pcm: check symmetry before hw_params
+ - [armhf] net: ethernet: ti: ale: clean ale tbl on init and intf restart
+ - [s390x] cpumf: Adjust registration of s390 PMU device drivers
+ - [armhf] crypto: sun4i-ss - Fix 64-bit size_t warnings
+ - [armhf] crypto: sun4i-ss - Fix 64-bit size_t warnings on sun4i-ss-hash.c
+ - mac80211: consider QoS Null frames for STA_NULLFUNC_ACKED
+ - libtraceevent: Fix memory leakage in copy_filter_type
+ - ice: Only disable VF state when freeing each VF resources
+ - ice: Fix setting coalesce to handle DCB configuration
+ - net: phy: initialise phydev speed and duplex sanely
+ - tools, bpf: Fix build for 'make -s tools/bpf O=<dir>'
+ - bpf: Provide better register bounds after jmp32 instructions
+ - net: wireless: intel: iwlwifi: fix GRO_NORMAL packet stalling
+ - btrfs: don't prematurely free work in reada_start_machine_worker()
+ - btrfs: don't prematurely free work in scrub_missing_raid56_worker()
+ - Revert "mmc: sdhci: Fix incorrect switch to HS mode"
+ - tpm_tis: reserve chip for duration of tpm_tis_core_init
+ - tpm: fix invalid locking in NONBLOCKING mode
+ - iommu: fix KASAN use-after-free in iommu_insert_resv_region
+ - iommu: set group default domain before creating direct mappings
+ - iommu/vt-d: Fix dmar pte read access not set error
+ - iommu/vt-d: Set ISA bridge reserved region as relaxable
+ - iommu/vt-d: Allocate reserved region for ISA with correct permission
+ - [armhf] can: flexcan: fix possible deadlock and out-of-order reception
+ after wakeup
+ - [armhf] can: flexcan: poll MCR_LPM_ACK instead of GPR ACK for stop mode
+ acknowledgment
+ - can: kvaser_usb: kvaser_usb_leaf: Fix some info-leaks to USB devices
+ (CVE-2019-19947)
+ - usb: xhci: Fix build warning seen with CONFIG_PM=n
+ - ath10k: Revert "ath10k: add cleanup in ath10k_sta_state()"
+ - md: avoid invalid memory access for array sb->dev_roles
+ - [s390x] ftrace: fix endless recursion in function_graph tracer
+ - [armhf] can: flexcan: add low power enter/exit acknowledgment helper
+ - usbip: Fix receive error in vhci-hcd when using scatter-gather
+ - usbip: Fix error path of vhci_recv_ret_submit()
+ - cpufreq: Avoid leaving stale IRQ work items during CPU offline
+ - mm: vmscan: protect shrinker idr replace with CONFIG_MEMCG
+ - [x86] intel_th: pci: Add Comet Lake PCH-V support
+ - [x86] intel_th: pci: Add Elkhart Lake SOC support
+ - [x86] intel_th: Fix freeing IRQs
+ - [x86] intel_th: msu: Fix window switching without windows
+ - [x86] platform/x86: hp-wmi: Make buffer for HPWMI_FEATURE2_QUERY 128
+ bytes
+ - [x86] staging: comedi: gsc_hpdi: check dma_alloc_coherent() return value
+ - [x86] pinctrl: baytrail: Really serialize all register accesses
+ - ext4: fix ext4_empty_dir() for directories with holes (CVE-2019-19037)
+ - ext4: check for directory entries too close to block end
+ - ext4: unlock on error in ext4_expand_extra_isize()
+ - ext4: validate the debug_want_extra_isize mount option at parse time
+ - [powerpc*] KVM: PPC: Book3S HV: Fix regression on big endian hosts
+ - [x86] kvm: x86: Host feature SSBD doesn't imply guest feature
+ SPEC_CTRL_SSBD
+ - [x86] kvm: x86: Host feature SSBD doesn't imply guest feature AMD_SSBD
+ - [arm64,armhf] KVM: arm/arm64: Properly handle faulting of device
+ mappings
+ - [arm64] KVM: arm64: Ensure 'params' is initialised when looking up sys
+ register
+ - [x86] intel: Disable HPET on Intel Coffee Lake H platforms
+ - [x86] MCE/AMD: Do not use rdmsr_safe_on_cpu() in smca_configure()
+ - [x86] MCE/AMD: Allow Reserved types to be overwritten in smca_banks[]
+ - [x86] mce: Fix possibly incorrect severity calculation on AMD
+ - [powerpc*] irq: fix stack overflow verification
+ - [powerpc*] ocxl: Fix concurrent AFU open and device removal
+ - [arm64] mmc: sdhci-msm: Correct the offset and value for DDR_CONFIG
+ register
+ - mmc: sdhci: Update the tuning failed messages to pr_debug level
+ - mmc: sdhci: Workaround broken command queuing on Intel GLK
+ - mmc: sdhci: Add a quirk for broken command queuing
+ - nbd: fix shutdown and recv work deadlock v2
+ - iwlwifi: pcie: move power gating workaround earlier in the flow
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.8
+ - Revert "MIPS: futex: Restore \n after sync instructions"
+ - Revert "MIPS: futex: Emit Loongson3 sync workarounds within asm"
+ - scsi: lpfc: Fix spinlock_irq issues in lpfc_els_flush_cmd()
+ - scsi: lpfc: Fix discovery failures when target device connectivity
+ bounces
+ - scsi: mpt3sas: Fix clear pending bit in ioctl status
+ - scsi: lpfc: Fix locking on mailbox command completion
+ - scsi: mpt3sas: Reject NVMe Encap cmnds to unsupported HBA
+ - [armhf] gpio: mxc: Only get the second IRQ when there is more than one
+ IRQ
+ - scsi: lpfc: Fix list corruption in lpfc_sli_get_iocbq
+ - Input: atmel_mxt_ts - disable IRQ across suspend
+ - f2fs: fix to update time in lazytime mode
+ - [x86] platform/x86: peaq-wmi: switch to using polled mode of input
+ devices
+ - [arm64,armhf] iommu: rockchip: Free domain on .domain_free
+ - [arm64,armhf] iommu/tegra-smmu: Fix page tables in > 4 GiB memory
+ - scsi: target: compare full CHAP_A Algorithm strings
+ - scsi: lpfc: Fix hardlockup in lpfc_abort_handler
+ - scsi: lpfc: Fix SLI3 hba in loop mode not discovering devices
+ - scsi: csiostor: Don't enable IRQs too early
+ - [arm64] scsi: hisi_sas: Replace in_softirq() check in
+ hisi_sas_task_exec()
+ - [arm64] scsi: hisi_sas: Delete the debugfs folder of hisi_sas when the
+ probe fails
+ - [powerpc*] pseries: Mark accumulate_stolen_time() as notrace
+ - [powerpc*] pseries: Don't fail hash page table insert for bolted mapping
+ - dma-mapping: Add vmap checks to dma_map_single()
+ - dma-mapping: fix handling of dma-ranges for reserved memory (again)
+ - clocksource/drivers/timer-of: Use unique device name instead of timer
+ - [powerpc*] security/book3s64: Report L1TF status in sysfs
+ - [powerpc*] book3s64/hash: Add cond_resched to avoid soft lockup warning
+ - ext4: update direct I/O read lock pattern for IOCB_NOWAIT
+ - ext4: iomap that extends beyond EOF should be marked dirty
+ - jbd2: Fix statistics for the number of logged blocks
+ - scsi: tracing: Fix handling of TRANSFER LENGTH == 0 for READ(6) and
+ WRITE(6)
+ - scsi: lpfc: Fix unexpected error messages during RSCN handling
+ - scsi: lpfc: Fix duplicate unreg_rpi error in port offline flow
+ - f2fs: fix to update dir's i_pino during cross_rename
+ - [arm64] clk: qcom: smd: Add missing pnoc clock
+ - [arm64] clk: qcom: Allow constant ratio freq tables for rcg
+ - clk: clk-gpio: propagate rate change to parent
+ - dma-direct: check for overflows on 32 bit DMA addresses
+ - fs/quota: handle overflows of sysctl fs.quota.* and report as unsigned
+ long
+ - [arm64] iommu/arm-smmu-v3: Don't display an error when IRQ lines are
+ missing
+ - [armhf] i2c: stm32f7: fix & reorder remove & probe error handling
+ - iomap: fix return value of iomap_dio_bio_actor on 32bit systems
+ - scsi: lpfc: fix: Coverity: lpfc_cmpl_els_rsp(): Null pointer
+ dereferences
+ - [m68k] scsi: zorro_esp: Limit DMA transfers to 65536 bytes (except on
+ Fastlane)
+ - [powerpc*] PCI: rpaphp: Fix up pointer to first drc-info entry
+ - scsi: ufs: fix potential bug which ends in system hang
+ - [powerpc*] PCI: rpaphp: Don't rely on firmware feature to imply drc-info
+ support
+ - [powerpc*] PCI: rpaphp: Annotate and correctly byte swap DRC properties
+ - [powerpc*] PCI: rpaphp: Correctly match ibm, my-drc-index to drc-name
+ when using drc-info
+ - [powerpc*] security: Fix wrong message when RFI Flush is disable
+ - [powerpc*] eeh: differentiate duplicate detection message
+ - [powerpc*] book3s/mm: Update Oops message to print the correct
+ translation in use
+ - bcache: at least try to shrink 1 node in bch_mca_scan()
+ - HID: quirks: Add quirk for HP MSU1465 PIXART OEM mouse
+ - HID: logitech-hidpp: Silence intermittent get_battery_capacity errors
+ - HID: i2c-hid: fix no irq after reset on raydium 3118
+ - [armhf] 8937/1: spectre-v2: remove Brahma-B53 from hardening
+ - libnvdimm/btt: fix variable 'rc' set but not used
+ - HID: Improve Windows Precision Touchpad detection.
+ - HID: rmi: Check that the RMI_STARTED bit is set before unregistering the
+ RMI transport device
+ - watchdog: prevent deferral of watchdogd wakeup on RT
+ - watchdog: Fix the race between the release of watchdog_core_data and
+ cdev
+ - scsi: pm80xx: Fix for SATA device discovery
+ - scsi: ufs: Fix error handing during hibern8 enter
+ - scsi: scsi_debug: num_tgts must be >= 0
+ - scsi: target: core: Release SPC-2 reservations when closing a session
+ - scsi: ufs: Fix up auto hibern8 enablement
+ - scsi: iscsi: Don't send data to unbound connection
+ - scsi: target: iscsi: Wait for all commands to finish before freeing a
+ session
+ - f2fs: Fix deadlock in f2fs_gc() context during atomic files handling
+ - [x86] Drivers: hv: vmbus: Fix crash handler reset of Hyper-V synic
+ - apparmor: fix unsigned len comparison with less than zero
+ - drm/amdgpu: Call find_vma under mmap_sem
+ - cifs: Fix use-after-free bug in cifs_reconnect()
+ - io_uring: io_allocate_scq_urings() should return a sane state
+ - cdrom: respect device capabilities during opening action
+ - cifs: move cifsFileInfo_put logic into a work-queue
+ - perf diff: Use llabs() with 64-bit values
+ - perf script: Fix brstackinsn for AUXTRACE
+ - perf regs: Make perf_reg_name() return "unknown" instead of NULL
+ - [s390x] zcrypt: handle new reply code FILTERED_BY_HYPERVISOR
+ - [s390x] unwind: filter out unreliable bogus %r14
+ - [s390x] cpum_sf: Check for SDBT and SDB consistency
+ - ocfs2: fix passing zero to 'PTR_ERR' warning
+ - [s390x] disable preemption when switching to nodat stack with
+ CALL_ON_STACK
+ - mm/hugetlbfs: fix error handling when setting up mounts
+ - kernel: sysctl: make drop_caches write-only
+ - userfaultfd: require CAP_SYS_PTRACE for UFFD_FEATURE_EVENT_FORK
+ - sctp: fix err handling of stream initialization
+ - md: make sure desc_nr less than MD_SB_DISKS
+ - Revert "iwlwifi: assign directly to iwl_trans->cfg in QuZ detection"
+ - netfilter: ebtables: compat: reject all padding in matches/watchers
+ - 6pack,mkiss: fix possible deadlock
+ - [powerpc*] Fix __clear_user() with KUAP enabled
+ - net/smc: add fallback check to connect()
+ - netfilter: bridge: make sure to pull arp header in br_nf_forward_arp()
+ - inetpeer: fix data-race in inet_putpeer / inet_putpeer
+ - net: add a READ_ONCE() in skb_peek_tail()
+ - net: icmp: fix data-race in cmp_global_allow()
+ - hrtimer: Annotate lockless access to timer->state
+ - tomoyo: Don't use nifty names on sockets.
+ - uaccess: disallow > INT_MAX copy sizes
+ - drm: limit to INT_MAX in create_blob ioctl
+ - xfs: fix mount failure crash on invalid iclog memory access
+ - cxgb4/cxgb4vf: fix flow control display for auto negotiation
+ - [armhf] net: dsa: bcm_sf2: Fix IP fragment location and behavior
+ - net/mlxfw: Fix out-of-memory error in mfa2 flash burning
+ - net: phy: aquantia: add suspend / resume ops for AQR105
+ - net/sched: act_mirred: Pull mac prior redir to non mac_header_xmit
+ device
+ - net/sched: add delete_empty() to filters and use it in cls_flower
+ - net_sched: sch_fq: properly set sk->sk_pacing_status
+ - [arm64,armhf] net: stmmac: dwmac-meson8b: Fix the RGMII TX delay on
+ Meson8b/8m2 SoCs
+ - ptp: fix the race between the release of ptp_clock and cdev
+ - tcp: Fix highest_sack and highest_sack_seq
+ - udp: fix integer overflow while computing available space in sk_rcvbuf
+ - bnxt_en: Fix MSIX request logic for RDMA driver.
+ - bnxt_en: Free context memory in the open path if firmware has been
+ reset.
+ - bnxt_en: Return error if FW returns more data than dump length
+ - bnxt_en: Fix bp->fw_health allocation and free logic.
+ - bnxt_en: Remove unnecessary NULL checks for fw_health
+ - bnxt_en: Fix the logic that creates the health reporters.
+ - bnxt_en: Add missing devlink health reporters for VFs.
+ - net: add bool confirm_neigh parameter for dst_ops.update_pmtu
+ - ip6_gre: do not confirm neighbor when do pmtu update
+ - gtp: do not confirm neighbor when do pmtu update
+ - net/dst: add new function skb_dst_update_pmtu_no_confirm
+ - tunnel: do not confirm neighbor when do pmtu update
+ - vti: do not confirm neighbor when do pmtu update
+ - sit: do not confirm neighbor when do pmtu update
+ - net/dst: do not confirm neighbor for vxlan and geneve pmtu update
+ - [arm64,armhf] net: marvell: mvpp2: phylink requires the link interrupt
+ - gtp: fix wrong condition in gtp_genl_dump_pdp()
+ - gtp: avoid zero size hashtable
+ - bonding: fix active-backup transition after link failure
+ - tcp: do not send empty skb from tcp_write_xmit()
+ - tcp/dccp: fix possible race __inet_lookup_established()
+ - [x86] hv_netvsc: Fix tx_table init in rndis_set_subchannel()
+ - gtp: fix an use-after-free in ipv4_pdp_find()
+ - gtp: do not allow adding duplicate tid and ms_addr pdp context
+ - bnxt: apply computed clamp value for coalece parameter
+ - ipv6/addrconf: only check invalid header values when
+ NETLINK_F_STRICT_CHK is set
+ - [arm64,armhf] net: phylink: fix interface passed to mac_link_up
+ - net: ena: fix napi handler misbehavior when the napi budget is zero
+ - vhost/vsock: accept only packets with the right dst_cid
+ - mm/hugetlbfs: fix for_each_hstate() loop in init_hugetlbfs_fs()
+
+ [ Salvatore Bonaccorso ]
+ * debian/lib/python/debian_linux/abi.py: Add one missing string replacement.
+ * debian/lib/python/debian_linux/abi.py: strip whitespace characters in
+ line.
+ * [rt] Refresh lib-ubsan-Don-t-seralize-UBSAN-report.patch for context
+ changes in 5.4.7
+ * [rt] Drop x86-ioapic-Prevent-inconsistent-state-when-moving-an.patch
+ * Enable EROFS filesystem support as module.
+ Enable EROFS_FS as module, enable EROFS_FS_XATTR, EROFS_FS_POSIX_ACL,
+ EROFS_FS_SECURITY, EROFS_FS_ZIP and EROFS_FS_CLUSTER_PAGE_LIMIT.
+ Thanks to Gao Xiang <gaoxiang25@huawei.com> (Closes: #946569)
+ * Enable additional netfilter modules.
+ Enable NFT_BRIDGE_META, NF_CONNTRACK_BRIDGE, IP6_NF_MATCH_SRH, NFT_XFRM
+ and NFT_SYNPROXY as modules.
+ Thanks to Arturo Borrero Gonzalez (Closes: #948031)
+ * [rt] Drop watchdog-prevent-deferral-of-watchdogd-wakeup-on-RT.patch
+ * [rt] Refresh Use-CONFIG_PREEMPTION.patch (Context changes in 5.4.8)
+ * Bump ABI to 2
+
+ [ YunQiang Su ]
+ * [mips*/octeon] Fix ftbfs on mips* due to octeon image-file:
+ move "image-file: linux" to octeon_build from octeon_image.
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 05 Jan 2020 15:40:37 +0100
+
+linux (5.4.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.3
+ - rsi: release skb if rsi_prepare_beacon fails (CVE-2019-19071)
+ - lp: fix sparc64 LPSETTIMEOUT ioctl
+ - time: Zero the upper 32-bits in __kernel_timespec on 32-bit
+ - usb: gadget: u_serial: add missing port entry locking
+ - [arm64] tty: serial: msm_serial: Fix flow control
+ - [arm64,armel,armhf] serial: pl011: Fix DMA ->flush_buffer()
+ - serial: serial_core: Perform NULL checks for break_ctl ops
+ - [armhf] serial: stm32: fix clearing interrupt error flags
+ - serial: 8250_dw: Avoid double error messaging when IRQ absent
+ - mwifiex: Re-work support for SDIO HW reset
+ - io_uring: fix dead-hung for non-iter fixed rw
+ - io_uring: transform send/recvmsg() -ERESTARTSYS to -EINTR
+ - fuse: fix leak of fuse_io_priv
+ - fuse: verify nlink
+ - fuse: verify write return
+ - fuse: verify attributes
+ - io_uring: fix missing kmap() declaration on powerpc
+ - io_uring: ensure req->submit is copied when req is deferred
+ - SUNRPC: Avoid RPC delays when exiting suspend
+ - ALSA: hda/realtek - Enable internal speaker of ASUS UX431FLC
+ - ALSA: hda/realtek - Enable the headset-mic on a Xiaomi's laptop
+ - ALSA: hda/realtek - Dell headphone has noise on unmute for ALC236
+ - ALSA: hda/realtek - Fix inverted bass GPIO pin on Acer 8951G
+ - ALSA: pcm: oss: Avoid potential buffer overflows
+ - ALSA: hda - Add mute led support for HP ProBook 645 G4
+ - ALSA: hda: Modify stream stripe mask only when needed
+ - Input: synaptics - switch another X1 Carbon 6 to RMI/SMbus
+ - Input: synaptics-rmi4 - re-enable IRQs in f34v7_do_reflash
+ - [x86] Input: synaptics-rmi4 - don't increment rmiaddr for SMBus
+ transfers
+ - Input: goodix - add upside-down quirk for Teclast X89 tablet
+ - media: rc: mark input device as pointing stick
+ - [i386] x86/mm/32: Sync only to VMALLOC_END in vmalloc_sync_all()
+ - [x86] PCI: Avoid AMD FCH XHCI USB PME# from D0 defect
+ - CIFS: Fix NULL-pointer dereference in smb2_push_mandatory_locks
+ - CIFS: Fix SMB2 oplock break processing
+ - tty: vt: keyboard: reject invalid keycodes
+ - can: slcan: Fix use-after-free Read in slcan_open
+ - nfsd: Ensure CLONE persists data and metadata changes to the target file
+ - nfsd: restore NFSv3 ACL support
+ - kernfs: fix ino wrap-around detection
+ - jbd2: Fix possible overflow in jbd2_log_space_left()
+ - [arm64] drm/msm: fix memleak on release
+ - drm: damage_helper: Fix race checking plane->state->fb
+ - [i386] drm/i810: Prevent underflow in ioctl
+ - [arm64] Validate tagged addresses in access_ok() called from kernel
+ threads
+ - [powerpc*] KVM: PPC: Book3S HV: XIVE: Free previous EQ page when setting
+ up a new one
+ - [powerpc*] KVM: PPC: Book3S HV: XIVE: Fix potential page leak on error
+ path
+ - [powerpc*] KVM: PPC: Book3S HV: XIVE: Set kvm->arch.xive when VPs are
+ allocated
+ - [x86] KVM: nVMX: Always write vmcs02.GUEST_CR3 during nested VM-Enter
+ - [arm64,armhf] KVM: vgic: Don't rely on the wrong pending table
+ - [x86] KVM: do not modify masked bits of shared MSRs
+ - [x86] KVM: fix presentation of TSX feature in ARCH_CAPABILITIES
+ - [x86] KVM: Remove a spurious export of a static function
+ - [x86] KVM: Grab KVM's srcu lock when setting nested state
+ - crypto: af_alg - cast ki_complete ternary op to int
+ - [i386] crypto: geode-aes - switch to skcipher for cbc(aes) fallback
+ - [x86] crypto: ccp - fix uninitialized list head
+ - crypto: ecdh - fix big endian bug in ECC library
+ - crypto: user - fix memory leak in crypto_report (CVE-2019-19062)
+ - [armhf] spi: stm32-qspi: Fix kernel oops when unbinding driver
+ - spi: Fix SPI_CS_HIGH setting when using native and GPIO CS
+ - spi: Fix NULL pointer when setting SPI_CS_HIGH for GPIO CS
+ - can: ucan: fix non-atomic allocation in completion handler
+ - [amd64] RDMA/qib: Validate ->show()/store() callbacks before calling
+ them
+ - rfkill: allocate static minor
+ - bdev: Factor out bdev revalidation into a common helper
+ - bdev: Refresh bdev size for disks without partitioning
+ - iomap: Fix pipe page leakage during splicing
+ - thermal: Fix deadlock in thermal thermal_zone_device_check
+ - vcs: prevent write access to vcsu devices
+ - Revert "serial/8250: Add support for NI-Serial PXI/PXIe+485 devices"
+ - binder: Fix race between mmap() and binder_alloc_print_pages()
+ - binder: Prevent repeated use of ->mmap() via NULL mapping
+ - binder: Handle start==NULL in binder_update_page_range()
+ - [x86] KVM: fix out-of-bounds write in KVM_GET_EMULATED_CPUID
+ (CVE-2019-19332)
+ - ALSA: hda - Fix pending unsol events at shutdown
+ - md/raid0: Fix an error message in raid0_make_request()
+ - drm/mcde: Fix an error handling path in 'mcde_probe()'
+ - perf script: Fix invalid LBR/binary mismatch error
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.4
+ - usb: gadget: configfs: Fix missing spin_lock_init()
+ - [x86] usb: gadget: pch_udc: fix use after free
+ - nvme: Namepace identification descriptor list is optional
+ - Revert "nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T"
+ - scsi: lpfc: Fix bad ndlp ptr in xri aborted handling
+ - [s390x] scsi: zfcp: trace channel log even for FCP command responses
+ - scsi: qla2xxx: Do command completion on abort timeout
+ - scsi: qla2xxx: Fix driver unload hang
+ - scsi: qla2xxx: Fix double scsi_done for abort path
+ - scsi: qla2xxx: Fix memory leak when sending I/O fails
+ - compat_ioctl: add compat_ptr_ioctl()
+ - ceph: fix compat_ioctl for ceph_dir_operations
+ - [arm64] media: venus: remove invalid compat_ioctl32 handler
+ - USB: uas: honor flag to avoid CAPACITY16
+ - USB: uas: heed CAPACITY_HEURISTICS
+ - USB: documentation: flags on usb-storage versus UAS
+ - usb: Allow USB device to be warm reset in suspended state
+ - [arm64,armhf] usb: host: xhci-tegra: Correct phy enable sequence
+ - binder: fix incorrect calculation for num_valid
+ - staging: rtl8188eu: fix interface sanity check
+ - staging: rtl8712: fix interface sanity check
+ - [arm*] staging: vchiq: call unregister_chrdev_region() when driver
+ registration fails
+ - staging: gigaset: fix general protection fault on probe
+ - staging: gigaset: fix illegal free on probe errors
+ - staging: gigaset: add endpoint-type sanity check
+ - usb: xhci: only set D3hot for pci device
+ - xhci: Fix memory leak in xhci_add_in_port()
+ - xhci: fix USB3 device initiated resume race with roothub autosuspend
+ - xhci: Increase STS_HALT timeout in xhci_suspend()
+ - xhci: handle some XHCI_TRUST_TX_LENGTH quirks cases as default
+ behaviour.
+ - xhci: make sure interrupts are restored to correct state
+ - [x86] iio: imu: inv_mpu6050: fix temperature reporting using bad unit
+ - USB: atm: ueagle-atm: add missing endpoint check
+ - USB: idmouse: fix interface sanity checks
+ - USB: serial: io_edgeport: fix epic endpoint lookup
+ - usb: roles: fix a potential use after free
+ - USB: adutux: fix interface sanity check
+ - usb: core: urb: fix URB structure initialization function
+ - usb: mon: Fix a deadlock in usbmon between mmap and read
+ - [arm64,amd64,i386] tpm: add check after commands attribs tab allocation
+ - [arm64,amd64,i386] tpm: Switch to platform_get_irq_optional()
+ - brcmfmac: disable PCIe interrupts before bus reset
+ - mtd: rawnand: Change calculating of position page containing BBM
+ - virtio-balloon: fix managed page counts when migrating pages between
+ zones
+ - usb: dwc3: pci: add ID for the Intel Comet Lake -H variant
+ - [arm64,armhf] usb: dwc3: gadget: Fix logical condition
+ - [arm64,armhf] usb: dwc3: gadget: Clear started flag for non-IOC
+ - [arm64,armhf] usb: dwc3: ep0: Clear started flag on completion
+ - [x86] usb: typec: fix use after free in typec_register_port()
+ - iwlwifi: pcie: fix support for transmitting SKBs with fraglist
+ - btrfs: check page->mapping when loading free space cache
+ - btrfs: use btrfs_block_group_cache_done in update_block_group
+ - btrfs: use refcount_inc_not_zero in kill_all_nodes
+ - Btrfs: fix metadata space leak on fixup worker failure to set range as
+ delalloc
+ - Btrfs: fix negative subv_writers counter and data space leak after
+ buffered write
+ - btrfs: Avoid getting stuck during cyclic writebacks
+ - btrfs: Remove btrfs_bio::flags member
+ - Btrfs: send, skip backreference walking for extents with many references
+ - btrfs: record all roots for rename exchange on a subvol
+ - rtlwifi: rtl8192de: Fix missing code to retrieve RX buffer address
+ - rtlwifi: rtl8192de: Fix missing callback that tests for hw release of
+ buffer
+ - rtlwifi: rtl8192de: Fix missing enable interrupt flag
+ - ovl: fix lookup failure on multi lower squashfs
+ - ovl: fix corner case of non-unique st_dev;st_ino
+ - ovl: relax WARN_ON() on rename to self
+ - [arm*] hwrng: omap - Fix RNG wait loop timeout
+ - dm writecache: handle REQ_FUA
+ - dm zoned: reduce overhead of backing device checks
+ - workqueue: Fix spurious sanity check failures in destroy_workqueue()
+ - workqueue: Fix pwq ref leak in rescuer_thread()
+ - ASoC: rt5645: Fixed buddy jack support.
+ - ASoC: rt5645: Fixed typo for buddy jack support.
+ - ASoC: Jack: Fix NULL pointer dereference in snd_soc_jack_report
+ - md: improve handling of bio with REQ_PREFLUSH in md_flush_request()
+ - blk-mq: avoid sysfs buffer overflow with too many CPU cores
+ - cgroup: pids: use atomic64_t for pids->limit
+ - wil6210: check len before memcpy() calls
+ - ar5523: check NULL before memcpy() in ar5523_cmd()
+ - [s390x] mm: properly clear _PAGE_NOEXEC bit when it is not supported
+ - cpuidle: Do not unset the driver if it is there already
+ - cpuidle: use first valid target residency as poll time
+ - [arm64,armhf] drm/panfrost: Open/close the perfcnt BO
+ - [powerpc*] perf: Disable trace_imc pmu
+ - [x86] intel_th: Fix a double put_device() in error path
+ - [x86] intel_th: pci: Add Ice Lake CPU support
+ - [x86] intel_th: pci: Add Tiger Lake CPU support
+ - PM / devfreq: Lock devfreq in trans_stat_show
+ - [powerpc*] cpufreq: powernv: fix stack bloat and hard limit on number of
+ CPUs
+ - ALSA: fireface: fix return value in error path of isochronous resources
+ reservation
+ - ALSA: oxfw: fix return value in error path of isochronous resources
+ reservation
+ - ALSA: hda/realtek - Line-out jack doesn't work on a Dell AIO
+ - ACPI / utils: Move acpi_dev_get_first_match_dev() under CONFIG_ACPI
+ - ACPI: LPSS: Add LNXVIDEO -> BYT I2C7 to lpss_device_links
+ - ACPI: LPSS: Add LNXVIDEO -> BYT I2C1 to lpss_device_links
+ - ACPI: LPSS: Add dmi quirk for skipping _DEP check for some device-links
+ - ACPI / hotplug / PCI: Allocate resources directly under the non-hotplug
+ bridge
+ - ACPI: OSL: only free map once in osl.c
+ - ACPI: bus: Fix NULL pointer check in acpi_bus_get_private_data()
+ - ACPI: EC: Rework flushing of pending work
+ - ACPI: PM: Avoid attaching ACPI PM domain to certain devices
+ - [arm64] pinctrl: armada-37xx: Fix irq mask access in
+ armada_37xx_irq_set_type()
+ - [armhf] pinctrl: samsung: Add of_node_put() before return in error path
+ - [armhf] pinctrl: samsung: Fix device node refcount leaks in Exynos
+ wakeup controller init
+ - [armhf] pinctrl: samsung: Fix device node refcount leaks in init code
+ - [armhf] mmc: host: omap_hsmmc: add code for special init of wl1251 to
+ get rid of pandora_wl1251_init_card
+ - RDMA/core: Fix ib_dma_max_seg_size()
+ - ppdev: fix PPGETTIME/PPSETTIME ioctls
+ - [powerpc*] Allow 64bit VDSO __kernel_sync_dicache to work across ranges
+ >4GB
+ - [powerpc*] xive: Prevent page fault issues in the machine crash handler
+ - [powerpc*] Allow flush_icache_range to work across ranges >4GB
+ - [powerpc*] xive: Skip ioremap() of ESB pages for LSI interrupts
+ - video/hdmi: Fix AVI bar unpack
+ - quota: Check that quota is not dirty before release
+ - ext2: check err when partial != NULL
+ - seccomp: avoid overflow in implicit constant conversion
+ - quota: fix livelock in dquot_writeback_dquots
+ - ext4: Fix credit estimate for final inode freeing
+ - reiserfs: fix extended attributes on the root directory
+ - scsi: qla2xxx: Fix SRB leak on switch command timeout
+ - scsi: qla2xxx: Fix a dma_pool_free() call
+ - Revert "scsi: qla2xxx: Fix memory leak when sending I/O fails"
+ - [armhf] omap: pdata-quirks: revert pandora specific gpiod additions
+ - [armhf] omap: pdata-quirks: remove openpandora quirks for mmc3 and
+ wl1251
+ - [powerpc*] Avoid clang warnings around setjmp and longjmp
+ - [powerpc*] Fix vDSO clock_getres()
+ - mm, memfd: fix COW issue on MAP_PRIVATE and F_SEAL_FUTURE_WRITE mappings
+ - mm: memcg/slab: wait for !root kmem_cache refcnt killing on root
+ kmem_cache destruction
+ - ext4: work around deleting a file with i_nlink == 0 safely
+ - [arm64] firmware: qcom: scm: Ensure 'a0' status code is treated as
+ signed
+ - [s390x] smp,vdso: fix ASCE handling
+ - [s390x] kaslr: store KASLR offset for early dumps
+ - mm/shmem.c: cast the type of unmap_start to u64
+ - [powerpc*] Define arch_is_kernel_initmem_freed() for lockdep
+ - rtc: disable uie before setting time and enable after
+ - splice: only read in as much information as there is pipe buffer space
+ - ext4: fix a bug in ext4_wait_for_tail_page_commit
+ - ext4: fix leak of quota reservations
+ - blk-mq: make sure that line break can be printed
+ - workqueue: Fix missing kfree(rescuer) in destroy_workqueue()
+ - r8169: fix rtl_hw_jumbo_disable for RTL8168evl
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.5
+ - inet: protect against too small mtu values.
+ - mqprio: Fix out-of-bounds access in mqprio_dump
+ - net: bridge: deny dev_set_mac_address() when unregistering
+ - net: dsa: fix flow dissection on Tx path
+ - [armhf] net: ethernet: ti: cpsw: fix extra rx interrupt
+ - net: sched: fix dump qlen for sch_mq/sch_mqprio with NOLOCK subqueues
+ - net_sched: validate TCA_KIND attribute in tc_chain_tmplt_add()
+ - [arm64] net: thunderx: start phy before starting autonegotiation
+ - openvswitch: support asymmetric conntrack
+ - tcp: md5: fix potential overestimation of TCP option space
+ - tipc: fix ordering of tipc module init and exit routine
+ - net/mlx5e: Query global pause state before setting prio2buffer
+ - net: ipv6: add net argument to ip6_dst_lookup_flow
+ - net: ipv6_stub: use ip6_dst_lookup_flow instead of ip6_dst_lookup
+ - tcp: fix rejected syncookies due to stale timestamps
+ - tcp: tighten acceptance of ACKs not matching a child socket
+ - tcp: Protect accesses to .ts_recent_stamp with {READ,WRITE}_ONCE()
+ - net: core: rename indirect block ingress cb function
+ - net: sched: allow indirect blocks to bind to clsact in TC
+ - cls_flower: Fix the behavior using port ranges with hw-offload
+ - gre: refetch erspan header from skb->data after pskb_may_pull()
+ - Fixed updating of ethertype in function skb_mpls_pop
+ - net: Fixed updating of ethertype in skb_mpls_push()
+ - net/mlx5e: Fix TXQ indices to be sequential
+ - net/mlx5e: Fix SFF 8472 eeprom length
+ - net/mlx5e: Fix freeing flow with kfree() and not kvfree()
+ - net/mlx5e: Fix translation of link mode into speed
+ - net/mlx5e: ethtool, Fix analysis of speed setting
+ - page_pool: do not release pool until inflight == 0.
+ - xdp: obtain the mem_id mutex before trying to remove an entry.
+ - r8169: add missing RX enabling for WoL on RTL8125
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.6
+ - USB: Fix incorrect DMA allocations for local memory pool drivers
+ - mmc: block: Make card_busy_detect() a bit more generic
+ - mmc: block: Add CMD13 polling for MMC IOCTLS with R1B response
+ - mmc: core: Drop check for mmc_card_is_removable() in mmc_rescan()
+ - mmc: core: Re-work HW reset for SDIO cards
+ - PCI/PM: Always return devices to D0 when thawing
+ - PCI: pciehp: Avoid returning prematurely from sysfs requests
+ - PCI: Fix Intel ACS quirk UPDCR register address
+ - PCI/MSI: Fix incorrect MSI-X masking on resume
+ - PCI: Do not use bus number zero from EA capability
+ - PCI: Apply Cavium ACS quirk to ThunderX2 and ThunderX3
+ - PM / QoS: Redefine FREQ_QOS_MAX_DEFAULT_VALUE to S32_MAX
+ - block: fix "check bi_size overflow before merge"
+ - gfs2: Multi-block allocations in gfs2_page_mkwrite
+ - gfs2: fix glock reference problem in gfs2_trans_remove_revoke
+ - [arm64] rpmsg: glink: Fix reuse intents memory leak issue
+ - [arm64] rpmsg: glink: Fix use after free in open_ack TIMEOUT case
+ - [arm64] rpmsg: glink: Put an extra reference during cleanup
+ - [arm64] rpmsg: glink: Fix rpmsg_register_device err handling
+ - [arm64] rpmsg: glink: Don't send pending rx_done during remove
+ - [arm64] rpmsg: glink: Free pending deferred work on remove
+ - cifs: smbd: Return -EAGAIN when transport is reconnecting
+ - cifs: smbd: Only queue work for error recovery on memory registration
+ - cifs: smbd: Add messages on RDMA session destroy and reconnection
+ - cifs: smbd: Return -EINVAL when the number of iovs exceeds
+ SMBDIRECT_MAX_SGE
+ - cifs: smbd: Return -ECONNABORTED when trasnport is not in connected
+ state
+ - cifs: Don't display RDMA transport on reconnect
+ - CIFS: Respect O_SYNC and O_DIRECT flags during reconnect
+ - CIFS: Close open handle after interrupted close
+ - CIFS: Do not miss cancelled OPEN responses
+ - CIFS: Fix NULL pointer dereference in mid callback
+ - cifs: Fix retrieval of DFS referrals in cifs_mount()
+ - [armhf] ARM: tegra: Fix FLOW_CTLR_HALT register clobbering by
+ tegra_resume()
+ - vfio/pci: call irq_bypass_unregister_producer() before freeing irq
+ - dma-buf: Fix memory leak in sync_file_merge()
+ - [arm64,armhf] drm/panfrost: Fix a race in panfrost_ioctl_madvise()
+ - [arm64,armhf] drm/panfrost: Fix a BO leak in panfrost_ioctl_mmap_bo()
+ - [arm64,armhf] drm/panfrost: Fix a race in panfrost_gem_free_object()
+ - [x86] drm/mgag200: Extract device type from flags
+ - [x86] drm/mgag200: Store flags from PCI driver data in device structure
+ - [x86] drm/mgag200: Add workaround for HW that does not support
+ 'startadd'
+ - [x86] drm/mgag200: Flag all G200 SE A machines as broken wrt <startadd>
+ - [arm64] drm: meson: venc: cvbs: fix CVBS mode matching
+ - dm mpath: remove harmful bio-based optimization
+ - dm btree: increase rebalance threshold in __rebalance2()
+ - dm clone metadata: Track exact changes per transaction
+ - dm clone metadata: Use a two phase commit
+ - dm clone: Flush destination device before committing metadata
+ - dm thin metadata: Add support for a pre-commit callback
+ - dm thin: Flush data device before committing metadata
+ - scsi: ufs: Disable autohibern8 feature in Cadence UFS
+ - scsi: iscsi: Fix a potential deadlock in the timeout handler
+ - scsi: qla2xxx: Ignore NULL pointer in tcm_qla2xxx_free_mcmd
+ - scsi: qla2xxx: Initialize free_work before flushing it
+ - scsi: qla2xxx: Added support for MPI and PEP regions for ISP28XX
+ - scsi: qla2xxx: Change discovery state before PLOGI
+ - scsi: qla2xxx: Correctly retrieve and interpret active flash region
+ - scsi: qla2xxx: Fix incorrect SFUB length used for Secure Flash Update MB
+ Cmd
+ - drm/nouveau/kms/nv50-: Call outp_atomic_check_view() before handling PBN
+ - drm/nouveau/kms/nv50-: Store the bpc we're using in nv50_head_atom
+ - drm/nouveau/kms/nv50-: Limit MST BPC to 8
+ - [x86] drm/i915/fbc: Disable fbc by default on all glk+
+ - drm/radeon: fix r1xx/r2xx register checker for POT textures
+ - drm/dp_mst: Correct the bug in drm_dp_update_payload_part1()
+ - drm/amdgpu: initialize vm_inv_eng0_sem for gfxhub and mmhub
+ - drm/amdgpu: invalidate mmhub semaphore workaround in gmc9/gmc10
+ - drm/amdgpu/gfx10: explicitly wait for cp idle after halt/unhalt
+ - drm/amdgpu/gfx10: re-init clear state buffer after gpu reset
+ - drm/amdgpu: avoid using invalidate semaphore for picasso
+ - drm/amdgpu: add invalidate semaphore limit for SRIOV and picasso in gmc9
+ - ALSA: hda: Fix regression by strip mask fix
+
+ [ Joe Richey ]
+ * [amd64/cloud-amd64] tpm: Enable TPM drivers for Cloud (Closes: #946237)
+
+ [ Ben Hutchings ]
+ * [armel/rpi,armhf,arm64] Enable DEBUG_WX
+ * linux-cpupower: Fix grammar error in package description
+ * debian/control: Make library package descriptions more consistent
+ * Set ABI to 1
+ * tracing: Do not create directories if lockdown is in affect
+
+ [ Aurelien Jarno ]
+ * [armhf,arm64] Fix critical trip point on RPI 3.
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 5.4.3-rt1 and re-enable
+ * [rt] Enable PREEMPT_RT (instead of PREEMPT_RT_FULL) which is part of 5.4
+ * [rt] Update to 5.4.5-rt3
+
+ [ YunQiang Su ]
+ * [mipsel,mips64el/loongson-3] Enable AMDGPU.
+ * [mips*] switch to vmlinuz from vmlinux except octeon.
+ * [mips*] enable CONFIG_MIPS_O32_FP64_SUPPORT.
+ * [mips*] enable CONFIG_CPU_HAS_MSA except octeon.
+
+ [ Vagrant Cascadian ]
+ * [arm64] drivers/gpu/drm/sun4i: Enable DRM_SUN8I_MIXER as a module.
+ (Closes: #946510). Thanks to Andrei POPESCU.
+
+ [ Sudip Mukherjee ]
+ * Add libtraceevent packages (Closes: #944138)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 27 Dec 2019 22:17:44 +0000
+
+linux (5.4.2-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.1
+ - Bluetooth: Fix invalid-free in bcsp_close()
+ - ath9k_hw: fix uninitialized variable data
+ - ath10k: Fix a NULL-ptr-deref bug in ath10k_usb_alloc_urb_from_pipe
+ (CVE-2019-15099)
+ - ath10k: Fix HOST capability QMI incompatibility
+ - ath10k: restore QCA9880-AR1A (v1) detection
+ - Revert "Bluetooth: hci_ll: set operational frequency earlier"
+ - Revert "dm crypt: use WQ_HIGHPRI for the IO and crypt workqueues"
+ - md/raid10: prevent access of uninitialized resync_pages offset
+ - [x86] insn: Fix awk regexp warnings
+ - [x86] speculation: Fix incorrect MDS/TAA mitigation status
+ - [x86] speculation: Fix redundant MDS mitigation message
+ - nbd: prevent memory leak
+ - [i386] x86/stackframe/32: Repair 32-bit Xen PV
+ - [i386] x86/xen/32: Make xen_iret_crit_fixup() independent of frame
+ layout
+ - [i386] x86/xen/32: Simplify ring check in xen_iret_crit_fixup()
+ - [i386] x86/doublefault/32: Fix stack canaries in the double fault
+ handler
+ - [i386] x86/pti/32: Size initial_page_table correctly
+ - [i386] x86/cpu_entry_area: Add guard page for entry stack on 32bit
+ - [i386] x86/entry/32: Fix IRET exception
+ - [i386] x86/entry/32: Use %ss segment where required
+ - [i386] x86/entry/32: Move FIXUP_FRAME after pushing %fs in SAVE_ALL
+ - [i386] x86/entry/32: Unwind the ESPFIX stack earlier on exception entry
+ - [i386] x86/entry/32: Fix NMI vs ESPFIX
+ - [i386] x86/pti/32: Calculate the various PTI cpu_entry_area sizes
+ correctly, make the CPU_ENTRY_AREA_PAGES assert precise
+ - [i386] x86/entry/32: Fix FIXUP_ESPFIX_STACK with user CR3
+ - futex: Prevent robust futex exit race
+ - ALSA: usb-audio: Fix NULL dereference at parsing BADD
+ - ALSA: usb-audio: Fix Scarlett 6i6 Gen 2 port data
+ - media: vivid: Set vid_cap_streaming and vid_out_streaming to true
+ - media: vivid: Fix wrong locking that causes race conditions on streaming
+ stop (CVE-2019-18683)
+ - media: usbvision: Fix invalid accesses after device disconnect
+ - media: usbvision: Fix races among open, close, and disconnect
+ - cpufreq: Add NULL checks to show() and store() methods of cpufreq
+ - futex: Move futex exit handling into futex code
+ - futex: Replace PF_EXITPIDONE with a state
+ - exit/exec: Seperate mm_release()
+ - futex: Split futex_mm_release() for exit/exec
+ - futex: Set task::futex_state to DEAD right after handling futex exit
+ - futex: Mark the begin of futex exit explicitly
+ - futex: Sanitize exit state handling
+ - futex: Provide state handling for exec() as well
+ - futex: Add mutex around futex exit
+ - futex: Provide distinct return value when owner is exiting
+ - futex: Prevent exit livelock
+ - media: uvcvideo: Fix error path in control parsing failure
+ - media: b2c2-flexcop-usb: add sanity checking (CVE-2019-15291)
+ - media: cxusb: detect cxusb_ctrl_msg error in query
+ - media: imon: invalid dereference in imon_touch_event
+ - media: mceusb: fix out of bounds read in MCE receiver buffer
+ - ALSA: hda - Disable audio component for legacy Nvidia HDMI codecs
+ - usbip: tools: fix fd leakage in the function of read_attr_usbip_status
+ - usbip: Fix uninitialized symbol 'nents' in stub_recv_cmd_submit()
+ - usb-serial: cp201x: support Mark-10 digital force gauge
+ - USB: chaoskey: fix error case of a timeout
+ - appledisplay: fix error handling in the scheduled work
+ - USB: serial: mos7840: add USB ID to support Moxa UPort 2210
+ - USB: serial: mos7720: fix remote wakeup
+ - USB: serial: mos7840: fix remote wakeup
+ - USB: serial: option: add support for DW5821e with eSIM support
+ - USB: serial: option: add support for Foxconn T77W968 LTE modules
+ - [x86] staging: comedi: usbduxfast: usbduxfast_ai_cmdtest rounding error
+ - [powerpc*] powerpc/book3s64: Fix link stack flush on context switch
+ (CVE-2019-18660)
+ - [powerpc*] KVM: PPC: Book3S HV: Flush link stack on guest exit to host
+ kernel
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.4.2
+ - io_uring: async workers should inherit the user creds
+ - net: separate out the msghdr copy from ___sys_{send,recv}msg()
+ - net: disallow ancillary data for __sys_{send,recv}msg_file()
+ - [arm64] crypto: inside-secure - Fix stability issue with Macchiatobin
+ - driver core: platform: use the correct callback type for bus_find_device
+ - [arm64,armel,armhf] usb: dwc2: use a longer core rest timeout in
+ dwc2_core_reset()
+ - [x86] staging: rtl8192e: fix potential use after free
+ - staging: rtl8723bs: Drop ACPI device ids
+ - staging: rtl8723bs: Add 024c:0525 to the list of SDIO device-ids
+ - USB: serial: ftdi_sio: add device IDs for U-Blox C099-F9P
+ - [x86] mei: bus: prefix device names on bus with the bus name
+ - [x86] mei: me: add comet point V device id
+ - [x86] thunderbolt: Power cycle the router if NVM authentication fails
+ - [x86] fpu: Don't cache access to fpu_fpregs_owner_ctx
+ - macvlan: schedule bc_work even if error
+ - mdio_bus: don't use managed reset-controller
+ - net: macb: add missed tasklet_kill
+ - net: psample: fix skb_over_panic
+ - net: sched: fix `tc -s class show` no bstats on class with nolock
+ subqueues
+ - openvswitch: fix flow command message size
+ - sctp: Fix memory leak in sctp_sf_do_5_2_4_dupcook
+ - slip: Fix use-after-free Read in slip_open
+ - sctp: cache netns in sctp_ep_common
+ - openvswitch: drop unneeded BUG_ON() in ovs_flow_cmd_build_info()
+ - openvswitch: remove another BUG_ON()
+ - net: skmsg: fix TLS 1.3 crash with full sk_msg
+ - tipc: fix link name length check
+ - r8169: fix jumbo configuration for RTL8168evl
+ - r8169: fix resume on cable plug-in
+ - ext4: add more paranoia checking in ext4_expand_extra_isize handling
+ - Revert "jffs2: Fix possible null-pointer dereferences in
+ jffs2_add_frag_to_fragtree()"
+ - HID: core: check whether Usage Page item is after Usage ID items
+ - [x86] platform/x86: hp-wmi: Fix ACPI errors caused by too small buffer
+ - [x86] platform/x86: hp-wmi: Fix ACPI errors caused by passing 0 as input
+ size
+
+ [ Ben Hutchings ]
+ * [armel] udeb: Replace m25p80 with spi-nor in mtd-modules (fixes FTBFS)
+ * [ia64] udeb: Remove SGI SN2 modules (fixes FTBFS)
+ * iio: Enable TI_ADS1015 as module, replacing SENSORS_ADS1015
+ * [armhf] regulator: Really enable REGULATOR_STM32_PWR
+ * [armhf] drm/panel: Enable DRM_PANEL_{SONY_ACX565AKM,TPO_TD028TTEC1,
+ TPO_TD043MTEA1} as modules, replacing the corresponding omapdrm options
+ * [armhf,arm64] platform/chrome: Change chromeos drivers back to modules
+ * Build-Depend on kernel-wedge 2.102; remove workaround in debian/rules.real
+ * debian/bin: Add script to update taint list for bug reporting script
+ * linux-image: bug: Update taint list and use upstream descriptions
+ * btrfs,fanotify: Use TAINT_AUX instead of TAINT_USER for unsupported
+ features
+
+ [ Romain Perier ]
+ * Enable VIRTIO_FS and VIRTIO_PMEM (Closes: #945853)
+
+ [ Aurelien Jarno]
+ * [ppc64el] Fix building libbpf with recent binutils versions (fixes FTBFS).
+
+ [ Luca Boccassi ]
+ * verity: enable DM_VERITY_VERIFY_ROOTHASH_SIG
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 05 Dec 2019 08:37:56 +0100
+
+linux (5.4-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_5.4
+
+ [ Ben Hutchings ]
+ * lockdown: Rebase on upstream Lockdown LSM:
+ - Refresh "efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode"
+ - Update "efi: Lock down the kernel if booted in secure boot mode"
+ - Update "Add a SysRq option to lift kernel lockdown"
+ - Update "mtd: Disable slram and phram when locked down"
+ - Update "arm64: add kernel config option to lock down when in Secure Boot
+ mode"
+ - Refresh "lockdown: Refer to Debian wiki until manual page exists"
+ - Drop all other lockdown patches
+ - Enable SECURITY_LOCKDOWN_LSM, LOCK_DOWN_KERNEL_FORCE_NONE,
+ LOCK_DOWN_IN_EFI_SECURE_BOOT
+ * [armel/marvell] lockdown: Disable Lockdown as it now selects MODULE_SIG
+ * [amd64] Update "x86: Make x32 syscall support conditional …" for 5.4
+ * debian/lib/python/debian_linux/abi.py: Add support for symbol namespaces
+ * debian/bin/genpatch-rt: Fix series generation from git
+
+ [ Romain Perier ]
+ * Rebased the following patches onto 5.4.x:
+ - debian/version.patch
+ - debian/ia64-hardcode-arch-script-output.patch
+ - bugfix/all/
+ radeon-amdgpu-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
+ - features/all/aufs5/aufs5-mmap.patch
+ - features/all/aufs5/aufs5-standalone.patch
+ - features/x86/
+ intel-iommu-add-kconfig-option-to-exclude-igpu-by-default.patch
+ - bugfix/all/fs-add-module_softdep-declarations-for-hard-coded-cr.patch
+ - debian/revert-objtool-fix-config_stack_validation-y-warning.patch
+ - features/all/db-mok-keyring/
+ 0003-MODSIGN-checking-the-blacklisted-hash-before-loading-a-kernel-module
+ .patch
+ - bugfix/all/tools-perf-man-date.patch
+ - bugfix/all/usbip-fix-misuse-of-strncpy.patch
+ - bugfix/all/partially-revert-usb-kconfig-using-select-for-usb_co.patch
+
+ [ John Paul Adrian Glaubitz ]
+ * [m68k] Enable CONFIG_PATA_BUDDHA as module
+
+ [ Aurelien Jarno ]
+ * [armhf] Add support for STM32MP1 SoC: enable ARCH_STM32,
+ CRYPTO_DEV_STM32_CRC, CRYPTO_DEV_STM32_CRYP, CRYPTO_DEV_STM32_HASH,
+ DRM_PANEL_ORISETECH_OTM8009A, DRM_SII902X, DRM_STM, DRM_STM_DSI,
+ HW_RANDOM_STM32, I2C_STM32F7, INPUT_STPMIC1_ONKEY, MFD_STM32_LPTIMER,
+ MFD_STPMIC1, MTD_NAND_STM32_FMC2, PHY_STM32_USBPHYC, PWM_STM32_LP,
+ REGULATOR_STM32_BOOSTER, REGULATOR_STM32_PWR, REGULATOR_STM32_VREFBUF,
+ REGULATOR_STPMIC1, REMOTEPROC, RTC_DRV_STM32, SERIAL_STM32,
+ SERIAL_STM32_CONSOLE, SND_AUDIO_GRAPH_CARD, SND_SOC_CS42L51_I2C,
+ SND_SOC_STM32_DFSDM, SND_SOC_STM32_I2S, SND_SOC_STM32_SAI,
+ SND_SOC_STM32_SPDIFRX, SPI_STM32, SPI_STM32_QSPI, STM32_DMA,
+ STM32_DMAMUX, STM32_MDMA, STM32_RPROC, STPMIC1_WATCHDOG,
+ TOUCHSCREEN_EDT_FT5X06.
+ * [arm64] Re-enable BT_HCIUART_{BCM,LL} (arm64 version of #906048).
+ * [arm64,armhf] Enable CLK_RASPBERRYPI and RASPBERRYPI_CPUFREQ.
+
+ [ Salvatore Bonaccorso ]
+ * md: Enable MD_CLUSTER as module (Closes: #927026)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 26 Nov 2019 01:33:11 +0000
+
+linux (5.3.15-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.10
+ - regulator: of: fix suspend-min/max-voltage parsing
+ - ASoC: topology: Fix a signedness bug in soc_tplg_dapm_widget_create()
+ - [arm64] dts: allwinner: a64: pine64-plus: Add PHY regulator delay
+ - [arm64] dts: allwinner: a64: Drop PMU node
+ - [arm64] dts: allwinner: a64: sopine-baseboard: Add PHY regulator delay
+ - [arm64] dts: Fix gpio to pinmux mapping
+ - [x86] pinctrl: intel: Allocate IRQ chip dynamic
+ - [amd64] ASoC: SOF: loader: fix kernel oops on firmware boot failure
+ - [amd64] ASoC: SOF: topology: fix parse fail issue for byte/bool tuple
+ types
+ - [amd64] ASoC: SOF: Intel: hda: fix warnings during FW load
+ - [amd64] ASoC: SOF: Intel: initialise and verify FW crash dump data.
+ - [amd64] ASoC: SOF: Intel: hda: Disable DMI L1 entry during capture
+ - [amd64] ASoC: rt5682: add NULL handler to set_jack function
+ - [amd64] ASoC: intel: sof_rt5682: add remove function to disable jack
+ - [x86] ASoC: intel: bytcr_rt5651: add null check to support_button_press
+ - [armhf] regulator: pfuze100-regulator: Variable "val" in
+ pfuze100_regulator_probe() could be uninitialized
+ - [armhf,arm64] ASoc: rockchip: i2s: Fix RPM imbalance
+ - [arm64] dts: rockchip: fix Rockpro64 RK808 interrupt line
+ - [armhf] dts: logicpd-torpedo-som: Remove twl_keypad
+ - [arm64] dts: rockchip: fix RockPro64 vdd-log regulator settings
+ - [arm64] dts: rockchip: fix RockPro64 sdhci settings
+ - [arm64] dts: zii-ultra: fix ARM regulator states
+ - [armhf] dts: am3874-iceboard: Fix 'i2c-mux-idle-disconnect' usage
+ - [armhf] dts: Use level interrupt for omap4 & 5 wlcore
+ - [armel,armhf] mm: fix alignment handler faults under memory pressure
+ - scsi: qla2xxx: fix a potential NULL pointer dereference
+ - scsi: scsi_dh_alua: handle RTPG sense code correctly during state
+ transitions
+ - [armel,armhf] 8908/1: add __always_inline to functions called from
+ __get_user_check()
+ - [arm64] dts: rockchip: fix RockPro64 sdmmc settings
+ - [arm64] dts: rockchip: Fix usb-c on Hugsun X99 TV Box
+ - [armhf] dts: imx6q-logicpd: Re-Enable SNVS power key
+ - perf tools: Fix resource leak of closedir() on the error paths
+ - perf c2c: Fix memory leak in build_cl_output()
+ - perf kmem: Fix memory leak in compact_gfp_flags()
+ - drm/amdgpu: fix potential VM faults
+ - drm/amdgpu: fix error handling in amdgpu_bo_list_create
+ - scsi: target: core: Do not overwrite CDB byte 1
+ - scsi: hpsa: add missing hunks in reset-patch
+ - [x86] ASoC: Intel: sof-rt5682: add a check for devm_clk_get
+ - [x86] ASoC: SOF: control: return true when kcontrol values change
+ - tracing: Fix "gfp_t" format for synthetic events
+ - [arm64] dts: bcm2837-rpi-cm3: Avoid leds-gpio probing issue
+ - [x86] ALSA: hda: Add Tigerlake/Jasperlake PCI ID
+ - [armhf,arm64] irqchip/gic-v3-its: Use the exact ITSList for VMOVP
+ - cifs: Fix cifsInodeInfo lock_sem deadlock when reconnect occurs
+ - [riscv64] irqchip/sifive-plic: Skip contexts except supervisor in
+ plic_init()
+ - nbd: protect cmd->status with cmd->lock
+ - nbd: handle racing with error'ed out commands
+ - cxgb4: fix panic when attaching to ULD fail
+ - cxgb4: request the TX CIDX updates to status page
+ - dccp: do not leak jiffies on the wire
+ - erspan: fix the tun_info options_len check for erspan
+ - inet: stop leaking jiffies on the wire
+ - net: annotate accesses to sk->sk_incoming_cpu
+ - net: annotate lockless accesses to sk->sk_napi_id
+ - [armhf] net: dsa: bcm_sf2: Fix IMP setup for port different than 8
+ - net: fix sk_page_frag() recursion from memory reclaim
+ - [arm64] net: hisilicon: Fix ping latency when deal with high throughput
+ - net/mlx4_core: Dynamically set guaranteed amount of counters per VF
+ - netns: fix GFP flags in rtnl_net_notifyid()
+ - net: rtnetlink: fix a typo fbd -> fdb
+ - net: usb: lan78xx: Disable interrupts before calling generic_handle_irq()
+ - net: Zeroing the structure ethtool_wolinfo in ethtool_get_wol()
+ - udp: fix data-race in udp_set_dev_scratch()
+ - vxlan: check tun_info options_len properly
+ - net: add skb_queue_empty_lockless()
+ - udp: use skb_queue_empty_lockless()
+ - net: use skb_queue_empty_lockless() in poll() handlers
+ - net: use skb_queue_empty_lockless() in busy poll contexts
+ - net: add READ_ONCE() annotation in __skb_wait_for_more_packets()
+ - ipv4: fix route update on metric change.
+ - net/smc: fix closing of fallback SMC sockets
+ - net/smc: keep vlan_id for SMC-R in smc_listen_work()
+ - keys: Fix memory leak in copy_net_ns
+ - net: phylink: Fix phylink_dbg() macro
+ - rxrpc: Fix handling of last subpacket of jumbo packet
+ - net/mlx5e: Determine source port properly for vlan push action
+ - net/mlx5e: Remove incorrect match criteria assignment line
+ - net/mlx5e: Initialize on stack link modes bitmap
+ - net/mlx5: Fix flow counter list auto bits struct
+ - net/smc: fix refcounting for non-blocking connect()
+ - net/mlx5: Fix rtable reference leak
+ - r8169: fix wrong PHY ID issue with RTL8168dp
+ - net/mlx5e: Fix ethtool self test: link speed
+ - net/mlx5e: Fix handling of compressed CQEs in case of low NAPI budget
+ - ipv4: fix IPSKB_FRAG_PMTU handling with fragmentation
+ - [armhf] net: dsa: b53: Do not clear existing mirrored port mask
+ - net: dsa: fix switch tree list
+ - net: ensure correct skb->tstamp in various fragmenters
+ - [arm64] net: hns3: fix mis-counting IRQ vector numbers issue
+ - net: netem: fix error path for corrupted GSO frames
+ - net: reorder 'struct net' fields to avoid false sharing
+ - net: usb: lan78xx: Connect PHY before registering MAC
+ - [x86] r8152: add device id for Lenovo ThinkPad USB-C Dock Gen 2
+ - net: netem: correct the parent's backlog when corrupted packet was
+ dropped
+ - net/flow_dissector: switch to siphash
+ - CIFS: Fix retry mid list corruption on reconnects
+ - usb: gadget: udc: core: Fix segfault if udc_bind_to_driver() for pending
+ driver fails
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.11
+ - bonding: fix state transition issue in link monitoring
+ - CDC-NCM: handle incomplete transfer of MTU
+ - ipv4: Fix table id reference in fib_sync_down_addr
+ - [mips*/octeon] net: ethernet: octeon_mgmt: Account for second possible
+ VLAN header
+ - net: fix data-race in neigh_event_send()
+ - net: usb: qmi_wwan: add support for DW5821e with eSIM support
+ - nfc: netlink: fix double device reference drop
+ - qede: fix NULL pointer deref in __qede_remove()
+ - ipv6: fixes rt6_probe() and fib6_nh->last_probe init
+ - [arm64] net: hns: Fix the stray netpoll locks causing deadlock in NAPI
+ path
+ - net: prevent load/store tearing on sk->sk_stamp
+ - net: sched: prevent duplicate flower rules from tcf_proto destroy race
+ - net/smc: fix ethernet interface refcounting
+ - vsock/virtio: fix sock refcnt holding during the shutdown
+ - r8169: fix page read in r8168g_mdio_read
+ - ALSA: timer: Fix incorrectly assigned timer instance
+ - ALSA: bebob: fix to detect configured source of sampling clock for
+ Focusrite Saffire Pro i/o series
+ - ALSA: hda/ca0132 - Fix possible workqueue stall
+ - mm: memcontrol: fix NULL-ptr deref in percpu stats flush
+ - mm: memcontrol: fix network errors from failing __GFP_ATOMIC charges
+ - mm, meminit: recalculate pcpu batch and high limits after init completes
+ - mm: thp: handle page cache THP correctly in PageTransCompoundMap
+ - mm, vmstat: hide /proc/pagetypeinfo from normal users
+ - dump_stack: avoid the livelock of the dump_lock
+ - mm: slab: make page_cgroup_ino() to recognize non-compound slab pages
+ properly
+ - btrfs: Consider system chunk array size for new SYSTEM chunks
+ - btrfs: tree-checker: Fix wrong check on max devid
+ - btrfs: save i_size to avoid double evaluation of i_size_read in
+ compress_file_range
+ - [x86] pinctrl: intel: Avoid potential glitches if pin is in GPIO mode
+ - perf tools: Fix time sorting
+ - perf map: Use zalloc for map_groups
+ - drm/radeon: fix si_enable_smc_cac() failed issue
+ - HID: wacom: generic: Treat serial number and related fields as unsigned
+ - mm/khugepaged: fix might_sleep() warn with CONFIG_HIGHPTE=y
+ - blkcg: make blkcg_print_stat() print stats only for online blkgs
+ - [arm64] Do not mask out PTE_RDONLY in pte_same()
+ - ceph: fix use-after-free in __ceph_remove_cap()
+ - ceph: fix RCU case handling in ceph_d_revalidate()
+ - ceph: add missing check in d_revalidate snapdir handling
+ - ceph: don't try to handle hashed dentries in non-O_CREAT atomic_open
+ - ceph: don't allow copy_file_range when stripe_count != 1
+ - [x86] iio: imu: inv_mpu6050: fix no data on MPU6050
+ - [armhf] sunxi: Fix CPU powerdown on A83T
+ - [armhf] dts: imx6-logicpd: Re-enable SNVS power key
+ - cpufreq: intel_pstate: Fix invalid EPB setting
+ - clone3: validate stack arguments
+ - netfilter: nf_tables: Align nft_expr private data to 64-bit
+ - netfilter: ipset: Fix an error code in ip_set_sockfn_get()
+ - [x86] intel_th: gth: Fix the window switching sequence
+ - [x86] intel_th: pci: Add Comet Lake PCH support
+ - [x86] intel_th: pci: Add Jasper Lake PCH support
+ - [amd64] dumpstack: Don't evaluate exception stacks before setup
+ - [i386] apic: Avoid bogus LDR warnings
+ - SMB3: Fix persistent handles reconnect
+ - can: usb_8dev: fix use-after-free on disconnect
+ - [armhf] can: flexcan: disable completely the ECC mechanism
+ - [armhf] can: c_can: c_can_poll(): only read status register after status
+ IRQ
+ - can: peak_usb: fix a potential out-of-sync while decoding packets
+ - can: rx-offload: can_rx_offload_queue_sorted(): fix error handling, avoid
+ skb mem leak
+ - can: gs_usb: gs_can_open(): prevent memory leak (CVE-2019-19052)
+ - can: dev: add missing of_node_put() after calling of_get_child_by_name()
+ - can: mcba_usb: fix use-after-free on disconnect (CVE-2019-19529)
+ - can: peak_usb: fix slab info leak (CVE-2019-19534)
+ - configfs: fix a deadlock in configfs_symlink()
+ - ALSA: usb-audio: More validations of descriptor units
+ - ALSA: usb-audio: Simplify parse_audio_unit()
+ - ALSA: usb-audio: Unify the release of usb_mixer_elem_info objects
+ - ALSA: usb-audio: Remove superfluous bLength checks
+ - ALSA: usb-audio: Clean up check_input_term()
+ - ALSA: usb-audio: Fix possible NULL dereference at
+ create_yamaha_midi_quirk()
+ - ALSA: usb-audio: remove some dead code
+ - ALSA: usb-audio: Fix copy&paste error in the validator
+ - usbip: Implement SG support to vhci-hcd and stub driver
+ - HID: google: add magnemite/masterball USB ids
+ - bpf: lwtunnel: Fix reroute supplying invalid dst
+ - [x86] HID: intel-ish-hid: fix wrong error handling in
+ ishtp_cl_alloc_tx_ring()
+ - [powerpc] fix allow/prevent_user_access() when crossing segment
+ boundaries.
+ - RDMA/mlx5: Clear old rate limit when closing QP
+ - iw_cxgb4: fix ECN check on the passive accept
+ - RDMA/siw: free siw_base_qp in kref release routine
+ - RDMA/qedr: Fix reported firmware version
+ - IB/core: Use rdma_read_gid_l2_fields to compare GID L2 fields
+ - net/mlx5e: Tx, Fix assumption of single WQEBB of NOP in cleanup flow
+ - net/mlx5e: TX, Fix consumer index of error cqe dump
+ - net/mlx5: prevent memory leak in mlx5_fpga_conn_create_cq
+ (CVE-2019-19045)
+ - net/mlx5: fix memory leak in mlx5_fw_fatal_reporter_dump (CVE-2019-19047)
+ - scsi: qla2xxx: fixup incorrect usage of host_byte
+ - scsi: lpfc: Check queue pointer before use
+ - scsi: ufs-bsg: Wake the device before sending raw upiu commands
+ - RDMA/uverbs: Prevent potential underflow
+ - bpf: Fix use after free in subprog's jited symbol removal
+ - [armhf,arm64] net: stmmac: Fix the problem of tso_xmit
+ - net: openvswitch: free vport unless register_netdevice() succeeds
+ - scsi: lpfc: Honor module parameter lpfc_use_adisc
+ - scsi: qla2xxx: Initialized mailbox to prevent driver load failure
+ - bpf: Fix use after free in bpf_get_prog_name
+ - iwlwifi: pcie: fix PCI ID 0x2720 configs that should be soc
+ - iwlwifi: pcie: fix all 9460 entries for qnj
+ - iwlwifi: pcie: 0x2720 is qu and 0x30DC is not
+ - netfilter: nf_flow_table: set timeout before insertion into hashes
+ - xsk: Fix registration of Rx-only sockets
+ - net: phy: smsc: LAN8740: add PHY_RST_AFTER_CLK_EN flag
+ - ipvs: don't ignore errors in case refcounting ip_vs module fails
+ - ipvs: move old_secure_tcp into struct netns_ipvs
+ - netfilter: nft_payload: fix missing check for matching length in offloads
+ - RDMA/nldev: Skip counter if port doesn't match
+ - bonding: fix unexpected IFF_BONDING bit unset
+ - bonding: use dynamic lockdep key instead of subclass
+ - macsec: fix refcnt leak in module exit routine
+ - virt_wifi: fix refcnt leak in module exit routine
+ - scsi: sd: define variable dif as unsigned int instead of bool
+ - usb: gadget: composite: Fix possible double free memory bug
+ - usb: gadget: configfs: fix concurrent issue between composite APIs
+ - [armhf,arm64] usb: dwc3: remove the call trace of USBx_GFLADJ
+ - [x86] perf/amd/ibs: Fix reading of the IBS OpData register and thus
+ precise RIP validity
+ - [x86] perf/amd/ibs: Handle erratum #420 only on the affected CPU family
+ (10h)
+ - [x86] perf/uncore: Fix event group support
+ - USB: Skip endpoints with 0 maxpacket length
+ - USB: ldusb: use unsigned size format specifiers
+ - usbip: tools: Fix read_usb_vudc_device() error path handling
+ - RDMA/iw_cxgb4: Avoid freeing skb twice in arp failure case
+ - [arm64] RDMA/hns: Prevent memory leaks of eq->buf_list
+ - scsi: qla2xxx: stop timer in shutdown path
+ - sched/topology: Don't try to build empty sched domains
+ - sched/topology: Allow sched_asym_cpucapacity to be disabled
+ - nvme-multipath: fix possible io hang after ctrl reconnect
+ - [amd64] fjes: Handle workqueue allocation failure
+ - [arm64] net: hisilicon: Fix "Trying to free already-free IRQ"
+ - wimax: i2400: Fix memory leak in i2400m_op_rfkill_sw_toggle
+ (CVE-2019-19051)
+ - [x86] iommu/amd: Apply the same IVRS IOAPIC workaround to Acer Aspire
+ A315-41
+ - mt76: dma: fix buffer unmap with non-linear skbs
+ - drm/amdgpu/sdma5: do not execute 0-sized IBs (v2)
+ - drm/sched: Set error to s_fence if HW job submission failed.
+ - drm/amdgpu: If amdgpu_ib_schedule fails return back the error.
+ - drm/amd/display: do not synchronize "drr" displays
+ - drm/amd/display: add 50us buffer as WA for pstate switch in active
+ - drm/amd/display: Passive DP->HDMI dongle detection fix
+ - drm/amd/display: dc.c:use kzalloc without test
+ - SUNRPC: The TCP back channel mustn't disappear while requests are
+ outstanding
+ - SUNRPC: The RDMA back channel mustn't disappear while requests are
+ outstanding
+ - SUNRPC: Destroy the back channel when we destroy the host transport
+ - [x86] hv_netvsc: Fix error handling in netvsc_attach()
+ - efi/tpm: Return -EINVAL when determining tpm final events log size fails
+ - efi: libstub/arm: Account for firmware reserved memory at the base of RAM
+ - [x86] efi: Never relocate kernel below lowest acceptable address
+ - [arm64] cpufeature: Enable Qualcomm Falkor errata 1009 for Kryo
+ - usb: dwc3: gadget: fix race when disabling ep with cancelled xfers
+ - [arm64] apply ARM64_ERRATUM_845719 workaround for Brahma-B53 core
+ - [arm64] Brahma-B53 is SSB and spectre v2 safe
+ - [arm64] apply ARM64_ERRATUM_843419 workaround for Brahma-B53 core
+ - NFSv4: Don't allow a cached open with a revoked delegation
+ - igb: Fix constant media auto sense switching when no cable is connected
+ - e1000: fix memory leaks
+ - ocfs2: protect extent tree in ocfs2_prepare_inode_for_write()
+ - [x86] pinctrl: cherryview: Fix irq_valid_mask calculation
+ - timekeeping/vsyscall: Update VDSO data unconditionally
+ - mm/filemap.c: don't initiate writeback if mapping has no dirty pages
+ - cgroup,writeback: don't switch wbs immediately on dead wbs if the memcg
+ is dead
+ - [x86] ASoC: SOF: Intel: hda-stream: fix the CONFIG_ prefix missing
+ - usbip: Fix free of unallocated memory in vhci tx
+ - bonding: fix using uninitialized mode_lock
+ - netfilter: ipset: Copy the right MAC address in hash:ip,mac IPv6 sets
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.12
+ - scsi: core: Handle drivers which set sg_tablesize to zero
+ - ax88172a: fix information leak on short answers
+ - devlink: disallow reload operation during device cleanup
+ - ipmr: Fix skb headroom in ipmr_get_route().
+ - net/smc: fix fastopen for non-blocking connect()
+ - net: usb: qmi_wwan: add support for Foxconn T77W968 LTE modules
+ - slip: Fix memory leak in slip_open error path
+ - tcp: remove redundant new line from tcp_event_sk_skb
+ - devlink: Add method for time-stamp on reporter's dump
+ - net/smc: fix refcount non-blocking connect() -part 2
+ - ALSA: usb-audio: Fix missing error check at mixer resolution test
+ - ALSA: usb-audio: not submit urb for stopped endpoint
+ - ALSA: usb-audio: Fix incorrect NULL check in create_yamaha_midi_quirk()
+ - ALSA: usb-audio: Fix incorrect size check for processing/extension units
+ - Btrfs: fix log context list corruption after rename exchange operation
+ - cgroup: freezer: call cgroup_enter_frozen() with preemption disabled in
+ ptrace_stop()
+ - Input: ff-memless - kill timer in destroy() (CVE-2019-19524)
+ - Input: synaptics-rmi4 - fix video buffer size
+ - Input: synaptics-rmi4 - disable the relative position IRQ in the F12
+ driver
+ - Input: synaptics-rmi4 - do not consume more data than we have (F11, F12)
+ - Input: synaptics-rmi4 - clear IRQ enables for F54
+ - Input: synaptics-rmi4 - destroy F54 poller workqueue when removing
+ - KVM: MMU: Do not treat ZONE_DEVICE pages as being reserved
+ - IB/hfi1: Ensure r_tid_ack is valid before building TID RDMA ACK packet
+ - IB/hfi1: Calculate flow weight based on QP MTU for TID RDMA
+ - IB/hfi1: TID RDMA WRITE should not return IB_WC_RNR_RETRY_EXC_ERR
+ - IB/hfi1: Ensure full Gen3 speed in a Gen4 system
+ - IB/hfi1: Use a common pad buffer for 9B and 16B packets
+ - i2c: acpi: Force bus speed to 400KHz if a Silead touchscreen is present
+ - [x86] quirks: Disable HPET on Intel Coffe Lake platforms
+ - ecryptfs_lookup_interpose(): lower_dentry->d_inode is not stable
+ - ecryptfs_lookup_interpose(): lower_dentry->d_parent is not stable either
+ - io_uring: ensure registered buffer import returns the IO length
+ - [x86] drm/i915: update rawclk also on resume
+ - [x86] Revert "drm/i915/ehl: Update MOCS table for EHL"
+ - ntp/y2038: Remove incorrect time_t truncation
+ - [x86] iommu/vt-d: Fix QI_DEV_IOTLB_PFSID and QI_DEV_EIOTLB_PFSID macros
+ - mm: mempolicy: fix the wrong return value and potential pages leak of
+ mbind
+ - mm: memcg: switch to css_tryget() in get_mem_cgroup_from_mm()
+ - mm: hugetlb: switch to css_tryget() in hugetlb_cgroup_charge_cgroup()
+ - mm: slub: really fix slab walking for init_on_free
+ - mm/memory_hotplug: fix try_offline_node()
+ - mm/page_io.c: do not free shared swap slots
+ - mmc: sdhci-of-at91: fix quirk2 overwrite
+ - slcan: Fix memory leak in error path
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.13
+ - net: cdc_ncm: Signedness bug in cdc_ncm_set_dgram_size()
+ - block, bfq: deschedule empty bfq_queues not referred by any process
+ - mm/memory_hotplug: don't access uninitialized memmaps in
+ shrink_pgdat_span()
+ - mm/memory_hotplug: fix updating the node span
+ - [arm64] uaccess: Ensure PAN is re-enabled after unhandled uaccess fault
+ - fbdev: Ditch fb_edid_add_monspecs
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.14
+ - net/mlx4_en: fix mlx4 ethtool -N insertion
+ - net/mlx4_en: Fix wrong limitation for number of TX rings
+ - net: rtnetlink: prevent underflows in do_setvfinfo()
+ - net/sched: act_pedit: fix WARN() in the traffic path
+ - net: sched: ensure opts_len <= IP_TUNNEL_OPTS_MAX in act_tunnel_key
+ - sfc: Only cancel the PPS workqueue if it exists
+ - net/mlxfw: Verify FSM error code translation doesn't exceed array size
+ - net/mlx5e: Fix set vf link state error flow
+ - net/mlx5: Fix auto group size calculation
+ - ipv6/route: return if there is no fib_nh_gw_family
+ - taprio: don't reject same mqprio settings
+ - net/ipv4: fix sysctl max for fib_multipath_hash_policy
+ - net/mlx5e: Fix error flow cleanup in mlx5e_tc_tun_create_header_ipv4/6
+ - net/mlx5e: Do not use non-EXT link modes in EXT mode
+ - net/mlx5: Update the list of the PCI supported devices
+ - vhost/vsock: split packets to send using multiple buffers
+ - [arm64] gpio: max77620: Fixup debounce delays
+ - fork: fix pidfd_poll()'s return type
+ - nbd:fix memory leak in nbd_get_socket()
+ - virtio_console: allocate inbufs in add_port() only if it is needed
+ - virtio_ring: fix return code on DMA mapping fails
+ - virtio_balloon: fix shrinker count
+ - Revert "fs: ocfs2: fix possible null-pointer dereferences in
+ ocfs2_xa_prepare_entry()"
+ - mm/memory_hotplug: don't access uninitialized memmaps in
+ shrink_zone_span()
+ - mm/ksm.c: don't WARN if page is still mapped in remove_stable_node()
+ - drm/amdgpu: disable gfxoff when using register read interface
+ - drm/amdgpu: disable gfxoff on original raven
+ - drm/amd/powerplay: issue no PPSMC_MSG_GetCurrPkgPwr on unsupported ASICs
+ - [x86] drm/i915: Don't oops in dumb_create ioctl if we have no crtcs
+ - [x86] drm/i915/pmu: "Frequency" is reported as accumulated cycles
+ - [x86] drm/i915/userptr: Try to acquire the page lock around
+ set_page_dirty()
+ - Bluetooth: Fix invalid-free in bcsp_close()
+ - ath10k: restore QCA9880-AR1A (v1) detection
+ - ath10k: Fix HOST capability QMI incompatibility
+ - ath10k: Fix a NULL-ptr-deref bug in ath10k_usb_alloc_urb_from_pipe
+ (CVE-2019-15099)
+ - ath9k_hw: fix uninitialized variable data
+ - Revert "Bluetooth: hci_ll: set operational frequency earlier"
+ - Revert "dm crypt: use WQ_HIGHPRI for the IO and crypt workqueues"
+ - md/raid10: prevent access of uninitialized resync_pages offset
+ - mdio_bus: Fix init if CONFIG_RESET_CONTROLLER=n
+ - [armel,armhf] 8904/1: skip nomap memblocks while finding the lowmem/
+ highmem boundary
+ - [x86] insn: Fix awk regexp warnings
+ - [x86] speculation: Fix incorrect MDS/TAA mitigation status
+ - [x86] speculation: Fix redundant MDS mitigation message
+ - nbd: prevent memory leak
+ - [i386] stackframe: Repair 32-bit Xen PV
+ - [i386] xen: Make xen_iret_crit_fixup() independent of frame layout
+ - [i386] xen: Simplify ring check in xen_iret_crit_fixup()
+ - [i386] doublefault: Fix stack canaries in the double fault handler
+ - [i386] pti: Size initial_page_table correctly
+ - [i386] cpu_entry_area: Add guard page for entry stack on 32bit
+ - [i386] entry: Fix IRET exception
+ - [i386] entry: Use %ss segment where required
+ - [i386] entry: Move FIXUP_FRAME after pushing %fs in SAVE_ALL
+ - [i386] entry: Unwind the ESPFIX stack earlier on exception entry
+ - [i386] entry: Fix NMI vs ESPFIX
+ - [i386] pti: Calculate the various PTI cpu_entry_area sizes correctly,
+ make the CPU_ENTRY_AREA_PAGES assert precise
+ - [i386] entry: Fix FIXUP_ESPFIX_STACK with user CR3
+ - futex: Prevent robust futex exit race
+ - ALSA: usb-audio: Fix NULL dereference at parsing BADD
+ - nfc: port100: handle command failure cleanly
+ - media: vivid: Set vid_cap_streaming and vid_out_streaming to true
+ - media: vivid: Fix wrong locking that causes race conditions on streaming
+ stop (CVE-2019-18683)
+ - media: usbvision: Fix invalid accesses after device disconnect
+ - media: usbvision: Fix races among open, close, and disconnect
+ - cpufreq: Add NULL checks to show() and store() methods of cpufreq
+ - media: uvcvideo: Fix error path in control parsing failure
+ - media: b2c2-flexcop-usb: add sanity checking (CVE-2019-15291)
+ - media: cxusb: detect cxusb_ctrl_msg error in query
+ - media: imon: invalid dereference in imon_touch_event
+ - media: mceusb: fix out of bounds read in MCE receiver buffer
+ - mm/slub.c: init_on_free=1 should wipe freelist ptr for bulk allocations
+ - usbip: tools: fix fd leakage in the function of read_attr_usbip_status
+ - usbip: Fix uninitialized symbol 'nents' in stub_recv_cmd_submit()
+ - usb-serial: cp201x: support Mark-10 digital force gauge
+ - USB: chaoskey: fix error case of a timeout
+ - appledisplay: fix error handling in the scheduled work
+ - USB: serial: mos7840: add USB ID to support Moxa UPort 2210
+ - USB: serial: mos7720: fix remote wakeup
+ - USB: serial: mos7840: fix remote wakeup
+ - USB: serial: option: add support for DW5821e with eSIM support
+ - USB: serial: option: add support for Foxconn T77W968 LTE modules
+ - [x86] staging: comedi: usbduxfast: usbduxfast_ai_cmdtest rounding error
+ - [powerpc*] 64s: support nospectre_v2 cmdline option
+ - [powerpc*] book3s64: Fix link stack flush on context switch
+ (CVE-2019-18660)
+ - [powerpc*] KVM: Book3S HV: Flush link stack on guest exit to host kernel
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.15
+ - io_uring: async workers should inherit the user creds
+ - net: separate out the msghdr copy from ___sys_{send,recv}msg()
+ - net: disallow ancillary data for __sys_{send,recv}msg_file()
+ - XArray: Fix xas_next() with a single entry at 0
+ - [arm64] clk: meson: gxbb: let sar_adc_clk_div set the parent clock rate
+ - [x86] thunderbolt: Read DP IN adapter first two dwords in one go
+ - [x86] thunderbolt: Fix lockdep circular locking depedency warning
+ - [x86] ASoC: compress: fix unsigned integer overflow check
+ - [arm64,armel,armhf] reset: Fix memory leak in reset_control_array_put()
+ - [armhf] clk: samsung: exynos542x: Move G3D subsystem clocks to its
+ sub-CMU
+ - [armel,armhf] ASoC: kirkwood: fix external clock probe defer
+ - [armel,armhf] ASoC: kirkwood: fix device remove ordering
+ - [armhf] clk: samsung: exynos5420: Preserve PLL configuration during
+ suspend/resume
+ - [x86] pinctrl: cherryview: Allocate IRQ chip dynamic
+ - [armhf] soc: imx: gpc: fix initialiser format
+ - ASoC: SOF: ipc: Fix memory leak in sof_set_get_large_ctrl_data
+ (CVE-2019-18811)
+ - [armhf] ASoC: ti: sdma-pcm: Add back the flags parameter for non
+ standard dma names
+ - [armhf] ASoC: rockchip: rockchip_max98090: Enable SHDN to fix headset
+ detection
+ - [arm64,armhf] clk: sunxi: Fix operator precedence in
+ sunxi_divs_clk_setup
+ - [armhf] clk: sunxi-ng: a80: fix the zero'ing of bits 16 and 18
+ - [armhf] dts: sun8i-a83t-tbs-a711: Fix WiFi resume from suspend
+ - bpf: Allow narrow loads of bpf_sysctl fields with offset > 0
+ - bpf: Change size to u64 for bpf_map_{area_alloc, charge_init}()
+ - [powerpc*] bpf: Fix tail call implementation
+ - idr: Fix idr_get_next_ul race with idr_remove
+ - idr: Fix integer overflow in idr_for_each_entry
+ - idr: Fix idr_alloc_u32 on 32-bit systems
+ - [amd64] ASoC: hdac_hda: fix race in device removal
+ - [armhf] clk: ti: dra7-atl-clock: Remove ti_clk_add_alias call
+ - [armhf] clk: ti: clkctrl: Fix failed to enable error with double udelay
+ timeout
+ - [armhf] net: fec: add missed clk_disable_unprepare in remove
+ - netfilter: ipset: Fix nla_policies to fully support NL_VALIDATE_STRICT
+ - bridge: ebtables: don't crash when using dnat target in output chains
+ - netfilter: nf_tables: bogus EOPNOTSUPP on basechain update
+ - netfilter: nf_tables_offload: skip EBUSY on chain update
+ - stacktrace: Don't skip first entry on noncurrent tasks
+ - can: peak_usb: report bus recovery as well
+ - [armhf] can: c_can: D_CAN: c_can_chip_config(): perform a sofware reset
+ on open
+ - can: rx-offload: can_rx_offload_queue_tail(): fix error handling, avoid
+ skb mem leak
+ - can: rx-offload: can_rx_offload_offload_one(): do not increase the
+ skb_queue beyond skb_queue_len_max
+ - can: rx-offload: can_rx_offload_offload_one(): increment rx_fifo_errors
+ on queue overflow or OOM
+ - can: rx-offload: can_rx_offload_offload_one(): use ERR_PTR() to
+ propagate error value in case of errors
+ - can: rx-offload: can_rx_offload_irq_offload_timestamp(): continue on
+ error
+ - can: rx-offload: can_rx_offload_irq_offload_fifo(): continue on error
+ - [armhf] can: flexcan: increase error counters if skb enqueueing via
+ can_rx_offload_queue_sorted() fails
+ - [x86] tsc: Respect tsc command line paraemeter for clocksource_tsc_early
+ - nvme-rdma: fix a segmentation fault during module unload
+ - nvme-multipath: fix crash in nvme_mpath_clear_ctrl_paths
+ - [arm64] watchdog: meson: Fix the wrong value of left time
+ - ALSA: hda: hdmi - add Tigerlake support
+ - [amd64] ASoC: SOF: topology: Fix bytes control size checks
+ - drm/amdgpu: dont schedule jobs while in reset
+ - [arm64,armhf] net/mlx5e: Fix eswitch debug print of max fdb flow
+ - net/mlx5e: Use correct enum to determine uplink port
+ - drm/amdgpu: register gpu instance before fan boost feature enablment
+ - drm/amdgpu: add warning for GRBM 1-cycle delay issue in gfx9
+ - [arm64,armhf] net: stmmac: gmac4: bitrev32 returns u32
+ - [arm64,armhf] net: stmmac: xgmac: bitrev32 returns u32
+ - [arm64,armhf] net: stmmac: xgmac: Fix TSA selection
+ - [arm64,armhf] net: stmmac: xgmac: Disable Flow Control when 1 or more
+ queues are in AV
+ - ceph: return -EINVAL if given fsc mount option on kernel w/o support
+ - mac80211: fix ieee80211_txq_setup_flows() failure path
+ - mac80211: fix station inactive_time shortly after boot
+ - block: drbd: remove a stray unlock in __drbd_send_protocol()
+ - ice: fix potential infinite loop because loop counter being too small
+ - iavf: initialize ITRN registers with correct values
+ - [arm64,armel,armhf] usb: dwc2: use a longer core rest timeout in
+ dwc2_core_reset()
+ - [x86] staging: rtl8192e: fix potential use after free
+ - staging: rtl8723bs: Drop ACPI device ids
+ - staging: rtl8723bs: Add 024c:0525 to the list of SDIO device-ids
+ - USB: serial: ftdi_sio: add device IDs for U-Blox C099-F9P
+ - [x86] mei: bus: prefix device names on bus with the bus name
+ - [x86] mei: me: add comet point V device id
+ - [x86] thunderbolt: Power cycle the router if NVM authentication fails
+ - xfrm: Fix memleak on xfrm state destroy
+ - [x86] fpu: Don't cache access to fpu_fpregs_owner_ctx (CVE-2019-19602)
+ - macvlan: schedule bc_work even if error
+ - mdio_bus: don't use managed reset-controller
+ - net: macb: add missed tasklet_kill
+ - net: psample: fix skb_over_panic
+ - net: sched: fix `tc -s class show` no bstats on class with nolock
+ subqueues
+ - openvswitch: fix flow command message size
+ - sctp: Fix memory leak in sctp_sf_do_5_2_4_dupcook
+ - slip: Fix use-after-free Read in slip_open
+ - sctp: cache netns in sctp_ep_common
+ - openvswitch: drop unneeded BUG_ON() in ovs_flow_cmd_build_info()
+ - openvswitch: remove another BUG_ON()
+ - net/tls: take into account that bpf_exec_tx_verdict() may free the
+ record
+ - net: skmsg: fix TLS 1.3 crash with full sk_msg
+ - tipc: fix link name length check
+ - ext4: add more paranoia checking in ext4_expand_extra_isize handling
+ - HID: core: check whether Usage Page item is after Usage ID items
+ - [x86] platform/x86: hp-wmi: Fix ACPI errors caused by too small buffer
+ - [x86] platform/x86: hp-wmi: Fix ACPI errors caused by passing 0 as input
+ size
+ - [armhf] net: fec: fix clock count mis-match
+
+ [ Ben Hutchings ]
+ * [amd64] sound/soc/sof: Disable SND_SOC_SOF_ACPI,
+ SND_SOC_SOF_{BAYTRAIL,BROADWELL}_SUPPORT (Closes: #945914)
+ * [amd64] sound/soc/intel/boarss: Disable Broxton drivers again
+ * [i386] sound/soc: Enable same SOF drivers as on amd64
+ * Bump ABI to 3
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 07 Dec 2019 13:24:06 +0100
+
+linux (5.3.9-3) unstable; urgency=medium
+
+ * [arm64,armhf,powerpc*,s390x] KVM: Add more exports to ABI ignore list
+ (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 19 Nov 2019 01:43:33 +0000
+
+linux (5.3.9-2) unstable; urgency=medium
+
+ * [x86] Add mitigation for TSX Asynchronous Abort (CVE-2019-11135):
+ - x86/msr: Add the IA32_TSX_CTRL MSR
+ - x86/cpu: Add a helper function x86_read_arch_cap_msr()
+ - x86/cpu: Add a "tsx=" cmdline option with TSX disabled by default
+ - x86/speculation/taa: Add mitigation for TSX Async Abort
+ - x86/speculation/taa: Add sysfs reporting for TSX Async Abort
+ - kvm/x86: Export MDS_NO=0 to guests when TSX is enabled
+ - x86/tsx: Add "auto" option to the tsx= cmdline parameter
+ - x86/speculation/taa: Add documentation for TSX Async Abort
+ - x86/tsx: Add config options to set tsx=on|off|auto
+ - x86/speculation/taa: Fix printing of TAA_MSG_SMT on IBRS_ALL CPUs
+ TSX is now disabled by default; see
+ Documentation/admin-guide/hw-vuln/tsx_async_abort.rst
+ * [x86] KVM: Add mitigation for Machine Check Error on Page Size Change
+ (aka iTLB multi-hit, CVE-2018-12207):
+ - kvm: x86, powerpc: do not allow clearing largepages debugfs entry
+ - x86/bugs: Add ITLB_MULTIHIT bug infrastructure
+ - x86/cpu: Add Tremont to the cpu vulnerability whitelist
+ - cpu/speculation: Uninline and export CPU mitigations helpers
+ - kvm: mmu: ITLB_MULTIHIT mitigation
+ - kvm: Add helper function for creating VM worker threads
+ - kvm: x86: mmu: Recovery of shattered NX large pages
+ - Documentation: Add ITLB_MULTIHIT documentation
+ * [x86] i915: Mitigate local privilege escalation on gen9 (CVE-2019-0155):
+ - drm/i915: Rename gen7 cmdparser tables
+ - drm/i915: Disable Secure Batches for gen6+
+ - drm/i915: Remove Master tables from cmdparser
+ - drm/i915: Add support for mandatory cmdparsing
+ - drm/i915: Support ro ppgtt mapped cmdparser shadow buffers
+ - drm/i915: Allow parsing of unsized batches
+ - drm/i915: Add gen9 BCS cmdparsing
+ - drm/i915/cmdparser: Use explicit goto for error paths
+ - drm/i915/cmdparser: Add support for backward jumps
+ - drm/i915/cmdparser: Ignore Length operands during command matching
+ - drm/i915/cmdparser: Fix jump whitelist clearing
+ * [x86] i915: Mitigate local denial-of-service on gen8/gen9 (CVE-2019-0154):
+ - drm/i915: Lower RM timeout to avoid DSI hard hangs
+ - drm/i915/gen8+: Add RC6 CTX corruption WA
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 12 Nov 2019 15:44:08 +0000
+
+linux (5.3.9-1) unstable; urgency=medium
+
+ * New version hopefully closes: #942881
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.8
+ - drm: Free the writeback_job when it with an empty fb
+ - drm: Clear the fence pointer when writeback job signaled
+ - [armhf] clk: ti: dra7: Fix mcasp8 clock bits
+ - [armhf] dts: Fix wrong clocks for dra7 mcasp
+ - nvme-pci: Fix a race in controller removal
+ - scsi: ufs: skip shutdown if hba is not powered
+ - scsi: megaraid: disable device when probe failed after enabled device
+ - scsi: qla2xxx: Silence fwdump template message
+ - scsi: qla2xxx: Fix unbound sleep in fcport delete path.
+ - scsi: qla2xxx: Fix stale mem access on driver unload
+ - scsi: qla2xxx: Fix N2N link reset
+ - scsi: qla2xxx: Fix N2N link up fail
+ - [armhf] dts: Fix gpio0 flags for am335x-icev2
+ - [armhf] OMAP2+: Fix missing reset done flag for am3 and am43
+ - [armhf] OMAP2+: Add missing LCDC midlemode for am335x
+ - [armhf] OMAP2+: Fix warnings with broken omap2_set_init_voltage()
+ - nvme-tcp: fix wrong stop condition in io_work
+ - nvme-pci: Save PCI state before putting drive into deepest state
+ - nvme: fix an error code in nvme_init_subsystem()
+ - nvme-rdma: Fix max_hw_sectors calculation
+ - nvme: Added QUIRKs for ADATA XPG SX8200 Pro 512GB
+ - nvme: Add quirk for Kingston NVME SSD running FW E8FK11.T
+ - nvme-rdma: fix possible use-after-free in connect timeout
+ - blk-mq: honor IO scheduler for multiqueue devices
+ - xen/efi: Set nonblocking callbacks
+ - loop: change queue block size to match when using DIO
+ - nl80211: fix null pointer dereference
+ - mac80211: fix txq null pointer dereference
+ - netfilter: nft_connlimit: disable bh on garbage collection
+ - [armhf,arm64] net: stmmac: xgmac: Not all Unicast addresses may be
+ available
+ - [armhf,arm64] net: stmmac: dwmac4: Always update the MAC Hash Filter
+ - [armhf,arm64] net: stmmac: Correctly take timestamp for PTPv2
+ - [armhf,arm64] net: stmmac: Do not stop PHY if WoL is enabled
+ - drm/amdgpu: fix multiple memory leaks in acp_hw_init
+ - drm/amd/display: memory leak
+ - [mips*el/loongson-*] Fix the link time qualifier of 'serial_exit()'
+ - [arm64] net: hisilicon: Fix usage of uninitialized variable in function
+ mdio_sc_cfg_reg_write()
+ - [armhf,arm64] net: stmmac: Avoid deadlock on suspend/resume
+ - [s390x] mm: fix -Wunused-but-set-variable warnings
+ - r8152: Set macpassthru in reset_resume callback
+ - net: phy: allow for reset line to be tied to a sleepy GPIO controller
+ - net: phy: fix write to mii-ctrl1000 register
+ - vfs: Convert filldir[64]() from __put_user() to unsafe_put_user()
+ - elf: don't use MAP_FIXED_NOREPLACE for elf executable mappings
+ (regression in 4.17)
+ - vfs: Make filldir[64]() verify the directory entry filename is valid
+ - uaccess: implement a proper unsafe_copy_to_user() and switch filldir over
+ to it
+ - vfs: filldir[64]: remove WARN_ON_ONCE() for bad directory entries
+ - net_sched: fix backward compatibility for TCA_KIND (regression in 5.3.4)
+ - net_sched: fix backward compatibility for TCA_ACT_KIND (regression in
+ 5.3.4)
+ - libata/ahci: Fix PCS quirk application (regression in 5.3.4)
+ - md/raid0: fix warning message for parameter default_layout
+ - Revert "drm/radeon: Fix EEH during kexec" (regression in 5.3.5)
+ - ocfs2: fix panic due to ocfs2_wq is null
+ - nvme-pci: Set the prp2 correctly when using more than 4k page
+ - ipv4: fix race condition between route lookup and invalidation
+ - ipv4: Return -ENETUNREACH if we can't create route but saddr is valid
+ - net: avoid potential infinite loop in tc_ctl_action()
+ - [hppa,m68k] net: i82596: fix dma_alloc_attr for sni_82596
+ - net: ipv6: fix listify ip6_rcv_finish in case of forwarding
+ - [armhf,arm64] net: stmmac: disable/enable ptp_ref_clk in suspend/resume
+ flow
+ - rxrpc: Fix possible NULL pointer access in ICMP handling
+ - sched: etf: Fix ordering of packets with same txtime
+ - sctp: change sctp_prot .no_autobind with true
+ - net: aquantia: temperature retrieval fix
+ - net: aquantia: when cleaning hw cache it should be toggled
+ - net: aquantia: do not pass lro session with invalid tcp checksum
+ - net: aquantia: correctly handle macvlan and multicast coexistence
+ - net: phy: micrel: Discern KSZ8051 and KSZ8795 PHYs
+ - net: phy: micrel: Update KSZ87xx PHY name
+ - net: avoid errors when trying to pop MLPS header on non-MPLS packets
+ - net/sched: fix corrupted L2 header with MPLS 'push' and 'pop' actions
+ - netdevsim: Fix error handling in nsim_fib_init and nsim_fib_exit
+ - net: ethernet: broadcom: have drivers select DIMLIB as needed
+ - net: phy: Fix "link partner" information disappear issue
+ - rxrpc: use rcu protection while reading sk->sk_user_data
+ - io_uring: fix bad inflight accounting for SETUP_IOPOLL|SETUP_SQTHREAD
+ - io_uring: Fix corrupted user_data
+ - USB: legousbtower: fix memleak on disconnect
+ - ALSA: hda/realtek - Add support for ALC711
+ - [x86] ALSA: hda/realtek - Enable headset mic on Asus MJ401TA
+ - ALSA: usb-audio: Disable quirks for BOSS Katana amplifiers
+ - ALSA: hda - Force runtime PM on Nvidia HDMI codecs
+ - USB: serial: ti_usb_3410_5052: fix port-close races
+ - USB: ldusb: fix memleak on disconnect
+ - USB: usblp: fix use-after-free on disconnect
+ - USB: ldusb: fix read info leaks
+ - binder: Don't modify VMA bounds in ->mmap handler
+ - [mips*] tlbex: Fix build_restore_pagemask KScratch restore
+ - staging: wlan-ng: fix exit return when sme->key_idx >= NUM_WEPKEYS
+ - [s390x] scsi: zfcp: fix reaction on bit error threshold notification
+ - scsi: sd: Ignore a failure to sync cache due to lack of authorization
+ - scsi: core: save/restore command resid for error handling
+ - scsi: core: try to get module before removing device
+ - scsi: ch: Make it possible to open a ch device multiple times again
+ - Revert "Input: elantech - enable SMBus on new (2018+) systems"
+ (regression in 5.3)
+ - Input: synaptics-rmi4 - avoid processing unknown IRQs
+ - ACPI: CPPC: Set pcc_data[pcc_ss_id] to NULL in acpi_cppc_processor_exit()
+ - ACPI: NFIT: Fix unlock on error in scrub_show()
+ - iwlwifi: pcie: change qu with jf devices to use qu configuration
+ - cfg80211: wext: avoid copying malformed SSIDs (CVE-2019-17133)
+ - mac80211: Reject malformed SSID elements
+ - drm/edid: Add 6 bpc quirk for SDC panel in Lenovo G50
+ - drm/ttm: Restore ttm prefaulting
+ - [armhf,arm64] drm/panfrost: Handle resetting on timeout better
+ - drm/amdgpu: Bail earlier when amdgpu.cik_/si_support is not set to 1
+ - drm/amdgpu/sdma5: fix mask value of POLL_REGMEM packet for pipe sync
+ - [x86] drm/i915/userptr: Never allow userptr into the mappable GGTT
+ - [x86] drm/i915: Favor last VBT child device with conflicting AUX ch/DDC
+ pin
+ - drm/amdgpu/vce: fix allocation size in enc ring test
+ - drm/amdgpu/vcn: fix allocation size in enc ring test
+ - drm/amdgpu/uvd6: fix allocation size in enc ring test (v2)
+ - drm/amdgpu/uvd7: fix allocation size in enc ring test (v2)
+ - drm/amdgpu: user pages array memory leak fix
+ - drivers/base/memory.c: don't access uninitialized memmaps in
+ soft_offline_page_store()
+ - fs/proc/page.c: don't access uninitialized memmaps in fs/proc/page.c
+ - io_uring: Fix broken links with offloading
+ - io_uring: Fix race for sqes with userspace
+ - io_uring: used cached copies of sq->dropped and cq->overflow
+ - [armhf] mmc: sdhci-omap: Fix Tuning procedure for temperatures < -20C
+ - mm/memory-failure.c: don't access uninitialized memmaps in
+ memory_failure()
+ - mm/slub: fix a deadlock in show_slab_objects()
+ - mm/page_owner: don't access uninitialized memmaps when reading
+ /proc/pagetypeinfo
+ - mm/memunmap: don't access uninitialized memmap in memunmap_pages()
+ - mm: memcg/slab: fix panic in __free_slab() caused by premature memcg
+ pointer release
+ - mm, compaction: fix wrong pfn handling in __reset_isolation_pfn()
+ - mm: memcg: get number of pages on the LRU list in memcgroup base on
+ lru_zone_size
+ - mm: memblock: do not enforce current limit for memblock_phys* family
+ - hugetlbfs: don't access uninitialized memmaps in
+ pfn_range_valid_gigantic()
+ - mm/memory-failure: poison read receives SIGKILL instead of SIGBUS if
+ mmaped more than once
+ - zram: fix race between backing_dev_show and backing_dev_store
+ - [s390x] zcrypt: fix memleak at release
+ - [s390x] kaslr: add support for R_390_GLOB_DAT relocation type
+ - lib/vdso: Make clock_getres() POSIX compliant again
+ - [hppa] Fix vmap memory leak in ioremap()/iounmap()
+ - [arm64] KVM: Trap VM ops when ARM64_WORKAROUND_CAVIUM_TX2_219_TVM is set
+ - [arm64] Avoid Cavium TX2 erratum 219 when switching TTBR
+ - [arm64] Enable workaround for Cavium TX2 erratum 219 when running SMT
+ - [arm64] Allow CAVIUM_TX2_ERRATUM_219 to be selected
+ - CIFS: avoid using MID 0xFFFF
+ - cifs: Fix missed free operations
+ - CIFS: Fix use after free of file info structures
+ - perf/aux: Fix AUX output stopping
+ - tracing: Fix race in perf_trace_buf initialization
+ - fs/dax: Fix pmd vs pte conflict detection
+ - dm cache: fix bugs when a GFP_NOWAIT allocation fails
+ - [riscv64] irqchip/sifive-plic: Switch to fasteoi flow
+ - [amd64] boot: Make level2_kernel_pgt pages invalid outside kernel area
+ - [x86] apic/x2apic: Fix a NULL pointer deref when handling a dying cpu
+ - [x86] hyperv: Make vapic support x2apic mode
+ - [x86] pinctrl: cherryview: restore Strago DMI workaround for all versions
+ - [arm64] pinctrl: armada-37xx: fix control of pins 32 and up
+ - [arm64] pinctrl: armada-37xx: swap polarity on LED group
+ - btrfs: block-group: Fix a memory leak due to missing
+ btrfs_put_block_group()
+ - Btrfs: add missing extents release on file extent cluster relocation
+ error
+ - btrfs: don't needlessly create extent-refs kernel thread
+ - Btrfs: fix qgroup double free after failure to reserve metadata for
+ delalloc
+ - Btrfs: check for the full sync flag while holding the inode lock during
+ fsync
+ - btrfs: tracepoints: Fix wrong parameter order for qgroup events
+ - btrfs: tracepoints: Fix bad entry members of qgroup events
+ - [ppc64*] KVM: Book3S HV: XIVE: Ensure VP isn't already in use
+ - memstick: jmb38x_ms: Fix an error handling path in 'jmb38x_ms_probe()'
+ - cpufreq: Avoid cpufreq_suspend() deadlock on system shutdown
+ - ceph: just skip unrecognized info in ceph_reply_info_extra
+ - xen/netback: fix error path of xenvif_connect_data()
+ - PCI: PM: Fix pci_power_up()
+ - opp: of: drop incorrect lockdep_assert_held()
+ - of: reserved_mem: add missing of_node_put() for proper ref-counting
+ - blk-rq-qos: fix first node deletion of rq_qos_del()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.9
+ - io_uring: fix up O_NONBLOCK handling for sockets
+ - dm snapshot: introduce account_start_copy() and account_end_copy()
+ - dm snapshot: rework COW throttling to fix deadlock
+ - Btrfs: fix inode cache block reserve leak on failure to allocate data
+ space
+ - btrfs: qgroup: Always free PREALLOC META reserve in
+ btrfs_delalloc_release_extents()
+ - iio: fix center temperature of bmc150-accel-core
+ - libsubcmd: Make _FORTIFY_SOURCE defines dependent on the feature
+ - perf tests: Avoid raising SEGV using an obvious NULL dereference
+ - perf map: Fix overlapped map handling
+ - perf script brstackinsn: Fix recovery from LBR/binary mismatch
+ - perf jevents: Fix period for Intel fixed counters
+ - perf tools: Propagate get_cpuid() error
+ - perf annotate: Propagate perf_env__arch() error
+ - perf annotate: Fix the signedness of failure returns
+ - perf annotate: Propagate the symbol__annotate() error return
+ - perf annotate: Fix arch specific ->init() failure errors
+ - perf annotate: Return appropriate error code for allocation failures
+ - perf annotate: Don't return -1 for error when doing BPF disassembly
+ - staging: rtl8188eu: fix null dereference when kzalloc fails
+ - RDMA/hfi1: Prevent memory leak in sdma_init
+ - RDMA/iw_cxgb4: fix SRQ access from dump_qp()
+ - RDMA/iwcm: Fix a lock inversion issue
+ - [x86] HID: hyperv: Use in-place iterator API in the channel callback
+ - nfs: Fix nfsi->nrequests count error on nfs_inode_remove_request
+ - [arm64] cpufeature: Effectively expose FRINT capability to userspace
+ - [arm64] Fix incorrect irqflag restore for priority masking for compat
+ - [arm64] ftrace: Ensure synchronisation in PLT setup for Neoverse-N1
+ #1542419
+ - [riscv64] serial/sifive: select SERIAL_EARLYCON
+ - RDMA/core: Fix an error handling path in 'res_get_common_doit()'
+ - RDMA/cm: Fix memory leak in cm_add/remove_one
+ - RDMA/nldev: Reshuffle the code to avoid need to rebind QP in error path
+ - RDMA/mlx5: Do not allow rereg of a ODP MR
+ - RDMA/mlx5: Order num_pending_prefetch properly with synchronize_srcu
+ - RDMA/mlx5: Add missing synchronize_srcu() for MW cases
+ - [arm64] gpio: max77620: Use correct unit for debounce times
+ - fs: cifs: mute -Wunused-const-variable message
+ - [arm64] vdso32: Fix broken compat vDSO build warnings
+ - [arm64] vdso32: Detect binutils support for dmb ishld
+ - serial: mctrl_gpio: Check for NULL pointer
+ - [armhf] serial: 8250_omap: Fix gpio check for auto RTS/CTS
+ - [arm64] vdso32: Don't use KBUILD_CPPFLAGS unconditionally
+ - efi/cper: Fix endianness of PCIe class code
+ - [x86] efi: Do not clean dummy variable in kexec path
+ - [mips*] include: Mark __cmpxchg as __always_inline
+ - [riscv64] avoid kernel hangs when trapped in BUG()
+ - [riscv64] avoid sending a SIGTRAP to a user thread trapped in WARN()
+ - [riscv64] Correct the handling of unexpected ebreak in do_trap_break()
+ - [x86] xen: Return from panic notifier
+ - ocfs2: clear zero in unaligned direct IO
+ - fs: ocfs2: fix possible null-pointer dereferences in
+ ocfs2_xa_prepare_entry()
+ - fs: ocfs2: fix a possible null-pointer dereference in
+ ocfs2_write_end_nolock()
+ - fs: ocfs2: fix a possible null-pointer dereference in
+ ocfs2_info_scan_inode_alloc()
+ - btrfs: silence maybe-uninitialized warning in clone_range
+ - [arm64] armv8_deprecated: Checking return value for memory allocation
+ - [x86] cpu: Add Comet Lake to the Intel CPU models header
+ - sched/fair: Scale bandwidth quota and period without losing quota/period
+ ratio precision
+ - sched/vtime: Fix guest/system mis-accounting on task switch
+ - perf/core: Rework memory accounting in perf_mmap()
+ - perf/core: Fix corner case in perf_rotate_context()
+ - [x86] perf/amd: Change/fix NMI latency mitigation to use a timestamp
+ - drm/amdgpu: fix memory leak
+ - [mips*] include: Mark __xchg as __always_inline
+ - [mips*] fw: sni: Fix out of bounds init of o32 stack
+ - [s390x] cio: fix virtio-ccw DMA without PV
+ - [x86] virt: vbox: fix memory leak in hgcm_call_preprocess_linaddr
+ - nbd: fix possible sysfs duplicate warning
+ - NFSv4: Fix leak of clp->cl_acceptor string
+ - SUNRPC: fix race to sk_err after xs_error_report
+ - [s390x] uaccess: avoid (false positive) compiler warnings
+ - tracing: Initialize iter->seq after zeroing in tracing_read_pipe()
+ - perf annotate: Fix multiple memory and file descriptor leaks
+ - perf/aux: Fix tracking of auxiliary trace buffer allocation
+ - USB: legousbtower: fix a signedness bug in tower_probe()
+ - nbd: verify socket is supported during setup
+ - [arm64] dts: qcom: Add Lenovo Miix 630
+ - [arm64] dts: qcom: Add HP Envy x2
+ - [arm64] dts: qcom: Add Asus NovaGo TP370QL
+ - rtw88: Fix misuse of GENMASK macro
+ - [s390x] pci: fix MSI message data
+ - thunderbolt: Correct path indices for PCIe tunnel
+ - thunderbolt: Use 32-bit writes when writing ring producer/consumer
+ - fuse: flush dirty data/metadata before non-truncate setattr
+ - fuse: truncate pending writes on O_TRUNC
+ - ALSA: bebob: Fix prototype of helper function to return negative value
+ - ALSA: timer: Fix mutex deadlock at releasing card
+ - ALSA: hda/realtek - Fix 2 front mics of codec 0x623
+ - ALSA: hda/realtek - Add support for ALC623
+ - ath10k: fix latency issue for QCA988x
+ - UAS: Revert commit 3ae62a42090f ("UAS: fix alignment of scatter/gather
+ segments") (regression in 5.2)
+ - nl80211: fix validation of mesh path nexthop
+ - USB: gadget: Reject endpoints with 0 maxpacket value
+ - usb-storage: Revert commit 747668dbc061 ("usb-storage: Set
+ virt_boundary_mask to avoid SG overflows") (regression in 5.2)
+ - USB: ldusb: fix ring-buffer locking
+ - USB: ldusb: fix control-message timeout
+ - usb: xhci: fix Immediate Data Transfer endianness
+ - USB: serial: whiteheat: fix potential slab corruption
+ - USB: serial: whiteheat: fix line-speed endianness
+ - xhci: Fix use-after-free regression in xhci clear hub TT implementation
+ - scsi: qla2xxx: Fix partial flash write of MBI
+ - scsi: target: cxgbit: Fix cxgbit_fw4_ack()
+ - [x86] HID: i2c-hid: add Trekstor Primebook C11B to descriptor override
+ - HID: Fix assumption that devices have inputs
+ - HID: fix error message in hid_open_report()
+ - HID: logitech-hidpp: split g920_get_config()
+ - HID: logitech-hidpp: rework device validation
+ - HID: logitech-hidpp: do all FF cleanup in hidpp_ff_destroy()
+ - [s390x] unwind: fix mixing regs and sp
+ - [s390x] cmm: fix information leak in cmm_timeout_handler()
+ - [s390x] idle: fix cpu idle time calculation
+ - IB/hfi1: Avoid excessive retry for TID RDMA READ request
+ - [arm64] Ensure VM_WRITE|VM_SHARED ptes are clean by default
+ - [arm64] cpufeature: Enable Qualcomm Falkor/Kryo errata 1003
+ - virtio_ring: fix stalls for packed rings
+ - rtlwifi: rtl_pci: Fix problem of too small skb->len
+ - rtlwifi: Fix potential overflow on P2P code
+ - [x86] KVM: vmx, svm: always run with EFER.NXE=1 when shadow paging is
+ active
+ - [arm64] dmaengine: qcom: bam_dma: Fix resource leak
+ - [arm64] dmaengine: tegra210-adma: fix transfer failure
+ - [armhf] dmaengine: imx-sdma: fix size check for sdma script_number
+ - [armhf] dmaengine: cppi41: Fix cppi41_dma_prep_slave_sg() when idle
+ - drm/amdgpu/gmc10: properly set BANK_SELECT and FRAGMENT_SIZE
+ - [x86] drm/i915: Fix PCH reference clock for FDI on HSW/BDW
+ - drm/amdgpu/gfx10: update gfx golden settings
+ - drm/amdgpu/powerplay/vega10: allow undervolting in p7
+ - drm/amdgpu: Fix SDMA hang when performing VKexample test
+ - NFS: Fix an RCU lock leak in nfs4_refresh_delegation_stateid()
+ - io_uring: ensure we clear io_kiocb->result before each issue
+ - [x86] iommu/vt-d: Fix panic after kexec -p for kdump
+ - batman-adv: Avoid free/alloc race when handling OGM buffer
+ - llc: fix sk_buff leak in llc_sap_state_process()
+ - llc: fix sk_buff leak in llc_conn_service()
+ - rxrpc: Fix call ref leak
+ - rxrpc: rxrpc_peer needs to hold a ref on the rxrpc_local record
+ - rxrpc: Fix trace-after-put looking at the put peer record
+ - NFC: pn533: fix use-after-free and memleaks
+ - bonding: fix potential NULL deref in bond_update_slave_arr
+ - netfilter: conntrack: avoid possible false sharing
+ - net: usb: sr9800: fix uninitialized local variable
+ - sch_netem: fix rcu splat in netem_enqueue()
+ - net: sched: sch_sfb: don't call qdisc_put() while holding tree lock
+ - iwlwifi: exclude GEO SAR support for 3168
+ - sched/fair: Fix low cpu usage with high throttling by removing expiration
+ of cpu-local slices
+ - ALSA: usb-audio: DSD auto-detection for Playback Designs
+ - ALSA: usb-audio: Update DSD support quirks for Oppo and Rotel
+ - ALSA: usb-audio: Add DSD support for Gustard U16/X26 USB Interface
+ - RDMA/mlx5: Use irq xarray locking for mkey_table
+ - sched/fair: Fix -Wunused-but-set-variable warnings
+ - [powerpc*] powernv: Fix CPU idle to be called with IRQs disabled
+ - Revert "ALSA: hda: Flush interrupts on disabling" (regression in 5.3.4)
+
+ [ Ben Hutchings ]
+ * debian/bin/gencontrol_signed.py: Fix code style error
+ * debian/bin/gencontrol.py: Skip linux-perf lintian-overrides if we won't
+ build it
+ * debian/bin/gencontrol{,_signed}.py: Use vars parameter instead of self.vars
+ * debian/bin/gencontrol{,_signed}.py: Use %(name)s to format template vars
+ * debian/.gitignore, debian/rules: Generalise patterns for generated files
+ * gencontrol: Generalise substitution of debhelper config template
+ * Add maint scripts to meta-packages to convert doc directories to symlinks
+ (Closes: #942861)
+ * debian/lib/python/debian_linux/utils.py: Use 'with' to manage file handles
+ * debian/lib/python/debian_linux/utils.py: Store file mode for templates
+ * Copy template file permissions to output files
+ * debian/templates/headers.postinst.in: Set executable for consistency
+ * debian/README.source: Document code signing and how to test it
+ * debian/tests/control: Mark python test as superficial
+ * [arm64] linux-headers: Disable check for a 32-bit compiler
+ (Closes: #943953):
+ - arm64: Kconfig: Make CONFIG_COMPAT_VDSO a proper Kconfig option
+ - debian/bin/gencontrol.py: Optionally define $(CROSS_COMPILE_COMPAT) make
+ variable
+ - Enable COMPAT_VDSO and set $(CROSS_COMPILE_COMPAT) instead of setting
+ CROSS_COMPILE_COMPAT_VDSO
+ * crypto: Enable PKCS8_PRIVATE_KEY_PARSER as module (Closes: #924705)
+ * Bump ABI to 2
+ * [arm64] atmel_mxt_ts: Disable TOUCHSCREEN_ATMEL_MXT_T37 to avoid V4L
+ dependency
+ * random: try to actively add entropy rather than passively wait for it
+
+ [ Bastian Blank ]
+ * [amd64/cloud-amd64] Re-enable RTC drivers. (closes: #931341)
+
+ [ Thomas W ]
+ * [x86] Enable missing modules and setting:
+ CONFIG_HUAWEI_WMI
+ CONFIG_I2C_MULTI_INSTANTIATE
+ CONFIG_INTEL_TURBO_MAX_3
+
+ [ Alper Nebi Yasak ]
+ * [arm64] udeb: Add i2c-rk3x to i2c-modules
+ * [arm64,armhf] udeb: Add rockchip-io-domain to kernel-image
+ * udeb: Add atmel_mxt_ts to input-modules
+
+ [ Noah Meyerhans ]
+ * drivers/net/ethernet/amazon: Backport driver fixes from v5.4-rc5
+
+ [ Niv Sardi ]
+ * KEYS: Make use of platform keyring for module signature verify
+ (closes: #935945)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 09 Nov 2019 15:42:49 +0000
+
+linux (5.3.7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.3
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.4
+ - mISDN: enforce CAP_NET_RAW for raw sockets (CVE-2019-17055)
+ - appletalk: enforce CAP_NET_RAW for raw sockets (CVE-2019-17054)
+ - ax25: enforce CAP_NET_RAW for raw sockets (CVE-2019-17052)
+ - ieee802154: enforce CAP_NET_RAW for raw sockets (CVE-2019-17053)
+ - nfc: enforce CAP_NET_RAW for raw sockets (CVE-2019-17056)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.5
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.6
+ - nl80211: validate beacon head (CVE-2019-16746)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.7
+
+ [ Aurelien Jarno ]
+ * [riscv64] Enable SOC_SIFIVE. Do not select CLK_SIFIVE,
+ CLK_SIFIVE_FU540_PRCI, SIFIVE_PLIC, SERIAL_SIFIVE and
+ SERIAL_SIFIVE_CONSOLE as they are selected by SOC_SIFIVE.
+ * [riscv64] Install DTBS using dtbs_install target.
+ * [riscv64] Enable SPI_SIFIVE.
+ * [riscv64] Enable SERIAL_EARLYCON_RISCV_SBI.
+ * [riscv64] Enable MMC, MMC_SPI.
+ * [riscv64] udeb: Add mmc-core-modules and mmc-modules.
+ * [riscv64] Fix memblock reservation for device tree blob.
+ * [riscv64] Clear load reservations while restoring hart contexts.
+
+ [ Ben Hutchings ]
+ * [mips*] Revert "Only define MAX_PHYSMEM_BITS on Loongson-3"
+ * KEYS: Re-enable SECONDARY_TRUSTED_KEYRING, dropped in 5.2.6-1 by
+ mis-merge (Closes: #935945)
+
+ [ John Paul Adrian Glaubitz ]
+ * [m68k] Enable CONFIG_CRYPTO_MANAGER_DISABLE_TESTS
+ * [hppa] Enable CONFIG_CRYPTO_MANAGER_DISABLE_TESTS
+ * [sh4] Enable CONFIG_CRYPTO_MANAGER_DISABLE_TESTS
+
+ [ Salvatore Bonaccorso ]
+ * RDMA/cxgb4: Do not dma memory off of the stack (CVE-2019-17075)
+ * ath6kl: fix a NULL-ptr-deref bug in ath6kl_usb_alloc_urb_from_pipe()
+ (CVE-2019-15098)
+
+ [ Romain Perier ]
+ * [armel/rpi] Enable CONFIG_BRCMFMAC_SDIO (Closes: #940530)
+
+ [ Héctor Orón Martínez ]
+ * [x86] Enable ASoC: SOF sound driver (Closes: #940726)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 20 Oct 2019 00:56:32 +0200
+
+linux (5.3.2-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_5.3
+ - [armhf] select the dma-noncoherent symbols for all swiotlb builds
+ (fixes FTBFS)
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.1
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.3.2
+
+ [ Ben Hutchings ]
+ * [hppa,sparc64] udeb: Delete osst from scsi-modules (fixes FTBFS)
+ * Compile with gcc-9 on all architectures
+ * Set KCFLAGS make variable instead of CFLAGS_{KERNEL,MODULE}
+ * linux-image-dbg: Delete ./ from source file names in debug info
+ * debian/rules: Make maintainerclean delete (almost) everything clean does
+ * debian/rules: Make maintainerclean delete everything gencontrol.py creates
+ * debian/.gitignore: Synchronise some patterns with clean target
+ * Add the metapackages previously built by src:linux-latest:
+ - Add template and NEWS files from linux-latest
+ - Rename added templates to be consistent with existing templates
+ - Fix some inconsistencies in metapackage templates
+ - Define pkg.linux.nometa build profile to exclude the metapackages
+ - Build the metapackages by default (Closes: #583849, #941042)
+ - Make linux-perf an arch-dependent package
+ - Require metapackage dependencies to be the same version, and link doc
+ dirs
+
+ [ Uwe Kleine-König ]
+ * [arm64] enable I2C_QCOM_GENI for Lenovo C630
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 02 Oct 2019 05:31:27 +0100
+
+linux (5.3~rc5-1~exp2) experimental; urgency=medium
+
+ * tools/perf: pmu-events: Fix reproducibility
+ * Fix FTBFS:
+ - Update "kbuild: Make the toolchain variables easily overwritable" for 5.3
+ - udeb: Make nic-wireless-modules depend on crypto-modules
+ * debian/control: Remove build profile qual for rsync, needed for
+ headers_install
+ * debian/changelog: Move older entries to changelog.old
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 25 Aug 2019 16:28:41 +0100
+
+linux (5.3~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update support patchset to aufs5.x-rcN 20190805
+ * [rt] Disable until it is updated for 5.3 or later
+ * [powerpcspe] Remove all support for powerpcspe, which is dead upstream
+ * linux-headers: Change per-flavour Makefile to match upstream out-of-tree
+ builds
+ * debian/bin/genorig.py: Import debian.deb822 instead of deprecated deb822
+ * [arm64] Use armhf cross-compiler for building compat vDSO
+ * Documentation: Fix broken link to CIPSO draft
+
+ [ Lubomir Rintel ]
+ * udeb: input-modules: Add OLPC AP-SP keyboard
+ * [armhf] Add camera, EC and battery drivers for OLPC XO-1.75 laptop.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 24 Aug 2019 19:07:56 +0100
+
+linux (5.2.17-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.10
+ - KEYS: trusted: allow module init if TPM is inactive or deactivated
+ - seq_file: fix problem when seeking mid-record
+ - mm/hmm: fix bad subpage pointer in try_to_unmap_one
+ - mm: mempolicy: make the behavior consistent when MPOL_MF_MOVE* and
+ MPOL_MF_STRICT were specified
+ - mm: mempolicy: handle vma with unmovable pages mapped correctly in mbind
+ - mm/z3fold.c: fix z3fold_destroy_pool() ordering
+ - mm/z3fold.c: fix z3fold_destroy_pool() race condition
+ - mm/memcontrol.c: fix use after free in mem_cgroup_iter()
+ - mm/usercopy: use memory range to be accessed for wraparound check
+ - mm, vmscan: do not special-case slab reclaim when watermarks are boosted
+ - [armhf,arm64] cpufreq: schedutil: Don't skip freq update when limits
+ change
+ - drm/amdgpu: fix gfx9 soft recovery
+ - drm/nouveau: Only recalculate PBN/VCPI on mode/connector changes
+ - [arm64] ftrace: Ensure module ftrace trampoline is coherent with I-side
+ - [x86] ALSA: hda/realtek - Add quirk for HP Envy x360
+ - ALSA: usb-audio: Fix a stack buffer overflow bug in check_input_term
+ (CVE-2019-15118)
+ - ALSA: usb-audio: Fix an OOB bug in parse_audio_mixer_unit
+ (CVE-2019-15117)
+ - [x86] ALSA: hda - Apply workaround for another AMD chip 1022:1487
+ - ALSA: hda - Fix a memory leak bug
+ - ALSA: hda - Add a generic reboot_notify
+ - ALSA: hda - Let all conexant codec enter D3 when rebooting
+ - HID: holtek: test for sanity of intfdata
+ - HID: hiddev: avoid opening a disconnected device
+ - HID: hiddev: do cleanup in failure of opening a device
+ - Input: kbtab - sanity check for endpoint type
+ - Input: iforce - add sanity checks
+ - net: usb: pegasus: fix improper read if get_registers() fail
+ - bpf: fix access to skb_shared_info->gso_segs
+ - netfilter: ebtables: also count base chain policies
+ - [riscv64] Correct the initialized flow of FP register
+ - [riscv64] Make __fstate_clean() work correctly.
+ - [armhf] Revert "i2c: imx: improve the error handling in
+ i2c_imx_dma_request()"
+ - blk-mq: move cancel of requeue_work to the front of blk_exit_queue
+ - io_uring: fix manual setup of iov_iter for fixed buffers
+ - [arm64] RDMA/hns: Fix sg offset non-zero issue
+ - IB/mlx5: Replace kfree with kvfree
+ - dma-mapping: check pfn validity in dma_common_{mmap,get_sgtable}
+ - [x87] platform: intel_pmc_core: Add ICL-NNPI support to PMC Core
+ - mm/hmm: always return EBUSY for invalid ranges in
+ hmm_range_{fault,snapshot}
+ - [armhf,arm64] irqchip/gic-v3-its: Free unused vpt_page when alloc vpe
+ table fail
+ - [armhf] irqchip/irq-imx-gpcv2: Forward irq type to parent
+ - f2fs: fix to read source block before invalidating it
+ - tools perf beauty: Fix usbdevfs_ioctl table generator to handle _IOC()
+ - perf header: Fix divide by zero error if f_header.attr_size==0
+ - perf header: Fix use of unitialized value warning
+ - RDMA/qedr: Fix the hca_type and hca_rev returned in device attributes
+ - ALSA: pcm: fix lost wakeup event scenarios in snd_pcm_drain
+ - libata: zpodd: Fix small read overflow in zpodd_get_mech_type()
+ - Btrfs: fix deadlock between fiemap and transaction commits
+ - scsi: hpsa: correct scsi command status issue after reset
+ - scsi: qla2xxx: Fix possible fcport null-pointer dereferences
+ - drm/amdkfd: Fix byte align on VegaM
+ - drm/amd/powerplay: fix null pointer dereference around dpm state relates
+ - drm/amdgpu: fix error handling in amdgpu_cs_process_fence_dep
+ - drm/amdgpu: fix a potential information leaking bug
+ - ata: libahci: do not complain in case of deferred probe
+ - [riscv64] Fix perf record without libelf support
+ - [arm64] Lower priority mask for GIC_PRIO_IRQON
+ - [arm64] unwind: Prohibit probing on return_address()
+ - IB/core: Add mitigation for Spectre V1 (CVE-2017-5753)
+ - IB/mlx5: Fix MR registration flow to use UMR properly
+ - RDMA/restrack: Track driver QP types in resource tracker
+ - IB/mad: Fix use-after-free in ib mad completion handling
+ - RDMA/mlx5: Release locks during notifier unregister
+ - [arm64] drm: msm: Fix add_gpu_components
+ - [arm64] RDMA/hns: Fix error return code in hns_roce_v1_rsv_lp_qp()
+ - [armhf] drm/exynos: fix missing decrement of retry counter
+ - [arm64] kprobes: Recover pstate.D in single-step exception handler
+ - [arm64] Make debug exception handlers visible from RCU
+ - Revert "kmemleak: allow to coexist with fault injection"
+ - ocfs2: remove set but not used variable 'last_hash'
+ - page flags: prioritize kasan bits over last-cpuid
+ - asm-generic: fix -Wtype-limits compiler warnings
+ - tpm: tpm_ibm_vtpm: Fix unallocated banks
+ - [arm64] KVM: regmap: Fix unexpected switch fall-through
+ - [x86] staging: comedi: dt3000: Fix signed integer overflow 'divider *
+ base'
+ - [x86] staging: comedi: dt3000: Fix rounding up of timer divisor
+ - USB: core: Fix races in character device registration and deregistraion
+ - usb: cdc-acm: make sure a refcount is taken early enough
+ - USB: CDC: fix sanity checks in CDC union parser
+ - USB: serial: option: add D-Link DWM-222 device ID
+ - USB: serial: option: Add support for ZTE MF871A
+ - USB: serial: option: add the BroadMobi BM818 card
+ - USB: serial: option: Add Motorola modem UARTs
+ - usb: setup authorized_default attributes using usb_bus_notify
+ - netfilter: conntrack: Use consistent ct id hash calculation
+ - iwlwifi: Add support for SAR South Korea limitation
+ - Input: psmouse - fix build error of multiple definition
+ - bnx2x: Fix VF's VLAN reconfiguration in reload.
+ - bonding: Add vlan tx offload to hw_enc_features
+ - [armhf,arm64] net: dsa: Check existence of .port_mdb_add callback before
+ calling it
+ - net/mlx4_en: fix a memory leak bug
+ - net/packet: fix race in tpacket_snd()
+ - net: sched: sch_taprio: fix memleak in error path for sched list parse
+ - sctp: fix memleak in sctp_send_reset_streams
+ - sctp: fix the transport error_count check
+ - team: Add vlan tx offload to hw_enc_features
+ - tipc: initialise addr_trail_end when setting node addresses
+ - xen/netback: Reset nr_frags before freeing skb
+ - net/mlx5e: Only support tx/rx pause setting for port owner
+ - bnxt_en: Fix VNIC clearing logic for 57500 chips.
+ - bnxt_en: Improve RX doorbell sequence.
+ - bnxt_en: Fix handling FRAG_ERR when NVM_INSTALL_UPDATE cmd fails
+ - bnxt_en: Suppress HWRM errors for HWRM_NVM_GET_VARIABLE command
+ - bnxt_en: Use correct src_fid to determine direction of the flow
+ - bnxt_en: Fix to include flow direction in L2 key
+ - net sched: update skbedit action for batched events operations
+ - netdevsim: Restore per-network namespace accounting for fib entries
+ - net/mlx5e: ethtool, Avoid setting speed to 56GBASE when autoneg off
+ - net/mlx5e: Fix false negative indication on tx reporter CQE recovery
+ - net/mlx5e: Remove redundant check in CQE recovery flow of tx reporter
+ - net/mlx5e: Use flow keys dissector to parse packets for ARFS
+ - net/tls: prevent skb_orphan() from leaking TLS plain text with offload
+ - net: phy: consider AN_RESTART status when reading link status
+ - netlink: Fix nlmsg_parse as a wrapper for strict message parsing
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.11
+ - ASoC: simple_card_utils.h: care NULL dai at asoc_simple_debug_dai()
+ - ASoC: simple-card: fix an use-after-free in simple_dai_link_of_dpcm()
+ - ASoC: simple-card: fix an use-after-free in simple_for_each_link()
+ - ASoC: audio-graph-card: fix use-after-free in graph_dai_link_of_dpcm()
+ - ASoC: audio-graph-card: fix an use-after-free in graph_get_dai_id()
+ - ASoC: audio-graph-card: add missing const at graph_get_dai_id()
+ - regulator: axp20x: fix DCDCA and DCDCD for AXP806
+ - regulator: axp20x: fix DCDC5 and DCDC6 for AXP803
+ - [armhf] ASoC: samsung: odroid: fix an use-after-free issue for codec
+ - [armhf] ASoC: samsung: odroid: fix a double-free issue for cpu_dai
+ - [x86] ASoC: Intel: bytcht_es8316: Add quirk for Irbis NB41 netbook
+ - HID: logitech-hidpp: add USB PID for a few more supported mice
+ - HID: Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT
+ - [mips*] kernel: only use i8253 clocksource with periodic clockevent
+ - [mips*] fix cacheinfo
+ - libbpf: sanitize VAR to conservative 1-byte INT
+ - netfilter: ebtables: fix a memory leak bug in compat
+ - ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks
+ - [amd64] spi: pxa2xx: Balance runtime PM enable/disable on error
+ - bpf: sockmap, sock_map_delete needs to use xchg
+ - bpf: sockmap, synchronize_rcu before free'ing map
+ - bpf: sockmap, only create entry if ulp is not already enabled
+ - ASoC: dapm: fix a memory leak bug
+ - bonding: Force slave speed check after link state recovery for 802.3ad
+ - [armhf,arm64] net: mvpp2: Don't check for 3 consecutive Idle frames for
+ 10G links
+ - libbpf: fix using uninitialized ioctl results
+ - can: dev: call netif_carrier_off() in register_candev()
+ - can: gw: Fix error path of cgw_module_init
+ - libbpf: silence GCC8 warning about string truncation
+ - {nl,mac}80211: fix interface combinations on crypto controlled devices
+ - [armhf] ASoC: ti: davinci-mcasp: Fix clk PDIR handling for i2s master
+ mode
+ - [armhf,arm64] ASoC: rockchip: Fix mono capture
+ - [armhf] ASoC: ti: davinci-mcasp: Correct slot_width posed constraint
+ - net: usb: qmi_wwan: Add the BroadMobi BM818 card
+ - qed: RDMA - Fix the hw_ver returned in device attributes
+ - isdn: mISDN: hfcsusb: Fix possible null-pointer dereferences in
+ start_isoc_chain()
+ - mac80211_hwsim: Fix possible null-pointer dereferences in
+ hwsim_dump_radio_nl()
+ - [armhf,arm64] net: stmmac: manage errors returned by of_get_mac_address()
+ - netfilter: ipset: Actually allow destination MAC address for hash:ip,mac
+ sets too
+ - netfilter: ipset: Copy the right MAC address in bitmap:ip,mac and
+ hash:ip,mac sets
+ - netfilter: ipset: Fix rename concurrency with listing
+ - rxrpc: Fix potential deadlock
+ - rxrpc: Fix the lack of notification when sendmsg() fails on a DATA packet
+ - nvmem: Use the same permissions for eeprom as for nvmem
+ - iwlwifi: mvm: avoid races in rate init and rate perform
+ - iwlwifi: dbg_ini: move iwl_dbg_tlv_load_bin out of debug override ifdef
+ - iwlwifi: dbg_ini: move iwl_dbg_tlv_free outside of debugfs ifdef
+ - iwlwifi: fix locking in delayed GTK setting
+ - iwlwifi: mvm: send LQ command always ASYNC
+ - isdn: hfcsusb: Fix mISDN driver crash caused by transfer buffer on the
+ stack
+ - net: phy: phy_led_triggers: Fix a possible null-pointer dereference in
+ phy_led_trigger_change_speed()
+ - perf bench numa: Fix cpu0 binding
+ - [arm64] spi: pxa2xx: Add support for Intel Tiger Lake
+ - can: sja1000: force the string buffer NULL-terminated
+ - can: peak_usb: force the string buffer NULL-terminated
+ - [x86] ASoC: amd: acp3x: use dma_ops of parent device for acp3x dma driver
+ - net/ethernet/qlogic/qed: force the string buffer NULL-terminated
+ - NFSv4: Fix a credential refcount leak in nfs41_check_delegation_stateid
+ - NFSv4: When recovering state fails with EAGAIN, retry the same recovery
+ - NFSv4.1: Fix open stateid recovery
+ - NFSv4.1: Only reap expired delegations
+ - NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim()
+ - NFS: Fix regression whereby fscache errors are appearing on 'nofsc'
+ mounts
+ - HID: quirks: Set the INCREMENT_USAGE_ON_DUPLICATE quirk on Saitek X52
+ - HID: input: fix a4tech horizontal wheel custom usage
+ - [armhf,arm64] drm/rockchip: Suspend DP late
+ - SMB3: Fix potential memory leak when processing compound chain
+ - SMB3: Kernel oops mounting a encryptData share with CONFIG_DEBUG_VIRTUAL
+ - sched/deadline: Fix double accounting of rq/running bw in push & pull
+ - sched/psi: Reduce psimon FIFO priority
+ - sched/psi: Do not require setsched permission from the trigger creator
+ - [s390x] protvirt: avoid memory sharing for diag 308 set/store
+ - [s390x] mm: fix dump_pagetables top level page table walking
+ - [s390x] put _stext and _etext into .text section
+ - net: cxgb3_main: Fix a resource leak in a error path in 'init_one()'
+ - [armhf,arm64] net: stmmac: Fix issues when number of Queues >= 4
+ - [armhf,arm64] net: stmmac: tc: Do not return a fragment entry
+ - drm/amdgpu: pin the csb buffer on hw init for gfx v8
+ - [arm64] net: hisilicon: make hip04_tx_reclaim non-reentrant
+ - [arm64] net: hisilicon: fix hip04-xmit never return TX_BUSY
+ - [arm64] net: hisilicon: Fix dma_map_single failed on arm64
+ - NFSv4: Ensure state recovery handles ETIMEDOUT correctly
+ - libata: have ata_scsi_rw_xlat() fail invalid passthrough requests
+ - libata: add SG safety checks in SFF pio transfers
+ - [x86] lib/cpu: Address missing prototypes warning
+ - [x86] drm/vmwgfx: fix memory leak when too many retries have occurred
+ - block: aoe: Fix kernel crash due to atomic sleep when exiting
+ - block, bfq: handle NULL return value by bfq_init_rq()
+ - perf ftrace: Fix failure to set cpumask when only one cpu is present
+ - perf cpumap: Fix writing to illegal memory in handling cpumap mask
+ - perf pmu-events: Fix missing "cpu_clk_unhalted.core" event
+ - [riscv64] dt-bindings: fix the schema compatible string for the HiFive
+ Unleashed board
+ - [arm64] KVM: Don't write junk to sysregs on reset
+ - [armhf] KVM: Don't write junk to CP15 registers on reset
+ - iwlwifi: mvm: disable TX-AMSDU on older NICs (Closes: #939853)
+ - HID: wacom: correct misreported EKR ring values
+ - HID: wacom: Correct distance scale for 2nd-gen Intuos devices
+ - [x86] Revert "KVM: x86/mmu: Zap only the relevant pages when removing a
+ memslot" (regression in 5.1)
+ - Revert "dm bufio: fix deadlock with loop device" (regression in 5.2.3)
+ - [armhf] clk: socfpga: stratix10: fix rate caclulationg for cnt_clks
+ - ceph: clear page dirty before invalidate page
+ - ceph: don't try fill file_lock on unsuccessful GETFILELOCK reply
+ - libceph: fix PG split vs OSD (re)connect race
+ - drm/amdgpu/gfx9: update pg_flags after determining if gfx off is possible
+ - drm/nouveau: Don't retry infinitely when receiving no data on i2c over
+ AUX
+ - scsi: ufs: Fix NULL pointer dereference in ufshcd_config_vreg_hpm()
+ - gpiolib: never report open-drain/source lines as 'input' to user-space
+ - [x86] Drivers: hv: vmbus: Fix virt_to_hvpfn() for X86_PAE
+ - userfaultfd_release: always remove uffd flags and clear
+ vm_userfaultfd_ctx
+ - [i386] retpoline: Don't clobber RFLAGS during CALL_NOSPEC on i386
+ - [x86] apic: Handle missing global clockevent gracefully
+ - [x86] CPU/AMD: Clear RDRAND CPUID bit on AMD family 15h/16h
+ - [x86] boot: Save fields explicitly, zero out everything else
+ - [x86] boot: Fix boot regression caused by bootparam sanitizing
+ - IB/hfi1: Unsafe PSN checking for TID RDMA READ Resp packet
+ - IB/hfi1: Add additional checks when handling TID RDMA READ RESP packet
+ - IB/hfi1: Add additional checks when handling TID RDMA WRITE DATA packet
+ - IB/hfi1: Drop stale TID RDMA packets that cause TIDErr
+ - psi: get poll_work to run when calling poll syscall next time
+ - dm kcopyd: always complete failed jobs
+ - dm btree: fix order of block initialization in btree_split_beneath
+ - dm integrity: fix a crash due to BUG_ON in __journal_read_write()
+ - dm raid: add missing cleanup in raid_ctr()
+ - dm space map metadata: fix missing store of apply_bops() return value
+ - dm table: fix invalid memory accesses with too high sector number
+ - dm zoned: improve error handling in reclaim
+ - dm zoned: improve error handling in i/o map code
+ - dm zoned: properly handle backing device failure
+ - genirq: Properly pair kobject_del() with kobject_add()
+ - mm/z3fold.c: fix race between migration and destruction
+ - mm, page_alloc: move_freepages should not examine struct page of reserved
+ memory
+ - mm: memcontrol: flush percpu vmstats before releasing memcg
+ - mm: memcontrol: flush percpu vmevents before releasing memcg
+ - mm, page_owner: handle THP splits correctly
+ - mm/zsmalloc.c: migration can leave pages in ZS_EMPTY indefinitely
+ - mm/zsmalloc.c: fix race condition in zs_destroy_pool
+ - IB/hfi1: Drop stale TID RDMA packets
+ - dm zoned: fix potential NULL dereference in dmz_do_reclaim()
+ - io_uring: fix potential hang with polled IO
+ - io_uring: don't enter poll loop if we have CQEs pending
+ - io_uring: add need_resched() check in inner poll loop
+ - [powerpc*] Allow flush_(inval_)dcache_range to work across ranges >4GB
+ - rxrpc: Fix local endpoint refcounting
+ - rxrpc: Fix read-after-free in rxrpc_queue_local()
+ - rxrpc: Fix local endpoint replacement
+ - rxrpc: Fix local refcounting
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.12
+ - nvme-multipath: revalidate nvme_ns_head gendisk in nvme_validate_ns
+ - afs: Fix the CB.ProbeUuid service handler to reply correctly
+ - afs: Fix loop index mixup in afs_deliver_vl_get_entry_by_name_u()
+ - fs: afs: Fix a possible null-pointer dereference in afs_put_read()
+ - afs: Fix off-by-one in afs_rename() expected data version calculation
+ - afs: Only update d_fsdata if different in afs_d_revalidate()
+ - afs: Fix missing dentry data version updating
+ - nvmet: Fix use-after-free bug when a port is removed
+ - nvmet-loop: Flush nvme_delete_wq when removing the port
+ - nvmet-file: fix nvmet_file_flush() always returning an error
+ - nvme-core: Fix extra device_put() call on error path
+ - nvme: fix a possible deadlock when passthru commands sent to a multipath
+ device
+ - nvme-rdma: fix possible use-after-free in connect error flow
+ - nvme: fix controller removal race with scan work
+ - nvme-pci: Fix async probe remove race
+ - btrfs: trim: Check the range passed into to prevent overflow
+ - IB/mlx5: Fix implicit MR release flow
+ - [armhf] omap-dma/omap_vout_vrfb: fix off-by-one fi value
+ - iommu/dma: Handle SG length overflow better
+ - dma-direct: don't truncate dma_required_mask to bus addressing
+ capabilities
+ - usb: gadget: composite: Clear "suspended" on reset/disconnect
+ - usb: gadget: mass_storage: Fix races between fsg_disable and fsg_set_alt
+ - xen/blkback: fix memory leaks
+ - [arm64] cpufeature: Don't treat granule sizes as strict
+ - [riscv64] fix flush_tlb_range() end address for flush_tlb_page()
+ - drm/scheduler: use job count instead of peek
+ - drm/ast: Fixed reboot test may cause system hanged
+ - [x86] tools: hv: fix KVP and VSS daemons exit code
+ - locking/rwsem: Add missing ACQUIRE to read_slowpath exit when queue is
+ empty
+ - lcoking/rwsem: Add missing ACQUIRE to read_slowpath sleep loop
+ - [arm*] watchdog: bcm2835_wdt: Fix module autoload
+ - mt76: usb: fix rx A-MSDU support
+ - ipv6/addrconf: allow adding multicast addr if IFA_F_MCAUTOJOIN is set
+ - ipv6: Fix return value of ipv6_mc_may_pull() for malformed packets
+ (regression in 5.1)
+ - [armhf] net: cpsw: fix NULL pointer exception in the probe error path
+ - net: fix __ip_mc_inc_group usage
+ - net/smc: make sure EPOLLOUT is raised
+ - tcp: make sure EPOLLOUT wont be missed
+ - ipv4: mpls: fix mpls_xmit for iptunnel
+ - openvswitch: Fix conntrack cache with timeout
+ - ipv4/icmp: fix rt dst dev null pointer dereference
+ - xfrm/xfrm_policy: fix dst dev null pointer dereference in collect_md mode
+ - mm/zsmalloc.c: fix build when CONFIG_COMPACTION=n
+ - ALSA: usb-audio: Check mixer unit bitmap yet more strictly
+ - ALSA: hda/ca0132 - Add new SBZ quirk
+ - ALSA: line6: Fix memory leak at line6_init_pcm() error path
+ - ALSA: hda - Fixes inverted Conexant GPIO mic mute led
+ - ALSA: seq: Fix potential concurrent access to the deleted pool
+ - ALSA: usb-audio: Fix invalid NULL check in snd_emuusb_set_samplerate()
+ - ALSA: usb-audio: Add implicit fb quirk for Behringer UFX1604
+ - [x86] kvm: skip populating logical dest map if apic is not sw enabled
+ - [x86] KVM: hyper-v: don't crash on KVM_GET_SUPPORTED_HV_CPUID when
+ kvm_intel.nested is disabled
+ - [x86] KVM: Don't update RIP or do single-step on faulting emulation
+ - [x86] uprobes: Fix detection of 32-bit user mode
+ - [x86] mm/cpa: Prevent large page split when ftrace flips RW on kernel text
+ - [x86] apic: Do not initialize LDR and DFR for bigsmp
+ - [x86] apic: Include the LDR when clearing out APIC registers
+ - HID: logitech-hidpp: remove support for the G700 over USB
+ - ftrace: Fix NULL pointer dereference in t_probe_next()
+ - ftrace: Check for successful allocation of hash
+ - ftrace: Check for empty hash and comment the race with registering probes
+ - usbtmc: more sanity checking for packet size
+ - usb-storage: Add new JMS567 revision to unusual_devs
+ - USB: cdc-wdm: fix race between write and disconnect due to flag abuse
+ - usb: hcd: use managed device resources
+ - [armhf,arm64] usb: chipidea: udc: don't do hardware access if gadget has
+ stopped
+ - usb: host: ohci: fix a race condition between shutdown and irq
+ - USB: storage: ums-realtek: Whitelist auto-delink support
+ - [x86] tools/power turbostat: Fix caller parameter of get_tdp_amd()
+ - [powerpc*] KVM: Book3S: Fix incorrect guest-to-user-translation error
+ handling
+ - [armhf,arm64] KVM: vgic: Fix potential deadlock when ap_list is long
+ - [armhf,arm64] KVM: vgic-v2: Handle SGI bits in GICD_I{S,C}PENDR0 as WI
+ - [x86] mei: me: add Tiger Lake point LP device ID
+ - [armhf,arm64] Revert "mmc: sdhci-tegra: drop ->get_ro() implementation"
+ (regression in 5.1)
+ - mmc: core: Fix init of SD cards reporting an invalid VDD range
+ - [x86] intel_th: pci: Add support for another Lewisburg PCH
+ - [x86] intel_th: pci: Add Tiger Lake support
+ - [x86] typec: tcpm: fix a typo in the comparison of pdo_max_voltage
+ - NFSv4/pnfs: Fix a page lock leak in nfs_pageio_resend()
+ - NFS: Ensure O_DIRECT reports an error if the bytes read/written is 0
+ - Revert "NFSv4/flexfiles: Abort I/O early if the layout segment was
+ invalidated" (regression in 5.1)
+ - lib: logic_pio: Fix RCU usage
+ - lib: logic_pio: Avoid possible overlap for unregistering regions
+ - lib: logic_pio: Add logic_pio_unregister_range()
+ - drm/amdgpu: Add APTX quirk for Dell Latitude 5495
+ - drm/amdgpu: fix GFXOFF on Picasso and Raven2
+ - [x86] drm/i915: Don't deballoon unused ggtt drm_mm_node in linux guest
+ - [x86] drm/i915: Call dma_set_max_seg_size() in i915_driver_hw_probe()
+ - i2c: piix4: Fix port selection for AMD Family 16h Model 30h
+ - [arm64] bus: hisi_lpc: Unregister logical PIO range to avoid potential
+ use-after-free
+ - [arm64] bus: hisi_lpc: Add .remove method to avoid driver unbind crash
+ - [x86] VMCI: Release resource if the work is already queued
+ - [x86] crypto: ccp - Ignore unconfigured CCP device on suspend/resume
+ - SUNRPC: Don't handle errors if the bind/connect succeeded
+ - mt76: mt76x0u: do not reset radio on resume
+ - mm, memcg: partially revert "mm/memcontrol.c: keep local VM counters in
+ sync with the hierarchical ones" (regression in 5.2.7)
+ - mm: memcontrol: fix percpu vmstats and vmevents flush
+ - mac80211: fix possible sta leak
+ - cfg80211: Fix Extended Key ID key install checks
+ - mac80211: Don't memset RXCB prior to PAE intercept
+ - mac80211: Correctly set noencrypt for PAE frames
+ - iwlwifi: add new cards for 22000 and fix struct name
+ - iwlwifi: add new cards for 22000 and change wrong structs
+ - iwlwifi: add new cards for 9000 and 20000 series
+ - iwlwifi: change 0x02F0 fw from qu to quz
+ - iwlwifi: pcie: add support for qu c-step devices
+ - iwlwifi: pcie: don't switch FW to qnj when ax201 is detected
+ - iwlwifi: pcie: handle switching killer Qu B0 NICs to C0
+ - [x86] drm/i915: Do not create a new max_bpc prop for MST connectors
+ - [x86] drm/i915/dp: Fix DSC enable code to use cpu_transcoder instead of
+ encoder->type
+ - [x86] ptrace: fix up botched merge of spectrev1 fix
+ - bpf: fix use after free in prog symbol exposure
+ - hsr: implement dellink to clean up resources
+ - hsr: fix a NULL pointer deref in hsr_dev_xmit()
+ - hsr: switch ->dellink() to ->ndo_uninit()
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.13
+ - Revert "Input: elantech - enable SMBus on new (2018+) systems"
+ (regression in 5.2.9)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.14
+ - mld: fix memory leak in mld_del_delrec()
+ - net: fix skb use after free in netpoll
+ - net: sched: act_sample: fix psample group handling on overwrite
+ - net_sched: fix a NULL pointer deref in ipt action
+ - [arm64, armhf] net: stmmac: dwmac-rk: Don't fail if phy regulator is
+ absent
+ - tcp: inherit timestamp on mtu probe
+ - tcp: remove empty skb from write queue in error cases
+ - Revert "r8152: napi hangup fix after disconnect"
+ - r8152: remove calling netif_napi_del
+ - net/sched: cbs: Set default link speed to 10 Mbps in cbs_set_port_rate
+ - Add genphy_c45_config_aneg() function to phy-c45.c
+ - net/sched: pfifo_fast: fix wrong dereference in pfifo_fast_enqueue
+ - net/sched: pfifo_fast: fix wrong dereference when qdisc is reset
+ - net/rds: Fix info leak in rds6_inc_info_copy() (CVE-2019-16714)
+ - batman-adv: Fix netlink dumping of all mcast_flags buckets
+ - libbpf: fix erroneous multi-closing of BTF FD
+ - libbpf: set BTF FD for prog only when there is supported .BTF.ext data
+ - netfilter: nf_flow_table: fix offload for flows that are subject to xfrm
+ - net/mlx5e: Fix error flow of CQE recovery on tx reporter
+ - [armhf] clk: samsung: Change signature of exynos5_subcmus_init() function
+ - [armhf] clk: samsung: exynos5800: Move MAU subsystem clocks to MAU sub-CMU
+ - [armhf] clk: samsung: exynos542x: Move MSCL subsystem clocks to its
+ sub-CMU
+ - netfilter: nf_tables: use-after-free in failing rule with bound set
+ - netfilter: nf_flow_table: conntrack picks up expired flows
+ - netfilter: nf_flow_table: teardown flow timeout race
+ - tools: bpftool: fix error message (prog -> object)
+ - ixgbe: fix possible deadlock in ixgbe_service_task()
+ - [x86] hv_netvsc: Fix a warning of suspicious RCU usage
+ - net: tc35815: Explicitly check NET_IP_ALIGN is not zero in tc35815_rx
+ - Bluetooth: btqca: Add a short delay before downloading the NVM
+ - Bluetooth: hci_qca: Send VS pre shutdown command.
+ - [s390x] qeth: serialize cmd reply with concurrent timeout
+ - ibmveth: Convert multicast list size for little-endian system
+ - gpio: Fix build error of function redefinition
+ - netfilter: nft_flow_offload: skip tcp rst and fin packets
+ - scsi: qla2xxx: Fix gnl.l memory leak on adapter init failure
+ - scsi: target: tcmu: avoid use-after-free after command timeout
+ - cxgb4: fix a memory leak bug
+ - liquidio: add cleanup in octeon_setup_iq()
+ - net: myri10ge: fix memory leaks
+ - clk: Fix falling back to legacy parent string matching
+ - clk: Fix potential NULL dereference in clk_fetch_parent_index()
+ - lan78xx: Fix memory leaks
+ - vfs: fix page locking deadlocks when deduping files
+ - cx82310_eth: fix a memory leak bug
+ - net: kalmia: fix memory leaks
+ - net: cavium: fix driver name
+ - wimax/i2400m: fix a memory leak bug
+ - sched/core: Schedule new worker even if PI-blocked
+ - kprobes: Fix potential deadlock in kprobe_optimizer()
+ - [x86] HID: intel-ish-hid: ipc: add EHL device id
+ - HID: cp2112: prevent sleeping function called from invalid context
+ - [x86] boot/compressed/64: Fix boot on machines with broken E820 table
+ - scsi: lpfc: Mitigate high memory pre-allocation by SCSI-MQ
+ - [x86] Input: hyperv-keyboard: Use in-place iterator API in the channel
+ callback
+ - Tools: hv: kvp: eliminate 'may be used uninitialized' warning
+ - nvme-multipath: fix possible I/O hang when paths are updated
+ - nvme: Fix cntlid validation when not using NVMEoF
+ - RDMA/cma: fix null-ptr-deref Read in cma_cleanup
+ - IB/mlx4: Fix memory leaks
+ - [x86] infiniband: hfi1: fix a memory leak bug
+ - [x86] infiniband: hfi1: fix memory leaks
+ - drm/amdgpu: prevent memory leaks in AMDGPU_CS ioctl
+ - ceph: fix buffer free while holding i_ceph_lock in __ceph_setxattr()
+ - ceph: fix buffer free while holding i_ceph_lock in
+ __ceph_build_xattrs_blob()
+ - ceph: fix buffer free while holding i_ceph_lock in fill_inode()
+ - [arm64, armhf] KVM: Only skip MMIO insn once
+ - afs: Fix leak in afs_lookup_cell_rcu()
+ - afs: Fix possible oops in afs_lookup trace event
+ - afs: use correct afs_call_type in yfs_fs_store_opaque_acl2
+ - RDMA/bnxt_re: Fix stack-out-of-bounds in bnxt_qplib_rcfw_send_message
+ - gpio: Fix irqchip initialization order
+ - [arm64, armhf] KVM: VGIC: Properly initialise private IRQ affinity
+ - [x86] boot/compressed/64: Fix missing initialization in
+ find_trampoline_placement()
+ - libceph: allow ceph_buffer_put() to receive a NULL ceph_buffer
+ - [x86] Revert "x86/apic: Include the LDR when clearing out APIC registers"
+ - [x86] boot: Preserve boot_params.secure_boot from sanitizing
+ - Revert "mmc: core: do not retry CMD6 in __mmc_switch()"
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.15
+ - gpio: pca953x: correct type of reg_direction
+ - gpio: pca953x: use pca953x_read_regs instead of regmap_bulk_read
+ - ALSA: hda - Fix potential endless loop at applying quirks
+ - ALSA: hda/realtek - Fix overridden device-specific initialization
+ - ALSA: hda/realtek - Add quirk for HP Pavilion 15
+ - ALSA: hda/realtek - Enable internal speaker & headset mic of ASUS UX431FL
+ - ALSA: hda/realtek - Fix the problem of two front mics on a ThinkCentre
+ - sched/fair: Don't assign runtime for throttled cfs_rq
+ - [x86] drm/vmwgfx: Fix double free in vmw_recv_msg()
+ - drm/nouveau/sec2/gp102: add missing MODULE_FIRMWAREs
+ - [powerpc*] 64e: Drop stale call to smp_processor_id() which hangs SMP
+ startup
+ - [powerpc*] tm: Fix restoring FP/VMX facility incorrectly on interrupts
+ (CVE-2019-15031)
+ - batman-adv: fix uninit-value in batadv_netlink_get_ifindex()
+ - batman-adv: Only read OGM tvlv_len after buffer len check
+ - bcache: only clear BTREE_NODE_dirty bit when it is set
+ - bcache: add comments for mutex_lock(&b->write_lock)
+ - bcache: fix race in btree_flush_write()
+ - IB/rdmavt: Add new completion inline
+ - IB/{rdmavt, qib, hfi1}: Convert to new completion API
+ - IB/hfi1: Unreserve a flushed OPFN request
+ - [x86] drm/i915: Disable SAMPLER_STATE prefetching on all Gen11 steppings.
+ - [x86] drm/i915: Make sure cdclk is high enough for DP audio on VLV/CHV
+ - mmc: sdhci-sprd: Fix the incorrect soft reset operation when runtime
+ resuming
+ - usb: chipidea: imx: add imx7ulp support
+ - usb: chipidea: imx: fix EPROBE_DEFER support during driver probe
+ - [s390x] virtio: fix race on airq_areas[]
+ - [x86] drm/i915: Support flags in whitlist WAs
+ - [x86] drm/i915: Support whitelist workarounds on all engines
+ - [x86] drm/i915: whitelist PS_(DEPTH|INVOCATION)_COUNT
+ - [x86] drm/i915: Add whitelist workarounds for ICL
+ - [x86] drm/i915/icl: whitelist PS_(DEPTH|INVOCATION)_COUNT
+ - Btrfs: fix unwritten extent buffers and hangs on future writeback
+ attempts (Closes: #940105)
+ - vhost: make sure log_num < in_num (CVE-2019-14835)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.16
+ - bridge/mdb: remove wrong use of NLM_F_MULTI
+ - cdc_ether: fix rndis support for Mediatek based smartphones
+ - ipv6: Fix the link time qualifier of 'ping_v6_proc_exit_net()'
+ - isdn/capi: check message length in capi_write()
+ - ixgbe: Fix secpath usage for IPsec TX offload.
+ - ixgbevf: Fix secpath usage for IPsec Tx offload
+ - net: Fix null de-reference of device refcount
+ - net: gso: Fix skb_segment splat when splitting gso_size mangled skb
+ having linear-headed frag_list
+ - net: phylink: Fix flow control resolution
+ - net: sched: fix reordering issues
+ - sch_hhf: ensure quantum and hhf_non_hh_weight are non-zero
+ - sctp: Fix the link time qualifier of 'sctp_ctrlsock_exit()'
+ - sctp: use transport pf_retrans in sctp_do_8_2_transport_strike
+ - tcp: fix tcp_ecn_withdraw_cwr() to clear TCP_ECN_QUEUE_CWR
+ - tipc: add NULL pointer check before calling kfree_rcu
+ - tun: fix use-after-free when register netdev failed
+ - net-ipv6: fix excessive RTF_ADDRCONF flag on ::1/128 local route (and
+ others)
+ - ipv6: addrconf_f6i_alloc - fix non-null pointer check to !IS_ERR()
+ - net: fixed_phy: Add forward declaration for struct gpio_desc;
+ - sctp: fix the missing put_user when dumping transport thresholds
+ - net: sock_map, fix missing ulp check in sock hash case
+ - gpiolib: acpi: Add gpiolib_acpi_run_edge_events_on_boot option and
+ blacklist
+ - gpio: mockup: add missing single_release()
+ - gpio: fix line flag validation in linehandle_create
+ - gpio: fix line flag validation in lineevent_create
+ - Btrfs: fix assertion failure during fsync and use of stale transaction
+ - cgroup: freezer: fix frozen state inheritance
+ - Revert "mmc: bcm2835: Terminate timeout work synchronously"
+ - Revert "mmc: sdhci: Remove unneeded quirk2 flag of O2 SD host controller"
+ - mmc: tmio: Fixup runtime PM management during probe
+ - mmc: tmio: Fixup runtime PM management during remove
+ - drm/lima: fix lima_gem_wait() return value
+ - [x86] drm/i915: Limit MST to <= 8bpc once again
+ - [x86] drm/i915: Restore relaxed padding (OCL_OOB_SUPPRES_ENABLE) for skl+
+ - ipc: fix semtimedop for generic 32-bit architectures
+ - ipc: fix sparc64 ipc() wrapper
+ - ixgbe: fix double clean of Tx descriptors with xdp
+ - ixgbe: Prevent u8 wrapping of ITR value to something less than 10us
+ - Revert "rt2800: enable TX_PIN_CFG_LNA_PE_ bits per band"
+ - mt76: mt76x0e: disable 5GHz band for MT7630E
+ - genirq: Prevent NULL pointer dereference in resend_irqs()
+ - regulator: twl: voltage lists for vdd1/2 on twl4030
+ - [s390x] KVM: kvm_s390_vm_start_migration: check dirty_bitmap before using
+ it as target for memset()
+ - [s390x] KVM: Do not leak kernel stack data in the KVM_S390_INTERRUPT ioctl
+ - [x86] KVM: work around leak of uninitialized stack contents
+ - [x86] KVM: mmu: Reintroduce fast invalidate/zap for flushing memslot
+ - [x86] KVM: nVMX: handle page fault in vmread
+ - [x86] purgatory: Change compiler flags from -mcmodel=kernel to
+ -mcmodel=large to fix kexec relocation errors
+ - powerpc: Add barrier_nospec to raw_copy_in_user()
+ - kernel/module: Fix mem leak in module_add_modinfo_attrs
+ - x86/boot: Use efi_setup_data for searching RSDP on kexec-ed kernels
+ - x86/ima: check EFI SetupMode too
+ - drm/meson: Add support for XBGR8888 & ABGR8888 formats
+ - clk: Fix debugfs clk_possible_parents for clks without parent string names
+ - clk: Simplify debugfs printing and add a newline
+ - mt76: Fix a signedness bug in mt7615_add_interface()
+ - mt76: mt7615: Use after free in mt7615_mcu_set_bcn()
+ - clk: rockchip: Don't yell about bad mmc phases when getting
+ - mtd: rawnand: mtk: Fix wrongly assigned OOB buffer pointer issue
+ - PCI: Always allow probing with driver_override
+ - ubifs: Correctly use tnc_next() in search_dh_cookie()
+ - driver core: Fix use-after-free and double free on glue directory
+ - crypto: talitos - check AES key size
+ - crypto: talitos - fix CTR alg blocksize
+ - crypto: talitos - check data blocksize in ablkcipher.
+ - crypto: talitos - fix ECB algs ivsize
+ - crypto: talitos - Do not modify req->cryptlen on decryption.
+ - crypto: talitos - HMAC SNOOP NO AFEU mode requires SW icv checking.
+ - firmware: ti_sci: Always request response from firmware
+ - drm: panel-orientation-quirks: Add extra quirk table entry for GPD MicroPC
+ - drm/mediatek: mtk_drm_drv.c: Add of_node_put() before goto
+ - mm/z3fold.c: remove z3fold_migration trylock
+ - mm/z3fold.c: fix lock/unlock imbalance in z3fold_page_isolate
+ - Revert "Bluetooth: btusb: driver to enable the usb-wakeup feature"
+ - modules: fix BUG when load module with rodata=n
+ - modules: fix compile error if don't have strict module rwx
+ - modules: always page-align module section allocations
+ - [x86] kvm: nVMX: Remove unnecessary sync_roots from handle_invept
+ - [x86] KVM: SVM: Fix detection of AMD Errata 1096
+ - [x86] platform: pmc_atom: Add CB4063 Beckhoff Automation board to
+ critclk_systems DMI table
+ - [x86] platform: pcengines-apuv2: use KEY_RESTART for front button
+ - rsi: fix a double free bug in rsi_91x_deinit() (CVE-2019-15504)
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.17
+ - USB: usbcore: Fix slab-out-of-bounds bug during device reset
+ - media: tm6000: double free if usb disconnect while streaming
+ - phy: renesas: rcar-gen3-usb2: Disable clearing VBUS in over-current
+ - net: hns3: adjust hns3_uninit_phy()'s location in the hns3_client_uninit()
+ - netfilter: nf_flow_table: set default timeout after successful insertion
+ - HID: wacom: generic: read HID_DG_CONTACTMAX from any feature report
+ - Input: elan_i2c - remove Lenovo Legion Y7000 PnpID
+ - SUNRPC: Handle connection breakages correctly in call_status()
+ - nfs: disable client side deduplication
+ - [powerpc*] mm/radix: Use the right page size for vmemmap mapping
+ - net: hns: fix LED configuration for marvell phy
+ - net: aquantia: fix limit of vlan filters
+ - ip6_gre: fix a dst leak in ip6erspan_tunnel_xmit
+ - net/sched: fix race between deactivation and dequeue for NOLOCK qdisc
+ - net_sched: let qdisc_put() accept NULL pointer
+ - udp: correct reuseport selection with connected sockets
+ - xen-netfront: do not assume sk_buff_head list is empty in error handling
+ - net: dsa: Fix load order between DSA drivers and taggers
+ - KVM: coalesced_mmio: add bounds checking (CVE-2019-14821)
+ - firmware: google: check if size is valid when decoding VPD data
+ - serial: sprd: correct the wrong sequence of arguments
+ - tty/serial: atmel: reschedule TX after RX was started
+ - mwifiex: Fix three heap overflow at parsing element in
+ cfg80211_ap_settings (CVE-2019-14814, CVE-2019-14815, CVE-2019-14816)
+ - nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds
+ - ieee802154: hwsim: Fix error handle path in hwsim_init_module
+ - ieee802154: hwsim: unregister hw while hwsim_subscribe_all_others fails
+ - [armhf] dts: am57xx: Disable voltage switching for SD card
+ - [armhf] OMAP2+: Fix missing SYSC_HAS_RESET_STATUS for dra7 epwmss
+ - bus: ti-sysc: Fix handling of forced idle
+ - bus: ti-sysc: Fix using configured sysc mask value
+ - [armhf] dts: Fix flags for gpio7
+ - [armhf] dts: Fix incorrect dcan register mapping for am3, am4 and dra7
+ - [arm64] dts: meson-g12a: add missing dwc2 phy-names
+ - [s390x] bpf: fix lcgr instruction encoding
+ - [armhf] OMAP2+: Fix omap4 errata warning on other SoCs
+ - [armhf] dts: am335x: Fix UARTs length
+ - [armhf] dts: dra74x: Fix iodelay configuration for mmc3
+ - bus: ti-sysc: Simplify cleanup upon failures in sysc_probe()
+ - [armhf] dts: Fix incomplete dts data for am3 and am4 mmc
+ - [s390x] bpf: use 32-bit index for tail calls
+ - fpga: altera-ps-spi: Fix getting of optional confd gpio
+ - netfilter: ebtables: Fix argument order to ADD_COUNTER
+ - netfilter: nft_flow_offload: missing netlink attribute policy
+ - netfilter: xt_nfacct: Fix alignment mismatch in xt_nfacct_match_info
+ - NFSv4: Fix return values for nfs4_file_open()
+ - NFSv4: Fix return value in nfs_finish_open()
+ - NFS: Fix initialisation of I/O result struct in nfs_pgio_rpcsetup
+ - NFS: On fatal writeback errors, we need to call
+ nfs_inode_remove_request()
+ - xdp: unpin xdp umem pages in error path
+ - selftests/bpf: fix test_cgroup_storage on s390
+ - selftests/bpf: add config fragment BPF_JIT
+ - qed: Add cleanup in qed_slowpath_start()
+ - drm/omap: Fix port lookup for SDI output
+ - drm/virtio: use virtio_max_dma_size
+ - [armel,armhf] 8874/1: mm: only adjust sections of valid mm structures
+ - batman-adv: Only read OGM2 tvlv_len after buffer len check
+ - flow_dissector: Fix potential use-after-free on BPF_PROG_DETACH
+ - bpf: allow narrow loads of some sk_reuseport_md fields with offset > 0
+ - r8152: Set memory to all 0xFFs on failed reg reads
+ - x86/apic: Fix arch_dynirq_lower_bound() bug for DT enabled machines
+ - pNFS/flexfiles: Don't time out requests on hard mounts
+ - NFS: Fix spurious EIO read errors
+ - NFS: Fix writepage(s) error handling to not report errors twice
+ - drm/amdgpu: fix dma_fence_wait without reference
+ - netfilter: xt_physdev: Fix spurious error message in physdev_mt_check
+ - netfilter: nf_conntrack_ftp: Fix debug output
+ - NFSv2: Fix eof handling
+ - NFSv2: Fix write regression
+ - NFS: remove set but not used variable 'mapping'
+ - kallsyms: Don't let kallsyms_lookup_size_offset() fail on retrieving the
+ first symbol
+ - netfilter: conntrack: make sysctls per-namespace again
+ - drm/amd/powerplay: correct Vega20 dpm level related settings
+ - cifs: set domainName when a domain-key is used in multiuser
+ - cifs: Use kzfree() to zero out the password
+ - libceph: don't call crypto_free_sync_skcipher() on a NULL tfm
+ - usb: host: xhci-tegra: Set DMA mask correctly
+ - RISC-V: Fix FIXMAP area corruption on RV32 systems
+ - [armel,armhf] 8901/1: add a criteria for pfn_valid of arm
+ - ibmvnic: Do not process reset during or after device removal
+ - sky2: Disable MSI on yet another ASUS boards (P6Xxxx)
+ - i2c: designware: Synchronize IRQs when unregistering slave client
+ - perf/x86/intel: Restrict period on Nehalem
+ - perf/x86/amd/ibs: Fix sample bias for dispatched micro-ops
+ - i2c: iproc: Stop advertising support of SMBUS quick cmd
+ - i2c: mediatek: disable zero-length transfers for mt8183
+ - amd-xgbe: Fix error path in xgbe_mod_init()
+ - netfilter: nf_flow_table: clear skb tstamp before xmit
+ - [x86] tools/power x86_energy_perf_policy: Fix argument parsing
+ - [x86] tools/power turbostat: fix leak of file descriptor on error return
+ path
+ - [x86] tools/power turbostat: fix file descriptor leaks
+ - [x86] tools/power turbostat: fix buffer overrun
+ - [x86] tools/power turbostat: Fix Haswell Core systems
+ - [x86] tools/power turbostat: Add Ice Lake NNPI support
+ - [x86] tools/power turbostat: Fix CPU%C1 display value
+ - net: aquantia: fix removal of vlan 0
+ - net: aquantia: reapply vlan filters on up
+ - net: aquantia: linkstate irq should be oneshot
+ - net: aquantia: fix out of memory condition on rx side
+ - net: dsa: microchip: add KSZ8563 compatibility string
+ - enetc: Add missing call to 'pci_free_irq_vectors()' in probe and remove
+ functions
+ - net: seeq: Fix the function used to release some memory in an error
+ handling path
+ - dmaengine: ti: dma-crossbar: Fix a memory leak bug
+ - dmaengine: ti: omap-dma: Add cleanup in omap_dma_probe()
+ - [x86] uaccess: Don't leak the AC flags into __get_user() argument
+ evaluation
+ - [x86] hyper-v: Fix overflow bug in fill_gva_list()
+ - [x86] iommu/vt-d: Remove global page flush support
+ - dmaengine: sprd: Fix the DMA link-list configuration
+ - dmaengine: rcar-dmac: Fix DMACHCLR handling if iommu is mapped
+ - keys: Fix missing null pointer check in request_key_auth_describe()
+ - [x86] iommu/amd: Flush old domains in kdump kernel
+ - [x86] iommu/amd: Fix race in increase_address_space()
+ - [arm64] Revert "arm64: Remove unnecessary ISBs from set_{pte,pmd,pud}"
+ - ovl: fix regression caused by overlapping layers detection
+ - floppy: fix usercopy direction
+ - media: technisat-usb2: break out of loop at end of buffer
+ (CVE-2019-15505)
+ - vfs: Fix refcounting of filenames in fs_parser
+
+ [ Salvatore Bonaccorso ]
+ * xfs: fix missing ILOCK unlock when xfs_setattr_nonsize fails due to EDQUOT
+ (CVE-2019-15538)
+
+ [ Romain Perier ]
+ * [rt] Update to 5.2.14-rt7
+
+ [ Ben Hutchings ]
+ * Bump ABI to 3
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Thu, 26 Sep 2019 14:19:06 +0200
+
+linux (5.2.9-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * Partially revert "net: socket: implement 64-bit timestamps"
+ (fixes build/test regressions for glibc, qemu, suricata)
+ * [x86] intel-iommu: Exclude integrated GPUs by default (Closes: #935270):
+ - intel-iommu: Add option to exclude integrated GPU only
+ - intel-iommu: Add Kconfig option to exclude iGPU by default
+ - Enable INTEL_IOMMU_DEFAULT_ON_INTGPU_OFF instead of
+ INTEL_IOMMU_DEFAULT_ON
+
+ [ Thomas W ]
+ * [x86] Add various laptop modules. (Closes: #932086)
+ CONFIG_ACER_WIRELESS
+ CONFIG_LG_LAPTOP
+ CONFIG_SURFACE3_WMI
+ CONFIG_INTEL_WMI_THUNDERBOLT
+ CONFIG_PEAQ_WMI
+ CONFIG_TOSHIBA_WMI
+ CONFIG_SURFACE_3_BUTTON
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 21 Aug 2019 13:48:11 +0100
+
+linux (5.2.9-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.8
+ - scsi: fcoe: Embed fc_rport_priv in fcoe_rport structure
+ - libnvdimm/bus: Prepare the nd_ioctl() path to be re-entrant
+ - libnvdimm/bus: Fix wait_nvdimm_bus_probe_idle() ABBA deadlock
+ - ALSA: usb-audio: Sanity checks for each pipe and EP types
+ - ALSA: usb-audio: Fix gpf in snd_usb_pipe_sanity_check
+ - HID: wacom: fix bit shift for Cintiq Companion 2
+ - HID: Add quirk for HP X1200 PIXART OEM mouse
+ - atm: iphase: Fix Spectre v1 vulnerability (CVE-2017-5753)
+ - bnx2x: Disable multi-cos feature.
+ - drivers/net/ethernet/marvell/mvmdio.c: Fix non OF case (Closes: #908712)
+ - ife: error out when nla attributes are empty
+ - ip6_gre: reload ipv6h in prepare_ip6gre_xmit_ipv6
+ - ip6_tunnel: fix possible use-after-free on xmit
+ - ipip: validate header length in ipip_tunnel_xmit
+ - [armhf,arm64] mvpp2: fix panic on module removal
+ - [armhf,arm64] mvpp2: refactor MTU change code
+ - net: bridge: delete local fdb on device init failure
+ - net: bridge: mcast: don't delete permanent entries when fast leave is
+ enabled
+ - net: bridge: move default pvid init/deinit to NETDEV_REGISTER/UNREGISTER
+ - net: fix ifindex collision during namespace removal
+ - net/mlx5e: always initialize frag->last_in_page
+ - net/mlx5: Use reversed order when unregister devices
+ - net: phy: fixed_phy: print gpio error only if gpio node is present
+ - net: phy: mscc: initialize stats array
+ - net: sched: Fix a possible null-pointer dereference in dequeue_func()
+ - net sched: update vlan action for batched events operations
+ - net: sched: use temporary variable for actions indexes
+ - net/smc: do not schedule tx_work in SMC_CLOSED state
+ - [armhf,arm64] net: stmmac: Use netif_tx_napi_add() for TX polling
+ function
+ - tipc: compat: allow tipc commands without arguments
+ - tipc: fix unitilized skb list crash
+ - tun: mark small packets as owned by the tap sock
+ - net/mlx5: Fix modify_cq_in alignment
+ - net/mlx5e: Prevent encap flow counter update async to user query
+ - r8169: don't use MSI before RTL8168d
+ - net: fix bpf_xdp_adjust_head regression for generic-XDP
+ - [x86] hv_sock: Fix hang when a connection is closed
+ - net: phy: fix race in genphy_update_link
+ - net/smc: avoid fallback in case of non-blocking connect
+ - rocker: fix memory leaks of fib_work on two error return paths
+ - net/mlx5: Add missing RDMA_RX capabilities
+ - net/mlx5e: Fix matching of speed to PRM link modes
+ - compat_ioctl: pppoe: fix PPPOEIOCSFWD handling
+ - [x86] drm/i915/vbt: Fix VBT parsing for the PSR section
+ - Revert "mac80211: set NETIF_F_LLTX when using intermediate tx queues"
+ - [armhf,arm64] spi: bcm2835: Fix 3-wire mode if DMA is enabled
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.9
+ - Revert "PCI: Add missing link delays required by the PCIe spec"
+ - [arm64] iio: cros_ec_accel_legacy: Fix incorrect channel setting
+ - [x86] iio: imu: mpu6050: add missing available scan masks
+ - [x86] crypto: ccp - Fix oops by properly managing allocated structures
+ - [x86] crypto: ccp - Add support for valid authsize values less than 16
+ - [x86] crypto: ccp - Ignore tag length when decrypting GCM ciphertext
+ - driver core: platform: return -ENXIO for missing GpioInt
+ - usb: usbfs: fix double-free of usb memory upon submiturb error
+ - Revert "USB: rio500: simplify locking"
+ - usb: iowarrior: fix deadlock on disconnect
+ - sound: fix a memory leak bug
+ - [arm64,mips/octeon] mmc: cavium: Set the correct dma max segment size for
+ mmc_host
+ - [arm64,mips/octeon] mmc: cavium: Add the missing dma unmap when the dma
+ has finished.
+ - loop: set PF_MEMALLOC_NOIO for the worker thread
+ - bdev: Fixup error handling in blkdev_get() (Closes: #934378)
+ - Input: usbtouchscreen - initialize PM mutex before using it
+ - Input: elantech - enable SMBus on new (2018+) systems
+ - [x86] Input: synaptics - enable RMI mode for HP Spectre X360
+ - [x86] mm: Check for pfn instead of page in vmalloc_sync_one()
+ - [x86] mm: Sync also unmappings in vmalloc_sync_all()
+ - mm/vmalloc: Sync unmappings in __purge_vmap_area_lazy()
+ - [s390x] perf annotate: Fix s390 gap between kernel end and module start
+ - perf db-export: Fix thread__exec_comm()
+ - [s390x] perf record: Fix module size on s390
+ - [x86] purgatory: Do not use __builtin_memcpy and __builtin_memset
+ - [x86] purgatory: Use CFLAGS_REMOVE rather than reset KBUILD_CFLAGS
+ - genirq/affinity: Create affinity mask for single vector
+ - gfs2: gfs2_walk_metadata fix
+ - usb: yurex: Fix use-after-free in yurex_delete
+ - usb: typec: ucsi: ccg: Fix uninitilized symbol error
+ - usb: typec: tcpm: free log buf memory when remove debug file
+ - usb: typec: tcpm: remove tcpm dir if no children
+ - usb: typec: tcpm: Add NULL check before dereferencing config
+ - usb: typec: tcpm: Ignore unsupported/unknown alternate mode requests
+ - [armhf] can: flexcan: fix stop mode acknowledgment
+ - [armhf] can: flexcan: fix an use-after-free in flexcan_setup_stop_mode()
+ - can: peak_usb: fix potential double kfree_skb()
+ - [powerpc*] fix off by one in max_zone_pfn initialization for ZONE_DMA
+ - netfilter: nfnetlink: avoid deadlock due to synchronous request_module
+ - netfilter: Fix rpfilter dropping vrf packets by mistake
+ - netfilter: nf_tables: fix module autoload for redir
+ - netfilter: conntrack: always store window size un-scaled
+ - netfilter: nft_hash: fix symhash with modulus one
+ - rq-qos: don't reset has_sleepers on spurious wakeups
+ - rq-qos: set ourself TASK_UNINTERRUPTIBLE after we schedule
+ - rq-qos: use a mb for got_token
+ - netfilter: nf_tables: Support auto-loading for inet nat
+ - drm/amd/display: No audio endpoint for Dell MST display
+ - drm/amd/display: Clock does not lower in Updateplanes
+ - drm/amd/display: Wait for backlight programming completion in set
+ backlight level
+ - drm/amd/display: fix DMCU hang when going into Modern Standby
+ - drm/amd/display: use encoder's engine id to find matched free audio
+ device
+ - drm/amd/display: put back front end initialization sequence
+ - drm/amd/display: allocate 4 ddc engines for RV2
+ - drm/amd/display: Fix dc_create failure handling and 666 color depths
+ - drm/amd/display: Only enable audio if speaker allocation exists
+ - drm/amd/display: Increase size of audios array
+ - nl80211: fix NL80211_HE_MAX_CAPABILITY_LEN
+ - mac80211: fix possible memory leak in ieee80211_assign_beacon
+ - mac80211: don't warn about CW params when not using them
+ - allocate_flower_entry: should check for null deref
+ - hwmon: (nct6775) Fix register address and added missed tolerance for
+ nct6106
+ - [armhf] dts: imx6ul: fix clock frequency property name of I2C buses
+ - [powerpc*] papr_scm: Force a scm-unbind if initial scm-bind fails
+ - [arm64] Force SSBS on context switch
+ - [arm64] entry: SP Alignment Fault doesn't write to FAR_EL1
+ - [x86] iommu/vt-d: Check if domain->pgd was allocated
+ - [arm64] drm/msm/dpu: Correct dpu encoder spinlock initialization
+ - [ppc64] cpufreq/pasemi: fix use-after-free in pas_cpufreq_cpu_init()
+ - [s390x] qdio: add sanity checks to the fast-requeue path
+ - ALSA: compress: Fix regression on compressed capture streams
+ - ALSA: compress: Prevent bypasses of set_params
+ - ALSA: compress: Don't allow paritial drain operations on capture streams
+ - ALSA: compress: Be more restrictive about when a drain is allowed
+ - perf script: Fix off by one in brstackinsn IPC computation
+ - perf tools: Fix proper buffer size for feature processing
+ - perf stat: Fix segfault for event group in repeat mode
+ - perf session: Fix loading of compressed data split across adjacent
+ records
+ - perf probe: Avoid calling freeing routine multiple times for same pointer
+ - drbd: dynamically allocate shash descriptor
+ - ACPI/IORT: Fix off-by-one check in iort_dev_find_its_id()
+ - nvme: ignore subnqn for ADATA SX6000LNP
+ - nvme: fix memory leak caused by incorrect subsystem free
+ - scsi: megaraid_sas: fix panic on loading firmware crashdump
+ - scsi: ibmvfc: fix WARN_ON during event pool release
+ - scsi: scsi_dh_alua: always use a 2 second delay before retrying RTPG
+ - test_firmware: fix a memory leak bug
+ - tty/ldsem, locking/rwsem: Add missing ACQUIRE to read_failed sleep loop
+ - [x86] perf/intel: Fix SLOTS PEBS event constraint
+ - [x86] perf/intel: Fix invalid Bit 13 for Icelake MSR_OFFCORE_RSP_x
+ register
+ - [x86] perf: Apply more accurate check on hypervisor platform
+ - perf/core: Fix creating kernel counters for PMUs that override event->cpu
+ - [s390x] dma: provide proper ARCH_ZONE_DMA_BITS value
+ - HID: sony: Fix race condition between rumble and device remove.
+ - ALSA: usb-audio: fix a memory leak bug
+ - [x86] KVM/nSVM: properly map nested VMCB
+ - can: peak_usb: pcan_usb_pro: Fix info-leaks to USB devices
+ - can: peak_usb: pcan_usb_fd: Fix info-leaks to USB devices
+ - hwmon: (nct7802) Fix wrong detection of in4 presence
+ - hwmon: (lm75) Fixup tmp75b clr_mask
+ - [x86] drm/i915: Fix wrong escape clock divisor init for GLK
+ - ALSA: firewire: fix a memory leak bug
+ - ALSA: hiface: fix multiple memory leak bugs
+ - ALSA: hda - Don't override global PCM hw info flag
+ - [x86] ALSA: hda - Workaround for crackled sound on AMD controller
+ (1022:1457)
+ - mac80211: don't WARN on short WMM parameters from AP
+ - dax: dax_layout_busy_page() should not unmap cow pages
+ - SMB3: Fix deadlock in validate negotiate hits reconnect
+ - smb3: send CAP_DFS capability during session setup
+ - NFSv4: Fix delegation state recovery
+ - NFSv4: Check the return value of update_open_stateid()
+ - NFSv4: Fix an Oops in nfs4_do_setattr
+ - [x86] KVM: Fix leak vCPU's VMCS value into other pCPU
+ - [armhf,arm64] KVM: Sync ICH_VMCR_EL2 back when about to block
+ - mwifiex: fix 802.11n/WPA detection
+ - iwlwifi: don't unmap as page memory that was mapped as single
+ - iwlwifi: mvm: fix an out-of-bound access
+ - iwlwifi: mvm: fix a use-after-free bug in iwl_mvm_tx_tso_segment
+ - iwlwifi: mvm: don't send GEO_TX_POWER_LIMIT on version < 41
+ - iwlwifi: mvm: fix version check for GEO_TX_POWER_LIMIT support
+
+ [ Salvatore Bonaccorso ]
+ * Enable Realtek 802.11ac wireless chips support (Closes: #933963)
+
+ [ Ben Hutchings ]
+ * [armel] fb-modules: Remove xgifb, which was removed upstream (fixes FTBFS)
+ * tracefs: Fix potential null dereference in default_file_open()
+ (Closes: #934304)
+ * [arm64] hwrandom: Re-enable HW_RANDOM_OMAP as module (Closes: #931707)
+ * ptp: Change CAVIUM_PTP from built-in to modular (Closes: #934848)
+ * bug script: Check whether /e/n/interfaces exists (Closes: #934824)
+ * bug script: Include network configuration from /e/n/interfaces.d
+ * bug script: Check for unreadable /e/n/interfaces files
+ * [x86] iommu: Enable INTEL_IOMMU_DEFAULT_ON (Closes: #934309)
+ * HID: Enable HID_BIGBEN_FF, HID_MACALLY, HID_GFRM, HID_GT683R,
+ HID_VIEWSONIC, HID_MALTRON, HID_U2FZERO as modules (Closes: #934091)
+ * usbip: network: Fix unaligned member access (Closes: #925766)
+ * libbpf: Fix cross-build
+ * [rt] Update to 5.2.9-rt3:
+ - i2c: exynos5: Remove IRQF_ONESHOT
+ - i2c: hix5hd2: Remove IRQF_ONESHOT
+ - sched/deadline: Ensure inactive_timer runs in hardirq context
+ - thermal/x86_pkg_temp: make pkg_temp_lock a raw spinlock
+ - dma-buf: Use seqlock_t instread disabling preemption
+ - KVM: arm/arm64: Let the timer expire in hardirq context on RT
+ - x86: preempt: Check preemption level before looking at lazy-preempt
+ - arm64: preempt: Fixup lazy preempt
+ - arm64: preempt: Check preemption level before looking at lazy-preempt
+
+ [ Alper Nebi Yasak ]
+ * [arm64] udeb: Add pl330 to kernel-image
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 18 Aug 2019 22:54:21 +0100
+
+linux (5.2.7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.7
+ - [armhf] dts: rockchip: Make rk3288-veyron-minnie run at hs200
+ - [armhf] dts: rockchip: Make rk3288-veyron-mickey's emmc work again
+ - [arm64] clk: meson: mpll: properly handle spread spectrum
+ - [armhf] dts: rockchip: Mark that the rk3288 timer might stop in suspend
+ - ftrace: Enable trampoline when rec count returns back to one
+ - [arm64] dts: qcom: qcs404-evb: fix l3 min voltage
+ - [arm64] dts: marvell: mcbin: enlarge PCI memory window
+ - [armhf,arm64] dmaengine: tegra-apb: Error out if DMA_PREP_INTERRUPT flag
+ is unset
+ - [arm64] dts: rockchip: fix isp iommu clocks and power domain
+ - kernel/module.c: Only return -EEXIST for modules that have finished
+ loading
+ - PCI: OF: Initialize dev->fwnode appropriately
+ - [armhf,arm64] firmware/psci: psci_checker: Park kthreads before stopping
+ them
+ - [arm64] qcom: qcs404: Add reset-cells to GCC node
+ - swiotlb: fix phys_addr_t overflow warning
+ - [arm64] clk: tegra210: fix PLLU and PLLU_OUT1
+ - fs/adfs: super: fix use-after-free bug
+ - [arm64] dts: rockchip: Fix USB3 Type-C on rk3399-sapphire
+ - btrfs: tree-checker: Check if the file extent end overflows
+ - btrfs: fix minimum number of chunk errors for DUP
+ - btrfs: Flush before reflinking any extent to prevent NOCOW write falling
+ back to COW without data reservation
+ - [arm64] remoteproc: copy parent dma_pfn_offset for vdev
+ - btrfs: qgroup: Don't hold qgroup_ioctl_lock in btrfs_qgroup_inherit()
+ - cifs: Fix a race condition with cifs_echo_request
+ - ceph: fix improper use of smp_mb__before_atomic()
+ - ceph: fix dir_lease_is_valid()
+ - ceph: return -ERANGE if virtual xattr value didn't fit in buffer
+ - virtio-mmio: add error check for platform_get_irq
+ - drm/amd/display: Expose audio inst from DC to DM
+ - cifs: fix crash in cifs_dfs_do_automount
+ - perf version: Fix segfault due to missing OPT_END()
+ - [x86] kvm: avoid constant-conversion warning
+ - ACPI: fix false-positive -Wuninitialized warning
+ - [x86] KVM: nVMX: Ignore segment base for VMX memory operand when segment
+ not FS or GS
+ - bpf: fix BTF verifier size resolution logic
+ - be2net: Signal that the device cannot transmit during reconfiguration
+ - mm/z3fold: don't try to use buddy slots after free
+ - mm/memcontrol.c: keep local VM counters in sync with the hierarchical ones
+ - mm/z3fold.c: reinitialize zhdr structs after migration
+ - [x86] apic: Silence -Wtype-limits compiler warnings
+ - [arm*] mm/cma.c: fail if fixed declaration can't be honored
+ - mm/ioremap: check virtual address alignment while creating huge mappings
+ - coda: add error handling for fget
+ - uapi linux/coda_psdev.h: move upc_req definition from uapi to kernel side
+ headers
+ - ipc/mqueue.c: only perform resource calculation if user valid
+ - device-dax: fix memory and resource leak if hotplug fails
+ - mm/hotplug: make remove_memory() interface usable
+ - stacktrace: Force USER_DS for stack_trace_save_user()
+ - [x86] crypto: ccp - Fix SEV_VERSION_GREATER_OR_EQUAL
+ - xen/pv: Fix a boot up hang revealed by int3 self test
+ - [x86] kvm: Don't call kvm_spurious_fault() from .fixup
+ - [x86] paravirt: Fix callee-saved function ELF sizes
+ - [x86] boot: Remove multiple copy of static function sanitize_boot_params()
+ - bpf: Disable GCC -fgcse optimization for ___bpf_prog_run()
+ - drm/nouveau: fix memory leak in nouveau_conn_reset()
+ - drm/nouveau/dmem: missing mutex_lock in error path
+ - kconfig: Clear "written" flag to avoid data loss
+ - tpm: Fix null pointer dereference on chip register error path
+ - Btrfs: fix incremental send failure after deduplication
+ - Btrfs: fix race leading to fs corruption after transaction abort
+ - dax: Fix missed wakeup in put_unlocked_entry()
+ - fgraph: Remove redundant ftrace_graph_notrace_addr() test
+ - [armhf,arm64] mmc: dw_mmc: Fix occasional hang after tuning on eMMC
+ - [armhf] mmc: meson-mx-sdio: Fix misuse of GENMASK macro
+ - mmc: mmc_spi: Enable stable writes
+ - gpiolib: Preserve desc->flags when setting state
+ - gpio: don't WARN() on NULL descs if gpiolib is disabled
+ - gpiolib: fix incorrect IRQ requesting of an active-low lineevent
+ - IB/hfi1: Fix Spectre v1 vulnerability
+ - drm/nouveau: Only release VCPI slots on mode changes
+ - mtd: rawnand: micron: handle on-die "ECC-off" devices correctly
+ - eeprom: at24: make spd world-readable again
+ - [arm*] i2c: iproc: Fix i2c master read more than 63 bytes
+ - selinux: fix memory leak in policydb_init()
+ - [x86] ALSA: hda: Fix 1-minute detection delay when i915 module is not
+ available (see #931507)
+ - mm: vmscan: check if mem cgroup is disabled or not before calling memcg
+ slab shrinker
+ - mm: migrate: fix reference check race between __find_get_block() and
+ migration
+ - mm: compaction: avoid 100% CPU usage during compaction when a task is
+ killed
+ - mm/migrate.c: initialize pud_entry in migrate_vma()
+ - loop: Fix mount(2) failure due to race with LOOP_SET_FD
+ - [s390x] dasd: fix endless loop after read unit address configuration
+ - cgroup: kselftest: relax fs_spec checks
+ - [hppa] Add archclean Makefile target
+ - [hppa] Strip debug info from kernel before creating compressed vmlinuz
+ - [hppa] Fix build of compressed kernel even with debug enabled
+ - drivers/perf: arm_pmu: Fix failure path in PM notifier
+ - [arm64] compat: Allow single-byte watchpoints on all addresses
+ - [arm64] cpufeature: Fix feature comparison for CTR_EL0.{CWG,ERG}
+ - io_uring: fix KASAN use after free in io_sq_wq_submit_work
+ - scsi: mpt3sas: Use 63-bit DMA addressing on SAS35 HBA
+ - nbd: replace kill_bdev() with __invalidate_device() again
+ - xen/swiotlb: fix condition for calling xen_destroy_contiguous_region()
+ - xen/gntdev.c: Replace vm_map_pages() with vm_map_pages_zero()
+ - RDMA/devices: Do not deadlock during client removal
+ - IB/mlx5: Fix unreg_umr to ignore the mkey state
+ - IB/mlx5: Use direct mkey destroy command upon UMR unreg failure
+ - IB/mlx5: Move MRs to a kernel PD when freeing them to the MR cache
+ - IB/mlx5: Fix clean_mr() to work in the expected order
+ - IB/mlx5: Fix RSS Toeplitz setup to be aligned with the HW specification
+ - IB/hfi1: Check for error on call to alloc_rsm_map_table
+ - IB/hfi1: Drop all TID RDMA READ RESP packets after r_next_psn
+ - IB/hfi1: Field not zero-ed when allocating TID flow memory
+ - [x86] drm/i915/perf: fix ICL perf register offsets
+ - [x86] drm/i915/gvt: fix incorrect cache entry for guest page mapping
+ - [x86] cpufeatures: Carve out CQM features retrieval
+ - [x86] cpufeatures: Combine word 11 and 12 into a new scattered features
+ word
+ - [x86] speculation: Prepare entry code for Spectre v1 swapgs mitigations
+ - [x86] speculation: Enable Spectre v1 swapgs mitigations (CVE-2019-1125)
+ - [amd64] entry: Use JMP instead of JMPQ
+ - [x86] speculation/swapgs: Exclude ATOMs from speculation through SWAPGS
+ - Documentation: Add swapgs description to the Spectre v1 documentation
+
+ [ Ben Hutchings ]
+ * [armhf] udeb: Remove davinci_cpdma from nic-modules (fixes FTBFS)
+ * Bump ABI to 2
+ * [armel/marvell] Increase maximum image size (fixes FTBFS):
+ - This removes support for QNAP TS-109, TS-119, TS-209, TS-219, TS-409,
+ and HP Media Vault mv2120
+ - This may be reverted if we can disable or modularise some features
+
+ [ Julien Cristau ]
+ * Fix libcpupower-dev's Depends field to account for SONAME bump.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 07 Aug 2019 14:50:10 +0100
+
+linux (5.2.6-1) unstable; urgency=medium
+
+ * New upstream release:
+ https://kernelnewbies.org/Linux_5.1
+ https://kernelnewbies.org/Linux_5.2
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.1
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.2
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.3
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.4
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.5
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.2.6
+
+ [ Bastian Germann ]
+ * [armhf] Enable C_CAN as a module. (Closes: #929968)
+
+ [ Ben Hutchings ]
+ * Drop "x86/boot: Add ACPI RSDP address to setup_header", which should
+ not have been applied to 4.20 or later
+ * Drop redundant part of "Install perf scripts non-executable"
+ * Drop "kbuild: Use -nostdinc in compile tests", which is no longer needed
+ * debian/rules.d/scripts/kconfig: Update for upstream file renaming
+ * debian/rules.d/scripts/mod: Add uuid_t and UUID_STRING_LEN definitions
+ * liblockdep: Disable until it can be built again
+ * libcpupower: Bump soversion since 2 exported functions have been removed
+ * libbpf: Stop overriding upstream soname; rename shlib package to libbpf0
+ * vfs: Enable FS_ENCRYPTION as built-in; disable on armel/marvell
+ * net: Enable NET_DEVLINK as built-in; disable on armel/marvell
+ * aufs: Update support patchset to aufs5.2 20190805
+ * lockdown: Update for 5.2:
+ - Update "acpi: Ignore acpi_rsdp kernel param when the kernel ..."
+ - Add "tracefs: Restrict tracefs when the kernel is locked down"
+ - Add "efi: Restrict efivar_ssdt_load when the kernel is locked down"
+ - Drop "MODSIGN: Import certificates from UEFI Secure Boot"
+ * [rt] Rebase onto 5.2.6, and re-enable
+ * [armhf,arm64] gpu: Enable DRM_LIMA, DRM_PANFROST as modules
+ * sched: Enable PSI (Closes: #931247)
+ * [armhf,arm64] power: Enable ENERGY_MODEL
+ * [armhf,arm64] cpufreq: Enable CPU_FREQ_DEFAULT_GOV_SCHEDUTIL (instead of
+ CPU_FREQ_DEFAULT_GOV_PERFORMANCE)
+ * hamradio: Disable auto-loading as mitigation against local exploits
+ * hamradio: Enable most options in top-level config:
+ - [arm64,ia64,mips*,riscv64,s390x,sh4,sparc64] Enable AX25, NETROM, ROSE,
+ and all possible drivers (Closes: #920651)
+ - [alpha,amd64,armel] ax25: Enable AX25_DAMA_SLAVE
+ - [armhf] Enable BPQETHER, BAYCOM_SER_FDX, BAYCOM_SER_HDX, BAYCOM_PAR,
+ BAYCOM_EPP, YAM as modules
+ * [armel/rpi,armhf] media: Enable VIDEO_BCM2835 as module
+ * usb/typec: Enable TYPEC_DP_ALTMODE, TYPEC_NVIDIA_ALTMODE as modules
+ (Closes: #931752)
+ * [amd64/cloud-amd64] hwrandom: Enable HW_RANDOM_VIRTIO (Closes: #914511)
+ * [ppc64*] crypto: Enable CRYPTO_DEV_NX, and CRYPTO_DEV_NX_ENCRYPT,
+ CRYPTO_DEV_NX_COMPRESS, CRYPTO_DEV_NX_COMPRESS_PSERIES,
+ CRYPTO_DEV_NX_COMPRESS_POWERNV as modules (Closes: #931374)
+ * [ppc64*] Disable PPC_TRANSACTIONAL_MEM (Closes: #866122)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable modules to support audio on pinebook: SND_SUN4I_I2S,
+ SND_SUN8I_CODEC, SND_SUN50I_CODEC_ANALOG, SND_SIMPLE_CARD,
+ SND_SOC_SIMPLE_AMPLIFIER. (Closes: #921019)
+
+ [ Romain Perier ]
+ * Refreshed patches:
+ - debian/revert-objtool-fix-config_stack_validation-y-warning.patch
+ - debian/dfsg/video-remove-nvidiafb-and-rivafb.patch
+ - debian/gitignore.patch
+ - debian/mips-disable-werror.patch
+ - bugfix/all/firmware-remove-redundant-log-messages-from-drivers.patch
+ - bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch
+ - bugfix/powerpc/powerpc-lib-makefile-don-t-pull-in-quad.o-for-32-bit.patch
+ - bugfix/all/
+ radeon-amdgpu-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
+ - bugfix/all/disable-some-marvell-phys.patch
+ - debian/overlayfs-permit-mounts-in-userns.patch
+ - bugfix/all/tools-perf-remove-shebangs.patch
+ - debian/ntfs-mark-it-as-broken.patch
+ - features/all/db-mok-keyring/
+ 0003-MODSIGN-checking-the-blacklisted-hash-before-loading-a-kernel-module.patch
+ - features/all/db-mok-keyring/
+ 0004-MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch
+ - debian/android-enable-building-ashmem-and-binder-as-modules.patch
+ - features/all/aufs5/aufs5-mmap.patch
+ - features/all/aufs5/aufs5-standalone.patch
+ - features/all/lockdown/
+ 0029-efi-Lock-down-the-kernel-if-booted-in-secure-boot-mo.patch
+ * Enable coreboot memconsole (Closes: #872069)
+ * [rt] Update to 5.2-rt1
+
+ [ Karsten Merker ]
+ * [riscv64] Change the kernel image format from ELF to flat Image.
+ (Closes: #928451)
+ * [riscv64] Update config and image format (Closes: #933603):
+ - Enable SiFive UART and UART console support
+ - Enable clock drivers for the SiFive FU540
+ - Backport kernel image header support from kernel 5.3
+
+ [ Uwe Kleine-König ]
+ * [armhf] Add support for all i.MX6 variants.
+ * enable XFRM_STATISTICS (Closes: #929938)
+ * [arm64] Add support for Raspberry Pi 3 camera host interface (Closes:
+ #933228)
+ * Enable CRYPTO_ZSTD for ZRAM with ZSTD compression (Closes: #932722)
+
+ [ Lubomir Rintel ]
+ * [armhf] Enable config items for OLPC XO-1.75 (Closes: #927791)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 05 Aug 2019 02:27:14 +0100
+
+linux (5.0.2-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.0.2
+
+ [ Vagrant Cascadian ]
+ * [arm64,armhf] Enable PHY_ROCKCHIP_INNO_HDMI as modules.
+
+ [ Ben Hutchings ]
+ * [amd64] kexec: Enable KEXEC_SIG, replacing KEXEC_VERIFY_SIG
+ * [armel] MTD: Enable MTD_PHYSMAP as module and set MTD_PHYSMAP_OF=y
+ - udeb: Include physmap instead of physmap_of in mtd-modules (fixes FTBFS)
+ * [armhf] sound/soc/ti: Enable SND_SOC_DAVINCI_MCASP, SND_SOC_NOKIA_RX51,
+ SND_SOC_OMAP3_PANDORA, SND_SOC_OMAP3_TWL4030, SND_SOC_OMAP_ABE_TWL6040
+ as modules; replacing SND_DAVINCI_SOC_MCASP, SND_OMAP_SOC_RX51,
+ SND_OMAP_SOC_OMAP3_PANDORA, SND_OMAP_SOC_OMAP_TWL4030,
+ SND_OMAP_SOC_OMAP_ABE_TWL6040 respectively
+ * udeb: Add thermal_sys to kernel-image (fixes FTBFS on mips*, ppc64*,
+ riscv64)
+ * [powerpc*] mm: Only define MAX_PHYSMEM_BITS in SPARSEMEM configurations
+ (fixes FTBFS on powerpc, powerpcspe)
+ * debian/source/lintian-overrides: Override license-problem-gfdl-invariants
+ in more files
+ * debian/rules: Remove debian/*.substvars in clean target
+ * debian/source/lintian-overrides: Override
+ orig-tarball-missing-upstream-signature
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 18 Mar 2019 04:01:01 +0000
+
+linux (5.0.1-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_5.0
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v5.x/ChangeLog-5.0.1
+
+ [ YunQiang Su ]
+ * [mipsel, mips64el] Enable DRM_AST and FB_SM750 for loongson-3
+ install ast and sm750fb to loongson-3's fb-modules
+ * [mips r6] Disable JUMP_LABEL for now: it will cause Reserved Instruction.
+ Enable SERIAL_OF_PLATFORM, if not, userland shows nothing.
+ Enable CPU_HAS_MSA, HIGHMEM, CRYPTO_CRC32_MIPS, and NR_CPUS to 16.
+ Support some boston drivers: IMG_ASCII_LCD, I2C_EG20T, PCH_PHUB, MMC,
+ PCIE_XILINX, RTC_DRV_M41T80, SPI_TOPCLIFF_PCH.
+
+ [ Hideki Yamane ]
+ * [x86] Enable Touchpad support on Gemini Lake (Closes: #917388)
+
+ [ Helge Deller ]
+ * [hppa] Build only 32- and 64-bit SMP-kernel: Alternative
+ live-patching code will patch kernel for UP at boot if necessary.
+
+ [ Romain Perier ]
+ * Refreshed debian/export-symbols-needed-by-android-drivers.patch to export
+ __close_fd_get_file() and task_work_add(), both required by binder.
+ * Refreshed debian/revert-objtool-fix-config_stack_validation-y-warning.patch,
+ so this can be applied against 4.20.4
+ * Refreshed patch for lockdown
+ 0028-efi-Add-an-EFI_SECURE_BOOT-flag-to-indicate-secure-b.patch, so this
+ can be applied against >= 4.20.13
+
+ [ Marcin Juszkiewicz ]
+ * udeb: Add virtio-gpu into d-i to get graphical output in VM instances.
+
+ [ Ben Hutchings ]
+ * SCSI: Enable SCSI_MYRB, SCSI_MYRS as modules, replacing BLK_DEV_DAC960
+ * [arm64] remoteproc: Enable QCOM_Q6V5_MSS, renamed version of
+ QCOM_Q6V5_PIL
+ * [x86] drivers/gpu/drm/amd: Re-enable HSA_AMD (Closes: #920454)
+ * genpatch-aufs: Update to use aufs5-standalone
+ * aufs: Update support patchset to aufs5.0 20190311
+ * lockdown: Update patchset to 2019-02-18 version
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 12 Mar 2019 23:15:21 +0000
+
+linux (4.20-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.20
+
+ [ Ben Hutchings ]
+ * aufs: Update support patchset to aufs4.x-rcN 20181217
+ * [rt] Disable until it is updated for 4.20 or later
+ * [x86] udeb: Move rfkill to new rfkill-modules package to avoid duplication
+ * debian/source/lintian-overrides: Update overrides for GFDL notices
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 24 Dec 2018 04:26:47 +0000
+
+linux (4.19.37-6) unstable; urgency=high
+
+ [ John Paul Adrian Glaubitz ]
+ * [sh4]: Check for kprobe trap number before trying to handle a kprobe trap
+
+ [ Salvatore Bonaccorso ]
+ * tcp: refine memory limit test in tcp_fragment() (Closes: #930904)
+ * ptrace: Fix ->ptracer_cred handling for PTRACE_TRACEME (CVE-2019-13272)
+
+ [ Steve McIntyre ]
+ * [arm64] Improve support for the Huawei TaiShan server platform
+ (Closes: #930554):
+ - Enable the HNS/ROCE Infiniband driver
+ - Backport fixes from 4.20 and 4.21 for HNS3 networking, hisi_sas SAS
+ and HNS/ROCE Infiniband
+ - Add module:drivers/scsi/hisi_sas/* to the ABI ignore list
+
+ [ Cyril Brulebois ]
+ * [arm] Backport DTB support for Rasperry Pi Compute Module 3.
+ * [arm64] Backport DTB support for Rasperry Pi Compute Module 3.
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 19 Jul 2019 00:23:17 +0200
+
diff --git a/debian/changelog.old b/debian/changelog.old
new file mode 100644
index 000000000..7957b8ef1
--- /dev/null
+++ b/debian/changelog.old
@@ -0,0 +1,39860 @@
+linux (4.19.37-5) unstable; urgency=medium
+
+ [ Romain Perier ]
+ * [sparc64] Fix device naming inconsistency between sunhv_console and
+ sunhv_reg (Closes: #926539)
+
+ [ Ben Hutchings ]
+ * tcp: Avoid ABI change for DoS fixes (Closes: #930743)
+ * Add ABI reference for 4.19.0-5
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 19 Jun 2019 23:16:58 +0100
+
+linux (4.19.37-4) unstable; urgency=high
+
+ [ Ben Hutchings ]
+ * libbpf: Fix various build bugs:
+ - Drop unnecessary changes from "libbpf: add SONAME to shared object"
+ - libbpf: Use only 2 components in soversion, matching package name
+ (Closes: #929187)
+ - libbpf: Build out-of-tree
+ * README.source: Document the various makefiles and use of out-of-tree builds
+ * [x86] lockdown,sysrq: Enable ALLOW_LOCKDOWN_LIFT_BY_SYSRQ (Closes: #929583)
+ * mwifiex: Fix possible buffer overflows at parsing bss descriptor
+ (CVE-2019-3846)
+ * mwifiex: Abort at too short BSS descriptor element
+ * mwifiex: Don't abort on small, spec-compliant vendor IEs
+ * mm/mincore.c: make mincore() more conservative (CVE-2019-5489)
+ * mwifiex: Fix heap overflow in mwifiex_uap_parse_tail_ies()
+ (CVE-2019-10126)
+ * tcp: limit payload size of sacked skbs (CVE-2019-11477)
+ * tcp: tcp_fragment() should apply sane memory limits (CVE-2019-11478)
+ * tcp: add tcp_min_snd_mss sysctl (CVE-2019-11479)
+ * tcp: enforce tcp_min_snd_mss in tcp_mtu_probing()
+
+ [ Romain Perier ]
+ * [rt] Update to 4.19.37-rt20:
+ - powerpc/pseries/iommu: Use a locallock instead local_irq_save()
+ - powerpc: reshuffle TIF bits
+ - tty/sysrq: Convert show_lock to raw_spinlock_t
+ - drm/i915: Don't disable interrupts independently of the lock
+ - sched/completion: Fix a lockup in wait_for_completion()
+
+ [ Salvatore Bonaccorso ]
+ * brcmfmac: assure SSID length from firmware is limited (CVE-2019-9500)
+ * brcmfmac: add subtype check for event handling in data path
+ (CVE-2019-9503)
+ * ext4: zero out the unused memory region in the extent tree block
+ (CVE-2019-11833)
+ * Bluetooth: hidp: fix buffer overflow (CVE-2019-11884)
+
+ [ Aurelien Jarno ]
+ * [mips] Correctly bounds check virt_addr_valid (Closes: #929366)
+
+ [ John Paul Adrian Glaubitz ]
+ * [sparc64] udeb: Disable suffix for kernel-image
+
+ [ Alper Nebi Yasak ]
+ * udeb: input-modules: Include all keyboard driver modules
+ * [arm64] udeb: kernel-image: Include cros_ec_spi and SPI drivers
+ * [arm64] udeb: kernel-image: Include phy-rockchip-pcie
+ * [arm64] udeb: usb-modules: Include phy-rockchip-typec, extcon-usbc-cros-ec
+ * [arm64] udeb: mmc-modules: Include phy-rockchip-emmc
+ * [arm64] udeb: fb-modules: Include rockchipdrm, panel-simple, pwm_bl and
+ pwm-cros-ec
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 17 Jun 2019 20:00:22 +0100
+
+linux (4.19.37-3) unstable; urgency=medium
+
+ * [powerpc*] 64s: Include cpu header (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 15 May 2019 23:07:16 +0100
+
+linux (4.19.37-2) unstable; urgency=high
+
+ * debian/bin: Fix Python static checker regressions (Closes: #928618)
+ * Clean up speculation mitigations:
+ - Documentation/l1tf: Fix small spelling typo
+ - x86/cpu: Sanitize FAM6_ATOM naming
+ - kvm: x86: Report STIBP on GET_SUPPORTED_CPUID
+ - x86/msr-index: Cleanup bit defines
+ - x86/speculation: Consolidate CPU whitelists
+ - Documentation: Move L1TF to separate directory
+ - cpu/speculation: Add 'mitigations=' cmdline option
+ - x86/speculation: Support 'mitigations=' cmdline option
+ - powerpc/speculation: Support 'mitigations=' cmdline option
+ - s390/speculation: Support 'mitigations=' cmdline option
+ - x86/speculation/mds: Add 'mitigations=' support for MDS
+ * [x86] Mitigate Microarchitectural Data Sampling (MDS) vulnerabilities
+ (CVE-2018-12126, CVE-2018-12127, CVE-2018-12130, CVE-2019-11091):
+ - x86/speculation/mds: Add basic bug infrastructure for MDS
+ - x86/speculation/mds: Add BUG_MSBDS_ONLY
+ - x86/kvm: Expose X86_FEATURE_MD_CLEAR to guests
+ - x86/speculation/mds: Add mds_clear_cpu_buffers()
+ - x86/speculation/mds: Clear CPU buffers on exit to user
+ - x86/kvm/vmx: Add MDS protection when L1D Flush is not active
+ - x86/speculation/mds: Conditionally clear CPU buffers on idle entry
+ - x86/speculation/mds: Add mitigation control for MDS
+ - x86/speculation/mds: Add sysfs reporting for MDS
+ - x86/speculation/mds: Add mitigation mode VMWERV
+ - Documentation: Add MDS vulnerability documentation
+ - x86/speculation/mds: Add mds=full,nosmt cmdline option
+ - x86/speculation: Move arch_smt_update() call to after mitigation decisions
+ - x86/speculation/mds: Add SMT warning message
+ - x86/speculation/mds: Fix comment
+ - x86/speculation/mds: Print SMT vulnerable on MSBDS with mitigations off
+ - x86/mds: Add MDSUM variant to the MDS documentation
+ - Documentation: Correct the possible MDS sysfs values
+ - x86/speculation/mds: Fix documentation typo
+ * [x86] linux-cpupower: Update CPPFLAGS for change in <asm/msr-index.h>
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 14 May 2019 17:34:37 +0100
+
+linux (4.19.37-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.29
+ - media: uvcvideo: Fix 'type' check leading to overflow
+ - vti4: Fix a ipip packet processing bug in 'IPCOMP' virtual tunnel
+ - perf script: Fix crash with printing mixed trace point and other events
+ - perf core: Fix perf_proc_update_handler() bug
+ - perf tools: Handle TOPOLOGY headers with no CPU
+ - perf script: Fix crash when processing recorded stat data
+ - IB/{hfi1, qib}: Fix WC.byte_len calculation for UD_SEND_WITH_IMM
+ - [amd64] iommu/amd: Call free_iova_fast with pfn in map_sg
+ - [amd64] iommu/amd: Unmap all mapped pages in error path of map_sg
+ - [riscv64] fixup max_low_pfn with PFN_DOWN.
+ - ipvs: Fix signed integer overflow when setsockopt timeout
+ - [amd64] iommu/amd: Fix IOMMU page flush when detach device from a domain
+ - [armhf] clk: ti: Fix error handling in ti_clk_parse_divider_data()
+ - [arm64] clk: qcom: gcc: Use active only source for CPUSS clocks
+ - [riscv64] Adjust mmap base address at a third of task size
+ - IB/ipoib: Fix for use-after-free in ipoib_cm_tx_start
+ - iomap: get/put the page in iomap_page_create/release()
+ - iomap: fix a use after free in iomap_dio_rw
+ - [arm64] net: hns: Fix for missing of_node_put() after of_parse_phandle()
+ - [arm64] net: hns: Restart autoneg need return failed when autoneg off
+ - [arm64] net: hns: Fix wrong read accesses via Clause 45 MDIO protocol
+ - [armhf,arm64] net: stmmac: dwmac-rk: fix error handling in
+ rk_gmac_powerup()
+ - netfilter: ebtables: compat: un-break 32bit setsockopt when no rules are
+ present
+ - nfs: Fix NULL pointer dereference of dev_name
+ - qed: Fix bug in tx promiscuous mode settings
+ - qed: Fix LACP pdu drops for VFs
+ - qed: Fix VF probe failure while FLR
+ - qed: Fix system crash in ll2 xmit
+ - qed: Fix stack out of bounds bug
+ - scsi: libfc: free skb when receiving invalid flogi resp
+ - scsi: scsi_debug: fix write_same with virtual_gb problem
+ - scsi: bnx2fc: Fix error handling in probe()
+ - scsi: 53c700: pass correct "dev" to dma_alloc_attrs()
+ - net: macb: Apply RXUBR workaround only to versions with errata
+ - [amd64] boot/compressed/64: Set EFER.LME=1 in 32-bit trampoline before
+ returning to long mode
+ - cifs: fix computation for MAX_SMB2_HDR_SIZE
+ - [x86] microcode/amd: Don't falsely trick the late loading mechanism
+ - [arm64] kprobe: Always blacklist the KVM world-switch code
+ - apparmor: Fix aa_label_build() error handling for failed merges
+ - [x86] kexec: Don't setup EFI info if EFI runtime is not enabled
+ - proc: fix /proc/net/* after setns(2)
+ - mm, memory_hotplug: is_mem_section_removable do not pass the end of a zone
+ - mm, memory_hotplug: test_pages_in_a_zone do not pass the end of zone
+ - fs/drop_caches.c: avoid softlockups in drop_pagecache_sb()
+ - autofs: drop dentry reference only when it is never used
+ - autofs: fix error return in autofs_fill_super()
+ - mm, memory_hotplug: fix off-by-one in is_pageblock_removable
+ - [armhf] OMAP: dts: N950/N9: fix onenand timings
+ - [armhf] dts: omap4-droid4: Fix typo in cpcap IRQ flags
+ - [armhf] dts: sun8i: h3: Add ethernet0 alias to Beelink X2
+ - [arm64] dts: meson: Fix IRQ trigger type for macirq
+ - [arm64] dts: meson8b: odroidc1: mark the SD card detection GPIO
+ active-low
+ - [arm64] dts: meson8m2: mxiii-plus: mark the SD card detection GPIO
+ active-low
+ - [arm64] dts: imx6sx: correct backward compatible of gpt
+ - [armhf] pinctrl: mcp23s08: spi: Fix regmap allocation for mcp23s18
+ - wlcore: sdio: Fixup power on/off sequence
+ - bpf: sock recvbuff must be limited by rmem_max in bpf_setsockopt()
+ - [arm64] dts: add msm8996 compatible to gicv3
+ - batman-adv: release station info tidstats
+ - [armhf,arm64] irqchip/gic-v4: Fix occasional VLPI drop
+ - [armhf,arm64] irqchip/gic-v3-its: Gracefully fail on LPI exhaustion
+ - drm/amdgpu: Add missing power attribute to APU check
+ - drm/radeon: check if device is root before getting pci speed caps
+ - drm/amdgpu: Transfer fences to dmabuf importer
+ - [armhf,arm64] net: stmmac: Fallback to Platform Data clock in Watchdog
+ conversion
+ - [armhf,arm64] net: stmmac: Disable EEE mode earlier in XMIT callback
+ - [armhf,arm64] irqchip/gic-v3-its: Fix ITT_entry_size accessor
+ - relay: check return of create_buf_file() properly
+ - bpf: fix potential deadlock in bpf_prog_register
+ - bpf: Fix syscall's stackmap lookup potential deadlock
+ - [armhf,arm64] drm/sun4i: tcon: Prepare and enable TCON channel 0 clock at
+ init
+ - vsock/virtio: fix kernel panic after device hot-unplug
+ - vsock/virtio: reset connected sockets on device removal
+ - netfilter: nf_nat: skip nat clash resolution for same-origin entries
+ - [s390x] qeth: release cmd buffer in error paths
+ - [s390x] qeth: fix use-after-free in error path
+ - [s390x] qeth: cancel close_dev work before removing a card
+ - perf symbols: Filter out hidden symbols from labels
+ - perf trace: Support multiple "vfs_getname" probes
+ - [mips*] Remove function size check in get_frame_info()
+ - Revert "scsi: libfc: Add WARN_ON() when deleting rports"
+ - [armhf] i2c: omap: Use noirq system sleep pm ops to idle device for
+ suspend
+ - drm/amdgpu: use spin_lock_irqsave to protect vm_manager.pasid_idr
+ - nvme: lock NS list changes while handling command effects
+ - nvme-pci: fix rapid add remove sequence
+ - fs: ratelimit __find_get_block_slow() failure message.
+ - qed: Fix EQ full firmware assert.
+ - qed: Consider TX tcs while deriving the max num_queues for PF.
+ - qede: Fix system crash on configuring channels.
+ - blk-iolatency: fix IO hang due to negative inflight counter
+ - nvme-pci: add missing unlock for reset error
+ - Input: wacom_serial4 - add support for Wacom ArtPad II tablet
+ - Input: elan_i2c - add id for touchpad found in Lenovo s21e-20
+ - [x86] iscsi_ibft: Fix missing break in switch statement
+ - scsi: aacraid: Fix missing break in switch statement
+ - [x86] PCI: Fixup RTIT_BAR of Intel Denverton Trace Hub
+ - [arm64] dts: zcu100-revC: Give wifi some time after power-on
+ - [arm64] dts: hikey: Give wifi some time after power-on
+ - [arm64] dts: hikey: Revert "Enable HS200 mode on eMMC"
+ - [armhf] dts: exynos: Fix pinctrl definition for eMMC RTSN line on Odroid
+ X2/U3
+ - [armhf] dts: exynos: Add minimal clkout parameters to Exynos3250 PMU
+ - [armhf] dts: exynos: Fix max voltage for buck8 regulator on Odroid
+ XU3/XU4
+ - drm: disable uncached DMA optimization for ARM and arm64
+ (Closes: #923723)
+ - netfilter: xt_TEE: fix wrong interface selection
+ - netfilter: xt_TEE: add missing code to get interface index in checkentry.
+ - gfs2: Fix missed wakeups in find_insert_glock
+ - cifs: allow calling SMB2_xxx_free(NULL) (Closes: #919290)
+ - ath9k: Avoid OF no-EEPROM quirks without qca,no-eeprom
+ - driver core: Postpone DMA tear-down until after devres release
+ - [x86] perf/intel: Make cpuc allocations consistent
+ - [x86] perf/intel: Generalize dynamic constraint creation
+ - [x86] Add TSX Force Abort CPUID/MSR
+ - [x86] perf/intel: Implement support for TSX Force Abort
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.30
+ - connector: fix unsafe usage of ->real_parent
+ - gro_cells: make sure device is up in gro_cells_receive()
+ - ipv4/route: fail early when inet dev is missing
+ - l2tp: fix infoleak in l2tp_ip6_recvmsg()
+ - lan743x: Fix RX Kernel Panic
+ - lan743x: Fix TX Stall Issue
+ - net: sit: fix UBSAN Undefined behaviour in check_6rd
+ - net/x25: fix use-after-free in x25_device_event()
+ - net/x25: reset state in x25_connect()
+ - pptp: dst_release sk_dst_cache in pptp_sock_destruct
+ - route: set the deleted fnhe fnhe_daddr to 0 in ip_del_fnhe to fix a race
+ - rxrpc: Fix client call queueing, waiting for channel
+ - sctp: remove sched init from sctp_stream_init
+ - tcp: do not report TCP_CM_INQ of 0 for closed connections
+ - tcp: Don't access TCP_SKB_CB before initializing it
+ - tcp: handle inet_csk_reqsk_queue_add() failures
+ - vxlan: Fix GRO cells race condition between receive and link delete
+ - vxlan: test dev->flags & IFF_UP before calling gro_cells_receive()
+ - net/mlx4_core: Fix reset flow when in command polling mode
+ - net/mlx4_core: Fix locking in SRIOV mode when switching between events
+ and polling
+ - net/mlx4_core: Fix qp mtt size calculation
+ - net/x25: fix a race in x25_bind()
+ - mdio_bus: Fix use-after-free on device_register fails
+ - net: Set rtm_table to RT_TABLE_COMPAT for ipv6 for tables > 255
+ - ipv6: route: purge exception on removal
+ - team: use operstate consistently for linkup
+ - ipvlan: disallow userns cap_net_admin to change global mode/flags
+ - ipv6: route: enforce RCU protection in rt6_update_exception_stamp_rt()
+ - ipv6: route: enforce RCU protection in ip6_route_check_nh_onlink()
+ - bonding: fix PACKET_ORIGDEV regression
+ - net/smc: fix smc_poll in SMC_INIT state
+ - af_unix: missing barriers in some of unix_sock ->addr and ->path accesses
+ - net: sched: flower: insert new filter to idr after setting its mask
+ - f2fs: wait on atomic writes to count F2FS_CP_WB_DATA
+ - ALSA: bebob: use more identical mod_alias for Saffire Pro 10 I/O against
+ Liquid Saffire 56
+ - ALSA: firewire-motu: fix construction of PCM frame for capture direction
+ - [x86] ALSA: hda: Extend i915 component bind timeout
+ - [x86] ALSA: hda - add more quirks for HP Z2 G4 and HP Z240
+ - ALSA: hda/realtek: Enable audio jacks of ASUS UX362FA with ALC294
+ - ALSA: hda/realtek - Reduce click noise on Dell Precision 5820 headphone
+ - ALSA: hda/realtek: Enable headset MIC of Acer TravelMate X514-51T with
+ ALC255
+ - [x86] perf/intel: Fix memory corruption
+ - [x86] perf/intel: Make dev_attr_allow_tsx_force_abort static
+ - md: It's wrong to add len to sector_nr in raid10 reshape twice
+ - drm: Block fb changes for async plane updates
+ - i40e: report correct statistics when XDP is enabled
+ - vhost/vsock: fix vhost vsock cid hashing inconsistent
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.31
+ - media: videobuf2-v4l2: drop WARN_ON in vb2_warn_zero_bytesused()
+ - 9p: use inode->i_lock to protect i_size_write() under 32-bit
+ - 9p/net: fix memory leak in p9_client_create
+ - [armhf] iio: adc: exynos-adc: Fix NULL pointer exception on unbind
+ - [x86] mei: hbm: clean the feature flags on link reset
+ - [x86] mei: bus: move hw module get/put to probe/release
+ - crypto: cfb - add missing 'chunksize' property
+ - crypto: cfb - remove bogus memcpy() with src == dest
+ - crypto: ahash - fix another early termination in hash walk
+ - [armhf] drm/imx: ignore plane updates on disabled crtcs
+ - [armhf] drm/imx: imx-ldb: add missing of_node_puts
+ - [x86] ASoC: rt5682: Correct the setting while select ASRC clk for AD/DA
+ filter
+ - [armhf] clocksource: timer-ti-dm: Fix pwm dmtimer usage of fck
+ reparenting
+ - [armhf,arm64] KVM: vgic: Make vgic_dist->lpi_list_lock a raw_spinlock
+ - [arm64] dts: rockchip: fix graph_port warning on rk3399 bob kevin and
+ excavator
+ - [s390x] dasd: fix using offset into zero size array error
+ - Input: pwm-vibra - prevent unbalanced regulator
+ - Input: pwm-vibra - stop regulator after disabling pwm, not before
+ - [armhf] dts: Configure clock parent for pwm vibra
+ - [armhf] OMAP2+: Variable "reg" in function omap4_dsi_mux_pads() could be
+ uninitialized
+ - ASoC: dapm: fix out-of-bounds accesses to DAPM lookup tables
+ - [armhf,arm64] KVM: Reset the VCPU without preemption and vcpu state
+ loaded
+ - [armhf,arm64] KVM: Allow a VCPU to fully reset itself
+ - [armhf,arm64] KVM: Don't panic on failure to properly reset system
+ registers
+ - [armhf,arm64] KVM: vgic: Always initialize the group of private IRQs
+ - [arm64] KVM: Forbid kprobing of the VHE world-switch code
+ - [armhf] OMAP2+: fix lack of timer interrupts on CPU1 after hotplug
+ - mac80211: call drv_ibss_join() on restart
+ - mac80211: Fix Tx aggregation session tear down with ITXQs
+ - netfilter: compat: initialize all fields in xt_init
+ - blk-mq: insert rq with DONTPREP to hctx dispatch list when requeue
+ - ipvs: fix dependency on nf_defrag_ipv6
+ - floppy: check_events callback should not return a negative number
+ - xprtrdma: Make sure Send CQ is allocated on an existing compvec
+ - NFS: Don't use page_file_mapping after removing the page
+ - mm/gup: fix gup_pmd_range() for dax
+ - Revert "mm: use early_pfn_to_nid in page_ext_init"
+ - scsi: qla2xxx: Fix panic from use after free in qla2x00_async_tm_cmd
+ - [armhf] net: dsa: bcm_sf2: potential array overflow in
+ bcm_sf2_sw_suspend()
+ - [x86] CPU: Add Icelake model number
+ - mm: page_alloc: fix ref bias in page_frag_alloc() for 1-byte allocs
+ - [arm64] net: hns: Fix object reference leaks in hns_dsaf_roce_reset()
+ - [arm*] i2c: bcm2835: Clear current buffer pointers and counts after a
+ transfer
+ - [armhf] clk: sunxi-ng: v3s: Fix TCON reset de-assert bit
+ - kallsyms: Handle too long symbols in kallsyms.c
+ - [armhf] clk: sunxi: A31: Fix wrong AHB gate number
+ - esp: Skip TX bytes accounting when sending from a request socket
+ - [armhf] 8824/1: fix a migrating irq bug when hotplug cpu
+ - bpf: only adjust gso_size on bytestream protocols
+ - bpf: fix lockdep false positive in stackmap
+ - af_key: unconditionally clone on broadcast
+ - [armhf] 8835/1: dma-mapping: Clear DMA ops on teardown
+ - assoc_array: Fix shortcut creation
+ - keys: Fix dependency loop between construction record and auth key
+ - scsi: libiscsi: Fix race between iscsi_xmit_task and iscsi_complete_task
+ - [armhf] net: dsa: bcm_sf2: Do not assume DSA master supports WoL
+ - [arm64] pinctrl: meson: meson8b: fix the sdxc_a data 1..3 pins
+ - qmi_wwan: apply SET_DTR quirk to Sierra WP7607
+ - net: mv643xx_eth: disable clk on error path in mv643xx_eth_shared_probe()
+ - xfrm: Fix inbound traffic via XFRM interfaces across network namespaces
+ - ASoC: topology: free created components in tplg load error
+ - qed: Fix iWARP buffer size provided for syn packet processing.
+ - qed: Fix iWARP syn packet mac address validation.
+ - [armhf] dts: armada-xp: fix Armada XP boards NAND description
+ - [arm64] Relax GIC version check during early boot
+ - [armhf] tegra: Restore DT ABI on Tegra124 Chromebooks
+ - [armhf,arm64] net: marvell: mvneta: fix DMA debug warning
+ - mm: handle lru_add_drain_all for UP properly
+ - tmpfs: fix link accounting when a tmpfile is linked in
+ - ixgbe: fix older devices that do not support IXGBE_MRQC_L3L4TXSWEN
+ - phonet: fix building with clang
+ - mac80211_hwsim: propagate genlmsg_reply return code
+ - bpf, lpm: fix lookup bug in map_delete_elem
+ - [arm64] net: thunderx: make CFG_DONE message to run through generic
+ send-ack sequence
+ - [arm64] net: thunderx: add nicvf_send_msg_to_pf result check for
+ set_rx_mode_task
+ - nfp: bpf: fix code-gen bug on BPF_ALU | BPF_XOR | BPF_K
+ - nfp: bpf: fix ALU32 high bits clearance bug
+ - bnxt_en: Fix typo in firmware message timeout logic.
+ - bnxt_en: Wait longer for the firmware message response to complete.
+ - net: set static variable an initial value in atl2_probe()
+ - tmpfs: fix uninitialized return value in shmem_link
+ - stm class: Prevent division by zero
+ - nfit: acpi_nfit_ctl(): Check out_obj->type in the right place
+ - acpi/nfit: Fix bus command validation
+ - nfit/ars: Attempt a short-ARS whenever the ARS state is idle at boot
+ - nfit/ars: Attempt short-ARS even in the no_init_ars case
+ - [amd64] libnvdimm/label: Clear 'updating' flag after label-set update
+ - [amd64] libnvdimm, pfn: Fix over-trim in trim_pfn_device()
+ - [amd64] libnvdimm/pmem: Honor force_raw for legacy pmem regions
+ - [amd64] libnvdimm: Fix altmap reservation size calculation
+ - cgroupfs: fix cgroup_do_mount() handling of failure exits
+ - crypto: aead - set CRYPTO_TFM_NEED_KEY if ->setkey() fails
+ - crypto: aegis - fix handling chunked inputs
+ - [arm64] crypto: aes-neonbs - fix returning final keystream block
+ - crypto: hash - set CRYPTO_TFM_NEED_KEY if ->setkey() fails
+ - crypto: morus - fix handling chunked inputs
+ - crypto: pcbc - remove bogus memcpy()s with src == dest
+ - crypto: skcipher - set CRYPTO_TFM_NEED_KEY if ->setkey() fails
+ - crypto: testmgr - skip crc32c context test for ahash algorithms
+ - [x86] crypto: aegis - fix handling chunked inputs and MAY_SLEEP
+ - [x86] crypto: aesni-gcm - fix crash on empty plaintext
+ - [x86] crypto: morus - fix handling chunked inputs and MAY_SLEEP
+ - [arm64] crypto: aes-ccm - fix logical bug in AAD MAC handling
+ - [arm64] crypto: aes-ccm - fix bugs in non-NEON fallback routine
+ - CIFS: Do not reset lease state to NONE on lease break
+ - CIFS: Do not skip SMB2 message IDs on send failures
+ - CIFS: Fix read after write for files with read caching
+ - tracing: Use strncpy instead of memcpy for string keys in hist triggers
+ - tracing: Do not free iter->trace in fail path of tracing_open_pipe()
+ - tracing/perf: Use strndup_user() instead of buggy open-coded version
+ - xen: fix dom0 boot on huge systems
+ - ACPI / device_sysfs: Avoid OF modalias creation for removed device
+ - [armhf] mmc: sdhci-esdhc-imx: fix HS400 timing issue
+ - mmc:fix a bug when max_discard is 0
+ - netfilter: ipt_CLUSTERIP: fix warning unused variable cn
+ - [armhf] spi: ti-qspi: Fix mmap read when more than one CS in use
+ - [amd64] spi: pxa2xx: Setup maximum supported DMA transfer length
+ - [armhf] regulator: s2mps11: Fix steps for buck7, buck8 and LDO35
+ - [arm64] regulator: max77620: Initialize values for DT properties
+ - [armhf] regulator: s2mpa01: Fix step values for some LDOs
+ - [armhf] clocksource/drivers/exynos_mct: Move one-shot check from tick
+ clear to ISR
+ - [armhf] clocksource/drivers/exynos_mct: Clear timer interrupt when
+ shutdown
+ - [arm64] clocksource/drivers/arch_timer: Workaround for Allwinner A64
+ timer instability (Closes: #928457)
+ - [s390x] setup: fix early warning messages
+ - [s390x] virtio: handle find on invalid queue gracefully
+ - scsi: virtio_scsi: don't send sc payload with tmfs
+ - scsi: aacraid: Fix performance issue on logical drives
+ - scsi: sd: Optimal I/O size should be a multiple of physical block size
+ - scsi: target/iscsi: Avoid iscsit_release_commands_from_conn() deadlock
+ - scsi: qla2xxx: Fix LUN discovery if loop id is not assigned yet by
+ firmware
+ - fs/devpts: always delete dcache dentry-s in dput()
+ - splice: don't merge into linked buffers
+ - ovl: During copy up, first copy up data and then xattrs
+ - ovl: Do not lose security.capability xattr over metadata file copy-up
+ - Btrfs: setup a nofs context for memory allocation at btrfs_create_tree()
+ - Btrfs: setup a nofs context for memory allocation at __btrfs_set_acl
+ - btrfs: ensure that a DUP or RAID1 block group has exactly two stripes
+ - Btrfs: fix corruption reading shared and compressed extents after hole
+ punching
+ - libertas_tf: don't set URB_ZERO_PACKET on IN USB transfer
+ - [armhf,arm64] irqchip/gic-v3-its: Avoid parsing _indirect_ twice for
+ Device table
+ - [x86] kprobes: Prohibit probing on optprobe template code
+ - [armhf,arm64] cpufreq: tegra124: add missing of_node_put()
+ - ext4: fix check of inode in swap_inode_boot_loader
+ - ext4: cleanup pagecache before swap i_data
+ - ext4: update quota information while swapping boot loader inode
+ - ext4: add mask of ext4 flags to swap
+ - ext4: fix crash during online resizing
+ - PCI/ASPM: Use LTR if already enabled by platform
+ - PCI/DPC: Fix print AER status in DPC event handling
+ - [armhf,arm64] PCI: dwc: skip MSI init if MSIs have been explicitly
+ disabled
+ - IB/hfi1: Close race condition on user context disable and close
+ - [armhf] clk: clk-twl6040: Fix imprecise external abort for pdmclk
+ - [armhf] clk: samsung: exynos5: Fix possible NULL pointer exception on
+ platform_device_alloc() failure
+ - [armhf] clk: samsung: exynos5: Fix kfree() of const memory on setting
+ driver_override
+ - [armhf,arm64] usb: chipidea: tegra: Fix missed ci_hdrc_remove_device()
+ - [x86] usb: typec: tps6598x: handle block writes separately with plain-I2C
+ adapters
+ - mm: hwpoison: fix thp split handing in soft_offline_in_use_page()
+ - mm/vmalloc: fix size check for remap_vmalloc_range_partial()
+ - mm/memory.c: do_fault: avoid usage of stale vm_area_struct
+ - kernel/sysctl.c: add missing range check in do_proc_dointvec_minmax_conv
+ - device property: Fix the length used in PROPERTY_ENTRY_STRING()
+ - [x86] intel_th: Don't reference unassigned outputs
+ - parport_pc: fix find_superio io compare code, should use equal test.
+ - [armhf,arm64] i2c: tegra: fix maximum transfer size
+ - [armhf,arm64] gpio: pca953x: Fix dereference of irq data in shutdown
+ - [armhf] can: flexcan: FLEXCAN_IFLAG_MB: add () around macro argument
+ - [x86] drm/i915: Relax mmap VMA check
+ - bpf: only test gso type on gso packets
+ - [arm64] serial: uartps: Fix stuck ISR if RX disabled with non-empty FIFO
+ - serial: 8250_of: assume reg-shift of 2 for mrvl,mmp-uart
+ - serial: 8250_pci: Fix number of ports for ACCES serial cards
+ - serial: 8250_pci: Have ACCES cards that use the four port Pericom
+ PI7C9X7954 chip use the pci_pericom_setup()
+ - jbd2: clear dirty flag when revoking a buffer from an older transaction
+ - jbd2: fix compile warning when using JBUFFER_TRACE
+ - selinux: add the missing walk_size + len check in
+ selinux_sctp_bind_connect
+ - security/selinux: fix SECURITY_LSM_NATIVE_LABELS on reused superblock
+ - [powerpc*] powerpc/32: Clear on-stack exception marker upon exception
+ return
+ - [powerpc*] powernv: Make opal log only readable by root
+ - [powerpc*] powernv: Don't reprogram SLW image on every KVM guest
+ entry/exit
+ - [powerpc*] Fix 32-bit KVM-PR lockup and host crash with MacOS guest
+ - [powerpc*] ptrace: Simplify vr_get/set() to avoid GCC warning
+ - [powerpc*] hugetlb: Don't do runtime allocation of 16G pages in LPAR
+ configuration
+ - [powerpc*] traps: fix recoverability of machine check handling on
+ book3s/32
+ - [powerpc*] traps: Fix the message printed when stack overflows
+ - [arm64] Fix HCR.TGE status for NMI contexts
+ - [arm64] debug: Ensure debug handlers check triggering exception level
+ - [arm64] KVM: Fix architecturally invalid reset value for FPEXC32_EL2
+ - ipmi_si: fix use-after-free of resource->name
+ - dm: fix to_sector() for 32bit
+ - dm integrity: limit the rate of error messages
+ - mfd: sm501: Fix potential NULL pointer dereference
+ - NFS: Fix I/O request leakages
+ - NFS: Fix an I/O request leakage in nfs_do_recoalesce
+ - NFS: Don't recoalesce on error in nfs_pageio_complete_mirror()
+ - nfsd: fix performance-limiting session calculation
+ - nfsd: fix memory corruption caused by readdir
+ - nfsd: fix wrong check in write_v4_end_grace()
+ - NFSv4.1: Reinitialise sequence results before retransmitting a request
+ - svcrpc: fix UDP on servers with lots of threads
+ - PM / wakeup: Rework wakeup source timer cancellation
+ - bcache: never writeback a discard operation
+ - vt: perform safe console erase in the right order
+ - [x86] unwind/orc: Fix ORC unwind table alignment
+ - [x86] perf intel-pt: Fix CYC timestamp calculation after OVF
+ - perf tools: Fix split_kallsyms_for_kcore() for trampoline symbols
+ - perf auxtrace: Define auxtrace record alignment
+ - [x86] perf intel-pt: Fix overlap calculation for padding
+ - [x86] perf/intel/uncore: Fix client IMC events return huge result
+ - [x86] perf intel-pt: Fix divide by zero when TSC is not available
+ - md: Fix failed allocation of md_register_thread
+ - [x86] tpm/tpm_crb: Avoid unaligned reads in crb_recv()
+ - tpm: Unify the send callback behaviour
+ - rcu: Do RCU GP kthread self-wakeup from softirq and interrupt
+ - media: lgdt330x: fix lock status reporting
+ - media: uvcvideo: Avoid NULL pointer dereference at the end of streaming
+ - drm/fb-helper: generic: Fix drm_fbdev_client_restore()
+ - drm/radeon/evergreen_cs: fix missing break in switch statement
+ - drm/amd/powerplay: correct power reading on fiji
+ - drm/amd/display: don't call dm_pp_ function from an fpu block
+ - KVM: Call kvm_arch_memslots_updated() before updating memslots
+ - [x86] KVM: mmu: Detect MMIO generation wrap in any address space
+ - [x86] KVM: mmu: Do not cache MMIO accesses while memslots are in flux
+ - [x86] KVM: nVMX: Sign extend displacements of VMX instr's mem operands
+ - [x86] KVM: nVMX: Apply addr size mask to effective address for VMX
+ instructions
+ - [x86] KVM: nVMX: Ignore limit checks on VMX instructions using flat
+ segments
+ - bcache: use (REQ_META|REQ_PRIO) to indicate bio for metadata
+ - [s390x] setup: fix boot crash for machine without EDAT-1
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.32
+ - [x86] ALSA: hda - add Lenovo IdeaCentre B550 to the power_save_blacklist
+ - ALSA: firewire-motu: use 'version' field of unit directory to identify
+ model
+ - [x86] drm/vmwgfx: Don't double-free the mode stored in par->set_mode
+ - [x86] drm/vmwgfx: Return 0 when gmrid::get_node runs out of ID's
+ - [amd64] iommu/amd: fix sg->dma_address for sg->offset bigger than
+ PAGE_SIZE
+ - libceph: wait for latest osdmap in ceph_monc_blacklist_add()
+ - udf: Fix crash on IO error during truncate
+ - [mips64*/loongson-3] lemote-2f: Add IRQF_NO_SUSPEND to "cascade"
+ irqaction.
+ - [mips*] Ensure ELF appended dtb is relocated
+ - [mips*r6] Fix kernel crash for R6 in jump label branch function
+ - [powerpc*] vdso64: Fix CLOCK_MONOTONIC inconsistencies across Y2038
+ - [powerpc*] scsi: ibmvscsi: Protect ibmvscsi_head from concurrent
+ modificaiton
+ - [powerpc*] scsi: ibmvscsi: Fix empty event pool access during host
+ removal
+ - futex: Ensure that futex address is aligned in handle_futex_death()
+ - cifs: allow guest mounts to work for smb3.11
+ - perf probe: Fix getting the kernel map
+ - [x86] objtool: Move objtool_file struct off the stack
+ - [armhf,arm64] irqchip/gic-v3-its: Fix comparison logic in lpi_range_cmp
+ - SMB3: Fix SMB3.1.1 guest mounts to Samba
+ - [x86] ALSA: Fix runtime PM for hdmi-lpe-audio
+ - ALSA: hda/ca0132 - make pci_iounmap() call conditional
+ - ALSA: ac97: Fix of-node refcount unbalance
+ - ext4: fix NULL pointer dereference while journal is aborted
+ - ext4: fix data corruption caused by unaligned direct AIO
+ - ext4: brelse all indirect buffer in ext4_ind_remove_space()
+ - media: v4l2-ctrls.c/uvc: zero v4l2_event
+ - Bluetooth: hci_uart: Check if socket buffer is ERR_PTR in h4_recv_buf()
+ - Bluetooth: Fix decrementing reference count twice in releasing socket
+ - Bluetooth: hci_ldisc: Initialize hci_dev before open()
+ - Bluetooth: hci_ldisc: Postpone HCI_UART_PROTO_READY bit set in
+ hci_uart_set_proto()
+ - drm: Reorder set_property_atomic to avoid returning with an active ww_ctx
+ - RDMA/cma: Rollback source IP address if failing to acquire device
+ - f2fs: fix to avoid deadlock of atomic file operations
+ - netfilter: ebtables: remove BUGPRINT messages
+ - loop: access lo_backing_file only when the loop device is Lo_bound
+ - [x86] unwind: Handle NULL pointer calls better in frame unwinder
+ - [x86] unwind: Add hardcoded ORC entry for NULL
+ - ALSA: hda - Record the current power state before suspend/resume calls
+ - ALSA: hda - Enforces runtime_resume after S3 and S4 for each codec
+ - power: supply: charger-manager: Fix incorrect return value
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.33
+ - Bluetooth: Check L2CAP option sizes returned from l2cap_get_conf_opt
+ (CVE-2019-3460)
+ - Bluetooth: Verify that l2cap_get_conf_opt provides large enough buffer
+ (CVE-2019-3459)
+ - ipmi_si: Fix crash when using hard-coded device
+ - dccp: do not use ipv6 header for ipv4 flow
+ - genetlink: Fix a memory leak on error path
+ - ipv6: make ip6_create_rt_rcu return ip6_null_entry instead of NULL
+ - mac8390: Fix mmio access size probe
+ - mISDN: hfcpci: Test both vendor & device ID for Digium HFC4S
+ - net: aquantia: fix rx checksum offload for UDP/TCP over IPv6
+ - net: datagram: fix unbounded loop in __skb_try_recv_datagram()
+ - net/packet: Set __GFP_NOWARN upon allocation in alloc_pg_vec
+ - [arm64] net: phy: meson-gxl: fix interrupt support
+ - net: rose: fix a possible stack overflow
+ - [armhf,arm64] net: stmmac: fix memory corruption with large MTUs
+ - net-sysfs: call dev_hold if kobject_init_and_add success
+ - packets: Always register packet sk in the same order
+ - rhashtable: Still do rehash when we get EEXIST
+ - sctp: get sctphdr by offset in sctp_compute_cksum
+ - sctp: use memdup_user instead of vmemdup_user
+ - tcp: do not use ipv6 header for ipv4 flow
+ - tipc: allow service ranges to be connect()'ed on RDM/DGRAM
+ - tipc: change to check tipc_own_id to return in tipc_net_stop
+ - tipc: fix cancellation of topology subscriptions
+ - tun: properly test for IFF_UP
+ - vrf: prevent adding upper devices
+ - vxlan: Don't call gro_cells_destroy() before device is unregistered
+ - ila: Fix rhashtable walker list corruption
+ - net: sched: fix cleanup NULL pointer exception in act_mirr
+ - [arm64] thunderx: enable page recycling for non-XDP case
+ - [arm64] thunderx: eliminate extra calls to put_page() for pages held for
+ recycling
+ - tun: add a missing rcu_read_unlock() in error path
+ - [powerpcspe] fsl: Add infrastructure to fixup branch predictor flush
+ - [powerpcspe] fsl: Add macro to flush the branch predictor
+ - [powerpcspe] fsl: Emulate SPRN_BUCSR register
+ - [powerpcspe] fsl: Add nospectre_v2 command line argument
+ - [powerpcspe] fsl: Flush the branch predictor at each kernel entry (32 bit)
+ - [powerpcspe] fsl: Enable runtime patching if nospectre_v2 boot arg is used
+ - [powerpcspe] fsl: Update Spectre v2 reporting
+ - [powerpcspe] fsl: Fixed warning: orphan section `__btb_flush_fixup'
+ - [powerpc*] security: Fix spectre_v2 reporting
+ - Btrfs: fix incorrect file size after shrinking truncate and fsync
+ - btrfs: remove WARN_ON in log_dir_items
+ - btrfs: don't report readahead errors and don't update statistics
+ - btrfs: raid56: properly unmap parity page in finish_parity_scrub()
+ - btrfs: Avoid possible qgroup_rsv_size overflow in
+ btrfs_calculate_inode_block_rsv_size
+ - Btrfs: fix assertion failure on fsync with NO_HOLES enabled
+ - [armhf] imx6q: cpuidle: fix bug that CPU might not wake up at expected
+ time
+ - [powerpc*] bpf: Fix generation of load/store DW instructions
+ - [s390x] vfio: ccw: only free cp on final interrupt
+ - NFS: fix mount/umount race in nlmclnt.
+ - NFSv4.1 don't free interrupted slot on open
+ - ALSA: rawmidi: Fix potential Spectre v1 vulnerability
+ - ALSA: seq: oss: Fix Spectre v1 vulnerability
+ - ALSA: pcm: Fix possible OOB access in PCM oss plugins
+ - ALSA: pcm: Don't suspend stream in unrecoverable PCM state
+ - [x86] ALSA: hda/realtek - Add support headset mode for DELL WYSE AIO
+ - [x86] ALSA: hda/realtek - Add support headset mode for New DELL WYSE NB
+ - [x86] ALSA: hda/realtek: Enable headset MIC of Acer AIO with ALC286
+ - [x86] ALSA: hda/realtek: Enable headset MIC of Acer Aspire Z24-890 with
+ ALC286
+ - [x86] ALSA: hda/realtek - Add support for Acer Aspire E5-523G/ES1-432
+ headset mic
+ - [x86] ALSA: hda/realtek: Enable ASUS X441MB and X705FD headset MIC with
+ ALC256
+ - [x86] ALSA: hda/realtek: Enable headset mic of ASUS P5440FF with ALC256
+ - [x86] ALSA: hda/realtek: Enable headset MIC of ASUS X430UN and X512DK
+ with ALC256
+ - [x86] ALSA: hda/realtek - Fix speakers on Acer Predator Helios 500 Ryzen
+ laptops
+ - kbuild: modversions: Fix relative CRC byte order interpretation
+ - fs/open.c: allow opening only regular files during execve()
+ - ocfs2: fix inode bh swapping mixup in ocfs2_reflink_inodes_lock
+ - scsi: sd: Fix a race between closing an sd device and sd I/O
+ - scsi: sd: Quiesce warning if device does not report optimal I/O size
+ - [s390x] scsi: zfcp: fix rport unblock if deleted SCSI devices on
+ Scsi_Host
+ - [s390x] scsi: zfcp: fix scsi_eh host reset with port_forced ERP for
+ non-NPIV FCP devices
+ - [armhf,arm64] drm/rockchip: vop: reset scale mode when win is disabled
+ - [x86] staging: comedi: ni_mio_common: Fix divide-by-zero for DIO cmdtest
+ - staging: speakup_soft: Fix alternate speech with other synths
+ - staging: vt6655: Remove vif check from vnt_interrupt
+ - staging: vt6655: Fix interrupt race condition on device start up.
+ - [arm64] serial: mvebu-uart: Fix to avoid a potential NULL pointer
+ dereference
+ - [sh4] serial: sh-sci: Fix setting SCSCR_TIE while transferring data
+ - USB: serial: cp210x: add new device id
+ - USB: serial: ftdi_sio: add additional NovaTech products
+ - USB: serial: mos7720: fix mos_parport refcount imbalance on error path
+ - USB: serial: option: set driver_info for SIM5218 and compatibles
+ - USB: serial: option: add support for Quectel EM12
+ - USB: serial: option: add Olicard 600
+ - fs/proc/proc_sysctl.c: fix NULL pointer dereference in put_links
+ - drm/vgem: fix use-after-free when drm_gem_handle_create() fails
+ - [x86] drm/i915/gvt: Fix MI_FLUSH_DW parsing with correct index check
+ - gpio: exar: add a check for the return value of ida_simple_get fails
+ - [armhf,arm64] phy: sun4i-usb: Support set_mode to USB_HOST for non-OTG
+ PHYs
+ - USB: gadget: f_hid: fix deadlock in f_hidg_write()
+ - usb: common: Consider only available nodes for dr_mode
+ - xhci: Fix port resume done detection for SS ports with LPM enabled
+ - usb: xhci: dbc: Don't free all memory with spinlock held
+ - xhci: Don't let USB3 ports stuck in polling state prevent suspend
+ - usb: cdc-acm: fix race during wakeup blocking TX traffic
+ - mm: add support for kmem caches in DMA32 zone
+ - [armhf,arm64] iommu/io-pgtable-arm-v7s: request DMA32 memory, and improve
+ debugging
+ - mm: mempolicy: make mbind() return -EIO when MPOL_MF_STRICT is specified
+ - mm/migrate.c: add missing flush_dcache_page for non-mapped page migrate
+ - perf pmu: Fix parser error for uncore event alias
+ - [x86] perf intel-pt: Fix TSC slip
+ - [x86] objtool: Query pkg-config for libelf location
+ - [powerpc*] pseries/energy: Use OF accessor functions to read
+ ibm,drc-indexes
+ - [powerpc*] powerpc/64: Fix memcmp reading past the end of src/dest
+ - watchdog: Respect watchdog cpumask on CPU hotplug
+ - cpu/hotplug: Prevent crash when CPU bringup fails on CONFIG_HOTPLUG_CPU=n
+ - KVM: Reject device ioctls from processes other than the VM's creator
+ - [x86] KVM: update %rip after emulating IO
+ - [x86] KVM: Emulate MSR_IA32_ARCH_CAPABILITIES on AMD hosts
+ - bpf: do not restore dst_reg when cur_state is freed
+ - [x86] platform: intel_cht_int33fe: Register all connections at once
+ - [x86] platform: intel_cht_int33fe: Add connection for the DP alt mode
+ - [x86] platform: intel_cht_int33fe: Add connections for the USB Type-C port
+ - usb: typec: class: Don't use port parent for getting mux handles
+ - [x86] platform: intel_cht_int33fe: Remove the old connections for the
+ muxes
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.34
+ - [arm64] debug: Don't propagate UNKNOWN FAR into si_code for debug signals
+ - ext4: cleanup bh release code in ext4_ind_remove_space()
+ - CIFS: fix POSIX lock leak and invalid ptr deref
+ - f2fs: fix to adapt small inline xattr space in __find_inline_xattr()
+ - f2fs: fix to avoid deadlock in f2fs_read_inline_dir()
+ - tracing: kdb: Fix ftdump to not sleep
+ - net/mlx5: Avoid panic when setting vport rate
+ - net/mlx5: Avoid panic when setting vport mac, getting vport config
+ - [armhf] gpio: gpio-omap: fix level interrupt idling
+ - sysctl: handle overflow for file-max
+ - [armhf,arm64] net: stmmac: Avoid sometimes uninitialized Clang warnings
+ - enic: fix build warning without CONFIG_CPUMASK_OFFSTACK
+ - [arm64] scsi: hisi_sas: Set PHY linkrate when disconnected
+ - [arm64] scsi: hisi_sas: Fix a timeout race of driver internal and SMP IO
+ - iio: adc: fix warning in Qualcomm PM8xxx HK/XOADC driver
+ - [x86] hyperv: Fix kernel panic when kexec on HyperV
+ - perf c2c: Fix c2c report for empty numa node
+ - mm/sparse: fix a bad comparison
+ - mm/cma.c: cma_declare_contiguous: correct err handling
+ - mm/page_ext.c: fix an imbalance with kmemleak
+ - mm, swap: bounds check swap_info array accesses to avoid NULL derefs
+ - mm,oom: don't kill global init via memory.oom.group
+ - memcg: killed threads should not invoke memcg OOM killer
+ - mm, mempolicy: fix uninit memory access
+ - mm/vmalloc.c: fix kernel BUG at mm/vmalloc.c:512!
+ - mm/slab.c: kmemleak no scan alien caches
+ - ocfs2: fix a panic problem caused by o2cb_ctl
+ - f2fs: do not use mutex lock in atomic context
+ - fs/file.c: initialize init_files.resize_wait
+ - page_poison: play nicely with KASAN
+ - cifs: use correct format characters
+ - dm thin: add sanity checks to thin-pool and external snapshot creation
+ - f2fs: fix to check inline_xattr_size boundary correctly
+ - cifs: Accept validate negotiate if server return NT_STATUS_NOT_SUPPORTED
+ - cifs: Fix NULL pointer dereference of devname
+ - netfilter: nf_tables: check the result of dereferencing base_chain->stats
+ - netfilter: conntrack: tcp: only close if RST matches exact sequence
+ - jbd2: fix invalid descriptor block checksum
+ - fs: fix guard_bio_eod to check for real EOD errors
+ - tools lib traceevent: Fix buffer overflow in arg_eval
+ - PCI/PME: Fix hotplug/sysfs remove deadlock in pcie_pme_remove()
+ - wil6210: check null pointer in _wil_cfg80211_merge_extra_ies
+ - mt76: fix a leaked reference by adding a missing of_node_put
+ - [armhf,arm64] usb: chipidea: Grab the (legacy) USB PHY by phandle first
+ - [powerpc*] powernv/ioda: Fix locked_vm counting for memory used by IOMMU
+ tables
+ - scsi: core: replace GFP_ATOMIC with GFP_KERNEL in scsi_scan.c
+ - [powerpc*] xmon: Fix opcode being uninitialized in print_insn_powerpc
+ - [armhf,arm64] coresight: etm4x: Add support to enable ETMv4.2
+ - [armhf] 8840/1: use a raw_spinlock_t in unwind
+ - [armhf,arm64] iommu/io-pgtable-arm-v7s: Only kmemleak_ignore L2 tables
+ - [powerpc*] hugetlb: Handle mmap_min_addr correctly in get_unmapped_area
+ callback
+ - btrfs: qgroup: Make qgroup async transaction commit more aggressive
+ - [armhf] mmc: omap: fix the maximum timeout setting
+ - [armhf.arm64] net: dsa: mv88e6xxx: Add lockdep classes to fix false
+ positive splat
+ - e1000e: Fix -Wformat-truncation warnings
+ - [x86] platform: ideapad-laptop: Fix no_hw_rfkill_list for Lenovo RESCUER
+ R720-15IKBN
+ - loop: set GENHD_FL_NO_PART_SCAN after blkdev_reread_part()
+ - IB/mlx4: Increase the timeout for CM cache
+ - clk: fractional-divider: check parent rate only if flag is set
+ - perf annotate: Fix getting source line failure
+ - [arm64] ASoC: qcom: Fix of-node refcount unbalance in qcom_snd_parse_of()
+ - cpufreq: acpi-cpufreq: Report if CPU doesn't support boost technologies
+ - efi: cper: Fix possible out-of-bounds access
+ - [s390x] ism: ignore some errors during deregistration
+ - scsi: megaraid_sas: return error when create DMA pool failed
+ - scsi: fcoe: make use of fip_mode enum complete
+ - drm/amd/display: Clear stream->mode_changed after commit
+ - [s390x] perf test: Fix failure of 'evsel-tp-sched' test on s390
+ - mwifiex: don't advertise IBSS features without FW support
+ - perf report: Don't shadow inlined symbol with different addr range
+ - [armhf] SoC: imx-sgtl5000: add missing put_device()
+ - mt76: usb: do not run mt76u_queues_deinit twice
+ - xen/gntdev: Do not destroy context while dma-bufs are in use
+ - vfs: fix preadv64v2 and pwritev64v2 compat syscalls with offset == -1
+ - [x86] HID: intel-ish-hid: avoid binding wrong ishtp_cl_device
+ - cgroup, rstat: Don't flush subtree root unless necessary
+ - jbd2: fix race when writing superblock
+ - [s390x] perf report: Add s390 diagnosic sampling descriptor size
+ - iwlwifi: pcie: fix emergency path
+ - ACPI / video: Refactor and fix dmi_is_desktop()
+ - kprobes: Prohibit probing on bsearch()
+ - kprobes: Prohibit probing on RCU debug routine
+ - netfilter: conntrack: fix cloned unconfirmed skb->_nfct race in
+ __nf_conntrack_confirm
+ - [armhf] 8833/1: Ensure that NEON code always compiles with Clang
+ - ALSA: PCM: check if ops are defined before suspending PCM
+ - ath10k: fix shadow register implementation for WCN3990
+ - usb: f_fs: Avoid crash due to out-of-scope stack ptr access
+ - sched/topology: Fix percpu data types in struct sd_data & struct s_data
+ - bcache: fix input overflow to cache set sysfs file io_error_halflife
+ - bcache: fix input overflow to sequential_cutoff
+ - bcache: fix potential div-zero error of writeback_rate_i_term_inverse
+ - bcache: improve sysfs_strtoul_clamp()
+ - genirq: Avoid summation loops for /proc/stat
+ - [armhf,arm64] net: marvell: mvpp2: fix stuck in-band SGMII negotiation
+ - iw_cxgb4: fix srqidx leak during connection abort
+ - net: phy: consider latched link-down status in polling mode
+ - fbdev: fbmem: fix memory access if logo is bigger than the screen
+ - cdrom: Fix race condition in cdrom_sysctl_register
+ - drm: rcar-du: add missing of_node_put
+ - drm/amd/display: Don't re-program planes for DPMS changes
+ - drm/amd/display: Disconnect mpcc when changing tg
+ - perf/aux: Make perf_event accessible to setup_aux()
+ - e1000e: fix cyclic resets at link up with active tx
+ - e1000e: Exclude device from suspend direct complete optimization
+ - [x86] platform: intel_pmc_core: Fix PCH IP sts reading
+ - i2c: of: Try to find an I2C adapter matching the parent
+ - iwlwifi: mvm: fix RFH config command with >=10 CPUs
+ - sched/debug: Initialize sd_sysctl_cpus if !CONFIG_CPUMASK_OFFSTACK
+ - efi/memattr: Don't bail on zero VA if it equals the region's PA
+ - sched/core: Use READ_ONCE()/WRITE_ONCE() in move_queued_task()/
+ task_rq_lock()
+ - drm/vkms: Bugfix extra vblank frame
+ - [armhf] dts: lpc32xx: Remove leading 0x and 0s from bindings notation
+ - [armhf,arm64] efi: Allow SetVirtualAddressMap() to be omitted
+ - [arm64] soc: qcom: gsbi: Fix error handling in gsbi_probe()
+ - mt7601u: bump supported EEPROM version
+ - [armhf] 8830/1: NOMMU: Toggle only bits in EXC_RETURN we are really care
+ of
+ - [armhf] avoid Cortex-A9 livelock on tight dmb loops
+ - block, bfq: fix in-service-queue check for queue merging
+ - [powerpc*] 64s: Clear on-stack exception marker upon exception return
+ - cgroup/pids: turn cgroup_subsys->free() into cgroup_subsys->release() to
+ fix the accounting
+ - [armhf,arm64] backlight: pwm_bl: Use gpiod_get_value_cansleep() to get
+ initial state
+ - tty: increase the default flip buffer limit to 2*640K
+ - [powerpc*] pseries: Perform full re-add of CPU for topology update
+ post-migration
+ - drm/amd/display: Enable vblank interrupt during CRC capture
+ - ALSA: dice: add support for Solid State Logic Duende Classic/Mini
+ - [armhf,arm64] usb: dwc3: gadget: Fix OTG events when gadget driver isn't
+ loaded
+ - [x86] platform: intel-hid: Missing power button release on some Dell
+ models
+ - perf script python: Use PyBytes for attr in trace-event-python
+ - perf script python: Add trace_context extension module to sys.modules
+ - hwrng: virtio - Avoid repeated init of completion
+ - [armhf,arm64] soc/tegra: fuse: Fix illegal free of IO base address
+ - [x86] HID: intel-ish: ipc: handle PIMR before ish_wakeup also clear PISR
+ busy_clear bit
+ - f2fs: UBSAN: set boolean value iostat_enable correctly
+ - hpet: Fix missing '=' character in the __setup() code of hpet_mmap_enable
+ - [armhf] dmaengine: imx-dma: fix warning comparison of distinct pointer
+ types
+ - [arm64] dmaengine: qcom_hidma: assign channel cookie correctly
+ - [arm64] dmaengine: qcom_hidma: initialize tx flags in hidma_prep_dma_*
+ - netfilter: physdev: relax br_netfilter dependency
+ - [armhf] regulator: act8865: Fix act8600_sudcdc_voltage_ranges setting
+ - [arm64] pinctrl: meson: meson8b: add the eth_rxd2 and eth_rxd3 pins
+ - drm: Auto-set allow_fb_modifiers when given modifiers at plane init
+ - drm/nouveau: Stop using drm_crtc_force_disable
+ - selinux: do not override context on context mounts
+ - brcmfmac: Use firmware_request_nowarn for the clm_blob
+ - [armhf,arm64] wlcore: Fix memory leak in case wl12xx_fetch_firmware
+ failure
+ - drm/fb-helper: fix leaks in error path of drm_fb_helper_fbdev_setup
+ - [arm64] clk: rockchip: fix frac settings of GPLL clock for rk3328
+ - [armhf,arm64] dmaengine: tegra: avoid overflow of byte tracking
+ - [x86] Input: soc_button_array - fix mapping of the 5th GPIO in a PNP0C40
+ device
+ - drm/dp/mst: Configure no_stop_bit correctly for remote i2c xfers
+ - ACPI / video: Extend chassis-type detection with a "Lunch Box" check
+ - bcache: fix potential div-zero error of writeback_rate_p_term_inverse
+ - [x86] kprobes: Blacklist non-attachable interrupt functions
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.35
+ - [x86] kvm: nVMX: NMI-window and interrupt-window exiting should wake L2
+ from HLT
+ - [powerpc*] tm: Limit TM code inside PPC_TRANSACTIONAL_MEM
+ - [x86] hv_netvsc: Fix unwanted wakeup after tx_disable
+ - ip6_tunnel: Match to ARPHRD_TUNNEL6 for dev type
+ - ipv6: Fix dangling pointer when ipv6 fragment
+ - ipv6: sit: reset ip header pointer in ipip6_rcv
+ - net: ethtool: not call vzalloc for zero sized memory request
+ - net-gro: Fix GRO flush when receiving a GSO packet.
+ - net/mlx5: Decrease default mr cache size
+ - netns: provide pure entropy for net_hash_mix()
+ - net: rds: force to destroy connection if t_sock is NULL in
+ rds_tcp_kill_sock().
+ - net/sched: act_sample: fix divide by zero in the traffic path
+ - net/sched: fix ->get helper of the matchall cls
+ - openvswitch: fix flow actions reallocation
+ - qmi_wwan: add Olicard 600
+ - r8169: disable ASPM again
+ - sctp: initialize _pad of sockaddr_in before copying to user memory
+ - tcp: Ensure DCTCP reacts to losses
+ - tcp: fix a potential NULL pointer dereference in tcp_sk_exit
+ - vrf: check accept_source_route on the original netdevice
+ - net/mlx5e: Fix error handling when refreshing TIRs
+ - net/mlx5e: Add a lock on tir list
+ - nfp: validate the return code from dev_queue_xmit()
+ - nfp: disable netpoll on representors
+ - bnxt_en: Improve RX consumer index validity check.
+ - bnxt_en: Reset device on RX buffer errors.
+ - net: ip_gre: fix possible use-after-free in erspan_rcv
+ - net: ip6_gre: fix possible use-after-free in ip6erspan_rcv
+ - net: core: netif_receive_skb_list: unlist skb before passing to pt->func
+ - r8169: disable default rx interrupt coalescing on RTL8168
+ (Closes: #925496)
+ - net: mlx5: Add a missing check on idr_find, free buf
+ - net/mlx5e: Update xoff formula
+ - net/mlx5e: Update xon formula
+ - kbuild: deb-pkg: fix bindeb-pkg breakage when O= is used
+ - netfilter: nfnetlink_cttimeout: pass default timeout policy to
+ obj_to_nlattr
+ - netfilter: nfnetlink_cttimeout: fetch timeouts for udplite and gre, too
+ - [arm64] kaslr: Reserve size of ARM64_MEMSTART_ALIGN in linear region
+ - [x86] tty: mark Siemens R3964 line discipline as BROKEN (CVE-2019-11486)
+ - tty: ldisc: add sysctl to prevent autoloading of ldiscs
+ - ACPICA: Clear status of GPEs before enabling them
+ - ACPICA: Namespace: remove address node from global list after method
+ termination
+ - ALSA: seq: Fix OOB-reads from strlcpy
+ - [x86] ALSA: hda/realtek: Enable headset MIC of Acer TravelMate B114-21
+ with ALC233
+ - [x86] ALSA: hda/realtek - Add quirk for Tuxedo XC 1509
+ - [x86] ALSA: hda - Add two more machines to the power_save_blacklist
+ - mm/huge_memory.c: fix modifying of page protection by insert_pfn_pmd()
+ - [arm64] dts: rockchip: fix rk3328 sdmmc0 write errors
+ - [hppa] Detect QEMU earlier in boot process
+ - [hppa] regs_return_value() should return gpr28
+ - [hppa] also set iaoq_b in instruction_pointer_set()
+ - alarmtimer: Return correct remaining time
+ - drm/udl: add a release method and delay modeset teardown
+ - [x86] kvm: svm: fix potential get_num_contig_pages overflow
+ - include/linux/bitrev.h: fix constant bitrev
+ - mm: writeback: use exact memcg dirty counts
+ - [x86] ASoC: intel: Fix crash at suspend/resume after failed codec
+ registration
+ - Btrfs: do not allow trimming when a fs is mounted with the nologreplay
+ option
+ - btrfs: prop: fix zstd compression parameter validation
+ - btrfs: prop: fix vanished compression property after failed set
+ - [riscv64] Fix syscall_get_arguments() and syscall_set_arguments()
+ - block: do not leak memory in bio_copy_user_iov()
+ - block: fix the return errno for direct IO
+ - genirq: Respect IRQCHIP_SKIP_SET_WAKE in irq_chip_set_wake_parent()
+ - genirq: Initialize request_mutex if CONFIG_SPARSE_IRQ=n
+ - virtio: Honour 'may_reduce_num' in vring_create_virtqueue
+ - [armhf] dts: rockchip: fix rk3288 cpu opp node reference
+ - [armhf] dts: am335x-evmsk: Correct the regulators for the audio codec
+ - [armhf] dts: am335x-evm: Correct the regulators for the audio codec
+ - [arm64] futex: Fix FUTEX_WAKE_OP atomic ops with non-zero result value
+ - [arm64] dts: rockchip: fix rk3328 rgmii high tx error rate
+ - [arm64] backtrace: Don't bother trying to unwind the userspace stack
+ - xen: Prevent buffer overflow in privcmd ioctl
+ - sched/fair: Do not re-read ->h_load_next during hierarchical load
+ calculation
+ - [x86] asm: Use stricter assembly constraints in bitops
+ - [x86] perf/amd: Resolve race condition when disabling PMC
+ - [x86] perf/amd: Resolve NMI latency issues for active PMCs
+ - [x86] perf/amd: Remove need to check "running" bit in NMI handler
+ - PCI: Add function 1 DMA alias quirk for Marvell 9170 SATA controller
+ - PCI: pciehp: Ignore Link State Changes after powering off a slot
+ - dm integrity: change memcmp to strncmp in dm_integrity_ctr
+ - dm: revert 8f50e358153d ("dm: limit the max bio size as BIO_MAX_PAGES *
+ PAGE_SIZE")
+ - dm table: propagate BDI_CAP_STABLE_WRITES to fix sporadic checksum errors
+ - dm integrity: fix deadlock with overlapping I/O
+ - [arm64] dts: rockchip: fix vcc_host1_5v pin assign on rk3328-rock64
+ - [arm64] dts: rockchip: Fix vcc_host1_5v GPIO polarity on rk3328-rock64
+ - ACPICA: AML interpreter: add region addresses in global list during
+ initialization
+ - [x86] KVM: nVMX: close leak of L0's x2APIC MSRs (CVE-2019-3887)
+ - [x86] KVM: nVMX: fix x2APIC VTPR read intercept
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.36
+ - inotify: Fix fsnotify_mark refcount leak in
+ inotify_update_existing_watch() (CVE-2019-9857)
+ - perf/core: Restore mmap record type correctly
+ - ext4: avoid panic during forced reboot
+ - ext4: add missing brelse() in add_new_gdb_meta_bg()
+ - ext4: report real fs size after failed resize
+ - ALSA: echoaudio: add a check for ioremap_nocache
+ - [i386,alpha] ALSA: sb8: add a check for request_region
+ - drm/udl: use drm_gem_object_put_unlocked.
+ - IB/mlx4: Fix race condition between catas error reset and aliasguid flows
+ - i40iw: Avoid panic when handling the inetdev event
+ - [i386,alpha] ALSA: opl3: fix mismatch between snd_opl3_drum_switch
+ definition and declaration
+ - [x86] thermal/intel_powerclamp: fix __percpu declaration of worker_data
+ - [arm*] thermal: bcm2835: Fix crash in bcm2835_thermal_debugfs
+ - [x86] thermal/int340x_thermal: Add additional UUIDs
+ - [x86] thermal/int340x_thermal: fix mode setting
+ - [x86] thermal/intel_powerclamp: fix truncated kthread name
+ - scsi: iscsi: flush running unbind operations when removing a session
+ - sched/cpufreq: Fix 32-bit math overflow
+ - sched/core: Fix buffer overflow in cgroup2 property cpu.max
+ - [x86] mm: Don't leak kernel addresses
+ - [x86] tools/power turbostat: return the exit status of a command
+ - perf list: Don't forget to drop the reference to the allocated thread_map
+ - perf config: Fix an error in the config template documentation
+ - perf config: Fix a memory leak in collect_config()
+ - perf build-id: Fix memory leak in print_sdt_events()
+ - perf top: Fix error handling in cmd_top()
+ - perf hist: Add missing map__put() in error case
+ - perf evsel: Free evsel->counts in perf_evsel__exit()
+ - ACPI / utils: Drop reference in test for device presence
+ - PM / Domains: Avoid a potential deadlock
+ - [armhf] drm/exynos/mixer: fix MIXER shadow registry synchronisation code
+ - [arm64] irqchip/mbigen: Don't clear eventid when freeing an MSI
+ - [x86] hpet: Prevent potential NULL pointer dereference
+ - [x86] hyperv: Prevent potential NULL pointer dereference
+ - [i386] cpu/cyrix: Use correct macros for Cyrix calls on Geode processors
+ - drm/nouveau/debugfs: Fix check of pm_runtime_get_sync failure
+ - [x86] iommu/vt-d: Check capability before disabling protected memory
+ - [x86] hw_breakpoints: Make default case in hw_breakpoint_arch_parse()
+ return an error
+ - fix incorrect error code mapping for OBJECTID_NOT_FOUND
+ - [x86] gart: Exclude GART aperture from kcore
+ - ext4: prohibit fstrim in norecovery mode
+ - drm/cirrus: Use drm_framebuffer_put to avoid kernel oops in clean-up
+ - rsi: improve kernel thread handling to fix kernel panic
+ - f2fs: fix to avoid NULL pointer dereference on se->discard_map
+ - 9p: do not trust pdu content for stat item size
+ - 9p locks: add mount option for lock retry interval
+ - ASoC: Fix UBSAN warning at snd_soc_get/put_volsw_sx()
+ - f2fs: fix to do sanity check with current segment number
+ - netfilter: xt_cgroup: shrink size of v2 path
+ - [arm64] serial: uartps: console_setup() can't be placed to init section
+ - [powerpc*] pseries: Remove prrn_work workqueue
+ - media: au0828: cannot kfree dev before usb disconnect
+ - Bluetooth: Fix debugfs NULL pointer dereference
+ - HID: i2c-hid: override HID descriptors for certain devices
+ - pinctrl: core: make sure strcmp() doesn't get a null parameter
+ - usbip: fix vhci_hcd controller counting
+ - [x86] ACPI / SBS: Fix GPE storm on recent MacBookPro's
+ - HID: usbhid: Add quirk for Redragon/Dragonrise Seymur 2
+ - [x86] KVM: nVMX: restore host state in nested_vmx_vmexit for VMFail
+ - netfilter: nf_flow_table: remove flowtable hook flush routine in netns
+ exit routine
+ - f2fs: cleanup dirty pages if recover failed
+ - [armhf,arm64] net: stmmac: Set OWN bit for jumbo frames
+ - cifs: fallback to older infolevels on findfirst queryinfo retry
+ - kernel: hung_task.c: disable on suspend
+ - drm/ttm: Fix bo_global and mem_global kfree error
+ - [x86] ALSA: hda: fix front speakers on Huawei MBXP
+ - ACPI: EC / PM: Disable non-wakeup GPEs for suspend-to-idle
+ - net/rds: fix warn in rds_message_alloc_sgs
+ - xfrm: destroy xfrm_state synchronously on net exit path
+ - net: ip6_gre: fix possible NULL pointer dereference in
+ ip6erspan_set_version
+ - [x86] iommu/dmar: Fix buffer overflow during PCI bus notification
+ - scsi: core: Avoid that system resume triggers a kernel warning
+ - [armhf,arm64] soc/tegra: pmc: Drop locking from
+ tegra_powergate_is_powered()
+ - Revert "ACPI / EC: Remove old CLEAR_ON_RESUME quirk"
+ - [arm64] coresight: cpu-debug: Support for CA73 CPUs
+ - [x86] PCI: Blacklist power management of Gigabyte X299 DESIGNARE EX PCIe
+ ports
+ - drm/nouveau/volt/gf117: fix speedo readout register
+ - [armel,armhf] 8839/1: kprobe: make patch_lock a raw_spinlock_t
+ - [x86] drm/amdkfd: use init_mqd function to allocate object for hid_mqd
+ (CI)
+ - appletalk: Fix use-after-free in atalk_proc_exit
+ - lib/div64.c: off by one in shift
+ - rxrpc: Fix client call connect/disconnect race
+ - f2fs: fix to dirty inode for i_mode recovery
+ - include/linux/swap.h: use offsetof() instead of custom __swapoffset macro
+ - bpf: fix use after free in bpf_evict_inode
+ - IB/hfi1: Failed to drain send queue when QP is put into error state
+ - mm: hide incomplete nr_indirectly_reclaimable in /proc/zoneinfo
+ - mm: hide incomplete nr_indirectly_reclaimable in sysfs
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.37
+ - bonding: fix event handling for stacked bonds
+ - failover: allow name change on IFF_UP slave interfaces
+ - net: atm: Fix potential Spectre v1 vulnerabilities (CVE-2017-5715)
+ - net: bridge: fix per-port af_packet sockets
+ - net: bridge: multicast: use rcu to access port list from
+ br_multicast_start_querier
+ - net: Fix missing meta data in skb with vlan packet
+ - net: fou: do not use guehdr after iptunnel_pull_offloads in gue_udp_recv
+ - tcp: tcp_grow_window() needs to respect tcp_space()
+ - team: set slave to promisc if team is already in promisc mode
+ - tipc: missing entries in name table of publications
+ - vhost: reject zero size iova range
+ - ipv4: recompile ip options in ipv4_link_failure
+ - ipv4: ensure rcu_read_lock() in ipv4_link_failure()
+ - [arm64] net: thunderx: raise XDP MTU to 1508
+ - [arm64] net: thunderx: don't allow jumbo frames with XDP
+ - net/mlx5: FPGA, tls, hold rcu read lock a bit longer
+ - net/mlx5: FPGA, tls, idr remove on flow delete
+ - route: Avoid crash from dereferencing NULL rt->from
+ - sch_cake: Use tc_skb_protocol() helper for getting packet protocol
+ - sch_cake: Make sure we can write the IP header before changing DSCP bits
+ - nfp: flower: replace CFI with vlan present
+ - nfp: flower: remove vlan CFI bit from push vlan action
+ - sch_cake: Simplify logic in cake_select_tin()
+ - net: IP defrag: encapsulate rbtree defrag code into callable functions
+ - net: IP6 defrag: use rbtrees for IPv6 defrag
+ - net: IP6 defrag: use rbtrees in nf_conntrack_reasm.c
+ - CIFS: keep FileInfo handle live during oplock break
+ - cifs: Fix use-after-free in SMB2_write
+ - cifs: Fix use-after-free in SMB2_read
+ - cifs: fix handle leak in smb2_query_symlink()
+ - [x86] KVM: Don't clear EFER during SMM transitions for 32-bit vCPU
+ - [x86] KVM: svm: make sure NMI is injected after nmi_singlestep
+ - [x86] iio/gyro/bmg160: Use millidegrees for temperature scale
+ - iio: Fix scan mask selection
+ - iio: core: fix a possible circular locking dependency
+ - [x86] iio: accel: kxcjk-1013: restore the range after resume.
+ - [x86] staging: comedi: vmk80xx: Fix use of uninitialized semaphore
+ - [x86] staging: comedi: vmk80xx: Fix possible double-free of ->usb_rx_buf
+ - [x86] staging: comedi: ni_usb6501: Fix use of uninitialized mutex
+ - [x86] staging: comedi: ni_usb6501: Fix possible double-free of
+ ->usb_rx_buf
+ - [x86] ALSA: hda/realtek - add two more pin configuration sets to quirk
+ table
+ - ALSA: core: Fix card races between register and disconnect
+ - [x86] Input: elan_i2c - add hardware ID for multiple Lenovo laptops
+ - vt: fix cursor when clearing the screen
+ - scsi: core: set result when the command cannot be dispatched
+ - Revert "scsi: fcoe: clear FC_RP_STARTED flags when receiving a LOGO"
+ - [x86] Revert "svm: Fix AVIC incomplete IPI emulation"
+ - coredump: fix race condition between mmget_not_zero()/get_task_mm() and
+ core dumping (CVE-2019-11599)
+ - ipmi: fix sleep-in-atomic in free_user at cleanup SRCU
+ user->release_barrier
+ - [x86] crypto: poly1305 - fix overflow during partial reduction
+ - drm/ttm: fix out-of-bounds read in ttm_put_pages() v2
+ - [arm64] futex: Restore oldval initialization to work around buggy
+ compilers
+ - [x86] kprobes: Verify stack frame on kretprobe
+ - kprobes: Mark ftrace mcount handler functions nokprobe
+ - kprobes: Fix error check when reusing optimized probes
+ - rt2x00: do not increment sequence number while re-transmitting
+ - mac80211: do not call driver wake_tx_queue op during reconfig
+ - drm/amdgpu/gmc9: fix VM_L2_CNTL3 programming
+ - [x86] perf/amd: Add event map for AMD Family 17h
+ - [x86] cpu/bugs: Use __initconst for 'const' init data
+ - [x86] perf: Fix incorrect PEBS_REGS
+ - [x86] speculation: Prevent deadlock on ssb_state::lock
+ - timers/sched_clock: Prevent generic sched_clock wrap caused by
+ tick_freeze()
+ - nfit/ars: Remove ars_start_flags
+ - nfit/ars: Introduce scrub_flags
+ - nfit/ars: Allow root to busy-poll the ARS state machine
+ - nfit/ars: Avoid stale ARS results
+ - mmc: sdhci: Fix data command CRC error handling
+ - mmc: sdhci: Handle auto-command errors
+ - modpost: file2alias: go back to simple devtable lookup
+ - modpost: file2alias: check prototype of handler
+ - [x86] tpm/tpm_i2c_atmel: Return -E2BIG when the transfer is incomplete
+ - tpm: Fix the type of the return value in calc_tpm2_event_size()
+ - sched/fair: Limit sched_cfs_period_timer() loop to avoid hard lockup
+ - device_cgroup: fix RCU imbalance in error case
+ - ALSA: info: Fix racy addition/deletion of nodes
+ - [armhf] ASoC: rockchip: add missing INTERLEAVED PCM attribute
+ - i2c-hid: properly terminate i2c_hid_dmi_desc_override_table[] array
+ - kernel/sysctl.c: fix out-of-bounds access when setting file-max
+
+ [ Ben Hutchings ]
+ * debian/bin/abiupdate.py: Automatically select the correct archive to fetch
+ from
+ * debian/bin/abiupdate.py: Change default URLs to use https: scheme
+ * [powerpc*] vdso: Make vdso32 installation conditional in vdso_install
+ (Closes: #785065)
+ * Bump ABI to 5
+ * [rt] Add new signing subkey for Steven Rostedt
+ * [rt] Update to 4.19.31-rt18 (no functional change)
+ * [armhf,arm64] Revert "net: stmmac: Send TSO packets always from Queue 0"
+ * [riscv64] linux-image-dbg: Include vdso debug symbols
+ * [ia64] linux-image: Recommend grub-efi-ia64 instead of (removed) elilo
+ * [armel/marvell] Disable HW_RANDOM as no HWRNG drivers are usable here
+ * udeb: Add all HWRNG drivers to kernel-image (see #923675)
+ * lockdown: Refer to Debian wiki until manual page exists
+ * [sparc64] linux-image: Recommend grub-ieee1275 instead of (removed) silo
+ * [sparc64] linux-image: Install uncompressed kernel image
+ * [powerpc,ppc64,ppc64el] linux-image: Recommend grub-ieee1275
+ * [i386] Add grub-efi-ia32 as an alternate recommended bootloader
+ * linux-source: Recommend bison and flex, always needed to build the kernel
+ * [armel/marvell,sh4] linux-image: Recommend apparmor, like all other configs
+ * udeb: Drop unused ntfs-modules packages
+ * ntfs: Disable NTFS_FS due to lack of upstream security support
+ (CVE-2018-12929, CVE-2018-12930, CVE-2018-12931)
+ * [x86] platform: Enable INTEL_ATOMISP2_PM as module
+ * drivers/firmware/google: Adjust configuration for 4.19
+ * MODSIGN: Make shash allocation failure fatal
+ * aio: Apply fixes from 4.19.38:
+ - aio: clear IOCB_HIPRI
+ - aio: use assigned completion handler
+ - aio: separate out ring reservation from req allocation
+ - aio: don't zero entire aio_kiocb aio_get_req()
+ - aio: use iocb_put() instead of open coding it
+ - aio: split out iocb copy from io_submit_one()
+ - aio: abstract out io_event filler helper
+ - aio: initialize kiocb private in case any filesystems expect it.
+ - aio: simplify - and fix - fget/fput for io_submit() (CVE-2019-10125)
+ - pin iocb through aio.
+ - aio: fold lookup_kiocb() into its sole caller
+ - aio: keep io_event in aio_kiocb
+ - aio: store event at final iocb_put()
+ - Fix aio_poll() races
+ * tracing: Fix buffer_ref pipe ops
+ * mm,fs: Prevent page refcount overflow (CVE-2019-11487):
+ - mm: make page ref count overflow check tighter and more explicit
+ - mm: add 'try_get_page()' helper function
+ - mm: prevent get_user_pages() from overflowing page refcount
+ - fs: prevent page refcount overflow in pipe_buf_get
+
+ [ YunQiang Su ]
+ * [mips*r6] Re-enable CONFIG_JUMP_LABEL, which has been fixed in upstream.
+
+ [ Stefan Fritsch ]
+ * [armhf] Enable SND_SOC_SPDIF for Cubietruck (Closes: #884562)
+
+ [ Luca Boccassi ]
+ * libbpf-dev: generate pkg-config file for libbpf by backporting
+ libbpf-generate-pkg-config.patch from bpf-next.
+ * Import patches to enable loading keys from UEFI db and MOK from
+ http://git.kernel.org/cgit/linux/kernel/git/dhowells/linux-fs.git to
+ allow kernel modules built by users (eg: by dkms) to be verified, and
+ to load dbx and MOKX for the equivalent blacklisting functionality.
+
+ [ Bastian Blank ]
+ * Don't longer recommend irqbalance. (closes: #926967)
+
+ [ Salvatore Bonaccorso ]
+ * xen/pciback: Don't disable PCI_COMMAND on PCI device reset.
+ (CVE-2015-8553)
+ * [x86] Disable R3964 due to lack of security support
+ * [amd64,arm64] vfio/type1: Limit DMA mappings per container (CVE-2019-3882)
+
+ [ Aurelien Jarno ]
+ * [mips] Fix indirect syscall tracing & seccomp filtering for big endian
+ MIPS64 kernels with 32-bit userland.
+
+ [ Romain Perier ]
+ * [rt] Update to 4.19.37-rt19
+ * Enable coreboot memconsole (Closes: #872069)
+
+ [ Uwe Kleine-König ]
+ * [armhf] Disable MVNETA_BM_ENABLE again as it break networking on
+ DB-MV784MP-GP. Thanks to Steve McIntyre for providing access such a
+ machine for testing. (Closes: #927825)
+
+ [ Alper Nebi Yasak ]
+ * [arm64] Enable configs for Samsung Chromebook Plus (v1) and other
+ rk3399-gru based devices:
+ - Enable PL330_DMA, CROS_EC_SPI, SPI_ROCKCHIP as modules.
+ - Enable EXTCON_USBC_CROS_EC, PHY_ROCKCHIP_TYPEC, PHY_ROCKCHIP_USB as
+ modules.
+ - Enable KEYBOARD_CROS_EC as module.
+ - Enable PWM_CROS_EC, PHY_ROCKCHIP_DP as modules and enable ROCKCHIP_CDN_DP
+ - Enable SND_SOC_ROCKCHIP, SND_SOC_ROCKCHIP_I2S, SND_SOC_ROCKCHIP_SPDIF,
+ SND_SOC_ROCKCHIP_RT5645, SND_SOC_RK3399_GRU_SOUND as modules.
+ - Enable INPUT_TOUCHSCREEN, enable TOUCHSCREEN_ATMEL_MXT as module, and
+ enable TOUCHSCREEN_ATMEL_MXT_T37.
+ - Enable TOUCHSCREEN_ELAN, MOUSE_ELAN_I2C as modules.
+ - Enable I2C_HID as module.
+ - Enable MWIFIEX, MWIFIEX_PCIE as modules.
+ - Enable TCG_TPM, TCG_TIS_I2C_INFINEON as modules.
+ - Enable PM_DEVFREQ_EVENT, enable DEVFREQ_EVENT_ROCKCHIP_DFI and
+ ARM_RK3399_DMC_DEVFREQ as modules.
+ - Enable REGULATOR_VCTRL as module.
+ - Enable MFD_CROS_EC_CHARDEV, IIO_CROS_EC_ACCEL_LEGACY,
+ IIO_CROS_EC_SENSORS_CORE, IIO_CROS_EC_SENSORS, IIO_CROS_EC_LIGHT_PROX,
+ IIO_CROS_EC_BARO, RTC_DRV_CROS_EC as modules.
+ - Enable BATTERY_SBS, CHARGER_CROS_USBPD as modules.
+
+ [ Vagrant Cascadian ]
+ * debian/bin/gencontrol_signed.py: Sort list of modules before adding to
+ .json file, fixing reproducibility issues.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 05 May 2019 19:32:32 +0100
+
+linux (4.19.28-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [x86,alpha,m68k] binfmt: Disable BINFMT_AOUT, IA32_AOUT, OSF4_COMPAT
+ * [x86] Drop fix for #865303, which no longer affects Debian's OpenJDK
+ * udeb: Make serial_cs optional in serial-modules
+ * [ppc64el] Disable PCMCIA (fixes FTBFS)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable DRM_SUN4I and DRM_SUN8I_DW_HDMI as modules.
+ * [arm64] Enable I2C_GPIO as a module.
+ * [arm64] Enable MESON_EFUSE as a module.
+
+ [ Yves-Alexis Perez ]
+ * certs: include both root CA and direct signing certificate.
+ closes: #924545
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 15 Mar 2019 02:16:04 +0000
+
+linux (4.19.28-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.21
+ - devres: Align data[] to ARCH_KMALLOC_MINALIGN
+ - drm/bufs: Fix Spectre v1 vulnerability
+ - drm/vgem: Fix vgem_init to get drm device available.
+ - [arm*] pinctrl: bcm2835: Use raw spinlock for RT compatibility
+ - [x86] ASoC: Intel: mrfld: fix uninitialized variable access
+ - gpiolib: Fix possible use after free on label
+ - [armhf] drm/sun4i: Initialize registers in tcon-top driver
+ - genirq/affinity: Spread IRQs to all available NUMA nodes
+ - [armhf] gpu: ipu-v3: image-convert: Prevent race between run and
+ unprepare
+ - wil6210: fix reset flow for Talyn-mb
+ - wil6210: fix memory leak in wil_find_tx_bcast_2
+ - ath10k: assign 'n_cipher_suites' for WCN3990
+ - ath9k: dynack: use authentication messages for 'late' ack
+ - scsi: lpfc: Correct LCB RJT handling
+ - scsi: mpt3sas: Call sas_remove_host before removing the target devices
+ - scsi: lpfc: Fix LOGO/PLOGI handling when triggerd by ABTS Timeout event
+ - [armhf] 8808/1: kexec:offline panic_smp_self_stop CPU
+ - [mips] clk: boston: fix possible memory leak in clk_boston_setup()
+ - dlm: Don't swamp the CPU with callbacks queued during recovery
+ - [x86] PCI: Fix Broadcom CNB20LE unintended sign extension (redux)
+ - [powerpc] pseries: add of_node_put() in dlpar_detach_node()
+ - [arm*] drm/vc4: ->x_scaling[1] should never be set to VC4_SCALING_NONE
+ - ptp: check gettime64 return code in PTP_SYS_OFFSET ioctl
+ - [mips] Boston: Disable EG20T prefetch
+ - iwlwifi: fw: do not set sgi bits for HE connection
+ - fpga: altera-cvp: Fix registration for CvP incapable devices
+ - [x86] fpga: altera-cvp: fix 'bad IO access' on x86_64
+ - [x86] vbox: fix link error with 'gcc -Og'
+ - platform/chrome: don't report EC_MKBP_EVENT_SENSOR_FIFO as wakeup
+ - i40e: prevent overlapping tx_timeout recover
+ - scsi: hisi_sas: change the time of SAS SSP connection
+ - usbnet: smsc95xx: fix rx packet alignment
+ - [armhf,arm64] drm/rockchip: fix for mailbox read size
+ - [arm*] OMAP2+: hwmod: Fix some section annotations
+ - drm/amd/display: fix gamma not being applied correctly
+ - drm/amd/display: calculate stream->phy_pix_clk before clock mapping
+ - bpf: libbpf: retry map creation without the name
+ - net/mlx5: EQ, Use the right place to store/read IRQ affinity hint
+ - modpost: validate symbol names also in find_elf_symbol
+ - perf tools: Add Hygon Dhyana support
+ - [armhf] soc/tegra: Don't leak device tree node reference
+ - media: rc: ensure close() is called on rc_unregister_device
+ - media: video-i2c: avoid accessing released memory area when removing
+ driver
+ - [armhf] media: mtk-vcodec: Release device nodes in
+ mtk_vcodec_init_enc_pm()
+ - ptp: Fix pass zero to ERR_PTR() in ptp_clock_register
+ - dmaengine: xilinx_dma: Remove __aligned attribute on zynqmp_dma_desc_ll
+ - [powerpc] 32: Add .data..Lubsan_data*/.data..Lubsan_type* sections
+ explicitly
+ - media: adv*/tc358743/ths8200: fill in min width/height/pixelclock
+ - ACPI: SPCR: Consider baud rate 0 as preconfigured state
+ - f2fs: move dir data flush to write checkpoint process
+ - f2fs: fix race between write_checkpoint and write_begin
+ - f2fs: fix wrong return value of f2fs_acl_create
+ - [arm64] io: Ensure calls to delay routines are ordered against prior
+ readX()
+ - net: aquantia: return 'err' if set MPI_DEINIT state fails
+ - [sparc*] sunvdc: Do not spin in an infinite loop when vio_ldc_send()
+ returns EAGAIN
+ - nfsd4: fix crash on writing v4_end_grace before nfsd startup
+ - drm: Clear state->acquire_ctx before leaving
+ drm_atomic_helper_commit_duplicated_state()
+ - [arm64] io: Ensure value passed to __iormb() is held in a 64-bit register
+ - Thermal: do not clear passive state during system sleep
+ - thermal: Fix locking in cooling device sysfs update cur_state
+ - firmware/efi: Add NULL pointer checks in efivars API functions
+ - [s390] zcrypt: improve special ap message cmd handling
+ - [arm64] ftrace: don't adjust the LR value
+ - [x86] fpu: Add might_fault() to user_insn()
+ - usb: dwc3: Correct the logic for checking TRB full in
+ __dwc3_prepare_one_trb()
+ - usb: dwc2: Disable power down feature on Samsung SoCs
+ - usb: hub: delay hub autosuspend if USB3 port is still link training
+ - timekeeping: Use proper seqcount initializer
+ - usb: mtu3: fix the issue about SetFeature(U1/U2_Enable)
+ - [armhf] clk: sunxi-ng: a33: Set CLK_SET_RATE_PARENT for all audio module
+ clocks
+ - media: imx274: select REGMAP_I2C
+ - drm/amdgpu/powerplay: fix clock stretcher limits on polaris (v2)
+ - tipc: fix node keep alive interval calculation
+ - driver core: Move async_synchronize_full call
+ - kobject: return error code if writing /sys/.../uevent fails
+ - IB/hfi1: Unreserve a reserved request when it is completed
+ - usb: dwc3: trace: add missing break statement to make compiler happy
+ - [mips] gpio: mt7621: report failure of devm_kasprintf()
+ - [mips] gpio: mt7621: pass mediatek_gpio_bank_probe() failure up the stack
+ - [x86] iommu/amd: Fix amd_iommu=force_isolation
+ - [armhf] dts: Fix OMAP4430 SDP Ethernet startup
+ - [mips] bpf: fix encoding bug for mm_srlv32_op
+ - media: coda: fix H.264 deblocking filter controls
+ - [armel] dts: Fix up the D-Link DIR-685 MTD partition info
+ - watchdog: renesas_wdt: don't set divider while watchdog is running
+ - [armhf] dts: imx51-zii-rdu1: Do not specify "power-gpio" for hpa1
+ - usb: dwc3: gadget: Disable CSP for stream OUT ep
+ - [arm64] iommu/arm-smmu-v3: Avoid memory corruption from Hisilicon MSI
+ payloads
+ - [arm64] iommu/arm-smmu: Add support for qcom,smmu-v2 variant
+ - [arm64] iommu/arm-smmu-v3: Use explicit mb() when moving cons pointer
+ - [armhf] clk: imx6sl: ensure MMDC CH0 handshake is bypassed
+ - OPP: Use opp_table->regulators to verify no regulator case
+ - [arm64] tee: optee: avoid possible double list_del()
+ - [arm64] drm/msm/dsi: fix dsi clock names in DSI 10nm PLL driver
+ - [arm64] drm/msm: dpu: Only check flush register against pending flushes
+ - lightnvm: pblk: fix resubmission of overwritten write err lbas
+ - lightnvm: pblk: add lock protection to list operations
+ - i2c-axxia: check for error conditions first
+ - [armhf] phy: sun4i-usb: add support for missing USB PHY index
+ - udf: Fix BUG on corrupted inode
+ - selftests/bpf: use __bpf_constant_htons in test_prog.c
+ - [armel] pxa: avoid section mismatch warning
+ - [armhf] ASoC: fsl: Fix SND_SOC_EUKREA_TLV320 build error on i.MX8M
+ - [powerpc] KVM: Book3S: Only report KVM_CAP_SPAPR_TCE_VFIO on powernv
+ machines
+ - [arm*] mmc: bcm2835: Recover from MMC_SEND_EXT_CSD
+ - [arm*] mmc: bcm2835: reset host on timeout
+ - memstick: Prevent memstick host from getting runtime suspended during
+ card detection
+ - [arm64] mmc: sdhci-xenon: Fix timeout checks
+ - btrfs: harden agaist duplicate fsid on scanned devices
+ - serial: sh-sci: Fix locking in sci_submit_rx()
+ - serial: sh-sci: Resume PIO in sci_rx_interrupt() on DMA failure
+ - tty: serial: samsung: Properly set flags in autoCTS mode
+ - perf test: Fix perf_event_attr test failure
+ - perf dso: Fix unchecked usage of strncpy()
+ - perf header: Fix unchecked usage of strncpy()
+ - btrfs: use tagged writepage to mitigate livelock of snapshot
+ - perf probe: Fix unchecked usage of strncpy()
+ - i2c: sh_mobile: Add support for r8a774c0 (RZ/G2E)
+ - bnxt_en: Disable MSIX before re-reserving NQs/CMPL rings.
+ - [x86] tools/power/x86/intel_pstate_tracer: Fix non root execution for
+ post processing a trace file
+ - livepatch: check kzalloc return values
+ - [arm64] KVM: Skip MMIO insn after emulation
+ - usb: musb: dsps: fix otg state machine
+ - usb: musb: dsps: fix runtime pm for peripheral mode
+ - perf header: Fix up argument to ctime()
+ - perf tools: Cast off_t to s64 to avoid warning on bionic libc
+ - percpu: convert spin_lock_irq to spin_lock_irqsave.
+ - [arm64] net: hns3: fix incomplete uninitialization of IRQ in the
+ hns3_nic_uninit_vector_data()
+ - drm/amd/display: Add retry to read ddc_clock pin
+ - Bluetooth: hci_bcm: Handle deferred probing for the clock supply
+ - drm/amd/display: fix YCbCr420 blank color
+ - [powerpc] uaccess: fix warning/error with access_ok()
+ - mac80211: fix radiotap vendor presence bitmap handling
+ - xfrm6_tunnel: Fix spi check in __xfrm6_tunnel_alloc_spi
+ - scsi: smartpqi: correct host serial num for ssa
+ - scsi: smartpqi: correct volume status
+ - scsi: smartpqi: increase fw status register read timeout
+ - cw1200: Fix concurrency use-after-free bugs in cw1200_hw_scan()
+ - [arm64] net: hns3: add max vector number check for pf
+ - [powerpc] perf: Fix thresholding counter data for unknown type
+ - iwlwifi: mvm: fix setting HE ppe FW config
+ - [powerpc] powernv/ioda: Allocate indirect TCE levels of cached userspace
+ addresses on demand
+ - mlx5: update timecounter at least twice per counter overflow
+ - drbd: narrow rcu_read_lock in drbd_sync_handshake
+ - drbd: disconnect, if the wrong UUIDs are attached on a connected peer
+ - drbd: skip spurious timeout (ping-timeo) when failing promote
+ - drbd: Avoid Clang warning about pointless switch statment
+ - drm/amd/display: validate extended dongle caps
+ - md: fix raid10 hang issue caused by barrier
+ - fbdev: fbmem: behave better with small rotated displays and many CPUs
+ - i40e: define proper net_device::neigh_priv_len
+ - ice: Do not enable NAPI on q_vectors that have no rings
+ - igb: Fix an issue that PME is not enabled during runtime suspend
+ - ACPI/APEI: Clear GHES block_status before panic()
+ - fbdev: fbcon: Fix unregister crash when more than one framebuffer
+ - [powerpc] mm: Fix reporting of kernel execute faults on the 8xx
+ - [x86] KVM: svm: report MSR_IA32_MCG_EXT_CTL as unsupported
+ - [powerpc] fadump: Do not allow hot-remove memory from fadump reserved
+ area.
+ - kvm: Change offset in kvm_write_guest_offset_cached to unsigned
+ - NFS: nfs_compare_mount_options always compare auth flavors.
+ - perf build: Don't unconditionally link the libbfd feature test to
+ -liberty and -lz
+ - hwmon: (lm80) fix a missing check of the status of SMBus read
+ - hwmon: (lm80) fix a missing check of bus read in lm80 probe
+ - seq_buf: Make seq_buf_puts() null-terminate the buffer
+ - cifs: check ntwrk_buf_start for NULL before dereferencing it
+ - f2fs: fix use-after-free issue when accessing sbi->stat_info
+ - niu: fix missing checks of niu_pci_eeprom_read
+ - f2fs: fix sbi->extent_list corruption issue
+ - cgroup: fix parsing empty mount option string
+ - perf python: Do not force closing original perf descriptor in
+ evlist.get_pollfd()
+ - scripts/decode_stacktrace: only strip base path when a prefix of the path
+ - arch/sh/boards/mach-kfr2r09/setup.c: fix struct mtd_oob_ops build warning
+ - ocfs2: don't clear bh uptodate for block read
+ - ocfs2: improve ocfs2 Makefile
+ - mm/page_alloc.c: don't call kasan_free_pages() at deferred mem init
+ - zram: fix lockdep warning of free block handling
+ - isdn: hisax: hfc_pci: Fix a possible concurrency use-after-free bug in
+ HFCPCI_l1hw()
+ - [m68k] block/swim3: Fix -EBUSY error when re-opening device after unmount
+ - [arm*] thermal: bcm2835: enable hwmon explicitly
+ - [armhf] PCI: imx: Enable MSI from downstream components
+ - thermal: generic-adc: Fix adc to temp interpolation
+ - [arm64] sve: ptrace: Fix SVE_PT_REGS_OFFSET definition
+ - kernel/hung_task.c: break RCU locks based on jiffies
+ - proc/sysctl: fix return error for proc_doulongvec_minmax()
+ - kernel/hung_task.c: force console verbose before panic
+ - fs/epoll: drop ovflist branch prediction
+ - exec: load_script: don't blindly truncate shebang string
+ - xfs: Fix xqmstats offsets in /proc/fs/xfs/xqmstat
+ - xfs: cancel COW blocks before swapext
+ - xfs: Fix error code in 'xfs_ioc_getbmap()'
+ - xfs: fix overflow in xfs_attr3_leaf_verify
+ - xfs: fix shared extent data corruption due to missing cow reservation
+ - xfs: fix transient reference count error in
+ xfs_buf_resubmit_failed_buffers
+ - xfs: delalloc -> unwritten COW fork allocation can go wrong
+ - fs/xfs: fix f_ffree value for statfs when project quota is set
+ - xfs: fix PAGE_MASK usage in xfs_free_file_space
+ - xfs: fix inverted return from xfs_btree_sblock_verify_crc
+ - thermal: hwmon: inline helpers when CONFIG_THERMAL_HWMON is not set
+ - dccp: fool proof ccid_hc_[rt]x_parse_options()
+ - enic: fix checksum validation for IPv6
+ - lib/test_rhashtable: Make test_insert_dup() allocate its hash table
+ dynamically
+ - net: dsa: Fix lockdep false positive splat
+ - net: dsa: Fix NULL checking in dsa_slave_set_eee()
+ - [armhf,arm64] net: dsa: mv88e6xxx: Fix counting of ATU violations
+ - net: dsa: slave: Don't propagate flag changes on down slave interfaces
+ - net/mlx5e: Force CHECKSUM_UNNECESSARY for short ethernet frames
+ - rds: fix refcount bug in rds_sock_addref
+ - Revert "net: phy: marvell: avoid pause mode on SGMII-to-Copper for
+ 88e151x"
+ - rxrpc: bad unlock balance in rxrpc_recvmsg
+ - sctp: check and update stream->out_curr when allocating stream_out
+ - sctp: walk the list of asoc safely (CVE-2019-8956)
+ - skge: potential memory corruption in skge_get_regs()
+ - virtio_net: Account for tx bytes and packets on sending xdp_frames
+ - net/mlx5e: FPGA, fix Innova IPsec TX offload data path performance
+ - xfs: eof trim writeback mapping as soon as it is cached
+ - ALSA: compress: Fix stop handling on compressed capture streams
+ - ALSA: usb-audio: Add support for new T+A USB DAC
+ - ALSA: hda - Serialize codec registrations
+ - ALSA: hda/realtek - Fix lose hp_pins for disable auto mute
+ - ALSA: hda/realtek - Use a common helper for hp pin reference
+ - ALSA: hda/realtek - Headset microphone support for System76 darp5
+ - fuse: call pipe_buf_release() under pipe lock
+ - fuse: decrement NR_WRITEBACK_TEMP on the right page
+ - fuse: handle zero sized retrieve correctly
+ - [arm*] dmaengine: bcm2835: Fix interrupt race on RT
+ - [arm*] dmaengine: bcm2835: Fix abort of transactions
+ - [armhf] dmaengine: imx-dma: fix wrong callback invoke
+ - futex: Handle early deadlock return correctly
+ - [arm64] irqchip/gic-v3-its: Plug allocation race for devices sharing a
+ DevID
+ - [armhf] usb: phy: am335x: fix race condition in _probe
+ - usb: dwc3: gadget: Handle 0 xfer length for OUT EP
+ - usb: gadget: udc: net2272: Fix bitwise and boolean operations
+ - usb: gadget: musb: fix short isoc packets with inventra dma
+ - staging: speakup: fix tty-operation NULL derefs
+ - scsi: cxlflash: Prevent deadlock when adapter probe fails
+ - scsi: aic94xx: fix module loading
+ - cpu/hotplug: Fix "SMT disabled by BIOS" detection for KVM
+ - [x86] perf/x86/intel/uncore: Add Node ID mask
+ - [x86] MCE: Initialize mce.bank in the case of a fatal error in
+ mce_no_way_out()
+ - perf/core: Don't WARN() for impossible ring-buffer sizes
+ - perf tests evsel-tp-sched: Fix bitwise operator
+ - serial: fix race between flush_to_ldisc and tty_open
+ - serial: 8250_pci: Make PCI class test non fatal
+ - serial: sh-sci: Do not free irqs that have already been freed
+ - cacheinfo: Keep the old value if of_property_read_u32 fails
+ - IB/hfi1: Add limit test for RC/UC send via loopback
+ - [x86] perf/x86/intel: Delay memory deallocation until x86_pmu_dead_cpu()
+ - ath9k: dynack: make ewma estimation faster
+ - ath9k: dynack: check da->enabled first in sampling routines
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.22
+ - mtd: Make sure mtd->erasesize is valid even if the partition is of size 0
+ - mtd: rawnand: gpmi: fix MX28 bus master lockup problem
+ - libata: Add NOLPM quirk for SAMSUNG MZ7TE512HMHP-000L1 SSD
+ - [armhf, arm64] iio: adc: axp288: Fix TS-pin handling
+ - signal: Always notice exiting tasks
+ - signal: Better detection of synchronous signals
+ - [armhf, arm64] misc: vexpress: Off by one in vexpress_syscfg_exec()
+ - [x86] mei: me: add ice lake point device id.
+ - debugfs: fix debugfs_rename parameter checking
+ - [arm64] pinctrl: sunxi: Correct number of IRQ banks on H6 main pin
+ controller
+ - [x86] pinctrl: cherryview: fix Strago DMI workaround
+ - tracing: uprobes: Fix typo in pr_fmt string
+ - [mips*] cm: reprime error cause
+ - [mips*] OCTEON: don't set octeon_dma_bar_type if PCI is disabled
+ - [mips*] VDSO: Use same -m%-float cflag as the kernel proper
+ - [mips*] loongson64: remove unreachable(), fix loongson_poweroff().
+ - [mips*] VDSO: Include $(ccflags-vdso) in o32,n32 .lds builds
+ - [arm64] firmware: arm_scmi: provide the mandatory device release callback
+ - [powerpc*] radix: Fix kernel crash with mremap()
+ - [amd64] mic: vop: Fix use-after-free on remove
+ - mac80211: ensure that mgmt tx skbs have tailroom for encryption
+ - drm/modes: Prevent division by zero htotal
+ - drm/amd/powerplay: Fix missing break in switch
+ - [x86] drm/i915: always return something on DDI clock selection
+ - [x86] drm/vmwgfx: Fix setting of dma masks
+ - [x86] drm/vmwgfx: Return error code from vmw_execbuf_copy_fence_user
+ - SUNRPC: Always drop the XPRT_LOCK on XPRT_CLOSE_WAIT
+ - xfrm: Make set-mark default behavior backward compatible
+ - Revert "ext4: use ext4_write_inode() when fsyncing w/o a journal"
+ - libceph: avoid KEEPALIVE_PENDING races in ceph_con_keepalive()
+ - xfrm: refine validation of template and selector families
+ - batman-adv: Avoid WARN on net_device without parent in netns
+ - batman-adv: Force mac header to start of data on xmit
+ - svcrdma: Reduce max_send_sges
+ - svcrdma: Remove max_sge check at connect time
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.23
+ - Revert "exec: load_script: don't blindly truncate shebang string"
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.24
+ - dt-bindings: eeprom: at24: add "atmel,24c2048" compatible string
+ - eeprom: at24: add support for 24c2048
+ - blk-mq: fix a hung issue when fsync (Closes: #913119, #913138)
+ - [armel, armhf] 8789/1: signal: copy registers using __copy_to_user()
+ - [armel, armhf] 8790/1: signal: always use __copy_to_user to save iwmmxt
+ context
+ - [armel, armhf] 8791/1: vfp: use __copy_to_user() when saving VFP state
+ - [armel, armhf] 8792/1: oabi-compat: copy oabi events using
+ __copy_to_user()
+ - [armel, armhf] 8793/1: signal: replace __put_user_error with __put_user
+ - [armel, armhf] 8794/1: uaccess: Prevent speculative use of the current
+ addr_limit
+ - [armel, armhf] 8795/1: spectre-v1.1: use put_user() for __put_user()
+ - [armel, armhf] 8796/1: spectre-v1,v1.1: provide helpers for address
+ sanitization
+ - [armel, armhf] 8797/1: spectre-v1.1: harden __copy_to_user
+ - [armel, armhf] 8810/1: vfp: Fix wrong assignement to ufp_exc
+ - [armel, armhfl armhf] make lookup_processor_type() non-__init
+ - [armel, armhf] split out processor lookup
+ - [armel, armhf] clean up per-processor check_bugs method call
+ - [armel, armhf] add PROC_VTABLE and PROC_TABLE macros
+ - [armel, armhf] spectre-v2: per-CPU vtables to work around big.Little
+ systems
+ - [armel, armhf] ensure that processor vtables is not lost after boot
+ - [armel, armhf] fix the cockup in the previous patch
+ - drm/amdgpu/sriov:Correct pfvf exchange logic
+ - [i386] ACPI: NUMA: Use correct type for printing addresses on i386-PAE
+ - perf report: Fix wrong iteration count in --branch-history
+ - perf test shell: Use a fallback to get the pathname in vfs_getname
+ - [riscv64] riscv: fix trace_sys_exit hook
+ - cpufreq: check if policy is inactive early in __cpufreq_get()
+ - nvme-pci: use the same attributes when freeing host_mem_desc_bufs.
+ - nvme-pci: fix out of bounds access in nvme_cqe_pending
+ - nvme-multipath: zero out ANA log buffer
+ - nvme: pad fake subsys NQN vid and ssvid with zeros
+ - drm/amdgpu: set WRITE_BURST_LENGTH to 64B to workaround SDMA1 hang
+ - [armel] dts: kirkwood: Fix polarity of GPIO fan lines
+ - [armel, armhf] gpio: pl061: handle failed allocations
+ - drm/nouveau: Don't disable polling in fallback mode
+ - drm/nouveau/falcon: avoid touching registers if engine is off
+ - cifs: Limit memory used by lock request calls to a page
+ - [x86] kvm: sev: Fail KVM_SEV_INIT if already initialized
+ - CIFS: Do not assume one credit for async responses
+ - [arm*] gpio: mxc: move gpio noirq suspend/resume to syscore phase
+ - [x86] Revert "Input: elan_i2c - add ACPI ID for touchpad in ASUS Aspire
+ F5-573G"
+ - [x86] Input: elan_i2c - add ACPI ID for touchpad in Lenovo V330-15ISK
+ - [armhf] OMAP5+: Fix inverted nirq pin interrupts with irq_set_type
+ - perf/core: Fix impossible ring-buffer sizes warning
+ - [x86] perf: Add check_period PMU callback
+ - [x86] ALSA: hda - Add quirk for HP EliteBook 840 G5
+ - ALSA: usb-audio: Fix implicit fb endpoint setup by quirk
+ - ASoC: hdmi-codec: fix oops on re-probe
+ - [alpha] tools uapi: fix Alpha support
+ - [riscv64] Add pte bit to distinguish swap from invalid
+ - [x86] kvm/nVMX: read from MSR_IA32_VMX_PROCBASED_CTLS2 only when it is
+ available
+ - [x86] kvm: vmx: Fix entry number check for add_atomic_switch_msr()
+ - [arm*] mmc: sunxi: Filter out unsupported modes declared in the device
+ tree
+ - mmc: block: handle complete_work on separate workqueue
+ - [x86] Input: elantech - enable 3rd button support on Fujitsu CELSIUS H780
+ - Revert "nfsd4: return default lease period"
+ - Revert "mm: don't reclaim inodes with many attached pages"
+ - Revert "mm: slowly shrink slabs with a relatively small number of
+ objects"
+ - [alpha] fix page fault handling for r16-r18 targets
+ - [alpha] Fix Eiger NR_IRQS to 128
+ - [s390*] zcrypt: fix specification exception on z196 during ap probe
+ - tracing/uprobes: Fix output for multiple string arguments
+ - [x86] platform/UV: Use efi_runtime_lock to serialise BIOS calls
+ - scsi: sd: fix entropy gathering for most rotational disks
+ - signal: Restore the stop PTRACE_EVENT_EXIT
+ - md/raid1: don't clear bitmap bits on interrupted recovery.
+ - [x86] a.out: Clear the dump structure initially
+ - dm crypt: don't overallocate the integrity tag space
+ - dm thin: fix bug where bio that overwrites thin block ignores FUA
+ - drm: Use array_size() when creating lease
+ - [x86] drm/i915: Block fbdev HPD processing during suspend
+ - [x86] drm/i915: Prevent a race during I915_GEM_MMAP ioctl with WC set
+ - mm: proc: smaps_rollup: fix pss_locked calculation
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.25
+ - af_packet: fix raw sockets over 6in4 tunnel
+ - [arm64, armhf] dsa: mv88e6xxx: Ensure all pending interrupts are handled
+ prior to exit
+ - net: crypto set sk to NULL when af_alg_release. (CVE-2019-8912)
+ - net: Fix for_each_netdev_feature on Big endian
+ - net: fix IPv6 prefix route residue
+ - net: ip6_gre: initialize erspan_ver just for erspan tunnels
+ - net: ipv4: use a dedicated counter for icmp_v4 redirect packets
+ - net: phy: xgmiitorgmii: Support generic PHY status read
+ - net: stmmac: Fix a race in EEE enable callback
+ - net: stmmac: handle endianness in dwmac4_get_timestamp
+ - sky2: Increase D3 delay again
+ - vhost: correctly check the return value of translate_desc() in log_used()
+ - vsock: cope with memory allocation failure at socket creation time
+ - vxlan: test dev->flags & IFF_UP before calling netif_rx()
+ - net: Add header for usage of fls64()
+ - tcp: clear icsk_backoff in tcp_write_queue_purge()
+ - tcp: tcp_v4_err() should be more careful
+ - net: Do not allocate page fragments that are not skb aligned
+ - hwmon: (lm80) Fix missing unlock on error in set_fan_div()
+ - scsi: target/core: Use kmem_cache_free() instead of kfree()
+ - PCI: Fix __initdata issue with "pci=disable_acs_redir" parameter
+ - sunrpc: fix 4 more call sites that were using stack memory with a
+ scatterlist
+ - netfilter: nf_nat_snmp_basic: add missing length checks in ASN.1 cbs
+ (CVE-2019-9162)
+ - net/x25: do not hold the cpu too long in x25_new_lci()
+ - ax25: fix possible use-after-free
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.26
+ - [armel armhf] 8834/1: Fix: kprobes: optimized kprobes illegal instruction
+ - tracing: Fix number of entries in trace header
+ - [mips*] eBPF: Always return sign extended 32b values
+ - mac80211: Restore vif beacon interval if start ap fails
+ - mac80211: Use linked list instead of rhashtable walk for mesh tables
+ - mac80211: Free mpath object when rhashtable insertion fails
+ - libceph: handle an empty authorize reply
+ - ceph: avoid repeatedly adding inode to mdsc->snap_flush_list
+ - numa: change get_mempolicy() to use nr_node_ids instead of MAX_NUMNODES
+ - proc, oom: do not report alien mms when setting oom_score_adj
+ - [x86] ALSA: hda/realtek - Headset microphone and internal speaker
+ support for System76 oryp5
+ - [x86] ALSA: hda/realtek: Disable PC beep in passthrough on alc285
+ - KEYS: allow reaching the keys quotas exactly
+ - [armhf,arm64] backlight: pwm_bl: Fix devicetree parsing with auto-
+ generated brightness tables
+ - [armhf] mfd: ti_am335x_tscadc: Use PLATFORM_DEVID_AUTO while registering
+ mfd cells
+ - [armhf] mfd: twl-core: Fix section annotations on {,un}protect_pm_master
+ - [arm64] mfd: qcom_rpm: write fw_version to CTRL_REG
+ - mfd: axp20x: Add AC power supply cell for AXP813
+ - mfd: axp20x: Re-align MFD cell entries
+ - mfd: axp20x: Add supported cells for AXP803
+ - mfd: cros_ec_dev: Add missing mfd_remove_devices() call in remove
+ probe()
+ - [armhf] mfd: mc13xxx: Fix a missing check of a register-read failure
+ - qed: Fix qed_chain_set_prod() for PBL chains with non power of 2 page
+ count
+ - qed: Fix qed_ll2_post_rx_buffer_notify_fw() by adding a write memory
+ barrier
+ - [arm64] net: hns: Fix use after free identified by SLUB debug
+ - bpf: Fix [::] -> [::1] rewrite in sys_sendmsg
+ - selftests/bpf: Test [::] -> [::1] rewrite in sys_sendmsg in
+ test_sock_addr
+ - net/mlx4: Get rid of page operation after dma_alloc_coherent
+ - xprtrdma: Double free in rpcrdma_sendctxs_create()
+ - selftests: forwarding: Add a test for VLAN deletion
+ - netfilter: nf_tables: fix leaking object reference count
+ - scsi: qla4xxx: check return code of qla4xxx_copy_from_fwddb_param
+ - scsi: isci: initialize shost fully before calling scsi_add_host()
+ - include/linux/compiler*.h: fix OPTIMIZER_HIDE_VAR
+ - netfilter: nft_flow_offload: Fix reverse route lookup
+ - bpf: correctly set initial window on active Fast Open sender
+ - bpf: fix panic in stack_map_get_build_id() on i386 and arm32
+ - netfilter: nft_flow_offload: fix interaction with vrf slave device
+ - RDMA/mthca: Clear QP objects during their allocation
+ - [powerpcspe] 8xx: fix setting of pagetable for Abatron BDI debug tool.
+ - acpi/nfit: Fix race accessing memdev in nfit_get_smbios_id()
+ - net: stmmac: Fix PCI module removal leak
+ - net: stmmac: dwxgmac2: Only clear interrupts that are active
+ - net: stmmac: Check if CBS is supported before configuring
+ - net: stmmac: Fix the logic of checking if RX Watchdog must be enabled
+ - net: stmmac: Prevent RX starvation in stmmac_napi_poll()
+ - scsi: tcmu: avoid cmd/qfull timers updated whenever a new cmd comes
+ - scsi: ufs: Fix system suspend status
+ - scsi: qedi: Add ep_state for login completion on un-reachable targets
+ - scsi: ufs: Fix geometry descriptor size
+ - scsi: cxgb4i: add wait_for_completion()
+ - netfilter: nft_flow_offload: fix checking method of conntrack helper
+ - always clear the X2APIC_ENABLE bit for PV guest
+ - [armhf, arm64] drm/meson: add missing of_node_put
+ - drm/amdkfd: Don't assign dGPUs to APU topology devices
+ - drm/amd/display: fix PME notification not working in RV desktop
+ - vhost: return EINVAL if iovecs size does not match the message size
+ - [armhf, arm64] drm/sun4i: backend: add missing of_node_puts
+ - bpf: don't assume build-id length is always 20 bytes
+ - bpf: zero out build_id for BPF_STACK_BUILD_ID_IP
+ - atm: he: fix sign-extension overflow on large shift
+ - hwmon: (tmp421) Correct the misspelling of the tmp442 compatible
+ attribute in OF device ID table
+ - [armhf] leds: lp5523: fix a missing check of return value of lp55xx_read
+ - bpf: bpf_setsockopt: reset sock dst on SO_MARK changes
+ - net: bridge: Mark FDB entries that were added by user as such
+ - net/mlx5e: Fix wrong (zero) TX drop counter indication for representor
+ - isdn: avm: Fix string plus integer warning from Clang
+ - batman-adv: fix uninit-value in batadv_interface_tx()
+ - inet_diag: fix reporting cgroup classid and fallback to priority
+ - ipv6: propagate genlmsg_reply return code
+ - net: ena: fix race between link up and device initalization
+ - net/mlx4_en: Force CHECKSUM_NONE for short ethernet frames
+ - net/mlx5e: Don't overwrite pedit action when multiple pedit used
+ - net/packet: fix 4gb buffer limit due to overflow check
+ - net: sfp: do not probe SFP module before we're attached
+ - sctp: call gso_reset_checksum when computing checksum in sctp_gso_segment
+ - sctp: set stream ext to NULL after freeing it in sctp_stream_outq_migrate
+ - team: avoid complex list operations in team_nl_cmd_options_set()
+ - Revert "socket: fix struct ifreq size in compat ioctl"
+ - Revert "kill dev_ifsioc()"
+ - net: socket: fix SIOCGIFNAME in compat
+ - net: socket: make bond ioctls go through compat_ifreq_ioctl()
+ - geneve: should not call rt6_lookup() when ipv6 was disabled
+ - sit: check if IPv6 enabled before calling ip6_err_gen_icmpv6_unreach()
+ - net_sched: fix a race condition in tcindex_destroy() (Closes: #921542)
+ - net_sched: fix a memory leak in cls_tcindex
+ - net_sched: fix two more memory leaks in cls_tcindex
+ - net/mlx5e: XDP, fix redirect resources availability check
+ - RDMA/srp: Rework SCSI device reset handling
+ - KEYS: user: Align the payload buffer
+ - KEYS: always initialize keyring_index_key::desc_len
+ - drm/amdgpu: Set DPM_FLAG_NEVER_SKIP when enabling PM-runtime
+ - gpu: drm: radeon: Set DPM_FLAG_NEVER_SKIP when enabling PM-runtime
+ - [x86] drm/i915/fbdev: Actually configure untiled displays
+ - drm/amd/display: Fix MST reboot/poweroff sequence
+ - mac80211: allocate tailroom for forwarded mesh packets
+ - [x86] kvm: Return LA57 feature based on hardware capability
+ - net: validate untrusted gso packets without csum offload
+ - net: avoid false positives in untrusted gso validation
+ - Revert "bridge: do not add port to router list when receives query with
+ source 0.0.0.0"
+ - netfilter: nf_tables: fix flush after rule deletion in the same batch
+ - netfilter: nft_compat: use-after-free when deleting targets
+ - netfilter: ipv6: Don't preserve original oif for loopback address
+ - netfilter: nfnetlink_osf: add missing fmatch check
+ - netfilter: ipt_CLUSTERIP: fix sleep-in-atomic bug in
+ clusterip_config_entry_put()
+ - udlfb: handle unplug properly
+ - [armhf arm64] pinctrl: max77620: Use define directive for
+ max77620_pinconf_param values
+ - net: phylink: avoid resolving link state too early
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.27
+ - irq/matrix: Split out the CPU selection code into a helper
+ - irq/matrix: Spread managed interrupts on allocation
+ - genirq/matrix: Improve target CPU selection for managed interrupts
+ (Closes: #922182)
+ - mac80211: Change default tx_sk_pacing_shift to 7
+ - scsi: libsas: Fix rphy phy_identifier for PHYs with end devices attached
+ - [arm64] drm/msm: Unblock writer if reader closes file
+ - [x86] ASoC: Intel: Haswell/Broadwell: fix setting for .dynamic field
+ - [armhf] clk: tegra: dfll: Fix a potential Oop in remove()
+ - [x86] thermal: int340x_thermal: Fix a NULL vs IS_ERR() check
+ - [arm64, armhf] usb: dwc3: gadget: synchronize_irq dwc irq in suspend
+ - [arm64, armhf] usb: dwc3: gadget: Fix the uninitialized link_state when
+ udc starts
+ - genirq: Make sure the initial affinity is not empty
+ - [arm64, armel, x86, armhf] ASoC: dapm: change snprintf to scnprintf for
+ possible overflow
+ - [x86] drivers: thermal: int340x_thermal: Fix sysfs race condition
+ - mac80211: fix miscounting of ttl-dropped frames
+ - sched/wait: Fix rcuwait_wake_up() ordering
+ - sched/wake_q: Fix wakeup ordering for wake_q
+ - futex: Fix (possible) missed wakeup
+ - drm/amd/powerplay: OD setting fix on Vega10
+ - [armhf] drm/sun4i: hdmi: Fix usage of TMDS clock
+ - direct-io: allow direct writes to empty inodes
+ - writeback: synchronize sync(2) against cgroup writeback membership
+ switches
+ - scsi: lpfc: nvme: avoid hang / use-after-free when destroying localport
+ - scsi: lpfc: nvmet: avoid hang / use-after-free when destroying targetport
+ - scsi: csiostor: fix NULL pointer dereference in csio_vport_set_state()
+ - [x86] hv_netvsc: Fix ethtool change hash key error
+ - [x86] hv_netvsc: Refactor assignments of struct netvsc_device_info
+ - [x86] hv_netvsc: Fix hash key value reset after other ops
+ - nvme-rdma: fix timeout handler
+ - nvme-multipath: drop optimization for static ANA group IDs
+ - [arm64] drm/msm: Fix A6XX support for opp-level
+ - net: usb: asix: ax88772_bind return error when hw_reset fail
+ - net: dev_is_mac_header_xmit() true for ARPHRD_RAWIP
+ - [powerpc*] ibmveth: Do not process frames after calling napi_reschedule
+ - mac80211: don't initiate TDLS connection if station is not associated to
+ AP
+ - mac80211: Add attribute aligned(2) to struct 'action'
+ - cfg80211: extend range deviation for DMG
+ - [x86] svm: Fix AVIC incomplete IPI emulation
+ - [x86] KVM: nSVM: clear events pending from svm_complete_interrupts() when
+ exiting to L1
+ - [arm64, armhf] mmc: spi: Fix card detection during probe
+ - mmc: core: Fix NULL ptr crash from mmc_should_fail_request
+ - [armhf] mmc: sdhci-esdhc-imx: correct the fix of ERR004536
+ - mm: enforce min addr even if capable() in expand_downwards()
+ (CVE-2019-9213)
+ - hugetlbfs: fix races and page leaks during migration
+ - [mips*] fix truncation in __cmpxchg_small for short values
+ - [x86] uaccess: Don't leak the AC flag into __put_user() value evaluation
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.28
+ - cpufreq: Use struct kobj_attribute instead of struct global_attr
+ - staging: erofs: fix mis-acted TAIL merging behavior
+ - USB: serial: option: add Telit ME910 ECM composition
+ - USB: serial: cp210x: add ID for Ingenico 3070
+ - USB: serial: ftdi_sio: add ID for Hjelmslund Electronics USB485
+ - [x86] staging: comedi: ni_660x: fix missing break in switch statement
+ - [x86, arm64, armhf] staging: android: ashmem: Don't call fallocate() with
+ ashmem_mutex held.
+ - [x86, arm64, armhf] staging: android: ashmem: Avoid range_alloc()
+ allocation with ashmem_mutex held.
+ - ip6mr: Do not call __IP6_INC_STATS() from preemptible context
+ - [arm64, armhf] net: dsa: mv88e6xxx: handle unknown duplex modes gracefully
+ in mv88e6xxx_port_set_duplex
+ - [arm64, armhf] net: dsa: mv88e6xxx: fix number of internal PHYs for
+ 88E6x90 family
+ - net: sched: put back q.qlen into a single location
+ - net-sysfs: Fix mem leak in netdev_register_kobject
+ - qmi_wwan: Add support for Quectel EG12/EM12
+ - sctp: call iov_iter_revert() after sending ABORT
+ - sky2: Disable MSI on Dell Inspiron 1545 and Gateway P-79
+ - team: Free BPF filter when unregistering netdev
+ - tipc: fix RDM/DGRAM connect() regression
+ - bnxt_en: Drop oversize TX packets to prevent errors.
+ - geneve: correctly handle ipv6.disable module parameter
+ - [x86] hv_netvsc: Fix IP header checksum for coalesced packets
+ - ipv4: Add ICMPv6 support when parse route ipproto
+ - lan743x: Fix TX Stall Issue
+ - [arm64, armhf] net: dsa: mv88e6xxx: Fix statistics on mv88e6161
+ - [arm64, armhf] net: dsa: mv88e6xxx: Fix u64 statistics
+ - net: netem: fix skb length BUG_ON in __skb_to_sgvec
+ - net: nfc: Fix NULL dereference on nfc_llcp_build_tlv fails
+ - net: phy: Micrel KSZ8061: link failure after cable connect
+ - [arm64, armhf] net: phy: phylink: fix uninitialized variable in
+ phylink_get_mac_state
+ - net: sit: fix memory leak in sit_init_net()
+ - net: socket: set sock->sk to NULL after calling proto_ops::release()
+ - tipc: fix race condition causing hung sendto
+ - tun: fix blocking read
+ - [x86, arm64, armhf] xen-netback: don't populate the hash cache on XenBus
+ disconnect
+ - [x86, arm64, armhf] xen-netback: fix occasional leak of grant ref mappings
+ under memory pressure
+ - tun: remove unnecessary memory barrier
+ - net: Add __icmp_send helper.
+ - ipv4: Return error for RTA_VIA attribute
+ - ipv6: Return error for RTA_VIA attribute
+ - mpls: Return error for RTA_GATEWAY attribute
+ - ipv4: Pass original device to ip_rcv_finish_core
+ - [arm64, armhf] net: dsa: mv88e6xxx: power serdes on/off for 10G interfaces
+ on 6390X
+ - [arm64, armhf] net: dsa: mv88e6xxx: prevent interrupt storm caused by
+ mv88e6390x_port_set_cmode
+ - net/sched: act_ipt: fix refcount leak when replace fails
+ - net/sched: act_skbedit: fix refcount leak when replace fails
+ - net: sched: act_tunnel_key: fix NULL pointer dereference during init
+ - [x86] CPU/AMD: Set the CPB bit unconditionally on F17h
+ - [x86] boot/compressed/64: Do not read legacy ROM on EFI system
+ - tracing: Fix event filters and triggers to handle negative numbers
+ - usb: xhci: Fix for Enabling USB ROLE SWITCH QUIRK on
+ INTEL_SUNRISEPOINT_LP_XHCI
+ - [x86, powerpc*] applicom: Fix potential Spectre v1 vulnerabilities
+ - [mips*] irq: Allocate accurate order pages for irq stack
+ - aio: Fix locking in aio_poll()
+ - xtensa: fix get_wchan
+ - gnss: sirf: fix premature wakeup interrupt enable
+ - USB: serial: cp210x: fix GPIO in autosuspend
+ - Bluetooth: btrtl: Restore old logic to assume firmware is already loaded
+ - Bluetooth: Fix locking in bt_accept_enqueue() for BH context
+ - exec: Fix mem leak in kernel_read_file (CVE-2019-8980)
+ - scsi: core: reset host byte in DID_NEXUS_FAILURE case
+ - bpf: fix sanitation rewrite in case of non-pointers
+
+ [ Ben Hutchings ]
+ * [sparc64] udeb: Use standard module list in nic-modules; add i2c-modules
+ and nic-shared-modules to avoid duplication
+ * mt76: Use the correct hweight8() function (fixes FTBFS on ia64)
+ * [armel] udeb: Add mmc-core-modules
+ * udeb: Make nic-wireless-modules depend on mmc-core-modules, not
+ mmc-modules; move crc7 to crc-modules to avoid duplication
+ * [powerpc*] udeb: Add i2c-modules, mmc-core-modules, nic-wireless-modules
+ * [arm64,armhf] udeb: Add mmc-core-modules to Provides of kernel-image
+ * udeb: Add fb-modules and include drm and drm_kms_helper on most
+ architectures
+ * udeb: Move basic PV modules from {hyperv,virtio}-modules to kernel-image
+ * udeb: Move drivers from {hyperv,virtio}-modules to
+ {fb,input,nic,scsi}-modules
+ * debian/bin/gencontrol.py: Add rules to build debian/build/config.*
+ * certs: Replace test signing certificate with production signing certificate
+ * debian/bin/gencontrol_signed.py: Put all files.json fields under "packages"
+ * Bump ABI to 4
+
+ [ Wookey ]
+ * linux-perf: Enable coresight trace (libopencsd) support in perf
+ (Closes: #895131)
+
+ [ Vagrant Cascadian ]
+ * [armhf] Add patch from upstream fixing stability issues when cpufreq
+ is enabled on Orange Pi Plus.
+ * [armhf] Enable REGULATOR_SY8106A as module.
+ * [arm64] Add patch working around A64 timer issues.
+
+ [ dann frazier ]
+ * arm64: lockdown: Move init_lockdown() call after uefi_init()
+
+ [ Salvatore Bonaccorso ]
+ * Btrfs: fix corruption reading shared and compressed extents after hole
+ punching (Closes: #922306)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Add patch from v4.20 to enable device-tree for Pine64-LTS.
+
+ [ Romain Perier ]
+ * [rt] Update to 4.19.25-rt16:
+ - Add zram_slot_trylock() to "drivers/block/zram: Replace bit spinlocks
+ with rtmutex for -rt"
+ - Refresh "futex: workaround migrate_disable/enable in different context"
+ - softirq: Avoid "local_softirq_pending" messages if ksoftirqd is blocked
+ - softirq: Avoid "local_softirq_pending" messages if task is in cpu_chill()
+ - hrtimer: Don't lose state in cpu_chill()
+ - hrtimer: cpu_chill(): save task state in ->saved_state()
+ - [x86] lazy-preempt: properly check against preempt-mask
+ - [i386] lazy-preempt: use proper return label on 32bit-x86
+ * [armel/rpi] Add flavour for Raspberry Pi and Raspberry Pi Zero
+ * [armel, armhf] Enable CRASH_DUMP
+ * Enable STRICT_MODULE_RWX
+
+ [ Marcin Juszkiewicz ]
+ * [arm64] udeb: Use generic ata-modules
+ * [arm64] udeb: Remove redundant lines from nic-modules
+
+ [ YunQiang Su ]
+ * [mips r6] Disable JUMP_LABEL for now: it will cause Reserved Instruction.
+ Enable SERIAL_OF_PLATFORM, if not, userland shows nothing.
+ Enable CPU_HAS_MSA, HIGHMEM, CRYPTO_CRC32_MIPS, and NR_CPUS to 16.
+ Support some boston drivers: IMG_ASCII_LCD, I2C_EG20T, PCH_PHUB, MMC,
+ PCIE_XILINX, RTC_DRV_M41T80, SPI_TOPCLIFF_PCH.
+ * [mipsel/mips64el] Backport MIPS: Loongson: Introduce and use
+ loongson_llsc_mb()
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 12 Mar 2019 05:06:28 +0000
+
+linux (4.19.20-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.17
+ - tty/ldsem: Wake up readers after timed out down_write()
+ - tty: Hold tty_ldisc_lock() during tty_reopen()
+ - tty: Simplify tty->count math in tty_reopen()
+ - tty: Don't hold ldisc lock in tty_reopen() if ldisc present
+ - can: gw: ensure DLC boundaries after CAN frame modification
+ (CVE-2019-3701)
+ - netfilter: nf_conncount: don't skip eviction when age is negative
+ - netfilter: nf_conncount: split gc in two phases
+ - netfilter: nf_conncount: restart search when nodes have been erased
+ (Closes: #921616)
+ - netfilter: nf_conncount: merge lookup and add functions
+ - netfilter: nf_conncount: move all list iterations under spinlock
+ - netfilter: nf_conncount: speculative garbage collection on empty lists
+ - netfilter: nf_conncount: fix argument order to find_next_bit
+ - [arm64] mmc: sdhci-msm: Disable CDR function on TX
+ - Revert "scsi: target: iscsi: cxgbit: fix csk leak"
+ - scsi: target: iscsi: cxgbit: fix csk leak
+ - scsi: target: iscsi: cxgbit: fix csk leak
+ - [arm64] kvm: consistently handle host HCR_EL2 flags
+ - [arm64] Don't trap host pointer auth use to EL2
+ - ipv6: fix kernel-infoleak in ipv6_local_error()
+ - net: bridge: fix a bug on using a neighbour cache entry without checking
+ its state
+ - packet: Do not leak dev refcounts on error exit
+ - tcp: change txhash on SYN-data timeout
+ - tun: publish tfile after it's fully initialized
+ - r8169: don't try to read counters if chip is in a PCI power-save state
+ - bonding: update nest level on unlink
+ - ip: on queued skb use skb_header_pointer instead of pskb_may_pull
+ - r8169: load Realtek PHY driver module before r8169
+ - crypto: authencesn - Avoid twice completion call in decrypt path
+ - crypto: authenc - fix parsing key with misaligned rta_len
+ - [x86] xen: Fix x86 sched_clock() interface for xen
+ - Revert "btrfs: balance dirty metadata pages in btrfs_finish_ordered_io"
+ - btrfs: wait on ordered extents on abort cleanup
+ - Yama: Check for pid death before checking ancestry
+ - scsi: core: Synchronize request queue PM status only on successful resume
+ - [x86] scsi: sd: Fix cache_type_store()
+ - [mips*] fix n32 compat_ipc_parse_version
+ - [mips*] BCM47XX: Setup struct device for the SoC
+ - [mips*] lantiq: Fix IPI interrupt handling
+ - of: properties: add missing of_node_put
+ - RDMA/nldev: Don't expose unsafe global rkey to regular user
+ - [arm64] kaslr: ensure randomized quantities are clean to the PoC
+ - [arm64] dts: marvell: armada-ap806: reserve PSCI area
+ - [mips*] Disable MSI also when pcie-octeon.pcie_disable on
+ - fix int_sqrt64() for very large numbers
+ - media: vivid: fix error handling of kthread_run
+ - media: vivid: set min width/height to a value > 0
+ - bpf: in __bpf_redirect_no_mac pull mac only if present
+ - ipv6: make icmp6_send() robust against null skb->dev
+ - LSM: Check for NULL cred-security on free
+ - netfilter: ebtables: account ebt_table_info to kmemcg
+ - block: use rcu_work instead of call_rcu to avoid sleep in softirq
+ - selinux: fix GPF on invalid policy
+ - blockdev: Fix livelocks on loop device
+ - sctp: allocate sctp_sockaddr_entry with kzalloc
+ - tipc: fix uninit-value in in tipc_conn_rcv_sub
+ - tipc: fix uninit-value in tipc_nl_compat_link_reset_stats
+ - tipc: fix uninit-value in tipc_nl_compat_bearer_enable
+ - tipc: fix uninit-value in tipc_nl_compat_link_set
+ - tipc: fix uninit-value in tipc_nl_compat_name_table_dump
+ - tipc: fix uninit-value in tipc_nl_compat_doit
+ - block/loop: Don't grab "struct file" for vfs_getattr() operation.
+ - block/loop: Use global lock for ioctl() operation.
+ - loop: Fold __loop_release into loop_release
+ - loop: Get rid of loop_index_mutex
+ - loop: Push lo_ctl_mutex down into individual ioctls
+ - loop: Split setting of lo_state from loop_clr_fd
+ - loop: Push loop_ctl_mutex down into loop_clr_fd()
+ - loop: Push loop_ctl_mutex down to loop_get_status()
+ - loop: Push loop_ctl_mutex down to loop_set_status()
+ - loop: Push loop_ctl_mutex down to loop_set_fd()
+ - loop: Push loop_ctl_mutex down to loop_change_fd()
+ - loop: Move special partition reread handling in loop_clr_fd()
+ - loop: Move loop_reread_partitions() out of loop_ctl_mutex
+ - loop: Fix deadlock when calling blkdev_reread_part()
+ - loop: Avoid circular locking dependency between loop_ctl_mutex and
+ bd_mutex
+ - loop: Get rid of 'nested' acquisition of loop_ctl_mutex
+ - loop: Fix double mutex_unlock(&loop_ctl_mutex) in loop_control_ioctl()
+ - loop: drop caches if offset or block_size are changed
+ - drm/fb-helper: Ignore the value of fb_var_screeninfo.pixclock
+ - nbd: Use set_blocksize() to set device blocksize
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.18
+ - ipv6: Consider sk_bound_dev_if when binding a socket to a v4 mapped
+ address
+ - [armhf, arm64 net: dsa: mv88x6xxx: mv88e6390 errata
+ - net, skbuff: do not prefer skb allocation fails early
+ - qmi_wwan: add MTU default to qmap network interface
+ - r8169: Add support for new Realtek Ethernet
+ - ipv6: Take rcu_read_lock in __inet6_bind for mapped addresses
+ - net: clear skb->tstamp in bridge forwarding path
+ - netfilter: ipset: Allow matching on destination MAC address for mac and
+ ipmac sets
+ - [arm64] gpio: pl061: Move irq_chip definition inside struct pl061
+ - drm/amd/display: Guard against null stream_state in set_crc_source
+ - [x86] drm/amdkfd: fix interrupt spin lock
+ - ixgbe: allow IPsec Tx offload in VEPA mode
+ - [x86] platform: asus-wmi: Tell the EC the OS will handle the display
+ off hotkey
+ - e1000e: allow non-monotonic SYSTIM readings
+ - [x86] usb: typec: tcpm: Do not disconnect link for self powered devices
+ - of: overlay: add missing of_node_put() after add new node to changeset
+ - writeback: don't decrement wb->refcnt if !wb->bdi
+ - serial: set suppress_bind_attrs flag only if builtin
+ - bpf: Allow narrow loads with offset > 0
+ - ALSA: oxfw: add support for APOGEE duet FireWire
+ - [x86] mce: Fix -Wmissing-prototypes warnings
+ - [mips] SiByte: Enable swiotlb for SWARM, LittleSur and BigSur
+ - [arm64] perf: set suppress_bind_attrs flag to true
+ - drm/atomic-helper: Complete fake_commit->flip_done potentially earlier
+ - [arm64] clk: meson: meson8b: fix incorrect divider mapping in
+ cpu_scale_table
+ - samples: bpf: fix: error handling regarding kprobe_events
+ - usb: gadget: udc: renesas_usb3: add a safety connection way for
+ forced_b_device
+ - fpga: altera-cvp: fix probing for multiple FPGAs on the bus
+ - selinux: always allow mounting submounts
+ - ASoC: pcm3168a: Don't disable pcm3168a when CONFIG_PM defined
+ - scsi: qedi: Check for session online before getting iSCSI TLV data.
+ - drm/amdgpu: Reorder uvd ring init before uvd resume
+ - rxe: IB_WR_REG_MR does not capture MR's iova field
+ - efi/libstub: Disable some warnings for x86{,_64}
+ - jffs2: Fix use of uninitialized delayed_work, lockdep breakage
+ - clk: imx: make mux parent strings const
+ - pstore/ram: Do not treat empty buffers as valid
+ - media: uvcvideo: Refactor teardown of uvc on USB disconnect
+ - powerpc/xmon: Fix invocation inside lock region
+ - powerpc/pseries/cpuidle: Fix preempt warning
+ - media: firewire: Fix app_info parameter type in avc_ca{,_app}_info
+ - ASoC: use dma_ops of parent device for acp_audio_dma
+ - media: venus: core: Set dma maximum segment size
+ - staging: erofs: fix use-after-free of on-stack `z_erofs_vle_unzip_io'
+ - net: call sk_dst_reset when set SO_DONTROUTE
+ - scsi: target: use consistent left-aligned ASCII INQUIRY data
+ - scsi: target/core: Make sure that target_wait_for_sess_cmds() waits long
+ enough
+ - [arm64] kasan: Increase stack size for KASAN_EXTRA
+ - clk: imx6q: reset exclusive gates on init
+ - [arm64] Fix minor issues with the dcache_by_line_op macro
+ - bpf: relax verifier restriction on BPF_MOV | BPF_ALU
+ - mmc: atmel-mci: do not assume idle after atmci_request_end
+ - btrfs: volumes: Make sure there is no overlap of dev extents at mount
+ time
+ - btrfs: alloc_chunk: fix more DUP stripe size handling
+ - btrfs: fix use-after-free due to race between replace start and cancel
+ - btrfs: improve error handling of btrfs_add_link
+ - tty/serial: do not free trasnmit buffer page under port lock
+ - perf intel-pt: Fix error with config term "pt=0"
+ - perf tests ARM: Disable breakpoint tests 32-bit
+ - perf svghelper: Fix unchecked usage of strncpy()
+ - perf parse-events: Fix unchecked usage of strncpy()
+ - perf vendor events intel: Fix Load_Miss_Real_Latency on SKL/SKX
+ - netfilter: ipt_CLUSTERIP: check MAC address when duplicate config is set
+ - netfilter: ipt_CLUSTERIP: remove wrong WARN_ON_ONCE in netns exit routine
+ - netfilter: ipt_CLUSTERIP: fix deadlock in netns exit routine
+ - [x86] topology: Use total_cpus for max logical packages calculation
+ - dm crypt: use u64 instead of sector_t to store iv_offset
+ - dm kcopyd: Fix bug causing workqueue stalls
+ - perf stat: Avoid segfaults caused by negated options
+ - tools lib subcmd: Don't add the kernel sources to the include path
+ - dm snapshot: Fix excessive memory usage and workqueue stalls
+ - perf cs-etm: Correct packets swapping in cs_etm__flush()
+ - perf tools: Add missing sigqueue() prototype for systems lacking it
+ - perf tools: Add missing open_memstream() prototype for systems lacking it
+ - quota: Lock s_umount in exclusive mode for Q_XQUOTA{ON,OFF} quotactls.
+ - clocksource/drivers/integrator-ap: Add missing of_node_put()
+ - dm: Check for device sector overflow if CONFIG_LBDAF is not set
+ - Bluetooth: btusb: Add support for Intel bluetooth device 8087:0029
+ - ALSA: bebob: fix model-id of unit for Apogee Ensemble
+ - sysfs: Disable lockdep for driver bind/unbind files
+ - IB/usnic: Fix potential deadlock
+ - scsi: mpt3sas: fix memory ordering on 64bit writes
+ - scsi: smartpqi: correct lun reset issues
+ - ath10k: fix peer stats null pointer dereference
+ - scsi: smartpqi: call pqi_free_interrupts() in pqi_shutdown()
+ - scsi: megaraid: fix out-of-bound array accesses
+ - iomap: don't search past page end in iomap_is_partially_uptodate
+ - ocfs2: fix panic due to unrecovered local alloc
+ - mm/page-writeback.c: don't break integrity writeback on ->writepage()
+ error
+ - mm/swap: use nr_node_ids for avail_lists in swap_info_struct
+ - userfaultfd: clear flag if remap event not enabled
+ - mm, proc: be more verbose about unstable VMA flags in /proc/<pid>/smaps
+ - iwlwifi: mvm: Send LQ command as async when necessary
+ - Bluetooth: Fix unnecessary error message for HCI request completion
+ - ipmi: fix use-after-free of user->release_barrier.rda
+ - ipmi: msghandler: Fix potential Spectre v1 vulnerabilities
+ - ipmi: Prevent use-after-free in deliver_response
+ - ipmi:ssif: Fix handling of multi-part return messages
+ - ipmi: Don't initialize anything in the core until something uses it
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.19
+ - amd-xgbe: Fix mdio access for non-zero ports and clause 45 PHYs
+ - net: bridge: Fix ethernet header pointer before check skb forwardable
+ - net: Fix usage of pskb_trim_rcsum
+ - net: phy: marvell: Errata for mv88e6390 internal PHYs
+ - net: phy: mdio_bus: add missing device_del() in mdiobus_register() error
+ handling
+ - net/sched: act_tunnel_key: fix memory leak in case of action replace
+ - net_sched: refetch skb protocol for each filter
+ - openvswitch: Avoid OOB read when parsing flow nlattrs
+ - vhost: log dirty page correctly
+ - net: ipv4: Fix memory leak in network namespace dismantle
+ - net/sched: cls_flower: allocate mask dynamically in fl_change()
+ - udp: with udp_segment release on error path
+ - ip6_gre: fix tunnel list corruption for x-netns
+ - erspan: build the header with the right proto according to erspan_ver
+ - net: phy: marvell: Fix deadlock from wrong locking
+ - ip6_gre: update version related info when changing link
+ - tcp: allow MSG_ZEROCOPY transmission also in CLOSE_WAIT state
+ - mei: me: mark LBG devices as having dma support
+ - mei: me: add denverton innovation engine device IDs
+ - USB: leds: fix regression in usbport led trigger
+ - USB: serial: simple: add Motorola Tetra TPG2200 device id
+ - USB: serial: pl2303: add new PID to support PL2303TB
+ - ceph: clear inode pointer when snap realm gets dropped by its inode
+ - ASoC: atom: fix a missing check of snd_pcm_lib_malloc_pages
+ - ASoC: rt5514-spi: Fix potential NULL pointer dereference
+ - ASoC: tlv320aic32x4: Kernel OOPS while entering DAPM standby mode
+ - clk: socfpga: stratix10: fix rate calculation for pll clocks
+ - clk: socfpga: stratix10: fix naming convention for the fixed-clocks
+ - inotify: Fix fd refcount leak in inotify_add_watch().
+ - ALSA: hda/realtek - Fix typo for ALC225 model
+ - ALSA: hda - Add mute LED support for HP ProBook 470 G5
+ - ARCv2: lib: memeset: fix doing prefetchw outside of buffer
+ - ARC: adjust memblock_reserve of kernel memory
+ - ARC: perf: map generic branches to correct hardware condition
+ - s390/mm: always force a load of the primary ASCE on context switch
+ - s390/early: improve machine detection
+ - s390/smp: fix CPU hotplug deadlock with CPU rescan
+ - misc: ibmvsm: Fix potential NULL pointer dereference
+ - char/mwave: fix potential Spectre v1 vulnerability
+ - [arm64] mmc: dw_mmc-bluefield: : Fix the license information
+ - [arm64] mmc: meson-gx: Free irq in release() callback
+ - staging: rtl8188eu: Add device code for D-Link DWA-121 rev B1
+ - tty: Handle problem if line discipline does not have receive_buf
+ - uart: Fix crash in uart_write and uart_put_char
+ - tty/n_hdlc: fix __might_sleep warning
+ - hv_balloon: avoid touching uninitialized struct page during tail onlining
+ - Drivers: hv: vmbus: Check for ring when getting debug info
+ - vgacon: unconfuse vc_origin when using soft scrollback
+ - CIFS: Fix possible hang during async MTU reads and writes
+ - CIFS: Fix credits calculations for reads with errors
+ - CIFS: Fix credit calculation for encrypted reads with errors
+ - CIFS: Do not reconnect TCP session in add_credits()
+ - smb3: add credits we receive from oplock/break PDUs
+ - Input: xpad - add support for SteelSeries Stratus Duo
+ - Input: input_event - provide override for sparc64
+ - Input: uinput - fix undefined behavior in uinput_validate_absinfo()
+ - acpi/nfit: Block function zero DSMs
+ - acpi/nfit: Fix command-supported detection
+ - scsi: ufs: Use explicit access size in ufshcd_dump_regs
+ - dm thin: fix passdown_double_checking_shared_status()
+ - dm crypt: fix parsing of extended IV arguments
+ - [x86] drm/amdgpu: Add APTX quirk for Lenovo laptop
+ - [x86] KVM: Fix single-step debugging
+ - [x86] KVM: Fix PV IPIs for 32-bit KVM host
+ - [x86] KVM: WARN_ONCE if sending a PV IPI returns a fatal error
+ - [x86] kvm: vmx: Use kzalloc for cached_vmcs12
+ - [x86] KVM/nVMX: Do not validate that posted_intr_desc_addr is page
+ aligned
+ - [x86] pkeys: Properly copy pkey state at fork()
+ - [x86] selftests/pkeys: Fork() to check for state being preserved
+ - [x86] kaslr: Fix incorrect i8254 outb() parameters
+ - [x86] entry/64/compat: Fix stack switching for XEN PV
+ - [arm64] irqchip/gic-v3-its: Align PCI Multi-MSI allocation on their size
+ - can: dev: __can_get_echo_skb(): fix bogous check for non-existing skb by
+ removing it
+ - can: bcm: check timer values before ktime conversion
+ - can: flexcan: fix NULL pointer exception during bringup
+ - vt: make vt_console_print() compatible with the unicode screen buffer
+ - vt: always call notifier with the console lock held
+ - vt: invoke notifier on screen size change
+ - [arm64] drm/meson: Fix atomic mode switching regression
+ - bpf: improve verifier branch analysis
+ - bpf: add per-insn complexity limit
+ - bpf: move {prev_,}insn_idx into verifier env
+ - bpf: move tmp variable into ax register in interpreter
+ - bpf: enable access to ax register also from verifier rewrite
+ - bpf: restrict map value pointer arithmetic for unprivileged
+ - bpf: restrict stack pointer arithmetic for unprivileged
+ - bpf: restrict unknown scalars of mixed signed bounds for unprivileged
+ - bpf: fix check_map_access smin_value test when pointer contains offset
+ - bpf: prevent out of bounds speculation on pointer arithmetic
+ (CVE-2019-7308)
+ - bpf: fix sanitation of alu op with pointer / scalar type from different
+ paths (CVE-2019-7308)
+ - bpf: fix inner map masking to prevent oob under speculation
+ - [s390*] smp: Fix calling smp_call_ipl_cpu() from ipl CPU
+ - nvmet-rdma: Add unlikely for response allocated check
+ - nvmet-rdma: fix null dereference under heavy load
+ - Revert "mm, memory_hotplug: initialize struct pages for the full memory
+ section"
+ - usb: dwc3: gadget: Clear req->needs_extra_trb flag on cleanup
+ - ide: fix a typo in the settings proc file name
+ - Input: input_event - fix the CONFIG_SPARC64 mixup
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.20
+ - Fix "net: ipv4: do not handle duplicate fragments as overlapping"
+ - ipv6: sr: clear IP6CB(skb) on SRH ip4ip6 encapsulation
+ - ipvlan, l3mdev: fix broken l3s mode wrt local routes
+ - l2tp: copy 4 more bytes to linear part if necessary
+ - l2tp: fix reading optional fields of L2TPv3
+ - net: ip_gre: always reports o_key to userspace
+ - net: ip_gre: use erspan key field for tunnel lookup
+ - net/mlx4_core: Add masking for a few queries on HCA caps
+ - netrom: switch to sock timer API
+ - net/rose: fix NULL ax25_cb kernel panic
+ - net: set default network namespace in init_dummy_netdev()
+ - sctp: improve the events for sctp stream reset
+ - tun: move the call to tun_set_real_num_queues
+ - vhost: fix OOB in get_rx_bufs()
+ (CVE-2018-16880)
+ - net: ip6_gre: always reports o_key to userspace
+ - sctp: improve the events for sctp stream adding
+ - net/mlx5e: Allow MAC invalidation while spoofchk is ON
+ - ip6mr: Fix notifiers call on mroute_clean_tables()
+ - sctp: set chunk transport correctly when it's a new asoc
+ - sctp: set flow sport from saddr only when it's 0
+ - virtio_net: Don't enable NAPI when interface is down
+ - virtio_net: Don't call free_old_xmit_skbs for xdp_frames
+ - virtio_net: Fix not restoring real_num_rx_queues
+ - virtio_net: Fix out of bounds access of sq
+ - virtio_net: Don't process redirected XDP frames when XDP is disabled
+ - virtio_net: Use xdp_return_frame to free xdp_frames on destroying vqs
+ - virtio_net: Differentiate sk_buff and xdp_frame on freeing
+ - CIFS: Do not count -ENODATA as failure for query directory
+ - CIFS: Fix trace command logging for SMB2 reads and writes
+ - CIFS: Do not consider -ENODATA as stat failure for reads
+ - fs/dcache: Fix incorrect nr_dentry_unused accounting in
+ shrink_dcache_sb()
+ - iommu/vt-d: Fix memory leak in intel_iommu_put_resv_regions()
+ - NFS: Fix up return value on fatal errors in nfs_page_async_flush()
+ - [arm64] kaslr: ensure randomized quantities are clean also when kaslr is
+ off
+ - [arm64] Do not issue IPIs for user executable ptes
+ - [arm64] hyp-stub: Forbid kprobing of the hyp-stub
+ - [arm64] hibernate: Clean the __hyp_text to PoC after resume
+ - gpiolib: fix line event timestamps for nested irqs
+ - gpio: pcf857x: Fix interrupts on multiple instances
+ - gfs2: Revert "Fix loop in gfs2_rbm_find"
+ - [arm*] mmc: bcm2835: Fix DMA channel leak on probe error
+ - mmc: mediatek: fix incorrect register setting of hs400_cmd_int_delay
+ - ALSA: usb-audio: Add Opus #3 to quirks for native DSD support
+ - ALSA: hda/realtek - Fixed hp_pin no value
+ - IB/hfi1: Remove overly conservative VM_EXEC flag check
+ - [x86] platform: asus-nb-wmi: Map 0x35 to KEY_SCREENLOCK
+ - [x86] platform: asus-nb-wmi: Drop mapping of 0x33 and 0x34 scan codes
+ - mmc: sdhci-iproc: handle mmc_of_parse() errors during probe
+ - Btrfs: fix deadlock when allocating tree block during leaf/node split
+ - btrfs: On error always free subvol_name in btrfs_mount
+ - kernel/exit.c: release ptraced tasks before zap_pid_ns_processes
+ - mm/hugetlb.c: teach follow_hugetlb_page() to handle FOLL_NOWAIT
+ - oom, oom_reaper: do not enqueue same task twice
+ - mm,memory_hotplug: fix scan_movable_pages() for gigantic hugepages
+ - mm, oom: fix use-after-free in oom_kill_process
+ - mm: hwpoison: use do_send_sig_info() instead of force_sig()
+ - mm: migrate: don't rely on __PageMovable() of newpage after unlocking it
+ - of: Convert to using %pOFn instead of device_node.name
+ - of: overlay: add tests to validate kfrees from overlay removal
+ - of: overlay: add missing of_node_get() in __of_attach_node_sysfs
+ - of: overlay: use prop add changeset entry for property in new nodes
+ - of: overlay: do not duplicate properties from overlay for new nodes
+ - md/raid5: fix 'out of memory' during raid cache recovery
+ - cifs: Always resolve hostname before reconnecting
+
+ [ Luca Boccassi ]
+ * Do not generate linux-source-$ver stanza in debian/control if
+ source is set to disabled in debian/config/defines.
+ * linux-perf: explicitly disable the jvmti feature and shared library.
+ * Document pkg.linux.nosource in debian/README.source.
+ * [amd64] enable UIO_HV_GENERIC for Azure's VMBus access.
+ * [cloud-amd64] enable UIO for Azure's VMBus access, and VFIO for guests
+ running on an hypervisor that exposes a vIOMMU.
+
+ [ Ben Hutchings ]
+ * debian/rules.d, debian/rules.real: Restore build of userland headers for
+ tools
+ * debian/rules.d: Delete now-unused recursive makefiles
+ * debian/rules.d/tools/perf/Makefile: Delete redundant arch/profile checks
+ * debian/control: Add !pkg.linux.nokernel to qualification for compiler
+ build-deps
+ * [i386] debian/control: Fix cross-compiler build-dependency
+ * debian/README.source: Document how to run kconfigeditor2
+ * [armhf,arm64] serial: 8250: Disable SERIAL_8250_DEPRECATED_OPTIONS
+ * percpu: convert spin_lock_irq to spin_lock_irqsave (fixes boot failure with
+ alpha-generic flavour)
+ * debian/tests/python: Fix spurious failure due to misuse of stderr
+ * Update "Revert "objtool: Fix CONFIG_STACK_VALIDATION=y warning for ..."
+ to not duplicate the conditional warning/error
+ * Bump ABI to 3
+ * drivers/firmware: Enable FW_CFG_SYSFS as module (Closes: #882208)
+ * [arm64,armhf,ia64,riscv64,sparc64] udeb: Add usb-serial-modules
+ (Closes: #903824)
+ * [powerpc*,sparc64] udeb: Add nic-usb-modules
+ * [armhf,riscv64,s390x] udeb: Add cdrom-core-modules
+ * 9p: Enable NET_9P_XEN as module
+ * ACPI: Enable ACPI_TAD as module
+ * amd-xgbe: Enable AMD_XGBE_DCB
+ * ath9k: Enable ATH9K_CHANNEL_CONTEXT
+ * block: Enable BLK_DEV_ZONED (except armel/marvell)
+ * bluetooth: Enable BT_HCIUART_RTL; BT_HCIUART_NOKIA, BT_MTKUART as modules
+ * bnxt: Enable BNXT_DCB
+ * ethernet: Enable HINIC, ICE, LAN743X, LIQUIDIO_VF as modules
+ * can: Enable CAN_VXCAN, CAN_MCBA_USB, CAN_UCAN as modules
+ * dm: Enable DM_UNSTRIPED, DM_WRITECACHE, DM_ZONED as modules
+ * [arm64,armhf] drm: Enable DRM_PANEL_RASPBERRYPI_TOUCHSCREEN as module
+ * dvb-usb-v2: Enable DVB_USB_ZD1301 as module
+ * gnss: Enable GNSS, GNSS_SIRF_SERIAL, GNSS_UBX_SERIAL as modules
+ * gpio: Enable GPIO_EXAR, GPIO_PCI_IDIO_16, GPIO_PCIE_IDIO_24 as modules
+ * HID: Enable HID_ACCUTOUCH, HID_COUGAR, HID_ELAN, HID_ITE, HID_JABRA,
+ HID_MAYFLASH, HID_REDRAGON, HID_RETRODE, HID_STEAM, HID_UDRAW_PS3 as
+ modules
+ * [x86] i2c: Enable I2C_DESIGNWARE_BAYTRAIL
+ * IB: Enable CGROUP_RDMA (except armel/marvell)
+ * ieee802154: Enable IEEE802154_HWSIM as module
+ * inet: Enable INET_RAW_DIAG as module
+ * input: Enable INPUT_AXP20X_PEK as module
+ * IPMI: Enable IPMI_SSIF as module
+ * joystick: Enable JOYSTICK_PXRC as module
+ * media/rc: Enable IR_IMON_DECODER, IR_IMON_RAW as modules
+ * [x86] mfd: Enable INTEL_SOC_PMIC_BXTWC, INTEL_SOC_PMIC_CHTDC_TI as modules
+ * mlx5: Enable MLX5_FPGA, MLX5_CORE_IPOIB; MLXFW as module
+ * net: Enable BPF_STREAM_PARSER, XDP_SOCKETS (except armel/marvell)
+ (Closes: #908860); NET_FAILOVER, SMC, SMC_DIAG, VSOCKMON as modules
+ * net/phy: Enable LED_TRIGGER_PHY; CORTINA_PHY, DP83822_PHY, DP83TC811_PHY,
+ MARVELL_10G_PHY, MICROCHIP_T1_PHY, RENESAS_PHY, ROCKCHIP_PHY as modules
+ * net/sched: Enable NET_SCH_CBS, NET_SCH_ETF, NET_SCH_SKBPRIO, NET_EMATCH_IPT
+ as modules
+ * PCMCIA: Enable SCR24X as module
+ * [x86] pinctrl: Enable PINCTRL_CANNONLAKE, PINCTRL_CEDARFORK,
+ PINCTRL_DENVERTON, PINCTRL_GEMINILAKE, PINCTRL_ICELAKE, PINCTRL_LEWISBURG
+ * [x86] rmi4: Re-enable RMI4_CORE, RMI4_SMB as modules (Closes: #875621);
+ RMI4_F03, RMI4_F11, RMI4_F12, RMI4_F30, RMI4_F34, RMI4_F55
+ * xfrm: Enable XFRM_INTERFACE as module
+ * PCI: Enable PCI_PF_STUB as module
+ * ptp: Change PTP_1588_CLOCK_KVM from built-in to module
+ * random: Enable RANDOM_TRUST_CPU. This can be reverted using the kernel
+ parameter: random.trust_cpu=off
+ * SCSI: Enable QEDF, QEDI as modules
+ * serial: Enable SERIAL_8250_EXAR, USB_SERIAL_F8153X, USB_SERIAL_UPD78F0730
+ as modules
+ * sound: Enable SND_FIREWIRE_MOTU, SND_FIREFACE, SND_XEN_FRONTEND as modules
+ * [x86] sound: Enable SND_SOC_AMD_CZ_DA7219MX98357_MACH,
+ SND_SOC_AMD_CZ_RT5645_MACH, SND_SOC_INTEL_CHT_BSW_NAU8824_MACH,
+ SND_SOC_INTEL_BYT_CHT_DA7213_MACH, SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH,
+ SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH,
+ SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH,
+ SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH as modules
+ * thermal: Enable DEVFREQ_THERMAL, THERMAL_STATISTICS
+ * tpm: Enable TCG_TIS_SPI, TCG_VTPM_PROXY as modules
+ * usbtouchscreen: Enable TOUCHSCREEN_USB_EASYTOUCH
+ * watchdog: Enable WATCHDOG_PRETIMEOUT_GOV, WATCHDOG_PRETIMEOUT_GOV_NOOP,
+ WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP; WATCHDOG_PRETIMEOUT_GOV_PANIC,
+ WDAT_WDT as modules
+ * [x86] watchdog: Enable INTEL_MEI_WDT, NI903X_WDT, NIC7018_WDT as modules
+ * wireless: Enable MT76x0U, MT76x2E, MT76x2U, QTNFMAC_PEARL_PCIE as modules
+ (Closes: #918331)
+ * zram: Enable ZRAM_WRITEBACK, ZRAM_MEMORY_TRACKING
+ * udeb: Add scsi-nic-modules containing Chelsio and Qlogic iSCSI/FC drivers
+
+ [ Marcin Juszkiewicz ]
+ * [arm64] enable ARM_CCI_PMU so ARM_CCI400_PMU and ARM_CCI5xx_PMU options
+ get really enabled.
+ * [arm64] enable PCI_PRI, PCI_PASID as PCI can be behind IOMMU in servers.
+ * udeb: Add virtio-gpu into d-i to get graphical output in VM instances.
+ * [arm64] Enable ARM64_ERRATUM_843419 (Closes: #920866)
+
+ [ Salvatore Bonaccorso ]
+ * [x86] kvmclock: set offset for kvm unstable clock (Closes: #918036)
+ * kvm: fix kvm_ioctl_create_device() reference counting (CVE-2019-6974)
+ * [x86] KVM: work around leak of uninitialized stack contents
+ (CVE-2019-7222)
+ * [x86] KVM: nVMX: unconditionally cancel preemption timer in free_nested
+ (CVE-2019-7221)
+ * HID: debug: fix the ring buffer implementation (CVE-2019-3819)
+
+ [ Hideki Yamane ]
+ * [x86] Enable Touchpad support on Gemini Lake via CONFIG_PINCTRL_GEMINILAKE
+ (Closes: #917388)
+ * [x86] Enable SND_SOC_ES8316 and Baytrail & Cherrytrail with ES8316 codec,
+ too (Closes: #918589)
+ * hwmon: Enable CONFIG_SENSORS_NCT7802,NCT7904,NPCM7XX,ASPEED and W83773G
+ to use HWMON hardware (Closes: #912597)
+ * net: can: Enable CONFIG_CAN_PEAK_PCIEFD for a PCI express CAN Bus adapter
+ (Closes: #920809)
+ * [armhf] Enable CONFIG_SENSORS_LM75 for armhf (Closes: #918114)
+ * [armhf] Enable CONFIG_IMX_THERMAL for armhf (Closes: #883023)
+ * [arm64] Enable CONFIG_ARM_ARMADA_37XX_CPUFREQ for arm64 (Closes: #917939)
+
+ [ Vagrant Cascadian ]
+ * [armhf] Enable CONFIG_MMC_SDHCI_OMAP=m, used on DRA7 and related SoCs.
+
+ [ Uwe Kleine-König ]
+ * [armel] add spi-orion to mtd.udeb to be able to access spi flash on e.g.
+ qnap ts-21x. (Closes: #920607)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 11 Feb 2019 16:55:59 +0000
+
+linux (4.19.16-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.14
+ - ax25: fix a use-after-free in ax25_fillin_cb()
+ - gro_cell: add napi_disable in gro_cells_destroy
+ - ip6mr: Fix potential Spectre v1 vulnerability
+ - ipv4: Fix potential Spectre v1 vulnerability
+ - ipv6: explicitly initialize udp6_addr in udp_sock_create6()
+ - ipv6: tunnels: fix two use-after-free
+ - ip: validate header length on virtual device xmit
+ - isdn: fix kernel-infoleak in capi_unlocked_ioctl
+ - net/wan: fix a double free in x25_asy_open_tty()
+ - packet: validate address length
+ - packet: validate address length if non-zero
+ - ptr_ring: wrap back ->producer in __ptr_ring_swap_queue()
+ - sctp: initialize sin6_flowinfo for ipv6 addrs in sctp_inet6addr_event
+ - tipc: compare remote and local protocols in tipc_udp_enable()
+ - tipc: fix a double free in tipc_enable_bearer()
+ - tipc: fix a double kfree_skb()
+ - ipv6: frags: Fix bogus skb->sk in reassembled packets
+ - ipv6: route: Fix return value of ip6_neigh_lookup() on neigh_create()
+ error
+ - ALSA: rme9652: Fix potential Spectre v1 vulnerability
+ - ALSA: emu10k1: Fix potential Spectre v1 vulnerabilities
+ - ALSA: pcm: Fix potential Spectre v1 vulnerability
+ - ALSA: emux: Fix potential Spectre v1 vulnerabilities
+ - powerpc/fsl: Fix spectre_v2 mitigations reporting
+ - usb: r8a66597: Fix a possible concurrency use-after-free bug in
+ r8a66597_endpoint_disable()
+ - [s390x] s390/pci: fix sleeping in atomic during hotplug
+ - [x86] x86/speculation/l1tf: Drop the swap storage limit restriction when
+ l1tf=off
+ - [x86] x86/mm: Drop usage of __flush_tlb_all() in
+ kernel_physical_mapping_init()
+ - [x86] KVM: x86: Use jmp to invoke kvm_spurious_fault() from .fixup
+ - [arm64] arm64: KVM: Make VHE Stage-2 TLB invalidation operations
+ non-interruptible
+ - perf pmu: Suppress potential format-truncation warning
+ - perf env: Also consider env->arch == NULL as local operation
+ - ext4: fix possible use after free in ext4_quota_enable
+ - ext4: missing unlock/put_page() in ext4_try_to_write_inline_data()
+ - ext4: include terminating u32 in size of xattr entries when expanding
+ inodes
+ - ext4: force inode writes when nfsd calls commit_metadata()
+ - ext4: check for shutdown and r/o file system in ext4_write_inode()
+ - [armhf,arm64] spi: bcm2835: Fix race on DMA termination
+ - [armhf,arm64] spi: bcm2835: Fix book-keeping of DMA termination
+ - [armhf,arm64] spi: bcm2835: Avoid finishing transfer prematurely in IRQ
+ mode
+ - btrfs: dev-replace: go back to suspended state if target device is missing
+ - btrfs: dev-replace: go back to suspend state if another EXCL_OP is running
+ - btrfs: skip file_extent generation check for free_space_inode in
+ run_delalloc_nocow
+ - Btrfs: fix fsync of files with multiple hard links in new directories
+ - btrfs: run delayed items before dropping the snapshot
+ - Btrfs: send, fix race with transaction commits that create snapshots
+ - brcmfmac: Fix out of bounds memory access during fw load
+ - dax: Don't access a freed inode
+ - f2fs: read page index before freeing
+ - f2fs: sanity check of xattr entry size
+ - media: imx274: fix stack corruption in imx274_read_reg
+ - media: v4l2-tpg: array index could become negative
+ - tools lib traceevent: Fix processing of dereferenced args in bprintk
+ events
+ - [mips*] MIPS: math-emu: Write-protect delay slot emulation pages
+ - [mips*] MIPS: Ensure pmd_present() returns false after pmd_mknotpresent()
+ - [mips*] MIPS: Align kernel load address to 64KB
+ - [mips*] MIPS: Expand MIPS32 ASIDs to 64 bits
+ - CIFS: Fix error mapping for SMB2_LOCK command which caused OFD lock
+ problem
+ - smb3: fix large reads on encrypted connections
+ - [arm*] KVM: arm/arm64: vgic: Cap SPIs to the VM-defined maximum
+ - [arm*] KVM: arm/arm64: vgic-v2: Set active_source to 0 when restoring
+ state
+ - [arm*] KVM: arm/arm64: vgic: Fix off-by-one bug in vgic_get_irq()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.15
+ - IB/core: Fix oops in netdev_next_upper_dev_rcu()
+ - xfrm: Fix NULL pointer dereference in xfrm_input when skb_dst_force
+ clears the dst_entry.
+ - ieee802154: hwsim: fix off-by-one in parse nested
+ - netfilter: seqadj: re-load tcp header pointer after possible head
+ reallocation
+ - scsi: bnx2fc: Fix NULL dereference in error handling
+ - [ppc64el] ibmvnic: Convert reset work item mutex to spin lock
+ - [ppc64el] ibmvnic: Fix non-atomic memory allocation in IRQ context
+ - [x86] x86/mm: Fix guard hole handling
+ - i40e: fix mac filter delete when setting mac address
+ - ixgbe: Fix race when the VF driver does a reset
+ - netfilter: nat: can't use dst_hold on noref dst
+ - bnx2x: Clear fip MAC when fcoe offload support is disabled
+ - bnx2x: Remove configured vlans as part of unload sequence.
+ - bnx2x: Send update-svid ramrod with retry/poll flags enabled
+ - mt76: fix potential NULL pointer dereference in mt76_stop_tx_queues
+ - [x86] x86, hyperv: remove PCI dependency
+ - [arm64] net: hns: All ports can not work when insmod hns ko after rmmod.
+ - [arm64] net: hns: Fixed bug that netdev was opened twice
+ - [arm64] net: hns: Clean rx fbd when ae stopped.
+ - [arm64] net: hns: Avoid net reset caused by pause frames storm
+ - [arm64] net: hns: Add mac pcs config when enable|disable mac
+ - [arm64] net: hns: Fix ping failed when use net bridge and send multicast
+ - mac80211: fix a kernel panic when TXing after TXQ teardown
+ - [arm64,riscv64] net: macb: fix random memory corruption on RX with
+ 64-bit DMA
+ - [arm64.risvv64] net: macb: fix dropped RX frames due to a race
+ - lan78xx: Resolve issue with changing MAC address
+ - [s390x] scsi: zfcp: fix posting too many status read buffers leading to
+ adapter shutdown
+ - fork: record start_time late
+ - zram: fix double free backing device
+ - hwpoison, memory_hotplug: allow hwpoisoned pages to be offlined
+ - mm, devm_memremap_pages: kill mapping "System RAM" support
+ - memcg, oom: notify on oom killer invocation from the charge path
+ - mt76x0: init hw capabilities
+ - [amd64] media: cx23885: only reset DMA on problematic CPUs
+ - ALSA: cs46xx: Potential NULL dereference in probe
+ - ALSA: usb-audio: Avoid access before bLength check in
+ build_audio_procunit()
+ - ALSA: usb-audio: Check mixer unit descriptors more strictly
+ - ALSA: usb-audio: Fix an out-of-bound read in create_composite_quirks
+ - ALSA: usb-audio: Always check descriptor sizes in parser code
+ - Fix failure path in alloc_pid()
+ - block: deactivate blk_stat timer in wbt_disable_default()
+ - gfs2: Get rid of potential double-freeing in gfs2_create_inode
+ - gfs2: Fix loop in gfs2_rbm_find
+ - b43: Fix error in cordic routine
+ - nfsd4: zero-length WRITE should succeed
+ - [ppc*] powerpc/tm: Set MSR[TS] just prior to recheckpoint
+ - RDMA/srpt: Fix a use-after-free in the channel release code
+ - sched/fair: Fix infinite loop in update_blocked_averages() by reverting
+ a9e7f6544b9c
+ - [s390x] genwqe: Fix size check
+ - [x86] intel_th: msu: Fix an off-by-one in attribute store
+ - [armhf,arm64] drm/rockchip: psr: do not dereference encoder before it is
+ null checked.
+ - bnx2x: Fix NULL pointer dereference in bnx2x_del_all_vlans() on some hw
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.16
+ - Btrfs: fix deadlock when using free space tree due to block group
+ creation
+ - staging: rtl8188eu: Fix module loading from tasklet for CCMP encryption
+ - staging: rtl8188eu: Fix module loading from tasklet for WEP encryption
+ - cpufreq: scmi: Fix frequency invariance in slow path
+ - [x86] modpost: Replace last remnants of RETPOLINE with CONFIG_RETPOLINE
+ - ALSA: hda/realtek - Support Dell headset mode for New AIO platform
+ - ALSA: hda/realtek - Add unplug function into unplug state of Headset Mode
+ for ALC225
+ - ALSA: hda/realtek - Disable headset Mic VREF for headset mode of ALC225
+ - CIFS: Fix adjustment of credits for MTU requests
+ - CIFS: Do not set credits to 1 if the server didn't grant anything
+ - CIFS: Do not hide EINTR after sending network packets
+ - CIFS: Fix credit computation for compounded requests
+ - cifs: Fix potential OOB access of lock element array
+ - usb: cdc-acm: send ZLP for Telit 3G Intel based modems
+ - USB: storage: don't insert sane sense for SPC3+ when bad sense specified
+ - USB: storage: add quirk for SMI SM3350
+ - USB: Add USB_QUIRK_DELAY_CTRL_MSG quirk for Corsair K70 RGB
+ - slab: alien caches must not be initialized if the allocation of the alien
+ cache failed
+ - mm/usercopy.c: no check page span for stack objects
+ - mm, memcg: fix reclaim deadlock with writeback
+ - ACPI: power: Skip duplicate power resource references in _PRx
+ - ACPI / PMIC: xpower: Fix TS-pin current-source handling
+ - ACPI/IORT: Fix rc_dma_get_range()
+ - i2c: dev: prevent adapter retries and timeout being set as minus value
+ - vfio/type1: Fix unmap overflow off-by-one
+ - drm/amdgpu: Add new VegaM pci id
+ - PCI: dwc: Use interrupt masking instead of disabling
+ - PCI: dwc: Take lock when ACKing an interrupt
+ - PCI: dwc: Move interrupt acking into the proper callback
+ - drm/amd/display: Fix MST dp_blank REG_WAIT timeout
+ - drm/fb_helper: Allow leaking fbdev smem_start
+ - drm/fb-helper: Partially bring back workaround for bugs of SDL 1.2
+ - [x86] drm/i915: Unwind failure on pinning the gen7 ppgtt
+ - drm/amdgpu: Don't ignore rc from drm_dp_mst_topology_mgr_resume()
+ - drm/amdgpu: Don't fail resume process if resuming atomic state fails
+ - rbd: don't return 0 on unmap if RBD_DEV_FLAG_REMOVING is set
+ - ext4: make sure enough credits are reserved for dioread_nolock writes
+ - ext4: fix a potential fiemap/page fault deadlock w/ inline_data
+ - ext4: avoid kernel warning when writing the superblock to a dead device
+ - ext4: use ext4_write_inode() when fsyncing w/o a journal
+ - ext4: track writeback errors using the generic tracking infrastructure
+ - ext4: fix special inode number checks in __ext4_iget()
+ - mm: page_mapped: don't assume compound page is huge or THP
+ - sunrpc: use-after-free in svc_process_common()
+ - [armhf,arm64] KVM: Fix VMID alloc race by reverting to lock-less
+ - [arm64] compat: Don't pull syscall number from regs in arm_compat_syscall
+ - Btrfs: fix access to available allocation bits when starting balance
+ - Btrfs: fix deadlock when enabling quotas due to concurrent snapshot
+ creation
+ - Btrfs: use nofs context when initializing security xattrs to avoid
+ deadlock
+
+ [ John Paul Adrian Glaubitz ]
+ * [m68k] Add patch to build with -ffreestanding to fix FTBFS
+
+ [ Ben Hutchings ]
+ * [ia64,m68k] libbpf: Really don't build on architectures without perf events
+ * Use dh_listpackages to determine which packages to build
+ * Add pkg.linux.nokernel build profile that excludes kernel image and header
+ packages
+
+ [ Yves-Alexis Perez ]
+ * Bump ABI to 2 because of changes in struct sock_common from 60f05dddf1eb
+ * [rt] Update to 4.19.15-rt12
+ - rtmutex/rwlock: preserve state like a sleeping lock
+
+ [ Salvatore Bonaccorso ]
+ * ipv6: Consider sk_bound_dev_if when binding a socket to an address
+ (Closes: #918103)
+ * posix-cpu-timers: Unbreak timer rearming (Closes: #919019, #919049)
+
+ [ Michal Simek ]
+ * [arm64] Enable Xilinx ZynqMP SoC and drivers
+
+ [ YunQiang Su ]
+ * [mipsel, mips64el] Enable DRM_AST and FB_SM750 for loongson-3
+ install ast and sm750fb to loongson-3's fb-modules
+
+ [ Romain Perier ]
+ * [rt] Update to 4.19.13-rt10
+
+ [ Luigi Baldoni ]
+ * [x86] Enable LEDS_APU to support leds on PC Engines
+ APU SBC series
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 17 Jan 2019 18:56:17 +0000
+
+linux (4.19.13-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.13
+ - Revert "vfs: Allow userns root to call mknod on owned filesystems."
+ - USB: hso: Fix OOB memory access in hso_probe/hso_get_config_data
+ (CVE-2018-19985)
+ - xhci: Don't prevent USB2 bus suspend in state check intended for USB3
+ only
+ - USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd
+ - USB: serial: option: add GosunCn ZTE WeLink ME3630
+ - USB: serial: option: add HP lt4132
+ - USB: serial: option: add Simcom SIM7500/SIM7600 (MBIM mode)
+ - USB: serial: option: add Fibocom NL668 series
+ - USB: serial: option: add Telit LN940 series
+ - ubifs: Handle re-linking of inodes correctly while recovery
+ - scsi: t10-pi: Return correct ref tag when queue has no integrity profile
+ - scsi: sd: use mempool for discard special page
+ - mmc: core: Reset HPI enabled state during re-init and in case of errors
+ - mmc: core: Allow BKOPS and CACHE ctrl even if no HPI support
+ - mmc: core: Use a minimum 1600ms timeout when enabling CACHE ctrl
+ - [armhf] mmc: omap_hsmmc: fix DMA API warning
+ - gpiolib-acpi: Only defer request_irq for GpioInt ACPI event handlers
+ - posix-timers: Fix division by zero bug
+ - [x86] KVM: Fix NULL deref in vcpu_scan_ioapic
+ - [x86] kvm: Add AMD's EX_CFG to the list of ignored MSRs
+ - [x86] KVM: Fix UAF in nested posted interrupt processing
+ - [x86] Drivers: hv: vmbus: Return -EINVAL for the sys files for unopened
+ channels
+ - futex: Cure exit race
+ - [x86] mtrr: Don't copy uninitialized gentry fields back to userspace
+ - [x86] mm: Fix decoy address handling vs 32-bit builds (Closes: #917569)
+ - [x86] vdso: Pass --eh-frame-hdr to the linker
+ - panic: avoid deadlocks in re-entrant console drivers
+ - mm: add mm_pxd_folded checks to pgtable_bytes accounting functions
+ - mm: make the __PAGETABLE_PxD_FOLDED defines non-empty
+ - mm: introduce mm_[p4d|pud|pmd]_folded
+ - xfrm_user: fix freeing of xfrm states on acquire
+ - rtlwifi: Fix leak of skb when processing C2H_BT_INFO
+ - iwlwifi: mvm: don't send GEO_TX_POWER_LIMIT to old firmwares
+ - Revert "mwifiex: restructure rx_reorder_tbl_lock usage"
+ - iwlwifi: add new cards for 9560, 9462, 9461 and killer series
+ - mm, memory_hotplug: initialize struct pages for the full memory section
+ - mm: thp: fix flags for pmd migration when split
+ - mm, page_alloc: fix has_unmovable_pages for HugePages
+ - mm: don't miss the last page because of round-off error
+ - Input: elantech - disable elan-i2c for P52 and P72
+ - proc/sysctl: don't return ENOMEM on lookup when a table is unregistering
+ - drm/ioctl: Fix Spectre v1 vulnerabilities
+
+ [ Uwe Kleine-König ]
+ * [armhf] enable some kconfig items for Allwinner SoCs (SUNXI_CCU=y,
+ SUN8I_DE2_CCU=y, DRM_SUN8I_DW_HDMI=m, SND_SUN8I_CODEC=m,
+ SND_SUN8I_CODEC_ANALOG=m). (Closes: #915899)
+
+ [ Ben Hutchings ]
+ * linux-image-*-unsigned: Remove Provides field (Closes: #916927)
+ * [ia64,m68k] libbpf: Don't build on architectures without performance events
+ * [riscv64] tools uapi: fix RISC-V 64-bit support
+ * [powerpc,powerpcspe,ppc64] linux-config: Eliminate config.*_bootwrapper.gz
+ files
+ * [powerpcspe] Fix -mcpu= options for SPE-only compiler
+ * debian/lib/python/debian_linux/debian.py: Fix deprecated import of
+ MutableSet
+ * Fix pycodestyle "line break after binary operator" warnings
+ * Fix pycodestyle "inalid escape sequence" warnings
+
+ [ Romain Perier ]
+ * [rt] Update to 4.19.10-rt8
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 30 Dec 2018 10:04:03 +0100
+
+linux (4.19.12-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.10
+ - ipv4: ipv6: netfilter: Adjust the frag mem limit when truesize changes
+ - ipv6: Check available headroom in ip6_xmit() even without options
+ - ipv6: sr: properly initialize flowi6 prior passing to ip6_route_output
+ - [arm64, hppa, powerpc, x86, alpha, armhf, mips*] net: 8139cp: fix a BUG
+ triggered by changing mtu with network traffic
+ - net: phy: don't allow __set_phy_supported to add unsupported modes
+ - net: Prevent invalid access to skb->prev in __qdisc_drop_all
+ - net: use skb_list_del_init() to remove from RX sublists
+ - Revert "net/ibm/emac: wrong bit is used for STA control"
+ - rtnetlink: ndo_dflt_fdb_dump() only work for ARPHRD_ETHER devices
+ - sctp: kfree_rcu asoc
+ - tcp: Do not underestimate rwnd_limited
+ - tcp: fix NULL ref in tail loss probe
+ - tun: forbid iface creation with rtnl ops
+ - virtio-net: keep vnet header zeroed after processing XDP
+ - net: phy: sfp: correct store of detected link modes
+ - sctp: update frag_point when stream_interleave is set
+ - net: restore call to netdev_queue_numa_node_write when resetting XPS
+ - net: fix XPS static_key accounting
+ - [armhf] OMAP2+: prm44xx: Fix section annotation on
+ omap44xx_prm_enable_io_wakeup
+ - [arm64, x86] staging: rtl8723bs: Fix the return value in case of error in
+ 'rtw_wx_read32()'
+ - [armhf] dts: am3517: Fix pinmuxing for CD on MMC1
+ - [armhf] dts: LogicPD Torpedo: Fix mmc3_dat1 interrupt
+ - [armhf] dts: logicpd-somlv: Fix interrupt on mmc3_dat1
+ - [armhf] dts: am3517-som: Fix WL127x Wifi interrupt
+ - tools: bpftool: prevent infinite loop in get_fdinfo()
+ - [arm64] dts: sdm845-mtp: Reserve reserved gpios
+ - sysv: return 'err' instead of 0 in __sysv_write_inode
+ - netfilter: nf_tables: don't skip inactive chains during update
+ - perf tools: Fix crash on synthesizing the unit
+ - netfilter: xt_RATEEST: remove netns exit routine
+ - netfilter: nf_tables: fix use-after-free when deleting compat expressions
+ - [armhf] ASoC: rockchip: add missing slave_config setting for I2S
+ - s390/cpum_cf: Reject request for sampling in event initialization
+ - [arm64, armel, x86, armhf] ASoC: dapm: Recalculate audio map forcely when
+ card instantiated
+ - [armhf] spi: omap2-mcspi: Add missing suspend and resume calls
+ - bpf: allocate local storage buffers using GFP_ATOMIC
+ - aio: fix failure to put the file pointer
+ - netfilter: xt_hashlimit: fix a possible memory leak in htable_create()
+ - hwmon: (w83795) temp4_type has writable permission
+ - perf tools: Restore proper cwd on return from mnt namespace
+ - [armhf] PCI: imx6: Fix link training status detection in link up check
+ - objtool: Fix double-free in .cold detection error path
+ - objtool: Fix segfault in .cold detection with -ffunction-sections
+ - [arm64] phy: qcom-qusb2: Use HSTX_TRIM fused value as is
+ - [arm64] phy: qcom-qusb2: Fix HSTX_TRIM tuning with fused value for SDM845
+ - Btrfs: send, fix infinite loop due to directory rename dependencies
+ - RDMA/mlx5: Fix fence type for IB_WR_LOCAL_INV WR
+ - RDMA/core: Add GIDs while changing MAC addr only for registered ndev
+ - RDMA/rdmavt: Fix rvt_create_ah function signature
+ - tools: bpftool: fix potential NULL pointer dereference in do_load
+ - ipvs: call ip_vs_dst_notifier earlier than ipv6_dev_notf
+ - [x86] thunderbolt: Prevent root port runtime suspend during NVM upgrade
+ - [arm64] drm/meson: add support for 1080p25 mode
+ - netfilter: ipv6: Preserve link scope traffic original oif
+ - IB/mlx5: Fix page fault handling for MW
+ - netfilter: add missing error handling code for register functions
+ - [x86] KVM: VMX: Update shared MSRs to be saved/restored on MSR_EFER.LMA
+ changes
+ - [x86] kvm/vmx: fix old-style function declaration
+ - [arm64] net: thunderx: fix NULL pointer dereference in nic_remove
+ - netfilter: nf_tables: deactivate expressions in rule replecement routine
+ - ALSA: usb-audio: Add vendor and product name for Dell WD19 Dock
+ - cachefiles: Fix an assertion failure when trying to update a failed object
+ - fscache: Fix race in fscache_op_complete() due to split atomic_sub & read
+ - cachefiles: Fix page leak in cachefiles_read_backing_file while vmscan is
+ active
+ - igb: fix uninitialized variables
+ - ixgbe: recognize 1000BaseLX SFP modules as 1Gbps
+ - [arm64] net: hisilicon: remove unexpected free_netdev
+ - drm/amdgpu: Add delay after enable RLC ucode
+ - [arm64, powerpc, x86] drm/ast: fixed reading monitor EDID not stable issue
+ - Revert "xen/balloon: Mark unallocated host memory as UNUSABLE"
+ - afs: Fix validation/callback interaction
+ - fscache: fix race between enablement and dropping of object
+ - cachefiles: Explicitly cast enumerated type in put_object
+ - fscache, cachefiles: remove redundant variable 'cache'
+ - nvme: warn when finding multi-port subsystems without multipathing enabled
+ - ocfs2: fix deadlock caused by ocfs2_defrag_extent()
+ - mm/page_alloc.c: fix calculation of pgdat->nr_zones
+ - hfs: do not free node before using
+ - hfsplus: do not free node before using
+ - initramfs: clean old path before creating a hardlink
+ - ocfs2: fix potential use after free
+ - dax: Check page->mapping isn't NULL
+ - ALSA: hda/realtek - Fixed headphone issue for ALC700
+ - ALSA: hda/realtek: ALC294 mic and headset-mode fixups for ASUS X542UN
+ - ALSA: hda/realtek: Enable audio jacks of ASUS UX533FD with ALC294
+ - ALSA: hda/realtek: Enable audio jacks of ASUS UX433FN/UX333FA with ALC294
+ - ALSA: hda/realtek - Fix the mute LED regresion on Lenovo X1 Carbon
+ - IB/hfi1: Fix an out-of-bounds access in get_hw_stats
+ - bpf: fix off-by-one error in adjust_subprog_starts
+ - tcp: lack of available data can also cause TSO defer
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.11
+ - sched/pelt: Fix warning and clean up IRQ PELT config
+ - scsi: raid_attrs: fix unused variable warning
+ - [i386] staging: olpc_dcon: add a missing dependency
+ - [arm64] dts: qcom-apq8064-arrow-sd-600eval fix graph_endpoint warning
+ - [arm64] drm/msm: fix address space warning
+ - aio: fix spectre gadget in lookup_ioctx
+ - fs/iomap.c: get/put the page in iomap_page_create/release()
+ - userfaultfd: check VM_MAYWRITE was set after verifying the uffd is
+ registered
+ - [arm64] dma-mapping: Fix FORCE_CONTIGUOUS buffer clearing
+ - block/bio: Do not zero user pages
+ - ovl: fix decode of dir file handle with multi lower layers
+ - ovl: fix missing override creds in link of a metacopy upper
+ - [armhf] MMC: OMAP: fix broken MMC on OMAP15XX/OMAP5910/OMAP310
+ - mmc: core: use mrq->sbc when sending CMD23 for RPMB
+ - mmc: sdhci: fix the timeout check window for clock and reset
+ - fuse: continue to send FUSE_RELEASEDIR when FUSE_OPEN returns ENOSYS
+ - [arm] mmp/mmp2: fix cpu_is_mmp2() on mmp2-dt
+ - [arm] dts: bcm2837: Fix polarity of wifi reset GPIOs (Closes: #911443)
+ - dm thin: send event about thin-pool state change _after_ making it
+ - dm cache metadata: verify cache has blocks in
+ blocks_are_clean_separate_dirty()
+ - dm: call blk_queue_split() to impose device limits on bios
+ - tracing: Fix memory leak of instance function hash filters
+ - [powerpc*] msi: Fix NULL pointer access in teardown code
+ - drm/nouveau/kms: Fix memory leak in nv50_mstm_del()
+ - drm/nouveau/kms/nv50-: also flush fb writes when rewinding push buffer
+ - Revert "drm/rockchip: Allow driver to be shutdown on reboot/kexec"
+ - [x86] drm/i915/execlists: Apply a full mb before execution for Braswell
+ - [amd64] drm/amdkfd: add new vega10 pci ids
+ - drm/amdgpu: add some additional vega10 pci ids
+ - drm/amdgpu: update smu firmware images for VI variants (v2)
+ - drm/amdgpu: update SMC firmware image for polaris10 variants
+ - [x86] build: Fix compiler support check for CONFIG_RETPOLINE
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.12
+ - locking/qspinlock: Re-order code
+ - [x86] locking/qspinlock, x86: Provide liveness guarantee
+ - [amd64] IB/hfi1: Remove race conditions in user_sdma send path
+ - mac80211_hwsim: fix module init error paths for netlink
+ - [x86] Input: hyper-v - fix wakeup from suspend-to-idle
+ - scsi: libiscsi: Fix NULL pointer dereference in iscsi_eh_session_reset
+ - [x86] scsi: vmw_pscsi: Rearrange code to avoid multiple calls to
+ free_irq during unload
+ - [x86] earlyprintk/efi: Fix infinite loop on some screen widths
+ - [arm64] drm/msm: Fix task dump in gpu recovery
+ - [arm64] drm/msm/gpu: Fix a couple memory leaks in debugfs
+ - [arm64] drm/msm: fix handling of cmdstream offset
+ - [arm64] drm/msm/dsi: configure VCO rate for 10nm PLL driver
+ - [arm64] drm/msm: Grab a vblank reference when waiting for commit_done
+ - drm/ttm: fix LRU handling in ttm_buffer_object_transfer
+ - drm/amdgpu: wait for IB test on first device open
+ - [arm64,armhf] net: stmmac: Move debugfs init/exit to
+ ->probe()/->remove()
+ - [amd64] net: aquantia: fix rx checksum offload bits
+ - bonding: fix 802.3ad state sent to partner when unbinding slave
+ - liquidio: read sc->iq_no before release sc
+ - nfs: don't dirty kernel pages read by direct-io
+ - SUNRPC: Fix a potential race in xprt_connect()
+ - [sparc64] sbus: char: add of_node_put()
+ - [sparc64] drivers/sbus/char: add of_node_put()
+ - [sparc64] drivers/tty: add missing of_node_put()
+ - [arm64] drm/msm/hdmi: Enable HPD after HDMI IRQ is set up
+ - [amr64] drm/msm: dpu: Don't set legacy plane->crtc pointer
+ - [arm64] drm/msm: dpu: Fix "WARNING: invalid free of devm_ allocated
+ data"
+ - [arm64] drm/msm: Fix error return checking
+ - [arm64] clk: mvebu: Off by one bugs in cp110_of_clk_get()
+ - Input: synaptics - enable SMBus for HP 15-ay000
+ - [armhf] Input: omap-keypad - fix keyboard debounce configuration
+ - libata: whitelist all SAMSUNG MZ7KM* solid-state disks
+ - macvlan: return correct error value
+ - [arm64,armhf] mv88e6060: disable hardware level MAC learning
+ - net/mlx4_en: Fix build break when CONFIG_INET is off
+ - bpf: check pending signals while verifying programs
+ - [arm*] 8814/1: mm: improve/fix ARM v7_dma_inv_range() unaligned address
+ handling
+ - [arm*] 8815/1: V7M: align v7m_dma_inv_range() with v7 counterpart
+ - [arm*] 8816/1: dma-mapping: fix potential uninitialized return
+ - [arm64,armhf] thermal: armada: fix legacy validity test sense
+ - [arm64,armhf] net: mvpp2: fix detection of 10G SFP modules
+ - [arm64,armhf] net: mvpp2: fix phylink handling of invalid PHY modes
+ - drm/amdgpu/vcn: Update vcn.cur_state during suspend
+ - [amd64,arm64] acpi/nfit: Fix user-initiated ARS to be "ARS-long" rather
+ than "ARS-short"
+ - drm/ast: Fix connector leak during driver unload
+ - cifs: In Kconfig CONFIG_CIFS_POSIX needs depends on legacy (insecure
+ cifs)
+ - vhost/vsock: fix reset orphans race with close timeout
+ - [x86] i2c: scmi: Fix probe error on devices with an empty SMB0001 ACPI
+ device node
+ - nvme: validate controller state before rescheduling keep alive
+ - nvmet-rdma: fix response use after free
+ - Btrfs: fix missing delayed iputs on unmount
+
+ [ Uwe Kleine-König ]
+ * [arm] Fix probing of 3rd gpio device on Armada 370.
+
+ [ Ben Hutchings ]
+ * linux-perf: Fix build-time check for unversioned files
+ * linux-perf: Fix installation directories for BPF headers and examples
+ (Closes: #916774)
+
+ [ Noah Meyerhans ]
+ * drivers/net/ethernet/amazon: Backport v2.0.2 from Linux 4.20
+
+ [ Bastian Blank ]
+ * Ignore various ABI changes.
+
+ [ Salvatore Bonaccorso ]
+ * iomap: Revert "fs/iomap.c: get/put the page in
+ iomap_page_create/release()"
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 22 Dec 2018 09:06:45 +0100
+
+linux (4.19.9-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.6
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.7
+ - [x86] KVM: LAPIC: Fix pv ipis use-before-initialization (CVE-2018-19406)
+ - mm: cleancache: fix corruption on missed inode invalidation
+ (CVE-2018-16862)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.8
+ - blk-mq: fix corruption with direct issue (Closes: #915666)
+ - userfaultfd: use ENOENT instead of EFAULT if the atomic copy user fails
+ (CVE-2018-18397)
+ - userfaultfd: shmem: allocate anonymous memory for MAP_PRIVATE shmem
+ (CVE-2018-18397)
+ - userfaultfd: shmem: add i_size checks (CVE-2018-18397)
+ - userfaultfd: shmem: UFFDIO_COPY: set the page dirty if VM_WRITE is not
+ set (CVE-2018-18397)
+ - blk-mq: punt failed direct issue to dispatch list
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.9
+ - ALSA: usb-audio: Fix UAF decrement if card has no live interfaces in
+ card.c (CVE-2018-19824)
+ - vhost/vsock: fix use-after-free in network stack callers
+ (CVE-2018-14625)
+
+ [ Marcin Juszkiewicz ]
+ * [arm64] Enable ACPI IMPI
+ * [arm64] Enable IPMI watchdog and power off support
+ * [arm64] Enable PCI Express hotplug
+ * [arm64] Enable PMU for several server cpus
+ * [arm64] Enable HiSilicon LPC for serial/ipmi access
+
+ [ Romain Perier ]
+ * [x86] Enable support for error detection and correction on the Intel
+ Pondicherry2 Integrated Memory Controller (Closes: #914946)
+ * [rt] Update to 4.19.8-rt6
+
+ [ Uwe Kleine-König ]
+ * Enable usb support for ATH10K (Closes: #915083)
+
+ [ Luca Boccassi ]
+ * debian/rules.real: Split the rules so that the [un]versioned_tools
+ knobs can be used to avoid building them. Fixes FTBFS with unversioned
+ tools disabled.
+ * perf: do not ship python2-only call-graph-from-sql script.
+ * Override Lintian warning dbg-package-missing-depends in source too.
+
+ [ Ben Hutchings ]
+ * debian/rules.real: Mark most targets as phony
+ * debian/rules: Mark more targets as phony
+ * libcpupower: Hide private function and drop it from .symbols file
+ * integrity: Disable INTEGRITY_TRUSTED_KEYRING (Closes: #865277)
+
+ [ Vagrant Cascadian ]
+ * debian/config/config: Enable Z3FOLD as a module.
+
+ [ Salvatore Bonaccorso ]
+ * Set ABI to 1
+
+ [ Nicolas Schier ]
+ * ovl: permit overlayfs mounts in user namespaces (Closes: #913880)
+
+ [ Hilko Bengen ]
+ * Add patches to build libbpf.so with SONAME, link against libelf
+ * Add versioned libbpf, libbpf-dev package (Closes: #914428)
+
+ [ Hans van Kranenburg ]
+ * [x86] Add patch to repair booting as Xen dom0 (Closes: #914951)
+ * [x86] Add patches to support booting a Xen PVH guest via Grub2
+
+ [ Christoph Anton Mitterer ]
+ * crypto: Enable MORUS and AEGIS AEAD ciphers (Closes: #914136)
+ * [amd64]: Enable AES-NI/SSE2/AVX2 optimised implementations of the MORUS
+ and AEGIS AEAD ciphers
+
+ [ Bastian Blank ]
+ * Enable NFT_CONNLIMIT, NFT_TUNNEL, NFT_SOCKET, NFT_OSF, NFT_TPROXY,
+ IP_VS_MH.
+ * Enable netfilter flow table support.
+ * [x86] Enable DRM_XEN_FRONTEND.
+ * Enable EFI_BOOTLOADER_CONTROL, EFI_CAPSULE_LOADER.
+
+ -- Bastian Blank <waldi@debian.org> Sun, 16 Dec 2018 19:45:54 +0100
+
+linux (4.19.5-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.19
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.1
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.2
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.3
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.4
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.19.5
+
+ [ Ben Hutchings ]
+ * linux-perf: Enable verbose output for build-time feature detection
+ * udeb: Define mtd-core-modules package to contain MTD core if not built-in
+ * udeb: Move MTD core from nic-modules to mtd-core-modules
+ * debian/changelog: Move older entries to changelog.old
+ * debian/rules: Checksum only the source name and version from
+ debian/changelog
+ * Move generation of CONFIG_BUILD_SALT to gencontrol.py
+ * [x86] hyperv-daemons: Make all services conditional on device existence
+ * debian/rules.real: Fix build failure with pkg.linux.nosource profile
+ * debian/source/options: Delete redundant compression setting; satisfy
+ lintian
+ * Documentation/media: uapi: Explicitly say there are no Invariant Sections
+ (Closes: #698668)
+
+ [ Karsten Merker ]
+ * [riscv64] Build a kernel image and udebs for riscv64 (Closes: #908161)
+
+ [ Uwe Kleine-König ]
+ * [armhf,arm64] enable SND_BCM2835 as a module (Closes: #911121)
+ * Enable Orange filesystem (Closes: #911743)
+ * [arm64] Enable hns3 network driver as a module. (Closes: #914422)
+
+ [ Noah Meyerhans ]
+ * [cloud-amd64] Enable Amazon ENA ethernet driver (Closes: #910049)
+
+ [ Romain Perier ]
+ * [rt] Update to 4.19.1-rt3
+ * [rt] Update patch arm-disable-NEON-in-kernel-mode.patch, so it can be
+ applied onto 4.19.2
+ * [rt] Update patch
+ irq-allow-disabling-of-softirq-processing-in-irq-thread-context.patch, so
+ it can be applied onto 4.19.2
+ * [amd64] Enable AMD pinctrl driver (Closes: #908954)
+ * Enable Diffie-Hellman operations on retained keys (Closes: #911998)
+ * Update patch features/all/lockdown/enable-cold-boot-attack-mitigation.patch,
+ so it can be applied onto 4.19.2
+ * [x86] Enable DisplayPort CEC-Tunneling-over-AUX HDMI support
+ (Closes: #913199)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 27 Nov 2018 20:06:42 +0100
+
+linux (4.19~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Uwe Kleine-König ]
+ * [armhf] enable MVNETA_BM_ENABLE and CAN_FLEXCAN as a module
+ * enable NET_SCH_CAKE as a module (Closes: #908709)
+ * enable HID_NTI as a module (Closes: #910260)
+
+ [ Ben Hutchings ]
+ * linux-kbuild: Include scripts/subarch.include (Closes: #910348)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 07 Oct 2018 23:48:27 +0100
+
+linux (4.19~rc6-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [ppc64el] udeb: Fix relative #include filenames in kernel-image module
+ list (really fixes FTBFS?)
+ * debian/bin, debian/lib/python: Fix most errors reported by pycodestyle
+ * debian/bin, debian/rules.real: Add symlink to Python package directory
+ instead of editing path
+ * debian/bin, debian/lib/python: Clean up imports based on pyflakes report
+ * debian/bin, debian/lib/python: Delete write-only vars reported by pyflakes
+ * debian/lib/python/debian_linux/gencontrol.py: Delete broken methods
+ * debian/lib/python/debian_linux/config.py: Fix undefined exception type
+ * Add Python static checks and unit tests to autopkgtest tests
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 03 Oct 2018 18:57:08 +0100
+
+linux (4.19~rc4-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * debian/control: Add arch-qualification to build-dependencies for linux-perf
+ (Closes: #908519)
+ * debian/control: Build-depend on libunwind-dev instead of libunwind8-dev
+ * [hppa,mips*,powerpc*,sh4] debian/control: Build-depend on libunwind-dev for
+ linux-perf
+ * debian/control: Build-depend on libnuma-dev for linux-perf on all arches
+ * debian/control: Remove "cross" from profiles for build-dep on libssl-dev
+ * [mips64*] debian/control: Build-depend on gcc-multilib for linux-perf
+ * debian/lib/python: Use raw strings for all regexes
+ * debian/control: Fix restrictions for build-deps on asciidoctor and
+ patchutils
+ * Add support for specifying build-dependencies in binary package templates
+ * debian/templates: Move various build-dependencies to binary package
+ templates
+ * linux-perf: Fix generation of Perl and Python interpreter dependencies
+ (Closes: #908547)
+ * lockdep, lib{cpupower,lockdep}-dev: Remove bogus deps on ${shlibs:Depends}
+ * debian/rules.d/tools/power/linux-cpupower: Add "+" to recursive make
+ commands
+ * tools: x86_energy_perf_policy: Fix "uninitialized variable" warnings at -O2
+ * tools: turbostat: Add checks for failure of fgets() and fscanf()
+ * debian/control: Build-depend on texlive-latex-{base,extra}, dvipng for
+ linux-doc
+ * debian/rules{,.real}: Use /usr/share/dpkg/architecture.mk
+ * debian/signing_templates/rules: Use /usr/share/dpkg/architecture.mk
+ * linux-image-*-signed-template: Add ${misc:Depends} to Depends
+ * linux-image-*-signed-template: Include changelog and copyright files
+ * linux-image-*-signed-template: Depend on dpkg-dev
+ * linux-image-*-signed-template: Override lintian warnings about non-
+ executable scripts
+ * [ia64] udeb: Fix priority of sn-modules
+ * Revert "Revert "net: increase fragment memory usage limits"", as 4.19
+ includes a better fix for CVE-2018-5391
+ * debian/patches: Add Forwarded fields to several patches
+ * [ppc64el] udeb: Fix relative #include filenames in module lists (fixes
+ FTBFS)
+ * [ppc64] udeb: Revert accidental change to nic-pcmcia-modules dependencies
+ (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 18 Sep 2018 15:52:02 +0100
+
+linux (4.19~rc3-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [s390x] linux-image: Install compressed kernel image (fixes FTBFS)
+ * [powerpc*] boot: Fix missing crc32poly.h when building with KERNEL_XZ
+ (fixes FTBFS)
+ * [x86] boot: Fix EFI stub alignment
+ * wireless: Update "wireless: Disable regulatory.db direct loading" for
+ 4.19-rc3
+ * aufs: Update support patchset to aufs4.x-rcN 20180910
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 10 Sep 2018 20:13:55 +0100
+
+linux (4.19~rc2-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Disable until it is updated for Linux 4.19
+ * debian/rules.d: Update for move of bin2c back up to scripts
+ * locking/lockdep: Delete unnecesary #include (fixes liblockdep build)
+ * [hppa] debian/control: Simplify build-dependencies for 64-bit toolchain
+ * Compile with gcc-8 on all architectures
+ * udeb: Merge configuration directories and files across architectures
+ * [alpha,hppa] udeb: Remove incorrect dependency overrides
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 03 Sep 2018 21:34:41 +0100
+
+linux (4.18.20-2) unstable; urgency=medium
+
+ * linux-kbuild: Include scripts/subarch.include (Closes: #910348)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 23 Nov 2018 19:15:55 +0000
+
+linux (4.18.20-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.11
+ - gso_segment: Reset skb->mac_len after modifying network header
+ - ipv6: fix possible use-after-free in ip6_xmit()
+ - net/appletalk: fix minor pointer leak to userspace in SIOCFINDIPDDPRT
+ - [alpha, hppa, x86] net: hp100: fix always-true check for link up state
+ - pppoe: fix reception of frames with no mac header
+ - qmi_wwan: set DTR for modems in forced USB2 mode
+ - udp4: fix IP_CMSG_CHECKSUM for connected sockets
+ - neighbour: confirm neigh entries when ARP packet is received
+ - udp6: add missing checks on edumux packet processing
+ - net/sched: act_sample: fix NULL dereference in the data path
+ - hv_netvsc: fix schedule in RCU context
+ - [arm64, armhf] net: dsa: mv88e6xxx: Fix ATU Miss Violation
+ - socket: fix struct ifreq size in compat ioctl
+ - bnxt_en: Fix VF mac address regression.
+ - ipv6: use rt6_info members when dst is set in rt6_fill_node
+ - net/ipv6: do not copy dst flags on rt init
+ - [arm64, armhf] net: mvpp2: let phylink manage the carrier state
+ - net: rtnl_configure_link: fix dev flags changes arg to __dev_notify_flags
+ - NFC: Fix possible memory corruption when handling SHDLC I-Frame commands
+ - NFC: Fix the number of pipes
+ - ASoC: uapi: fix sound/skl-tplg-interface.h userspace compilation errors
+ - ALSA: bebob: fix memory leak for M-Audio FW1814 and ProjectMix I/O at
+ error path
+ - ALSA: bebob: use address returned by kmalloc() instead of kernel stack for
+ streaming DMA mapping
+ - [powerpc*, mips*, x86, alpha, sparc*] ALSA: emu10k1: fix possible info
+ leak to userspace on SNDRV_EMU10K1_IOCTL_INFO
+ - ALSA: firewire-digi00x: fix memory leak of private data
+ - ALSA: firewire-tascam: fix memory leak of private data
+ - ALSA: fireworks: fix memory leak of response buffer at error path
+ - ALSA: oxfw: fix memory leak for model-dependent data at error path
+ - ALSA: oxfw: fix memory leak of discovered stream formats at error path
+ - ALSA: oxfw: fix memory leak of private data
+ - mtd: devices: m25p80: Make sure the buffer passed in op is DMA-able
+ - [x86] platform: dell-smbios-wmi: Correct a memory leak
+ - [x86] platform: alienware-wmi: Correct a memory leak
+ - xen/netfront: don't bug in case of too many frags
+ - Revert "PCI: Add ACS quirk for Intel 300 series"
+ - crypto: x86/aegis,morus - Do not require OSXSAVE for SSE2
+ - fork: report pid exhaustion correctly
+ - mm: disable deferred struct page for 32-bit arches
+ - mm: shmem.c: Correctly annotate new inodes for lockdep
+ - bpf/verifier: disallow pointer subtraction
+ - Revert "ubifs: xattr: Don't operate on deleted inodes"
+ - libata: mask swap internal and hardware tag
+ - ocfs2: fix ocfs2 read block panic
+ - drm/i915/bdw: Increase IPS disable timeout to 100ms
+ - drm/nouveau: Reset MST branching unit before enabling
+ - drm/nouveau: Only write DP_MSTM_CTRL when needed
+ - drm/nouveau: Remove duplicate poll_enable() in pmops_runtime_suspend()
+ - drm/nouveau: Fix deadlocks in nouveau_connector_detect()
+ - drm/nouveau/drm/nouveau: Don't forget to cancel hpd_work on suspend/unload
+ - drm/nouveau/drm/nouveau: Fix bogus drm_kms_helper_poll_enable() placement
+ - drm/nouveau/drm/nouveau: Fix deadlock with fb_helper with async RPM
+ requests
+ - drm/nouveau/drm/nouveau: Use pm_runtime_get_noresume() in
+ connector_detect()
+ - drm/nouveau/drm/nouveau: Prevent handling ACPI HPD events too early
+ - drm/vc4: Fix the "no scaling" case on multi-planar YUV formats
+ - drm: udl: Destroy framebuffer only if it was initialized
+ - drm/amdgpu: add new polaris pci id
+ - tty: vt_ioctl: fix potential Spectre v1
+ - ext4: check to make sure the rename(2)'s destination is not freed
+ - ext4: avoid divide by zero fault when deleting corrupted inline
+ directories
+ - ext4: avoid arithemetic overflow that can trigger a BUG
+ - ext4: recalucate superblock checksum after updating free blocks/inodes
+ - ext4: fix online resize's handling of a too-small final block group
+ - ext4: fix online resizing for bigalloc file systems with a 1k block size
+ - ext4: don't mark mmp buffer head dirty
+ - ext4: show test_dummy_encryption mount option in /proc/mounts
+ - ext4, dax: add ext4_bmap to ext4_dax_aops
+ - ext4, dax: set ext4_dax_aops for dax files
+ - sched/fair: Fix vruntime_normalized() for remote non-migration wakeup
+ - [x86] vmw_balloon: include asm/io.h
+ - iw_cxgb4: only allow 1 flush on user qps
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.12
+ - tsl2550: fix lux1_input error in low light
+ - vmci: type promotion bug in qp_host_get_user_memory()
+ - [x86] numa_emulation: Fix emulated-to-physical node mapping
+ - staging: rts5208: fix missing error check on call to rtsx_write_register
+ - [armhf] power: supply: axp288_charger: Fix initial
+ constant_charge_current value
+ - [sh4] serial: sh-sci: Stop RX FIFO timer during port shutdown
+ - [arm64] power: vexpress: fix corruption in notifier registration
+ - [x86] iommu/amd: make sure TLB to be flushed before IOVA freed
+ - Bluetooth: Add a new Realtek 8723DE ID 0bda:b009
+ - USB: serial: kobil_sct: fix modem-status error handling
+ - 6lowpan: iphc: reset mac_header after decompress to fix panic
+ - [s390x] mm: correct allocate_pgste proc_handler callback
+ - power: remove possible deadlock when unregistering power_supply
+ - cxgb4: Fix the condition to check if the card is T5
+ - RDMA/bnxt_re: Fix a couple off by one bugs
+ - RDMA/i40w: Hold read semaphore while looking after VMA
+ - RDMA/bnxt_re: Fix a bunch of off by one bugs in qplib_fp.c
+ - IB/core: type promotion bug in rdma_rw_init_one_mr()
+ - IB/mlx4: Test port number before querying type.
+ - vhost_net: Avoid tx vring kicks during busyloop
+ - IB/mlx5: Fix GRE flow specification
+ - include/rdma/opa_addr.h: Fix an endianness issue
+ - x86/tsc: Add missing header to tsc_msr.c
+ - ARM: hwmod: RTC: Don't assume lock/unlock will be called with irq enabled
+ - [x86] entry/64: Add two more instruction suffixes
+ - scsi: target/iscsi: Make iscsit_ta_authentication() respect the output
+ buffer size
+ - scsi: klist: Make it safe to use klists in atomic context
+ - [powerpc*] scsi: ibmvscsi: Improve strings handling
+ - scsi: target: Avoid that EXTENDED COPY commands trigger lock inversion
+ - usb: wusbcore: security: cast sizeof to int for comparison
+ - ath10k: sdio: use same endpoint id for all packets in a bundle
+ - ath10k: sdio: set skb len for all rx packets
+ - [powerpc*] powerpc/powernv/ioda2: Reduce upper limit for DMA window size
+ - [x86] platform/x86: asus-wireless: Fix uninitialized symbol usage
+ - [x86] ACPI / button: increment wakeup count only when notified
+ - alarmtimer: Prevent overflow for relative nanosleep (CVE-2018-13053)
+ - [s390x] s390/dasd: correct numa_node in dasd_alloc_queue
+ - [s390x] s390/scm_blk: correct numa_node in scm_blk_dev_setup
+ - posix-timers: Make forward callback return s64
+ - posix-timers: Sanitize overrun handling (CVE-2018-12896)
+ - [powerpc*] ALSA: snd-aoa: add of_node_put() in error path
+ - ath10k: use locked skb_dequeue for rx completions
+ - [armhf] media: omap3isp: zero-initialize the isp cam_xclk{a,b} initial
+ data
+ - staging: android: ashmem: Fix mmap size validation
+ - staging: mt7621-eth: Fix memory leak in mtk_add_mac() error path
+ - [powerpc*, x86, alpha, m68k, hppa] drivers/tty: add error handling for
+ pcmcia_loop_config
+ - [arm64] dts: renesas: salvator-common: Fix adv7482 decimal unit addresses
+ - [x86] media: tm6000: add error handling for dvb_register_adapter
+ - [powerpc*, mips*, arm64, x86, alpha] ALSA: hda: Add AZX_DCAPS_PM_RUNTIME
+ for AMD Raven Ridge
+ - ath10k: protect ath10k_htt_rx_ring_free with rx_ring.lock
+ - [armhf] drm/sun4i: Enable DW HDMI PHY clock
+ - [armhf] drm/sun4i: Fix releasing node when enumerating enpoints
+ - ath10k: transmit queued frames after processing rx packets
+ - mt76x2: fix mrr idx/count estimation in mt76x2_mac_fill_tx_status()
+ - rndis_wlan: potential buffer overflow in rndis_wlan_auth_indication()
+ - brcmsmac: fix wrap around in conversion from constant to s16
+ - bitfield: fix *_encode_bits()
+ - [arm64]wlcore: Add missing PM call for
+ wlcore_cmd_wait_for_event_or_timeout()
+ - [armhf] drm/omap: gem: Fix mm_list locking
+ - [armhf] mvebu: declare asm symbols as character arrays in pmsu.c
+ - RDMA/uverbs: Don't overwrite NULL pointer with ZERO_SIZE_PTR
+ - HID: hid-ntrig: add error handling for sysfs_create_group
+ - [x86] HID: i2c-hid: Use devm to allocate i2c_hid struct
+ - [arm64] dts: renesas: Fix VSPD registers range
+ - drm/v3d: Take a lock across GPU scheduler job creation and queuing.
+ - scsi: bnx2i: add error handling for ioremap_nocache
+ - [arm64] scsi: hisi_sas: Fix the conflict between dev gone and host reset
+ - [armhf] spi: orion: fix CS GPIO handling again
+ - scsi: megaraid_sas: Update controller info during resume
+ - [x86] ASoC: Intel: bytcr_rt5640: Fix Acer Iconia 8 over-current detect
+ threshold
+ - [x86] EDAC, i7core: Fix memleaks and use-after-free on probe and remove
+ - [x86, arm64, armhf] ASoC: dapm: Fix potential DAI widget pointer deref
+ when linking DAIs
+ - module: exclude SHN_UNDEF symbols from kallsyms api
+ - nfsd: fix corrupted reply to badly ordered compound
+ - [mips*, arm64, x86] EDAC: Fix memleak in module init error path
+ - ath10k: fix incorrect size of dma_free_coherent in
+ ath10k_ce_alloc_src_ring_64
+ - ath10k: snoc: use correct bus-specific pointer in RX retry
+ - fs/lock: skip lock owner pid translation in case we are in init_pid_ns
+ - ath10k: fix memory leak of tpc_stats
+ - Input: xen-kbdfront - fix multi-touch XenStore node's locations
+ - drm/vc4: Add missing formats to vc4_format_mod_supported().
+ - [armhf] ARM: dts: dra7: fix DCAN node addresses
+ - drm/vc4: plane: Expand the lower bits by repeating the higher bits
+ - block: fix deadline elevator drain for zoned block devices
+ - [x86] mm: Expand static page table for fixmap space
+ - [armhf] serial: imx: restore handshaking irq for imx1
+ - [arm64] serial: mvebu-uart: Fix reporting of effective CSIZE to userspace
+ - [x86] intel_th: Fix device removal logic
+ - [x86] intel_th: Fix resource handling for ACPI glue layer
+ - spi: tegra20-slink: explicitly enable/disable clock
+ - [mips*, 'arm64', x86, armhf] regulator: fix crash caused by null driver
+ data
+ - [mips*, 'arm64', x86, armhf] regulator: Fix 'do-nothing' value for
+ regulators without suspend state
+ - USB: fix error handling in usb_driver_claim_interface()
+ - USB: handle NULL config in usb_find_alt_setting()
+ - usb: core: safely deal with the dynamic quirk lists
+ - [armhf] usb: musb: dsps: do not disable CPPI41 irq in driver teardown
+ - USB: usbdevfs: sanitize flags more
+ - USB: usbdevfs: restore warning for nonsensical flags
+ - Revert "usb: cdc-wdm: Fix a sleep-in-atomic-context bug in
+ service_outstanding_interrupt()"
+ - USB: remove LPM management from usb_driver_claim_interface()
+ - uaccess: Fix is_source param for check_copy_size() in
+ copy_to_iter_mcsafe()
+ - filesystem-dax: Fix use of zero page
+ - Input: elantech - enable middle button of touchpad on ThinkPad P72
+ - IB/srp: Avoid that sg_reset -d ${srp_device} triggers an infinite loop
+ - IB/hfi1: Fix SL array bounds check
+ - IB/hfi1: Invalid user input can result in crash
+ - IB/hfi1: Fix context recovery when PBC has an UnsupportedVL
+ - IB/hfi1: Fix destroy_qp hang after a link down
+ - [x86] ACPI / hotplug / PCI: Don't scan for non-hotplug bridges if slot
+ is not bridge
+ - RDMA/uverbs: Atomically flush and mark closed the comp event queue
+ - ARM: OMAP2+: Fix null hwmod for ti-sysc debug
+ - ARM: OMAP2+: Fix module address for modules using mpu_rt_idx
+ - bus: ti-sysc: Fix module register ioremap for larger offsets
+ - qed: Wait for ready indication before rereading the shmem
+ - qed: Wait for MCP halt and resume commands to take place
+ - qed: Prevent a possible deadlock during driver load and unload
+ - qed: Avoid sending mailbox commands when MFW is not responsive
+ - thermal: of-thermal: disable passive polling when thermal zone is disabled
+ - isofs: reject hardware sector size > 2048 bytes
+ - mmc: atmel-mci: fix bad logic of sg_copy_{from,to}_buffer conversion
+ - mmc: android-goldfish: fix bad logic of sg_copy_{from,to}_buffer
+ conversion
+ - bus: ti-sysc: Fix no_console_suspend handling
+ - [armhf] dts: omap4-droid4: fix vibrations on Droid 4
+ - bpf, sockmap: fix sock_hash_alloc and reject zero-sized keys
+ - bpf, sockmap: fix sock hash count in alloc_sock_hash_elem
+ - tls: possible hang when do_tcp_sendpages hits sndbuf is full case
+ - bpf: sockmap: write_space events need to be passed to TCP handler
+ - drm/amdgpu: fix VM clearing for the root PD
+ - drm/amdgpu: fix preamble handling
+ - amdgpu: fix multi-process hang issue
+ - net/ncsi: Fixup .dumpit message flags and ID check in Netlink handler
+ - tcp_bbr: add bbr_check_probe_rtt_done() helper
+ - tcp_bbr: in restart from idle, see if we should exit PROBE_RTT
+ - net: hns: fix length and page_offset overflow when CONFIG_ARM64_64K_PAGES
+ - net: hns: fix skb->truesize underestimation
+ - tools: bpftool: return from do_event_pipe() on bad arguments
+ - e1000: check on netif_running() before calling e1000_up()
+ - e1000: ensure to free old tx/rx rings in set_ringparam()
+ - ixgbe: fix driver behaviour after issuing VFLR
+ - i40e: Fix for Tx timeouts when interface is brought up if DCB is enabled
+ - i40e: fix condition of WARN_ONCE for stat strings
+ - [arm64] crypto: cavium/nitrox - fix for command corruption in queue full
+ case with backlog submissions.
+ - hwmon: (ina2xx) fix sysfs shunt resistor read access
+ - hwmon: (adt7475) Make adt7475_read_word() return errors
+ - Revert "ARM: dts: imx7d: Invert legacy PCI irq mapping"
+ - drm/amdgpu: Enable/disable gfx PG feature in rlc safe mode
+ - drm/amdgpu: Update power state at the end of smu hw_init.
+ - ata: ftide010: Add a quirk for SQ201
+ - nvme-fcloop: Fix dropped LS's to removed target port
+ - [armhf] dts: omap4-droid4: Fix emmc errors seen on some devices
+ - drm/amdgpu: Need to set moved to true when evict bo
+ - [arm64, armhf] smccc-1.1: Make return values unsigned long
+ - [arm64, armhf] smccc-1.1: Handle function result as parameters
+ - i2c: i801: Allow ACPI AML access I/O ports not reserved for SMBus
+ - clk: x86: Set default parent to 48Mhz
+ - [x86] pti: Fix section mismatch warning/error
+ - [powerpc*] KVM: PPC: Book3S HV: Fix guest r11 corruption with POWER9 TM
+ workarounds
+ - [powerpc*] fix csum_ipv6_magic() on little endian platforms
+ - [powerpc*] pkeys: Fix reading of ibm, processor-storage-keys property
+ - [powerpc*] pseries: Fix unitialized timer reset on migration
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.13
+ - mac80211: Run TXQ teardown code before de-registering interfaces
+ - mac80211_hwsim: require at least one channel
+ - Btrfs: fix unexpected failure of nocow buffered writes after snapshotting
+ when low on space
+ - [powerpc*] KVM: PPC: Book3S HV: Don't truncate HPTE index in xlate
+ function
+ - cfg80211: remove division by size of sizeof(struct ieee80211_wmm_rule)
+ - btrfs: btrfs_shrink_device should call commit transaction at the end
+ - scsi: csiostor: add a check for NULL pointer after kmalloc()
+ - scsi: csiostor: fix incorrect port capabilities
+ - scsi: libata: Add missing newline at end of file
+ - scsi: aacraid: fix a signedness bug
+ - bpf, sockmap: fix potential use after free in bpf_tcp_close
+ - bpf, sockmap: fix psock refcount leak in bpf_tcp_recvmsg
+ - bpf: sockmap, decrement copied count correctly in redirect error case
+ - mac80211: correct use of IEEE80211_VHT_CAP_RXSTBC_X
+ - mac80211_hwsim: correct use of IEEE80211_VHT_CAP_RXSTBC_X
+ - cfg80211: make wmm_rule part of the reg_rule structure
+ - mac80211_hwsim: Fix possible Spectre-v1 for hwsim_world_regdom_custom
+ - nl80211: Fix nla_put_u8 to u16 for NL80211_WMMR_TXOP
+ - nl80211: Pass center frequency in kHz instead of MHz
+ - bpf: fix several offset tests in bpf_msg_pull_data
+ - mac80211: mesh: fix HWMP sequence numbering to follow standard
+ - mac80211: avoid kernel panic when building AMSDU from non-linear SKB
+ - bpf: fix msg->data/data_end after sg shift repair in bpf_msg_pull_data
+ - bpf: fix shift upon scatterlist ring wrap-around in bpf_msg_pull_data
+ - bpf: fix sg shift repair start offset in bpf_msg_pull_data
+ - [arm64] net: hns: add the code for cleaning pkt in chip
+ - [arm64] net: hns: add netif_carrier_off before change speed and duplex
+ - [arm64, armhf] net: mvpp2: initialize port of_node pointer
+ - cfg80211: nl80211_update_ft_ies() to validate NL80211_ATTR_IE
+ - mac80211: do not convert to A-MSDU if frag/subframe limited
+ - mac80211: always account for A-MSDU header changes
+ - Revert "blk-throttle: fix race between blkcg_bio_issue_check() and
+ cgroup_rmdir()"
+ - md/raid5-cache: disable reshape completely
+ - RAID10 BUG_ON in raise_barrier when force is true and conf->barrier is 0
+ - bpf: Fix bpf_msg_pull_data()
+ - bpf: avoid misuse of psock when TCP_ULP_BPF collides with another ULP
+ - fs/cifs: don't translate SFM_SLASH (U+F026) to backslash
+ - mac80211: fix an off-by-one issue in A-MSDU max_subframe computation
+ - cfg80211: fix a type issue in ieee80211_chandef_to_operating_class()
+ - mac80211: fix WMM TXOP calculation
+ - mac80211: fix a race between restart and CSA flows
+ - mac80211: Fix station bandwidth setting after channel switch
+ - mac80211: don't Tx a deauth frame if the AP forbade Tx
+ - mac80211: shorten the IBSS debug messages
+ - [powerpc*] net/ibm/emac: wrong emac_calc_base call was used by typo
+ - ceph: avoid a use-after-free in ceph_destroy_options()
+ - firmware: arm_scmi: fix divide by zero when sustained_perf_level is zero
+ - afs: Fix cell specification to permit an empty address list
+ - mm: madvise(MADV_DODUMP): allow hugetlbfs pages
+ - bpf: 32-bit RSH verification must truncate input before the ALU op
+ (CVE-2018-18445)
+ - netfilter: xt_cluster: add dependency on conntrack module
+ - [x86] HID: intel-ish-hid: Enable Sunrise Point-H ish driver
+ - HID: add support for Apple Magic Keyboards
+ - HID: hid-saitek: Add device ID for RAT 7 Contagion
+ - scsi: iscsi: target: Set conn->sess to NULL when
+ iscsi_login_set_conn_values fails
+ - scsi: iscsi: target: Fix conn_ops double free
+ - perf annotate: Properly interpret indirect call
+ - perf evsel: Fix potential null pointer dereference in
+ perf_evsel__new_idx()
+ - perf util: Fix bad memory access in trace info.
+ - [powerpc*] perf probe: Ignore SyS symbols irrespective of endianness
+ - [arm64] perf annotate: Fix parsing aarch64 branch instructions after
+ objdump update
+ - netfilter: nf_tables: release chain in flushing set
+ - HID: sensor-hub: Restore fixup for Lenovo ThinkPad Helix 2 sensor hub
+ report
+ - USB: yurex: Check for truncation in yurex_read()
+ - nvmet-rdma: fix possible bogus dereference under heavy load
+ - net/mlx5: Consider PCI domain in search for next dev
+ - [x86] HID: i2c-hid: Don't reset device upon system resume
+ - dm raid: fix reshape race on small devices
+ - drm/nouveau: fix oops in client init failure path
+ - drm/nouveau/mmu: don't attempt to dereference vmm without valid instance
+ pointer
+ - drm/nouveau/TBDdevinit: don't fail when PMU/PRE_OS is missing from VBIOS
+ - drm/nouveau/disp: fix DP disable race
+ - drm/nouveau/disp/gm200-: enforce identity-mapped SOR assignment for
+ LVDS/eDP panels
+ - dm raid: fix stripe adding reshape deadlock
+ - dm raid: fix rebuild of specific devices by updating superblock
+ - dm raid: fix RAID leg rebuild errors
+ - r8169: set TxConfig register after TX / RX is enabled, just like RxConfig
+ - fs/cifs: suppress a string overflow warning
+ - net: ena: fix surprise unplug NULL dereference kernel crash
+ - net: ena: fix driver when PAGE_SIZE == 64kB
+ - net: ena: fix device destruction to gracefully free resources
+ - net: ena: fix potential double ena_destroy_device()
+ - net: ena: fix missing lock during device destruction
+ - net: ena: fix missing calls to READ_ONCE
+ - sched/topology: Set correct NUMA topology type
+ - dm thin metadata: try to avoid ever aborting transactions
+ - netfilter: nfnetlink_queue: Solve the NFQUEUE/conntrack clash for
+ NF_REPEAT
+ - netfilter: xt_hashlimit: use s->file instead of s->private
+ - drm/amdgpu: Fix SDMA hang in prt mode v2
+ - drm/amdgpu: fix error handling in amdgpu_cs_user_fence_chunk
+ - r8169: Clear RTL_FLAG_TASK_*_PENDING when clearing RTL_FLAG_TASK_ENABLED
+ - [s390x] qeth: use vzalloc for QUERY OAT buffer
+ - [s390x] qeth: don't dump past end of unknown HW header
+ - cifs: read overflow in is_valid_oplock_break()
+ - asm-generic: io: Fix ioport_map() for !CONFIG_GENERIC_IOMAP &&
+ CONFIG_INDIRECT_PIO
+ - xen/manage: don't complain about an empty value in control/sysrq node
+ - [mips*, x86, s390x] xen: avoid crash in disable_hotplug_cpu
+ - new primitive: discard_new_inode()
+ - vfs: don't evict uninitialized inode
+ - ovl: set I_CREATING on inode being created
+ - ovl: fix access beyond unterminated strings
+ - ovl: fix memory leak on unlink of indexed file
+ - ovl: fix format of setxattr debug
+ - sysfs: Do not return POSIX ACL xattrs via listxattr
+ - b43: fix DMA error related regression with proprietary firmware
+ - firmware: Fix security issue with request_firmware_into_buf()
+ - firmware: Always initialize the fw_priv list object
+ - smb2: fix missing files in root share directory listing
+ - [x86] iommu/amd: Clear memory encryption mask from physical address
+ - ALSA: hda/realtek - Cannot adjust speaker's volume on Dell XPS 27 7760
+ - [x86] crypto: qat - Fix KASAN stack-out-of-bounds bug in adf_probe()
+ - crypto: chelsio - Fix memory corruption in DMA Mapped buffers.
+ - [arm64, armhf, x86, powerpc*] gpiolib: Free the last requested descriptor
+ - [x86] Drivers: hv: vmbus: Use get/put_cpu() in vmbus_connect()
+ - proc: restrict kernel stack dumps to root (CVE-2018-17972)
+ - ocfs2: fix locking for res->tracking and dlm->tracking_list
+ - [x86] HID: i2c-hid: disable runtime PM operations on hantick touchpad
+ - ixgbe: check return value of napi_complete_done()
+ - dm thin metadata: fix __udivdi3 undefined on 32-bit
+ - Revert "drm/amd/pp: Send khz clock values to DC for smu7/8"
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.14
+ - perf/core: Add sanity check to deal with pinned event failure
+ - mm: migration: fix migration of huge PMD shared pages
+ - mm, thp: fix mlocking THP page with migration enabled
+ - mm/vmstat.c: skip NR_TLB_REMOTE_FLUSH* properly
+ - [x86] KVM: fix L1TF's MMIO GFN calculation
+ - [x86] KVM: VMX: check for existence of secondary exec controls before
+ accessing
+ - blk-mq: I/O and timer unplugs are inverted in blktrace
+ - [powerpc*, mips*, arm64, x86, alpha, armhf] mmc: core: Fix debounce time
+ to use microseconds
+ - [powerpc*, mips*, arm64, x86, alpha, armhf] mmc: slot-gpio: Fix debounce
+ time to use miliseconds again
+ - mac80211: allocate TXQs for active monitor interfaces
+ - drm/amdgpu: Fix vce work queue was not cancelled when suspend
+ - [x86] vdso: Fix asm constraints on vDSO syscall fallbacks
+ - [x86] vdso: Only enable vDSO retpolines when enabled and supported
+ - [x86] vdso: Fix vDSO syscall fallback asm constraint regression
+ - [powerpc*, mips*, arm64, x86, s390x, armhf, sparc, hppa] PCI: Reprogram
+ bridge prefetch registers on resume
+ - mac80211: fix setting IEEE80211_KEY_FLAG_RX_MGMT for AP mode keys
+ - dm mpath: fix attached_handler_name leak and dangling hw_handler_name
+ pointer
+ - dm cache metadata: ignore hints array being too small during resize
+ - dm cache: fix resize crash if user doesn't reload cache table
+ - USB: serial: simple: add Motorola Tetra MTP6550 id
+ - USB: serial: option: improve Quectel EP06 detection
+ - USB: serial: option: add two-endpoints device-id flag
+ - usb: cdc_acm: Do not leak URB buffers
+ - tty: Drop tty->count on tty_reopen() failure
+ - [powerpc*] Avoid code patching freed init sections
+ - [powerpc*] lib: fix book3s/32 boot failure due to code patching
+ - f2fs: fix invalid memory access
+ - tipc: call start and done ops directly in __tipc_nl_compat_dumpit()
+ - ubifs: Check for name being NULL while mounting
+ - rds: rds_ib_recv_alloc_cache() should call alloc_percpu_gfp() instead
+ - ath10k: fix scan crash due to incorrect length calculation
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.15
+ - bnxt_en: Fix TX timeout during netpoll.
+ - bnxt_en: free hwrm resources, if driver probe fails.
+ - bonding: avoid possible dead-lock
+ - ip6_tunnel: be careful when accessing the inner header
+ - ip_tunnel: be careful when accessing the inner header
+ - ipv4: fix use-after-free in ip_cmsg_recv_dstaddr()
+ - ipv6: take rcu lock in rawv6_send_hdrinc()
+ - [armhf] net: dsa: bcm_sf2: Call setup during switch resume
+ - [arm64] net: hns: fix for unmapping problem when SMMU is on
+ - net: ipv4: update fnhe_pmtu when first hop's MTU changes
+ - net/ipv6: Display all addresses in output of /proc/net/if_inet6
+ - netlabel: check for IPV4MASK in addrinfo_get
+ - [armhf,arm64] net: mvpp2: Extract the correct ethtype from the skb for
+ tx csum offload
+ - [armhf,arm64] net: mvpp2: fix a txq_done race condition
+ - net: sched: Add policy validation for tc attributes
+ - net: sched: cls_u32: fix hnode refcounting
+ - net/usb: cancel pending work when unbinding smsc75xx
+ - qlcnic: fix Tx descriptor corruption on 82xx devices
+ - qmi_wwan: Added support for Gemalto's Cinterion ALASxx WWAN interface
+ - rtnetlink: fix rtnl_fdb_dump() for ndmsg header
+ - rtnl: limit IFLA_NUM_TX_QUEUES and IFLA_NUM_RX_QUEUES to 4096
+ - sctp: update dst pmtu with the correct daddr
+ - team: Forbid enslaving team device to itself
+ - tipc: fix flow control accounting for implicit connect
+ - udp: Unbreak modules that rely on external __skb_recv_udp() availability
+ - tun: remove unused parameters
+ - tun: initialize napi_mutex unconditionally
+ - tun: napi flags belong to tfile
+ - [armhf,arm64] net: stmmac: Fixup the tail addr setting in xmit path
+ - net/packet: fix packet drop as of virtio gso
+ - [armhf] net: dsa: bcm_sf2: Fix unbind ordering
+ - net/mlx5e: Set vlan masks for all offloaded TC rules
+ - net: aquantia: memory corruption on jumbo frames
+ - net/mlx5: E-Switch, Fix out of bound access when setting vport rate
+ - bonding: pass link-local packets to bonding master also.
+ - bonding: fix warning message
+ - [armhf,arm64] net: stmmac: Rework coalesce timer and fix multi-queue
+ races
+ - nfp: avoid soft lockups under control message storm
+ - bnxt_en: don't try to offload VLAN 'modify' action
+ - net-ethtool: ETHTOOL_GUFO did not and should not require CAP_NET_ADMIN
+ - net: phy: phylink: fix SFP interface autodetection
+ - sfp: fix oops with ethtool -m
+ - tcp/dccp: fix lockdep issue when SYN is backlogged
+ - inet: make sure to grab rcu_read_lock before using ireq->ireq_opt
+ - [armhf] net: dsa: b53: Keep CPU port as tagged in all VLANs
+ - rtnetlink: Fail dump if target netnsid is invalid
+ - bnxt_en: Fix VNIC reservations on the PF.
+ - net: ipv4: don't let PMTU updates increase route MTU
+ - net/mlx5: Check for SQ and not RQ state when modifying hairpin SQ
+ - bnxt_en: Fix enables field in HWRM_QUEUE_COS2BW_CFG request
+ - bnxt_en: get the reduced max_irqs by the ones used by RDMA
+ - net/ipv6: Remove extra call to ip6_convert_metrics for multipath case
+ - net/ipv6: stop leaking percpu memory in fib6 info
+ - qed: Fix shmem structure inconsistency between driver and the mfw.
+ - r8169: fix network stalls due to missing bit TXCFG_AUTO_FIFO
+ - r8169: set RX_MULTI_EN bit in RxConfig for 8168F-family chips
+ - vxlan: fill ttl inherit info
+ - ASoC: dapm: Fix NULL pointer deference on CODEC to CODEC DAIs
+ - hwmon: (nct6775) Fix access to fan pulse registers
+ - [x86] ASoC: AMD: Ensure reset bit is cleared before configuring
+ - Bluetooth: SMP: Fix trying to use non-existent local OOB data
+ - Bluetooth: Use correct tfm to generate OOB data
+ - Bluetooth: hci_ldisc: Free rw_semaphore on close
+ - [armhf] mfd: omap-usb-host: Fix dts probe of children
+ - [powerpc*] KVM: Book3S HV: Don't use compound_order to determine host
+ mapping size
+ - scsi: iscsi: target: Don't use stack buffer for scatterlist
+ - scsi: qla2xxx: Fix an endian bug in fcpcmd_is_corrupted()
+ - sound: enable interrupt after dma buffer initialization
+ - sound: don't call skl_init_chip() to reset intel skl soc
+ - bpf: btf: Fix end boundary calculation for type section
+ - bpf: use __GFP_COMP while allocating page
+ - hwmon: (nct6775) Fix virtual temperature sources for NCT6796D
+ - hwmon: (nct6775) Fix RPM output for fan7 on NCT6796D
+ - [armhf,arm64] stmmac: fix valid numbers of unicast filter entries
+ - hwmon: (nct6775) Use different register to get fan RPM for fan7
+ - [x86] PCI: hv: support reporting serial number as slot information
+ - [x86] clk: add "ether_clk" alias for Bay Trail / Cherry Trail
+ - [x86] clk: Stop marking clocks as CLK_IS_CRITICAL
+ - [x86] pinctrl: cannonlake: Fix gpio base for GPP-E
+ - [x86] kvm/lapic: always disable MMIO interface in x2APIC mode
+ - drm/amdgpu: Fix SDMA HQD destroy error on gfx_v7
+ - drm/amdkfd: Change the control stack MTYPE from UC to NC on GFX9
+ - drm/amdkfd: Fix ATS capablity was not reported correctly on some APUs
+ - mm/vmstat.c: fix outdated vmstat_text
+ - afs: Fix afs_server struct leak
+ - afs: Fix clearance of reply
+ - [mips*] Fix CONFIG_CMDLINE handling
+ - [mips*] VDSO: Always map near top of user memory
+ - [sparc64] mach64: detect the dot clock divider correctly on sparc
+ - vsprintf: Fix off-by-one bug in bstr_printf() processing dereferenced
+ pointers
+ - percpu: stop leaking bitmap metadata blocks
+ - perf script python: Fix export-to-postgresql.py occasional failure
+ - perf script python: Fix export-to-sqlite.py sample columns
+ - [s390x] cio: Fix how vfio-ccw checks pinned pages
+ - dm cache: destroy migration_cache if cache target registration failed
+ - dm: fix report zone remapping to account for partition offset
+ - dm linear: eliminate linear_end_io call if CONFIG_DM_ZONED disabled
+ - dm linear: fix linear_end_io conditional definition
+ - cgroup: Fix dom_cgrp propagation when enabling threaded mode
+ - drm/nouveau/drm/nouveau: Grab runtime PM ref in nv50_mstc_detect()
+ - mmc: block: avoid multiblock reads for the last sector in SPI mode
+ - [armhf] pinctrl: mcp23s08: fix irq and irqchip setup order
+ - [arm64] perf: Reject stand-alone CHAIN events for PMUv3
+ - mm/mmap.c: don't clobber partially overlapping VMA with
+ MAP_FIXED_NOREPLACE
+ - mm/thp: fix call to mmu_notifier in set_pmd_migration_entry() v2
+ - filesystem-dax: Fix dax_layout_busy_page() livelock
+ - mm: Preserve _PAGE_DEVMAP across mprotect() calls
+ - [x86] i2c: i2c-scmi: fix for i2c_smbus_write_block_data
+ - [powerpc*] KVM: Book3S HV: Avoid crash from THP collapse during radix
+ page fault
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.16
+ - media: af9035: prevent buffer overflow on write
+ - spi: gpio: Fix copy-and-paste error
+ - batman-adv: Avoid probe ELP information leak
+ - batman-adv: Fix segfault when writing to throughput_override
+ - batman-adv: Fix segfault when writing to sysfs elp_interval
+ - batman-adv: Prevent duplicated gateway_node entry
+ - batman-adv: Prevent duplicated nc_node entry
+ - batman-adv: Prevent duplicated softif_vlan entry
+ - batman-adv: Prevent duplicated global TT entry
+ - batman-adv: Prevent duplicated tvlv handler
+ - batman-adv: fix backbone_gw refcount on queue_work() failure
+ - batman-adv: fix hardif_neigh refcount on queue_work() failure
+ - cxgb4: fix abort_req_rss6 struct
+ - [armhf] clocksource/drivers/ti-32k: Add CLOCK_SOURCE_SUSPEND_NONSTOP flag
+ for non-am43 SoCs
+ - [powerpc*] scsi: ibmvscsis: Fix a stringop-overflow warning
+ - [powerpc*] scsi: ibmvscsis: Ensure partition name is properly NUL
+ terminated
+ - [x86] intel_th: pci: Add Ice Lake PCH support
+ - [m68k] Input: atakbd - fix Atari keymap
+ - [m68k] Input: atakbd - fix Atari CapsLock behaviour
+ - [powerpc*] net: emac: fix fixed-link setup for the RTL8363SB switch
+ - qed: Fix populating the invalid stag value in multi function mode.
+ - qed: Do not add VLAN 0 tag to untagged frames in multi-function mode.
+ - [armhf,arm64] PCI: dwc: Fix scheduling while atomic issues
+ - RDMA/uverbs: Fix validity check for modify QP
+ - scsi: lpfc: Synchronize access to remoteport via rport
+ - [arm64] drm: mali-dp: Call drm_crtc_vblank_reset on device init
+ - scsi: ipr: System hung while dlpar adding primary ipr adapter back
+ - scsi: sd: don't crash the host on invalid commands
+ - bpf: sockmap only allow ESTABLISHED sock state
+ - bpf: sockmap, fix transition through disconnect without close
+ - bpf: test_maps, only support ESTABLISHED socks
+ - net/mlx4: Use cpumask_available for eq->affinity_mask
+ - clocksource/drivers/fttmr010: Fix set_next_event handler
+ - RDMA/bnxt_re: Fix system crash during RDMA resource initialization
+ - [armhf,arm64] iommu/rockchip: Free irqs in shutdown handler
+ - [x86] pinctrl/amd: poll InterruptEnable bits in amd_gpio_irq_set_type
+ - [powerpc*] tm: Fix userspace r13 corruption
+ - [powerpc*] tm: Avoid possible userspace r1 corruption on reclaim
+ - [powerpc*] numa: Use associativity if VPHN hcall is successful
+ - [x86] iommu/amd: Return devid as alias for ACPI HID devices
+ - [x86] boot: Fix kexec booting failure in the SEV bit detection code
+ - Revert "vfs: fix freeze protection in mnt_want_write_file() for
+ overlayfs"
+ - mremap: properly flush TLB before releasing the page
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.17
+ - xfrm: Validate address prefix lengths in the xfrm selector.
+ - xfrm6: call kfree_skb when skb is toobig
+ - xfrm: reset transport header back to network header after all input
+ transforms ahave been applied
+ - xfrm: reset crypto_done when iterating over multiple input xfrms
+ - mac80211: Always report TX status
+ - cfg80211: reg: Init wiphy_idx in regulatory_hint_core()
+ - mac80211: fix pending queue hang due to TX_DROP
+ - cfg80211: Address some corner cases in scan result channel updating
+ - mac80211: TDLS: fix skb queue/priority assignment
+ - mac80211: fix TX status reporting for ieee80211s
+ - xfrm: Fix NULL pointer dereference when skb_dst_force clears the
+ dst_entry.
+ - [armel,armhf] 8799/1: mm: fix pci_ioremap_io() offset check
+ - xfrm: validate template mode
+ - netfilter: bridge: Don't sabotage nf_hook calls from an l3mdev
+ - netfilter: conntrack: get rid of double sizeof
+ - [arm64] hugetlb: Fix handling of young ptes
+ - nl80211: Fix possible Spectre-v1 for NL80211_TXRATE_HT
+ - mac80211_hwsim: fix locking when iterating radios during ns exit
+ - mac80211_hwsim: fix race in radio destruction from netlink notifier
+ - mac80211_hwsim: do not omit multicast announce of first added radio
+ - Bluetooth: SMP: fix crash in unpairing
+ - qed: Avoid implicit enum conversion in qed_set_tunn_cls_info
+ - qed: Fix mask parameter in qed_vf_prep_tunn_req_tlv
+ - qed: Avoid implicit enum conversion in qed_roce_mode_to_flavor
+ - qed: Avoid constant logical operation warning in qed_vf_pf_acquire
+ - qed: Avoid implicit enum conversion in qed_iwarp_parse_rx_pkt
+ - nl80211: Fix possible Spectre-v1 for CQM RSSI thresholds
+ - scsi: qedi: Initialize the stats mutex lock
+ - rxrpc: Fix checks as to whether we should set up a new call
+ - rxrpc: Fix RTT gathering
+ - rxrpc: Fix transport sockopts to get IPv4 errors on an IPv6 socket
+ - rxrpc: Fix error distribution
+ - netfilter: nft_set_rbtree: add missing rb_erase() in GC routine
+ - netfilter: avoid erronous array bounds warning
+ - asix: Check for supported Wake-on-LAN modes
+ - ax88179_178a: Check for supported Wake-on-LAN modes
+ - lan78xx: Check for supported Wake-on-LAN modes
+ - sr9800: Check for supported Wake-on-LAN modes
+ - r8152: Check for supported Wake-on-LAN Modes
+ - smsc75xx: Check for Wake-on-LAN modes
+ - smsc95xx: Check for Wake-on-LAN modes
+ - cfg80211: fix use-after-free in reg_process_hint()
+ - [x86] KVM: nVMX: Do not expose MPX VMX controls when guest MPX disabled
+ - [x86] KVM: Do not use kvm_x86_ops->mpx_supported() directly
+ - [x86] KVM: nVMX: Fix emulation of VM_ENTRY_LOAD_BNDCFGS
+ - perf/core: Fix perf_pmu_unregister() locking
+ - [x86] perf/intel/uncore: Use boot_cpu_data.phys_proc_id instead of
+ hardcorded physical package ID 0
+ - perf/ring_buffer: Prevent concurent ring buffer access
+ - [x86] perf/intel/uncore: Fix PCI BDF address of M3UPI on SKX
+ - [x86] perf/amd/uncore: Set ThreadMask and SliceMask for L3 Cache perf
+ events
+ - thunderbolt: Do not handle ICM events after domain is stopped
+ - thunderbolt: Initialize after IOMMUs
+ - Revert "serial: 8250_dw: Fix runtime PM handling"
+ - locking/ww_mutex: Fix runtime warning in the WW mutex selftest
+ - drm/amd/display: Signal hw_done() after waiting for flip_done()
+ - be2net: don't flip hw_features when VXLANs are added/deleted
+ - [powerpc*] numa: Skip onlining a offline node in kdump path
+ - net: cxgb3_main: fix a missing-check bug
+ - yam: fix a missing-check bug
+ - ocfs2: fix crash in ocfs2_duplicate_clusters_by_page()
+ - mm/gup_benchmark: fix unsigned comparison to zero in __gup_benchmark_ioctl
+ - mm/migrate.c: split only transparent huge pages when allocation fails
+ - [x86] paravirt: Fix some warning messages
+ - [arm64] clk: mvebu: armada-37xx-periph: Remove unused var num_parents
+ - libertas: call into generic suspend code before turning off power
+ - perf report: Don't try to map ip to invalid map
+ - HID: i2c-hid: Remove RESEND_REPORT_DESCR quirk and its handling
+ - [armhf] dts: imx53-qsb: disable 1.2GHz OPP
+ - perf record: Use unmapped IP for inline callchain cursors
+ - rxrpc: Don't check RXRPC_CALL_TX_LAST after calling
+ rxrpc_rotate_tx_window()
+ - rxrpc: Carry call state out of locked section in rxrpc_rotate_tx_window()
+ - rxrpc: Only take the rwind and mtu values from latest ACK
+ - rxrpc: Fix connection-level abort handling
+ - [x86] net: ena: fix warning in rmmod caused by double iounmap
+ - [x86] net: ena: fix rare bug when failed restart/resume is followed by
+ driver removal
+ - [x86] net: ena: fix NULL dereference due to untimely napi initialization
+ - gpio: Assign gpio_irq_chip::parents to non-stack pointer
+ - IB/mlx5: Unmap DMA addr from HCA before IOMMU
+ - rds: RDS (tcp) hangs on sendto() to unresponding address
+ - afs: Fix cell proc list
+ - fs/fat/fatent.c: add cond_resched() to fat_count_free_clusters()
+ - Revert "netfilter: ipv6: nf_defrag: drop skb dst before queueing"
+ - bridge: do not add port to router list when receives query with source
+ 0.0.0.0
+ - ipv6: mcast: fix a use-after-free in inet6_mc_check
+ - ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are
+ called
+ - ipv6: rate-limit probes for neighbourless routes
+ - llc: set SOCK_RCU_FREE in llc_sap_add_socket()
+ - net: fec: don't dump RX FIFO register when not available
+ - net/ipv6: Fix index counter for unicast addresses in in6_dump_addrs
+ - net/mlx5e: fix csum adjustments caused by RXFCS
+ - net: sched: gred: pass the right attribute to gred_change_table_def()
+ - net: socket: fix a missing-check bug
+ - [armhf,arm64] net: stmmac: Fix stmmac_mdio_reset() when building stmmac
+ as modules
+ - net: udp: fix handling of CHECKSUM_COMPLETE packets
+ - r8169: fix NAPI handling under high load
+ - rtnetlink: Disallow FDB configuration for non-Ethernet device
+ - sctp: fix race on sctp_id2asoc
+ - tipc: fix unsafe rcu locking when accessing publication list
+ - udp6: fix encap return code for resubmitting
+ - vhost: Fix Spectre V1 vulnerability
+ - virtio_net: avoid using netif_tx_disable() for serializing tx routine
+ - ethtool: fix a privilege escalation bug
+ - bonding: fix length of actor system
+ - ip6_tunnel: Fix encapsulation layout
+ - openvswitch: Fix push/pop ethernet validation
+ - net: ipmr: fix unresolved entry dumps
+ - net/mlx5: Take only bit 24-26 of wqe.pftype_wq for page fault type
+ - net: sched: Fix for duplicate class dump
+ - net/sched: cls_api: add missing validation of netlink attributes
+ - net/ipv6: Allow onlink routes to have a device mismatch if it is the
+ default route
+ - sctp: fix the data size calculation in sctp_data_size
+ - sctp: not free the new asoc when sctp_wait_for_connect returns err
+ - net/mlx5: Fix memory leak when setting fpga ipsec caps
+ - net: bpfilter: use get_pid_task instead of pid_task
+ - net: drop skb on failure in ip_check_defrag()
+ - net: fix pskb_trim_rcsum_slow() with odd trim offset
+ - net/mlx5: WQ, fixes for fragmented WQ buffers API
+ - [sparc64] Make corrupted user stacks more debuggable.
+ - [sparc64] Set %l4 properly on trap return after handling signals.
+ - [sparc64] Wire up compat getpeername and getsockname.
+ - [sparc64] Fix single-pcr perf event counter management.
+ - [sparc64] Fix syscall fallback bugs in VDSO.
+ - [sparc64] Throttle perf events properly.
+ - net: bridge: remove ipv6 zero address check in mcast queries
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.18
+ - vfs: swap names of {do,vfs}_clone_file_range()
+ - bpf: fix partial copy of map_ptr when dst is scalar
+ - [armhf,arm64] clk: sunxi-ng: sun4i: Set VCO and PLL bias current to
+ lowest setting
+ - fscache: Fix incomplete initialisation of inline key space
+ - cachefiles: fix the race between cachefiles_bury_object() and rmdir(2)
+ - fscache: Fix out of bound read in long cookie keys
+ - ptp: fix Spectre v1 vulnerability
+ - drm/edid: VSDB yCBCr420 Deep Color mode bit definitions
+ - drm: fb-helper: Reject all pixel format changing requests
+ - RDMA/ucma: Fix Spectre v1 vulnerability (CVE-2017-5753)
+ - IB/ucm: Fix Spectre v1 vulnerability (CVE-2017-5753)
+ - cdc-acm: do not reset notification buffer index upon urb unlinking
+ - cdc-acm: correct counting of UART states in serial state notification
+ - cdc-acm: fix race between reset and control messaging
+ - usb: usbip: Fix BUG: KASAN: slab-out-of-bounds in vhci_hub_control()
+ - usb: gadget: storage: Fix Spectre v1 vulnerability
+ - usb: roles: intel_xhci: Fix Unbalanced pm_runtime_enable
+ - usb: xhci: pci: Enable Intel USB role mux on Apollo Lake platforms
+ - USB: fix the usbfs flag sanitization for control transfers
+ - tracing: Fix synthetic event to accept unsigned modifier
+ - tracing: Fix synthetic event to allow semicolon at end
+ - [armhf] drm/sun4i: Fix an ulong overflow in the dotclock driver
+ - sched/fair: Fix throttle_list starvation with low CFS quota
+ - [x86] tsc: Force inlining of cyc2ns bits
+ - [x86] hibernate: Fix nosave_regions setup for hibernation
+ - [x86] percpu: Fix this_cpu_read()
+ - [x86] time: Correct the attribute on jiffies' definition
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.19
+ - [armhf] mtd: rawnand: marvell: fix the IRQ handler complete() condition
+ - spi: spi-mem: Adjust op len based on message/transfer size limitations
+ - bcache: trace missed reading by cache_missed
+ - bcache: correct dirty data statistics
+ - bcache: fix miss key refill->end in writeback
+ - hwmon: (pmbus) Fix page count auto-detection.
+ - jffs2: free jffs2_sb_info through jffs2_kill_sb()
+ - block: setup bounce bio_sets properly
+ - block: don't deal with discard limit in blkdev_issue_discard()
+ - block: make sure discard bio is aligned with logical block size
+ - block: make sure writesame bio is aligned with logical block size
+ - cpufreq: conservative: Take limits changes into account properly
+ - dma-mapping: fix panic caused by passing empty cma command line argument
+ - pcmcia: Implement CLKRUN protocol disabling for Ricoh bridges
+ - ACPI / OSL: Use 'jiffies' as the time bassis for acpi_os_get_timer()
+ - ACPICA: AML Parser: fix parse loop to correctly skip erroneous extended
+ opcodes
+ - [x86] kprobes: Use preempt_enable() in optimized_callback()
+ - ipmi: Fix timer race with module unload
+ - acpi, nfit: Fix Address Range Scrub completion tracking
+ - [hppa] Fix address in HPMC IVA
+ - [hppa] Fix map_pages() to not overwrite existing pte entries
+ - [hppa] Fix exported address of os_hpmc handler
+ - [x86] ALSA: hda - Add quirk for ASUS G751 laptop
+ - [x86] ALSA: hda - Fix headphone pin config for ASUS G751
+ - [x86] ALSA: hda/realtek - Fix the problem of the front MIC on the Lenovo
+ M715
+ - [x86] ALSA: hda - Add mic quirk for the Lenovo G50-30 (17aa:3905)
+ - ALSA: hda: Add 2 more models to the power_save blacklist
+ - ALSA: ca0106: Disable IZD on SB0570 DAC to fix audio pops
+ - [x86] speculation: Enable cross-hyperthread spectre v2 STIBP mitigation
+ (CVE-2017-5715)
+ - [x86] xen: Fix boot loader version reported for PVH guests
+ - [x86] corruption-check: Fix panic in memory_corruption_check() when boot
+ option without value is provided
+ - [x86] mm/pat: Disable preemption around __flush_tlb_all()
+ - [x86] speculation: Support Enhanced IBRS on future CPUs (CVE-2017-5715)
+ - [armhf] dts: exynos: Disable pull control for MAX8997 interrupts on
+ Origen
+ - drm: fix use of freed memory in drm_mode_setcrtc
+ - bpf: do not blindly change rlimit in reuseport net selftest
+ - nvme: remove ns sibling before clearing path
+ - Revert "perf tools: Fix PMU term format max value calculation"
+ - xsk: do not call synchronize_net() under RCU read lock
+ - xfrm: policy: use hlist rcu variants on insert
+ - [x86] perf vendor events intel: Fix wrong filter_band* values for uncore
+ events
+ - r8169: Enable MSI-X on RTL8106e
+ - nfp: flower: fix pedit set actions for multiple partial masks
+ - nfp: flower: use offsets provided by pedit instead of index for ipv6
+ - sched/fair: Fix the min_vruntime update logic in dequeue_entity()
+ - perf evsel: Store ids for events with their own cpus
+ perf_event__synthesize_event_update_cpus
+ - perf tools: Fix use of alternatives to find JDIR
+ - perf cpu_map: Align cpu map synthesized events properly.
+ - perf report: Don't crash on invalid inline debug information
+ - [x86] fpu: Remove second definition of fpu in __fpu__restore_sig()
+ - net: qla3xxx: Remove overflowing shift statement
+ - r8169: re-enable MSI-X on RTL8168g
+ - drm: Get ref on CRTC commit object when waiting for flip_done
+ - [arm64] net: socionext: Reset tx queue in ndo_stop
+ - netfilter: xt_nat: fix DNAT target for shifted portmap ranges
+ - [m68k] ataflop: fix error handling during setup
+ - [m68k] swim: fix cleanup on setup error
+ - [arm64] cpufeature: ctr: Fix cpu capability check for late CPUs
+ - nfp: devlink port split support for 1x100G CXP NIC
+ - tun: Consistently configure generic netdev params via rtnetlink
+ - [s390x] sthyi: Fix machine name validity indication
+ - hwmon: (pwm-fan) Set fan speed to 0 on suspend
+ - lightnvm: pblk: fix race on sysfs line state
+ - lightnvm: pblk: fix two sleep-in-atomic-context bugs
+ - lightnvm: pblk: fix race condition on metadata I/O
+ - perf tools: Free temporary 'sys' string in read_event_files()
+ - perf tools: Cleanup trace-event-info 'tdata' leak
+ - perf strbuf: Match va_{add,copy} with va_end
+ - [x86] cpupower: Fix coredump on VMWare
+ - bcache: Populate writeback_rate_minimum attribute
+ - mmc: sdhci-pci-o2micro: Add quirk for O2 Micro dev 0x8620 rev 0x01
+ - sdhci: acpi: add free_slot callback
+ - iwlwifi: pcie: avoid empty free RB queue
+ - iwlwifi: mvm: clear HW_RESTART_REQUESTED when stopping the interface
+ - iwlwifi: mvm: check for n_profiles validity in EWRD ACPI
+ - [i386] olpc: Indicate that legacy PC XO-1 platform should not register
+ RTC
+ - ACPI/PPTT: Handle architecturally unknown cache types
+ - ACPI / PM: LPIT: Register sysfs attributes based on FADT
+ - ACPI / processor: Fix the return value of acpi_processor_ids_walk()
+ - cpufreq: dt: Try freeing static OPPs only if we have added them
+ - [x86] intel_rdt: Show missing resctrl mount options
+ - [arm64] signal: Introduce COMPAT_SIGMINSTKSZ for use in
+ compat_sys_sigaltstack
+ - [arm64] net: hns3: Fix for packet buffer setting bug
+ - [x86] boot: Fix EFI stub alignment
+ - [arm64] net: hns3: Add nic state check before calling netif_tx_wake_queue
+ - [arm64] net: hns3: Fix ets validate issue
+ - [armhf,arm64] pinctrl: sunxi: fix 'pctrl->functions' allocation in
+ sunxi_pinctrl_build_state
+ - [arm64] pinctrl: qcom: spmi-mpp: Fix err handling of pmic_mpp_set_mux
+ - brcmfmac: fix for proper support of 160MHz bandwidth
+ - [arm64] net: hns3: Check hdev state when getting link status
+ - [arm64] net: hns3: Set STATE_DOWN bit of hdev state when stopping net
+ - net: phy: phylink: ensure the carrier is off when starting phylink
+ - block, bfq: correctly charge and reset entity service in all cases
+ - [arm64] entry: Allow handling of undefined instructions from EL1
+ - kprobes: Return error if we fail to reuse kprobe instead of BUG_ON()
+ - spi: gpio: No MISO does not imply no RX
+ - ACPI / LPSS: Add alternative ACPI HIDs for Cherry Trail DMA controllers
+ - [arm64] pinctrl: qcom: spmi-mpp: Fix drive strength setting
+ - bpf/verifier: fix verifier instability
+ - failover: Add missing check to validate 'slave_dev' in
+ net_failover_slave_unregister
+ - perf tests: Fix record+probe_libc_inet_pton.sh without ping's debuginfo
+ - [arm64] pinctrl: spmi-mpp: Fix pmic_mpp_config_get() to be compliant
+ - [arm64] pinctrl: ssbi-gpio: Fix pm8xxx_pin_config_get() to be compliant
+ - [arm64] net: hns3: Preserve vlan 0 in hardware table
+ - [arm64] net: hns3: Fix ping exited problem when doing lp selftest
+ - [arm64] net: hns3: Fix for vf vlan delete failed problem
+ - [armhf,arm64] net: dsa: mv88e6xxx: Fix writing to a PHY page.
+ - rsi: fix memory alignment issue in ARM32 platforms
+ - iwlwifi: mvm: fix BAR seq ctrl reporting
+ - ixgbe: disallow IPsec Tx offload when in SR-IOV mode
+ - ixgbevf: VF2VF TCP RSS
+ - ath10k: schedule hardware restart if WMI command times out
+ - libata: Apply NOLPM quirk for SAMSUNG MZ7TD256HAFV-000L9
+ - cgroup, netclassid: add a preemption point to write_classid
+ - [armhf,arm64] net: stmmac: dwmac-sun8i: fix OF child-node lookup
+ - f2fs: fix to account IO correctly for cgroup writeback
+ - MD: Memory leak when flush bio size is zero
+ - md: fix memleak for mempool
+ - scsi: esp_scsi: Track residual for PIO transfers
+ - scsi: ufs: Schedule clk gating work on correct queue
+ - UAPI: ndctl: Fix g++-unsupported initialisation in headers
+ - [x86] KVM: nVMX: Clear reserved bits of #DB exit qualification
+ - scsi: megaraid_sas: fix a missing-check bug
+ - RDMA/core: Do not expose unsupported counters
+ - IB/ipoib: Clear IPCB before icmp_send
+ - usb: host: ohci-at91: fix request of irq for optional gpio
+ - usb: typec: tcpm: Report back negotiated PPS voltage and current
+ - tpm: suppress transmit cmd error logs when TPM 1.2 is disabled/
+ deactivated
+ - f2fs: clear PageError on the read path
+ - [x86] Drivers: hv: vmbus: Use cpumask_var_t for on-stack cpu mask
+ - [x86] VMCI: Resource wildcard match fixed
+ - PCI / ACPI: Enable wake automatically for power managed bridges
+ - xprtrdma: Reset credit grant properly after a disconnect
+ - irqchip/pdc: Setup all edge interrupts as rising edge at GIC
+ - [armhf,arm64] usb: dwc2: fix a race with external vbus supply
+ - ext4: fix argument checking in EXT4_IOC_MOVE_EXT
+ - MD: fix invalid stored role for a disk
+ - nvmem: check the return value of nvmem_add_cells()
+ - xhci: Avoid USB autosuspend when resuming USB2 ports.
+ - f2fs: fix to recover inode's crtime during POR
+ - f2fs: fix to recover inode's i_flags during POR
+ - PCI/MSI: Warn and return error if driver enables MSI/MSI-X twice
+ - [armhf.arm64] usb: chipidea: Prevent unbalanced IRQ disable
+ - [x86] driver/dma/ioat: Call del_timer_sync() without holding prep_lock
+ - IB/mlx5: Allow transition of DCI QP to reset
+ - uio: ensure class is registered before devices
+ - scsi: lpfc: Correct soft lockup when running mds diagnostics
+ - scsi: lpfc: Correct race with abort on completion path
+ - f2fs: avoid sleeping under spin_lock
+ - f2fs: report error if quota off error during umount
+ - signal: Always deliver the kernel's SIGKILL and SIGSTOP to a pid
+ namespace init
+ - IB/rxe: fix for duplicate request processing and ack psns
+ - ALSA: hda: Check the non-cached stream buffers more explicitly
+ - [x86] cpupower: Fix AMD Family 0x17 msr_pstate size
+ - Revert "f2fs: fix to clear PG_checked flag in set_page_dirty()"
+ - f2fs: fix to recover cold bit of inode block during POR
+ - f2fs: fix to account IO correctly
+ - OPP: Free OPP table properly on performance state irregularities
+ - [armhf] dts: exynos: Add missing cooling device properties for CPUs
+ - [armhf] dts: exynos: Convert exynos5250.dtsi to opp-v2 bindings
+ - [armhf] dts: exynos: Mark 1 GHz CPU OPP as suspend OPP on Exynos5250
+ - xen-swiotlb: use actually allocated size on check physical continuous
+ - tpm: Restore functionality to xen vtpm driver.
+ - xen/blkfront: avoid NULL blkfront_info dereference on device removal
+ - xen/balloon: Support xend-based toolstack
+ - xen: fix race in xen_qlock_wait()
+ - xen: make xen_qlock_wait() nestable
+ - xen/pvh: increase early stack size
+ - xen/pvh: don't try to unplug emulated devices
+ - libertas: don't set URB_ZERO_PACKET on IN USB transfer
+ - usbip:vudc: BUG kmalloc-2048 (Not tainted): Poison overwritten
+ - usb: typec: tcpm: Fix APDO PPS order checking to be based on voltage
+ - mt76: mt76x2: fix multi-interface beacon configuration
+ - iwlwifi: mvm: check return value of rs_rate_from_ucode_rate()
+ - net/ipv4: defensive cipso option parsing
+ - libnvdimm: Hold reference on parent while scheduling async init
+ - libnvdimm, region: Fail badblocks listing for inactive regions
+ - libnvdimm, pmem: Fix badblocks population for 'raw' namespaces
+ - [x86] ASoC: intel: skylake: Add missing break in skl_tplg_get_token()
+ - IB/mlx5: Fix MR cache initialization
+ - IB/rxe: Revise the ib_wr_opcode enum
+ - jbd2: fix use after free in jbd2_log_do_checkpoint()
+ - gfs2_meta: ->mount() can get NULL dev_name
+ - ext4: fix EXT4_IOC_SWAP_BOOT
+ - ext4: initialize retries variable in ext4_da_write_inline_data_begin()
+ - ext4: fix setattr project check in fssetxattr ioctl
+ - ext4: propagate error from dquot_initialize() in EXT4_IOC_FSSETXATTR
+ - ext4: fix use-after-free race in ext4_remount()'s error path
+ - selinux: fix mounting of cgroup2 under older policies
+ - HID: wacom: Work around HID descriptor bug in DTK-2451 and DTH-2452
+ - HID: hiddev: fix potential Spectre v1
+ - [x86] EDAC, amd64: Add Family 17h, models 10h-2fh support
+ - [x86] EDAC, {i7core,sb,skx}_edac: Fix uncorrected error counting
+ - [x86] EDAC, skx_edac: Fix logical channel intermediate decoding
+ - PCI/ASPM: Fix link_state teardown on device removal
+ - [x86] PCI: vmd: White list for fast interrupt handlers
+ - [powerpc*] signal/GenWQE: Fix sending of SIGKILL
+ - signal: Guard against negative signal numbers in copy_siginfo_from_user32
+ - crypto: lrw - Fix out-of bounds access on counter overflow
+ - crypto: tcrypt - fix ghash-generic speed test
+ - [x86] crypto: aesni - don't use GFP_ATOMIC allocation if the request
+ doesn't cross a page in gcm
+ - mm: /proc/pid/smaps_rollup: fix NULL pointer deref in smaps_pte_range()
+ - ima: fix showing large 'violations' or 'runtime_measurements_count'
+ - hugetlbfs: dirty pages as they are added to pagecache
+ - mm/rmap: map_pte() was not handling private ZONE_DEVICE page properly
+ - mm/hmm: fix race between hmm_mirror_unregister() and mmu_notifier callback
+ - [armhf,arm64] KVM: Ensure only THP is candidate for adjustment
+ - [arm64] KVM: Fix caching of host MDCR_EL2 value
+ - [armhf] w1: omap-hdq: fix missing bus unregister at removal
+ - smb3: allow stats which track session and share reconnects to be reset
+ - smb3: do not attempt cifs operation in smb3 query info error path
+ - smb3: on kerberos mount if server doesn't specify auth type use krb5
+ - printk: Fix panic caused by passing log_buf_len to command line
+ - genirq: Fix race on spurious interrupt detection
+ - NFSv4.1: Fix the r/wsize checking
+ - nfs: Fix a missed page unlock after pg_doio()
+ - nfsd: correctly decrement odstate refcount in error path
+ - nfsd: Fix an Oops in free_session()
+ - lockd: fix access beyond unterminated strings in prints
+ - dm ioctl: harden copy_params()'s copy_from_user() from malicious users
+ - dm zoned: fix metadata block ref counting
+ - dm zoned: fix various dmz_get_mblock() issues
+ - media: ov7670: make "xclk" clock optional
+ - fsnotify: Fix busy inodes during unmount
+ - [powerpc*] msi: Fix compile error on mpc83xx
+ - [powerpc*] tm: Fix HFSCR bit for no suspend case
+ - [powerpc*] 4s/hash: Do not use PPC_INVALIDATE_ERAT on CPUs before POWER9
+ - [mips*] memset: Fix CPU_DADDI_WORKAROUNDS `small_fixup' regression
+ - [mips*/octeon] fix out of bounds array access on CN68XX
+ - rtc: ds1307: fix ds1339 wakealarm support
+ - rtc: cmos: Fix non-ACPI undefined reference to `hpet_rtc_interrupt'
+ - rtc: cmos: Remove the `use_acpi_alarm' module parameter for !ACPI
+ - [armhf] power: supply: twl4030-charger: fix OF sibling-node lookup
+ - [armhf,arm64] iommu/arm-smmu: Ensure that page-table updates are visible
+ before TLBI
+ - media: v4l2-tpg: fix kernel oops when enabling HFLIP and OSD
+ - Revert "media: dvbsky: use just one mutex for serializing device R/W ops"
+ - media: cec: make cec_get_edid_spa_location() an inline function
+ - media: cec: integrate cec_validate_phys_addr() in cec-api.c
+ - xen: fix xen_qlock_wait()
+ - xen: remove size limit of privcmd-buf mapping interface
+ - xen-blkfront: fix kernel panic with negotiate_mq error path
+ - media: cec: add new tx/rx status bits to detect aborts/timeouts
+ - media: cec: fix the Signal Free Time calculation
+ - media: cec: forgot to cancel delayed work
+ - media: em28xx: use a default format if TRY_FMT fails
+ - media: tvp5150: avoid going past array on v4l2_querymenu()
+ - media: em28xx: fix input name for Terratec AV 350
+ - media: em28xx: make v4l2-compliance happier by starting sequence on zero
+ - media: em28xx: fix handler for vidioc_s_input()
+ - media: media colorspaces*.rst: rename AdobeRGB to opRGB
+ - media: replace ADOBERGB by OPRGB
+ - media: hdmi.h: rename ADOBE_RGB to OPRGB and ADOBE_YCC to OPYCC
+ - [arm64] lse: remove -fcall-used-x0 flag
+ - [arm64] rpmsg: smd: fix memory leak on channel create
+ - Cramfs: fix abad comparison when wrap-arounds occur
+ - [armhf,arm64] soc/tegra: pmc: Fix child-node lookup
+ - tracing: Return -ENOENT if there is no target synthetic event
+ - btrfs: qgroup: Avoid calling qgroup functions if qgroup is not enabled
+ - btrfs: Handle owner mismatch gracefully when walking up tree
+ - btrfs: locking: Add extra check in btrfs_init_new_buffer() to avoid
+ deadlock
+ - btrfs: fix error handling in free_log_tree
+ - btrfs: fix error handling in btrfs_dev_replace_start
+ - btrfs: Enhance btrfs_trim_fs function to handle error better
+ - btrfs: Ensure btrfs_trim_fs can trim the whole filesystem
+ - btrfs: iterate all devices during trim, instead of fs_devices::alloc_list
+ - btrfs: don't attempt to trim devices that don't support it
+ - btrfs: keep trim from interfering with transaction commits
+ - btrfs: wait on caching when putting the bg cache
+ - Btrfs: don't clean dirty pages during buffered writes
+ - btrfs: release metadata before running delayed refs
+ - btrfs: protect space cache inode alloc with GFP_NOFS
+ - btrfs: reset max_extent_size on clear in a bitmap
+ - btrfs: make sure we create all new block groups
+ - Btrfs: fix warning when replaying log after fsync of a tmpfile
+ - Btrfs: fix wrong dentries after fsync of file that got its parent
+ replaced
+ - btrfs: qgroup: Dirty all qgroups before rescan
+ - Btrfs: fix null pointer dereference on compressed write path error
+ - Btrfs: fix assertion on fsync of regular file when using no-holes feature
+ - Btrfs: fix deadlock when writing out free space caches
+ - btrfs: reset max_extent_size properly
+ - btrfs: set max_extent_size properly
+ - btrfs: don't use ctl->free_space for max_extent_size
+ - btrfs: only free reserved extent if we didn't insert it
+ - btrfs: fix insert_reserved error handling
+ - btrfs: don't run delayed_iputs in commit
+ - btrfs: move the dio_sem higher up the callchain
+ - Btrfs: fix use-after-free during inode eviction
+ - Btrfs: fix use-after-free when dumping free space
+ - net: sched: Remove TCA_OPTIONS from policy
+ - userns: also map extents in the reverse map to kernel IDs
+ - bpf: wait for running BPF programs when updating map-in-map
+ - MD: fix invalid stored role for a disk - try2
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.20
+ - [powerpc*] traps: restore recoverability of machine_check interrupts
+ - [powerpc*] 64/module: REL32 relocation range check
+ - [powerpc*] mm: Fix page table dump to work on Radix
+ - [powerpc*] mm: fix always true/false warning in slice.c
+ - drm/amd/display: fix bug of accessing invalid memory
+ - Input: wm97xx-ts - fix exit path
+ - [powerpc*] eeh: Fix possible null deref in eeh_dump_dev_log()
+ - tty: check name length in tty_find_polling_driver()
+ - tracing/kprobes: Check the probe on unloaded module correctly
+ - drm/amdgpu/powerplay: fix missing break in switch statements
+ - [powerpc*] nohash: fix undefined behaviour when testing page size support
+ - [powerpc*] mm: Don't report hugepage tables as memory leaks when using
+ kmemleak
+ - [armhf] drm/omap: fix memory barrier bug in DMM driver
+ - drm/amd/display: fix gamma not being applied
+ - [arm64] drm/hisilicon: hibmc: Do not carry error code in HiBMC
+ framebuffer pointer
+ - media: pci: cx23885: handle adding to list failure
+ - [mips*] kexec: Mark CPU offline before disabling local IRQ
+ - [powerpc*] memtrace: Remove memory in chunks
+ - [mips*] PCI: Call pcie_bus_configure_settings() to set MPS/MRRS
+ - media: tvp5150: fix width alignment during set_selection()
+ - drm/amdgpu: Fix SDMA TO after GPU reset v3
+ - 9p locks: fix glock.client_id leak in do_lock
+ - udf: Prevent write-unsupported filesystem to be remounted read-write
+ - 9p: clear dangling pointers in p9stat_free
+ - cdrom: fix improper type cast, which can leat to information leak.
+ - ovl: fix error handling in ovl_verify_set_fh()
+ - ovl: check whiteout in ovl_create_over_whiteout()
+ - [sh4] serial: sh-sci: Fix could not remove dev_attr_rx_fifo_timeout
+ - scsi: qla2xxx: Fix incorrect port speed being set for FC adapters
+ - scsi: qla2xxx: Fix process response queue for ISP26XX and above
+ - scsi: qla2xxx: Remove stale debug trace message from tcm_qla2xxx
+ - scsi: qla2xxx: shutdown chip if reset fail
+ - scsi: qla2xxx: Fix duplicate switch database entries
+ - scsi: qla2xxx: Fix driver hang when FC-NVMe LUNs are configured
+ - fuse: Fix use-after-free in fuse_dev_do_read()
+ - fuse: Fix use-after-free in fuse_dev_do_write()
+ - fuse: fix blocked_waitq wakeup
+ - fuse: set FR_SENT while locked
+ - ovl: fix recursive oi->lock in ovl_link()
+ - scsi: qla2xxx: Fix re-using LoopID when handle is in use
+ - scsi: qla2xxx: Fix NVMe session hang on unload
+ - [arm64] clk: meson-gxbb: set fclk_div3 as CLK_IS_CRITICAL
+ - [arm64] clk: meson: axg: mark fdiv2 and fdiv3 as critical
+ - zram: close udev startup race condition as default groups
+ - [mips*el/loonsgon-3] Fix CPU UART irq delivery problem
+ - [mips*el/loongson-3] Fix BRIDGE irq delivery problem
+ - [armhf] clk: s2mps11: Fix matching when built as module and DT node
+ contains compatible
+ - [armhf,arm64] clk: sunxi-ng: h6: fix bus clocks' divider position
+ - [arm64] clk: rockchip: fix wrong mmc sample phase shift for rk3328
+ - [armhf,arm64] clk: rockchip: Fix static checker warning in
+ rockchip_ddrclk_get_parent call
+ - libceph: bump CEPH_MSG_MAX_DATA_LEN
+ - Revert "ceph: fix dentry leak in splice_dentry()"
+ - thermal: core: Fix use-after-free in thermal_cooling_device_destroy_sysfs
+ - mach64: fix display corruption on big endian machines
+ - mach64: fix image corruption due to reading accelerator registers
+ - acpi/nfit, x86/mce: Handle only uncorrectable machine checks
+ - acpi/nfit, x86/mce: Validate a MCE's address before using it
+ - acpi, nfit: Fix ARS overflow continuation
+ - [arm64] reset: hisilicon: fix potential NULL pointer dereference
+ - vhost/scsi: truncate T10 PI iov_iter to prot_bytes
+ - scsi: qla2xxx: Initialize port speed to avoid setting lower speed
+ - SCSI: fix queue cleanup race before queue initialization is done
+ - [powerpc*] Revert "powerpc/8xx: Use L1 entry APG to handle _PAGE_ACCESSED
+ for CONFIG_SWAP"
+ - ocfs2: fix a misuse a of brelse after failing ocfs2_check_dir_entry
+ - ocfs2: free up write context when direct IO failed
+ - mm: thp: relax __GFP_THISNODE for MADV_HUGEPAGE mappings
+ - memory_hotplug: cond_resched in __remove_pages
+ - netfilter: conntrack: fix calculation of next bucket number in early_drop
+ - [armhf] 8809/1: proc-v7: fix Thumb annotation of cpu_v7_hvc_switch_mm
+ - bonding/802.3ad: fix link_failure_count tracking
+ - mtd: nand: Fix nanddev_neraseblocks()
+ - mtd: docg3: don't set conflicting BCH_CONST_PARAMS option
+ - hwmon: (core) Fix double-free in __hwmon_device_register()
+ - perf stat: Handle different PMU names with common prefix
+ - of, numa: Validate some distance map rules
+ - [x86] hyper-v: Enable PIT shutdown quirk
+ - termios, tty/tty_baudrate.c: fix buffer overrun
+ - watchdog/core: Add missing prototypes for weak functions
+ - btrfs: fix pinned underflow after transaction aborted
+ - Btrfs: fix cur_offset in the error case for nocow
+ - Btrfs: fix infinite loop on inode eviction after deduplication of eof
+ block
+ - Btrfs: fix data corruption due to cloning of eof block
+ - clockevents/drivers/i8253: Add support for PIT shutdown quirk
+ - ext4: add missing brelse() update_backups()'s error path
+ - ext4: add missing brelse() in set_flexbg_block_bitmap()'s error path
+ - ext4: add missing brelse() add_new_gdb_meta_bg()'s error path
+ - ext4: avoid potential extra brelse in setup_new_flex_group_blocks()
+ - ext4: missing !bh check in ext4_xattr_inode_write()
+ - ext4: fix possible inode leak in the retry loop of ext4_resize_fs()
+ - ext4: avoid buffer leak on shutdown in ext4_mark_iloc_dirty()
+ - ext4: avoid buffer leak in ext4_orphan_add() after prior errors
+ - ext4: fix missing cleanup if ext4_alloc_flex_bg_array() fails while
+ resizing
+ - ext4: avoid possible double brelse() in add_new_gdb() on error path
+ - ext4: fix possible leak of sbi->s_group_desc_leak in error path
+ - ext4: fix possible leak of s_journal_flag_rwsem in error path
+ - ext4: fix buffer leak in ext4_xattr_get_block() on error path
+ - ext4: release bs.bh before re-using in ext4_xattr_block_find()
+ - ext4: fix buffer leak in ext4_xattr_move_to_block() on error path
+ - ext4: fix buffer leak in ext4_expand_extra_isize_ea() on error path
+ - ext4: fix buffer leak in __ext4_read_dirblock() on error path
+ - mount: Retest MNT_LOCKED in do_umount
+ - mount: Don't allow copying MNT_UNBINDABLE|MNT_LOCKED mounts
+ - mount: Prevent MNT_DETACH from disconnecting locked mounts
+ - mnt: fix __detach_mounts infinite loop
+ - sunrpc: correct the computation for page_ptr when truncating
+ - NFSv4: Don't exit the state manager without clearing
+ NFS4CLNT_MANAGER_RUNNING
+ - nfsd: COPY and CLONE operations require the saved filehandle to be set
+ - rtc: hctosys: Add missing range error reporting
+ - fuse: fix use-after-free in fuse_direct_IO()
+ - fuse: fix leaked notify reply
+ - selinux: check length properly in SCTP bind hook
+ - configfs: replace strncpy with memcpy
+ - gfs2: Put bitmap buffers in put_super
+ - gfs2: Fix metadata read-ahead during truncate (2)
+ - libata: blacklist SAMSUNG MZ7TD256HAFV-000L9 SSD
+ - crypto: user - fix leaking uninitialized memory to userspace
+ - hugetlbfs: fix kernel BUG at fs/hugetlbfs/inode.c:444!
+ - mm/swapfile.c: use kvzalloc for swap_info_struct allocation
+ - [armhf,arm64] efi/libstub: Pack FDT after populating it
+ - [armhf,arm64] drm/rockchip: Allow driver to be shutdown on reboot/kexec
+ - [arm64] drm/msm: fix OF child-node lookup
+ - drm/amdgpu: Fix typo in amdgpu_vmid_mgr_init
+ - drm/amdgpu: add missing CHIP_HAINAN in amdgpu_ucode_get_load_type
+ - drm/nouveau: Check backlight IDs are >= 0, not > 0
+ - drm/nouveau: Fix nv50_mstc->best_encoder()
+ - drm/amd/powerplay: Enable/Disable NBPSTATE on On/OFF of UVD
+ - [armhf] drm/etnaviv: fix bogus fence complete check in timeout handler
+ - drm/dp_mst: Check if primary mstb is null
+ - drm: panel-orientation-quirks: Add quirk for Acer One 10 (S1003)
+ - [x86] drm/i915/dp: Link train Fallback on eDP only if fallback link BW
+ can fit panel's native mode
+ - [x86] drm/i915: Restore vblank interrupts earlier
+ - [x86] drm/i915: Don't unset intel_connector->mst_port
+ - [x86] drm/i915: Skip vcpi allocation for MSTB ports that are gone
+ - [x86] drm/i915: Large page offsets for pread/pwrite
+ - [x86] drm/i915/dp: Fix link retraining comment in intel_dp_long_pulse()
+ - [x86] drm/i915/dp: Restrict link retrain workaround to external monitors
+ - [x86] drm/i915/hdmi: Add HDMI 2.0 audio clock recovery N values
+ - [x86] drm/i915: Fix error handling for the NV12 fb dimensions check
+ - [x86] drm/i915: Fix ilk+ watermarks when disabling pipes
+ - [x86] drm/i915: Compare user's 64b GTT offset even on 32b
+ - [x86] drm/i915: Don't oops during modeset shutdown after lpe audio deinit
+ - [x86] drm/i915: Mark pin flags as u64
+ - [x86] drm/i915/ringbuffer: Delay after EMIT_INVALIDATE for gen4/gen5
+ - [x86] drm/i915/execlists: Force write serialisation into context image vs
+ execution
+ - [x86] drm/i915: Fix possible race in intel_dp_add_mst_connector()
+ - [armhf,arm64] CONFIG_XEN_PV breaks xen_create_contiguous_region on ARM
+
+ [ Ben Hutchings ]
+ * linux-perf: Fix BPF feature detection
+ * [rt] Update to 4.18.16-rt9:
+ - Revert "rcu: Use cpus_read_lock() while looking at cpu_online_mask"
+ - EXP rcu: Revert expedited GP parallelization cleverness
+
+ [ Romain Perier ]
+ * [rt] Update to 4.18.12-rt7
+ * Fixed FTBFS caused by wireless-disable-regulatory.db-direct-loading.patch,
+ due to conflicting types for 'reg_query_regdb_wmm'
+
+ [ Vagrant Cascadian ]
+ * [arm64] Update pinebook/teres-i device-tree patches to 4.19.x:
+ - Enables the lid to wakeup from suspend.
+
+ [ Salvatore Bonaccorso ]
+ * [x86] swiotlb: Enable swiotlb for > 4GiG RAM on 32-bit kernels
+ (Closes: #908924)
+ * mremap: properly flush TLB before releasing the page (CVE-2018-18281)
+ * cdrom: fix improper type cast, which can leat to information leak
+ (CVE-2018-18710)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 21 Nov 2018 20:55:46 +0000
+
+linux (4.18.10-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [rt][arm64,armhf] Fix build failure after rebasing onto 4.18.10
+ * xen-netback: fix input validation in xenvif_set_hash_mapping()
+ (CVE-2018-15471)
+ * Revert "uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct
+ member name" (Closes: #909813)
+
+ [ Salvatore Bonaccorso ]
+ * [arm64] KVM: Tighten guest core register access from userspace
+ (CVE-2018-18021)
+ * [arm64] KVM: Sanitize PSTATE.M when being set from userspace
+ (CVE-2018-18021)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 07 Oct 2018 21:57:06 +0100
+
+linux (4.18.10-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.9
+ - i2c: xiic: Make the start and the byte count write atomic
+ - i2c: i801: fix DNV's SMBCTRL register offset
+ - HID: multitouch: fix Elan panels with 2 input modes declaration
+ - HID: core: fix grouping by application
+ - HID: i2c-hid: Fix flooded incomplete report after S3 on Rayd touchscreen
+ - HID: input: fix leaking custom input node name
+ - mm/hugetlb: filter out hugetlb pages if HUGEPAGE migration is not
+ supported.
+ - mac80211: don't update the PM state of a peer upon a multicast frame
+ - scsi: lpfc: Correct MDS diag and nvmet configuration
+ - nbd: don't allow invalid blocksize settings
+ - block: don't warn when doing fsync on read-only devices
+ - block: bfq: swap puts in bfqg_and_blkg_put
+ - android: binder: fix the race mmap and alloc_new_buf_locked
+ - [mips*] VDSO: Match data page cache colouring when D$ aliases
+ - smb3: Backup intent flag missing for directory opens with backupuid mounts
+ - smb3: check for and properly advertise directory lease support
+ - cifs: connect to servername instead of IP for IPC$ share
+ - btrfs: fix qgroup_free wrong num_bytes in btrfs_subvolume_reserve_metadata
+ - btrfs: fix data corruption when deduplicating between different files
+ - [arm64] KVM: Only force FPEXC32_EL2.EN if trapping FPSIMD
+ - [armhf, arm64] KVM: Clean dcache to PoC when changing PTE due to CoW
+ - [[powerpc*] KVM: Book3S HV: Use correct pagesize in kvm_unmap_radix()
+ - [s390x] KVM: vsie: copy wrapping keys to right place
+ - [x86] KVM: SVM: Set EMULTYPE_NO_REEXECUTE for RSM emulation
+ - [x86] KVM: VMX: Do not allow reexecute_instruction() when skipping MMIO
+ instr
+ - [x86] KVM: Invert emulation re-execute behavior to make it opt-in
+ - [x86] KVM: Merge EMULTYPE_RETRY and EMULTYPE_ALLOW_REEXECUTE
+ - [x86] KVM: Default to not allowing emulation retry in kvm_mmu_page_fault
+ - [x86] KVM: Do not re-{try,execute} after failed emulation in L2
+ - ACPI / LPSS: Force LPSS quirks on boot
+ - memory: ti-aemif: fix a potential NULL-pointer dereference
+ - ALSA: hda - Fix cancel_work_sync() stall from jackpoll work
+ - cpu/hotplug: Adjust misplaced smb() in cpuhp_thread_fun()
+ - cpu/hotplug: Prevent state corruption on error rollback
+ - [x86] microcode: Make sure boot_cpu_data.microcode is up-to-date
+ - [x86] microcode: Update the new microcode revision unconditionally
+ - [x86] process: Don't mix user/kernel regs in 64bit __show_regs()
+ - [x86] apic/vector: Make error return value negative
+ - switchtec: Fix Spectre v1 vulnerability
+ - misc: mic: SCIF Fix scif_get_new_port() error handling
+ - ALSA: hda/realtek - Add mute LED quirk for HP Spectre x360
+ - ethtool: Remove trailing semicolon for static inline
+ - i2c: aspeed: Add an explicit type casting for *get_clk_reg_val
+ - Bluetooth: h5: Fix missing dependency on BT_HCIUART_SERDEV
+ - gpio: tegra: Move driver registration to subsys_init level
+ - [powerpc*] powernv: Fix concurrency issue with npu->mmio_atsd_usage
+ - [powerpc*] 4xx: Fix error return path in ppc4xx_msi_probe()
+ - media: davinci: vpif_display: Mix memory leak on probe error path
+ - media: dw2102: Fix memleak on sequence of probes
+ - net: phy: Fix the register offsets in Broadcom iProc mdio mux driver
+ - scsi: qla2xxx: Fix unintended Logout
+ - scsi: qla2xxx: Fix session state stuck in Get Port DB
+ - scsi: qla2xxx: Silent erroneous message
+ - clk: scmi: Fix the rounding of clock rate
+ - blk-mq: fix updating tags depth
+ - scsi: lpfc: Fix driver crash when re-registering NVME rports.
+ - scsi: target: fix __transport_register_session locking
+ - md/raid5: fix data corruption of replacements after originals dropped
+ - timers: Clear timer_base::must_forward_clk with timer_base::lock held
+ - gpu: ipu-v3: default to id 0 on missing OF alias
+ - misc: ti-st: Fix memory leak in the error path of probe()
+ - uio: potential double frees if __uio_register_device() fails
+ - firmware: vpd: Fix section enabled flag on vpd_section_destroy
+ - [x86] Drivers: hv: vmbus: Cleanup synic memory free path
+ - tty: rocket: Fix possible buffer overwrite on register_PCI
+ - uio: fix possible circular locking dependency
+ - iwlwifi: pcie: don't access periphery registers when not available
+ - IB/IPoIB: Set ah valid flag in multicast send flow
+ - f2fs: fix to active page in lru list for read path
+ - f2fs: do not set free of current section
+ - f2fs: Keep alloc_valid_block_count in sync
+ - f2fs: issue discard align to section in LFS mode
+ - f2fs: fix defined but not used build warnings
+ - f2fs: fix to detect looped node chain correctly
+ - ASoC: soc-pcm: Use delay set in component pointer function
+ - perf tools: Allow overriding MAX_NR_CPUS at compile time
+ - device-dax: avoid hang on error before devm_memremap_pages()
+ - NFSv4.0 fix client reference leak in callback
+ - perf c2c report: Fix crash for empty browser
+ - perf evlist: Fix error out while applying initial delay and LBR
+ - [powerpc*] pseries: fix EEH recovery of some IOV devices
+ - [powerpc*] macintosh/via-pmu: Add missing mmio accessors
+ - ath9k: report tx status on EOSP
+ - ath9k_hw: fix channel maximum power level test
+ - ath10k: prevent active scans on potential unusable channels
+ - wlcore: Set rx_status boottime_ns field on rx
+ - rpmsg: core: add support to power domains for devices
+ - mtd: rawnand: make subop helpers return unsigned values
+ - scsi: tcmu: do not set max_blocks if data_bitmap has been setup
+ - [mips*] Fix ISA virt/bus conversion for non-zero PHYS_OFFSET
+ - ata: libahci: Allow reconfigure of DEVSLP register
+ - ata: libahci: Correct setting of DEVSLP register
+ - nfs: Referrals not inheriting proto setting from parent
+ - scsi: 3ware: fix return 0 on the error path of probe
+ - tools/testing/nvdimm: kaddr and pfn can be NULL to ->direct_access()
+ - ath10k: disable bundle mgmt tx completion event support
+ - media: em28xx: explicitly disable TS packet filter
+ - PCI: mobiveil: Fix struct mobiveil_pcie.pcie_reg_base address type
+ - [powerpc*] mm: Don't report PUDs as memory leaks when using kmemleak
+ - Bluetooth: hidp: Fix handling of strncpy for hid->name information
+ - [x86] mm: Remove in_nmi() warning from vmalloc_fault()
+ - [armhf] pinctrl: imx: off by one in imx_pinconf_group_dbg_show()
+ - gpio: pxa: disable pinctrl calls for PXA3xx
+ - gpio: ml-ioh: Fix buffer underwrite on probe error path
+ - [x86, arm64] pinctrl/amd: only handle irq if it is pending and unmasked
+ - [armhf, arm64] net: mvneta: fix mtu change on port without link
+ - f2fs: try grabbing node page lock aggressively in sync scenario
+ - pktcdvd: Fix possible Spectre-v1 for pkt_devs
+ - f2fs: fix to skip GC if type in SSA and SIT is inconsistent
+ - [x86] tpm/tpm_i2c_infineon: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT)
+ - f2fs: fix to do sanity check with reserved blkaddr of inline inode
+ (CVE-2018-13099)
+ - [mips*] Octeon: add missing of_node_put()
+ - [mips*] generic: fix missing of_node_put()
+ - thermal: rcar_thermal: avoid NULL dereference in absence of IRQ resources
+ - thermal_hwmon: Sanitize attribute name passed to hwmon
+ - net: dcb: For wild-card lookups, use priority -1, not 0
+ - dm cache: only allow a single io_mode cache feature to be requested
+ - Input: atmel_mxt_ts - only use first T9 instance
+ - [powerpc*] partitions/aix: append null character to print data from disk
+ - [powerpc*] partitions/aix: fix usage of uninitialized lv_info and lvname
+ structures
+ - drm/amd/display: Prevent PSR from being enabled if initialization fails
+ - media: em28xx: Fix dual transport stream operation
+ - [arm64] iommu/arm-smmu-v3: Abort all transactions if SMMU is enabled in
+ kdump kernel
+ - f2fs: fix to wait on page writeback before updating page
+ - f2fs: Fix uninitialized return in f2fs_ioc_shutdown()
+ - media: em28xx: Fix DualHD disconnect oops
+ - f2fs: avoid potential deadlock in f2fs_sbi_store
+ - f2fs: fix to do sanity check with secs_per_zone (CVE-2018-13100)
+ - [armhf] mfd: ti_am335x_tscadc: Fix struct clk memory leak
+ - f2fs: fix to do sanity check with {sit,nat}_ver_bitmap_bytesize
+ - f2fs: fix to propagate return value of scan_nat_page()
+ - f2fs: fix to do sanity check with extra_attr feature (CVE-2018-13098)
+ - RDMA/hns: Add illegal hop_num judgement
+ - NFSv4.1: Fix a potential layoutget/layoutrecall deadlock
+ - RDMA/hns: Update the data type of immediate data
+ - [mips*] WARN_ON invalid DMA cache maintenance, not BUG_ON
+ - [mips*] mscc: ocelot: fix length of memory address space for MIIM
+ - RDMA/cma: Do not ignore net namespace for unbound cm_id
+ - clocksource: Revert "Remove kthread"
+ - autofs: fix autofs_sbi() does not check super block type
+ - mm: get rid of vmacache_flush_all() entirely (CVE-2018-17182)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.10
+ - be2net: Fix memory leak in be_cmd_get_profile_config()
+ - net/mlx5: Fix use-after-free in self-healing flow
+ - rds: fix two RCU related problems
+ - tipc: orphan sock in tipc_release()
+ - net/mlx5: E-Switch, Fix memory leak when creating switchdev mode FDB
+ tables
+ - net/tls: Set count of SG entries if sk_alloc_sg returns -ENOSPC
+ - net/mlx5: Check for error in mlx5_attach_interface
+ - net/mlx5: Fix debugfs cleanup in the device init/remove flow
+ - erspan: fix error handling for erspan tunnel
+ - erspan: return PACKET_REJECT when the appropriate tunnel is not found
+ - tcp: really ignore MSG_ZEROCOPY if no SO_ZEROCOPY
+ - net/mlx5: Fix not releasing read lock when adding flow rules
+ - net/mlx5: Fix possible deadlock from lockdep when adding fte to fg
+ - net/mlx5: Use u16 for Work Queue buffer fragment size
+ - [armhf, arm64] usb: dwc3: change stream event enable bit back to 13
+ - [arm64] iommu/arm-smmu-v3: sync the OVACKFLG to PRIQ consumer register
+ - [armhf] iommu/io-pgtable-arm-v7s: Abort allocation when table address
+ overflows the PTE
+ - [armhf] iommu/io-pgtable-arm: Fix pgtable allocation in selftest
+ - ALSA: msnd: Fix the default sample sizes
+ - ALSA: usb-audio: Add support for Encore mDSD USB DAC
+ - ALSA: usb-audio: Fix multiple definitions in AU0828_DEVICE() macro
+ - xfrm: fix 'passing zero to ERR_PTR()' warning
+ - [amd64, arm64] amd-xgbe: use dma_mapping_error to check map errors
+ - nfp: don't fail probe on pci_sriov_set_totalvfs() errors
+ - iwlwifi: cancel the injective function between hw pointers to tfd entry
+ index
+ - gfs2: Special-case rindex for gfs2_grow
+ - [armhf] clk: imx6ul: fix missing of_node_put()
+ - [armhf] clk: imx6sll: fix missing of_node_put()
+ - [arm64] clk: mvebu: armada-37xx-periph: Fix wrong return value in
+ get_parent
+ - Input: pxrc - fix freeing URB on device teardown
+ - clk: core: Potentially free connection id
+ - clk: clk-fixed-factor: Clear OF_POPULATED flag in case of failure
+ - media: tw686x: Fix oops on buffer alloc failure
+ - [armhf] dmaengine: pl330: fix irq race with terminate_all
+ - [mips*] ath79: fix system restart
+ - media: videobuf2-core: check for q->error in vb2_core_qbuf()
+ - IB/rxe: Drop QP0 silently
+ - block: allow max_discard_segments to be stacked
+ - IB/ipoib: Fix error return code in ipoib_dev_init()
+ - mtd/maps: fix solutionengine.c printk format warnings
+ - gfs2: Don't reject a supposedly full bitmap if we have blocks reserved
+ - perf tools: Synthesize GROUP_DESC feature in pipe mode
+ - perf tools: Fix struct comm_str removal crash
+ - [powerpc*] perf: Fix callchain ip filtering when return address is in a
+ register
+ - fbdev: Distinguish between interlaced and progressive modes
+ - [armhf] exynos: Clear global variable on init error path
+ - [powerpc*] perf: Fix callchain ip filtering
+ - nvmet: fix file discard return status
+ - nvme-rdma: unquiesce queues when deleting the controller
+ - [armhf, arm64] KVM: vgic: Fix possible spectre-v1 write in
+ vgic_mmio_write_apr()
+ - [powerpc*] powerpc/powernv: opal_put_chars partial write fix
+ - perf script: Show correct offsets for DWARF-based unwinding
+ - ASoC: rt5514: Fix the issue of the delay volume applied
+ - [mips*] jz4740: Bump zload address
+ - mac80211: restrict delayed tailroom needed decrement
+ - Smack: Fix handling of IPv4 traffic received by PF_INET6 sockets
+ - wan/fsl_ucc_hdlc: use IS_ERR_VALUE() to check return value of
+ qe_muram_alloc
+ - [arm64] fix possible spectre-v1 write in ptrace_hbp_set_event()
+ - reset: imx7: Fix always writing bits as 0
+ - efi/arm: preserve early mapping of UEFI memory map longer for BGRT
+ - ALSA: usb-audio: Generic DSD detection for Thesycon-based implementations
+ - nfp: avoid buffer leak when FW communication fails
+ - xen-netfront: fix queue name setting
+ - [arm64] dts: qcom: db410c: Fix Bluetooth LED trigger
+ - ARM: dts: qcom: msm8974-hammerhead: increase load on l20 for sdhci
+ - soc: qcom: smem: Correct check for global partition
+ - [s390x] qeth: fix race in used-buffer accounting
+ - [s390x] qeth: reset layer2 attribute on layer switch
+ - platform/x86: toshiba_acpi: Fix defined but not used build warnings
+ - KVM: arm/arm64: Fix vgic init race
+ - drivers/base: stop new probing during shutdown
+ - i2c: aspeed: Fix initial values of master and slave state
+ - drm/amd/pp: Set Max clock level to display by default
+ - regulator: qcom_spmi: Use correct regmap when checking for error
+ - regulator: qcom_spmi: Fix warning Bad of_node_put()
+ - iommu/ipmmu-vmsa: IMUCTRn.TTSEL needs a special usage on R-Car Gen3
+ - dmaengine: mv_xor_v2: kill the tasklets upon exit
+ - crypto: sharah - Unregister correct algorithms for SAHARA 3
+ - [x86] pti: Check the return value of pti_user_pagetable_walk_p4d()
+ - [x86] pti: Check the return value of pti_user_pagetable_walk_pmd()
+ - [x86} mm/pti: Add an overflow check to pti_clone_pmds()
+ - PCI/AER: Honor "pcie_ports=native" even if HEST sets FIRMWARE_FIRST
+ - xen-netfront: fix warn message as irq device name has '/'
+ - RDMA/cma: Protect cma dev list with lock
+ - pstore: Fix incorrect persistent ram buffer mapping
+ - xen/netfront: fix waiting for xenbus state change
+ - IB/ipoib: Avoid a race condition between start_xmit and cm_rep_handler
+ - [s390x] crypto: Fix return code checking in cbc_paes_crypt()
+ - [armhf] mmc: omap_hsmmc: fix wakeirq handling on removal
+ - ipmi: Rework SMI registration failure
+ - ipmi: Move BT capabilities detection to the detect call
+ - ipmi: Fix I2C client removal in the SSIF driver
+ - ovl: fix oopses in ovl_fill_super() failure paths
+ - vmbus: don't return values for uninitalized channels
+ - tools: hv: Fix a bug in the key delete code
+ - misc: ibmvsm: Fix wrong assignment of return code
+ - misc: hmc6352: fix potential Spectre v1
+ - xhci: Fix use after free for URB cancellation on a reallocated endpoint
+ - usb: Don't die twice if PCI xhci host is not responding in resume
+ - usb: xhci: fix interrupt transfer error happened on MTK platforms
+ - usb: mtu3: fix error of xhci port id when enable U3 dual role
+ - mei: ignore not found client in the enumeration
+ - mei: bus: fix hw module get/put balance
+ - mei: bus: need to unlink client before freeing
+ - dm verity: fix crash on bufio buffer that was allocated with vmalloc
+ - usb: Add quirk to support DJI CineSSD
+ - usb: uas: add support for more quirk flags
+ - usb: Avoid use-after-free by flushing endpoints early in
+ usb_set_interface()
+ - usb: host: u132-hcd: Fix a sleep-in-atomic-context bug in u132_get_frame()
+ - usb: add quirk for WORLDE Controller KS49 or Prodipe MIDI 49C USB
+ controller
+ - usb: gadget: udc: renesas_usb3: fix maxpacket size of ep0
+ - usb: net2280: Fix erroneous synchronization change
+ - usb: serial: io_ti: fix array underflow in completion handler
+ - usb: misc: uss720: Fix two sleep-in-atomic-context bugs
+ - usb: serial: ti_usb_3410_5052: fix array underflow in completion handler
+ - usb: yurex: Fix buffer over-read in yurex_write()
+ - usb: cdc-wdm: Fix a sleep-in-atomic-context bug in
+ service_outstanding_interrupt()
+ - Revert "cdc-acm: implement put_char() and flush_chars()"
+ - cifs: prevent integer overflow in nxt_dir_entry()
+ - CIFS: fix wrapping bugs in num_entries()
+ - cifs: integer overflow in in SMB2_ioctl()
+ - xtensa: ISS: don't allocate memory in platform_setup
+ - perf/core: Force USER_DS when recording user stack data
+ - perf tools: Fix maps__find_symbol_by_name()
+ - of: fix phandle cache creation for DTs with no phandles
+ - x86/EISA: Don't probe EISA bus for Xen PV guests
+ - NFSv4: Fix a tracepoint Oops in initiate_file_draining()
+ - NFSv4.1 fix infinite loop on I/O.
+ - of: add helper to lookup compatible child node
+ - mmc: meson-mx-sdio: fix OF child-node lookup
+ - binfmt_elf: Respect error return from `regset->active'
+ - net/mlx5: Add missing SET_DRIVER_VERSION command translation
+ - audit: fix use-after-free in audit_add_watch
+ - mtdchar: fix overflows in adjustment of `count`
+ - vfs: fix freeze protection in mnt_want_write_file() for overlayfs
+ - bpf: fix rcu annotations in compute_effective_progs()
+ - spi: dw: fix possible race condition
+ - Bluetooth: Use lock_sock_nested in bt_accept_enqueue
+ - evm: Don't deadlock if a crypto algorithm is unavailable
+ - [powerpc*] KVM: Book3S HV: Add of_node_put() in success path
+ - security: check for kstrdup() failure in lsm_append()
+ - PM / devfreq: use put_device() instead of kfree()
+ - [powerpc*] KVM: Book3S: Fix matching of hardware and emulated TCE tables
+ - configfs: fix registered group removal
+ - sched/core: Use smp_mb() in wake_woken_function()
+ - efi/esrt: Only call efi_mem_reserve() for boot services memory
+ - [arm64] net: hns3: Reset net device with rtnl_lock
+ - [arm64] net: hns3: Fix for reset_level default assignment probelm
+ - [arm64] hisi: handle of_iomap and fix missing of_node_put
+ - [arm64] hisi: fix error handling and missing of_node_put
+ - [arm64] net: hns3: Fix return value error in hns3_reset_notify_down_enet
+ - [arm64] hisi: check of_iomap and fix missing of_node_put
+ - liquidio: fix hang when re-binding VF host drv after running DPDK VF
+ driver
+ - [armhf] gpu: ipu-v3: csi: pass back mbus_code_to_bus_cfg error codes
+ - ASoC: hdmi-codec: fix routing
+ - serial: 8250: of: Correct of_platform_serial_setup() error handling
+ - tty: fix termios input-speed encoding when using BOTHER
+ - tty: fix termios input-speed encoding
+ - [armhf, arm64] mmc: tegra: prevent HS200 on Tegra 3
+ - mmc: sdhci: do not try to use 3.3V signaling if not supported
+ - drm/nouveau: Fix runtime PM leak in drm_open()
+ - drm/nouveau/debugfs: Wake up GPU before doing any reclocking
+ - [armhf, arm64] drm/nouveau: tegra: Detach from ARM DMA/IOMMU mapping
+ - tls: Fix zerocopy_from_iter iov handling
+ - parport: sunbpp: fix error return code
+ - sched/fair: Fix util_avg of new tasks for asymmetric systems
+ - f2fs: do checkpoint in kill_sb
+ - drm/amd/display: support access ddc for mst branch
+ - gpiolib: Mark gpio_suffixes array with __maybe_unused
+ - [armhf, arm64] net: mvpp2: make sure we use single queue mode on PPv2.1
+ - mfd: 88pm860x-i2c: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT)
+ - input: rohm_bu21023: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT)
+ - [x86] drm/amdkfd: Fix kernel queue 64 bit doorbell offset calculation
+ - [x86] drm/amdkfd: Fix error codes in kfd_get_process
+ - ALSA: pcm: Fix snd_interval_refine first/last with open min/max
+ - scsi: libfc: fixup 'sleeping function called from invalid context'
+ - scsi: lpfc: Fix NVME Target crash in defer rcv logic
+ - scsi: lpfc: Fix panic if driver unloaded when port is offline
+ - [arm64] perf: Disable PMU while processing counter overflows
+ - drm/amd/pp: Send khz clock values to DC for smu7/8
+ - IB/mlx5: fix uaccess beyond "count" in debugfs read/write handlers
+ - blk-mq: only attempt to merge bio if there is rq in sw queue
+ - blk-mq: avoid to synchronize rcu inside blk_cleanup_queue()
+ - [arm64] pinctrl: msm: Fix msm_config_group_get() to be compliant
+ - [arm64] pinctrl: qcom: spmi-gpio: Fix pmic_gpio_config_get() to be
+ compliant
+ - [armhf, arm64] clk: tegra: bpmp: Don't crash when a clock fails to
+ register
+ - [x86] mei: bus: type promotion bug in mei_nfc_if_version()
+ - [x86] crypto: ccp - add timeout support in the SEV command
+
+ [ Vagrant Cascadian ]
+ * debian/rules.real: Generate linux-source tarball with root user and
+ group specified, to fix reproducibility issues.
+
+ [ Ben Hutchings ]
+ * drivers/net/ethernet: Ignore ABI changes
+ * [arm64] ACPI: Change ACPI_NFIT from built-in to module
+ * [i386/686] Enable MGEODE_LX instead of M686 (regression in 4.16)
+ - x86-32: Disable 3D-Now in generic config
+ * Bump ABI to 2
+
+ [ Yves-Alexis Perez ]
+ * [x86] enable PINCTRL_AMD for touchpad support on Lenovo IdeaPad.
+ (closes: #876141)
+
+ [ Geoff Levand ]
+ * [arm64] Add support for new server hardware (Closes: #900581):
+ - Enable SCHED_SMT for hardware multithreading processors
+ - Enable ARM64_LSE_ATOMICS for v8.1 processors
+ - ACPI: Enable ACPI_PCI_SLOT, ACPI_HED, ACPI_BGRT, ACPI_APEI,
+ ACPI_APEI_GHES, ACPI_APEI_PCIEAER, ACPI_APEI_SEA,
+ ACPI_APEI_MEMORY_FAILURE as built-in;
+ ACPI_APEI_EINJ, WDAT_WDT as modules
+ * [arm64] acpi: Add fixup for HPE m400 quirks
+
+ [ Salvatore Bonaccorso ]
+ * floppy: Do not copy a kernel pointer to user memory in FDGETPRM ioctl
+ (CVE-2018-7755)
+ * scsi: target: iscsi: Use hex2bin instead of a re-implementation
+ (CVE-2018-14633)
+ * scsi: target: iscsi: Use bin2hex instead of a re-implementation
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 30 Sep 2018 18:02:51 +0100
+
+linux (4.18.8-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.7
+ - rcu: Make expedited GPs handle CPU 0 being offline
+ - net: 6lowpan: fix reserved space for single frames
+ - net: mac802154: tx: expand tailroom if necessary
+ - 9p/net: Fix zero-copy path in the 9p virtio transport
+ - spi: pxa2xx: Add support for Intel Ice Lake
+ - mmc: block: Fix unsupported parallel dispatch of requests
+ - readahead: stricter check for bdi io_pages
+ - block: fix infinite loop if the device loses discard capability
+ - block: blk_init_allocated_queue() set q->fq as NULL in the fail case
+ - block: really disable runtime-pm for blk-mq
+ - blkcg: Introduce blkg_root_lookup()
+ - block: Introduce blk_exit_queue()
+ - block: Ensure that a request queue is dissociated from the cgroup
+ controller
+ - apparmor: fix bad debug check in apparmor_secid_to_secctx()
+ - dma-buf: Move BUG_ON from _add_shared_fence to _add_shared_inplace
+ - libertas: fix suspend and resume for SDIO connected cards
+ - media: Revert "[media] tvp5150: fix pad format frame height"
+ - [arm64] mailbox: xgene-slimpro: Fix potential NULL pointer dereference
+ - Replace magic for trusting the secondary keyring with #define
+ - Fix kexec forbidding kernels signed with keys in the secondary keyring to
+ boot
+ - [powerpc*] fadump: handle crash memory ranges array index overflow
+ - [powerpc*] 64s: Fix page table fragment refcount race vs speculative
+ references
+ - [powerpc*] pseries: Fix endianness while restoring of r3 in MCE handler.
+ - [powerpc*] pkeys: Give all threads control of their key permissions
+ - [powerpc*] pkeys: Deny read/write/execute by default
+ - [powerpc*] pkeys: key allocation/deallocation must not change pkey
+ registers
+ - [powerpc*] pkeys: Save the pkey registers before fork
+ - [powerpc*] pkeys: Fix calculation of total pkeys.
+ - [powerpc*] pkeys: Preallocate execute-only key
+ - [powerpc*] nohash: fix pte_access_permitted()
+ - [powerpc64] ftrace: Include ftrace.h needed for enable/disable calls
+ - [powerpc*] powernv/pci: Work around races in PCI bridge enabling
+ - cxl: Fix wrong comparison in cxl_adapter_context_get()
+ - ocxl: Fix page fault handler in case of fault on dying process
+ - IB/mlx5: Honor cnt_set_id_valid flag instead of set_id
+ - IB/mlx5: Fix leaking stack memory to userspace
+ - IB/srpt: Fix srpt_cm_req_recv() error path (1/2)
+ - IB/srpt: Fix srpt_cm_req_recv() error path (2/2)
+ - IB/srpt: Support HCAs with more than two ports
+ - RDMA/mlx5: Fix shift overflow in mlx5_ib_create_wq
+ - ib_srpt: Fix a use-after-free in srpt_close_ch()
+ - ib_srpt: Fix a use-after-free in __srpt_close_all_ch()
+ - RDMA/rxe: Set wqe->status correctly if an unexpected response is received
+ - 9p: fix multiple NULL-pointer-dereferences
+ - fs/9p/xattr.c: catch the error of p9_client_clunk when setting xattr
+ failed
+ - 9p/virtio: fix off-by-one error in sg list bounds check
+ - net/9p/client.c: version pointer uninitialized
+ - net/9p/trans_fd.c: fix race-condition by flushing workqueue before the
+ kfree()
+ - dm integrity: change 'suspending' variable from bool to int
+ - dm thin: stop no_space_timeout worker when switching to write-mode
+ - dm cache metadata: save in-core policy_hint_size to on-disk superblock
+ - dm cache metadata: set dirty on all cache blocks after a crash
+ - dm crypt: don't decrease device limits
+ - dm writecache: fix a crash due to reading past end of dirty_bitmap
+ - uart: fix race between uart_put_char() and uart_shutdown()
+ - [x86] Drivers: hv: vmbus: Fix the offer_in_progress in
+ vmbus_process_offer()
+ - [x86] Drivers: hv: vmbus: Reset the channel callback in
+ vmbus_onoffer_rescind()
+ - extcon: Release locking when sending the notification of connector state
+ - [x86] vmw_balloon: fix inflation of 64-bit GFNs
+ - [x86] vmw_balloon: do not use 2MB without batching
+ - [x86] vmw_balloon: VMCI_DOORBELL_SET does not check status
+ - [x86] vmw_balloon: fix VMCI use when balloon built into kernel
+ - [armhf] rtc: omap: fix resource leak in registration error path
+ - [armhf] rtc: omap: fix potential crash on power off
+ - tracing: Do not call start/stop() functions when tracing_on does not
+ change
+ - tracing/blktrace: Fix to allow setting same value
+ - printk/tracing: Do not trace printk_nmi_enter()
+ - uprobes: Use synchronize_rcu() not synchronize_sched()
+ - mfd: hi655x: Fix regmap area declared size for hi655x
+ - ovl: fix wrong use of impure dir cache in ovl_iterate()
+ - ACPICA: AML Parser: skip opcodes that open a scope upon parse failure
+ - ACPICA: Clear status of all events when entering sleep states
+ - drivers/block/zram/zram_drv.c: fix bug storing backing_dev
+ - sched: idle: Avoid retaining the tick when it has been stopped
+ - cpuidle: menu: Handle stopped tick more aggressively
+ - cpufreq: governor: Avoid accessing invalid governor_data
+ - PM / sleep: wakeup: Fix build error caused by missing SRCU support
+ - ALSA: ac97: fix device initialization in the compat layer
+ - ALSA: ac97: fix check of pm_runtime_get_sync failure
+ - ALSA: ac97: fix unbalanced pm_runtime_enable
+ - [x86, arm64] i2c: designware: Re-init controllers with pm_disabled set on
+ resume
+ - [x86] KVM: VMX: fixes for vmentry_l1d_flush module parameter
+ - [powerpc*] KVM: Book3S: Fix guest DMA when guest partially backed by
+ THP pages
+ - block, bfq: return nbytes and not zero from struct cftype .write() method
+ - pnfs/blocklayout: off by one in bl_map_stripe()
+ - nfsd: fix leaked file lock with nfs exported overlayfs
+ - NFSv4 client live hangs after live data migration recovery
+ - NFSv4: Fix locking in pnfs_generic_recover_commit_reqs
+ - NFSv4: Fix a sleep in atomic context in nfs4_callback_sequence()
+ - [armhf] ARM: dts: am57xx-idk: Enable dual role for USB2 port
+ - [armhf] pwm: omap-dmtimer: Return -EPROBE_DEFER if no dmtimer platform
+ data
+ - mm/tlb: Remove tlb_remove_table() non-concurrent condition
+ - [x86] iommu/vt-d: Add definitions for PFSID
+ - [x86] iommu/vt-d: Fix dev iotlb pfsid use
+ - sys: don't hold uts_sem while accessing userspace memory
+ - ubifs: Fix memory leak in lprobs self-check
+ - Revert "UBIFS: Fix potential integer overflow in allocation"
+ - ubifs: Check data node size before truncate
+ - ubifs: xattr: Don't operate on deleted inodes
+ - ubifs: Fix directory size calculation for symlinks
+ - ubifs: Fix synced_i_size calculation for xattr inodes
+ - [armhf] pwm: tiehrpwm: Don't use emulation mode bits to control PWM output
+ - [armhf] pwm: tiehrpwm: Fix disabling of output of PWMs
+ - fb: fix lost console when the user unplugs a USB adapter
+ - udlfb: fix semaphore value leak
+ - udlfb: fix display corruption of the last line
+ - udlfb: don't switch if we are switching to the same videomode
+ - udlfb: set optimal write delay
+ - udlfb: make a local copy of fb_ops
+ - udlfb: handle allocation failure
+ - udlfb: set line_length in dlfb_ops_set_par
+ - getxattr: use correct xattr length
+ - libnvdimm: Use max contiguous area for namespace size
+ - libnvdimm: fix ars_status output length calculation
+ - bcache: release dc->writeback_lock properly in bch_writeback_thread()
+ - cap_inode_getsecurity: use d_find_any_alias() instead of d_find_alias()
+ - mm, dev_pagemap: Do not clear ->mapping on final put
+ - perf auxtrace: Fix queue resize
+ - [x86] crypto: vmx - Fix sleep-in-atomic bugs
+ - [x86] crypto: aesni - Use unaligned loads from gcm_context_data
+ - [arm64] crypto: arm64/sm4-ce - check for the right CPU feature bit
+ - fs/quota: Fix spectre gadget in do_quotactl
+ - udf: Fix mounting of Win7 created UDF filesystems
+ - cpuidle: menu: Retain tick when shallow state is selected
+ - [arm64] mm: always enable CONFIG_HOLES_IN_ZONE
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.8
+ - act_ife: fix a potential use-after-free
+ - ipv4: tcp: send zero IPID for RST and ACK sent in SYN-RECV and TIME-WAIT
+ state
+ - net: sched: Fix memory exposure from short TCA_U32_SEL
+ - qlge: Fix netdev features configuration.
+ - r8152: disable RX aggregation on new Dell TB16 dock
+ - tcp: do not restart timewait timer on rst reception
+ - vti6: remove !skb->ignore_df check from vti6_xmit()
+ - act_ife: move tcfa_lock down to where necessary
+ - act_ife: fix a potential deadlock
+ - net: sched: action_ife: take reference to meta module
+ - bnxt_en: Clean up unused functions.
+ - bnxt_en: Do not adjust max_cp_rings by the ones used by RDMA.
+ - net/sched: act_pedit: fix dump of extended layered op
+ - tipc: fix a missing rhashtable_walk_exit()
+ - [x86] hv_netvsc: Fix a deadlock by getting rtnl lock earlier in
+ netvsc_probe()
+ - tipc: fix the big/little endian issue in tipc_dest
+ - sctp: remove useless start_fail from sctp_ht_iter in proc
+ - erspan: set erspan_ver to 1 by default when adding an erspan dev
+ - ipv6: don't get lwtstate twice in ip6_rt_copy_init()
+ - net/ipv6: init ip6 anycast rt->dst.input as ip6_input
+ - net/ipv6: Only update MTU metric if it set
+ - net/ipv6: Put lwtstate when destroying fib6_info
+ - net/mlx5: Fix SQ offset in QPs with small RQ
+ - r8169: set RxConfig after tx/rx is enabled for RTL8169sb/8110sb devices
+ - [armhf,arm64] Revert "net: stmmac: Do not keep rearming the coalesce
+ timer in stmmac_xmit"
+ - ip6_vti: fix creating fallback tunnel device for vti6
+ - ip6_vti: fix a null pointer deference when destroy vti6 tunnel
+ - nfp: wait for posted reconfigs when disabling the device
+ - sctp: hold transport before accessing its asoc in sctp_transport_get_next
+ - vhost: correctly check the iova range when waking virtqueue
+ - [x86] hv_netvsc: ignore devices that are not PCI
+ - cifs: check if SMB2 PDU size has been padded and suppress the warning
+ - hfsplus: don't return 0 when fill_super() failed
+ - hfs: prevent crash on exit from failed search
+ - sunrpc: Don't use stack buffer with scatterlist
+ - fork: don't copy inconsistent signal handler state to child
+ - fs/proc/vmcore.c: hide vmcoredd_mmap_dumps() for nommu builds
+ - reiserfs: change j_timestamp type to time64_t
+ - [armhf,arm64] iommu/rockchip: Handle errors returned from PM framework
+ - hfsplus: fix NULL dereference in hfsplus_lookup() (CVE-2018-14617)
+ - [armhf,arm64] iommu/rockchip: Move irq request past pm_runtime_enable
+ - fs/proc/kcore.c: use __pa_symbol() for KCORE_TEXT list entries
+ - fat: validate ->i_start before using
+ - workqueue: skip lockdep wq dependency in cancel_work_sync()
+ - workqueue: re-add lockdep dependencies for flushing
+ - scripts: modpost: check memory allocation results
+ - apparmor: fix an error code in __aa_create_ns()
+ - virtio: pci-legacy: Validate queue pfn
+ - [x86] mce: Add notifier_block forward declaration
+ - i2c: core: ACPI: Make acpi_gsb_i2c_read_bytes() check i2c_transfer return
+ value
+ - IB/hfi1: Invalid NUMA node information can cause a divide by zero
+ - [armhf,arm64] pwm: meson: Fix mux clock names
+ - [powerpc*] topology: Get topology for shared processors at boot
+ - mm/fadvise.c: fix signed overflow UBSAN complaint
+ - mm: make DEFERRED_STRUCT_PAGE_INIT explicitly depend on SPARSEMEM
+ - fs/dcache.c: fix kmemcheck splat at take_dentry_name_snapshot()
+ - [x86] platform: intel_punit_ipc: fix build errors
+ - bpf, sockmap: fix map elem deletion race with smap_stop_sock
+ - tcp, ulp: fix leftover icsk_ulp_ops preventing sock from reattach
+ - bpf, sockmap: fix sock_map_ctx_update_elem race with exist/noexist
+ - net/xdp: Fix suspicious RCU usage warning
+ - bpf, sockmap: fix leakage of smap_psock_map_entry
+ - netfilter: ip6t_rpfilter: set F_IFACE for linklocal addresses
+ - [s390x] kdump: Fix memleak in nt_vmcoreinfo
+ - ipvs: fix race between ip_vs_conn_new() and ip_vs_del_dest()
+ - mfd: sm501: Set coherent_dma_mask when creating subdevices
+ - netfilter: x_tables: do not fail xt_alloc_table_info too easilly
+ - [x86] platform: asus-nb-wmi: Add keymap entry for lid flip action on
+ UX360
+ - netfilter: fix memory leaks on netlink_dump_start error
+ - tcp, ulp: add alias for all ulp modules
+ - ubi: Initialize Fastmap checkmapping correctly
+ - ACPICA: ACPICA: add status check for acpi_hw_read before assigning return
+ value
+ - [arm*] perf arm spe: Fix uninitialized record error variable
+ - [arm64] net: hns3: Fix for command format parsing error in
+ hclge_is_all_function_id_zero
+ - block: don't warn for flush on read-only device
+ - [arm64] net: hns3: Fix for phy link issue when using marvell phy driver
+ - PCI: Match Root Port's MPS to endpoint's MPSS as necessary
+ - drm/amd/display: Guard against null crtc in CRC IRQ
+ - perf tools: Check for null when copying nsinfo.
+ - f2fs: avoid race between zero_range and background GC
+ - f2fs: fix avoid race between truncate and background GC
+ - net/9p/trans_fd.c: fix race by holding the lock
+ - net/9p: fix error path of p9_virtio_probe
+ - f2fs: fix to clear PG_checked flag in set_page_dirty()
+ - [armhf,arm64] pinctrl: axp209: Fix NULL pointer dereference after
+ allocation
+ - bpf: fix bpffs non-array map seq_show issue
+ - [powerpc*] uaccess: Enable get_user(u64, *p) on 32-bit
+ - [powerpc*] Fix size calculation using resource_size()
+ - [powerpc*] perf probe powerpc: Fix trace event post-processing
+ - block: bvec_nr_vecs() returns value for wrong slab
+ - brcmfmac: fix brcmf_wiphy_wowl_params() NULL pointer dereference
+ - [s390x] dasd: fix hanging offline processing due to canceled worker
+ - [s390x] dasd: fix panic for failed online processing
+ - ACPI / scan: Initialize status to ACPI_STA_DEFAULT
+ - blk-mq: count the hctx as active before allocating tag
+ - scsi: aic94xx: fix an error code in aic94xx_init()
+ - NFSv4: Fix error handling in nfs4_sp4_select_mode()
+ - Input: do not use WARN() in input_alloc_absinfo()
+ - xen/balloon: fix balloon initialization for PVH Dom0
+ - [armhf] PCI: mvebu: Fix I/O space end address calculation
+ - dm kcopyd: avoid softlockup in run_complete_job
+ - [x86] staging: comedi: ni_mio_common: fix subdevice flags for PFI
+ subdevice
+ - ASoC: rt5677: Fix initialization of rt5677_of_match.data
+ - [armhf] iommu/omap: Fix cache flushes on L2 table entries
+ - selinux: cleanup dentry and inodes on error in selinuxfs
+ - RDS: IB: fix 'passing zero to ERR_PTR()' warning
+ - cfq: Suppress compiler warnings about comparisons
+ - smb3: fix reset of bytes read and written stats
+ - CIFS: fix memory leak and remove dead code
+ - SMB3: Number of requests sent should be displayed for SMB3 not just CIFS
+ - smb3: if server does not support posix do not allow posix mount option
+ - [powerpcspe] platforms/85xx: fix t1042rdb_diu.c build errors & warning
+ - [powerpc*] 64s: Make rfi_flush_fallback a little more robust
+ - [powerpc*] pseries: Avoid using the size greater than RTAS_ERROR_LOG_MAX.
+ - [armhf,arm64] clk: rockchip: Add pclk_rkpwm_pmu to PMU critical clocks in
+ rk3399
+ - drm/amd/display: Read back max backlight value at boot
+ - [x86] KVM: vmx: track host_state.loaded using a loaded_vmcs pointer
+ - [x86] kvm: nVMX: Fix fault vector for VMX operation at CPL > 0
+ - [armhf] drm/etnaviv: fix crash in GPU suspend when init failed due to
+ buffer placement
+ - btrfs: Exit gracefully when chunk map cannot be inserted to the tree
+ - btrfs: replace: Reset on-disk dev stats value after replace
+ - btrfs: fix in-memory value of total_devices after seed device deletion
+ - btrfs: relocation: Only remove reloc rb_trees if reloc control has been
+ initialized (CVE-2018-14609)
+ - btrfs: tree-checker: Detect invalid and empty essential trees
+ (CVE-2018-14612)
+ - btrfs: check-integrity: Fix NULL pointer dereference for degraded mount
+ - btrfs: lift uuid_mutex to callers of btrfs_open_devices
+ - btrfs: Don't remove block group that still has pinned down bytes
+ - btrfs: Fix a C compliance issue
+ - [armhf,arm64] rockchip: Force CONFIG_PM on Rockchip systems
+ - btrfs: do btrfs_free_stale_devices outside of device_list_add
+ - btrfs: extend locked section when adding a new device in device_list_add
+ - btrfs: rename local devices for fs_devices in btrfs_free_stale_devices(
+ - btrfs: use device_list_mutex when removing stale devices
+ - btrfs: lift uuid_mutex to callers of btrfs_scan_one_device
+ - btrfs: lift uuid_mutex to callers of btrfs_parse_early_options
+ - btrfs: reorder initialization before the mount locks uuid_mutex
+ - btrfs: fix mount and ioctl device scan ioctl race
+ - [x86] drm/i915/lpe: Mark LPE audio runtime pm as "no callbacks"
+ - [x86] drm/i915: Nuke the LVDS lid notifier
+ - [x86] drm/i915: Increase LSPCON timeout
+ - [x86] drm/i915: Free write_buf that we allocated with kzalloc.
+ - drm/amdgpu: update uvd_v6_0_ring_vm_funcs to use new nop packet
+ - drm/amdgpu: fix a reversed condition
+ - drm/amdgpu: Fix RLC safe mode test in gfx_v9_0_enter_rlc_safe_mode
+ - drm/amd/pp: Convert voltage unit in mV*4 to mV on CZ/ST
+ - drm/amd/powerplay: fixed uninitialized value
+ - drm/amd/pp/Polaris12: Fix a chunk of registers missed to program
+ - drm/edid: Quirk Vive Pro VR headset non-desktop.
+ - drm/edid: Add 6 bpc quirk for SDC panel in Lenovo B50-80
+ - drm/amd/display: fix type of variable
+ - drm/amd/display: Don't share clk source between DP and HDMI
+ - drm/amd/display: update clk for various HDMI color depths
+ - drm/amd/display: Use requested HDMI aspect ratio
+ - drm/amd/display: Report non-DP display as disconnected without EDID
+ - [armhf,arm64] drm/rockchip: lvds: add missing of_node_put
+ - [armhf,arm64] drm/rockchip: vop: split out core clock enablement into
+ separate functions
+ - [armhf,arm64] drm/rockchip: vop: fix irq disabled after vop driver probed
+ - drm/amd/display: Pass connector id when executing VBIOS CT
+ - drm/amd/display: Check if clock source in use before disabling
+ - drm/amdgpu: update tmr mc address
+ - drm/amdgpu:add tmr mc address into amdgpu_firmware_info
+ - drm/amdgpu:add new firmware id for VCN
+ - drm/amdgpu:add VCN support in PSP driver
+ - drm/amdgpu:add VCN booting with firmware loaded by PSP
+ - drm/amdgpu: fix incorrect use of fcheck
+ - drm/amdgpu: fix incorrect use of drm_file->pid
+ - [x86] drm/i915: Re-apply "Perform link quality check, unconditionally
+ during long pulse"
+ - uapi/linux/keyctl.h: don't use C++ reserved keyword as a struct member
+ name
+ - mm: respect arch_dup_mmap() return value
+ - [x86] drm/i915: set DP Main Stream Attribute for color range on DDI
+ platforms
+ - [i386] tsc: Prevent result truncation on 32bit
+ - drm/amdgpu: Keep track of amount of pinned CPU visible VRAM
+ - drm/amdgpu: Make pin_size values atomic
+ - drm/amdgpu: Warn and update pin_size values when destroying a pinned BO
+ - drm/amdgpu: Don't warn on destroying a pinned BO
+ - debugobjects: Make stack check warning more informative
+ - [i386] pae: use 64 bit atomic xchg function in native_ptep_get_and_clear
+ - [x86] xen: don't write ptes directly in 32-bit PV guests
+ - [x86] kvm: Set highest physical address bits in non-present/reserved SPTEs
+ - [x86] kvm: avoid unused variable warning
+ - HID: redragon: fix num lock and caps lock LEDs
+
+ [ Ben Hutchings ]
+ * [x86] wireless: Enable R8822BE as module (Closes: #908330)
+ * Move all patch generation scripts to debian/bin
+ * [rt] genpatch-rt: Store patches and series file in debian/patches-rt
+ * linux-headers: Stop linking the doc directory, which is not binNMU-safe
+ * debian/copyright: Simplify exclusions to work with mk-origtargz
+ * debian/{watch,bin/uscan-hook}: Drop uscan hook in favour of uupdate
+ * debian/watch: Add options for signature validation
+ * README.Debian: Update URLs that were pointing to Alioth
+ * README.Debian: Describe where to find patches for a specific version
+ * Revert "i40e: Add kconfig dependency to ensure cmpxchg64() is available"
+
+ [ Salvatore Bonaccorso ]
+ * mac80211: don't update the PM state of a peer upon a multicast frame
+ (Closes: #887045, #886292)
+
+ [ Romain Perier ]
+ * [x86] Enable TI TPS6598x USB Power Delivery controller family
+ * [x86] crypto: ccp: add timeout support in the SEV command (Closes: #908248)
+ * [rt] Update to 4.18.7-rt5
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 18 Sep 2018 03:05:01 +0100
+
+linux (4.18.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.6
+ - scsi: libsas: dynamically allocate and free ata host
+ - xprtrdma: Fix disconnect regression
+ - mei: don't update offset in write
+ - cifs: add missing support for ACLs in SMB 3.11
+ - cifs: fix uninitialized ptr deref in smb2 signing
+ - cifs: add missing debug entries for kconfig options
+ - cifs: use a refcount to protect open/closing the cached file handle
+ - cifs: check kmalloc before use
+ - smb3: enumerating snapshots was leaving part of the data off end
+ - smb3: Do not send SMB3 SET_INFO if nothing changed
+ - smb3: don't request leases in symlink creation and query
+ - smb3: fill in statfs fsid and correct namelen
+ - btrfs: use correct compare function of dirty_metadata_bytes
+ - btrfs: don't leak ret from do_chunk_alloc
+ - Btrfs: fix mount failure after fsync due to hard link recreation
+ - Btrfs: fix btrfs_write_inode vs delayed iput deadlock
+ - Btrfs: fix send failure when root has deleted files still open
+ - Btrfs: send, fix incorrect file layout after hole punching beyond eof
+ - hwmon: (k10temp) 27C Offset needed for Threadripper2
+ - [armhf] bpf: fix stack var offset in jit
+ - [armhf, arm64] iommu/arm-smmu: Error out only if not enough context
+ interrupts
+ - printk: Split the code for storing a message into the log buffer
+ - printk: Create helper function to queue deferred console handling
+ - printk/nmi: Prevent deadlock when accessing the main log buffer in NMI
+ - [arm64] kprobes: Fix %p uses in error messages
+ - [arm64] Fix mismatched cache line size detection
+ - [arm64] Handle mismatched cache type
+ - [arm64] mm: check for upper PAGE_SHIFT bits in pfn_valid()
+ - [arm64] dts: rockchip: corrected uart1 clock-names for rk3328
+ - [armhf, arm64] KVM: Fix potential loss of ptimer interrupts
+ - [armhf, arm64] KVM: Fix lost IRQs from emulated physcial timer when
+ blocked
+ - [armhf, arm64] KVM: Skip updating PMD entry if no change
+ - [armhf, arm64] KVM: Skip updating PTE entry if no change
+ - [s390x] kvm: fix deadlock when killed by oom
+ - [s390x] perf kvm: Fix subcommands on s390
+ - stop_machine: Reflow cpu_stop_queue_two_works()
+ - stop_machine: Atomically queue and wake stopper threads
+ - ext4: check for NUL characters in extended attribute's name
+ - ext4: use ext4_warning() for sb_getblk failure
+ - ext4: sysfs: print ext4_super_block fields as little-endian
+ - ext4: reset error code in ext4_find_entry in fallback
+ - ext4: fix race when setting the bitmap corrupted flag
+ - nvme-pci: add a memory barrier to nvme_dbbuf_update_and_check_event
+ - [x86] gpu: reserve ICL's graphics stolen memory
+ - [x86] platform: wmi: Do not mix pages and kmalloc
+ - [x86] platform: ideapad-laptop: Apply no_hw_rfkill to Y20-15IKBM, too
+ - mm: move tlb_table_flush to tlb_flush_mmu_free
+ - [x86] mm/tlb, mm: Support invalidating TLB caches for RCU_TABLE_FREE
+ - [x86] speculation/l1tf: Fix overflow in l1tf_pfn_limit() on 32bit
+ - [x86] speculation/l1tf: Fix off-by-one error when warning that system has
+ too much RAM (Closes: #907581)
+ - [x86] speculation/l1tf: Suggest what to do on systems with too much RAM
+ - [x86] vdso: Fix vDSO build if a retpoline is emitted
+ - [x86] process: Re-export start_thread()
+ - [x86] KVM: ensure all MSRs can always be KVM_GET/SET_MSR'd
+ - [x86] KVM: SVM: Call x86_spec_ctrl_set_guest/host() with interrupts
+ disabled
+ - fuse: Don't access pipe->buffers without pipe_lock()
+ - fuse: fix initial parallel dirops
+ - fuse: fix double request_end()
+ - fuse: fix unlocked access to processing queue
+ - fuse: umount should wait for all requests
+ - fuse: Fix oops at process_init_reply()
+ - fuse: Add missed unlock_page() to fuse_readpages_fill()
+ - lib/vsprintf: Do not handle %pO[^F] as %px
+ - udl-kms: change down_interruptible to down
+ - udl-kms: handle allocation failure
+ - udl-kms: fix crash due to uninitialized memory
+ - udl-kms: avoid division
+ - b43legacy/leds: Ensure NUL-termination of LED name string
+ - b43/leds: Ensure NUL-termination of LED name string
+ - ASoC: dpcm: don't merge format from invalid codec dai
+ - ASoC: zte: Fix incorrect PCM format bit usages
+ - ASoC: sirf: Fix potential NULL pointer dereference
+ - ASoC: wm_adsp: Correct DSP pointer for preloader control
+ - [armhf] pinctrl: freescale: off by one in imx1_pinconf_group_dbg_show()
+ - scsi: qla2xxx: Fix stalled relogin
+ - [x86] vdso: Fix lsl operand order
+ - [x86 ]nmi: Fix NMI uaccess race against CR3 switching
+ - [x86] irqflags: Mark native_restore_fl extern inline
+ - [x86] spectre: Add missing family 6 check to microcode check
+ - [x86] speculation/l1tf: Increase l1tf memory limit for Nehalem+
+ (Closes: #907581)
+ - hwmon: (nct6775) Fix potential Spectre v1
+ - [x86] entry/64: Wipe KASAN stack shadow before rewind_stack_do_exit()
+ - [x86] Allow generating user-space headers without a compiler
+ - [s390x] mm: fix addressing exception after suspend/resume
+ - [s390x] lib: use expoline for all bcr instructions
+ - [s390x] fix br_r1_trampoline for machines without exrl
+ - [s390x] qdio: reset old sbal_state flags
+ - [s390x] numa: move initial setup of node_to_cpumask_map
+ - [s390x] pci: fix out of bounds access during irq setup
+ - [s390x] purgatory: Fix crash with expoline enabled
+ - [s390x] purgatory: Add missing FORCE to Makefile targets
+ - kprobes: Show blacklist addresses as same as kallsyms does
+ - kprobes: Replace %p with other pointer types
+ - kprobes/arm: Fix %p uses in error messages
+ - kprobes: Make list and blacklist root user read only
+ - [mips*] Correct the 64-bit DSP accumulator register size
+ - [mips*] memset.S: Fix byte_fixup for MIPSr6
+ - [mips*] Always use -march=<arch>, not -<arch> shortcuts
+ - [mips*] Change definition of cpu_relax() for Loongson-3
+ - [mips*] lib: Provide MIPS64r6 __multi3() for GCC < 7
+ - tpm: Return the actual size when receiving an unsupported command
+ - tpm: separate cmd_ready/go_idle from runtime_pm
+ - scsi: mpt3sas: Fix calltrace observed while running IO & reset
+ - scsi: mpt3sas: Fix _transport_smp_handler() error path
+ - scsi: sysfs: Introduce sysfs_{un,}break_active_protection()
+ - scsi: core: Avoid that SCSI device removal through sysfs triggers a
+ deadlock
+ - iscsi target: fix session creation failure handling
+ - mtd: rawnand: hynix: Use ->exec_op() in hynix_nand_reg_write_op()
+ - mtd: rawnand: fsmc: Stop using chip->read_buf()
+ - mtd: rawnand: marvell: add suspend and resume hooks
+ - mtd: rawnand: qcom: wait for desc completion in all BAM channels
+ - [arm64] clk: rockchip: fix clk_i2sout parent selection bits on rk3399
+ - PM / clk: signedness bug in of_pm_clk_add_clks()
+ - power: generic-adc-battery: fix out-of-bounds write when copying channel
+ properties
+ - power: generic-adc-battery: check for duplicate properties copied from
+ iio channels
+ - watchdog: Mark watchdog touch functions as notrace
+ - cdrom: Fix info leak/OOB read in cdrom_ioctl_drive_status
+ - [x86] dumpstack: Don't dump kernel memory based on usermode RIP
+
+ [ Ben Hutchings ]
+ * Set ABI to 1
+ * [x86,arm64] Disable code signing for upload to unstable
+ * [rt] Re-enable PREEMPT_RT
+ * aufs: Update support patchset to aufs4.18-20180827 (no functional change)
+ * netfilter: Enable NF_TABLES_SET as module, replacing the multiple set
+ type modules that were enabled before 4.18
+ * [powerpc,powerpcspe,ppc64] Build-Depend on updated kernel-wedge to fix
+ broken symlinks in kernel-image udeb
+
+ [ Romain Perier ]
+ * [rt] Update to 4.18.5-rt3
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 06 Sep 2018 15:32:14 +0100
+
+linux (4.18.5-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.18
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.1
+ - [x86] paravirt: Fix spectre-v2 mitigations for paravirt guests
+ - [x86] speculation: Protect against userspace-userspace spectreRSB
+ - [x86] kprobes: Fix %p uses in error messages
+ - [x86] irqflags: Provide a declaration for native_save_fl
+ - [x86] speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT
+ - [x86] speculation/l1tf: Change order of offset/type in swap entry
+ - [x86] speculation/l1tf: Protect swap entries against L1TF
+ - [x86] speculation/l1tf: Protect PROT_NONE PTEs against speculation
+ - [x86] speculation/l1tf: Make sure the first page is always reserved
+ - [x86] speculation/l1tf: Add sysfs reporting for l1tf
+ - [x86] speculation/l1tf: Disallow non privileged high MMIO PROT_NONE
+ mappings
+ - [x86] speculation/l1tf: Limit swap file size to MAX_PA/2
+ - [x86] Move the l1tf function and define pr_fmt properly
+ - sched/smt: Update sched_smt_present at runtime
+ - [x86] smp: Provide topology_is_primary_thread()
+ - [x86] topology: Provide topology_smt_supported()
+ - cpu/hotplug: Make bringup/teardown of smp threads symmetric
+ - cpu/hotplug: Split do_cpu_down()
+ - cpu/hotplug: Provide knobs to control SMT
+ - [x86] cpu: Remove the pointless CPU printout
+ - [x86] cpu/AMD: Remove the pointless detect_ht() call
+ - [x86] cpu/common: Provide detect_ht_early()
+ - [x86] cpu/topology: Provide detect_extended_topology_early()
+ - [x86] cpu/intel: Evaluate smp_num_siblings early
+ - [x86] cpu/AMD: Do not check CPUID max ext level before parsing SMP info
+ - [x86] cpu/AMD: Evaluate smp_num_siblings early
+ - [x86] apic: Ignore secondary threads if nosmt=force
+ - [x86] speculation/l1tf: Extend 64bit swap file size limit
+ - [x86] cpufeatures: Add detection of L1D cache flush support.
+ - [x86] cpu/AMD: Move TOPOEXT reenablement before reading smp_num_siblings
+ - [x86] speculation/l1tf: Protect PAE swap entries against L1TF
+ - [x86] speculation/l1tf: Fix up pte->pfn conversion for PAE
+ - Revert "x86/apic: Ignore secondary threads if nosmt=force"
+ - cpu/hotplug: Boot HT siblings at least once
+ - [x86] KVM: Warn user if KVM is loaded SMT and L1TF CPU bug being present
+ - [x86] KVM/VMX: Add module argument for L1TF mitigation
+ - [x86] KVM/VMX: Add L1D flush algorithm
+ - [x86] KVM/VMX: Add L1D MSR based flush
+ - [x86] KVM/VMX: Add L1D flush logic
+ - [x86] KVM/VMX: Split the VMX MSR LOAD structures to have an host/guest
+ numbers
+ - [x86] KVM/VMX: Add find_msr() helper function
+ - [x86] KVM/VMX: Separate the VMX AUTOLOAD guest/host number accounting
+ - [x86] KVM/VMX: Extend add_atomic_switch_msr() to allow VMENTER only MSRs
+ - [x86] KVM/VMX: Use MSR save list for IA32_FLUSH_CMD if required
+ - cpu/hotplug: Online siblings when SMT control is turned on
+ - [x86] litf: Introduce vmx status variable
+ - [x86] kvm: Drop L1TF MSR list approach
+ - [x86] l1tf: Handle EPT disabled state proper
+ - [x86] kvm: Move l1tf setup function
+ - [x86] kvm: Add static key for flush always
+ - [x86] kvm: Serialize L1D flush parameter setter
+ - [x86] kvm: Allow runtime control of L1D flush
+ - cpu/hotplug: Expose SMT control init function
+ - cpu/hotplug: Set CPU_SMT_NOT_SUPPORTED early
+ - [x86] bugs, kvm: Introduce boot-time control of L1TF mitigations
+ - [x86] speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED
+ architectures
+ - [x86] KVM/VMX: Initialize the vmx_l1d_flush_pages' content
+ - cpu/hotplug: detect SMT disabled by BIOS
+ - [x86] KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush()
+ - [x86] KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond'
+ - [x86] KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush()
+ - [x86] irq: Demote irq_cpustat_t::__softirq_pending to u16
+ - [x86] KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d
+ - [x86] Don't include linux/irq.h from asm/hardirq.h
+ - [x86] irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d
+ - [x86] KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr()
+ - [x86] speculation: Simplify sysfs report of VMX L1TF vulnerability
+ - [x86] speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry
+ - [x86] KVM/VMX: Tell the nested hypervisor to skip L1D flush on vmentry
+ - cpu/hotplug: Fix SMT supported evaluation
+ - [x86] speculation/l1tf: Invert all not present mappings
+ - [x86] speculation/l1tf: Make pmd/pud_mknotpresent() invert
+ - [x86] mm/pat: Make set_memory_np() L1TF safe
+ - [x86] mm/kmmio: Make the tracer robust against L1TF
+ - tools headers: Synchronise x86 cpufeatures.h for L1TF additions
+ - [x86] microcode: Allow late microcode loading with SMT disabled
+ - cpu/hotplug: Non-SMP machines do not make use of booted_once
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.2
+ - [x86] l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled
+ - [x86] hyper-v: Check for VP_INVAL in hyperv_flush_tlb_others()
+ - [x86] platform/UV: Mark memblock related init code and data correctly
+ - [x86] mm/pti: Clear Global bit more aggressively
+ - [x86] xen/pv: Call get_cpu_address_sizes to set x86_virt/phys_bits
+ - [x86] mm: Disable ioremap free page handling on x86-PAE
+ - crypto: ccp - Check for NULL PSP pointer at module unload
+ - crypto: ccp - Fix command completion detection race
+ - [x86] crypto: x86/sha256-mb - fix digest copy in
+ sha256_mb_mgr_get_comp_job_avx2()
+ - crypto: vmac - require a block cipher with 128-bit block size
+ - crypto: vmac - separate tfm and request context
+ - Bluetooth: hidp: buffer overflow in hidp_process_report (CVE-2018-9363)
+ - ioremap: Update pgtable free interfaces with addr
+ - [x86] mm: Add TLB purge to free pmd/pte page interfaces
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.3
+ - [x86] speculation/l1tf: Exempt zeroed PTEs from inversion
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.4
+ - l2tp: use sk_dst_check() to avoid race on sk->sk_dst_cache
+ - net_sched: fix NULL pointer dereference when delete tcindex filter
+ - net_sched: Fix missing res info when create new tc_index filter
+ - r8169: don't use MSI-X on RTL8168g
+ - ALSA: hda - Sleep for 10ms after entering D3 on Conexant codecs
+ - ALSA: hda - Turn CX8200 into D3 as well upon reboot
+ - ALSA: vx222: Fix invalid endian conversions
+ - ALSA: cs5535audio: Fix invalid endian conversion
+ - ALSA: dice: fix wrong copy to rx parameters for Alesis iO26
+ - ALSA: hda: Correct Asrock B85M-ITX power_save blacklist entry
+ - ALSA: memalloc: Don't exceed over the requested size
+ - ALSA: vxpocket: Fix invalid endian conversions
+ - ALSA: seq: Fix poll() error return
+ - media: gl861: fix probe of dvb_usb_gl861
+ - USB: serial: sierra: fix potential deadlock at close
+ - USB: serial: pl2303: add a new device id for ATEN
+ - USB: option: add support for DW5821e
+ - [x86] ACPI / PM: save NVS memory for ASUS 1025C laptop
+ - tty: serial: 8250: Revert NXP SC16C2552 workaround
+ - serial: 8250_exar: Read INT0 from slave device, too
+ - [x86, armhf, arm64] serial: 8250_dw: always set baud rate in
+ dw8250_set_termios
+ - [armhf, arm64] serial: 8250_dw: Add ACPI support for uart on Broadcom SoC
+ - uio: fix wrong return value from uio_mmap()
+ - Revert "uio: use request_threaded_irq instead"
+ - Bluetooth: avoid killing an already killed socket
+ - net: sock_diag: Fix spectre v1 gadget in __sock_diag_cmd()
+ - [x86] hv/netvsc: Fix NULL dereference at single queue mode fallback
+ - r8169: don't use MSI-X on RTL8106e
+ - ip_vti: fix a null pointer deferrence when create vti fallback tunnel
+ - [arm64] net: ethernet: mvneta: Fix napi structure mixup on armada 3700
+ - [arm64] net: mvneta: fix mvneta_config_rss on armada 3700
+ - cls_matchall: fix tcf_unbind_filter missing
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.18.5
+ - [mips*, x86] EDAC: Add missing MEM_LRDDR4 entry in edac_mem_types[]
+ - pty: fix O_CLOEXEC for TIOCGPTPEER
+ - mm: Allow non-direct-map arguments to free_reserved_area()
+ - [x86] mm/init: Pass unconverted symbol addresses to free_init_pages()
+ - [x86] mm/init: Add helper for freeing kernel image pages
+ - [x86] mm/init: Remove freed kernel image areas from alias mapping
+ - [powerpc64] Show ori31 availability in spectre_v1 sysfs file not v2
+ - ext4: fix spectre gadget in ext4_mb_regular_allocator()
+ - [x86] drm/i915/kvmgt: Fix potential Spectre v1
+ - drm/amdgpu/pm: Fix potential Spectre v1
+ - [hppa/parisc] Remove unnecessary barriers from spinlock.h
+ - [hppa/parisc] Remove ordered stores from syscall.S
+ - PCI: Restore resized BAR state on resume
+ - PCI/ACPI/PM: Resume all bridges on suspend-to-RAM
+ - PCI: hotplug: Don't leak pci_slot on registration failure
+ - [arm64] PCI: aardvark: Size bridges before resources allocation
+ - PCI: Skip MPS logic for Virtual Functions (VFs)
+ - PCI: pciehp: Fix use-after-free on unplug
+ - PCI: pciehp: Fix unprotected list iteration in IRQ handler
+ - i2c: core: ACPI: Properly set status byte to 0 for multi-byte writes
+ - [armhf] i2c: imx: Fix race condition in dma read
+ - reiserfs: fix broken xattr handling (heap corruption, bad retval)
+
+ [ Uwe Kleine-König ]
+ * [arm64] enable RTC_DRV_PCF8563 for Odroid-C2
+
+ [ Romain Perier ]
+ * [armhf, arm64] add the rt featureset, which adds support for
+ PREEMPT_RT (Closes #719547)
+ * spi: Enable CONFIG_SPI_SPIDEV (Closes: #904043)
+
+ [ Ben Hutchings ]
+ * certs: Remove certificate for my personal signing key
+ * Update policy version to 4.2.0:
+ - linux-kbuild: Change "#!/usr/bin/env perl" to "#!/usr/bin/perl"
+ - Build with KBUILD_VERBOSE=1 by default
+ - objtool, usbip: Build with V=1 by default
+ * cpupower: Fix handling of noopt and nostrip build options
+ * debian/bin/gencontrol_signed.py: Add certificate fingerprints to template
+ metadata
+ * scripts/kernel-doc: Escape all literal braces in regexes (Closes: #905116)
+ * debian/bin/genorig.py: Add support for debian/copyright Files-Excluded
+ field
+ * Move file exclusion from d/p/debian/dfsg/files-1 to d/copyright
+ * Move disabling of broken features from d/p/series-orig to d/p/series
+ * Remove our private patch system, which is no longer needed
+ * debian/bin: Change "#!/usr/bin/env python3" to "#!/usr/bin/python3"
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 26 Aug 2018 20:52:17 +0100
+
+linux (4.18~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ John Paul Adrian Glaubitz ]
+ * [m68k] net: Enable CONFIG_XSURF100 as module.
+ * [m68k] udeb: Remove individual modules from nic-modules.
+ * [m68k] scsi: Enable CONFIG_SCSI_ZORRO_ESP as module.
+ * [m68k] udeb: Add zorro_esp module to scsi-modules.
+
+ [ Ben Hutchings ]
+ * [powerpcspe] powerpc/Makefile: Assemble with -me500 when building for E500
+ (fixes FTBFS) (thanks to James Clarke)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 19 Jul 2018 16:16:23 +0100
+
+linux (4.18~rc4-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * Remove remaining Python 2 (build-)dependencies:
+ - Build docs using Python 3 version of Sphinx
+ - linux-perf: Build docs using asciidoctor
+ - linux-perf: Use Python 3 for scripts
+ * autofs: rename 'autofs' module back to 'autofs4' (Closes: #902946)
+ * udeb: Move of_mdio to nic-shared-modules (Closes: #903587)
+ * [armhf] mm: Export __sync_icache_dcache() for xen-privcmd (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 12 Jul 2018 05:12:50 +0100
+
+linux (4.18~rc3-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs4.x-rcN 20180702
+ * netfilter: ipvs: Fix invalid bytes in IP_VS_MH_TAB_INDEX help text
+ * Update config for 4.18 using kconfigeditor2
+ - [x86,arm64] PCI: HOTPLUG_PCI_SHPC is now built-in
+ * Move config files from linux-source-<version> to an arch-dependent
+ linux-config-<version> package
+ * lockdep: Stub task_struct::state
+ * [sh4] udeb: Add nic-shared-modules package
+ * udeb: Moved fixed_phy to nic-shared-modules
+
+ [ YunQiang Su ]
+ * [mips*r6*] Enable dtb building for boston.
+ * [mips*r6*/mipsn32*] build linux-perf in rules.real.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 03 Jul 2018 17:26:05 +0100
+
+linux (4.17.17-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.16
+ - [x86] platform/UV: Mark memblock related init code and data correctly
+ - [x86] mm/pti: Clear Global bit more aggressively
+ - [x86] xen/pv: Call get_cpu_address_sizes to set x86_virt/phys_bits
+ - [x86] mm: Disable ioremap free page handling on x86-PAE
+ - kbuild: verify that $DEPMOD is installed
+ - [x86] crypto: ccp - Check for NULL PSP pointer at module unload
+ - [x86] crypto: ccp - Fix command completion detection race
+ - crypto: vmac - require a block cipher with 128-bit block size
+ - crypto: vmac - separate tfm and request context
+ - crypto: blkcipher - fix crash flushing dcache in error path
+ - crypto: ablkcipher - fix crash flushing dcache in error path
+ - crypto: skcipher - fix aligning block size in skcipher_copy_iv()
+ - crypto: skcipher - fix crash flushing dcache in error path
+ - ioremap: Update pgtable free interfaces with addr
+ - [x86] mm: Add TLB purge to free pmd/pte page interfaces
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.17
+ - [x86] speculation/l1tf: Exempt zeroed PTEs from inversion
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 18 Aug 2018 14:02:58 +0200
+
+linux (4.17.15-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.15
+ - [hppa/parisc] Enable CONFIG_MLONGCALLS by default
+ - [hppa/parisc] Define mb() and add memory barriers to assembler unlock
+ sequences
+ - Mark HI and TASKLET softirq synchronous
+ - stop_machine: Disable preemption after queueing stopper threads
+ - sched/deadline: Update rq_clock of later_rq when pushing a task
+ - zram: remove BD_CAP_SYNCHRONOUS_IO with writeback feature
+ - xen/netfront: don't cache skb_shinfo()
+ - bpf, sockmap: fix leak in bpf_tcp_sendmsg wait for mem path
+ - bpf, sockmap: fix bpf_tcp_sendmsg sock error handling
+ - scsi: sr: Avoid that opening a CD-ROM hangs with runtime power
+ management enabled
+ - scsi: qla2xxx: Fix memory leak for allocating abort IOCB
+ - init: rename and re-order boot_cpu_state_init()
+ - root dentries need RCU-delayed freeing
+ - make sure that __dentry_kill() always invalidates d_seq, unhashed or not
+ - fix mntput/mntput race
+ - fix __legitimize_mnt()/mntput() race
+ - [armhf] dts: imx6sx: fix irq for pcie bridge
+ - [x86] paravirt: Fix spectre-v2 mitigations for paravirt guests
+ - [x86] speculation: Protect against userspace-userspace spectreRSB
+ - [x86] kprobes/x86: Fix %p uses in error messages
+ - [x86] irqflags: Provide a declaration for native_save_fl
+ - [x86] speculation/l1tf: Increase 32bit PAE __PHYSICAL_PAGE_SHIFT
+ - [x86] speculation/l1tf: Change order of offset/type in swap entry
+ - [x86] speculation/l1tf: Protect swap entries against L1TF
+ - [x86] speculation/l1tf: Protect PROT_NONE PTEs against speculation
+ - [x86] speculation/l1tf: Make sure the first page is always reserved
+ - [x86] speculation/l1tf: Add sysfs reporting for l1tf
+ - [x86] speculation/l1tf: Disallow non privileged high MMIO PROT_NONE
+ mappings
+ - [x86] speculation/l1tf: Limit swap file size to MAX_PA/2
+ - [x86] bugs: Move the l1tf function and define pr_fmt properly
+ - sched/smt: Update sched_smt_present at runtime
+ - [x86] smp: Provide topology_is_primary_thread()
+ - [x86] topology: Provide topology_smt_supported()
+ - cpu/hotplug: Make bringup/teardown of smp threads symmetric
+ - cpu/hotplug: Split do_cpu_down()
+ - cpu/hotplug: Provide knobs to control SMT
+ - [x86] cpu: Remove the pointless CPU printout
+ - [x86] cpu/AMD: Remove the pointless detect_ht() call
+ - [x86] cpu/common: Provide detect_ht_early()
+ - [x86] cpu/topology: Provide detect_extended_topology_early()
+ - [x86] cpu/intel: Evaluate smp_num_siblings early
+ - [x86] CPU/AMD: Do not check CPUID max ext level before parsing SMP info
+ - [x86] cpu/AMD: Evaluate smp_num_siblings early
+ - [x86] apic: Ignore secondary threads if nosmt=force
+ - [x86] speculation/l1tf: Extend 64bit swap file size limit
+ - [x86] cpufeatures: Add detection of L1D cache flush support.
+ - [x86] CPU/AMD: Move TOPOEXT reenablement before reading smp_num_siblings
+ - [x86] speculation/l1tf: Protect PAE swap entries against L1TF
+ - [x86] speculation/l1tf: Fix up pte->pfn conversion for PAE
+ - Revert "[x86] apic: Ignore secondary threads if nosmt=force"
+ - cpu/hotplug: Boot HT siblings at least once
+ - [x86] KVM: Warn user if KVM is loaded SMT and L1TF CPU bug being present
+ - [x86] KVM/VMX: Add module argument for L1TF mitigation
+ - [x86] KVM/VMX: Add L1D flush algorithm
+ - [x86] KVM/VMX: Add L1D MSR based flush
+ - [x86] KVM/VMX: Add L1D flush logic
+ - [x86] KVM/VMX: Split the VMX MSR LOAD structures to have an host/guest
+ numbers
+ - [x86] KVM/VMX: Add find_msr() helper function
+ - [x86] KVM/VMX: Separate the VMX AUTOLOAD guest/host number accounting
+ - [x86] KVM/VMX: Extend add_atomic_switch_msr() to allow VMENTER only MSRs
+ - [x86] KVM/VMX: Use MSR save list for IA32_FLUSH_CMD if required
+ - cpu/hotplug: Online siblings when SMT control is turned on
+ - [x86] litf: Introduce vmx status variable
+ - [x86] kvm: Drop L1TF MSR list approach
+ - [x86] l1tf: Handle EPT disabled state proper
+ - [x86] kvm: Move l1tf setup function
+ - [x86] kvm: Add static key for flush always
+ - [x86] kvm: Serialize L1D flush parameter setter
+ - [x86] kvm: Allow runtime control of L1D flush
+ - cpu/hotplug: Expose SMT control init function
+ - cpu/hotplug: Set CPU_SMT_NOT_SUPPORTED early
+ - [x86] bugs, kvm: Introduce boot-time control of L1TF mitigations
+ - Documentation: Add section about CPU vulnerabilities
+ - [x86] speculation/l1tf: Unbreak !__HAVE_ARCH_PFN_MODIFY_ALLOWED
+ architectures
+ - [x86] KVM/VMX: Initialize the vmx_l1d_flush_pages' content
+ - Documentation/l1tf: Fix typos
+ - cpu/hotplug: detect SMT disabled by BIOS
+ - [x86] KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush()
+ - [x86] KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond'
+ - [x86] KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush()
+ - [x86] irq: Demote irq_cpustat_t::__softirq_pending to u16
+ - [x86] KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d
+ - [x86] Don't include linux/irq.h from asm/hardirq.h
+ - [x86] irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d
+ - [x86] KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr()
+ - Documentation/l1tf: Remove Yonah processors from not vulnerable list
+ - [x86] speculation: Simplify sysfs report of VMX L1TF vulnerability
+ - [x86] speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry
+ - KVM: VMX: Tell the nested hypervisor to skip L1D flush on vmentry
+ - cpu/hotplug: Fix SMT supported evaluation
+ - [x86] speculation/l1tf: Invert all not present mappings
+ - [x86] speculation/l1tf: Make pmd/pud_mknotpresent() invert
+ - [x86] mm/pat: Make set_memory_np() L1TF safe
+ - [x86] mm/kmmio: Make the tracer robust against L1TF
+ - tools headers: Synchronize prctl.h ABI header
+ - tools headers: Synchronise x86 cpufeatures.h for L1TF additions
+ - [x86] microcode: Allow late microcode loading with SMT disabled
+ - [x86] smp: fix non-SMP broken build due to redefinition of
+ apic_id_is_primary_thread
+ - cpu/hotplug: Non-SMP machines do not make use of booted_once
+ - [x86] init: fix build with CONFIG_SWAP=n
+ - [x86] CPU/AMD: Have smp_num_siblings and cpu_llc_id always be present
+
+ [ Ben Hutchings ]
+ * serdev: Enable SERIAL_DEV_BUS, SERIAL_DEV_CTRL_TTYPORT as built-in
+ (except on armel)
+ - bluetooth: Re-enable BT_HCIUART_{BCM,LL} (Closes: #906048)
+ * drivers/net/phy: Enable SFP as module (Closes: #906054)
+ * Revert "net: increase fragment memory usage limits" (CVE-2018-5391)
+
+ [ Salvatore Bonaccorso ]
+ * [x86] l1tf: Fix build error seen if CONFIG_KVM_INTEL is disabled
+ * [x86] i8259: Add missing include file
+ * Bluetooth: hidp: buffer overflow in hidp_process_report (CVE-2018-9363)
+ * Bump ABI to 3
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 17 Aug 2018 05:11:43 +0200
+
+linux (4.17.14-1) unstable; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.9
+ - compiler-gcc.h: Add __attribute__((gnu_inline)) to all inline declarations
+ - [x86] asm: Add _ASM_ARG* constants for argument registers to <asm/asm.h>
+ - [x86] paravirt: Make native_save_fl() extern inline
+ - alx: take rtnl before calling __alx_open from resume
+ - atm: Preserve value of skb->truesize when accounting to vcc
+ - atm: zatm: Fix potential Spectre v1
+ - [x86] hv_netvsc: split sub-channel setup into async and sync
+ - ipv6: sr: fix passing wrong flags to crypto_alloc_shash()
+ - ipvlan: fix IFLA_MTU ignored on NEWLINK
+ - ixgbe: split XDP_TX tail and XDP_REDIRECT map flushing
+ - net: dccp: avoid crash in ccid3_hc_rx_send_feedback()
+ - net: dccp: switch rx_tstamp_last_feedback to monotonic clock
+ - net: fix use-after-free in GRO with ESP
+ - net/mlx5e: Avoid dealing with vport representors if not being e-switch
+ manager
+ - net/mlx5e: Don't attempt to dereference the ppriv struct if not being
+ eswitch manager
+ - net/mlx5: E-Switch, Avoid setup attempt if not being e-switch manager
+ - net/mlx5: Fix command interface race in polling mode
+ - net/mlx5: Fix incorrect raw command length parsing
+ - net/mlx5: Fix required capability for manipulating MPFS
+ - net/mlx5: Fix wrong size allocation for QoS ETC TC regitster
+ - [armhf, arm64] net: mvneta: fix the Rx desc DMA address in the Rx path
+ - net/packet: fix use-after-free
+ - net/sched: act_ife: fix recursive lock and idr leak
+ - net/sched: act_ife: preserve the action control in case of error
+ - net_sched: blackhole: tell upper qdisc about dropped packets
+ - net: sungem: fix rx checksum support
+ - net/tcp: Fix socket lookups with SO_BINDTODEVICE
+ - qede: Adverstise software timestamp caps when PHC is not available.
+ - qed: Fix setting of incorrect eswitch mode.
+ - qed: Fix use of incorrect size in memcpy call.
+ - qed: Limit msix vectors in kdump kernel to the minimum required count.
+ - qmi_wwan: add support for the Dell Wireless 5821e module
+ - r8152: napi hangup fix after disconnect
+ - [s390x] qeth: don't clobber buffer on async TX completion
+ - [armhf, arm64] stmmac: fix DMA channel hang in half-duplex mode
+ - tcp: fix Fast Open key endianness
+ - tcp: prevent bogus FRTO undos with non-SACK flows
+ - vhost_net: validate sock before trying to put its fd
+ - VSOCK: fix loopback on big-endian systems
+ - nfp: flower: fix mpls ether type detection
+ - net: use dev_change_tx_queue_len() for SIOCSIFTXQLEN
+ - nfp: reject binding to shared blocks
+ - xen-netfront: Fix mismatched rtnl_unlock
+ - xen-netfront: Update features after registering netdev
+ - enic: do not overwrite error code
+ - i40e: split XDP_TX tail and XDP_REDIRECT map flushing
+ - IB/mlx5: Avoid dealing with vport representors if not being e-switch
+ manager
+ - [s390x] Revert "s390/qeth: use Read device to query hypervisor for MAC"
+ - [s390x] qeth: avoid using is_multicast_ether_addr_64bits on (u8 *)[6]
+ - [s390x] qeth: fix race when setting MAC address
+ - sfc: correctly initialise filter rwsem for farch
+ - virtio_net: split XDP_TX kick and XDP_REDIRECT map flushing
+ - [x86] kvm/Kconfig: Ensure CRYPTO_DEV_CCP_DD state at minimum matches
+ KVM_AMD
+ - net: cxgb3_main: fix potential Spectre v1
+ - net: lan78xx: Fix race in tx pending skb size calculation
+ - [x86] PCI: hv: Disable/enable IRQs rather than BH in hv_compose_msi_msg()
+ - netfilter: ebtables: reject non-bridge targets
+ - reiserfs: fix buffer overflow with long warning messages
+ - KEYS: DNS: fix parsing multiple options
+ - tls: Stricter error checking in zerocopy sendmsg path
+ - autofs: fix slab out of bounds read in getname_kernel()
+ - netfilter: ipv6: nf_defrag: drop skb dst before queueing
+ - bpf: reject any prog that failed read-only lock
+ - rds: avoid unenecessary cong_update in loop transport
+ - block: don't use blocking queue entered for recursive bio submits
+ - bpf: sockmap, fix crash when ipv6 sock is added
+ - bpf: sockmap, consume_skb in close path
+ - bpf: don't leave partial mangled prog in jit_subprogs error path
+ - net/nfc: Avoid stalls when nfc_alloc_send_skb() returned NULL.
+ - ipvs: initialize tbl->entries after allocation
+ - ipvs: initialize tbl->entries in ip_vs_lblc_init_svc()
+ - [armhf, arm64] smccc: Add SMCCC-specific return codes
+ - [arm64] Add 'ssbd' command-line option
+ - [arm64] ssbd: Add global mitigation state accessor
+ - [arm64] ssbd: Skip apply_ssbd if not using dynamic mitigation
+ - [arm64] ssbd: Restore mitigation status on CPU resume
+ - [arm64] ssbd: Introduce thread flag to control userspace mitigation
+ - [arm64] ssbd: Add prctl interface for per-thread mitigation
+ - [arm64] KVM: Add HYP per-cpu accessors
+ ARCH_FEATURES_FUNC_ID
+ - bpf: enforce correct alignment for instructions
+ - [armhf] bpf: fix to use bpf_jit_binary_lock_ro api
+ - bpf: undo prog rejection on read-only lock failure
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.10
+ - scsi: sd_zbc: Fix variable type and bogus comment
+ - scsi: qla2xxx: Fix inconsistent DMA mem alloc/free
+ - scsi: qla2xxx: Fix kernel crash due to late workqueue allocation
+ - scsi: qla2xxx: Fix NULL pointer dereference for fcport search
+ - KVM/Eventfd: Avoid crash when assign and deassign specific eventfd in
+ parallel.
+ - KVM: irqfd: fix race between EPOLLHUP and irq_bypass_register_consumer
+ - [x86] KVM: VMX: Mark VMXArea with revision_id of physical CPU even when
+ eVMCS enabled
+ - [x86] kvm/vmx: don't read current->thread.{fs,gs}base of legacy tasks
+ - [x86] kvmclock: set pvti_cpu0_va after enabling kvmclock
+ - [x86] apm: Don't access __preempt_count with zeroed fs
+ - [x86] events/intel/ds: Fix bts_interrupt_threshold alignment
+ - [x86] MCE: Remove min interval polling limitation
+ - fat: fix memory allocation failure handling of match_strdup()
+ - ALSA: rawmidi: Change resized buffers atomically
+ - [x86] ALSA: hda/realtek - Add Panasonic CF-SZ6 headset jack quirk
+ - [x86] ALSA: hda/realtek - Yet another Clevo P950 quirk entry
+ - [x86] ALSA: hda: add mute led support for HP ProBook 455 G5
+ - mm: memcg: fix use after free in mem_cgroup_iter()
+ - mm/huge_memory.c: fix data loss when splitting a file pmd
+ - [x86] cpufreq: intel_pstate: Register when ACPI PCCH is present
+ - [x86, arm64, powerpc*] vfio/pci: Fix potential Spectre v1
+ - stop_machine: Disable preemption when waking two stopper threads
+ - [powerpc*] powerpc/powernv: Fix save/restore of SPRG3 on entry/exit from
+ stop (idle)
+ - drm/amdgpu: Reserve VM root shared fence slot for command submission (v3)
+ - [x86] drm/i915: Fix hotplug irq ack on i965/g4x
+ - Revert "drm/amd/display: Don't return ddc result and read_bytes in same
+ return value"
+ - [x86] drm/nouveau: Remove bogus crtc check in pmops_runtime_idle
+ - [x86] drm/nouveau: Use drm_connector_list_iter_* for iterating connectors
+ - [x86] drm/nouveau: Avoid looping through fake MST connectors
+ - gen_stats: Fix netlink stats dumping in the presence of padding
+ - ipv4: Return EINVAL when ping_group_range sysctl doesn't map to user ns
+ - ipv6: fix useless rol32 call on hash
+ - ipv6: ila: select CONFIG_DST_CACHE
+ - lib/rhashtable: consider param->min_size when setting initial table size
+ - net: diag: Don't double-free TCP_NEW_SYN_RECV sockets in tcp_abort
+ - net: Don't copy pfmemalloc flag in __copy_skb_header()
+ - skbuff: Unconditionally copy pfmemalloc in __skb_clone()
+ - net/ipv4: Set oif in fib_compute_spec_dst
+ - net/ipv6: Do not allow device only routes via the multipath API
+ - net: phy: fix flag masking in __set_phy_supported
+ - qmi_wwan: add support for Quectel EG91
+ - rhashtable: add restart routine in rhashtable_free_and_destroy()
+ - sch_fq_codel: zero q->flows_cnt when fq_codel_init fails
+ - tg3: Add higher cpu clock for 5762.
+ - net: ip6_gre: get ipv6hdr after skb_cow_head()
+ - sctp: introduce sctp_dst_mtu
+ - sctp: fix the issue that pathmtu may be set lower than MINSEGMENT
+ - [x86] hv_netvsc: Fix napi reschedule while receive completion is busy
+ - net: aquantia: vlan unicast address list correct handling
+ - net/mlx4_en: Don't reuse RX page when XDP is set
+ - ipv6: make DAD fail with enhanced DAD when nonce length differs
+ - net: usb: asix: replace mii_nway_restart in resume path
+ - [alpha] fix osf_wait4() breakage
+ - drm_mode_create_lease_ioctl(): fix open-coded filp_clone_open()
+ - xhci: Fix perceived dead host due to runtime suspend race with event
+ handler
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.11
+ - [x86] KVM: VMX: support MSR_IA32_ARCH_CAPABILITIES as a feature MSR
+ - [x86] Revert "iommu/intel-iommu: Enable CONFIG_DMA_DIRECT_OPS=y and clean
+ up intel_{alloc,free}_coherent()"
+ - [mips*] Fix off-by-one in pci_resource_to_user()
+ - [arm64] clk: mvebu: armada-37xx-periph: Fix switching CPU rate from 300Mhz
+ to 1.2GHz
+ - [x86] xen/PVH: Set up GS segment for stack canary
+ - [x86] drm/nouveau: Fix runtime PM leak in nv50_disp_atomic_commit()
+ - [x86] drm/nouveau: Set DRIVER_ATOMIC cap earlier to fix debugfs
+ - [arm64] clk: meson-gxbb: set fclk_div2 as CLK_IS_CRITICAL
+ - bonding: set default miimon value for non-arp modes if not set
+ - ip: hash fragments consistently
+ - ip: in cmsg IP(V6)_ORIGDSTADDR call pskb_may_pull
+ - net: dsa: mv88e6xxx: fix races between lock and irq freeing
+ - net/mlx4_core: Save the qpn from the input modifier in RST2INIT wrapper
+ - net-next/hinic: fix a problem in hinic_xmit_frame()
+ - net: skb_segment() should not return NULL
+ - tcp: fix dctcp delayed ACK schedule
+ - tcp: helpers to send special DCTCP ack
+ - tcp: do not cancel delay-AcK on DCTCP special ACK
+ - tcp: do not delay ACK in DCTCP upon CE status change
+ - net/mlx5: E-Switch, UBSAN fix undefined behavior in mlx5_eswitch_mode
+ - r8169: restore previous behavior to accept BIOS WoL settings
+ - tls: check RCV_SHUTDOWN in tls_wait_data
+ - net/mlx5e: Add ingress/egress indication for offloaded TC flows
+ - net/mlx5e: Only allow offloading decap egress (egdev) flows
+ - net/mlx5e: Refine ets validation function
+ - nfp: flower: ensure dead neighbour entries are not offloaded
+ - sock: fix sg page frag coalescing in sk_alloc_sg
+ - net: phy: consider PHY_IGNORE_INTERRUPT in phy_start_aneg_priv
+ - multicast: do not restore deleted record source filter mode to new one
+ - net/ipv6: Fix linklocal to global address with VRF
+ - net/mlx5e: Don't allow aRFS for encapsulated packets
+ - net/mlx5e: Fix quota counting in aRFS expire flow
+ - net/mlx5: Adjust clock overflow work period
+ - rtnetlink: add rtnl_link_state check in rtnl_configure_link
+ - vxlan: add new fdb alloc and create helpers
+ - vxlan: make netlink notify in vxlan_fdb_destroy optional
+ - vxlan: fix default fdb entry netlink notify ordering during netdev create
+ - tcp: free batches of packets in tcp_prune_ofo_queue()
+ CVE-2018-5390
+ - tcp: avoid collapses in tcp_prune_queue() if possible
+ - tcp: detect malicious patterns in tcp_collapse_ofo_queue()
+ - tcp: call tcp_drop() from tcp_data_queue_ofo()
+ - tcp: add tcp_ooo_try_coalesce() helper
+ - Revert "staging:r8188eu: Use lib80211 to support TKIP"
+ - staging: speakup: fix wraparound in uaccess length check
+ - usb: cdc_acm: Add quirk for Castles VEGA3000
+ - usb: core: handle hub C_PORT_OVER_CURRENT condition
+ - [armhf, arm64] usb: dwc2: Fix DMA alignment to start at allocated boundary
+ - [armhf, arm64] usb: xhci: Fix memory leak in xhci_endpoint_reset()
+ - [x86, arm64] ACPICA: AML Parser: ignore dispatcher error status during
+ table load
+ - driver core: Partially revert "driver core: correct device's shutdown
+ order"
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.12
+ - Input: elan_i2c - add ACPI ID for lenovo ideapad 330
+ - Input: i8042 - add Lenovo LaVie Z to the i8042 reset list
+ - Input: elan_i2c - add another ACPI ID for Lenovo Ideapad 330-15AST
+ - mm: disallow mappings that conflict for devm_memremap_pages()
+ - kvm, mm: account shadow page tables to kmemcg
+ - delayacct: fix crash in delayacct_blkio_end() after delayacct init failure
+ - tracing: Fix double free of event_trigger_data
+ - tracing: Fix possible double free in event_enable_trigger_func()
+ - kthread, tracing: Don't expose half-written comm when creating kthreads
+ - tracing/kprobes: Fix trace_probe flags on enable_trace_kprobe() failure
+ - tracing: Quiet gcc warning about maybe unused link variable
+ - [arm64] fix vmemmap BUILD_BUG_ON() triggering on !vmemmap setups
+ - [x86] drm/i915/glk: Add Quirk for GLK NUC HDMI port issues.
+ - kcov: ensure irq code sees a valid area
+ - mm: check for SIGKILL inside dup_mmap() loop
+ - drm/amd/powerplay: Set higher SCLK&MCLK frequency than dpm7 in OD (v2)
+ - xen/netfront: raise max number of slots in xennet_get_responses()
+ - [x86] hv_netvsc: fix network namespace issues with VF support
+ - skip LAYOUTRETURN if layout is invalid
+ - ixgbe: Fix setting of TC configuration for macvlan case
+ - ALSA: emu10k1: add error handling for snd_ctl_add
+ - ALSA: fm801: add error handling for snd_ctl_add
+ - NFSv4.1: Fix the client behaviour on NFS4ERR_SEQ_FALSE_RETRY
+ - nfsd: fix error handling in nfs4_set_delegation()
+ - nfsd: fix potential use-after-free in nfsd4_decode_getdeviceinfo
+ - vfio: platform: Fix reset module leak in error path
+ - vfio/mdev: Check globally for duplicate devices
+ - vfio/type1: Fix task tracking for QEMU vCPU hotplug
+ - kernel/hung_task.c: show all hung tasks before panic
+ - mem_cgroup: make sure moving_account, move_lock_task and stat_cpu in the
+ same cacheline
+ - mm: /proc/pid/pagemap: hide swap entries from unprivileged users
+ - mm: vmalloc: avoid racy handling of debugobjects in vunmap
+ - mm/slub.c: add __printf verification to slab_err()
+ - rtc: ensure rtc_set_alarm fails when alarms are not supported
+ - rxrpc: Fix terminal retransmission connection ID to include the channel
+ - [arm64] net: hns3: Fix for VF mailbox cannot receiving PF response
+ - perf tools: Fix pmu events parsing rule
+ - netfilter: ipset: forbid family for hash:mac sets
+ - netfilter: ipset: List timing out entries with "timeout 1" instead of zero
+ - printk: drop in_nmi check from printk_safe_flush_on_panic()
+ - [armhf] bpf: fix inconsistent naming about emit_a32_lsr_{r64,i64}
+ - ceph: fix alignment of rasize
+ - ceph: fix use-after-free in ceph_statfs()
+ - e1000e: Ignore TSYNCRXCTL when getting I219 clock attributes
+ - infiniband: fix a possible use-after-free bug (CVE-2018-14734)
+ - [powerpc*] lib: Adjust .balign inside string functions for PPC32
+ - [powerpc*] 64s: Add barrier_nospec
+ - [powerpc*] eeh: Fix use-after-release of EEH driver
+ - [powerpc*] 64s: Fix compiler store ordering to SLB shadow area
+ - [arm64] net: hns3: Fix for phy not link up problem after resetting
+ - [arm64] net: hns3: Fix for service_task not running problem after
+ resetting
+ - RDMA/mad: Convert BUG_ONs to error flows
+ - lightnvm: fix partial read error path
+ - lightnvm: proper error handling for pblk_bio_add_pages
+ - lightnvm: pblk: warn in case of corrupted write buffer
+ - netfilter: nf_tables: check msg_type before nft_trans_set(trans)
+ - pnfs: Don't release the sequence slot until we've processed layoutget on
+ open
+ - NFS: Fix up nfs_post_op_update_inode() to force ctime updates
+ - disable loading f2fs module on PAGE_SIZE > 4KB
+ - f2fs: fix error path of move_data_page
+ - f2fs: don't drop dentry pages after fs shutdown
+ - f2fs: fix to don't trigger writeback during recovery
+ - f2fs: fix to wait page writeback during revoking atomic write
+ - f2fs: Fix deadlock in shutdown ioctl
+ - f2fs: fix missing clear FI_NO_PREALLOC in some error case
+ - f2fs: fix to detect failure of dquot_initialize
+ - f2fs: fix race in between GC and atomic open
+ - block, bfq: remove wrong lock in bfq_requests_merged
+ - usbip: usbip_detach: Fix memory, udev context and udev leak
+ - usbip: dynamically allocate idev by nports found in sysfs
+ - [x86] perf/x86/intel/uncore: Correct fixed counter index check in
+ generic code
+ - [x86] perf/x86/intel/uncore: Correct fixed counter index check for NHM
+ - PCI: Fix devm_pci_alloc_host_bridge() memory leak
+ - btrfs: balance dirty metadata pages in btrfs_finish_ordered_io
+ - iwlwifi: pcie: fix race in Rx buffer allocator
+ - iwlwifi: mvm: open BA session only when sta is authorized
+ - Bluetooth: hci_qca: Fix "Sleep inside atomic section" warning
+ - drm/amd/display: Do not program interrupt status on disabled crtc
+ - Bluetooth: btusb: Add a new Realtek 8723DE ID 2ff8:b011
+ - ASoC: dpcm: fix BE dai not hw_free and shutdown
+ - mfd: cros_ec: Fail early if we cannot identify the EC
+ - mwifiex: handle race during mwifiex_usb_disconnect
+ - wlcore: sdio: check for valid platform device data before suspend
+ - [arm64] net: hns3: Fixes initalization of RoCE handle and makes it
+ conditional
+ - [arm64] net: hns3: Fixes the init of the VALID BD info in the descriptor
+ - media: tw686x: Fix incorrect vb2_mem_ops GFP flags
+ - media: cec-pin-error-inj: avoid a false-positive Spectre detection
+ - media: videobuf2-core: don't call memop 'finish' when queueing
+ - Btrfs: don't return ino to ino cache if inode item removal fails
+ - Btrfs: don't BUG_ON() in btrfs_truncate_inode_items()
+ - btrfs: add barriers to btrfs_sync_log before log_commit_wait wakeups
+ - btrfs: qgroup: Finish rescan when hit the last leaf of extent tree
+ - [x86] microcode: Make the late update update_lock a raw lock for RT
+ - PM / wakeup: Make s2idle_lock a RAW_SPINLOCK
+ - PCI: Prevent sysfs disable of device while driver is attached
+ - [arm64] soc: qcom: qmi: fix a buffer sizing bug
+ - [arm64] soc: qcom: smem: fix qcom_smem_set_global_partition()
+ - [arm64] soc: qcom: smem: byte swap values properly
+ - nvme-rdma: stop admin queue before freeing it
+ - nvme-pci: Fix AER reset handling
+ - ath: Add regulatory mapping for : FCC3_ETSIC, ETSI8_WORLD, APL13_WORLD,
+ APL2_FCCA, Uganda, Tanzania, Serbia, Bermuda and Bahamas
+ - sched/cpufreq: Modify aggregate utilization to always include blocked FAIR
+ utilization
+ - [powerpc*] Add a missing include header
+ - [powerpc*] chrp/time: Make some functions static, add missing header
+ include
+ - [powerpc*] powermac: Add missing prototype for note_bootable_part()
+ - [powerpc*] powermac: Mark variable x as unused
+ - powerpc: Add __printf verification to prom_printf
+ - [x86] KVM: prevent integer overflows in KVM_MEMORY_ENCRYPT_REG_REGION
+ - [powerpc*] 8xx: fix invalid register expression in head_8xx.S
+ - [arm64] pinctrl: msm: fix gpio-hog related boot issues
+ - bpf: fix multi-function JITed dump obtained via syscall
+ - [powerpc*] bpf: pad function address loads with NOPs
+ - PCI: pciehp: Request control of native hotplug only if supported
+ - mwifiex: correct histogram data with appropriate index
+ - ima: based on policy verify firmware signatures (pre-allocated buffer)
+ - spi: Add missing pm_runtime_put_noidle() after failed get
+ - [arm64] net: hns3: Fix for CMDQ and Misc. interrupt init order problem
+ - [arm64] net: hns3: Fix the missing client list node initialization
+ - [arm64] net: hns3: Fix for hns3 module is loaded multiple times problem
+ - fscrypt: use unbound workqueue for decryption
+ - [armhf, arm64] net: mvpp2: Add missing VLAN tag detection
+ - scsi: ufs: ufshcd: fix possible unclocked register access
+ - scsi: ufs: fix exception event handling
+ - [s390x] scsi: zfcp: assert that the ERP lock is held when tracing a
+ recovery trigger
+ - drm/nouveau: remove fence wait code from deferred client work handler
+ - drm/nouveau/gem: lookup VMAs for buffers referenced by pushbuf ioctl
+ - drm/nouveau/fifo/gk104-: poll for runlist update completion
+ - Bluetooth: btusb: add ID for LiteOn 04ca:301a
+ - rtc: tps6586x: fix possible race condition
+ - rtc: vr41xx: fix possible race condition
+ - rtc: tps65910: fix possible race condition
+ - ALSA: emu10k1: Rate-limit error messages about page errors
+ - regulator: pfuze100: add .is_enable() for pfuze100_swb_regulator_ops
+ - md/raid1: add error handling of read error from FailFast device
+ - md: fix NULL dereference of mddev->pers in remove_and_add_spares()
+ - ixgbevf: fix MAC address changes through ixgbevf_set_mac()
+ - gpu: host1x: Acquire a reference to the IOVA cache
+ - media: smiapp: fix timeout checking in smiapp_read_nvm
+ - PCI/DPC: Clear interrupt status in interrupt handler top half
+ - clocksource: Move inline keyword to the beginning of function declarations
+ - net: ethernet: ti: cpsw-phy-sel: check bus_find_device() ret value
+ - ALSA: usb-audio: Apply rate limit to warning messages in URB complete
+ callback
+ - [arm64] net: hns3: Fix for fiber link up problem
+ - media: atomisp: ov2680: don't declare unused vars
+ - media: staging: atomisp: Comment out several unused sensor resolutions
+ - [arm64] cmpwait: Clear event register before arming exclusive monitor
+ - HID: hid-plantronics: Re-resend Update to map button for PTT products
+ - drm/amd/display: remove need of modeset flag for overlay planes (V2)
+ - drm/radeon: fix mode_valid's return type
+ - drm/amdgpu: Remove VRAM from shared bo domains.
+ - drm/amd/display: Fix dim display on DCE11
+ - IB: Fix RDMA_RXE and INFINIBAND_RDMAVT dependencies for DMA_VIRT_OPS
+ - [powerpc*] embedded6xx/hlwd-pic: Prevent interrupts from being handled by
+ Starlet
+ - HID: i2c-hid: check if device is there before really probing
+ - rsi: Add null check for virtual interfaces in wowlan config
+ - nvmem: properly handle returned value nvmem_reg_read
+ - [armhf] ARM: dts: imx53: Fix LDB OF graph warning
+ - i40e: free the skb after clearing the bitlock
+ - tty: Fix data race in tty_insert_flip_string_fixed_flag
+ - dma-iommu: Fix compilation when !CONFIG_IOMMU_DMA
+ - net: phy: phylink: Release link GPIO
+ - media: rcar_jpu: Add missing clk_disable_unprepare() on error in
+ jpu_open()
+ - libata: Fix command retry decision
+ - ACPI / LPSS: Only call pwm_add_table() for Bay Trail PWM if PMIC HRV is 2
+ - media: media-device: fix ioctl function types
+ - media: saa7164: Fix driver name in debug output
+ - media: em28xx: Fix DualHD broken second tuner
+ - mtd: rawnand: fsl_ifc: fix FSL NAND driver to read all ONFI parameter
+ pages
+ - brcmfmac: Add support for bcm43364 wireless chipset
+ - [s390x] cpum_sf: Add data entry sizes to sampling trailer entry
+ - perf: fix invalid bit in diagnostic entry
+ - net: phy: sfp: handle cases where neither BR, min nor BR, max is given
+ - bnxt_en: Check unsupported speeds in bnxt_update_link() on PF only.
+ - bnxt_en: Always forward VF MAC address to the PF.
+ - mm, powerpc, x86: define VM_PKEY_BITx bits if CONFIG_ARCH_HAS_PKEYS is
+ enabled
+ - staging: most: cdev: fix chrdev_region leak
+ - scsi: 3w-9xxx: fix a missing-check bug
+ - scsi: 3w-xxxx: fix a missing-check bug
+ - scsi: megaraid: silence a static checker bug
+ - scsi: hisi_sas: config ATA de-reset as an constrained command for v3 hw
+ - soc/tegra: pmc: Don't allocate struct tegra_powergate on stack
+ - scsi: qedf: Set the UNLOADING flag when removing a vport
+ - dma-direct: try reallocation with GFP_DMA32 if possible
+ - staging: lustre: o2iblnd: fix race at kiblnd_connect_peer
+ - staging: lustre: o2iblnd: Fix FastReg map/unmap for MLX5
+ - thermal: exynos: fix setting rising_threshold for Exynos5433
+ - regulator: add dummy function of_find_regulator_by_node
+ - bpf: fix references to free_bpf_prog_info() in comments
+ - f2fs: avoid fsync() failure caused by EAGAIN in writepage()
+ - media: em28xx: fix a regression with HVR-950
+ - media: siano: get rid of __le32/__le16 cast warnings
+ - mt76x2: fix avg_rssi estimation
+ - drm/atomic: Handling the case when setting old crtc for plane
+ - mmc: sdhci-omap: Fix when capabilities are obtained from
+ SDHCI_CAPABILITIES reg
+ - f2fs: check cap_resource only for data blocks
+ - mlxsw: spectrum_router: Return an error for non-default FIB rules
+ - ALSA: hda/ca0132: fix build failure when a local macro is defined
+ - mmc: dw_mmc: update actual clock for mmc debugfs
+ - mmc: pwrseq: Use kmalloc_array instead of stack VLA
+ - [arm64] dt-bindings: pinctrl: meson: add support for the Meson8m2 SoC
+ - [armhf] spi: meson-spicc: Fix error handling in meson_spicc_probe()
+ - [arm64] net: hns3: Fixes the out of bounds access in hclge_map_tqp
+ - dt-bindings: net: meson-dwmac: new compatible name for AXG SoC
+ - i40e: Add advertising 10G LR mode
+ - i40e: avoid overflow in i40e_ptp_adjfreq()
+ - mt76: add rcu locking around tx scheduling
+ - backlight: pwm_bl: Don't use GPIOF_* with gpiod_get_direction
+ - stop_machine: Use raw spinlocks
+ - delayacct: Use raw_spinlocks
+ - ath10k: fix kernel panic while reading tpc_stats
+ - memory: tegra: Do not handle spurious interrupts
+ - memory: tegra: Apply interrupts mask per SoC
+ - nvme: lightnvm: add granby support
+ - ASoC: fsl_ssi: Use u32 variable type when using regmap_read()
+ - ASoC: compress: Only call free for components which have been opened
+ - igb: Fix queue selection on MAC filters on i210
+ - qtnfmac: pearl: pcie: fix memory leak in qtnf_fw_work_handler
+ - drm/gma500: fix psb_intel_lvds_mode_valid()'s return type
+ - ipconfig: Correctly initialise ic_nameservers
+ - rsi: Fix 'invalid vdd' warning in mmc
+ - rsi: fix nommu_map_sg overflow kernel panic
+ - audit: allow not equal op for audit by executable
+ - [armhf, arm64] drm/rockchip: analogix_dp: Do not call Analogix code before
+ bind
+ - [x86] platform/x86: dell-smbios: Match on www.dell.com in OEM strings too
+ - staging: vchiq_core: Fix missing semaphore release in error case
+ - staging: lustre: llite: correct removexattr detection
+ - staging: lustre: ldlm: free resource when ldlm_lock_create() fails.
+ - staging: ks7010: fix error handling in ks7010_upload_firmware
+ - serial: core: Make sure compiler barfs for 16-byte earlycon names
+ - soc: imx: gpcv2: Do not pass static memory as platform data
+ - microblaze: Fix simpleImage format generation
+ - usb: hub: Don't wait for connect state at resume for powered-off ports
+ - crypto: authencesn - don't leak pointers to authenc keys
+ - crypto: authenc - don't leak pointers to authenc keys
+ - y2038: ipc: Use ktime_get_real_seconds consistently
+ - media: rc: mce_kbd decoder: low timeout values cause double keydowns
+ - media: omap3isp: fix unbalanced dma_iommu_mapping
+ - regulator: Don't return or expect -errno from of_map_mode()
+ - ath10k: search all IEs for variant before falling back
+ - drm/stm: ltdc: fix warning in ltdc_crtc_update_clut()
+ - scsi: scsi_dh: replace too broad "TP9" string with the exact models
+ - scsi: megaraid_sas: Increase timeout by 1 sec for non-RAID fastpath IOs
+ - scsi: cxlflash: Synchronize reset and remove ops
+ - scsi: cxlflash: Avoid clobbering context control register value
+ - PCI/ASPM: Disable ASPM L1.2 Substate if we don't have LTR
+ - media: atomisp: compat32: fix __user annotations
+ - media: cec: fix smatch error
+ - media: si470x: fix __be16 annotations
+ - net: socionext: reset hardware in ndo_stop
+ - ASoC: topology: Fix bclk and fsync inversion in set_link_hw_format()
+ - ASoC: topology: Add missing clock gating parameter when parsing hw_configs
+ - [armhf] ARM: dts: imx6qdl-wandboard: Let the codec control MCLK pinctrl
+ - drm: Add DP PSR2 sink enable bit
+ - drm/atomic-helper: Drop plane->fb references only for
+ drm_atomic_helper_shutdown()
+ - drm/dp/mst: Fix off-by-one typo when dump payload table
+ - drm/amdgpu: Avoid reclaim while holding locks taken in MMU notifier
+ - block: bio_iov_iter_get_pages: fix size of last iovec
+ - blkdev: __blkdev_direct_IO_simple: fix leak in error case
+ - block: reset bi_iter.bi_done after splitting bio
+ - nvmet-fc: fix target sgl list on large transfers
+ - i2c: rcar: handle RXDMA HW behaviour on Gen3
+ - random: mix rdrand with entropy sent in from userspace
+ - squashfs: be more careful about metadata corruption
+ - ext4: fix false negatives *and* false positives in
+ ext4_check_descriptors()
+ - ext4: fix inline data updates with checksums enabled
+ - ext4: check for allocation block validity with block group locked
+ - ext4: fix check to prevent initializing reserved inodes
+ - gpio: of: Handle fixed regulator flags properly
+ - gpio: uniphier: set legitimate irq trigger type in .to_irq hook
+ - RDMA/uverbs: Protect from attempts to create flows on unsupported QP
+ - net: dsa: qca8k: Force CPU port to its highest bandwidth
+ - net: dsa: qca8k: Enable RXMAC when bringing up a port
+ - net: dsa: qca8k: Add QCA8334 binding documentation
+ - net: dsa: qca8k: Allow overwriting CPU port setting
+ - ipv4: remove BUG_ON() from fib_compute_spec_dst
+ - netdevsim: don't leak devlink resources
+ - net: ena: Fix use of uninitialized DMA address bits field
+ - net: fix amd-xgbe flow-control issue
+ - net: lan78xx: fix rx handling before first packet is send
+ - net: mdio-mux: bcm-iproc: fix wrong getter and setter pair
+ - NET: stmmac: align DMA stuff to largest cache line length
+ - RDS: RDMA: Fix the NULL-ptr deref in rds_ib_get_mr
+ - tcp_bbr: fix bw probing to raise in-flight data for very small BDPs
+ - virtio_net: Fix incosistent received bytes counter
+ - xen-netfront: wait xenbus state change when load module manually
+ - cxgb4: Added missing break in ndo_udp_tunnel_{add/del}
+ - net: rollback orig value on failure of dev_qdisc_change_tx_queue_len
+ - netlink: Do not subscribe to non-existent groups
+ - netlink: Don't shift with UB on nlk->ngroups
+ - tcp: do not force quickack when receiving out-of-order packets
+ - tcp: add max_quickacks param to tcp_incr_quickack and
+ tcp_enter_quickack_mode
+ - tcp: do not aggressively quick ack after ECN events
+ - tcp: refactor tcp_ecn_check_ce to remove sk type cast
+ - tcp: add one more quick ack after after ECN events
+ - tcp: ack immediately when a cwr packet arrives
+ - ACPI / LPSS: Avoid PM quirks on suspend and resume from hibernation
+ - [x86, arm64] ACPICA: AML Parser: ignore control method status in
+ module-level code
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.13
+ - bonding: avoid lockdep confusion in bond_get_stats()
+ - inet: frag: enforce memory limits earlier
+ - ipv4: frags: handle possible skb truesize change
+ - net: dsa: Do not suspend/resume closed slave_dev
+ - netlink: Fix spectre v1 gadget in netlink_create()
+ - [armhf, arm64] net: stmmac: Fix WoL for PCI-based setups
+ - rxrpc: Fix user call ID check in rxrpc_service_prealloc_one
+ - net/mlx5e: E-Switch, Initialize eswitch only if eswitch manager
+ - net/mlx5e: Set port trust mode to PCP as default
+ - net/mlx5e: IPoIB, Set the netdevice sw mtu in ipoib enhanced flow
+ - squashfs: more metadata hardening
+ - can: ems_usb: Fix memory leak on ems_usb_disconnect()
+ - net: socket: fix potential spectre v1 gadget in socketcall
+ - net: socket: Fix potential spectre v1 gadget in sock_is_registered
+ - virtio_balloon: fix another race between migration and ballooning
+ - [x86] efi: Access EFI MMIO data as unencrypted when SEV is active
+ - [x86] apic: Future-proof the TSC_DEADLINE quirk for SKX
+ - [x86] entry/64: Remove %ebx handling from error_entry/exit
+ - [86] kvm: x86: vmx: fix vpid leak
+ - audit: fix potential null dereference 'context->module.name'
+ - ipc/shm.c add ->pagesize function to shm_vm_ops
+ - userfaultfd: remove uffd flags from vma->vm_flags if UFFD_EVENT_FORK fails
+ - iwlwifi: add more card IDs for 9000 series
+ - brcmfmac: fix regression in parsing NVRAM for multiple devices
+ - RDMA/uverbs: Expand primary and alt AV port checks
+ - [x86] crypto: padlock-aes - Fix Nano workaround data corruption
+ - [armhf, arm64] drm/vc4: Reset ->{x, y}_scaling[1] when dealing with
+ uniplanar formats
+ - drm/atomic: Check old_plane_state->crtc in drm_atomic_helper_async_check()
+ - drm/atomic: Initialize variables in drm_atomic_helper_async_check() to
+ make gcc happy
+ - scsi: sg: fix minor memory leak in error path
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.14
+ - scsi: qla2xxx: Fix unintialized List head crash
+ - scsi: qla2xxx: Fix NPIV deletion by calling wait_for_sess_deletion
+ - scsi: qla2xxx: Fix driver unload by shutting down chip
+ - scsi: qla2xxx: Fix ISP recovery on unload
+ - scsi: qla2xxx: Return error when TMF returns
+ - jfs: Fix usercopy whitelist for inline inode data
+ - genirq: Make force irq threading setup more robust
+ - [x86] perf/x86/intel/uncore: Fix hardcoded index of Broadwell extra PCI
+ devices
+ - nohz: Fix local_timer_softirq_pending()
+ - nohz: Fix missing tick reprogram when interrupting an inline softirq
+ - netlink: Don't shift on 64 for ngroups
+ - ring_buffer: tracing: Inherit the tracing setting to next ring buffer
+ - i2c: imx: Fix reinit_completion() use
+ - Btrfs: fix file data corruption after cloning a range and fsync
+ - Partially revert "block: fail op_is_write() requests to read-only
+ partitions" (Closes: #900442)
+ - xfs: don't call xfs_da_shrink_inode with NULL bp
+ - xfs: validate cached inodes are free when allocated
+ - jfs: Fix inconsistency between memory allocation and ea_buf->max_size
+
+ [ Ben Hutchings ]
+ * [armhf] gpu: host1x: Drop my build fix in favour of upstream fix:
+ - Revert "Revert "gpu: host1x: Add IOMMU support""
+ - gpu: host1x: Fix compiler errors by converting to dma_addr_t
+ * [ia64] sched: Disable SCHED_STACK_END_CHECK (Closes: #905461)
+ * mtd: powernv_flash: set of_node in mtd's dev (Closes: #904380)
+ * block: really disable runtime-pm for blk-mq (Closes: #904441)
+
+ [ Bastian Blank ]
+ * Bump ABI to 2
+
+ -- Bastian Blank <waldi@debian.org> Mon, 13 Aug 2018 15:33:58 +0200
+
+linux (4.17.8-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.7
+ - bpf: reject passing modified ctx to helper functions
+ - [mips*] Call dump_stack() from show_regs()
+ - [mips*] Use async IPIs for arch_trigger_cpumask_backtrace()
+ - [mips*] Fix ioremap() RAM check
+ - [armhf] drm/etnaviv: Check for platform_device_register_simple() failure
+ - [armhf] drm/etnaviv: Fix driver unregistering
+ - [armhf] drm/etnaviv: bring back progress check in job timeout handler
+ - ACPICA: Clear status of all events when entering S5
+ - [armhf] mmc: sdhci-esdhc-imx: allow 1.8V modes without 100/200MHz
+ pinctrl states
+ - [armhf] mmc: dw_mmc: fix card threshold control configuration
+ - [x86] ibmasm: don't write out of bounds in read handler
+ - [arm64,x86] staging: rtl8723bs: Prevent an underflow in
+ rtw_check_beacon_data().
+ - ata: Fix ZBC_OUT command block check
+ - ata: Fix ZBC_OUT all bit handling
+ - [x86] mei: discard messages from not connected client during power down.
+ - mtd: spi-nor: cadence-quadspi: Fix direct mode write timeouts
+ - tracing/kprobe: Release kprobe print_fmt properly
+ - vmw_balloon: fix inflation with batching
+ - ahci: Add Intel Ice Lake LP PCI ID
+ - ahci: Disable LPM on Lenovo 50 series laptops with a too old BIOS
+ - [x86] thunderbolt: Notify userspace when boot_acl is changed
+ - USB: serial: ch341: fix type promotion bug in ch341_control_in()
+ - USB: serial: cp210x: add another USB ID for Qivicon ZigBee stick
+ - USB: serial: keyspan_pda: fix modem-status error handling
+ - USB: yurex: fix out-of-bounds uaccess in read handler
+ - USB: serial: mos7840: fix status-register error handling
+ - usb: quirks: add delay quirks for Corsair Strafe
+ - xhci: xhci-mem: off by one in xhci_stream_id_to_ring()
+ - mm: zero unavailable pages before memmap init
+ - ALSA: hda/realtek - two more lenovo models need fixup of
+ MIC_LOCATION
+ - ALSA: hda - Handle pm failure during hotplug
+ - mm: do not drop unused pages when userfaultd is running
+ - fs/proc/task_mmu.c: fix Locked field in /proc/pid/smaps*
+ - x86/purgatory: add missing FORCE to Makefile target
+ - fs, elf: make sure to page align bss in load_elf_library
+ - mm: do not bug_on on incorrect length in __mm_populate()
+ - tracing: Reorder display of TGID to be after PID
+ - kbuild: delete INSTALL_FW_PATH from kbuild documentation
+ - acpi, nfit: Fix scrub idle detection
+ - [arm64] neon: Fix function may_use_simd() return error status
+ - tools build: fix # escaping in .cmd files for future Make
+ - IB/hfi1: Fix incorrect mixing of ERR_PTR and NULL return values
+ - [arm64,armhf] i2c: tegra: Fix NACK error handling
+ - i2c: recovery: if possible send STOP with recovery pulses
+ - iw_cxgb4: correctly enforce the max reg_mr depth
+ - [x86] xen: remove global bit from __default_kernel_pte_mask for pv
+ guests
+ - [x86] xen: setup pv irq ops vector earlier
+ - bsg: fix bogus EINVAL on non-data commands
+ - [x86] uprobes/x86: Remove incorrect WARN_ON() in uprobe_init_insn()
+ - netfilter: nf_queue: augment nfqa_cfg_policy
+ - crypto: don't optimize keccakf()
+ - netfilter: x_tables: initialise match/target check parameter
+ struct
+ - loop: add recursion validation to LOOP_CHANGE_FD
+ - xfs: fix inobt magic number check
+ - PM / hibernate: Fix oops at snapshot_write()
+ - RDMA/ucm: Mark UCM interface as BROKEN
+ - loop: remember whether sysfs_create_group() was done
+ - [x86] kvm: vmx: Nested VM-entry prereqs for event inj.
+ - f2fs: give message and set need_fsck given broken node id
+ - f2fs: avoid bug_on on corrupted inode
+ - f2fs: sanity check on sit entry
+ - f2fs: sanity check for total valid node blocks
+ - [armhf] dts: armada-38x: use the new thermal binding
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.8
+ - mm: don't do zero_resv_unavail if memmap is not allocated
+
+ [ Ben Hutchings ]
+ * ext4: fix false negatives *and* false positives in ext4_check_descriptors()
+ (Closes: #903838)
+ * Fix remaining build failures with gcc 8 (Closes: #897802):
+ - tools/lib/api/fs/fs.c: Fix misuse of strncpy()
+ - usbip: Fix misuse of strncpy()
+
+ [ Salvatore Bonaccorso ]
+ * Ignore ABI changes for acpi_nfit_desc_init and acpi_nfit_init
+ * Ignore ABI changes for loop_register_transfer
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 20 Jul 2018 23:08:27 +0200
+
+linux (4.17.6-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [armhf] drm/sun4i: Ignore ABI changes (fixes FTBFS)
+ * debian/control: Fix arch/profile qualifications for libelf-dev
+ build-dependency
+ * debian/rules.real: Pass KERNEL_ARCH variable down to debian/rules.d
+ * debian/rules.d/tools/perf/Makefile: Use KERNEL_ARCH variable
+ * linux-kbuild: Fix the assumed host architecture for cross-built objtool
+ * [ppc64] linux-bootwrapper: Work around compiler include path quirk
+ (fixes FTBFS)
+ * Fix file conflicts between debug packages where a vDSO is identical
+ (Closes: #872263):
+ - kbuild: Add build salt to the kernel and modules
+ - [arm64,powerpc,x86] Add build salt to the vDSO
+ - Set BUILD_SALT equal to the release string
+ * init: Avoid ABI change for build salt
+
+ [ Vagrant Cascadian ]
+ * [riscv64] Build linux-libc-dev (Closes: #886440).
+ Thanks to Manuel A. Fernandez Montecelo.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 15 Jul 2018 23:45:56 +0100
+
+linux (4.17.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.4
+ - [x86] spectre_v1: Disable compiler optimizations over
+ array_index_mask_nospec()
+ - [x86] xen: Add call of speculative_store_bypass_ht_init() to PV paths
+ - [x86] UV: Add adjustable set memory block size function
+ - [x86] UV: Use new set memory block size function
+ - [x86] UV: Add kernel parameter to set memory block size
+ - [x86] mce: Improve error message when kernel cannot recover
+ - [x86] mce: Check for alternate indication of machine check recovery on
+ Skylake
+ - [x86] mce: Fix incorrect "Machine check from unknown source" message
+ - [x86] mce: Do not overwrite MCi_STATUS in mce_no_way_out()
+ - [x86] Call fixup_exception() before notify_die() in math_error()
+ - [m68k] mm: Adjust VM area to be unmapped by gap size for __iounmap()
+ - [m68k] mac: Fix SWIM memory resource end address
+ - hwmon: (k10temp) Add support for Stoney Ridge and Bristol Ridge CPUs
+ - mtd: spi-nor: intel-spi: Fix atomic sequence handling
+ - serial: sh-sci: Use spin_{try}lock_irqsave instead of open coding version
+ - signal/xtensa: Consistenly use SIGBUS in do_unaligned_user
+ - PM / Domains: Fix error path during attach in genpd
+ - PCI / PM: Do not clear state_saved for devices that remain suspended
+ - ACPI / LPSS: Avoid PM quirks on suspend and resume from S3
+ - PM / core: Fix supplier device runtime PM usage counter imbalance
+ - PM / OPP: Update voltage in case freq == old_freq
+ - mmc: renesas_sdhi: really fix WP logic regressions
+ - usb: do not reset if a low-speed or full-speed device timed out
+ - 1wire: family module autoload fails because of upper/lower case mismatch.
+ - ASoC: dapm: delete dapm_kcontrol_data paths list before freeing it
+ - ASoC: cs35l35: Add use_single_rw to regmap config
+ - ASoC: mediatek: preallocate pages use platform device
+ - ASoC: cirrus: i2s: Fix LRCLK configuration
+ - ASoC: cirrus: i2s: Fix {TX|RX}LinCtrlData setup
+ - thermal: bcm2835: Stop using printk format %pCr
+ - lib/vsprintf: Remove atomic-unsafe support for %pCr
+ - ftrace/selftest: Have the reset_trigger code be a bit more careful
+ - mips: ftrace: fix static function graph tracing
+ - branch-check: fix long->int truncation when profiling branches
+ - ipmi:bt: Set the timeout before doing a capabilities check
+ - Bluetooth: hci_qca: Avoid missing rampatch failure with userspace fw
+ loader
+ - printk: fix possible reuse of va_list variable
+ - fuse: fix congested state leak on aborted connections
+ - fuse: atomic_o_trunc should truncate pagecache
+ - fuse: don't keep dead fuse_conn at fuse_fill_super().
+ - fuse: fix control dir setup and teardown
+ - [powerpc*] mm/hash: Add missing isync prior to kernel stack SLB switch
+ - [powerpc*] pkeys: Detach execute_only key on !PROT_EXEC
+ - [powerpc*] ptrace: Fix setting 512B aligned breakpoints with
+ PTRACE_SET_DEBUGREG
+ - [powerpc*] perf: Fix memory allocation for core-imc based on
+ num_possible_cpus()
+ - [powerpc*] ptrace: Fix enforcement of DAWR constraints
+ - [powerpc*] powernv/ioda2: Remove redundant free of TCE pages
+ - [powerpc*] powernv: copy/paste - Mask SO bit in CR
+ - [powerpc*] powernv/cpuidle: Init all present cpus for deep states
+ - [powerpc*] cpuidle: powernv: Fix promotion from snooze if next state
+ disabled
+ - [powerpc*] fadump: Unregister fadump on kexec down path.
+ - libnvdimm, pmem: Do not flush power-fail protected CPU caches
+ - [armhf, arm64] soc: rockchip: power-domain: Fix wrong value when power
+ up pd with writemask
+ - [powerpc*] 64s/radix: Fix radix_kvm_prefetch_workaround paca access of not
+ possible CPU
+ - [powerpc] e500mc: Set assembler machine type to e500mc
+ - [powerpc*] 64s: Fix DT CPU features Power9 DD2.1 logic
+ - cxl: Configure PSL to not use APC virtual machines
+ - cxl: Disable prefault_mode in Radix mode
+ - [armhf] 8764/1: kgdb: fix NUMREGBYTES so that gdb_regs[] is the correct size
+ - [armhf] dts: Fix SPI node for Arria10
+ - [armhf] dts: socfpga: Fix NAND controller node compatible
+ - [armhf] dts: socfpga: Fix NAND controller clock supply
+ - [armhf] dts: socfpga: Fix NAND controller node compatible for Arria10
+ - hwrng: core - Always drop the RNG in hwrng_unregister()
+ - softirq: Reorder trace_softirqs_on to prevent lockdep splat
+ - [arm64] Fix syscall restarting around signal suppressed by tracer
+ - [arm64] crypto: arm64/aes-blk - fix and move skcipher_walk_done out of
+ kernel_neon_begin, _end
+ - [arm64] kpti: Use early_param for kpti= command-line option
+ - [arm64] mm: Ensure writes to swapper are ordered wrt subsequent cache
+ maintenance
+ - [arm64] dts: marvell: fix CP110 ICU node size
+ - [arm64] dts: meson: disable sd-uhs modes on the libretech-cc
+ - [arm64] dts: meson-gx: fix ATF reserved memory region
+ - of: overlay: validate offset from property fixups
+ - of: unittest: for strings, account for trailing \0 in property length
+ field
+ - of: platform: stop accessing invalid dev in of_platform_device_destroy
+ - tpm: fix use after free in tpm2_load_context()
+ - tpm: fix race condition in tpm_common_write()
+ - efi/libstub/tpm: Initialize efi_physical_addr_t vars to zero for mixed
+ mode
+ - IB/qib: Fix DMA api warning with debug kernel
+ - IB/{hfi1, qib}: Add handling of kernel restart
+ - IB/mlx4: Mark user MR as writable if actual virtual memory is writable
+ - IB/core: Make testing MR flags for writability a static inline function
+ - IB/mlx5: Fetch soft WQE's on fatal error state
+ - IB/isert: Fix for lib/dma_debug check_sync warning
+ - IB/isert: fix T10-pi check mask setting
+ - IB/hfi1: Fix fault injection init/exit issues
+ - IB/hfi1: Reorder incorrect send context disable
+ - IB/hfi1: Optimize kthread pointer locking when queuing CQ entries
+ - IB/hfi1: Fix user context tail allocation for DMA_RTAIL
+ - IB/uverbs: Fix ordering of ucontext check in ib_uverbs_write
+ - RDMA/mlx4: Discard unknown SQP work requests
+ - xprtrdma: Return -ENOBUFS when no pages are available
+ - RDMA/core: Save kernel caller name when creating CQ using ib_create_cq()
+ - mtd: rawnand: Do not check FAIL bit when executing a SET_FEATURES op
+ - mtd: cfi_cmdset_0002: Change write buffer to check correct value
+ - mtd: rawnand: denali_dt: set clk_x_rate to 200 MHz unconditionally
+ - mtd: rawnand: fix return value check for bad block status
+ - mtd: rawnand: mxc: set spare area size register explicitly
+ - mtd: rawnand: micron: add ONFI_FEATURE_ON_DIE_ECC to supported features
+ - mtd: rawnand: All AC chips have a broken GET_FEATURES(TIMINGS).
+ - mtd: cfi_cmdset_0002: Use right chip in do_ppb_xxlock()
+ - mtd: cfi_cmdset_0002: fix SEGV unlocking multiple chips
+ - mtd: cfi_cmdset_0002: Fix unlocking requests crossing a chip boudary
+ - mtd: cfi_cmdset_0002: Avoid walking all chips when unlocking.
+ - clk:aspeed: Fix reset bits for PCI/VGA and PECI
+ - [x86] PCI: hv: Make sure the bus domain is really unique
+ - PCI: Add ACS quirk for Intel 7th & 8th Gen mobile
+ - PCI: Add ACS quirk for Intel 300 series
+ - PCI: pciehp: Clear Presence Detect and Data Link Layer Status Changed on
+ resume
+ - PCI: Account for all bridges on bus when distributing bus numbers
+ - auxdisplay: fix broken menu
+ - pinctrl: armada-37xx: Fix spurious irq management
+ - pinctrl: samsung: Correct EINTG banks order
+ - pinctrl: devicetree: Fix pctldev pointer overwrite
+ - cpufreq: intel_pstate: Fix scaling max/min limits with Turbo 3.0
+ - [mips*] pb44: Fix i2c-gpio GPIO descriptor table
+ - [mips*] io: Add barrier after register read in inX()
+ - time: Make sure jiffies_to_msecs() preserves non-zero time periods
+ - irqchip/gic-v3-its: Don't bind LPI to unavailable NUMA node
+ - locking/rwsem: Fix up_read_non_owner() warning with DEBUG_RWSEMS
+ - X.509: unpack RSA signatureValue field from BIT STRING
+ - Btrfs: fix return value on rename exchange failure
+ - iio: adc: ad7791: remove sample freq sysfs attributes
+ - iio: sca3000: Fix an error handling path in 'sca3000_probe()'
+ - mm: fix __gup_device_huge vs unmap
+ - scsi: scsi_debug: Fix memory leak on module unload
+ - scsi: hpsa: disable device during shutdown
+ - scsi: qla2xxx: Delete session for nport id change
+ - scsi: qla2xxx: Fix setting lower transfer speed if GPSC fails
+ - scsi: qla2xxx: Mask off Scope bits in retry delay
+ - scsi: qla2xxx: Spinlock recursion in qla_target
+ - scsi: zfcp: fix missing SCSI trace for result of eh_host_reset_handler
+ - scsi: zfcp: fix missing SCSI trace for retry of abort / scsi_eh TMF
+ - scsi: zfcp: fix misleading REC trigger trace where erp_action setup
+ failed
+ - scsi: zfcp: fix missing REC trigger trace on terminate_rport_io early
+ return
+ - scsi: zfcp: fix missing REC trigger trace on terminate_rport_io for
+ ERP_FAILED
+ - scsi: zfcp: fix missing REC trigger trace for all objects in ERP_FAILED
+ - scsi: zfcp: fix missing REC trigger trace on enqueue without ERP thread
+ - linvdimm, pmem: Preserve read-only setting for pmem devices
+ - libnvdimm, pmem: Unconditionally deep flush on *sync
+ - [armhf] clk: meson: meson8b: mark fclk_div2 gate clocks as CLK_IS_CRITICAL
+ - [armhf] rtc: sun6i: Fix bit_idx value for clk_register_gate
+ - md: fix two problems with setting the "re-add" device state.
+ - rpmsg: smd: do not use mananged resources for endpoints and channels
+ - ubi: fastmap: Cancel work upon detach
+ - ubi: fastmap: Correctly handle interrupted erasures in EBA
+ - UBIFS: Fix potential integer overflow in allocation
+ - backlight: as3711_bl: Fix Device Tree node lookup
+ - backlight: max8925_bl: Fix Device Tree node lookup
+ - backlight: tps65217_bl: Fix Device Tree node lookup
+ - Revert "iommu/amd_iommu: Use CONFIG_DMA_DIRECT_OPS=y and
+ dma_direct_{alloc,free}()"
+ - f2fs: don't use GFP_ZERO for page caches
+ - um: Fix initialization of vector queues
+ - um: Fix raw interface options
+ - mfd: twl-core: Fix clock initialization
+ - mfd: intel-lpss: Program REMAP register in PIO mode
+ - mfd: intel-lpss: Fix Intel Cannon Lake LPSS I2C input clock
+ - perf tools: Fix symbol and object code resolution for vdso32 and vdsox32
+ - [x86] perf intel-pt: Fix sync_switch INTEL_PT_SS_NOT_TRACING
+ - [x86] perf intel-pt: Fix decoding to accept CBR between FUP and
+ corresponding TIP
+ - [x86] perf intel-pt: Fix MTC timing after overflow
+ - [x86] perf intel-pt: Fix "Unexpected indirect branch" error
+ - [x86] perf intel-pt: Fix packet decoding of CYC packets
+ - media: vsp1: Release buffers for each video node
+ - media: uvcvideo: Support realtek's UVC 1.5 device
+ - media: cx231xx: Ignore an i2c mux adapter
+ - media: v4l2-compat-ioctl32: prevent go past max size
+ - media: cx231xx: Add support for AverMedia DVD EZMaker 7
+ - media: rc: mce_kbd decoder: fix stuck keys
+ - media: dvb_frontend: fix locking issues at dvb_frontend_get_event()
+ - nfsd: restrict rd_maxcount to svc_max_payload in nfsd_encode_readdir
+ - NFSv4: Fix possible 1-byte stack overflow in
+ nfs_idmap_read_and_verify_message
+ - NFSv4: Revert commit 5f83d86cf531d ("NFSv4.x: Fix wraparound issues..")
+ - NFSv4: Fix a typo in nfs41_sequence_process
+ - video: uvesafb: Fix integer overflow in allocation (CVE-2018-13406)
+ - ACPI / LPSS: Add missing prv_offset setting for byt/cht PWM devices
+ - Input: silead - add MSSL0002 ACPI HID
+ - Input: elan_i2c - add ELAN0618 (Lenovo v330 15IKB) ACPI ID
+ - pwm: lpss: platform: Save/restore the ctrl register over a suspend/resume
+ - rbd: flush rbd_dev->watch_dwork after watch is unregistered
+ - mm/ksm.c: ignore STABLE_FLAG of rmap_item->address in rmap_walk_ksm()
+ - mm: fix devmem_is_allowed() for sub-page System RAM intersections
+ - xen: Remove unnecessary BUG_ON from __unbind_from_irq()
+ - net: ethernet: fix suspend/resume in davinci_emac
+ - udf: Detect incorrect directory size
+ - Input: xpad - fix GPD Win 2 controller name
+ - Input: psmouse - fix button reporting for basic protocols
+ - Input: elan_i2c_smbus - fix more potential stack buffer overflows
+ - Input: elantech - enable middle button of touchpads on ThinkPad P52
+ - Input: elantech - fix V4 report decoding for module with middle key
+ - ALSA: timer: Fix UBSAN warning at SNDRV_TIMER_IOCTL_NEXT_DEVICE ioctl
+ - ALSA: hda - Force to link down at runtime suspend on ATI/AMD HDMI
+ - ALSA: hda/realtek - Fix pop noise on Lenovo P50 & co
+ - ALSA: hda/realtek - Add a quirk for FSC ESPRIMO U9210
+ - ALSA: hda/realtek - Fix the problem of two front mics on more machines
+ - Revert "i2c: algo-bit: init the bus to a known state"
+ - i2c: gpio: initialize SCL to HIGH again
+ - slub: fix failure when we delete and create a slab cache
+ - kasan: depend on CONFIG_SLUB_DEBUG
+ - dm: use bio_split() when splitting out the already processed bio
+ - pmem: only set QUEUE_FLAG_DAX for fsdax mode
+ - block: Fix transfer when chunk sectors exceeds max
+ - block: Fix cloning of requests with a special payload
+ - [x86] e820: put !E820_TYPE_RAM regions into memblock.reserved
+ - selinux: move user accesses in selinuxfs out of locked regions
+ - [x86] entry/64/compat: Fix "x86/entry/64/compat: Preserve r8-r11 in int
+ $0x80"
+ - [x86] efi: Fix efi_call_phys_epilog() with CONFIG_X86_5LEVEL=y
+ - dm zoned: avoid triggering reclaim from inside dmz_map()
+ - dm thin: handle running out of data space vs concurrent discard
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.5
+ - [armhf,arm64] usb: dwc2: fix the incorrect bitmaps for the ports of
+ multi_tt hub
+ - usb: typec: tcpm: fix logbuffer index is wrong if _tcpm_log is re-entered
+ - acpi: Add helper for deactivating memory region
+ - usb: typec: ucsi: acpi: Workaround for cache mode issue
+ - usb: typec: ucsi: Fix for incorrect status data issue
+ - xhci: Fix kernel oops in trace_xhci_free_virt_device
+ - n_tty: Fix stall at n_tty_receive_char_special().
+ - n_tty: Access echo_* variables carefully.
+ - [armhf] iio: mma8452: Fix ignoring MMA8452_INT_DRDY
+ - serial: 8250_pci: Remove stalled entries in blacklist
+ - serdev: fix memleak on module unload
+ - vt: prevent leaking uninitialized data to userspace via /dev/vcs*
+ - drm/amdgpu: Add APU support in vi_set_uvd_clocks
+ - drm/amdgpu: Add APU support in vi_set_vce_clocks
+ - drm/amdgpu: fix the missed vcn fw version report
+ - drm/amdgpu: Grab/put runtime PM references in atomic_commit_tail()
+ - drm/amdgpu: fix clear_all and replace handling in the VM (v2)
+ - drm/amd/display: Clear connector's edid pointer
+ - [x86] drm/i915/dp: Send DPCD ON for MST before phy_up
+ - drm/qxl: Call qxl_bo_unref outside atomic context
+ - [armhf] Revert "drm/sun4i: Handle DRM_BUS_FLAG_PIXDATA_*EDGE"
+ - drm/amdgpu: Don't default to DC support for Kaveri and older
+ - drm/amdgpu: Use kvmalloc_array for allocating VRAM manager nodes array
+ - drm/amdgpu: Refactor amdgpu_vram_mgr_bo_invisible_size helper
+ - drm/amdgpu: Make amdgpu_vram_mgr_bo_invisible_size always accurate
+ - drm/amdgpu: Update pin_size values before unpinning BO
+ - drm/amdgpu: GPU vs CPU page size fixes in amdgpu_vm_bo_split_mapping
+ - drm/amdgpu: Count disabled CRTCs in commit tail earlier
+ - drm/amd/display: release spinlock before committing updates to stream
+ - [x86] drm/i915: Allow DBLSCAN user modes with eDP/LVDS/DSI
+ - [x86] drm/i915: Fix PIPESTAT irq ack on i965/g4x
+ - [x86] drm/i915: Disallow interlaced modes on g4x DP outputs
+ - [x86] drm/i915: Turn off g4x DP port in .post_disable()
+ - [x86] drm/i915: Enable provoking vertex fix on Gen9 systems.
+ - netfilter: ip6t_rpfilter: provide input interface for route lookup
+ - netfilter: xt_connmark: fix list corruption on rmmod
+ - netfilter: nf_tables: use WARN_ON_ONCE instead of BUG_ON in
+ nft_do_chain()
+ - [arm64] dts: meson-gxl-s905x-p212: Add phy-supply for usb0
+ - [x86] mm: Don't free P4D table when it is folded at runtime
+ - [armhf] dts: imx6q: Use correct SDMA script for SPI5 core
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.6
+ - userfaultfd: hugetlbfs: fix userfaultfd_huge_must_wait() pte access
+ - mm: hugetlb: yield when prepping struct pages
+ - mm: teach dump_page() to correctly output poisoned struct pages
+ - PCI / ACPI / PM: Resume bridges w/o drivers on suspend-to-RAM
+ - ACPICA: Drop leading newlines from error messages
+ - ACPI / battery: Safe unregistering of hooks
+ - tracing: Avoid string overflow
+ - tracing: Fix missing return symbol in function_graph output
+ - scsi: sg: mitigate read/write abuse
+ - scsi: aacraid: Fix PD performance regression over incorrect qd being set
+ - scsi: target: Fix truncated PR-in ReadKeys response
+ - [s390x] Correct register corruption in critical section cleanup
+ - drbd: fix access after free
+ - vfio: Use get_user_pages_longterm correctly
+ - [armhf] dts: imx51-zii-rdu1: fix touchscreen pinctrl
+ - [armhf] dts: omap3: Fix am3517 mdio and emac clock references
+ - [armhf] dts: dra7: Disable metastability workaround for USB2
+ - cifs: Fix use after free of a mid_q_entry
+ - cifs: Fix memory leak in smb2_set_ea()
+ - cifs: Fix slab-out-of-bounds in send_set_info() on SMB2 ACE setting
+ - cifs: Fix infinite loop when using hard mount option
+ - drm: Use kvzalloc for allocating blob property memory
+ - drm/udl: fix display corruption of the last line
+ - drm/amdgpu: Add amdgpu_atpx_get_dhandle()
+ - drm/amdgpu: Dynamically probe for ATIF handle (v2)
+ - ext4: include the illegal physical block in the bad map ext4_error msg
+ - ext4: add more mount time checks of the superblock
+ - ext4: check superblock mapped prior to committing
+ - HID: i2c-hid: Fix "incomplete report" noise
+ - HID: hiddev: fix potential Spectre v1 (CVE-2017-5715)
+ - HID: debug: check length before copy_to_user()
+ - HID: core: allow concurrent registration of drivers
+ - i2c: core: smbus: fix a potential missing-check bug
+ - i2c: smbus: kill memory leak on emulated and failed DMA SMBus xfers
+ - fs: allow per-device dax status checking for filesystems
+ - dax: change bdev_dax_supported() to support boolean returns
+ - dax: check for QUEUE_FLAG_DAX in bdev_dax_supported()
+ - dm: prevent DAX mounts if not supported
+ - mtd: cfi_cmdset_0002: Change definition naming to retry write operation
+ - mtd: cfi_cmdset_0002: Change erase functions to retry for error
+ - mtd: cfi_cmdset_0002: Change erase functions to check chip good only
+ - netfilter: nf_log: don't hold nf_log_mutex during user access
+ - [x86] staging: comedi: quatech_daqp_cs: fix no-op loop
+ daqp_ao_insn_write()
+ - Revert mm/vmstat.c: fix vmstat_update() preemption BUG
+
+ [ Sjoerd Simons ]
+ * [armhf] DRM: Enable CONFIG_DRM_IMX_PARALLEL_DISPLAY
+
+ [ Ben Hutchings ]
+ * linux-tools: Fix cross-build of objtool
+ * [powerpcspe] Fix build failures (thanks to James Clarke):
+ - powerpc/lib/sstep: Fix building for powerpcspe
+ - powerpc/lib/Makefile: Don't pull in quad.o for 32-bit kernels
+ - linux-perf: Disable building for powerpcspe
+ * [powerpc,powerpcspe,ppc64] Fix cross-build (Closes: #903096):
+ - Introduce linux-bootwrapper-<abiname> package containing boot wrapper
+ tools for the host architecture
+ - linux-image: Install symlinks to boot wrapper tools instead of the
+ native tools built by kbuild
+ * fs: Fix up non-directory creation in SGID directories (CVE-2018-13405)
+ * sound/pci/hda: Ignore ABI changes
+ * HID: Avoid ABI change in 4.17.6
+ * dax: Avoid ABI change in 4.17.6
+
+ [ Cyril Brulebois ]
+ * udeb: Add virtio_console to virtio-modules (Closes: #903122).
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 12 Jul 2018 02:05:27 +0100
+
+linux (4.17.3-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.3
+ - net: aquantia: fix unsigned numvecs comparison with less than zero
+ - bonding: re-evaluate force_primary when the primary slave name changes
+ - cdc_ncm: avoid padding beyond end of skb
+ - ipv6: allow PMTU exceptions to local routes
+ - [armhf,arm64] net: dsa: add error handling for pskb_trim_rcsum
+ - net/sched: act_simple: fix parsing of TCA_DEF_DATA
+ - tcp: verify the checksum of the first data segment in a new connection
+ - socket: close race condition between sock_close() and sockfs_setattr()
+ (CVE-2018-12232)
+ - udp: fix rx queue len reported by diag and proc interface
+ - net: in virtio_net_hdr only add VLAN_HLEN to csum_start if payload holds
+ vlan
+ - ACPICA: AML parser: attempt to continue loading table after error
+ - ext4: fix hole length detection in ext4_ind_map_blocks()
+ - ext4: update mtime in ext4_punch_hole even if no blocks are released
+ - ext4: do not allow external inodes for inline data (CVE-2018-11412)
+ - ext4: bubble errors from ext4_find_inline_data_nolock() up to ext4_iget()
+ - ext4: correctly handle a zero-length xattr with a non-zero e_value_offs
+ (CVE-2018-10840)
+ - ext4: fix fencepost error in check for inode count overflow during resize
+ - driver core: Don't ignore class_dir_create_and_add() failure.
+ - Btrfs: allow empty subvol= again
+ - Btrfs: fix clone vs chattr NODATASUM race
+ - Btrfs: fix memory and mount leak in btrfs_ioctl_rm_dev_v2()
+ - btrfs: return error value if create_io_em failed in cow_file_range
+ - btrfs: scrub: Don't use inode pages for device replace
+ - ALSA: usb-audio: Disable the quirk for Nura headset
+ - ALSA: hda - Handle kzalloc() failure in snd_hda_attach_pcm_stream()
+ - [x86] MCE: Fix stack out-of-bounds write in mce-inject.c: Flags_read()
+ - smb3: fix various xid leaks
+ - smb3: on reconnect set PreviousSessionId field
+ - CIFS: 511c54a2f69195b28afb9dd119f03787b1625bb4 adds a check for session
+ expiry
+ - cifs: For SMB2 security informaion query, check for minimum sized
+ security descriptor instead of sizeof FileAllInformation class
+ - nbd: fix nbd device deletion
+ - nbd: update size when connected
+ - nbd: use bd_set_size when updating disk size
+ - blk-mq: reinit q->tag_set_list entry only after grace period
+ - bdi: Move cgroup bdi_writeback to a dedicated low concurrency workqueue
+ - cpufreq: Fix new policy initialization during limits updates via sysfs
+ - cpufreq: governors: Fix long idle detection logic in load calculation
+ - libata: zpodd: small read overflow in eject_tray()
+ - libata: Drop SanDisk SD7UB3Q*G1001 NOLPM quirk
+ - nvme/pci: Sync controller reset for AER slot_reset
+ - [x86] vector: Fix the args of vector_alloc tracepoint
+ - [x86] apic/vector: Prevent hlist corruption and leaks
+ - [x86] apic: Provide apic_ack_irq()
+ - [x86] ioapic: Use apic_ack_irq()
+ - [x86] platform/uv: Use apic_ack_irq()
+ - irq_remapping: Use apic_ack_irq()
+ - genirq/generic_pending: Do not lose pending affinity update
+ - genirq/affinity: Defer affinity setting if irq chip is busy
+ - genirq/migration: Avoid out of line call if pending is not set
+ - [x86] intel_rdt: Enable CMT and MBM on new Skylake stepping
+ - media: uvcvideo: Prevent setting unavailable flags
+ - media: rc: ensure input/lirc device can be opened after register
+ - iwlwifi: fw: harden page loading code
+ - [x86] HID: intel_ish-hid: ipc: register more pm callbacks to support
+ hibernation
+ - HID: wacom: Correct logical maximum Y for 2nd-gen Intuos Pro large
+ - vhost: fix info leak due to uninitialized memory (CVE-2018-1118)
+ - fs/binfmt_misc.c: do not allow offset overflow
+ - mm, page_alloc: do not break __GFP_THISNODE by zonelist reset
+
+ [ Ben Hutchings ]
+ * [amd64,arm64,armhf] android: Build modules to support Anbox
+ (Closes: #901492)
+ - Export symbols needed by Android drivers
+ - Enable building ashmem and binder as modules
+ - Enable ANDROID
+ - Enable ANDROID_BINDER_IPC, ASHMEM as modules
+ - Set ANDROID_BINDER_DEVICES="binder"
+ - Disable ANDROID_BINDER_IPC_32BIT
+ * [mips*] Increase RELOCATION_TABLE_SIZE to 0x00140000 (fixes FTBFS)
+ * Set ABI to 1
+ * [x86,arm64] Disable code signing for upload to unstable
+ * [x86] virt: vbox: Only copy_from_user the request-header once
+ (CVE-2018-12633)
+ * [x86] vboxguest: Enable VBOXGUEST and DRM_VBOXVIDEO as modules
+ * aufs: Update support patchset to aufs4.x-rcN-20180611
+ * debian/rules.d/scripts/mod/gendef.py: Use Python 3
+ * debian/rules: Fix pkg.linux.notools build profile
+ * tracing: Check for no filter when processing event filters (CVE-2018-12714)
+ * dm: Enable DM_INTEGRITY as module (except on armel) (Closes: #896649)
+ * debian/lib/python/debian_linux/debian.py: Accept arbitrary revision
+ suffixes (Closes: #898087)
+ * ext4: add corruption check in ext4_xattr_set_entry() (CVE-2018-10879)
+ * ext4: always verify the magic number in xattr blocks (CVE-2018-10879)
+ * ext4: always check block group bounds in ext4_init_block_bitmap()
+ (CVE-2018-10878)
+ * ext4: make sure bitmaps and the inode table don't overlap with bg
+ descriptors (CVE-2018-10878)
+ * ext4: only look at the bg_flags field if it is valid (CVE-2018-10876)
+ * ext4: verify the depth of extent tree in ext4_find_extent()
+ (CVE-2018-10877)
+ * ext4: clear i_data in ext4_inode_info when removing inline data
+ (CVE-2018-10881)
+ * ext4: never move the system.data xattr out of the inode body
+ (CVE-2018-10880)
+ * jbd2: don't mark block as modified if the handle is out of credits
+ (CVE-2018-10883)
+ * ext4: avoid running out of journal credits when appending to an inline file
+ (CVE-2018-10883)
+ * ext4: add more inode number paranoia checks (CVE-2018-10882)
+ * jfs: Fix inconsistency between memory allocation and ea_buf->max_size
+ (CVE-2018-12233)
+ * debian/control: Move bison and flex to Build-Depends (Closes: #901712)
+
+ [ Romain Perier ]
+ * [x86] amdgpu: Enable DCN 1.0 Raven family (Closes: #901349)
+ * [armhf] Enable missing SND_EDMA_SOC for davinci-mcasp on the BeagleBoneBlack
+
+ [ Vagrant Cascadian ]
+ * [arm64] Add device-tree to support Pinebook.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 02 Jul 2018 22:13:27 +0100
+
+linux (4.17.2-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.17
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.1
+ - netfilter: nf_flow_table: attach dst to skbs
+ - bnx2x: use the right constant
+ - ip6mr: only set ip6mr_table from setsockopt when ip6mr_new_table succeeds
+ - ipv6: omit traffic class when calculating flow hash
+ - l2tp: fix refcount leakage on PPPoL2TP sockets
+ - netdev-FAQ: clarify DaveM's position for stable backports
+ - net: metrics: add proper netlink validation
+ - net/packet: refine check for priv area size
+ - rtnetlink: validate attributes in do_setlink()
+ - sctp: not allow transport timeout value less than HZ/5 for hb_timer
+ - team: use netdev_features_t instead of u32
+ - vrf: check the original netdevice for generating redirect
+ - net: dsa: b53: Fix for brcm tag issue in Cygnus SoC
+ - ipmr: fix error path when ipmr_new_table fails
+ - PCI: hv: Do not wait forever on a device that has disappeared
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.17.2
+ - crypto: chelsio - request to HW should wrap
+ - blkdev_report_zones_ioctl(): Use vmalloc() to allocate large buffers
+ - KVM: X86: Fix reserved bits check for MOV to CR3
+ - KVM: x86: introduce linear_{read,write}_system
+ - kvm: fix typo in flag name
+ - kvm: nVMX: Enforce cpl=0 for VMX instructions
+ - KVM: x86: pass kvm_vcpu to kvm_read_guest_virt and kvm_write_guest_virt_system
+ - kvm: x86: use correct privilege level for sgdt/sidt/fxsave/fxrstor access
+ - staging: android: ion: Switch to pr_warn_once in ion_buffer_destroy
+ - NFC: pn533: don't send USB data off of the stack
+ - usbip: vhci_sysfs: fix potential Spectre v1
+ - usb-storage: Add support for FL_ALWAYS_SYNC flag in the UAS driver
+ - usb-storage: Add compatibility quirk flags for G-Technologies G-Drive
+ - Input: xpad - add GPD Win 2 Controller USB IDs
+ - phy: qcom-qusb2: Fix crash if nvmem cell not specified
+ - usb: core: message: remove extra endianness conversion in usb_set_isoch_delay
+ - usb: typec: wcove: Remove dependency on HW FSM
+ - usb: gadget: function: printer: avoid wrong list handling in printer_write()
+ - usb: gadget: udc: renesas_usb3: fix double phy_put()
+ - usb: gadget: udc: renesas_usb3: should remove debugfs
+ - usb: gadget: udc: renesas_usb3: should call pm_runtime_enable() before add udc
+ - usb: gadget: udc: renesas_usb3: should call devm_phy_get() before add udc
+ - usb: gadget: udc: renesas_usb3: should fail if devm_phy_get() returns error
+ - usb: gadget: udc: renesas_usb3: disable the controller's irqs for reconnecting
+ - serial: sh-sci: Stop using printk format %pCr
+ - tty/serial: atmel: use port->name as name in request_irq()
+ - serial: samsung: fix maxburst parameter for DMA transactions
+ - serial: 8250: omap: Fix idling of clocks for unused uarts
+ - vmw_balloon: fixing double free when batching mode is off
+ - doc: fix sysfs ABI documentation
+ - arm64: defconfig: Enable CONFIG_PINCTRL_MT7622 by default
+ - tty: pl011: Avoid spuriously stuck-off interrupts
+ - crypto: ccree - correct host regs offset
+ - Input: goodix - add new ACPI id for GPD Win 2 touch screen
+ - Input: elan_i2c - add ELAN0612 (Lenovo v330 14IKB) ACPI ID
+ - crypto: caam - strip input zeros from RSA input buffer
+ - crypto: caam - fix DMA mapping dir for generated IV
+ - crypto: caam - fix IV DMA mapping and updating
+ - crypto: caam/qi - fix IV DMA mapping and updating
+ - crypto: caam - fix size of RSA prime factor q
+ - crypto: cavium - Fix fallout from CONFIG_VMAP_STACK
+ - crypto: cavium - Limit result reading attempts
+ - crypto: vmx - Remove overly verbose printk from AES init routines
+ - crypto: vmx - Remove overly verbose printk from AES XTS init
+ - crypto: omap-sham - fix memleak
+
+ [ Vagrant Cascadian ]
+ * [armhf] Enable MFD_AC100 and RTC_DRV_AC100, used in allwinner A80/A83t
+ systems.
+
+ [ Helge Deller ]
+ * [hppa] Disable debug info due to required disk size.
+
+ [ Bastian Blank ]
+ * [cloud-amd64] Enable VIRTUALIZATION. (closes: #900861)
+ * [cloud-amd64] Enable MEMORY_HOTPLUG.
+
+ [ Romain Perier ]
+ * [arm64] correct voltage selector for Firefly-RK3399 (Closes: #900799)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable configuration options used in Firefly-RK3399:
+ DRM_ROCKCHIP, ROCKCHIP_ANALOGIX_DP, ROCKCHIP_DW_HDMI,
+ ROCKCHIP_DW_MIPI_DSI, ROCKCHIP_SARADC, ROCKCHIP_IOMMU, ROCKCHIP_EFUSE,
+ PHY_ROCKCHIP_TYPEC, ROCKCHIP_THERMAL (Closes: #901159).
+ Thanks to Heinrich Schuchardt.
+
+ -- Bastian Blank <waldi@debian.org> Tue, 19 Jun 2018 22:00:47 +0200
+
+linux (4.17~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Romain Perier]
+ * Update patch debian/wireless-disable-regulatory.db-direct-loading.patch to
+ fix a FTBFS with undefined symbol reg_query_regdb_wmm() that is used by
+ wireless driver iwlwifi.
+
+ [ Luca Boccassi ]
+ * Disable building linux-doc-* and tools documentation when the "nodoc"
+ build profile is used.
+ * Add new "pkg.linux.nosource" build profile that disables building the
+ linux-source-* package, and a "[packages] source" option for the
+ debian/config/defines file that defines the default behaviour.
+ * Remove redundant "Dual License" from debian/copyright to fix Lintian
+ source warning "space-in-std-shortname-in-dep5-copyright".
+ * Add missing Copyright line to debian/copyright to fix Lintian source
+ warning "missing-field-in-dep5-copyright".
+
+ [ John Paul Adrian Glaubitz ]
+ * [m68k] Enable CONFIG_PATA_GAYLE as module.
+
+ [ Ben Hutchings ]
+ * Fix building only versioned tools packages
+ * Reclassify lockdep packages as unversioned tools
+ * [hppa/parisc64-smp] IB: Fix RDMA_RXE and INFINIBAND_RDMAVT dependencies for
+ DMA_VIRT_OPS
+ * rtl8192se: Fix warning introduced by "firmware: Remove redundant log
+ messages from drivers"
+ * SCSI: Enable SCSI_MQ_DEFAULT. This can be reverted using the kernel
+ parameter: scsi_mod.use_blk_mq=n
+ * dm: Enable DM_MQ_DEFAULT. This can be reverted using the kernel parameter:
+ dm_mod.use_blk_mq=n
+
+ [ Jason Duerstock ]
+ * [ia64] udeb: Add compress-modules package (fixes FTBFS)
+
+ [ YunQiang Su ]
+ * [mips{,64}el/loongson-3] enable NUMA, CPU_PM, CPU_IDLE, RS780_HPET,
+ REGULATOR. (Closes: #898521).
+ * [mips{,64}r6{,el}] use boston as the target, and enable MIPS_CPS.
+ Add a patch to disable uImage generation to avoid depend on u-boot-tools.
+ Fix typo the EL's flavor names in installer: not same within defines
+ Malta is never used for r6. (Closes: #898523)
+ Boston also requires relocation table size >= 0x00121000.
+
+ [ Vagrant Cascadian ]
+ * [armhf] Update mtd-modules: Replace pxa3xx_nand with marvell_nand.
+
+ [ Hideki Yamane ]
+ * Improve battery life on laptops (Closes: #898629)
+ Thanks to Hans de Goede <hdegoede@redhat.com>
+ - ATA: A new SATA link-powermanagement-policy will be the default on all
+ Intel mobile chipsets. This can be reverted by passing
+ "ahci.mobile_lpm_policy=0" on the kernel commandline.
+ - sound: Enable Intel HDA codec power-saving by default with a 1 second
+ timeout. This can be overridden by passing "snd_hda_intel.power_save=0"
+ on the kernel commandline (0 is previously default).
+ - BlueTooth: Enable USB autosuspend for Bluetooth USB devices by default.
+ This can be disabled by passing "btusb.enable_autosuspend=n" on the
+ kernel commandline.
+
+ [ Bastian Blank ]
+ * [cloud-amd64] Disable some filesystems.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 29 May 2018 09:54:12 +0100
+
+linux (4.17~rc3-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [amd64] Drop our patch "Don't WARN about expected W+X pages on Xen"; the
+ problem appears to have been fixed upstream
+ * Drop our patch "Kbuild: kconfig: Verbose version of --listnewconfig";
+ listnewconfig now shows symbol values by default
+ * debian/rules.real: Stop enabling verbose output for listnewconfig target
+ * Documentation: typec.rst: Use literal-block element with ascii art
+ * Documentation: Update references to drivers/base/firmware_class.c
+ * [armhf] Enable MTD_NAND_MARVELL as module, replacing MTD_NAND_PXA3xx
+ * linux-kbuild: Update genksyms makefile to run flex and bison
+ * Add support for building only versioned tools packages
+ * Change generation of linux-doc, linux-source, linux-support package names
+
+ [ Luca Boccassi ]
+ * Build-Dep on libelf-dev even for nopython/notools builds to fix FTBFS,
+ needed when CONFIG_STACK_VALIDATION and CONFIG_UNWINDER_ORC are enabled.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 30 Apr 2018 00:13:06 +0100
+
+linux (4.16.16-2) unstable; urgency=medium
+
+ * [powerpc*] Ignore further ABI changes in cxl.
+ * [ia64] Add compress-modules udeb.
+
+ -- Bastian Blank <waldi@debian.org> Fri, 22 Jun 2018 11:50:22 +0200
+
+linux (4.16.16-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.13
+ - [mips*] c-r4k: Fix data corruption related to cache coherence
+ - [mips*] ptrace: Expose FIR register through FP regset
+ - [mips*] Fix ptrace(2) PTRACE_PEEKUSR and PTRACE_POKEUSR accesses to o32
+ FGRs
+ - affs_lookup(): close a race with affs_remove_link()
+ - fix breakage caused by d_find_alias() semantics change
+ - fs: don't scan the inode cache before SB_BORN is set
+ - aio: fix io_destroy(2) vs. lookup_ioctx() race
+ - Btrfs: fix error handling in btrfs_truncate()
+ - ALSA: timer: Fix pause event notification
+ - do d_instantiate/unlock_new_inode combinations safely
+ - mmc: block: propagate correct returned value in mmc_rpmb_ioctl
+ - mmc: sdhci-iproc: remove hard coded mmc cap 1.8v
+ - mmc: sdhci-iproc: fix 32bit writes for TRANSFER_MODE register
+ - mmc: sdhci-iproc: add SDHCI_QUIRK2_HOST_OFF_CARD_ON for cygnus
+ - ahci: Add PCI ID for Cannon Lake PCH-LP AHCI
+ - libata: Blacklist some Sandisk SSDs for NCQ
+ - libata: blacklist Micron 500IT SSD with MU01 firmware
+ - xen-swiotlb: fix the check condition for xen_swiotlb_free_coherent
+ - drm/vmwgfx: Fix 32-bit VMW_PORT_HB_[IN|OUT] macros
+ - [arm64] lse: Add early clobbers to some input/output asm operands
+ - [arm64] export tishift functions to modules
+ - [powerpc*] 64s: Clear PCR on boot
+ - IB/hfi1: Use after free race condition in send context error path
+ - IB/umem: Use the correct mm during ib_umem_release
+ - sr: pass down correctly sized SCSI sense buffer (CVE-2018-11506)
+ - bcma: fix buffer size caused crash in bcma_core_mips_print_irq()
+ - idr: fix invalid ptr dereference on item delete
+ - Revert "ipc/shm: Fix shmat mmap nil-page protection"
+ - ipc/shm: fix shmat() nil address after round-down when remapping
+ - mm/kasan: don't vfree() nonexistent vm_area
+ - kasan: free allocated shadow memory on MEM_CANCEL_ONLINE
+ - kasan: fix memory hotplug during boot
+ - kernel/sys.c: fix potential Spectre v1 issue
+ - PM / core: Fix direct_complete handling for devices with no callbacks
+ - KVM/VMX: Expose SSBD properly to guests
+ - KVM: s390: vsie: fix < 8k check for the itdba
+ - KVM: x86: Update cpuid properly when CR4.OSXAVE or CR4.PKE is changed
+ - kvm: x86: IA32_ARCH_CAPABILITIES is always supported
+ - x86/kvm: fix LAPIC timer drift when guest uses periodic mode
+ - [armhf] dts: sun4i: Fix incorrect clocks for displays
+ - sh: fix debug trap failure to process signals before return to user
+ - firmware: dmi_scan: Fix UUID length safety check
+ - nvme: don't send keep-alives to the discovery controller
+ - Btrfs: clean up resources during umount after trans is aborted
+ - Btrfs: fix loss of prealloc extents past i_size after fsync log replay
+ - x86/pgtable: Don't set huge PUD/PMD on non-leaf entries
+ - x86/mm: Do not forbid _PAGE_RW before init for __ro_after_init
+ - bnxt_en: Ignore src port field in decap filter nodes
+ - nvme: expand nvmf_check_if_ready checks
+ - fs/proc/proc_sysctl.c: fix potential page fault while unregistering
+ sysctl table
+ - kasan: fix invalid-free test crashing the kernel
+ - kasan, slub: fix handling of kasan_slab_free hook
+ - swap: divide-by-zero when zero length swap file on ssd
+ - z3fold: fix memory leak
+ - sr: get/drop reference to device in revalidate and check_events
+ - Force log to disk before reading the AGF during a fstrim
+ - cpufreq: CPPC: Initialize shared perf capabilities of CPUs
+ - powerpc/fscr: Enable interrupts earlier before calling get_user()
+ - perf tools: Fix perf builds with clang support
+ - perf clang: Add support for recent clang versions
+ - dp83640: Ensure against premature access to PHY registers after reset
+ - ibmvnic: Zero used TX descriptor counter on reset
+ - genirq/affinity: Don't return with empty affinity masks on error
+ - mm/ksm: fix interaction with THP
+ - mm: fix races between address_space dereference and free in
+ page_evicatable
+ - mm: thp: fix potential clearing to referenced flag in
+ page_idle_clear_pte_refs_one()
+ - Btrfs: bail out on error during replay_dir_deletes
+ - Btrfs: fix NULL pointer dereference in log_dir_items
+ - btrfs: Fix possible softlock on single core machines
+ - IB/rxe: Fix for oops in rxe_register_device on ppc64le arch
+ - ocfs2/dlm: don't handle migrate lockres if already in shutdown
+ - [powerpc*] 64s: Fix restore of AMOR on POWER9 after deep sleep
+ - sched/rt: Fix rq->clock_update_flags < RQCF_ACT_SKIP warning
+ - x86/mm: Fix bogus warning during EFI bootup, use boot_cpu_has() instead
+ of this_cpu_has() in build_cr3_noflush()
+ - KVM: VMX: raise internal error for exception during invalid protected
+ mode state
+ - lan78xx: Connect phy early
+ - fscache: Fix hanging wait on page discarded by writeback
+ - dmaengine: rcar-dmac: Fix too early/late system suspend/resume callbacks
+ - [sparc64] Make atomic_xchg() an inline function rather than a macro.
+ - riscv/spinlock: Strengthen implementations with fences
+ - platform/x86: dell-smbios: Fix memory leaks in build_tokens_sysfs()
+ - net: bgmac: Fix endian access in bgmac_dma_tx_ring_free()
+ - net: bgmac: Correctly annotate register space
+ - bnxt_en: fix clear flags in ethtool reset handling
+ - [powerpc*] 64s: sreset panic if there is no debugger or crash dump handlers
+ - btrfs: tests/qgroup: Fix wrong tree backref level
+ - Btrfs: fix copy_items() return value when logging an inode
+ - btrfs: fix lockdep splat in btrfs_alloc_subvolume_writers
+ - btrfs: qgroup: Fix root item corruption when multiple same source
+ snapshots are created with quota enabled
+ - rxrpc: Fix resend event time calculation
+ - rxrpc: Fix Tx ring annotation after initial Tx failure
+ - rxrpc: Don't treat call aborts as conn aborts
+ - xen/acpi: off by one in read_acpi_id()
+ - drivers: macintosh: rack-meter: really fix bogus memsets
+ - ACPI: acpi_pad: Fix memory leak in power saving threads
+ - powerpc/mpic: Check if cpu_possible() in mpic_physmask()
+ - ieee802154: ca8210: fix uninitialised data read
+ - ath10k: advertize beacon_int_min_gcd
+ - iommu/amd: Take into account that alloc_dev_data() may return NULL
+ - intel_th: Use correct method of finding hub
+ - [m68k] set dma and coherent masks for platform FEC ethernets
+ - iwlwifi: mvm: check if mac80211_queue is valid in iwl_mvm_disable_txq
+ - iwlwifi: mvm: take RCU lock before dereferencing
+ - net/mlx5e: Move all TX timeout logic to be under state lock
+ - parisc/pci: Switch LBA PCI bus from Hard Fail to Soft Fail mode
+ - perf mmap: Fix accessing unmapped mmap in perf_mmap__read_done()
+ - hwmon: (nct6775) Fix writing pwmX_mode
+ - mt76x2: fix possible NULL pointer dereferencing in mt76x2_tx()
+ - mt76x2: fix warning in ieee80211_get_key_rx_seq()
+ - [powerpc] perf: Prevent kernel address leak to userspace via BHRB buffer
+ - [powerpc] perf: Fix kernel address leak via sampling registers
+ - rsi: fix kernel panic observed on 64bit machine
+ - tools/thermal: tmon: fix for segfault
+ - selftests: Print the test we're running to /dev/kmsg
+ - i40e: hold the RTNL lock while changing interrupt schemes
+ - net/mlx5: Protect from command bit overflow
+ - watchdog: davinci_wdt: fix error handling in davinci_wdt_probe()
+ - net: hns3: fix for the wrong shift problem in hns3_set_txbd_baseinfo
+ - net: hns3: fix for returning wrong value problem in
+ hns3_get_rss_indir_size
+ - net: hns3: fix for returning wrong value problem in hns3_get_rss_key_size
+ - net: qualcomm: rmnet: check for null ep to avoid null pointer dereference
+ - ath10k: Fix kernel panic while using worker (ath10k_sta_rc_update_wk)
+ - nvme_fc: fix abort race on teardown with lld reject
+ - nvme-pci: disable APST for Samsung NVMe SSD 960 EVO + ASUS PRIME Z370-A
+ - ath9k: fix crash in spectral scan
+ - btrfs: fix null pointer deref when target device is missing
+ - cxgb4: Setup FW queues before registering netdev
+ - hv_netvsc: Fix the return status in RX path
+ - ima: Fix Kconfig to select TPM 2.0 CRB interface
+ - ima: Fallback to the builtin hash algorithm
+ - watchdog: aspeed: Allow configuring for alternate boot
+ - gfs2: Check for the end of metadata in punch_hole
+ - virtio-net: Fix operstate for virtio when no VIRTIO_NET_F_STATUS
+ - [armhf] dts: socfpga: fix GIC PPI warning
+ - ima: clear IMA_HASH
+ - ext4: don't complain about incorrect features when probing
+ - drm/vmwgfx: Unpin the screen object backup buffer when not used
+ - iommu/mediatek: Fix protect memory setting
+ - cpufreq: cppc_cpufreq: Fix cppc_cpufreq_init() failure path
+ - firmware: fix checking for return values for fw_add_devm_name()
+ - IB/mlx5: Set the default active rate and width to QDR and 4X
+ - zorro: Set up z->dev.dma_mask for the DMA API
+ - bcache: quit dc->writeback_thread when BCACHE_DEV_DETACHING is set
+ - remoteproc: imx_rproc: Fix an error handling path in 'imx_rproc_probe()'
+ - bcache: fix cached_dev->count usage for bch_cache_set_error()
+ - ACPICA: Events: add a return on failure from acpi_hw_register_read
+ - ACPICA: Fix memory leak on unusual memory leak
+ - bcache: stop dc->writeback_rate_update properly
+ - ACPICA: acpi: acpica: fix acpi operand cache leak in nseval.c
+ - cxgb4: Fix queue free path of ULD drivers
+ - i2c: mv64xxx: Apply errata delay only in standard mode
+ - KVM: lapic: stop advertising DIRECTED_EOI when in-kernel IOAPIC is in use
+ - perf top: Fix top.c[all] all-graph config option reading
+ - perf stat: Fix core dump when flag T is used
+ - IB/core: Honor port_num while resolving GID for IB link layer
+ - drm/amdkfd: add missing include of mm.h
+ - coresight: Use %px to print pcsr instead of %p
+ - ibmvnic: Fix reset return from closed state
+ - regulator: gpio: Fix some error handling paths in 'gpio_regulator_probe()'
+ - spi: bcm-qspi: fIX some error handling paths
+ - net/smc: pay attention to MAX_ORDER for CQ entries
+ - MIPS: ath79: Fix AR724X_PLL_REG_PCIE_CONFIG offset
+ - powerpc/vas: Fix cleanup when VAS is not configured
+ - PCI: Restore config space on runtime resume despite being unbound
+ - watchdog: sprd_wdt: Fix error handling in sprd_wdt_enable()
+ - watchdog: dw: RMW the control register
+ - watchdog: aspeed: Fix translation of reset mode to ctrl register
+ - ipmi_ssif: Fix kernel panic at msg_done_handler
+ - [arm64] drm/meson: Fix some error handling paths in 'meson_drv_bind_master()'
+ - [arm64] drm/meson: Fix an un-handled error path in 'meson_drv_bind_master()'
+ - [powerpc] powernv/npu: Fix deadlock in mmio_invalidate()
+ - f2fs: flush cp pack except cp pack 2 page at first
+ - cxl: Check if PSL data-cache is available before issue flush request
+ - f2fs: fix to set KEEP_SIZE bit in f2fs_zero_range
+ - f2fs: fix to clear CP_TRIMMED_FLAG
+ - f2fs: fix to check extent cache in f2fs_drop_extent_tree
+ - perf/core: Fix installing cgroup events on CPU
+ - max17042: propagate of_node to power supply device
+ - perf/core: Fix perf_output_read_group()
+ - drm/panel: simple: Fix the bus format for the Ontat panel
+ - hwmon: (pmbus/max8688) Accept negative page register values
+ - hwmon: (pmbus/adm1275) Accept negative page register values
+ - [amd64] perf: Properly save/restore the PMU state in the NMI handler
+ - cdrom: do not call check_disk_change() inside cdrom_open()
+ - [armhf, arm64] efi: Only register page tables when they exist
+ - [amd64] perf: Fix large period handling on Broadwell CPUs
+ - [amd64] perf: Fix event update for auto-reload
+ - [arm64] dts: qcom: Fix SPI5 config on MSM8996
+ - [arm64] soc: qcom: wcnss_ctrl: Fix increment in NV upload
+ - gfs2: Fix fallocate chunk size
+ - [amd64] x86/devicetree: Initialize device tree before using it
+ - [amd64] x86/devicetree: Fix device IRQ settings in DT
+ - phy: rockchip-emmc: retry calpad busy trimming
+ - ALSA: vmaster: Propagate slave error
+ - phy: qcom-qmp: Fix phy pipe clock gating
+ - drm/bridge: sii902x: Retry status read after DDI I2C
+ - drm/amdgpu: Clean sdma wptr register when only enable wptr polling
+ - tools: hv: fix compiler warnings about major/target_fname
+ - block: null_blk: fix 'Invalid parameters' when loading module
+ - dmaengine: pl330: fix a race condition in case of threaded irqs
+ - [powerpc] mm/slice: Remove intermediate bitmap copy
+ - [powerpc] mm/slice: create header files dedicated to slices
+ - [powerpc] mm/slice: Enhance for supporting PPC32
+ - [powerpc] mm/slice: Fix hugepage allocation at hint address on 8xx
+ - dmaengine: rcar-dmac: Check the done lists in rcar_dmac_chan_get_residue()
+ - enic: enable rq before updating rq descriptors
+ - watchdog: asm9260_wdt: fix error handling in asm9260_wdt_probe()
+ - hwrng: stm32 - add reset during probe
+ - pinctrl: devicetree: Fix dt_to_map_one_config handling of hogs
+ - pinctrl: artpec6: dt: add missing pin group uart5nocts
+ - vfio-ccw: fence off transport mode
+ - dmaengine: qcom: bam_dma: get num-channels and num-ees from dt
+ - drm: omapdrm: dss: Move initialization code from component bind to probe
+ - [armhf] dts: dra71-evm: Correct evm_sd regulator max voltage
+ - drm/amdgpu: disable GFX ring and disable PQ wptr in hw_fini
+ - drm/amdgpu: adjust timeout for ib_ring_tests(v2)
+ - ibmvnic: Allocate statistics buffers during probe
+ - [armhf, arm64] net: stmmac: ensure that the device has released ownership
+ before reading data
+ - [armhf, arm64] net: stmmac: ensure that the MSS desc is the last desc to
+ set the own bit
+ - cpufreq: Reorder cpufreq_online() error code path
+ - dpaa_eth: fix SG mapping
+ - PCI: Add function 1 DMA alias quirk for Marvell 88SE9220
+ - udf: Provide saner default for invalid uid / gid
+ - ixgbe: prevent ptp_rx_hang from running when in FILTER_ALL mode
+ - sh_eth: fix TSU init on SH7734/R8A7740
+ - power: supply: ltc2941-battery-gauge: Fix temperature units
+ - [armhf] dts: bcm283x: Fix probing of bcm2835-i2s
+ - [armhf] dts: bcm283x: Fix pin function of JTAG pins
+ - PCMCIA / PM: Avoid noirq suspend aborts during suspend-to-idle
+ - hwrng: bcm2835 - Handle deferred clock properly
+ - audit: return on memory error to avoid null pointer dereference
+ - [armhf, arm64] net: stmmac: call correct function in
+ stmmac_mac_config_rx_queues_routing()
+ - rcu: Call touch_nmi_watchdog() while printing stall warnings
+ - pinctrl: sh-pfc: r8a7796: Fix MOD_SEL register pin assignment for SSI
+ pins group
+ - dt-bindings: display: msm/dsi: Fix the PHY regulator supply props
+ - drm/amd/display: Set vsc pack revision when DPCD revision is >= 1.2
+ - dpaa_eth: fix pause capability advertisement logic
+ - [mips*/octeon] Fix logging messages with spurious periods after newlines
+ - [arm64] soc: renesas: r8a77970-sysc: fix power area parents
+ - [armhf] drm/rockchip: Respect page offset for PRIME mmap calls
+ - x86/apic: Set up through-local-APIC mode on the boot CPU if 'noapic'
+ specified
+ - perf report: Fix wrong jump arrow
+ - perf tests: Use arch__compare_symbol_names to compare symbols
+ - perf report: Fix memory corruption in --branch-history mode
+ --branch-history
+ - perf tests: Fix dwarf unwind for stripped binaries
+ - selftests/net: fixes psock_fanout eBPF test case
+ - drm/vblank: Data type fixes for 64-bit vblank sequences.
+ - netlabel: If PF_INET6, check sk_buff ip header version
+ - drm: rcar-du: lvds: Fix LVDS startup on R-Car Gen3
+ - drm: rcar-du: lvds: Fix LVDS startup on R-Car Gen2
+ - selftests: Add FIB onlink tests
+ - regmap: Correct comparison in regmap_cached
+ - soc: amlogic: meson-gx-pwrc-vpu: fix error on shutdown when domain is
+ powered off
+ - i40e: Add delay after EMP reset for firmware to recover
+ - [armhf] dts: imx7d: cl-som-imx7: fix pinctrl_enet
+ - [armhf] dts: porter: Fix HDMI output routing
+ - regulator: of: Add a missing 'of_node_put()' in an error handling path of
+ 'of_regulator_match()'
+ - pinctrl: msm: Use dynamic GPIO numbering
+ - pinctrl: mcp23s08: spi: Fix regmap debugfs entries
+ - kdb: make "mdr" command repeat
+ - drm/vmwgfx: Set dmabuf_size when vmw_dmabuf_init is successful
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.14
+ - objtool: Support GCC 8's cold subfunctions
+ - objtool: Support GCC 8 switch tables
+ - objtool: Detect RIP-relative switch table references
+ - objtool: Detect RIP-relative switch table references, part 2
+ - objtool: Fix "noreturn" detection for recursive sibling calls
+ - x86/mce/AMD: Carve out SMCA get_block_address() code
+ - x86/MCE/AMD: Cache SMCA MISC block addresses
+ - drm/vmwgfx: Use kasprintf
+ - drm/vmwgfx: Fix host logging / guestinfo reading error paths
+ - Revert "pinctrl: msm: Use dynamic GPIO numbering"
+ - xfs: convert XFS_AGFL_SIZE to a helper function
+ - xfs: detect agfl count corruption and reset agfl
+ - Input: synaptics - Lenovo Carbon X1 Gen5 (2017) devices should use RMI
+ - Input: synaptics - Lenovo Thinkpad X1 Carbon G5 (2017) with Elantech trackpoints should use RMI
+ - Input: synaptics - add Intertouch support on X1 Carbon 6th and X280
+ - Input: synaptics - add Lenovo 80 series ids to SMBus
+ - Input: elan_i2c_smbus - fix corrupted stack
+ - tracing: Fix crash when freeing instances with event triggers
+ - tracing: Make the snapshot trigger work with instances
+ - nvme: fix extended data LBA supported setting
+ - selinux: KASAN: slab-out-of-bounds in xattr_getsecurity
+ - cfg80211: further limit wiphy names to 64 bytes
+ - drm/amd/powerplay: Fix enum mismatch
+ - rtlwifi: rtl8192cu: Remove variable self-assignment in rf.c
+ - iio: ad7793: implement IIO_CHAN_INFO_SAMP_FREQ
+ - iio: hid-sensor-trigger: Fix sometimes not powering up the sensor after resume
+ - iio:buffer: make length types match kfifo types
+ - iio:kfifo_buf: check for uint overflow
+ - iio: adc: stm32-dfsdm: fix successive oversampling settings
+ - iio: adc: stm32-dfsdm: fix sample rate for div2 spi clock
+ - iio: adc: at91-sama5d2_adc: fix channel configuration for differential channels
+ - iio: adc: select buffer for at91-sama5d2_adc
+ - MIPS: lantiq: gphy: Drop reboot/remove reset asserts
+ - MIPS: ptrace: Fix PTRACE_PEEKUSR requests for 64-bit FGRs
+ - MIPS: prctl: Disallow FRE without FR with PR_SET_FP_MODE requests
+ - scsi: scsi_transport_srp: Fix shost to rport translation
+ - stm class: Use vmalloc for the master map
+ - hwtracing: stm: fix build error on some arches
+ - IB/core: Fix error code for invalid GID entry
+ - mm/huge_memory.c: __split_huge_page() use atomic ClearPageDirty()
+ - Revert "rt2800: use TXOP_BACKOFF for probe frames"
+ - intel_th: Use correct device when freeing buffers
+ - drm/psr: Fix missed entry in PSR setup time table.
+ - drm/i915/lvds: Move acpi lid notification registration to registration phase
+ - drm/i915: Disable LVDS on Radiant P845
+ - fix io_destroy()/aio_complete() race
+ - mm: fix the NULL mapping case in __isolate_lru_page()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.15
+ - mmap: introduce sane default mmap limits
+ - mmap: relax file size limit for regular files
+ - netfilter: nf_flow_table: attach dst to skbs
+ - kconfig: Avoid format overflow warning from GCC 8.1
+ - be2net: Fix error detection logic for BE3
+ - bnx2x: use the right constant
+ - cls_flower: Fix incorrect idr release when failing to modify rule
+ - dccp: don't free ccid2_hc_tx_sock struct in dccp_disconnect()
+ - enic: set DMA mask to 47 bit
+ - ip6mr: only set ip6mr_table from setsockopt when ip6mr_new_table succeeds
+ - ip6_tunnel: remove magic mtu value 0xFFF8
+ - ipmr: properly check rhltable_init() return value
+ - ipv4: remove warning in ip_recv_error
+ - ipv6: omit traffic class when calculating flow hash
+ - isdn: eicon: fix a missing-check bug
+ - kcm: Fix use-after-free caused by clonned sockets
+ - l2tp: fix refcount leakage on PPPoL2TP sockets
+ - mlxsw: spectrum: Forbid creation of VLAN 1 over port/LAG
+ - netdev-FAQ: clarify DaveM's position for stable backports
+ - net: ethernet: davinci_emac: fix error handling in probe()
+ - net: ipv4: add missing RTA_TABLE to rtm_ipv4_policy
+ - net: metrics: add proper netlink validation
+ - net/packet: refine check for priv area size
+ - net: phy: broadcom: Fix bcm_write_exp()
+ - net: usb: cdc_mbim: add flag FLAG_SEND_ZLP
+ - packet: fix reserve calculation
+ - qed: Fix mask for physical address in ILT entry
+ - rtnetlink: validate attributes in do_setlink()
+ - sctp: not allow transport timeout value less than HZ/5 for hb_timer
+ - team: use netdev_features_t instead of u32
+ - vhost: synchronize IOTLB message with dev cleanup
+ - vrf: check the original netdevice for generating redirect
+ - ipv6: sr: fix memory OOB access in seg6_do_srh_encap/inline
+ - net: phy: broadcom: Fix auxiliary control register reads
+ - net-sysfs: Fix memory leak in XPS configuration
+ - virtio-net: correctly transmit XDP buff after linearizing
+ - virtio-net: fix leaking page for gso packet during mergeable XDP
+ - net/mlx4: Fix irq-unsafe spinlock usage
+ - net/mlx5e: When RXFCS is set, add FCS data into checksum calculation
+ - tun: Fix NULL pointer dereference in XDP redirect
+ - virtio-net: correctly check num_buf during err path
+ - net: dsa: b53: Fix for brcm tag issue in Cygnus SoC
+ - net : sched: cls_api: deal with egdev path only if needed
+ - virtio-net: correctly redirect linearized packet
+ - ip_tunnel: restore binding to ifaces with a large mtu
+ - net: netsec: reduce DMA mask to 40 bits
+ - vhost_net: flush batched heads before trying to busy polling
+ - PCI: hv: Do not wait forever on a device that has disappeared
+ - drm: set FMODE_UNSIGNED_OFFSET for drm files
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.16
+ - netfilter: nf_tables: fix NULL pointer dereference on nft_ct_helper_obj_dump()
+ - crypto: chelsio - request to HW should wrap
+ - blkdev_report_zones_ioctl(): Use vmalloc() to allocate large buffers
+ - af_key: Always verify length of provided sadb_key
+ - KVM: X86: Fix reserved bits check for MOV to CR3
+ - KVM: x86: introduce linear_{read,write}_system
+ - kvm: nVMX: Enforce cpl=0 for VMX instructions
+ - KVM: x86: pass kvm_vcpu to kvm_read_guest_virt and kvm_write_guest_virt_system
+ - staging: android: ion: Switch to pr_warn_once in ion_buffer_destroy
+ - NFC: pn533: don't send USB data off of the stack
+ - usbip: vhci_sysfs: fix potential Spectre v1
+ - usb-storage: Add support for FL_ALWAYS_SYNC flag in the UAS driver
+ - usb-storage: Add compatibility quirk flags for G-Technologies G-Drive
+ - Input: xpad - add GPD Win 2 Controller USB IDs
+ - phy: qcom-qusb2: Fix crash if nvmem cell not specified
+ - usb: core: message: remove extra endianness conversion in usb_set_isoch_delay
+ - usb: typec: wcove: Remove dependency on HW FSM
+ - usb: gadget: function: printer: avoid wrong list handling in printer_write()
+ - usb: gadget: udc: renesas_usb3: fix double phy_put()
+ - usb: gadget: udc: renesas_usb3: should remove debugfs
+ - usb: gadget: udc: renesas_usb3: should call pm_runtime_enable() before add udc
+ - usb: gadget: udc: renesas_usb3: should call devm_phy_get() before add udc
+ - usb: gadget: udc: renesas_usb3: should fail if devm_phy_get() returns error
+ - usb: gadget: udc: renesas_usb3: disable the controller's irqs for reconnecting
+ - serial: sh-sci: Stop using printk format %pCr
+ - tty/serial: atmel: use port->name as name in request_irq()
+ - serial: samsung: fix maxburst parameter for DMA transactions
+ - serial: 8250: omap: Fix idling of clocks for unused uarts
+ - vmw_balloon: fixing double free when batching mode is off
+ - tty: pl011: Avoid spuriously stuck-off interrupts
+ - kvm: x86: use correct privilege level for sgdt/sidt/fxsave/fxrstor access
+ - Input: goodix - add new ACPI id for GPD Win 2 touch screen
+ - Input: elan_i2c - add ELAN0612 (Lenovo v330 14IKB) ACPI ID
+ - crypto: caam - strip input zeros from RSA input buffer
+ - crypto: caam - fix DMA mapping dir for generated IV
+ - crypto: caam - fix IV DMA mapping and updating
+ - crypto: caam/qi - fix IV DMA mapping and updating
+ - crypto: caam - fix size of RSA prime factor q
+ - crypto: cavium - Fix fallout from CONFIG_VMAP_STACK
+ - crypto: cavium - Limit result reading attempts
+ - crypto: vmx - Remove overly verbose printk from AES init routines
+ - crypto: vmx - Remove overly verbose printk from AES XTS init
+ - crypto: omap-sham - fix memleak
+
+ [ Vagrant Cascadian ]
+ * [armhf] Enable MFD_AC100 and RTC_DRV_AC100, used in allwinner A80/A83t
+ systems.
+
+ [ Yves-Alexis Perez ]
+ * hardening: enable FORTIFY_SOURCE, disable HARDENED_USERCOPY_FALLBACK
+ * [x86] hardening: enable REFCOUNT_FULL
+
+ [ Ben Hutchings ]
+ * ext4: Fix duplicate softdep fields in module info
+
+ [ Bastian Blank ]
+ * hv_netvsc: Fix a network regression after ifdown/ifup
+ * [rt] Update to 4.16.15-rt7.
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable configuration options used in Firefly-RK3399:
+ DRM_ROCKCHIP, ROCKCHIP_ANALOGIX_DP, ROCKCHIP_DW_HDMI,
+ ROCKCHIP_DW_MIPI_DSI, ROCKCHIP_SARADC, ROCKCHIP_IOMMU, ROCKCHIP_EFUSE,
+ PHY_ROCKCHIP_TYPEC, ROCKCHIP_THERMAL (Closes: #901159).
+ Thanks to Heinrich Schuchardt.
+ * [arm64,armhf] Add device-tree to support Raspberry PI 3b+.
+
+ -- Bastian Blank <waldi@debian.org> Tue, 19 Jun 2018 20:23:54 +0200
+
+linux (4.16.12-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.6
+ - Revert "pinctrl: intel: Initialize GPIO properly when used through
+ irqchip"
+ - [armhf] drm: bridge: dw-hdmi: Fix overflow workaround for Amlogic Meson
+ GX SoCs
+ - i40e: Fix attach VF to VM issue
+ - tpm: cmd_ready command can be issued only after granting locality
+ - tpm: tpm-interface: fix tpm_transmit/_cmd kdoc
+ - tpm: add retry logic
+ - Revert "ath10k: send (re)assoc peer command when NSS changed"
+ - bonding: do not set slave_dev npinfo before slave_enable_netpoll in
+ bond_enslave
+ - docs: ip-sysctl.txt: fix name of some ipv6 variables
+ - ipv6: add RTA_TABLE and RTA_PREFSRC to rtm_ipv6_policy
+ - ipv6: sr: fix NULL pointer dereference in seg6_do_srh_encap()- v4 pkts
+ - KEYS: DNS: limit the length of option strings
+ - l2tp: check sockaddr length in pppol2tp_connect()
+ - llc: delete timers synchronously in llc_sk_free()
+ - net: af_packet: fix race in PACKET_{R|T}X_RING
+ - net: fix deadlock while clearing neighbor proxy table
+ - [arm64,armhf] net: mvpp2: Fix DMA address mask size
+ - net: qmi_wwan: add Wistron Neweb D19Q1
+ - net/smc: fix shutdown in state SMC_LISTEN
+ - net: stmmac: Disable ACS Feature for GMAC >= 4
+ - packet: fix bitfield update race
+ - pppoe: check sockaddr length in pppoe_connect()
+ - Revert "macsec: missing dev_put() on error in macsec_newlink()"
+ - sctp: do not check port in sctp_inet6_cmp_addr
+ - strparser: Do not call mod_delayed_work with a timeout of LONG_MAX
+ - strparser: Fix incorrect strp->need_bytes value.
+ - tcp: clear tp->packets_out when purging write queue
+ - tcp: don't read out-of-bounds opsize
+ - tcp: md5: reject TCP_MD5SIG or TCP_MD5SIG_EXT on established sockets
+ - team: avoid adding twice the same option to the event list
+ - team: fix netconsole setup over team
+ - tipc: add policy for TIPC_NLA_NET_ADDR
+ - vlan: Fix reading memory beyond skb->tail in skb_vlan_tagged_multi
+ - vmxnet3: fix incorrect dereference when rxvlan is disabled
+ - [amd64,arm64] amd-xgbe: Add pre/post auto-negotiation phy hooks
+ - [amd64,arm64] amd-xgbe: Improve KR auto-negotiation and training
+ - [amd64,arm64] amd-xgbe: Only use the SFP supported transceiver signals
+ - net: sched: ife: signal not finding metaid
+ - net: sched: ife: handle malformed tlv length
+ - net: sched: ife: check on metadata length
+ - l2tp: hold reference on tunnels in netlink dumps
+ - l2tp: hold reference on tunnels printed in pppol2tp proc file
+ - l2tp: hold reference on tunnels printed in l2tp/tunnels debugfs file
+ - l2tp: fix {pppol2tp, l2tp_dfs}_seq_stop() in case of seq_file overflow
+ - llc: hold llc_sap before release_sock()
+ - llc: fix NULL pointer deref for SOCK_ZAPPED
+ - [s390x] qeth: fix error handling in adapter command callbacks
+ - [s390x] qeth: avoid control IO completion stalls
+ - [s390x] qeth: handle failure on workqueue creation
+ - [armhf] net: ethernet: ti: cpsw: fix tx vlan priority mapping
+ - net: validate attribute sizes in neigh_dump_table()
+ - bnxt_en: Fix memory fault in bnxt_ethtool_init()
+ - virtio-net: add missing virtqueue kick when flushing packets
+ - VSOCK: make af_vsock.ko removable again
+ - net: aquantia: Regression on reset with 1.x firmware
+ - tun: fix vlan packet truncation
+ - net: aquantia: oops when shutdown on already stopped device
+ - virtio_net: split out ctrl buffer
+ - virtio_net: fix adding vids on big-endian
+ - Revert "mm/hmm: fix header file if/else/endif maze"
+ - commoncap: Handle memory allocation failure.
+ - scsi: mptsas: Disable WRITE SAME
+ - cdrom: information leak in cdrom_ioctl_media_changed() (CVE-2018-10940)
+ - fsnotify: Fix fsnotify_mark_connector race
+ - [m68k] mac: Don't remap SWIM MMIO region
+ - [m68k] block/swim: Check drive type
+ - [m68k] block/swim: Don't log an error message for an invalid ioctl
+ - [m68k] block/swim: Remove extra put_disk() call from error path
+ - [m68k] block/swim: Rename macros to avoid inconsistent inverted logic
+ - [m68k] block/swim: Select appropriate drive on device open
+ - [m68k] block/swim: Fix array bounds check
+ - [m68k] block/swim: Fix IO error at end of medium
+ - tracing: Fix missing tab for hwlat_detector print format
+ - hwmon: (k10temp) Add temperature offset for Ryzen 2700X
+ - hwmon: (k10temp) Add support for AMD Ryzen w/ Vega graphics
+ - [s390x] cio: update chpid descriptor after resource accessibility event
+ - [s390x] dasd: fix IO error for newly defined devices
+ - [s390x] uprobes: implement arch_uretprobe_is_alive()
+ - [s390x] cpum_cf: rename IBM z13/z14 counter names
+ - kprobes: Fix random address output of blacklist file
+ - ACPI / video: Only default only_lcd to true on Win8-ready _desktops_
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.7
+ - ext4: prevent right-shifting extents beyond EXT_MAX_BLOCKS
+ - ext4: set h_journal if there is a failure starting a reserved handle
+ - ext4: add MODULE_SOFTDEP to ensure crc32c is included in the initramfs
+ - random: set up the NUMA crng instances after the CRNG is fully
+ initialized
+ - random: fix possible sleeping allocation from irq context
+ - random: rate limit unseeded randomness warnings
+ - usbip: usbip_event: fix to not print kernel pointer address
+ - usbip: usbip_host: fix to hold parent lock for device_attach() calls
+ - usbip: vhci_hcd: Fix usb device and sockfd leaks
+ - usbip: vhci_hcd: check rhport before using in vhci_hub_control()
+ - Revert "xhci: plat: Register shutdown for xhci_plat"
+ - xhci: Fix USB ports for Dell Inspiron 5775
+ - USB: serial: simple: add libtransistor console
+ - USB: serial: ftdi_sio: use jtag quirk for Arrow USB Blaster
+ - USB: serial: cp210x: add ID for NI USB serial console
+ - [arm64] serial: mvebu-uart: Fix local flags handling on termios update
+ - usb: typec: ucsi: Increase command completion timeout value
+ - usb: core: Add quirk for HP v222w 16GB Mini
+ - USB: Increment wakeup count on remote wakeup.
+ - ALSA: usb-audio: Skip broken EU on Dell dock USB-audio
+ - virtio: add ability to iterate over vqs
+ - virtio_console: don't tie bufs to a vq
+ - virtio_console: free buffers after reset
+ - virtio_console: drop custom control queue cleanup
+ - virtio_console: move removal code
+ - virtio_console: reset on out of memory
+ - drm/virtio: fix vq wait_event condition
+ - tty: Don't call panic() at tty_ldisc_init()
+ - tty: n_gsm: Fix long delays with control frame timeouts in ADM mode
+ - tty: n_gsm: Fix DLCI handling for ADM mode if debug & 2 is not set
+ - tty: Avoid possible error pointer dereference at tty_ldisc_restore().
+ - tty: Use __GFP_NOFAIL for tty_ldisc_get()
+ - ALSA: dice: fix OUI for TC group
+ - ALSA: dice: fix error path to destroy initialized stream data
+ - ALSA: hda - Skip jack and others for non-existing PCM streams
+ - ALSA: opl3: Hardening for potential Spectre v1
+ - ALSA: asihpi: Hardening for potential Spectre v1
+ - ALSA: hdspm: Hardening for potential Spectre v1
+ - ALSA: rme9652: Hardening for potential Spectre v1
+ - ALSA: control: Hardening for potential Spectre v1
+ - ALSA: pcm: Return negative delays from SNDRV_PCM_IOCTL_DELAY.
+ - ALSA: core: Report audio_tstamp in snd_pcm_sync_ptr
+ - ALSA: seq: oss: Fix unbalanced use lock for synth MIDI device
+ - ALSA: seq: oss: Hardening for potential Spectre v1
+ - ALSA: hda: Hardening for potential Spectre v1
+ - ALSA: hda/realtek - Add some fixes for ALC233
+ - ALSA: hda/realtek - Update ALC255 depop optimize
+ - ALSA: hda/realtek - change the location for one of two front mics
+ - mtd: spi-nor: cadence-quadspi: Fix page fault kernel panic
+ - mtd: cfi: cmdset_0001: Do not allow read/write to suspend erase block.
+ - mtd: cfi: cmdset_0001: Workaround Micron Erase suspend bug.
+ - mtd: cfi: cmdset_0002: Do not allow read/write to suspend erase block.
+ - mtd: rawnand: tango: Fix struct clk memory leak
+ - mtd: rawnand: marvell: fix the chip-select DT parsing logic
+ - kobject: don't use WARN for registration failures
+ - scsi: sd_zbc: Avoid that resetting a zone fails sporadically
+ - scsi: sd: Defer spinning up drive while SANITIZE is in progress
+ - blk-mq: start request gstate with gen 1
+ - bfq-iosched: ensure to clear bic/bfqq pointers when preparing request
+ - block: do not use interruptible wait anywhere
+ - [s390x] vfio: ccw: process ssch with interrupts disabled
+ - [arm64] PCI: aardvark: Fix logic in advk_pcie_{rd,wr}_conf()
+ - [arm64] PCI: aardvark: Set PIO_ADDR_LS correctly in advk_pcie_rd_conf()
+ - [arm64] PCI: aardvark: Use ISR1 instead of ISR0 interrupt in legacy irq
+ mode
+ - [arm64] PCI: aardvark: Fix PCIe Max Read Request Size setting
+ - [armhf,arm64] KVM: Close VMID generation race
+ - [powerpc*] mm: Flush cache on memory hot(un)plug
+ - [powerpc*] mce: Fix a bug where mce loops on memory UE.
+ - [powerpc*] powernv/npu: Do a PID GPU TLB flush when invalidating a large
+ address range
+ - crypto: drbg - set freed buffers to NULL
+ - libceph: un-backoff on tick when we have a authenticated session
+ - libceph: reschedule a tick in finish_hunting()
+ - libceph: validate con->state at the top of try_write()
+ - PCI / PM: Do not clear state_saved in pci_pm_freeze() when smart suspend
+ is set
+ - module: Fix display of wrong module .text address
+ - earlycon: Use a pointer table to fix __earlycon_table stride
+ - [powerpc*] cpufreq: powernv: Fix hardlockup due to synchronous smp_call
+ in timer interrupt
+ - [powerpc*] rtc: opal: Fix OPAL RTC driver OPAL_BUSY loops
+ - drm/edid: Reset more of the display info
+ - drm/amdgpu: set COMPUTE_PGM_RSRC1 for SGPR/VGPR clearing shaders
+ - [x86] drm/i915/fbdev: Enable late fbdev initial configuration
+ - [x86] drm/i915/audio: set minimum CD clock to twice the BCLK
+ - [x86] drm/i915: Enable display WA#1183 from its correct spot
+ - drm/amd/display: Fix deadlock when flushing irq
+ - drm/amd/display: Don't read EDID in atomic_check
+ - drm/amd/display: Disallow enabling CRTC without primary plane with FB
+ - objtool, perf: Fix GCC 8 -Wrestrict error
+ - [x86] ipc: Fix x32 version of shmid64_ds and msqid64_ds
+ - [x86] smpboot: Don't use mwait_play_dead() on AMD systems
+ - [x86] microcode/intel: Save microcode patch unconditionally
+ - [x86] microcode: Do not exit early from __reload_late()
+ - tick/sched: Do not mess with an enqueued hrtimer
+ - [x86] crypto: ccp - add check to get PSP master only when PSP is
+ detected
+ - [armhf,arm64] KVM: Add PSCI version selection API
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.8
+ - ACPI / button: make module loadable when booted in non-ACPI mode
+ - [arm64] Add work around for Arm Cortex-A55 Erratum 1024718
+ - ALSA: hda - Fix incorrect usage of IS_REACHABLE()
+ - ALSA: pcm: Check PCM state at xfern compat ioctl
+ - ALSA: seq: Fix races at MIDI encoding in snd_virmidi_output_trigger()
+ - ALSA: dice: fix kernel NULL pointer dereference due to invalid
+ calculation for array index
+ - ALSA: aloop: Mark paused device as inactive
+ - ALSA: aloop: Add missing cable lock to ctl API callbacks
+ - errseq: Always report a writeback error once
+ - tracepoint: Do not warn on ENOMEM
+ - scsi: target: Fix fortify_panic kernel exception
+ - Input: leds - fix out of bound access
+ - Input: atmel_mxt_ts - add touchpad button mapping for Samsung Chromebook
+ Pro
+ - swiotlb: fix inversed DMA_ATTR_NO_WARN test
+ - rtlwifi: cleanup 8723be ant_sel definition
+ - xfs: prevent creating negative-sized file via INSERT_RANGE
+ - RDMA/cxgb4: release hw resources on device removal
+ - RDMA/ucma: Allow resolving address w/o specifying source address
+ - RDMA/mlx5: Fix multiple NULL-ptr deref errors in rereg_mr flow
+ - RDMA/mlx4: Add missed RSS hash inner header flag
+ - RDMA/mlx5: Protect from shift operand overflow
+ - NET: usb: qmi_wwan: add support for ublox R410M PID 0x90b2
+ - IB/mlx5: Use unlimited rate when static rate is not supported
+ - infiniband: mlx5: fix build errors when INFINIBAND_USER_ACCESS=m
+ - IB/hfi1: Fix handling of FECN marked multicast packet
+ - IB/hfi1: Fix loss of BECN with AHG
+ - IB/hfi1: Fix NULL pointer dereference when invalid num_vls is used
+ - iw_cxgb4: Atomically flush per QP HW CQEs
+ - btrfs: Take trans lock before access running trans in check_delayed_ref
+ - [arm64,armhf] drm/vc4: Make sure vc4_bo_{inc,dec}_usecnt() calls are
+ balanced
+ - [x86] drm/vmwgfx: Fix a buffer object leak
+ - drm/bridge: vga-dac: Fix edid memory leak
+ - xhci: Fix use-after-free in xhci_free_virt_device
+ - USB: serial: visor: handle potential invalid device configuration
+ - [arm64,armhf] usb: dwc3: gadget: Fix list_del corruption in
+ dwc3_ep_dequeue
+ - USB: Accept bulk endpoints with 1024-byte maxpacket
+ - USB: serial: option: reimplement interface masking
+ - USB: serial: option: adding support for ublox R410M
+ - [arm64,armhf] usb: musb: host: fix potential NULL pointer dereference
+ - [arm64, armhf] usb: musb: trace: fix NULL pointer dereference in
+ musb_g_tx()
+ - [x86] platform/x86: asus-wireless: Fix NULL pointer dereference
+ - [x86] platform/x86: Kconfig: Fix dell-laptop dependency chain.
+ - [x86] KVM: remove APIC Timer periodic/oneshot spikes
+ - [x86] tsc: Always unregister clocksource_tsc_early
+ - [x86] tsc: Fix mark_tsc_unstable()
+ - [arm64] irqchip/qcom: Fix check for spurious interrupts
+ - clocksource: Allow clocksource_mark_unstable() on unregistered
+ clocksources
+ - clocksource: Initialize cs->wd_list
+ - clocksource: Consistent de-rate when marking unstable
+ - tracing: Fix bad use of igrab in trace_uprobe.c
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.9
+ - ipvs: fix rtnl_lock lockups caused by start_sync_thread
+ - netfilter: ebtables: don't attempt to allocate 0-sized compat array
+ - clk: ti: fix flag space conflict with clkctrl clocks
+ - rds: tcp: must use spin_lock_irq* and not spin_lock_bh with
+ rds_tcp_conn_lock
+ - crypto: af_alg - fix possible uninit-value in alg_bind()
+ - netlink: fix uninit-value in netlink_sendmsg
+ - net: fix rtnh_ok()
+ - net: initialize skb->peeked when cloning
+ - net: fix uninit-value in __hw_addr_add_ex()
+ - dccp: initialize ireq->ir_mark
+ - ipv4: fix uninit-value in ip_route_output_key_hash_rcu()
+ - soreuseport: initialise timewait reuseport field
+ - inetpeer: fix uninit-value in inet_getpeer
+ - bpf/tracing: fix a deadlock in perf_event_detach_bpf_prog
+ - memcg: fix per_node_info cleanup
+ - perf: Remove superfluous allocation error check
+ - i2c: dev: prevent ZERO_SIZE_PTR deref in i2cdev_ioctl_rdwr()
+ - tcp: fix TCP_REPAIR_QUEUE bound checking
+ - bdi: wake up concurrent wb_shutdown() callers.
+ - bdi: Fix use after free bug in debugfs_remove()
+ - bdi: Fix oops in wb_workfn()
+ - compat: fix 4-byte infoleak via uninitialized struct field
+ - gpioib: do not free unrequested descriptors
+ - gpio: fix error path in lineevent_create
+ - rfkill: gpio: fix memory leak in probe error path
+ - libata: Apply NOLPM quirk for SanDisk SD7UB3Q*G1001 SSDs
+ - dm integrity: use kvfree for kvmalloc'd memory
+ - tracing: Fix regex_match_front() to not over compare the test string
+ - mm: sections are not offlined during memory hotremove
+ - mm, oom: fix concurrent munlock and oom reaper unmap (CVE-2018-1000200)
+ - ceph: fix rsize/wsize capping in ceph_direct_read_write()
+ - can: kvaser_usb: Increase correct stats counter in kvaser_usb_rx_can_msg()
+ - [armhf,arm64] drm/vc4: Fix scaling of uni-planar formats
+ - drm/ttm: Use GFP_TRANSHUGE_LIGHT for allocating huge pages
+ - [x86] drm/i915: Fix drm:intel_enable_lvds ERROR message in kernel log
+ - [x86] drm/i915: Adjust eDP's logical vco in a reliable place.
+ - drm/nouveau: Fix deadlock in nv50_mstm_register_connector()
+ (Closes: #898825)
+ - drm/nouveau/ttm: don't dereference nvbo::cli, it can outlive client
+ - drm/atomic: Clean old_state/new_state in drm_atomic_state_default_clear()
+ - drm/atomic: Clean private obj old_state/new_state in
+ drm_atomic_state_default_clear()
+ - net: atm: Fix potential Spectre v1
+ - atm: zatm: Fix potential Spectre v1
+ - PCI / PM: Always check PME wakeup capability for runtime wakeup support
+ - PCI / PM: Check device_may_wakeup() in pci_enable_wake()
+ - cpufreq: schedutil: Avoid using invalid next_freq
+ - Revert "Bluetooth: btusb: Fix quirk for Atheros 1525/QCA6174"
+ - [x86] Bluetooth: btusb: Add Dell XPS 13 9360 to
+ btusb_needs_reset_resume_table
+ - Bluetooth: btusb: Only check needs_reset_resume DMI table for QCA rome
+ chipsets
+ - [armhf] thermal: exynos: Reading temperature makes sense only when TMU is
+ turned on
+ - [armhf] thermal: exynos: Propagate error value from tmu_read()
+ - nvme: add quirk to force medium priority for SQ creation
+ - nvme: Fix sync controller reset return
+ - smb3: directory sync should not return an error
+ - swiotlb: silent unwanted warning "buffer is full"
+ - sched/core: Fix possible Spectre-v1 indexing for sched_prio_to_weight[]
+ - sched/autogroup: Fix possible Spectre-v1 indexing for
+ sched_prio_to_weight[]
+ - tracing/uprobe_event: Fix strncpy corner case
+ - [x86] perf: Fix possible Spectre-v1 indexing for hw_perf_event cache_*
+ - [x86] perf/cstate: Fix possible Spectre-v1 indexing for pkg_msr
+ - [x86] perf/msr: Fix possible Spectre-v1 indexing in the MSR driver
+ - perf/core: Fix possible Spectre-v1 indexing for ->aux_pages[]
+ - [x86] perf: Fix possible Spectre-v1 indexing for x86_pmu::event_map()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.10
+ - 8139too: Use disable_irq_nosync() in rtl8139_poll_controller()
+ - bridge: check iface upper dev when setting master via ioctl
+ - dccp: fix tasklet usage
+ - ipv4: fix fnhe usage by non-cached routes
+ - ipv4: fix memory leaks in udp_sendmsg, ping_v4_sendmsg
+ - llc: better deal with too small mtu
+ - net: ethernet: sun: niu set correct packet size in skb
+ - [armhf] net: ethernet: ti: cpsw: fix packet leaking in dual_mac mode
+ - net/mlx4_en: Fix an error handling path in 'mlx4_en_init_netdev()'
+ - net/mlx4_en: Verify coalescing parameters are in range
+ - net/mlx5e: Err if asked to offload TC match on frag being first
+ - net/mlx5: E-Switch, Include VF RDMA stats in vport statistics
+ - net sched actions: fix refcnt leak in skbmod
+ - net_sched: fq: take care of throttled flows before reuse
+ - net: support compat 64-bit time in {s,g}etsockopt
+ - openvswitch: Don't swap table in nlattr_set() after OVS_ATTR_NESTED is
+ found
+ - qmi_wwan: do not steal interfaces from class drivers
+ - r8169: fix powering up RTL8168h
+ - rds: do not leak kernel memory to user land
+ - sctp: delay the authentication for the duplicated cookie-echo chunk
+ - sctp: fix the issue that the cookie-ack with auth can't get processed
+ - sctp: handle two v4 addrs comparison in sctp_inet6_cmp_addr
+ - sctp: remove sctp_chunk_put from fail_mark err path in
+ sctp_ulpevent_make_rcvmsg
+ - sctp: use the old asoc when making the cookie-ack chunk in dupcook_d
+ - tcp_bbr: fix to zero idle_restart only upon S/ACKed data
+ - tcp: ignore Fast Open on repair mode
+ - tg3: Fix vunmap() BUG_ON() triggered from tg3_free_consistent().
+ - bonding: do not allow rlb updates to invalid mac
+ - bonding: send learning packets for vlans on slave
+ - net: sched: fix error path in tcf_proto_create() when modules are not
+ configured
+ - net/mlx5e: TX, Use correct counter in dma_map error flow
+ - net/mlx5: Avoid cleaning flow steering table twice during error flow
+ - [x86] hv_netvsc: set master device
+ - ipv6: fix uninit-value in ip6_multipath_l3_keys()
+ - net/mlx5e: Allow offloading ipv4 header re-write for icmp
+ - udp: fix SO_BINDTODEVICE
+ - net/mlx5e: DCBNL fix min inline header size for dscp
+ - sctp: clear the new asoc's stream outcnt in sctp_stream_update
+ - tcp: restore autocorking
+ - tipc: fix one byte leak in tipc_sk_set_orig_addr()
+ - [x86] hv_netvsc: Fix net device attach on older Windows hosts
+ - ipv4: reset fnhe_mtu_locked after cache route flushed
+ - net/mlx5: Fix mlx5_get_vector_affinity function
+ - net: phy: sfp: fix the BR,min computation
+ - net/smc: keep clcsock reference in smc_tcp_listen_work()
+ - scsi: aacraid: Correct hba_send to include iu_type
+ - proc: do not access cmdline nor environ from file-backed areas
+ (CVE-2018-1120)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.11
+ - xhci: Fix USB3 NULL pointer dereference at logical disconnect.
+ - usbip: usbip_host: refine probe and disconnect debug msgs to be useful
+ - usbip: usbip_host: delete device from busid_table after rebind
+ - usbip: usbip_host: run rebind from exit when module is removed
+ - usbip: usbip_host: fix NULL-ptr deref and use-after-free errors
+ - usbip: usbip_host: fix bad unlock balance during stub_probe()
+ - ALSA: usb: mixer: volume quirk for CM102-A+/102S+
+ - ALSA: hda/realtek - Clevo P950ER ALC1220 Fixup
+ - ALSA: hda: Add Lenovo C50 All in one to the power_save blacklist
+ - ALSA: control: fix a redundant-copy issue
+ - [amd64] spi: pxa2xx: Allow 64-bit DMA
+ - KVM: vmx: update sec exec controls for UMIP iff emulating UMIP
+ - [armhf,arm64] KVM: Properly protect VGIC locks from IRQs
+ - [armhf,arm64] KVM: VGIC/ITS: Promote irq_lock() in update_affinity
+ - [armhf,arm64] KVM: VGIC/ITS save/restore: protect kvm_read_guest() calls
+ - [armhf,arm64] KVM: VGIC/ITS: protect kvm_read_guest() calls with SRCU
+ lock
+ - hwmon: (k10temp) Fix reading critical temperature register
+ - hwmon: (k10temp) Use API function to access System Management Network
+ - [s390x] vfio: ccw: fix cleanup if cp_prefetch fails
+ - tracing/x86/xen: Remove zero data size trace events
+ trace_xen_mmu_flush_tlb{_all}
+ - vsprintf: Replace memory barrier with static_key for random_ptr_key
+ update
+ - [x86] amd_nb: Add support for Raven Ridge CPUs
+ - [arm64] tee: shm: fix use-after-free via temporarily dropped reference
+ - netfilter: nf_tables: free set name in error path
+ - netfilter: nf_tables: can't fail after linking rule into active rule
+ list
+ - netfilter: nf_tables: nf_tables_obj_lookup_byhandle() can be static
+ - [arm64] dts: marvell: armada-cp110: Add clocks for the xmdio node
+ - [arm64] dts: marvell: armada-cp110: Add mg_core_clk for ethernet node
+ - i2c: designware: fix poll-after-enable regression
+ - mtd: rawnand: marvell: Fix read logic for layouts with ->nchunks > 2
+ - [powerpc*] powerpc/powernv: Fix NVRAM sleep in invalid context when
+ crashing
+ - drm: Match sysfs name in link removal to link creation
+ - radix tree: fix multi-order iteration race
+ - mm: don't allow deferred pages with NEED_PER_CPU_KM
+ - [x86] drm/i915/gen9: Add WaClearHIZ_WM_CHICKEN3 for bxt and glk
+ - [s390x] qdio: fix access to uninitialized qdio_q fields
+ - [s390x] cpum_sf: ensure sample frequency of perf event attributes is
+ non-zero
+ - [s390x] qdio: don't release memory in qdio_setup_irq()
+ - [s390x] remove indirect branch from do_softirq_own_stack
+ - bcache: return 0 from bch_debug_init() if CONFIG_DEBUG_FS=n
+ - [x86] pkeys: Override pkey when moving away from PROT_EXEC
+ - [x86] pkeys: Do not special case protection key 0
+ - efi: Avoid potential crashes, fix the 'struct efi_pci_io_protocol_32'
+ definition for mixed mode
+ - [arm*] 8771/1: kprobes: Prohibit kprobes on do_undefinstr
+ - [x86] apic/x2apic: Initialize cluster ID properly
+ - [x86] mm: Drop TS_COMPAT on 64-bit exec() syscall
+ - tick/broadcast: Use for_each_cpu() specially on UP kernels
+ - [arm*] 8769/1: kprobes: Fix to use get_kprobe_ctlblk after irq-disabed
+ - [arm*] 8770/1: kprobes: Prohibit probing on optimized_callback
+ - [arm*] 8772/1: kprobes: Prohibit kprobes on get_user functions
+ - Btrfs: fix xattr loss after power failure
+ - Btrfs: send, fix invalid access to commit roots due to concurrent
+ snapshotting
+ - btrfs: property: Set incompat flag if lzo/zstd compression is set
+ - btrfs: fix crash when trying to resume balance without the resume flag
+ - btrfs: Split btrfs_del_delalloc_inode into 2 functions
+ - btrfs: Fix delalloc inodes invalidation during transaction abort
+ - btrfs: fix reading stale metadata blocks after degraded raid1 mounts
+ - x86/nospec: Simplify alternative_msr_write()
+ - x86/bugs: Concentrate bug detection into a separate function
+ - x86/bugs: Concentrate bug reporting into a separate function
+ - x86/bugs: Read SPEC_CTRL MSR during boot and re-use reserved bits
+ - x86/bugs, KVM: Support the combination of guest and host IBRS
+ - x86/bugs: Expose /sys/../spec_store_bypass
+ - x86/cpufeatures: Add X86_FEATURE_RDS
+ - x86/bugs: Provide boot parameters for the spec_store_bypass_disable
+ mitigation
+ - x86/bugs/intel: Set proper CPU features and setup RDS
+ - x86/bugs: Whitelist allowed SPEC_CTRL MSR values
+ - x86/bugs/AMD: Add support to disable RDS on Fam[15,16,17]h if requested
+ - x86/KVM/VMX: Expose SPEC_CTRL Bit(2) to the guest
+ - x86/speculation: Create spec-ctrl.h to avoid include hell
+ - prctl: Add speculation control prctls
+ - x86/process: Allow runtime control of Speculative Store Bypass
+ - x86/speculation: Add prctl for Speculative Store Bypass mitigation
+ - nospec: Allow getting/setting on non-current task
+ - proc: Provide details on speculation flaw mitigations
+ - seccomp: Enable speculation flaw mitigations
+ - x86/bugs: Make boot modes __ro_after_init
+ - prctl: Add force disable speculation
+ - seccomp: Use PR_SPEC_FORCE_DISABLE
+ - seccomp: Add filter flag to opt-out of SSB mitigation
+ - seccomp: Move speculation migitation control to arch code
+ - x86/speculation: Make "seccomp" the default mode for Speculative Store
+ Bypass
+ - x86/bugs: Rename _RDS to _SSBD
+ - proc: Use underscores for SSBD in 'status'
+ - Documentation/spec_ctrl: Do some minor cleanups
+ - x86/bugs: Fix __ssb_select_mitigation() return type
+ - x86/bugs: Make cpu_show_common() static
+ - x86/bugs: Fix the parameters alignment and missing void
+ - x86/cpu: Make alternative_msr_write work for 32-bit code
+ - KVM: SVM: Move spec control call after restore of GS
+ - x86/speculation: Use synthetic bits for IBRS/IBPB/STIBP
+ - x86/cpufeatures: Disentangle MSR_SPEC_CTRL enumeration from IBRS
+ - x86/cpufeatures: Disentangle SSBD enumeration
+ - x86/cpufeatures: Add FEATURE_ZEN
+ - x86/speculation: Handle HT correctly on AMD
+ - x86/bugs, KVM: Extend speculation control for VIRT_SPEC_CTRL
+ - x86/speculation: Add virtualized speculative store bypass disable
+ support
+ - x86/speculation: Rework speculative_store_bypass_update()
+ - x86/bugs: Unify x86_spec_ctrl_{set_guest,restore_host}
+ - x86/bugs: Expose x86_spec_ctrl_base directly
+ - x86/bugs: Remove x86_spec_ctrl_set()
+ - x86/bugs: Rework spec_ctrl base and mask logic
+ - x86/speculation, KVM: Implement support for VIRT_SPEC_CTRL/LS_CFG
+ - KVM: SVM: Implement VIRT_SPEC_CTRL support for SSBD
+ - x86/bugs: Rename SSBD_NO to SSB_NO
+ - bpf: Prevent memory disambiguation attack
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.12
+ - net/mlx5: Fix build break when CONFIG_SMP=n
+ - net: Fix a bug in removing queues from XPS map
+ - net/mlx4_core: Fix error handling in mlx4_init_port_info.
+ - net/sched: fix refcnt leak in the error path of tcf_vlan_init()
+ - net: sched: red: avoid hashing NULL child
+ - net/smc: check for missing nlattrs in SMC_PNETID messages
+ - net: test tailroom before appending to linear skb
+ - packet: in packet_snd start writing at link layer allocation
+ - sock_diag: fix use-after-free read in __sk_free
+ - tcp: purge write queue in tcp_connect_init()
+ - tun: fix use after free for ptr_ring
+ - tuntap: fix use after free during release
+ - cxgb4: Correct ntuple mask validation for hash filters
+ - [armhf] net: dsa: bcm_sf2: Fix RX_CLS_LOC_ANY overwrite for last rule
+ - net: dsa: Do not register devlink for unused ports
+ - [armhf] net: dsa: bcm_sf2: Fix IPv6 rules and chain ID
+ - [armhf] net: dsa: bcm_sf2: Fix IPv6 rule half deletion
+ - 3c59x: convert to generic DMA API
+ - cxgb4: fix offset in collecting TX rate limit info
+ - vmxnet3: set the DMA mask before the first DMA map operation
+ - vmxnet3: use DMA memory barriers where required
+ - net: ip6_gre: Request headroom in __gre6_xmit()
+ - net: ip6_gre: Fix headroom request in ip6erspan_tunnel_xmit()
+ - net: ip6_gre: Split up ip6gre_tnl_link_config()
+ - net: ip6_gre: Split up ip6gre_tnl_change()
+ - net: ip6_gre: Split up ip6gre_newlink()
+ - net: ip6_gre: Split up ip6gre_changelink()
+ - net: ip6_gre: Fix ip6erspan hlen calculation
+ - net: ip6_gre: fix tunnel metadata device sharing.
+ - [sparc*]: vio: use put_device() instead of kfree()
+ - ext2: fix a block leak
+ - [powerpc*] rfi-flush: Always enable fallback flush on pseries
+ - [powerpc*] Add security feature flags for Spectre/Meltdown
+ - [powerpc*] pseries: Add new H_GET_CPU_CHARACTERISTICS flags
+ - [powerpc*] pseries: Set or clear security feature flags
+ - [powerpc*] powerpc/powernv: Set or clear security feature flags
+ - [powerpc*] powerpc/64s: Move cpu_show_meltdown()
+ - [powerpc*] powerpc/64s: Enhance the information in cpu_show_meltdown()
+ - [powerpc*] powerpc/powernv: Use the security flags in
+ pnv_setup_rfi_flush()
+ - [powerpc*] powerpc/pseries: Use the security flags in
+ pseries_setup_rfi_flush()
+ - [powerpc*] powerpc/64s: Wire up cpu_show_spectre_v1()
+ - [powerpc*] powerpc/64s: Wire up cpu_show_spectre_v2()
+ - [powerpc*] powerpc/pseries: Fix clearing of security feature flags
+ - [powerpc*] powerpc: Move default security feature flags
+ - [powerpc*] powerpc/64s: Add support for a store forwarding barrier at
+ kernel entry/exit
+ - [s390x] move nobp parameter functions to nospec-branch.c
+ - [s390x] add automatic detection of the spectre defense
+ - [s390x] report spectre mitigation via syslog
+ - [s390x] add sysfs attributes for spectre
+ - [s390x] add assembler macros for CPU alternatives
+ - [s390x] correct nospec auto detection init order
+ - [s390x] correct module section names for expoline code revert
+ - [s390x] move expoline assembler macros to a header
+ - [s390x] crc32-vx: use expoline for indirect branches
+ - [s390x] lib: use expoline for indirect branches
+ - [s390x] ftrace: use expoline for indirect branches
+ - [s390x] kernel: use expoline for indirect branches
+ - [s390x] move spectre sysfs attribute code
+ - [s390x] extend expoline to BC instructions
+ - [s390x] use expoline thunks in the BPF JIT
+ - scsi: sg: allocate with __GFP_ZERO in sg_build_indirect()
+ - [s390x] scsi: zfcp: fix infinite iteration on ERP ready list
+ - Bluetooth: btusb: Add USB ID 7392:a611 for Edimax EW-7611ULB
+ - ALSA: usb-audio: Add native DSD support for Luxman DA-06
+ - [arm64,armhf] usb: dwc3: Add SoftReset PHY synchonization delay
+ - [arm64,armhf] usb: dwc3: Update DWC_usb31 GTXFIFOSIZ reg fields
+ - [arm64,armhf] usb: dwc3: Makefile: fix link error on randconfig
+ - xhci: zero usb device slot_id member when disabling and freeing a xhci slot
+ - [arm64,armhf] usb: dwc2: Fix interval type issue
+ - [arm64,armhf] usb: dwc2: hcd: Fix host channel halt flow
+ - [arm64,armhf] usb: dwc2: host: Fix transaction errors in host mode
+ - usbip: Correct maximum value of CONFIG_USBIP_VHCI_HC_PORTS
+ - media: em28xx: USB bulk packet size fix
+ - Bluetooth: btusb: Add device ID for RTL8822BE
+ - Bluetooth: btusb: Add support for Intel Bluetooth device 22560
+ [8087:0026]
+ - xhci: Show what USB release number the xHC supports from protocol
+ capablity
+ - loop: don't call into filesystem while holding lo_ctl_mutex
+ - loop: fix LOOP_GET_STATUS lock imbalance
+ - cfg80211: limit wiphy names to 128 bytes
+ - hfsplus: stop workqueue when fill_super() failed
+ - [x86] kexec: Avoid double free_page() upon do_kexec_load() failure
+ - staging: bcm2835-audio: Release resources on module_exit()
+ - staging: lustre: fix bug in osc_enter_cache_try
+ - [x86] staging: rtl8192u: return -ENOMEM on failed allocation of
+ priv->oldaddr
+ - staging: lustre: lmv: correctly iput lmo_root
+ - [arm64] crypto: inside-secure - move the digest to the request context
+ - [arm64] crypto: inside-secure - wait for the request to complete if in
+ the backlog
+ - [x86] crypto: ccp - don't disable interrupts while setting up debugfs
+ - [arm64] crypto: inside-secure - do not process request if no command was
+ issued
+ - [arm64] crypto: inside-secure - fix the cache_len computation
+ - [arm64] crypto: inside-secure - fix the extra cache computation
+ - [arm64] crypto: inside-secure - do not overwrite the threshold value
+ - [armhf] crypto: sunxi-ss - Add MODULE_ALIAS to sun4i-ss
+ - [arm64] crypto: inside-secure - fix the invalidation step during
+ cra_exit
+ - scsi: aacraid: Insure command thread is not recursively stopped
+ - scsi: devinfo: add HP DISK-SUBSYSTEM device, for HP XP arrays
+ - scsi: lpfc: Fix NVME Initiator FirstBurst
+ - scsi: core: Make SCSI Status CONDITION MET equivalent to GOOD
+ - scsi: mvsas: fix wrong endianness of sgpio api
+ - scsi: lpfc: Fix issue_lip if link is disabled
+ - scsi: lpfc: Fix nonrecovery of NVME controller after cable swap.
+ - scsi: lpfc: Fix soft lockup in lpfc worker thread during LIP testing
+ - scsi: lpfc: Fix IO failure during hba reset testing with nvme io.
+ - scsi: lpfc: Fix frequency of Release WQE CQEs
+ - [armhf] clk: rockchip: Fix wrong parent for SDMMC phase clock for rk3228
+ - clk: Don't show the incorrect clock phase
+ - clk: hisilicon: mark wdt_mux_p[] as const
+ - [arm64,armhf] clk: tegra: Fix pll_u rate configuration
+ - [armhf] clk: rockchip: Prevent calculating mmc phase if clock rate is
+ zero
+ - [armhf] clk: samsung: s3c2410: Fix PLL rates
+ - [armhf] clk: samsung: exynos7: Fix PLL rates
+ - [armhf] clk: samsung: exynos5260: Fix PLL rates
+ - [armhf] clk: samsung: exynos5433: Fix PLL rates
+ - [armhf] clk: samsung: exynos5250: Fix PLL rates
+ - [armhf] clk: samsung: exynos3250: Fix PLL rates
+ - clk: meson: axg: fix the od shift of the sys_pll
+ - clk: meson: axg: add the fractional part of the fixed_pll
+ - media: cx23885: Override 888 ImpactVCBe crystal frequency
+ - media: cx23885: Set subdev host data to clk_freq pointer
+ - media: em28xx: Add Hauppauge SoloHD/DualHD bulk models
+ - media: v4l: vsp1: Fix display stalls when requesting too many inputs
+ - media: i2c: adv748x: fix HDMI field heights
+ - media: vb2: Fix videobuf2 to map correct area
+ - media: vivid: fix incorrect capabilities for radio
+ - media: cx25821: prevent out-of-bounds read on array card
+ - [arm64] serial: mvebu-uart: fix tx lost characters
+ - [sh4] serial: sh-sci: Fix out-of-bounds access through DT alias
+ - [armhf] serial: samsung: Fix out-of-bounds access through serial port
+ index
+ - [armhf] serial: imx: Fix out-of-bounds access through serial port index
+ - [armhf] serial: arc_uart: Fix out-of-bounds access through DT alias
+ - [arm*] serial: 8250: Don't service RX FIFO if interrupts are disabled
+ - [armhf] rtc: snvs: Fix usage of snvs_rtc_enable
+ - rtc: hctosys: Ensure system time doesn't overflow time_t
+ - [arm64,armhf] rtc: rk808: fix possible race condition
+ - [armel/marvell] rtc: m41t80: fix race conditions
+ - [m68k] rtc: rp5c01: fix possible race condition
+
+ [ Romain Perier ]
+ * [armhf] DRM: Enable DW_HDMI_AHB_AUDIO and DW_HDMI_CEC (Closes: #897204)
+ * [armhf] MFD: Enable MFD_TPS65217 (Closes: #897590)
+
+ [ Ben Hutchings ]
+ * kbuild: use -fmacro-prefix-map to make __FILE__ a relative path
+ * Bump ABI to 2
+ * [rt] Update to 4.16.8-rt3
+ * [x86] KVM: VMX: Expose SSBD properly to guests.
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 4.16.7-rt1 and reenable
+ * [rt] certs: Reference certificate for test key used in Debian signing
+ service
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 27 May 2018 14:05:03 +0200
+
+linux (4.16.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.1
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.2
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.3
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.4
+ - ext4: limit xattr size to INT_MAX (CVE-2018-1095)
+ - random: fix crng_ready() test (CVE-2018-1108)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.16.5
+
+ [ Ben Hutchings ]
+ * aufs: gen-patch: Fix Subject generation to skip SPDX-License-Identifier
+ * aufs: Update support patchset to aufs4.16-20180409 (no functional change)
+ * wireless: Add Debian wireless-regdb certificates (see #892229)
+ * Add support for compilers installed outside the default PATH
+ * linux-headers: Change linux-kbuild dependency to be versioned
+ * Set ABI to 1
+ * [x86,arm64] Disable code signing for upload to unstable
+ * debian/lib/python/debian_linux/debian.py: Fix binNMU changelog parsing
+ * debian/lib/python/debian_linux/debian.py: Fix binNMU revision parsing
+ * xfs: enhance dinode verifier (CVE-2018-10322)
+ * xfs: set format back to extents if xfs_bmap_extents_to_btree
+ (CVE-2018-10323)
+ * udeb: Add algif_skcipher to crypto-modules (Closes: #896968)
+ * ext4: fix bitmap position validation (fixes regression in 4.15.17-1)
+ * debian/lib/python/debian_linux/gencontrol.py: Allow uploads to *-security
+ with a simple revision
+
+ [ Vagrant Cascadian ]
+ * [arm64] Add patches to support SATA on Tegra210/Jetson-TX1.
+
+ [ James Clarke ]
+ * [ia64] Drop nic-modules Depends overrides (fixes FTBFS)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable features to support Pinebook and other A64 systems:
+ CONFIG_USB_MUSB_HDRC, CONFIG_USB_MUSB_SUNXI, CONFIG_SUN8I_DE2_CCU,
+ CONFIG_DMA_SUN6I
+ * [arm64] Add patch enabling simplefb LCD on A64.
+
+ [ Roger Shimizu ]
+ * [armel] Add dependency of udeb modules (fixes FTBFS):
+ - Add lzo_decompress to lzo-modules.
+ - Add cmdlinepart to mtd-modules.
+ * [armel] Add dependency of udeb packages (fixes FTBFS):
+ - Add package dependency of mtd-modules to jffs2-modules.
+ - Add package dependency of lzo-modules to squashfs-modules.
+
+ [ Helge Deller ]
+ * [hppa] Switch to self-decompressing kernel to save disk space in /boot
+
+ [ Uwe Kleine-König ]
+ * [amd64] enable AMD 10GbE Ethernet driver (CONFIG_AMD_XGBE=m)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 29 Apr 2018 17:09:14 +0100
+
+linux (4.16-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.16
+
+ [ Jeremy Stanley ]
+ * [x86] Power management support for GPD Pocket UMPC systems
+ (Closes: #895164)
+ - Enable CONFIG_PWM_LPSS_PLATFORM as a module (provides support for the
+ low-level power subsystem handling backlight control) along with its
+ dependency CONFIG_PWM=y
+ - Enable CONFIG_INTEL_INT0002_VGPIO as a module (provides support for the
+ Bay Trail/Cherry Trail virtual GPIO controller to handle power events)
+ - Enable CONFIG_REGULATOR (needed to build the already enabled
+ CONFIG_INTEL_CHT_INT33FE module which provides support for the ACPI
+ interface)
+ - Enable CONFIG_TYPEC_FUSB302 as a module (provides support for the USB
+ type-C interface) along with its dependencies CONFIG_TYPEC=m and
+ CONFIG_TYPEC_TCPM=m
+ - Enable CONFIG_BATTERY_MAX17042 as a module (provides support for the
+ battery level monitor)
+ - Enable CONFIG_CHARGER_BQ24190 as a module (provides support for the
+ battery charger) along with its dependencies CONFIG_EXTCON=m,
+ CONFIG_EXTCON_INTEL_CHT_WC=m, CONFIG_I2C_CHT_WC=m and
+ CONFIG_INTEL_SOC_PMIC_CHTWC=y
+
+ [ Roger Shimizu ]
+ * [armel] Bring back armel build by reverting two commits that disabled
+ armel previously:
+ - [2ed70eb] "Add empty featuresets for armel to help abiupdate script"
+ - [5f62872] "(Temporarily) disable armel kernel image build"
+ * [armel] Reduce armel image size by:
+ - Set CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+ - Change MTD, MTD_CMDLINE_PARTS, RTC_DRV_MV, and SPI_ORION from
+ built-in to module.
+ - Disable VT, ZSWAP, RD_BZIP2, and RD_LZMA.
+ Thanks to Leigh Brown <leigh@solinno.co.uk> for his idea to disable VT.
+
+ [ Riku Voipio ]
+ * [armhf] Add dove cubox support, thanks to Josua Mayer (Closes: #876774)
+
+ [ Sjoerd Simons ]
+ * Enable DRM_DP_AUX_CHARDEV (Closes: #890235)
+
+ [ Ben Hutchings ]
+ * Set ABI name to trunk
+ * debian/config: Rename [build]signed-modules setting to signed-code
+ * debian/lib/python/debian_linux/gencontrol.py: Allow overriding output
+ filenames
+ * debian/lib/python/debian_linux/debian.py: Close changelog after parsing
+ * debian/lib/python/debian_linux/debian.py: Allow parsing any file as
+ changelog
+ * debian/rules.d/tools/lib/lockdep/Makefile: Fix repeated 'make install'
+ * Add template source package to support code signing
+ * Use a dummy build profile for udebs that we test-build before signing
+ * debian/lib/python/debian_linux/debian.py: Parse bottom lines of changelog
+ entries
+ * debian/bin/gencontrol_signed.py: Copy maintainer and date into template's
+ changelog
+ * [x86,arm64] Enable code signing again
+ * certs: Add certificate for test key used in Debian signing service
+ * integrity: Disable IMA until it works properly with lockdown
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 08 Apr 2018 14:44:18 +0200
+
+linux (4.16~rc6-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Jeremy Stanley ]
+ * [x86] Enable CONFIG_GPD_POCKET_FAN as a module (provides fan control on
+ GPD Pocket UMPC systems) (Closes: #893451)
+
+ [ Uwe Kleine-König ]
+ * [arm64] enable various drivers as module for teres-i OSHW laptop
+ (Closes: #892786)
+
+ [ Helge Deller ]
+ * [hppa] Re-enable 32-bit SMP kernel build. Qemu now supports it.
+
+ [ Ben Hutchings ]
+ * udeb: Add dependency from nic-modules to zlib-modules (fixes FTBFS on
+ some architectures)
+ * i40e: Add kconfig dependency to ensure cmpxchg64() is available
+ (fixes FTBFS on some architectures)
+ * [ia64] Re-add configuration for kernel and udebs:
+ - Revert "Remove all support for ia64" (Closes: #886693)
+ - Disable IRDA, consistent with other architectures
+ - linux-image: Don't suggest fdutils
+ - Compile with gcc-7
+ - linux-image: Improve flavour descriptions
+ - udeb: Combine core-modules/kernel-image and scsi{,-common,-extra}-modules
+ - udeb: Add i2c-modules
+
+ [ Vagrant Cascadian ]
+ * [armhf] Enable ARCH_MESON and related drivers.
+ * [armhf] Add device-tree patches from linux-next to support USB and
+ Ethernet on meson8b.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 20 Mar 2018 13:52:03 +0000
+
+linux (4.16~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Uwe Kleine-König ]
+ * netfilter: enable NFT_FIB_NETDEV as module
+
+ [ Thadeu Lima de Souza Cascardo ]
+ * [powerpc,ppc64el,ppc64] Enable CRASH_DUMP (Closes: #883432)
+
+ [ Bastian Blank ]
+ * Drop note about Xen from long descriptions.
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable ROCKCHIP_IODOMAIN as a module, to enable PCIe reset.
+ * [arm64] Enable REGULATOR_FAN53555 as a module, enabling cpufreq to
+ work on rk3399 A72 cores.
+ * [arm64] Apply patch from linux-next to fix eMMC corruption on
+ Odroid-C2 (Closes: #879072).
+
+ [ Ben Hutchings ]
+ * debian/control: Update profile qualification for build-deps on bison
+ and flex, which are now used to build kconfig
+ * debian/rules.d/tools/kconfig/Makefile: Use bison and flex to build kconfig
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 13 Mar 2018 02:06:57 +0000
+
+linux (4.15.17-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.12
+ - [i386] vm86: Fix POPF emulation
+ - [i386] speculation, objtool: Annotate indirect calls/jumps for objtool on
+ 32-bit kernels
+ - [x86] speculation: Remove Skylake C2 from Speculation Control microcode
+ blacklist
+ - [x86] KVM: Fix device passthrough when SME is active
+ - [x86] mm: Fix vmalloc_fault to use pXd_large
+ - [hppa] Handle case where flush_cache_range is called with no context
+ - ALSA: pcm: Fix UAF in snd_pcm_oss_get_formats()
+ - ALSA: hda - Revert power_save option default value
+ - ALSA: seq: Fix possible UAF in snd_seq_check_queue()
+ - ALSA: seq: Clear client entry before deleting else at closing
+ - drm/nouveau/bl: Fix oops on driver unbind
+ - drm/nouveau/mmu: ALIGN_DOWN correct variable (Closes: #895750)
+ - drm/amdgpu: fix prime teardown order
+ - drm/radeon: fix prime teardown order
+ - drm/amdgpu/dce: Don't turn off DP sink when disconnected
+ - fs: Teach path_connected to handle nfs filesystems with multiple roots.
+ - [armhf,arm64] KVM: Reduce verbosity of KVM init log
+ - [armhf,arm64] KVM: Reset mapped IRQs on VM reset
+ - [armhf,arm64] kvm: vgic-v3: Tighten synchronization for guests using v2
+ on v3
+ - [armhf.arm64] KVM: vgic: Don't populate multiple LRs with the same vintid
+ - lock_parent() needs to recheck if dentry got __dentry_kill'ed under it
+ - fs/aio: Add explicit RCU grace period when freeing kioctx
+ - fs/aio: Use RCU accessors for kioctx_table->table[]
+ - RDMAVT: Fix synchronization around percpu_ref
+ - [armhf.arm64] irqchip/gic-v3-its: Ensure nr_ites >= nr_lpis
+ - nvme: fix subsystem multiple controllers support check
+ - xfs: preserve i_rdev when recycling a reclaimable inode
+ - btrfs: Fix NULL pointer exception in find_bio_stripe
+ - btrfs: add missing initialization in btrfs_check_shared
+ - btrfs: alloc_chunk: fix DUP stripe size handling
+ - btrfs: Fix use-after-free when cleaning up fs_devs with a single stale
+ device
+ - btrfs: remove spurious WARN_ON(ref->count < 0) in find_parent_nodes
+ - btrfs: Fix memory barriers usage with device stats counters
+ - scsi: qla2xxx: Fix smatch warning in qla25xx_delete_{rsp|req}_que
+ - scsi: qla2xxx: Fix NULL pointer access for fcport structure
+ - scsi: qla2xxx: Fix logo flag for qlt_free_session_done()
+ - scsi: qla2xxx: Fix crashes in qla2x00_probe_one on probe failure
+ - usb: dwc2: fix STM32F7 USB OTG HS compatible
+ - USB: gadget: udc: Add missing platform_device_put() on error in
+ bdc_pci_probe()
+ - usb: dwc3: Fix GDBGFIFOSPACE_TYPE values
+ - usb: dwc3: core: Power-off core/PHYs on system_suspend in host mode
+ - usb: dwc3: of-simple: fix oops by unbalanced clk disable call
+ - usb: gadget: udc: renesas_usb3: fix oops in renesas_usb3_remove()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.13
+ - scsi: megaraid_sas: Do not use 32-bit atomic request descriptor for
+ Ventura controllers
+ - drm/amdgpu: use polling mem to set SDMA3 wptr for VF
+ - Bluetooth: hci_qca: Avoid setup failure on missing rampatch
+ - [arm64] Bluetooth: btqcomsmd: Fix skb double free corruption
+ - [x86] cpufreq: longhaul: Revert transition_delay_us to 200 ms
+ - [arm64] drm/msm: fix leak in failed get_pages
+ - IB/ipoib: Warn when one port fails to initialize
+ - RDMA/iwpm: Fix uninitialized error code in iwpm_send_mapinfo()
+ - [x86] hv_netvsc: Fix the receive buffer size limit
+ - [x86] hv_netvsc: Fix the TX/RX buffer default sizes
+ - tcp: allow TLP in ECN CWR
+ - libbpf: prefer global symbols as bpf program name source
+ - rtlwifi: rtl_pci: Fix the bug when inactiveps is enabled.
+ - rtlwifi: always initialize variables given to RT_TRACE()
+ - media: bt8xx: Fix err 'bt878_probe()'
+ - ath10k: handling qos at STA side based on AP WMM enable/disable
+ - media: dvb-frontends: Add delay to Si2168 restart
+ - qmi_wwan: set FLAG_SEND_ZLP to avoid network initiated disconnect
+ - serial: 8250_dw: Disable clock on error
+ - [armhf,arm64] cros_ec: fix nul-termination for firmware build info
+ - watchdog: Fix potential kref imbalance when opening watchdog
+ - watchdog: Fix kref imbalance seen if handle_boot_enabled=0
+ - platform/chrome: Use proper protocol transfer function
+ - [armhf] drm/tilcdc: ensure nonatomic iowrite64 is not used
+ - mmc: avoid removing non-removable hosts during suspend
+ - mmc: block: fix logical error to avoid memory leak
+ - /dev/mem: Add bounce buffer for copy-out
+ - [arm64] net: phy: meson-gxl: check phy_write return value
+ - IB/ipoib: Avoid memory leak if the SA returns a different DGID
+ - RDMA/cma: Use correct size when writing netlink stats
+ - IB/umem: Fix use of npages/nmap fields
+ - iser-target: avoid reinitializing rdma contexts for isert commands
+ - bpf/cgroup: fix a verification error for a CGROUP_DEVICE type prog
+ - PCI/ASPM: Calculate LTR_L1.2_THRESHOLD from device characteristics
+ - vgacon: Set VGA struct resource types
+ - [armhf] omapdrm: panel: fix compatible vendor string for td028ttec1
+ - [arm64] mmc: sdhci-xenon: wait 5ms after set 1.8V signal enable
+ - [armhf] drm/omap: DMM: Check for DMM readiness after successful
+ transaction commit
+ - pty: cancel pty slave port buf's work in tty_release
+ - clk: check ops pointer on clock register
+ - clk: use round rate to bail out early in set_rate
+ - pinctrl: Really force states during suspend/resume
+ - [armhf,arm64] pinctrl: rockchip: enable clock when reading pin direction
+ register
+ - [x86] iommu/vt-d: clean up pr_irq if request_threaded_irq fails
+ - ip6_vti: adjust vti mtu according to mtu of lower device
+ - ip_gre: fix error path when erspan_rcv failed
+ - ip_gre: fix potential memory leak in erspan_rcv
+ - [arm64] soc: qcom: smsm: fix child-node lookup
+ - scsi: lpfc: Fix SCSI LUN discovery when SCSI and NVME enabled
+ - scsi: lpfc: Fix issues connecting with nvme initiator
+ - RDMA/ocrdma: Fix permissions for OCRDMA_RESET_STATS
+ - nfsd4: permit layoutget of executable-only files
+ - clk: Don't touch hardware when reparenting during registration
+ - hwrng: core - Clean up RNG list when last hwrng is unregistered
+ - [armhf] dmaengine: ti-dma-crossbar: Fix event mapping for
+ TPCC_EVT_MUX_60_63
+ - IB/mlx5: Fix integer overflows in mlx5_ib_create_srq
+ - IB/mlx5: Fix out-of-bounds read in create_raw_packet_qp_rq
+ - [x86] RDMA/vmw_pvrdma: Fix usage of user response structures in ABI file
+ - serial: 8250_pci: Don't fail on multiport card class
+ - RDMA/core: Do not use invalid destination in determining port reuse
+ - clk: migrate the count of orphaned clocks at init
+ - RDMA/ucma: Fix access to non-initialized CM_ID object
+ - RDMA/ucma: Don't allow join attempts for unsupported AF family
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.14
+ - [armhf] iio: st_pressure: st_accel: pass correct platform data to init
+ - [arm64] iio: adc: meson-saradc: unlock on error in meson_sar_adc_lock()
+ - ALSA: usb-audio: Fix parsing descriptor of UAC2 processing unit
+ - ALSA: aloop: Sync stale timer before release
+ - ALSA: aloop: Fix access to not-yet-ready substream via cable
+ - ALSA: hda - Force polling mode on CFL for fixing codec communication
+ - ALSA: hda/realtek - Fix speaker no sound after system resume
+ - ALSA: hda/realtek - Fix Dell headset Mic can't record
+ - ALSA: hda/realtek - Always immediately update mute LED with pin VREF
+ - mmc: core: Fix tracepoint print of blk_addr and blksz
+ - mmc: core: Disable HPI for certain Micron (Numonyx) eMMC cards
+ - mmc: block: fix updating ext_csd caches on ioctl call
+ - [armhf] mmc: dw_mmc: Fix the DTO/CTO timeout overflow calculation for
+ 32-bit systems
+ - [armhf] mmc: dw_mmc: exynos: fix the suspend/resume issue for exynos5433
+ - [armhf,arm64] mmc: dw_mmc: fix falling from idmac to PIO mode when
+ dw_mci_reset occurs
+ - PCI: Add function 1 DMA alias quirk for Highpoint RocketRAID 644L
+ - lockdep: fix fs_reclaim warning
+ - [armhf,arm64] clk: bcm2835: Fix ana->maskX definitions
+ - [armhf,arm64] clk: bcm2835: Protect sections updating shared registers
+ - [armhf,arm64] clk: sunxi-ng: a31: Fix CLK_OUT_* clock ops
+ - RDMA/mlx5: Fix crash while accessing garbage pointer and freed memory
+ - [x86] Drivers: hv: vmbus: Fix ring buffer signaling
+ - [armhf] pinctrl: samsung: Validate alias coming from DT
+ - Bluetooth: btusb: Remove Yoga 920 from the btusb_needs_reset_resume_table
+ - Bluetooth: btusb: Add Dell OptiPlex 3060 to btusb_needs_reset_resume_table
+ - Bluetooth: btusb: Fix quirk for Atheros 1525/QCA6174
+ - libata: fix length validation of ATAPI-relayed SCSI commands
+ - libata: remove WARN() for DMA or PIO command without data
+ - libata: don't try to pass through NCQ commands to non-NCQ devices
+ - libata: Apply NOLPM quirk to Crucial MX100 512GB SSDs
+ - libata: disable LPM for Crucial BX100 SSD 500GB drive
+ - libata: Enable queued TRIM for Samsung SSD 860
+ - libata: Apply NOLPM quirk to Crucial M500 480 and 960GB SSDs
+ - libata: Make Crucial BX100 500GB LPM quirk apply to all firmware versions
+ - libata: Modify quirks for MX100 to limit NCQ_TRIM quirk to MU01 version
+ - sched, cgroup: Don't reject lower cpu.max on ancestors
+ - cgroup: fix rule checking for threaded mode switching
+ - nfsd: remove blocked locks on client teardown
+ - hugetlbfs: check for pgoff value overflow (CVE-2018-7740)
+ - [x86] mm: implement free pmd/pte page interfaces
+ - mm/khugepaged.c: convert VM_BUG_ON() to collapse fail
+ - mm/thp: do not wait for lock_page() in deferred_split_scan()
+ - mm/shmem: do not wait for lock_page() in shmem_unused_huge_shrink()
+ - Revert "mm: page_alloc: skip over regions of invalid pfns where possible"
+ - [x86] drm/vmwgfx: Fix black screen and device errors when running without
+ fbdev
+ - [x86] drm/vmwgfx: Fix a destoy-while-held mutex problem.
+ - drm/radeon: Don't turn off DP sink when disconnected
+ - drm/amd/display: We shouldn't set format_default on plane as atomic driver
+ - drm/amd/display: Add one to EDID's audio channel count when passing to DC
+ - drm: Reject getfb for multi-plane framebuffers
+ - drm: udl: Properly check framebuffer mmap offsets
+ - mm/vmscan: wake up flushers for legacy cgroups too
+ - module: propagate error in modules_open()
+ - acpi, numa: fix pxm to online numa node associations
+ - ACPI / watchdog: Fix off-by-one error at resource assignment
+ - libnvdimm, {btt, blk}: do integrity setup before add_disk()
+ - brcmfmac: fix P2P_DEVICE ethernet address generation
+ - rtlwifi: rtl8723be: Fix loss of signal
+ - tracing: probeevent: Fix to support minus offset from symbol
+ - mtdchar: fix usage of mtd_ooblayout_ecc()
+ - staging: ncpfs: memory corruption in ncp_read_kernel() (CVE-2018-8822)
+ - [i386] can: cc770: Fix stalls on rt-linux, remove redundant IRQ ack
+ - [i386] can: cc770: Fix queue stall & dropped RTR reply
+ - [i386] can: cc770: Fix use after free in cc770_tx_interrupt()
+ - tty: vt: fix up tabstops properly
+ - [amd64] entry: Don't use IST entry for #BP stack
+ - [amd64] vsyscall: Use proper accessor to update P4D entry
+ - [x86] efi: Free efi_pgd with free_pages()
+ - posix-timers: Protect posix clock array access against speculation
+ - [x86] kvm: fix icebp instruction handling
+ - [amd64] build: Force the linker to use 2MB page size
+ - [amd64] boot: Verify alignment of the LOAD segment
+ - [x86] hwmon: (k10temp) Only apply temperature offset if result is positive
+ - [x86] hwmon: (k10temp) Add temperature offset for Ryzen 1900X
+ - [x86] perf/intel/uncore: Fix Skylake UPI event format
+ - perf stat: Fix CVS output format for non-supported counters
+ - perf/core: Fix ctx_event_type in ctx_resched()
+ - trace/bpf: remove helper bpf_perf_prog_read_value from tracepoint type
+ programs
+ - [x86] perf/intel: Don't accidentally clear high bits in bdw_limit_period()
+ - [x86] perf/intel/uncore: Fix multi-domain PCI CHA enumeration bug on
+ Skylake servers
+ - iio: ABI: Fix name of timestamp sysfs file
+ - bpf: skip unnecessary capability check
+ - [amd64] bpf: increase number of passes
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.15
+ - net: dsa: Fix dsa_is_user_port() test inversion
+ - openvswitch: meter: fix the incorrect calculation of max delta_t
+ - qed: Fix MPA unalign flow in case header is split across two packets.
+ - tcp: purge write queue upon aborting the connection
+ - qed: Fix non TCP packets should be dropped on iWARP ll2 connection
+ - net: phy: relax error checking when creating sysfs link netdev->phydev
+ - devlink: Remove redundant free on error path
+ - macvlan: filter out unsupported feature flags
+ - net: ipv6: keep sk status consistent after datagram connect failure
+ - ipv6: old_dport should be a __be16 in __ip6_datagram_connect()
+ - ipv6: sr: fix NULL pointer dereference when setting encap source address
+ - ipv6: sr: fix scheduling in RCU when creating seg6 lwtunnel state
+ - net: phy: Tell caller result of phy_change()
+ - ipv6: Reflect MTU changes on PMTU of exceptions for MTU-less routes
+ - net sched actions: return explicit error when tunnel_key mode is not
+ specified
+ - ppp: avoid loop in xmit recursion detection code
+ - rhashtable: Fix rhlist duplicates insertion
+ - sch_netem: fix skb leak in netem_enqueue()
+ - ieee802154: 6lowpan: fix possible NULL deref in lowpan_device_event()
+ - net: use skb_to_full_sk() in skb_update_prio()
+ - net: Fix hlist corruptions in inet_evict_bucket()
+ - [s390x] qeth: free netdevice when removing a card
+ - [s390x] qeth: when thread completes, wake up all waiters
+ - [s390x] qeth: lock read device while queueing next buffer
+ - [s390x] qeth: on channel error, reject further cmd requests
+ - dccp: check sk for closed state in dccp_sendmsg()
+ - ipv6: fix access to non-linear packet in ndisc_fill_redirect_hdr_option()
+ - l2tp: do not accept arbitrary sockets
+ - [armhf] net: ethernet: ti: cpsw: add check for in-band mode setting with
+ RGMII PHY interface
+ - [armhf] net: fec: Fix unbalanced PM runtime calls
+ - [s390x] net/iucv: Free memory obtained by kzalloc
+ - netlink: avoid a double skb free in genlmsg_mcast()
+ - net: Only honor ifindex in IP_PKTINFO if non-0
+ - net: systemport: Rewrite __bcm_sysport_tx_reclaim()
+ - qede: Fix qedr link update
+ - skbuff: Fix not waking applications when errors are enqueued
+ - team: Fix double free in error path
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.16
+ - [armhf] OMAP: Fix SRAM W+X mapping
+ - [armhf] 8746/1: vfp: Go back to clearing vfp_current_hw_state[]
+ - [armhf] dts: sun6i: a31s: bpi-m2: improve pmic properties
+ - [armhf] dts: sun6i: a31s: bpi-m2: add missing regulators
+ - mtd: jedec_probe: Fix crash in jedec_read_mfr()
+ - ALSA: usb-audio: Add native DSD support for TEAC UD-301
+ - ALSA: pcm: Use dma_bytes as size parameter in dma_mmap_coherent()
+ - ALSA: pcm: potential uninitialized return values
+ - perf/hwbp: Simplify the perf-hwbp code, fix documentation
+ - ceph: only dirty ITER_IOVEC pages for direct read
+ - ipc/shm.c: add split function to shm_vm_ops
+ - [powerpc*] mm: Add tracking of the number of coprocessors using a context
+ - [powerpc*] mm: Workaround Nest MMU bug with TLB invalidations
+ - [powerpc*] 64s: Fix lost pending interrupt due to race causing lost
+ update to irq_happened
+ - [powerpc*] 64s: Fix i-side SLB miss bad address handler saving
+ nonvolatile GPRs
+ - partitions/msdos: Unable to mount UFS 44bsd partitions
+ - xfrm_user: uncoditionally validate esn replay attribute struct
+ - RDMA/ucma: Check AF family prior resolving address
+ - RDMA/ucma: Fix use-after-free access in ucma_close
+ - RDMA/ucma: Ensure that CM_ID exists prior to access it
+ - RDMA/rdma_cm: Fix use after free race with process_one_req
+ - RDMA/ucma: Check that device is connected prior to access it
+ - RDMA/ucma: Check that device exists prior to accessing it
+ - RDMA/ucma: Introduce safer rdma_addr_size() variants
+ - ipv6: fix possible deadlock in rt6_age_examine_exception()
+ - net: xfrm: use preempt-safe this_cpu_read() in ipcomp_alloc_tfms()
+ - xfrm: Refuse to insert 32 bit userspace socket policies on 64 bit systems
+ - percpu: add __GFP_NORETRY semantics to the percpu balancing path
+ - netfilter: x_tables: make allocation less aggressive
+ - netfilter: bridge: ebt_among: add more missing match size checks
+ - l2tp: fix races with ipv4-mapped ipv6 addresses
+ - netfilter: drop template ct when conntrack is skipped.
+ - netfilter: x_tables: add and use xt_check_proc_name
+ - [arm64] phy: qcom-ufs: add MODULE_LICENSE tag
+ - Bluetooth: Fix missing encryption refresh on Security Request
+ - [x86] drm/i915/dp: Write to SET_POWER dpcd to enable MST hub.
+ - bitmap: fix memset optimization on big-endian systems
+ - [x86] mei: remove dev_err message on an unsupported ioctl
+ - /dev/mem: Avoid overwriting "err" in read_mem()
+ - media: usbtv: prevent double free in error case (CVE-2017-17975)
+ - crypto: lrw - Free rctx->ext with kzfree
+ - [arm64] crypto: inside-secure - fix clock management
+ - crypto: testmgr - Fix incorrect values in PKCS#1 test vector
+ - crypto: ahash - Fix early termination in hash walk
+ - [x86] crypto: ccp - return an actual key size from RSA max_size callback
+ - [arm*] crypto - Fix random regeneration of S_shipped
+ - [x86] crypto: cast5-avx - fix ECB encryption when long sg follows short
+ one
+ - Btrfs: fix unexpected cow in run_delalloc_nocow
+ - [x86] staging: comedi: ni_mio_common: ack ai fifo error interrupts.
+ - Revert "base: arch_topology: fix section mismatch build warnings"
+ - [x86] Input: ALPS - fix TrackStick detection on Thinkpad L570 and
+ Latitude 7370
+ - [x86] Input: i8042 - add Lenovo ThinkPad L460 to i8042 reset list
+ - [x86] Input: i8042 - enable MUX on Sony VAIO VGN-CS series to fix touchpad
+ - vt: change SGR 21 to follow the standards
+ - [arm64] net: hns: Fix ethtool private flags (CVE-2017-18222)
+ - Fix slab name "biovec-(1<<(21-12))"
+ - [armhf] Revert "ARM: dts: am335x-pepper: Fix the audio CODEC's reset pin"
+ - [armhf] Revert "ARM: dts: omap3-n900: Fix the audio CODEC's reset pin"
+ - Revert "cpufreq: Fix governor module removal race"
+ - Revert "ip6_vti: adjust vti mtu according to mtu of lower device"
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.17
+ - i40iw: Fix sequence number for the first partial FPDU
+ - i40iw: Correct Q1/XF object count equation
+ - i40iw: Validate correct IRD/ORD connection parameters
+ - [arm64] clk: meson: mpll: use 64-bit maths in params_from_rate
+ - ipv6: Reinject IPv6 packets if IPsec policy matches after SNAT
+ - thermal: power_allocator: fix one race condition issue for
+ thermal_instances list
+ - perf probe: Find versioned symbols from map
+ - perf probe: Add warning message if there is unexpected event name
+ - perf evsel: Fix swap for samples with raw data
+ - perf evsel: Enable ignore_missing_thread for pid option
+ - l2tp: fix missing print session offset info
+ - rds; Reset rs->rs_bound_addr in rds_add_bound() failure path
+ - [x86] ACPI / video: Default lcd_only to true on Win8-ready and newer
+ machines
+ - net/mlx4_en: Change default QoS settings
+ - IB/mlx5: Report inner RSS capability
+ - VFS: close race between getcwd() and d_move()
+ - [armhf,arm64] watchdog: dw_wdt: add stop watchdog operation
+ - clk: divider: fix incorrect usage of container_of
+ - PM / devfreq: Fix potential NULL pointer dereference in governor_store
+ - gpiolib: don't dereference a desc before validation
+ - net_sch: red: Fix the new offload indication
+ - [arm64] thermal/drivers/hisi: Remove bogus const from function return type
+ - RDMA/cma: Mark end of CMA ID messages
+ - f2fs: fix lock dependency in between dio_rwsem & i_mmap_sem
+ - [armhf] clk: sunxi-ng: a83t: Add M divider to TCON1 clock
+ - media: videobuf2-core: don't go out of the buffer range
+ - [x86] ASoC: Intel: Skylake: Disable clock gating during firmware and
+ library download
+ - [x86] ASoC: Intel: cht_bsw_rt5645: Analog Mic support
+ - [arm64] drm/msm: Fix NULL deref in adreno_load_gpu
+ - IB/ipoib: Fix for notify send CQ failure messages
+ - scsi: libiscsi: Allow sd_shutdown on bad transport
+ - scsi: mpt3sas: Proper handling of set/clear of "ATA command pending" flag.
+ - [armhf,arm64] irqchip/gic-v3: Fix the driver probe() fail due to disabled
+ GICC entry
+ - ACPI: EC: Fix debugfs_create_*() usage
+ - mac80211: Fix setting TX power on monitor interfaces
+ - vfb: fix video mode and line_length being set when loaded
+ - gpio: label descriptors using the device name
+ - [arm64] asid: Do not replace active_asids if already 0
+ - [powerpc*] powernv-cpufreq: Add helper to extract pstate from PMSR
+ - IB/rdmavt: Allocate CQ memory on the correct node
+ - blk-mq: avoid to map CPU into stale hw queue
+ - blk-mq: fix race between updating nr_hw_queues and switching io sched
+ - nvme-fabrics: protect against module unload during create_ctrl
+ - nvme-fabrics: don't check for non-NULL module in nvmf_register_transport
+ - [x86] pinctrl: baytrail: Enable glitch filter for GPIOs used as interrupts
+ - nvme_fcloop: disassocate local port structs
+ - nvme_fcloop: fix abort race condition
+ - tpm: return a TPM_RC_COMMAND_CODE response if command is not implemented
+ - perf report: Fix a no annotate browser displayed issue
+ - [x86] staging: lustre: disable preempt while sampling processor id.
+ - [x86] ASoC: Intel: sst: Fix the return value o
+ 'sst_send_byte_stream_mrfld()'
+ - [armhf] power: supply: axp288_charger: Properly stop work on probe-error
+ / remove
+ - rt2x00: do not pause queue unconditionally on error path
+ - wl1251: check return from call to wl1251_acx_arp_ip_filter
+ - net/mlx5: Fix race for multiple RoCE enable
+ - bcache: ret IOERR when read meets metadata error
+ - bcache: stop writeback thread after detaching
+ - bcache: segregate flash only volume write streams
+ - scsi: libsas: Use dynamic alloced work to avoid sas event lost
+ - net: Fix netdev_WARN_ONCE macro
+ - scsi: libsas: fix memory leak in sas_smp_get_phy_events() (CVE-2018-7757)
+ - scsi: libsas: fix error when getting phy events
+ - scsi: libsas: initialize sas_phy status according to response of DISCOVER
+ - net/mlx5e: IPoIB, Use correct timestamp in child receive flow
+ - blk-mq: fix kernel oops in blk_mq_tag_idle()
+ - tty: n_gsm: Allow ADM response in addition to UA for control dlci
+ - block, bfq: put async queues for root bfq groups too
+ - serdev: Fix serdev_uevent failure on ACPI enumerated serdev-controllers
+ - i40evf: don't rely on netif_running() outside rtnl_lock()
+ - drm/amd/powerplay: fix memory leakage when reload (v2)
+ - cxgb4vf: Fix SGE FL buffer initialization logic for 64K pages
+ - PM / domains: Don't skip driver's ->suspend|resume_noirq() callbacks
+ - scsi: megaraid_sas: Error handling for invalid ldcount provided by
+ firmware in RAID map
+ - scsi: megaraid_sas: unload flag should be set after scsi_remove_host is
+ called
+ - RDMA/cma: Fix rdma_cm path querying for RoCE
+ - [x86] gart: Exclude GART aperture from vmcore
+ - sdhci: Advertise 2.0v supply on SDIO host controller
+ - Input: goodix - disable IRQs while suspended
+ - mtd: mtd_oobtest: Handle bitflips during reads
+ - crypto: aes-generic - build with -Os on gcc-7+
+ - perf tools: Fix copyfile_offset update of output offset
+ - tcmu: release blocks for partially setup cmds
+ - [x86] thermal: int3400_thermal: fix error handling in
+ int3400_thermal_probe()
+ - [x86] drm/i915/cnp: Ignore VBT request for know invalid DDC pin.
+ - [x86] drm/i915/cnp: Properly handle VBT ddc pin out of bounds.
+ - [x86] microcode: Propagate return value from updating functions
+ - [x86] CPU: Add a microcode loader callback
+ - [x86] CPU: Check CPU feature bits after microcode upgrade
+ - [x86] microcode: Get rid of struct apply_microcode_ctx
+ - [x86] microcode/intel: Check microcode revision before updating sibling
+ threads
+ - [x86] microcode/intel: Writeback and invalidate caches before updating
+ microcode
+ - [x86] microcode: Do not upload microcode if CPUs are offline
+ - [x86] microcode/intel: Look into the patch cache first
+ - [x86] microcode: Request microcode on the BSP
+ - [x86] microcode: Synchronize late microcode loading
+ - [x86] microcode: Attempt late loading only when new microcode is present
+ - [x86] microcode: Fix CPU synchronization routine
+ - arp: fix arp_filter on l3slave devices
+ - ipv6: the entire IPv6 header chain must fit the first fragment
+ - lan78xx: Crash in lan78xx_writ_reg (Workqueue: events
+ lan78xx_deferred_multicast_write)
+ - net: dsa: Discard frames from unused ports
+ - net: fix possible out-of-bound read in skb_network_protocol()
+ - net/ipv6: Fix route leaking between VRFs
+ - net/ipv6: Increment OUTxxx counters after netfilter hook
+ - netlink: make sure nladdr has correct size in netlink_connect()
+ - net/mlx5e: Verify coalescing parameters in range
+ - net sched actions: fix dumping which requires several messages to user
+ space
+ - net/sched: fix NULL dereference in the error path of tcf_bpf_init()
+ - pptp: remove a buggy dst release in pptp_connect()
+ - r8169: fix setting driver_data after register_netdev
+ - sctp: do not leak kernel memory to user space
+ - sctp: sctp_sockaddr_af must check minimal addr length for AF_INET6
+ - sky2: Increase D3 delay to sky2 stops working after suspend
+ - vhost: correctly remove wait queue during poll failure
+ - vlan: also check phy_driver ts_info for vlan's real device
+ - vrf: Fix use after free and double free in vrf_finish_output
+ - bonding: fix the err path for dev hwaddr sync in bond_enslave
+ - bonding: move dev_mc_sync after master_upper_dev_link in bond_enslave
+ - bonding: process the err returned by dev_set_allmulti properly in
+ bond_enslave
+ - net: fool proof dev_valid_name()
+ - ip_tunnel: better validate user provided tunnel names
+ - ipv6: sit: better validate user provided tunnel names
+ - ip6_gre: better validate user provided tunnel names
+ - ip6_tunnel: better validate user provided tunnel names
+ - vti6: better validate user provided tunnel names
+ - net/mlx5e: Set EQE based as default TX interrupt moderation mode
+ - net_sched: fix a missing idr_remove() in u32_delete_key()
+ - net/sched: fix NULL dereference in the error path of tcf_vlan_init()
+ - net/mlx5e: Avoid using the ipv6 stub in the TC offload neigh update path
+ - net/mlx5e: Fix memory usage issues in offloading TC flows
+ - net/sched: fix NULL dereference in the error path of tcf_sample_init()
+ - nfp: use full 40 bits of the NSP buffer address
+ - ipv6: sr: fix seg6 encap performances with TSO enabled
+ - net/mlx5e: Don't override vport admin link state in switchdev mode
+ - net/mlx5e: Sync netdev vxlan ports at open
+ - net/sched: fix NULL dereference in the error path of tunnel_key_init()
+ - net/sched: fix NULL dereference on the error path of tcf_skbmod_init()
+ - strparser: Fix sign of err codes
+ - net/mlx4_en: Fix mixed PFC and Global pause user control requests
+ - net/mlx5e: Fix traffic being dropped on VF representor
+ - vhost: validate log when IOTLB is enabled
+ - route: check sysctl_fib_multipath_use_neigh earlier than hash
+ - team: move dev_mc_sync after master_upper_dev_link in team_port_add
+ - vhost_net: add missing lock nesting notation
+ - net/mlx4_core: Fix memory leak while delete slave's resources
+
+ [ Roger Shimizu ]
+ * [armel] Bring back armel build by reverting two commits that disabled
+ armel previously:
+ - [2ed70eb] "Add empty featuresets for armel to help abiupdate script"
+ - [5f62872] "(Temporarily) disable armel kernel image build"
+ * [armel] Reduce armel image size by:
+ - Set CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+ - Change MTD, MTD_CMDLINE_PARTS, RTC_DRV_MV, and SPI_ORION from
+ built-in to module.
+ - Disable VT, ZSWAP, RD_BZIP2, and RD_LZMA.
+ Thanks to Leigh Brown <leigh@solinno.co.uk> for his idea to disable VT.
+ * [armel] Add dependency of udeb modules (fixes FTBFS):
+ - Add lzo_decompress to lzo-modules.
+ - Add cmdlinepart to mtd-modules.
+ * [armel] Add dependency of udeb packages (fixes FTBFS):
+ - Add package dependency of mtd-modules to jffs2-modules.
+ - Add package dependency of lzo-modules to squashfs-modules.
+
+ [ Ben Hutchings ]
+ * wireless: Disable regulatory.db direct loading (see #892229)
+ * Bump ABI to 3
+ * scsi: libsas: direct call probe and destruct (CVE-2017-18232)
+ * ext4: fail ext4_iget for root directory if unallocated (CVE-2018-1092)
+ * ext4: add validity checks for bitmap block numbers (CVE-2018-1093)
+ * ext4: always initialize the crc32c checksum driver (CVE-2018-1094)
+ * scsi: libsas: defer ata device eh commands to libata (CVE-2018-10021)
+ * [armel/marvell] linux-image: Replace supported model list with wiki link
+ * [armhf] udeb: Add i2c-exynos5 to i2c-modules (Closes: #895976)
+ * [arm*] iio: Enable DHT11 as module (Closes: #873176)
+ * udeb: Move arc4 and ecb from nic-wireless-modules to crypto-modules
+ (Closes: #895362)
+ * SCSI: Enable SCSI_SYM53C8XX_2 as module on all architectures
+ (Closes: #895532)
+ * [x86] Enable MFD_AXP20X_I2C, AXP288_FUEL_GAUGE as modules (Closes: #895129)
+ * w1: Enable all "slave" device drivers (Closes: #895340)
+ * [arm64] net/phy: Enable MDIO_BUS_MUX_MMIOREG as module (Closes: #894336)
+ * [x86] net: Enable THUNDERBOLT_NET as module (Closes: #894310)
+ * [x86] platform: Enable DELL_SMBIOS_SMM, DELL_SMBIOS_WMI as modules
+ (closes: #893976)
+ * ath9k_htc: Fix regression in 4.15, thanks to Ben Caradoc-Davies
+ (Closes: #891060)
+ - mac80211: add ieee80211_hw flag for QoS NDP support
+ - ath9k_htc: use non-QoS NDP for AP probing
+ * squashfs: Enable SQUASHFS_ZSTD (Closes: #883410)
+ * block: Enable BLK_SED_OPAL (except on armel)
+ * [arm64] Enable ARCH_SYNQUACER and related driver modules (Closes: #891787)
+ * [arm64] PCI: Enable PCI_TEGRA (Closes: #888817)
+ * [amd64] net: Enable AQTION as module
+ * udeb: Rename lzo-modules to compress-modules
+ * udeb: Add zstd_decompress to compress-modules and make squashfs-modules
+ depend on it
+
+ [ Vagrant Cascadian ]
+ * [armhf] Add patch to fix loading of imx6q-cpufreq module.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 19 Apr 2018 11:13:03 +0100
+
+linux (4.15.11-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.5
+ - IB/umad: Fix use of unprotected device pointer
+ - IB/qib: Fix comparison error with qperf compare/swap test
+ - IB/mlx4: Fix incorrectly releasing steerable UD QPs when have only ETH
+ ports
+ - IB/core: Fix two kernel warnings triggered by rxe registration
+ - IB/core: Fix ib_wc structure size to remain in 64 bytes boundary
+ - IB/core: Avoid a potential OOPs for an unused optional parameter
+ - RDMA/rxe: Fix a race condition related to the QP error state
+ - RDMA/rxe: Fix a race condition in rxe_requester()
+ - RDMA/rxe: Fix rxe_qp_cleanup()
+ - [powerpc*] cpufreq: powernv: Dont assume distinct pstate values for
+ nominal and pmin
+ - swiotlb: suppress warning when __GFP_NOWARN is set
+ - PM / devfreq: Propagate error from devfreq_add_device()
+ - mwifiex: resolve reset vs. remove()/shutdown() deadlocks
+ - ocfs2: try a blocking lock before return AOP_TRUNCATED_PAGE
+ - trace_uprobe: Display correct offset in uprobe_events
+ - [powerpc*] radix: Remove trace_tlbie call from radix__flush_tlb_all
+ - [powerpc*] kernel: Block interrupts when updating TIDR
+ - [powerpc*] vas: Don't set uses_vas for kernel windows
+ - [powerpc*] numa: Invalidate numa_cpu_lookup_table on cpu remove
+ - [powerpc*] mm: Flush radix process translations when setting MMU type
+ - [powerpc*] xive: Use hw CPU ids when configuring the CPU queues
+ - dma-buf: fix reservation_object_wait_timeout_rcu once more v2
+ - [s390x] fix handling of -1 in set{,fs}[gu]id16 syscalls
+ - [arm64] dts: msm8916: Correct ipc references for smsm
+ - [x86] gpu: add CFL to early quirks
+ - [x86] kexec: Make kexec (mostly) work in 5-level paging mode
+ - [x86] xen: init %gs very early to avoid page faults with stack protector
+ - [x86] PM: Make APM idle driver initialize polling state
+ - mm, memory_hotplug: fix memmap initialization
+ - [amd64] entry: Clear extra registers beyond syscall arguments, to reduce
+ speculation attack surface
+ - [amd64] entry/compat: Clear registers for compat syscalls, to reduce
+ speculation attack surface
+ - [armhf] crypto: sun4i_ss_prng - fix return value of sun4i_ss_prng_generate
+ - [armhf] crypto: sun4i_ss_prng - convert lock to _bh in
+ sun4i_ss_prng_generate
+ - [powerpc*] mm/radix: Split linear mapping on hot-unplug
+ - [x86] speculation: Update Speculation Control microcode blacklist
+ - [x86] speculation: Correct Speculation Control microcode blacklist again
+ - [x86] Revert "x86/speculation: Simplify
+ indirect_branch_prediction_barrier()"
+ - [x86] KVM: Reduce retpoline performance impact in
+ slot_handle_level_range(), by always inlining iterator helper methods
+ - [X86] nVMX: Properly set spec_ctrl and pred_cmd before merging MSRs
+ - [x86] KVM/nVMX: Set the CPU_BASED_USE_MSR_BITMAPS if we have a valid L02
+ MSR bitmap
+ - [x86] speculation: Clean up various Spectre related details
+ - PM / runtime: Update links_count also if !CONFIG_SRCU
+ - PM: cpuidle: Fix cpuidle_poll_state_init() prototype
+ - [x86] platform: wmi: fix off-by-one write in wmi_dev_probe()
+ - [amd64] entry: Clear registers for exceptions/interrupts, to reduce
+ speculation attack surface
+ - [amd64] entry: Merge SAVE_C_REGS and SAVE_EXTRA_REGS, remove unused
+ extensions
+ - [amd64] entry: Merge the POP_C_REGS and POP_EXTRA_REGS macros into a
+ single POP_REGS macro
+ - [amd64] entry: Interleave XOR register clearing with PUSH instructions
+ - [amd64] entry: Introduce the PUSH_AND_CLEAN_REGS macro
+ - [amd64] entry: Use PUSH_AND_CLEAN_REGS in more cases
+ - [amd64] entry: Get rid of the ALLOC_PT_GPREGS_ON_STACK and
+ SAVE_AND_CLEAR_REGS macros
+ - [amd64] entry: Indent PUSH_AND_CLEAR_REGS and POP_REGS properly
+ - [amd64] entry: Fix paranoid_entry() frame pointer warning
+ - [amd64] entry: Remove the unused 'icebp' macro
+ - gfs2: Fixes to "Implement iomap for block_map"
+ - objtool: Fix segfault in ignore_unreachable_insn()
+ - [x86] debug, objtool: Annotate WARN()-related UD2 as reachable
+ - [x86] debug: Use UD2 for WARN()
+ - [x86] speculation: Fix up array_index_nospec_mask() asm constraint
+ - nospec: Move array_index_nospec() parameter checking into separate macro
+ - [x86] speculation: Add <asm/msr-index.h> dependency
+ - [x86] mm: Rename flush_tlb_single() and flush_tlb_one() to
+ __flush_tlb_one_[user|kernel]()
+ - [x86] cpu: Rename cpu_data.x86_mask to cpu_data.x86_stepping
+ - [x86] spectre: Fix an error message
+ - [x86] cpu: Change type of x86_cache_size variable to unsigned int
+ - [amd64] entry: Fix CR3 restore in paranoid_exit()
+ - drm/ttm: Don't add swapped BOs to swap-LRU list
+ - drm/ttm: Fix 'buf' pointer update in ttm_bo_vm_access_kmap() (v2)
+ - drm/qxl: unref cursor bo when finished with it
+ - drm/qxl: reapply cursor after resetting primary
+ - drm/amd/powerplay: Fix smu_table_entry.handle type
+ - drm/ast: Load lut in crtc_commit
+ - drm: Check for lessee in DROP_MASTER ioctl
+ - [arm64] Add missing Falkor part number for branch predictor hardening
+ - drm/radeon: Add dpm quirk for Jet PRO (v2)
+ - drm/radeon: adjust tested variable
+ - [x86] smpboot: Fix uncore_pci_remove() indexing bug when hot-removing a
+ physical CPU
+ - [powerpc*] rtc-opal: Fix handling of firmware error codes, prevent busy
+ loops
+ - mbcache: initialize entry->e_referenced in mb_cache_entry_create()
+ - mmc: sdhci: Implement an SDHCI-specific bounce buffer
+ - [armhf,arm64] mmc: bcm2835: Don't overwrite max frequency unconditionally
+ - [arm64] Revert "mmc: meson-gx: include tx phase in the tuning process"
+ - mlx5: fix mlx5_get_vector_affinity to start from completion vector 0
+ - [x86] Revert "apple-gmux: lock iGP IO to protect from vgaarb changes"
+ - ext4: fix a race in the ext4 shutdown path
+ - ext4: save error to disk in __ext4_grp_locked_error()
+ - ext4: correct documentation for grpid mount option
+ - mm: Fix memory size alignment in devm_memremap_pages_release()
+ - [mips*] Fix typo BIG_ENDIAN to CPU_BIG_ENDIAN
+ - [mips*] CPS: Fix MIPS_ISA_LEVEL_RAW fallout
+ - [mips*] Fix incorrect mem=X@Y handling
+ - [arm64] PCI: Disable MSI for HiSilicon Hip06/Hip07 only in Root Port mode
+ - [armhf,arm64] PCI: iproc: Fix NULL pointer dereference for BCMA
+ - [x86] PCI: pciehp: Assume NoCompl+ for Thunderbolt ports
+ - console/dummy: leave .con_font_get set to NULL
+ - rbd: whitelist RBD_FEATURE_OPERATIONS feature bit
+ - xen: Fix {set,clear}_foreign_p2m_mapping on autotranslating guests
+ - xenbus: track caller request id
+ - seq_file: fix incomplete reset on read from zero offset
+ - tracing: Fix parsing of globs with a wildcard at the beginning
+ - mpls, nospec: Sanitize array index in mpls_label_ok() (CVE-2017-5753)
+ - rtlwifi: rtl8821ae: Fix connection lost problem correctly
+ - [arm64] proc: Set PTE_NG for table entries to avoid traversing them twice
+ - xprtrdma: Fix calculation of ri_max_send_sges
+ - xprtrdma: Fix BUG after a device removal
+ - blk-wbt: account flush requests correctly
+ - target/iscsi: avoid NULL dereference in CHAP auth error path
+ - iscsi-target: make sure to wake up sleeping login worker
+ - dm: correctly handle chained bios in dec_pending()
+ - Btrfs: fix deadlock in run_delalloc_nocow
+ - Btrfs: fix crash due to not cleaning up tree log block's dirty bits
+ - Btrfs: fix extent state leak from tree log
+ - Btrfs: fix btrfs_evict_inode to handle abnormal inodes correctly
+ - Btrfs: fix use-after-free on root->orphan_block_rsv
+ - Btrfs: fix unexpected -EEXIST when creating new inode
+ - 9p/trans_virtio: discard zero-length reply
+ - mtd: nand: vf610: set correct ooblayout
+ - ALSA: hda - Fix headset mic detection problem for two Dell machines
+ - ALSA: usb-audio: Fix UAC2 get_ctl request with a RANGE attribute
+ - ALSA: hda/realtek - Add headset mode support for Dell laptop
+ - ALSA: hda/realtek - Enable Thinkpad Dock device for ALC298 platform
+ - ALSA: hda/realtek: PCI quirk for Fujitsu U7x7
+ - ALSA: usb-audio: add implicit fb quirk for Behringer UFX1204
+ - ALSA: usb: add more device quirks for USB DSD devices
+ - ALSA: seq: Fix racy pool initializations (CVE-2018-7566)
+ - [armhf,arm64] mvpp2: fix multicast address filter
+ - usb: Move USB_UHCI_BIG_ENDIAN_* out of USB_SUPPORT
+ - [x86] mm, mm/hwpoison: Don't unconditionally unmap kernel 1:1 pages
+ - [armhf] dts: exynos: fix RTC interrupt for exynos5410
+ - [arm64] dts: msm8916: Add missing #phy-cells
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.6
+ - tun: fix tun_napi_alloc_frags() frag allocator
+ - ptr_ring: fail early if queue occupies more than KMALLOC_MAX_SIZE
+ - ptr_ring: try vmalloc() when kmalloc() fails
+ - selinux: ensure the context is NUL terminated in
+ security_context_to_sid_core()
+ - selinux: skip bounded transition processing if the policy isn't loaded
+ - media: pvrusb2: properly check endpoint types
+ - [x86] crypto: twofish-3way - Fix %rbp usage
+ - blk_rq_map_user_iov: fix error override
+ - [x86] KVM: fix escape of guest dr6 to the host
+ - kcov: detect double association with a single task
+ - netfilter: x_tables: fix int overflow in xt_alloc_table_info()
+ - netfilter: x_tables: avoid out-of-bounds reads in
+ xt_request_find_{match|target}
+ - netfilter: ipt_CLUSTERIP: fix out-of-bounds accesses in
+ clusterip_tg_check()
+ - netfilter: on sockopt() acquire sock lock only in the required scope
+ - netfilter: xt_cgroup: initialize info->priv in cgroup_mt_check_v1()
+ - netfilter: xt_RATEEST: acquire xt_rateest_mutex for hash insert
+ - rds: tcp: correctly sequence cleanup on netns deletion.
+ - rds: tcp: atomically purge entries from rds_tcp_conn_list during netns
+ delete
+ - net: avoid skb_warn_bad_offload on IS_ERR
+ - net_sched: gen_estimator: fix lockdep splat
+ - [arm64] dts: add #cooling-cells to CPU nodes
+ - dn_getsockoptdecnet: move nf_{get/set}sockopt outside sock lock
+ - xhci: Fix NULL pointer in xhci debugfs
+ - xhci: Fix xhci debugfs devices node disappearance after hibernation
+ - xhci: xhci debugfs device nodes weren't removed after device plugged out
+ - xhci: fix xhci debugfs errors in xhci_stop
+ - usbip: keep usbip_device sockfd state in sync with tcp_socket
+ - [x86] mei: me: add cannon point device ids
+ - [x86] mei: me: add cannon point device ids for 4th device
+ - vmalloc: fix __GFP_HIGHMEM usage for vmalloc_32 on 32b systems
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.7
+ - netfilter: drop outermost socket lock in getsockopt()
+ - [arm64] mm: don't write garbage into TTBR1_EL1 register
+ - kconfig.h: Include compiler types to avoid missed struct attributes
+ - scsi: ibmvfc: fix misdefined reserved field in ibmvfc_fcp_rsp_info
+ - [mips*] Drop spurious __unused in struct compat_flock
+ - cfg80211: fix cfg80211_beacon_dup
+ - i2c: designware: must wait for enable
+ - [armhf,arm64] i2c: bcm2835: Set up the rising/falling edge delays
+ - X.509: fix BUG_ON() when hash algorithm is unsupported
+ - X.509: fix NULL dereference when restricting key with unsupported_sig
+ - PKCS#7: fix certificate chain verification
+ - PKCS#7: fix certificate blacklisting
+ - [x86] genirq/matrix: Handle CPU offlining proper
+ - RDMA/uverbs: Protect from races between lookup and destroy of uobjects
+ - RDMA/uverbs: Protect from command mask overflow
+ - RDMA/uverbs: Fix bad unlock balance in ib_uverbs_close_xrcd
+ - RDMA/uverbs: Fix circular locking dependency
+ - RDMA/uverbs: Sanitize user entered port numbers prior to access it
+ - iio: buffer: check if a buffer has been set up when poll is called
+ - Kbuild: always define endianess in kconfig.h
+ - [x86] apic/vector: Handle vector release on CPU unplug correctly
+ - mm, swap, frontswap: fix THP swap if frontswap enabled
+ - mm: don't defer struct page initialization for Xen pv guests
+ - uapi/if_ether.h: move __UAPI_DEF_ETHHDR libc define
+ - [armhf,arm64] irqchip/gic-v3: Use wmb() instead of smb_wmb() in
+ gic_raise_softirq()
+ - [mips*] irqchip/mips-gic: Avoid spuriously handling masked interrupts
+ - PCI/cxgb4: Extend T3 PCI quirk to T4+ devices
+ - [x86] net: thunderbolt: Tear down connection properly on suspend
+ - [x86] net: thunderbolt: Run disconnect flow asynchronously when logout is
+ received
+ - ohci-hcd: Fix race condition caused by ohci_urb_enqueue() and
+ io_watchdog_func()
+ - usb: ohci: Proper handling of ed_rm_list to handle race condition between
+ usb_kill_urb() and finish_unlinks()
+ - [arm64] Remove unimplemented syscall log message
+ - [arm64] Disable unhandled signal log messages by default
+ - [arm64] cpufeature: Fix CTR_EL0 field definitions
+ - USB: Add delay-init quirk for Corsair K70 RGB keyboards
+ - drm/edid: Add 6 bpc quirk for CPT panel in Asus UX303LA
+ - usb: host: ehci: use correct device pointer for dma ops
+ - usb: dwc3: gadget: Set maxpacket size for ep0 IN
+ - usb: dwc3: ep0: Reset TRB counter for ep0 IN
+ - usb: ldusb: add PIDs for new CASSY devices supported by this driver
+ - Revert "usb: musb: host: don't start next rx urb if current one failed"
+ - usb: gadget: f_fs: Process all descriptors during bind
+ - usb: gadget: f_fs: Use config_ep_by_speed()
+ - drm/cirrus: Load lut in crtc_commit
+ - drm/atomic: Fix memleak on ERESTARTSYS during non-blocking commits
+ - drm: Handle unexpected holes in color-eviction
+ - drm/amdgpu: disable MMHUB power gating on raven
+ - drm/amdgpu: fix VA hole handling on Vega10 v3
+ - drm/amdgpu: Add dpm quirk for Jet PRO (v2)
+ - drm/amdgpu: only check mmBIF_IOV_FUNC_IDENTIFIER on tonga/fiji
+ - drm/amdgpu: add atpx quirk handling (v2)
+ - drm/amdgpu: Avoid leaking PM domain on driver unbind (v2)
+ - drm/amdgpu: add new device to use atpx quirk
+ - [arm64] __show_regs: Only resolve kernel symbols when running at EL1
+ - [x86] drm/i915/breadcrumbs: Ignore unsubmitted signalers
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.8
+ - vsprintf: avoid misleading "(null)" for %px
+ - hrtimer: Ensure POSIX compliance (relative CLOCK_REALTIME hrtimers)
+ - ipmi_si: Fix error handling of platform device
+ - [x86] platform: dell-laptop: Allocate buffer on heap rather than globally
+ - [powerpc*] pseries: Enable RAS hotplug events later
+ - Bluetooth: btusb: Use DMI matching for QCA reset_resume quirking
+ - ixgbe: fix crash in build_skb Rx code path
+ - [x86] tpm: st33zp24: fix potential buffer overruns caused by bit glitches
+ on the bus
+ - tpm: fix potential buffer overruns caused by bit glitches on the bus
+ - [x86] tpm_i2c_infineon: fix potential buffer overruns caused by bit
+ glitches on the bus
+ - [x86] tpm_i2c_nuvoton: fix potential buffer overruns caused by bit
+ glitches on the bus
+ - [x86] tpm_tis: fix potential buffer overruns caused by bit glitches on
+ the bus
+ - ALSA: usb-audio: Add a quirck for B&W PX headphones
+ - ALSA: control: Fix memory corruption risk in snd_ctl_elem_read
+ - [x86] ALSA: x86: Fix missing spinlock and mutex initializations
+ - ALSA: hda: Add a power_save blacklist
+ - ALSA: hda - Fix pincfg at resume on Lenovo T470 dock
+ - mmc: sdhci-pci: Fix S0i3 for Intel BYT-based controllers
+ - [armhf,arm64] mmc: dw_mmc-k3: Fix out-of-bounds access through DT alias
+ - [armhf,arm64] mmc: dw_mmc: Avoid accessing registers in runtime suspended
+ state
+ - [armhf,arm64] mmc: dw_mmc: Factor out dw_mci_init_slot_caps
+ - [armhf,arm64] mmc: dw_mmc: Fix out-of-bounds access for slot's caps
+ - timers: Forward timer base before migrating timers
+ - [hppa] Use cr16 interval timers unconditionally on qemu
+ - [hppa] Reduce irq overhead when run in qemu
+ - [hppa] Fix ordering of cache and TLB flushes
+ - [hppa] Hide virtual kernel memory layout
+ - btrfs: use proper endianness accessors for super_copy
+ - block: fix the count of PGPGOUT for WRITE_SAME
+ - block: kyber: fix domain token leak during requeue
+ - block: pass inclusive 'lend' parameter to truncate_inode_pages_range
+ - vfio: disable filesystem-dax page pinning
+ - dax: fix vma_is_fsdax() helper
+ - direct-io: Fix sleep in atomic due to sync AIO
+ - [x86] xen: Zero MSR_IA32_SPEC_CTRL before suspend
+ - [x86] cpu_entry_area: Sync cpu_entry_area to initial_page_table
+ - bridge: check brport attr show in brport_show
+ - fib_semantics: Don't match route with mismatching tclassid
+ - hdlc_ppp: carrier detect ok, don't turn off negotiation
+ - [arm64] net: amd-xgbe: fix comparison to bitshift when dealing with a mask
+ - [armhf] net: ethernet: ti: cpsw: fix net watchdog timeout
+ - net: fix race on decreasing number of TX queues
+ - net: ipv4: don't allow setting net.ipv4.route.min_pmtu below 68
+ - netlink: ensure to loop over all netns in genlmsg_multicast_allns()
+ - net: sched: report if filter is too large to dump
+ - ppp: prevent unregistered channels from connecting to PPP units
+ - sctp: verify size of a new chunk in _sctp_make_chunk() (CVE-2018-5803)
+ - udplite: fix partial checksum initialization
+ - net/mlx5e: Fix TCP checksum in LRO buffers
+ - sctp: fix dst refcnt leak in sctp_v4_get_dst
+ - net/mlx5e: Specify numa node when allocating drop rq
+ - net: phy: fix phy_start to consider PHY_IGNORE_INTERRUPT
+ - tcp: Honor the eor bit in tcp_mtu_probe
+ - rxrpc: Fix send in rxrpc_send_data_packet()
+ - tcp_bbr: better deal with suboptimal GSO
+ - doc: Change the min default value of tcp_wmem/tcp_rmem.
+ - net/mlx5e: Fix loopback self test when GRO is off
+ - net_sched: gen_estimator: fix broken estimators based on percpu stats
+ - net/sched: cls_u32: fix cls_u32 on filter replace
+ - sctp: do not pr_err for the duplicated node in transport rhlist
+ - net: ipv4: Set addr_type in hash_keys for forwarded case
+ - sctp: fix dst refcnt leak in sctp_v6_get_dst()
+ - bridge: Fix VLAN reference count problem
+ - net/mlx5e: Verify inline header size do not exceed SKB linear size
+ - tls: Use correct sk->sk_prot for IPV6
+ - [arm64] amd-xgbe: Restore PCI interrupt enablement setting on resume
+ - cls_u32: fix use after free in u32_destroy_key()
+ - netlink: put module reference if dump start fails
+ - tcp: purge write queue upon RST
+ - tuntap: correctly add the missing XDP flush
+ - tuntap: disable preemption during XDP processing
+ - virtio-net: disable NAPI only when enabled during XDP set
+ - cxgb4: fix trailing zero in CIM LA dump
+ - net/mlx5: Fix error handling when adding flow rules
+ - net: phy: Restore phy_resume() locking assumption
+ - tcp: tracepoint: only call trace_tcp_send_reset with full socket
+ - l2tp: don't use inet_shutdown on tunnel destroy
+ - l2tp: don't use inet_shutdown on ppp session destroy
+ - l2tp: fix races with tunnel socket close
+ - l2tp: fix race in pppol2tp_release with session object destroy
+ - l2tp: fix tunnel lookup use-after-free race
+ - [s390x] qeth: fix underestimated count of buffer elements
+ - [s390x] qeth: fix SETIP command handling
+ - [s390x] qeth: fix overestimated count of buffer elements
+ - [s390x] qeth: fix IP removal on offline cards
+ - [s390x] qeth: fix double-free on IP add/remove race
+ - [s390x] Revert "s390/qeth: fix using of ref counter for rxip addresses"
+ - [s390x] qeth: fix IP address lookup for L3 devices
+ - [s390x] qeth: fix IPA command submission race
+ - tcp: revert F-RTO middle-box workaround
+ - tcp: revert F-RTO extension to detect more spurious timeouts
+ - blk-mq: don't call io sched's .requeue_request when requeueing rq to
+ ->dispatch
+ - media: m88ds3103: don't call a non-initalized function
+ - [x86] EDAC, sb_edac: Fix out of bound writes during DIMM configuration on
+ KNL
+ - [s390x] KVM: take care of clock-comparator sign control
+ - [s390x] KVM: provide only a single function for setting the tod (fix SCK)
+ - [s390x] KVM: consider epoch index on hotplugged CPUs
+ - [s390x] KVM: consider epoch index on TOD clock syncs
+ - nospec: Allow index argument to have const-qualified type
+ - [x86] mm: Fix {pmd,pud}_{set,clear}_flags()
+ - [armhf] orion: fix orion_ge00_switch_board_info initialization
+ - [armhf] dts: rockchip: Remove 1.8 GHz operation point from phycore som
+ - [armhf] mvebu: Fix broken PL310_ERRATA_753970 selects
+ - [x86] KVM: Fix SMRAM accessing even if VM is shutdown
+ - KVM: mmu: Fix overlap between public and private memslots
+ - [x86] KVM: Remove indirect MSR op calls from SPEC_CTRL
+ - [x86] KVM: move LAPIC initialization after VMCS creation
+ - [x86] KVM/VMX: Optimize vmx_vcpu_run() and svm_vcpu_run() by marking the
+ RDMSR path as unlikely()
+ - [x86] KVM: fix vcpu initialization with userspace lapic
+ - [x86] KVM: remove WARN_ON() for when vm_munmap() fails
+ - [x86] ACPI / bus: Parse tables as term_list for Dell XPS 9570 and
+ Precision M5530
+ - [armhf] dts: LogicPD SOM-LV: Fix I2C1 pinmux
+ - [armhf] dts: LogicPD Torpedo: Fix I2C1 pinmux
+ - [powerpc*] 64s/radix: Boot-time NULL pointer protection using a guard-PID
+ - md: only allow remove_and_add_spares when no sync_thread running.
+ - [x86] platform: dell-laptop: fix kbd_get_state's request value
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.9
+ - bpf: fix mlock precharge on arraymaps
+ - bpf: fix memory leak in lpm_trie map_free callback function
+ - bpf: fix rcu lockdep warning for lpm_trie map_free callback
+ - [amd64] bpf: implement retpoline for tail call (CVE-2017-5715)
+ - [arm64] bpf: fix out of bounds access in tail call
+ - bpf: add schedule points in percpu arrays management
+ - bpf: allow xadd only on aligned memory
+ - [powerpc*] bpf, ppc64: fix out of bounds access in tail call
+ - scsi: mpt3sas: fix oops in error handlers after shutdown/unload
+ - scsi: mpt3sas: wait for and flush running commands on shutdown/unload
+ - [x86] KVM: fix backward migration with async_PF
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.10
+ - RDMA/ucma: Limit possible option size
+ - RDMA/ucma: Check that user doesn't overflow QP state
+ - RDMA/mlx5: Fix integer overflow while resizing CQ
+ - bpf: cpumap: use GFP_KERNEL instead of GFP_ATOMIC in
+ __cpu_map_entry_alloc()
+ - IB/uverbs: Improve lockdep_check
+ - mac80211_hwsim: don't use WQ_MEM_RECLAIM
+ - [x86] drm/i915: Check for fused or unused pipes
+ - [x86] drm/i915/audio: fix check for av_enc_map overflow
+ - [x86] drm/i915: Fix rsvd2 mask when out-fence is returned
+ - [x86] drm/i915: Clear the in-use marker on execbuf failure
+ - [x86] drm/i915: Disable DC states around GMBUS on GLK
+ - [x86] drm/i915: Update watermark state correctly in sanitize_watermarks
+ - [x86] drm/i915: Try EDID bitbanging on HDMI after failed read
+ - [x86] drm/i915/perf: fix perf stream opening lock
+ - scsi: core: Avoid that ATA error handling can trigger a kernel hang or
+ oops (Closes: #891467)
+ - scsi: qla2xxx: Fix NULL pointer crash due to active timer for ABTS
+ - [x86] drm/i915: Always call to intel_display_set_init_power() in
+ resume_early.
+ - workqueue: Allow retrieval of current task's work struct
+ - drm: Allow determining if current task is output poll worker
+ - drm/nouveau: Fix deadlock on runtime suspend
+ - drm/radeon: Fix deadlock on runtime suspend
+ - drm/amdgpu: Fix deadlock on runtime suspend
+ - drm/nouveau: prefer XBGR2101010 for addfb ioctl
+ - drm/amd/powerplay/smu7: allow mclk switching with no displays
+ - drm/amd/powerplay/vega10: allow mclk switching with no displays
+ - Revert "drm/radeon/pm: autoswitch power state when in balanced mode"
+ - drm/amd/display: check for ipp before calling cursor operations
+ - drm/radeon: insist on 32-bit DMA for Cedar on PPC64/PPC64LE
+ - drm/amd/powerplay: fix power over limit on Fiji
+ - drm/amd/display: Default HDMI6G support to true. Log VBIOS table error.
+ - drm/amdgpu: used cached pcie gen info for SI (v2)
+ - drm/amdgpu: Notify sbios device ready before send request
+ - drm/radeon: fix KV harvesting
+ - drm/amdgpu: fix KV harvesting
+ - drm/amdgpu:Correct max uvd handles
+ - drm/amdgpu:Always save uvd vcpu_bo in VM Mode
+ - ovl: redirect_dir=nofollow should not follow redirect for opaque lower
+ - [mips*/octeon] irq: Check for null return on kzalloc allocation
+ - PCI: dwc: Fix enumeration end when reaching root subordinate
+ - Revert "Input: synaptics - Lenovo Thinkpad T460p devices should use RMI"
+ - bug: use %pB in BUG and stack protector failure
+ - lib/bug.c: exclude non-BUG/WARN exceptions from report_bug()
+ - mm/memblock.c: hardcode the end_pfn being -1
+ - Documentation/sphinx: Fix Directive import error
+ - loop: Fix lost writes caused by missing flag
+ - virtio_ring: fix num_free handling in error case
+ - [x390x] KVM: fix memory overwrites when not using SCA entries
+ - [arm64] mm: fix thinko in non-global page table attribute check
+ - IB/core: Fix missing RDMA cgroups release in case of failure to register
+ device
+ - Revert "nvme: create 'slaves' and 'holders' entries for hidden
+ controllers"
+ - kbuild: Handle builtin dtb file names containing hyphens
+ - dm bufio: avoid false-positive Wmaybe-uninitialized warning
+ - IB/mlx5: Fix incorrect size of klms in the memory region
+ - bcache: fix crashes in duplicate cache device register
+ - bcache: don't attach backing with duplicate UUID
+ - [x86] MCE: Save microcode revision in machine check records
+ - [x86] MCE: Serialize sysfs changes (CVE-2018-7995)
+ - perf tools: Fix trigger class trigger_on()
+ - [x86] spectre_v2: Don't check microcode versions when running under
+ hypervisors
+ - ALSA: hda/realtek - Add support headset mode for DELL WYSE
+ - ALSA: hda/realtek - Add headset mode support for Dell laptop
+ - ALSA: hda/realtek: Limit mic boost on T480
+ - ALSA: hda/realtek - Fix dock line-out volume on Dell Precision 7520
+ - ALSA: hda/realtek - Make dock sound work on ThinkPad L570
+ - ALSA: seq: Don't allow resizing pool in use
+ - ALSA: seq: More protection for concurrent write and ioctl races
+ - ALSA: hda - Fix a wrong FIXUP for alc289 on Dell machines
+ - ALSA: hda: add dock and led support for HP EliteBook 820 G3
+ - ALSA: hda: add dock and led support for HP ProBook 640 G2
+ - scsi: qla2xxx: Fix NULL pointer crash due to probe failure
+ - scsi: qla2xxx: Fix recursion while sending terminate exchange
+ - dt-bindings: Document mti,mips-cpc binding
+ - nospec: Kill array_index_nospec_mask_check()
+ - nospec: Include <asm/barrier.h> dependency
+ - [x86] entry: Reduce the code footprint of the 'idtentry' macro
+ - [x86] entry/64: Use 'xorl' for faster register clearing
+ - [x86] mm: Remove stale comment about KMEMCHECK
+ - [x86] asm: Improve how GEN_*_SUFFIXED_RMWcc() specify clobbers
+ - [x86] IO-APIC: Avoid warning in 32-bit builds
+ - [x86] LDT: Avoid warning in 32-bit builds with older gcc
+ - x86-64/realmode: Add instruction suffix
+ - Revert "x86/retpoline: Simplify vmexit_fill_RSB()"
+ - [x86] speculation: Use IBRS if available before calling into firmware
+ - [x86] retpoline: Support retpoline builds with Clang
+ - [x86] speculation, objtool: Annotate indirect calls/jumps for objtool
+ - [x86] speculation: Move firmware_restrict_branch_speculation_*() from C
+ to CPP
+ - [x86] paravirt, objtool: Annotate indirect calls
+ - [x86] boot, objtool: Annotate indirect jump in secondary_startup_64()
+ - [x86] mm/sme, objtool: Annotate indirect call in sme_encrypt_execute()
+ - objtool: Use existing global variables for options
+ - objtool: Add retpoline validation
+ - objtool: Add module specific retpoline rules
+ - objtool, retpolines: Integrate objtool with retpoline support more
+ closely
+ - objtool: Fix another switch table detection issue
+ - objtool: Fix 32-bit build
+ - [x86] kprobes: Fix kernel crash when probing .entry_trampoline code
+ - watchdog: hpwdt: SMBIOS check
+ - watchdog: hpwdt: Check source of NMI
+ - watchdog: hpwdt: fix unused variable warning
+ - watchdog: hpwdt: Remove legacy NMI sourcing.
+ - netfilter: add back stackpointer size checks (CVE-2018-1065)
+ - netfilter: ipt_CLUSTERIP: fix a race condition of proc file creation
+ - netfilter: xt_hashlimit: fix lock imbalance
+ - netfilter: x_tables: fix missing timer initialization in xt_LED
+ - netfilter: nat: cope with negative port range
+ - netfilter: IDLETIMER: be syzkaller friendly
+ - netfilter: ebtables: CONFIG_COMPAT: don't trust userland offsets
+ (CVE-2018-1068)
+ - netfilter: bridge: ebt_among: add missing match size checks
+ - netfilter: ipv6: fix use-after-free Write in nf_nat_ipv6_manip_pkt
+ - netfilter: use skb_to_full_sk in ip6_route_me_harder
+ - tpm_tis: Move ilb_base_addr to tpm_tis_data
+ - tpm: Keep CLKRUN enabled throughout the duration of transmit_cmd()
+ - tpm: delete the TPM_TIS_CLK_ENABLE flag
+ - tpm: remove unused variables
+ - tpm: only attempt to disable the LPC CLKRUN if is already enabled
+ - [x86] xen: Calculate __max_logical_packages on PV domains
+ - scsi: qla2xxx: Fix system crash for Notify ack timeout handling
+ - scsi: qla2xxx: Fix gpnid error processing
+ - scsi: qla2xxx: Move session delete to driver work queue
+ - scsi: qla2xxx: Skip IRQ affinity for Target QPairs
+ - scsi: qla2xxx: Fix re-login for Nport Handle in use
+ - scsi: qla2xxx: Retry switch command on time out
+ - scsi: qla2xxx: Serialize GPNID for multiple RSCN
+ - scsi: qla2xxx: Fix login state machine stuck at GPDB
+ - scsi: qla2xxx: Fix NPIV host cleanup in target mode
+ - scsi: qla2xxx: Relogin to target port on a cable swap
+ - scsi: qla2xxx: Fix Relogin being triggered too fast
+ - scsi: qla2xxx: Fix PRLI state check
+ - scsi: qla2xxx: Fix abort command deadlock due to spinlock
+ - scsi: qla2xxx: Replace fcport alloc with qla2x00_alloc_fcport
+ - scsi: qla2xxx: Fix scan state field for fcport
+ - scsi: qla2xxx: Clear loop id after delete
+ - scsi: qla2xxx: Defer processing of GS IOCB calls
+ - scsi: qla2xxx: Remove aborting ELS IOCB call issued as part of timeout.
+ - scsi: qla2xxx: Fix system crash in qlt_plogi_ack_unref
+ - scsi: qla2xxx: Fix memory leak in dual/target mode
+ - NFS: Fix an incorrect type in struct nfs_direct_req
+ - pNFS: Prevent the layout header refcount going to zero in pnfs_roc()
+ - NFS: Fix unstable write completion
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.11
+ - [x86] Treat R_X86_64_PLT32 as R_X86_64_PC32
+ - usb: host: xhci-rcar: add support for r8a77965
+ - xhci: Fix front USB ports on ASUS PRIME B350M-A
+ - xhci: fix endpoint context tracer output
+ - [sh4] serial: sh-sci: prevent lockup on full TTY buffers
+ - tty/serial: atmel: add new version check for usart
+ - uas: fix comparison for error code
+ - [x86] staging: comedi: fix comedi_nsamples_left.
+ - USB: storage: Add JMicron bridge 152d:2567 to unusual_devs.h
+ - usbip: vudc: fix null pointer dereference on udc->lock
+ - usb: quirks: add control message delay for 1b1c:1b20
+ - usb: usbmon: Read text within supplied buffer size
+ - usb: gadget: f_fs: Fix use-after-free in ffs_fs_kill_sb()
+ - [arm64,armhf] usb: dwc3: Fix lock-up on ID change during system
+ suspend/resume
+ - serial: 8250_pci: Add Brainboxes UC-260 4 port serial device
+ - serial: core: mark port as initialized in autoconfig
+ - earlycon: add reg-offset to physical address before mapping
+ - dm mpath: fix passing integrity data
+ - Revert "btrfs: use proper endianness accessors for super_copy"
+ - gfs2: Clean up {lookup,fillup}_metapath
+ - gfs2: Fixes to "Implement iomap for block_map" (2)
+ - [armhf] spi: imx: Fix failure path leak on GPIO request error correctly
+ - HID: multitouch: Only look at non touch fields in first packet of a
+ frame
+ - [powerpc*] KVM: Book3S HV: Avoid shifts by negative amounts
+ - drm/edid: set ELD connector type in drm_edid_to_eld()
+ - dma-buf/fence: Fix lock inversion within dma-fence-array
+ - video/hdmi: Allow "empty" HDMI infoframes
+ - [powerpc*] KVM: Book3S HV: Fix typo in kvmppc_hv_get_dirty_log_radix()
+ - HID: elo: clear BTN_LEFT mapping
+ - iwlwifi: mvm: rs: don't override the rate history in the search cycle
+ - [armhf] dts: exynos: Correct Trats2 panel reset line
+ - drm/amdgpu: fix get_max_engine_clock_in_mhz
+ - USB: ledtrig-usbport: fix of-node leak
+ - dt-bindings: serial: Add common rs485 binding for RTS polarity
+ - sched: Stop switched_to_rt() from sending IPIs to offline CPUs
+ - sched: Stop resched_cpu() from sending IPIs to offline CPUs
+ - crypto: chelsio - Fix an error code in chcr_hash_dma_map()
+ - crypto: keywrap - Add missing ULL suffixes for 64-bit constants
+ - crypto: cavium - fix memory leak on info
+ - test_firmware: fix setting old custom fw path back on exit
+ - drm/vblank: Fix vblank timestamp debugs
+ - net: ieee802154: adf7242: Fix bug if defined DEBUG
+ - perf report: Fix -D output for user metadata events
+ - net: xfrm: allow clearing socket xfrm policies.
+ - gpiolib: don't allow OPEN_DRAIN & OPEN_SOURCE flags simultaneously
+ - mtd: nand: fix interpretation of NAND_CMD_NONE in nand_command[_lp]()
+ - [arm64] net: thunderx: Set max queue count taking XDP_TX into account
+ - [armhf] dts: am335x-pepper: Fix the audio CODEC's reset pin
+ - [armhf] dts: omap3-n900: Fix the audio CODEC's reset pin
+ - mtd: nand: ifc: update bufnum mask for ver >= 2.0.0
+ - userns: Don't fail follow_automount based on s_user_ns
+ - xfrm: Fix xfrm_replay_overflow_offload_esn
+ - leds: pm8058: Silence pointer to integer size warning
+ - bpf: fix stack state printing in verifier log
+ - [armhf] drm/etnaviv: make THERMAL selectable
+ - ath10k: update tdls teardown state to target
+ - cpufreq: Fix governor module removal race
+ - [x86] KVM: Restart the guest when insn_len is zero and SEV is enabled
+ - drm/amdgpu:fix random missing of FLR NOTIFY
+ - scsi: lpfc: Fix crash during driver unload with running nvme traffic
+ - scsi: ses: don't ask for diagnostic pages repeatedly during probe
+ - [armhf] drm/sun4i: Fix format mask in DE2 driver
+ - [s390x] perf annotate: Fix unnecessary memory allocation for s390x
+ - perf annotate: Fix objdump comment parsing for Intel mov dissassembly
+ - iwlwifi: mvm: avoid dumping assert log when device is stopped
+ - drm/amdgpu:fix virtual dce bug
+ - drm/amdgpu: fix amdgpu_sync_resv v2
+ - bnxt_en: Uninitialized variable in bnxt_tc_parse_actions()
+ - [arm64] clk: qcom: msm8916: fix mnd_width for codec_digcodec
+ - mwifiex: cfg80211: do not change virtual interface during scan
+ processing
+ - ath10k: fix invalid STS_CAP_OFFSET_MASK
+ - tools/usbip: fixes build with musl libc toolchain
+ - [armhf] spi: sun6i: disable/unprepare clocks on remove
+ - bnxt_en: Don't print "Link speed -1 no longer supported" messages.
+ - scsi: core: scsi_get_device_flags_keyed(): Always return device flags
+ - scsi: devinfo: apply to HP XP the same flags as Hitachi VSP
+ - scsi: dh: add new rdac devices
+ - media: vsp1: Prevent suspending and resuming DRM pipelines
+ - dm raid: fix raid set size revalidation
+ - media: cpia2: Fix a couple off by one bugs
+ - [arm*] media: davinci: vpif_capture: add NULL check on devm_kzalloc
+ return value
+ - virtio_net: Disable interrupts if napi_complete_done rescheduled napi
+ - net: sched: drop qdisc_reset from dev_graft_qdisc
+ - veth: set peer GSO values
+ - [x86] drm/amdkfd: Fix memory leaks in kfd topology
+ - [powerpc*] modules: Don't try to restore r2 after a sibling call
+ - [powerpc/powerpc64,ppc64*] Don't trace irqs-off at interrupt return to
+ soft-disabled context
+ - [arm64] dts: renesas: salvator-common: Add EthernetAVB PHY reset
+ - agp/intel: Flush all chipset writes after updating the GGTT
+ - mac80211_hwsim: enforce PS_MANUAL_POLL to be set after PS_ENABLED
+ - mac80211: remove BUG() when interface type is invalid
+ - crypto: caam/qi - use correct print specifier for size_t
+ - mmc: mmc_test: Ensure command queue is disabled for testing
+ - Fix misannotated out-of-line _copy_to_user()
+ - ipvlan: add L2 check for packets arriving via virtual devices
+ - locking/locktorture: Fix num reader/writer corner cases
+ - ima: relax requiring a file signature for new files with zero length
+ - IB/mlx5: revisit -Wmaybe-uninitialized warning
+ - [arm64] dmaengine: qcom_hidma: check pending interrupts
+ - [x86] drm/i915/glk: Disable Guc and HuC on GLK
+
+ [ Ben Hutchings ]
+ * aufs: gen-patch: Fix Subject generation to skip SPDX-License-Identifier
+ * aufs: Update support patchset to aufs4.15-20180219 (no functional change)
+ * debian/control: Point Vcs URLs to Salsa
+ * [x86] sound/soc/intel: Enable SND_SOC_INTEL_SST_TOPLEVEL,
+ SND_SOC_INTEL_HASWELL, SND_SOC_INTEL_BAYTRAIL, SND_SST_ATOM_HIFI2_PLATFORM,
+ SND_SOC_INTEL_SKYLAKE as modules; re-enable dependent board drivers
+ (Closes: #892629)
+ * firmware_class: Refer to Debian wiki page when logging missing firmware
+ (Closes: #888405)
+ * amdgpu: Abort probing if firmware is not installed, as we do in radeon
+ * Bump ABI to 2
+ * [amd64] udeb: Add vmd to scsi-modules, required for NVMe on some systems
+ (Closes: #891482)
+ * udeb: Update patterns for PHY modules included in usb-modules
+ (Closes: #893154)
+
+ [ Uwe Kleine-König ]
+ * netfilter: enable NFT_FIB_NETDEV as module
+
+ [ Thadeu Lima de Souza Cascardo ]
+ * [powerpc,ppc64el,ppc64] Enable CRASH_DUMP (Closes: #883432)
+
+ [ Bastian Blank ]
+ * Drop note about Xen from long descriptions.
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable ROCKCHIP_IODOMAIN as a module, to enable PCIe reset.
+ * [arm64] Enable REGULATOR_FAN53555 as a module, enabling cpufreq to
+ work on rk3399 A72 cores.
+ * [arm64] Apply patch from linux-next to fix eMMC corruption on
+ Odroid-C2 (Closes: #879072).
+
+ [ Salvatore Bonaccorso ]
+ * mac80211_hwsim: fix possible memory leak in hwsim_new_radio_nl()
+ (CVE-2018-8087)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Tue, 20 Mar 2018 09:31:07 +0100
+
+linux (4.15.4-1) unstable; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.15
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.1
+ - Bluetooth: hci_serdev: Init hci_uart proto_lock to avoid oops
+ - tools/gpio: Fix build error with musl libc
+ - gpio: stmpe: i2c transfer are forbiden in atomic context
+ - gpio: Fix kernel stack leak to userspace
+ - scsi: storvsc: missing error code in storvsc_probe()
+ - staging: lustre: separate a connection destroy from free struct kib_conn
+ - staging: ccree: NULLify backup_info when unused
+ - staging: ccree: fix fips event irq handling build
+ - usb: option: Add support for FS040U modem
+ - serial: 8250_dw: Revert "Improve clock rate setting"
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.2
+ - [x86] KVM: Make indirect calls in emulator speculation safe
+ - [x86] KVM: VMX: Make indirect call speculation safe
+ - module/retpoline: Warn about missing retpoline in module
+ - [x86] cpufeatures: Add CPUID_7_EDX CPUID leaf
+ - [x86] cpufeatures: Add Intel feature bits for Speculation Control
+ - [x86] cpufeatures: Add AMD feature bits for Speculation Control
+ - [x86] msr: Add definitions for new speculation control MSRs
+ - [x86] pti: Do not enable PTI on CPUs which are not vulnerable to
+ Meltdown
+ - [x86] cpufeature: Blacklist SPEC_CTRL/PRED_CMD on early Spectre v2
+ microcodes
+ - [x86] speculation: Add basic IBPB (Indirect Branch Prediction Barrier)
+ support
+ - [x86] alternative: Print unadorned pointers
+ - [x86] nospec: Fix header guards names
+ - [x86] bugs: Drop one "mitigation" from dmesg
+ - [x86] cpu/bugs: Make retpoline module warning conditional
+ - [x86] cpufeatures: Clean up Spectre v2 related CPUID flags
+ - [x86] retpoline: Simplify vmexit_fill_RSB()
+ - [x86] speculation: Simplify indirect_branch_prediction_barrier()
+ - [x86] KVM: nVMX: Eliminate vmcs02 pool
+ - [x86] KVM: VMX: introduce alloc_loaded_vmcs
+ - objtool: Improve retpoline alternative handling
+ - objtool: Add support for alternatives at the end of a section
+ - objtool: Warn on stripped section symbol
+ - [x86] mm: Fix overlap of i386 CPU_ENTRY_AREA with FIX_BTMAP
+ - [x86] spectre: Check CONFIG_RETPOLINE in command line parser
+ - [x86] entry/64: Remove the SYSCALL64 fast path
+ - [x86] entry/64: Push extra regs right away
+ - [x86] asm: Move 'status' from thread_struct to thread_info
+ - Documentation: Document array_index_nospec
+ - array_index_nospec: Sanitize speculative array de-references
+ - [x86] Implement array_index_mask_nospec
+ - [x86] Introduce barrier_nospec
+ - [x86] Introduce __uaccess_begin_nospec() and uaccess_try_nospec
+ - [x86] usercopy: Replace open coded stac/clac with __uaccess_{begin, end}
+ - [x86] uaccess: Use __uaccess_begin_nospec() and uaccess_try_nospec
+ - [x86] get_user: Use pointer masking to limit speculation
+ - [x86] syscall: Sanitize syscall table de-references under speculation
+ - vfs, fdtable: Prevent bounds-check bypass via speculative execution
+ - nl80211: Sanitize array index in parse_txq_params
+ - [x86] spectre: Report get_user mitigation for spectre_v1
+ - [x86] spectre: Fix spelling mistake: "vunerable"-> "vulnerable"
+ - [x86] cpuid: Fix up "virtual" IBRS/IBPB/STIBP feature bits on Intel
+ - [x86] speculation: Use Indirect Branch Prediction Barrier in context
+ switch
+ - [x86] paravirt: Remove 'noreplace-paravirt' cmdline option
+ - [x86] KVM: VMX: make MSR bitmaps per-VCPU
+ - [x86] kvm: Update spectre-v1 mitigation
+ - [x86] retpoline: Avoid retpolines for built-in __init functions
+ - [x86] spectre: Simplify spectre_v2 command line parsing
+ - [x86] pti: Mark constant arrays as __initconst
+ - [x86] speculation: Fix typo IBRS_ATT, which should be IBRS_ALL
+ - [x86] KVM: Update the reverse_cpuid list to include CPUID_7_EDX
+ - [x86] KVM: Add IBPB support
+ - [x86] KVM/VMX: Emulate MSR_IA32_ARCH_CAPABILITIES
+ - [x86] KVM/VMX: Allow direct access to MSR_IA32_SPEC_CTRL
+ - [x86] KVM/SVM: Allow direct access to MSR_IA32_SPEC_CTRL
+ - serial: core: mark port as initialized after successful IRQ change
+ - fpga: region: release of_parse_phandle nodes after use
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.3
+ - ip6mr: fix stale iterator
+ - net: igmp: add a missing rcu locking section
+ - qlcnic: fix deadlock bug
+ - qmi_wwan: Add support for Quectel EP06
+ - r8169: fix RTL8168EP take too long to complete driver initialization.
+ - tcp: release sk_frag.page in tcp_disconnect
+ - vhost_net: stop device during reset owner
+ - ipv6: addrconf: break critical section in addrconf_verify_rtnl()
+ - ipv6: change route cache aging logic
+ - Revert "defer call to mem_cgroup_sk_alloc()"
+ - net: ipv6: send unsolicited NA after DAD
+ - rocker: fix possible null pointer dereference in
+ rocker_router_fib_event_work
+ - tcp_bbr: fix pacing_gain to always be unity when using lt_bw
+ - cls_u32: add missing RCU annotation.
+ - ipv6: Fix SO_REUSEPORT UDP socket with implicit sk_ipv6only
+ - soreuseport: fix mem leak in reuseport_add_sock()
+ - net_sched: get rid of rcu_barrier() in tcf_block_put_ext()
+ - net: sched: fix use-after-free in tcf_block_put_ext
+ - crypto: tcrypt - fix S/G table for test_aead_speed()
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.15.4
+ - cifs: Fix missing put_xid in cifs_file_strict_mmap
+ - cifs: Fix autonegotiate security settings mismatch
+ - CIFS: zero sensitive data when freeing
+ - cpufreq: mediatek: add mediatek related projects into blacklist
+ - [arm64] watchdog: gpio_wdt: set WDOG_HW_RUNNING in gpio_wdt_stop
+ - Revert "drm/i915: mark all device info struct with __initconst"
+ - sched/rt: Use container_of() to get root domain in
+ rto_push_irq_work_func()
+ - sched/rt: Up the root domain ref count when passing it around via IPIs
+ - [arm64] mm: Use non-global mappings for kernel space
+ - [arm64] mm: Temporarily disable ARM64_SW_TTBR0_PAN
+ - [arm64] mm: Move ASID from TTBR0 to TTBR1
+ - [arm64] mm: Remove pre_ttbr0_update_workaround for Falkor erratum #E1003
+ - [arm64] mm: Rename post_ttbr0_update_workaround
+ - [arm64] mm: Fix and re-enable ARM64_SW_TTBR0_PAN
+ - [arm64] mm: Allocate ASIDs in pairs
+ - [arm64] mm: Add arm64_kernel_unmapped_at_el0 helper
+ - [arm64] mm: Invalidate both kernel and user ASIDs when performing TLBI
+ - [arm64] entry: Add exception trampoline page for exceptions from EL0
+ - [arm64] mm: Map entry trampoline into trampoline and kernel page tables
+ - [arm64] entry: Explicitly pass exception level to kernel_ventry macro
+ - [arm64] entry: Hook up entry trampoline to exception vectors
+ - [arm64] erratum: Work around Falkor erratum #E1003 in trampoline code
+ - [arm64] cpu_errata: Add Kryo to Falkor 1003 errata
+ - [arm64] tls: Avoid unconditional zeroing of tpidrro_el0 for native tasks
+ - [arm64] entry: Add fake CPU feature for unmapping the kernel at EL0
+ - [arm64] kaslr: Put kernel vectors address in separate data page
+ - [arm64] use RET instruction for exiting the trampoline
+ - [arm64] Kconfig: Add CONFIG_UNMAP_KERNEL_AT_EL0
+ - [arm64] Kconfig: Reword UNMAP_KERNEL_AT_EL0 kconfig entry
+ - [arm64] Take into account ID_AA64PFR0_EL1.CSV3
+ - [arm64] capabilities: Handle duplicate entries for a capability
+ - [arm64] mm: Introduce TTBR_ASID_MASK for getting at the ASID in the TTBR
+ - [arm64] kpti: Fix the interaction between ASID switching and software PAN
+ - [arm64] cputype: Add MIDR values for Cavium ThunderX2 CPUs
+ - [arm64] Turn on KPTI only on CPUs that need it
+ - [arm64] kpti: Make use of nG dependent on arm64_kernel_unmapped_at_el0()
+ - [arm64] mm: Permit transitioning from Global to Non-Global without BBM
+ - [arm64] kpti: Add ->enable callback to remap swapper using nG mappings
+ - [arm64] Force KPTI to be disabled on Cavium ThunderX
+ - [arm64] entry: Reword comment about post_ttbr_update_workaround
+ - [arm64] idmap: Use "awx" flags for .idmap.text .pushsection directives
+ - [arm64] barrier: Add CSDB macros to control data-value prediction
+ - [arm64] Implement array_index_mask_nospec()
+ - [arm64] Make USER_DS an inclusive limit
+ - [arm64] Use pointer masking to limit uaccess speculation
+ - [arm64] entry: Ensure branch through syscall table is bounded under
+ speculation
+ - [arm64] uaccess: Prevent speculative use of the current addr_limit
+ - [arm64] uaccess: Don't bother eliding access_ok checks in __{get,
+ put}_user
+ - [arm64] uaccess: Mask __user pointers for __arch_{clear, copy_*}_user
+ - [arm64] futex: Mask __user pointers prior to dereference
+ - [arm64] cpufeature: __this_cpu_has_cap() shouldn't stop early
+ - [arm64] Run enable method for errata work arounds on late CPUs
+ - [arm64] cpufeature: Pass capability structure to ->enable callback
+ - drivers/firmware: Expose psci_get_version through psci_ops structure
+ - [arm64] Move post_ttbr_update_workaround to C code
+ - [arm64] Add skeleton to harden the branch predictor against aliasing
+ attacks
+ - [arm64] Move BP hardening to check_and_switch_context
+ - [arm64] KVM: Use per-CPU vector when BP hardening is enabled
+ - [arm64] entry: Apply BP hardening for high-priority synchronous
+ exceptions
+ - [arm64] entry: Apply BP hardening for suspicious interrupts from EL0
+ - [arm64] cputype: Add missing MIDR values for Cortex-A72 and Cortex-A75
+ - [arm64] Implement branch predictor hardening for affected Cortex-A CPUs
+ - [arm64] Implement branch predictor hardening for Falkor
+ - [arm64] Branch predictor hardening for Cavium ThunderX2
+ - [arm64] KVM: Increment PC after handling an SMC trap
+ - [armhf,arm64] KVM: Consolidate the PSCI include files
+ - [armhf,arm64] KVM: Add PSCI_VERSION helper
+ - [armhf,arm64] KVM: Add smccc accessors to PSCI code
+ - [armhf,arm64] KVM: Implement PSCI 1.0 support
+ - [armhf,arm64] KVM: Advertise SMCCC v1.1
+ - [arm64] KVM: Make PSCI_VERSION a fast path
+ - [armhf,arm64] KVM: Turn kvm_psci_version into a static inline
+ - [arm64] KVM: Report SMCCC_ARCH_WORKAROUND_1 BP hardening support
+ - [arm64] KVM: Add SMCCC_ARCH_WORKAROUND_1 fast handling
+ - firmware/psci: Expose PSCI conduit
+ - firmware/psci: Expose SMCCC version through psci_ops
+ - arm/arm64: smccc: Make function identifiers an unsigned quantity
+ - arm/arm64: smccc: Implement SMCCC v1.1 inline primitive
+ - [arm64] Add ARM_SMCCC_ARCH_WORKAROUND_1 BP hardening support
+ - [arm64] Kill PSCI_GET_VERSION as a variant-2 workaround
+ - mtd: cfi: convert inline functions to macros
+ - mtd: nand: brcmnand: Disable prefetch by default
+ - mtd: nand: Fix nand_do_read_oob() return value
+ - mtd: nand: sunxi: Fix ECC strength choice
+ - ubi: Fix race condition between ubi volume creation and udev
+ - ubi: fastmap: Erase outdated anchor PEBs during attach
+ - ubi: block: Fix locking for idr_alloc/idr_remove
+ - ubifs: free the encrypted symlink target
+ - nfs/pnfs: fix nfs_direct_req ref leak when i/o falls back to the mds
+ - nfs41: do not return ENOMEM on LAYOUTUNAVAILABLE
+ - NFS: Add a cond_resched() to nfs_commit_release_pages()
+ - NFS: Fix nfsstat breakage due to LOOKUPP
+ - NFS: commit direct writes even if they fail partially
+ - NFS: reject request for id_legacy key without auxdata
+ - NFS: Fix a race between mmap() and O_DIRECT
+ - nfsd: Detect unhashed stids in nfsd4_verify_open_stid()
+ - kernfs: fix regression in kernfs_fop_write caused by wrong type
+ - ahci: Annotate PCI ids for mobile Intel chipsets as such
+ - ahci: Add PCI ids for Intel Bay Trail, Cherry Trail and Apollo Lake AHCI
+ - ahci: Add Intel Cannon Lake PCH-H PCI ID
+ - crypto: hash - introduce crypto_hash_alg_has_setkey()
+ - crypto: cryptd - pass through absence of ->setkey()
+ - crypto: mcryptd - pass through absence of ->setkey()
+ - crypto: poly1305 - remove ->setkey() method
+ - crypto: hash - annotate algorithms taking optional key
+ - crypto: hash - prevent using keyed hashes without setting key
+ - media: v4l2-ioctl.c: use check_fmt for enum/g/s/try_fmt
+ - media: v4l2-ioctl.c: don't copy back the result for -ENOTTY
+ - media: v4l2-compat-ioctl32.c: add missing VIDIOC_PREPARE_BUF
+ - media: v4l2-compat-ioctl32.c: fix the indentation
+ - media: v4l2-compat-ioctl32.c: move 'helper' functions to __get/put_v4l2_format32
+ - media: v4l2-compat-ioctl32.c: avoid sizeof(type)
+ - media: v4l2-compat-ioctl32.c: copy m.userptr in put_v4l2_plane32
+ - media: v4l2-compat-ioctl32.c: fix ctrl_is_pointer
+ - media: v4l2-compat-ioctl32.c: copy clip list in put_v4l2_window32
+ - media: v4l2-compat-ioctl32.c: drop pr_info for unknown buffer type
+ - media: v4l2-compat-ioctl32.c: don't copy back the result for certain errors
+ - media: v4l2-compat-ioctl32.c: refactor compat ioctl32 logic
+ - media: v4l2-compat-ioctl32.c: make ctrl_is_pointer work for subdevs
+ - crypto: caam - fix endless loop when DECO acquire fails
+ - crypto: sha512-mb - initialize pending lengths correctly
+ - crypto: talitos - fix Kernel Oops on hashing an empty file
+ - [armhf,arm64 KVM: Fix SMCCC handling of unimplemented SMC/HVC calls
+ - [x86] KVM: nVMX: Fix races when sending nested PI while dest
+ enters/leaves L2
+ - [x86] KVM: nVMX: Fix bug of injecting L2 exception into L1
+ - [powerpc*] KVM: PPC: Book3S HV: Make sure we don't re-enter guest
+ without XIVE loaded
+ - [powerpc*] KVM: PPC: Book3S HV: Drop locks before reading guest memory
+ - [armhf,arm64] KVM: Handle CPU_PM_ENTER_FAILED
+ - [powerpc*] KVM: PPC: Book3S PR: Fix broken select due to misspelling
+ - watchdog: imx2_wdt: restore previous timeout after suspend+resume
+ - afs: Add missing afs_put_cell()
+ - afs: Need to clear responded flag in addr cursor
+ - afs: Fix missing cursor clearance
+ - afs: Fix server list handling
+ - btrfs: Handle btrfs_set_extent_delalloc failure in fixup worker
+ - Btrfs: raid56: iterate raid56 internal bio with bio_for_each_segment_all
+ - kasan: don't emit builtin calls when sanitization is off
+ - kasan: rework Kconfig settings
+ - media: dvb_frontend: be sure to init dvb_frontend_handle_ioctl() return
+ code
+ - media: dvb-frontends: fix i2c access helpers for KASAN
+ - media: dt-bindings/media/cec-gpio.txt: mention the CEC/HPD max voltages
+ - media: ts2020: avoid integer overflows on 32 bit machines
+ - media: vivid: fix module load error when enabling fb and no_error_inj=1
+ - media: cxusb, dib0700: ignore XC2028_I2C_FLUSH
+ - fs/proc/kcore.c: use probe_kernel_read() instead of memcpy()
+ - kernel/async.c: revert "async: simplify lowest_in_progress()"
+ - kernel/relay.c: revert "kernel/relay.c: fix potential memory leak"
+ - pipe: actually allow root to exceed the pipe buffer limits
+ - pipe: fix off-by-one error when checking buffer limits
+ - HID: quirks: Fix keyboard + touchpad on Toshiba Click Mini not working
+ - Bluetooth: btsdio: Do not bind to non-removable BCM43341
+ - Revert "Bluetooth: btusb: fix QCA Rome suspend/resume"
+ - Bluetooth: btusb: Restore QCA Rome suspend/resume fix with a "rewritten"
+ version
+ - ipmi: use dynamic memory for DMI driver override
+ - signal/openrisc: Fix do_unaligned_access to send the proper signal
+ - signal/sh: Ensure si_signo is initialized in do_divide_error
+ - alpha: fix crash if pthread_create races with signal delivery
+ - alpha: osf_sys.c: fix put_tv32 regression
+ - alpha: Fix mixed up args in EXC macro in futex operations
+ - alpha: fix reboot on Avanti platform
+ - alpha: fix formating of stack content
+ - xtensa: fix futex_atomic_cmpxchg_inatomic
+ - EDAC, octeon: Fix an uninitialized variable warning
+ - genirq: Make legacy autoprobing work again
+ - pinctrl: intel: Initialize GPIO properly when used through irqchip
+ - pinctrl: mcp23s08: fix irq setup order
+ - pinctrl: sx150x: Unregister the pinctrl on release
+ - pinctrl: sx150x: Register pinctrl before adding the gpiochip
+ - pinctrl: sx150x: Add a static gpio/pinctrl pin range mapping
+ - pktcdvd: Fix pkt_setup_dev() error path
+ - pktcdvd: Fix a recently introduced NULL pointer dereference
+ - blk-mq: quiesce queue before freeing queue
+ - clocksource/drivers/stm32: Fix kernel panic with multiple timers
+ - lib/ubsan.c: s/missaligned/misaligned/
+ - lib/ubsan: add type mismatch handler for new GCC/Clang
+ - objtool: Fix switch-table detection
+ - [arm64] dts: marvell: add Ethernet aliases
+ - drm/i915: Avoid PPS HW/SW state mismatch due to rounding
+ - ACPI: sbshc: remove raw pointer from printk() message (CVE-2018-5750)
+ - acpi, nfit: fix register dimm error handling
+ - ovl: force r/o mount when index dir creation fails
+ - ovl: fix failure to fsync lower dir
+ - ovl: take mnt_want_write() for work/index dir setup
+ - ovl: take mnt_want_write() for removing impure xattr
+ - ovl: hash directory inodes for fsnotify
+ - devpts: fix error handling in devpts_mntget()
+ - ftrace: Remove incorrect setting of glob search field
+ - scsi: core: Ensure that the SCSI error handler gets woken up
+ - scsi: lpfc: Fix crash after bad bar setup on driver attachment
+ - scsi: cxlflash: Reset command ioasc
+ - rcu: Export init_rcu_head() and destroy_rcu_head() to GPL modules
+
+ [ Bastian Blank ]
+ * Add cloud-amd64 kernel flavour.
+ - Support Microsoft Azure.
+ - Support Amazon EC2.
+ - Support Google Compute Engine.
+ * Enable NUMA_BALANCING_DEFAULT_ENABLED, enabled by all others.
+ * Enable INET_ESP_OFFLOAD, INET6_ESP_OFFLOAD, IPV6_SEG6_LWTUNNEL,
+ IPV6_SEG6_HMAC, NF_LOG_NETDEV, IP_SET_HASH_IPMAC, NET_ACT_SAMPLE,
+ IPVTAP, VIRTIO_MMIO, CRYPTO_RSA, CRYPTO_DH, CRYPTO_ECDH.
+ * x86: Enable SCHED_MC_PRIO, HYPERV_VSOCKETS.
+ * Enable NVME_MULTIPATH, NVME_FC, NVME_TARGET_FC, move nvme module into
+ scsi-modules installer udeb.
+ * Switch to SLUB as kernel allocator. (Closes: #862718)
+ - Enable SLUB_DEBUG, SLAB_FREELIST_HARDENED except on armel/marvell.
+ (Closes: #883069)
+ * Fix building of liblockdep.
+
+ [ Uwe Kleine-König ]
+ * [arm64] enable I2C_PXA for espressobin (Closes: #886983)
+
+ [ Ben Hutchings ]
+ * Enable CGROUP_BPF (except for armel) (Closes: #872560)
+ * usb: Enable USBIP_CORE, USBIP_VHCI_HCD, USBIP_HOST, USBIP_VUDC as
+ modules on all architectures (Closes: #888042)
+ * [x86] Rewrite "Make x32 syscall support conditional on a kernel parameter"
+ to use a static key
+
+ [ Salvatore Bonaccorso ]
+ * (Temporarily) disable armel kernel image build.
+ The armel/marvell kernel size is growing to large and the compressed
+ image is over the limit.
+ Given the armel architecture will most likely not be part of Buster,
+ disable the image build.
+ Cf. https://lists.debian.org/debian-kernel/2018/01/msg00278.html
+ * Set ABI to 1
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 18 Feb 2018 09:36:49 +0100
+
+linux (4.15~rc8-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+ - RDS: Heap OOB write in rds_message_alloc_sgs() (CVE-2018-5332)
+ - RDS: null pointer dereference in rds_atomic_free_op (CVE-2018-5333)
+ - loop: fix concurrent lo_open/lo_release (CVE-2018-5344)
+
+ [ Ben Hutchings ]
+ * [arm64] Update "add kernel config option to lock down when in Secure Boot
+ mode" for 4.15
+ * efi: Enable LOCK_DOWN_IN_EFI_SECURE_BOOT, replacing
+ EFI_SECURE_BOOT_LOCK_DOWN
+ * iio: Enable AD5446 as module, replacing TI_DAC7512
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 15 Jan 2018 04:43:14 +0000
+
+linux (4.15~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Riku Voipio ]
+ * [arm64] udeb: add multifunction devices
+ * [arm64] udeb: add mvebu comphy for armada 8K
+
+ [ Ben Hutchings ]
+ * aufs: Update support patchset to aufs4.x-rcN-20171218
+ * lockdown: Update patchset to 2017-11-10 version
+ * lockdown: Update calls to kernel_is_locked_down() in "mtd: Disable slram and
+ phram when locked down"
+ * cpupower: Move library to multiarch directory
+ * [rt] Disable until it is updated for 4.15 or later
+ * linux-kbuild: Add objtool
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 27 Dec 2017 02:48:14 +0000
+
+linux (4.14.17-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.14
+ - dm bufio: fix shrinker scans when (nr_to_scan < retain_target)
+ - can: gs_usb: fix return value of the "set_bittiming" callback
+ - IB/srpt: Disable RDMA access by the initiator
+ - IB/srpt: Fix ACL lookup during login
+ - [mips*] Validate PR_SET_FP_MODE prctl(2) requests against the ABI of the
+ task
+ - [mips*] Factor out NT_PRFPREG regset access helpers
+ - [mips*] Guard against any partial write attempt with PTRACE_SETREGSET
+ - [mips*] Consistently handle buffer counter with PTRACE_SETREGSET
+ - [mips*] Fix an FCSR access API regression with NT_PRFPREG and MSA
+ - [mips*] Also verify sizeof `elf_fpreg_t' with PTRACE_SETREGSET
+ - [mips*] Disallow outsized PTRACE_SETREGSET NT_PRFPREG regset accesses
+ - cgroup: fix css_task_iter crash on CSS_TASK_ITER_PROC (Closes: #888954)
+ - [x86] kvm: vmx: Scrub hardware GPRs at VM-exit (partial mitigation of
+ CVE-2017-5715, CVE-2017-5753)
+ - [x86] platform: wmi: Call acpi_wmi_init() later
+ - iw_cxgb4: only call the cq comp_handler when the cq is armed
+ - iw_cxgb4: atomically flush the qp
+ - iw_cxgb4: only clear the ARMED bit if a notification is needed
+ - iw_cxgb4: reflect the original WR opcode in drain cqes
+ - iw_cxgb4: when flushing, complete all wrs in a chain
+ - [x86] acpi: Handle SCI interrupts above legacy space gracefully
+ - ALSA: pcm: Remove incorrect snd_BUG_ON() usages
+ - ALSA: pcm: Workaround for weird PulseAudio behavior on rewind error
+ - ALSA: pcm: Add missing error checks in OSS emulation plugin builder
+ - ALSA: pcm: Abort properly at pending signal in OSS read/write loops
+ - ALSA: pcm: Allow aborting mutex lock at OSS read/write loops
+ - ALSA: aloop: Release cable upon open error path
+ - ALSA: aloop: Fix inconsistent format due to incomplete rule
+ - ALSA: aloop: Fix racy hw constraints adjustment
+ - [x86] acpi: Reduce code duplication in mp_override_legacy_irq()
+ - 8021q: fix a memory leak for VLAN 0 device
+ - ip6_tunnel: disable dst caching if tunnel is dual-stack
+ - net: core: fix module type in sock_diag_bind
+ - RDS: Heap OOB write in rds_message_alloc_sgs() (CVE-2018-5332)
+ - RDS: null pointer dereference in rds_atomic_free_op (CVE-2018-5333)
+ - net: fec: restore dev_id in the cases of probe error
+ - net: fec: defer probe if regulator is not ready
+ - net: fec: free/restore resource in related probe error pathes
+ - sctp: do not retransmit upon FragNeeded if PMTU discovery is disabled
+ - sctp: fix the handling of ICMP Frag Needed for too small MTUs
+ - [arm64, armhf] net: stmmac: enable EEE in MII, GMII or RGMII only
+ - ipv6: fix possible mem leaks in ipv6_make_skb()
+ - net/sched: Fix update of lastuse in act modules implementing
+ stats_update
+ - ipv6: sr: fix TLVs not being copied using setsockopt
+ - sfp: fix sfp-bus oops when removing socket/upstream
+ - membarrier: Disable preemption when calling smp_call_function_many()
+ - crypto: algapi - fix NULL dereference in crypto_remove_spawns()
+ - rbd: reacquire lock should update lock owner client id
+ - rbd: set max_segments to USHRT_MAX
+ - iwlwifi: pcie: fix DMA memory mapping / unmapping
+ - [x86] microcode/intel: Extend BDW late-loading with a revision check
+ - [x86] KVM: Add memory barrier on vmcs field lookup
+ - [powerpc*] KVM: Book3S PR: Fix WIMG handling under pHyp
+ - [powerpc*] KVM: Book3S HV: Drop prepare_done from struct kvm_resize_hpt
+ - [powerpc*] KVM: Book3S HV: Fix use after free in case of multiple resize
+ requests
+ - [powerpc*] KVM: Book3S HV: Always flush TLB in kvmppc_alloc_reset_hpt()
+ - [x86] drm/vmwgfx: Don't cache framebuffer maps
+ - [x86] drm/vmwgfx: Potential off by one in vmw_view_add()
+ - [x86] drm/i915/gvt: Clear the shadow page table entry after post-sync
+ - [x86] drm/i915: Whitelist SLICE_COMMON_ECO_CHICKEN1 on Geminilake.
+ - [x86] drm/i915: Move init_clock_gating() back to where it was
+ - [x86] drm/i915: Fix init_clock_gating for resume
+ - bpf: prevent out-of-bounds speculation (partial mitigation of
+ CVE-2017-5753)
+ - bpf, array: fix overflow in max_entries and undefined behavior in
+ index_mask
+ - bpf: arsh is not supported in 32 bit alu thus reject it
+ - [arm64, armhf] usb: misc: usb3503: make sure reset is low for at least
+ 100us
+ - USB: fix usbmon BUG trigger
+ - USB: UDC core: fix double-free in usb_add_gadget_udc_release
+ - usbip: remove kernel addresses from usb device and urb debug msgs
+ - usbip: fix vudc_rx: harden CMD_SUBMIT path to handle malicious input
+ - usbip: vudc_tx: fix v_send_ret_submit() vulnerability to null xfer
+ buffer
+ - staging: android: ashmem: fix a race condition in ASHMEM_SET_SIZE ioctl
+ (CVE-2017-13216)
+ - mux: core: fix double get_device()
+ - kdump: write correct address of mem_section into vmcoreinfo
+ - apparmor: fix ptrace label match when matching stacked labels
+ - [x86] pti: Unbreak EFI old_memmap
+ - [x86] Documentation: Add PTI description
+ - [x86] cpufeatures: Add X86_BUG_SPECTRE_V[12]
+ - sysfs/cpu: Add vulnerability folder
+ - [x86] cpu: Implement CPU vulnerabilites sysfs functions
+ - [x86] tboot: Unbreak tboot with PTI enabled
+ - [x86] mm/pti: Remove dead logic in pti_user_pagetable_walk*()
+ - [x86] cpu/AMD: Make LFENCE a serializing instruction
+ - [x86] cpu/AMD: Use LFENCE_RDTSC in preference to MFENCE_RDTSC
+ - [x86] alternatives: Fix optimize_nops() checking
+ - [x86] pti: Make unpoison of pgd for trusted boot work for real
+ - [x86] retpoline: Add initial retpoline support (partial mitigation of
+ CVE-2017-5715)
+ - [x86] spectre: Add boot time option to select Spectre v2 mitigation
+ - [x86] retpoline/crypto: Convert crypto assembler indirect jumps
+ - [x86] retpoline/entry: Convert entry assembler indirect jumps
+ - [x86] retpoline/ftrace: Convert ftrace assembler indirect jumps
+ - [x86] retpoline/hyperv: Convert assembler indirect jumps
+ - [x86] retpoline/xen: Convert Xen hypercall indirect jumps
+ - [x86] retpoline/checksum32: Convert assembler indirect jumps
+ - [x86] retpoline/irq32: Convert assembler indirect jumps
+ - [x86] retpoline: Fill return stack buffer on vmexit
+ - [x86] pti: Fix !PCID and sanitize defines
+ - [x86] perf: Disable intel_bts when PTI
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.15
+ - tools/objtool/Makefile: don't assume sync-check.sh is executable
+ - objtool: Fix seg fault with clang-compiled objects
+ - objtool: Fix Clang enum conversion warning
+ - objtool: Fix seg fault caused by missing parameter
+ - [powerpc*] pseries: Add H_GET_CPU_CHARACTERISTICS flags & wrapper
+ - [powerpc*] 64: Add macros for annotating the destination of rfid/hrfid
+ - [powerpc*] 64s: Simple RFI macro conversions
+ - [powerpc*] 64: Convert the syscall exit path to use RFI_TO_USER/KERNEL
+ - [powerpc*] 64: Convert fast_exception_return to use RFI_TO_USER/KERNEL
+ - [powerpc*] 64s: Convert slb_miss_common to use RFI_TO_USER/KERNEL
+ - [powerpc*] 64s: Add support for RFI flush of L1-D cache
+ - [powerpc*] 64s: Support disabling RFI flush with no_rfi_flush and nopti
+ - [powerpc*] pseries: Query hypervisor for RFI flush settings
+ - [powerpc*] powernv: Check device-tree for RFI flush settings
+ - futex: Avoid violating the 10th rule of futex
+ - futex: Prevent overflow by strengthen input validation (CVE-2018-6927)
+ - ALSA: seq: Make ioctls race-free (CVE-2018-1000004)
+ - ALSA: pcm: Remove yet superfluous WARN_ON()
+ - ALSA: hda - Apply headphone noise quirk for another Dell XPS 13 variant
+ - ALSA: hda - Apply the existing quirk to iMac 14,1
+ - IB/hfi1: Prevent a NULL dereference
+ - RDMA/mlx5: Fix out-of-bound access while querying AH
+ - timers: Unconditionally check deferrable base
+ - af_key: fix buffer overread in verify_address_len()
+ - af_key: fix buffer overread in parse_exthdrs()
+ - iser-target: Fix possible use-after-free in connection establishment
+ error
+ - delayacct: Account blkio completion on the correct task
+ - objtool: Fix seg fault with gold linker
+ - [armhf] mmc: sdhci-esdhc-imx: Fix i.MX53 eSDHCv3 clock
+ - [x86] kasan: Panic if there is not enough memory to boot
+ - [x86] retpoline: Fill RSB on context switch for affected CPUs
+ - [x86] retpoline: Add LFENCE to the retpoline/RSB filling RSB macros
+ - objtool: Improve error message for bad file argument
+ - [x86] cpufeature: Move processor tracing out of scattered features
+ - [x86] intel_rdt/cqm: Prevent use after free
+ - [x86] mm/pkeys: Fix fill_sig_info_pkey
+ - [x86] idt: Mark IDT tables __initconst
+ - [x86] tsc: Future-proof native_calibrate_tsc()
+ - [x86] tsc: Fix erroneous TSC rate on Skylake Xeon
+ - pipe: avoid round_pipe_size() nr_pages overflow on 32-bit
+ - [x86] apic/vector: Fix off by one in error path
+ - [x86] mm: Clean up register saving in the __enc_copy() assembly code
+ - [x86] mm: Use a struct to reduce parameters for SME PGD mapping
+ - [x86] mm: Centralize PMD flags in sme_encrypt_kernel()
+ - [x86] mm: Prepare sme_encrypt_kernel() for PAGE aligned encryption
+ - [armhf] OMAP3: hwmod_data: add missing module_offs for MMC3
+ - [x86] mm: Encrypt the initrd earlier for BSP microcode update
+ - Input: ALPS - fix multi-touch decoding on SS4 plus touchpads
+ - Input: synaptics-rmi4 - prevent UAF reported by KASAN
+ - [armhf] Input: twl6040-vibra - fix child-node lookup
+ - [armhf] Input: twl4030-vibra - fix sibling-node lookup
+ - tracing: Fix converting enum's from the map in trace_event_eval_update()
+ - phy: work around 'phys' references to usb-nop-xceiv devices
+ - [arm64] dts: marvell: armada-cp110: Fix clock resources for various node
+ - [armhf] sunxi_defconfig: Enable CMA
+ - [armel] dts: kirkwood: fix pin-muxing of MPP7 on OpenBlocks A7
+ - can: peak: fix potential bug in packet fragmentation
+ - can: af_can: can_rcv(): replace WARN_ONCE by pr_warn_once
+ - can: af_can: canfd_rcv(): replace WARN_ONCE by pr_warn_once
+ - i2c: core-smbus: prevent stack corruption on read I2C_BLOCK_DATA
+ - proc: fix coredump vs read /proc/*/stat race
+ - libata: apply MAX_SEC_1024 to all LITEON EP1 series devices
+ - workqueue: avoid hard lockups in show_workqueue_state()
+ - [x86] drm/vmwgfx: fix memory corruption with legacy/sou connectors
+ - dm btree: fix serious bug in btree_split_beneath()
+ - dm thin metadata: THIN_MAX_CONCURRENT_LOCKS should be 6
+ - dm integrity: don't store cipher request on the stack
+ - dm crypt: fix crash by adding missing check for auth key size
+ - dm crypt: wipe kernel key copy after IV initialization
+ - dm crypt: fix error return code in crypt_ctr()
+ - [x86] x86: Use __nostackprotect for sme_encrypt_kernel
+ - [alpha] PCI: Fix noname IRQ level detection
+ - [mips*] CM: Drop WARN_ON(vp != 0)
+ - [arm*] KVM: Check pagesize when allocating a hugepage at Stage 2
+ - [arm64] KVM: Fix SMCCC handling of unimplemented SMC/HVC calls
+ - [x86] mce: Make machine check speculation protected
+ - retpoline: Introduce start/end markers of indirect thunk
+ - [x86] kprobes: Blacklist indirect thunk functions for kprobes
+ - [x86] kprobes: Disable optimizing on the function jumps to indirect
+ thunk
+ - [x86] retpoline: Optimize inline assembler for vmexit_fill_RSB
+ - [x86] mm: Rework wbinvd, hlt operation in stop_this_cpu()
+ - mm, page_vma_mapped: Drop faulty pointer arithmetics in check_pte()
+ - [arm64, armhf] net: mvpp2: do not disable GMAC padding
+ - [mips]: AR7: ensure the port type's FCR value is used
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.16
+ - mm, page_alloc: fix potential false positive in __zone_watermark_ok
+ - xfrm: Fix a race in the xdst pcpu cache.
+ - Input: xpad - add support for PDP Xbox One controllers
+ - Input: trackpoint - force 3 buttons if 0 button is reported
+ - Input: trackpoint - only expose supported controls for Elan, ALPS and
+ NXP
+ - Btrfs: fix stale entries in readdir
+ - [s390x] KVM: add proper locking for CMMA migration bitmap
+ - [arm*] net: bpf: avoid 'bx' instruction on non-Thumb capable CPUs
+ - [arm*] net: bpf: fix tail call jumps
+ - [arm*] net: bpf: fix stack alignment
+ - [arm*] net: bpf: move stack documentation
+ - [arm*] net: bpf: correct stack layout documentation
+ - [arm*] net: bpf: fix register saving
+ - [arm*] net: bpf: fix LDX instructions
+ - [arm*] net: bpf: clarify tail_call index
+ - [arm64,armhf] drm/vc4: Fix NULL pointer dereference in
+ vc4_save_hang_state()
+ - net: Allow neigh contructor functions ability to modify the primary_key
+ - ipv4: Make neigh lookup keys for loopback/point-to-point devices be
+ INADDR_ANY
+ - dccp: don't restart ccid2_hc_tx_rto_expire() if sk in closed state
+ - ipv6: Fix getsockopt() for sockets with default IPV6_AUTOFLOWLABEL
+ - ipv6: fix udpv6 sendmsg crash caused by too small MTU
+ - ipv6: ip6_make_skb() needs to clear cork.base.dst
+ - lan78xx: Fix failure in USB Full Speed
+ - net: igmp: fix source address check for IGMPv3 reports
+ - net: qdisc_pkt_len_init() should be more robust
+ - net: tcp: close sock if net namespace is exiting
+ - net/tls: Fix inverted error codes to avoid endless loop
+ - net: vrf: Add support for sends to local broadcast address
+ - pppoe: take ->needed_headroom of lower device into account on xmit
+ - r8169: fix memory corruption on retrieval of hardware statistics.
+ - sctp: do not allow the v4 socket to bind a v4mapped v6 address
+ - sctp: return error if the asoc has been peeled off in
+ sctp_wait_for_sndbuf
+ - tipc: fix a memory leak in tipc_nl_node_get_link()
+ - {net,ib}/mlx5: Don't disable local loopback multicast traffic when
+ needed
+ - net/mlx5: Fix get vector affinity helper function
+ - ppp: unlock all_ppp_mutex before registering device
+ - be2net: restore properly promisc mode after queues reconfiguration
+ - ip6_gre: init dev->mtu and dev->hard_header_len correctly
+ - gso: validate gso_type in GSO handlers
+ - tun: fix a memory leak for tfile->tx_array
+ - flow_dissector: properly cap thoff field
+ - sctp: reinit stream if stream outcnt has been change by sinit in sendmsg
+ - netlink: extack needs to be reset each time through loop
+ - net/mlx5e: Fix fixpoint divide exception in mlx5e_am_stats_compare
+ - nfp: use the correct index for link speed table
+ - netlink: reset extack earlier in netlink_rcv_skb
+ - net/tls: Only attach to sockets in ESTABLISHED state
+ - tls: fix sw_ctx leak
+ - tls: return -EBUSY if crypto_info is already set
+ - tls: reset crypto_info when do_tls_setsockopt_tx fails
+ - net: ipv4: Make "ip route get" match iif lo rules again.
+ - vmxnet3: repair memory leak
+ - perf/x86/amd/power: Do not load AMD power module on !AMD platforms
+ - [x86] microcode/intel: Extend BDW late-loading further with LLC size
+ check
+ - [x86] microcode: Fix again accessing initrd after having been freed
+ - [x86] mm/64: Fix vmapped stack syncing on very-large-memory 4-level
+ systems
+ - hrtimer: Reset hrtimer cpu base proper on CPU hotplug
+ - bpf: introduce BPF_JIT_ALWAYS_ON config
+ - bpf: fix divides by zero
+ - bpf: fix 32-bit divide by zero
+ - bpf: reject stores into ctx via st and xadd
+ - [arm64] bpf: fix stack_depth tracking in combination with tail calls
+ - cpufreq: governor: Ensure sufficiently large sampling intervals
+ - nfsd: auth: Fix gid sorting when rootsquash enabled (CVE-2018-1000028)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.17
+ - futex: Fix OWNER_DEAD fixup
+ - loop: fix concurrent lo_open/lo_release (CVE-2018-5344)
+ - [x86] KVM: Fix CPUID function for word 6 (80000001_ECX)
+ - gpio: Fix kernel stack leak to userspace
+ - ALSA: hda - Reduce the suspend time consumption for ALC256
+ - crypto: ecdh - fix typo in KPP dependency of CRYPTO_ECDH
+ - [x86] crypto: aesni - handle zero length dst buffer
+ - [x86] crypto: aesni - fix typo in generic_gcmaes_decrypt
+ - crypto: gcm - add GCM IV size constant
+ - [x86] crypto: aesni - Use GCM IV size constant
+ - [x86] crypto: aesni - add wrapper for generic gcm(aes)
+ - [x86] crypto: aesni - Fix out-of-bounds access of the data buffer in
+ generic-gcm-aesni
+ - [x86] crypto: aesni - Fix out-of-bounds access of the AAD buffer in
+ generic-gcm-aesni
+ - [arm64] crypto: inside-secure - fix hash when length is a multiple of a
+ block
+ - [arm64] crypto: inside-secure - avoid unmapping DMA memory that was not
+ mapped
+ - crypto: sha3-generic - fixes for alignment and big endian operation
+ - crypto: af_alg - whitelist mask and type
+ - HID: wacom: EKR: ensure devres groups at higher indexes are released
+ - HID: wacom: Fix reporting of touch toggle (WACOM_HID_WD_MUTE_DEVICE)
+ events
+ - igb: Free IRQs when device is hotplugged
+ - ima/policy: fix parsing of fsuuid
+ - scsi: aacraid: Fix udev inquiry race condition
+ - scsi: aacraid: Fix hang in kdump
+ - VFS: Handle lazytime in do_mount()
+ - [arm64,armhf] drm/vc4: Account for interrupts in flight
+ - btrfs: Fix transaction abort during failure in btrfs_rm_dev_item
+ - Btrfs: bail out gracefully rather than BUG_ON
+ - cpupowerutils: bench - Fix cpu online check
+ - cpupower : Fix cpupower working when cpu0 is offline
+ - [x86] KVM: nVMX/nSVM: Don't intercept #UD when running L2
+ - [x86] KVM: emulator: Return to user-mode on L1 CPL=0 emulation failure
+ - [x86] KVM: Don't re-execute instruction when not passing CR2 value
+ - [x86] KVM: Fix operand/address-size during instruction decoding
+ - [x86] KVM: nVMX: Fix mmu context after VMLAUNCH/VMRESUME failure
+ - [x86] KVM: fix em_fxstor() sleeping while in atomic
+ - [x86] KVM: ioapic: Fix level-triggered EOI and IOAPIC reconfigure race
+ - [x86] KVM: ioapic: Clear Remote IRR when entry is switched to
+ edge-triggered
+ - [x86] KVM: ioapic: Preserve read-only values in the redirection table
+ - [x86] KVM: nVMX: Fix vmx_check_nested_events() return value in case an
+ event was reinjected to L2
+ - nvme-fabrics: introduce init command check for a queue that is not alive
+ - nvme-fc: check if queue is ready in queue_rq
+ - nvme-loop: check if queue is ready in queue_rq
+ - nvme-pci: disable APST on Samsung SSD 960 EVO + ASUS PRIME B350M-A
+ - nvme-pci: avoid hmb desc array idx out-of-bound when hmmaxd set.
+ - nvmet-fc: correct ref counting error when deferred rcv used
+ - [s390x] topology: fix compile error in file arch/s390/kernel/smp.c
+ - [s390x] zcrypt: Fix wrong comparison leading to strange load balancing
+ - ACPI / bus: Leave modalias empty for devices which are not present
+ - null_blk: fix dev->badblocks leak
+ - [s390x] fix alloc_pgste check in init_new_context again
+ - rxrpc: The mutex lock returned by rxrpc_accept_call() needs releasing
+ - rxrpc: Provide a different lockdep key for call->user_mutex for kernel
+ calls
+ - rxrpc: Fix service endpoint expiry
+ - bcache: check return value of register_shrinker
+ - drm/amdgpu: Fix SDMA load/unload sequence on HWS disabled mode
+ - [x86] drm/amdkfd: Fix SDMA ring buffer size calculation
+ - [x86] drm/amdkfd: Fix SDMA oversubsription handling
+ - uapi: fix linux/kfd_ioctl.h userspace compilation errors
+ - nvme-rdma: don't complete requests before a send work request has
+ completed
+ - openvswitch: fix the incorrect flow action alloc size
+ - [armhf] drm/rockchip: dw-mipi-dsi: fix possible un-balanced runtime PM
+ enable
+ - mac80211: use QoS NDP for AP probing
+ - mac80211: fix the update of path metric for RANN frame
+ - btrfs: fix deadlock when writing out space cache
+ - sctp: only allow the asoc reset when the asoc outq is empty
+ - sctp: avoid flushing unsent queue when doing asoc reset
+ - sctp: set sender next_tsn for the old result with ctsn_ack_point plus 1
+ - reiserfs: remove unneeded i_version bump
+ - [x86] KVM: Fix softlockup when get the current kvmclock
+ - [x86] KVM: VMX: Fix rflags cache during vCPU reset
+ - Btrfs: fix list_add corruption and soft lockups in fsync
+ - KVM: Let KVM_SET_SIGNAL_MASK work as advertised
+ - xfs: always free inline data before resetting inode fork during ifree
+ - xfs: log recovery should replay deferred ops in order
+ - xen-netfront: remove warning when unloading module
+ - nfsd: CLOSE SHOULD return the invalid special stateid for NFSv4.x (x>0)
+ - nfsd: Ensure we check stateid validity in the seqid operation checks
+ - grace: replace BUG_ON by WARN_ONCE in exit_net hook
+ - nfsd: check for use of the closed special stateid
+ - race of lockd inetaddr notifiers vs nlmsvc_rqst change
+ - lockd: fix "list_add double add" caused by legacy signal interface
+ - quota: propagate error from __dquot_initialize
+ - [arm64,armhf] net: mvpp2: fix the txq_init error path
+ - [arm64] net: phy: marvell10g: fix the PHY id mask
+ - bnxt_en: Fix an error handling path in 'bnxt_get_module_eeprom()'
+ - Btrfs: incremental send, fix wrong unlink path after renaming file
+ - nvme-pci: fix NULL pointer dereference in nvme_free_host_mem()
+ - xfs: fortify xfs_alloc_buftarg error handling
+ - drm/amdgpu: don't try to move pinned BOs
+ - quota: Check for register_shrinker() failure.
+ - SUNRPC: Allow connect to return EHOSTUNREACH
+ - kmemleak: add scheduling point to kmemleak_scan()
+ - [armhf] drm/omap: Fix error handling path in 'omap_dmm_probe()'
+ - [armhf] drm/omap: displays: panel-dpi: add backlight dependency
+ - xfs: ubsan fixes
+ - xfs: Properly retry failed dquot items in case of error during buffer
+ writeback
+ - perf/core: Fix memory leak triggered by perf --namespace
+ - scsi: aacraid: Prevent crash in case of free interrupt during scsi EH
+ path
+ - scsi: ufs: ufshcd: fix potential NULL pointer dereference in
+ ufshcd_config_vreg
+ - iwlwifi: mvm: fix the TX queue hang timeout for MONITOR vif type
+ - iwlwifi: fix access to prph when transport is stopped
+ - [arm*] dts: NSP: Disable AHCI controller for HR NSP boards
+ - [arm*] ARM: dts: NSP: Fix PPI interrupt types
+ - media: usbtv: add a new usbid
+ - [x86] xen: Support early interrupts in xen pv guests
+ - usb: gadget: don't dereference g until after it has been null checked
+ - staging: rtl8188eu: Fix incorrect response to SIOCGIWESSID
+ - [arm64,armhf] drm/vc4: Move IRQ enable to PM path
+ - [x86] KVM: emulate #UD while in guest mode
+ - [x86] staging: lustre: separate a connection destroy from free struct
+ kib_conn
+ - tty: fix data race between tty_init_dev and flush of buf
+ - USB: serial: pl2303: new device id for Chilitag
+ - USB: cdc-acm: Do not log urb submission errors on disconnect
+ - CDC-ACM: apply quirk for card reader
+ - USB: serial: io_edgeport: fix possible sleep-in-atomic
+ - usbip: prevent bind loops on devices attached to vhci_hcd
+ - usbip: list: don't list devices attached to vhci_hcd
+ - USB: serial: simple: add Motorola Tetra driver
+ - usb: f_fs: Prevent gadget unbind if it is already unbound
+ - usb: uas: unconditionally bring back host after reset
+ - usb/gadget: Fix "high bandwidth" check in usb_gadget_ep_match_desc()
+ - [x86] mei: me: allow runtime pm for platform with D0i3
+ - serial: 8250_of: fix return code when probe function fails to get reset
+ - serial: 8250_uniphier: fix error return code in uniphier_uart_probe()
+ - [armhf] serial: imx: Only wakeup via RTSDEN bit if the system has
+ RTS/CTS
+ - [armhf] spi: imx: do not access registers while clocks disabled
+ - iio: adc: stm32: fix scan of multiple channels with DMA
+ - iio: chemical: ccs811: Fix output of IIO_CONCENTRATION channels
+ - test_firmware: fix missing unlock on error in
+ config_num_requests_store()
+ - Input: synaptics-rmi4 - unmask F03 interrupts when port is opened
+ - Input: synaptics-rmi4 - do not delete interrupt memory too early
+ - [x86] efi: Clarify that reset attack mitigation needs appropriate
+ userspace
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 4.14.15-rt11
+ * [rt] Update to 4.14.15-rt13
+ * crypto: ecc - Fix NULL pointer deref. on no default_rng (Closes: #886556)
+ * mac80211: Avoid ABI change in 4.14.17
+ * rxrpc: Avoid ABI change in 4.14.17
+
+ [ Ben Hutchings ]
+ * bpf: Avoid ABI change in 4.14.14
+ * usbip: Reduce USBIP_VHCI_HC_PORTS to 15, the maximum allowed for SuperSpeed
+ hubs (Closes: #878866)
+ * [x86] Add versioned build-dependency on gcc-7 for retpoline support
+ * [x86] linux-compiler-gcc-7-x86: Add versioned dependency on gcc-7 for
+ retpoline support
+ * linux-compiler-gcc-7-{arm,s390,x86}: Remove specific (and wrong) compiler
+ version from description (Closes: #883363)
+ * [x86] linux-headers: Depend on updated linux-compiler-gcc-7-x86
+
+ [ Riku Voipio ]
+ * [arm64] build in reset drivers
+ * [arm64] enable COMMON_CLK_HI655X so wifi and bluetooth work on Hikey
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 14 Feb 2018 06:56:06 +0100
+
+linux (4.14.13-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.13
+ - [x86] mm: Set MODULES_END to 0xffffffffff000000
+ - [x86] mm: Map cpu_entry_area at the same place on 4/5 level
+ - [x86] kaslr: Fix the vaddr_end mess
+ - [x86] events/intel/ds: Use the proper cache flush method for mapping ds
+ buffers
+ - [x86] alternatives: Add missing '\n' at end of ALTERNATIVE inline asm
+ - [x86] pti: Rename BUG_CPU_INSECURE to BUG_CPU_MELTDOWN
+ - kernel/acct.c: fix the acct->needcheck check in check_free_space()
+ - mm/mprotect: add a cond_resched() inside change_pmd_range()
+ - mm/sparse.c: wrong allocation for mem_section
+ - userfaultfd: clear the vma->vm_userfaultfd_ctx if UFFD_EVENT_FORK fails
+ - btrfs: fix refcount_t usage when deleting btrfs_delayed_nodes
+ - efi/capsule-loader: Reinstate virtual capsule mapping
+ - [sparc*] crypto: n2 - cure use after free
+ - crypto: chacha20poly1305 - validate the digest size
+ - crypto: pcrypt - fix freeing pcrypt instances
+ - crypto: chelsio - select CRYPTO_GF128MUL
+ - [x86] drm/i915: Disable DC states around GMBUS on GLK
+ - [x86] drm/i915: Apply Display WA #1183 on skl, kbl, and cfl
+ - fscache: Fix the default for fscache_maybe_release_page()
+ - [x86] CPU: Avoid unnecessary IPIs in arch_freq_get_on_cpu()
+ - [x86] CPU: Always show current CPU frequency in /proc/cpuinfo
+ - kernel/signal.c: protect the traced SIGNAL_UNKILLABLE tasks from SIGKILL
+ - kernel/signal.c: protect the SIGNAL_UNKILLABLE tasks from
+ !sig_kernel_only() signals
+ - kernel/signal.c: remove the no longer needed SIGNAL_UNKILLABLE check in
+ complete_signal()
+ - [arm64] iommu/arm-smmu-v3: Don't free page table ops twice
+ - [arm64] iommu/arm-smmu-v3: Cope with duplicated Stream IDs
+ - [powerpc* ]mm: Fix SEGV on mapped region to return SEGV_ACCERR
+ - Input: elantech - add new icbody type 15
+ - [x86] microcode/AMD: Add support for fam17h microcode loading
+ - apparmor: fix regression in mount mediation when feature set is pinned
+ - [hppa/parisc] Fix alignment of pa_tlb_lock in assembly on 32-bit SMP
+ kernel
+ - [hppa/parisc] qemu idle sleep support
+ - mtd: nand: pxa3xx: Fix READOOB implementation
+ - [s390x] KVM: fix cmma migration for multiple memory slots
+ - [s390x] KVM: prevent buffer overrun on memory hotplug during migration
+
+ [ Salvatore Bonaccorso ]
+ * libsas: Disable asynchronous aborts for SATA devices
+ * drm/nouveau/disp/gf119: add missing drive vfunc ptr (Closes: #880660)
+
+ [ Riku Voipio ]
+ * [arm64] disable CONFIG_HW_RANDOM_OMAP until the IRQ storm bug is fixed
+
+ [ Ben Hutchings ]
+ * abiupdate.py: Add support for security mirrors
+ * Fix dependencies related to objtool (Closes: #886474):
+ - linux-headers: Add versioned dependency on linux-kbuild
+ - Revert "objtool: Fix CONFIG_STACK_VALIDATION=y warning for out-of-tree
+ modules"
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 14 Jan 2018 19:45:05 +0000
+
+linux (4.14.12-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * linux-kbuild: Add objtool
+ * linux-headers: Add symlink to linux-kbuild tools directory for objtool
+
+ [ Salvatore Bonaccorso ]
+ * linux-headers: Add symlink to linux-kbuild tools directory for objtool in
+ architecture-specific headers package.
+ Thanks to Luca Boccassi (Closes: #886366)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sat, 06 Jan 2018 09:08:42 +0100
+
+linux (4.14.12-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.8
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.9
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.10
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.11
+ - x86/cpufeatures: Add X86_BUG_CPU_INSECURE
+ - x86/mm/pti: Disable global pages if PAGE_TABLE_ISOLATION=y
+ - x86/mm/pti: Prepare the x86/entry assembly code for entry/exit CR3
+ switching
+ - x86/mm/pti: Add infrastructure for page table isolation
+ - x86/pti: Add the pti= cmdline option and documentation
+ - x86/mm/pti: Add mapping helper functions
+ - x86/mm/pti: Allow NX poison to be set in p4d/pgd
+ - x86/mm/pti: Allocate a separate user PGD
+ - x86/mm/pti: Populate user PGD
+ - x86/mm/pti: Add functions to clone kernel PMDs
+ - x86/mm/pti: Force entry through trampoline when PTI active
+ - x86/mm/pti: Share cpu_entry_area with user space page tables
+ - x86/entry: Align entry text section to PMD boundary
+ - x86/mm/pti: Share entry text PMD
+ - x86/mm/pti: Map ESPFIX into user space
+ - x86/cpu_entry_area: Add debugstore entries to cpu_entry_area
+ - x86/events/intel/ds: Map debug buffers in cpu_entry_area
+ - x86/mm/64: Make a full PGD-entry size hole in the memory map
+ - x86/pti: Put the LDT in its own PGD if PTI is on
+ - x86/pti: Map the vsyscall page if needed
+ - x86/mm: Allow flushing for future ASID switches
+ - x86/mm: Abstract switching CR3
+ - x86/mm: Use/Fix PCID to optimize user/kernel switches
+ - x86/mm: Optimize RESTORE_CR3
+ - x86/mm: Use INVPCID for __native_flush_tlb_single()
+ - x86/mm: Clarify the whole ASID/kernel PCID/user PCID naming
+ - x86/dumpstack: Indicate in Oops whether PTI is configured and enabled
+ - x86/mm/pti: Add Kconfig
+ - net: Fix double free and memory corruption in get_net_ns_by_id()
+ (CVE-2017-15129)
+ * [amd64] Implement Kernel Page Table Isolation (KPTI, aka KAISER)
+ (CVE-2017-5754)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.12
+ - exec: Weaken dumpability for secureexec
+ - capabilities: fix buffer overread on very short xattr
+ - x86/cpu, x86/pti: Do not enable PTI on AMD processors
+ - x86/pti: Make sure the user/kernel PTEs match
+ - x86/dumpstack: Fix partial register dumps
+ - x86/dumpstack: Print registers for first stack frame
+ - x86/pti: Switch to kernel CR3 at early in entry_SYSCALL_compat()
+ - x86/process: Define cpu_tss_rw in same section as declaration
+
+ [ Ben Hutchings ]
+ * e1000e: Fix e1000_check_for_copper_link_ich8lan return value.
+ (Closes: #885348)
+
+ [ Vagrant Cascadian ]
+ * [arm64] Backport patch from linux-next to support SMP on tegra210
+ systems.
+
+ [ Salvatore Bonaccorso ]
+ * [rt] Update to 4.14.8-rt9
+ * Bump ABI to 3
+ * Revert "scsi: libsas: allow async aborts"
+ Fixes "Oops: NULL pointer dereference - RIP:
+ isci_task_abort_task+0x30/0x3e0 [isci]" (Closes: #882414)
+ * x86/tlb: Drop the _GPL from the cpu_tlbstate export
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 05 Jan 2018 21:20:26 +0100
+
+linux (4.14.7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.3
+ - [s390x] fix transactional execution control register handling
+ - [s390x] noexec: execute kexec datamover without DAT
+ - [s390x] runtime instrumention: fix possible memory corruption
+ - [s390x] guarded storage: fix possible memory corruption
+ - [s390x] disassembler: add missing end marker for e7 table
+ - [s390x] disassembler: increase show_code buffer size
+ - ACPI / PM: Fix acpi_pm_notifier_lock vs flush_workqueue() deadlock
+ - ACPI / EC: Fix regression related to triggering source of EC event
+ handling
+ - cpufreq: schedutil: Reset cached_raw_freq when not in sync with next_freq
+ - serdev: fix registration of second slave
+ - sched: Make resched_cpu() unconditional
+ - lib/mpi: call cond_resched() from mpi_powm() loop
+ - [x86] boot: Fix boot failure when SMP MP-table is based at 0
+ - [x86] decoder: Add new TEST instruction pattern
+ - [amd64] entry: Fix entry_SYSCALL_64_after_hwframe() IRQ tracing
+ - [x86] perf: intel: Hide TSX events when RTM is not supported
+ - [arm64] Implement arch-specific pte_access_permitted()
+ - [armhf/armmp-lpae] 8722/1: mm: make STRICT_KERNEL_RWX effective for LPAE
+ - [armhf/armmp-lpae] 8721/1: mm: dump: check hardware RO bit for LPAE
+ - uapi: fix linux/tls.h userspace compilation error
+ - uapi: fix linux/rxrpc.h userspace compilation errors
+ - [mips*/4kc-malta] cmpxchg64() and HAVE_VIRT_CPU_ACCOUNTING_GEN don't work
+ for 32-bit SMP
+ - [armhf,arm64] net: mvneta: fix handling of the Tx descriptor counter
+ - nbd: wait uninterruptible for the dead timeout
+ - nbd: don't start req until after the dead connection logic
+ - PM / OPP: Add missing of_node_put(np)
+ - PCI/ASPM: Account for downstream device's Port Common_Mode_Restore_Time
+ - PCI/ASPM: Use correct capability pointer to program LTR_L1.2_THRESHOLD
+ - [x86] PCI: hv: Use effective affinity mask
+ - [arm64] PCI: Set Cavium ACS capability quirk flags to assert RR/CR/SV/UF
+ - [arm64] PCI: Apply Cavium ThunderX ACS quirk to more Root Ports
+ - dm integrity: allow unaligned bv_offset
+ - dm cache: fix race condition in the writeback mode overwrite_bio
+ optimisation
+ - dm crypt: allow unaligned bv_offset
+ - dm zoned: ignore last smaller runt zone
+ - dm mpath: remove annoying message of 'blk_get_request() returned -11'
+ - dm bufio: fix integer overflow when limiting maximum cache size
+ - ovl: Put upperdentry if ovl_check_origin() fails
+ - dm: allocate struct mapped_device with kvzalloc
+ - sched/rt: Simplify the IPI based RT balancing logic
+ - dm: fix race between dm_get_from_kobject() and __dm_destroy()
+ - dm: discard support requires all targets in a table support discards
+ - [mips*] Fix odd fp register warnings with MIPS64r2
+ - [mips*/4kc-malta] Fix MIPS64 FP save/restore on 32-bit kernels
+ - [mips*] dts: remove bogus bcm96358nb4ser.dtb from dtb-y entry
+ - [mips*] Fix an n32 core file generation regset support regression
+ - [mips*] math-emu: Fix final emulation phase for certain instructions
+ - rt2x00usb: mark device removed when get ENOENT usb error
+ - mm/z3fold.c: use kref to prevent page free/compact race
+ - autofs: don't fail mount for transient error
+ - nilfs2: fix race condition that causes file system corruption
+ - fscrypt: lock mutex before checking for bounce page pool
+ - eCryptfs: use after free in ecryptfs_release_messaging()
+ - libceph: don't WARN() if user tries to add invalid key
+ - bcache: check ca->alloc_thread initialized before wake up it
+ - fs: guard_bio_eod() needs to consider partitions
+ - fanotify: fix fsnotify_prepare_user_wait() failure
+ - isofs: fix timestamps beyond 2027
+ - btrfs: change how we decide to commit transactions during flushing
+ - f2fs: expose some sectors to user in inline data or dentry case
+ - NFS: Fix typo in nomigration mount option
+ - NFS: Revert "NFS: Move the flock open mode check into nfs_flock()"
+ - nfs: Fix ugly referral attributes
+ - NFS: Avoid RCU usage in tracepoints
+ - NFS: revalidate "." etc correctly on "open".
+ - nfsd: deal with revoked delegations appropriately
+ - rtlwifi: rtl8192ee: Fix memory leak when loading firmware
+ - rtlwifi: fix uninitialized rtlhal->last_suspend_sec time
+ - iwlwifi: fix firmware names for 9000 and A000 series hw
+ - md: fix deadlock error in recent patch.
+ - md: don't check MD_SB_CHANGE_CLEAN in md_allow_write
+ - Bluetooth: btqcomsmd: Add support for BD address setup
+ - md/bitmap: revert a patch
+ - fsnotify: clean up fsnotify_prepare/finish_user_wait()
+ - fsnotify: pin both inode and vfsmount mark
+ - fsnotify: fix pinning group in fsnotify_prepare_user_wait()
+ - ata: fixes kernel crash while tracing ata_eh_link_autopsy event
+ - ext4: fix interaction between i_size, fallocate, and delalloc after a
+ crash
+ - ext4: prevent data corruption with inline data + DAX
+ - ext4: prevent data corruption with journaling + DAX
+ - ALSA: pcm: update tstamp only if audio_tstamp changed
+ - ALSA: usb-audio: Add sanity checks to FE parser
+ - ALSA: usb-audio: Fix potential out-of-bound access at parsing SU
+ - ALSA: usb-audio: Add sanity checks in v2 clock parsers
+ - ALSA: timer: Remove kernel warning at compat ioctl error paths
+ - ALSA: hda/realtek - Fix ALC275 no sound issue
+ - ALSA: hda: Fix too short HDMI/DP chmap reporting
+ - ALSA: hda - Fix yet remaining issue with vmaster 0dB initialization
+ - ALSA: hda/realtek - Fix ALC700 family no sound issue
+ - [x86] mfd: lpc_ich: Avoton/Rangeley uses SPI_BYT method
+ - fix a page leak in vhost_scsi_iov_to_sgl() error recovery
+ - 9p: Fix missing commas in mount options
+ - fs/9p: Compare qid.path in v9fs_test_inode
+ - net/9p: Switch to wait_event_killable()
+ - scsi: qla2xxx: Suppress a kernel complaint in qla_init_base_qpair()
+ - scsi: sd_zbc: Fix sd_zbc_read_zoned_characteristics()
+ - scsi: lpfc: fix pci hot plug crash in timer management routines
+ - scsi: lpfc: fix pci hot plug crash in list_add call
+ - scsi: lpfc: Fix crash receiving ELS while detaching driver
+ - scsi: lpfc: Fix FCP hba_wqidx assignment
+ - scsi: lpfc: Fix oops if nvmet_fc_register_targetport fails
+ - iscsi-target: Make TASK_REASSIGN use proper se_cmd->cmd_kref
+ - iscsi-target: Fix non-immediate TMR reference leak
+ - target: fix null pointer regression in core_tmr_drain_tmr_list
+ - target: fix buffer offset in core_scsi3_pri_read_full_status
+ - target: Fix QUEUE_FULL + SCSI task attribute handling
+ - target: Fix caw_sem leak in transport_generic_request_failure
+ - target: Fix quiese during transport_write_pending_qf endless loop
+ - target: Avoid early CMD_T_PRE_EXECUTE failures during ABORT_TASK
+ - mtd: Avoid probe failures when mtd->dbg.dfs_dir is invalid
+ - mtd: nand: atmel: Actually use the PM ops
+ - mtd: nand: omap2: Fix subpage write
+ - mtd: nand: Fix writing mtdoops to nand flash.
+ - mtd: nand: mtk: fix infinite ECC decode IRQ issue
+ - p54: don't unregister leds when they are not initialized
+ - block: Fix a race between blk_cleanup_queue() and timeout handling
+ - raid1: prevent freeze_array/wait_all_barriers deadlock
+ - genirq: Track whether the trigger type has been set
+ - [armhf,arm64] irqchip/gic-v3: Fix ppi-partitions lookup
+ - lockd: double unregister of inetaddr notifiers
+ - [powerpc*] KVM: Book3S HV: Don't call real-mode XICS hypercall handlers
+ if not enabled
+ - [x86] KVM: nVMX: set IDTR and GDTR limits when loading L1 host state
+ - [x86] KVM: SVM: obey guest PAT
+ - [x86] kvm: vmx: Reinstate support for CPUs without virtual NMI
+ (Closes: #884482)
+ - dax: fix PMD faults on zero-length files
+ - dax: fix general protection fault in dax_alloc_inode
+ - SUNRPC: Fix tracepoint storage issues with svc_recv and svc_rqst_status
+ - [armhf] clk: ti: dra7-atl-clock: fix child-node lookups
+ - libnvdimm, dimm: clear 'locked' status on successful DIMM enable
+ - libnvdimm, pfn: make 'resource' attribute only readable by root
+ - libnvdimm, namespace: fix label initialization to use valid seq numbers
+ - libnvdimm, region : make 'resource' attribute only readable by root
+ - libnvdimm, namespace: make 'resource' attribute only readable by root
+ - svcrdma: Preserve CB send buffer across retransmits
+ - IB/srpt: Do not accept invalid initiator port names
+ - IB/cm: Fix memory corruption in handling CM request
+ - IB/hfi1: Fix incorrect available receive user context count
+ - IB/srp: Avoid that a cable pull can trigger a kernel crash
+ - IB/core: Avoid crash on pkey enforcement failed in received MADs
+ - IB/core: Only maintain real QPs in the security lists
+ - NFC: fix device-allocation error return
+ - spi-nor: intel-spi: Fix broken software sequencing codes
+ - fm10k,i40e,i40evf,igb,igbvf,ixgbe,ixgbevf: Use smp_rmb rather than
+ read_barrier_depends
+ - [hppa] Fix validity check of pointer size argument in new CAS
+ implementation
+ - [powerpc*] Fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX
+ - [powerpc*] mm/radix: Fix crashes on Power9 DD1 with radix MMU and
+ STRICT_RWX
+ - [powerpc*] perf/imc: Use cpu_to_node() not topology_physical_package_id()
+ - [powerpc*] signal: Properly handle return value from uprobe_deny_signal()
+ - [powerpc*] 64s: Fix masking of SRR1 bits on instruction fault
+ - [powerpc*] 64s/radix: Fix 128TB-512TB virtual address boundary case
+ allocation
+ - [powerpc*] 64s/hash: Fix 512T hint detection to use >= 128T
+ - [powerpc*] 64s/hash: Fix 128TB-512TB virtual address boundary case
+ allocation
+ - [powerpc*] 64s/hash: Fix fork() with 512TB process address space
+ - [powerpc*] 64s/hash: Allow MAP_FIXED allocations to cross 128TB boundary
+ - media: Don't do DMA on stack for firmware upload in the AS102 driver
+ - media: rc: check for integer overflow
+ - media: rc: nec decoder should not send both repeat and keycode
+ - media: v4l2-ctrl: Fix flags field on Control events
+ - [arm64] media: venus: fix wrong size on dma_free
+ - [arm64] media: venus: venc: fix bytesused v4l2_plane field
+ - [arm64] media: venus: reimplement decoder stop command
+ - [arm64] dts: meson-gxl: Add alternate ARM Trusted Firmware reserved
+ memory zone
+ - iwlwifi: fix wrong struct for a000 device
+ - iwlwifi: fix PCI IDs and configuration mapping for 9000 series
+ - iwlwifi: mvm: support version 7 of the SCAN_REQ_UMAC FW command
+ - e1000e: Fix error path in link detection
+ - e1000e: Fix return value test
+ - e1000e: Separate signaling for link check/link up
+ - e1000e: Avoid receiver overrun interrupt bursts
+ - e1000e: fix buffer overrun while the I219 is processing DMA transactions
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.4
+ - [x86]: platform: hp-wmi: Fix tablet mode detection for convertibles
+ - mm, memory_hotplug: do not back off draining pcp free pages from kworker
+ context
+ - mm, oom_reaper: gather each vma to prevent leaking TLB entry
+ - [armhf,arm64] mm/cma: fix alloc_contig_range ret code/potential leak
+ - mm: fix device-dax pud write-faults triggered by get_user_pages()
+ - mm, hugetlbfs: introduce ->split() to vm_operations_struct
+ - device-dax: implement ->split() to catch invalid munmap attempts
+ - mm: introduce get_user_pages_longterm
+ - mm: fail get_vaddr_frames() for filesystem-dax mappings
+ - v4l2: disable filesystem-dax mapping support
+ - IB/core: disable memory registration of filesystem-dax vmas
+ - exec: avoid RLIMIT_STACK races with prlimit()
+ - mm/madvise.c: fix madvise() infinite loop under special circumstances
+ - mm: migrate: fix an incorrect call of prep_transhuge_page()
+ - mm, memcg: fix mem_cgroup_swapout() for THPs
+ - fs/fat/inode.c: fix sb_rdonly() change
+ - autofs: revert "autofs: take more care to not update last_used on path
+ walk"
+ - autofs: revert "autofs: fix AT_NO_AUTOMOUNT not being honored"
+ - mm/hugetlb: fix NULL-pointer dereference on 5-level paging machine
+ - btrfs: clear space cache inode generation always
+ - nfsd: Fix stateid races between OPEN and CLOSE
+ - nfsd: Fix another OPEN stateid race
+ - nfsd: fix panic in posix_unblock_lock called from nfs4_laundromat
+ - crypto: algif_aead - skip SGL entries with NULL page
+ - crypto: af_alg - remove locking in async callback
+ - crypto: skcipher - Fix skcipher_walk_aead_common
+ - lockd: lost rollback of set_grace_period() in lockd_down_net()
+ - [s390x] revert ELF_ET_DYN_BASE base changes
+ - [armhf] drm: omapdrm: Fix DPI on platforms using the DSI VDDS
+ - [armhf] omapdrm: hdmi4: Correct the SoC revision matching
+ - [arm64] module-plts: factor out PLT generation code for ftrace
+ - [arm64] ftrace: emit ftrace-mod.o contents through code
+ - [powerpc*] powernv: Fix kexec crashes caused by tlbie tracing
+ - [powerpc*] kexec: Fix kexec/kdump in P9 guest kernels
+ - [x86] KVM: pvclock: Handle first-time write to pvclock-page contains
+ random junk
+ - [x86] KVM: Exit to user-mode on #UD intercept when emulator requires
+ - [x86] KVM: inject exceptions produced by x86_decode_insn
+ - [x86] KVM: lapic: Split out x2apic ldr calculation
+ - [x86] KVM: lapic: Fixup LDR on load in x2apic
+ - mmc: sdhci: Avoid swiotlb buffer being full
+ - mmc: block: Fix missing blk_put_request()
+ - mmc: block: Check return value of blk_get_request()
+ - mmc: core: Do not leave the block driver in a suspended state
+ - mmc: block: Ensure that debugfs files are removed
+ - mmc: core: prepend 0x to pre_eol_info entry in sysfs
+ - mmc: core: prepend 0x to OCR entry in sysfs
+ - ACPI / EC: Fix regression related to PM ops support in ECDT device
+ - eeprom: at24: fix reading from 24MAC402/24MAC602
+ - eeprom: at24: correctly set the size for at24mac402
+ - eeprom: at24: check at24_read/write arguments
+ - [alpha,x86] i2c: i801: Fix Failed to allocate irq -2147483648 error
+ - bcache: Fix building error on MIPS
+ - bcache: only permit to recovery read error when cache device is clean
+ - bcache: recover data from backing when data is clean
+ - hwmon: (jc42) optionally try to disable the SMBUS timeout
+ - nvme-pci: add quirk for delay before CHK RDY for WDC SN200
+ - Revert "drm/radeon: dont switch vt on suspend"
+ - drm/amdgpu: potential uninitialized variable in amdgpu_vce_ring_parse_cs()
+ - drm/amdgpu: Potential uninitialized variable in
+ amdgpu_vm_update_directories()
+ - drm/amdgpu: correct reference clock value on vega10
+ - drm/amdgpu: fix error handling in amdgpu_bo_do_create
+ - drm/amdgpu: Properly allocate VM invalidate eng v2
+ - drm/amdgpu: Remove check which is not valid for certain VBIOS
+ - drm/ttm: fix ttm_bo_cleanup_refs_or_queue once more
+ - dma-buf: make reservation_object_copy_fences rcu save
+ - drm/amdgpu: reserve root PD while releasing it
+ - drm/ttm: Always and only destroy bo->ttm_resv in ttm_bo_release_list
+ - drm/vblank: Fix flip event vblank count
+ - drm/vblank: Tune drm_crtc_accurate_vblank_count() WARN down to a debug
+ - drm/tilcdc: Precalculate total frametime in tilcdc_crtc_set_mode()
+ - drm/radeon: fix atombios on big endian
+ - drm/panel: simple: Add missing panel_simple_unprepare() calls
+ - [arm64] drm/hisilicon: Ensure LDI regs are properly configured.
+ - drm/ttm: once more fix ttm_buffer_object_transfer
+ - drm/amd/pp: fix typecast error in powerplay.
+ - drm/fb_helper: Disable all crtc's when initial setup fails.
+ - drm/edid: Don't send non-zero YQ in AVI infoframe for HDMI 1.x sinks
+ - drm/amdgpu: move UVD/VCE and VCN structure out from union
+ - drm/amdgpu: Set adev->vcn.irq.num_types for VCN
+ - IB/core: Do not warn on lid conversions for OPA
+ - IB/hfi1: Do not warn on lid conversions for OPA
+ - e1000e: fix the use of magic numbers for buffer overrun issue
+ - md: forbid a RAID5 from having both a bitmap and a journal.
+ - [x86] drm/i915: Fix false-positive assert_rpm_wakelock_held in
+ i915_pmic_bus_access_notifier v2
+ - [x86] drm/i915: Re-register PMIC bus access notifier on runtime resume
+ - [x86] drm/i915/fbdev: Serialise early hotplug events with async fbdev
+ config
+ - [x86] drm/i915/gvt: Correct ADDR_4K/2M/1G_MASK definition
+ - [x86] drm/i915: Don't try indexed reads to alternate slave addresses
+ - [x86] drm/i915: Prevent zero length "index" write
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.5
+ - drm/amdgpu: Use unsigned ring indices in amdgpu_queue_mgr_map
+ - [s390x] runtime instrumentation: simplify task exit handling
+ - usbip: fix usbip attach to find a port that matches the requested speed
+ - usbip: Fix USB device hang due to wrong enabling of scatter-gather
+ - uas: Always apply US_FL_NO_ATA_1X quirk to Seagate devices
+ - usb: quirks: Add no-lpm quirk for KY-688 USB 3.1 Type-C Hub
+ - serial: 8250_early: Only set divisor if valid clk & baud
+ - [mips*] Add custom serial.h with BASE_BAUD override for generic kernel
+ - ima: fix hash algorithm initialization
+ - [s390x] vfio-ccw: Do not attempt to free no-op, test and tic cda.
+ - PM / Domains: Fix genpd to deal with drivers returning 1 from ->prepare()
+ - [s390x] pci: do not require AIS facility
+ - serial: 8250_fintek: Fix rs485 disablement on invalid ioctl()
+ - staging: rtl8188eu: avoid a null dereference on pmlmepriv
+ - [arm64] mmc: sdhci-msm: fix issue with power irq
+ - hwmon: (pmbus/core) Prevent unintentional setting of page to 0xFF
+ - perf/core: Fix __perf_read_group_add() locking
+ - [armhf] PCI: dra7xx: Create functional dependency between PCIe and PHY
+ - [x86] intel_rdt: Initialize bitmask of shareable resource if CDP enabled
+ - [x86] intel_rdt: Fix potential deadlock during resctrl mount
+ - serial: 8250: Preserve DLD[7:4] for PORT_XR17V35X
+ - kprobes: Use synchronize_rcu_tasks() for optprobe with CONFIG_PREEMPT=y
+ - [x86] entry: Use SYSCALL_DEFINE() macros for sys_modify_ldt()
+ - [armhf,arm64] clocksource/drivers/arm_arch_timer: Validate CNTFRQ after
+ enabling frame
+ - [x86] EDAC, sb_edac: Fix missing break in switch
+ - [arm64] cpuidle: Correct driver unregistration if init fails
+ - usb: xhci: Return error when host is dead in xhci_disable_slot()
+ - [armel,armhf] sysrq : fix Show Regs call trace on ARM
+ - [sh4] serial: sh-sci: suppress warning for ports without dma channels
+ - [armhf] serial: imx: Update cached mctrl value when changing RTS
+ - [x86] kprobes: Disable preemption in ftrace-based jprobes
+ - [x86] locking/refcounts, asm: Use unique .text section for refcount
+ exceptions
+ - [s390x] ptrace: fix guarded storage regset handling
+ - perf tools: Fix leaking rec_argv in error cases
+ - mm, x86/mm: Fix performance regression in get_user_pages_fast()
+ - iio: adc: ti-ads1015: add 10% to conversion wait time
+ - iio: multiplexer: add NULL check on devm_kzalloc() and devm_kmemdup()
+ return values
+ - [x86] locking/refcounts, asm: Enable CONFIG_ARCH_HAS_REFCOUNT
+ - [powerpc*] jprobes: Disable preemption when triggered through ftrace
+ - [powerpc*] kprobes: Disable preemption before invoking probe handler for
+ optprobes
+ - usb: hub: Cycle HUB power when initialization fails
+ - [armhf,arm64] USB: ulpi: fix bus-node lookup
+ - xhci: Don't show incorrect WARN message about events for empty rings
+ - usb: xhci: fix panic in xhci_free_virt_devices_depth_first
+ - USB: core: Add type-specific length check of BOS descriptors
+ - USB: usbfs: Filter flags passed in from user space
+ - usb: host: fix incorrect updating of offset
+ - locking/refcounts: Do not force refcount_t usage as GPL-only export
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.6
+ - usb: gadget: core: Fix ->udc_set_speed() speed handling
+ - serdev: ttyport: add missing receive_buf sanity checks
+ - serdev: ttyport: fix NULL-deref on hangup
+ - serdev: ttyport: fix tty locking in close
+ - usb: f_fs: Force Reserved1=1 in OS_DESC_EXT_COMPAT
+ - can: peak/pci: fix potential bug when probe() fails
+ - can: kvaser_usb: free buf in error paths
+ - can: kvaser_usb: Fix comparison bug in kvaser_usb_read_bulk_callback()
+ - can: kvaser_usb: ratelimit errors if incomplete messages are received
+ - can: kvaser_usb: cancel urb on -EPIPE and -EPROTO
+ - can: ems_usb: cancel urb on -EPIPE and -EPROTO
+ - can: esd_usb2: cancel urb on -EPIPE and -EPROTO
+ - can: usb_8dev: cancel urb on -EPIPE and -EPROTO
+ - can: peak/pcie_fd: fix potential bug in restarting tx queue
+ - virtio: release virtio index when fail to device_register
+ - [arm64] pinctrl: armada-37xx: Fix direction_output() callback behavior
+ - [x86] Drivers: hv: vmbus: Fix a rescind issue
+ - [x86] hv: kvp: Avoid reading past allocated blocks from KVP file
+ - firmware: vpd: Destroy vpd sections in remove function
+ - firmware: vpd: Tie firmware kobject to device lifetime
+ - firmware: vpd: Fix platform driver and device registration/unregistration
+ - scsi: dma-mapping: always provide dma_get_cache_alignment
+ - scsi: use dma_get_cache_alignment() as minimum DMA alignment
+ - scsi: libsas: align sata_device's rps_resp on a cacheline
+ - efi: Move some sysfs files to be read-only by root
+ - efi/esrt: Use memunmap() instead of kfree() to free the remapping
+ - ASN.1: fix out-of-bounds read when parsing indefinite length item
+ - ASN.1: check for error from ASN1_OP_END__ACT actions
+ - KEYS: add missing permission check for request_key() destination
+ (CVE-2017-17807)
+ - KEYS: reject NULL restriction string when type is specified
+ - X.509: reject invalid BIT STRING for subjectPublicKey
+ - X.509: fix comparisons of ->pkey_algo
+ - [x86] idt: Load idt early in start_secondary
+ - [x86] PCI: Make broadcom_postcore_init() check acpi_disabled
+ - [x86] KVM: fix APIC page invalidation
+ - btrfs: fix missing error return in btrfs_drop_snapshot
+ - btrfs: handle errors while updating refcounts in update_ref_for_cow
+ - ALSA: pcm: prevent UAF in snd_pcm_info
+ - ALSA: seq: Remove spurious WARN_ON() at timer check
+ - ALSA: usb-audio: Fix out-of-bound error
+ - ALSA: usb-audio: Add check return value for usb_string()
+ - [x86] iommu/vt-d: Fix scatterlist offset handling
+ - smp/hotplug: Move step CPUHP_AP_SMPCFD_DYING to the correct place
+ - [s390x] always save and restore all registers on context switch
+ - [s390x] mm: fix off-by-one bug in 5-level page table handling
+ - [s390x] fix compat system call table
+ - [s390x] KVM: Fix skey emulation permission check
+ - [powerpc*] Revert "powerpc: Do not call ppc_md.panic in fadump panic
+ notifier"
+ - [powerpc*] 64s: Initialize ISAv3 MMU registers before setting partition
+ table
+ - iwlwifi: mvm: mark MIC stripped MPDUs
+ - iwlwifi: mvm: don't use transmit queue hang detection when it is not
+ possible
+ - iwlwifi: mvm: flush queue before deleting ROC
+ - iwlwifi: mvm: fix packet injection
+ - iwlwifi: mvm: enable RX offloading with TKIP and WEP
+ - brcmfmac: change driver unbind order of the sdio function devices
+ - md/r5cache: move mddev_lock() out of r5c_journal_mode_set()
+ - [armhf] drm/bridge: analogix dp: Fix runtime PM state in get_modes()
+ callback
+ - [armhf] drm/exynos: gem: Drop NONCONTIG flag for buffers allocated
+ without IOMMU
+ - [x86] drm/i915: Fix vblank timestamp/frame counter jumps on gen2
+ - media: dvb: i2c transfers over usb cannot be done from stack
+ - media: rc: sir_ir: detect presence of port
+ - media: rc: partial revert of "media: rc: per-protocol repeat period"
+ - [arm64] KVM: fix VTTBR_BADDR_MASK BUG_ON off-by-one
+ - [armhf] KVM: Fix VTTBR_BADDR_MASK BUG_ON off-by-one
+ - [x86] KVM: VMX: remove I/O port 0x80 bypass on Intel hosts
+ (CVE-2017-1000407)
+ - [armhf,arm64] KVM: Fix broken GICH_ELRSR big endian conversion
+ - [armhf,arm64] KVM: vgic-irqfd: Fix MSI entry allocation
+ - [armhf,arm64] KVM: vgic: Preserve the revious read from the pending table
+ - [armhf,arm64] KVM: vgic-its: Check result of allocation before use
+ - [arm64] fpsimd: Prevent registers leaking from dead tasks
+ - [arm64] SW PAN: Point saved ttbr0 at the zero page when switching to
+ init_mm
+ - [arm64] SW PAN: Update saved ttbr0 value on enter_lazy_tlb
+ - [armhf] Revert "ARM: dts: imx53: add srtc node"
+ - [armhf] bus: arm-cci: Fix use of smp_processor_id() in preemptible context
+ - IB/core: Only enforce security for InfiniBand
+ - [armel,armhf] BUG if jumping to usermode address in kernel mode
+ - [armel,armhf] avoid faulting on qemu
+ - [arm64] irqchip/qcom: Fix u32 comparison with value less than zero
+ - [powerpc*] perf: Fix pmu_count to count only nest imc pmus
+ - apparmor: fix leak of null profile name if profile allocation fails
+ - mac80211_hwsim: Fix memory leak in hwsim_new_radio_nl()
+ - gre6: use log_ecn_error module parameter in ip6_tnl_rcv()
+ - route: also update fnhe_genid when updating a route cache
+ - route: update fnhe_expires for redirect when the fnhe exists
+ - rsi: fix memory leak on buf and usb_reg_buf
+ - pipe: match pipe_max_size data type with procfs
+ - lib/genalloc.c: make the avail variable an atomic_long_t
+ - NFS: Fix a typo in nfs_rename()
+ - sunrpc: Fix rpc_task_begin trace point
+ - nfp: inherit the max_mtu from the PF netdev
+ - nfp: fix flower offload metadata flag usage
+ - xfs: fix forgotten rcu read unlock when skipping inode reclaim
+ - block: wake up all tasks blocked in get_request()
+ - [sparc64] mm: set fields in deferred pages
+ - zsmalloc: calling zs_map_object() from irq is a bug
+ - slub: fix sysfs duplicate filename creation when slub_debug=O
+ - sctp: do not free asoc when it is already dead in sctp_sendmsg
+ - sctp: use the right sk after waking up from wait_buf sleep
+ - fcntl: don't leak fd reference when fixup_compat_flock fails
+ - geneve: fix fill_info when link down
+ - bpf: fix lockdep splat
+ - [arm64] clk: qcom: common: fix legacy board-clock registration
+ - [arm64] clk: hi3660: fix incorrect uart3 clock freqency
+ - atm: horizon: Fix irq release error
+ - xfrm: Copy policy family in clone_policy
+ - f2fs: fix to clear FI_NO_PREALLOC
+ - bnxt_re: changing the ip address shouldn't affect new connections
+ - IB/mlx4: Increase maximal message size under UD QP
+ - IB/mlx5: Assign send CQ and recv CQ of UMR QP
+ - afs: Fix total-length calculation for multiple-page send
+ - afs: Connect up the CB.ProbeUuid
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.7
+ - net: realtek: r8169: implement set_link_ksettings()
+ - [s390x] qeth: fix early exit from error path
+ - tipc: fix memory leak in tipc_accept_from_sock()
+ - vhost: fix skb leak in handle_rx()
+ - rds: Fix NULL pointer dereference in __rds_rdma_map
+ - sit: update frag_off info
+ - tcp: add tcp_v4_fill_cb()/tcp_v4_restore_cb()
+ - packet: fix crash in fanout_demux_rollover()
+ - net/packet: fix a race in packet_bind() and packet_notifier()
+ - tcp: remove buggy call to tcp_v6_restore_cb()
+ - usbnet: fix alignment for frames with no ethernet header
+ - net: remove hlist_nulls_add_tail_rcu()
+ - stmmac: reset last TSO segment size after device open
+ - tcp/dccp: block bh before arming time_wait timer
+ - [s390x] qeth: build max size GSO skbs on L2 devices
+ - [s390x] qeth: fix thinko in IPv4 multicast address tracking
+ - [s390x] qeth: fix GSO throughput regression
+ - tcp: use IPCB instead of TCP_SKB_CB in inet_exact_dif_match()
+ - tipc: call tipc_rcv() only if bearer is up in tipc_udp_recv()
+ - tcp: use current time in tcp_rcv_space_adjust()
+ - net: sched: cbq: create block for q->link.block
+ - tap: free skb if flags error
+ - tcp: when scheduling TLP, time of RTO should account for current ACK
+ - tun: free skb in early errors
+ - net: ipv6: Fixup device for anycast routes during copy
+ - tun: fix rcu_read_lock imbalance in tun_build_skb
+ - net: accept UFO datagrams from tuntap and packet
+ - net: openvswitch: datapath: fix data type in queue_gso_packets
+ - cls_bpf: don't decrement net's refcount when offload fails
+ - sctp: use right member as the param of list_for_each_entry
+ - ipmi: Stop timers before cleaning up the module
+ - usb: gadget: ffs: Forbid usb_ep_alloc_request from sleeping
+ - fcntl: don't cap l_start and l_end values for F_GETLK64 in compat syscall
+ - fix kcm_clone()
+ - [armhf,arm64] KVM: vgic-its: Preserve the revious read from the pending
+ table
+ - kbuild: do not call cc-option before KBUILD_CFLAGS initialization
+ - [powerpc*] powernv/idle: Round up latency and residency values
+ - ipvlan: fix ipv6 outbound device
+ - blk-mq: Avoid that request queue removal can trigger list corruption
+ - nvmet-rdma: update queue list during ib_device removal
+ - audit: Allow auditd to set pid to 0 to end auditing
+ - audit: ensure that 'audit=1' actually enables audit for PID 1
+ - dm raid: fix panic when attempting to force a raid to sync
+ - md: free unused memory after bitmap resize
+ - RDMA/cxgb4: Annotate r2 and stag as __be32
+ - [x86] intel_rdt: Fix potential deadlock during resctrl unmount
+
+ [ Salvatore Bonaccorso ]
+ * Add ABI reference for 4.14.0-1
+ * xen/time: do not decrease steal time after live migration on xen
+ (Closes: #871608)
+ * crypto: salsa20 - fix blkcipher_walk API usage (CVE-2017-17805)
+ * crypto: hmac - require that the underlying hash algorithm is unkeyed
+ (CVE-2017-17806)
+
+ [ Vagrant Cascadian ]
+ * [armhf, arm64] Backport patches from 4.15.x to support dwmac-sun8i.
+
+ [ Ben Hutchings ]
+ * [rt] Update to 4.14.6-rt7:
+ - hrtimer: account for migrated timers
+ - crypto: mcryptd: protect the per-CPU queue with a lock
+ - tracing: Update inter-event hist trigger support to v7:
+ + Rename virtual "$common_timestamp" field to "common_timestamp"
+ + Fix use-after-free in trigger removal
+ - mm/slub: close possible memory-leak in kmem_cache_alloc_bulk()
+ - crypto: limit more FPU-enabled sections
+ * dccp: CVE-2017-8824: use-after-free in DCCP code
+ * netfilter: nfnetlink_cthelper: Add missing permission checks
+ (CVE-2017-17448)
+ * netlink: Add netns check on taps (CVE-2017-17449)
+ * netfilter: xt_osf: Add missing permission checks (CVE-2017-17450)
+ * USB: core: prevent malicious bNumInterfaces overflow (CVE-2017-17558)
+ * net: ipv4: fix for a race condition in raw_sendmsg (CVE-2017-17712)
+ * media: dvb-usb-v2: lmedm04: Improve logic checking of warm start
+ (CVE-2017-16538)
+ * media: dvb-usb-v2: lmedm04: move ts2020 attach to dm04_lme2510_tuner
+ (CVE-2017-16538)
+ * media: hdpvr: Fix an error handling path in hdpvr_probe() (CVE-2017-16644)
+ * [armhf,arm64,x86] KVM: Fix stack-out-of-bounds read in write_mmio
+ (CVE-2017-17741)
+ * bluetooth: Prevent stack info leak from the EFS element.
+ (CVE-2017-1000410)
+ * bpf/verifier: Fix multiple security issues (Closes: #883558):
+ - encapsulate verifier log state into a structure
+ - move global verifier log into verifier environment
+ - fix branch pruning logic
+ - fix bounds calculation on BPF_RSH
+ - fix incorrect sign extension in check_alu_op() (CVE-2017-16995)
+ - fix incorrect tracking of register size truncation (CVE-2017-16996)
+ - fix 32-bit ALU op verification
+ - fix missing error return in check_stack_boundary()
+ - force strict alignment checks for stack pointers
+ - don't prune branches when a scalar is replaced with a pointer
+ - fix integer overflows
+ * Bump ABI to 2
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 22 Dec 2017 14:12:23 +0000
+
+linux (4.14.2-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.1
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.14.2
+ - mm/pagewalk.c: report holes in hugetlb ranges (CVE-2017-16994)
+
+ [ Ben Hutchings ]
+ * [rt] Update to 4.14-rt1 and reenable (Closes: #882192)
+ * i40e: Build for 32-bit targets again
+ - i40e/i40evf: organize and re-number feature flags
+ - i40e: fix flags declaration
+ - Revert "i40e: Build for 64-bit targets only"
+ * aufs: Update support patchset to aufs4.14-20171120
+ * [armel] Change configuration to reduce image size (fixes FTBFS):
+ - Change CONNECTOR from built-in to module, and disable PROC_EVENTS
+ - Disable INTEGRITY and dependent options
+ - video: Disable USB_APPLEDISPLAY, BACKLIGHT_CLASS_DEVICE
+ * apparmor: fix oops in audit_signal_cb hook (regression in 4.14)
+ * leds: Enable LEDS_BRIGHTNESS_HW_CHANGED (Closes: #872862)
+ * [rt] Add new signing subkey for Steven Rostedt
+ * [rt] Update to 4.14.1-rt3
+ * Set ABI to 1
+ * mmap: Remember the MAP_FIXED flag as VM_FIXED
+ * [x86] mmap: Add an exception to the stack gap for Hotspot JVM compatibility
+ (Closes: #865303)
+
+ [ Salvatore Bonaccorso ]
+ * mm, thp: Do not make page table dirty unconditionally in touch_p[mu]d()
+ (CVE-2017-1000405)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 30 Nov 2017 12:33:47 +0000
+
+linux (4.14-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.14
+
+ [ Ben Hutchings ]
+ * debian/control: Set Rules-Requires-Root to no
+ * [armhf] drm: Enable DRM_SUN4I, DRM_SUN4I_HDMI, DRM_SUN4I_BACKEND,
+ DRM_SUN8I_MIXER as modules; and DRM_SUN4I_HDMI_CEC (Closes: #881570)
+ * media: dvb-core: always call invoke_release() in fe_free()
+ * dvb_frontend: don't use-after-free the frontend struct (CVE-2017-16648)
+ * Set ABI name to trunk
+
+ [ Bastian Blank ]
+ * Enable CRYPTO_SHA3.
+
+ [ Riku Voipio ]
+ * [arm64] enable generic server options.
+ - NUMA, ACPI_NUMA, CRASH_DUMP, VFIO, HOTPLUG_PCI, ACPI_CPPC_CPUFREQ,
+ MMC_SDHCI_ACPI, PL330_DMA
+ * [arm64] enable various server platform drivers
+ - NET_XGENE_V2, EDAC_THUNDERX, MMC_CAVIUM_THUNDER,
+ GPIO_XLP, I2C_XLP9XX, SPI_XLP, DRM_HISI_HIBMC, HISI_SAS_PCI,
+ GPIO_WATCHDOG, ARM_SP805_WATCHDOG, ARM_SBSA_WATCHDOG, DW_WATCHDOG
+ * [arm64] enable support for Marvell arm64 boards
+ - CRYPTO_DEV_MARVELL_CESA, MARVELL_PHY, MARVELL_10G_PHY,
+ PHY_MVEBU_CP110_COMPHY, RTC_DRV_MV, RTC_DRV_ARMADA38X, SPI_ARMADA_3700
+ ARMADA_THERMAL, HW_RANDOM_OMAP, CRYPTO_DEV_SAFEXCE
+ * [arm64] 96boards Hikey and Dragonboard support
+ - PCIE_KIRIN, TEE, OPTEE, SND_I2S_HI6210_I2S, DRM_I2C_ADV7511_AUDIO,
+ CMA, USB_ISP176, USB_CHIPIDEA_ULPI, USB_DWC3_ULPI, NOP_USB_XCEIV
+ USB_ULPI, RPMSG_QCOM*, PHY_QCOM*, QCOM_IOMMU, QCOM_CLK*, etc
+ - SERIAL_DEV_BUS for HiKey bluetooth
+ * All options as modules when possible
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 17 Nov 2017 00:16:15 +0000
+
+linux (4.14~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [mips*] Increase RELOCATION_TABLE_SIZE to 0x00120000 (fixes FTBFS)
+ * debian/bin/gencontrol.py: Set encoding to UTF-8 globally
+ * [alpha] udeb: Remove empty fb-modules package (fixes FTBFS)
+ * [armel] udeb: Remove fbcon from fb-modules package
+
+ [ Uwe Kleine-König ]
+ * [arm64] add BRCMFMAC_SDIO for wifi on Raspberry Pi 3 (Closes: #877911)
+
+ [ Vagrant Cascadian ]
+ * Enable SQUASHFS_LZ4 in default config.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 30 Oct 2017 18:31:38 +0000
+
+linux (4.14~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * Update kconfig for 4.14:
+ - [alpha] fbdev: Re-enable FRAMEBUFFER_CONSOLE as built-in
+ - [armel] fbdev: Explicitly disable FRAMEBUFFER_CONSOLE, as it can no
+ longer be a module
+ - [arm64] Re-enable MMC_QCOM_DML
+ - Change RC_CORE back to being a module
+ - power/supply: Enable BATTERY_BQ27XXX and BATTERY_BQ27XXX_HDQ as modules,
+ replacing W1_SLAVE_BQ27000
+ * net: Disable IRDA, which will soon be deleted upstream
+ * [mips*] Increase RELOCATION_TABLE_SIZE to 0x00110000 for all flavours
+ (fixes FTBFS)
+ * i40e: Build for 64-bit targets only (fixes FTBFS on hppa)
+ * Compile with gcc-7 on all architectures
+
+ [ John Paul Adrian Glaubitz ]
+ * [m68k] udeb: Build ata-modules package, include libata
+ * [m68k] udeb: Add ide-cd_mod to cdrom-core-modules
+ * [m68k] udeb: Build ide-core-modules package, include ide-core
+ * [m68k] udeb: Build ide-modules package, include ide-gd_mod
+ * [m68k] udeb: Move old IDE drivers from pata-modules to ide-modules:
+ - buddha, falconide, gayle, macide, q40ide
+ * [m68k] udeb: Add missing SCSI drivers to scsi-modules:
+ - a2091, a3000, a4000t, bvme6000_scsi, gvp11, mvme16x_scsi, zorro7xx
+ * [m68k] Build uncompressed kernel image by default.
+
+ [ Uwe Kleine-König ]
+ * media: drop explicit setting of DVB_MAX_ADAPTERS to follow upstream default
+ (Closes: #878846)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 17 Oct 2017 23:37:52 +0100
+
+linux (4.14~rc3-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update support patchset to aufs4.x-rcN-20171002
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 02 Oct 2017 04:47:08 +0100
+
+linux (4.13.13-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.11
+ - workqueue: replace pool->manager_arb mutex with a flag
+ - [x86] ALSA: hda/realtek - Add support for ALC236/ALC3204
+ - [x86] ALSA: hda - fix headset mic problem for Dell machines with alc236
+ - ceph: unlock dangling spinlock in try_flush_caps()
+ - [powerpc*] KVM: PPC: Fix oops when checking KVM_CAP_PPC_HTM
+ (CVE-2017-15306)
+ - [powerpc*] KVM: PPC: Book3S HV: POWER9 more doorbell fixes
+ - [powerpc*] KVM: PPC: Book3S: Protect kvmppc_gpa_to_ua() with SRCU
+ - [s390x] kvm: fix detection of guest machine checks
+ - nbd: handle interrupted sendmsg with a sndtimeo set
+ - spi: uapi: spidev: add missing ioctl header
+ - spi: a3700: Return correct value on timeout detection
+ - spi: bcm-qspi: Fix use after free in bcm_qspi_probe() in error path
+ - spi: armada-3700: Fix failing commands with quad-SPI
+ - ovl: add NULL check in ovl_alloc_inode
+ - ovl: fix EIO from lookup of non-indexed upper
+ - ovl: handle ENOENT on index lookup
+ - ovl: do not cleanup unsupported index entries
+ - fuse: fix READDIRPLUS skipping an entry
+ - xen/gntdev: avoid out of bounds access in case of partial gntdev_mmap()
+ - xen: fix booting ballooned down hvm guest
+ - cifs: Select all required crypto modules
+ - CIFS: Fix NULL pointer deref on SMB2_tcon() failure
+ - Input: elan_i2c - add ELAN0611 to the ACPI table
+ - Input: gtco - fix potential out-of-bound access (CVE-2017-16643)
+ - Fix encryption labels and lengths for SMB3.1.1
+ - SMB3: Validate negotiate request must always be signed
+ - assoc_array: Fix a buggy node-splitting case (CVE-2017-12193)
+ - [s390x] scsi: zfcp: fix erp_action use-before-initialize in REC action
+ trace
+ - scsi: aacraid: Fix controller initialization failure
+ - scsi: qla2xxx: Initialize Work element before requesting IRQs
+ - scsi: sg: Re-fix off by one in sg_fill_request_table()
+ - [x86] cpu/AMD: Apply the Erratum 688 fix when the BIOS doesn't
+ - [x86] drm/amd/powerplay: fix uninitialized variable
+ - [x86] drm/i915/perf: fix perf enable/disable ioctls with 32bits
+ userspace
+ - [armhf] can: sun4i: fix loopback mode
+ - can: kvaser_usb: Correct return value in printout
+ - can: kvaser_usb: Ignore CMD_FLUSH_QUEUE_REPLY messages
+ - cfg80211: fix connect/disconnect edge cases
+ - ipsec: Fix aborted xfrm policy dump crash
+ - [armhf] regulator: fan53555: fix I2C device ids (Closes: #879768)
+ - [powerpc*] xive: Fix the size of the cpumask used in
+ xive_find_target_in_mask()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.12
+ - ALSA: timer: Add missing mutex lock for compat ioctls
+ - ALSA: seq: Fix nested rwsem annotation for lockdep splat
+ - cifs: check MaxPathNameComponentLength != 0 before using it
+ (Closes: #880504)
+ - KEYS: return full count in keyring_read() if buffer is too small
+ - KEYS: trusted: fix writing past end of buffer in trusted_read()
+ - KEYS: fix out-of-bounds read during ASN.1 parsing
+ - ASoC: adau17x1: Workaround for noise bug in ADC
+ - virtio_blk: Fix an SG_IO regression
+ - [arm64] ensure __dump_instr() checks addr_limit
+ - [arm64] KVM: its: Fix missing dynamic allocation check in scan_its_table
+ - [armhf, arm64] KVM: set right LR register value for 32 bit guest when
+ inject abort
+ - [armhf,arm64] kvm: Disable branch profiling in HYP code
+ - [armhf] dts: mvebu: pl310-cache disable double-linefill
+ - drm/amdgpu: return -ENOENT from uvd 6.0 early init for harvesting
+ - drm/amdgpu: allow harvesting check for Polaris VCE
+ - userfaultfd: hugetlbfs: prevent UFFDIO_COPY to fill beyond the end of
+ i_size
+ - ocfs2: fstrim: Fix start offset of first cluster group during fstrim
+ - fs/hugetlbfs/inode.c: fix hwpoison reserve accounting
+ - mm, swap: fix race between swap count continuation operations
+ - [x86] drm/i915: Do not rely on wm preservation for ILK watermarks
+ - [x86] drm/i915/edp: read edp display control registers unconditionally
+ - [mips*] bpf: Fix a typo in build_one_insn()
+ - [mips*] smp-cmp: Use right include for task_struct
+ - [mips*] SMP: Fix deadlock & online race
+ - Revert "x86: do not use cpufreq_quick_get() for /proc/cpuinfo "cpu MHz""
+ - [powerpc*] kprobes: Dereference function pointers only if the address
+ does not belong to kernel text
+ - futex: Fix more put_pi_state() vs. exit_pi_state_list() races
+ - perf/cgroup: Fix perf cgroup hierarchy support
+ - [x86] mcelog: Get rid of RCU remnants
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.13
+ - netfilter: nat: Revert "netfilter: nat: convert nat bysrc hash to
+ rhashtable"
+ - netfilter: nft_set_hash: disable fast_ops for 2-len keys (Closes: #880145)
+ - workqueue: Fix NULL pointer dereference
+ - crypto: ccm - preserve the IV buffer
+ - [x86] crypto: sha1-mb - fix panic due to unaligned access
+ - [x86] crypto: sha256-mb - fix panic due to unaligned access
+ - KEYS: fix NULL pointer dereference during ASN.1 parsing [ver #2]
+ - [x86] ACPI / PM: Blacklist Low Power S0 Idle _DSM for Dell XPS13 9360
+ - ACPICA: Dispatch active GPEs at init time
+ - ACPICA: Make it possible to enable runtime GPEs earlier
+ - ACPI / scan: Enable GPEs before scanning the namespace
+ - [armel,armhf] 8720/1: ensure dump_instr() checks addr_limit
+ - ALSA: timer: Limit max instances per timer
+ - ALSA: usb-audio: support new Amanero Combo384 firmware version
+ - [x86] ALSA: hda - fix headset mic problem for Dell machines with alc274
+ - ALSA: seq: Fix OSS sysex delivery in OSS emulation
+ - ALSA: seq: Avoid invalid lockdep class warning
+ - [mips*] Fix CM region target definitions
+ - [powerpc*] KVM: Book3S HV: Fix exclusion between HPT resizing and other
+ HPT updates
+ - Input: elan_i2c - add ELAN060C to the ACPI table
+ - rbd: use GFP_NOIO for parent stat and data requests
+ - [x86] drm/vmwgfx: Fix Ubuntu 17.10 Wayland black screen issue
+ - [armhf] can: sun4i: handle overrun in RX FIFO
+ - can: peak: Add support for new PCIe/M2 CAN FD interfaces
+ - [x86] debug: Handle warnings before the notifier chain, to fix KGDB crash
+ - [x86] smpboot: Make optimization of delay calibration work correctly
+ - [x86] oprofile/ppro: Do not use __this_cpu*() in preemptible context
+
+ [ Salvatore Bonaccorso ]
+ * mac80211: accept key reinstall without changing anything (CVE-2017-13080)
+ * sctp: do not peel off an assoc from one netns to another one
+ (CVE-2017-15115)
+
+ [ Ben Hutchings ]
+ * linux-image: Recommend apparmor, as systemd units with an AppArmor
+ profile will fail without it (Closes: #880441)
+ * [powerpc*] kvm: Ignore ABI change in 4.13.6 (fixes FTBFS)
+ * swap: Avoid ABI change in 4.13.12
+ * mac80211: use constant time comparison with keys
+ * mac80211: don't compare TKIP TX MIC key in reinstall prevention
+ * usb: usbtest: fix NULL pointer dereference (CVE-2017-16532)
+ * media: cx231xx-cards: fix NULL-deref on missing association descriptor
+ (CVE-2017-16536)
+ * media: imon: Fix null-ptr-deref in imon_probe (CVE-2017-16537)
+ * media: dib0700: fix invalid dvb_detach argument (CVE-2017-16646)
+ * net: usb: asix: fill null-ptr-deref in asix_suspend (CVE-2017-16647)
+ * net: cdc_ether: fix divide by 0 on bad descriptors (CVE-2017-16649)
+ * net: qmi_wwan: fix divide by 0 on bad descriptors (CVE-2017-16650)
+ * nftables: Enable NFT_RT, NFT_SET_BITMAP, NFT_OBJREF as modules
+ (Closes: #881931)
+ * [powerpc*/*64*] drm: Enable DRM_AMDGPU as module (Closes: #881593)
+ * amdgpu: Enable DRM_AMDGPU_USERPTR on all architectures
+ * amdgpu: Enable DRM_AMDGPU_SI, CONFIG_DRM_AMDGPU_CIK (Closes: #847570)
+ * [arm64,x86] net/wireless: Enable RTL8723BS as module (Closes: #881568)
+ * [arm64] nvmem: Enable NVMEM_SUNXI_SID as module (Closes: #881567)
+ * [x86] rmi4: Disable RMI4_SMB (Closes: #880471)
+ * ALSA: timer: Avoid ABI change in 4.13.13
+ * netfilter: nat: Avoid ABI change in 4.13.13
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 16 Nov 2017 21:04:10 +0000
+
+linux (4.13.10-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.5
+ - cifs: check rsp for NULL before dereferencing in SMB2_open
+ - cifs: release cifs root_cred after exit_cifs
+ - cifs: release auth_key.response for reconnect.
+ - nvme-pci: fix host memory buffer allocation fallback
+ - nvme-pci: use appropriate initial chunk size for HMB allocation
+ - nvme-pci: propagate (some) errors from host memory buffer setup
+ - dax: remove the pmem_dax_ops->flush abstraction
+ - dm integrity: do not check integrity for failed read operations
+ - mmc: block: Fix incorrectly initialized requests
+ - fs/proc: Report eip/esp in /prod/PID/stat for coredumping
+ - scsi: scsi_transport_fc: fix NULL pointer dereference in
+ fc_bsg_job_timeout
+ - cifs: SMB3: Add support for multidialect negotiate (SMB2.1 and later)
+ - mac80211: fix VLAN handling with TXQs
+ - mac80211_hwsim: Use proper TX power
+ - mac80211: flush hw_roc_start work before cancelling the ROC
+ - genirq: Make sparse_irq_lock protect what it should protect
+ - genirq/msi: Fix populating multiple interrupts
+ - genirq: Fix cpumask check in __irq_startup_managed()
+ - [powerpc*] KVM: Book3S HV: Hold kvm->lock around call to
+ kvmppc_update_lpcr
+ - [powerpc*] KVM: Book3S HV: Fix bug causing host SLB to be restored
+ incorrectly
+ - [powerpc*] KVM: PPC: Book3S HV: Don't access XIVE PIPR register using
+ byte accesses
+ - tracing: Fix trace_pipe behavior for instance traces
+ - tracing: Erase irqsoff trace with empty write
+ - tracing: Remove RCU work arounds from stack tracer
+ - md/raid5: fix a race condition in stripe batch
+ - md/raid5: preserve STRIPE_ON_UNPLUG_LIST in break_stripe_batch_list
+ - scsi: aacraid: Fix 2T+ drives on SmartIOC-2000
+ - scsi: aacraid: Add a small delay after IOP reset
+ - [armhf] drm/exynos: Fix locking in the suspend/resume paths
+ - [x86] drm/i915/gvt: Fix incorrect PCI BARs reporting
+ - Revert "drm/i915/bxt: Disable device ready before shutdown command"
+ - drm/amdgpu: revert tile table update for oland
+ - drm/radeon: disable hard reset in hibernate for APUs
+ - crypto: drbg - fix freeing of resources
+ - security/keys: properly zero out sensitive key material in big_key
+ - security/keys: rewrite all of big_key crypto
+ - KEYS: fix writing past end of user-supplied buffer in keyring_read()
+ - KEYS: prevent creating a different user's keyrings
+ - [x86] libnvdimm, namespace: fix btt claim class crash
+ - [powerpc*] eeh: Create PHB PEs after EEH is initialized
+ - [powerpc*] pseries: Fix parent_dn reference leak in add_dt_node()
+ - [powerpc*] tm: Flush TM only if CPU has TM feature
+ - [mips*] Fix perf event init
+ - [s390x] perf: fix bug when creating per-thread event
+ - [s390x] mm: make pmdp_invalidate() do invalidation only
+ - [s390x] mm: fix write access check in gup_huge_pmd()
+ - PM: core: Fix device_pm_check_callbacks()
+ - Revert "IB/ipoib: Update broadcast object if PKey value was changed in
+ index 0"
+ - cifs: Fix SMB3.1.1 guest authentication to Samba
+ - cifs: SMB3: Fix endian warning
+ - cifs: SMB3: Warn user if trying to sign connection that authenticated as
+ guest
+ - cifs: SMB: Validate negotiate (to protect against downgrade) even if
+ signing off
+ - cifs: SMB3: handle new statx fields
+ - cifs: SMB3: Don't ignore O_SYNC/O_DSYNC and O_DIRECT flags
+ - vfs: Return -ENXIO for negative SEEK_HOLE / SEEK_DATA offsets
+ - libceph: don't allow bidirectional swap of pg-upmap-items
+ - brd: fix overflow in __brd_direct_access
+ - gfs2: Fix debugfs glocks dump
+ - bsg-lib: don't free job in bsg_prepare_job
+ - iw_cxgb4: drop listen destroy replies if no ep found
+ - iw_cxgb4: remove the stid on listen create failure
+ - iw_cxgb4: put ep reference in pass_accept_req()
+ - rcu: Allow for page faults in NMI handlers
+ - mmc: sdhci-pci: Fix voltage switch for some Intel host controllers
+ - extable: Consolidate *kernel_text_address() functions
+ - extable: Enable RCU if it is not watching in kernel_text_address()
+ - seccomp: fix the usage of get/put_seccomp_filter() in seccomp_get_filter()
+ - [arm64] Make sure SPsel is always set
+ - [arm64] mm: Use READ_ONCE when dereferencing pointer to pte table
+ - [arm64] fault: Route pte translation faults via do_translation_fault
+ - [x86] KVM: VMX: extract __pi_post_block
+ - [x86] KVM: VMX: avoid double list add with VT-d posted interrupts
+ - [x86] KVM: VMX: simplify and fix vmx_vcpu_pi_load
+ - [x86] KVM: nVMX: fix HOST_CR3/HOST_CR4 cache
+ - [x86] kvm: Handle async PF in RCU read-side critical sections
+ - xfs: validate bdev support for DAX inode flag
+ - sched/sysctl: Check user input value of sysctl_sched_time_avg
+ - irq/generic-chip: Don't replace domain's name
+ - mtd: Fix partition alignment check on multi-erasesize devices
+ - [armhf] etnaviv: fix submit error path
+ - [armhf] etnaviv: fix gem object list corruption
+ - futex: Fix pi_state->owner serialization
+ - md: fix a race condition for flush request handling
+ - md: separate request handling
+ - PCI: Fix race condition with driver_override
+ - btrfs: fix NULL pointer dereference from free_reloc_roots()
+ - btrfs: clear ordered flag on cleaning up ordered extents
+ - btrfs: finish ordered extent cleaning if no progress is found
+ - btrfs: propagate error to btrfs_cmp_data_prepare caller
+ - btrfs: prevent to set invalid default subvolid
+ - [x86] platform: fujitsu-laptop: Don't oops when FUJ02E3 is not presnt
+ - PM / OPP: Call notifier without holding opp_table->lock
+ - [x86] mm: Fix fault error path using unsafe vma pointer
+ - [x86] fpu: Don't let userspace set bogus xcomp_bv (CVE-2017-15537)
+ - [x86] KVM: VMX: do not change SN bit in vmx_update_pi_irte()
+ - [x86] KVM: VMX: remove WARN_ON_ONCE in kvm_vcpu_trigger_posted_interrupt
+ - [x86] KVM: VMX: use cmpxchg64
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.6
+ - [armhf,arm64] usb: dwc3: ep0: fix DMA starvation by assigning req->trb on
+ ep0
+ - mlxsw: spectrum: Fix EEPROM access in case of SFP/SFP+
+ - net: bonding: Fix transmit load balancing in balance-alb mode if
+ specified by sysfs
+ - openvswitch: Fix an error handling path in
+ 'ovs_nla_init_match_and_action()'
+ - net: bonding: fix tlb_dynamic_lb default value
+ - net_sched: gen_estimator: fix scaling error in bytes/packets samples
+ - net: sched: fix use-after-free in tcf_action_destroy and tcf_del_walker
+ - sctp: potential read out of bounds in sctp_ulpevent_type_enabled()
+ - tcp: update skb->skb_mstamp more carefully
+ - bpf/verifier: reject BPF_ALU64|BPF_END
+ - tcp: fix data delivery rate
+ - udpv6: Fix the checksum computation when HW checksum does not apply
+ - ip6_gre: skb_push ipv6hdr before packing the header in ip6gre_header
+ - net: phy: Fix mask value write on gmii2rgmii converter speed register
+ - ip6_tunnel: do not allow loading ip6_tunnel if ipv6 is disabled in cmdline
+ - net/sched: cls_matchall: fix crash when used with classful qdisc
+ - 8139too: revisit napi_complete_done() usage
+ - bpf: do not disable/enable BH in bpf_map_free_id()
+ - tcp: fastopen: fix on syn-data transmit failure
+ - [powerpc*] net: emac: Fix napi poll list corruption
+ - net: ipv6: fix regression of no RTM_DELADDR sent after DAD failure
+ - packet: hold bind lock when rebinding to fanout hook (CVE-2017-15649)
+ - net: change skb->mac_header when Generic XDP calls adjust_head
+ - net_sched: always reset qdisc backlog in qdisc_reset()
+ - [armhf,arm64] net: stmmac: Cocci spatch "of_table"
+ - [arm64] net: qcom/emac: specify the correct size when mapping a DMA buffer
+ - vti: fix use after free in vti_tunnel_xmit/vti6_tnl_xmit
+ - l2tp: fix race condition in l2tp_tunnel_delete
+ - tun: bail out from tun_get_user() if the skb is empty
+ - [armhf,arm64] net: dsa: mv88e6xxx: Allow dsa and cpu ports in multiple
+ vlans
+ - [armhf,arm64] net: dsa: Fix network device registration order
+ - packet: in packet_do_bind, test fanout with bind_lock held (CVE-2017-15649)
+ - packet: only test po->has_vnet_hdr once in packet_snd
+ - [armhf,arm64] net: dsa: mv88e6xxx: lock mutex when freeing IRQs
+ - net: Set sk_prot_creator when cloning sockets to the right proto
+ - net/mlx5e: IPoIB, Fix access to invalid memory address
+ - netlink: do not proceed if dump's start() errs
+ - ip6_gre: ip6gre_tap device should keep dst
+ - ip6_tunnel: update mtu properly for ARPHRD_ETHER tunnel device in tx path
+ - IPv4: early demux can return an error code
+ - tipc: use only positive error codes in messages
+ - l2tp: fix l2tp_eth module loading
+ - socket, bpf: fix possible use after free
+ - net: rtnetlink: fix info leak in RTM_GETSTATS call
+ - [amd64] bpf: fix bpf_tail_call() x64 JIT
+ - usb: gadget: core: fix ->udc_set_speed() logic
+ - USB: gadgetfs: Fix crash caused by inadequate synchronization
+ - USB: gadgetfs: fix copy_to_user while holding spinlock
+ - usb: gadget: udc: atmel: set vbus irqflags explicitly
+ - usb-storage: unusual_devs entry to fix write-access regression for
+ Seagate external drives
+ - usb-storage: fix bogus hardware error messages for ATA pass-thru devices
+ - ALSA: usb-audio: Check out-of-bounds access by corrupted buffer descriptor
+ - usb: pci-quirks.c: Corrected timeout values used in handshake
+ - USB: cdc-wdm: ignore -EPIPE from GetEncapsulatedResponse
+ - USB: dummy-hcd: fix connection failures (wrong speed)
+ - USB: dummy-hcd: fix infinite-loop resubmission bug
+ - USB: dummy-hcd: Fix erroneous synchronization change
+ - USB: devio: Prevent integer overflow in proc_do_submiturb()
+ - USB: g_mass_storage: Fix deadlock when driver is unbound
+ - USB: uas: fix bug in handling of alternate settings
+ - USB: core: harden cdc_parse_cdc_header
+ - usb: Increase quirk delay for USB devices
+ - USB: fix out-of-bounds in usb_set_configuration
+ - usb: xhci: Free the right ring in xhci_add_endpoint()
+ - xhci: fix finding correct bus_state structure for USB 3.1 hosts
+ - xhci: fix wrong endpoint ESIT value shown in tracing
+ - usb: host: xhci-plat: allow sysdev to inherit from ACPI
+ - xhci: Fix sleeping with spin_lock_irq() held in ASmedia 1042A workaround
+ - xhci: set missing SuperSpeedPlus Link Protocol bit in roothub descriptor
+ - [x86] Revert "xhci: Limit USB2 port wake support for AMD Promontory hosts"
+ - [armhf] iio: adc: twl4030: Fix an error handling path in
+ 'twl4030_madc_probe()'
+ - [armhf] iio: adc: twl4030: Disable the vusb3v1 rugulator in the error
+ handling path of 'twl4030_madc_probe()'
+ - iio: core: Return error for failed read_reg
+ - uwb: properly check kthread_run return value
+ - uwb: ensure that endpoint is interrupt
+ - ksm: fix unlocked iteration over vmas in cmp_and_merge_page()
+ - mm, hugetlb, soft_offline: save compound page order before page migration
+ - mm, oom_reaper: skip mm structs with mmu notifiers
+ - mm: fix RODATA_TEST failure "rodata_test: test data was not read only"
+ - mm: avoid marking swap cached page as lazyfree
+ - mm: fix data corruption caused by lazyfree page
+ - userfaultfd: non-cooperative: fix fork use after free
+ - ALSA: compress: Remove unused variable
+ - Revert "ALSA: echoaudio: purge contradictions between dimension matrix
+ members and total number of members"
+ - ALSA: usx2y: Suppress kernel warning at page allocation failures
+ - [powerpc*] powernv: Increase memory block size to 1GB on radix
+ - [powerpc*] Fix action argument for cpufeatures-based TLB flush
+ - percpu: make this_cpu_generic_read() atomic w.r.t. interrupts
+ - [x86] intel_th: pci: Add Lewisburg PCH support
+ - driver core: platform: Don't read past the end of "driver_override" buffer
+ - cgroup: Reinit cgroup_taskset structure before cgroup_migrate_execute()
+ returns
+ - [x86] Drivers: hv: fcopy: restore correct transfer length
+ - [x86] vmbus: don't acquire the mutex in vmbus_hvsock_device_unregister()
+ - ftrace: Fix kmemleak in unregister_ftrace_graph
+ - ovl: fix error value printed in ovl_lookup_index()
+ - ovl: fix dput() of ERR_PTR in ovl_cleanup_index()
+ - ovl: fix dentry leak in ovl_indexdir_cleanup()
+ - ovl: fix missing unlock_rename() in ovl_do_copy_up()
+ - ovl: fix regression caused by exclusive upper/work dir protection
+ - [arm64] dt marvell: Fix AP806 system controller size
+ - [arm64] Ensure the instruction emulation is ready for userspace
+ - HID: rmi: Make sure the HID device is opened on resume
+ - HID: i2c-hid: allocate hid buffers for real worst case
+ - HID: wacom: leds: Don't try to control the EKR's read-only LEDs
+ - HID: wacom: Properly report negative values from Intuos Pro 2 Bluetooth
+ - HID: wacom: Correct coordinate system of touchring and pen twist
+ - HID: wacom: generic: Send MSC_SERIAL and ABS_MISC when leaving prox
+ - HID: wacom: generic: Clear ABS_MISC when tool leaves proximity
+ - HID: wacom: Always increment hdev refcount within wacom_get_hdev_data
+ - HID: wacom: bits shifted too much for 9th and 10th buttons
+ - btrfs: avoid overflow when sector_t is 32 bit
+ - Btrfs: fix overlap of fs_info::flags values
+ - dm crypt: reject sector_size feature if device length is not aligned to it
+ - dm ioctl: fix alignment of event number in the device list
+ - dm crypt: fix memory leak in crypt_ctr_cipher_old()
+ - [powerpc*] KVM: Book3S: Fix server always zero from kvmppc_xive_get_xive()
+ - [x86] kvm: Avoid async PF preempting the kernel incorrectly
+ - iwlwifi: mvm: use IWL_HCMD_NOCOPY for MCAST_FILTER_CMD
+ - scsi: sd: Implement blacklist option for WRITE SAME w/ UNMAP
+ - scsi: sd: Do not override max_sectors_kb sysfs setting
+ - brcmfmac: setup passive scan if requested by user-space
+ - [x86] drm/i915: always update ELD connector type after get modes
+ - [x86] drm/i915/bios: ignore HDMI on port A
+ - bsg-lib: fix use-after-free under memory-pressure
+ - nvme-pci: Use PCI bus address for data/queues in CMB
+ - mmc: core: add driver strength selection when selecting hs400es
+ - nl80211: Define policy for packet pattern attributes
+ - [armhf] clk: samsung: exynos4: Enable VPLL and EPLL clocks for
+ suspend/resume cycle
+ - udp: perform source validation for mcast early demux
+ - udp: fix bcast packet reception
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.7
+ - watchdog: Revert "iTCO_wdt: all versions count down twice"
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.8
+ - USB: dummy-hcd: Fix deadlock caused by disconnect detection
+ - [mips*] math-emu: Remove pr_err() calls from fpu_emu()
+ - [mips*] bpf: Fix uninitialised target compiler error
+ - [x86] mei: always use domain runtime pm callbacks.
+ - [armhf] dmaengine: edma: Align the memcpy acnt array size with the
+ transfer
+ - [armhf] dmaengine: ti-dma-crossbar: Fix possible race condition with
+ dma_inuse
+ - NFS: Fix uninitialized rpc_wait_queue
+ - nfs/filelayout: fix oops when freeing filelayout segment
+ - HID: usbhid: fix out-of-bounds bug
+ - crypto: skcipher - Fix crash on zero-length input
+ - crypto: shash - Fix zero-length shash ahash digest crash
+ - [x86] KVM: nVMX: fix guest CR4 loading when emulating L2 to L1 exit
+ - [x86] pinctrl/amd: Fix build dependency on pinmux code
+ - [x86] iommu/amd: Finish TLB flush in amd_iommu_unmap()
+ - device property: Track owner device of device property
+ - Revert "vmalloc: back off when the current task is killed"
+ - fs/mpage.c: fix mpage_writepage() for pages with buffers
+ - ALSA: usb-audio: Kill stray URB at exiting
+ - ALSA: seq: Fix copy_from_user() call inside lock
+ - ALSA: caiaq: Fix stray URB at probe error path
+ - ALSA: line6: Fix NULL dereference at podhd_disconnect()
+ - ALSA: line6: Fix missing initialization before error path
+ - ALSA: line6: Fix leftover URB at error-path during probe
+ - drm/atomic: Unref duplicated drm_atomic_state in
+ drm_atomic_helper_resume()
+ - [x86] drm/i915/edp: Get the Panel Power Off timestamp after panel is off
+ - [x86] drm/i915: Read timings from the correct transcoder in
+ intel_crtc_mode_get()
+ - [x86] drm/i915/bios: parse DDI ports also for CHV for HDMI DDC pin and DP
+ AUX channel
+ - [x86] drm/i915: Use crtc_state_is_legacy_gamma in intel_color_check
+ - usb: gadget: configfs: Fix memory leak of interface directory data
+ - usb: gadget: composite: Fix use-after-free in
+ usb_composite_overwrite_options
+ - [arm64] PCI: aardvark: Move to struct pci_host_bridge IRQ mapping
+ functions
+ - [armhf,armhf] Revert "PCI: tegra: Do not allocate MSI target memory"
+ - direct-io: Prevent NULL pointer access in submit_page_section
+ - fix unbalanced page refcounting in bio_map_user_iov (CVE-2017-12190)
+ - more bio_map_user_iov() leak fixes
+ - bio_copy_user_iov(): don't ignore ->iov_offset
+ - perf script: Add missing separator for "-F ip,brstack" (and brstackoff)
+ - genirq/cpuhotplug: Enforce affinity setting on startup of managed irqs
+ - genirq/cpuhotplug: Add sanity check for effective affinity mask
+ - USB: serial: cp210x: fix partnum regression
+ - USB: serial: console: fix use-after-free on disconnect
+ - USB: serial: console: fix use-after-free after failed setup
+ - RAS/CEC: Use the right length for "cec_disable"
+ - [x86] alternatives: Fix alt_max_short macro to really be a max()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.9
+ - [x86] apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on CPUs
+ without the feature
+ - [x86] apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on
+ hypervisors
+ - [armhf,arm64] perf pmu: Unbreak perf record for arm/arm64 with events
+ with explicit PMU
+ - mm: page_vma_mapped: ensure pmd is loaded with READ_ONCE outside of lock
+ - HID: hid-elecom: extend to fix descriptor for HUGE trackball
+ - [x86] Drivers: hv: vmbus: Fix rescind handling issues
+ - [x86] Drivers: hv: vmbus: Fix bugs in rescind handling
+ - [x86] vmbus: simplify hv_ringbuffer_read
+ - [x86] vmbus: refactor hv_signal_on_read
+ - [x86] vmbus: eliminate duplicate cached index
+ - [x86] vmbus: more host signalling avoidance
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.10
+ - USB: core: fix out-of-bounds access bug in usb_get_bos_descriptor()
+ - usb: hub: Allow reset retry for USB2 devices on connect bounce
+ - ALSA: usb-audio: Add native DSD support for Pro-Ject Pre Box S2 Digital
+ - can: gs_usb: fix busy loop if no more TX context is available
+ - scsi: qla2xxx: Fix uninitialized work element
+ - nbd: don't set the device size until we're connected
+ - [s390x] cputime: fix guest/irq/softirq times after CPU hotplug
+ - [hppa/parisc] Fix double-word compare and exchange in LWS code on 32-bit
+ kernels
+ - [hppa] Fix detection of nonsynchronous cr16 cycle counters
+ - iio: dummy: events: Add missing break
+ - [armhf] usb: musb: sunxi: Explicitly release USB PHY on exit
+ - [armhf] USB: musb: fix session-bit runtime-PM quirk
+ - [armhf] USB: musb: fix late external abort on suspend
+ - [armhf] usb: musb: musb_cppi41: Fix the address of teardown and autoreq
+ registers
+ - [armhf] usb: musb: musb_cppi41: Fix cppi41_set_dma_mode() for DA8xx
+ - [armhf] usb: musb: musb_cppi41: Configure the number of channels for DA8xx
+ - [armhf] usb: musb: Check for host-mode using is_host_active() on reset
+ interrupt
+ - xhci: Identify USB 3.1 capable hosts by their port protocol capability
+ - xhci: Cleanup current_cmd in xhci_cleanup_command_queue()
+ - usb: xhci: Reset halted endpoint if trb is noop
+ - usb: xhci: Handle error condition in xhci_stop_device()
+ - can: esd_usb2: Fix can_dlc value for received RTR, frames
+ - can: af_can: can_pernet_init(): add missing error handling for kzalloc
+ returning NULL
+ - KEYS: encrypted: fix dereference of NULL user_key_payload
+ - mmc: sdhci-pci: Fix default d3_retune for Intel host controllers
+ - [x86] drm/i915: Use bdw_ddi_translations_fdi for Broadwell
+ - drm/nouveau/kms/nv50: fix oops during DP IRQ handling on non-MST boards
+ - drm/nouveau/bsp/g92: disable by default
+ - drm/nouveau/mmu: flush tlbs before deleting page tables
+ - media: cec: Respond to unregistered initiators, when applicable
+ - media: dvb: i2c transfers over usb cannot be done from stack
+ - ALSA: seq: Enable 'use' locking in all configurations
+ - ALSA: hda: Remove superfluous '-' added by printk conversion
+ - ALSA: hda: Abort capability probe at invalid register read
+ - [x86] i2c: ismt: Separate I2C block read from SMBus block read
+ - [x86] i2c: piix4: Fix SMBus port selection for AMD Family 17h chips
+ - Revert "tools/power turbostat: stop migrating, unless '-m'"
+ - brcmfmac: Add check for short event packets
+ - brcmsmac: make some local variables 'static const' to reduce stack size
+ - [armhf] dts: sun6i: Fix endpoint IDs in second display pipeline
+ - [i386] clockevents/drivers/cs5535: Improve resilience to spurious
+ interrupts
+ - rtlwifi: rtl8821ae: Fix connection lost problem
+ - [x86] microcode/intel: Disable late loading on model 79
+ - lib/digsig: fix dereference of NULL user_key_payload
+ - fscrypt: fix dereference of NULL user_key_payload
+ - ecryptfs: fix dereference of NULL user_key_payload
+ - KEYS: Fix race between updating and finding a negative key
+ (CVE-2017-15951)
+ - FS-Cache: fix dereference of NULL user_key_payload
+ - KEYS: don't let add_key() update an uninstantiated key (CVE-2017-15299)
+ - pkcs7: Prevent NULL pointer dereference, since sinfo is not always set.
+ - [arm64] dts: rockchip: correct vqmmc voltage for rk3399 platforms
+ - ALSA: hda - Fix incorrect TLV callback check introduced during set_fs()
+ removal
+ - iomap_dio_rw: Allocate AIO completion queue before submitting dio
+ - xfs: don't unconditionally clear the reflink flag on zero-block files
+ - xfs: evict CoW fork extents when performing finsert/fcollapse
+ - fs/xfs: Use %pS printk format for direct addresses
+ - xfs: report zeroed or not correctly in xfs_zero_range()
+ - xfs: update i_size after unwritten conversion in dio completion
+ - xfs: perag initialization should only touch m_ag_max_usable for AG 0
+ - xfs: Capture state of the right inode in xfs_iflush_done
+ - xfs: always swap the cow forks when swapping extents
+ - xfs: handle racy AIO in xfs_reflink_end_cow
+ - xfs: Don't log uninitialised fields in inode structures
+ - xfs: move more RT specific code under CONFIG_XFS_RT
+ - xfs: don't change inode mode if ACL update fails
+ - xfs: reinit btree pointer on attr tree inactivation walk
+ - xfs: handle error if xfs_btree_get_bufs fails
+ - xfs: cancel dirty pages on invalidation
+ - xfs: trim writepage mapping to within eof
+ - xfs: move two more RT specific functions into CONFIG_XFS_RT
+
+ [ Ben Hutchings ]
+ * [arm64] brcmfmac: Enable BRCMFMAC_SDIO (Closes: #877911)
+ * Update build dependencies on libbabeltrace[,-ctf}-dev
+ * linux-kbuild: Include scripts/ld-version.sh, needed for powerpc 64-bit
+ modules
+ * dax: Avoid most ABI changes in 4.13.5
+ * SCSI: Avoid ABI change in 4.13.6
+ * [x86] kvm: Ignore ABI change in 4.13.6
+ * inet, l2tp, snd-seq, usb/gadget: Ignore ABI changes
+ * [armel,armhf] mbus: Ignore ABI change in 4.13.10
+ * Revert "bpf: one perf event close won't free bpf program attached ..."
+ to avoid an ABI change
+ * [armel] security: Enable SECURITY_APPARMOR and disable SECURITY_SELINUX
+ * security: Enable DEFAULT_SECURITY_APPARMOR
+ * mac80211: Avoid ABI change in 4.13.5
+ * [x86] rmi4: Enable RMI4_SMB as module (Closes: #875621)
+ * KEYS: Limit ABI change in 4.13.10
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 30 Oct 2017 15:32:11 +0000
+
+linux (4.13.4-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [armhf,arm64] thermal: Enable BCM2835_THERMAL as module (Closes: #877699)
+
+ [ Salvatore Bonaccorso ]
+ * brcmfmac: add length check in brcmf_cfg80211_escan_handler()
+ (CVE-2017-0786)
+ * [powerpc*] Use emergency stack for kernel TM Bad Thing program
+ (CVE-2017-1000255)
+ * [powerpc*] Fix illegal TM state in signal handler
+ * mac80211: fix deadlock in driver-managed RX BA session start.
+ Thanks to Eric Côté (Closes: #878092)
+ * KEYS: prevent KEYCTL_READ on negative key (CVE-2017-12192)
+ * waitid(): Add missing access_ok() checks (CVE-2017-5123)
+ * ALSA: seq: Fix use-after-free at creating a port (CVE-2017-15265)
+ * [x86] KVM: nVMX: update last_nonleaf_level when initializing nested EPT
+ (CVE-2017-12188)
+ * [x86] KVM: MMU: always terminate page walks at level 1 (CVE-2017-12188)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Sun, 15 Oct 2017 08:57:36 +0200
+
+linux (4.13.4-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.3
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.4
+
+ [ Ben Hutchings ]
+ * [armhf,arm64] mmc: Enable MMC_BCM2835 (Closes: #845422)
+ * [arm64ilp32] Build a linux-libc-dev package (Closes: #874536)
+ * [mips*r6*] Re-enable these architectures, now that dak knows about them
+ (Closes: #825024)
+ * [x86] Enable INTEL_CHT_INT33FE as module (Closes: #873164)
+ * [armhf] Enable AXP20X_ADC, CHARGER_AXP20X, BATTERY_AXP20X, GPIO_AXP209,
+ AXP288_CHARGER, AXP288_FUEL_GAUGE, EXTCON_AXP288, AXP288_ADC as modules
+ (Closes: #873038)
+ * thp: Enable TRANSPARENT_HUGEPAGE_ALWAYS instead of
+ TRANSPARENT_HUGEPAGE_MADVISE
+ * ALSA: Enable SND_OSSEMUL, a new dependency of SND_{MIXER,PCM}_OSS
+ * [armel] rtc: Disable RTC_NVMEM
+ * [x86] hyperv-daemons: Use pid file name in init script status operation
+ * Update policy version to 4.1.1:
+ - linux-doc: Build an empty package when the nodoc profile is used
+ - [x86] hyperv-daemons: Create pid files under /run, not /var/run
+ - Change all binary packages with priority: extra to priority: optional
+ - Install copyright file (and some other documentation) when the nodoc
+ profile is used
+ * debian/control: Move many build dependencies to Build-Depends-Arch field
+ * debian/control: Remove obsolete workarounds and alternate build deps
+ * usbip: Stop building broken libusbip-dev package
+ * Rename lintian-overrides template files to be consistent
+ * linux-image-dbg: Override lintian errors binary-from-other-architecture and
+ shlib-without-PT_GNU_STACK-section for vDSOs
+ * [armhf] dts: exynos: Add dwc3 SUSPHY quirk (Closes: #843448)
+ * liblockdep: Make missing function declarations fatal errors, to catch use
+ of missing kernel APIs
+ * liblockdep: Define pr_cont()
+ * Set ABI to 1
+
+ [ Uwe Kleine-König ]
+ * [arm64] really enable NET_DSA_MV88E6XXX for Espressobin
+
+ [ John Paul Adrian Glaubitz ]
+ * [m68k] Enable CONFIG_PATA_FALCON as module.
+
+ [ Salvatore Bonaccorso ]
+ * fix infoleak in waitid(2) (CVE-2017-14954)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 01 Oct 2017 15:52:09 +0100
+
+linux (4.13.2-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.2
+
+ [ Uwe Kleine-König ]
+ * USB/misc: reenable UCSI which got lost due to upstream changes
+ * update kernel config templates for upstream changes
+ * [amd64] enable CONFIG_SPI_PXA2XX for Apple MacBook Pro (Closes: #872004)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 19 Sep 2017 18:35:42 +0100
+
+linux (4.13.1-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.13
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.13.1
+
+ [ Roger Shimizu ]
+ * debian/bin/buildcheck.py:
+ Add check for uncompressed Image size, which is necessary for
+ armel/marvell flavour currently.
+
+ [ Ben Hutchings ]
+ * [mips*/octeon] mmc: Enable MMC_CAVIUM_OCTEON as module (Closes: #800594)
+
+ [ Uwe Kleine-König ]
+ * [arm64] enable NET_DSA_MV88E6XXX for Espressobin.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 11 Sep 2017 05:40:04 +0100
+
+linux (4.13~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [sh4] Do not use hyphen in exported variable names (fixes FTBFS)
+ * aufs: Update support patchset to aufs4.x-rcN-20170828
+
+ [ Roger Shimizu ]
+ * [armel] Disable CONFIG_STRICT_KERNEL_RWX, which will save about 3MB
+ on linux Image (before compression). (Closes: #870185)
+ * [armel] Change MTD_OF_PARTS, MTD_BLOCK, and MTD_PHYSMAP_OF from
+ built-in to modules.
+ Also change all RTC related except RTC_DRV_MV, which includes
+ RTC_DRV_DS1307, RTC_DRV_RS5C372, RTC_DRV_PCF8563, RTC_DRV_M41T80,
+ and RTC_DRV_S35390A, to modules. Because most marvell boards use
+ RTC_DRV_MV. (above two fix FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 30 Aug 2017 20:39:57 +0100
+
+linux (4.13~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * cpupower: Add/update definition of MSRHEADER macro for turbostat and
+ x86_energy_perf_policy
+ * Remove support for upstream DocBook-based documentation, including the
+ linux-manual package
+ * liblockdep: Re-enable liblockdep packages following upstream fixes
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 14 Aug 2017 23:20:50 +0100
+
+linux (4.12.13-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.13
+ - mtd: nand: make Samsung SLC NAND usable again
+ - mtd: nand: hynix: add support for 20nm NAND chips
+ - [armhf] mtd: nand: mxc: Fix mxc_v1 ooblayout
+ - nvme-fabrics: generate spec-compliant UUID NQNs
+ - btrfs: resume qgroup rescan on rw remount
+ - rtlwifi: btcoexist: Fix breakage of ant_sel for rtl8723be
+ - radix-tree: must check __radix_tree_preload() return value
+ - mm: kvfree the swap cluster info if the swap file is unsatisfactory
+ - mm/swapfile.c: fix swapon frontswap_map memory leak on error
+ - mm/memory.c: fix mem_cgroup_oom_disable() call missing
+ - [i386] ALSA: msnd: Optimize / harden DSP and MIDI loops
+ - [x86] KVM: SVM: Limit PFERR_NESTED_GUEST_PAGE error_code check to L1 guest
+ - rt2800: fix TX_PIN_CFG setting for non MT7620 chips
+ - Bluetooth: Properly check L2CAP config option output buffer length
+ (CVE-2017-1000251) (Closes: #875881)
+ - [arm64] dts: marvell: armada-37xx: Fix GIC maintenance interrupt
+ - [armel,armhf] 8692/1: mm: abort uaccess retries upon fatal signal
+ - NFS: Fix 2 use after free issues in the I/O code
+ - NFS: Sync the correct byte range during synchronous writes
+ - NFSv4: Fix up mirror allocation
+ - xfs: XFS_IS_REALTIME_INODE() should be false if no rt device present
+ (CVE-2017-14340)
+
+ [ Salvatore Bonaccorso ]
+ * sctp: Avoid out-of-bounds reads from address storage (CVE-2017-7558)
+ * scsi: qla2xxx: Fix an integer overflow in sysfs code (CVE-2017-14051)
+ * Add ABI reference for 4.12.0-2
+
+ [ Ben Hutchings ]
+ * nl80211: check for the required netlink attributes presence (CVE-2017-12153)
+ * [x86] kvm: nVMX: Don't allow L2 to access the hardware CR8 (CVE-2017-12154)
+ * video: fbdev: aty: do not leak uninitialized padding in clk to userspace
+ (CVE-2017-14156)
+ * scsi: fix the issue that iscsi_if_rx doesn't parse nlmsg properly
+ (CVE-2017-14489)
+ * packet: Don't write vnet header beyond end of buffer (CVE-2017-14497)
+ * [x86] KVM: VMX: Do not BUG() on out-of-bounds guest IRQ (CVE-2017-1000252)
+ * nfs: Ignore ABI change
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 19 Sep 2017 01:59:17 +0100
+
+linux (4.12.12-2) unstable; urgency=medium
+
+ * debian/source/lintian-overrides: Override license-problem-gfdl-invariants
+ error triggered by a ReSTified copy of the GFDL
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 11 Sep 2017 04:35:28 +0100
+
+linux (4.12.12-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.7
+ - ppp: Fix false xmit recursion detect with two ppp devices
+ - ppp: fix xmit recursion detection on ppp channels
+ - tcp: avoid setting cwnd to invalid ssthresh after cwnd reduction states
+ - net: fix keepalive code vs TCP_FASTOPEN_CONNECT
+ - ipv6: set rt6i_protocol properly in the route when it is installed
+ - [s390x] bpf: fix jit branch offset related to ldimm64
+ - net/mlx4_en: don't set CHECKSUM_COMPLETE on SCTP packets
+ - net: sched: set xt_tgchk_param par.net properly in ipt_init_target
+ - net: sched: set xt_tgchk_param par.nft_compat as 0 in ipt_init_target
+ - tcp: fastopen: tcp_connect() must refresh the route
+ - qmi_wwan: fix NULL deref on disconnect
+ - net: avoid skb_warn_bad_offload false positives on UFO
+ - igmp: Fix regression caused by igmp sysctl namespace code.
+ - scsi: sg: only check for dxfer_len greater than 256M
+ - btrfs: Remove false alert when fiemap range is smaller than on-disk
+ extent
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.8
+ - mm: ratelimit PFNs busy info message
+ - mm: fix list corruptions on shmem shrinklist
+ - futex: Remove unnecessary warning from get_futex_key
+ - xfs: Fix leak of discard bio
+ - [armhf] pinctrl: armada-37xx: Fix number of pin in south bridge
+ - mtd: nand: Fix timing setup for NANDs that do not support SET FEATURES
+ - mtd: nand: Declare tBERS, tR and tPROG as u64 to avoid integer overflow
+ - iscsi-target: fix memory leak in iscsit_setup_text_cmd()
+ - iscsi-target: Fix iscsi_np reset hung task during parallel delete
+ - usb-storage: fix deadlock involving host lock and scsi_done
+ - target: Fix node_acl demo-mode + uncached dynamic shutdown regression
+ - fuse: initialize the flock flag in fuse_file on allocation
+ - i2c: designware: Some broken DSTDs use 1MiHz instead of 1MHz
+ - nand: fix wrong default oob layout for small pages using soft ecc
+ - mmc: mmc: correct the logic for setting HS400ES signal voltage
+ - nfs/flexfiles: fix leak of nfs4_ff_ds_version arrays
+ - [armhf] drm/etnaviv: Fix off-by-one error in reloc checking
+ - [x86] drm/i915: Fix out-of-bounds array access in bdw_load_gamma_lut
+ - [armhf] usb: musb: fix tx fifo flush handling again
+ - USB: hcd: Mark secondary HCD as dead if the primary one died
+ - [armhf] iio: accel: st_accel: add SPI-3wire support
+ - [x86] iio: accel: bmc150: Always restore device to normal mode after
+ suspend-resume
+ - iio: light: tsl2563: use correct event code
+ - staging: comedi: comedi_fops: do not call blocking ops when !TASK_RUNNING
+ - uas: Add US_FL_IGNORE_RESIDUE for Initio Corporation INIC-3069
+ - firmware: fix batched requests - wake all waiters
+ - firmware: fix batched requests - send wake up on failure on direct lookups
+ - firmware: avoid invalid fallback aborts by using killable wait
+ - block: Make blk_mq_delay_kick_requeue_list() rerun the queue at a quiet
+ time
+ - USB: Check for dropped connection before switching to full speed
+ - usb: core: unlink urbs from the tail of the endpoint's urb_list
+ - usb: quirks: Add no-lpm quirk for Moshi USB to Ethernet Adapter
+ - usb:xhci:Add quirk for Certain failing HP keyboard on reset after resume
+ - PCI: Protect pci_error_handlers->reset_notify() usage with device_lock()
+ - xhci: Reset Renesas uPD72020x USB controller for 32-bit DMA issue
+ - pnfs/blocklayout: require 64-bit sector_t
+ - [x86] pinctrl: cherryview: Add Setzer models to the Chromebook DMI quirk
+ - [armhf] pinctrl: sunxi: add a missing function of A10/A20 pinctrl driver
+ - [x86] pinctrl: intel: merrifield: Correct UART pin lists
+ - [armhf] pinctrl: samsung: Remove bogus irq_[un]mask from resource
+ management
+ - [arm64] pinctrl: meson-gxbb: Add missing GPIODV_18 pin entry
+ - [arm64] pinctrl: meson-gxl: Add missing GPIODV_18 pin entry
+ - [mips*] Revert "MIPS: Don't unnecessarily include kmalloc.h into
+ <asm/cache.h>."
+ - [mips*/octeon] Fix broken EDAC driver.
+ - [ppc64el] Fix /proc/cpuinfo revision for POWER9 DD2
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.9
+ - audit: Fix use after free in audit_remove_watch_rule()
+ - [hppa] pci memory bar assignment fails with 64bit kernels on dino/cujo
+ - [x86] crypto: sha1 - Fix reads beyond the number of blocks passed
+ - [x86] drm/i915: Perform an invalidate prior to executing golden
+ renderstate
+ - drm/amdgpu: save list length when fence is signaled
+ - md: fix test in md_write_start()
+ - md: always clear ->safemode when md_check_recovery gets the mddev lock.
+ - MD: not clear ->safemode for external metadata array
+ - ALSA: seq: 2nd attempt at fixing race creating a queue
+ - ALSA: usb-audio: Apply sample rate quirk to Sennheiser headset
+ - ALSA: usb-audio: Add mute TLV for playback volumes on C-Media devices
+ - ALSA: usb-audio: add DSD support for new Amanero PID
+ - mm: discard memblock data later
+ - slub: fix per memcg cache leak on css offline
+ - mm: fix double mmap_sem unlock on MMF_UNSTABLE enforced SIGBUS
+ - mm/cma_debug.c: fix stack corruption due to sprintf usage
+ - mm/mempolicy: fix use after free when calling get_mempolicy
+ - mm/vmalloc.c: don't unconditonally use __GFP_HIGHMEM
+ - [amd64,arm64] mm: revert x86_64 and arm64 ELF_ET_DYN_BASE base changes
+ - xen: fix bio vec merging (CVE-2017-12134) (Closes: #866511)
+ - [armhf] ARM: dts: imx6qdl-nitrogen6_som2: fix PCIe reset
+ - blk-mq-pci: add a fallback when pci_irq_get_affinity returns NULL
+ - [powerpc*] Fix VSX enabling/flushing to also test MSR_FP and MSR_VEC
+ - xen-blkfront: use a right index when checking requests
+ - [x86] perf: Fix RDPMC vs. mm_struct tracking
+ - [amd64] asm: Clear AC on NMI entries
+ - [x86] Fix norandmaps/ADDR_NO_RANDOMIZE
+ - [x86] elf: Remove the unnecessary ADDR_NO_RANDOMIZE checks
+ - genirq: Restore trigger settings in irq_modify_status()
+ - genirq/ipi: Fixup checks against nr_cpu_ids
+ - kernel/watchdog: Prevent false positives with turbo modes
+ - Sanitize 'move_pages()' permission checks (CVE-2017-14140)
+ - pids: make task_tgid_nr_ns() safe
+ - debug: Fix WARN_ON_ONCE() for modules
+ - usb: optimize acpi companion search for usb port devices
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.10
+ - [sparc64] remove unnecessary log message
+ - bonding: require speed/duplex only for 802.3ad, alb and tlb
+ - bonding: ratelimit failed speed/duplex update warning
+ - af_key: do not use GFP_KERNEL in atomic contexts
+ - dccp: purge write queue in dccp_destroy_sock()
+ - dccp: defer ccid_hc_tx_delete() at dismantle time
+ - ipv4: fix NULL dereference in free_fib_info_rcu()
+ - net_sched/sfq: update hierarchical backlog when drop packet
+ - net_sched: remove warning from qdisc_hash_add
+ - bpf: fix bpf_trace_printk on 32 bit archs
+ - net: igmp: Use ingress interface rather than vrf device
+ - openvswitch: fix skb_panic due to the incorrect actions attrlen
+ - ptr_ring: use kmalloc_array()
+ - ipv4: better IP_MAX_MTU enforcement
+ - nfp: fix infinite loop on umapping cleanup
+ - tun: handle register_netdevice() failures properly
+ - sctp: fully initialize the IPv6 address in sctp_v6_to_addr()
+ - tipc: fix use-after-free
+ - ipv6: reset fn->rr_ptr when replacing route
+ - ipv6: repair fib6 tree in failure case
+ - tcp: when rearming RTO, if RTO time is in past then fire RTO ASAP
+ - net/mlx4_core: Enable 4K UAR if SRIOV module parameter is not enabled
+ - irda: do not leak initialized list.dev to userspace
+ - net: sched: fix NULL pointer dereference when action calls some targets
+ - net_sched: fix order of queue length updates in qdisc_replace()
+ - bpf, verifier: add additional patterns to evaluate_reg_imm_alu
+ - bpf: fix mixed signed/unsigned derived min/max value bounds
+ - bpf/verifier: fix min/max handling in BPF_SUB
+ - Input: ALPS - fix two-finger scroll breakage in right side on ALPS
+ touchpad
+ - [s390x] KVM: sthyi: fix sthyi inline assembly
+ - [s390x] KVM: sthyi: fix specification exception detection
+ - [x86] KVM: simplify handling of PKRU
+ - [x86] KVM, pkeys: do not use PKRU value in vcpu->arch.guest_fpu.state
+ - [x86] KVM: block guest protection keys unless the host has them enabled
+ - ALSA: core: Fix unexpected error at replacing user TLV
+ - ALSA: firewire: fix NULL pointer dereference when releasing
+ uninitialized data of iso-resource
+ - ALSA: firewire-motu: destroy stream data surely at failure of card
+ initialization
+ - PM/hibernate: touch NMI watchdog when creating snapshot
+ - mm, shmem: fix handling /sys/kernel/mm/transparent_hugepage/shmem_enabled
+ - dax: fix deadlock due to misaligned PMD faults
+ - i2c: designware: Fix system suspend
+ - mm/madvise.c: fix freeing of locked page with MADV_FREE
+ - fork: fix incorrect fput of ->exe_file causing use-after-free
+ - mm/memblock.c: reversed logic in memblock_discard()
+ - [arm64] fpsimd: Prevent registers leaking across exec
+ - drm: Fix framebuffer leak
+ - drm: Release driver tracking before making the object available again
+ - [armhf] drm/sun4i: Implement drm_driver lastclose to restore fbdev
+ console
+ - drm/atomic: Handle -EDEADLK with out-fences correctly
+ - drm/atomic: If the atomic check fails, return its value first
+ - [x86] drm/i915/vbt: ignore extraneous child devices for a port
+ - [x86] drm/i915/gvt: Fix the kernel null pointer error
+ - Revert "drm/amdgpu: fix vblank_time when displays are off"
+ - ACPI: device property: Fix node lookup in
+ acpi_graph_get_child_prop_value()
+ - tracing: Call clear_boot_tracer() at lateinit_sync
+ - tracing: Missing error code in tracer_alloc_buffers()
+ - tracing: Fix kmemleak in tracing_map_array_free()
+ - tracing: Fix freeing of filter in create_filter() when set_str is false
+ - RDMA/uverbs: Initialize cq_context appropriately
+ - cifs: Fix df output for users with quota limits
+ - cifs: return ENAMETOOLONG for overlong names in
+ cifs_open()/cifs_lookup()
+ - nfsd: Limit end of page list when decoding NFSv4 WRITE
+ - ring-buffer: Have ring_buffer_alloc_read_page() return error on offline
+ CPU
+ - virtio_pci: fix cpu affinity support
+ - ftrace: Check for null ret_stack on profile function graph entry
+ function
+ - perf/core: Fix group {cpu,task} validation
+ - timers: Fix excessive granularity of new timers after a nohz idle
+ - [x86] mm: Fix use-after-free of ldt_struct
+ - net: sunrpc: svcsock: fix NULL-pointer exception
+ - netfilter: expect: fix crash when putting uninited expectation
+ - netfilter: nat: fix src map lookup
+ - netfilter: nfnetlink: Improve input length sanitization in nfnetlink_rcv
+ - Bluetooth: hidp: fix possible might sleep error in hidp_session_thread
+ - Bluetooth: cmtp: fix possible might sleep error in cmtp_session
+ - Bluetooth: bnep: fix possible might sleep error in bnep_session
+ - iio: hid-sensor-trigger: Fix the race with user space powering up
+ sensors
+ - iommu: Fix wrong freeing of iommu_device->dev
+ - Clarify (and fix) MAX_LFS_FILESIZE macros
+ - ACPI: EC: Fix regression related to wrong ECDT initialization order
+ - [powerpc*] mm: Ensure cpumask update is ordered
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.11
+ - [arm64] mm: abort uaccess retries upon fatal signal
+ - [x86] io: Add "memory" clobber to insb/insw/insl/outsb/outsw/outsl
+ - [mips*] irqchip: mips-gic: SYNC after enabling GIC region
+ - Input: synaptics - fix device info appearing different on reconnect
+ - Input: xpad - fix PowerA init quirk for some gamepad models
+ - crypto: chacha20 - fix handling of chunked input
+ - [x86] i2c: ismt: Don't duplicate the receive length for block reads
+ - [x86] i2c: ismt: Return EMSGSIZE for block reads with bogus length
+ - crypto: algif_skcipher - only call put_page on referenced and used pages
+ - mm, uprobes: fix multiple free of ->uprobes_state.xol_area
+ - mm, madvise: ensure poisoned pages are removed from per-cpu lists
+ - ceph: fix readpage from fscache
+ - cpumask: fix spurious cpumask_of_node() on non-NUMA multi-node configs
+ - cpuset: Fix incorrect memory_pressure control file mapping
+ - CIFS: Fix maximum SMB2 header size
+ - CIFS: remove endian related sparse warning
+ - dm mpath: do not lock up a CPU with requeuing activity
+ - [x86] drm/vmwgfx: Fix F26 Wayland screen update issue
+ - [arm64, armhf] wl1251: add a missing spin_lock_init()
+ - [arm64] mmc: sdhci-xenon: add set_power callback
+ - lib/mpi: kunmap after finishing accessing buffer
+ - xfrm: policy: check policy direction value
+ - drm/ttm: Fix accounting error when fail to get pages for pool
+ - nvme: fix the definition of the doorbell buffer config support bit
+ - drm/nouveau/i2c/gf119-: add support for address-only transactions
+ - epoll: fix race between ep_poll_callback(POLLFREE) and
+ ep_free()/ep_remove()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.12
+ - usb: quirks: add delay init quirk for Corsair Strafe RGB keyboard
+ - USB: serial: option: add support for D-Link DWM-157 C1
+ - usb: Add device quirk for Logitech HD Pro Webcam C920-C
+ - usb:xhci:Fix regression when ATI chipsets detected
+ - [armhf] USB: musb: fix external abort on suspend
+ - USB: core: Avoid race of async_completed() w/ usbdev_release()
+ - [x86] staging/rts5208: fix incorrect shift to extract upper nybble
+ - iio: adc: ti-ads1015: fix incorrect data rate setting update
+ - iio: adc: ti-ads1015: fix scale information for ADS1115
+ - iio: adc: ti-ads1015: enable conversion when CONFIG_PM is not set
+ - iio: adc: ti-ads1015: avoid getting stale result after runtime resume
+ - iio: adc: ti-ads1015: don't return invalid value from buffer setup
+ callbacks
+ - iio: adc: ti-ads1015: add adequate wait time to get correct conversion
+ - driver core: bus: Fix a potential double free
+ - HID: wacom: Do not completely map WACOM_HID_WD_TOUCHRINGSTATUS usage
+ - [x86] intel_th: pci: Add Cannon Lake PCH-H support
+ - [x86] intel_th: pci: Add Cannon Lake PCH-LP support
+ - ath10k: fix memory leak in rx ring buffer allocation
+ - Input: trackpoint - assume 3 buttons when buttons detection fails
+ - rtlwifi: rtl_pci_probe: Fix fail path of _rtl_pci_find_adapter
+ - Bluetooth: Add support of 13d3:3494 RTL8723BE device
+ - iwlwifi: pci: add new PCI ID for 7265D
+ - dlm: avoid double-free on error path in dlm_device_{register,unregister}
+ - mwifiex: correct channel stat buffer overflows
+ - [s390x] mm: avoid empty zero pages for KVM guests to avoid postcopy
+ hangs
+ - [s390x] mm: fix BUG_ON in crst_table_upgrade
+ - drm/nouveau/pci/msi: disable MSI on big-endian platforms by default
+ - drm/nouveau: Fix error handling in nv50_disp_atomic_commit
+ - workqueue: Fix flag collision
+ - ahci: don't use MSI for devices with the silly Intel NVMe remapping
+ scheme
+ - cs5536: add support for IDE controller variant
+ - scsi: sg: protect against races between mmap() and SG_SET_RESERVED_SIZE
+ - scsi: sg: recheck MMAP_IO request length with lock held
+ - of/device: Prevent buffer overflow in of_device_modalias()
+ - rtlwifi: Fix memory leak when firmware request fails
+ - rtlwifi: Fix fallback firmware loading
+
+ [ Ben Hutchings ]
+ * [alpha] udeb: Add i2c-modules (fixes FTBFS)
+ * cpupower: Add/update definition of MSRHEADER macro for turbostat and
+ x86_energy_perf_policy (Closes: #872414)
+ * Bump ABI to 2
+
+ [ Roger Shimizu ]
+ * [armel] Disable CONFIG_STRICT_KERNEL_RWX, which will save about 3MB
+ on linux Image (before compression). (Closes: #870185)
+
+ [ Uwe Kleine-König ]
+ * mtd: nandsim: remove debugfs entries in error path
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 10 Sep 2017 19:42:51 +0100
+
+linux (4.12.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.3
+ - brcmfmac: fix possible buffer overflow in brcmf_cfg80211_mgmt_tx()
+ (CVE-2017-7541)
+ - [sparc64] Adding asm-prototypes.h for genksyms to generate crc
+ - [sparc64] sed regex in Makefile.build requires line break between
+ exported symbols
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.4
+ - f2fs: sanity check checkpoint segno and blkoff (CVE-2017-10663)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.5
+ - dentry name snapshots (CVE-2017-7533)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.6
+ - saa7164: fix double fetch PCIe access condition (CVE-2017-8831)
+ - ipv6: avoid overflow of offset in ip6_find_1stfragopt (CVE-2017-7542)
+
+ [ Ben Hutchings ]
+ * media: Enable USB_RAINSHADOW_CEC as module (see #868511)
+ * Clean up symbol version fixes for symbols exported from asm
+ (fixes FTBFS on sparc64):
+ - [alpha] Un-revert "alpha: move exports to actual definitions"
+ - [alpha] Restore symbol versions for symbols exported from assembly
+ - [m68k] Un-revert "m68k: move exports to definitions"
+ - [sparc64] Un-revert "sparc: move exports to definitions"
+ * [mips*/octeon] Fix broken EDAC driver (fixes FTBFS)
+ * [armhf] Revert "gpu: host1x: Add IOMMU support"
+ * [armhf] udeb: Replace imx-ipuv3-crtc with imxdrm in fb-modules
+ * [i386] perf tools: Fix unwind build (fixes FTBFS)
+ * debian/control: Fix version in dependencies on arch-independent
+ linux-headers-*-common* (Closes: #869511)
+ * xfrm: policy: check policy direction value (CVE-2017-11600)
+ * rtlwifi: Fix memory leak when firmware request fails
+ * rtlwifi: Fix fallback firmware loading (Closes: #869084)
+ * [arm64] video: Enable FRAMEBUFFER_CONSOLE (Closes: #870071)
+ * integrity: Enable INTEGRITY_SIGNATURE, INTEGRITY_ASYMMETRIC_KEYS
+ (Closes: #869565)
+ * [x86] sound: Enable SND_X86; enable HDMI_LPE_AUDIO as module
+ (Closes: #869372)
+ * blk-mq: Change MQ_IOSCHED_KYBER from built-in to module
+ * blk-mq: Enable IOSCHED_BFQ as module (Closes: #869028); enable
+ BFQ_GROUP_IOSCHED
+ * bfq: Enable auto-loading when built as a module
+ * netfilter: Enable NFT_FIB_IPV4, NFT_FIB_IPV6, NFT_FIB_INET as modules
+ (Closes: #868803)
+ * [amd64,arm64] mm: Revert x86_64 and arm64 ELF_ET_DYN_BASE base
+ (Closes: #869090)
+
+ [ Salvatore Bonaccorso ]
+ * packet: fix tp_reserve race in packet_set_ring (CVE-2017-1000111)
+ * udp: consistently apply ufo or fragmentation (CVE-2017-1000112)
+ * Set ABI to 1
+
+ [ Uwe Kleine-König ]
+ * [arm64] enable MMC_SDHCI_XENON and MVNETA for Espressobin and enable
+ respective device in its device tree (Closes: #871049)
+
+ [ Roger Shimizu ]
+ * [armel] Change NAND related stuff to modules (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 12 Aug 2017 23:09:26 +0100
+
+linux (4.12.2-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.12
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.1
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.12.2
+
+ [ Ben Hutchings ]
+ * Add script to regenerate lockdown patch series from git
+ * [rt] Disable until it is updated for 4.12 or later
+ * scripts/mod: Update modpost wrapper for 4.12
+ * Set ABI name to trunk
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 18 Jul 2017 12:19:38 +0100
+
+linux (4.11.11-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.7
+ - fs: pass on flags in compat_writev
+ - configfs: Fix race between create_link and configfs_rmdir
+ - can: gs_usb: fix memory leak in gs_cmd_reset()
+ - ila_xlat: add missing hash secret initialization
+ - cpufreq: conservative: Allow down_threshold to take values from 1 to 10
+ - vb2: Fix an off by one error in 'vb2_plane_vaddr'
+ - cec: race fix: don't return -ENONET in cec_receive()
+ - selinux: fix double free in selinux_parse_opts_str()
+ - mac80211: don't look at the PM bit of BAR frames
+ - mac80211/wpa: use constant time memory comparison for MACs
+ - [x86] drm/amdgpu: Fix overflow of watermark calcs at > 4k resolutions.
+ - [x86] drm/i915: Fix GVT-g PVINFO version compatibility check
+ - [x86] drm/i915: Fix scaling check for 90/270 degree plane rotation
+ - [x86] drm/i915: Do not sync RCU during shrinking
+ - mac80211: fix IBSS presp allocation size
+ - mac80211: strictly check mesh address extension mode
+ - mac80211: fix dropped counter in multiqueue RX
+ - mac80211: don't send SMPS action frame in AP mode when not needed
+ - [arm64, armhf] drm/vc4: Fix OOPSes from trying to cache a partially
+ constructed BO.
+ - serial: 8250_lpss: Unconditionally set PCI master for Quark
+ - [sh4] serial: sh-sci: Fix (AUTO)RTS in sci_init_pins()
+ - [sh4] serial: sh-sci: Fix late enablement of AUTORTS
+ - [x86] mm/32: Set the '__vmalloc_start_set' flag in initmem_init()
+ - [armhf] mfd: axp20x: Add support for dts property "xpowers,master-mode"
+ - [armhf] dt-bindings: mfd: axp20x: Add "xpowers,master-mode" property for
+ AXP806 PMICs
+ - [powerpc] mm: Add physical address to Linux page table dump
+ - staging: rtl8188eu: prevent an underflow in rtw_check_beacon_data()
+ - [armhf] iio: adc: ti_am335x_adc: allocating too much in probe
+ - [x86] ALSA: hda: Add Geminilake id to SKL_PLUS
+ - ALSA: usb-audio: fix Amanero Combo384 quirk on big-endian hosts
+ - USB: hub: fix SS max number of ports
+ - usb: core: fix potential memory leak in error path during hcd creation
+ - [x86] USB: usbip: fix nonconforming hub descriptor
+ - [arm64, armhf] usb: dwc3: gadget: Fix ISO transfer performance
+ - pvrusb2: reduce stack usage pvr2_eeprom_analyze()
+ - USB: gadget: dummy_hcd: fix hub-descriptor removable fields
+ - coda: restore original firmware locations
+ - usb: xhci: Fix USB 3.1 supported protocol parsing
+ - usb: xhci: ASMedia ASM1042A chipset need shorts TX quirk
+ - USB: gadget: fix GPF in gadgetfs
+ - USB: gadgetfs, dummy-hcd, net2280: fix locking for callbacks
+ - mm/memory-failure.c: use compound_head() flags for huge pages
+ - swap: cond_resched in swap_cgroup_prepare()
+ - mm: numa: avoid waiting on freed migrated pages
+ - userfaultfd: shmem: handle coredumping in handle_userfault()
+ - sched/core: Idle_task_exit() shouldn't use switch_mm_irqs_off()
+ - genirq: Release resources in __setup_irq() error path
+ - alarmtimer: Prevent overflow of relative timers
+ - alarmtimer: Rate limit periodic intervals
+ - virtio_balloon: disable VIOMMU support
+ - [mips*] Fix bnezc/jialc return address calculation
+ - [mips*] .its targets depend on vmlinux
+ - [sparc*] crypto: Work around deallocated stack frame reference gcc bug
+ on sparc.
+ - [armhf] dts: am335x-sl50: Fix card detect pin for mmc1
+ - [armhf] dts: am335x-sl50: Fix cannot claim requested pins for spi0
+ - mm: larger stack guard gap, between vmas
+ - Allow stack to grow up to address space limit
+ - mm: fix new crash in unmapped_area_topdown()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.8
+ - [armhf] clk: sunxi-ng: a31: Correct lcd1-ch1 clock register offset
+ - [armhf] clk: sunxi-ng: v3s: Fix usb otg device reset bit
+ - [armhf] clk: sunxi-ng: sun5i: Fix ahb_bist_clk definition
+ - xen/blkback: fix disconnect while I/Os in flight
+ - xen-blkback: don't leak stack data via response ring (XSA-216,
+ CVE-2017-10911)
+ - ALSA: firewire-lib: Fix stall of process context at packet error
+ - ALSA: pcm: Don't treat NULL chmap as a fatal error
+ - ALSA: hda - Add Coffelake PCI ID
+ - ALSA: hda - Apply quirks to Broxton-T, too
+ - fs/exec.c: account for argv/envp pointers (CVE-2017-1000365)
+ - [powerpc] perf: Fix oops when kthread execs user process
+ - autofs: sanity check status reported with AUTOFS_DEV_IOCTL_FAIL
+ - fs/dax.c: fix inefficiency in dax_writeback_mapping_range()
+ - lib/cmdline.c: fix get_options() overflow while parsing ranges
+ - [x86] perf/x86/intel: Add 1G DTLB load/store miss support for SKL
+ - perf probe: Fix probe definition for inlined functions
+ - [x86] KVM: fix singlestepping over syscall (CVE-2017-7518)
+ - [s390x] KVM gaccess: fix real-space designation asce handling for gmap
+ shadows
+ - [powerpc*] KVM: Book3S HV: Cope with host using large decrementer mode
+ - [powerpc*] KVM: Book3S HV: Preserve userspace HTM state properly
+ - [powerpc*] KVM: Book3S HV: Ignore timebase offset on POWER9 DD1
+ - [powerpc*] KVM: Book3S HV: Context-switch EBB registers properly
+ - [powerpc*] KVM: Book3S HV: Restore critical SPRs to host values on guest
+ exit
+ - [powerpc*] KVM: Book3S HV: Save/restore host values of debug registers
+ - CIFS: Improve readdir verbosity
+ - CIFS: Fix some return values in case of error in 'crypt_message'
+ - cxgb4: notify uP to route ctrlq compl to rdma rspq
+ - HID: Add quirk for Dell PIXART OEM mouse
+ - random: silence compiler warnings and fix race
+ - signal: Only reschedule timers on signals timers have sent
+ - [powerpc] kprobes: Pause function_graph tracing during jprobes handling
+ - ]powerpc*] 64s: Handle data breakpoints in Radix mode
+ - Input: i8042 - add Fujitsu Lifebook AH544 to notimeout list
+ - brcmfmac: add parameter to pass error code in firmware callback
+ - brcmfmac: use firmware callback upon failure to load
+ - brcmfmac: unbind all devices upon failure in firmware callback
+ - time: Fix clock->read(clock) race around clocksource changes
+ - time: Fix CLOCK_MONOTONIC_RAW sub-nanosecond accounting
+ - [arm64] vdso: Fix nsec handling for CLOCK_MONOTONIC_RAW
+ - target: Fix kref->refcount underflow in transport_cmd_finish_abort
+ - iscsi-target: Fix delayed logout processing greater than
+ SECONDS_FOR_LOGOUT_COMP
+ - iscsi-target: Reject immediate data underflow larger than SCSI transfer
+ length
+ - drm/radeon: add a PX quirk for another K53TK variant
+ - drm/radeon: add a quirk for Toshiba Satellite L20-183
+ - [x86] drm/amdgpu/atom: fix ps allocation size for EnableDispPowerGating
+ - [x86] drm/amdgpu: adjust default display clock
+ - [x86] drm/amdgpu: add Polaris12 DID
+ - ACPI / scan: Apply default enumeration to devices with ACPI drivers
+ - ACPI / scan: Fix enumeration for special SPI and I2C devices
+ - rxrpc: Fix several cases where a padded len isn't checked in ticket
+ decode (CVE-2017-7482)
+ - drm: Fix GETCONNECTOR regression
+ - usb: gadget: f_fs: avoid out of bounds access on comp_desc
+ - spi: double time out tolerance
+ - net: phy: fix marvell phy status reading
+ - netfilter: xtables: zero padding in data_to_user
+ - netfilter: xtables: fix build failure from COMPAT_XT_ALIGN outside
+ CONFIG_COMPAT
+ - brcmfmac: fix uninitialized warning in brcmf_usb_probe_phase2()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.9
+ - net: don't call strlen on non-terminated string in dev_set_alias()
+ - net: Fix inconsistent teardown and release of private netdev state.
+ - [s390x] net: fix up for "Fix inconsistent teardown and release of
+ private netdev state"
+ - mac80211: free netdev on dev_alloc_name() error
+ - decnet: dn_rtmsg: Improve input length sanitization in
+ dnrmg_receive_user_skb
+ - net: Zero ifla_vf_info in rtnl_fill_vfinfo()
+ - net: ipv6: Release route when device is unregistering
+ - net: vrf: Make add_fib_rules per network namespace flag
+ - af_unix: Add sockaddr length checks before accessing sa_family in bind
+ and connect handlers
+ - Fix an intermittent pr_emerg warning about lo becoming free.
+ - sctp: disable BH in sctp_for_each_endpoint
+ - net: caif: Fix a sleep-in-atomic bug in cfpkt_create_pfx
+ - net: tipc: Fix a sleep-in-atomic bug in tipc_msg_reverse
+ - net/mlx5: Remove several module events out of ethtool stats
+ - net/mlx5e: Added BW check for DIM decision mechanism
+ - net/mlx5e: Fix wrong indications in DIM due to counter wraparound
+ - net/mlx5: Enable 4K UAR only when page size is bigger than 4K
+ - proc: snmp6: Use correct type in memset
+ - igmp: acquire pmc lock for ip_mc_clear_src()
+ - igmp: add a missing spin_lock_init()
+ - qmi_wwan: new Telewell and Sierra device IDs
+ - net: don't global ICMP rate limit packets originating from loopback
+ - ipv6: fix calling in6_ifa_hold incorrectly for dad work
+ - sctp: return next obj by passing pos + 1 into sctp_transport_get_idx
+ - net/mlx5e: Fix min inline value for VF rep SQs
+ - net/mlx5e: Avoid doing a cleanup call if the profile doesn't have it
+ - net/mlx5: Wait for FW readiness before initializing command interface
+ - net/mlx5e: Fix timestamping capabilities reporting
+ - decnet: always not take dst->__refcnt when inserting dst into hash table
+ - net: 8021q: Fix one possible panic caused by BUG_ON in free_netdev
+ - ipv6: Do not leak throw route references
+ - rtnetlink: add IFLA_GROUP to ifla_policy
+ - netfilter: synproxy: fix conntrackd interaction
+ - NFSv4.x/callback: Create the callback service through svc_create_pooled
+ - xen/blkback: don't use xen_blkif_get() in xen-blkback kthread
+ - [mips*] head: Reorder instructions missing a delay slot
+ - [mips*] Avoid accidental raw backtrace
+ - [mips*] pm-cps: Drop manual cache-line alignment of ready_count
+ - [mips*] Fix IRQ tracing & lockdep when rescheduling
+ - ALSA: hda - Fix endless loop of codec configure
+ - ALSA: hda - set input_path bitmap to zero after moving it to new place
+ - NFSv4.2: Don't send mode again in post-EXCLUSIVE4_1 SETATTR with umask
+ - NFSv4.1: Fix a race in nfs4_proc_layoutget
+ - Revert "NFS: nfs_rename() handle -ERESTARTSYS dentry left behind"
+ - ovl: copy-up: don't unlock between lookup and link
+ - gpiolib: fix filtering out unwanted events
+ - [x86] intel_rdt: Fix memory leak on mount failure
+ - [x86] perf/x86/intel/uncore: Fix wrong box pointer check
+ - [x86] drm/vmwgfx: Free hash table allocated by cmdbuf managed res mgr
+ - dm thin: do not queue freed thin mapping for next stage processing
+ - [x86] mm: Fix boot crash caused by incorrect loop count calculation in
+ sync_global_pgds()
+ - [arm64] pinctrl/amd: Use regular interrupt instead of chained
+ - mm/vmalloc.c: huge-vmap: fail gracefully on unexpected huge vmap
+ mappings
+ - xen/blkback: don't free be structure too early
+ - xfrm6: Fix IPv6 payload_len in xfrm6_transport_finish
+ - xfrm: move xfrm_garbage_collect out of xfrm_policy_flush
+ - xfrm: fix stack access out of bounds with CONFIG_XFRM_SUB_POLICY
+ - xfrm: NULL dereference on allocation failure
+ - xfrm: Oops on error in pfkey_msg2xfrm_state()
+ - [arm64] PCI: Fix struct acpi_pci_root_ops allocation failure path
+ - [arm64] ACPI: Fix BAD_MADT_GICC_ENTRY() macro implementation
+ - [arm*] 8685/1: ensure memblock-limit is pmd-aligned
+ - [arm*] davinci: PM: Free resources in error handling path in
+ 'davinci_pm_init'
+ - [arm*] davinci: PM: Do not free useful resources in normal path in
+ 'davinci_pm_init'
+ - Revert "x86/entry: Fix the end of the stack for newly forked tasks"
+ - [x86] boot/KASLR: Fix kexec crash due to 'virt_addr' calculation bug
+ - [x86] perf: Fix spurious NMI with PEBS Load Latency event
+ - [x86] mpx: Correctly report do_mpx_bt_fault() failures to user-space
+ - [x86] mm: Fix flush_tlb_page() on Xen
+ - ocfs2: o2hb: revert hb threshold to keep compatible
+ - ocfs2: fix deadlock caused by recursive locking in xattr
+ - iommu/dma: Don't reserve PCI I/O windows
+ - [amd64] iommu/amd: Fix incorrect error handling in
+ amd_iommu_bind_pasid()
+ - [amd64] iommu/amd: Fix interrupt remapping when disable guest_mode
+ - mtd: nand: brcmnand: Check flash #WP pin status before nand
+ erase/program
+ - mtd: nand: fsmc: fix NAND width handling
+ - [x86] KVM: fix emulation of RSM and IRET instructions
+ - [x86] KVM: vPMU: fix undefined shift in intel_pmu_refresh()
+ - [x86] KVM: zero base3 of unusable segments
+ - KVM: nVMX: Fix exception injection
+ - esp4: Fix udpencap for local TCP packets.
+ - [armhf] hsi: Fix build regression due to netdev destructor fix.
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.10
+ - fs: completely ignore unknown open flags
+ - driver core: platform: fix race condition with driver_override
+ - RDMA/uverbs: Check port number supplied by user verbs cmds
+ - ceph: choose readdir frag based on previous readdir reply
+ - tracing/kprobes: Allow to create probe with a module name starting with a
+ digit
+ - drm/virtio: don't leak bo on drm_gem_object_init failure (CVE-2017-10810)
+ - usb: dwc3: replace %p with %pK
+ - Add USB quirk for HVR-950q to avoid intermittent device resets
+ - usb: usbip: set buffer pointers to NULL after free
+ - usb: Fix typo in the definition of Endpoint[out]Request
+ - USB: core: fix device node leak
+ - [armhf] pinctrl: meson: meson8b: fix the NAND DQS pins
+ - [armhf,arm64] pinctrl: sunxi: Fix SPDIF function name for A83T
+ - pinctrl: core: Fix warning by removing bogus code
+ - [x86] xhci: Limit USB2 port wake support for AMD Promontory hosts
+ - gfs2: Fix glock rhashtable rcu bug
+ - Add "shutdown" to "struct class".
+ - tpm: Issue a TPM2_Shutdown for TPM2 devices.
+ - tpm: fix a kernel memory leak in tpm-sysfs.c
+ - [x86] uaccess: Optimize copy_user_enhanced_fast_string() for short strings
+ - xen: avoid deadlock in xenbus driver
+ - crypto: drbg - Fixes panic in wait_for_completion call
+ - [x86] rt286: add Thinkpad Helix 2 to force_combo_jack_table
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.11
+ - mqueue: fix a use-after-free in sys_mq_notify() (CVE-2017-11176)
+ - proc: Fix proc_sys_prune_dcache to hold a sb reference
+ - locking/rwsem-spinlock: Fix EINTR branch in __down_write_common()
+ - [x86] staging: comedi: fix clean-up of comedi_class in comedi_init()
+ - crypto: rsa-pkcs1pad - use constant time memory comparison for MACs
+ - ext4: check return value of kstrtoull correctly in reserved_clusters_store
+ - [x86] mm/pat: Don't report PAT on CPUs that don't support it
+
+ [ Ben Hutchings ]
+ * [m68k] udeb: Use only the common module list for nic-shared-modules
+ (fixes FTBFS)
+ * [sparc64] Update "Revert "sparc: move exports to definitions"" for the
+ addition of __multi3 (fixes FTBFS)
+ * binfmt_elf: use ELF_ET_DYN_BASE only for PIE (CVE-2017-1000370,
+ CVE-2017-1000371)
+ * [rt] Update to 4.11.9-rt7:
+ - smp/hotplug: Move unparking of percpu threads to the control CPU
+ - cpu_pm: replace raw_notifier to atomic_notifier
+ * media: Enable MEDIA_CEC_SUPPORT, VIDEO_VIVID_CEC; USB_PULSE8_CEC as module
+ (Closes: #868511)
+ * [armhf] udeb: Add sunxi_wdt to kernel-image (Closes: #866130)
+ * crypto: Enable CRYPTO_USER, CRYPTO_USER_API_RNG as modules (Closes: #868291)
+ * udeb: Add dm-raid to md-modules (Closes: #868251)
+ * [arm64] sound: Enable SND_HDA_INTEL as module (Closes: #867611)
+ * aufs: Update support patchset to aufs4.11.7+-20170703 (Closes: #867257)
+ * [x86] ideapad-laptop: Add various IdeaPad models to no_hw_rfkill list
+ (Closes: #866706)
+ * firmware: dmi: Add DMI_PRODUCT_FAMILY identification string
+ * [x86] pinctrl: cherryview: Extend the Chromebook DMI quirk to Intel_Strago
+ systems (Closes: #862723)
+ * [armhf] Add ARM Mali Midgard device tree bindings and gpu node for rk3288
+ (thanks to Guillaume Tucker) (Closes: #865646)
+
+ [ Uwe Kleine-König ]
+ * [arm64] enable FB_SIMPLE
+
+ [ Vagrant Cascadian ]
+ * [arm64] Enable support for Rockchip systems (Closes: #860976).
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 2
+ * [rt] Update to 4.11.8-rt5
+
+ [ Cyril Brulebois ]
+ * [arm64,armhf] udeb: Ship usb3503 module in usb-modules, needed for
+ e.g. Arndale development boards, thanks to Wei Liu (Closes: #865645).
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 17 Jul 2017 03:01:21 +0100
+
+linux (4.11.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.4
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.5
+ - [x86] drm/vmwgfx: limit the number of mip levels in
+ vmw_gb_surface_define_ioctl() (CVE-2017-7346)
+ - [x86] drm/vmwgfx: Make sure backup_handle is always valid (CVE-2017-9605)
+ - ALSA: timer: Fix race between read and ioctl (CVE-2017-1000380)
+ - ALSA: timer: Fix missing queue indices reset at SNDRV_TIMER_IOCTL_SELECT
+ (CVE-2017-1000380)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.6
+
+ [ John Paul Adrian Glaubitz ]
+ * [m68k] udeb: Build affs-modules package
+ * [m68k] udeb: Build hfs-modules package
+ * [m68k] udeb: Build nic-modules package
+ * [m68k] udeb: Build pata-modules package
+ * [m68k] udeb: Build scsi-core-modules package
+ * [m68k] udeb: Move non-shared modules from nic-shared-modules to nic-modules
+ * [m68k] udeb: Add buddha, falconide, gayle, macide, q40ide to pata-modules
+ * [m68k] udeb: Add atari_scsi, mac_esp, mac_scsi to scsi-modules
+
+ [ Ben Hutchings ]
+ * [x86] Enable SERIAL_8250_MID as built-in (Closes: #864368)
+ * Set ABI to 1
+ * debian/rules.real: Include rules.defs before using architecture variables
+ (Closes: #862842)
+ * [rt] Update to 4.11.5-rt1 and reenable
+ * fs: Reenable HPFS_FS as module (Closes: #864878)
+ * USB: serial: option: add two Longcheer device ids (Closes: #864604)
+ * [armhf] PCI: Enable PCI_HOST_GENERIC (Closes: #864726)
+ * mm: larger stack guard gap, between vmas (CVE-2017-1000364)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 20 Jun 2017 00:25:45 +0100
+
+linux (4.11.3-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.1
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.2
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.11.3
+
+ [ Ben Hutchings ]
+ * [armel] udeb: Add af_packet. firmware_class, nls_base to kernel-image
+ (fixes FTBFS)
+ * [m68k] Update 'Revert "m68k: move exports to definitions"' for 4.11
+ (fixes FTBFS) (Closes: #862393)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 05 Jun 2017 14:13:41 +0100
+
+linux (4.11-1~exp2) experimental; urgency=medium
+
+ * [armel/marvell] Change MQ_IOSCHED_DEADLINE, FW_LOADER, HWMON,
+ INPUT_MOUSEDEV, THERMAL, SERIAL_8250_PCI, SERIAL_8250_EXAR, NLS, PACKET
+ from built-in to modules (fixes FTBFS)
+ * usbip: Fix potential format overflow in userspace tools (fixes FTBFS on
+ 64-bit architectures with gcc-7)
+ * [mips*/octeon] Increase RELOCATION_TABLE_SIZE to 0x00110000 (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 05 May 2017 04:35:12 +0100
+
+linux (4.11-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.11
+ (thanks to Lukas Wunner for rebasing up to 4.11-rc6)
+
+ [ Ben Hutchings ]
+ * aufs: Update support patchset to aufs4.x-rcN-20170410
+ * [arm64,x86] Replace securelevel patch set with lockdown patch set
+ * [x86] Make hyperv-modules depends on nic-shared-modules, as hv_utils now
+ implements PTP clock
+ * [arm64] Enable ARCH_SUNXI, RTC_DRV_SUN6I as built-in,
+ MMC_SUNXI and PHY_SUN4I_USB as modules (Closes: #860855)
+ * [arm64] Enable REGULATOR_GPIO as module (Closes: #860222)
+ * block: Enable BLK_WBT, BLK_WBT_MQ (Closes: #859570)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 02 May 2017 20:57:50 +0100
+
+linux (4.10.7-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.10.1
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.10.2
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.10.3
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.10.4
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.10.5
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.10.6
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.10.7
+
+ [ Ben Hutchings ]
+ * netfilter: Enable NF_SOCKET_IPV4, NF_SOCKET_IPV6 as modules
+ (Closes: #858897)
+ * [s390x] Set NR_CPUS=256 (Closes: #858731)
+ * Enable BUG_ON_DATA_CORRUPTION
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 31 Mar 2017 00:41:15 +0100
+
+linux (4.10-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.10
+
+ [ Ben Hutchings ]
+ * aufs: Update support patchset to aufs4.x-rcN-20170206
+ * Set ABI to trunk
+
+ [ Roger Shimizu ]
+ * debian/copyright & debian/README.source:
+ - Prefer https URL than http for security merit.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 22 Feb 2017 20:58:19 +0000
+
+linux (4.10~rc6-1~exp2) experimental; urgency=medium
+
+ * [s390x] Un-revert upstream change moving exports to assembly sources
+ (fixes FTBFS)
+ * [sparc64] topology_64.h: Fix condition for including cpudata.h
+ (might fix FTBFS)
+ * [powerpc*] Fix various build failures:
+ - Revert the initial stack protector support
+ - Fix missing CRC for _mcount
+ - [ppc64el] udeb: Exclude ehea from nic-modules
+ * debian/control: Fix compiler build-dependencies for cross-building
+ * [armel] Adjust configuration to reduce image size (fixes FTBFS):
+ - PCI: Disable PCIEAER, PCIEASPM
+ - net: Disable LWTUNNEL, IPV6_ILA
+ - trace: Disable UPROBE_EVENT
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 02 Feb 2017 03:44:51 +0000
+
+linux (4.10~rc6-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [rt] Disable until it is updated for 4.10 or later
+ * [amd64] Enable LEGACY_VSYSCALL_NONE instead of LEGACY_VSYSCALL_EMULATE
+ (Closes: #852620). This breaks (e)glibc versions < 2.14 and dietlibc
+ versions < 0.33. It can be reverted using the kernel parameter:
+ vsyscall=emulate
+ * [arm64] Enable DRM_MESON, MMC_MESON_GX, DWMAC_MESON, MESON_GXL_PHY,
+ PHY_MESON8B_USB2, MESON_WATCHDOG as modules
+ * net: Enable SFC_FALCON as module; SFC_FALCON_MTD
+ * cpupower: Fix compiler options for turbostat on 4.10
+ * linux-doc: Update documentation file list for 4.10
+ * linux-doc: Fix up symlinks to gzipped docs
+ * debian/control: Add build-dependency on graphviz for documentation
+ * linux-doc: Copy source to build directory, to avoid creating files in
+ source directory
+
+ [ Roger Shimizu ]
+ * debian/copyright: Add GPL/X11 Dual License
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 31 Jan 2017 15:33:20 +0000
+
+linux (4.9.30-2) unstable; urgency=high
+
+ * [x86] Enable SERIAL_8250_MID as built-in (Closes: #864368)
+ * Fix bugs introduced by original fix for CVE-2017-9074:
+ - ipv6: Check ip6_find_1stfragopt() return value properly.
+ - ipv6: xfrm: Handle errors reported by xfrm6_find_1stfragopt()
+ - ipv6: Fix leak in ipv6_gso_segment().
+ * Revert "uapi: fix linux/if.h userspace compilation errors" (see #864269)
+ * [armhf] udeb: Add axp20x_usb_power to kernel-image; add i2c-modules
+ package including i2c-mv64xxx and i2c-rk3x (thanks to Karsten Merker)
+ (Closes: #856111)
+ * NFSv4.x/callback: Create the callback service through svc_create_pooled
+ (Closes: #862357)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 12 Jun 2017 16:24:30 +0100
+
+linux (4.9.30-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.26
+ - [arm64] Revert "mmc: sdhci-msm: Enable few quirks"
+ - ping: implement proper locking
+ - [sparc64] kern_addr_valid regression
+ - [sparc64] Fix kernel panic due to erroneous #ifdef surrounding
+ pmd_write()
+ - net: neigh: guard against NULL solicit() method
+ - net: phy: handle state correctly in phy_stop_machine
+ - bpf: improve verifier packet range checks
+ - net/mlx5: Avoid dereferencing uninitialized pointer
+ - l2tp: hold tunnel socket when handling control frames in l2tp_ip
+ and l2tp_ip6
+ - l2tp: purge socket queues in the .destruct() callback
+ - net/packet: fix overflow in check for tp_frame_nr
+ - net/packet: fix overflow in check for tp_reserve
+ - l2tp: take reference on sessions being dumped
+ - l2tp: fix PPP pseudo-wire auto-loading
+ - net: ipv4: fix multipath RTM_GETROUTE behavior when iif is given
+ - sctp: listen on the sock only when it's state is listening or
+ closed
+ - tcp: clear saved_syn in tcp_disconnect()
+ - ipv6: Fix idev->addr_list corruption
+ - net-timestamp: avoid use-after-free in ip_recv_error
+ - net: vrf: Fix setting NLM_F_EXCL flag when adding l3mdev rule
+ - dp83640: don't recieve time stamps twice
+ - gso: Validate assumption of frag_list segementation
+ - net: ipv6: RTF_PCPU should not be settable from userspace
+ - netpoll: Check for skb->queue_mapping
+ - ip6mr: fix notification device destruction
+ - net/mlx5: Fix driver load bad flow when having fw
+ initializing timeout
+ - net/mlx5e: Fix small packet threshold
+ - net/mlx5e: Fix ETHTOOL_GRXCLSRLALL handling
+ - macvlan: Fix device ref leak when purging bc_queue
+ - net: ipv6: regenerate host route if moved to gc list
+ - net: phy: fix auto-negotiation stall due to unavailable interrupt
+ - ipv6: check skb->protocol before lookup for nexthop
+ - tcp: memset ca_priv data to 0 properly
+ - ipv6: check raw payload size correctly in ioctl
+ - ALSA: oxfw: fix regression to handle Stanton SCS.1m/1d
+ - ALSA: firewire-lib: fix inappropriate assignment between
+ signed/unsigned type
+ - ALSA: seq: Don't break snd_use_lock_sync() loop by timeout
+ - [mips*] KGDB: Use kernel context for sleeping threads
+ - [mips*] Avoid BUG warning in arch_check_elf
+ - p9_client_readdir() fix
+ - [x86] ASoC: intel: Fix PM and non-atomic crash in bytcr drivers
+ - Input: i8042 - add Clevo P650RS to the i8042 reset list
+ - nfsd: check for oversized NFSv2/v3 arguments
+ - nfsd4: minor NFSv2/v3 write decoding cleanup
+ - nfsd: stricter decoding of write-like NFSv2/v3 ops
+ - ceph: fix recursion between ceph_set_acl() and __ceph_setattr()
+ - macsec: avoid heap overflow in skb_to_sgvec
+ - net: can: usb: gs_usb: Fix buffer on stack
+ - [x86] ftrace: Fix triple fault with graph tracing and suspend-to-ram
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.27
+ - timerfd: Protect the might cancel mechanism proper
+ - Handle mismatched open calls
+ - [x86] tpm_tis: use default timeout value if chip reports it as zero
+ - scsi: storvsc: Workaround for virtual DVD SCSI version
+ - [powerpc, x86] hwmon: (it87) Avoid registering the same chip on both SIO
+ addresses
+ - 8250_pci: Fix potential use-after-free in error path
+ - ceph: try getting buffer capability for readahead/fadvise
+ - cpu/hotplug: Serialize callback invocations proper
+ - dm ioctl: prevent stack leak in dm ioctl call
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.28
+ - 9p: fix a potential acl leak
+ - hwmon: (it87) Fix pwm4 detection for IT8620 and IT8628
+ - [x86] tpm: fix RC value check in tpm2_seal_trusted
+ - [x86] tmp: use pdev for parent device in tpm_chip_alloc
+ - cpupower: Fix turbo frequency reporting for pre-Sandy Bridge cores
+ - [powerpc*] mm: Fixup wrong LPCR_VRMASD value
+ - [powerpc*] powernv: Fix opal_exit tracepoint opcode
+ - [powerpc*] Correctly disable latent entropy GCC plugin on
+ prom_init.o
+ - [x86] perf/x86/intel/pt: Add format strings for PTWRITE and power
+ event tracing
+ - [arm64] dts: r8a7795: Mark EthernetAVB device node disabled
+ - [arm64] dts: qcom: Fix ipq board clock rates
+ - [arm64] Improve detection of user/non-user mappings in
+ set_pte(_at)
+ - [armhf] OMAP5 / DRA7: Fix HYP mode boot for thumb2 build
+ - [armhf] dts: sun7i: lamobo-r1: Fix CPU port RGMII settings
+ - mwifiex: debugfs: Fix (sometimes) off-by-1 SSID print
+ - mwifiex: remove redundant dma padding in AMSDU
+ - mwifiex: Avoid skipping WEP key deletion for AP
+ - iwlwifi: fix MODULE_FIRMWARE for 6030
+ - iwlwifi: mvm: don't restart HW if suspend fails with unified image
+ - iwlwifi: mvm: overwrite skb info later
+ - iwlwifi: pcie: don't increment / decrement a bool
+ - iwlwifi: pcie: trans: Remove unused 'shift_param'
+ - iwlwifi: pcie: fix the set of DMA memory mask
+ - iwlwifi: mvm: fix reorder timer re-arming
+ - iwlwifi: mvm: Use aux queue for offchannel frames in dqa
+ - iwlwifi: mvm/pcie: adjust A-MSDU tx_cmd length in PCIe
+ - iwlwifi: mvm: fix pending frame counter calculation
+ - iwlwifi: mvm: fix references to first_agg_queue in DQA mode
+ - iwlwifi: mvm: synchronize firmware DMA paging memory
+ - iwlwifi: mvm: writing zero bytes to debugfs causes a crash
+ - [x86] ioapic: Restore IO-APIC irq_chip retrigger callback
+ - [amd64] x86/pci-calgary: Fix iommu_free() comparison of unsigned
+ expression >= 0
+ - [x86] kprobes/x86: Fix kernel panic when certain exception-
+ handling addresses are probed
+ - [x86] platform/intel-mid: Correct MSI IRQ line for watchdog device
+ - [x86] KVM: nVMX: initialize PML fields in vmcs02
+ - [x86] KVM: nVMX: do not leak PML full vmexit to L1
+ - [arm64, armhf] usb: dwc2: host: use msleep() for long delay
+ - [armhf] usb: host: ehci-exynos: Decrese node refcount on
+ exynos_ehci_get_phy() error paths
+ - [armhf] usb: host: ohci-exynos: Decrese node refcount on
+ exynos_ehci_get_phy() error paths
+ - [arm64, armhf] usb: chipidea: Only read/write OTGSC from one place
+ - [arm64, armhf] usb: chipidea: Handle extcon events properly
+ - USB: serial: keyspan_pda: fix receive sanity checks
+ - USB: serial: digi_acceleport: fix incomplete rx sanity check
+ - USB: serial: ssu100: fix control-message error handling
+ - USB: serial: io_edgeport: fix epic-descriptor handling
+ - USB: serial: ti_usb_3410_5052: fix control-message error handling
+ - USB: serial: ark3116: fix open error handling
+ - USB: serial: ftdi_sio: fix latency-timer error handling
+ - USB: serial: quatech2: fix control-message error handling
+ - USB: serial: mct_u232: fix modem-status error handling
+ - USB: serial: io_edgeport: fix descriptor error handling
+ - [armhf] clk: rockchip: add "," to
+ mux_pll_src_apll_dpll_gpll_usb480m_p on rk3036
+ - phy: qcom-usb-hs: Add depends on EXTCON
+ - scsi: qla2xxx: Fix crash in qla2xxx_eh_abort on bad ptr
+ - scsi: mac_scsi: Fix MAC_SCSI=m option when SCSI=m
+ - scsi: smartpqi: fix time handling
+ - [mips*] R2-on-R6 MULTU/MADDU/MSUBU emulation bugfix
+ - brcmfmac: Ensure pointer correctly set if skb data location
+ changes
+ - brcmfmac: Make skb header writable before use
+ - [x86] staging/lustre/llite: move root_squash from sysfs to debugfs
+ - [x86] staging: wlan-ng: add missing byte order conversion
+ - ALSA: hda - Fix deadlock of controller device lock at unbinding
+ - [sparc64] fix fault handling in NGbzero.S and GENbzero.S
+ - macsec: dynamically allocate space for sglist
+ - tcp: do not underestimate skb->truesize in tcp_trim_head()
+ - bpf: enhance verifier to understand stack pointer arithmetic
+ - [arm64] bpf: fix jit branch offset related to ldimm64
+ - tcp: fix wraparound issue in tcp_lp
+ - net: ipv6: Do not duplicate DAD on link up
+ - net: usb: qmi_wwan: add Telit ME910 support
+ - tcp: do not inherit fastopen_req from parent
+ - ipv4, ipv6: ensure raw socket message is big enough to hold
+ an IP header
+ - rtnetlink: NUL-terminate IFLA_PHYS_PORT_NAME string
+ - ipv6: initialize route null entry in addrconf_init()
+ - ipv6: reorder ip6_route_dev_notifier after ipv6_dev_notf
+ - bnxt_en: allocate enough space for ->ntp_fltr_bmap
+ - bpf: don't let ldimm64 leak map addresses on unprivileged
+ (CVE-2017-9150)
+ - f2fs: sanity check segment count
+ - xen: Revert commits da72ff5bfcb0 and 72a9b186292d
+ - [arm64, armhf] wlcore: Pass win_size taken from
+ ieee80211_sta to FW
+ - [arm64, armhf] wlcore: Add RX_BA_WIN_SIZE_CHANGE_EVENT event
+ - drm/ttm: fix use-after-free races in vm fault handling
+ - block: get rid of blk_integrity_revalidate()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.29
+ - [x86] xen: adjust early dom0 p2m handling to xen hypervisor behavior
+ - target: Fix compare_and_write_callback handling for non GOOD status
+ - target/fileio: Fix zero-length READ and WRITE handling
+ - iscsi-target: Set session_fall_back_to_erl0 when forcing reinstatement
+ - usb: xhci: bInterval quirk for TI TUSB73x0
+ - usb: host: xhci: print correct command ring address
+ - USB: Proper handling of Race Condition when two USB class drivers try to
+ call init_usb_class simultaneously
+ - USB: Revert "cdc-wdm: fix "out-of-sync" due to missing notifications"
+ - [x86] staging: vt6656: use off stack for in buffer USB transfers.
+ - [x86] staging: vt6656: use off stack for out buffer USB transfers.
+ - [x86] staging: comedi: jr3_pci: fix possible null pointer dereference
+ - [x86] staging: comedi: jr3_pci: cope with jiffies wraparound
+ - usb: misc: add missing continue in switch
+ - usb: gadget: legacy gadgets are optional
+ - usb: Make sure usb/phy/of gets built-in
+ - usb: hub: Fix error loop seen after hub communication errors
+ - usb: hub: Do not attempt to autosuspend disconnected devices
+ - [x86] boot: Fix BSS corruption/overwrite bug in early x86 kernel startup
+ - [amd64] pmem: Fix cache flushing for iovec write < 8 bytes
+ - [x86] perf: Fix Broadwell-EP DRAM RAPL events
+ - [x86] KVM: fix user triggerable warning in kvm_apic_accept_events()
+ - [armhf,arm64] KVM: fix races in kvm_psci_vcpu_on
+ - [arm64] KVM: Fix decoding of Rt/Rt2 when trapping AArch32 CP accesses
+ - block: fix blk_integrity_register to use template's interval_exp if not 0
+ - crypto: algif_aead - Require setkey before accept(2)
+ - [x86] crypto: ccp - Use only the relevant interrupt bits
+ - [x86] crypto: ccp - Disable interrupts early on unload
+ - [x86] crypto: ccp - Change ISR handler method for a v3 CCP
+ - [x86] crypto: ccp - Change ISR handler method for a v5 CCP
+ - dm era: save spacemap metadata root after the pre-commit
+ - dm rq: check blk_mq_register_dev() return value in
+ dm_mq_init_request_queue()
+ - dm thin: fix a memory leak when passing discard bio down
+ - vfio/type1: Remove locked page accounting workqueue
+ - iov_iter: don't revert iov buffer if csum error
+ - IB/core: Fix sysfs registration error flow
+ - IB/core: For multicast functions, verify that LIDs are multicast LIDs
+ - IB/IPoIB: ibX: failed to create mcg debug file
+ - IB/mlx4: Fix ib device initialization error flow
+ - IB/mlx4: Reduce SRIOV multicast cleanup warning message to debug level
+ - IB/hfi1: Prevent kernel QP post send hard lockups
+ - perf auxtrace: Fix no_size logic in addr_filter__resolve_kernel_syms()
+ - ext4: evict inline data when writing to memory map
+ - fs/xattr.c: zero out memory copied to userspace in getxattr
+ - ceph: fix memory leak in __ceph_setxattr()
+ - fs/block_dev: always invalidate cleancache in invalidate_bdev()
+ - mm: prevent potential recursive reclaim due to clearing PF_MEMALLOC
+ - Fix match_prepath()
+ - Set unicode flag on cifs echo request to avoid Mac error
+ - SMB3: Work around mount failure when using SMB3 dialect to Macs
+ - CIFS: fix mapping of SFM_SPACE and SFM_PERIOD
+ - cifs: fix leak in FSCTL_ENUM_SNAPS response handling
+ - cifs: fix CIFS_ENUMERATE_SNAPSHOTS oops
+ - CIFS: fix oplock break deadlocks
+ - cifs: fix CIFS_IOC_GET_MNT_INFO oops
+ - CIFS: add misssing SFM mapping for doublequote
+ - padata: free correct variable
+ - device-dax: fix cdev leak
+ - fscrypt: fix context consistency check when key(s) unavailable
+ - [armhf] serial: samsung: Use right device for DMA-mapping calls
+ - [armhf] serial: omap: fix runtime-pm handling on unbind
+ - [armhf] serial: omap: suspend device on probe errors
+ - tty: pty: Fix ldisc flush after userspace become aware of the data already
+ - Bluetooth: Fix user channel for 32bit userspace on 64bit kernel
+ - Bluetooth: hci_bcm: add missing tty-device sanity check
+ - Bluetooth: hci_intel: add missing tty-device sanity check
+ - ipmi: Fix kernel panic at ipmi_ssif_thread()
+ - libnvdimm, region: fix flush hint detection crash
+ - libnvdimm, pmem: fix a NULL pointer BUG in nd_pmem_notify
+ - libnvdimm, pfn: fix 'npfns' vs section alignment
+ - [powerpc*/*64*] pstore: Fix flags to enable dumps on powerpc
+ - pstore: Shut down worker when unregistering
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.30
+ - usb: misc: legousbtower: Fix buffers on stack
+ - usb: misc: legousbtower: Fix memory leak
+ - USB: ene_usb6250: fix DMA to the stack
+ - watchdog: pcwd_usb: fix NULL-deref at probe
+ - char: lp: fix possible integer overflow in lp_setup() (CVE-2017-1000363)
+ - USB: core: replace %p with %pK
+ - tpm_tis_core: Choose appropriate timeout for reading burstcount
+ - ALSA: hda: Fix cpu lockup when stopping the cmd dmas
+ - [armhf] tegra: paz00: Mark panel regulator as enabled on boot
+ - fanotify: don't expose EOPENSTALE to userspace
+ - tpm_tis_spi: Use single function to transfer data
+ - tpm_tis_spi: Abort transfer when too many wait states are signaled
+ - tpm_tis_spi: Check correct byte for wait state indicator
+ - tpm_tis_spi: Remove limitation of transfers to MAX_SPI_FRAMESIZE bytes
+ - tpm_tis_spi: Add small delay after last transfer
+ - tpm: msleep() delays - replace with usleep_range() in i2c nuvoton driver
+ - tpm: add sleep only for retry in i2c_nuvoton_write_status()
+ - tpm_crb: check for bad response size
+ - mlx5: Fix mlx5_ib_map_mr_sg mr length
+ - infiniband: call ipv6 route lookup via the stub interface
+ - dm btree: fix for dm_btree_find_lowest_key()
+ - dm raid: select the Kconfig option CONFIG_MD_RAID0
+ - dm bufio: avoid a possible ABBA deadlock
+ - dm bufio: check new buffer allocation watermark every 30 seconds
+ - dm mpath: split and rename activate_path() to prepare for its expanded use
+ - dm cache metadata: fail operations if fail_io mode has been established
+ - dm bufio: make the parameter "retain_bytes" unsigned long
+ - dm thin metadata: call precommit before saving the roots
+ - dm space map disk: fix some book keeping in the disk space map
+ - md: update slab_cache before releasing new stripes when stripes resizing
+ - md: MD_CLOSING needs to be cleared after called md_set_readonly or
+ do_md_stop
+ - rtlwifi: rtl8821ae: setup 8812ae RFE according to device type
+ - mwifiex: MAC randomization should not be persistent
+ - mwifiex: pcie: fix cmd_buf use-after-free in remove/reset
+ - ima: accept previously set IMA_NEW_FILE
+ - [x86] KVM: Fix load damaged SSEx MXCSR register
+ - [x86] KVM: Fix potential preemption when get the current kvmclock
+ timestamp
+ - [x86] KVM: Fix read out-of-bounds vulnerability in kvm pio emulation
+ - [i386] fix 32-bit case of __get_user_asm_u64()
+ - [armhf] regulator: rk808: Fix RK818 LDO2
+ - [s390x] kdump: Add final note
+ - [s390x] cputime: fix incorrect system time
+ - ath9k_htc: Add support of AirTies 1eda:2315 AR9271 device
+ - ath9k_htc: fix NULL-deref at probe
+ - [x86] drm/amdgpu: Make display watermark calculations more accurate
+ - [x86] drm/amdgpu: Avoid overflows/divide-by-zero in latency_watermark
+ calculations.
+ - [x86] drm/amdgpu: Add missing lb_vblank_lead_lines setup to DCE-6 path.
+ - drm/nouveau/therm: remove ineffective workarounds for alarm bugs
+ - drm/nouveau/tmr: ack interrupt before processing alarms
+ - drm/nouveau/tmr: fix corruption of the pending list when rescheduling an
+ alarm
+ - drm/nouveau/tmr: avoid processing completed alarms when adding a new one
+ - drm/nouveau/tmr: handle races with hw when updating the next alarm time
+ - [armhf] gpio: omap: return error if requested debounce time is not
+ possible
+ - cdc-acm: fix possible invalid access when processing notification
+ - ohci-pci: add qemu quirk
+ - [powerpc*] cxl: Force context lock during EEH flow
+ - [powerpc*] cxl: Route eeh events to all drivers in
+ cxl_pci_error_detected()
+ - proc: Fix unbalanced hard link numbers
+ - of: fix sparse warning in of_pci_range_parser_one
+ - of: fix "/cpus" reference leak in of_numa_parse_cpu_nodes()
+ - of: fdt: add missing allocation-failure check
+ - [powerpc*/*64*] ibmvscsis: Do not send aborted task response
+ - [x86] IIO: bmp280-core.c: fix error in humidity calculation
+ - IB/hfi1: Return an error on memory allocation failure
+ - IB/hfi1: Fix a subcontext memory leak
+ - pid_ns: Sleep in TASK_INTERRUPTIBLE in zap_pid_ns_processes
+ - pid_ns: Fix race between setns'ed fork() and zap_pid_ns_processes()
+ - USB: serial: ftdi_sio: fix setting latency for unprivileged users
+ - USB: serial: ftdi_sio: add Olimex ARM-USB-TINY(H) PIDs
+ - USB: chaoskey: fix Alea quirk on big-endian hosts
+ - f2fs: check entire encrypted bigname when finding a dentry
+ - fscrypt: avoid collisions when presenting long encrypted filenames
+ - libnvdimm: fix clear length of nvdimm_forget_poison()
+ - xhci: remove GFP_DMA flag from allocation
+ - usb: host: xhci-plat: propagate return value of platform_get_irq()
+ - xhci: apply PME_STUCK_QUIRK and MISSING_CAS quirk for Denverton
+ - usb: host: xhci-mem: allocate zeroed Scratchpad Buffer
+ - net: irda: irda-usb: fix firmware name on big-endian hosts
+ - usbvision: fix NULL-deref at probe
+ - mceusb: fix NULL-deref at probe
+ - ttusb2: limit messages to buffer size
+ - [armhf,arm64] usb: dwc3: gadget: Prevent losing events in event cache
+ - [armhf] usb: musb: tusb6010_omap: Do not reset the other direction's
+ packet size
+ - [armhf] usb: musb: Fix trying to suspend while active for OTG
+ configurations
+ - USB: iowarrior: fix info ioctl on big-endian hosts
+ - usb: serial: option: add Telit ME910 support
+ - USB: serial: qcserial: add more Lenovo EM74xx device IDs
+ - USB: serial: mct_u232: fix big-endian baud-rate handling
+ - USB: serial: io_ti: fix div-by-zero in set_termios
+ - USB: hub: fix SS hub-descriptor handling
+ - USB: hub: fix non-SS hub-descriptor handling
+ - ipx: call ipxitf_put() in ioctl error path (CVE-2017-7487)
+ - iio: hid-sensor: Store restore poll and hysteresis on S3
+ - gspca: konica: add missing endpoint sanity check
+ - dib0700: fix NULL-deref at probe
+ - zr364xx: enforce minimum size when reading header
+ - dvb-frontends/cxd2841er: define symbol_rate_min/max in T/C fe-ops
+ - digitv: limit messages to buffer size
+ - dw2102: limit messages to buffer size
+ - cx231xx-audio: fix init error path
+ - cx231xx-audio: fix NULL-deref at probe
+ - cx231xx-cards: fix NULL-deref at probe
+ - [powerpc*] mm: Ensure IRQs are off in switch_mm()
+ - [powerpc*] eeh: Avoid use after free in eeh_handle_special_event()
+ - [powerpc*] book3s/mce: Move add_taint() later in virtual mode
+ - [powerpc*] pseries: Fix of_node_put() underflow during DLPAR remove
+ - [powerpc*] iommu: Do not call PageTransHuge() on tail pages
+ - [powerpc*] tm: Fix FP and VMX register corruption
+ - [arm64] KVM: Do not use stack-protector to compile EL2 code
+ - [armhf] KVM: Do not use stack-protector to compile HYP code
+ - [armhf] KVM: plug potential guest hardware debug leakage
+ - [armel,armhf] 8662/1: module: split core and init PLT sections
+ - [armhf] dts: imx6sx-sdb: Remove OPP override
+ - [arm64] dts: hi6220: Reset the mmc hosts
+ - [arm64] xchg: hazard against entire exchange variable
+ - [arm64] ensure extension of smp_store_release value
+ - [arm64] armv8_deprecated: ensure extension of addr
+ - [arm64] uaccess: ensure extension of access_ok() addr
+ - [arm64] documentation: document tagged pointer stack constraints
+ - [x86] staging: rtl8192e: rtl92e_fill_tx_desc fix write to mapped out
+ memory.
+ - [x86] staging: rtl8192e: fix 2 byte alignment of register BSSIDR.
+ - [x86] staging: rtl8192e: rtl92e_get_eeprom_size Fix read size of
+ EPROM_CMD.
+ - [x86] staging: rtl8192e: GetTs Fix invalid TID 7 warning.
+ - [x86] iommu/vt-d: Flush the IOTLB to get rid of the initial kdump mappings
+ - stackprotector: Increase the per-task stack canary's random range from 32
+ bits to 64 bits on 64-bit platforms
+ - uwb: fix device quirk on big-endian hosts
+ - genirq: Fix chained interrupt data ordering
+ - nvme: unmap CMB and remove sysfs file in reset path
+ - [alpha] osf_wait4(): fix infoleak
+ - tracing/kprobes: Enforce kprobes teardown after testing
+ - [x86] PCI: hv: Allocate interrupt descriptors with GFP_ATOMIC
+ - [x86] PCI: hv: Specify CPU_AFFINITY_ALL for MSI affinity when >= 32 CPUs
+ - PCI: Fix pci_mmap_fits() for HAVE_PCI_RESOURCE_TO_USER platforms
+ - PCI: Fix another sanity check bug in /proc/pci mmap
+ - PCI: Only allow WC mmap on prefetchable resources
+ - PCI: Freeze PME scan before suspending devices
+ - [armel,armhf] mtd: nand: orion: fix clk handling
+ - [armhf] mtd: nand: omap2: Fix partition creation via cmdline mtdparts
+ - mtd: nand: add ooblayout for old hamming layout
+ - [x86] drm/edid: Add 10 bpc quirk for LGD 764 panel in HP zBook 17 G2
+ - NFSv4: Fix a hang in OPEN related to server reboot
+ - NFS: Fix use after free in write error path
+ - NFS: Use GFP_NOIO for two allocations in writeback
+ - nfsd: fix undefined behavior in nfsd4_layout_verify
+ - nfsd: encoders mustn't use unitialized values in error cases
+ - drivers: char: mem: Check for address space wraparound with mmap()
+ - [x86] drm/i915/gvt: Disable access to stolen memory as a guest
+
+ [ Aurelien Jarno ]
+ * [mips*/*-malta] Enable POWER_RESET and POWER_RESET_SYSCON.
+
+ [ Uwe Kleine-König ]
+ * [arm64] Enable DRM modules (Closes: #863344)
+ * Ignore ABI changes in chipidea driver
+
+ [ Ben Hutchings ]
+ * Ignore ABI changes in ccp and hid-sensors
+ * [mips*el/loongson-3] Revert "MIPS: Loongson-3: Select
+ MIPS_L1_CACHE_SHIFT_6" to avoid ABI change
+ * SUNRPC: Refactor svc_set_num_threads()
+ * NFSv4: Fix callback server shutdown (CVE-2017-9059) (Closes: #862357)
+ * uapi: fix linux/if.h userspace compilation errors (see #822393, #824442)
+ * debian/control: Fix compiler build-dependencies for cross-building
+ (Closes: #863907)
+ * Add Debian package version to "hung task" log messages
+ * btrfs: warn about RAID5/6 being experimental at mount time (Closes: #863290)
+ * [x86] pinctrl: cherryview: Add a quirk to make Acer Chromebook keyboard
+ work again (Closes: #862723)
+ * [arm64] serial: pl011: add console matching function (Closes: #861898)
+ * [rt] Add new GPG subkeys for Sebastian Andrzej Siewior
+ * [rt] Update to 4.9.30-rt20:
+ - rtmutex: Deboost before waking up the top waiter
+ - sched/rtmutex/deadline: Fix a PI crash for deadline tasks
+ - sched/deadline/rtmutex: Dont miss the dl_runtime/dl_period update
+ - rtmutex: Clean up
+ - sched/rtmutex: Refactor rt_mutex_setprio()
+ - sched,tracing: Update trace_sched_pi_setprio()
+ - rtmutex: Fix PI chain order integrity
+ - rtmutex: Fix more prio comparisons
+ - rtmutex: Plug preempt count leak in rt_mutex_futex_unlock()
+ - futex: Avoid freeing an active timer
+ - futex: Fix small (and harmless looking) inconsistencies
+ - futex,rt_mutex: Fix rt_mutex_cleanup_proxy_lock()
+ - Revert "timers: Don't wake ktimersoftd on every tick"
+ - futex/rtmutex: Cure RT double blocking issue
+ - random: avoid preempt_disable()ed section
+
+ [ Salvatore Bonaccorso ]
+ * tracing: Use strlcpy() instead of strcpy() in __trace_find_cmdline()
+ (CVE-2017-0605)
+ * dccp/tcp: do not inherit mc_list from parent (CVE-2017-8890)
+ * ipv6: Prevent overrun when parsing v6 header options (CVE-2017-9074)
+ * sctp: do not inherit ipv6_{mc|ac|fl}_list from parent (CVE-2017-9075)
+ * ipv6/dccp: do not inherit ipv6_mc_list from parent (CVE-2017-9076,
+ CVE-2017-9077)
+ * crypto: skcipher - Add missing API setkey checks (CVE-2017-9211)
+ * ipv6: fix out of bound writes in __ip6_append_data() (CVE-2017-9242)
+
+ [ Cyril Brulebois ]
+ * udeb: Add efivarfs to efi-modules, which can be needed to retrieve
+ firmware or configuration bits from d-i. (Closes: #862555)
+
+ [ John Paul Adrian Glaubitz ]
+ * [m68k] udeb: Build loop-modules package (Closes: #862813)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 04 Jun 2017 03:03:01 +0100
+
+linux (4.9.25-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.19
+ - net/openvswitch: Set the ipv6 source tunnel key address attribute
+ correctly
+ - net: properly release sk_frag.page
+ - [arm64] amd-xgbe: Fix jumbo MTU processing on newer hardware
+ - openvswitch: Add missing case OVS_TUNNEL_KEY_ATTR_PAD
+ - net: unix: properly re-increment inflight counter of GC discarded
+ candidates
+ - net: vrf: Reset rt6i_idev in local dst after put
+ - net/mlx5: Add missing entries for set/query rate limit commands
+ - net/mlx5e: Use the proper UAPI values when offloading TC vlan actions
+ - net/mlx5: Increase number of max QPs in default profile
+ - net/mlx5e: Count GSO/LRO packets correctly
+ - ipv6: make sure to initialize sockc.tsflags before first use
+ - ipv4: provide stronger user input validation in nl_fib_input()
+ - socket, bpf: fix sk_filter use after free in sk_clone_lock
+ - tcp: initialize icsk_ack.lrcvtime at session start time
+ - Input: iforce,ims-pcu,hanwang,yealink,cm109,kbtab,sur40 - validate
+ number of endpoints before using them
+ - ALSA: seq: Fix racy cell insertions during snd_seq_pool_done()
+ - ALSA: ctxfi: Fix the incorrect check of dma_set_mask() call
+ - ALSA: hda - Adding a group of pin definition to fix headset problem
+ - ACM gadget: fix endianness in notifications
+ - usb: gadget: f_uvc: Fix SuperSpeed companion descriptor's
+ wBytesPerInterval
+ - USB: uss720,idmouse,wusbcore: fix NULL-deref at probe
+ - usb: musb: cppi41: don't check early-TX-interrupt for Isoch transfer
+ - usb: hub: Fix crash after failure to read BOS descriptor
+ - USB: usbtmc: add missing endpoint sanity check
+ - USB: usbtmc: fix probe error path
+ - uwb: i1480-dfu: fix NULL-deref at probe
+ - mmc: ushc: fix NULL-deref at probe
+ - [armhf[ iio: adc: ti_am335x_adc: fix fifo overrun recovery
+ - iio: sw-device: Fix config group initialization
+ - iio: hid-sensor-trigger: Change get poll value function order to avoid
+ sensor properties losing after resume from S3
+ - parport: fix attempt to write duplicate procfiles
+ - ext4: mark inode dirty after converting inline directory
+ - ext4: lock the xattr block before checksuming it
+ - [powerpc*/*64*] Fix idle wakeup potential to clobber registers
+ - mmc: sdhci: Do not disable interrupts while waiting for clock
+ - mmc: sdhci-pci: Do not disable interrupts in sdhci_intel_set_power
+ - [x86] hwrng: amd - Revert managed API changes
+ - [x86] hwrng: geode - Revert managed API changes
+ - [armhf] clk: sunxi-ng: sun6i: Fix enable bit offset for hdmi-ddc module
+ clock
+ - [armhf] clk: sunxi-ng: mp: Adjust parent rate for pre-dividers
+ - mwifiex: pcie: don't leak DMA buffers when removing
+ - [x86] crypto: ccp - Assign DMA commands to the channel's CCP
+ - xen/acpi: upload PM state from init-domain to Xen
+ - [x86] iommu/vt-d: Fix NULL pointer dereference in device_to_iommu
+ - [arm64] kaslr: Fix up the kernel image alignment
+ - cpufreq: Restore policy min/max limits on CPU online
+ - cgroup, net_cls: iterate the fds of only the tasks which are being
+ migrated
+ - blk-mq: don't complete un-started request in timeout handler
+ - [x86] drm/amdgpu: reinstate oland workaround for sclk
+ - jbd2: don't leak memory if setting up journal fails
+ - [x86] intel_th: Don't leak module refcount on failure to activate
+ - [x86] Drivers: hv: vmbus: Don't leak channel ids
+ - [x86] Drivers: hv: vmbus: Don't leak memory when a channel is rescinded
+ - libceph: don't set weight to IN when OSD is destroyed
+ - [x86] device-dax: fix pmd/pte fault fallback handling
+ - [armhf] drm/bridge: analogix dp: Fix runtime PM state on driver bind
+ - nl80211: fix dumpit error path RTNL deadlocks
+ - drm: reference count event->completion
+ - fbcon: Fix vc attr at deinit
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.20
+ - xfrm: policy: init locks early
+ - [x86] KVM: cleanup the page tracking SRCU instance
+ - virtio_balloon: init 1st buffer in stats vq
+ - [mips*] ptrace: Preserve previous registers for short regset write
+ - [sparc64] ptrace: Preserve previous registers for short regset write
+ - fscrypt: remove broken support for detecting keyring key revocation
+ (CVE-2017-7374)
+ - sched/rt: Add a missing rescheduling point
+ - [armhf] usb: musb: fix possible spinlock deadlock
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.21
+ - libceph: force GFP_NOIO for socket allocations
+ - xen/setup: Don't relocate p2m over existing one
+ - xfs: only update mount/resv fields on success in __xfs_ag_resv_init
+ - xfs: use per-AG reservations for the finobt
+ - xfs: pull up iolock from xfs_free_eofblocks()
+ - xfs: sync eofblocks scans under iolock are livelock prone
+ - xfs: fix eofblocks race with file extending async dio writes
+ - xfs: fix toctou race when locking an inode to access the data map
+ - xfs: fail _dir_open when readahead fails
+ - xfs: filter out obviously bad btree pointers
+ - xfs: check for obviously bad level values in the bmbt root
+ - xfs: verify free block header fields
+ - xfs: allow unwritten extents in the CoW fork
+ - xfs: mark speculative prealloc CoW fork extents unwritten
+ - xfs: reset b_first_retry_time when clear the retry status of xfs_buf_t
+ - xfs: update ctime and mtime on clone destinatation inodes
+ - xfs: reject all unaligned direct writes to reflinked files
+ - xfs: don't fail xfs_extent_busy allocation
+ - xfs: handle indlen shortage on delalloc extent merge
+ - xfs: split indlen reservations fairly when under reserved
+ - xfs: fix uninitialized variable in _reflink_convert_cow
+ - xfs: don't reserve blocks for right shift transactions
+ - xfs: Use xfs_icluster_size_fsb() to calculate inode chunk alignment
+ - xfs: tune down agno asserts in the bmap code
+ - xfs: only reclaim unwritten COW extents periodically
+ - xfs: fix and streamline error handling in xfs_end_io
+ - xfs: Use xfs_icluster_size_fsb() to calculate inode alignment mask
+ - xfs: use iomap new flag for newly allocated delalloc blocks
+ - xfs: try any AG when allocating the first btree block when reflinking
+ - scsi: libsas: fix ata xfer length
+ - scsi: scsi_dh_alua: Check scsi_device_get() return value
+ - scsi: scsi_dh_alua: Ensure that alua_activate() calls the completion
+ function
+ - ALSA: seq: Fix race during FIFO resize
+ - ALSA: hda - fix a problem for lineout on a Dell AIO machine
+ - [x86] ASoC: Intel: Skylake: fix invalid memory access due to wrong
+ reference of pointer
+ - HID: wacom: Don't add ghost interface as shared data
+ - mmc: sdhci: Disable runtime pm when the sdio_irq is enabled
+ - NFSv4.1 fix infinite loop on IO BAD_STATEID error
+ - nfsd: map the ENOKEY to nfserr_perm for avoiding warning
+ - [hppa] Clean up fixup routines for get_user()/put_user()
+ - [hppa] Avoid stalled CPU warnings after system shutdown
+ - [hppa] Fix access fault handling in pa_memcpy()
+ - ACPI: Fix incompatibility with mcount-based function graph tracing
+ - ACPI: Do not create a platform_device for IOAPIC/IOxAPIC
+ - USB: fix linked-list corruption in rh_call_control()
+ - [x86] KVM: clear bus pointer when destroyed
+ - KVM: kvm_io_bus_unregister_dev() should never fail
+ - drm/radeon: Override fpfn for all VRAM placements in radeon_evict_flags
+ - [armhf,arm64] drm/vc4: Allocate the right amount of space for boot-time
+ CRTC state.
+ - [armhf] drm/etnaviv: (re-)protect fence allocation with GPU mutex
+ - [x86] mm/KASLR: Exclude EFI region from KASLR VA space randomization
+ - [x86] mce: Fix copy/paste error in exception table entries
+ - lib/syscall: Clear return values when no stack
+ - mm: rmap: fix huge file mmap accounting in the memcg stats
+ - mm, hugetlb: use pte_present() instead of pmd_present() in
+ follow_huge_pmd()
+ - qla2xxx: Allow vref count to timeout on vport delete.
+ - mm: workingset: fix premature shadow node shrinking with cgroups
+ - blk: improve order of bio handling in generic_make_request()
+ - blk: Ensure users for current->bio_list can see the full list.
+ - padata: avoid race in reordering
+ - nvme/core: Fix race kicking freed request_queue
+ - nvme/pci: Disable on removal when disconnected
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.22
+ - ppdev: check before attaching port
+ - ppdev: fix registering same device name
+ - [x86] drm/vmwgfx: Type-check lookups of fence objects
+ - [x86] drm/vmwgfx: avoid calling vzalloc with a 0 size in
+ vmw_get_cap_3d_ioctl()
+ - drm/ttm, drm/vmwgfx: Relax permission checking when opening surfaces
+ - [x86] drm/vmwgfx: Remove getparam error message
+ - sysfs: be careful of error returns from ops->show()
+ - [armhf,arm64] KVM: Take mmap_sem in stage2_unmap_vm
+ - [armhf,arm64] KVM: Take mmap_sem in kvm_arch_prepare_memory_region
+ - [armhf,arm64] kvm: Fix locking for kvm_free_stage2_pgd
+ - [x86] iio: bmg160: reset chip when probing
+ - [arm64] mm: unaligned access by user-land should be received as SIGBUS
+ - cfg80211: check rdev resume callback only for registered wiphy
+ - CIFS: Reset TreeId to zero on SMB2 TREE_CONNECT
+ - mm/page_alloc.c: fix print order in show_free_areas()
+ - ptrace: fix PTRACE_LISTEN race corrupting task->state
+ - dm verity fec: limit error correction recursion
+ - dm verity fec: fix bufio leaks
+ - ACPI / gpio: do not fall back to parsing _CRS when we get a deferral
+ - xfs: Honor FALLOC_FL_KEEP_SIZE when punching ends of files
+ - ring-buffer: Fix return value check in test_ringbuffer()
+ - mac80211: unconditionally start new netdev queues with iTXQ support
+ - brcmfmac: use local iftype avoiding use-after-free of virtual interface
+ - [powerpc*] Disable HFSCR[TM] if TM is not supported
+ - [powerpc*] mm: Add missing global TLB invalidate if cxl is active
+ - [powerpc*/*64*]: Fix flush_(d|i)cache_range() called from modules
+ - [powerpc*] Don't try to fix up misaligned load-with-reservation
+ instructions
+ - [powerpc*] crypto/crc32c-vpmsum: Fix missing preempt_disable()
+ - dm raid: fix NULL pointer dereference for raid1 without bitmap
+ - [s390x] decompressor: fix initrd corruption caused by bss clear
+ - [s390x] uaccess: get_user() should zero on failure (again)
+ - [mips*el/loongson-3] Check TLB before handle_ri_rdhwr() for Loongson-3
+ - [mips*el/loongson-3] Add MIPS_CPU_FTLB for Loongson-3A R2
+ - [mips*el/loongson-3] Flush wrong invalid FTLB entry for huge page
+ - [mips*el/loongson-3] c-r4k: Fix Loongson-3's vcache/scache waysize
+ calculation
+ - mm/mempolicy.c: fix error handling in set_mempolicy and mbind
+ (CVE-2017-7616)
+ - random: use chacha20 for get_random_int/long
+ - [armhf] drm/sun4i: tcon: Move SoC specific quirks to a DT matched data
+ structure
+ - [armhf] drm/sun4i: Add compatible strings for A31/A31s display pipelines
+ - [armhf] drm/sun4i: Add compatible string for A31/A31s TCON (timing
+ controller)
+ - HID: i2c-hid: add a simple quirk to fix device defects
+ - usb: dwc3: gadget: delay unmap of bounced requests
+ - [x86] ASoC: Intel: bytct_rt5640: change default capture settings
+ - [armhf,arm64] clocksource/drivers/arm_arch_timer: Don't assume clock runs
+ in suspend
+ - scsi: ufs: introduce UFSHCD_QUIRK_PRDT_BYTE_GRAN quirk
+ - HID: multitouch: do not retrieve all reports for all devices
+ - [arm64] mmc: sdhci-msm: Enable few quirks
+ - scsi: ufs: ensure that host pa_tactivate is higher than device
+ - svcauth_gss: Close connection when dropping an incoming message
+ - scsi: ufs: add quirk to increase host PA_SaveConfigTime
+ - [x86] platform: acer-wmi: Only supports AMW0_GUID1 on acer family
+ - nvme: simplify stripe quirk
+ - ACPI / sysfs: Provide quirk mechanism to prevent GPE flooding
+ - HID: usbhid: Add quirk for the Futaba TOSD-5711BB VFD
+ - [x86] drm/i915: actually drive the BDW reserved IDs
+ - scsi: ufs: issue link starup 2 times if device isn't active
+ - [armhf] serial: 8250_omap: Add OMAP_DMA_TX_KICK quirk for AM437x
+ - ACPI / button: Change default behavior to lid_init_state=open
+ - [x86] ACPI: save NVS memory for Lenovo G50-45
+ - HID: wacom: don't apply generic settings to old devices
+ - [arm64] firmware: qcom: scm: Fix interrupted SCM calls
+ - [armhf] watchdog: s3c2410: Fix infinite interrupt in soft mode
+ - [x86] platform: asus-wmi: Set specified XUSB2PR value for X550LB
+ - [x86] platform: asus-wmi: Detect quirk_no_rfkill from the DSDT
+ - [x86] reboot/quirks: Add ASUS EeeBook X205TA reboot quirk
+ - [x86] reboot/quirks: Add ASUS EeeBook X205TA/W reboot quirk
+ - usb-storage: Add ignore-residue quirk for Initio INIC-3619
+ - [x86] reboot/quirks: Fix typo in ASUS EeeBook X205TA reboot quirk
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.23
+ - [x86] drm/i915/gen9: Increase PCODE request timeout to 50ms
+ - [x86] drm/i915: Nuke debug messages from the pipe update critical section
+ - [x86] drm/i915: Avoid tweaking evaluation thresholds on Baytrail v3
+ - [x86] drm/i915: Only enable hotplug interrupts if the display interrupts
+ are enabled
+ - [x86] drm/i915: Drop support for I915_EXEC_CONSTANTS_* execbuf parameters.
+ - [x86] drm/i915: Stop using RP_DOWN_EI on Baytrail
+ - [x86] drm/i915: Avoid rcu_barrier() from reclaim paths (shrinker)
+ - [armhf,arm64] i2c: bcm2835: Fix hang for writing messages larger than 16
+ bytes
+ - rt2x00usb: fix anchor initialization
+ - rt2x00usb: do not anchor rx and tx urb's
+ - [mips*] Introduce irq_stack
+ - [mips*] Stack unwinding while on IRQ stack
+ - [mips*] Only change $28 to thread_info if coming from user mode
+ - [mips*] Switch to the irq_stack in interrupts
+ - [mips*] Select HAVE_IRQ_EXIT_ON_IRQ_STACK
+ - [mips*] IRQ Stack: Fix erroneous jal to plat_irq_dispatch
+ - [x86] Revert "drm/i915/execlists: Reset RING registers upon resume"
+ - blk-mq: Avoid memory reclaim when remapping queues
+ - usb: hub: Wait for connection to be reestablished after port reset
+ - net/mlx4_en: Fix bad WQE issue
+ - net/mlx4_core: Fix racy CQ (Completion Queue) free
+ - net/mlx4_core: Fix when to save some qp context flags for dynamic VST to
+ VGT transitions
+ - dma-buf: add support for compat ioctl
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.24
+ - cgroup, kthread: close race window where new kthreads can be migrated to
+ non-root cgroups
+ - thp: fix MADV_DONTNEED vs. MADV_FREE race
+ - thp: fix MADV_DONTNEED vs clear soft dirty race
+ - zsmalloc: expand class bit
+ - drm/nouveau/mpeg: mthd returns true on success now
+ - drm/nouveau/mmu/nv4a: use nv04 mmu rather than the nv44 one
+ - [armhf] drm/etnaviv: fix missing unlock on error in etnaviv_gpu_submit()
+ - CIFS: reconnect thread reschedule itself
+ - CIFS: store results of cifs_reopen_file to avoid infinite wait
+ - Input: xpad - add support for Razer Wildcat gamepad
+ - [x86] perf: Avoid exposing wrong/stale data in intel_pmu_lbr_read_32()
+ - [x86] efi: Don't try to reserve runtime regions
+ - [x86] signals: Fix lower/upper bound reporting in compat siginfo
+ - [x86] pmem: fix broken __copy_user_nocache cache-bypass assumptions
+ - [x86] vdso: Ensure vdso32_enabled gets set to valid values only
+ - [x86] vdso: Plug race between mapping and ELF header setup
+ - [x86] acpi, nfit, libnvdimm: fix interleave set cookie calculation
+ (64-bit comparison)
+ - ACPI / scan: Set the visited flag for all enumerated devices
+ - [hppa] fix bugs in pa_memcpy
+ - efi/libstub: Skip GOP with PIXEL_BLT_ONLY format
+ - efi/fb: Avoid reconfiguration of BAR that covers the framebuffer
+ - iscsi-target: Fix TMR reference leak during session shutdown
+ - iscsi-target: Drop work-around for legacy GlobalSAN initiator
+ - scsi: sr: Sanity check returned mode data
+ - scsi: sd: Consider max_xfer_blocks if opt_xfer_blocks is unusable
+ - scsi: qla2xxx: Add fix to read correct register value for ISP82xx.
+ - scsi: sd: Fix capacity calculation with 32-bit sector_t
+ - target: Avoid mappedlun symlink creation during lun shutdown
+ - xen, fbfront: fix connecting to backend
+ - new privimitive: iov_iter_revert()
+ - make skb_copy_datagram_msg() et.al. preserve ->msg_iter on error
+ - [x86] libnvdimm: fix blk free space accounting
+ - [x86] libnvdimm: fix reconfig_mutex, mmap_sem, and jbd2_handle lockdep
+ splat
+ - [armhf] pwm: rockchip: State of PWM clock should synchronize with PWM
+ enabled state
+ - cpufreq: Bring CPUs up even if cpufreq_online() failed
+ - [armhf] irqchip/irq-imx-gpcv2: Fix spinlock initialization
+ - ftrace: Fix removing of second function probe
+ - zram: do not use copy_page with non-page aligned address
+ - ftrace: Fix function pid filter on instances
+ - crypto: algif_aead - Fix bogus request dereference in completion function
+ - crypto: ahash - Fix EINPROGRESS notification callback (CVE-2017-7618)
+ - [hppa] Fix get_user() for 64-bit value on 32-bit kernel
+ - dvb-usb-v2: avoid use-after-free (CVE-2017-8064)
+ - drm/nouveau/disp/mcp7x: disable dptmds workaround (Closes: #850219)
+ - [x86] mm: Tighten x86 /dev/mem with zeroing reads (CVE-2017-7889)
+ - dvb-usb-firmware: don't do DMA on stack (CVE-2017-8061)
+ - cxusb: Use a dma capable buffer also for reading (CVE-2017-8063)
+ - virtio-console: avoid DMA from stack (CVE-2017-8067)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.25
+ - KEYS: Disallow keyrings beginning with '.' to be joined as session
+ keyrings (CVE-2016-9604)
+ - KEYS: Change the name of the dead type to ".dead" to prevent user access
+ (CVE-2017-6951)
+ - KEYS: fix keyctl_set_reqkey_keyring() to not leak thread keyrings
+ (CVE-2017-7472)
+ - tracing: Allocate the snapshot buffer before enabling probe
+ - ring-buffer: Have ring_buffer_iter_empty() return true when empty
+ - mm: prevent NR_ISOLATE_* stats from going negative
+ - cifs: Do not send echoes before Negotiate is complete (Closes: #856843)
+ - CIFS: remove bad_network_name flag
+ - [s390x] mm: fix CMMA vs KSM vs others
+ - Input: elantech - add Fujitsu Lifebook E547 to force crc_enabled
+ - ACPI / power: Avoid maybe-uninitialized warning
+ - [armhf] mmc: sdhci-esdhc-imx: increase the pad I/O drive strength for
+ DDR50 card
+ - ubifs: Fix RENAME_WHITEOUT support
+ - ubifs: Fix O_TMPFILE corner case in ubifs_link()
+ - mac80211: reject ToDS broadcast data frames
+ - mac80211: fix MU-MIMO follow-MAC mode
+ - ubi/upd: Always flush after prepared for an update
+ - [powerpc*] kprobe: Fix oops when kprobed on 'stdu' instruction
+ - [x86] mce/AMD: Give a name to MCA bank 3 when accessed with legacy MSRs
+ - [x86] mce: Make the MCE notifier a blocking one
+ - device-dax: switch to srcu, fix rcu_read_lock() vs pte allocation
+
+ [ Ben Hutchings ]
+ * w1: Really enable W1_MASTER_GPIO as module (Closes: #858975)
+ * debian/rules.real: Undefine $LANGUAGE, which can break debug symbols for
+ vDSOs (Closes: #859807)
+ * Bump ABI to 3
+ * [s390x] Set NR_CPUS=256 (Closes: #858731)
+ * [x86] usbip: Increase USBIP_VHCI_NR_HCS to 8 and USBIP_VHCI_HC_PORTS to 31
+ (Closes: #859641)
+ * [powerpc/powerpc64,ppc64*] target: Enable SCSI_IBMVSCSIS as module
+ * cpupower: Fix turbo frequency reporting for pre-Sandy Bridge cores
+ (Closes: #859978)
+ * udeb: Include all AHCI drivers in sata-modules (Closes: #860335)
+ * [powerpc/powerpc64,ppc64] Set NR_CPUS=2048, matching ppc64el
+ * [powerpc*/*64*] Enable CPUMASK_OFFSTACK to reduce stack usage
+ * [mips*el/loongson-3] Set NR_CPUS=16 to allow for Loongson 3B2000
+ * [mips*/octeon] Set NR_CPUS=64 to allow for Cavium CN7890
+ * [arm64] Set NR_CPUS=256 to allow for multi-SoC systems (Closes: #861209)
+ * [powerpc/powerpc-smp,powerpcspe] Explicitly set NR_CPUS=4
+ * Move debug symbols back to the main archive, to avoid problems with the
+ current handling in dak
+ * linux-image: Disable signing until it's supported in dak
+ * [rt] Update to 4.9.20-rt16:
+ - rtmutex: Make lock_killable work
+ - rtmutex: Provide rt_mutex_lock_state()
+ - rtmutex: Provide locked slowpath
+ - rwsem/rt: Lift single reader restriction
+ * PCI: Enable PCIE_PTM (except on armel/marvell)
+ * 6lowpan: Enable Generic Header Compression modules
+ * net/sched: Enable NET_ACT_SKBMOD as module
+ * ethernet: Enable NFP_NETVF as module
+ * net/phy: Enable MICROSEMI_PHY as module
+ * input/tablet: Enable TABLET_USB_PEGASUS as module
+ * [x86] input/touchscreen: Enable TOUCHSCREEN_SURFACE3_SPI as module
+ * serial/8250: Enable SERIAL_8250_MOXA as module
+ * [x86] gpio: Enable GPIO_AMDPT as module
+ * [x86] thermal: Enable INT3406_THERMAL as module
+ * watchdog: Enable WATCHDOG_SYSFS
+ * integrity: Enable IMA, IMA_DEFAULT_HASH_SHA256, IMA_APPRAISE,
+ IMA_KEYRINGS_PERMIT_SIGNED_BY_BUILTIN_OR_SECONDARY, IMA_BLACKLIST_KEYRING
+ (except on armel/marvell) (Closes: #788290)
+ * media: Enable VIDEO_TW5864, VIDEO_TW686X as modules
+ * [x86] amdgpu,sound/soc: Enable DRM_AMD_ACP; enable SND_SOC_AMD_ACP as module
+ * hda: Set SND_HDA_PREALLOC_SIZE=2048 as recommended for PulseAudio
+ * HID: Enable HID_SENSOR_CUSTOM_SENSOR as module
+ * leds,USB: Enable USB_LEDS_TRIGGER_USBPORT as module
+ * usbip: Enable USBIP_VUDC as module
+ * USB/misc: Enable UCSI as module
+ * leds: Enable LEDS_TRIGGER_DISK, LEDS_TRIGGER_MTD, LEDS_TRIGGER_PANIC
+ * IB: Enable INFINIBAND_HFI1, INFINIBAND_I40IW, INFINIBAND_QEDR, RDMA_RXE
+ as modules
+ * [amd64] EDAC: Enable EDAC_SKX as module
+ * [x86] comedi: Enable COMEDI_ADV_PCI1720, COMEDI_ADV_PCI1760 as modules
+ * [x86] platform: Enable INTEL_HID_EVENT as module
+ * [x86] hwtracing: Enable INTEL_TH, INTEL_TH_PCI, INTEL_TH_GTH, INTEL_TH_MSU,
+ INTEL_TH_PTI as modules
+ * [rt] tracing: Enable HWLAT_TRACER
+ * [x86] crypto: Enable CRYPTO_DEV_QAT_C3XXX, CRYPTO_DEV_QAT_C62X,
+ CRYPTO_DEV_QAT_C3XXXVF, CRYPTO_DEV_QAT_C62XVF as modules
+ * crypto: Enable CRYPTO_DEV_CHELSIO as module
+ * [arm64] Enable ARMV8_DEPRECATED, SWP_EMULATION, CP15_BARRIER_EMULATION,
+ SETEND_EMULATION (Closes: #861384)
+ * udeb: Add tifm_7xx1 to mmc-modules (Closes: #861195)
+ * leds: Enable LEDS_GPIO as module for all configurations with GPIOs
+ (Closes: #860569)
+ * selinux: Set SECURITY_SELINUX_CHECKREQPROT_VALUE=0, per default.
+ This may break some old applications if SELinux is enabled, and can be
+ reverted using the kernel parameter: checkreqprot=1
+ * udeb: Move mfd-core to kernel-image, as both input-modules and
+ mmc-modules need it
+ * crypto: Change CRYPTO_SHA256 from module to built-in, as required by IMA
+
+ [ Salvatore Bonaccorso ]
+ * ping: implement proper locking (CVE-2017-2671)
+ * macsec: avoid heap overflow in skb_to_sgvec (CVE-2017-7477)
+ * macsec: dynamically allocate space for sglist
+ * nfsd: check for oversized NFSv2/v3 arguments (CVE-2017-7645)
+ * nfsd4: minor NFSv2/v3 write decoding cleanup
+ * nfsd: stricter decoding of write-like NFSv2/v3 ops (CVE-2017-7895)
+
+ [ Aurelien Jarno ]
+ * [mips*/octeon] Drop obsolete patch adding support for the UBNT E200
+ board.
+ * [mips*el/loongson-3] Disable PAGE_EXTENSION and PAGE_POISONING.
+
+ [ John Paul Adrian Glaubitz ]
+ * [m68k] udeb: Enable suffix for kernel-image (Closes: #859366)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 02 May 2017 16:21:44 +0100
+
+linux (4.9.18-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.17
+ - net/mlx5e: Register/unregister vport representors on interface
+ attach/detach
+ - net/mlx5e: Do not reduce LRO WQE size when not using build_skb
+ - net/mlx5e: Fix wrong CQE decompression
+ - vxlan: correctly validate VXLAN ID against VXLAN_N_VID
+ - vti6: return GRE_KEY for vti6
+ - vxlan: don't allow overwrite of config src addr
+ - ipv4: mask tos for input route
+ - net sched actions: decrement module reference count after table flush.
+ - l2tp: avoid use-after-free caused by l2tp_ip_backlog_recv
+ - net: phy: Avoid deadlock during phy_error()
+ - vxlan: lock RCU on TX path
+ - geneve: lock RCU on TX path
+ - tcp/dccp: block BH for SYN processing
+ - net: bridge: allow IPv6 when multicast flood is disabled
+ - net: don't call strlen() on the user buffer in packet_bind_spkt()
+ - net: net_enable_timestamp() can be called from irq contexts
+ - ipv6: orphan skbs in reassembly unit
+ - dccp: Unlock sock before calling sk_free()
+ - strparser: destroy workqueue on module exit
+ - tcp: fix various issues for sockets morphing to listen state
+ - net: fix socket refcounting in skb_complete_wifi_ack()
+ - net: fix socket refcounting in skb_complete_tx_timestamp()
+ - net/sched: act_skbmod: remove unneeded rcu_read_unlock in tcf_skbmod_dump
+ - dccp: fix use-after-free in dccp_feat_activate_values
+ - vrf: Fix use-after-free in vrf_xmit
+ - net/tunnel: set inner protocol in network gro hooks
+ - act_connmark: avoid crashing on malformed nlattrs with null parms
+ - mpls: Send route delete notifications when router module is unloaded
+ - mpls: Do not decrement alive counter for unregister events
+ - ipv6: make ECMP route replacement less greedy
+ - ipv6: avoid write to a possibly cloned skb
+ - bridge: drop netfilter fake rtable unconditionally
+ - dccp/tcp: fix routing redirect race
+ - tun: fix premature POLLOUT notification on tun devices
+ - dccp: fix memory leak during tear-down of unsuccessful connection request
+ - bpf: Detect identical PTR_TO_MAP_VALUE_OR_NULL registers
+ - bpf: fix state equivalence
+ - bpf: fix regression on verifier pruning wrt map lookups
+ - bpf: fix mark_reg_unknown_value for spilled regs on map value marking
+ - dmaengine: iota: ioat_alloc_chan_resources should not perform sleeping
+ allocations.
+ - xen: do not re-use pirq number cached in pci device msi msg data
+ - igb: Workaround for igb i210 firmware issue
+ - igb: add i211 to i210 PHY workaround
+ - [x86] hyperv: Handle unknown NMIs on one CPU when unknown_nmi_panic
+ - PCI: Separate VF BAR updates from standard BAR updates
+ - PCI: Remove pci_resource_bar() and pci_iov_resource_bar()
+ - PCI: Decouple IORESOURCE_ROM_ENABLE and PCI_ROM_ADDRESS_ENABLE
+ - PCI: Don't update VF BARs while VF memory space is enabled
+ - PCI: Update BARs using property bits appropriate for type
+ - PCI: Ignore BAR updates on virtual functions
+ - PCI: Do any VF BAR updates before enabling the BARs
+ - [powerpc*] ibmveth: calculate gso_segs for large packets
+ - [x86] Drivers: hv: ring_buffer: count on wrap around mappings in
+ get_next_pkt_raw() (v2)
+ - vfio/spapr: Postpone allocation of userspace version of TCE table
+ - [powerpc*] iommu: Stop using @current in mm_iommu_xxx
+ - [powerpc*] vfio/spapr: Reference mm in tce_container
+ - [powerpc*] mm/iommu, vfio/spapr: Put pages on VFIO container shutdown
+ - [powerpc*] vfio/spapr: Add a helper to create default DMA window
+ - [powerpc*] vfio/spapr: Postpone default window creation
+ - drm/nouveau/disp/gp102: fix cursor/overlay immediate channel indices
+ - drm/nouveau/disp/nv50-: split chid into chid.ctrl and chid.user
+ - drm/nouveau/disp/nv50-: specify ctrl/user separately when constructing
+ classes
+ - block: allow WRITE_SAME commands with the SG_IO ioctl
+ - [s390x] zcrypt: Introduce CEX6 toleration
+ - uvcvideo: uvc_scan_fallback() for webcams with broken chain
+ - [x86] ACPI / blacklist: add _REV quirks for Dell Precision 5520 and 3520
+ - [x86] ACPI / blacklist: Make Dell Latitude 3350 ethernet work
+ - serial: 8250_pci: Detach low-level driver during PCI error recovery
+ - [armhf] clk: bcm2835: Fix ->fixed_divider of pllh_aux
+ - [armhf] drm/vc4: Fix race between page flip completion event and clean-up
+ - [armhf] drm/vc4: Fix ->clock_select setting for the VEC encoder
+ - [arm64] KVM: VHE: Clear HCR_TGE when invalidating guest TLBs
+ - [armhf,arm64] irqchip/gicv3-its: Add workaround for QDF2400 ITS erratum
+ 0065
+ - [x86] tsc: Fix ART for TSC_KNOWN_FREQ
+ - [x86] perf: Fix CR4.PCE propagation to use active_mm instead of mm
+ - futex: Fix potential use-after-free in FUTEX_REQUEUE_PI
+ - futex: Add missing error handling to FUTEX_REQUEUE_PI
+ - locking/rwsem: Fix down_write_killable() for
+ CONFIG_RWSEM_GENERIC_SPINLOCK=y
+ - [powerpc*] crypto: Fix initialisation of crc32c context
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.18
+ - [armhf] drm/vc4: Fix termination of the initial scan for branch targets.
+ - [armhf] drm/vc4: Use runtime autosuspend to avoid thrashing V3D power
+ state.
+ - qla2xxx: Fix memory leak for abts processing
+ - qla2xxx: Fix request queue corruption.
+ - [hppa] Optimize flush_kernel_vmap_range and invalidate_kernel_vmap_range
+ - [hppa] Fix system shutdown halt
+ - perf/core: Fix use-after-free in perf_release()
+ - perf/core: Fix event inheritance on fork()
+ - NFS prevent double free in async nfs4_exchange_id
+ - cpufreq: Fix and clean up show_cpuinfo_cur_freq()
+ - [powerpc*] boot: Fix zImage TOC alignment
+ - md/raid1/10: fix potential deadlock
+ - target/pscsi: Fix TYPE_TAPE + TYPE_MEDIMUM_CHANGER export
+ - scsi: lpfc: Add shutdown method for kexec
+ - scsi: libiscsi: add lock around task lists to fix list corruption
+ regression
+ - target: Fix VERIFY_16 handling in sbc_parse_cdb
+ - isdn/gigaset: fix NULL-deref at probe
+ - gfs2: Avoid alignment hole in struct lm_lockname
+ - percpu: acquire pcpu_lock when updating pcpu_nr_empty_pop_pages
+ - cgroup/pids: remove spurious suspicious RCU usage warning
+ - [x86] drm/amdgpu/si: add dpm quirk for Oland
+ - ext4: fix fencepost in s_first_meta_bg validation (Closes: #856808)
+
+ [ Ben Hutchings ]
+ * [powerpc*] Ignore ABI changes in cxl (fixes FTBFS) (Closes: #858530)
+ and IOMMU setup
+ * Ignore ABI changes in bpf, dccp, libiscsi
+ * [x86] Ignore ABI changes in kvm
+ * [rt] Update to 4.9.18-rt14:
+ - lockdep: Fix per-cpu static objects
+ - futex: Cleanup variable names for futex_top_waiter()
+ - futex: Use smp_store_release() in mark_wake_futex()
+ - futex: Remove rt_mutex_deadlock_account_*()
+ - futex,rt_mutex: Provide futex specific rt_mutex API
+ - futex: Change locking rules
+ - futex: Cleanup refcounting
+ - futex: Rework inconsistent rt_mutex/futex_q state
+ - futex: Pull rt_mutex_futex_unlock() out from under hb->lock
+ - futex,rt_mutex: Introduce rt_mutex_init_waiter()
+ - futex,rt_mutex: Restructure rt_mutex_finish_proxy_lock()
+ - futex: Rework futex_lock_pi() to use rt_mutex_*_proxy_lock()
+ - futex: Futex_unlock_pi() determinism
+ - futex: Drop hb->lock before enqueueing on the rtmutex
+ - futex: workaround migrate_disable/enable in different context
+ - Revert "kernel/futex: don't deboost too early"
+ * xfrm_user: validate XFRM_MSG_NEWAE XFRMA_REPLAY_ESN_VAL replay_window
+ (CVE-2017-7184)
+ * xfrm_user: validate XFRM_MSG_NEWAE incoming ESN size harder (CVE-2017-7184)
+ * scsi: sg: check length passed to SG_NEXT_CMD_LEN (CVE-2017-7187)
+ * [x86] vmwgfx: NULL pointer dereference in vmw_surface_define_ioctl()
+ (CVE-2017-7261)
+ * [x86] drm/vmwgfx: fix integer overflow in vmw_surface_define_ioctl()
+ (CVE-2017-7294)
+ * net/packet: Fix integer overflow in various range checks (CVE-2017-7308)
+ * [arm64] rtc: tegra: Implement clock handling (Closes: #858514)
+ * [armhf] sound/soc: Enable SND_SUN4I_SPDIF as module (Closes: #857410)
+ * [arm64,x86] Enable CROS_KBD_LED_BACKLIGHT as module (Closes: #856906)
+ * netfilter: nft_ct: add notrack support (Closes: #845500)
+ * w1: Enable W1_MASTER_GPIO as module (Closes: #858975)
+
+ [ James Clarke ]
+ * [sparc64] udeb: Re-add ufs-modules (Closes: #858049)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 30 Mar 2017 02:16:33 +0100
+
+linux (4.9.16-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.14
+ - [mips*] Fix special case in 64 bit IP checksumming.
+ - [mips*/octeon] Fix copy_from_user fault handling for large buffers
+ - mmc: sdhci-acpi: support deferred probe
+ - uvcvideo: Fix a wrong macro
+ - media: fix dm1105.c build error
+ - lirc_dev: LIRC_{G,S}ET_REC_MODE do not work
+ - media: Properly pass through media entity types in entity enumeration
+ - ext4: fix deadlock between inline_data and ext4_expand_extra_isize_ea()
+ - [x86] ALSA: hda/realtek - Cannot adjust speaker's volume on a Dell AIO
+ - [x86] ALSA: hda - fix Lewisburg audio issue
+ - ALSA: timer: Reject user params with too small ticks
+ - ALSA: ctxfi: Fallback DMA mask to 32bit
+ - ALSA: seq: Fix link corruption by event error handling
+ - [x86] ALSA: hda - Add subwoofer support for Dell Inspiron 17 7000 Gaming
+ - [x86] ALSA: hda - Fix micmute hotkey problem for a lenovo AIO machine
+ - hwmon: (it87) Do not overwrite bit 2..6 of pwm control registers
+ - hwmon: (it87) Ensure that pwm control cache is current before updating
+ values
+ - [x86] staging/lustre/lnet: Fix allocation size for sv_cpt_data
+ - staging: rtl: fix possible NULL pointer dereference
+ - regulator: Fix regulator_summary for deviceless consumers
+ - tpm_tis: fix the error handling of init_tis()
+ - [x86] iommu/vt-d: Fix some macros that are incorrectly specified in
+ intel-iommu
+ - [x86] iommu/vt-d: Tylersburg isoch identity map check is done too late.
+ - CIFS: Fix splice read for non-cached files
+ - [x86] mm, devm_memremap_pages: hold device_hotplug lock over
+ mem_hotplug_{begin, done}
+ - mm/page_alloc: fix nodes for reclaim in fast path
+ - mm: vmpressure: fix sending wrong events on underflow
+ - mm: do not access page->mapping directly on page_endio
+ - mm balloon: umount balloon_mnt when removing vb device
+ - mm, vmscan: cleanup lru size claculations
+ - mm, vmscan: consider eligible zones in get_scan_count
+ - sigaltstack: support SS_AUTODISARM for CONFIG_COMPAT
+ - PM / devfreq: Fix available_governor sysfs
+ - PM / devfreq: Fix wrong trans_stat of passive devfreq device
+ - dm cache: fix corruption seen when using cache > 2TB
+ - dm stats: fix a leaked s->histogram_boundaries array
+ - dm round robin: revert "use percpu 'repeat_count' and 'current_path'"
+ - dm raid: fix data corruption on reshape request
+ - [x86] scsi: storvsc: use tagged SRB requests if supported by the device
+ - [x86] scsi: storvsc: properly handle SRB_ERROR when sense message is
+ present
+ - [x86] scsi: storvsc: properly set residual data length on errors
+ - scsi: aacraid: Reorder Adapter status check
+ - scsi: use 'scsi_device_from_queue()' for scsi_dh
+ - Fix: Disable sys_membarrier when nohz_full is enabled
+ - jbd2: don't leak modified metadata buffers on an aborted journal
+ - block/loop: fix race between I/O and set_status
+ - loop: fix LO_FLAGS_PARTSCAN hang
+ - ext4: Include forgotten start block on fallocate insert range
+ - ext4: do not polute the extents cache while shifting extents
+ - ext4: trim allocation requests to group size
+ - ext4: fix data corruption in data=journal mode
+ - ext4: fix use-after-iput when fscrypt contexts are inconsistent
+ - ext4: fix inline data error paths
+ - ext4: preserve the needs_recovery flag when the journal is aborted
+ - ext4: return EROFS if device is r/o and journal replay is needed
+ - mei: remove support for broken parallel read
+ - ath10k: fix boot failure in UTF mode/testmode
+ - ath5k: drop bogus warning on drv_set_key with unsupported cipher
+ - ath9k: fix race condition in enabling/disabling IRQs
+ - ath9k: use correct OTP register offsets for the AR9340 and AR9550
+ - [x86] PCI: hv: Fix wslot_to_devfn() to fix warnings on device removal
+ - [x86] Drivers: hv: vmbus: Raise retry/wait limits in vmbus_post_msg()
+ - perf callchain: Reference count maps
+ - crypto: testmgr - Pad aes_ccm_enc_tv_template vector
+ - fuse: add missing FR_FORCE
+ - [x86] pkeys: Check against max pkey to avoid overflows
+ - [armhf,arm64] KVM: Enforce unconditional flush to PoC when mapping to
+ stage-2
+ - [arm64] dma-mapping: Fix dma_mapping_error() when bypassing SWIOTLB
+ - [arm64] fix erroneous __raw_read_system_reg() cases
+ - [armhf,arm64] KVM: vgic: Stop injecting the MSI occurrence twice
+ - can: gs_usb: Don't use stack memory for USB transfers
+ - can: usb_8dev: Fix memory leak of priv->cmd_msg_buffer
+ - w1: don't leak refcount on slave attach failure in
+ w1_attach_slave_device()
+ - w1: ds2490: USB transfer buffers need to be DMAable
+ - usb: dwc3: gadget: skip Set/Clear Halt when invalid
+ - usb: host: xhci: plat: check hcc_params after add hcd
+ - usb: gadget: udc-core: Rescan pending list on driver unbind
+ - usb: gadget: f_hid: fix: Free out requests
+ - usb: gadget: f_hid: fix: Prevent accessing released memory
+ - usb: gadget: f_hid: Use spinlock instead of mutex
+ - [x86] hv: allocate synic pages for all present CPUs
+ - [x86] hv: init percpu_list in hv_synic_alloc()
+ - [x86] hv: don't reset hv_context.tsc_page on crash
+ - [x86] Drivers: hv: vmbus: Prevent sending data on a rescinded channel
+ - [x86] Drivers: hv: vmbus: Fix a rescind handling bug
+ - [x86] Drivers: hv: util: kvp: Fix a rescind processing issue
+ - [x86] Drivers: hv: util: Fcopy: Fix a rescind processing issue
+ - [x86] Drivers: hv: util: Backup: Fix a rescind processing issue
+ - RDMA/core: Fix incorrect structure packing for booleans
+ - rdma_cm: fail iwarp accepts w/o connection params
+ - gfs2: Add missing rcu locking for glock lookup
+ - [arm64] remoteproc: qcom: mdt_loader: Don't overwrite firmware object
+ - rtlwifi: Fix alignment issues
+ - rtlwifi: rtl8192c-common: Fix "BUG: KASAN:
+ - [m68k] VME: restore bus_remove function causing incomplete module unload
+ - nfsd: minor nfsd_setattr cleanup
+ - nfsd: special case truncates some more
+ - NFSv4: Fix memory and state leak in _nfs4_open_and_get_state
+ - NFSv4: Fix reboot recovery in copy offload
+ - pNFS/flexfiles: If the layout is invalid, it must be updated before
+ retrying
+ - NFSv4: fix getacl head length estimation
+ - NFSv4: fix getacl ERANGE for some ACL buffer sizes
+ - f2fs: fix a problem of using memory after free
+ - f2fs: fix multiple f2fs_add_link() calls having same name
+ - f2fs: add ovp valid_blocks check for bg gc victim to fg_gc
+ - f2fs: avoid to issue redundant discard commands
+ - [armhf] rtc: sun6i: Disable the build as a module
+ - [armhf] rtc: sun6i: Add some locking
+ - [armhf] rtc: sun6i: Switch to the external oscillator
+ - md linear: fix a race between linear_add() and linear_congested()
+ - bcma: use (get|put)_device when probing/removing device driver
+ - [armhf] dmaengine: ipu: Make sure the interrupt routine checks all
+ interrupts.
+ - xprtrdma: Fix Read chunk padding
+ - xprtrdma: Per-connection pad optimization
+ - xprtrdma: Disable pad optimization by default
+ - xprtrdma: Reduce required number of send SGEs
+ - [powerpc*] xmon: Fix data-breakpoint
+ - [powerpc*] mm: Add MMU_FTR_KERNEL_RO to possible feature mask
+ - [powerpc*] mm/hash: Always clear UPRT and Host Radix bits when setting up
+ CPU
+ - scsi: lpfc: Correct WQ creation for pagesize
+ - ceph: update readpages osd request according to size of pages
+ - netfilter: conntrack: remove GC_MAX_EVICTS break
+ - netfilter: conntrack: refine gc worker heuristics, redux
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.15
+ - tty: n_hdlc: get rid of racy n_hdlc.tbuf (CVE-2017-2636)
+ (Closes: #858122)
+ - serial: 8250_pci: Add MKS Tenta SCOM-0800 and SCOM-0801 cards
+ - [s390x] KVM: Disable dirty log retrieval for UCONTROL guests
+ - [x86] KVM: VMX: use correct vmcs_read/write for guest segment
+ selector/base
+ - Bluetooth: Add another AR3012 04ca:3018 device
+ - [s390x] qdio: clear DSCI prior to scanning multiple input queues
+ - [s390x] dcssblk: fix device size calculation in dcssblk_direct_access()
+ - [s390x] kdump: Use "LINUX" ELF note name instead of "CORE"
+ - [s390x] chsc: Add exception handler for CHSC instruction
+ - [s390x] TASK_SIZE for kernel threads
+ - [s390x] make setup_randomness work
+ - [s390x] use correct input data address for setup_randomness
+ - [armhf] net: mvpp2: fix DMA address calculation in mvpp2_txq_inc_put()
+ - [powerpc*] cxl: Prevent read/write to AFU config space while AFU not
+ configured
+ - [powerpc*] cxl: fix nested locking hang during EEH hotplug
+ - brcmfmac: fix incorrect event channel deduction
+ - mnt: Tuck mounts under others instead of creating shadow/side mounts.
+ - IB/ipoib: Fix deadlock between rmmod and set_mode
+ - IB/IPoIB: Add destination address when re-queue packet
+ - IB/mlx5: Fix out-of-bound access
+ - IB/SRP: Avoid using IB_MR_TYPE_SG_GAPS
+ - IB/srp: Avoid that duplicate responses trigger a kernel bug
+ - IB/srp: Fix race conditions related to task management
+ - fs: Better permission checking for submounts
+ - ceph: remove req from unsafe list when unregistering it
+ - [powerpc*] pci/hotplug/pnv-php: Remove WARN_ON() in pnv_php_put_slot()
+ - [powerpc*] pci/hotplug/pnv-php: Disable surprise hotplug capability on
+ conflicts
+ - target: Fix NULL dereference during LUN lookup + active I/O shutdown
+ - [powerpc*] drivers/pci/hotplug: Handle presence detection change
+ properly
+ - [powerpc*] drivers/pci/hotplug: Fix initial state for empty slot
+ - nlm: Ensure callback code also checks that the files match
+ - nfit, libnvdimm: fix interleave set cookie calculation
+ - mac80211: flush delayed work when entering suspend
+ - mac80211: don't reorder frames with SN smaller than SSN
+ - mac80211: don't handle filtered frames within a BA session
+ - mac80211: use driver-indicated transmitter STA only for data frames
+ - [x86] drm/amdgpu: add more cases to DCE11 possible crtc mask setup
+ - [arm64,powerpc*,x86] drm/ast: Fix test for VGA enabled
+ - [arm64,powerpc*,x86] drm/ast: Call open_key before enable_mmio in POST
+ code
+ - [arm64,powerpc*,x86] drm/ast: Fix AST2400 POST failure without BMC FW or
+ VBIOS
+ - drm/edid: Add EDID_QUIRK_FORCE_8BPC quirk for Rotel RSX-1058
+ - [x86] drm/vmwgfx: Work around drm removal of control nodes
+ - [armhf] dmaengine: imx-sdma - correct the dma transfer residue
+ calculation
+ - drm/atomic: fix an error code in mode_fixup()
+ - [x86] drm/i915/gvt: Disable access to stolen memory as a guest
+ - drm: Cancel drm_fb_helper_dirty_work on unload
+ - drm: Cancel drm_fb_helper_resume_work on unload
+ - [x86] drm/i915: Avoid spurious WARNs about the wrong pipe in the PPS
+ code
+ - [x86] drm/i915: Fix not finding the VBT when it overlaps with
+ OPREGION_ASLE_EXT
+ - libceph: use BUG() instead of BUG_ON(1)
+ - [x86] mm: fix gup_pte_range() vs DAX mappings
+ - [x86] tlb: Fix tlb flushing when lguest clears PGE
+ - thp: fix another corner case of munlock() vs. THPs
+ - mm: do not call mem_cgroup_free() from within mem_cgroup_alloc()
+ - fat: fix using uninitialized fields of fat_inode/fsinfo_inode
+ - [x86] drivers: hv: Turn off write permission on the hypercall page
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.16
+ - USB: serial: digi_acceleport: fix OOB data sanity check
+ - USB: serial: digi_acceleport: fix OOB-event processing
+ - crypto: improve gcc optimization flags for serpent and wp512
+ - ucount: Remove the atomicity from ucount->count (CVE-2017-6874)
+ - dw2102: don't do DMA on stack
+ - i2c: add missing of_node_put in i2c_mux_del_adapters
+ - [ppc64el] Emulation support for load/store instructions on LE
+ - [powerpc*] xics: Work around limitations of OPAL XICS priority handling
+ - PCI: Prevent VPD access for QLogic ISP2722
+ - usb: gadget: dummy_hcd: clear usb_gadget region before registration
+ - usb: dwc3: gadget: make Set Endpoint Configuration macros safe
+ - [armhf] usb: dwc3-omap: Fix missing break in dwc3_omap_set_mailbox()
+ - usb: gadget: function: f_fs: pass companion descriptor along
+ - Revert "usb: gadget: uvc: Add missing call for additional setup data"
+ - usb: host: xhci-plat: Fix timeout on removal of hot pluggable xhci
+ controllers
+ - USB: serial: safe_serial: fix information leak in completion handler
+ - USB: serial: omninet: fix reference leaks at open
+ - USB: iowarrior: fix NULL-deref at probe (CVE-2016-2188)
+ - USB: iowarrior: fix NULL-deref in write
+ - USB: serial: io_ti: fix NULL-deref in interrupt callback
+ - USB: serial: io_ti: fix information leak in completion handler
+ - [armhf] serial: samsung: Continue to work if DMA request fails
+ - [s390x] KVM: Fix guest migration for huge guests resulting in panic
+ - [armhf.arm64] KVM: Let vcpu thread modify its own active state
+ - dm: flush queued bios when process blocks to avoid deadlock
+ - rc: raw decoder for keymap protocol is not loaded on register
+ - ext4: don't BUG when truncating encrypted inodes on the orphan list
+ - IB/mlx5: Verify that Q counters are supported
+
+ [ Ben Hutchings ]
+ * [media] dvb-usb: don't use stack for firmware load or reset
+ (Closes: #853894)
+ * Kbuild.include: addtree: Remove quotes before matching path
+ (regression in 4.8) (Closes: #856474)
+ * [rt] Update to 4.9.13-rt12:
+ - timer/hrtimer: check properly for a running timer
+ * [rt] Refresh one patch that had a textual conflict with 4.9.14
+ * Ignore various ABI changes that shouldn't affect OOT modules
+ * userns: Avoid ABI change for CVE-2017-6874 fix
+ * [amd64] Don't WARN about expected W+X pages on Xen (see #852324)
+ * fjes: Disable auto-loading, as this driver matches a very common ACPI ID
+ (Closes: #853976)
+
+ [ Salvatore Bonaccorso ]
+ * ACPI / EC: Use busy polling mode when GPE is not enabled.
+ Thanks to Jakobus Schurz <jakobus.schurz@gmail.com> (Closes: #846792)
+ * Ignore ABI changes for acpi_ec_{add,remove}_query_handler
+ * Ignore ABI change for first_ec (not declared in public header)
+
+ [ Helge Deller ]
+ * [hppa] Switch to debian default config option for bonding, irda and atalk
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 22 Mar 2017 17:01:40 +0100
+
+linux (4.9.13-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.11
+ - can: Fix kernel panic at security_sock_rcv_skb
+ - net/mlx5e: Fix update of hash function/key via ethtool
+ - net/sched: matchall: Fix configuration race
+ - ipv6: fix ip6_tnl_parse_tlv_enc_lim()
+ - ipv6: pointer math error in ip6_tnl_parse_tlv_enc_lim()
+ - tcp: fix 0 divide in __tcp_select_window()
+ - stmmac: Discard masked flags in interrupt status register
+ - net: use a work queue to defer net_disable_timestamp() work
+ - netlabel: out of bound access in cipso_v4_validate()
+ - ip6_gre: fix ip6gre_err() invalid reads (CVE-2017-5897)
+ - ipv6: tcp: add a missing tcp_v6_restore_cb()
+ - tcp: avoid infinite loop in tcp_splice_read() (CVE-2017-6214)
+ - tun: read vnet_hdr_sz once
+ - macvtap: read vnet_hdr_size once
+ - rtl8150: Use heap buffers for all register access
+ - catc: Combine failure cleanup code in catc_probe()
+ - catc: Use heap buffer for memory size test
+ - mlx4: Invoke softirqs after napi_reschedule
+ - lwtunnel: valid encap attr check should return 0 when lwtunnel
+ is disabled
+ - sit: fix a double free on error path
+ - net: introduce device min_header_len
+ - packet: round up linear to header len
+ - ping: fix a null pointer dereference
+ - net: dsa: Do not destroy invalid network devices
+ - l2tp: do not use udp_ioctl()
+ - mld: do not remove mld souce list info when set link down
+ - igmp, mld: Fix memory leak in igmpv3/mld_del_delrec()
+ - tcp: fix mark propagation with fwmark_reflect enabled
+ - net/mlx5: Don't unlock fte while still using it
+ - tcp: don't annotate mark on control socket from
+ tcp_v6_send_response()
+ - [x86] fpu/xstate: Fix xcomp_bv in XSAVES header
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.12
+ - vfs: fix uninitialized flags in splice_to_pipe()
+ - siano: make it work again with CONFIG_VMAP_STACK
+ - fuse: fix use after free issue in fuse_dev_do_read()
+ - fuse: fix uninitialized flags in pipe_buffer
+ - mmc: core: fix multi-bit bus width without high-speed mode
+ - [powerpc*/*64*] Disable use of radix under a hypervisor
+ - scsi: don't BUG_ON() empty DMA transfers
+ - Fix missing sanity check in /dev/sg
+ - [x86] Input: elan_i2c - add ELAN0605 to the ACPI table
+ - drm/radeon: Use mode h/vdisplay fields to hide out of bounds HW cursor
+ - drm/dp/mst: fix kernel oops when turning off secondary monitor
+ - futex: Move futex_init() to core_initcall
+ - [armel,armhf] 8658/1: uaccess: fix zeroing of 64-bit get_user()
+ - Revert "i2c: designware: detect when dynamic tar update is possible"
+ - PCI/PME: Restore pcie_pme_driver.remove
+ - printk: use rcuidle console tracepoint
+ - timekeeping: Use deferred printk() in debug code
+ - bcache: Make gc wakeup sane, remove set_task_state()
+ - videodev2.h: go back to limited range Y'CbCr for SRGB and, ADOBERGB
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.13
+ - net/mlx5e: Disable preemption when doing TC statistics upcall
+ - net/llc: avoid BUG_ON() in skb_orphan() (CVE-2017-6345)
+ - net: ethernet: ti: cpsw: fix cpsw assignment in resume
+ (regression in 4.9)
+ - packet: fix races in fanout_add() (CVE-2017-6346)
+ - packet: Do not call fanout_release from atomic contexts
+ (regression in 4.9)
+ - net: neigh: Fix netevent NETEVENT_DELAY_PROBE_TIME_UPDATE notification
+ - dccp: fix freeing skb too early for IPV6_RECVPKTINFO (CVE-2017-6074)
+ - vxlan: fix oops in dev_fill_metadata_dst (regression in 4.6)
+ - irda: Fix lockdep annotations in hashbin_delete(). (CVE-2017-6348)
+ - ptr_ring: fix race conditions when resizing
+ - ip: fix IP_CHECKSUM handling (regression in 4.0) (CVE-2017-6347)
+ - net: socket: fix recvmmsg not returning error from sock_error
+ (regression in 4.6)
+ - USB: serial: mos7840: fix another NULL-deref at open
+ - USB: serial: ftdi_sio: fix modem-status error handling
+ - USB: serial: ftdi_sio: fix extreme low-latency setting
+ - USB: serial: ftdi_sio: fix line-status over-reporting
+ - USB: serial: spcp8x5: fix modem-status handling
+ - USB: serial: opticon: fix CTS retrieval at open
+ - USB: serial: ark3116: fix register-accessor error handling
+ - netfilter: nf_ct_helper: warn when not applying default helper assignment
+ - block: fix double-free in the failure path of cgwb_bdi_init()
+ - rtlwifi: rtl_usb: Fix for URB leaking when doing ifconfig up/down
+ - xfs: clear delalloc and cache on buffered write failure
+
+ [ Ben Hutchings ]
+ * [armel] dts: kirkwood: Fix SATA pinmux-ing for TS419 (Closes: #855017)
+ * [armhf] Enable DRM_OMAP_PANEL_TPO_TD028TTEC1, PWM_OMAP_DMTIMER as modules
+ (Closes: #855472)
+ * net: Ignore ABI changes to can_rx_register(), ip6_xmit()
+ * net: Avoid ABI change for min_header_len
+ * udeb: Add more USB host and dual-role drivers to usb-modules
+ (Closes: #856111)
+ * [x86] kvm: fix page struct leak in handle_vmon (CVE-2017-2596)
+ * ipc/shm: Fix shmat mmap nil-page protection (CVE-2017-5669)
+ * time: Disable TIMER_STATS (CVE-2017-5967)
+ * sctp: deny peeloff operation on asocs with threads sleeping on it
+ (CVE-2017-6353)
+ * [rt] Update to 4.9.13-rt10:
+ - sched/rt: Add a missing rescheduling point
+ - lockdep: Handle statically initialized PER_CPU locks proper
+ - Change export of rt_mutex_destroy() back to GPL-only
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 27 Feb 2017 15:58:07 +0000
+
+linux (4.9.10-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.7
+ - drm: Schedule the output_poll_work with 1s delay if we have delayed event
+ - drm: Fix broken VT switch with video=1366x768 option
+ - [x86] drm/i915: Ignore bogus plane coordinates on SKL when the plane is
+ not visible
+ - [armhf,arm64] drm/vc4: Fix memory leak of the CRTC state.
+ - [armhf,arm64] drm/vc4: fix a bounds check
+ - Revert "drm/radeon: always apply pci shutdown callbacks"
+ - drm/atomic: clear out fence when duplicating state
+ - mm/huge_memory.c: respect FOLL_FORCE/FOLL_COW for thp
+ - mm/mempolicy.c: do not put mempolicy before using its nodemask
+ - mm, page_alloc: fix check for NULL preferred_zone
+ - mm, page_alloc: fix fast-path race with cpuset update or removal
+ - mm, page_alloc: move cpuset seqcount checking to slowpath
+ - mm, page_alloc: fix premature OOM when racing with cpuset mems update
+ - userns: Make ucounts lock irq-safe
+ - sysctl: fix proc_doulongvec_ms_jiffies_minmax()
+ - xfs: prevent quotacheck from overloading inode lru
+ - ISDN: eicon: silence misleading array-bounds warning
+ - Btrfs: remove old tree_root case in btrfs_read_locked_inode()
+ - Btrfs: disable xattr operations on subvolume directories
+ - Btrfs: remove ->{get, set}_acl() from btrfs_dir_ro_inode_operations
+ - RDMA/cma: Fix unknown symbol when CONFIG_IPV6 is not enabled
+ - [s390x] mm: Fix cmma unused transfer from pgste into pte
+ - [s390x] ptrace: Preserve previous registers for short regset write
+ - IB/cxgb3: fix misspelling in header guard
+ - IB/iser: Fix sg_tablesize calculation
+ - IB/srp: fix mr allocation when the device supports sg gaps
+ - IB/srp: fix invalid indirect_sg_entries parameter value
+ - can: c_can_pci: fix null-pointer-deref in c_can_start() - set device
+ pointer
+ - can: ti_hecc: add missing prepare and unprepare of the clock
+ - [hppa] Don't use BITS_PER_LONG in userspace-exported swab.h header
+ - nfs: Don't increment lock sequence ID after NFS4ERR_MOVED
+ - NFSv4.1: Fix a deadlock in layoutget
+ - NFSv4.0: always send mode in SETATTR after EXCLUSIVE4
+ - SUNRPC: cleanup ida information when removing sunrpc module
+ - iw_cxgb4: free EQ queue memory on last deref
+ - pctv452e: move buffer to heap, no mutex
+ - v4l: tvp5150: Reset device at probe time, not in get/set format handlers
+ - v4l: tvp5150: Fix comment regarding output pin muxing
+ - v4l: tvp5150: Don't override output pinmuxing at stream on/off time
+ - [x86] drm/i915: Clear ret before unbinding in i915_gem_evict_something()
+ - [x86] drm/i915: prevent crash with .disable_display parameter
+ - [x86] drm/i915: Don't leak edid in intel_crt_detect_ddc()
+ - [x86] drm/i915: Don't init hpd polling for vlv and chv from
+ runtime_suspend()
+ - [x86] drm/i915: Fix calculation of rotated x and y offsets for planar
+ formats
+ - [x86] drm/i915: Check for NULL atomic state in
+ intel_crtc_disable_noatomic()
+ - IB/umem: Release pid in error and ODP flow
+ - [x86] pinctrl: baytrail: Rectify debounce support
+ - memory_hotplug: make zone_can_shift() return a boolean value
+ - virtio_mmio: Set DMA masks appropriately
+ - mm, memcg: do not retry precharge charges
+ - perf/core: Fix concurrent sys_perf_event_open() vs. 'move_group' race
+ (CVE-2017-6001)
+ - [x86] drm/i915: Remove WaDisableLSQCROPERFforOCL KBL workaround.
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.8
+ - r8152: fix the sw rx checksum is unavailable
+ - [x86] netvsc: add rcu_read locking to netvsc callback
+ - net: lwtunnel: Handle lwtunnel_fill_encap failure
+ - net: ipv4: fix table id in getroute response
+ - tcp: fix tcp_fastopen unaligned access complaints on sparc
+ - openvswitch: maintain correct checksum state in conntrack actions
+ - mlx4: do not call napi_schedule() without care
+ - ip6_tunnel: Account for tunnel header in tunnel MTU
+ - ax25: Fix segfault after sock connection timeout
+ - net sched actions: fix refcnt when GETing of action after bind
+ - virtio: don't set VIRTIO_NET_HDR_F_DATA_VALID on xmit
+ - virtio-net: restore VIRTIO_HDR_F_DATA_VALID on receiving
+ - vxlan: fix byte order of vxlan-gpe port number
+ - net: fix harmonize_features() vs NETIF_F_HIGHDMA
+ - lwtunnel: fix autoload of lwt modules
+ - ipv6: addrconf: Avoid addrconf_disable_change() using RCU read-side lock
+ - tcp: initialize max window for a new fastopen socket
+ - net/mlx5e: Do not recycle pages from emergency reserve
+ - bridge: netlink: call br_changelink() during br_dev_newlink()
+ - net: mpls: Fix multipath selection for LSR use case
+ - r8152: don't execute runtime suspend if the tx is not empty
+ - af_unix: move unix_mknod() out of bindlock
+ - net: Specify the owning module for lwtunnel ops
+ - lwtunnel: Fix oops on state free after encap module unload
+ - [armhf] net: dsa: Bring back device detaching in dsa_slave_suspend()
+ - xfs: bump up reserved blocks in xfs_alloc_set_aside
+ - xfs: fix bogus minleft manipulations
+ - xfs: adjust allocation length in xfs_alloc_space_available
+ - xfs: don't rely on ->total in xfs_alloc_space_available
+ - xfs: don't print warnings when xfs_log_force fails
+ - xfs: make the ASSERT() condition likely
+ - xfs: sanity check directory inode di_size
+ - xfs: add missing include dependencies to xfs_dir2.h
+ - xfs: replace xfs_mode_to_ftype table with switch statement
+ - xfs: sanity check inode mode when creating new dentry
+ - xfs: sanity check inode di_mode
+ - xfs: don't wrap ID in xfs_dq_get_next_id
+ - xfs: fix xfs_mode_to_ftype() prototype
+ - xfs: fix COW writeback race
+ - xfs: verify dirblocklog correctly
+ - xfs: remove racy hasattr check from attr ops
+ - xfs: extsize hints are not unlikely in xfs_bmap_btalloc
+ - xfs: clear _XBF_PAGES from buffers when readahead page
+ - xfs: fix bmv_count confusion w/ shared extents
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.9
+ - PCI/ASPM: Handle PCI-to-PCIe bridges as roots of PCIe hierarchies
+ - ext4: validate s_first_meta_bg at mount time (CVE-2016-10208)
+ - [x86] efi: Always map the first physical page into the EFI pagetables
+ - [arm64] efi/fdt: Avoid FDT manipulation after ExitBootServices()
+ (Closes: #853170)
+ - HID: cp2112: fix sleep-while-atomic
+ - HID: cp2112: fix gpio-callback error handling
+ - [x86] pinctrl: baytrail: Add missing spinlock usage in
+ byt_gpio_irq_handler
+ - [x86] drm/amdgpu/si: fix crash on headless asics
+ - drm/nouveau/disp/gt215: Fix HDA ELD handling (thus, HDMI audio) on gt215
+ - drm/nouveau/nv1a,nv1f/disp: fix memory clock rate retrieval
+ - crypto: api - Clear CRYPTO_ALG_DEAD bit before registering an alg
+ - crypto: arm64/aes-blk - honour iv_out requirement in CBC and CTR modes
+ - perf/core: Fix use-after-free bug
+ - perf/core: Fix PERF_RECORD_MMAP2 prot/flags for anonymous memory
+ - ata: sata_mv:- Handle return value of devm_ioremap.
+ - libata: apply MAX_SEC_1024 to all CX1-JB*-HP devices
+ - libata: Fix ATA request sense
+ - [powerpc*] eeh: Fix wrong flag passed to eeh_unfreeze_pe()
+ - [powerpc*] Add missing error check to prom_find_boot_cpu()
+ - [powerpc*] mm: Use the correct pointer when setting a 2MB pte
+ - NFSD: Fix a null reference case in find_or_create_lock_stateid()
+ - svcrpc: fix oops in absence of krb5 module
+ - zswap: disable changing params if init fails
+ - cifs: initialize file_info_lock
+ - mm/memory_hotplug.c: check start_pfn in test_pages_in_a_zone()
+ - base/memory, hotplug: fix a kernel oops in show_valid_zones()
+ - mm, fs: check for fatal signals in do_generic_file_read()
+ - tracing: Fix hwlat kthread migration
+ - can: bcm: fix hrtimer/tasklet termination in bcm op removal
+ - cgroup: don't online subsystems before cgroup_name/path() are operational
+ - mmc: sdhci: Ignore unexpected CARD_INT interrupts
+ - vhost: fix initialization for vq->is_le
+ - [armhf] regulator: axp20x: AXP806: Fix dcdcb being set instead of dcdce
+ - percpu-refcount: fix reference leak during percpu-atomic transition
+ - [x86] pinctrl: baytrail: Debounce register is one per community
+ - [x86] pinctrl: intel: merrifield: Add missed check in mrfld_config_set()
+ - iwlwifi: fix double hyphen in MODULE_FIRMWARE for 8000
+ - iwlwifi: mvm: avoid crash on restart w/o reserved queues
+ - HID: usbhid: Quirk a AMI virtual mouse and keyboard with ALWAYS_POLL
+ - HID: hid-lg: Fix immediate disconnection of Logitech Rumblepad 2
+ - HID: wacom: Fix poor prox handling in 'wacom_pl_irq'
+ - [x86] perf/intel/uncore: Clean up hotplug conversion fallout
+ - [armhf] dmaengine: cppi41: Fix runtime PM timeouts with USB mass storage
+ - [armhf] dmaengine: cppi41: Fix oops in cppi41_runtime_resume
+ - [x86] KVM: do not save guest-unsupported XSAVE state
+ - USB: Add quirk for WORLDE easykey.25 MIDI keyboard
+ - usb: musb: Fix host mode error -71 regression
+ - usb: gadget: f_fs: Assorted buffer overflow checks.
+ - irqdomain: Avoid activating interrupts more than once
+ - [x86] irq: Make irq activate operations symmetric
+ - iw_cxgb4: set correct FetchBurstMax for QPs
+ - fs: break out of iomap_file_buffered_write on fatal signals
+ - [x86] drm/i915/execlists: Reset RING registers upon resume
+ (Closes: #855055)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.10
+ - [x86] cpufreq: intel_pstate: Disable energy efficiency optimization
+ - acpi, nfit: fix acpi_nfit_flush_probe() crash
+ - [x86] libnvdimm, namespace: do not delete namespace-id 0
+ - [x86] libnvdimm, pfn: fix memmap reservation size versus 4K alignment
+ - dm rq: cope with DM device destruction while in dm_old_request_fn()
+ - crypto: algif_aead - Fix kernel panic on list_del
+ - [x86] crypto: qat - fix bar discovery for c62x
+ - [x86] crypto: qat - zero esram only for DH85x devices
+ - [x86] crypto: ccp - Fix DMA operations when IOMMU is enabled
+ - [x86] crypto: ccp - Fix double add when creating new DMA command
+ - Input: uinput - fix crash when mixing old and new init style
+ - selinux: fix off-by-one in setprocattr (CVE-2017-2618)
+ - [x86] Revert "x86/ioapic: Restore IO-APIC irq_chip retrigger callback"
+ - rtlwifi: rtl8192ce: Fix loading of incorrect firmware (Closes: #853073)
+ - cpumask: use nr_cpumask_bits for parsing functions (Closes: #848682)
+ - [armel,armhf] 8643/3: arm/ptrace: Preserve previous registers for short
+ regset write
+ - [x86] drm/i915: fix use-after-free in page_flip_completed()
+ - [x86] drm/i915/bxt: Add MST support when do DPLL calculation
+ - drm/atomic: Fix double free in drm_atomic_state_default_clear
+ - target: Don't BUG_ON during NodeACL dynamic -> explicit conversion
+ - target: Use correct SCSI status during EXTENDED_COPY exception
+ - target: Fix early transport_generic_handle_tmr abort scenario
+ - target: Fix multi-session dynamic se_node_acl double free OOPs
+ - target: Fix COMPARE_AND_WRITE ref leak for non GOOD status
+ - [armhf] dts: imx6dl: fix GPIO4 range
+ - [armhf] 8642/1: LPAE: catch pending imprecise abort on unmask
+ - [x86] drm/i915: Always convert incoming exec offsets to non-canonical
+ - nl80211: Fix mesh HT operation check
+ - mac80211: Fix adding of mesh vendor IEs
+ - net/mlx5e: Modify TIRs hash only when it's needed
+ - [x86] Drivers: hv: vmbus: Base host signaling strictly on the ring state
+ - [x86] Drivers: hv: vmbus: On write cleanup the logic to interrupt the host
+ - [x86] Drivers: hv: vmbus: On the read path cleanup the logic to interrupt
+ the host
+ - [x86] Drivers: hv: vmbus: finally fix hv_need_to_signal_on_read()
+ - [s390x] scsi: zfcp: fix use-after-free by not tracing WKA port open/close
+ on failed send
+ - scsi: aacraid: Fix INTx/MSI-x issue with older controllers
+ - scsi: mpt3sas: disable ASPM for MPI2 controllers
+ - scsi: qla2xxx: Avoid that issuing a LIP triggers a kernel crash
+ - btrfs: fix btrfs_compat_ioctl failures on non-compat ioctls
+ - [powerpc*] mm/radix: Update ERAT flushes when invalidating TLB
+ - [powerpc*] powernv: Fix CPU hotplug to handle waking on HVI
+ - xen-netfront: Delete rx_refill_timer in xennet_disconnect_backend()
+ - ALSA: hda - adding a new NV HDMI/DP codec ID in the driver
+ - ALSA: seq: Fix race at creating a queue
+ - ALSA: seq: Don't handle loop timeout at snd_seq_pool_done()
+ - Revert "ALSA: line6: Only determine control port properties if needed"
+ - [x86] mm/ptdump: Fix soft lockup in page table walker
+ - [x86] CPU/AMD: Bring back Compute Unit ID
+ - [x86] CPU/AMD: Fix Zen SMT topology
+ - IB/rxe: Fix resid update
+ - IB/rxe: Fix mem_check_range integer overflow (CVE-2016-8636)
+ - stacktrace, lockdep: Fix address, newline ugliness
+ - perf diff: Fix -o/--order option behavior (again)
+ - perf diff: Fix segfault on 'perf diff -o N' option
+ - perf/core: Fix crash in perf_event_read()
+
+ [ Ben Hutchings ]
+ * Bump ABI to 2
+ * [or1k] Remove configuration, as the port has been abandoned
+ * [arm64] Enable KEXEC (Closes: #852747)
+ * [arm64,armhf,x86] usb: gadget: Enable USB_CONFIGFS, USB_ETH, USB_GADGETFS,
+ USB_FUNCTIONFS, USB_G_SERIAL as modules;
+ USB_CONFIGFS_{SERIAL,ACM,OBEX,NCM,ECM,ECM_SUBSET,RNDIS,EEM,PHONET,MASS_STORAGE},
+ USB_CONFIGFS_F_{LB_SS,LS,UAC1,UAC2,MIDI,HID,UVC,PRINTER}, USB_ETH_RNDIS,
+ USB_FUNCTIONFS_{ETH,RNDIS,GENERIC} (thanks to Riku Voipio)
+ * [ppc64el] Disable IBMEBUS; this bus does not exist on POWER8 systems
+ * aufs: Update support patchset to aufs4.9-20170206
+ * [rt] Update to 4.9.9-rt6:
+ - Revert "btrfs: swap free() and trace point in run_ordered_work()"
+ - pinctrl: qcom: Use raw spinlock variants
+ - x86/mm/cpa: avoid wbinvd() for PREEMPT
+ - Revert "radix-tree: Make RT aware"
+ - radix-tree: use local locks
+ - softirq: wake the timer softirq if needed
+ - timers: Don't wake ktimersoftd on every tick
+ - rt: Drop mutex_disable() on !DEBUG configs and the GPL suffix from export
+ symbol
+ - cpuset: Convert callback_lock to raw_spinlock_t
+ * pegasus: Use heap buffers for all register access (Closes: #852556)
+ * test-patches: Use the pkg.linux.notools build profile
+ * test-patches: Set default number of jobs to number of available processors
+ * dccp: Disable auto-loading as mitigation against local exploits
+ * net: ipv6: check route protocol when deleting routes (Closes: #855153)
+ * [arm64] drm: Enable DRM_AST as module (Closes: #820168)
+ - udeb: Add ast to fb-modules
+ * [armel/marvell] hwmon: Enable SENSORS_G762 as module (Closes: #854662)
+ * [m68k] Change MAC8390, MAC_SCSI from built-in to modules (Closes: #826614)
+ - udeb: Add mac8390 to nic-shared-modules
+ * udeb: Add bcache to md-modules (Closes: #718548)
+ * [x86] platform: acer-wmi: setup accelerometer when machine has appropriate
+ notify event (Closes: #853067)
+ * [x86] xen: Fix APIC id mismatch warning on Intel (Closes: #853193)
+ * media: dvb-usb-dibusb-mc-common: Add MODULE_LICENSE (Closes: #853110)
+
+ [ Roger Shimizu ]
+ * [armel] ARM: dts: orion5x-lschl: Fix model name
+ * [armel] ARM: dts: orion5x-lschl: More consistent naming on linkstation
+ series
+ * [armel] ARM: orion5x: fix Makefile for linkstation-lschl.dtb
+
+ [ Salvatore Bonaccorso ]
+ * ipv4: keep skb->dst around in presence of IP options (CVE-2017-5970)
+ * sctp: avoid BUG_ON on sctp_wait_for_sndbuf (CVE-2017-5986)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 17 Feb 2017 13:18:17 +0000
+
+linux (4.9.6-3) unstable; urgency=medium
+
+ * btree,musb,st_sensors: Ignore ABI changes (fixes FTBFS on armel,armhf)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 28 Jan 2017 16:11:16 +0000
+
+linux (4.9.6-2) unstable; urgency=medium
+
+ * linux-cpupower: Use dh-exec architecture filtering for x86-specific files
+ (fixes FTBFS on !x86)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 27 Jan 2017 22:09:50 +0000
+
+linux (4.9.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.3
+ - iio: common: st_sensors: fix channel data parsing
+ - [mips] staging: octeon: Call SET_NETDEV_DEV()
+ - ALSA: hda - Fix up GPIO for ASUS ROG Ranger
+ - ALSA: hda - Apply asus-mode8 fixup to ASUS X71SL
+ - ALSA: usb-audio: Fix irq/process data synchronization
+ - fscrypt: fix renaming and linking special files
+ - [hppa/parisc] Add line-break when printing segfault info
+ - [hppa/parisc] Mark cr16 clocksource unstable on SMP systems
+ - HID: sensor-hub: Move the memset to sensor_hub_get_feature()
+ - mac80211: initialize fast-xmit 'info' later
+ - asm-prototypes: Clear any CPP defines before declaring the functions
+ - [x86] drm/i915: Fix oopses in the overlay code due to i915_gem_active
+ stuff
+ - [x86] drm/i915: Fix oops in overlay due to frontbuffer tracking
+ - [x86] drm/i915: Force VDD off on the new power seqeuencer before
+ starting to use it
+ - [x86] drm/i915: Initialize overlay->last_flip properly
+ - [x86] KVM: reset MMU on KVM_SET_VCPU_EVENTS
+ - [armhf] usb: musb: core: add clear_ep_rxintr() to musb_platform_ops
+ - [armhf] usb: musb: dsps: implement clear_ep_rxintr() callback
+ - usb: storage: unusual_uas: Add JMicron JMS56x to unusual device
+ - usb: gadgetfs: restrict upper bound on device configuration size
+ - USB: gadgetfs: fix unbounded memory allocation bug
+ - USB: gadgetfs: fix use-after-free bug
+ - USB: gadgetfs: fix checks of wTotalLength in config descriptors
+ - USB: fix problems with duplicate endpoint addresses
+ - usb: gadget: composite: Test get_alt() presence instead of set_alt()
+ - [arm64, armhf] usb: dwc3: core: avoid Overflow events
+ - usb: xhci: fix possible wild pointer
+ - [x86] usb: xhci: apply XHCI_PME_STUCK_QUIRK to Intel Apollo Lake
+ - xhci: free xhci virtual devices with leaf nodes first
+ - usb: xhci: fix return value of xhci_setup_device()
+ - usb: host: xhci: Fix possible wild pointer when handling abort command
+ - xhci: Handle command completion and timeout race
+ - usb: xhci: hold lock over xhci_abort_cmd_ring()
+ - USB: serial: omninet: fix NULL-derefs at open and disconnect
+ - USB: serial: quatech2: fix sleep-while-atomic in close
+ - USB: serial: pl2303: fix NULL-deref at open
+ - USB: serial: keyspan_pda: verify endpoints at probe
+ - USB: serial: spcp8x5: fix NULL-deref at open
+ - USB: serial: io_ti: fix NULL-deref at open
+ - USB: serial: io_ti: fix another NULL-deref at open
+ - USB: serial: io_ti: fix I/O after disconnect
+ - USB: serial: iuu_phoenix: fix NULL-deref at open
+ - USB: serial: garmin_gps: fix memory leak on failed URB submit
+ - USB: serial: ti_usb_3410_5052: fix NULL-deref at open
+ - USB: serial: io_edgeport: fix NULL-deref at open
+ - USB: serial: oti6858: fix NULL-deref at open
+ - USB: serial: cyberjack: fix NULL-deref at open
+ - USB: serial: kobil_sct: fix NULL-deref in write
+ - USB: serial: mos7840: fix NULL-deref at open
+ - USB: serial: mos7720: fix NULL-deref at open
+ - USB: serial: mos7720: fix use-after-free on probe errors
+ - USB: serial: mos7720: fix parport use-after-free on probe errors
+ - USB: serial: mos7720: fix parallel probe
+ - usb: xhci-mem: use passed in GFP flags instead of GFP_KERNEL
+ - xhci: Use delayed_work instead of timer for command timeout
+ - xhci: Fix race related to abort operation
+ - [armhf] usb: musb: Fix trying to free already-free IRQ 4
+ - usb: hub: Move hub_port_disable() to fix warning if PM is disabled
+ - usb: gadget: udc: core: fix return code of usb_gadget_probe_driver()
+ - ALSA: usb-audio: Fix bogus error return in snd_usb_create_stream()
+ - USB: serial: kl5kusb105: abort on open exception path
+ - usb: gadget: Fix second argument of percpu_ida_alloc()
+ - usb: gadget: fix request length error for isoc transfer
+ - [armhf] dts: sun7i: bananapi-m1-plus: Enable USB PHY for USB host
+ support
+ - dibusb: fix possible memory leak in dibusb_rc_query()
+ - USB: serial: io_ti: bind to interface after fw download
+ - [x86] mei: move write cb to completion on credentials failures
+ - iio: accel: st_accel: fix LIS3LV02 reading and scaling
+ - [arm64, armhf] usb: dwc3: ep0: add dwc3_ep0_prepare_one_trb()
+ - [arm64, armhf] usb: dwc3: ep0: explicitly call
+ dwc3_ep0_prepare_one_trb()
+ - [arm64, armhf] usb: dwc3: gadget: always unmap EP0 requests
+ - [x86] drm/i915/dp: add lane_count check in intel_dp_check_link_status
+ - [x86] drm/i915: tune down the fast link training vs boot fail
+ - mac80211: fix tid_agg_rx NULL dereference
+ - nl80211: Use different attrs for BSSID and random MAC addr in scan req
+ - ath10k: fix failure to send NULL func frame for 10.4
+ - ath10k: use the right length of "background"
+ - efi/efivar_ssdt_load: Don't return success on allocation failure
+ - debugfs: improve DEFINE_DEBUGFS_ATTRIBUTE for !CONFIG_DEBUG_FS
+ - [x86] prctl/uapi: Remove #ifdef for CHECKPOINT_RESTORE
+ - [x86] cpu: Probe CPUID leaf 6 even when cpuid_level == 6
+ - [x86] platform/x86: fujitsu-laptop: use brightness_set_blocking for
+ LED-setting callbacks
+ - hwmon: (amc6821) sign extension temperature
+ - hwmon: (ds620) Fix overflows seen when writing temperature limits
+ - [armhf] hwmon: (g762) Fix overflows and crash seen when writing limit
+ attributes
+ - hwmon: (lm90) fix temp1_max_alarm attribute
+ - Input: synaptics-rmi4 - unlock on error
+ - [armhf] clk: ti: dra7: fix "failed to lookup clock node
+ gmac_gmii_ref_clk_div" boot message
+ - [amd64] iommu/amd: Missing error code in amd_iommu_init_device()
+ - [amd64] iommu/amd: Fix the left value check of cmd buffer
+ - [x86] iommu/vt-d: Fix pasid table size encoding
+ - [x86] iommu/vt-d: Flush old iommu caches for kdump when the device gets
+ context mapped
+ - [x86] ASoC: cht_bsw_rt5645: Fix leftover kmalloc
+ - [x86] ASoC: Intel: Skylake: Fix a shift wrapping bug
+ - scsi: mvsas: fix command_active typo
+ - target/iscsi: Fix double free in lio_target_tiqn_addtpg()
+ - sbp-target: Fix second argument of percpu_ida_alloc()
+ - relay: check array offset before using it
+ - PCI/MSI: Check for NULL affinity mask in pci_irq_get_affinity()
+ - PM / wakeirq: Fix dedicated wakeirq for drivers not using autosuspend
+ - genirq/affinity: Fix node generation from cpumask
+ - mm/hugetlb.c: use the right pte val for compare in hugetlb_cow
+ - docs-rst: fix LaTeX \DURole renewcommand with Sphinx 1.3+
+ - mm: khugepaged: close use-after-free race during shmem collapsing
+ - mm: khugepaged: fix radix tree node leak in shmem collapse error path
+ - mm, compaction: fix NR_ISOLATED_* stats for pfn based migration
+ - [s390x] crypto: unlock on error in prng_tdes_read()
+ - [arm64] crypto: sha2-ce - fix for big endian
+ - [arm64] crypto: ghash-ce - fix for big endian
+ - [arm64] crypto: aes-ccm-ce: fix for big endian
+ - [arm64] crypto: sha1-ce - fix for big endian
+ - [arm64] crypto: aes-xts-ce: fix for big endian
+ - [arm64] crypto: aes-ce - fix for big endian
+ - md: MD_RECOVERY_NEEDED is set for mddev->recovery
+ - md: fix refcount problem on mddev when stopping array.
+ - f2fs: remove percpu_count due to performance regression
+ - f2fs: hide a maybe-uninitialized warning
+ - PCI: Add Mellanox device IDs
+ - PCI: Convert broken INTx masking quirks from HEADER to FINAL
+ - PCI: Convert Mellanox broken INTx quirks to be for listed devices only
+ - PCI: Support INTx masking on ConnectX-4 with firmware x.14.1100+
+ - PCI: Enable access to non-standard VPD for Chelsio devices (cxgb3)
+ - [powerpc/powerpc64,ppc64*] pci/rpadlpar: Fix device reference leaks
+ - [s390x] topology: always use s390 specific sched_domain_topology_level
+ - [s390x] pci: fix dma address calculation in map_sg
+ - drm/radeon: Always store CRTC relative radeon_crtc->cursor_x/y values
+ - [x86] drm/i915: disable PSR by default on HSW/BDW
+ - [x86] drm/i915/gen9: unconditionally apply the memory bandwidth WA
+ - [x86] drm/i915/gen9: fix the WM memory bandwidth WA for Y tiling cases
+ - xfs: don't call xfs_sb_quota_from_disk twice
+ - xfs: check return value of _trans_reserve_quota_nblks
+ - xfs: don't skip cow forks w/ delalloc blocks in cowblocks scan
+ - xfs: don't BUG() on mixed direct and mapped I/O
+ - xfs: provide helper for counting extents from if_bytes
+ - xfs: check minimum block size for CRC filesystems
+ - xfs: fix unbalanced inode reclaim flush locking
+ - xfs: new inode extent list lookup helpers
+ - xfs: factor rmap btree size into the indlen calculations
+ - xfs: always succeed when deduping zero bytes
+ - xfs: remove prev argument to xfs_bmapi_reserve_delalloc
+ - xfs: track preallocation separately in xfs_bmapi_reserve_delalloc()
+ - xfs: use new extent lookup helpers in __xfs_reflink_reserve_cow
+ - xfs: clean up cow fork reservation and tag inodes correctly
+ - xfs: use new extent lookup helpers xfs_file_iomap_begin_delay
+ - xfs: pass post-eof speculative prealloc blocks to bmapi
+ - xfs: Move AGI buffer type setting to xfs_read_agi
+ - xfs: pass state not whichfork to trace_xfs_extlist
+ - xfs: handle cow fork in xfs_bmap_trace_exlist
+ - xfs: forbid AG btrees with level == 0
+ - xfs: check for bogus values in btree block headers
+ - xfs: complain if we don't get nextents bmap records
+ - xfs: don't crash if reading a directory results in an unexpected hole
+ - xfs: error out if trying to add attrs and anextents > 0
+ - xfs: don't allow di_size with high bit set
+ - xfs: don't cap maximum dedupe request length
+ - xfs: ignore leaf attr ichdr.count in verifier during log replay
+ - xfs: use GPF_NOFS when allocating btree cursors
+ - xfs: fix double-cleanup when CUI recovery fails
+ - xfs: use the actual AG length when reserving blocks
+ - xfs: fix crash and data corruption due to removal of busy COW extents
+ - xfs: fix max_retries _show and _store functions
+ - clocksource/dummy_timer: Move hotplug callback after the real timers
+ - tick/broadcast: Prevent NULL pointer dereference
+ - Revert "rtlwifi: Fix enter/exit power_save"
+ - Revert "usb: gadget: composite: always set ep->mult to a sensible value"
+ - usb: gadget: composite: always set ep->mult to a sensible value
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.4
+ - net: vrf: Fix NAT within a VRF
+ - net: vrf: Drop conntrack data after pass through VRF device on Tx
+ - sctp: sctp_transport_lookup_process should rcu_read_unlock when transport
+ is null
+ - inet: fix IP(V6)_RECVORIGDSTADDR for udp sockets
+ - ipv6: handle -EFAULT from skb_copy_bits
+ - net, sched: fix soft lockup in tc_classify
+ - [arm64, armhf] net: stmmac: Fix race between stmmac_drv_probe and
+ stmmac_open
+ - net/sched: cls_flower: Fix missing addr_type in classify
+ - net/mlx5: Check FW limitations on log_max_qp before setting it
+ - net/mlx5: Cancel recovery work in remove flow
+ - net/mlx5: Avoid shadowing numa_node
+ - net/mlx5: Mask destination mac value in ethtool steering rules
+ - net/mlx5: Prevent setting multicast macs for VFs
+ - net/mlx5e: Don't sync netdev state when not registered
+ - net/mlx5e: Disable netdev after close
+ - rtnl: stats - add missing netlink message size checks
+ - net: fix incorrect original ingress device index in PKTINFO
+ - net: ipv4: dst for local input routes should use l3mdev if relevant
+ - drop_monitor: add missing call to genlmsg_end
+ - drop_monitor: consider inserted data in genlmsg_end
+ - flow_dissector: Update pptp handling to avoid null pointer deref.
+ - igmp: Make igmp group member RFC 3376 compliant
+ - ipv4: Do not allow MAIN to be alias for new LOCAL w/ custom rules
+ - net: vrf: Add missing Rx counters
+ - [x86] bpf: change back to orig prog on too many passes
+ - [armhf] net: dsa: bcm_sf2: Do not clobber b53_switch_ops
+ - [armhf] net: dsa: bcm_sf2: Utilize nested MDIO read/write
+ - r8152: split rtl8152_suspend function
+ - r8152: fix rx issue for runtime suspend
+ - [armhf] net: dsa: Ensure validity of dst->ds[0]
+ - net: add the AF_QIPCRTR entries to family name tables
+ - gro: Enter slow-path if there is no tailroom
+ - gro: use min_t() in skb_gro_reset_offset()
+ - gro: Disable frag0 optimization on IPv6 ext headers
+ - net/mlx5e: Remove WARN_ONCE from adaptive moderation code
+ - net: ipv4: Fix multipath selection with vrf
+ - net: vrf: do not allow table id 0
+ - HID: hid-cypress: validate length of report
+ - ALSA: firewire-tascam: Fix to handle error from initialization of stream
+ data
+ - [powerpc] Fix build warning on 32-bit PPC
+ - [arm64] dts: mt8173: Fix auxadc node
+ - [arm64] dts: bcm2837-rpi-3-b: remove incorrect pwr LED
+ - [arm64] dts: bcm2835: Fix bcm2837 compatible string
+ - svcrdma: Clear xpt_bc_xps in xprt_setup_rdma_bc() error exit arm
+ - [armhf] OMAP5: Fix mpuss_early_init
+ - [armhf] OMAP5: Fix build for PM code
+ - [armhf] OMAP4+: Fix bad fallthrough for cpuidle
+ - [armhf] omap2+: am437x: rollback to use omap3_gptimer_timer_init()
+ - [armel/marvell, armhf] spi: mvebu: fix baudrate calculation for armada
+ variant
+ - ALSA: usb-audio: Add a quirk for Plantronics BT600
+ - [x86] drm/i915/gen9: Fix PCODE polling during CDCLK change notification
+ - rtlwifi: Fix enter/exit power_save
+ - rtlwifi: rtl_usb: Fix missing entry in USB driver's private data
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.5
+ - Input: xpad - use correct product id for x360w controllers
+ - Input: i8042 - add Pegatron touchpad to noloop table
+ - [armhf] regulator: axp20x: Fix axp809 ldo_io registration error on cold
+ boot
+ - [arm64, armhf] drm/tegra: dpaux: Fix error handling
+ - [arm64, armhf] drm/vc4: Fix a couple error codes in vc4_cl_lookup_bos()
+ - drm/savage: dereferencing an error pointer
+ - zram: revalidate disk under init_lock
+ - zram: support BDI_CAP_STABLE_WRITES
+ - dax: fix deadlock with DAX 4k holes
+ - mm: pmd dirty emulation in page fault handler
+ - mm: fix devm_memremap_pages crash, use mem_hotplug_{begin, done}
+ - ocfs2: fix crash caused by stale lvb with fsdlm plugin
+ - mm, memcg: fix the active list aging for lowmem requests when memcg is
+ enabled
+ - mm: support anonymous stable page
+ - mm/slab.c: fix SLAB freelist randomization duplicate entries
+ (CVE-2017-5546)
+ - mm/hugetlb.c: fix reservation race when freeing surplus pages
+ - [x86] KVM: fix emulation of "MOV SS, null selector" (CVE-2017-2583)
+ - KVM: eventfd: fix NULL deref irqbypass consumer
+ - jump_labels: API for flushing deferred jump label updates
+ - [x86] KVM: flush pending lapic jump label updates on module unload
+ - [x86] KVM: fix NULL deref in vcpu_scan_ioapic
+ - [x86] KVM: add Align16 instruction flag
+ - [x86] KVM: add asm_safe wrapper
+ - [x86] KVM: emulate FXSAVE and FXRSTOR
+ - [x86] KVM: Introduce segmented_write_std (CVE-2017-2584)
+ - efi/libstub/arm*: Pass latest memory map to the kernel
+ - [x86] efi: Prune invalid memory map entries and fix boot regression
+ - [x86] efi: Don't allocate memmap through memblock after mm_init()
+ (Closes: #851928)
+ - nl80211: fix sched scan netlink socket owner destruction
+ - gpio: Move freeing of GPIO hogs before numbing of the device
+ - xfs: Timely free truncated dirty pages
+ - bridge: netfilter: Fix dropping packets that moving through bridge
+ interface
+ - [x86] cpu/AMD: Clean up cpu_llc_id assignment per topology feature
+ - [x86] bugs: Separate AMD E400 erratum and C1E bug
+ - [x86] CPU/AMD: Fix Bulldozer topology
+ - wusbcore: Fix one more crypto-on-the-stack bug
+ - [armhf] usb: musb: fix runtime PM in debugfs
+ - USB: serial: kl5kusb105: fix line-state error handling (CVE-2017-5549)
+ - USB: serial: ch341: fix initial modem-control state
+ - USB: serial: ch341: fix resume after reset
+ - USB: serial: ch341: fix open error handling
+ - USB: serial: ch341: fix control-message error handling
+ - USB: serial: ch341: fix open and resume after B0
+ - i2c: print correct device invalid address
+ - i2c: fix kernel memory disclosure in dev interface
+ - fix a fencepost error in pipe_advance() (CVE-2017-5550)
+ - xhci: fix deadlock at host remove by running watchdog correctly
+ - btrfs: fix crash when tracepoint arguments are freed by wq callbacks
+ - ASoC: hdmi-codec: use unsigned type to structure members with bit-field
+ - Revert "tty: serial: 8250: add CON_CONSDEV to flags"
+ - pid: fix lockdep deadlock warning due to ucount_lock
+ - mnt: Protect the mountpoint hashtable with mount_lock
+ - drivers: char: mem: Fix thinkos in kmem address checks
+ - [armhf] dmaengine: omap-dma: Fix dynamic lch_map allocation
+ - virtio_blk: avoid DMA to stack for the sense buffer
+ - orinoco: Use shash instead of ahash for MIC calculations
+ - sysrq: attach sysrq handler correctly for 32-bit kernel
+ - [arm64, armhf] extcon: return error code on failure
+ - Clearing FIFOs in RS485 emulation mode causes subsequent transmits to
+ break
+ - sysctl: Drop reference added by grab_header in proc_sys_readdir
+ (CVE-2016-9191)
+ - [s390x] net/af_iucv: don't use paged skbs for TX on HiperSockets
+ - [x86] drm/i915/gen9: Fix PCODE polling timeout in stable backport
+ - drm: Clean up planes in atomic commit helper failure path
+ - drm/radeon: update smc firmware selection for SI
+ - drm/radeon: drop verde dpm quirks
+ - [x86] drm/amdgpu: update si kicker smc firmware
+ - [x86] drm/amdgpu: drop verde dpm quirks
+ - USB: serial: ch341: fix modem-control and B0 handling
+ - net/mlx5: Only cancel recovery work when cleaning up device
+ - i2c: piix4: Avoid race conditions with IMC
+ - [x86] cpu: Fix bootup crashes by sanitizing the argument of the
+ 'clearcpuid=' command-line option
+ - nvme: apply DELAY_BEFORE_CHK_RDY quirk at probe time too
+ - btrfs: fix locking when we put back a delayed ref that's too new
+ - btrfs: fix error handling when run_delayed_extent_op fails
+ - NFS: fix typo in parameter description
+ - pNFS: Fix race in pnfs_wait_on_layoutreturn
+ - NFS: Fix a performance regression in readdir
+ - NFSv4.1: nfs4_fl_prepare_ds must be careful about reporting success.
+ - [armhf] i2c: mux: pca954x: fix i2c mux selection caching
+ - [x86] drm/i915/gen9: Fix PCODE polling during SAGV disabling
+ - drm: avoid uninitialized timestamp use in wait_vblank
+ - [arm64, armhf] drm/panel: simple: Check against num_timings when setting
+ preferred for timing
+ - [x86] drm/i915: Move the min_pixclk[] handling to the end of readout
+ - drm: Initialise drm_mm.head_node.allocated
+ - block: Change extern inline to static inline
+ - block: cfq_cpd_alloc() should use @gfp
+ - [x86] ACPI / APEI: Fix NMI notification handling
+ - [x86] powercap/intel_rapl: fix and tidy up error handling
+ - iw_cxgb4: Fix error return code in c4iw_rdev_open()
+ - [arm64, armhf] power: supply: bq27xxx_battery: Fix register map for
+ BQ27510 and BQ27520
+ - blk-mq: Always schedule hctx->next_cpu
+ - [powerpc] mm: Correct process and partition table max size
+ - [powerpc*] ibmebus: Fix further device reference leaks
+ - [powerpc*] ibmebus: Fix device reference leaks in sysfs interface
+ - [powerpc*] powernv: Don't warn on PE init if unfreeze is unsupported
+ - [arm64] hugetlb: fix the wrong address for several functions
+ - [arm64] hugetlb: remove the wrong pmd check in find_num_contig()
+ - [arm64] hugetlb: fix the wrong return value for
+ huge_ptep_set_access_flags
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.6
+ - IB/core: Release allocated memory in cache setup failure
+ - IB/rxe: Increase max number of completions to 32k
+ - IB/rxe: avoid putting a large struct rxe_qp on stack
+ - IB/mlx5: Avoid system crash when enabling many VFs
+ - IB/mlx5: Fix reported max SGE calculation
+ - IB/mlx5: Assign SRQ type earlier
+ - IB/mlx5: Wait for all async command completions to complete
+ - IB/mlx4: Set traffic class in AH
+ - IB/mlx4: Fix out-of-range array index in destroy qp flow
+ - IB/mlx4: Handle well-known-gid in mad_demux processing
+ - IB/mlx4: Fix port query for 56Gb Ethernet links
+ - IB/mlx4: When no DMFS for IPoIB, don't allow NET_IF QPs
+ - IB/mlx4: Check if GRH is available before using it
+ - IB/IPoIB: Remove can't use GFP_NOIO warning
+ - perf trace: Use the syscall raw_syscalls:sys_enter timestamp
+ - perf mem: Fix --all-user/--all-kernel options
+ - perf trace: Check if MAP_32BIT is defined (again)
+ - perf diff: Do not overwrite valid build id
+ - perf callchain: Fixup help/config for no-unwinding
+ - perf scripting: Avoid leaking the scripting_context variable
+ - perf jit: Enable jitdump support without dwarf
+ - [armhf] dts: bcm283x: fix typo in mailbox address
+ - [armhf] dts: imx6q-cm-fx6: fix fec pinctrl
+ - [armhf] dts: omap3: Add DTS for Logic PD SOM-LV 37xx Dev Kit
+ - tmpfs: clear S_ISGID when setting posix ACLs (CVE-2017-5551)
+ - [x86] PCI: Ignore _CRS on Supermicro X8DTH-i/6/iF/6F
+ - rcu: Narrow early boot window of illegal synchronous grace periods
+ - sunrpc: don't call sleeping functions from the notifier block callbacks
+ - svcrpc: don't leak contexts on PROC_DESTROY
+ - libnvdimm, namespace: fix pmem namespace leak, delete when size set to
+ zero
+ - fuse: clear FR_PENDING flag when moving requests out of pending queue
+ - fuse: fix time_to_jiffies nsec sanity check
+ - PCI: Enumerate switches below PCI-to-PCIe bridges
+ - HID: corsair: fix DMA buffers on stack (CVE-2017-5547)
+ - HID: corsair: fix control-transfer error handling
+ - mmc: sdhci-acpi: Only powered up enabled acpi child devices
+ - ieee802154: atusb: do not use the stack for buffers to make them DMA able
+ (CVE-2017-5548)
+ - [s390x] KVM: do not expose random data via facility bitmap
+ - [armhf,arm64] KVM: vgic: Fix deadlock on error handling
+ - [powerpc*] icp-opal: Fix missing KVM case and harden replay
+ - [powerpc*] perf: Fix PM_BRU_CMPL event code for power9
+ - [powerpc*] ptrace: Preserve previous fprs/vsrs on short regset write
+ - [powerpc*] ptrace: Preserve previous TM fprs/vsrs on short regset write
+ - [powerpc*] Ignore reserved field in DCSR and PVR reads and writes
+ - [x86] ioapic: Restore IO-APIC irq_chip retrigger callback
+ - qla2xxx: Fix crash due to null pointer access
+ - mac80211: implement multicast forwarding on fast-RX path
+ - ubifs: Fix journal replay wrt. xattr nodes
+ - [armhf] clocksource/exynos_mct: Clear interrupt when cpu is shut down
+ - svcrdma: avoid duplicate dma unmapping during error recovery
+ - ceph: fix bad endianness handling in parse_reply_info_extra
+ - [armhf] dts: OMAP5 / DRA7: indicate that SATA port 0 is available.
+ - [arm64] avoid returning from bad_mode
+ - [arm64] ptrace: Preserve previous registers for short regset write
+ - [arm64] ptrace: Avoid uninitialised struct padding in fpr_set()
+ - [arm64] ptrace: Reject attempts to set incomplete hardware breakpoint
+ fields
+ - Input: ALPS - fix TrackStick support for SS5 hardware
+ - libceph: ceph_x_encrypt_buflen() takes in_len
+ - libceph: old_key in process_one_ticket() is redundant
+ - libceph: introduce ceph_x_encrypt_offset()
+ - libceph: introduce ceph_crypt() for in-place en/decryption
+ (CVE-2016-10153)
+ - libceph: rename and align ceph_x_authorizer::reply_buf
+ - libceph: tweak calcu_signature() a little
+ - libceph: switch ceph_x_encrypt() to ceph_crypt()
+ - libceph: switch ceph_x_decrypt() to ceph_crypt()
+ - libceph: remove now unused ceph_*{en,de}crypt*() functions
+ - [armhf] dts: Add an empty chosen node to top level DTSI
+ - [armel,armhf] 8613/1: Fix the uaccess crash on PB11MPCore
+ - ceph: fix scheduler warning due to nested blocking
+ - ceph: fix ceph_get_caps() interruption
+ - ceph: fix endianness of getattr mask in ceph_d_revalidate
+ - ceph: fix endianness bug in frag_tree_split_cmp
+ - libceph: make sure ceph_aes_crypt() IV is aligned
+ - xprtrdma: Make FRWR send queue entry accounting more accurate
+ - xprtrdma: Squelch "max send, max recv" messages at connect time
+ - [arm64] mm: avoid name clash in __page_to_voff()
+ - [arm64] Fix swiotlb fallback allocation
+ - swiotlb: Convert swiotlb_force from int to enum
+ - swiotlb: Add swiotlb=noforce debug option
+ - scsi: ses: Fix SAS device detection in enclosure
+ - scsi: mpt3sas: fix hang on ata passthrough commands
+ - [armhf] PM / devfreq: exynos-bus: Fix the wrong return value
+ - PM / devfreq: Fix the bug of devfreq_add_device when governor is NULL
+ - mtd: spi-nor: Off by one in cqspi_setup_flash()
+ - mtd: spi-nor: Fix some error codes in cqspi_setup_flash()
+ - [x86] ite-cir: initialize use_demodulator before using it
+ - [armhf] dmaengine: pl330: Fix runtime PM support for terminated transfers
+ - [armhf] soc: ti: wkup_m3_ipc: Fix error return code in wkup_m3_ipc_probe()
+ - libceph: uninline ceph_crypto_key_destroy()
+ - libceph: stop allocating a new cipher on every crypto request
+
+ [ Ben Hutchings ]
+ * [armel,armhf,s390x,x86] linux-headers: Fix regression of multilib compiler
+ support (Closes: #851481)
+ * nbd: use loff_t for blocksize and nbd_set_size args (Closes: #851533)
+ * ath9k: fix NULL pointer dereference (Closes: #851621)
+ * cfg80211,memcg,power: Avoid ABI changes
+ * bq27xxx_battery,cpuhp,libceph,orinoco,xhci: Ignore ABI changes
+ * linux-image: Increase minimum version of initramfs-tools (Closes: #808038)
+ * [x86] linux-cpupower: Add turbostat and x86_energy_perf_policy commands
+ (Closes: #778249)
+ * [arm64] Enable ARCH_MESON and related drivers (Closes: #852132)
+ * [arm64] dts: meson-gx: Add firmware reserved memory zones
+ * [x86] ASoC: Intel: select DW_DMAC_CORE since it's mandatory
+ * [x86] sound/soc/intel: Enable SND_SOC_INTEL_BDW_RT5677_MACH as module
+ (Closes: #851916)
+ * [arm64] video/fbdev: Change FB from module to built-in
+ * [arm64,armhf] video/fbdev: Enable FB_EFI (Closes: #851778)
+ * fs: Disable LOGFS, as it is unmaintained and will be removed in 4.10
+ * [rt] genpatch.py: Verify tag and tarball signatures
+ * fbdev: color map copying bounds checking (CVE-2016-8405)
+ * [armhf,arm64] drm/vc4: Fix an integer overflow in temporary allocation
+ layout. (CVE-2017-5576)
+ * [armhf,arm64] drm/vc4: Return -EINVAL on the overflow checks failing.
+ (CVE-2017-5577)
+ * [arm64] ptrace: Avoid ABI change in 4.9.6
+ * [arm64] Enable ARM64_ACPI_PARKING_PROTOCOL, ARCH_THUNDER, GPIO_PL061,
+ GPIO_XGENE, ARM_SMMU, ARM_SMMU_V3, PCI_HOST_THUNDER_PEM, and
+ PCI_HOST_THUNDER_ECAM; PINCTRL_AMD as built-in; SATA_AHCI_SEATTLE,
+ HW_RANDOM_XGENE, HW_RANDOM_CAVIUM, CPUFREQ_DT, K3_DMA, GPIO_XGENE_SB,
+ SENSORS_XGENE, I2C_THUNDERX, KEYBOARD_GPIO, TI_ST, THUNDER_NIC_PF,
+ THUNDER_NIC_VF (Closes: #852493), THUNDER_NIC_BGX, THUNDER_NIC_RGX,
+ MDIO_THUNDER, MDIO_XGENE, SPI_THUNDERX, and SND_SOC_APQ8016_SBC as
+ modules (thanks to Riku Voipio)
+
+ [ Roger Shimizu ]
+ * [armel] Add DT support of Buffalo Linkstation Live v3 (LS-CHL)
+ * drivers/input: Enable TOUCHSCREEN_GOODIX as module (Closes: #851821).
+ * [mips/octeon] hwmon: Enable SENSORS_ADM1031 as module (Closes: #851963).
+ Thanks to James Cowgill.
+ * nbd: fix 64-bit division.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 27 Jan 2017 07:44:54 +0000
+
+linux (4.9.2-2) unstable; urgency=medium
+
+ * [sparc64] Export memcpy and memset to modules again (fixes FTBFS)
+ * Revert "Remove debug symbol packages from debian/control to work around dak
+ bug", which caused most binary uploads to be rejected
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 12 Jan 2017 15:52:37 +0000
+
+linux (4.9.2-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.2
+
+ [ Ben Hutchings ]
+ * abiupdate.py: Use current config instead of downloading previous config
+ * abiupdate.py: Update base URLs
+ * abiupdate.py: Add support for incoming.ports.debian.org
+ * Make the pickled config (config.defines.dump) reproducible
+ * Remove debug symbol packages from debian/control to work around dak bug
+ * udeb: Add switch (DSA) drivers to nic-modules (Closes: #845075)
+ * netfilter: Enable NFT_NUMGEN, NFT_QUOTA as modules
+ * net/sched: Enable NET_ACT_TUNNEL_KEY, NET_IFE_SKBTCINDEX as modules
+ * vsock: Enable VSOCKETS, VHOST_VSOCK, VIRTIO_VSOCKETS as modules
+ * hci_uart: Enable BT_HCIUART_MRVL
+ * rxrpc: Enable AF_RXRPC_IPV6
+ * net: Enable NET_DEVLINK, MACSEC as modules
+ * SCSI: Enable SCSI_SMARTPQI as module
+ * target: Enable ISCSI_TARGET_CXGB4 as module
+ * cxgb4: Enable CHELSIO_T4_FCOE
+ * drm: Enable DRM_LEGACY; re-enable DRM_TDFX, DRM_R128, DRM_MGA, DRM_SIS,
+ DRM_VIA, DRM_SAVAGE as modules for some architectures
+ * 8250: Disable SERIAL_8250_LPSS, since it causes DW_DMAC_CORE to be built-in
+ * Partially revert "usb: Kconfig: using select for USB_COMMON dependency",
+ since it causes USB_COMMON to be built-in
+ * Set ABI to 1
+
+ [ John Paul Adrian Glaubitz ]
+ * [sh3] Build a linux-libc-dev package (Closes: #850732)
+
+ [ Martin Michlmayr ]
+ * [arm64] Enable MV_XOR and MV_XOR_V2.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 11 Jan 2017 04:41:33 +0000
+
+linux (4.9.1-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.9
+ - Revert "default exported asm symbols to zero"
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.9.1
+
+ [ Ben Hutchings ]
+ * Set ABI to trunk
+ * Enable USERFAULTFD (except on armel/marvell)
+ * [x86] PCI: Enable VMD as module
+ * mm: Enable PAGE_POISONING (Closes: #849450), PAGE_POISONING_NO_SANITY
+ (except on armel/marvell)
+ * ieee802154: Enable IEEE802154_FAKELB as module
+ * [armhf] leds,gpio: Enable LEDS_TCA6507 as module (Closes: #847770)
+ * [x86] iio,HID: Enable INTEL_ISH_HID as module
+ * hwmon,watchdog: Enable SENSORS_FTSTEUTATES as module (together with the
+ previous, Closes: #847017)
+ * net: Enable GTP as module (Closes: #846913)
+ * [armhf] gpio: Enable GPIO_MCP23S08 as module (Closes: #845064)
+ * aufs: Update support patchset to aufs4.9-20161219
+ * Use debhelper compatibility level 9
+ * [arm64] Revert "arm64/mm: Limit TASK_SIZE_64 ..." and add breaks on
+ incompatible mozjs
+ * genorig.py: Verify tag signatures (based on work by Yves-Alexis Perez)
+
+ [ Uwe Kleine-König ]
+ * enable `perf data' support; patch by Sebastian Andrzej Siewior
+ (Closes: #846597)
+ * [rt] Update to 4.9-rt1 and reenable
+ * [armhf] Add support for switch hardware on Turris Omnia
+
+ [ Aurelien Jarno ]
+ * [arm64] Enable RTC_DRV_DS1307.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 07 Jan 2017 03:44:26 +0000
+
+linux (4.9~rc8-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * radeon: Update package name in error message for missing firmware
+ * [amd64] Remove xen-linux-system-<version> package
+ * debian/control: Fix build-dependency on flex to work with new versions
+ that have M-A: allowed
+ * Revert "default exported asm symbols to zero"
+ * [arm64] remoteproc: Disable QCOM_WCNSS_PIL (fixes FTBFS)
+ * [sparc64] Don't re-add exports of string functions that are now only
+ defined as macros (fixes FTBFS, after other fixes)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 05 Dec 2016 05:02:30 +0000
+
+linux (4.9~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate:
+ - [armhf,armel] Revert "arm: move exports to definitions" (Closes: #844530)
+
+ [ Martin Michlmayr ]
+ * [arm64] Enable more QCOM options: BT_QCOMSMD, QCOM_EBI2, QCOM_TSENS,
+ QCOM_WCNSS_PIL and EXTCON_QCOM_SPMI_MISC.
+ * [arm64] Enable ARCH_MVEBU and related options.
+
+ [ Ben Hutchings ]
+ * linux-headers-common: Make these packages architecture-independent by
+ including headers for all architectures that we build a kernel for
+ * Fix exported symbol versions:
+ - Revert upstream changes moving exports to assembly sources
+ - [x86] kbuild: enable modversions for symbols exported from assembly
+ - [powerpc] Remove Mac-on-Linux hooks
+ - [powerpc*] Fix missing CRCs, add yet more asm-prototypes.h declarations
+ - Re-enable CONFIG_MODVERSIONS in a slightly weaker form
+ - module: Disable matching missing version CRC
+ * debian/bin/buildcheck.py: Add check for symbols with version CRC of 0
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 03 Dec 2016 01:46:12 +0000
+
+linux (4.9~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Aurelien Jarno ]
+ * Enable MAC802154, IEEE802154_ADF7242, IEEE802154_AT86RF230,
+ IEEE802154_ATUSB, IEEE802154_CC2520 and IEEE802154_MRF24J40.
+ * [arm64] Enable VIRTUALIZATION and KVM.
+
+ [ Ben Hutchings ]
+ * [hppa] Update build-dependencies for 64-bit kernel (fixes FTBFS)
+ * linux-perf: Exclude perf-read-vdso* from shared library dependency
+ check (fixes FTBFS on sparc64)
+ * [x86] kexec: add -fno-PIE
+ * wireless: Enable RTL8XXXU as module, replacement for R8723AU
+ * netfilter: Enable NFT_SET_RBTREE and NFT_SET_HASH as modules,
+ renamed from NFT_RBTREE and NFT_HASH
+ * tcp: Enable TCP_CONG_BBR as module
+ * [armel] Drop versatile flavour, which has been broken since version
+ 4.5~rc4-1~exp1
+ * [x86] ethernet: Enable ENA_ETHERNET as module
+ * [x86] efi: Prevent mixed mode boot corruption with CONFIG_VMAP_STACK=y
+ * w1: Disable W1_MASTER_MATROX
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 14 Nov 2016 05:19:31 +0000
+
+linux (4.9~rc3-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [rt] Disable until it is updated for 4.9 or later
+ * kbuild: add -fno-PIE (Closes: #841368)
+ * Compile with gcc-6 on all architectures
+ * debian/control: Fix build-dependency on openssl to work with new
+ versions that have M-A: allowed (Closes: #839145)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 03 Nov 2016 16:51:55 -0600
+
+linux (4.8.15-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [x86] Enable INTEL_VBTN as module (Closes: #848967)
+ * debian/control: Change build-dependency on asciidoc to prefer the new
+ asciidoc-base, so we don't pull in LaTeX unnecessarily
+ * [x86] Enable LEDS_DELL_NETBOOKS and DELL_SMBIOS as modules; re-enable
+ DELL_LAPTOP and DELL_WMI as modules (Closes: #849674)
+ * [powerpc*] boot: Request no dynamic linker for boot wrapper
+ (Closes: #848851, FTBFS on ppc6el)
+ * cpufreq: Enable CPU_FREQ_GOV_SCHEDUTIL as module
+ * [x86] ACPI: Enable DPTF_POWER as module
+ * [x86] perf: Enable PERF_EVENTS_AMD_POWER as module
+ * [x86] perf: Change PERF_EVENTS_INTEL_{CSTATE,RAPL,UNCORE} from built-in
+ to modules
+ * PCI: Enable PCIE_DPC (except for armel/versatile)
+ * [amd64] PCI: Enable PCI_HYPERV as module
+ * inet: Enable INET_DIAG_DESTROY
+ * tcp: Enable TCP_CONG_NV as module
+ * ipv6: Enable IPV6_ILA as module
+ * net/sched: Enable NET_CLS_MATCHALL, NET_ACT_IFE, NET_IFE_SKBMARK,
+ NET_IFE_SKBPRIO as modules
+ * hci_uart: Enable BT_HCIUART_AG6XX
+ * nvme: Enable NVME_RDMA, NVME_TARGET, NVME_TARGET_RDMA as modules
+ * [amd64] mic: Enable VOP_BUS and VOP as modules; re-enable INTEL_MIC_HOST as
+ module
+ * debian/control: Add Salvatore Bonaccorso to Uploaders
+ * [rt] Update to 4.8.15-rt10 (no functional change)
+
+ [ Salvatore Bonaccorso ]
+ * sg_write()/bsg_write() is not fit to be called under KERNEL_DS
+ (CVE-2016-10088)
+ * kvm: nVMX: Allow L1 to intercept software exceptions (#BP and #OF)
+ (CVE-2016-9588)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 04 Jan 2017 19:39:36 +0000
+
+linux (4.8.15-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.12
+ - [x86] iommu/vt-d: Fix PASID table allocation
+ - [x86] iommu/vt-d: Fix IOMMU lookup for SR-IOV Virtual Functions
+ - [x86] KVM: fix out-of-bounds access in lapic
+ - [x86] KVM: x86: drop error recovery in em_jmp_far and em_ret_far
+ (CVE-2016-9756)
+ - [x86] KVM: fix out-of-bounds accesses of rtc_eoi map (CVE-2016-9777)
+ - [x86] KVM: check for pic and ioapic presence before use
+ - [arm64, armhf] usb: chipidea: move the lock initialization to core file
+ - USB: serial: cp210x: add ID for the Zone DPMX
+ - USB: serial: ftdi_sio: add support for TI CC3200 LaunchPad
+ - scsi: mpt3sas: Fix secure erase premature termination
+ - cfg80211: limit scan results cache size
+ - apparmor: fix change_hat not finding hat after policy replacement
+ - NFSv4.x: hide array-bounds warning
+ - [x86] fpu: Fix invalid FPU ptrace state after execve()
+ - [x86] traps: Ignore high word of regs->cs in early_fixup_exception()
+ - perf/core: Fix address filter parser
+ - perf/x86/intel: Cure bogus unwind from PEBS entries
+ - [x86] thermal/powerclamp: add back module device table
+ - [hppa/parisc] Fix races in parisc_setup_cache_timing()
+ - [hppa/parisc] Switch to generic sched_clock implementation
+ - [hppa/parisc] Fix race in pci-dma.c
+ - [hppa/parisc] Also flush data TLB in flush_icache_page_asm
+ - mpi: Fix NULL ptr dereference in mpi_powm()
+ - X.509: Fix double free in x509_cert_parse()
+ - xc2028: Fix use-after-free bug properly
+ - [powerpc] Set missing wakeup bit in LPCR on POWER9
+ - [powerpc] mm: Fixup kernel read only mapping
+ - [powerpc] boot: Fix the early OPAL console wrappers
+ - can: bcm: fix support for CAN FD frames
+ - mm, oom: stop pre-mature high-order OOM killer invocations
+ - flow_dissect: call init_default_flow_dissectors() earlier
+ - scsi: mpt3sas: Unblock device after controller reset
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.13
+ - libata-scsi: Fixup ata_gen_passthru_sense()
+ - scsi: hpsa: use bus '3' for legacy HBA devices
+ - scsi: libfc: fix seconds_since_last_reset miscalculation
+ - mm, thp: propagation of conditional compilation in khugepaged.c
+ - thp: fix corner case of munlock() of PTE-mapped THPs
+ - zram: fix unbalanced idr management at hot removal
+ - mm: fix false-positive WARN_ON() in truncate/invalidate for hugetlb
+ - ovl: fix d_real() for stacked fs
+ - Input: change KEY_DATA from 0x275 to 0x277
+ - Input: psmouse - disable automatic probing of BYD touchpads
+ - rcu: Fix soft lockup for rcu_nocb_kthread
+ - mm: workingset: fix NULL ptr in count_shadow_nodes
+ - PCI: Export pcie_find_root_port
+ - PCI: Set Read Completion Boundary to 128 iff Root Port supports it
+ (_HPX)
+ - mwifiex: printk() overflow with 32-byte SSIDs
+ - [arm64] KVM: vgic: Don't notify EOI for non-SPIs
+ - [x86] drm/i915: Don't touch NULL sg on i915_gem_object_get_pages_gtt()
+ error
+ - [x86] drm/i915: drop the struct_mutex when wedged or trying to reset
+ - [x86] drm/amdgpu: fix power state when port pm is unavailable
+ - drm/radeon: fix power state when port pm is unavailable
+ - [x86] drm/amdgpu: fix check for port PM availability
+ - drm/radeon: fix check for port PM availability
+ - [arm64] dts: juno: fix cluster sleep state entry latency on all SoC
+ versions
+ - KVM: use after free in kvm_ioctl_create_device()
+ - pwm: Fix device reference leak
+ - [x86] perf: Restore TASK_SIZE check on frame pointer
+ - [armhf] clk: sunxi: Fix M factor computation for APB1
+ - batman-adv: Detect missing primaryif during tp_send as error
+ - [arm64] cpufeature: Schedule enable() calls instead of calling them via
+ IPI
+ - [arm64] mm: Set PSTATE.PAN from the cpu_enable_pan() call
+ - [arm64] suspend: Reconfigure PSTATE after resume from idle
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.14
+ - gro_cells: mark napi struct as not busy poll candidates
+ - virtio-net: add a missing synchronize_net()
+ - [armhf] net: dsa: b53: Fix VLAN usage and how we treat CPU port
+ - net: check dead netns for peernet2id_alloc()
+ - ip6_tunnel: disable caching when the traffic class is inherited
+ - net: sky2: Fix shutdown crash
+ - af_unix: conditionally use freezable blocking calls in read
+ - rtnetlink: fix FDB size computation
+ - l2tp: fix racy SOCK_ZAPPED flag check in l2tp_ip{,6}_bind()
+ - rtnl: fix the loop index update error in rtnl_dump_ifinfo()
+ - ipv6: bump genid when the IFA_F_TENTATIVE flag is clear
+ - udplite: call proper backlog handlers
+ - [armhf] net: dsa: bcm_sf2: Ensure we re-negotiate EEE during after link
+ change
+ - net, sched: respect rcu grace period on cls destruction
+ - [armhf] net: dsa: fix unbalanced dsa_switch_tree reference counting
+ - net/sched: pedit: make sure that offset is valid
+ - netlink: Call cb->done from a worker thread
+ - netlink: Do not schedule work from sk_destruct
+ - net/dccp: fix use-after-free in dccp_invalid_packet
+ - GSO: Reload iph after pskb_may_pull
+ - packet: fix race condition in packet_set_ring (CVE-2016-8655)
+ - ip6_offload: check segs for NULL in ipv6_gso_segment.
+ - cdc_ether: Fix handling connection notification
+ - tipc: check minimum bearer MTU (CVE-2016-8632)
+ - geneve: avoid use-after-free of skb->data
+ - net: avoid signed overflows for SO_{SND|RCV}BUFFORCE (CVE-2016-9793)
+ - net: ping: check minimum size on ICMP header length (CVE-2016-8399)
+ - ipv4: Restore fib_trie_flush_external function and fix call ordering
+ - ipv4: Fix memory leak in exception case for splitting tries
+ - ipv4: Drop leaf from suffix pull/push functions
+ - ipv4: Drop suffix update from resize code
+ - [sparc64] Fix find_node warning if numa node cannot be found
+ - [sparc64] fix compile warning section mismatch in find_node()
+ - [sparc] Fix inverted invalid_frame_pointer checks on sigreturns
+ - constify iov_iter_count() and iter_is_iovec()
+ - Don't feed anything but regular iovec's to blk_rq_map_user_iov
+ (CVE-2016-9576)
+ - ipv6: Set skb->protocol properly for local output
+ - ipv4: Set skb->protocol properly for local output
+ - Revert: "ip6_tunnel: Update skb->protocol to ETH_P_IPV6 in
+ ip6_tnl_xmit()"
+ - flowcache: Increase threshold for refusing new allocations
+ - esp4: Fix integrity verification when ESN are used
+ - esp6: Fix integrity verification when ESN are used
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.15
+ - [powerpc] eeh: Fix deadlock when PE frozen state can't be cleared
+ - [powerpc] mm: Fix lazy icache flush on pre-POWER5
+ - [powerpc] boot: Fix build failure in 32-bit boot wrapper
+ - fuse: fix clearing suid, sgid for chown()
+ - [hppa/parisc] Purge TLB before setting PTE
+ - [hppa/parisc] Remove unnecessary TLB purges from flush_dcache_page_asm
+ and flush_icache_page_asm
+ - [hppa/parisc] Fix TLB related boot crash on SMP machines
+ - zram: restrict add/remove attributes to root only
+ - locking/rtmutex: Prevent dequeue vs. unlock race
+ - locking/rtmutex: Use READ_ONCE() in rt_mutex_owner()
+ - device-dax: fix private mapping restriction, permit read-only
+ - scsi: lpfc: fix oops/BUG in lpfc_sli_ringtxcmpl_put()
+ - sched/autogroup: Fix 64-bit kernel nice level adjustment
+ - [x86] perf: Fix full width counter, counter overflow
+ - acpi, nfit: fix extended status translations for ACPI DSMs
+ - acpi, nfit, libnvdimm: fix / harden ars_status output length handling
+ - acpi, nfit: validate ars_status output buffer size
+ - acpi, nfit: fix bus vs dimm confusion in xlat_status
+ - [armel, armhf] crypto: marvell - Don't copy hash operation twice into
+ the SRAM
+ - crypto: caam - fix pointer size for AArch64 boot loader, AArch32 kernel
+ - [armel, armhf] crypto: marvell - Don't corrupt state of an STD req for
+ re-stepped ahash
+ - can: raw: raw_setsockopt: limit number of can_filter that can be set
+ - can: peak: fix bad memory access and free sequence
+ - [armel] dts: orion5x: fix number of sata port for linkstation ls-gl
+ (Closes: #845611)
+ - ceph: don't set req->r_locked_dir in ceph_d_revalidate
+ - [m68k] Fix ndelay() macro
+ - batman-adv: Check for alloc errors when preparing TT local data
+ - hotplug: Make register and unregister notifier API symmetric
+
+ [ Uwe Kleine-König ]
+ * [armhf] dts: armada-385: add support for Turris Omnia
+
+ [ Salvatore Bonaccorso ]
+ * Add ABI reference for 4.8.0-2
+ * Ignore ABI changes in KVM
+ * net: handle no dst on skb in icmp6_send (CVE-2016-9919)
+ * [rt] Update to 4.8.11-rt7
+ * [rt] Update to 4.8.14-rt9
+ * netfilter: ipv6: nf_defrag: drop mangled skb on ream error (CVE-2016-9755)
+ * Ignore ABI changes in libnvdimm
+ * docs: sphinx-extensions: make rstFlatTable work with docutils 0.13.
+ Thanks to Dmitry Shachnev <mitya57@debian.org> (Closes: #848349)
+
+ [ Ben Hutchings ]
+ * [amd64] Re-enable LEGACY_VSYSCALL_EMULATE instead of LEGACY_VSYSCALL_NONE.
+ There are still binaries in stable that use vsyscall (via dietlibc).
+ (Closes: #847154)
+ * debian/rules.real: Exclude *.pyc from featureset diffs
+ * debian/control: Fix build-dependency on flex to work with new versions that
+ have M-A: foreign
+ * debian/rules: Use dpkg-parsechangelog -S option to select fields
+ * debian/rules: Tighten binNMU version matching, consistent with linux-latest
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Mon, 19 Dec 2016 12:35:29 +0100
+
+linux (4.8.11-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.8
+ - net: fec: set mac address unconditionally
+ - net: pktgen: fix pkt_size
+ - net/sched: act_vlan: Push skb->data to mac_header prior calling
+ skb_vlan_*() functions
+ - net: Add netdev all_adj_list refcnt propagation to fix panic
+ - packet: call fanout_release, while UNREGISTERING a netdev
+ - netlink: do not enter direct reclaim from netlink_dump()
+ - drivers/ptp: Fix kernel memory disclosure
+ - net_sched: reorder pernet ops and act ops registrations
+ - ipv6: tcp: restore IP6CB for pktoptions skbs
+ - net: phy: Trigger state machine on state change and not polling.
+ - ip6_tunnel: fix ip6_tnl_lookup
+ - ipv6: correctly add local routes when lo goes up
+ - IB/ipoib: move back IB LL address into the hard header
+ - net/mlx4_en: fixup xdp tx irq to match rx
+ - net: pktgen: remove rcu locking in pktgen_change_name()
+ - bridge: multicast: restore perm router ports on multicast enable
+ - switchdev: Execute bridge ndos only for bridge ports
+ - rtnetlink: Add rtnexthop offload flag to compare mask
+ - net: core: Correctly iterate over lower adjacency list
+ - net: add recursion limit to GRO
+ - ipv4: disable BH in set_ping_group_range()
+ - ipv4: use the right lock for ping_group_range
+ - net: fec: Call swap_buffer() prior to IP header alignment
+ - net: sctp, forbid negative length
+ - sctp: fix the panic caused by route update
+ - udp: fix IP_CHECKSUM handling
+ - [x86] netvsc: fix incorrect receive checksum offloading
+ - net: ipv6: Do not consider link state for nexthop validation
+ - net sched filters: fix notification of filter delete with proper handle
+ - sctp: validate chunk len before actually using it (CVE-2016-9555)
+ - ip6_tunnel: Update skb->protocol to ETH_P_IPV6 in ip6_tnl_xmit()
+ - packet: on direct_xmit, limit tso and csum to supported devices
+ - [powerpc] Update parameters for csum_tcpudp_magic & csum_tcpudp_nofold
+ - [arm64, armhf] usb: dwc3: gadget: properly account queued requests
+ - scsi: megaraid_sas: Fix data integrity failure for JBOD (passthrough)
+ devices
+ - scsi: megaraid_sas: fix macro MEGASAS_IS_LOGICAL to avoid regression
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.9
+ - ALSA: info: Return error for invalid read/write
+ - ALSA: info: Limit the proc text input size
+ - dib0700: fix nec repeat handling
+ - mm, frontswap: make sure allocated frontswap map is assigned
+ - shmem: fix pageflags after swapping DMA32 object
+ - swapfile: fix memory corruption via malformed swapfile
+ - mm: hwpoison: fix thp split handling in memory_failure()
+ - mm/hugetlb: fix huge page reservation leak in private mapping error paths
+ - coredump: fix unfreezable coredumping task
+ - [s390x] hypfs: Use get_free_page() instead of kmalloc to ensure page
+ alignment
+ - PCI: Don't attempt to claim shadow copies of ROM
+ - [x86] pinctrl: cherryview: Serialize register access in suspend/resume
+ - [x86] pinctrl: cherryview: Prevent possible interrupt storm on resume
+ - cpupower: Correct return type of cpu_power_is_cpu_online() in cpufreq-set
+ - mmc: sdhci: Fix CMD line reset interfering with ongoing data transfer
+ - mmc: sdhci: Fix unexpected data interrupt handling
+ - mmc: mmc: Use 500ms as the default generic CMD6 timeout
+ - [arm64, armhf] usb: dwc3: Fix error handling for core init
+ - USB: cdc-acm: fix TIOCMIWAIT
+ - usb: gadget: u_ether: remove interrupt throttling
+ - drbd: Fix kernel_sendmsg() usage - potential NULL deref
+ - cdc-acm: fix uninitialized variable
+ - scsi: qla2xxx: Fix scsi scan hang triggered if adapter fails during init
+ - scsi: mpt3sas: Fix for block device of raid exists even after deleting
+ raid disk
+ - scsi: scsi_dh_alua: fix missing kref_put() in alua_rtpg_work()
+ - scsi: scsi_dh_alua: Fix a reference counting bug
+ - [arm64] KVM: vgic: Prevent access to invalid SPIs
+ - drm/radeon: disable runtime pm in certain cases
+ - [x86] drm/i915: Respect alternate_ddc_pin for all DDI ports
+ - [x86] drm/i915/dp: BDW cdclk fix for DP audio
+ - [x86] drm/i915/dp: Extend BDW DP audio workaround to GEN9 platforms
+ - [x86] drm/amdgpu: disable runtime pm in certain cases
+ - xprtrdma: use complete() instead complete_all()
+ - xprtrdma: Fix DMAR failure in frwr_op_map() after reconnect
+ - [amd64] iommu/amd: Free domain id when free a domain of struct
+ dma_ops_domain
+ - [x86] iommu/vt-d: Fix dead-locks in disable_dmar_iommu() path
+ - [x86] agp/intel: Flush chipset writes after updating a single PTE
+ - watchdog: core: Fix devres_alloc() allocation size
+ - perf top: Fix refreshing hierarchy entries on TUI
+ - [x86] mei: bus: fix received data size check in NFC fixup
+ - svcrdma: Skip put_page() when send_reply() fails
+ - svcrdma: Tail iovec leaves an orphaned DMA mapping
+ - nvme: Delete created IO queues on reset
+ - [s390x] dumpstack: restore reliable indicator for call traces
+ - hwrng: core - Don't use a stack buffer in add_early_randomness()
+ - i40e: fix call of ndo_dflt_bridge_getlink()
+ - [arm64] mmc: sdhci-msm: Fix error return code in sdhci_msm_probe()
+ - [x86] ACPI / APEI: Fix incorrect return value of ghes_proc()
+ - ACPI/PCI/IRQ: assign ISA IRQ directly during early boot stages
+ - ACPI/PCI: pci_link: penalize SCI correctly
+ - ACPI/PCI: pci_link: Include PIRQ_PENALTY_PCI_USING for ISA IRQs
+ - batman-adv: Modify neigh_list only with rcu-list functions
+ - [armel, armhf] gpio/mvebu: Use irq_domain_add_linear
+ - ASoC: Intel: Skylake: Always acquire runtime pm ref on unload
+ - [armhf] ASoC: sun4i-codec: return error code instead of NULL when
+ create_card fails
+ - memcg: prevent memcg caches to be both OFF_SLAB & OBJFREELIST_SLAB
+ - libceph: fix legacy layout decode with pool 0
+ - [x86] drm/amdgpu: fix fence slab teardown
+ - [x86] drm/amdgpu: fix a vm_flush fence leak
+ - [x86] drm/i915: Fix mismatched INIT power domain disabling during
+ suspend
+ - netfilter: fix namespace handling in nf_log_proc_dostring
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.10
+ - dctcp: avoid bogus doubling of cwnd after loss
+ - net: clear sk_err_soft in sk_clone_lock()
+ - net: mangle zero checksum in skb_checksum_help()
+ - ip6_tunnel: Clear IP6CB in ip6tunnel_xmit()
+ - tcp: fix potential memory corruption
+ - ipv4: allow local fragmentation in ip_finish_output_gso()
+ - tcp: fix return value for partial writes
+ - dccp: do not release listeners too soon
+ - dccp: do not send reset to already closed sockets
+ - dccp: fix out of bound access in dccp_v4_err()
+ - ipv6: dccp: fix out of bound access in dccp_v6_err()
+ - ipv6: dccp: add missing bind_conflict to dccp_ipv6_mapped
+ - sctp: assign assoc_id earlier in __sctp_connect
+ - bpf: fix htab map destruction when extra reserve is in use
+ - net: icmp6_send should use dst dev to determine L3 domain
+ - fib_trie: Correct /proc/net/route off by one error
+ - sock: fix sendmmsg for partial sendmsg
+ - net: icmp_route_lookup should use rt dev to determine L3 domain
+ - net: __skb_flow_dissect() must cap its return value
+ - ipv4: use new_gw for redirect neigh lookup
+ - tcp: take care of truncations done by sk_filter() (CVE-2016-8645)
+ - Revert "include/uapi/linux/atm_zatm.h: include linux/time.h"
+ (Closes: #844491)
+ - Revert "bnx2: Reset device during driver initialization"
+ - bnx2: Wait for in-flight DMA to complete at probe stage
+ - sctp: change sk state only when it has assocs in sctp_shutdown
+ - [arm64, armhf] net: stmmac: Fix lack of link transition for fixed PHYs
+ - [sparc] Handle negative offsets in arch_jump_label_transform
+ - [sparc64] Handle extremely large kernel TSB range flushes sanely.
+ - [sparc64] Fix illegal relative branches in hypervisor patched TLB code.
+ - [sparc64] Fix instruction count in comment for
+ __hypervisor_flush_tlb_pending.
+ - [sparc64] Fix illegal relative branches in hypervisor patched TLB
+ cross-call code.
+ - [sparc64] Handle extremely large kernel TLB range flushes more
+ gracefully.
+ - [sparc64] Delete __ret_efault.
+ - [sparc64] Prepare to move to more saner user copy exception handling.
+ - [sparc64] Convert copy_in_user to accurate exception reporting.
+ - [sparc64] Convert GENcopy_{from,to}_user to accurate exception
+ reporting.
+ - [sparc64] Convert U1copy_{from,to}_user to accurate exception reporting.
+ - [sparc64] Convert NG4copy_{from,to}_user to accurate exception
+ reporting.
+ - [sparc64] Convert NGcopy_{from,to}_user to accurate exception reporting.
+ - [sparc64] Convert NG2copy_{from,to}_user to accurate exception
+ reporting.
+ - [sparc64] Convert U3copy_{from,to}_user to accurate exception reporting.
+ - [sparc64] Delete now unused user copy assembler helpers.
+ - [sparc64] Delete now unused user copy fixup functions.
+ - usb: gadget: f_fs: edit epfile->ep under lock
+ - usb: gadget: f_fs: stop sleeping in ffs_func_eps_disable
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.11
+ - [x86] cpu/AMD: Fix cpu_llc_id for AMD Fam17h systems
+ - [x86] KVM: fix missed SRCU usage in kvm_lapic_set_vapic_addr
+ - [x86] KVM: Disable irq while unregistering user notifier
+ - ftrace: Ignore FTRACE_FL_DISABLED while walking dyn_ftrace records
+ - ftrace: Add more checks for FTRACE_FL_DISABLED in processing ip records
+ - genirq: Use irq type from irqdata instead of irqdesc
+ - fuse: fix fuse_write_end() if zero bytes were copied
+ - IB/rdmavt: rdmavt can handle non aligned page maps
+ - IB/hfi1: Fix rnr_timer addition
+ - [x86] mfd: intel-lpss: Do not put device in reset state on suspend
+ - [armhf] mfd: stmpe: Fix RESET regression on STMPE2401
+ - can: bcm: fix warning in bcm_connect/proc_register
+ - gpio: do not double-check direction on sleeping chips
+ - [x86] ALSA: usb-audio: Fix use-after-free of usb_device at disconnect
+ - [x86] ALSA: hda - add a new condition to check if it is thinkpad
+ - ALSA: hda - Fix mic regression by ASRock mobo fixup
+ - [armhf] i2c: mux: fix up dependencies
+ - [armhf] i2c: i2c-mux-pca954x: fix deselect enabling for device-tree
+ - kbuild: add -fno-PIE
+ - scripts/has-stack-protector: add -fno-PIE
+ - x86/kexec: add -fno-PIE
+ - kbuild: Steal gcc's pie from the very beginning
+ - ext4: sanity check the block and cluster size at mount time
+ - [armhf] dts: imx53-qsb: Fix regulator constraints
+ - crypto: caam - do not register AES-XTS mode on LP units
+ - [powerpc*] Fix setting of AIL in hypervisor mode
+ - [x86] drm/amdgpu: Attach exclusive fence to prime exported bo's.
+ - [x86] drm/i915: Refresh that status of MST capable connectors in
+ ->detect()
+ - [x86] drm/i915: Assume non-DP++ port if dvo_port is HDMI and there's no
+ AUX ch specified in the VBT
+ - virtio-net: drop legacy features in virtio 1 mode
+ - [armhf] clk: imx: fix integer overflow in AV PLL round rate
+ - [armhf] rtc: omap: Fix selecting external osc
+ - iwlwifi: pcie: fix SPLC structure parsing
+ - iwlwifi: pcie: mark command queue lock with separate lockdep class
+ - iwlwifi: mvm: fix netdetect starting/stopping for unified images
+ - iwlwifi: mvm: fix d3_test with unified D0/D3 images
+ - iwlwifi: mvm: wake the wait queue when the RX sync counter is zero
+ - mfd: core: Fix device reference leak in mfd_clone_cell
+ - sunrpc: svc_age_temp_xprts_now should not call setsockopt non-tcp
+ transports
+ - uwb: fix device reference leaks
+ - PM / sleep: fix device reference leak in test_suspend
+ - PM / sleep: don't suspend parent when async child suspend_{noirq,
+ late} fails
+ - perf hists: Fix column length on --hierarchy
+ - IB/mlx4: Check gid_index return value
+ - IB/mlx4: Fix create CQ error flow
+ - IB/mlx5: Validate requested RQT size
+ - IB/mlx5: Use cache line size to select CQE stride
+ - IB/mlx5: Fix memory leak in query device
+ - IB/mlx5: Fix fatal error dispatching
+ - IB/mlx5: Fix NULL pointer dereference on debug print
+ - IB/core: Avoid unsigned int overflow in sg_alloc_table
+ - IB/hfi1: Remove incorrect IS_ERR check
+ - IB/uverbs: Fix leak of XRC target QPs
+ - IB/cm: Mark stale CM id's whenever the mad agent was unregistered
+ - netfilter: nft_dynset: fix element timeout for HZ != 1000
+ - [arm64, armhf] gpio: pca953x: Move memcpy into mutex lock for set
+ multiple
+ - [arm64, armhf] gpio: pca953x: Fix corruption of other gpios in
+ set_multiple.
+
+ [ Salvatore Bonaccorso ]
+ * Bump ABI to 2 and remove ABI reference for 4.8.0-1
+ * xfs: Propagate dentry down to inode_change_ok()
+ * ceph: Propagate dentry down to inode_change_ok()
+ * fuse: Propagate dentry down to inode_change_ok()
+ * fs: Give dentry to inode_change_ok() instead of inode
+ * fs: Avoid premature clearing of capabilities (CVE-2015-1350)
+ (Closes: #770492)
+ * mpi: Fix NULL ptr dereference in mpi_powm() (CVE-2016-8650)
+ * vfio/pci: Fix integer overflows, bitmask check (CVE-2016-9083
+ CVE-2016-9084)
+ * mnt: Add a per mount namespace limit on the number of mounts
+ (CVE-2016-6213)
+
+ [ Ben Hutchings ]
+ * [arm64] Enable more drivers for X-Gene (Really closes: #840061):
+ - DMA: Enable XGENE_DMA as module
+ - EDAC: Enable EDAC and EDAC_MM_EDAC, EDAC_XGENE as modules
+ * [x86] video: Disable X86_SYSFB, FB_SIMPLE (Closes: #822575)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Fri, 02 Dec 2016 06:35:22 +0100
+
+linux (4.8.7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.6
+ - [armhf,arm64] drm/vc4: Fix races when the CS reads from render targets.
+ - [x86] drm/i915/backlight: setup and cache pwm alternate increment value
+ - [x86] drm/i915/backlight: setup backlight pwm alternate increment on
+ backlight enable
+ - [x86] drm/amdgpu: fix IB alignment for UVD
+ - [x86] drm/amdgpu/dce10: disable hpd on local panels
+ - [x86] drm/amdgpu/dce8: disable hpd on local panels
+ - [x86] drm/amdgpu/dce11: disable hpd on local panels
+ - [x86] drm/amdgpu/dce11: add missing drm_mode_config_cleanup call
+ - [x86] drm/amdgpu: initialize the context reset_counter in amdgpu_ctx_init
+ - [x86] drm/amdgpu: change vblank_time's calculation method to reduce
+ computational error.
+ - drm/radeon: narrow asic_init for virtualization
+ - drm/radeon/si/dpm: fix phase shedding setup
+ - drm/radeon: change vblank_time's calculation method to reduce
+ computational error.
+ - [x86] drm/vmwgfx: Limit the user-space command buffer size
+ - [x86] drm/amd/powerplay: fix mclk not switching back after multi-head
+ was disabled
+ - [x86] drm/i915/skl: Fix FIFO underrun (Closes: #844113)
+ + Update plane watermarks atomically during plane updates
+ + Move CRTC updating in atomic_commit into it's own hook
+ + Update DDB values atomically with wms/plane attrs
+ + Don't try to update plane watermarks if they haven't changed
+ - [x86] drm/i915/gen9: only add the planes actually affected by ddb changes
+ - [x86] drm/i915/gen9: fix the WaWmMemoryReadLatency implementation
+ - [x86] drm/i915/gen9: minimum scanlines for Y tile is not always 4
+ - [x86] drm/i915/gen9: fix plane_blocks_per_line on watermarks calculations
+ - [x86] drm/i915/gen9: fix the watermark res_blocks value
+ - [x86] drm/i915: SAGV is not SKL-only, so rename a few things
+ - [x86] drm/i915: introduce intel_has_sagv()
+ - [x86] drm/i915/kbl: KBL also needs to run the SAGV code
+ - [x86] Revert "drm/i915: Check live status before reading edid"
+ - [x86] drm/i915: Account for TSEG size when determining 865G stolen base
+ - [x86] drm/i915/skl: Ensure pipes with changed wms get added to the state
+ - [x86] drm/i915: Allow PCH DPLL sharing regardless of DPLL_SDVO_HIGH_SPEED
+ - [x86] drm/i915: Move long hpd handling into the hotplug work
+ - [x86] drm/i915: Allow DP to work w/o EDID
+ - [x86] drm/i915: Just clear the mmiodebug before a register access
+ - [x86] drm/i915: Unalias obj->phys_handle and obj->userptr
+ - rt2x00usb: Fix error return code
+ - uio: fix dmem_region_start computation
+ - i40e: remove a stray unlock
+ - i40e: fix broken i40e_config_rss_aq function
+ - mwifiex: correct aid value during tdls setup
+ - mwifiex: fix failed to reconnect after interface disabled/enabled
+ - ath10k: Add WMI_SERVICE_PERIODIC_CHAN_STAT_SUPPORT wmi service
+ - ath10k: fix sending frame in management path in push txq logic
+ - ath10k: fix reporting channel survey data
+ - ath10k: fix throughput regression in multi client mode
+ - [armel/marvell,armhf] crypto: marvell - Don't overwrite default
+ creq->state during initialization
+ - crypto: gcm - Fix IV buffer size in crypto_gcm_setkey
+ - [armel/marvell,armhf] crypto: marvell - Update transformation context for
+ each dequeued req
+ - [x86] crypto: ccp - Fix return value check in ccp_dmaengine_register()
+ - [armhf] hwrng: omap - Only fail if pm_runtime_get_sync returns < 0
+ - ASoC: topology: Fix error return code in soc_tplg_dapm_widget_create()
+ - ASoC: dapm: Fix possible uninitialized variable in
+ snd_soc_dapm_get_volsw()
+ - ASoC: dapm: Fix value setting for _ENUM_DOUBLE MUX's second channel
+ - ASoC: dapm: Fix kcontrol creation for output driver widget
+ - staging: r8188eu: Fix scheduling while atomic splat
+ - IB/qib: Remove qpt_mask global
+ - IB/mlx5: Fix steering resource leak
+ - mm/hugetlb: check for reserved hugepages during memory offline
+ - mm/hugetlb: improve locking in dissolve_free_huge_pages()
+ - [x86] drm/vmwgfx: Avoid validating views on view destruction
+ - [s390x] cio: fix accidental interrupt enabling during resume
+ - [s390x] con3270: fix use of uninitialised data
+ - [s390x] con3270: fix insufficient space padding
+ - [armhf,arm64] clk: bcm2835: Skip PLLC clocks when deciding on a new
+ clock parent
+ - [arm64] clk: gcc-msm8996: Fix pcie 2 pipe register offset
+ - [arm64] clk: qcom: select GDSC for msm8996 gcc and mmcc
+ - clk: Return errors from clk providers in __of_clk_get_from_provider()
+ - clk: core: Force setting the phase delay when no change
+ - clk: divider: Fix clk_divider_round_rate() to use clk_readl()
+ - perf hists browser: Fix event group display
+ - perf ui/tui: Reset output width for hierarchy
+ - perf ui/stdio: Always reset output width for hierarchy
+ - perf symbols: Check symbol_conf.allow_aliases for kallsyms loading too
+ - perf symbols: Fixup symbol sizes before picking best ones
+ - iwlwifi: check for valid ethernet address provided by OEM
+ - iwlwifi: mvm: fix pending frames tracking on tx resp
+ - iwlwifi: mvm: call a different txq_enable function
+ - iwlwifi: mvm: free reserved queue on STA removal
+ - iwlwifi: mvm: support BAR in reorder buffer
+ - iwlwifi: mvm: disable P2P queue on mac context release
+ - iwlwifi: mvm: bail out if CTDP start operation fails
+ - [armhf,arm64] pinctrl: qcom: fix masking of pinmux functions
+ - mpt3sas: Don't spam logs if logging level is 0
+ - [powerpc*] Always restore FPU/VEC/VSX if hardware transactional memory
+ in use
+ - [powerpc*] Add check_if_tm_restore_required() to giveup_all()
+ - [powerpc*] nvram: Fix an incorrect partition merge
+ - [powerpc*] Fix usage of _PAGE_RO in hugepage
+ - [armhf] dts: omap3: overo: add missing unit name for lcd35 display
+ - PCI: generic: Fix pci_remap_iospace() failure path
+ - [armhf] PCI: tegra: Fix pci_remap_iospace() failure path
+ - libnvdimm: clear the internal poison_list when clearing badblocks
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.7
+ - [armhf] i2c: rk3x: Give the tuning value 0 during
+ rk3x_i2c_v0_calc_timings
+ - i2c: core: fix NULL pointer dereference under race condition
+ - drm/dp/mst: Clear port->pdt when tearing down the i2c adapter
+ - gpio / ACPI: fix returned error from acpi_dev_gpio_irq_get()
+ - gpio: GPIO_GET_CHIPINFO_IOCTL: Fix line offset validation
+ - gpio: GPIO_GET_CHIPINFO_IOCTL: Fix information leak
+ - gpio: GPIO_GET_LINEHANDLE_IOCTL: Validate line offset
+ - gpio: GPIOHANDLE_GET_LINE_VALUES_IOCTL: Fix information leak
+ - gpio: GPIO_GET_LINEEVENT_IOCTL: Validate line offset
+ - gpio: GPIO_GET_LINEHANDLE_IOCTL: Reject invalid line flags
+ - gpio: GPIO_GET_LINEEVENT_IOCTL: Reject invalid line and event flags
+ - gpio: GPIOHANDLE_GET_LINE_VALUES_IOCTL: Fix another information leak
+ - gpio: GPIO_GET_LINE{HANDLE,EVENT}_IOCTL: Fix file descriptor leak
+ - libxfs: clean up _calc_dquots_per_chunk
+ - mm/list_lru.c: avoid error-path NULL pointer deref
+ - mm/slab: fix kmemcg cache creation delayed issue
+ - mm: memcontrol: do not recurse in direct reclaim
+ - [x86] thermal/powerclamp: correct cpu support check
+ - KEYS: Fix short sprintf buffer in /proc/keys show function
+ - ALSA: usb-audio: Add quirk for Syntek STK1160
+ - ALSA: seq: Fix time account regression
+ - ALSA: hda - allow 40 bit DMA mask for NVidia devices
+ - ALSA: hda - Adding a new group of pin cfg into ALC295 pin quirk table
+ - ALSA: hda - Fix surround output pins for ASRock B150M mobo
+ - ALSA: hda - Fix headset mic detection problem for two Dell laptops
+ - [powerpc*] cxl: Fix leaking pid refs in some error paths
+ - btrfs: fix races on root_log_ctx lists
+ - [powerpc] Convert cmp to cmpd in idle enter sequence
+ - [powerpc] mm/radix: Use tlbiel only if we ever ran on the current cpu
+ - [powerpc] Re-fix race condition between going idle and entering guest
+ - [powerpc] Fix race condition in setting lock bit in idle/wakeup code
+ - [amd64] x86/microcode/AMD: Fix more fallout from
+ CONFIG_RANDOMIZE_MEMORY=y
+ - timers: Prevent base clock rewind when forwarding clock
+ - timers: Prevent base clock corruption when forwarding
+ - timers: Plug locking race vs. timer migration
+ - timers: Lock base for same bucket optimization
+ - mei: txe: don't clean an unprocessed interrupt cause.
+ - USB: serial: fix potential NULL-dereference at probe
+ - USB: serial: cp210x: fix tiocmget error handling
+ - USB: serial: ftdi_sio: add support for Infineon TriBoard TC2X7
+ - xhci: use default USB_RESUME_TIMEOUT when resuming ports.
+ - usb: increase ohci watchdog delay to 275 msec (Closes: #842863)
+ - [powerpc] GenWQE: Fix bad page access during abort of resource
+ allocation
+ - [x86] smpboot: Init apic mapping before usage
+ - vt: clear selection before resizing
+ - [x86] hv: do not lose pending heartbeat vmbus packets
+ - xhci: add restart quirk for Intel Wildcatpoint PCH
+ - xhci: workaround for hosts missing CAS bit
+ - tty: limit terminal size to 4M chars
+ - [arm64] dts: marvell: fix clocksource for CP110 master SPI0
+ - dm: free io_barrier after blk_cleanup_queue call
+ - [x86] KVM: fix wbinvd_dirty_mask use-after-free
+ - [s390] KVM: Fix STHYI buffer alignment for diag224
+ - [armhf] mvebu: Select corediv clk for all mvebu v7 SoC
+ - nfsd: Fix general protection fault in release_lock_stateid()
+ - [mips*] KASLR: Fix handling of NULL FDT
+ - ovl: fix get_acl() on tmpfs
+ - ovl: update S_ISGID when setting posix ACLs
+ - ovl: fsync after copy-up
+ - virtio_ring: Make interrupt suppression spec compliant
+ - virtio_pci: Limit DMA mask to 44 bits for legacy virtio devices
+ - virtio: console: Unlock vqs while freeing buffers
+ - dm mirror: fix read error on recovery after default leg failure
+ - dm table: fix missing dm_put_target_type() in dm_table_add_target()
+ - dm rq: clear kworker_task if kthread_run() returned an error
+ - dm raid: fix compat_features validation (Closes: #843572)
+ - dm raid: fix activation of existing raid4/10 devices
+ - firewire: net: guard against rx buffer overflows (CVE-2016-8633)
+ - firewire: net: fix fragmented datagram_size off-by-one
+ - mac80211: discard multicast and 4-addr A-MSDUs
+ - ath10k: cache calibration data when the core is stopped
+ - scsi: scsi_debug: Fix memory leak if LBP enabled and module is unloaded
+ - scsi: arcmsr: Send SYNCHRONIZE_CACHE command to firmware
+ - [arm64, armhf] mmc: dw_mmc-pltfm: fix the potential NULL pointer
+ dereference
+ - RAID1: ignore discard error
+ - RAID10: ignore discard error
+ - md: be careful not lot leak internal curr_resync value into metadata.
+ - Revert "drm/radeon: fix DP link training issue with second 4K monitor"
+ - [armhf] drm/imx: ipuv3-plane: Switch EBA buffer only when we don't need
+ modeset
+ - [armhf] drm/imx: ipuv3-plane: Access old u/vbo properly in
+ ->atomic_check for YU12/YV12
+ - drm/radeon/si_dpm: Limit clocks on HD86xx part
+ - drm/radeon/si_dpm: workaround for SI kickers
+ - drm/radeon: drop register readback in cayman_cp_int_cntl_setup
+ - drm/nouveau/acpi: fix check for power resources support
+ - drm/fb-helper: Don't call dirty callback for untouched clips
+ - drm/fb-helper: Fix connector ref leak on error
+ - drm/fb-helper: Keep references for the current set of used connectors
+ - drm/i915/gen9: fix DDB partitioning for multi-screen cases
+ - drm/i915/gen9: fix watermarks when using the pipe scaler
+ - drm/dp/mst: Check peer device type before attempting EDID read
+ - drm: Release reference from blob lookup after replacing property
+ - drm/i915: Respect alternate_aux_channel for all DDI ports
+ - drm/i915: Clean up DDI DDC/AUX CH sanitation
+ - drm/i915/fbc: fix CFB size calculation for gen8+
+ - drm: i915: Wait for fences on new fb, not old
+ - i2c: mark device nodes only in case of successful instantiation
+ - netfilter: xt_NFLOG: fix unexpected truncated packet
+ - [arm64, armhf] pwm: Unexport children before chip removal
+ - [arm64, armhf] usb: dwc3: Fix size used in dma_free_coherent()
+ - [arm64, armhf] usb: chipidea: host: fix NULL ptr dereference during
+ shutdown
+ - [armhf] usb: musb: Fix hardirq-safe hardirq-unsafe lock order error
+ - tty: vt, fix bogus division in csi_J
+ - [x86] kvm: Check memopp before dereference (CVE-2016-8630)
+ - btrfs: qgroup: Prevent qgroup->reserved from going subzero
+ - [x86] cpufreq: intel_pstate: Set P-state upfront in performance mode
+ - HID: usbhid: add ATEN CS962 to list of quirky devices
+
+ [ Ben Hutchings ]
+ * debian/control: Fix build-dependency on openssl to work with new
+ versions that have M-A: allowed (Closes: #839145)
+ * [rt] Update to 4.8.6-rt5:
+ - [i386] entry: Fix preempt_lazy_count check in resume_kernel()
+ - sched: Use mmdrop_delayed() in sched_cpu_dying()
+ - Revert "mm/zsmalloc: Use get/put_cpu_light in
+ zs_map_object()/zs_unmap_object()"
+ - mm/zsmalloc: copy with get_cpu_var() and locking
+ - NFSv4: replace seqcount_t with a seqlock_t
+ - ftrace: Fix trace header alignment
+ - connector/cn_proc: Protect send_msg() with a local lock on RT
+ - drivers/zram: Don't disable preemption in zcomp_stream_get/put()
+ * HID: Enable HID_ALPS, HID_ASUS (Closes: #843085), HID_CMEDIA as modules
+ * cpupower: Fix checks for CPU existence (Closes: #843071)
+ * perf: Disable use of libcrypto (Closes: #843199)
+ * IB: Enable INFINIBAND_RDMAVT as module, re-enabling INFINIBAND_HFI1
+ and INFINIBAND_QIB (Closes: #843792)
+ * libcpupower-dev: Depend on libcpupower1 (Closes: #840852)
+ * [arm64] Enable more drivers for X-Gene (Closes: #840061):
+ - ipmi: Enable IPMI_HANDLER, IPMI_DEVICE_INTERFACE, IPMI_SSIF as modules
+ - i2c: Enable I2C_XGENE_SLIMPRO as module
+ - mailbox: Enable XGENE_SLIMPRO_MBOX as module
+ * debian/control: Build-Depend on a recent debhelper instead of dh-systemd
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 13 Nov 2016 04:38:09 +0000
+
+linux (4.8.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.5
+ - [x86] boot/smp: Don't try to poke disabled/non-existent APIC
+ (Closes: #841850)
+ - [x86] Input: i8042 - skip selftest on ASUS laptops
+ - [x86] Input: elantech - add Fujitsu Lifebook E556 to force crc_enabled
+ (Closes: #835160)
+
+ [ Ben Hutchings ]
+ * cpufreq: Re-enable CPU_FREQ_STAT, which can no longer be modular
+ * [armhf] dts: imx53: add support for USB armory board (Closes: #840137)
+ * kconfig: Renumber SYMBOL_NEW, fixing regression of allnoconfig
+ (Closes: #841357)
+ * netfilter: xt_NFLOG: fix unexpected truncated packet (Closes: #841261)
+ * Set ABI to 1
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 28 Oct 2016 20:34:09 +0100
+
+linux (4.8.4-1~exp1) experimental; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.8
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.1
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.2
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.3
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.8.4
+
+ [ Ben Hutchings ]
+ * [amd64] Enable LEGACY_VSYSCALL_NONE instead of LEGACY_VSYSCALL_EMULATE.
+ This breaks (e)glibc 2.13 and earlier, and can be reverted using the kernel
+ parameter: vsyscall=emulate
+ * [arm*] Enable STRICT_DEVMEM
+ * [arm*,powerpc*,s390x,x86] Enable IO_STRICT_DEVMEM. This breaks dosemu and
+ some old graphics drivers, and can be reverted using the kernel parameter:
+ iomem=relaxed
+ * [mips*] Enable RANDOMIZE_BASE and RELOCATABLE.
+ * Enable SLAB_FREELIST_RANDOM
+ * [arm*,powerpc*,s390x,sparc64,x86] Enable HARDENED_USERCOPY
+ * security,perf: Replace GRKERNSEC_PERF_HARDEN patch with the version
+ submitted upstream
+ * [amd64] Enable RANDOMIZE_MEMORY
+ * [powerpc*/*64*] Enable OPAL_PRD, MTD, MTD_POWERNV_FLASH as modules
+ (Closes: #838604, #838605)
+ * security,printk: Enable SECURITY_DMESG_RESTRICT, preventing non-root users
+ reading the kernel log by default (sysctl: kernel.dmesg_restrict)
+ * bug script: Optionally use sudo to read a restricted kernel log, and fall
+ back to writing a placeholder
+ * [rt] Update to 4.8.2-rt2 and re-enable
+ * aufs: Update support patchest to aufs4.8-20161010 (no functional change)
+
+ [ Aurelien Jarno ]
+ * [arm64] Enable SERIAL_8250_EXTENDED, SERIAL_8250_SHARE_IRQ and
+ SERIAL_8250_BCM2835AUX, needed for Raspberry Pi 3.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 23 Oct 2016 17:21:13 +0100
+
+linux (4.8~rc8-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Héctor Orón ]
+ * [arm64] Enable ACPI, ARM64_VA_BITS_48 (Closes: #834505)
+
+ [ Ben Hutchings ]
+ * Fix some new reproducibility issues:
+ - linux-source: Exclude Python bytecode generated when running Sphinx
+ - Set -fdebug-prefix-map=... in compiler options for kernel and userland
+ - linux-headers: Stop including unused arch/*/kernel/asm-offsets.s files
+ * linux-doc: Exclude Sphinx support code and Makefiles
+ * [arm64] mm: Limit TASK_SIZE_64 for compatibility
+ * [armhf] udeb: Replace dwmac-socfpga with dwmac-altr-socfpga in
+ nic-modules (Closes: #837110, thanks to Vagrant Cascadian)
+ * [armhf] Enable drivers for ASUS Chromebook C201 (veyron-speedy):
+ MFD_RK808, POWER_AVS, POWER_RESET_GPIO_RESTART, RTC_DRV_RK808,
+ ROCKCHIP_PM_DOMAINS as built-in; DRM_PANEL_SIMPLE, ROCKCHIP_ANALOGIX_DP,
+ ROCKCHIP_DW_MIPI_DSI, I2C_CROS_EC_TUNNEL, KEYBOARD_CROS_EC, OUSE_ELAN_I2C,
+ MFD_CROS_EC, MFD_CROS_EC_SPI, MFD_RK808, PHY_ROCKCHIP_EMMC, PHY_ROCKCHIP_DP,
+ BATTERY_SBS, CHARGER_GPIO, REGULATOR_RK808, BACKLIGHT_PWM as modules
+ (Closes: #836251, thanks to Vagrant Cascadian)
+ * [armhf] dsa: Enable drivers for Lamobo R1 (aka BPi-R1): B53,
+ B53_MDIO_DRIVER as modules (Closes: #836231, thanks to Vagrant Cascadian)
+ * [armhf] media: Enable VIDEO_V4L2_SUBDEV_API and VIDEO_OMAP3 as module
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 26 Sep 2016 04:27:06 +0100
+
+linux (4.8~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Martin Michlmayr ]
+ * [arm64] Enable more Tegra options: TEGRA_ACONNECT.
+ * [arm64] Enable more QCOM options: MSM_GCC_8996, MSM_MMCC_8996, QCOM_HIDMA,
+ QCOM_HIDMA_MGMT, PCIE_QCOM, PINCTRL_MSM8996, QCOM_Q6V5_PIL.
+ * [arm64] Enable support for BCM2837 (Raspberry Pi 3):
+ - Enable ARCH_BCM2835, DMA_BCM2835, BCM2835_MBOX, RASPBERRYPI_FIRMWARE,
+ RASPBERRYPI_POWER
+ - Enable DRM_VC4, I2C_BCM2835, PWM_BCM2835, SPI_BCM2835, SPI_BCM2835AUX,
+ BCM2835_WDT, SND_BCM2835_SOC_I2S, MMC_SDHCI_IPROC, HW_RANDOM_BCM2835
+ as modules
+ * [arm64] Enable USB_DWC2 and USB_DWC3.
+ * [arm64] Enable more HISI options: MFD_HI655X_PMIC, REGULATOR_HI655X,
+ STUB_CLK_HI6220, HI6220_MBOX, COMMON_RESET_HI6220, PHY_HI6220_USB,
+ HW_RANDOM_HISI, DRM_HISI_KIRIN, INPUT_HISI_POWERKEY, PCI_HISI,
+ SPI_HISI_SFC, SCSI_HISI_SAS (Closes: #821027).
+ * [arm64] Enable TI WLAN (WLAN_VENDOR_TI): WL1251, WL12XX, WL18XX
+ * [arm64] Enable Hisilicon Ethernet devices: HIX5HD2_GMAC, HISI_FEMAC,
+ HIP04_ETH, HNS_MDIO, HNS, HNS_DSAF, HNS_ENET, MDIO_HISI_FEMAC
+
+ [ Ben Hutchings ]
+ * Update config for 4.8:
+ - Enable HID_LED as module instead of USB_LED
+ - Enable BH1780 as module instead of SENSORS_BH1780
+ - [alpha] Enable RTC_CLASS and RTC_DRV_ALPHA instead of GEN_RTC
+ - [armhf] Rename omapdrm display config symbols
+ - [armhf] Enable IIO_ST_ACCEL_3AXIS as module instead of LIS3L02DQ
+ - [hppa] Enable RTC_CLASS and RTC_DRV_GENERIC instead of GEN_RTC
+ * liblockdep: Stop trying to build packages, as it failed to build again
+ * linux-doc: Build and install HTML pages from reStructuredText sources
+ - Add python-sphinx and python-sphinx-rtd-theme to Build-Depends-Indep
+ - Install files from both HTML output directories into the package
+ - Exclude RST sources from the package
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 07 Sep 2016 21:52:47 +0100
+
+linux (4.7.8-1) unstable; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.7.7
+ - cpuset: handle race between CPU hotplug and cpuset_hotplug_work
+ - cgroup: fix invalid controller enable rejections with cgroup namespace
+ - scripts/recordmcount.c: account for .softirqentry.text
+ - mm,ksm: fix endless looping in allocating memory when ksm enable
+ - can: dev: fix deadlock reported after bus-off
+ - [x86] init: Fix cr4_init_shadow() on CR4-less machines
+ - drm/udl: fix line iterator in damage handling
+ - drm/nouveau/fifo/nv04: avoid ramht race against cookie insertion
+ - drm/radeon/si/dpm: add workaround for for Jet parts
+ - [armel,armhf] 8616/1: dt: Respect property size when parsing CPUs
+ - [armel,armhf] 8617/1: dma: fix dma_max_pfn()
+ - mwifiex: illegal assignment
+ - i40e: avoid null pointer dereference
+ - pinctrl: Flag strict is a field in struct pinmux_ops
+ - i2c: mux: demux-pinctrl: run properly with multiple instances
+ - rcuperf: Don't treat gp_exp mis-setting as a WARN
+ - [armhf,arm64] drivers/perf: arm_pmu: Fix leak in error path
+ - perf/core: Use this_cpu_ptr() when stopping AUX events
+ - [armhf,arm64] mmc: tegra: Only advertise UHS modes if IO regulator is
+ present
+ - nvmem: Declare nvmem_cell_read() consistently
+ - hwmon: (adt7411) set bit 3 in CFG1 register
+ - sched/cputime: Fix prev steal time accouting during CPU hotplug
+ - iwlwifi: mvm: checksum IPv6 fragmented packet
+ - iwlwifi: mvm: fix txq aggregation bug
+ - iwlwifi: mvm: write the correct internal TXF index
+ - iwlwifi: mvm: unmap the paging memory before freeing it
+ - iwlwifi: pcie: fix access to scratch buffer
+ - iwlwifi: mvm: free RX reorder buffer on restart
+ - iwlwifi: mvm: avoid harmless -Wmaybe-uninialized warning
+ - iwlwifi: mvm: don't use ret when not initialised
+ - [armhf] usb: gadget: fsl_qe_udc: signedness bug in qe_get_frame()
+ - mac80211: check skb_linearize() return value
+ - i40iw: Protect req_resource_num update
+ - i40iw: Add missing check for interface already open
+ - i40iw: Change mem_resources pointer to a u8
+ - i40iw: Fix double free of allocated_buffer
+ - i40iw: Do not set self-referencing pointer to NULL after kfree
+ - i40iw: Avoid writing to freed memory
+ - i40iw: Add missing NULL check for MPA private data
+ - i40iw: Send last streaming mode message for loopback connections
+ - i40iw: Update hw_iwarp_state
+ - i40iw: Receive notification events correctly
+ - batman-adv: Add missing refcnt for last_candidate
+ - batman-adv: fix elp packet data reservation
+ - [armhf,arm64] irqchip/gicv3: Silence noisy DEBUG_PER_CPU_MAPS warning
+ - [armhf] 8618/1: decompressor: reset ttbcr fields to use TTBR0 on ARMv7
+ - [arm64] debug: avoid resetting stepping state machine when TIF_SINGLESTEP
+ - [mips*] uprobes: remove incorrect set_orig_insn
+ - [mips*] fix uretprobe implementation
+ - [mips*/*-malta] Fix IOCU disable switch read for MIPS64
+ - [mips*] uprobes: fix use of uninitialised variable
+ - printk: fix parsing of "brl=" option
+ - Bluetooth: split sk_filter in l2cap_sock_recv_cb
+ - tpm: fix byte-order for the value read by tpm2_get_tpm_pt
+ - regulator: pwm: Fix regulator ramp delay for continuous mode
+ - [arm64] regulator: qcom_spmi: Add support for S4 supply on pm8941
+ - [arm64] regulator: qcom_spmi: Add support for get_mode/set_mode on
+ switches
+ - [arm64] regulator: qcom_spmi: Update mvs1/mvs2 switches on pm8941
+ - [arm64] regulator: qcom_smd: Fix voltage ranges for pm8x41
+ - [arm64] regulator: qcom_smd: Fix voltage ranges for pma8084 ftsmps and
+ pldo
+ - [armhf] dts: imx6sx-sabreauto: Fix misspelled property
+ - [armhf] sun5i: Fix typo in trip point temperature
+ - pcmcia: ds: fix suspend/resume
+ - [armhf] hwrng: omap - Fix assumption that runtime_get_sync will always
+ succeed
+ - blk-mq: actually hook up defer list when running requests
+ - pstore: drop file opened reference count
+ - fm10k: fix incorrect index calculation in fm10k_write_reta
+ - iwlmvm: mvm: set correct state in smart-fifo configuration
+ - [armhf,arm64] em28xx-i2c: rt_mutex_trylock() returns zero on failure
+ - gspca: avoid unused variable warnings
+ - ath9k: Fix programming of minCCA power threshold
+ - qla2xxx: Fix BBCR offset
+ - fnic: pci_dma_mapping_error() doesn't return an error code
+ - tracing: Have HIST_TRIGGERS select TRACING
+ - NFS/pnfs: Do not clobber existing pgio_done_cb in nfs4_proc_read_setup
+ - svc: Avoid garbage replies when pc_func() returns rpc_drop_reply
+ - NFS: Don't drop CB requests with invalid principals
+ - pNFS/files: Fix layoutcommit after a commit to DS
+ - pNFS/flexfiles: Fix layoutcommit after a commit to DS
+ - watchdog: core: Clear WDOG_HW_RUNNING before calling the stop function
+ - xprtrdma: Remove FMRs from the unmap list after unmapping
+ - [x86] ASoC: Intel: Skylake: Fix error return code in skl_probe()
+ - brcmfmac: Fix glob_skb leak in brcmf_sdiod_recv_chain
+ - brcmsmac: Free packet if dma_mapping_error() fails in dma_rxfill
+ - brcmsmac: Initialize power in brcms_c_stf_ss_algo_channel_get()
+ - [powerpc*] prom: Fix sub-processor option passed to ibm,
+ client-architecture-support
+ - sysctl: handle error writing UINT_MAX to u32 fields
+ - IB/core: Fix possible memory leak in cma_resolve_iboe_route()
+ - kernel/fork: fix CLONE_CHILD_CLEARTID regression in nscd
+ - SUNRPC: Silence WARN_ON when NFSv4.1 over RDMA is in use
+ - pNFS/flexfiles: Fix layoutstat periodic reporting
+ - lib/test_hash.c: fix warning in preprocessor symbol evaluation
+ - [x86] KVM: nVMX: postpone VMCS changes on MSR_IA32_APICBASE write
+ - ceph: do not modify fi->frag in need_reset_readdir()
+ - IB/ipoib: Fix memory corruption in ipoib cm mode connect flow
+ - ath10k: fix get rx_status from htt context
+ - IB/core: Fix use after free in send_leave function
+ - regmap: rbtree: Avoid overlapping nodes
+ - scsi: ses: use scsi_is_sas_rphy instead of is_sas_attached
+ - IB/ipoib: Don't allow MC joins during light MC flush
+ - IB/mlx4: Fix incorrect MC join state bit-masking on SR-IOV
+ - IB/mlx4: Fix code indentation in QP1 MAD flow
+ - IB/mlx4: Use correct subnet-prefix in QP1 mads under SR-IOV
+ - IB/mlx5: Enable MAD_IFC commands for IB ports only
+ - IB/mlx5: Set source mac address in FTE
+ - batman-adv: remove unused callback from batadv_algo_ops struct
+ - aio: mark AIO pseudo-fs noexec
+ - dm log writes: fix bug with too large bios
+ - usb: misc: legousbtower: Fix NULL pointer deference
+ - [x86] usb: usbip: vudc: fix left shift overflow
+ - Revert "usbtmc: convert to devm_kzalloc"
+ - [x86] ALSA: hda - Adding one more ALC255 pin definition for headset
+ problem
+ - [x86] ALSA: hda - Fix headset mic detection problem for several Dell
+ laptops
+ - [x86] ALSA: hda - Add the top speaker pin config for HP Spectre x360
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.7.8
+ - [powerpc*] pseries: use pci_host_bridge.release_fn() to kfree(phb)
+ - [powerpc*] cxl: use pcibios_free_controller_deferred() when removing
+ vPHBs
+ - timekeeping: Fix __ktime_get_fast_ns() regression
+ - ALSA: ali5451: Fix out-of-bound position reporting
+ - ALSA: usb-audio: Extend DragonFly dB scale quirk to cover other variants
+ - mfd: rtsx_usb: Avoid setting ucr->current_sg.status
+ - [x86] xen: Update topology map for PV VCPUs
+ - [powerpc*] KVM: PPC: Book3s PR: Allow access to unprivileged MMCR2
+ register
+ - [arm64] KVM: arm64: Require in-kernel irqchip for PMU support
+ - [arm64] KVM: arm/arm64: vgic: Don't flush/sync without a working vgic
+ - [powerpc*] KVM: PPC: BookE: Fix a sanity check
+ - [arm64] fix dump_backtrace/unwind_frame with NULL tsk
+ - [x86] boot: Fix kdump, cleanup aborted E820_PRAM max_pfn manipulation
+ - [x86] irq: Prevent force migration of irqs which are not in the vector
+ domain
+ - [x86] apic: Get rid of apic_version[] array
+ - [x86] arch/x86: Handle non enumerated CPU after physical hotplug
+ - [x86] dumpstack: Fix x86_32 kernel_stack_pointer() previous stack access
+ - [armhf] dts: mvebu: armada-390: add missing compatibility string and
+ bracket
+ - [arm64] dts: MSM8064 remove flags from SPMI/MPP IRQs
+ - [arm64] cpuidle: Fix error return code
+ - [x86] tpm: fix a race condition in tpm2_unseal_trusted()
+ - [x86] tpm_crb: fix crb_req_canceled behavior
+
+ [ Ben Hutchings ]
+ * net: add recursion limit to GRO (CVE-2016-7039)
+ * posix_acl: Clear SGID bit when setting file permissions (CVE-2016-7097)
+ * scsi: arcmsr: Buffer overflow in arcmsr_iop_message_xfer() (CVE-2016-7425)
+
+ [ Salvatore Bonaccorso ]
+ * KEYS: Fix short sprintf buffer in /proc/keys show function (CVE-2016-7042)
+ * mm: remove gup_flags FOLL_WRITE games from __get_user_pages()
+ (CVE-2016-5195)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 19 Oct 2016 17:56:57 +0200
+
+linux (4.7.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.7.6
+ - [arm64] crypto: arm64/aes-ctr - fix NULL dereference in tail processing
+ - [armhf] crypto: arm/aes-ctr - fix NULL dereference in tail processing
+ - crypto: skcipher - Fix blkcipher walk OOM crash
+ - crypto: echainiv - Replace chaining with multiplication
+ - ocfs2/dlm: fix race between convert and migration
+ - ocfs2: fix start offset to ocfs2_zero_range_for_truncate()
+ - Revert "ocfs2: bump up o2cb network protocol version"
+ - autofs: use dentry flags to block walks during expire
+ - xfs: prevent dropping ioend completions during buftarg wait
+ - mm: fix the page_swap_info() BUG_ON check
+ - fsnotify: add a way to stop queueing events on group shutdown
+ - fanotify: fix list corruption in fanotify_get_response()
+ - mm: memcontrol: make per-cpu charge cache IRQ-safe for socket accounting
+ - cgroup: duplicate cgroup reference when cloning sockets
+ - fix fault_in_multipages_...() on architectures with no-op access_ok()
+ - KEYS: Fix skcipher IV clobbering
+ - [arm64] Call numa_store_cpu_info() earlier.
+ - configfs: Return -EFBIG from configfs_write_bin_file.
+ - [armhf] mtd: nand: mxc: fix obiwan error in
+ mxc_nand_v[12]_ooblayout_free() functions
+ - mtd: spi-nor: fix wrong "fully unlocked" test
+ - reset: Return -ENOTSUPP when not configured
+ - rtc: ds1307: Fix relying on reset value for weekday
+ - [arm64] power: reset: hisi-reboot: Unmap region obtained by of_iomap
+ - mac80211: reject TSPEC TIDs (TSIDs) for aggregation
+ - fix memory leaks in tracing_buffers_splice_read()
+ - tracing: Move mutex to protect against resetting of seq data
+ - mm: delete unnecessary and unsafe init_tlb_ubc()
+ - iwlwifi: mvm: update TX queue before making a copy of the skb
+ - nl80211: validate number of probe response CSA counters
+ - btrfs: ensure that file descriptor used with subvol ioctls is a dir
+ - [x86] efi: Only map RAM into EFI page tables if in mixed-mode
+ - [x86] i2c-eg20t: fix race between i2c init and interrupt enable
+ - [armhf] i2c: mux: pca954x: retry updating the mux selection on failure
+ - [arm64] i2c: qup: skip qup_i2c_suspend if the device is already runtime
+ suspended
+ - [mips*] SMP: Fix possibility of deadlock when bringing CPUs online
+ - [mips*] Avoid a BUG warning during prctl(PR_SET_FP_MODE, ...)
+ - [mips*] Add a missing ".set pop" in an early commit
+ - [x86] mm/pat: Prevent hang during boot when mapping pages
+ - libceph: add an ONSTACK initializer for oids
+ - ceph: fix symbol versioning for ceph_monc_do_statfs
+ - ceph: Correctly return NXIO errors from ceph_llseek
+ - libceph: fix return value check in alloc_msg_with_page_vector()
+ - PM / hibernate: Restore processor state before using per-CPU variables
+ - PM / hibernate: Fix rtree_next_node() to avoid walking off list ends
+ - ixgbe: Force VLNCTRL.VFE to be set in all VMDq paths
+ - ixgbe: Re-enable ability to toggle VLAN filtering
+ - igb: fix adjusting PTP timestamps for Tx/Rx latency
+ - [armhf,arm64] soc/tegra: pmc: Don't probe PMC if early initialisation
+ fails
+ - qxl: check for kmap failures
+ - hostfs: Freeing an ERR_PTR in hostfs_fill_sb_common()
+ - iw_cxgb4: stop MPA_REPLY timer when disconnecting
+
+ [ Ben Hutchings ]
+ * debian/bin/gencontrol.py: Fix cross-build-dependencies if invoked under
+ dpkg-buildpackage
+ * linux-image: Exclude vmlinux from stripping by dh_strip (fixes FTBFS
+ on hppa)
+ * udeb: Fold core-modules into kernel-image
+ * udeb: Move nls_utf8 from fat-modules to kernel-image, as many other
+ filesystems need it but vfat no longer does
+ * of_mdio: Enable fixed PHY support if driver is a module
+ * of_mdio: select fixed phy support unconditionally
+ * [armhf] Enable driver for SolidRun ClearFog: USB_XHCI_MVEBU as module
+ * mm: memcontrol: use special workqueue for creating per-memcg caches
+
+ [ Cyril Brulebois ]
+ * Add nls_ascii to the fat-modules udeb, following the change of
+ iocharset default in 4.7.2-1. This fixes a regression with EFI-related
+ mounts within the Debian Installer. (Closes: #839552)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 07 Oct 2016 02:11:50 +0100
+
+linux (4.7.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.7.5
+ - [armhf] clocksource/drivers/sun4i: Clear interrupts after stopping timer
+ in probe function
+ - fscrypto: require write access to mount to set encryption policy
+ - [arm64] drm/msm: protect against faults from copy_from_user() in submit
+ ioctl
+ - bpf: fix method of PTR_TO_PACKET reg id generation
+ - ipv4: panic in leaf_walk_rcu due to stale node pointer
+ - vti: flush x-netns xfrm cache when vti interface is removed
+ - bpf: fix write helpers with regards to non-linear parts
+ - net/irda: handle iriap_register_lsap() allocation failure
+ - net/sctp: always initialise sctp_ht_iter::start_fail
+ - net: ipv6: Do not keep IPv6 addresses when IPv6 is disabled
+ - tipc: fix NULL pointer dereference in shutdown()
+ - net/mlx5: Fix pci error recovery flow
+ - net/mlx5: Added missing check of msg length in verifying its signature
+ - net/mlx5e: Use correct flow dissector key on flower offloading
+ - net sched: fix encoding to use real length
+ - udp: fix poll() issue with zero sized packets
+ - tcp: properly scale window in tcp_v[46]_reqsk_send_ack()
+ - sctp: fix overrun in sctp_diag_dump_one()
+ - tun: fix transmit timestamp support
+ - [armhf] net: dsa: bcm_sf2: Fix race condition while unmasking interrupts
+ - Revert "phy: IRQ cannot be shared"
+ - net: smc91x: fix SMC accesses
+ - bridge: re-introduce 'fix parsing of MLDv2 reports'
+ - bonding: Fix bonding crash
+ - Revert "af_unix: Fix splice-bind deadlock"
+ - af_unix: split 'u->readlock' into two: 'iolock' and 'bindlock'
+ - ipv6: release dst in ping_v6_sendmsg
+ - [arm64] bnxt_en: Fix TX push operation on ARM64.
+ - ipv6: addrconf: fix dev refcont leak when DAD failed
+ - tcp: fastopen: avoid negative sk_forward_alloc
+ - net/mlx5e: Fix parsing of vlan packets when updating lro header
+ - tcp: cwnd does not increase in TCP YeAH
+ - [powerpc*] tm: do not use r13 for tabort_syscall
+ - [powerpc*] powernv : Drop reference added by kset_find_obj()
+ - [powerpc*] sysdev: cpm: fix gpio save_regs functions
+ - [powerpc*] mm: Don't alias user region to other regions below PAGE_OFFSET
+ - [powerpc*] powernv: Fix corrupted PE allocation bitmap on releasing PE
+ - kernfs: don't depend on d_find_any_alias() when generating notifications
+ - pNFS/flexfiles: Fix an Oopsable condition when connection to the DS fails
+ - pNFS: The client must not do I/O to the DS if it's lease has expired
+ - NFSv4.1: Fix Oopsable condition in server callback races
+ - NFSv4.x: Fix a refcount leak in nfs_callback_up_net
+ - nfsd: Close race between nfsd4_release_lockowner and nfsd4_lock
+ - pNFS: Ensure LAYOUTGET and LAYOUTRETURN are properly serialised
+ - NFSv4.1: Fix the CREATE_SESSION slot number accounting
+ - kexec: fix double-free when failing to relocate the purgatory
+ - mm, mempolicy: task->mempolicy must be NULL before dropping final
+ reference
+ - ahci: disable correct irq for dummy ports
+ - audit: fix exe_file access in audit_exe_compare
+ - dm flakey: fix reads to be issued if drop_writes configured
+ - IB/hfi1,IB/qib: Fix qp_stats sleep with rcu read lock held
+ - IB/uverbs: Fix race between uverbs_close and remove_one
+ - IB/hfi1: Reset QSFP on every run through channel tuning
+ - [amd64] mm: fix cache mode of dax pmd mappings
+ - [x86] paravirt: Do not trace _paravirt_ident_*() functions
+ - [x86] AMD: Apply erratum 665 on machines without a BIOS fix
+ - [s390x] KVM: don't use current->thread.fpu.* when accessing registers
+ - [armhf,arm64] kvm-arm: Unmap shadow pagetables properly
+ - [x86] kvm: correctly reset dest_map->vector when restoring LAPIC state
+ - iio: sw-trigger: Fix config group initialization
+ - [armhf] iio: adc: rockchip_saradc: reset saradc controller before
+ programming it
+ - [armhf] iio: adc: ti_am335x_adc: Protect FIFO1 from concurrent access
+ - [armhf] iio: adc: ti_am335x_adc: Increase timeout value waiting for ADC
+ sample
+ - iio:ti-ads1015: fix a wrong pointer definition.
+ - [x86] iio: accel: bmc150: reset chip at init time
+ - iio: fix pressure data output unit in hid-sensor-attributes
+ - iio:core: fix IIO_VAL_FRACTIONAL sign handling
+ - iio: ensure ret is initialized to zero before entering do loop
+ - serial: 8250_mid: fix divide error bug if baud rate is 0
+ - serial: 8250: added acces i/o products quad and octal serial cards
+ - [armhf,arm64] usb: chipidea: udc: fix NULL ptr dereference in
+ isr_setup_status_phase
+ - USB: change bInterval default to 10 ms
+ - devpts: return NULL pts 'priv' entry for non-devpts nodes
+ - cpuset: make sure new tasks conform to the current config of the cpuset
+ - [armhf] dts: rockchip: add reset node for the exist saradc SoCs
+ - [armhf] imx6: add missing BM_CLPCR_BYP_MMDC_CH0_LPM_HS setting for imx6ul
+ - [armhf] imx6: add missing BM_CLPCR_BYPASS_PMIC_READY setting for imx6sx
+ - [armel] kirkwood: ib62x0: fix size of u-boot environment partition
+ - [armhf] OMAP3: hwmod data: Add sysc information for DSI
+ - [armel] dts: kirkwood: Fix PCIe label on OpenRD
+ - [armhf] dts: imx6qdl: Fix SPDIF regression
+ - [armhf] dts: armada-388-clearfog: number LAN ports properly
+ - dm log writes: fix check of kthread_run() return value
+ - dm crypt: fix free of bad values after tfm allocation failure
+ - dm log writes: move IO accounting earlier to fix error path
+ - dm crypt: fix error with too large bios
+ - [armhf] pinctrl: sunxi: fix uart1 CTS/RTS pins at PG on A23/A33
+ - [armhf] memory: omap-gpmc: allow probe of child nodes to fail
+ - [arm64] spinlocks: implement smp_mb__before_spinlock() as smp_mb()
+ - crypto: cryptd - initialize child shash_desc on import
+ - Btrfs: remove root_log_ctx from ctx list before btrfs_sync_log returns
+ - fuse: direct-io: don't dirty ITER_BVEC pages
+ - xhci: fix null pointer dereference in stop command timeout function
+ - brcmfmac: avoid potential stack overflow in brcmf_cfg80211_start_ap()
+ - md-cluster: make md-cluster also can work when compiled into kernel
+ - ath9k: fix using sta->drv_priv before initializing it
+ - ath9k: bring back direction setting in ath9k_{start_stop}
+ - [x86] perf/intel: Fix PEBSv3 record drain
+ - [x86] perf/intel/cqm: Check cqm/mbm enabled state in event init
+ - [x86] perf/amd: Make HW_CACHE_REFERENCES and HW_CACHE_MISSES measure L2
+ - [x86] perf/intel/pt: Fix an off-by-one in address filter configuration
+ - [x86] perf/intel/pt: Fix kernel address filter's offset validation
+ - [x86] perf/intel/pt: Do validate the size of a kernel address filter
+ - Revert "wext: Fix 32 bit iwpriv compatibility issue with 64 bit Kernel"
+ - sched/core: Fix a race between try_to_wake_up() and a woken up task
+ - ipv6: Don't unset flowi6_proto in ipxip6_tnl_xmit()
+ - efi: Make for_each_efi_memory_desc_in_map() cope with running on Xen
+ - efi/libstub: Allocate headspace in efi_get_memory_map()
+ - efi/libstub: Introduce ExitBootServices helper
+ - efi/libstub: Use efi_exit_boot_services() in FDT
+ - [x86] efi: Use efi_exit_boot_services()
+ - [powerpc,powerpcspe] Fix csum_partial_copy_generic()
+ - [powerpc,powerpcspe] Fix again csum_partial_copy_generic()
+ - [x86] drm/i915: Ignore OpRegion panel type except on select machines
+ - [x86] drm: Only use compat ioctl for addfb2 on X86/IA64
+ - svcauth_gss: Revert 64c59a3726f2 ("Remove unnecessary allocation")
+ - genirq: Provide irq_gc_{lock_irqsave,unlock_irqrestore}() helpers
+ - fix iov_iter_fault_in_readable()
+ - [x86] fix minor infoleak in get_user_ex()
+ - [s390x] get_user() should zero on failure
+ - asm-generic: make get_user() clear the destination on errors
+ - asm-generic: make copy_from_user() zero the destination properly
+ - [alpha,hppa,mips*,powerpc,powerpcspe,sh4] make copy_from_user() zero the
+ destination properly
+
+ [ Ben Hutchings ]
+ * [hppa,mips*,powerpc*] linux-image: Strip debug symbols from vmlinux
+ (really closes: #837588)
+ * [hppa] tracing: Re-enable FTRACE
+ * [powerpc,powerpcspe,ppc64] linux-image: Suppress automatic dbgsym packages
+ * uaccess,uio: Fix ABI changes in 4.7.5
+ * ext4: Fix checksum validation for inodes with small i_extra_isize
+ (Closes: #838544, regression in 4.7.4)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 26 Sep 2016 01:48:21 +0100
+
+linux (4.7.4-2) unstable; urgency=medium
+
+ * [arm64] Revert "arm64: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO"
+ (fixes FTBFS)
+ * [armhf] media: Disable VIDEO_V4L2_SUBDEV_API and VIDEO_OMAP3 to avoid ABI
+ change (fixes FTBFS)
+ * [hppa] Ignore ABI changes caused by disabling CONFIG_FTRACE (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 19 Sep 2016 22:09:42 +0100
+
+linux (4.7.4-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.7.3
+ - [x86] mm: Disable preemption during CR3 read+write
+ - [x86] uprobes: Fix RIP-relative handling of EVEX-encoded instructions
+ - [x86] platform/uv: Skip UV runtime services mapping in the
+ efi_runtime_disabled case
+ - SUNRPC: Handle EADDRNOTAVAIL on connection failures
+ - SUNRPC: allow for upcalls for same uid but different gss service
+ - [x86] ALSA: hda - Manage power well properly for resume
+ - efi/capsule: Allocate whole capsule into virtual memory
+ - virtio: fix memory leak in virtqueue_add()
+ - vfio/pci: Fix NULL pointer oops in error interrupt setup handling
+ - tracing: Fix tick_stop tracepoint symbols for user export
+ - [x86] perf intel-pt: Fix occasional decoding errors when tracing
+ system-wide
+ - [amd64] libnvdimm, nd_blk: mask off reserved status bits
+ - ACPI: CPPC: Return error if _CPC is invalid on a CPU
+ - ACPI / CPPC: Prevent cpc_desc_ptr points to the invalid data
+ - genirq/msi: Remove unused MSI_FLAG_IDENTITY_MAP
+ - genirq/msi: Make sure PCI MSIs are activated early
+ - usb: ehci: change order of register cleanup during shutdown
+ - usb: devio, do not warn when allocation fails
+ - usb: misc: usbtest: add fix for driver hang
+ - usb: misc: usbtest: usbtest_do_ioctl may return positive integer
+ - usb: dwc3: gadget: increment request->actual once
+ - usb: dwc3: gadget: fix for short pkts during chained xfers
+ - usb: dwc3: gadget: always cleanup all TRBs
+ - usb: hub: Fix unbalanced reference count/memory leak/deadlocks
+ - USB: hub: fix up early-exit pathway in hub_activate
+ - USB: hub: change the locking in hub_activate
+ - USB: validate wMaxPacketValue entries in endpoint descriptors
+ - usb/gadget: fix gadgetfs aio support.
+ - xhci: always handle "Command Ring Stopped" events
+ - usb: xhci: Fix panic if disconnect
+ - xhci: don't dereference a xhci member after removing xhci
+ - USB: serial: fix memleak in driver-registration error path
+ - uprobes: Fix the memcg accounting
+ - perf symbols: Fix annotation of objects with debuginfo files
+ - perf/core: Fix event_function_local()
+ - perf tools mem: Fix -t store option for record command
+ - iommu/dma: Don't put uninitialised IOVA domains
+ - [armhf] iommu/io-pgtable-arm-v7s: Fix attributes when splitting blocks
+ - [armhf,arm64] iommu/arm-smmu: Fix CMDQ error handling
+ - [armhf,arm64] iommu/arm-smmu: Disable stalling faults for all endpoints
+ - [armhf,arm64] iommu/arm-smmu: Don't BUG() if we find aborting STEs with
+ disable_bypass
+ - [x86] pinctrl/amd: Remove the default de-bounce time
+ - i2c: mux: demux-pinctrl: properly roll back when adding adapter fails
+ - [s390x] dasd: fix hanging device after clear subchannel
+ - mac80211: fix purging multicast PS buffer queue
+ - [arm64] kernel: avoid literal load of virtual address with MMU off
+ - [arm64] avoid TLB conflict with CONFIG_RANDOMIZE_BASE
+ - [arm64] dts: rockchip: add reset saradc node for rk3368 SoCs
+ - [arm64] kernel: Fix unmasked debug exceptions when restoring mdscr_el1
+ - of: fix reference counting in of_graph_get_endpoint_by_regs
+ - iio: fix sched WARNING "do not call blocking ops when !TASK_RUNNING"
+ - [x86] drm/amdgpu: Change GART offset to 64-bit
+ - [x86] drm/amdgpu: fix amdgpu_move_blit on 32bit systems
+ - [x86] drm/amdgpu: fix lru size grouping v2
+ - [x86] drm/amdgpu: avoid a possible array overflow
+ - [x86] drm/amdgpu: skip TV/CV in display parsing
+ - [x86] drm/amd/amdgpu: sdma resume fail during S4 on CI
+ - [x86] drm/amd/amdgpu: compute ring test fail during S4 on CI
+ - [x86] drm/amdgpu: record error code when ring test failed
+ - [x86] drm/i915: Fix iboost setting for DDI with 4 lanes on SKL
+ - [x86] drm/i915: Program iboost settings for HDMI/DVI on SKL
+ - [x86] drm/i915: Fix iboost setting for SKL Y/U DP DDI buffer translation
+ entry 2
+ - [x86] drm/i915: Acquire audio powerwell for HD-Audio registers
+ - [x86] drm/i915: fix aliasing_ppgtt leak
+ - [x86] drm/i915/vlv: Make intel_crt_reset() per-encoder
+ - [x86] drm/i915/vlv: Reset the ADPA in vlv_display_power_well_init()
+ - [x86] drm/i915/vlv: Disable HPD in valleyview_crt_detect_hotplug()
+ - [x86] drm/i915: Enable polling when we don't have hpd
+ - [arm64] mfd: cros_ec: Add cros_ec_cmd_xfer_status() helper
+ - [arm64] i2c: cros-ec-tunnel: Fix usage of cros_ec_cmd_xfer()
+ - cdc-acm: fix wrong pipe type on rx interrupt xfers
+ - mpt3sas: Fix resume on WarpDrive flash cards
+ - megaraid_sas: Fix probing cards without io port
+ - dm round robin: do not use this_cpu_ptr() without having preemption
+ disabled
+ - gpio: Fix OF build problem on UM
+ - fs/seq_file: fix out-of-bounds read
+ - soft_dirty: fix soft_dirty during THP split
+ - [amd64] dax: fix device-dax region base
+ - [amd64] mm: silently skip readahead for DAX inodes
+ - btrfs: waiting on qgroup rescan should not always be interruptible
+ - btrfs: properly track when rescan worker is running
+ - btrfs: don't create or leak aliased root while cleaning up orphans
+ - Revert "floppy: fix open(O_ACCMODE) for ioctl-only open"
+ - Input: synaptics-rmi4 - fix register descriptor subpacket map construction
+ - [x86] crypto: qat - fix aes-xts key sizes
+ - USB: avoid left shift by -1
+ - usb: chipidea: udc: don't touch DP when controller is in host mode
+ - USB: fix typo in wMaxPacketSize validation
+ - usb: gadget: udc: core: don't starve DMA resources
+ - USB: serial: mos7720: fix non-atomic allocation in write path
+ - USB: serial: mos7840: fix non-atomic allocation in write path
+ - [x86] staging/lustre/llite: Close atomic_open race with several openers
+ - [x86] staging: comedi: daqboard2000: bug fix board type matching code
+ - [x86] staging: comedi: comedi_test: fix timer race conditions
+ - [x86] staging: comedi: ni_mio_common: fix AO inttrig backwards
+ compatibility
+ - [x86] staging: comedi: ni_mio_common: fix wrong insn_write handler
+ - ACPI / drivers: fix typo in ACPI_DECLARE_PROBE_ENTRY macro
+ - ACPI / drivers: replace acpi_probe_lock spinlock with mutex
+ - ALSA: line6: Remove double line6_pcm_release() after failed acquire.
+ - ALSA: line6: Give up on the lock while URBs are released.
+ - ALSA: line6: Fix POD sysfs attributes segfault
+ - hwmon: (it87) Add missing sysfs attribute group terminator
+ - hwmon: (iio_hwmon) fix memory leak in name attribute
+ - sysfs: correctly handle read offset on PREALLOC attrs
+ - SUNRPC: Fix infinite looping in rpc_clnt_iterate_for_each_xprt
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.7.4
+ - Revert "floppy: refactor open() flags handling"
+ - apparmor: fix refcount race when finding a child profile
+ - fs: Check for invalid i_uid in may_follow_link()
+ - cred: Reject inodes with invalid ids in set_create_file_as()
+ - ext4: validate that metadata blocks do not overlap superblock
+ - ext4: fix xattr shifting when expanding inodes
+ - ext4: fix xattr shifting when expanding inodes part 2
+ - ext4: properly align shifted xattrs when expanding inodes
+ - ext4: avoid deadlock when expanding inode size
+ - ext4: avoid modifying checksum fields directly during checksum
+ verification
+ - block: Fix race triggered by blk_set_queue_dying()
+ - block: make sure a big bio is split into at most 256 bvecs
+ - cgroup: reduce read locked section of cgroup_threadgroup_rwsem during fork
+ - cdc-acm: added sanity checking for probe()
+ - drm/radeon: fix radeon_move_blit on 32bit systems
+ - drm/radeon: only apply the SS fractional workaround to RS[78]80
+ - drm/atomic: Don't potentially reset color_mgmt_changed on successive
+ property updates.
+ - drm: Reject page_flip for !DRIVER_MODESET
+ - [arm64] drm/msm: fix use of copy_from_user() while holding spinlock
+ - [armhf] drm/vc4: Use drm_free_large() on handles to match its allocation.
+ - [armhf] drm/vc4: Fix overflow mem unreferencing when the binner runs dry.
+ - [armhf] drm/vc4: Fix oops when userspace hands in a bad BO.
+ - xfs: fix superblock inprogress check
+ - timekeeping: Cap array access in timekeeping_debug
+ - xenbus: don't look up transaction IDs for ordinary writes
+ - ovl: proper cleanup of workdir
+ - ovl: don't copy up opaqueness
+ - ovl: remove posix_acl_default from workdir
+ - ovl: listxattr: use strnlen()
+ - ovl: fix workdir creation
+ - mei: me: disable driver on SPT SPS firmware
+ - ubifs: Fix xattr generic handler usage
+ - ubifs: Fix assertion in layout_in_gaps()
+ - bdev: fix NULL pointer dereference
+ - bcache: RESERVE_PRIO is too small by one when prio_buckets() is a power
+ of two.
+ - [mips*/*-malta] irqchip/mips-gic: Implement activate op for device domain
+ - vhost/scsi: fix reuse of &vq->iov[out] in response
+ - [x86] apic: Do not init irq remapping if ioapic is disabled
+ - xprtrdma: Create common scatterlist fields in rpcrdma_mw
+ - crypto: caam - fix IV loading for authenc (giv)decryption
+ - fscrypto: add authorization check for setting encryption policy
+ - fscrypto: only allow setting encryption policy on directories
+ - ALSA: firewire-tascam: accessing to user space outside spinlock
+ - ALSA: fireworks: accessing to user space outside spinlock
+ - ALSA: rawmidi: Fix possible deadlock with virmidi registration
+ - ALSA: timer: fix NULL pointer dereference in read()/ioctl() race
+ - ALSA: timer: fix division by zero after SNDRV_TIMER_IOCTL_CONTINUE
+ - ALSA: timer: fix NULL pointer dereference on memory allocation failure
+ - ALSA: timer: Fix zero-division by continue of uninitialized instance
+ - scsi: fix upper bounds check of sense key in scsi_sense_key_string()
+ - cpufreq: dt: Add terminate entry for of_device_id tables
+
+ [ Ben Hutchings ]
+ * [arm64] Add cpu_to_fdt32() when setting Secure Boot flag in FDT
+ * [amd64] Enable SIGNED_PE_FILE_VERIFICATION, KEXEC_FILE,
+ KEXEC_VERIFY_SIG, KEXEC_BZIMAGE_VERIFY_SIG
+ * i8042: Revert ABI break in 4.7.3
+ * mm, oom: prevent premature OOM killer invocation for high order request
+ (regression in 4.7)
+ * [arm64] pinctrl: Enable PINCTRL_SINGLE as built-in, needed for HiKey SoCs
+ * [hppa] Disable FTRACE due to huge size cost (Closes: #837588)
+ * [powerpcspe] xmon: Don't use ld on 32-bit (Closes: #836741)
+ * liblockdep-dev: Add dependency on liblockdep<version> (Closes: #837710)
+ * xen-linux-system: Relax dependency on linux-image to allow for version
+ suffix added by linux-signed
+ * [armhf] Enable drivers for Novena: MFD_STMPE as built-in; DRM_PANEL_SIMPLE,
+ MMA8452, TOUCHSCREEN_STMPE, BATTERY_SBS, BACKLIGHT_PWM, SND_SOC_IMX_ES8328
+ as modules (Closes: #837627, thanks to Vagrant Cascadian)
+ * linux-image: postrm: Make failure of rmdir on purge non-fatal
+ (Closes: #836282)
+ * [armhf] Enable drivers and options for OpenPandora console: POWER_AVS_OMAP
+ as built-in; DISPLAY_CONNECTOR_ANALOG_TV, DISPLAY_PANEL_TPO_TD043MTEA1,
+ SENSORS_TWL4030_MADC, VIDEO_OMAP3, BATTERY_TWL4030_MADC, BACKLIGHT_PANDORA,
+ HDQ_MASTER_OMAP as modules; OMAP2_DSS_DSI (Closes: #835893, thanks to
+ Vagrant Cascadian)
+ * bug script: Stop describing TAINT_UNSIGNED_MODULE as expected
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 18 Sep 2016 14:56:01 +0100
+
+linux (4.7.2-1) unstable; urgency=medium
+
+ * New upstream release: https://kernelnewbies.org/Linux_4.7
+ - media: fix airspy usb probe error path (CVE-2016-5400)
+ - libata: LITE-ON CX1-JB256-HP needs lower max_sectors (Closes: #830971)
+ - tcp: make challenge acks less predictable (CVE-2016-5696)
+ * New stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.7.1
+ - vfs: ioctl: prevent double-fetch in dedupe ioctl (CVE-2016-6516)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.7.2
+ - [powerpc*] KVM: Book3S HV: Save/restore TM state in H_CEDE (CVE-2016-5412)
+ - audit: fix a double fetch in audit_log_single_execve_arg() (CVE-2016-6136)
+
+ [ Ben Hutchings ]
+ * sched: Enable SCHEDSTATS (Closes: #796674)
+ * Re-enable various config options disabled by name and type changes in 4.7:
+ - nfc: NFC_PN533_USB replaced NFC_PN533
+ - [armhf] dsa: NET_DSA_MV88E6XXX replaced NET_DSA_MV88E6{123,131,171}
+ - [x86] ACPI: ACPI_TABLE_UPGRADE replaced ACPI_INITRD_TABLE_OVERRIDE
+ - rxrpc: Enable RXKAD as part of af_rxrpc module
+ - [x86] 8250: Enable SERIAL_8250_FINTEK as built-in
+ * cgroups: Enable memory controller by default
+ * [armfh] udeb: Add efi-modules
+ * linux-kbuild: Include headers_install.sh and unifdef (Closes: #832359)
+ * udeb: Include cdc_ncm in nic-usb-modules (Closes: #833918)
+ * usbip: Use the locally-installed <linux/usbip.h>
+ * Exclude redundant and unreproducible files from binary packages
+ (Closes: #830268)
+ - usbip: Put all autotools-generated files in the build directory
+ - linux-headers: Exclude all .cmd files
+ * [arm*] Enable SECCOMP (Closes: #833183)
+ * [hppa] Fix automatic selection of cr16 clocksource
+ * [hppa] Fix order of EREFUSED define in errno.h
+ * aufs: Update support patches to aufs4.7-20160822 (Closes: #834764)
+ * [powerpc*] ipmi: Enable IPMI_POWERNV as module (Closes: #833861)
+ * kbuild: Do not use hyphen in exported variable name (Closes: #833561)
+ * fat: Mitigate the lack of UTF-8 case folding by enabling
+ FAT_DEFAULT_UTF8 and setting FAT_DEFAULT_IOCHARSET to "ascii"
+ (Closes: #833238)
+ * [arm64] Add support for securelevel and Secure Boot (Closes: #831827,
+ thanks to Linn Crosetto):
+ - efi: Disable secure boot if shim is in insecure mode
+ - Add kernel config option to set securelevel when in Secure Boot mode
+ - Enable EFI_SECURE_BOOT_SECURELEVEL
+ * tcp: fix use after free in tcp_xmit_retransmit_queue() (CVE-2016-6828)
+ * aacraid: Check size values after double-fetch from user (CVE-2016-6480)
+ * liblockdep: Move dummy definition of prandom_u32() to fix missing
+ declaration
+ * debian/rules.real: Avoid error message when usbip's config.h doesn't exist
+
+ [ Martin Michlmayr ]
+ * [armhf] Enable MMC_SDHCI_IPROC and HW_RANDOM_BCM2835 for BCM2835.
+ * [arm64] Add USB support for NVIDIA Jetson TX1 Developer Kit:
+ - pinctrl: max77620: add pincontrol driver for MAX77620/MAX20024
+ - gpio: max77620: add gpio driver for MAX77620/MAX20024
+ - gpio: max77620: Configure interrupt trigger level
+ - gpio: max77620: use the new open drain callback
+ - gpio: max77620: get gpio value based on direction
+ - arm64: tegra: Add PMIC support on Jetson TX1
+ - arm64: tegra: p2597: Add SDMMC power supplies
+ - arm64: tegra: Add DSI panel on Jetson TX1
+ - arm64: tegra: Add Tegra210 XUSB pad controller
+ - arm64: tegra: Add Tegra210 XUSB controller
+ - arm64: tegra: Enable debug serial on Jetson TX1
+ - arm64: tegra: Enable XUSB controller on Jetson TX1
+ - arm64: tegra: Correct Tegra210 XUSB mailbox interrupt
+ * [arm64] Enable REGULATOR_FIXED_VOLTAGE.
+ * [arm64] Enable ARM64_ERRATUM_834220.
+ * [arm64] Build in SERIAL_TEGRA.
+ * [arm64] Enable REGULATOR_PWM, DRM_PANEL_SIMPLE, BACKLIGHT_GENERIC
+ and BACKLIGHT_LP855X for Jetson TX1.
+ * [arm64] Enable BATTERY_BQ27XXX, MFD_CROS_EC_I2C, I2C_CROS_EC_TUNNEL
+ for Google Pixel C.
+ * [arm64] Enable more Qualcomm options: PINCTRL_QCOM_SPMI_PMIC,
+ SPMI_MSM_PMIC_ARB, QCOM_SPMI_IADC, QCOM_SPMI_VADC, MFD_SPMI_PMIC,
+ REGULATOR_QCOM_SPMI, QCOM_SPMI_TEMP_ALARM, CHARGER_QCOM_SMBB,
+ USB_CHIPIDEA, USB_HSIC_USB3503, RTC_DRV_PM8XXX, EXTCON_USB_GPIO,
+ QCOM_COINCELL, and INPUT_PM8941_PWRKEY.
+
+ [ Uwe Kleine-König ]
+ * Fix perf to be able to find debug info based on build-id. (Closes:
+ #833096)
+
+ [ Nicolas LE CAM ]
+ * [amd64] Suggest grub-efi-amd64 instead of grub-efi dummy transitionnal
+ package (Closes: #835459)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 28 Aug 2016 15:56:10 +0100
+
+linux (4.7~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Aurelien Jarno ]
+ * [mipsel] Remove loongson-2e and loongson-2f flavours (Closes: #827790).
+ * [mipsel/4kc-malta, mipsel/5kc-malta] Build for R2 ISA.
+
+ [ Martin Michlmayr ]
+ * [armhf, arm64] Enable DRM_TEGRA_STAGING.
+
+ [ Ben Hutchings ]
+ * [x86] KASLR, power: Remove x86 hibernation restrictions
+ * fanotify: Enable FANOTIFY_ACCESS_PERMISSIONS (Closes: #690737)
+ - Warn and taint kernel if this feature is actually used
+ * Define Auto-Built-Package field when running dpkg-gencontrol, as dpkg-source
+ doesn't like to see it in debian/control
+ * debian/lib/python/debian_linux/debian.py: Handle packages with only short
+ descriptions
+ * Change names and descriptions of linux-image debug symbol packages to match
+ debhelper
+
+ [ Bastian Blank ]
+ * Mark debug symbols packages to move them into the debug archive.
+ * Build debug symbols for all images.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 14 Jul 2016 13:35:22 +0100
+
+linux (4.7~rc4-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [armel] Disable module signing for all flavours (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 21 Jun 2016 00:41:23 +0100
+
+linux (4.7~rc3-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * bug script: Put binary package name and version in the info file so
+ linux-signed can easily replace them
+ * Move merge_packages function from debian/bin/gencontrol.py to
+ gencontrol module
+ * udeb: Drop packages for modules that will later be signed
+ * linux-image: Add '-unsigned' suffix to packages with modules that will
+ later be signed
+ - Add Conflicts and Replaces relations to signed packages (Closes: #827618)
+ * [rt] Disable until it is updated for 4.7 or later
+ * cpupower: Bump soname version and rename library package accordingly
+ * debian/rules.d/Makefile: Override architecture detection when building
+ userland headers
+ * linux-cpupower: Define PACKAGE_BUGREPORT to refer to reportbug, not upstream
+ * debian/README.source: Document the supported build profiles
+ * debian/control: Fix build-dependencies for cross-building
+ - Add workaround for libdpkg-perl bugs #827628, #827633
+ * Add support for the nopython build profile, disabling the linux-perf package
+ * Fix build rules for userland tools to support cross-building
+
+ [ Martin Michlmayr ]
+ * [armhf, arm64] Enable PHY_TEGRA_XUSB and USB_XHCI_TEGRA.
+ * [arm64] Enable MAX77620 and PCA9539 which are required by Jetson TX1.
+ * [arm64] Enable TEGRA210_ADMA.
+ * [arm64] Enable THERMAL.
+ * [armhf] Enable TEGRA_SOCTHERM.
+ * [armhf] Enable SPI_TEGRA114.
+ * [arm64] Enable more QCOM options (QCOM_SMP2P, QCOM_SMSM, QCOM_WCNSS_CTRL,
+ PHY_QCOM_UFS, QCOM_QFPROM).
+
+ [ Aurelien Jarno ]
+ * [ppc64*] Enable SPAPR_TCE_IOMMU, VFIO and VFIO_PCI (Closes: #826367).
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 18 Jun 2016 23:50:39 +0100
+
+linux (4.6.4-1) unstable; urgency=medium
+
+ * Team upload.
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.6.4
+ - net_sched: fix pfifo_head_drop behavior vs backlog
+ - act_ipt: fix a bind refcnt leak
+ - net: Don't forget pr_fmt on net_dbg_ratelimited for CONFIG_DYNAMIC_DEBUG
+ - sit: correct IP protocol used in ipip6_err
+ - esp: Fix ESN generation under UDP encapsulation
+ - netem: fix a use after free
+ - ipmr/ip6mr: Initialize the last assert time of mfc entries.
+ - Bridge: Fix ipv6 mc snooping if bridge has no ipv6 address
+ - sock_diag: do not broadcast raw socket destruction
+ - bpf, perf: delay release of BPF prog after grace period
+ - neigh: Explicitly declare RCU-bh read side critical section in neigh_xmit()
+ - AX.25: Close socket connection on session completion
+ - [powerpc] crypto: vmx - Increase priority of aes-cbc cipher
+ - crypto: user - re-add size check for CRYPTO_MSG_GETALG
+ - USB: uas: Fix slave queue_depth not being set
+ - usb: quirks: Fix sorting
+ - usb: quirks: Add no-lpm quirk for Acer C120 LED Projector
+ - [armhf] usb: musb: only restore devctl when session was set in backup
+ - [armhf] usb: musb: Stop bulk endpoint while queue is rotated
+ - [armhf] usb: musb: Ensure rx reinit occurs for shared_fifo endpoints
+ - [armhf] usb: musb: host: correct cppi dma channel for isoch transfer
+ - xhci: Cleanup only when releasing primary hcd
+ - usb: xhci-plat: properly handle probe deferral for devm_clk_get()
+ - USB: xhci: Add broken streams quirk for Frescologic device id 1009
+ - xhci: Fix handling timeouted commands on hosts in weird states.
+ - USB: mos7720: delete parport
+ - usb: gadget: fix spinlock dead lock in gadgetfs
+ - [arm64, armhf] usb: host: ehci-tegra: Grab the correct UTMI pads reset
+ - usb: dwc3: exynos: Fix deferred probing storm.
+
+ [ Uwe Kleine-König ]
+ * Cherry pick patches for rtc-s35390a from next. (Closes: #794266)
+
+ [ Salvatore Bonaccorso ]
+ * apparmor: fix oops, validate buffer size in apparmor_setprocattr()
+ (CVE-2016-6187)
+
+ [ Ben Hutchings ]
+ * bridge: Fix ABI change in 4.6.4
+ * [rt] Update to 4.6.4-rt6 (no functional change)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Mon, 18 Jul 2016 21:57:31 +0200
+
+linux (4.6.3-1) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.6.3
+ - scsi_lib: correctly retry failed zero length REQ_TYPE_FS commands
+ - scsi: Add QEMU CD-ROM to VPD Inquiry Blacklist
+ - netlink: Fix dump skb leak/double free
+ - tipc: fix nametable publication field in nl compat
+ - switchdev: pass pointer to fib_info instead of copy
+ - tuntap: correctly wake up process during uninit
+ - bpf: Use mount_nodev not mount_ns to mount the bpf filesystem
+ - udp: prevent skbs lingering in tunnel socket queues
+ - uapi glibc compat: fix compilation when !__USE_MISC in glibc
+ - bpf, inode: disallow userns mounts
+ - [armhf] net: mvneta: Fix lacking spinlock initialization
+ - net: hwbm: Fix unbalanced spinlock in error case
+ - sfc: on MC reset, clear PIO buffer linkage in TXQs
+ - team: don't call netdev_change_features under team->lock
+ - net: alx: use custom skb allocator
+ - net: stmmac: Fix incorrect memcpy source memory
+ - vxlan: Accept user specified MTU value when create new vxlan link
+ - net: nps_enet: Disable interrupts before napi reschedule
+ - bpf, trace: use READ_ONCE for retrieving file ptr
+ - tcp: record TLP and ER timer stats in v6 stats
+ - bridge: Don't insert unnecessary local fdb entry on changing mac address
+ - l2tp: fix configuration passed to setup_udp_tunnel_sock()
+ - ipv6: Skip XFRM lookup if dst_entry in socket cache is valid
+ - [armhf,arm64] KVM: vgic-v2: Clear all dirty LRs
+ - [armhf,arm64] KVM: vgic-v3: Clear all dirty LRs
+ - [x86] KVM: fix OOPS after invalid KVM_SET_DEBUGREGS
+ - KVM: irqfd: fix NULL pointer dereference in kvm_irq_map_gsi
+ - [arm*] drivers/perf: arm_pmu: Defer the setting of __oprofile_cpu_pmu
+ - [x86] ALSA: hda - Add PCI ID for Kabylake
+ - [x86] ALSA: hda - Fix headset mic detection problem for Dell machine
+ - ALSA: hda/realtek - ALC256 speaker noise issue
+ - ALSA: hda/realtek - Add support for new codecs ALC700/ALC701/ALC703
+ - [x86] ALSA: hda/realtek: Add T560 docking unit fixup
+ - [armhf] fix PTRACE_SETVFPREGS on SMP systems
+ - gpio: bail out silently on NULL descriptors
+ - gpiolib: Fix NULL pointer deference
+ - gpiolib: Fix unaligned used of reference counters
+ - [s390x] bpf: fix recache skb->data/hlen for skb_vlan_push/pop
+ - [s390x] bpf: reduce maximum program size to 64 KB
+ - [armhf,arm64] irqchip/gic-v3: Fix ICC_SGI1R_EL1.INTID decoding mask
+ - [x86] crypto: ccp - Fix AES XTS error for request sizes above 4096
+ - [arm64] Provide "model name" in /proc/cpuinfo for PER_LINUX32 tasks
+ - [arm64] mm: always take dirty state from new pte in ptep_set_access_flags
+ - [powerpc*] pseries/eeh: Handle RTAS delay requests in configure_bridge
+ - [powerpc*] Fix definition of SIAR and SDAR registers
+ - [powerpc*] Use privileged SPR number for MMCR2
+ - [powerpc*] pseries: Add POWER8NVL support to
+ ibm,client-architecture-support call
+ - [powerpc*] mm/hash: Fix the reference bit update when handling hash fault
+ - [hppa] Fix pagefault crash in unaligned __get_user() call
+ - memcg: add RCU locking around css_for_each_descendant_pre() in
+ memcg_offline_kmem()
+ - wext: Fix 32 bit iwpriv compatibility issue with 64 bit Kernel
+ - mm: thp: broken page count after commit aa88b68c3b1d
+ - [x86] entry/traps: Don't force in_interrupt() to return true in IST
+ handlers
+ - fix d_walk()/non-delayed __d_free() race
+ - [sparc64] Reduce TLB flushes during hugepte changes
+ - [sparc64] Take ctx_alloc_lock properly in hugetlb_setup().
+ - [sparc64] Harden signal return frame checks.
+ - [sparc64] Fix return from trap window fill crashes.
+ - drm/core: Do not preserve framebuffer on rmfb, v4.
+ - [x86] Revert "drm/i915: Exit cherryview_irq_handler() after one pass"
+ - gpio: make sure gpiod_to_irq() returns negative on NULL desc
+ * [powerpc*] tm: Always reclaim in start_thread() for exec() class syscalls
+ (CVE-2016-5828)
+
+ [ Salvatore Bonaccorso ]
+ * HID: hiddev: validate num_values for HIDIOCGUSAGES, HIDIOCSUSAGES commands
+ (CVE-2016-5829)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 04 Jul 2016 20:10:24 +0200
+
+linux (4.6.2-2) unstable; urgency=medium
+
+ * [mips*] Fix ABI changes in 4.6.2
+ * [rt] Update to 4.6.2-rt5:
+ - mm/memcontrol: mem_cgroup_migrate() - replace another local_irq_disable()
+ w. local_lock_irq()
+ * KEYS: potential uninitialized variable (CVE-2016-4470)
+ * percpu: fix synchronization between chunk->map_extend_work and chunk
+ destruction (CVE-2016-4794)
+ * percpu: fix synchronization between synchronous map extension and
+ chunk destruction (CVE-2016-4794)
+ * netfilter: x_tables: Fix parsing of IPT_SO_SET_REPLACE blobs
+ (CVE-2016-4997, CVE-2016-4998)
+ - don't move to non-existent next rule
+ - validate targets of jumps
+ - add and use xt_check_entry_offsets
+ - kill check_entry helper
+ - assert minimum target size
+ - add compat version of xt_check_entry_offsets
+ - check standard target size too
+ - check for bogus target offset
+ - validate all offsets and sizes in a rule
+ - don't reject valid target size on some
+ - arp_tables: simplify translate_compat_table args
+ - ip_tables: simplify translate_compat_table args
+ - ip6_tables: simplify translate_compat_table args
+ - xt_compat_match_from_user doesn't need a retval
+ - do compat validation via translate_table
+ - introduce and use xt_copy_counters_from_user
+ * Ignore ABI change in x_tables
+ * nfsd: check permissions when setting ACLs (CVE-2016-1237)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 25 Jun 2016 11:22:27 +0200
+
+linux (4.6.2-1) unstable; urgency=medium
+
+ * Team upload.
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.6.2
+ - f2fs: fix deadlock when flush inline data
+ - [mips*] math-emu: Fix jalr emulation when rd == $0
+ - [mips*] Avoid using unwind_stack() with usermode
+ - [mips*] Fix siginfo.h to use strict posix types
+ - [mips*] Fix uapi include in exported asm/siginfo.h
+ - [mips*] Fix watchpoint restoration
+ - [mips*] Flush highmem pages in __flush_dcache_page
+ - [mips*] Handle highmem pages in __update_cache
+ - [mips*] Sync icache & dcache in set_pte_at
+ - [mips*] Reserve nosave data for hibernation
+ - [mips*el/loongson-3] Reserve 32MB for RS780E integrated GPU
+ - [mips*] Use copy_s.fmt rather than copy_u.fmt
+ - [mips*] Prevent "restoration" of MSA context in non-MSA kernels
+ - [mips*] ptrace: Fix FP context restoration FCSR regression
+ - [mips*] ptrace: Prevent writes to read-only FCSR bits
+ - [mips*] lib: Mark intrinsics notrace
+ - [mips*] VDSO: Build with `-fno-strict-aliasing'
+ - affs: fix remount failure when there are no options changed
+ - ASoC: ak4642: Enable cache usage to fix crashes on resume
+ - Input: uinput - handle compat ioctl for UI_SET_PHYS
+ - Input: xpad - move pending clear to the correct location
+ - Input: xpad - prevent spurious input from wired Xbox 360 controllers
+ - [armhf] sun4i: dt: Enable dram gate 5 (tve0 clock) for simplefb TV output
+ - [armhf] sun7i: dt: Enable dram gate 5 (tve0 clock) for simplefb TV output
+ - [armhf] mvebu: fix GPIO config on the Linksys boards
+ - [armhf] dts: exynos: Add interrupt line to MAX8997 PMIC on
+ exynos4210-trats
+ - ath9k: Fix LED polarity for some Mini PCI AR9220 MB92 cards.
+ - ath10k: fix firmware assert in monitor mode
+ - ath10k: fix rx_channel during hw reconfigure
+ - ath10k: fix kernel panic, move arvifs list head init before htt init
+ - ath5k: Change led pin configuration for compaq c700 laptop
+ - [armhf] hwrng: exynos - Fix unbalanced PM runtime put on timeout
+ error path
+ - rtlwifi: Fix logic error in enter/exit power-save mode
+ - rtlwifi: pci: use dev_kfree_skb_irq instead of kfree_skb in
+ rtl_pci_reset_trx_ring
+ - Revert "lpfc: Delete unnecessary checks before the function call
+ mempool_destroy"
+ - aacraid: Start adapter after updating number of MSIX vectors
+ - aacraid: Relinquish CPU during timeout wait
+ - aacraid: Fix for aac_command_thread hang
+ - aacraid: Fix for KDUMP driver hang
+ - regulator: Try to resolve regulators supplies on registration
+ - hwmon: (ads7828) Enable internal reference
+ - [x86] mfd: intel_quark_i2c_gpio: Remove clock tree on error path
+ - [x86] mfd: intel-lpss: Save register context on suspend
+ - [x86] mfd: intel_soc_pmic_core: Terminate panel control GPIO lookup
+ table correctly
+ - PM / Runtime: Fix error path in pm_runtime_force_resume()
+ - cpuidle: Indicate when a device has been unregistered
+ - cpuidle: Fix cpuidle_state_is_coupled() argument in cpuidle_enter()
+ - [armhf] clk: bcm2835: Fix PLL poweron
+ - [armhf] clk: bcm2835: pll_off should only update CM_PLL_ANARST
+ - [armhf] clk: bcm2835: divider value has to be 1 or more
+ - [armhf] clk: bcm2835: correctly enable fractional clock support
+ - [armhf] pinctrl: exynos5440: Use off-stack memory for pinctrl_gpio_range
+ - PCI: Disable all BAR sizing for devices with non-compliant BARs
+ - media: v4l2-compat-ioctl32: fix missing reserved field copy in
+ put_v4l2_create32
+ - PKCS#7: fix missing break on OID_sha224 case
+ - mm: use phys_addr_t for reserve_bootmem_region() arguments
+ - mm/compaction.c: fix zoneindex in kcompactd()
+ - wait/ptrace: assume __WALL if the child is traced
+ - batman-adv: Fix double neigh_node_put in batadv_v_ogm_route_update
+ - [powerpc*] book3s64: Fix branching to OOL handlers in relocatable kernel
+ - [powerpc*] eeh: Don't report error in eeh_pe_reset_and_recover()
+ - [powerpc*] Revert "powerpc/eeh: Fix crash in eeh_add_device_early()
+ on Cell"
+ - [powerpc*] eeh: Restore initial state in eeh_pe_reset_and_recover()
+ - xen/events: Don't move disabled irqs
+ - xen: use same main loop for counting and remapping pages
+ - sunrpc: fix stripping of padded MIC tokens
+ - [x86] drm/gma500: Fix possible out of bounds read
+ - [x86] drm/vmwgfx: Kill some lockdep warnings
+ - [x86] drm/amdgpu: use drm_mode_vrefresh() rather than mode->vrefresh
+ - [x86] drm/amdgpu: Fix hdmi deep color support.
+ - [x86] drm/i915/fbdev: Fix num_connector references in
+ intel_fb_initial_config()
+ - drm/fb_helper: Fix references to dev->mode_config.num_connector
+ - [x86] drm/i915: Discard previous atomic state on resume if connectors
+ change
+ - drm/atomic: Verify connector->funcs != NULL when clearing states
+ - Bluetooth: 6lowpan: Fix memory corruption of ipv6 destination address
+ - [x86] drm/i915/psr: Try to program link training times correctly
+ - [x86] drm/i915: Respect DP++ adaptor TMDS clock limit
+ - [x86] drm/i915: Enable/disable TMDS output buffers in DP++ adaptor
+ as needed
+ - [x86] drm/i915: Don't leave old junk in ilk active watermarks on readout
+ - [x86] drm/i915: Fix watermarks for VLV/CHV
+ - [armhf] drm/imx: Match imx-ipuv3-crtc components using device node in
+ platform data
+ - [x86] drm/i915: Pass the correct crtc state to .update_plane()
+ - ext4: fix data exposure after a crash
+ - ext4: fix hang when processing corrupted orphaned inode list
+ - ext4: clean up error handling when orphan list is corrupted
+ - ext4: fix check of dqget() return value in ext4_ioctl_setproject()
+ - ext4: fix oops on corrupted filesystem
+ - ext4: address UBSAN warning in mb_find_order_for_block()
+ - nfs: avoid race that crashes nfs_init_commit
+ - PM / sleep: Handle failures in device_suspend_late() consistently
+ - mm: thp: avoid false positive VM_BUG_ON_PAGE in page_move_anon_rmap()
+ - xfs: disallow rw remount on fs with unknown ro-compat features
+ - xfs: Don't wrap growfs AGFL indexes
+ - xfs: remove xfs_fs_evict_inode()
+ - xfs: xfs_iflush_cluster fails to abort on error
+ - xfs: fix inode validity check in xfs_iflush_cluster
+ - xfs: skip stale inodes in xfs_iflush_cluster
+ - [armhf] drm: msm: remove unused variable
+ - IB/hfi1: Fix hard lockup due to not using save/restore spin lock
+ - regulator: Fix deadlock during regulator registration
+
+ [ Ben Hutchings ]
+ * [armel,armhf,sh4] linux-image: Do not suggest fdutils
+ * liblockdep: Reduce MAX_LOCK_DEPTH to avoid overflowing lock_chain::depth
+ * liblockdep: Fix 'unused value' warnings
+ * liblockdep: Fix 'set but not used' warnings
+ * liblockdep: Fix 'defined but not used' warning for init_utsname()
+
+ [ Salvatore Bonaccorso ]
+ * Stack overflow via ecryptfs and /proc/$pid/environ (CVE-2016-1583)
+ - proc: prevent stacking filesystems on top
+ - ecryptfs: forbid opening files without mmap handler
+ - sched: panic on corrupted stack end
+ * tipc: fix an infoleak in tipc_nl_compat_link_dump (CVE-2016-5243)
+ * rds: fix an infoleak in rds_inc_info_copy (CVE-2016-5244)
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Wed, 15 Jun 2016 21:32:54 +0200
+
+linux (4.6.1-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.6.1
+
+ [ Ben Hutchings ]
+ * [mips*r6*] Disable these architectures until dak recognises them as valid
+ in the control file
+ * linux-image: Rewrite maintainer scripts in shell, using the new
+ linux-update-symlinks and linux-check-removal commands
+ (Closes: #692333, #815850). Drop support for minimal_swap, no_symlinks,
+ use_hard_links and *_hook parameters in /etc/kernel-img.conf
+ (Closes: #730073). Remove now-redundant debconf templates.
+ * linux-image: postrm: Update default symlinks before running hook scripts
+ * linux-image: Make a newly installed kernel the default if the package
+ was previously removed
+ * mtd: Disable slram and phram when securelevel is enabled
+ * debian/patches/features/all/rt/genpatch.py: Use Python 3
+ * debian/patches/features/all/rt/genpatch.py: Fix mapping of -rt version to
+ upstream version
+ * debian/patches/features/all/rt/genpatch.py: Use upstream tarball directly
+ * debian/patches/features/all/rt/genpatch.py: Use stable URLs in patch Origin
+ headers
+ * [rt] Update to 4.6.1-rt3:
+ - trace: correct off by one while recording the trace-event
+ - sched,preempt: Fix preempt_count manipulations
+ - kernel/rtmutex: only warn once on a try lock from bad
+ - locallock: add local_lock_on()
+ - kernel/printk: Don't try to print from IRQ/NMI region
+ - mm: perform lru_add_drain_all() remotely
+ * debian/control: Drop obsolete versioned Depends and Breaks
+ * linux-libc-dev: Drop obsolete Replaces/Conflicts with linux-kernel-headers
+ * debian/control: Update policy version to 3.9.8; no changes required
+ * Disable MODULE_SIG for architectures not supported by linux-signed
+ * Set ABI to 1
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 06 Jun 2016 18:13:57 +0100
+
+linux (4.6-1~exp2) experimental; urgency=medium
+
+ [ Ben Hutchings ]
+ * [tilegx] Build a linux-libc-dev package (Closes: #824524; thanks to
+ Helmut Grohne)
+ * [tilegx] linux-libc-dev: Install <arch/*> headers in arch-specific
+ directory (Closes: #823632; thanks to Helmut Grohne)
+ * [rt] Update to 4.6-rc7-rt1 and re-enable
+ - Override SYSTEM_TRUSTED_KEYS to work from the source_rt directory
+ * Fold debian/config/README into debian/README.source
+ * debian/README.source: Rewrite and expand explanation of kernel config file
+ construction
+ * aufs: Update support patches to aufs4.6-20160523
+ - mmap: Fix use-after-free in remap_file_pages(2)
+ * [mips*] Change NFS and various storage and network drivers from built-in
+ to modules
+ * 8139too: Use same configuration on all architectures: enable
+ 8139TOO_TUNE_TWISTER, 8139TOO_8129 and disable 8139TOO_PIO
+ * [mipsn32{,r6}{,el}] Build linux-libc-dev and tools packages
+ * [mips{,64}r6{,el}] Add kernel flavours for the Malta platform; build
+ linux-libc-dev and tools packages (Closes: #825024; thanks to YunQiang Su)
+ * [mips*/*-malta] udeb: Add ata-modules package
+ * linux-image: Stop setting $STEM in environment for maintainer script hooks
+ * linux-image: Add workaround for bug #817083 in debconf
+ * linux-image: prerm: Allow removal of running kernel if we can't ask debconf
+ questions (Closes: #825423)
+ * linux-image: prerm: Ignore version of running kernel inside a container or
+ chroot
+ * [s390] udeb: Drop all packages, since s390 no longer has its own kernel
+ * udeb: Drop packages for modules that will later be signed; these packages
+ will be taken over by src:linux-signed
+
+ [ Aurelien Jarno ]
+ * [mips64{,el}] Set CPU to MIPS64 R2.
+ * [mips] Set CPU to MIPS32/64 R2.
+
+ [ Martin Michlmayr ]
+ * [armhf] Enable more NVIDIA Tegra options (TEGRA_IOMMU_SMMU,
+ ARM_TEGRA_DEVFREQ, SND_SOC_TEGRA_*).
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 30 May 2016 04:44:45 +0100
+
+linux (4.6-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_4.6
+
+ [ Ben Hutchings ]
+ * Re-apply "[media] videobuf2-v4l2: Verify planes array in buffer dequeueing",
+ reverted upstream in 4.6
+ * [arm64] Enable RANDOMIZE_BASE (kASLR)
+ * [armhf] dsa: Enable NET_DSA_MV88E6123 as module, replacing
+ NET_DSA_MV88E6123_61_65
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 17 May 2016 02:39:47 +0100
+
+linux (4.6~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [hppa] Enable MLONGCALLS (fixes FTBFS)
+ * [alpha] fs: Disable BINFMT_EM86 (obsoleted by binfmt_misc; fixes FTBFS)
+
+ [ Aurelien Jarno ]
+ * [mips*/octeon] Enable EDAC, EDAC_MM_EDAC, EDAC_OCTEON_L2C,
+ EDAC_OCTEON_LMC, EDAC_OCTEON_PC, EDAC_OCTEON_PCI.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 09 May 2016 03:39:32 +0100
+
+linux (4.6~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [armhf] Enable EFI, RTC_DRV_EFI
+ * Update config for renaming/removal/replacement/merging/splitting of various
+ symbols
+ * *lockdep*,linux-perf: Remove '-rcN' from installation paths
+
+ [ Martin Michlmayr ]
+ * [armel, armhf] Use new Marvell CESA driver.
+ * [arm64] Enable support for NVIDIA Tegra.
+ * [arm64] udeb: Create fb-modules.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 29 Apr 2016 10:40:36 +0200
+
+linux (4.6~rc3-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update support patches to aufs4.x-rcN-20160328
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 14 Apr 2016 23:55:15 +0100
+
+linux (4.5.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.5.5
+ - decnet: Do not build routes to devices without decnet private data.
+ - route: do not cache fib route info on local routes with oif
+ - packet: fix heap info leak in PACKET_DIAG_MCLIST sock_diag interface
+ - net: sched: do not requeue a NULL skb
+ - bpf/verifier: reject invalid LD_ABS | BPF_DW instruction
+ - cdc_mbim: apply "NDP to end" quirk to all Huawei devices
+ - soreuseport: fix ordering for mixed v4/v6 sockets
+ - net: use skb_postpush_rcsum instead of own implementations
+ - vlan: pull on __vlan_insert_tag error path and fix csum correction
+ - openvswitch: Orphan skbs before IPv6 defrag
+ - openvswitch: use flow protocol when recalculating ipv6 checksums
+ - net/mlx5_core: Fix soft lockup in steering error flow
+ - net/mlx5e: Device's mtu field is u16 and not int
+ - net/mlx5e: Fix minimum MTU
+ - net/mlx5e: Use vport MTU rather than physical port MTU
+ - ipv4/fib: don't warn when primary address is missing if in_dev is dead
+ - net/mlx4_en: fix spurious timestamping callbacks
+ - net: Implement net_dbg_ratelimited() for CONFIG_DYNAMIC_DEBUG case
+ - gre: do not pull header in ICMP error processing
+ - net_sched: introduce qdisc_replace() helper
+ - net_sched: update hierarchical backlog too
+ - sch_htb: update backlog as well
+ - sch_dsmark: update backlog as well
+ - netem: Segment GSO packets on enqueue
+ - ipv6/ila: fix nlsize calculation for lwtunnel
+ - net/mlx4_en: Fix endianness bug in IPV6 csum calculation
+ - [x86] VSOCK: do not disconnect socket when peer has shutdown SEND only
+ - net: bridge: fix old ioctl unlocked net device walk
+ - bridge: fix igmp / mld query parsing
+ - net: fix a kernel infoleak in x25 module (CVE-2016-4580)
+ - net: thunderx: avoid exposing kernel stack
+ - tcp: refresh skb timestamp at retransmit time
+ - net/route: enforce hoplimit max value
+ - ocfs2: revert using ocfs2_acl_chmod to avoid inode cluster lock hang
+ - ocfs2: fix posix_acl_create deadlock
+ - zsmalloc: fix zs_can_compact() integer overflow
+ - mm: thp: calculate the mapcount correctly for THP pages during WP faults
+ - [x86] crypto: qat - fix invalid pf2vf_resp_wq logic
+ - crypto: testmgr - Use kmalloc memory for RSA input
+ - ALSA: usb-audio: Quirk for yet another Phoenix Audio devices (v2)
+ - ALSA: usb-audio: Yet another Phoneix Audio device quirk
+ - ALSA: hda - Fix subwoofer pin on ASUS N751 and N551
+ - ALSA: hda - Fix white noise on Asus UX501VW headset
+ - ALSA: hda - Fix broken reconfig
+ - [armhf] spi: spi-ti-qspi: Fix FLEN and WLEN settings if bits_per_word is
+ overridden
+ - [armhf] spi: spi-ti-qspi: Handle truncated frames properly
+ - perf diff: Fix duplicated output column
+ - perf/core: Disable the event on a truncated AUX record
+ - vfs: rename: check backing inode being equal
+ - workqueue: fix rebind bound workers warning
+ - [armhf] regulator: s2mps11: Fix invalid selector mask and voltages
+ for buck9
+ - [armhf] regulator: axp20x: Fix axp22x ldo_io voltage ranges
+ - atomic_open(): fix the handling of create_error
+ - qla1280: Don't allocate 512kb of host tags
+ - tools lib traceevent: Do not reassign parg after collapse_tree()
+ - [x86] drm/i915: Update CDCLK_FREQ register on BDW after changing cdclk
+ frequency
+ - drm/radeon: fix PLL sharing on DCE6.1 (v2)
+ - [x86] drm/i915: Bail out of pipe config compute loop on LPT
+ - [x86] Revert "drm/i915: start adding dp mst audio"
+ - [x86] drm/i915/bdw: Add missing delay during L3 SQC credit programming
+ - drm/radeon: fix DP link training issue with second 4K monitor
+ - drm/radeon: fix DP mode validation
+ - [x86] drm/amdgpu: fix DP mode validation
+ - btrfs: reada: Fix in-segment calculation for reada
+ - Btrfs: fix truncate_space_check
+ - btrfs: remove error message from search ioctl for nonexistent tree
+ - btrfs: change max_inline default to 2048
+ - Btrfs: fix unreplayable log after snapshot delete + parent dir fsync
+ - Btrfs: fix file loss on log replay after renaming a file and fsync
+ - Btrfs: fix extent_same allowing destination offset beyond i_size
+ - Btrfs: fix deadlock between direct IO reads and buffered writes
+ - Btrfs: fix race when checking if we can skip fsync'ing an inode
+ - Btrfs: do not collect ordered extents when logging that inode exists
+ - btrfs: csum_tree_block: return proper errno value
+ - btrfs: do not write corrupted metadata blocks to disk
+ - Btrfs: fix invalid reference in replace_path
+ - btrfs: handle non-fatal errors in btrfs_qgroup_inherit()
+ - btrfs: fallback to vmalloc in btrfs_compare_tree
+ - Btrfs: don't use src fd for printk
+ - btrfs: Reset IO error counters before start of device replacing
+
+ [ Salvatore Bonaccorso ]
+ * tipc: check nl sock before parsing nested attributes (CVE-2016-4951)
+
+ [ Ben Hutchings ]
+ * aufs: Update support patches to aufs4.5-20160523
+ - mmap: Fix use-after-free in remap_file_pages(2)
+ * Revert "stmmac: Fix 'eth0: No PHY found' regression" (Closes: #823493)
+ * [x86] kvm:vmx: more complete state update on APICv on/off (CVE-2016-4440)
+ * USB: usbfs: fix potential infoleak in devio (CVE-2016-4482)
+ * ALSA: timer: Fix leak in SNDRV_TIMER_IOCTL_PARAMS (CVE-2016-4569)
+ * ALSA: timer: Fix leak in events via snd_timer_user_ccallback or
+ snd_timer_user_tinterrupt (CVE-2016-4578)
+ * dwc3-exynos: Fix deferred probing storm (Closes: #823552; thanks to
+ Steinar H. Gunderson)
+ * Re-apply "[media] videobuf2-v4l2: Verify planes array in buffer dequeueing",
+ reverted upstream in 4.5.5
+
+ [ Roger Shimizu ]
+ * [armhf] Enable SENSORS_PWM_FAN / PWM_SAMSUNG as module, as recommended by
+ Steinar H. Gunderson. (Closes: #824941)
+ * [armhf] For Odroid-U3 (Exynos4) support, enable ARCH_EXYNOS4 / MFD_MAX77686
+ / RTC_DRV_MAX77686 as built-in, and COMMON_CLK_MAX77686
+ / REGULATOR_MAX77686 / MMC_SDHCI_S3C as module. Thanks to
+ Vagrant Cascadian. (Closes: #825139)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 29 May 2016 22:21:11 +0100
+
+linux (4.5.4-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.5.4
+ - RDMA/iw_cxgb4: Fix bar2 virt addr calculation for T4 chips
+ - net/mlx5_core: Fix caching ATOMIC endian mode capability
+ - ipvs: handle ip_vs_fill_iph_skb_off failure
+ - ipvs: correct initial offset of Call-ID header search in SIP persistence
+ engine
+ - ipvs: drop first packet to redirect conntrack
+ - rtlwifi: Fix size of wireless mode variable
+ - [x86] mfd: intel-lpss: Remove clock tree on error path
+ - nbd: ratelimit error msgs after socket close
+ - null_blk: add lightnvm null_blk device to the nullb_list
+ - [arm64] ata: ahci_xgene: dereferencing uninitialized pointer in probe
+ - [armhf] wlcore: fix error handling in wlcore_event_fw_logger
+ - ath10k: fix pktlog in QCA99X0
+ - mwifiex: fix corner case association failure
+ - clk-divider: make sure read-only dividers do not write to their register
+ - [armhf] clk: rockchip: fix wrong mmc phase shift for rk3228
+ - [armhf] clk: rockchip: free memory in error cases when registering clock
+ branches
+ - [armel/versatile] clk: versatile: sp810: support reentrance
+ - [armhf] clk: sunxi: Fix sun8i-a23-apb0-clk divider flags
+ - [arm64] clk: xgene: Add missing parenthesis when clearing divider value
+ - [armhf] clk: bcm2835: fix check of error code returned by
+ devm_ioremap_resource()
+ - [armhf] pwm: omap-dmtimer: Fix inaccurate period and duty cycle
+ calculations
+ - [armhf] pwm: omap-dmtimer: Add sanity checking for load and match values
+ - [armhf] pwm: omap-dmtimer: Round load and match values rather than
+ truncate
+ - lpfc: fix misleading indentation
+ - gpiolib-acpi: Duplicate con_id string when adding it to the crs lookup
+ list
+ - ath9k: ar5008_hw_cmn_spur_mitigate: add missing mask_m & mask_p
+ initialisation
+ - mac80211: fix statistics leak if dev_alloc_name() fails
+ - tracing: Don't display trigger file for events that can't be enabled
+ - MD: make bio mergeable
+ - Minimal fix-up of bad hashing behavior of hash_64()
+ - mm: memcontrol: let v2 cgroups follow changes in system swappiness
+ - [armhf] mm, cma: prevent nr_isolated_* counters from going negative
+ - mm/zswap: provide unique zpool name
+ - propogate_mnt: Handle the first propogated copy being a slave
+ (CVE-2016-4581)
+ - modpost: fix module autoloading for OF devices with generic compatible
+ property
+ - [armhf] EXYNOS: Properly skip unitialized parent clock in power domain on
+ - [armhf] SoCFPGA: Fix secondary CPU startup in thumb2 kernel
+ - xen: Fix page <-> pfn conversion on 32 bit systems
+ - xen/balloon: Fix crash when ballooning on x86 32 bit PAE
+ - xen/evtchn: fix ring resize when binding new events
+ - HID: wacom: Add support for DTK-1651
+ - proc: prevent accessing /proc/<PID>/environ until it's ready
+ - mm: update min_free_kbytes from khugepaged after core initialization
+ - batman-adv: fix DAT candidate selection (must use vid)
+ - batman-adv: Check skb size before using encapsulated ETH+VLAN header
+ - batman-adv: Fix broadcast/ogm queue limit on a removed interface
+ - batman-adv: Reduce refcnt of removed router when updating route
+ - [x86] libnvdimm, pfn: fix memmap reservation sizing
+ - writeback: Fix performance regression in wb_over_bg_thresh()
+ - [x86] tsc: Read all ratio bits from MSR_PLATFORM_INFO
+ - [arm64] cpuidle: Pass on arm_cpuidle_suspend()'s return value
+ - [x86] sysfb_efi: Fix valid BAR address range check
+ - [arm64] dts: apq8064: add ahci ports-implemented mask
+ - ACPICA: Dispatcher: Update thread ID for recursive method calls
+ - [powerpc*] Fix bad inline asm constraint in create_zero_mask()
+ - libahci: save port map for forced port map
+ - ata: ahci-platform: Add ports-implemented DT bindings.
+ - USB: serial: cp210x: add ID for Link ECU
+ - USB: serial: cp210x: add Straizona Focusers device ids
+ - Revert "USB / PM: Allow USB devices to remain runtime-suspended when
+ sleeping"
+ - nvmem: mxs-ocotp: fix buffer overflow in read
+ - [x86] Drivers: hv: vmbus: Fix signaling logic in
+ hv_need_to_signal_on_read()
+ - [armhf] gpu: ipu-v3: Fix imx-ipuv3-crtc module autoloading
+ - [x86] drm/amdgpu: make sure vertical front porch is at least 1
+ - [x86] drm/amdgpu: set metadata pointer to NULL after freeing.
+ - [x86] iio: ak8975: Fix NULL pointer exception on early interrupt
+ - [x86] iio: ak8975: fix maybe-uninitialized warning
+ - drm/radeon: make sure vertical front porch is at least 1
+ - [x86] drm/i915: Avoid stalling on pending flips for legacy cursor updates
+ - [x86] drm/i915/ddi: Fix eDP VDD handling during booting and suspend/resume
+ - [x86] drm/i915: Fix system resume if PCI device remained enabled
+ - [x86] drm/i915: Fix eDP low vswing for Broadwell
+ - [x86] drm/i915: Make RPS EI/thresholds multiple of 25 on SNB-BDW
+ - [x86] drm/i915: Fake HDMI live status
+ - [x86] ACPI / processor: Request native thermal interrupt handling via _OSC
+
+ [ Aurelien Jarno ]
+ * [mips*] Fix PR_SET_FPMODE issues with multi-threaded programs.
+ * [i386] Stop recommending libc6-i686.
+ * [arm,x86] Fix memory corruption in KVM with THP enabled. (Closes: #821225)
+ * [mips*/octeon] Add support for byte swapped initramfs to handle u-boot and
+ kernel running with a different endianness.
+ * [mipsel/octeon] Activate flavour on mipsel.
+
+ [ Roger Shimizu ]
+ * netfilter: Enable NF_DUP_NETDEV / NFT_DUP_NETDEV / NFT_FWD_NETDEV
+ as module, as recommended by Arturo Borrero Gonzalez. (Closes: #824162)
+
+ [ Salvatore Bonaccorso ]
+ * KEYS: Fix ASN.1 indefinite length object parsing (CVE-2016-0758)
+ * net: fix infoleak in llc (CVE-2016-4485)
+ * KVM: MTRR: remove MSR 0x2f8 (CVE-2016-3713)
+
+ [ Ben Hutchings ]
+ * gencontrol.py: Fix implementation of [packages]tools config option,
+ thanks to Yves-Alexis Perez
+ * debian/control: Exclude tools from 'stage1' build profile
+ * debian/control,debian/rules: Support a 'pkg.linux.notools' build profile
+ which does not build tools packages
+ * debian/control,debian/rules,debian/rules.d: Support the 'nodoc' build
+ profile
+ * debian/control: Remove alternate build-dependency on binutils-dev that was
+ used for backports to wheezy
+ * net: fix infoleak in rtnetlink (CVE-2016-4486)
+ * nf_conntrack: avoid kernel pointer value leak in slab name
+ * vfs: do_splice_to(): cap the size before passing to ->splice_read()
+ * crypto: hash - Fix page length clamping in hash walk
+ * isofs: get_rock_ridge_filename(): handle malformed NM entries
+ * uapi glibc compat: fix compile errors when glibc net/if.h included
+ before linux/if.h (Closes: #822393)
+ * videobuf2-core: Fix crash after fixing CVE-2016-4568
+ * [armhf] Enable more Exynos drivers (Closes: #824435):
+ - drm: Enable DRM_EXYNOS as module, DRM_EXYNOS_MIXER, DRM_EXYNOS_FIMD,
+ DRM_EXYNOS_DSI, DRM_EXYNOS_DP, DRM_EXYNOS_HDMI
+ - phy: Enable PHY_EXYNOS_MIPI_VIDEO, PHY_EXYNOS_DP_VIDEO as modules
+ - cpuidle: Enable ARM_EXYNOS_CPUIDLE
+ - iio: Enable EXYNOS_ADC as module
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 16 May 2016 19:17:22 +0100
+
+linux (4.5.3-2) unstable; urgency=medium
+
+ * [s390x] PCI: Ignore zpci ABI changes; these functions are not used by
+ modules
+ * [powerpc*] Fix sstep compile on powerpcspe (Closes: #823526; thanks to
+ Lennart Sorensen)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 08 May 2016 15:03:45 +0100
+
+linux (4.5.3-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.5.3
+ - mmc: block: Use the mmc host device index as the mmcblk device index
+ - block: partition: initialize percpuref before sending out KOBJ_ADD
+ - block: loop: fix filesystem corruption in case of aio/dio
+ - [arm64] efi: Don't apply MEMBLOCK_NOMAP to UEFI memory map mapping
+ - [x86] mce: Avoid using object after free in genpool
+ - [x86] kvm: do not leak guest xcr0 into host interrupt handlers
+ - [arm*] KVM: Handle forward time correction gracefully
+ - [armhf] mvebu: Correct unit address for linksys
+ - [armhf] OMAP2: Fix up interconnect barrier initialization for DRA7
+ - [armhf] OMAP2+: hwmod: Fix updating of sysconfig register
+ - assoc_array: don't call compare_object() on a node
+ - [x86] usb: xhci: applying XHCI_PME_STUCK_QUIRK to Intel BXT B0 host
+ - xhci: resume USB 3 roothub first
+ - usb: host: xhci: add a new quirk XHCI_NO_64BIT_SUPPORT
+ - usb: xhci: fix wild pointers in xhci_mem_cleanup
+ - xhci: fix 10 second timeout on removal of PCI hotpluggable xhci
+ controllers
+ - usb: host: xhci-plat: Make enum xhci_plat_type start at a non zero value
+ - usb: hcd: out of bounds access in for_each_companion
+ - usb: gadget: f_fs: Fix use-after-free
+ - dm cache metadata: fix READ_LOCK macros and cleanup WRITE_LOCK macros
+ - dm cache metadata: fix cmd_read_lock() acquiring write lock
+ - lib: lz4: fixed zram with lz4 on big endian machines
+ - debugfs: Make automount point inodes permanently empty
+ - dmaengine: dw: fix master selection
+ - [armhf] dmaengine: omap-dma: Fix polled channel completion detection
+ and handling
+ - dmaengine: edma: Remove dynamic TPTC power management feature
+ - mtd: nand: pxa3xx_nand: fix dmaengine initialization
+ - sched/cgroup: Fix/cleanup cgroup teardown/init
+ - [x86] EDAC, sb_edac.c: Repair damage introduced when "fixing"
+ channel address
+ - [x86] EDAC, sb_edac.c: Take account of channel hashing when needed
+ - ALSA: hda - Don't trust the reported actual power state
+ - [x86] ALSA: hda/realtek - Add ALC3234 headset mode for Optiplex 9020m
+ - ALSA: hda - Keep powering up ADCs on Cirrus codecs
+ - [x86] ALSA: hda - add PCI ID for Intel Broxton-T
+ - ALSA: pcxhr: Fix missing mutex unlock
+ - [x86] ALSA: hda - Add dock support for ThinkPad X260
+ - [x86] ALSA: hda - Update BCLK also at hotplug for i915 HSW/BDW
+ - asm-generic/futex: Re-enable preemption in futex_atomic_cmpxchg_inatomic()
+ - futex: Handle unlock_pi race gracefully
+ - futex: Acknowledge a new waiter in counter before plist
+ - drm/nouveau/core: use vzalloc for allocating ramht
+ - drm/qxl: fix cursor position with non-zero hotspot
+ - [x86] drm/i915: Fix race condition in intel_dp_destroy_mst_connector()
+ - Revert "drm/radeon: disable runtime pm on PX laptops without dGPU
+ power control"
+ - [armhf] Revert "PCI: imx6: Add support for active-low reset GPIO"
+ - usbvision: revert commit 588afcc1
+ - [x86] Revert "drm/amdgpu: disable runtime pm on PX laptops without dGPU
+ power control"
+ - cpufreq: intel_pstate: Fix processing for turbo activation ratio
+ - [s390x] pci: add extra padding to function measurement block
+ - iwlwifi: pcie: lower the debug level for RSA semaphore access
+ - iwlwifi: mvm: fix memory leak in paging
+ - crypto: rsa-pkcs1pad - fix dst len
+ - [x86] crypto: ccp - Prevent information leakage on export
+ - crypto: sha1-mb - use corrcet pointer while completing jobs
+ - [powerpc*] scan_features() updates incorrect bits for REAL_LE
+ - [powerpc*] Update cpu_user_features2 in scan_features()
+ - [powerpc*] Update TM user feature bits in scan_features()
+ - nl80211: check netlink protocol in socket release notification
+ - netlink: don't send NETLINK_URELEASE for unbound sockets
+ - pinctrl: single: Fix pcs_parse_bits_in_pinctrl_entry to use __ffs than ffs
+ - [x86] iommu/amd: Fix checking of pci dma aliases
+ - iommu/dma: Restore scatterlist offsets correctly
+ - [x86] drm/amdgpu: when suspending, if uvd/vce was running. need to cancel
+ delay work.
+ - [x86] drm/amdgpu: use defines for CRTCs and AMFT blocks
+ - [x86] drm/amdgpu: bump the afmt limit for CZ, ST, Polaris
+ - [x86] amdgpu/uvd: add uvd fw version for amdgpu
+ - [x86] drm/amdgpu: fix regression on CIK (v2)
+ - drm/radeon: add a quirk for a XFX R9 270X
+ - drm/radeon: fix initial connector audio value
+ - drm/radeon: forbid mapping of userptr bo through radeon device file
+ - drm/radeon: fix vertical bars appear on monitor (v2)
+ - [mips*el/loongson-3] drm: Loongson-3 doesn't fully support wc memory
+ - drm/nouveau/gr/gf100: select a stream master to fixup tfb offset queries
+ - drm/dp/mst: Validate port in drm_dp_payload_send_msg()
+ - drm/dp/mst: Restore primary hub guid on resume
+ - drm/dp/mst: Get validated port ref in drm_dp_update_payload_part1()
+ - [x86] drm/i915: Pass the correct encoder to intel_ddi_clk_select()
+ with MST
+ - [x86] drm/i915: Cleanup phys status page too
+ - [x86] drm/i915: Use the active wm config for merging on ILK-BDW
+ - [x86] drm/i915: Start WM computation from scratch on ILK-BDW
+ - [x86] drm/i915: skl_update_scaler() wants a rotation bitmask instead of
+ bit number
+ - [x86] drm/amdkfd: uninitialized variable in
+ dbgdev_wave_control_set_registers()
+ - [x86] drm/i915/skl: Fix DMC load on Skylake J0 and K0
+ - [x86] drm/i915/skl: Fix spurious gpu hang with gt3/gt4 revs
+ - [x86] drm/i915: Fixup the free space logic in ring_prepare
+ - [x86] drm/i915: Force ringbuffers to not be at offset 0
+ - [x86] drm/i915: Use fw_domains_put_with_fifo() on HSW
+ - drm/ttm: fix kref count mess in ttm_bo_move_to_lru_tail
+ - [x86] perf intel-pt: Fix segfault tracing transactions
+ - [armhf] i2c: exynos5: Fix possible ABBA deadlock by keeping I2C
+ clock prepared
+ - ACPICA / Interpreter: Fix a regression triggered because of wrong Linux
+ ECDT support
+ - [x86] mmc: sdhci-acpi: Reduce Baytrail eMMC/SD/SDIO hangs
+ - [x86] toshiba_acpi: Fix regression caused by hotkey enabling value
+ - [x86] EDAC: i7core, sb_edac: Don't return NOTIFY_BAD from mce_decoder
+ callback
+ - [x86] ASoC: ssm4567: Reset device before regcache_sync()
+ - [x86] ASoC: rt5640: Correct the digital interface data select
+ - vb2-memops: Fix over allocation of frame vectors
+ - media: vb2: Fix regression on poll() for RW mode
+ - videobuf2-core: Check user space planes array in dqbuf
+ - videobuf2-v4l2: Verify planes array in buffer dequeueing (CVE-2016-4568)
+ - v4l2-dv-timings.h: fix polarity for 4k formats
+ - IB/core: Fix oops in ib_cache_gid_set_default_gid
+ - mwifiex: fix IBSS data path issue.
+ - IB/mlx5: Expose correct max_sge_rd limit
+ - IB/security: Restrict use of the write() interface (CVE-2016-4565)
+ - efi: Fix out-of-bounds read in variable_matches()
+ - efi: Expose non-blocking set_variable() wrapper to efivars
+ - [x86] apic: Handle zero vector gracefully in clear_vector_irq()
+ - workqueue: fix ghost PENDING flag while doing MQ IO
+ - slub: clean up code for kmem cgroup support to kmem_cache_free_bulk
+ - cgroup, cpuset: replace cpuset_post_attach_flush() with
+ cgroup_subsys->post_attach callback
+ - memcg: relocate charge moving from ->attach to ->post_attach
+ - mm: exclude HugeTLB pages from THP page_mapped() logic
+ - mm/huge_memory: replace VM_NO_THP VM_BUG_ON with actual VMA check
+ - numa: fix /proc/<pid>/numa_maps for THP
+ - mm: vmscan: reclaim highmem zone if buffer_heads is over limit
+ - mm/hwpoison: fix wrong num_poisoned_pages accounting
+ - locking/mcs: Fix mcs_spin_lock() ordering
+ - [armhf] spi/rockchip: Make sure spi clk is on in rockchip_spi_set_cs
+ - [armhf] irqchip/sunxi-nmi: Fix error check of of_io_request_and_map()
+ - [armhf] regulator: s5m8767: fix get_register() error handling
+ - scsi_dh: force modular build if SCSI is a module
+ - lib/mpi: Endianness fix
+ - [x86] misc: mic/scif: fix wrap around tests
+ - PM / OPP: Initialize u_volt_min/max to a valid value
+ - PM / Domains: Fix removal of a subdomain
+ - drivers/misc/ad525x_dpot: AD5274 fix RDAC read back errors
+ - perf evlist: Reference count the cpu and thread maps at set_maps()
+ - perf tools: Fix perf script python database export crash
+ - [x86] mm/kmmio: Fix mmiotrace for hugepages
+ - ext4: fix NULL pointer dereference in ext4_mark_inode_dirty()
+ - f2fs crypto: fix corrupted symlink in encrypted case
+ - f2fs: slightly reorganize read_raw_super_block
+ - f2fs: cover large section in sanity check of super
+ - ext4/fscrypto: avoid RCU lookup in d_revalidate
+ - f2fs: do f2fs_balance_fs when block is allocated
+ - f2fs: don't need to call set_page_dirty for io error
+ - f2fs crypto: handle unexpected lack of encryption keys
+ - f2fs crypto: make sure the encryption info is initialized on opendir(2)
+ - bus: uniphier-system-bus: fix condition of overlap check
+ - mtd: spi-nor: remove micron_quad_enable()
+ - mtd: brcmnand: Fix v7.1 register offsets
+ - mtd: nand: Drop mtd.owner requirement in nand_scan
+ - perf hists browser: Only offer symbol scripting when a symbol is under
+ the cursor
+ - perf hists browser: Fix dump to show correct callchain style
+ - perf tools: handle spaces in file names obtained from /proc/pid/maps
+ - NTB: Remove _addr functions from ntb_hw_amd
+ - perf/core: Don't leak event in the syscall error path
+ - perf/core: Fix time tracking bug with multiplexing
+ - perf hists: Fix determination of a callchain node's childlessness
+ - [armhf] OMAP3: Add cpuidle parameters table for omap3430
+ - [armhf] dts: armada-375: use armada-370-sata for SATA
+ - [armhf] dts: am33xx: Fix GPMC dma properties
+ - btrfs: fix memory leak of fs_info in block group cache
+ - btrfs: cleaner_kthread() doesn't need explicit freeze
+ - [armhf] thermal: rockchip: fix a impossible condition caused by the
+ warning
+ - sunrpc/cache: drop reference when sunrpc_cache_pipe_upcall() detects
+ a race
+ - megaraid_sas: add missing curly braces in ioctl handler
+ - tpm: fix checks for policy digest existence in tpm2_seal_trusted()
+ - tpm: fix: set continueSession attribute for the unseal operation
+
+ [ Uwe Kleine-König ]
+ * [armhf] enable I2C_MUX_PCA954x, MMC_SDHCI_PXAV3, AHCI_MVEBU
+
+ [ Ben Hutchings ]
+ * bug control: Update list of related firmware packages
+ * Revert "sp5100_tco: fix the device check for SB800 and later chipsets"
+ (Closes: #823146; probably fixes #822651)
+ * bpf: fix double-fdput in replace_map_fd_with_map_ptr() (CVE-2016-4557)
+ (Closes: #823603)
+ * bpf: fix refcnt overflow (CVE-2016-4558)
+ * bpf: fix check_map_func_compatibility logic
+ * stable-update: Rewrite stable-update.sh in Python
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 07 May 2016 21:59:15 +0100
+
+linux (4.5.2-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.5.2
+ - hwmon: (max1111) Return -ENODEV from max1111_read_channel if not
+ instantiated
+ - PKCS#7: pkcs7_validate_trust(): initialize the _trusted output argument
+ - [hppa] Fix SIGSYS signals in compat case
+ - [hppa] Fix and enable seccomp filter support
+ - [hppa] Avoid function pointers for kernel exception routines
+ - [hppa] Fix kernel crash with reversed copy_from_user()
+ - [hppa] Unbreak handling exceptions from kernel modules
+ - ALSA: timer: Use mod_timer() for rearming the system timer
+ - mm: fix invalid node in alloc_migrate_target()
+ - [powerpc*] mm: Fixup preempt underflow with huge pages
+ - [s390x] /mm: handle PTE-mapped tail pages in fast gup
+ - [x86] libnvdimm: fix smart data retrieval
+ - [x86] libnvdimm, pfn: fix uuid validation
+ - [powerpc*] process: Fix altivec SPR not being saved
+ - compiler-gcc: disable -ftracer for __noclone functions
+ - drm/dp: move hw_mutex up the call stack
+ - drm/udl: Use unlocked gem unreferencing
+ - [x86] drm/amd/powerplay: fix segment fault issue in multi-display case.
+ - [x86] drm/amdgpu/gmc: move vram type fetching into sw_init
+ - [x86] drm/amdgpu/gmc: use proper register for vram type on Fiji
+ - xen/events: Mask a moving irq
+ - net: validate variable length ll headers
+ - ax25: add link layer header validation function
+ - packet: validate variable length ll headers
+ - bpf: avoid copying junk bytes in bpf_get_current_comm()
+ - qlcnic: Remove unnecessary usage of atomic_t
+ - qlcnic: Fix mailbox completion handling during spurious interrupt
+ - macvtap: always pass ethernet header in linear
+ - bridge: allow zero ageing time
+ - ipv4: Don't do expensive useless work during inetdev destroy.
+ - net: Fix use after free in the recvmmsg exit path
+ - mlx4: add missing braces in verify_qp_parameters
+ - farsync: fix off-by-one bug in fst_add_one
+ - ath9k: fix buffer overrun for ar9287
+ - [armhf] net: mvneta: Fix spinlock usage
+ - ppp: ensure file->private_data can't be overridden
+ - tcp/dccp: remove obsolete WARN_ON() in icmp handlers
+ - qlge: Fix receive packets drop.
+ - bonding: fix bond_get_stats()
+ - ipv4: fix broadcast packets reception
+ - ipv4: initialize flowi4_flags before calling fib_lookup()
+ - ppp: take reference on channels netns
+ - xfrm: Fix crash observed during device unregistration and decryption
+ - ipv6: udp: fix UDP_MIB_IGNOREDMULTI updates
+ - bridge: Allow set bridge ageing time when switchdev disabled
+ - rtnl: fix msg size calculation in if_nlmsg_size()
+ - tun, bpf: fix suspicious RCU usage in tun_{attach, detach}_filter
+ - tuntap: restore default qdisc
+ - ipv4: l2tp: fix a potential issue in l2tp_ip_recv
+ - ipv6: l2tp: fix a potential issue in l2tp_ip6_recv
+ - ip6_tunnel: set rtnl_link_ops before calling register_netdevice
+ - ipv6: Count in extension headers in skb->network_header
+ - mpls: find_outdev: check for err ptr in addition to NULL check
+ - USB: uas: Limit qdepth at the scsi-host level
+ - USB: uas: Add a new NO_REPORT_LUNS quirk
+ - [x86] KVM: Inject pending interrupt even if pending nmi exist
+ - [x86] KVM: reduce default value of halt_poll_ns parameter
+ - pinctrl: pistachio: fix mfio84-89 function description and pinmux.
+ - pinctrl: sunxi: Fix A33 external interrupts not working
+ - pinctrl: freescale: imx: fix bogus check of of_iomap() return value
+ - au0828: fix au0828_v4l2_close() dev_state race condition
+ - au0828: Fix dev_state handling
+ - coda: fix error path in case of missing pdata on non-DT platform
+ - v4l: vsp1: Set the SRU CTRL0 register when starting the stream
+ - pcmcia: db1xxx_ss: fix last irq_to_gpio user
+ - rbd: use GFP_NOIO consistently for request allocations
+ - mac80211: properly deal with station hashtable insert errors
+ - mac80211: avoid excessive stack usage in sta_info
+ - mac80211: fix ibss scan parameters
+ - mac80211: fix unnecessary frame drops in mesh fwding
+ - mac80211: fix txq queue related crashes
+ - [armhf] gpio: pca953x: Use correct u16 value for register word write
+ - scsi: Do not attach VPD to devices that don't support it
+ - [armel,armhf]: 8550/1: protect idiv patching against undefined
+ gcc behavior
+ - iio: fix config watermark initial value
+ - iio: st_magn: always define ST_MAGN_TRIGGER_SET_STATE
+ - iio: accel: bmc150: fix endianness when reading axes
+ - iio: gyro: bmg160: fix buffer read values
+ - iio: gyro: bmg160: fix endianness when reading axes
+ - sd: Fix excessive capacity printing on devices with blocks bigger than
+ 512 bytes
+ - fs: add file_dentry() (Closes: #821442)
+ + nfs: use file_dentry()
+ + ext4 crypto: use dget_parent() in ext4_d_revalidate()
+ + ext4: use dget_parent() in ext4_file_open()
+ + ext4: use file_dentry()
+ - btrfs: fix crash/invalid memory access on fsync when using overlayfs
+ - ext4: ignore quota mount options if the quota feature is enabled
+ - iommu: Don't overwrite domain pointer when there is no default_domain
+ - Btrfs: fix file/data loss caused by fsync after rename and new inode
+ - [arm64] replace read_lock to rcu lock in call_step_hook
+ - mmc: sdhci: Fix regression setting power on Trats2 board
+ - ALSA: hda - Fix regression of monitor_present flag in eld proc file
+ - [x86] ALSA: usb-audio: Skip volume controls triggers hangup on Dell
+ USB Dock
+ - HID: wacom: fix Bamboo ONE oops
+ - HID: usbhid: fix inconsistent reset/resume/reset-resume behavior
+
+ [ Salvatore Bonaccorso ]
+ * [x86] xen: suppress hugetlbfs in PV guests (CVE-2016-3961)
+ * [x86] USB: usbip: fix potential out-of-bounds write (CVE-2016-3955)
+
+ [ Ben Hutchings ]
+ * fs: Consolidate softdep declarations in each module
+ * Bump ABI to 2
+ * [armel/marvell] dts: kirkwood: fix SD slot default configuration for OpenRD
+ (Closes: #811351)
+ * atl2: Disable unimplemented scatter/gather feature (CVE-2016-2117)
+ * [x86] sound/soc/intel: Enable SND_SOC_INTEL_BYTCR_RT5640_MACH (replacing
+ SND_SOC_INTEL_BYT_RT5640_MACH; closes: #822267),
+ SND_SOC_INTEL_BYTCR_RT5651_MACH, SND_SOC_INTEL_CHT_BSW_RT5672_MACH,
+ SND_SOC_INTEL_CHT_BSW_RT5645_MACH, SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH,
+ SND_SOC_INTEL_SKL_RT286_MACH, SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH,
+ SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH as modules
+ * module: Invalidate signatures on force-loaded modules
+ * linux-source: Fix up module signing configuration in included kernel
+ config files
+ * README.Debian: Change more URLs to use https: scheme
+ * [sparc] Implement and wire up hotplug and modalias_show for vio, thanks to
+ Adrian Glaubitz (Closes: #815977)
+ * linux-headers: Avoid mixed implicit and normal rules in Makefile, thanks to
+ Thierry Herbelot (Closes: #822666)
+ * memcg: remove lru_add_drain_all() invocation from mem_cgroup_move_charge()
+ (Closes: #822084)
+ * linux-perf: Add build-time check for unversioned files that are likely to
+ result in file conflicts
+ * linux-perf: Move tips.txt to /usr/share/doc/linux-perf-<version>
+ (Closes: #821741)
+ * tools/build: Fix bpf(2) feature test (fixes FTBFS on alpha, sh4;
+ closes: #822364)
+ * [armhf] Disable FB_OMAP2; it is redundant and conflicting with DRM_OMAP
+ * [armhf] mm: Enable CMA, DMA_CMA
+ * Input: gtco - fix crash on detecting device without endpoints
+ (CVE-2016-2187)
+
+ [ Aurelien Jarno ]
+ * [mips*] Emulate unaligned LDXC1 and SDXC1 instructions.
+
+ [ Uwe Kleine-König ]
+ * [armhf] enable NET_DSA and available switch drivers as modules.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 28 Apr 2016 18:03:18 +0200
+
+linux (4.5.1-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.5.1
+ - [x86] entry/compat: Keep TS_COMPAT set during signal delivery
+ - [x86] perf/intel: Add definition for PT PMI bit
+ - [x86] KVM: fix missed hardware breakpoints
+ - [x86] KVM: i8254: change PIT discard tick policy
+ - [x86] KVM: fix spin_lock_init order on x86
+ - [x86] KVM: VMX: avoid guest hang on invalid invept instruction
+ - [x86] KVM: VMX: avoid guest hang on invalid invvpid instruction
+ - [x86] KVM: VMX: fix nested vpid for old KVM guests
+ - perf/core: Fix perf_sched_count derailment
+ - perf tools: Fix checking asprintf return value
+ - Thermal: Ignore invalid trip points
+ - sched/cputime: Fix steal_account_process_tick() to always return jiffies
+ - sched/fair: Avoid using decay_load_missed() with a negative value
+ - [x86] EDAC/sb_edac: Fix computation of channel address
+ - [x86] EDAC, amd64_edac: Shift wrapping issue in f1x_get_norm_dct_addr()
+ - [s390x] fix floating pointer register corruption (again)
+ - [s390x] cpumf: add missing lpp magic initialization
+ - [s390x] pci: enforce fmb page boundary rule
+ - [armhf] pinctrl-bcm2835: Fix cut-and-paste error in "pull" parsing
+ - [x86] irq: Cure live lock in fixup_irqs() (Closes: #817816)
+ - [x86] apic: Fix suspicious RCU usage in
+ smp_trace_call_function_interrupt()
+ - [amd64] iopl: Properly context-switch IOPL on Xen PV (CVE-2016-3157)
+ - [x86] mm: TLB_REMOTE_SEND_IPI should count pages
+ - sg: fix dxferp in from_to case
+ - aacraid: Fix RRQ overload
+ - aacraid: Fix memory leak in aac_fib_map_free
+ - aacraid: Set correct msix count for EEH recovery
+ - sd: Fix discard granularity when LBPRZ=1
+ - ncr5380: Correctly clear command pointers and lists after bus reset
+ - ncr5380: Dont release lock for PIO transfer
+ - ncr5380: Dont re-enter NCR5380_select()
+ - ncr5380: Forget aborted commands
+ - ncr5380: Fix NCR5380_select() EH checks and result handling
+ - ncr5380: Call scsi_eh_prep_cmnd() and scsi_eh_restore_cmnd() as and when
+ appropriate
+ - scsi: storvsc: fix SRB_STATUS_ABORTED handling
+ - be2iscsi: set the boot_kset pointer to NULL in case of failure
+ - aic7xxx: Fix queue depth handling
+ - libnvdimm: Fix security issue with DSM IOCTL.
+ - libnvdimm, pmem: fix kmap_atomic() leak in error path
+ - dm snapshot: disallow the COW and origin devices from being identical
+ - dm: fix excessive dm-mq context switching
+ - dm thin metadata: don't issue prefetches if a transaction abort
+ has failed
+ - dm cache: make sure every metadata function checks fail_io
+ - dm: fix rq_end_stats() NULL pointer in dm_requeue_original_request()
+ - usb: retry reset if a device times out
+ - usb: hub: fix a typo in hub_port_init() leading to wrong logic
+ - USB: cdc-acm: more sanity checking (CVE-2016-3138)
+ - USB: iowarrior: fix oops with malicious USB descriptors (incomplete fix
+ for CVE-2016-2188)
+ - USB: usb_driver_claim_interface: add sanity checking
+ - USB: mct_u232: add sanity checking in probe (CVE-2016-3136)
+ - USB: digi_acceleport: do sanity checking for the number of ports
+ (CVE-2016-3140)
+ - USB: cypress_m8: add endpoint sanity check (CVE-2016-3137)
+ - Input: powermate - fix oops with malicious USB descriptors
+ (CVE-2016-2186)
+ - ALSA: usb-audio: Fix NULL dereference in create_fixed_stream_quirk()
+ (CVE-2016-2184)
+ - ALSA: usb-audio: Add sanity checks for endpoint accesses (CVE-2016-2184)
+ - ALSA: usb-audio: Minor code cleanup in create_fixed_stream_quirk()
+ - ALSA: usb-audio: Fix double-free in error paths after
+ snd_usb_add_audio_stream() call
+ - crypto: ccp - Add hash state import and export support
+ - crypto: ccp - Limit the amount of information exported
+ - crypto: ccp - Don't assume export/import areas are aligned
+ - crypto: ccp - memset request context to zero during import
+ - crypto: keywrap - memzero the correct memory
+ - [armel/marvell,armhf] crypto: marvell/cesa - forward
+ devm_ioremap_resource() error code
+ - [x86] mei: bus: check if the device is enabled before data transfer
+ - tpm: fix the rollback in tpm_chip_register()
+ - tpm_crb: tpm2_shutdown() must be called before tpm_chip_unregister()
+ - tpm_eventlog.c: fix binary_bios_measurements
+ - tpm: fix the cleanup of struct tpm_chip
+ - HID: logitech: fix Dual Action gamepad support
+ - HID: i2c-hid: fix OOB write in i2c_hid_set_or_send_report()
+ - HID: multitouch: force retrieving of Win8 signature blob
+ - HID: fix hid_ignore_special_drivers module parameter
+ - staging: comedi: ni_tiocmd: change mistaken use of start_src for start_arg
+ - staging: comedi: ni_mio_common: fix the ni_write[blw]() functions
+ - tty: Fix GPF in flush_to_ldisc(), part 2
+ - net: irda: Fix use-after-free in irtty_open()
+ - 8250: use callbacks to access UART_DLL/UART_DLM
+ - saa7134: Fix bytesperline not being set correctly for planar formats
+ - adv7511: TX_EDID_PRESENT is still 1 after a disconnect
+ - bttv: Width must be a multiple of 16 when capturing planar formats
+ - coda: fix first encoded frame payload
+ - media: v4l2-compat-ioctl32: fix missing length copy in put_v4l2_buffer32
+ - mtip32xx: Avoid issuing standby immediate cmd during FTL rebuild
+ - mtip32xx: Fix broken service thread handling
+ - mtip32xx: Remove unwanted code from taskfile error handler
+ - mtip32xx: Fix for rmmod crash when drive is in FTL rebuild
+ - mtip32xx: Handle safe removal during IO
+ - mtip32xx: Handle FTL rebuild failure state during device initialization
+ - mtip32xx: Implement timeout handler
+ - mtip32xx: Cleanup queued requests after surprise removal
+ - ALSA: hda - Fix unexpected resume through regmap code path
+ - ALSA: hda - Apply reboot D3 fix for CX20724 codec, too
+ - [x86] ALSA: intel8x0: Add clock quirk entry for AD1981B on IBM
+ ThinkPad X41.
+ - ALSA: hda - Don't handle ELD notify from invalid port
+ - [x86] ALSA: hda - fix the mic mute button and led problem for a Lenovo AIO
+ - ALSA: hda - Fix unconditional GPIO toggle via automute
+ - [x86] ALSA: hda - Limit i915 HDMI binding only for HSW and later
+ - [x86] ALSA: hda - Fix spurious kernel WARNING on Baytrail HDMI
+ - [x86] ALSA: hda - Really restrict i915 notifier to HSW+
+ - ALSA: hda - Fix forgotten HDMI monitor_present update
+ - [x86] ALSA: hda - Workaround for unbalanced i915 power refcount by
+ concurrent probe
+ - ALSA: hda - Fix missing ELD update at unplugging
+ - jbd2: fix FS corruption possibility in jbd2_journal_destroy() on
+ umount path
+ - [arm64] Update PTE_RDONLY in set_pte_at() for PROT_NONE permission
+ - brd: Fix discard request processing
+ - IB/srpt: Simplify srpt_handle_tsk_mgmt()
+ - bcache: cleaned up error handling around register_cache()
+ - bcache: fix race of writeback thread starting before complete
+ initialization
+ - bcache: fix cache_set_flush() NULL pointer dereference on OOM
+ - mm: memcontrol: reclaim when shrinking memory.high below usage
+ - mm: memcontrol: reclaim and OOM kill when shrinking memory.max below usage
+ - watchdog: don't run proc_watchdog_update if new value is same as old
+ - Bluetooth: Fix potential buffer overflow with Add Advertising
+ - cgroup: ignore css_sets associated with dead cgroups during migration
+ - [amrhf] net: mvneta: enable change MAC address when interface is up
+ - brcmfmac: Increase nr of supported flowrings.
+ - of: alloc anywhere from memblock if range not specified
+ - vfs: show_vfsstat: do not ignore errors from show_devname method
+ - splice: handle zero nr_pages in splice_to_pipe()
+ - quota: Fix possible GPF due to uninitialised pointers
+ - xfs: fix two memory leaks in xfs_attr_list.c error paths
+ - raid1: include bio_end_io_list in nr_queued to prevent freeze_array hang
+ - md/raid5: Compare apples to apples (or sectors to sectors)
+ - RAID5: check_reshape() shouldn't call mddev_suspend
+ - RAID5: revert e9e4c377e2f563 to fix a livelock
+ - raid10: include bio_end_io_list in nr_queued to prevent freeze_array hang
+ - md/raid5: preserve STRIPE_PREREAD_ACTIVE in break_stripe_batch_list
+ - md: multipath: don't hardcopy bio in .make_request path
+ - fuse: do not use iocb after it may have been freed
+ - fuse: Add reference counting for fuse_io_priv
+ - fs/coredump: prevent fsuid=0 dumps into user-controlled directories
+ - [armhf] drm/vc4: Return -EFAULT on copy_from_user() failure
+ - [x86] drm/radeon: disable runtime pm on PX laptops without dGPU
+ power control
+ - drm/radeon: Don't drop DP 2.7 Ghz link setup on some cards.
+ - drm/radeon: rework fbdev handling on chips with no connectors
+ - drm/radeon/mst: fix regression in lane/link handling.
+ - [x86] drm/amdgpu: disable runtime pm on PX laptops without dGPU
+ power control
+ - drm/amdgpu: include the right version of gmc header files for iceland
+ - drm/amd/powerplay: add uvd/vce dpm enabling flag to fix the performance
+ issue for CZ
+ - tracing: Have preempt(irqs)off trace preempt disabled functions
+ - tracing: Fix crash from reading trace_pipe with sendfile
+ - tracing: Fix trace_printk() to print when not using bprintk()
+ - bitops: Do not default to __clear_bit() for __clear_bit_unlock()
+ - [x86] ideapad-laptop: Add ideapad Y700 (15) to the no_hw_rfkill DMI list
+ - mmc: block: fix ABI regression of mmc_blk_ioctl
+ - mmc: mmc_spi: Add Card Detect comments and fix CD GPIO case
+ - mmc: sdhci: move initialisation of command error member
+ - mmc: sdhci: clean up command error handling
+ - mmc: sdhci: fix command response CRC error handling
+ - mmc: sdhci: further fix for DMA unmapping in sdhci_post_req()
+ - mmc: sdhci: avoid unnecessary mapping/unmapping of align buffer
+ - mmc: sdhci: plug DMA mapping leak on error
+ - mmc: sdhci: fix data timeout
+ - [armhf] mmc: tegra: Disable UHS-I modes for tegra114
+ - [armhf] mmc: tegra: properly disable card clock
+ - mmc: sdhci: Fix override of timeout clk wrt max_busy_timeout
+ - [armhf] clk: rockchip: rk3368: fix cpuclk mux bit of big cpu-cluster
+ - [armhf] clk: rockchip: rk3368: fix cpuclk core dividers
+ - [armhf] clk: rockchip: rk3368: fix parents of video encoder/decoder
+ - [armhf] clk: rockchip: rk3368: fix hdmi_cec gate-register
+ - [armhf] clk: rockchip: add hclk_cpubus to the list of rk3188
+ critical clocks
+ - [armhf] clk: bcm2835: Fix setting of PLL divider clock rates
+ - target: Fix target_release_cmd_kref shutdown comp leak
+ - iser-target: Fix identification of login rx descriptor type
+ - iser-target: Separate flows for np listeners and connections cma events
+ - iser-target: Rework connection termination
+ - nfsd4: fix bad bounds checking
+ - nfsd: fix deadlock secinfo+readdir compound
+ - ACPI / PM: Runtime resume devices when waking from hibernate
+ - writeback, cgroup: fix premature wb_put() in
+ locked_inode_to_wb_and_lock_list()
+ - writeback, cgroup: fix use of the wrong bdi_writeback which mismatches
+ the inode
+ - Input: synaptics - handle spurious release of trackstick buttons, again
+ - Input: ati_remote2 - fix crashes on detecting device with invalid
+ descriptor (CVE-2016-2185)
+ - ocfs2: o2hb: fix double free bug
+ - ocfs2/dlm: fix race between convert and recovery
+ - ocfs2/dlm: fix BUG in dlm_move_lockres_to_recovery_list
+ - mm/page_alloc: prevent merging between isolated and other pageblocks
+ - mtd: onenand: fix deadlock in onenand_block_markbad
+ - [x86] intel_idle: prevent SKL-H boot failure when C8+C9+C10 enabled
+ - PM / sleep: Clear pm_suspend_global_flags upon hibernate
+ - scsi_common: do not clobber fixed sense information
+ - sched/cputime: Fix steal time accounting vs. CPU hotplug
+ - [x86] perf/pebs: Add workaround for broken OVFL status on HSW+
+ - [x86] perf/intel/uncore: Remove SBOX support for BDX-DE
+ - [x86] perf/intel: Fix PEBS warning by only restoring active PMU in pmi
+ - [x86] perf/intel: Use PAGE_SIZE for PEBS buffer size on Core2
+ - [x86] perf/intel: Fix PEBS data source interpretation on Nehalem/Westmere
+
+ [ Ben Hutchings ]
+ * mm: exclude ZONE_DEVICE from GFP_ZONE_TABLE
+ * mm: ZONE_DEVICE depends on SPARSEMEM_VMEMMAP
+ * [amd64] Re-enable ZONE_DMA and sound drivers that depend on it
+ (Closes: #814855, #819385, #820890)
+ * ntfs: Disable NTFS_RW (Closes: #566356); ntfs-3g has much more complete
+ write support
+ * Merge linux-tools source package into linux
+ (Closes: #550379, #573483, #816500)
+ * Add support for securelevel and prepare for Secure Boot (Closes: #820008):
+ - Add Matthew Garrett's securelevel patchset (see
+ Documentation/security/securelevel.txt)
+ - modules: Enable MODULE_SIG and MODULE_SIG_SHA256, but not MODULE_SIG_ALL
+ as signatures will be packaged separately
+ - debian/control: Add build-dependencies on libssl-dev, openssl
+ - debian/copyright: Note that extract-cert and sign-file are under LGPL 2.1
+ - linux-kbuild: Add extract-cert and sign-file programs
+ - scripts: Fix X.509 PEM support in sign-file
+ - certs: Set SYSTEM_TRUSTED_KEYS to my own personal certificate to support
+ initial testing of signed modules
+ * Disable UNUSED_SYMBOLS; it is now itself unused
+ * linux-support: Include udeb configuration from debian/installer for use
+ by the linux-signed package
+ * Set ABI to 1
+ * netfilter: x_tables: Fix parsing of IPT_SO_SET_REPLACE blobs (CVE-2016-3134)
+ - validate e->target_offset early
+ - make sure e->next_offset covers remaining blob size
+ * ipv4: Don't do expensive useless work during inetdev destroy (CVE-2016-3156)
+ * [x86] mm/32: Enable full randomization on i386 and X86_32 (CVE-2016-3672)
+ * fs: Add MODULE_SOFTDEP declarations for hard-coded crypto drivers
+ (Closes: #819725)
+ * aufs: Update support patches to aufs4.5-20160328 (Closes: #819748)
+ * [x86] ACPI / processor: Request native thermal interrupt handling via _OSC
+ (Closes: #817016, #819336)
+ * [armhf] Add support for octa-core big.LITTLE systems including Exynos
+ (Closes: #819379)
+ * [armhf] watchdog: Enable S3C2410_WATCHDOG as module (Closes: #819377)
+ * nbd: Create size change events for userspace (Closes: #812487)
+ * [armhf] usb-modules: Add modules required for BeagleBoard-X15, thanks to
+ Vagrant Cascadian (Closes: #815848)
+
+ [ Aurelien Jarno ]
+ * [mipsel/mips/config.loongson-2f] Disable VIDEO_CX23885, VIDEO_IVTV,
+ VIDEO_CX231XX, VIDEO_PVRUSB2 (fixes FTBFS).
+ * [mips*/octeon] Backport OCTEON SATA controller support from 4.6-rc1.
+ Enable AHCI_OCTEON and SATA_AHCI_PLATFORM.
+ * [mips*/octeon] Backport Octeon III CN7xxx interface detection from
+ 4.7 queue.
+ * [mips*/octeon] Enable SPI_OCTEON.
+ * [mips*/octeon] udeb: Add ahci_octeon and ahci_platform modules to
+ sata-modules.
+ * [mips*/octeon] Bump CONFIG_NR_CPUS to 32 to accomodate recent Octeon
+ III SoCs.
+ * [mips*/octeon] Enable CRYPTO_MD5_OCTEON, CRYPTO_SHA1_OCTEON, CRYPTO_SHA256
+ and CRYPTO_SHA512_OCTEON.
+
+ [ Roger Shimizu ]
+ * [armel/marvell] Change MTD_CFI_AMDSTD from module to built-in
+ because orion5x-based Buffalo Linkstation devices still need it
+ (Closes: #818598)
+ * [armel/marvell] Add DT support for "Synology DS112" and "Zyxel NSA320".
+ Thanks to Heinrich Schuchardt. (Closes: #819393)
+ * [armel/marvell] Add DT support for "Buffalo/Revogear Kurobox Pro"
+ * [armhf/armmp] Enable DW_WATCHDOG as module, used on Firefly-RK3288.
+ Patch by Vagrant Cascadian. (Closes: #820834)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 14 Apr 2016 09:49:24 +0100
+
+linux-tools (4.5-1~exp1) experimental; urgency=medium
+
+ * New upstream release
+
+ [ Ben Hutchings ]
+ * linux-perf: Fix use of uninitialized variables
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 20 Mar 2016 21:20:22 +0000
+
+linux (4.5-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_4.5
+
+ [ Martin Michlmayr ]
+ * [arm64] Enable LEDS_GPIO.
+ * [arm64] Enable more QCOM options. (Closes: #815627)
+ * [arm64] udeb: Add leds-modules package containing leds-gpio driver.
+ * [arm64] udeb: Add regulators and SoC modules to core-modules.
+
+ [ Uwe Kleine-König ]
+ * [armhf] Enable DRM_ETNAVIV.
+
+ [ Ben Hutchings ]
+ * [armel/versatile] Enable GPIOLIB, new dependency of SMC91X (fixes FTBFS)
+ * [x86] input: Enable ASUS_WIRELESS as module (Closes: #818487)
+ * [x86] amdgpu: Enable DRM_AMD_POWERPLAY (Closes: #818174)
+ * [x86] Enable RANDOMIZE_BASE (kASLR). This is incompatible with hibernation,
+ so you must use the kernel parameter "kaslr" to enable kASLR and disable
+ hibernation at boot time. (Closes: #816067)
+ * [x86] vmxnet3: fix lock imbalance in vmxnet3_tq_xmit() (regression in 4.5)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 20 Mar 2016 12:06:57 +0000
+
+linux (4.5~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 07 Mar 2016 22:20:48 +0000
+
+linux-tools (4.5~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * Makefile.inc: Add support for wildcards in $(SCRIPTS) and $(DATA)
+ * linux-kbuild: Include scripts/Makefile.* (Closes: #815593)
+ * Makefile.inc, rules.real: Fix conflation of $(DESTDIR) and $(prefix)
+ * hyperv-daemons: Fix rule redefinition that 'make' warns about
+ * debian/control: Build-Depend on dh-python, as dh_python2 warns we should
+ * lockdep: Add '+' prefix to make invocation, so it can be parallelised
+ * tools/build: Fix 'unused variable' warning in the bpf() feature check
+ * lockdep: Add more missing macros
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 07 Mar 2016 03:07:00 +0000
+
+linux-tools (4.5~rc5-1~exp3) experimental; urgency=medium
+
+ * Adjust build fix from unstable
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 21 Feb 2016 23:45:04 +0000
+
+linux-tools (4.5~rc5-1~exp2) experimental; urgency=medium
+
+ * Merge build fix from unstable
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 21 Feb 2016 17:40:52 +0000
+
+linux-tools (4.5~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * lockdep: Add missing macros
+ * Adjust VPATH to work for check-hyperv (and simplify the modpost wrapper)
+ * tools/build: Remove bpf() run-time check at build time
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 21 Feb 2016 16:45:52 +0000
+
+linux (4.5~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [armel/versatile] Enable GPIOLIB, needed to build smc91x driver with
+ OF enabled (fixes FTBFS)
+ * [powerpc] mm: Fix HAVE_ARCH_SOFT_DIRTY dependencies (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 21 Feb 2016 13:17:27 +0000
+
+linux (4.5~rc4-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Roger Shimizu ]
+ * Enable TTY_PRINTK as module (Closes: #814540).
+
+ [ Ben Hutchings ]
+ * [rt] Disable until it is updated for 4.5 or later
+ * aufs: Update support patches to aufs4.x-rcN-20160215
+ * Compile with gcc-5 on all architectures
+ * [hppa] Update build-dependencies for renaming of binutils-hppa64
+ * [x86] udeb: Move scsi_transport_fc to scsi-core-modules, since hv_storvsc
+ now depends on it
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 18 Feb 2016 01:57:20 +0000
+
+linux-tools (4.4.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ - tools lib traceevent: Fix output of %llu for 64 bit values read on
+ 32 bit machines
+ - perf tools: tracepoint_error() can receive e=NULL, robustify it
+ - perf kvm record/report: 'unprocessable sample' error while
+ recording/reporting guest data
+ - tools: hv: vss: fix the write()'s argument: error -> vss_msg
+ - uapi: update install list after nvme.h rename
+ - perf stat: Do not clean event's private stats
+
+ [ Mattia Dongili ]
+ * Build linux-cpupower.
+
+ [ Ben Hutchings ]
+ * debian/control: Update policy version to 3.9.7; no changes required
+ * linux-perf: Override lintian errors for perf-read-vdso{,x}32 in
+ 64-bit packages
+ * debian/copyright: Move GPL-2 boilerplate to its own paragraph
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 20 Mar 2016 16:23:48 +0000
+
+linux (4.4.6-1) unstable; urgency=medium
+
+ [ Salvatore Bonaccorso ]
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.5
+ - Btrfs: fix deadlock running delayed iputs at transaction commit time
+ (regression in 4.1)
+ - btrfs: Fix no_space in write and rm loop
+ (regression in 4.4)
+ - btrfs: async-thread: Fix a use-after-free error for trace
+ - [x86] drm/amdgpu: mask out WC from BO on unsupported arches
+ - block: Initialize max_dev_sectors to 0
+ - [hppa] Fix ptrace syscall number and return value modification
+ - [x86] kvm: Update tsc multiplier on change.
+ (regression in 4.4)
+ - fbcon: set a default value to blink interval
+ - cifs: fix out-of-bounds access in lease parsing
+ - CIFS: Fix SMB2+ interim response processing for read requests
+ - [x86] vfio: fix ioctl error handling
+ - [x86] KVM: fix root cause for missed hardware breakpoints
+ - [arm*] KVM: Fix ioctl error handling
+ - [amd64] iommu: Apply workaround for ATS write permission check
+ - [amd64] iommu: Fix boot warning when device 00:00.0 is not iommu covered
+ - [x86] iommu/vt-d: Use BUS_NOTIFY_REMOVED_DEVICE in hotplug path
+ - target: Fix WRITE_SAME/DISCARD conversion to linux 512b sectors
+ - [x86,powerpc*] drm/ast: Fix incorrect register check for DRAM width
+ - drm/radeon/pm: update current crtc info after setting the powerstate
+ - [x86] drm/amdgpu/pm: update current crtc info after setting the powerstate
+ - [x86] drm/amdgpu: apply gfx_v8 fixes to gfx_v7 as well
+ - [x86] drm/amdgpu/gfx8: specify which engine to wait before vm flush
+ - [x86] drm/amdgpu: return from atombios_dp_get_dpcd only when error
+ - libata: fix HDIO_GET_32BIT ioctl
+ - writeback: flush inode cgroup wb switches instead of pinning super_block
+ - Adding Intel Lewisburg device IDs for SATA
+ - [arm64] vmemmap: use virtual projection of linear region
+ (regression in 4.1)
+ - ata: ahci: don't mark HotPlugCapable Ports as external/removable
+ - tracing: Do not have 'comm' filter override event 'comm' field
+ (regression in 4.3)
+ - Btrfs: fix loading of orphan roots leading to BUG_ON
+ - Revert "jffs2: Fix lock acquisition order bug in jffs2_write_begin"
+ - jffs2: Fix page lock / f->sem deadlock
+ - jffs2: Fix directory hardlinks from deleted directories
+ - ALSA: usb-audio: Add a quirk for Plantronics DA45
+ - [amd64] ALSA: ctl: Fix ioctls for X32 ABI
+ - [x86] ALSA: hda - Fix mic issues on Acer Aspire E1-472
+ - [amd64] ALSA: rawmidi: Fix ioctls X32 ABI
+ - [amd64] ALSA: timer: Fix ioctls for X32 ABI
+ - [amd64] ALSA: pcm: Fix ioctls for X32 ABI
+ - ALSA: seq: oss: Don't drain at closing a client
+ - ALSA: hdspm: Fix wrong boolean ctl value accesses
+ - ALSA: hdsp: Fix wrong boolean ctl value accesses
+ - ALSA: hdspm: Fix zero-division
+ - ALSA: timer: Fix broken compat timer user status ioctl
+ - [armhf] usb: chipidea: otg: change workqueue ci_otg as freezable
+ - USB: cp210x: Add ID for Parrot NMEA GPS Flight Recorder
+ - USB: qcserial: add Dell Wireless 5809e Gobi 4G HSPA+ (rev3)
+ - USB: qcserial: add Sierra Wireless EM74xx device ID
+ - USB: serial: option: add support for Telit LE922 PID 0x1045
+ - USB: serial: option: add support for Quectel UC20
+ - [mips*] scache: Fix scache init with invalid line size.
+ - [mips*] traps: Fix SIGFPE information leak from `do_ov' and
+ `do_trap_or_bp'
+ - ubi: Fix out of bounds write in volume update code
+ - thermal: cpu_cooling: fix out of bounds access in time_in_idle
+ - [x86] drm/amdgpu: Use drm_calloc_large for VM page_tables array
+ - block: check virt boundary in bio_will_gap()
+ - [x86] drm/i915: more virtual south bridge detection
+ - [x86] drm/i915: refine qemu south bridge detection
+ - modules: fix longstanding /proc/kallsyms vs module insertion race.
+ - [x86] drm/amdgpu: fix topaz/tonga gmc assignment in 4.4 stable
+
+ [ Ben Hutchings ]
+ * [x86] drm/i915: Fix oops caused by fbdev initialization failure
+ * module: Fix ABI change in 4.4.5
+ * Revert "libata: Align ata_device's id on a cacheline" to avoid ABI change
+ * [amd64] Fix more regressions due to "efi: Build our own page table
+ structure":
+ - efi: Fix boot crash by always mapping boot service regions into new EFI
+ page tables (Closes: #815125)
+ - mm/pat: Fix boot crash when 1GB pages are not supported by cpu
+ * [armhf] gpio: Enable GPIO_PCF857X as module, needed by TI DRA7xx EVMs
+ (Closes: #818386)
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.6
+ - [arm64] account for sparsemem section alignment when choosing vmemmap
+ offset
+ - [armel,armhf] mvebu: fix overlap of Crypto SRAM with PCIe memory window
+ - [armhf] dts: dra7: do not gate cpsw clock due to errata i877
+ - [armhf] OMAP2+: hwmod: Introduce ti,no-idle dt property
+ - PCI: Allow a NULL "parent" pointer in pci_bus_assign_domain_nr()
+ - kvm: cap halt polling at exactly halt_poll_ns
+ - [x86] KVM: VMX: disable PEBS before a guest entry
+ - [s390x] KVM: correct fprs on SIGP (STOP AND) STORE STATUS
+ - [powerpc*] KVM: Book3S HV: Sanitize special-purpose register values on
+ guest exit
+ - [x86] KVM: MMU: fix ept=0/pte.u=1/pte.w=0/CR0.WP=0/CR4.SMEP=1/EFER.NX=0
+ combo
+ - [x86] KVM: MMU: fix reserved bit check for
+ ept=0/CR0.WP=0/CR4.SMEP=1/EFER.NX=0
+ - [s390x] mm: four page table levels vs. fork (CVE-2016-2143)
+ - [s390x] dasd: fix diag 0x250 inline assembly
+ - tracing: Fix check for cpu online when event is disabled
+ - jffs2: reduce the breakage on recovery from halfway failed rename()
+ - ncpfs: fix a braino in OOM handling in ncp_fill_cache()
+ - ASoC: dapm: Fix ctl value accesses in a wrong type
+ - ovl: ignore lower entries when checking purity of non-directory entries
+ - ovl: fix working on distributed fs as lower layer
+ - wext: fix message delay/ordering
+ - cfg80211/wext: fix message ordering
+ - can: gs_usb: fixed disconnect bug by removing erroneous use of kfree()
+ - iwlwifi: mvm: inc pending frames counter also when txing non-sta
+ - mac80211: minstrel: Change expected throughput unit back to Kbps
+ - mac80211: fix use of uninitialised values in RX aggregation
+ - mac80211: minstrel_ht: set default tx aggregation timeout to 0
+ - mac80211: minstrel_ht: fix a logic error in RTS/CTS handling
+ - mac80211: check PN correctly for GCMP-encrypted fragmented MPDUs
+ - mac80211: Fix Public Action frame RX in AP mode
+ - [armhf] gpu: ipu-v3: Do not bail out on missing optional port nodes
+ - [i386/686-pae] mm: Fix slow_virt_to_phys() for X86_PAE again
+ - Revert "drm/radeon: call hpd_irq_event on resume"
+ - [x86] drm/amdgpu: Fix error handling in amdgpu_flip_work_func.
+ - drm/radeon: Fix error handling in radeon_flip_work_func.
+ - Revert "drm/radeon/pm: adjust display configuration after powerstate"
+ - [powerpc*] powernv: Add a kmsg_dumper that flushes console output on panic
+ - [powerpc*] powernv: Fix OPAL_CONSOLE_FLUSH prototype and usages
+ - userfaultfd: don't block on the last VM updates at exit time
+ - ovl: copy new uid/gid into overlayfs runtime inode
+ - ovl: fix getcwd() failure after unsuccessful rmdir
+ - [mips*] smp.c: Fix uninitialised temp_foreign_map
+ - block: don't optimize for non-cloned bio in bio_get_last_bvec()
+ - target: Drop incorrect ABORT_TASK put for completed commands
+ * netfilter: x_tables: check for size overflow (CVE-2016-3135)
+
+ [ Ian Campbell ]
+ * [arm64] Enable ARCH_HISI (Hisilicon) and the set of currently available
+ drivers (Power, Thermal, MMC) (Closes: #812540)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 17 Mar 2016 01:25:23 +0000
+
+linux (4.4.4-2) unstable; urgency=medium
+
+ * Ignore ABI changes in sdhci* modules (fixes FTBFS on armhf)
+ * udeb: Add dependency from mmc-modules to crc-modules (fixes FTBFS on arm64)
+ * [hppa] Ignore ABI changes in built-in drm_kms_helper code (fixes FTBFS)
+ * [powerpc*] Revert "powerpc: Simplify module TOC handling"; it is not needed
+ to fix #808043 and causes a regression on ppc64el
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 09 Mar 2016 02:15:48 +0000
+
+linux (4.4.4-1) unstable; urgency=medium
+
+ [ Salvatore Bonaccorso ]
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.3
+ - [x86] mm: Fix types used in pgprot cacheability flags translations
+ - [x86] mm/pat: Avoid truncation when converting cpa->numpages to address
+ - [x86] uaccess/64: Make the __copy_user_nocache() assembly code
+ more readable
+ - [x86] uaccess/64: Handle the caching of 4-byte nocache copies
+ properly in __copy_user_nocache()
+ - [x86] mm: Fix vmalloc_fault() to handle large pages properly
+ - ALSA: hda - Cancel probe work instead of flush at remove
+ - ALSA: pcm: Fix rwsem deadlock for non-atomic PCM stream
+ - ALSA: seq: Fix leak of pool buffer at concurrent writes
+ - ALSA: seq: Fix double port list deletion
+ - [armhf] phy: twl4030-usb: Relase usb phy on unload
+ - [armhf] phy: twl4030-usb: Fix unbalanced pm_runtime_enable on
+ module reload
+ - staging/speakup: Use tty_ldisc_ref() for paste kworker
+ - pty: fix possible use after free of tty->driver_data
+ - pty: make sure super_block is still valid in final /dev/tty close
+ - tty: Add support for PCIe WCH382 2S multi-IO card
+ - [x86] serial: 8250_pci: Add Intel Broadwell ports
+ - [armhf] serial: omap: Prevent DoS using unprivileged ioctl(TIOCSRS485)
+ - ext4: fix scheduling in atomic on group checksum failure
+ - ext4: fix potential integer overflow
+ - ext4: don't read blocks from disk after extents being swapped
+ - btrfs: handle invalid num_stripes in sys_array
+ - Btrfs: fix fitrim discarding device area reserved for boot loader's use
+ - Revert "btrfs: clear PF_NOFREEZE in cleaner_kthread()"
+ - btrfs: properly set the termination value of ctx->pos in readdir
+ - Btrfs: fix invalid page accesses in extent_same (dedup) ioctl
+ - Btrfs: fix page reading in extent_same ioctl leading to csum errors
+ - Btrfs: fix hang on extent buffer lock caused by the inode_paths ioctl
+ - Btrfs: fix direct IO requests not reporting IO error to user space
+ - ptrace: use fsuid, fsgid, effective creds for fs access checks
+ - tracing: Fix freak link error caused by branch tracer
+ - tracepoints: Do not trace when cpu is offline
+ - klist: fix starting point removed bug in klist iterators
+ - scsi: add Synology to 1024 sector blacklist
+ - iscsi-target: Fix potential dead-lock during node acl delete
+ - SCSI: fix crashes in sd and sr runtime PM
+ - drivers/scsi/sg.c: mark VMA as VM_IO to prevent migration
+ - scsi_dh_rdac: always retry MODE SELECT on command lock violation
+ - SCSI: Add Marvell Console to VPD blacklist
+ - scsi: fix soft lockup in scsi_remove_target() on module removal
+ - iio: adis_buffer: Fix out-of-bounds memory access
+ - iio:adc:ti_am335x_adc Fix buffered mode by identifying as software buffer.
+ - iio-light: Use a signed return type for ltr501_match_samp_freq()
+ - iio: add HAS_IOMEM dependency to VF610_ADC
+ - iio: add IIO_TRIGGER dependency to STK8BA50
+ - iio: dac: mcp4725: set iio name property in sysfs
+ - iio: light: acpi-als: Report data as processed
+ - iio: pressure: mpl115: fix temperature offset sign
+ - iio: inkern: fix a NULL dereference on error
+ - cifs: Ratelimit kernel log messages
+ - cifs: fix race between call_async() and reconnect()
+ - cifs_dbg() outputs an uninitialized buffer in cifs_readdir()
+ - cifs: fix erroneous return value
+ - NFS: Fix attribute cache revalidation
+ - pNFS/flexfiles: Fix an Oopsable typo in ff_mirror_match_fh()
+ - nfs: Fix race in __update_open_stateid()
+ - pNFS/flexfiles: Fix an XDR encoding bug in layoutreturn
+ - udf: limit the maximum number of indirect extents in a row
+ - udf: Prevent buffer overrun with multi-byte characters
+ - udf: Check output buffer length when converting name to CS0
+ - SUNRPC: Fixup socket wait for memory
+ - [powerpc] eeh: Fix PE location code
+ - [powerpc] eeh: Fix stale cached primary bus
+ - [powerpc] powernv: Fix stale PE primary bus
+ - [powerpc] ioda: Set "read" permission when "write" is set
+ - [armhf] mvebu: remove duplicated regulator definition in Armada 388 GP
+ - [arm64] mm: avoid calling apply_to_page_range on empty range
+ - [armel,armhf] 8519/1: ICST: try other dividends than 1
+ - [armel,armhf] 8517/1: ICST: avoid arithmetic overflow in icst_hz()
+ - [armhf] dts: Fix wl12xx missing clocks that cause hangs
+ - [armhf] dts: Fix omap5 PMIC control lines for RTC writes
+ - [armhf] dts: omap5-board-common: enable rtc and charging of backup battery
+ - [armhf] OMAP2+: Fix wait_dll_lock_timed for rodata
+ - [armhf] OMAP2+: Fix l2_inv_api_params for rodata
+ - [armhf] OMAP2+: Fix l2dis_3630 for rodata
+ - [armhf] OMAP2+: Fix save_secure_ram_context for rodata
+ - [armhf] OMAP2+: Fix ppa_zero_params and ppa_por_params for rodata
+ - [arm64] dma-mapping: fix handling of devices registered before
+ arch_initcall
+ - [arm,arm64] KVM: Fix reference to uninitialised VGIC
+ - [powerpc*] KVM: PPC: Fix emulation of H_SET_DABR/X on POWER8
+ - [powerpc*] KVM: PPC: Fix ONE_REG AltiVec support
+ - mm: soft-offline: check return value in second __get_any_page() call
+ - libnvdimm: fix namespace object confusion in is_uuid_busy()
+ - mm: fix mlock accouting
+ - mm: replace vma_lock_anon_vma with anon_vma_lock_read/write
+ - mm: fix regression in remap_file_pages() emulation
+ - Input: elantech - mark protocols v2 and v3 as semi-mt
+ - [x86] Input: i8042 - add Fujitsu Lifebook U745 to the nomux list
+ - string_helpers: fix precision loss for some inputs
+ - Input: vmmouse - fix absolute device registration
+ - [x86] iommu/vt-d: Don't skip PCI devices when disabling IOTLB
+ - [x86] iommu/amd: Correct the wrong setting of alias DTE in do_attach
+ - [x86] iommu/vt-d: Fix mm refcounting to hold mm_count not mm_users
+ - [x86] iommu/vt-d: Fix 64-bit accesses to 32-bit DMAR_GSTS_REG
+ - [x86] iommu/vt-d: Clear PPR bit to ensure we get more page
+ request interrupts
+ - Revert "xhci: don't finish a TD if we get a short-transfer event mid TD"
+ - xhci: Fix list corruption in urb dequeue at host removal
+ - fs/hugetlbfs/inode.c: fix bugs in hugetlb_vmtruncate_list()
+ - [s390x] numa: fix /proc/<pid>/numa_maps for hugetlbfs on s390
+ - memcg: only free spare array when readers are done
+ - radix-tree: fix race in gang lookup
+ - drivers/hwspinlock: fix race between radix tree insertion and lookup
+ - radix-tree: fix oops after radix_tree_iter_retry
+ - dump_stack: avoid potential deadlocks
+ - mm,thp: khugepaged: call pte flush at the time of collapse
+ - [x86] intel_scu_ipcutil: underflow in scu_reg_access()
+ - ipc/shm: handle removed segments gracefully in shm_mmap()
+ - devm_memremap_release(): fix memremap'd addr handling
+ - futex: Drop refcount if requeue_pi() acquired the rtmutex
+ - ovl: allow zero size xattr
+ - ovl: use a minimal buffer in ovl_copy_xattr
+ - ovl: check dentry positiveness in ovl_cleanup_whiteouts()
+ - ovl: root: copy attr
+ - ovl: setattr: check permissions before copy-up
+ - libxfs: pack the agfl header structure so XFS_AGFL_SIZE is correct
+ - xfs: inode recovery readahead can race with inode buffer creation
+ - Revert "xfs: clear PF_NOFREEZE for xfsaild kthread"
+ - xfs: log mount failures don't wait for buffers to be released
+ - prctl: take mmap sem for writing to protect against others
+ - timerfd: Handle relative timers with CONFIG_TIME_LOW_RES proper
+ - posix-timers: Handle relative timers with CONFIG_TIME_LOW_RES proper
+ - itimers: Handle relative timers with CONFIG_TIME_LOW_RES proper
+ - modules: fix modparam async_probe request
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.4
+ - af_iucv: Validate socket address length in iucv_sock_bind()
+ - gro: Make GRO aware of lightweight tunnels.
+ - tunnels: Allow IPv6 UDP checksums to be correctly controlled.
+ - lwt: fix rx checksum setting for lwt devices tunneling over ipv6
+ - tcp: fix NULL deref in tcp_v4_send_ack()
+ - af_unix: fix struct pid memory leak
+ - pptp: fix illegal memory access caused by multiple bind()s
+ - sctp: allow setting SCTP_SACK_IMMEDIATELY by the application
+ - tipc: fix connection abort during subscription cancel
+ - inet: frag: Always orphan skbs inside ip_defrag()
+ - tcp: beware of alignments in tcp_get_info()
+ - ipv6: enforce flowi6_oif usage in ip6_dst_lookup_tail()
+ - ipv6/udp: use sticky pktinfo egress ifindex on connect()
+ - ipv6: addrconf: Fix recursive spin lock call
+ - ipv6: fix a lockdep splat
+ - unix: correctly track in-flight fds in sending process user_struct
+ (regression in 4.3.3-6; CVE-2016-2550)
+ - tcp: do not drop syn_recv on all icmp reports
+ - net:Add sysctl_max_skb_frags
+ - tg3: Fix for tg3 transmit queue 0 timed out when too many gso_segs
+ - enic: increment devcmd2 result ring in case of timeout
+ - sctp: translate network order to host order when users get a hmacid
+ - net: Copy inner L3 and L4 headers as unaligned on GRE TEB
+ - flow_dissector: Fix unaligned access in __skb_flow_dissector when used by
+ eth_get_headlen
+ - bpf: fix branch offset adjustment on backjumps after patching
+ ctx expansion
+ - bonding: Fix ARP monitor validation
+ - ipv4: fix memory leaks in ip_cmsg_send() callers
+ - af_unix: Don't set err in unix_stream_read_generic unless there was
+ an error
+ - af_unix: Guard against other == sk in unix_dgram_sendmsg
+ - tipc: fix premature addition of node to lookup table
+ - tcp: md5: release request socket instead of listener
+ - qmi_wwan: add "4G LTE usb-modem U901"
+ - net/mlx4_en: Count HW buffer overrun only once
+ - net/mlx4_en: Choose time-stamping shift value according to HW frequency
+ - net/mlx4_en: Avoid changing dev->features directly in run-time
+ - l2tp: Fix error creating L2TP tunnels
+ - pppoe: fix reference counting in PPPoE proxy
+ - net_sched fix: reclassification needs to consider ether protocol changes
+ - route: check and remove route cache when we get route
+ - tcp/dccp: fix another race at listener dismantle
+ - IFF_NO_QUEUE: Fix for drivers not calling ether_setup()
+ - rtnl: RTM_GETNETCONF: fix wrong return value
+ - tipc: unlock in error path
+ - unix_diag: fix incorrect sign extension in unix_lookup_by_ino
+ - sctp: Fix port hash table size computation
+ - ext4: fix bh->b_state corruption
+ - [s390x] KVM: fix guest fprs memory leak
+ - devm_memremap: Fix error value when memremap failed
+ - efi: Make efivarfs entries immutable by default
+ - efi: Add pstore variables to the deletion whitelist
+ - bcache: fix a livelock when we cause a huge number of cache misses
+ - bcache: Add a cond_resched() call to gc
+ - bcache: clear BCACHE_DEV_UNLINK_DONE flag when attaching a backing device
+ - bcache: fix a leak in bch_cached_dev_run()
+ - bcache: unregister reboot notifier if bcache fails to unregister device
+ - bcache: allows use of register in udev to avoid "device_busy" error.
+ - bcache: prevent crash on changing writeback_running
+ - bcache: Change refill_dirty() to always scan entire disk if necessary
+ - dm thin: fix race condition when destroying thin pool workqueue
+ - can: ems_usb: Fix possible tx overflow
+ - usb: dwc3: Fix assignment of EP transfer resources
+ - USB: cp210x: add IDs for GE B650V3 and B850V3 boards
+ - USB: option: add support for SIM7100E
+ - USB: option: add "4G LTE usb-modem U901"
+ - [armhf] spi: omap2-mcspi: Prevent duplicate gpio_request
+ - iw_cxgb3: Fix incorrectly returning error on success
+ - [x86] drm/i915: shut up gen8+ SDE irq dmesg noise
+ - ocfs2: unlock inode if deleting inode from orphan fails
+ - mm: thp: fix SMP race condition between THP page fault and MADV_DONTNEED
+ - mm: numa: quickly fail allocations for NUMA balancing on full nodes
+ - genirq: Validate action before dereferencing it in
+ handle_irq_event_percpu()
+ - [s390x] KVM: fix memory overwrites when vx is disabled
+ - Btrfs: add missing brelse when superblock checksum fails
+ - Btrfs: igrab inode in writepage
+ - btrfs: statfs: report zero available if metadata are exhausted
+ - Btrfs: send, don't BUG_ON() when an empty symlink is found
+ - Btrfs: fix number of transaction units required to create symlink
+ - Btrfs: fix transaction handle leak on failure to create hard link
+ - Btrfs: Initialize btrfs_root->highest_objectid when loading tree root and
+ subvolume roots
+ - btrfs: initialize the seq counter in struct btrfs_device
+ - [s390x] fix normalization bug in exception table sorting
+ - [s390x] dasd: prevent incorrect length error under z/VM after PAV changes
+ - [s390x] dasd: fix refcount for PAV reassignment
+ - [s390x] dasd: fix performance drop
+ - [s390x] compat: correct restore of high gprs on signal return
+ - [s390x] fpu: signals vs. floating point control register
+ - locks: fix unlock when fcntl_setlk races with a close
+ - rtlwifi: rtl8192cu: Add missing parameter setup
+ - rtlwifi: rtl8192ce: Fix handling of module parameters
+ - rtlwifi: rtl8192de: Fix incorrect module parameter descriptions
+ - rtlwifi: rtl8723ae: Fix initialization of module parameters
+ - rtlwifi: rtl8192se: Fix module parameter initialization
+ - rtlwifi: rtl8188ee: Fix module parameter initialization
+ - rtlwifi: rtl8723be: Fix module parameter initialization
+ - [x86] mei: fix fasync return value on error
+ - [x86] mei: validate request value in client notify request ioctl
+ - namei: ->d_inode of a pinned dentry is stable only for positives
+ - [armhf] rc: sunxi-cir: Initialize the spinlock properly
+ - gspca: ov534/topro: prevent a division by 0
+ - vb2: fix a regression in poll() behavior for output,streams
+ - tda1004x: only update the frontend properties if locked
+ - dm snapshot: fix hung bios when copy error occurs
+ - dm: fix dm_rq_target_io leak on faults with .request_fn DM w/ blk-mq paths
+ - posix-clock: Fix return code on the poll method's error path
+ - mmc: sdhci-pci: Do not default to 33 Ohm driver strength for Intel SPT
+ - mmc: sdhci: Fix DMA descriptor with zero data length
+ - mmc: sdio: Fix invalid vdd in voltage switch power cycle
+ - mmc: mmc: Fix incorrect use of driver strength switching HS200 and HS400
+ - mmc: sdhci: Fix sdhci_runtime_pm_bus_on/off()
+ - mmc: core: Enable tuning according to the actual timing
+ - [armhf, arm64] mmc: mmci: fix an ages old detection error
+ - [x86] mmc: sdhci-acpi: Fix card detect race for Intel BXT/APL
+ - [x86] mmc: sdhci-pci: Fix card detect race for Intel BXT/APL
+ - mmc: sdhci: Allow override of mmc host operations
+ - mmc: sdhci: Allow override of get_cd() called from sdhci_request()
+ - [x86] Drivers: hv: vmbus: Fix a Host signaling bug
+ - Bluetooth: Use continuous scanning when creating LE connections
+ - Bluetooth: Add support of Toshiba Broadcom based devices
+ - Bluetooth: Fix incorrect removing of IRKs
+ - Bluetooth: 6lowpan: Fix kernel NULL pointer dereferences
+ - Bluetooth: 6lowpan: Fix handling of uncompressed IPv6 packets
+ - time: Avoid signed overflow in timekeeping_get_ns()
+ - cputime: Prevent 32bit overflow in time[val|spec]_to_cputime()
+ - [mips*] Revert "MIPS: Fix PAGE_MASK definition"
+ - [mips*el/loongson-3] Loongson-3: Fix SMP_ASK_C0COUNT IPI handler
+ - [mips*] hpet: Choose a safe value for the ETIME check
+ - [mips*] Fix buffer overflow in syscall_get_arguments()
+ - EDAC: Robustify workqueues destruction
+ - EDAC, mc_sysfs: Fix freeing bus' name
+ - [sparc64] fix incorrect sign extension in sys_sparc64_personality
+ - [armhf] clk: exynos: use irqsave version of spin_lock to avoid deadlock
+ with irqs
+ - [armhf] regulator: axp20x: Fix GPIO LDO enable value for AXP22x
+ - virtio_balloon: fix race by fill and leak
+ - virtio_balloon: fix race between migration and ballooning
+ - virtio_pci: fix use after free on release
+ - [x86] drm/vmwgfx: Fix an incorrect lock check
+ - [x86] drm/vmwgfx: Fix a width / pitch mismatch on framebuffer updates
+ - [x86] drm/vmwgfx: respect 'nomodeset'
+ - [x86] drm/amdgpu: Fix off-by-one errors in amdgpu_vm_bo_map
+ - [x86] drm/amdgpu: call hpd_irq_event on resume
+ - [x86] drm/amdgpu: fix lost sync_to if scheduler is enabled.
+ - [x86] drm/amdgpu: fix tonga smu resume
+ - [x86] drm/amdgpu: fix amdgpu_bo_pin_restricted VRAM placing v2
+ - [x86] drm/amdgpu: no need to load MC firmware on fiji
+ - [x86] drm/amdgpu: move gmc7 support out of CIK dependency
+ - [x86] drm/amdgpu: iceland use CI based MC IP
+ - [x86] drm/amdgpu: The VI specific EXE bit should only apply to GMC
+ v8.0 above
+ - [x86] drm/amdgpu: pull topaz gmc bits into gmc_v7
+ - [x86] drm/amdgpu: drop topaz support from gmc8 module
+ - [x86] drm/amdgpu: don't load MEC2 on topaz
+ - [x86] drm/amdgpu: remove exp hardware support from iceland
+ - [x86] drm/amdgpu: fix s4 resume
+ - [x86] drm/amdgpu: remove unnecessary forward declaration
+ - [x86] drm/amdgpu: hold reference to fences in amdgpu_sa_bo_new (v2)
+ - [x86] drm/amdgpu: fix issue with overlapping userptrs
+ - [x86] drm/amdgpu: use post-decrement in error handling
+ - [x86] drm/amdgpu: Don't hang in amdgpu_flip_work_func on disabled crtc.
+ - [x86] drm/amdgpu/pm: adjust display configuration after powerstate
+ - drm/nouveau/kms: take mode_config mutex in connector hotplug path
+ - drm/nouveau/display: Enable vblank irqs after display engine is on again.
+ (regression in 4.4)
+ - drm/nouveau/disp/dp: ensure sink is powered up before attempting
+ link training
+ - drm/nouveau: platform: Fix deferred probe
+ - drm/radeon: Fix off-by-one errors in radeon_vm_bo_set_addr
+ - drm/radeon: Fix "slow" audio over DP on DCE8+
+ - drm/radeon: clean up fujitsu quirks
+ - drm/radeon: properly byte swap vce firmware setup
+ - drm/radeon: cleaned up VCO output settings for DP audio
+ - drm/radeon: Add a common function for DFS handling
+ - drm/radeon: fix DP audio support for APU with DCE4.1 display engine
+ - drm/radeon: mask out WC from BO on unsupported arches
+ - drm/radeon: hold reference to fences in radeon_sa_bo_new
+ - drm: fix missing reference counting decrease
+ - [x86] drm/i915: Restore inhibiting the load of the default context
+ - [x86] drm/i915: intel_hpd_init(): Fix suspend/resume reprobing
+ - [x86] drm/i915: Init power domains early in driver load
+ - [x86] drm/i915: Make sure DC writes are coherent on flush.
+ - [x86] drm/i915/dp: fall back to 18 bpp when sink capability is unknown
+ - [x86] drm/i915: Don't reject primary plane windowing with color keying
+ enabled on SKL+
+ - [x86] drm/i915/skl: Don't skip mst encoders in skl_ddi_pll_select()
+ - [x86] drm/i915/dsi: defend gpio table against out of bounds access
+ - [x86] drm/i915/dsi: don't pass arbitrary data to sideband
+ - [x86] drm/i915: fix error path in intel_setup_gmbus()
+ - drm/qxl: use kmalloc_array to alloc reloc_info in
+ qxl_process_single_command
+ - drm/radeon: use post-decrement in error handling
+ - drm: No-Op redundant calls to drm_vblank_off() (v2)
+ - drm: Prevent vblank counter bumps > 1 with active vblank clients. (v2)
+ (regression in 4.4)
+ - drm: Fix drm_vblank_pre/post_modeset regression from Linux 4.4
+ - drm: Fix treatment of drm_vblank_offdelay in drm_vblank_on() (v2)
+ - drm/radeon: Don't hang in radeon_flip_work_func on disabled crtc. (v2)
+ - drm/radeon/pm: adjust display configuration after powerstate
+ - make sure that freeing shmem fast symlinks is RCU-delayed
+ - [x86] toshiba_acpi: Fix blank screen at boot if transflective backlight is
+ supported
+ - [x86] ideapad-laptop: Add Lenovo ideapad Y700-17ISK to no_hw_rfkill
+ dmi list
+ - [x86] ideapad-laptop: Add Lenovo Yoga 700 to no_hw_rfkill dmi list
+ - [x86] ACPI / video: Add disable_backlight_sysfs_if quirk for the Toshiba
+ Portege R700
+ - [x86] ACPI / video: Add disable_backlight_sysfs_if quirk for the Toshiba
+ Satellite R830
+ - [x86] ACPI: Revert "ACPI / video: Add Dell Inspiron 5737 to the blacklist"
+ - [x86] ACPI / PCI / hotplug: unlock in error path in acpiphp_enable_slot()
+ - nfit: fix multi-interface dimm handling, acpi6.1 compatibility
+ - dmaengine: dw: fix cyclic transfer setup
+ - dmaengine: dw: fix cyclic transfer callbacks
+ - dmaengine: dw: disable BLOCK IRQs for non-cyclic xfer
+ - IB/cm: Fix a recently introduced deadlock
+ - IB/qib: fix mcast detach when qp not attached
+ - IB/qib: Support creating qps with GFP_NOIO flag
+ - IB/mlx5: Expose correct maximum number of CQE capacity
+ - Thermal: initialize thermal zone device correctly
+ - Thermal: handle thermal zone device properly during system sleep
+ - Thermal: do thermal zone update after a cooling device registered
+ - hwmon: (dell-smm) Blacklist Dell Studio XPS 8000
+ - hwmon: (gpio-fan) Remove un-necessary speed_index lookup for thermal hook
+ - hwmon: (ads1015) Handle negative conversion values correctly
+ - cpufreq: pxa2xx: fix pxa_cpufreq_change_voltage prototype
+ - cpufreq: Fix NULL reference crash while accessing policy->governor_data
+ - seccomp: always propagate NO_NEW_PRIVS on tsync
+ - libceph: fix ceph_msg_revoke()
+ - libceph: don't bail early from try_read() when skipping a message
+ - libceph: use the right footer size when skipping a message
+ - libceph: don't spam dmesg with stray reply warnings
+ - sd: Optimal I/O size is in bytes, not sectors
+ - Staging: speakup: Fix getting port information
+ - cdc-acm:exclude Samsung phone 04e8:685d
+ - tick/nohz: Set the correct expiry when switching to nohz/lowres mode
+ - rfkill: fix rfkill_fop_read wait_event usage
+ - mac80211: Requeue work after scan complete for all VIF types.
+ - workqueue: handle NUMA_NO_NODE for unbound pool_workqueue lookup
+ - Revert "workqueue: make sure delayed work run in local cpu"
+ - ALSA: hda - Apply clock gate workaround to Skylake, too
+ - ALSA: hda - Fixing background noise on Dell Inspiron 3162
+ - target: Fix LUN_RESET active I/O handling for ACK_KREF
+ - target: Fix LUN_RESET active TMR descriptor handling
+ - target: Fix TAS handling for multi-session se_node_acls
+ - target: Fix remote-port TMR ABORT + se_cmd fabric stop
+ - target: Fix race with SCF_SEND_DELAYED_TAS handling
+ - qla2xxx: Fix stale pointer access.
+ - libata: fix sff host state machine locking while polling
+ - PCI/AER: Flush workqueue on device remove to avoid use-after-free
+ - cpuset: make mm migration asynchronous
+ - cgroup: make sure a parent css isn't offlined before its children
+ - writeback: keep superblock pinned during cgroup writeback
+ association switches
+ - phy: core: fix wrong err handle for phy_power_on
+ - [x86] i2c: i801: Adding Intel Lewisburg support for iTCO
+ - bio: return EINTR if copying to user space got interrupted
+ - block: fix use-after-free in dio_bio_complete
+ - nfs: fix nfs_size_to_loff_t
+ - NFSv4: Fix a dentry leak on alias use
+ - KVM: async_pf: do not warn on page allocation failures
+ - [armhf,arm64] KVM: vgic: Ensure bitmaps are long enough
+ - [x86] KVM: fix missed hardware breakpoints
+ - [x86] KVM: fix conversion of addresses to linear in 32-bit protected mode
+ - [x86] KVM: MMU: fix ubsan index-out-of-range warning
+ - [powerpc] eeh: Fix partial hotplug criterion
+ - tracing: Fix showing function event in available_events
+ - sunrpc/cache: fix off-by-one in qword_get()
+ - kernel/resource.c: fix muxed resource handling in __request_region()
+ - do_last(): don't let a bogus return value from ->open() et.al. to
+ confuse us
+ - [armhf] OMAP2+: Fix onenand initialization to avoid filesystem corruption
+ - [armhf] xen: correctly handle DMA mapping of compound pages
+ - xen/scsiback: correct frontend counting
+ - xen/pciback: Check PF instead of VF for PCI_COMMAND_MEMORY
+ - xen/pciback: Save the number of MSI-X entries to be copied later.
+ - xen/pcifront: Fix mysterious crashes when NUMA locality information
+ was extracted.
+ - should_follow_link(): validate ->d_seq after having decided to follow
+ - do_last(): ELOOP failure exit should be done after leaving RCU mode
+ - [x86] mpx: Fix off-by-one comparison with nr_registers
+ - [x86] entry/compat: Add missing CLAC to entry_INT80_32
+ - [x86] irq: Call chip->irq_set_affinity in proper context
+ - [x86] irq: Fix a race in x86_vector_free_irqs()
+ - [x86] irq: Validate that irq descriptor is still active
+ - [x86] irq: Do not use apic_chip_data.old_domain as temporary buffer
+ - [x86] irq: Reorganize the return path in assign_irq_vector
+ - [x86] irq: Reorganize the search in assign_irq_vector
+ - [x86] irq: Check vector allocation early
+ - [x86] irq: Copy vectormask instead of an AND operation
+ - [x86] irq: Remove offline cpus from vector cleanup
+ - [x86] irq: Clear move_in_progress before sending cleanup IPI
+ - [x86] irq: Remove the cpumask allocation from send_cleanup_vector()
+ - [x86] irq: Remove outgoing CPU from vector cleanup mask
+ - [x86] irq: Call irq_force_move_complete with irq descriptor
+ - [x86] irq: Plug vector cleanup race
+ - IB/cma: Fix RDMA port validation for iWarp
+ - security: let security modules use PTRACE_MODE_* with bitmasks
+ - iwlwifi: dvm: fix WoWLAN
+ - iwlwifi: pcie: properly configure the debug buffer size for 8000
+ - iwlwifi: update and fix 7265 series PCI IDs
+ - iwlwifi: mvm: don't allow sched scans without matches to be started
+
+ [ Roger Shimizu ]
+ * [armhf] dts: imx6dlq-wandboard-revb1: use unique model id
+ (Closes: #813881).
+ * [armel] dts: Add various device-tree fixes and improvements for
+ Buffalo Linkstation devices.
+
+ [ Ben Hutchings ]
+ * udeb: Include more modules, including those needed on Firefly-RK3288,
+ thanks to Vagrant Cascadian (Closes: #815476)
+ - [armhf] core-modules: Include regulator drivers by default
+ - mmc-modules: Include MMC controller drivers by default
+ - mmc-modules: Depends on usb-modules
+ - usb-modules: Include USB PHY drivers by default
+ * uas: Fix high-order alloc
+ * Fix/ignore module ABI changes in 4.4.4 as appropriate
+ * Revert "drm/radeon: call hpd_irq_event on resume", reported to cause
+ regressions (crash/hang) on some systems
+ * [powerpc*] Fix module linking to work with binutils 2.26 (Closes: #808043):
+ - Simplify module TOC handling
+ - Fix dedotify for binutils >= 2.26
+
+ [ Ian Campbell ]
+ * [armhf] dts: Add DTB for Novena, patches from Vagrant Cascadian
+ (Closes: #815324)
+
+ [ Uwe Kleine-König ]
+ * [armhf] enable AXP20X_POWER (Closes: #815971)
+ * [rt] Update to 4.4.3-rt9
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 07 Mar 2016 19:27:18 +0000
+
+linux-tools (4.4-4) unstable; urgency=medium
+
+ * hyperv-daemons: Only build the progarams on x86 (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 21 Feb 2016 16:57:55 +0000
+
+linux-tools (4.4-3) unstable; urgency=medium
+
+ * hyperv-daemons: Add init scripts
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 21 Feb 2016 15:07:55 +0000
+
+linux (4.4.2-3) unstable; urgency=medium
+
+ * [x86] efi-bgrt: Fix kernel panic when mapping BGRT data (Closes: #815125)
+ * [x86] efi-bgrt: Replace early_memremap() with memremap()
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 21 Feb 2016 13:11:18 +0000
+
+linux-tools (4.4-2) unstable; urgency=medium
+
+ * linux-perf: Include version number in strace groups installation directory
+ (Closes: #813080)
+ * [alpha,sh4] Attempt to fix build failures
+ * Build fixdep under debian/build and clean it up properly
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 19 Feb 2016 17:11:29 +0000
+
+linux (4.4.2-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * udeb: Make DAC960 and cciss optional in scsi-modules again
+ (fixes FTBFS on armhf, arm64)
+ * [armel,armhf] net: mv643xx_eth: fix packet corruption with TSO and tiny
+ unaligned packets. (Closes: #814681)
+ * [mipsel/loongson-2f] udeb: Add i2c-modules to avoid duplicate modules
+
+ [ Martin Michlmayr ]
+ * [arm64] Create i2c-modules udeb to avoid duplicate modules.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 19 Feb 2016 14:48:52 +0000
+
+linux-tools (4.4-1) unstable; urgency=medium
+
+ * Upload to unstable
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 18 Feb 2016 01:30:50 +0000
+
+linux (4.4.2-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.2
+ - ALSA: usb-audio: avoid freeing umidi object twice (CVE-2016-2384)
+
+ [ Ben Hutchings ]
+ * Set ABI to 1
+ * iw_cxgb3: Fix incorrectly returning error on success (CVE-2015-8812)
+ * fs/hugetlbfs/inode.c: fix bugs in hugetlb_vmtruncate_list() (CVE-2016-0617)
+ (regression in 4.3)
+ * af_unix: Guard against other == sk in unix_dgram_sendmsg
+ (regression in 4.2.6-2)
+ * Revert "workqueue: make sure delayed work run in local cpu"
+ (regression in 4.3)
+ * af_unix: Don't set err in unix_stream_read_generic unless there was an error
+ (regression in 4.4, 4.3.4)
+ * bpf: fix branch offset adjustment on backjumps after patching ctx expansion
+ (CVE-2016-2383)
+ * udeb: Combine scsi-{common,extra}-modules with scsi-modules
+ * udeb: Use wildcards to include entire classes of drivers:
+ - input-modules: Include HID drivers by default
+ - nic{,-pcmcia,-usb,-wireless}-modules: Include Ethernet, USB and wireless
+ drivers by default
+ - {pata,sata}-modules: Include ATA drivers by default
+ - sound-modules: Include sound drivers by default
+ - scsi-modules: Include SCSI drivers by default
+ - usb-modules: Include USB host drivers by default
+ - usb-serial-modules: Include USB serial drivers by default
+ - usb-storage-modules: Include USB storage drivers by default
+ * udeb: Remove some obsolete drivers:
+ - nic-modules: Remove FDDI and HIPPI drivers, and inet_lro module
+ - nic-pcmcia-modules: Remove Arcnet drivers
+ * udeb: Move most USB wireless drivers from nic-usb-modules to
+ nic-wireless-modules
+ * udeb: Really add virtio_input to virtio-modules (not input-modules)
+ * [x86] Fix issues resulting in W+X pages:
+ - [amd64] efi: Build our own page table structure
+ - [i386/686-pae] mm: Fix types used in pgprot cacheability flags
+ translations
+ - [i386/686-pae] PCI: Set pci=nobios by default
+ * IFF_NO_QUEUE: Fix for drivers not calling ether_setup() (regression in 4.3)
+ * udeb: Fix issues with wildcards that caused FTBFS on armhf, thanks to
+ Karsten Merker
+
+ [ Roger Shimizu ]
+ * Enable TTY_PRINTK as module (Closes: #814540).
+
+ [ Uwe Kleine-König ]
+ * [rt] Update to 4.4.1-rt6
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 17 Feb 2016 21:20:12 +0000
+
+linux (4.4.1-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.4.1
+
+ [ Ricardo Salveti ]
+ * Extending ARM64 support:
+ - config: enabling support for the AMD Seattle platform
+ - nic-modules: adding amd-xgbe
+ - sata-modules: adding ahci_platform, required by AMD Overdrive
+ - config: enabling the cpuidle ARM driver
+ - config: enable multi-core scheduler support by default
+ - config: enable PCI generic host bridge by default
+ - config: enable CRYPTO_CRC32_ARM64 by default
+
+ [ Ian Campbell ]
+ * [arm64] Enabled support for QCOM platforms, options recommended by Martin
+ Michlmayr. (Closes: #812386)
+ * [armel/marvell] Declare breaks against flash-kernel << 3.57~ in order to
+ force a version which understands about the merge of kirkwood and orion5x
+ flavours into marvell.
+
+ [ Ben Hutchings ]
+ * linux-image: Make failure of depmod fatal, rather than asking what to do
+ * [mips*] linux-image: Remove debconf question for requirement of initramfs
+ * linux-image: Remove unnecessary debconf initialisations
+ * linux-{headers,image}: Remove support for version-specific hooks
+ * linux-headers: Make postinst script less verbose (see: #734266)
+ * [armel] Replace kirkwood and orion5x flavours with a 'marvell' flavour
+ * [armel/marvell] Adjust configuration to reduce image size:
+ - Disable support for DNS-323 as the kernel image was already too large
+ for this machine
+ + Disable MACH_DNS323
+ + Change MTD_CFI_AMDSTD from built-in to module
+ - input: Disable KEYBOARD_ATKBD
+ - mtd: Change JFFS2_FS, MTD_SPI_NOR, and M25P80 from built-in to modules
+ * [rt] Update to 4.4.1-rt5:
+ - genirq: Add default affinity mask command line option
+ - latencyhist: disable jump-labels
+ - kernel/perf: mark perf_cpu_context's timer as irqsafe
+ * bnx2x: Enable BNX2X_VXLAN
+ * cgroups: Enable CGROUP_PIDS
+ * crypto: Enable CRYPTO_CHACHA20, CRYPTO_POLY1305, CRYPTO_CHACHA20POLY1305,
+ CRYPTO_USER_API_AEAD as modules
+ * [x86] crypto: Enable CRYPTO_DEV_QAT_DH895xCC, CRYPTO_DEV_QAT_DH895xCCVF
+ as modules
+ * [amd64] crypto: Enable CRYPTO_CHACHA20_X86_64, CRYPTO_DES3_EDE_X86_64,
+ CRYPTO_POLY1305_X86_64 as modules
+ * [x86] dmaengine: Enable INTEL_IDMA64 as module
+ * debug: Enable SCHED_STACK_END_CHECK
+ * dm-cache: Enable DM_CACHE_SMQ as module
+ * ethernet: Enable BNXT, QED, QEDE as modules
+ * hci_uart: Enable BT_HCIUART_QCA
+ * HID: Enable HID_CORSAIR, HID_GEMBIRD as modules
+ * [x86] hwmon: Enable SENSORS_I5500 as module
+ * [x86] IB: Enable INFINIBAND_USNIC as module
+ * iio/light: Enable ACPI_ALS as module
+ * [x86] input: Enable SURFACE_PRO3_BUTTON as module
+ * [x86] iommu: Enable INTEL_IOMMU_SVM
+ * ipvs: Enable IP_VS_OVF as module
+ * media: Enable DVB_NETUP_UNIDVB, USB_GSPCA_TOUPTEK,_VIDEO_DT3155 as modules
+ * [x86] mfd: Enable MFD_INTEL_LPSS_ACPI, MFD_INTEL_LPSS_PCI as modules
+ * [amd64] mic: Enable INTEL_MIC_X100_DMA, MIC_COSM, SCIF, SCIF_BUS as modules
+ * [powerpc*/*64*] misc: Enable GENWQE as module
+ * net: Enable LWTUNNEL, NET_L3_MASTER_DEV; and MPLS_IPTUNNEL, NET_VRF
+ as modules
+ * [amd64] net: Enable FUJITSU_ES as module
+ * netfilter: Really enable NF_TABLES_NETDEV, NFT_REDIR_IPV4, NFT_REDIR_IPV6
+ as modules
+ * net/phy: Enable AQUANTIA_PHY, DP83848_PHY, MICROCHIP_PHY, TERANETICS_PHY
+ as modules
+ * net/sched: Really enable NET_CLS_FLOWER as module
+ * net/usb: Enable USB_LAN78XX, USB_NET_CH9200 as modules
+ * nfsd: Enable NFSD_PNFS
+ * [x86] pinctrl: Enable PINCTRL_BROXTON, PINCTRL_SUNRISEPOINT
+ * [x86] rfkill: Enable DELL_RBTN as module
+ * serial: Enable SERIAL_OF_PLATFORM as module
+ * sound/firewire: Enable SND_FIREWIRE_DIGI00X, SND_FIREWIRE_TASCAM as modules
+ * [x86] thermal: Enable INTEL_PCH_THERMAL, INTEL_SOC_DTS_THERMAL as modules;
+ disable THERMAL_OF
+ * [x86] Enable INTEL_PMC_IPC as module
+ * vfs,nvdimm: Really enable FS_DAX
+ * [amd64] mm,nvdimm: Disable ZONE_DMA; enable ZONE_DEVICE, NVDIMM_PFN
+ - This disables drivers for some AC'97 sound cards
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 10 Feb 2016 02:02:14 +0000
+
+linux (4.4-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_4.4
+
+ [ Ben Hutchings ]
+ * [armhf] Enable EXTCON_USB_GPIO, ENSORS_GPIO_FAN as modules, and
+ USB_DWC3_DUAL_ROLE instead of USB_DWC3_HOST (Closes: #810048)
+ * [rt] Update to 4.4-rt2
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 19 Jan 2016 22:25:06 +0000
+
+linux-tools (4.4-1~exp2) experimental; urgency=medium
+
+ * linux-perf: Fix FTBFS with gcc 6 (used on hppa, sparc64)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 19 Jan 2016 22:11:13 +0000
+
+linux-tools (4.4-1~exp1) experimental; urgency=medium
+
+ * New upstream release
+
+ [ Ben Hutchings ]
+ * linux-perf: Fix reading of build-id from vDSO
+ * linux-perf: Leave -rc suffix out of version in package description
+ * debian.py: Implement stable order of fields not in the predefined order
+ * genorig.py: Make orig tarballs really reproducible:
+ - Override umask while extracting/exporting files
+ - Override user and group names in tarball
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 19 Jan 2016 00:31:02 +0000
+
+linux (4.4~rc8-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [rt] Update to 4.4-rc6-rt1 and re-enable
+ * [rt] Fix build error in kernel/time/hrtimer.c
+ * [rt] latency_hist: Update sched_switch probe
+ * [armhf] Add support for BCM2836 and Raspberry Pi 2:
+ - pwm: bcm2835: Calculate scaler in ->config()
+ - pwm: bcm2835: Prevent division by zero
+ - drm: Create a driver hook for allocating GEM object structs
+ - drm/vc4: Add a BO cache
+ - drm/vc4: Add create and map BO ioctls
+ - drm/vc4: Add an API for creating GPU shaders in GEM BOs
+ - drm/vc4: Fix a typo in a V3D debug register
+ - drm/vc4: Bind and initialize the V3D engine
+ - drm/vc4: Add support for drawing 3D frames
+ - drm/vc4: Add support for async pageflips
+ - drm/vc4: Add an interface for capturing the GPU state after a hang
+ - drm/vc4: copy_to_user() returns the number of bytes remaining
+ - drm/vc4: allocate enough memory in vc4_save_hang_state()
+ - drm/vc4: fix an error code
+ - bcm2835: Add a compat string for bcm2836 machine probe
+ - bcm2835: Add Kconfig support for bcm2836
+ - bcm2835: Define two new packets from the latest firmware
+ - bcm2835: add rpi power domain driver
+ - bcm2835: Split the DT for peripherals from the DT for the CPU
+ - bcm2835: Move the CPU/peripheral include out of common RPi DT
+ - bcm2835: Add devicetree for bcm2836 and Raspberry Pi 2 B
+ - bcm2835: Add the auxiliary clocks to the device tree
+ - Enable ARCH_BCM, ARCH_BCM2835, DMA_BCM2835, BCM2835_MBOX,
+ RASPBERRYPI_FIRMWARE, RASPBERRYPI_POWER
+ - Enable DRM_VC4, I2C_BCM2835, MMC_SDHCI_BCM2835, PWM_BCM2835, SPI_BCM2835,
+ SPI_BCM2835AUX, USB_DWC2, BCM2835_WDT, SND_BCM2835_SOC_I2S as modules
+ - udeb: Add sdhci-bcm2835 to mmc-modules, dwc2 to usb-modules
+ * [armhf] Enable INPUT_AXP20X_PEK, CAN_SUN4I, SND_SUN4I_CODEC as modules
+ (Closes: #808623)
+ * [x86] nvdimm: Change X86_PMEM_LEGACY from built-in to module
+ * [x86] Enable DEBUG_WX, X86_INTEL_MPX
+
+ [ Ian Campbell ]
+ * [armel/kirkwood] Updates/clarifications to kernel size limitations from
+ Martin Michlmayr. (Closes: #809528)
+ * [armhf] Enable support for Rockchip devices. (Closes: #809083)
+ * [armhf] Enable basic support for DRA7XX systems, such as Beagle-x15.
+ (Closes: #807624)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 04 Jan 2016 17:23:28 +0000
+
+linux (4.4~rc6-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+ - include/linux/mmdebug.h: should include linux/bug.h
+ (fixes FTBFS on arm64)
+
+ [ Ben Hutchings ]
+ * [sparc64] udeb: Replace mpt2sas with mpt3sas in scsi-common-modules
+ (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 21 Dec 2015 17:30:10 +0000
+
+linux (4.4~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [arm64] Drop now-redundant patches for X-Gene (fixes FTBFS)
+ * [s390x] udeb: Add crc-modules package (fixes FTBFS)
+ * cirrus,mgag200: Drop patches for compatibility with wheezy userland
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 16 Dec 2015 17:16:09 +0000
+
+linux-tools (4.4~rc4-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 14 Dec 2015 01:28:50 +0000
+
+linux (4.4~rc4-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update support patches to aufs4.x-rcN-20151123
+ * udeb: Make md-modules depend on crc-modules (Closes: #807661)
+ * [armel/kirkwood,armhf] crypto: Enable CRYPTO_DEV_MARVELL_CESA as module
+ (Closes: #807634)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 13 Dec 2015 16:25:45 +0000
+
+linux (4.3.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.3.4
+ - toshiba_acpi: Initialize hotkey_event_type variable (regression in 4.3)
+ - USB: add quirk for devices with broken LPM
+ - usb: core : hub: Fix BOS 'NULL pointer' kernel panic
+ - pppoe: fix memory corruption in padt work structure (regression in 4.1)
+ - ipv6: keep existing flags when setting IFA_F_OPTIMISTIC
+ (regression in 4.1)
+ - vxlan: fix incorrect RCO bit in VXLAN header (regression in 4.0)
+ - sctp: update the netstamp_needed counter when copying sockets
+ - sctp: also copy sk_tsflags when copying the socket (regression in 3.17)
+ - r8152: fix lockup when runtime PM is enabled (regression in 4.2)
+ - ipv6: sctp: clone options to avoid use after free
+ - phy: micrel: Fix finding PHY properties in MAC node. (regression in 4.2)
+ - openvswitch: Fix helper reference leak
+ - openvswitch: Respect conntrack zone even if invalid
+ - net: fix IP early demux races
+ - vlan: Fix untag operations of stacked vlans with REORDER_HEADER off
+ - skbuff: Fix offset error in skb_reorder_vlan_header
+ - net: check both type and procotol for tcp sockets
+ - net_sched: make qdisc_tree_decrease_qlen() work for non mq
+ (regression in 4.3.3)
+ - net: fix uninitialized variable issue
+ - ipv6: automatically enable stable privacy mode if stable_secret set
+ - inet: tcp: fix inetpeer_set_addr_v4() (regression in 4.3)
+ - rhashtable: Enforce minimum size on initial hash table (regression in 4.1)
+ - fou: clean up socket with kfree_rcu
+ - af_unix: Revert 'lock_interruptible' in stream receive code
+ - tcp: restore fastopen with no data in SYN packet (regression in 4.0)
+ - rhashtable: Fix walker list corruption (regression in 4.1)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.3.5
+ - [x86] mpx: Fix instruction decoder condition
+ - [x86] signal: Fix restart_syscall number for x32 tasks
+ - [x86] paravirt: Prevent rtc_cmos platform device init on PV guests
+ (regression in 4.2)
+ - [powerpc*] KVM: Book3S HV: Don't dynamically split core when already split
+ (regression in 4.3)
+ - [powerpc*] KVM: Book3S HV: Prohibit setting illegal transaction state
+ in MSR
+ - [x86] boot: Double BOOT_HEAP_SIZE to 64KB
+ - [x86] mm: Add barriers and document switch_mm()-vs-flush synchronization
+ (CVE-2016-2069)
+ - timers: Use proper base migration in add_timer_on()
+ - ipmi: move timer init to before irq is setup
+ - ALSA: hda - Disable 64bit address for Creative HDA controllers
+ - ALSA: hda - Fix lost 4k BDL boundary workaround (regression in 4.2)
+ - [x86] ALSA: hda - Fix noise on Dell Latitude E6440 (regression in 4.1)
+ - ALSA: hda - Skip ELD notification during system suspend
+ (regression in 4.3)
+ - ALSA: seq: Fix missing NULL check at remove_events ioctl
+ - ALSA: usb-audio: Avoid calling usb_autopm_put_interface() at disconnect
+ - ALSA: seq: Fix race at timer setup and close
+ - [x86] ALSA: hda - Fix white noise on Dell Latitude E5550
+ (regression in 4.1)
+ - ALSA: usb-audio: Fix mixer ctl regression of Native Instrument devices
+ (regression in 3.19)
+ - ALSA: timer: Harden slave timer list handling
+ - ALSA: timer: Fix race among timer ioctls
+ - ALSA: timer: Fix double unlink of active_list
+ - [x86] ALSA: hda - Add fixup for Dell Latitidue E6540 (regression in 4.1)
+ - ALSA: seq: Fix snd_seq_call_port_info_ioctl in compat mode
+ - ALSA: pcm: Fix snd_pcm_hw_params struct copy in compat mode
+ - ALSA: control: Avoid kernel warnings from tlv ioctl with numid 0
+ - ALSA: timer: Handle disconnection more safely
+ - ASoC: rt286: Fix run time error while modifying const data
+ (regression in 4.3)
+ - airspy: increase USB control message buffer size (regression in 3.17)
+ - USB: fix invalid memory access in hub_activate()
+ - openvswitch: correct encoding of set tunnel action attributes
+ (regression in 4.3)
+ - veth: don’t modify ip_summed; doing so treats packets with bad checksums
+ as good.
+ - ipv6/addrlabel: fix ip6addrlbl_get()
+ - addrconf: always initialize sysctl table data
+ - connector: bump skb->users before callback invocation
+ - af_unix: Fix splice-bind deadlock
+ - bridge: Only call /sbin/bridge-stp for the initial network namespace
+ - net: filter: make JITs zero A for SKF_AD_ALU_XOR_X (regression in 3.16)
+ - net: sched: fix missing free per cpu on qstats (regression in 3.18)
+ - net: possible use after free in dst_release
+ - tcp: fix zero cwnd in tcp_cwnd_reduction (CVE-2016-2070)
+ (regression in 4.3)
+ - net: sctp: prevent writes to cookie_hmac_alg from accessing invalid memory
+ - ipv6: tcp: add rcu locking in tcp_v6_send_synack()
+ - tcp_yeah: don't set ssthresh below 2
+ - udp: disallow UFO for sockets with SO_NO_CHECK option (regression in 4.0)
+ - net: preserve IP control block during GSO segmentation
+ - phonet: properly unshare skbs in phonet_rcv() (regression in 4.0)
+ - net: bpf: reject invalid shifts
+ - ipv6: update skb->csum when CE mark is propagated
+ - batman-adv: Avoid recursive call_rcu for batadv_bla_claim
+ - batman-adv: Avoid recursive call_rcu for batadv_nc_node
+ - batman-adv: Drop immediate batadv_orig_ifinfo free function
+ - batman-adv: Drop immediate batadv_neigh_node free function
+ - batman-adv: Drop immediate neigh_ifinfo free function
+ - batman-adv: Drop immediate batadv_hard_iface free function
+ - batman-adv: Drop immediate orig_node free function
+ - team: Replace rcu_read_lock with a mutex in team_vlan_rx_kill_vid
+ - xfrm: dst_entries_init() per-net dst_ops
+ - [powerpc*] tm: Block signal return setting invalid MSR state
+ - [powerpc*] tm: Check for already reclaimed tasks
+ - [ppc64el] opal-irqchip: Fix double endian conversion (regression in 4.2)
+ - [powerpc*] opal-irqchip: Fix deadlock introduced by "Fix double endian
+ conversion"
+ - [powerpc*] powernv: pr_warn_once on unsupported OPAL_MSG type
+ - [powerpc*] Make value-returning atomics fully ordered
+ - [powerpc*] Make {cmp}xchg* and their atomic_ versions fully ordered
+ - [arm64] bpf: fix div-by-zero case
+ - [arm64] bpf: fix mod-by-zero case
+ - [arm64] cmpxchg_dbl: fix return value type (regression in 4.3)
+ - [arm*] KVM: test properly for a PTE's uncachedness
+ - [arm64] KVM: Fix AArch32 to AArch64 register mapping
+ - [arm*] KVM: correct PTE uncachedness check
+ - [arm64] kernel: enforce pmuserenr_el0 initialization and restore
+ - [arm*] iommu/arm-smmu: Fix error checking for ASID and VMID allocation
+ - HID: wacom: Tie cached HID_DG_CONTACTCOUNT indices to report ID
+ (regression in 4.3)
+ - HID: wacom: Expect 'touch_max' touches if HID_DG_CONTACTCOUNT not present
+ (regression in 4.3)
+ - HID: core: Avoid uninitialized buffer access
+ - staging: lustre: echo_copy.._lsm() dereferences userland pointers directly
+ - direct-io: Fix negative return from dio read beyond eof
+ - fix the regression from "direct-io: Fix negative return from dio read
+ beyond eof"
+ - [arm64] KVM: Add workaround for Cortex-A57 erratum 834220
+ - [arm64] kernel: fix architected PMU registers unconditional access
+
+ [ Ben Hutchings ]
+ * fuse: break infinite loop in fuse_fill_write_pages() (CVE-2015-8785)
+ * SCSI: fix crashes in sd and sr runtime PM (Closes: #801925)
+ * rt2x00: fix monitor mode regression (regression in 4.2)
+ * pipe: limit the per-user amount of pages allocated in pipes (CVE-2013-4312)
+ [Original reference is incorrect; should be CVE-2016-2847.]
+ * [powerpc*] Enable CRYPTO_DEV_VMX and enable CRYPTO_DEV_VMX_ENCRYPT as
+ module (Closes: #813640)
+ * debian/copyright: Add licence information for drivers/crypto/vmx/*.pl
+ * udeb: Add hid-logitech-hidpp to input-modules (Closes: #796096)
+ * hwrng: n2 - Attach on T5/M5, T7/M7 SPARC CPUs (Closes: #809815)
+
+ [ Salvatore Bonaccorso ]
+ * netfilter: nf_nat_redirect: add missing NULL pointer check (CVE-2015-8787)
+
+ [ Aurelien Jarno ]
+ * [mips*] Backport math emulation fix from 4.5.
+ * [arm64] Enable RTC_DRV_EFI.
+
+ [ Hendrik Brueckner ]
+ * [s390x] udeb: include modules to mount ISOs (loop device)
+ (Closes: #812336)
+ * [s390x] udeb: include btrfs-modules (Closes: #812340)
+
+ [ Martin Michlmayr ]
+ * Include Device Tree model in reportbug script
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 06 Feb 2016 23:25:14 +0000
+
+linux (4.3.3-7) unstable; urgency=medium
+
+ * linux-image-dbg: Don't rely on upstream makefile to make .build-id
+ links to vDSO debuginfo (fixes FTBFS on arm64, s390)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 19 Jan 2016 17:29:21 +0000
+
+linux (4.3.3-6) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * debian.py: Implement stable order of fields in debian/tests/control
+ * debian.py: Implement stable order of fields not in the predefined order
+ * genorig.py: Make orig tarballs really reproducible:
+ - Override umask while extracting/exporting files
+ - Override user and group names in tarball
+ * xen/gntdev: Grant maps should not be subject to NUMA balancing
+ (Closes: #810472)
+ * gpio: Enable GPIO_SYSFS wherever GPIOLIB is enabled (Closes: #810085)
+ * [armhf] udeb: Include usbhid in input-modules (Closes: #809521)
+ * linux-image-dbg: Include debugging symbols for VDSOs
+ * [armel/kirkwood] power/reset: Re-enable POWER_RESET, POWER_RESET_GPIO
+ (regression in 3.17~rc5-1~exp1)
+ * usb: serial: visor: fix crash on detecting device without write_urbs
+ (CVE-2015-7566)
+ * tty: Fix unsafe ldisc reference via ioctl(TIOCGETD) (CVE-2016-0723)
+ * [x86] drm/vmwgfx: Fix a width / pitch mismatch on framebuffer updates
+ * bcache: Add upstream fixes marked for stable:
+ - fix a livelock when we cause a huge number of cache misses
+ - Add a cond_resched() call to gc
+ - clear BCACHE_DEV_UNLINK_DONE flag when attaching a backing device
+ - fix a leak in bch_cached_dev_run()
+ - unregister reboot notifier if bcache fails to unregister device
+ - allows use of register in udev to avoid "device_busy" error.
+ - prevent crash on changing writeback_running
+ - Change refill_dirty() to always scan entire disk if necessary
+ * KEYS: Fix keyring ref leak in join_session_keyring() (CVE-2016-0728)
+
+ [ Salvatore Bonaccorso ]
+ * unix: properly account for FDs passed over unix sockets (CVE-2013-4312)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 19 Jan 2016 00:41:31 +0000
+
+linux (4.3.3-5) unstable; urgency=medium
+
+ * [armhf] udeb: Fix duplication and circular dependency between core-modules
+ and usb-modules (really fixes FTBFS)
+ - Add core-modules as a dependency of usb-modules
+ - Remove gpio-viperboard from core-modules as it is unlikely to be needed
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 04 Jan 2016 00:45:27 +0000
+
+linux (4.3.3-4) unstable; urgency=medium
+
+ * [armhf] udeb: Remove pbias-regulator module from mmc-modules as it's now
+ in core-modules (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 03 Jan 2016 01:50:52 +0000
+
+linux (4.3.3-3) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [ppc64*] drm: Enable DRM_AST as module (Closes: #808338)
+ * block: ensure to split after potentially bouncing a bio (Closes: #809082)
+ * pptp: verify sockaddr_len in pptp_bind() and pptp_connect() (CVE-2015-8569)
+ * bluetooth: Validate socket address length in sco_sock_bind() (CVE-2015-8575)
+ * [xen] Fix race conditions in back-end drivers (CVE-2015-8550, XSA-155)
+ * [xen] pciback: Fix state validation in MSI control operations
+ (CVE-2015-8551, CVE-2015-8852, XSA-157)
+ * ptrace: being capable wrt a process requires mapped uids/gids
+ (CVE-2015-8709)
+ * KEYS: Fix race between read and revoke (CVE-2015-7550)
+ * [armhf] udeb: Add modular clock, GPIO, PCIe PHY and regulator drivers to
+ core-modules (Closes: #809521)
+ * [armhf] udeb: Add more USB PHY drivers to usb-modules
+ * drm/nouveau/pmu: do not assume a PMU is present (Closes: #809481)
+ * [x86] drm/i915: Don't compare has_drrs strictly in pipe config
+ (Closes: #808720)
+ * [armhf] crypto: sun4i-ss - add missing statesize (Closes: #808625)
+ * Revert "xhci: don't finish a TD if we get a short transfer event mid TD"
+ (Closes: #808602, #808953, regression in 4.3-rc7)
+ * [x86] pinctrl: Enable PINCTRL_CHERRYVIEW (Closes: #808044)
+ * [s390x] udeb: Add crc-modules package (Closes: #808051)
+
+ [ Salvatore Bonaccorso ]
+ * ovl: fix permission checking for setattr (CVE-2015-8660)
+ * [x86] kvm: Reload pit counters for all channels when restoring state
+ (CVE-2015-7513)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 02 Jan 2016 16:45:46 +0000
+
+linux-tools (4.3.1-2) unstable; urgency=medium
+
+ * Upload for Perl 5.22 transition (Closes: #808329)
+ * debian/rules: Fix check for binNMU, broken since 4.1.4-1
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 19 Dec 2015 03:47:10 +0000
+
+linux (4.3.3-2) unstable; urgency=medium
+
+ * [armhf,sparc64] Force ZONE_DMA to be enabled, reversing ABI change in
+ 4.3.3 (fixes FTBFS)
+ * [sh4] Disable CC_STACKPROTECTOR_STRONG temporarily (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 17 Dec 2015 18:21:52 +0000
+
+linux (4.3.3-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.3.2
+ - X.509: Fix the time validation [ver #2]
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.3.3
+ - r8169: fix kasan reported skb use-after-free. (regression in 4.3)
+ - af-unix: fix use-after-free with concurrent readers while splicing
+ (regression in 4.2)
+ - af_unix: don't append consumed skbs to sk_receive_queue
+ (regression in 4.2)
+ - af_unix: take receive queue lock while appending new skb
+ (regression in 4.2)
+ - af-unix: passcred support for sendpage (regression in 4.2)
+ - ipv6: Avoid creating RTF_CACHE from a rt that is not managed by fib6 tree
+ (regression in 4.2)
+ - ipv6: Check expire on DST_NOCACHE route
+ - ipv6: Check rt->dst.from for the DST_NOCACHE route (regression in 4.3)
+ - Revert "ipv6: ndisc: inherit metadata dst when creating ndisc requests"
+ (regression in 4.3)
+ - packet: only allow extra vlan len on ethernet devices
+ - packet: infer protocol from ethernet header if unset
+ - packet: fix tpacket_snd max frame len
+ - sctp: translate host order to network order when setting a hmacid
+ - net/mlx5e: Added self loopback prevention (regression in 4.3)
+ - net/mlx4_core: Fix sleeping while holding spinlock at rem_slave_counters
+ (regression in 4.2)
+ - ip_tunnel: disable preemption when updating per-cpu tstats
+ - net/ip6_tunnel: fix dst leak (regression in 4.3)
+ - tcp: disable Fast Open on timeouts after handshake
+ - tcp: fix potential huge kmalloc() calls in TCP_REPAIR
+ - tcp: initialize tp->copied_seq in case of cross SYN connection
+ - net, scm: fix PaX detected msg_controllen overflow in scm_detach_fds
+ - net: ipmr: fix static mfc/dev leaks on table destruction
+ - net: ip6mr: fix static mfc/dev leaks on table destruction
+ - vrf: fix double free and memory corruption on register_netdevice failure
+ - tipc: fix error handling of expanding buffer headroom (regression in 4.3)
+ - ipv6: distinguish frag queues by device for multicast and link-local
+ packets
+ - bpf, array: fix heap out-of-bounds access when updating elements
+ - ipv6: add complete rcu protection around np->opt
+ - net/neighbour: fix crash at dumping device-agnostic proxy entries
+ - ipv6: sctp: implement sctp_v6_destroy_sock()
+ - openvswitch: fix hangup on vxlan/gre/geneve device deletion
+ - net_sched: fix qdisc_tree_decrease_qlen() races
+ - btrfs: fix resending received snapshot with parent (regression in 4.2)
+ - Btrfs: fix file corruption and data loss after cloning inline extents
+ - Btrfs: fix regression when running delayed references (regression in 4.2)
+ - Btrfs: fix race leading to incorrect item deletion when dropping extents
+ - Btrfs: fix race leading to BUG_ON when running delalloc for nodatacow
+ - Btrfs: fix race when listing an inode's xattrs
+ - rbd: don't put snap_context twice in rbd_queue_workfn()
+ - ext4 crypto: fix memory leak in ext4_bio_write_page()
+ - ext4 crypto: fix bugs in ext4_encrypted_zeroout()
+ - ext4: fix potential use after free in __ext4_journal_stop
+ (regression in 4.2)
+ - ext4, jbd2: ensure entering into panic after recording an error in
+ superblock
+ - nfsd: serialize state seqid morphing operations
+ - nfsd: eliminate sending duplicate and repeated delegations
+ - nfs4: start callback_ident at idr 1
+ - nfs4: resend LAYOUTGET when there is a race that changes the seqid
+ - nfs: if we have no valid attrs, then don't declare the attribute cache
+ valid
+ - ocfs2: fix umask ignored issue
+ - block: fix segment split (regression in 4.3)
+ - ceph: fix message length computation
+ - Btrfs: fix regression running delayed references when using qgroups
+ (regression in 4.2)
+
+ [ Ben Hutchings ]
+ * net: add validation for the socket syscall protocol argument (CVE-2015-8543)
+ * [armel/kirkwood] udeb: Override inclusion of gpio_keys in input-modules
+ (fixes FTBFS)
+ * vrf: Fix broken backport of "vrf: fix double free and memory corruption on
+ register_netdevice failure" in 4.3.3
+ * net: Ignore ABI changes due to "ipv6: add complete rcu protection around
+ np->opt", which don't appear to affect out-of-tree modules
+ * tipc: Fix kfree_skb() of uninitialised pointer (regression in 4.3.3)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 15 Dec 2015 21:25:26 +0000
+
+linux-tools (4.3.1-1) unstable; urgency=medium
+
+ * New upstream stable update
+ - [x86] Add #AC to SVM_EXIT_REASONS
+
+ [ Ben Hutchings ]
+ * debian/bin/genorig.py: Add more files under arch/*/include/asm to file list
+ (fixes FTBFS on several architectures)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 14 Dec 2015 00:43:39 +0000
+
+linux-tools (4.3-1) unstable; urgency=medium
+
+ * New upstream release
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 13 Dec 2015 03:47:05 +0000
+
+linux (4.3.1-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.3.1
+
+ [ Ben Hutchings ]
+ * Set ABI to 1
+ * [armhf] rtc: Enable RTC_DRV_DS1307, RTC_DRV_PCF8563, RTC_DRV_ARMADA38X
+ (Closes: #807632)
+ * [armhf] Enable MACH_ARMADA_375, MACH_ARMADA_38X, MACH_ARMADA_39X
+ (Closes: #807633)
+ * [armhf] net: Enable MVPP2 as module
+ * [armel/kirkwood] dts: Fix QNAP TS219 power-off (Closes: #807696)
+ * [armhf] udeb: Add leds-modules package containing leds-gpio driver
+ (Closes: #807721)
+ * [x86] drm/i915: Mark uneven memory banks on gen4 desktop as unknown
+ swizzling (Closes: #780363)
+ * Enable CC_STACKPROTECTOR_STRONG (Closes: #805652)
+ * [x86] input: Enable KEYBOARD_GPIO, INPUT_SOC_BUTTON_ARRAY (Closes: #804864)
+ * [x86] nouveau: bios: return actual size of the buffer retrieved via _ROM
+ (Closes: #772716)
+ * [armhf] Add support for Odroid-XU4 (Closes: #804850)
+ - mfd: s2mps11: Add manual shutdown method for Odroid XU3
+ - dts: Fix power off method for exynos5422-odroidxu3-common
+ - dts: Split audio configuration to separate exynos5422-odroidxu3-audio
+ - dts: Add support Odroid XU4 board for exynos5422-odroidxu4
+ * udeb: Add hid-chicony to input-modules (Closes: #766570)
+ * sched: Enable CFS_BANDWIDTH (Closes: #802746)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 13 Dec 2015 00:38:54 +0000
+
+linux (4.3-1~exp2) experimental; urgency=medium
+
+ [ Ben Hutchings ]
+ * mv643xx_eth: Re-enable TSO, fixed upstream in 4.3
+ * debian/control: Move patchutils from Build-Depends to Build-Depends-Indep,
+ as we only use filterdiff when building linux-source-<version>
+ * debian/control,debian/rules: Support a 'stage1' build profile which
+ builds only linux-libc-dev (Closes: #695243)
+ * debian/control: Add ':any' to Build-Depends on python3, to support cross-
+ bootstrap
+ * [armhf] Enable new drivers for Allwinner chips (Closes: #804856)
+ - crypto: Enable CRYPTO_DEV_SUN4I_SS as module
+ - musb: Enable USB_MUSB_SUNXI as module
+ * aufs: Update support patches to aufs4.3-20151116
+ * [armhf] USB: Change USB, USB_GADGET, and various drivers from built-in to
+ modules
+ - musb: Enable USB_MUSB_DUAL_ROLE
+ * [armhf] musb: Disable MUSB_PIO_ONLY and enable USB_INVENTRA_DMA,
+ USB_TI_CPPI41_DMA, USB_TUSB_OMAP_DMA
+
+ [ Ian Campbell ]
+ * [armel/orion5x] Enable Device Tree for orion5x. Patch from Roger Shimizu
+ (Closes: #803159)
+ * [armel/orion5x] Enable CONFIG_DEBUG_LL_UART_8250.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 04 Dec 2015 19:36:10 +0000
+
+linux (4.3-1~exp1) experimental; urgency=medium
+
+ * New upstream release
+
+ [ Ben Hutchings ]
+ * netfilter: Enable NFT_DUP_IPV4, NFT_DUP_IPV6 as modules (Closes: #803370)
+ * tests: Add autopkgtest support
+ * [x86] Compile with gcc-5
+ * [x86] Enable PINCTRL_BAYTRAIL (Closes: #797949)
+
+ [ Salvatore Bonaccorso ]
+ * Fix typo in image.plain.postinst template.
+ Add missing space in warn message causing typo "dangling linkto".
+ Thanks to Jakub Wilk <jwilk@debian.org> (Closes: #803323)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 04 Nov 2015 07:45:13 +0000
+
+linux (4.3~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+ - [x86] smpboot: Fix CPU #1 boot timeout (Closes: #802464)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 28 Oct 2015 11:04:27 +0900
+
+linux-tools (4.3~rc5-1~exp2) experimental; urgency=medium
+
+ * Fix the build-indep and binary-indep targets (fixes FTBFS for arch:all)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 14 Oct 2015 02:08:09 +0100
+
+linux-tools (4.3~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+ - perf: Fix build on architectures without CONFIG_PERF_REGS
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 14 Oct 2015 00:49:38 +0100
+
+linux (4.3~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 14 Oct 2015 00:48:41 +0100
+
+linux-tools (4.3~rc4-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 07 Oct 2015 01:15:46 +0100
+
+linux (4.3~rc4-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [armhf] dts: Fix Makefile target for sun4i-a10-itead-iteaduino-plus
+ (fixes FTBFS)
+ * [mips*] io: Define ioremap_uc (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 06 Oct 2015 23:27:45 +0100
+
+linux (4.3~rc3-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * Disable CRAMFS; it was obsoleted by squashfs and initramfs
+ * [i386] Replace 586 flavour with 686
+ - Enable support for OLPC and other Geode-based systems in the 686 flavour
+ - udeb: Update kernel-versions
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 27 Sep 2015 21:02:54 +0100
+
+linux (4.2.6-3) unstable; urgency=medium
+
+ * Ignore some gpiochip ABI changes (fixes FTBFS on i386)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 06 Dec 2015 02:12:41 +0000
+
+linux (4.2.6-2) unstable; urgency=medium
+
+ [ Salvatore Bonaccorso ]
+ * [x86] KVM: svm: unconditionally intercept #DB (CVE-2015-8104)
+ * [x86] KVM: rename update_db_bp_intercept to update_bp_intercept
+
+ [ Ian Campbell ]
+ * [x86] Xen: expose a more realistic max p2m size in the shared info, fixes
+ migration (Closes: #797205)
+
+ [ Ben Hutchings ]
+ * media: usbvision: fix crash on detecting device with invalid configuration
+ (CVE-2015-7833, partly fixed in 4.2.6-1)
+ * udeb: Add dm-service-time to multipath-modules (Closes: #806131)
+ * unix: avoid use-after-free in ep_remove_wait_queue (CVE-2013-7446)
+ * isdn_ppp: Add checks for allocation failure in isdn_ppp_open()
+ * ppp, slip: Validate VJ compression slot parameters completely
+ (CVE-2015-7799)
+ * Btrfs: fix truncation of compressed and inlined extents (CVE-2015-8374)
+ * netfilter: Enable NFT_DUP_IPV4, NFT_DUP_IPV6 as modules (Closes: #803370)
+ * [x86] Enable PINCTRL_BAYTRAIL (Closes: #797949)
+ * qxl: Enable by default (Closes: #779515)
+ * [s390*] Update linux-compiler metapackage to gcc-4.9
+ * firmware_class: Fix condition in directory search loop (Closes: #804862)
+ * [x86] input: Enable MOUSE_ELAN_I2C as module, MOUSE_ELAN_I2C_I2C and
+ MOUSE_ELAN_I2C_SMBUS (Closes: #791631)
+ * [armhf] hsi: Enable CMT_SPEECH as module (Closes: #791819)
+ * [armhf] power: Enable BATTERY_RX51 as module (Closes: #791820)
+ * [x86] psmouse: Enable MOUSE_PS2_VMMOUSE (Closes: #802929)
+ - linux-image: Add versioned Breaks on xserver-xorg-input-vmmouse to
+ avoid driver conflicts
+ * [armhf] udeb: Add stmmac platform modules dwmac-generic, dwmac-socfpga
+ and dwmac-sunxi to nic-modules (Closes: #805098)
+ * wireless: Enable WL_MEDIATEK, MT7601U as module
+ * [x86] drm/i915: shut up gen8+ SDE irq dmesg noise (Closes: #806304)
+ * [armhf] regulator: Enable REGULATOR_PFUZE100 as module (Closes: #806284)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 04 Dec 2015 02:26:51 +0000
+
+linux (4.2.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.2.6
+ - mmc: core: Fix init_card in 52Mhz (regression in 4.2)
+ - rtlwifi: rtl8821ae: Fix system lockups on boot (regression in 4.2)
+ - iwlwifi: mvm: init card correctly on ctkill exit check
+ (regression in 3.18)
+ - iwlwifi: mvm: flush fw_dump_wk when mvm fails to start
+ (regression in 3.18)
+ - [x86] iommu/vt-d: fix range computation when making room for large pages
+ - [x86] iommu/amd: Fix BUG when faulting a PROT_NONE VMA
+ - [x86] iommu/amd: Don't clear DTE flags when modifying it
+ - drm: fix mutex leak in drm_dp_get_mst_branch_device
+ - drm: Correct arguments to list_tail_add in create blob ioctl
+ - drm: crtc: integer overflow in drm_property_create_blob()
+ - rtl28xxu: fix control message flaws (regression in 4.0)
+ - ALSA: hda - Fix deadlock at error in building PCM
+ - [x86] ioapic: Prevent NULL pointer dereference in setup_ioapic_dest()
+ (regression in 4.2.4)
+ - mm: make sendfile(2) killable
+ - drm/radeon/dpm: don't add pwm attributes if DPM is disabled
+ (regression in 4.0)
+ - [x86] drm/i915: Restore lost DPLL register write on gen2-4
+ (regression in 3.18)
+ - [x86] drm/i915: Deny wrapping an userptr into a framebuffer
+ - drm/radeon: don't try to recreate sysfs entries on resume
+ (regression in 4.2.5)
+ - drm/radeon: fix dpms when driver backlight control is disabled
+ (regression in 4.2.4)
+ - drm/radeon: move bl encoder assignment into bl init
+ - rbd: require stable pages if message data CRCs are enabled
+ - rbd: don't leak parent_spec in rbd_dev_probe_parent()
+ - rbd: prevent kernel stack blow up on rbd map
+ - [armhf] EXYNOS: Fix double of_node_put() when parsing child power domains
+ (regression in 4.2)
+ - [armhf] dts: Fix audio card detection on Peach boards (regression in 4.1)
+ - [arm64] Revert "ARM64: unwind: Fix PC calculation"
+ - block: don't release bdi while request_queue has live references
+ (regression in 4.2)
+ - dm btree remove: fix a bug when rebalancing nodes after removal
+ - dm cache: the CLEAN_SHUTDOWN flag was not being set
+ - dm btree: fix leak of bufio-backed block in btree_split_beneath error path
+ - Revert "serial: 8250_dma: don't bother DMA with small transfers"
+ (regression in 4.0)
+ - [armel] i2c: mv64xxx: really allow I2C offloading (regression in 3.19)
+ - clkdev: fix clk_add_alias() with a NULL alias device name
+ (regression in 4.2)
+ - fbcon: initialize blink interval before calling fb_set_par
+ (regression in 4.2)
+ - PCI: Prevent out of bounds access in numa_node override
+ - ovl: free stack of paths in ovl_fill_super (regression in 4.0)
+ - ovl: free lower_mnt array in ovl_put_super (regression in 4.0)
+ - ovl: fix dentry reference leak
+ - ovl: fix open in stacked overlay (regression in 4.2)
+ - [x86] Input: alps - only the Dell Latitude D420/430/620/630 have separate
+ stick button bits (regression in 4.1)
+ - crypto: api - Only abort operations on fatal signal
+ - md/raid1: submit_bio_wait() returns 0 on success (regression in 3.10)
+ - md/raid10: submit_bio_wait() returns 0 on success (regression in 3.10)
+ - md/raid5: fix locking in handle_stripe_clean_event() (regression in 3.13)
+ - Revert "md: allow a partially recovered device to be hot-added to an
+ array." (regression in 3.14)
+ - [amd64] EDAC, sb_edac: Fix TAD presence check for sbridge_mci_bind_devs()
+ (regression in 4.2)
+ - mvsas: Fix NULL pointer dereference in mvs_slot_task_free
+ - netfilter: ipset: Fix sleeping memory allocation in atomic context
+ (regression in 4.2)
+ - btrfs: fix possible leak in btrfs_ioctl_balance() (regression in 4.2.5)
+ - kvm: irqchip: fix memory leak (regression in 4.2)
+ - [armhf] thermal: exynos: Fix register read in TMU (regression in 4.2)
+ - blk-mq: fix use-after-free in blk_mq_free_tag_set() (regression in 4.2)
+ - IB/cm: Fix rb-tree duplicate free and use-after-free
+ - sched/deadline: Fix migration of SCHED_DEADLINE tasks (regression in 4.2)
+ - [arm64] compat: fix stxr failure case in SWP emulation
+ - NVMe: Fix memory leak on retried commands
+ - [x86] drm/vmwgfx: Fix up user_dmabuf refcounting
+ - thp: use is_zero_pfn() only after pte_present() check (regression in 4.1)
+ - xen: fix backport of previous kexec patch
+
+ [ Ben Hutchings ]
+ * usbvision: fix overflow of interfaces array (CVE-2015-7833)
+ * RDS: fix race condition when sending a message on unbound socket
+ (CVE-2015-7990)
+ * media/vivid-osd: fix info leak in ioctl (CVE-2015-7884)
+ * [x86] KVM: Intercept #AC to avoid guest->host denial-of-service
+ (CVE-2015-5307)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 10 Nov 2015 14:35:05 +0000
+
+linux (4.2.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.2.4
+ - [armhf] KVM: Fix incorrect device to IPA mapping
+ - [x86] KVM: vmx: fix VPID is 0000H in non-root operation
+ - kvm: don't try to register to KVM_FAST_MMIO_BUS for non mmio eventfd
+ - kvm: fix zero length mmio searching
+ - kvm: factor out core eventfd assign/deassign logic
+ - kvm: fix double free for fast mmio eventfd
+ - [armhf] KVM: Disable virtual timer even if the guest is not using it
+ - kvm: svm: reset mmu on VCPU reset
+ - [x86] KVM: trap AMD MSRs for the TSeg base and mask
+ - [powerpc*] KVM: Book3S: Take the kvm->srcu lock in
+ kvmppc_h_logical_ci_load/store()
+ - [powerpc*] KVM: Book3S HV: Pass the correct trap argument to
+ kvmhv_commence_exit
+ - [x86] Revert "KVM: x86: apply guest MTRR virtualization on host reserved
+ pages"
+ - [x86] Revert "KVM: SVM: use NPT page attributes"
+ - [x86] Revert "KVM: SVM: Sync g_pat with guest-written PAT value"
+ - time: Fix timekeeping_freqadjust()'s incorrect use of abs() instead of
+ abs64()
+ - target/iscsi: Fix np_ip bracket issue by removing np_ip
+ - scsi: fix scsi_error_handler vs. scsi_host_dev_release race
+ - target: Attach EXTENDED_COPY local I/O descriptors to xcopy_pt_sess
+ - target: Fix PR registration + APTPL RCU conversion regression
+ - iser-target: remove command with state ISTATE_REMOVE
+ - iser-target: Put the reference on commands waiting for unsol data
+ - toshiba_acpi: Fix hotkeys registration on some toshiba models
+ - [x86] perf/intel: Fix constraint access
+ - [x86] locking/qspinlock: Fix performance regression under unaccelerated
+ VMs
+ - [x86] locking/qspinlock: Only emit the test-and-set fallback when
+ building guest support
+ - [armhf] 8401/1: perf: Set affinity for PPI based PMUs
+ - perf hists: Update the column width for the "srcline" sort key
+ - perf stat: Get correct cpu id for print_aggr
+ - perf tools: Add missing forward declaration of struct map to probe-event.h
+ - perf tools: Add empty Build files for architectures lacking them
+ - perf tools: Fix parse_events_add_pmu caller
+ - perf header: Fixup reading of HEADER_NRCPUS feature
+ - perf probe: Use existing routine to look for a kernel module by
+ dso->short_name
+ - watchdog: sunxi: fix activation of system reset
+ - watchdog: imgpdc: Unregister restart handler on remove
+ - sched: access local runqueue directly in single_task_running
+ - hwmon: (nct6775) Swap STEP_UP_TIME and STEP_DOWN_TIME registers for most
+ chips
+ - [armhf] fix Thumb2 signal handling when ARMv6 is enabled
+ - [armel,armhf] 8429/1: disable GCC SRA optimization
+ - [powerpc*] windfarm: decrement client count when unregistering
+ - [armhf] dts: omap5-uevm.dts: fix i2c5 pinctrl offsets
+ - [armhf] dts: omap3-beagle: make i2c3, ddc and tfp410 gpio work again
+ - [armhf] EXYNOS: reset Little cores when cpu is up
+ - [armhf] dts: sunxi: Raise minimum CPU voltage for sun7i-a20 to meet SoC
+ specifications
+ - [armhf] dts: Fix wrong clock binding for sysmmu_fimd1_1 on exynos5420
+ - [armhf] dts: fix usb pin control for imx-rex dts
+ - dax: fix O_DIRECT I/O to the last block of a blockdev
+ - blockdev: don't set S_DAX for misaligned partitions
+ - block: blkg_destroy_all() should clear q->root_blkg and ->root_rl.blkg
+ - dmaengine: at_xdmac: change block increment addressing mode
+ - dmaengine: at_xdmac: clean used descriptor
+ - dmaengine: dw: properly read DWC_PARAMS register
+ - dmaengine: at_xdmac: fix bug in prep_dma_cyclic
+ - pmem: add proper fencing to pmem_rw_page()
+ - [x86] apic: Serialize LVTT and TSC_DEADLINE writes
+ - [x86] alternatives: Make optimize_nops() interrupt safe and synced
+ - [i386] platform: Fix Geode LX timekeeping in the generic x86 build
+ - [x86] ioapic: Force affinity setting in setup_ioapic_dest()
+ - [x86] pci/intel_mid_pci: Work around for IRQ0 assignment
+ - [x86] paravirt: Replace the paravirt nop with a bona fide empty function
+ - [amd64] nmi: Fix a paravirt stack-clobbering bug in the NMI code
+ - [x86] Use WARN_ON_ONCE for missing X86_FEATURE_NRIPS
+ - [x86] efi: Fix boot crash by mapping EFI memmap entries bottom-up at
+ runtime, instead of top-down
+ - [x86] kexec: Fix kexec crash in syscall kexec_file_load()
+ - [x86] process: Add proper bound checks in 64bit get_wchan()
+ - [x86] mm: Set NX on gap between __ex_table and rodata
+ - [x86] xen: Support kexec/kdump in HVM guests by doing a soft reset
+ - leds:lp55xx: Correct Kconfig dependency for f/w user helper
+ - leds/led-class: Add missing put_device()
+ - sched/core: Fix TASK_DEAD race in finish_task_switch()
+ - [s390x] compat: correct uc_sigmask of the compat signal frame
+ - [s390x] boot/decompression: disable floating point in decompressor
+ - Revert "cgroup: simplify threadgroup locking"
+ - Revert "sched, cgroup: replace signal_struct->group_rwsem with a global
+ percpu_rwsem"
+ - memcg: make mem_cgroup_read_stat() unsigned
+ - spi: Fix documentation of spi_alloc_master()
+ - spi: bcm2835: BUG: fix wrong use of PAGE_MASK
+ - spi: spidev: fix possible NULL dereference
+ - mm: migrate: hugetlb: putback destination hugepage to active list
+ - lib/iommu-common.c: do not try to deref a null iommu->lazy_flush()
+ pointer when n < pool->hint
+ - ocfs2/dlm: fix deadlock when dispatch assert master
+ - mm: hugetlbfs: skip shared VMAs when unmapping private pages to satisfy a
+ fault
+ - memcg: fix dirty page migration
+ - [armhf] ALSA: hda/tegra - async probe for avoiding module loading deadlock
+ - ALSA: synth: Fix conflicting OSS device registration on AWE32
+ - ALSA: hda: Add dock support for ThinkPad T550
+ - ALSA: hda - Apply SPDIF pin ctl to MacBookPro 12,1
+ - ALSA: hda - Disable power_save_node for IDT 92HD73xx chips
+ - ASoC: pxa: pxa2xx-ac97: fix dma requestor lines
+ - ASoC: dwc: correct irq clear method
+ - ASoC: db1200: Fix DAI link format for db1300 and db1550
+ - ASoC: sgtl5000: fix wrong register MIC_BIAS_VOLTAGE setup on probe
+ - ASoC: tas2552: fix dBscale-min declaration
+ - btrfs: skip waiting on ordered range for special files
+ - Btrfs: fix read corruption of compressed and shared extents
+ - Btrfs: update fix for read corruption of compressed and shared extents
+ - PCI: Fix devfn for VPD access through function 0
+ - PCI: Use function 0 VPD for identical functions, regular VPD for others
+ - PCI: Clear IORESOURCE_UNSET when clipping a bridge window
+ - dm thin: disable discard support for thin devices if pool's is disabled
+ - dm crypt: constrain crypt device's max_segment_size to PAGE_SIZE
+ - ath10k: fix dma_mapping_error() handling
+ - svcrdma: Fix send_reply() scatter/gather set-up
+ - md/raid0: update queue parameter in a safer location.
+ - md/raid0: apply base queue limits *before* disk_stack_limits
+ - dm raid: fix round up of default region size
+ - netfilter: nfnetlink: work around wrong endianess in res_id field
+ - netfilter: nf_tables: Use 32 bit addressing register from
+ nft_type_to_reg()
+ - netfilter: ipset: Out of bound access in hash:net* types fixed
+ - netfilter: ipset: Fixing unnamed union init
+ - netfilter: nf_log: wait for rcu grace after logger unregistration
+ - netfilter: nft_compat: skip family comparison in case of NFPROTO_UNSPEC
+ - netfilter: nf_log: don't zap all loggers on unregister
+ - regulator: core: Correct return value check in regulator_resolve_supply
+ - regulator: axp20x: Fix enable bit indexes for DCDC4 and DCDC5
+ - regulator: core: Handle probe deferral from DT when resolving supplies
+ - Bluetooth: Delay check for conn->smp in smp_conn_security()
+ - nfs: fix v4.2 SEEK on files over 2 gigs
+ - NFS: Do cleanup before resetting pageio read/write to mds
+ - NFSv4: Recovery of recalled read delegations is broken
+ - nfs: fix pg_test page count calculation
+ - NFS: Fix a write performance regression
+ - cifs: Fix sec=krb5 on smb3 mounts
+ - cifs: disabling oplocks/leases via module parm enable_oplocks broken for
+ SMB3
+ - cifs: Do not fall back to SMBWriteX in set_file_size error cases
+ - drm/qxl: only report first monitor as connected if we have no state
+ - drm/qxl: recreate the primary surface when the bo is not primary
+ - drm/amdgpu: fix overflow on 32bit systems
+ - drm/amdgpu: Disable UVD PG
+ - drm/amdgpu: fix the UVD suspend sequence order
+ - drm/amdgpu: make UVD handle checking more strict
+ - drm/amdgpu: Fix max_vblank_count value for current display engines
+ - drm/amdgpu: Restore LCD backlight level on resume
+ - [x86] drm/i915/bios: handle MIPI Sequence Block v3+ gracefully
+ - drm: Reject DRI1 hw lock ioctl functions for kms drivers
+ - drm/radeon: Restore LCD backlight level on resume (>= R5xx)
+ - drm/dp/mst: fixup handling hotplug on port removal.
+ - drm/dp/mst: drop cancel work sync in the mstb destroy path (v2)
+ - xhci: give command abortion one more chance before killing xhci
+ - xhci: Move xhci_pme_quirk() behind #ifdef CONFIG_PM
+ - usb: xhci: lock mutex on xhci_stop
+ - usb: xhci: Clear XHCI_STATE_DYING on start
+ - usb: xhci: stop everything on the first call to xhci_stop
+ - usb: xhci: exit early in xhci_setup_device() if we're halted or dying
+ - xhci: change xhci 1.0 only restrictions to support xhci 1.1
+ - xhci: init command timeout timer earlier to avoid deleting it
+ uninitialized
+ - usb: xhci: Add support for URB_ZERO_PACKET to bulk/sg transfers
+ - batman-adv: Make DAT capability changes atomic
+ - thermal: cpu_cooling: don't call kcalloc() under rcu_read_lock
+ - thermal: cpu_cooling: free power table on error or when unregistering
+ - [x86] hv: util: checking the wrong variable
+ - mmc: dw_mmc: handle data blocks > than 4kB if IDMAC is used
+ - usb: chipidea: imx: fix a typo for imx6sx
+ - cifs: use server timestamp for ntlmv2 authentication
+ - [armhf] irqchip/gic-v3-its: Add missing cache flushes
+ - docs: update HOWTO for 3.x -> 4.x versioning
+ - extcon: Fix signedness bugs about break error handling
+ - extcon: Fix attached value returned by is_extcon_changed
+ - [armhf] mtd: pxa3xx_nand: add a default chunk size
+ - mtd: nand: sunxi: fix sunxi_nand_chips_cleanup()
+ - mtd: nand: sunxi: fix OOB handling in ->write_xxx() functions
+ - hpsa: fix an sprintf() overflow in the reset handler
+ - PM / AVS: rockchip-io: depend on CONFIG_POWER_AVS
+ - device property: fix potential NULL pointer dereference
+ - ath10k: fix per-vif queue locking
+ - ath10k: reject 11b tx fragmentation configuration
+ - ath10k: fix peer limit enforcement
+ - ath10k: wake up offchannel queue properly
+ - ath10k: wake up queue upon vif creation
+ - pcmcia: sa11x0: fix missing clk_put() in sa11x0 socket drivers
+ - ipr: Enable SIS pipe commands for SIS-32 devices.
+ - regmap: debugfs: Ensure we don't underflow when printing access masks
+ - regmap: debugfs: Don't bother actually printing when calculating max
+ length
+ - security: fix typo in security_task_prctl
+ - usb: musb: dsps: fix polling in device-only mode
+ - usb: chipidea: udc: using the correct stall implementation
+ - usb: Use the USB_SS_MULT() macro to get the burst multiplier.
+ - usb: phy: phy-generic: Fix reset behaviour on legacy boot
+ - usb: musb: cppi41: allow it to work again
+ - USB: chaoskey read offset bug
+ - usb: Add device quirk for Logitech PTZ cameras
+ - USB: Add reset-resume quirk for two Plantronics usb headphones.
+ - [armel,armhf] crypto: marvell - properly handle
+ CRYPTO_TFM_REQ_MAY_BACKLOG-flagged requests
+ - cpu/cacheinfo: Fix teardown path
+ - cpufreq: dt: Tolerance applies on both sides of target voltage
+ - [mips*] Fix console output for Fulong2e system
+ - [mips*] bootmem: Fix mapstart calculation for contiguous maps
+ - [mips*] dma-default: Fix 32-bit fall back to GFP_DMA
+ - [mips*] CPS: Stop dangling delay slot from has_mt.
+ - [mips*] CPS: Don't include MT code in non-MT kernels.
+ - [mips*] CPS: #ifdef on CONFIG_MIPS_MT_SMP rather than CONFIG_MIPS_MT
+ - batman-adv: Make NC capability changes atomic
+ - batman-adv: Make TT capability changes atomic
+ - batman-adv: Make MCAST capability changes atomic
+ - batman-adv: Fix potential synchronization issues in mcast tvlv handler
+ - batman-adv: Fix potentially broken skb network header access
+ - [powerpc*] MSI: Fix race condition in tearing down MSI interrupts
+ - rsi: Fix possible leak when loading firmware
+ - UBIFS: Kill unneeded locking in ubifs_init_security
+ - UBI: Validate data_size
+ - UBI: return ENOSPC if no enough space available
+ - net: via/Kconfig: GENERIC_PCI_IOMAP required if PCI not selected
+ - iscsi-target: Avoid OFMarker + IFMarker negotiation
+ - mmc: core: Don't return an error for CD/WP GPIOs when GPIOLIB is unset
+ - mmc: core: fix dead loop of mmc_retune
+ - [arm64] efi: Fix boot crash by not padding between EFI_MEMORY_RUNTIME
+ regions
+ - [arm64] ftrace: fix function_graph tracer panic
+ - [arm64] readahead: fault retry breaks mmap file read random detection
+ - [m68k] Define asmlinkage_protect
+ - xen/blkback: free requests on disconnection
+ - net/xen-netfront: only napi_synchronize() if running
+ - igb: do not re-init SR-IOV during probe
+ - genirq: Fix race in register_irq_proc()
+ - clocksource: Fix abs() usage w/ 64bit values
+ - md/bitmap: don't pass -1 to bitmap_storage_alloc.
+ - nfs/filelayout: Fix NULL reference caused by double freeing of fh_array
+ - cpufreq: acpi_cpufreq: prevent crash on reading freqdomain_cpus
+ - [armhf] clk: ti: fix dual-registration of uart4_ick
+ - [armhf] clk: ti: clk-7xx: Remove hardwired ABE clock configuration
+ - [armhf] clk: samsung: fix cpu clock's flags checking
+ - namei: results of d_is_negative() should be checked after dentry
+ revalidation
+ - dm: fix AB-BA deadlock in __dm_destroy()
+ - dm cache: fix NULL pointer when switching from cleaner policy
+ - staging: speakup: fix speakup-r regression
+ - tty: fix stall caused by missing memory barrier in drivers/tty/n_tty.c
+ - drivers/tty: require read access for controlling terminal
+ - serial: 8250: add uart_config entry for PORT_RT2880
+ - serial: atmel: fix error path of probe function
+ - mm/slab: fix unexpected index mapping result of kmalloc_size(INDEX_NODE+1)
+ - blk-mq: avoid setting hctx->tags->cpumask before allocation
+ - sched/preempt: Fix cond_resched_lock() and cond_resched_softirq()
+ - 3w-9xxx: don't unmap bounce buffered commands
+ - sched/preempt, xen: Use need_resched() instead of should_resched()
+ - sched/preempt, powerpc, kvm: Use need_resched() instead of
+ should_resched()
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.2.5
+ - [powerpc*] net/ibm/emac: bump version numbers for correct work with
+ ethtool
+ - l2tp: protect tunnel->del_work by ref_count
+ - af_unix: Convert the unix_sk macro to an inline function for type safety
+ - af_unix: return data from multiple SKBs on recv() with MSG_PEEK flag
+ - net/unix: fix logic about sk_peek_offset
+ - skbuff: Fix skb checksum flag on skb pull
+ - skbuff: Fix skb checksum partial check.
+ - inet: fix races in reqsk_queue_hash_req()
+ - net: add pfmemalloc check in sk_add_backlog()
+ - ppp: don't override sk->sk_state in pppoe_flush_dev()
+ - inet: fix race in reqsk_queue_unlink()
+ - bpf: fix panic in SO_GET_FILTER with native ebpf programs
+ - ovs: do not allocate memory from offline numa node
+ - act_mirred: clear sender cpu before sending to tx
+ - bpf: clear sender_cpu before xmit
+ - ipv6: Don't call with rt6_uncached_list_flush_dev
+ - ethtool: Use kcalloc instead of kmalloc for ethtool_get_strings
+ - tipc: move fragment importance field to new header position
+ - netlink: Trim skb to alloc size to avoid MSG_TRUNC
+ - drm: Fix locking for sysfs dpms file
+ - [sparc*] crypto: initialize blkcipher.ivsize
+ - crypto: ahash - ensure statesize is non-zero
+ - memcg: convert threshold to bytes
+ - btrfs: check unsupported filters in balance arguments
+ - btrfs: fix use after free iterating extrefs
+ - [arm64] errata: use KBUILD_CFLAGS_MODULE for erratum #843419
+ - nfsd/blocklayout: accept any minlength
+ - [armhf] i2c: s3c2410: enable RuntimePM before registering to the core
+ - i2c: designware: Do not use parameters from ACPI on Dell Inspiron 7348
+ - i2c: designware-platdrv: enable RuntimePM before registering to the core
+ - workqueue: make sure delayed work run in local cpu
+ - [x86] KVM: fix SMI to halted VCPU
+ - [x86] KVM: fix RSM into 64-bit protected mode
+ - drm/qxl: fix framebuffer dirty rectangle tracking.
+ - drm/nouveau/fbcon: take runpm reference when userspace has an open fd
+ - drm/dp/mst: make mst i2c transfer code more robust.
+ - drm/radeon: attach tile property to mst connector
+ - drm/radeon: add pm sysfs files late
+ - dm thin: fix missing pool reference count decrement in pool_ctr error
+ path
+ - rbd: fix double free on rbd_dev->header_name
+ - timekeeping: Increment clock_was_set_seq in timekeeping_init()
+ - [arm64] Fix THP protection change logic
+ - svcrdma: handle rdma read with a non-zero initial page offset
+
+ [ Salvatore Bonaccorso ]
+ * KEYS: Fix race between key destruction and finding a keyring by name
+ * KEYS: Fix crash when attempt to garbage collect an uninstantiated keyring
+ (CVE-2015-7872)
+ * KEYS: Don't permit request_key() to construct a new keyring
+
+ [ Ben Hutchings ]
+ * [x86] drm: Enable DRM_AMDGPU and HSA_AMD as modules (Closes: #797752)
+ * media: Enable DVB_AS102, VIDEO_GO7007, VIDEO_GO7007_USB,
+ VIDEO_GO7007_LOADER, VIDEO_GO7007_USB_S2250_BOARD as modules
+ * net: Enable LIQUIDIO and MLX5_CORE as modules; enable MLX5_CORE_EN
+ * [x86] Enable X86_AMD_PLATFORM_DEVICE
+ * linux-manual: Fix regression in reproducibility in 4.2~rc8-1~exp1
+ * net: Enable GENEVE_CORE as module
+ - Re-enable GENEVE and OPENVSWITCH_GENEVE
+ * bpf: Enable BPF_SYSCALL
+ * ACPI: Enable ACPI_NFIT as module
+ * tcp: Enable TCP_CONG_CDG as module
+ * nftables: Enable NF_TABLES_NETDEV, NFT_REDIR_IPV4, NFT_REDIR_IPV6 as
+ modules
+ [This change was accidentally omitted]
+ * net/sched: Enable NET_CLS_FLOWER as module
+ [This change was accidentally omitted]
+ * SCSI: Enable SCSI_SNIC as module
+ * target: Enable TCM_USER2 as module
+ * net/phy: Enable DP83867_PHY as module
+ * drm: Enable DRM_VIRTIO_GPU as module
+ * HID: Enable HID_BETOP_FF, HID_PLANTRONICS as modules
+ * hwrng: Enable USB_CHAOSKEY as module
+ * ext4: Enable EXT4_ENCRYPTION
+ * f2fs: Enable F2FS_FS_ENCRYPTION
+ * vfs,nvdimm: Enable FS_DAX
+ [This change was accidentally omitted]
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 28 Oct 2015 05:46:49 +0900
+
+linux (4.2.3-2) unstable; urgency=medium
+
+ * nbd: Restore request timeout detection (Closes: #770479)
+ * Ignore ABI changes in all mmc host drivers (fixes FTBFS on armhf)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 14 Oct 2015 19:09:49 +0100
+
+linux (4.2.3-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.2.2
+ - nfc: netlink: Add check on NFC_ATTR_VENDOR_DATA
+ - nfc: nci: hci: Add check on skb nci_hci_send_cmd parameter
+ - blk-mq: fix buffer overflow when reading sysfs file of 'pending'
+ - blk-mq: fix race between timeout and freeing request
+ - mac80211: enable assoc check for mesh interfaces
+ - [powerpc*] cxl: Allow release of contexts which have been OPENED but not
+ STARTED (regression in 4.2)
+ - ext4: don't manipulate recovery flag when freezing no-journal fs
+ (regression in 3.18)
+ - Revert "ext4: remove block_device_ejected" (regression in 4.1)
+ - [arm64] kconfig: Move LIST_POISON to a safe value
+ - [arm64] entry: always restore x0 from the stack on syscall return
+ - [arm64] flush FP/SIMD state correctly after execve()
+ - [arm64] head.S: initialise mdcr_el2 in el2_setup
+ - [armhf,arm64] KVM: vgic: Check for !irqchip_in_kernel() when mapping
+ resources (regression in 4.0)
+ - [arm64] KVM: add workaround for Cortex-A57 erratum #852523
+ - [powerpc*] pseries: Fix corrupted pdn list (regression in 4.1)
+ - [powerpc*] eeh: Probe after unbalanced kref check (regression in 4.1)
+ - [powerpc*] eeh: Fix fenced PHB caused by eeh_slot_error_detail()
+ (regression in 3.18)
+ - [powerpc*] powernv/pci-ioda: fix 32-bit TCE table init in kdump kernel
+ (regression in 4.2)
+ - [powerpc*] powernv/pci-ioda: fix kdump with non-power-of-2 crashkernel=
+ (regression in 4.2)
+ - [powerpc*] pseries: Release DRC when configure_connector fails
+ (regression in 4.1)
+ - [powerpc*] mm: Recompute hash value after a failed update
+ - CIFS: fix type confusion in copy offload ioctl
+ - mm: check if section present during memory block registering
+ (regression in 3.19)
+ - [i386] mm: Initialize pmd_idx in page_table_range_init_count()
+ - [x86] i915: Set ddi_pll_sel in DP MST path (regression in 4.2)
+ - Btrfs: check if previous transaction aborted to avoid fs corruption
+ - nfsd: Fix an FS_LAYOUT_TYPES/LAYOUT_TYPES encode bug
+ - nfsd: ensure that the ol stateid hash reference is only put once
+ - nfsd: ensure that delegation stateid hash references are only put once
+ - NFSv4.1/pnfs: Fix atomicity of commit list updates (regression in 4.0)
+ - NFSv4: don't set SETATTR for O_RDONLY|O_EXCL
+ - NFSv4.1/pNFS: Fix borken function _same_data_server_addrs_locked()
+ - NFS: Fix a NULL pointer dereference of migration recovery ops for v4.2
+ client
+ - NFS: nfs_set_pgio_error sometimes misses errors
+ - NFS41/flexfiles: update inode after write finishes
+ - NFSv4: Force a post-op attribute update when holding a delegation
+ - NFS41/flexfiles: zero out DS write wcc
+ - NFSv4.1/flexfiles: Fix a protocol error in layoutreturn
+ - NFSv4.1: Fix a protocol issue with CLOSE stateids
+ - nfs: Fix truncated client owner id without proto type (regression in 4.2)
+ - Revert "NFSv4: Remove incorrect check in can_open_delegated()"
+ (regression in 3.19)
+ - svcrdma: Change maximum server payload back to RPCSVC_MAXPAYLOAD
+ (regression in 4.2)
+ - SUNRPC: Ensure that we wait for connections to complete before retrying
+ (regression in 4.0)
+ - SUNRPC: Lock the transport layer on shutdown
+ - [hppa] PCI: Enable 64-bit bus addresses on PA-RISC (regression in 4.2)
+ - [hppa] Use double word condition in 64bit CAS operation
+ - fs: if a coredump already exists, unlink and recreate with O_EXCL
+ - fs: Don't dump core if the corefile would become world-readable.
+ - mmc: sdhci-of-esdhc: add workaround for pre divider initial value
+ (regression in 4.2)
+ - mmc: sdhci: also get preset value and driver type for MMC_DDR52
+ (regression in 3.16)
+ - mmc: sdhci: fix dma memory leak in sdhci_pre_req() (regression in 4.0)
+ - mmc: core: fix race condition in mmc_wait_data_done
+ - [armhf] iommu/fsl: Really fix init section(s) content (regression in 4.0)
+ - [armhf] iommu/io-pgtable-arm: Unmap and free table when overwriting with
+ block
+ - [x86] iommu/vt-d: Really use upper context table when necessary
+ (regression in 4.1)
+ - eCryptfs: Invalidate dcache entries when lower i_nlink is zero
+ - hfs: fix B-tree corruption after insertion at position 0
+ - IB/srp: Handle partial connection success correctly
+ - IB/srp: Stop the scsi_eh_<n> and scsi_tmf_<n> threads if login fails
+ (regression in 4.2)
+ - IB/uverbs: reject invalid or unknown opcodes
+ - IB/uverbs: Fix race between ib_uverbs_open and remove_one
+ - IB/iser: Fix missing return status check in iser_send_data_out
+ (regression in 3.19)
+ - IB/iser: Fix possible bogus DMA unmapping (regression in 3.19)
+ - IB/mlx5: avoid destroying a NULL mr in reg_user_mr error flow
+ (regression in 3.19)
+ - IB/mlx4: Fix incorrect cq flushing in error state (regression in 4.0)
+ - hfs,hfsplus: cache pages correctly between bnode_create and bnode_free
+ - jbd2: avoid infinite loop when destroying aborted journal
+ (regression in 4.2)
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.2.3
+ - phylib: fix device deletion order in mdiobus_unregister()
+ (regression in 4.2)
+ - sock, diag: fix panic in sock_diag_put_filterinfo
+ (regression in 3.19)
+ - net/ipv6: Correct PIM6 mrt_lock handling
+ - ipv6: fix multipath route replace error recovery (regression in 4.1)
+ - netlink, mmap: transform mmap skb into full skb on taps
+ - bridge: fix igmpv3 / mldv2 report parsing (regression in 4.2)
+ - [armhf] net: mvneta: fix DMA buffer unmapping in mvneta_rx()
+ (regression in 4.2)
+ - rtnetlink: catch -EOPNOTSUPP errors from ndo_bridge_getlink
+ (regression in 4.2)
+ - macvtap: fix TUNSETSNDBUF values > 64k (regression in 3.19)
+ - netlink: Fix autobind race condition that leads to zero port ID
+ (regression in 4.1)
+ - netlink: Replace rhash_portid with bound
+ - openvswitch: Zero flows on allocation.
+ - tcp: add proper TS val into RST packets (regression in 3.18)
+ - packet: Fix AF_PACKET ABI breakage in 4.2
+ - net: revert "net_sched: move tp->root allocation into fw_init()"
+ (regression in 4.1)
+ - fib_rules: fix fib rule dumps across multiple skbs
+ - ppp: fix lockdep splat in ppp_dev_uninit() (regression in 4.2)
+ - [armhf] mvneta: use inband status only when explicitly enabled
+ (regression in 4.1)
+ - net/mlx4_core: Capping number of requested MSIXs to MAX_MSIX
+ - zram: fix possible use after free in zcomp_create()
+ - [x86] hp-wmi: limit hotkey enable
+
+ [ Ben Hutchings ]
+ * ovl: conditionally use O_LARGEFILE in ovl_copy_up() (Closes: #800724)
+ * [x86] ALSA: hda - Disable power_save_node for Thinkpads (Closes: #800694)
+ * i2c: Enable I2C_CHARDEV as a module in all configurations with I2C
+ support (Closes: #800597)
+ * [mips*/octeon] Enable CAVIUM_CN63XXP1 (Closes: #800595)
+ * [mips*/octeon] Enable MMC, MMC_BLOCK, OCTEON_MMC and other drivers as
+ modules (Closes: #800594)
+ * ath10k: add qca6164 support (Closes: #800703)
+ * [!x86] net: Disable VMXNET3, only useful in VMware x86 virtual machines
+ * netfilter: conntrack: use nf_ct_tmpl_free in CT/synproxy error paths
+ (Closes: #800445)
+ * [arm64] Defer workaround for erratum #843419
+ * [x86] crypto camellia_aesni_avx: Fix CPU feature checks (Closes: #800934)
+
+ [ Salvatore Bonaccorso ]
+ * ipc: Initialize msg/shm IPC objects before doing ipc_addid()
+ (CVE-2015-7613)
+
+ [ Ian Campbell ]
+ * [armel] Update breaks on flash-kernel to anything earlier than 3.37 since
+ that version adds the knowledge that various additional kirkwood systems
+ need a DTB appending as of v3.17-rc1. (Closes: #797878)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 06 Oct 2015 17:44:55 +0100
+
+linux-tools (4.2-2) unstable; urgency=medium
+
+ * [x32] Don't attempt to build linux-perf (fixes FTBFS)
+ * [x32] Build hyperv-daemons package
+ * [alpha] uapi: Add support for __SANE_USERSPACE_TYPES__(fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 02 Oct 2015 18:41:22 +0100
+
+linux (4.2.1-2) unstable; urgency=medium
+
+ * media: uvcvideo: Disable hardware timestamps by default (Closes: #794327)
+ * [mips*] udeb: Remove 'Provides: ata-modules' from kernel-image
+ * [hppa/parisc64-smp,mips*el/loongson-3] udeb: Remove i2c-modules again, as
+ the drivers that belong in it are actually built-in (fixes FTBFS)
+ * sctp: fix race on protocol/netns initialization (CVE-2015-5283)
+ * [mips*] pgtable-bits.h: Correct _PAGE_GLOBAL_SHIFT build failure
+ (regression in 4.0, but not a build failure for us)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 27 Sep 2015 14:17:34 +0100
+
+linux-tools (4.2-1) unstable; urgency=medium
+
+ * New upstream release
+
+ [ Ben Hutchings ]
+ * debian/bin,debian/control,debian/lib/python,debian/rules: Use Python 3
+ - debian/lib/python: Sync with linux package
+ * debian/bin/genorig.py: Make orig tarballs reproducible
+ * linux-perf: Fix installation directory for bash completions
+ * linux-perf: Remove shebang lines from perf scripts
+ * Set compiler flags according to dpkg-buildflags
+ * hyperv-daemons: Fix fortify format warning
+ * debian/rules: Add support for DEB_BUILD_OPTIONS=parallel=N
+ * debian/control: Update policy version to 3.9.6; no changes required
+ * linux-perf: Revert "perf build: Fix libunwind feature detection on 32-bit
+ x86", which was a regression for us
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 25 Sep 2015 22:55:41 +0100
+
+linux (4.2.1-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.2.1
+
+ [ Ben Hutchings ]
+ * [mips*el/loongson-3] udeb: Add fb-modules containing radeon driver
+ (Closes: #776274)
+ * [hppa/parisc64-smp,[mips*el/loongson-3] udeb: Add i2c-modules and
+ make fb-modules depend on it rather than including I2C modules
+ directly
+ * workqueue: Make flush_workqueue() available again to non GPL modules
+ (Closes: #798311)
+ * vfs: Fix possible escape from mount namespace (CVE-2015-2925):
+ - dcache: Handle escaped paths in prepend_path
+ - dcache: Reduce the scope of i_lock in d_splice_alias
+ - vfs: Test for and handle paths that are unreachable from their mnt_root
+ * aufs: Update support patches to aufs4.x-rcN-20150921
+ - mmap: Fix races in madvise_remove() and sys_msync() (Closes: #796036)
+ * RDS: verify the underlying transport exists before creating a connection
+ (CVE-2015-6937)
+ * Set ABI to 1
+ * e1000e: Fix tight loop implementation of systime read algorithm
+ * mmc: Drop "eMMC: Don't initialize partitions on RPMB flagged areas", as
+ upstream commit 4e93b9a6abc0 ("mmc: card: Don't access RPMB partitions for
+ normal read/write") looks like a cleaner solution
+ * mm: Change ZBUD back to built-in, as it's not really useful as a module
+ * USB: whiteheat: fix potential null-deref at probe (CVE-2015-5257)
+
+ [ Aurelien Jarno ]
+ * [mips*el] Fix BPF assembly code for pre-R2 CPUs. (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 25 Sep 2015 18:18:01 +0100
+
+linux (4.2-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_4.2
+
+ [ Ben Hutchings ]
+ * Remove all support for ia64 (Closes: #679545, #691576, #728706)
+ * [s390x] Compile with gcc-4.9 (Closes: #796845)
+ * linux-source: Depend on xz-utils, not bzip2 (Closes: #796940)
+ * gfs2: Make statistics unsigned, suitable for use with do_div()
+ (fixes FTBFS on mipsel,m68k)
+ * [amd64] Enable KALLSYMS_ALL (Closes: #660288), LIVEPATCH
+ * Re-enable various config options disabled by name changes in 4.2:
+ - SUNRPC_XPRT_RDMA replaced SUNRPC_XPRT_RDMA_{CLIENT,SERVER}
+ - [mips*el/loongson*] LOONGSON64 replaced LOONGSON
+ - [x86] COMEDI_8255_SA replaced COMEDI_8255
+ * [sparc] Remove linux-image, linux-header and udeb packages, as they
+ are redundant with sparc64 and neither is an official port
+ * Fix last issue that prevents a reproducible build (Closes: #769844):
+ - DocBook: Use a fixed encoding for output
+ * debian/bin,debian/control,debian/lib/python,debian/rules.real,
+ linux-support: Use Python 3
+ * debian/bin/genorig.py: Make orig tarballs reproducible
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 31 Aug 2015 02:08:19 +0100
+
+linux (4.2~rc8-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Aurelien Jarno ]
+ * [mips*] Build ext4 as module. Add core-modules and ext4-modules udeb.
+ Fixes FTBFS.
+ * [mips,mips64] Remove r4k-ip22, r5k-ip32 and sb1-bcm91250a flavours.
+ * [mipsel,mips64el] Remove sb1-bcm91250a flavour.
+
+ [ Ben Hutchings ]
+ * debian/control: Correct build-dependency on xz-utils, needed on all arches
+ * Fix more issues that prevent a reproducible build:
+ - Set LC_ALL=C.UTF-8
+ - Avoid creating man pages in source tree
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 24 Aug 2015 12:00:54 +0100
+
+linux-tools (4.2~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * genorig: Include more mips makefiles (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 17 Aug 2015 10:42:08 +0200
+
+linux-tools (4.2~rc6-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * Adjust for migration to git:
+ - Update .gitignore files
+ - debian/control: Update Vcs-* fields
+ - debian/rules: Exclude .git from maintainerclean rule
+ * Add packages of liblockdep (lockdep, liblockdep<version>, liblockdep-dev)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 14 Aug 2015 14:58:57 +0200
+
+linux (4.2~rc6-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * Adjust for migration to git:
+ - Update .gitignore files
+ - debian/control: Update Vcs-* fields
+ - README.Debian, README.source: Update references to svn
+ * [rt] Disable until it is updated for 4.2 or later
+ * debian/control: Drop Frederik Schüler from Uploaders
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 12 Aug 2015 20:48:00 +0200
+
+linux (4.1.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.6
+ - [mips*/*-malta] Don't reinitialise RTC (regression in 3.14)
+ - [mips*] Make set_pte() SMP safe.
+ - fsnotify: fix oops in fsnotify_clear_marks_by_group_flags()
+ - [x86] drm/i915: Declare the swizzling unknown for L-shaped configurations
+ - [x86] drm/i915: Replace WARN inside I915_READ64_2x32 with retry loop
+ - drm/radeon: rework audio detect (v4) (regression in 4.0)
+ - drm/radeon/combios: add some validation of lvds values
+ (regression in 4.0)
+ - ipr: Fix incorrect trace indexing
+ - ipr: Fix invalid array indexing for HRRQ
+ - Bluetooth: Fix NULL pointer dereference in smp_conn_security
+ - [armhf] dmaengine: pl330: Fix overflow when reporting residue in memcpy
+ (regression in 4.0)
+ - [armhf] dmaengine: pl330: Really fix choppy sound because of wrong residue
+ calculation (regression in 4.0)
+ - xhci: fix off by one error in TRB DMA address boundary check
+ - ath10k: fix qca61x4 hw2.1 support
+ - [sparc*] Fix userspace FPU register corruptions. (Closes: #789180)
+ - ASoC: dapm: Lock during userspace access
+ - ASoC: dapm: Don't add prefix to widget stream name (regression in 4.1)
+ - [x86] xen: Probe target addresses in set_aliased_prot() before the
+ hypercall
+ - xen/gntdevt: Fix race condition in gntdev_release()
+ - hwrng: core - correct error check of kthread_run call
+ - [x86] crypto: qat - Fix invalid synchronization between
+ register/unregister sym algs
+ - rbd: fix copyup completion race
+ - [armhf] OMAP2+: hwmod: Fix _wait_target_ready() for hwmods without sysc
+ - [x86] hwmon: (dell-smm) Blacklist Dell Studio XPS 8100
+ - ocfs2: fix BUG in ocfs2_downconvert_thread_do_work()
+ - ocfs2: fix shift left overflow
+ - nfsd: Drop BUG_ON and ignore SECLABEL on absent filesystem
+ - md/raid1: extend spinlock to protect raid1_end_read_request against
+ inconsistencies
+ - dm: fix dm_merge_bvec regression on 32 bit systems (regression in 3.19
+ - [x86] Input: alps - only Dell laptops have separate button bits for v2
+ dualpoint sticks (regression in 4.1)
+ - mm, vmscan: Do not wait for page writeback for GFP_NOFS allocations
+ - signalfd: fix information leak in signalfd_copyinfo
+ - signal: fix information leak in copy_siginfo_to_user
+ - signal: fix information leak in copy_siginfo_from_user32
+ - nfsd: do nfs4_check_fh in nfs4_check_file instead of nfs4_check_olstateid
+
+ [ Aurelien Jarno ]
+ * [mips*] Build ext4 as module. Add core-modules and ext4-modules udeb.
+ Fixes FTBFS.
+
+ [ Ben Hutchings ]
+ * [i386] udeb: Make gpio_keys_polled and leds-gpio optional in input-modules
+ as they are not built for the 686-pae flavour (fixes FTBFS)
+ * perf: Fix AUX buffer refcounting
+ * ovl: Revert changes in 4.1.5-1 due to regression (Reopens: #786925)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 23 Aug 2015 12:19:22 +0200
+
+linux (4.1.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.4
+ - Bluetooth: btbcm: allow btbcm_read_verbose_config to fail on Apple
+ (regression in 4.1)
+ - ath9k_htc: memory corruption calling set_bit()
+ - ieee802154: Fix sockaddr_ieee802154 implicit padding information leak.
+ - staging: vt6656: check ieee80211_bss_conf bssid not NULL
+ - staging: vt6655: check ieee80211_bss_conf bssid not NULL
+ - staging: vt6655: device_rx_srv check sk_buff is NULL
+ - staging: rtl8712: prevent buffer overrun in recvbuf2recvframe
+ - hid-sensor: Fix suspend/resume delay (regression in 4.0)
+ - ext4: fix race between truncate and __ext4_journalled_writepage()
+ - ext4: call sync_blockdev() before invalidate_bdev() in put_super()
+ - ext4: don't retry file block mapping on bigalloc fs with non-extent file
+ - ext4: fix fencepost error in lazytime optimization
+ - ext4: avoid deadlocks in the writeback path by using sb_getblk_gfp
+ - ext4: fix reservation release on invalidatepage for delalloc fs
+ - ext4: be more strict when migrating to non-extent based file
+ - ext4: correctly migrate a file with a hole at the beginning
+ - jbd2: use GFP_NOFS in jbd2_cleanup_journal_tail()
+ - jbd2: fix ocfs2 corrupt when updating journal superblock fails
+ - [armhf] rtc: snvs: fix wakealarm by call enable_irq_wake earlier
+ (regression in 3.19)
+ - i2c: mux: Use __i2c_transfer() instead of calling parent's master_xfer()
+ (regression in 4.1)
+ - i2c: use parent adapter quirks in mux (regression in 4.1)
+ - vb2: Don't WARN when v4l2_buffer.bytesused is 0 for multiplanar buffers
+ (regression in 4.1)
+ - media: Fix regression in some more dib0700 based devices
+ (regression in 3.17)
+ - rc-core: fix dib0700 scancode generation for RC5 (regression in 3.17)
+ - cx24117: fix a buffer overflow when checking userspace params
+ - af9013: Don't accept invalid bandwidth
+ - s5h1420: fix a buffer overflow when checking userspace params
+ - cx24116: fix a buffer overflow when checking userspace params
+ - libata: Fall back to unqueued READ LOG EXT if the DMA variant fails
+ (regression in 4.1)
+ - libata: Expose TRIM capability in sysfs
+ - libata: add ATA_HORKAGE_NOTRIM
+ - libata: add ATA_HORKAGE_MAX_SEC_1024 to revert back to previous
+ max_sectors limit (regression in 3.19)
+ - libata: force disable trim for SuperSSpeed S238
+ - [armhf] usb: dwc3: gadget: don't clear EP_BUSY too early
+ (regression in 3.15)
+ - USB: devio: fix a condition in async_completed()
+ - [armhf] phy: twl4030-usb: remove incorrect pm_runtime_get_sync() in
+ probe function. (regression in 3.17)
+ - usb: gadget: composite: Fix NULL pointer dereference (regression in 4.1)
+ - usb: gadget: f_fs: do not set cancel function on synchronous {read,write}
+ (regression in 4.0)
+ - USB: OHCI: Fix race between ED unlink and URB submission
+ (regression in 3.17)
+ - usb: core: lpm: set lpm_capable for root hub device (regression in 3.15)
+ - usb: xhci: Bugfix for NULL pointer deference in xhci_endpoint_init()
+ function
+ - dm cache: fix race when issuing a POLICY_REPLACE operation
+ - dm btree remove: fix bug in redistribute3
+ - block: loop: convert to per-device workqueue (regression in 4.0)
+ - block: loop: avoiding too many pending per work I/O (regression in 4.0)
+ - block: Do a full clone when splitting discard bios (Closes: #793326)
+ (regression in 3.14)
+ - [armhf] drm/tegra: dpaux: Fix transfers larger than 4 bytes
+ (regression in 3.15)
+ - drm/qxl: Do not cause spice-server to clean our objects
+ - drm/atomic: fix out of bounds read in for_each_*_in_state helpers
+ (regression in 4.1)
+ - drm/radeon: take the mode_config mutex when dealing with hpds (v2)
+ - [x86] drm/i915/ppgtt: Break loop in gen8_ppgtt_clear_range failure path
+ (regression in 4.1)
+ - [x86] drm/i915: fix backlight after resume on 855gm (regression in 3.19)
+ - [x86] drm/i915: Snapshot seqno of most recently submitted request.
+ (regression in 4.0)
+ - Revert "drm/radeon: dont switch vt on suspend" (regression in 4.1)
+ - drm/radeon: unpin cursor BOs on suspend and pin them again on resume (v2)
+ (regression in 4.1)
+ - drm/radeon: fix user ptr race condition
+ - drm/radeon/ci: silence a harmless PCC warning
+ - drm: add a check for x/y in drm_mode_setcrtc
+ - drm: Stop resetting connector state to unknown (regression in 4.1)
+ - libata: Fix regression when the NCQ Send and Receive log page is absent
+ - xfs: fix remote symlinks on V5/CRC filesystems
+ - xfs: don't truncate attribute extents if no extents exist
+ (regression in 4.1)
+ - tpm: Fix initialization of the cdev (regression in 4.0)
+ - tpm, tpm_crb: fail when TPM2 ACPI table contents look corrupted
+ (regression in 4.1)
+ - [armel,armhf] dmaengine: mv_xor: bug fix for racing condition in
+ descriptors cleanup
+ - md: clear mddev->private when it has been freed. (regression in 4.0)
+ - md: unlock mddev_lock on an error path. (regression in 4.0)
+ - md: Skip cluster setup for dm-raid (regression in 4.1)
+ - Btrfs: don't invalidate root dentry when subvolume deletion fails
+ (regression in 3.18)
+ - Btrfs: use kmem_cache_free when freeing entry in inode cache
+ - Btrfs: fix race between caching kthread and returning inode to inode
+ cache (regression in 3.15)
+ - Btrfs: fix fsync data loss after append write
+ - Btrfs: fix list transaction->pending_ordered corruption
+ (regression in 3.19)
+ - Btrfs: fix file corruption after cloning inline extents
+ - selinux: fix mprotect PROT_EXEC regression caused by mm change
+ (regression in 4.1)
+ - ceph/crush: fix a bug in tree bucket decode
+ - ACPI / PNP: Reserve ACPI resources at the fs_initcall_sync stage
+ (regression in 4.1)
+ - ACPI / LPSS: Fix up acpi_lpss_create_device() (regression in 4.0)
+ - ACPICA: Tables: Enable both 32-bit and 64-bit FACS (regression in 3.14)
+ - ACPICA: Tables: Enable default 64-bit FADT addresses favor
+ - ACPI / PCI: Fix regressions caused by resource_size_t overflow with
+ 32-bit kernel (regression in 4.0)
+ - mmc: sdhci: Restore behavior while creating OCR mask (regression in 3.17)
+ - PM / clk: Fix clock error check in __pm_clk_add() (regression in 3.19)
+ - RDMA/ocrdma: fix double free on pd (regression in 4.0)
+ - mm/hugetlb: introduce minimum hugepage order (regression in 3.12)
+ - PM / sleep: Increase default DPM watchdog timeout to 60
+ (regression in 3.13)
+ - firmware: dmi_scan: Only honor end-of-table for 64-bit tables
+ (regression in 3.19)
+ - mac80211: fix the beacon csa counter for mesh and ibss
+ (regression in 3.17)
+ - iwlwifi: mvm: fix ROC reference accounting (regression in 3.17)
+ - cfg80211: ignore netif running state when changing iftype
+ - e1000e: Cleanup handling of VLAN_HLEN as a part of max frame size
+ (regression in 3.15)
+ - ovl: lookup whiteouts outside iterate_dir() (regression in 4.0)
+ - pNFS: Fix a memory leak when attempted pnfs fails
+ - pNFS/flexfiles: Fix the reset of struct pgio_header when resending
+ - nfs: fixing infinite OPEN loop in 4.0 stateid recovery
+ - NFS: Ensure we set NFS_CONTEXT_RESEND_WRITES when requeuing writes
+ - nfs: fix potential credential leak in ff_layout_update_mirror_cred
+ - nfs: always update creds in mirror, even when we have an already
+ connected ds
+ - 9p: forgetting to cancel request on interrupted zero-copy RPC
+ - 9p: don't leave a half-initialized inode sitting around
+ - p9_client_write(): avoid double p9_free_req()
+ - [arm64] bpf: fix out-of-bounds read in bpf2a64_offset()
+ - [arm64] bpf: fix endianness conversion bugs
+ - [arm64] Don't report clear pmds and puds as huge
+ - mm: avoid setting up anonymous pages into file mapping
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.5
+ - [powerpc*] powernv: Fix race in updating core_idle_state
+ (regression in 3.19)
+ - Revert "Input: synaptics - allocate 3 slots to keep stability in image
+ sensors" (regression in 4.1)
+ - [hppa] Fix some PTE/TLB race conditions and optimize __flush_tlb_range
+ based on timing results
+ - [hppa] mm: Fix a memory leak related to pmd not attached to the pgd
+ (regression in 4.0)
+ - [armel,armhf] 8404/1: dma-mapping: fix off-by-one error in bitmap size
+ check (regression in 3.15)
+ - [mips*] c-r4k: Fix cache flushing for MT cores
+ - can: replace timestamp as unique skb attribute (regression in 4.1)
+ - vfs: freeing unlinked file indefinitely delayed
+ - [armhf] crypto: omap-des - Fix unmapping of dma channels
+ - [s390x] nmi: fix vector register corruption
+ - [s390x] bpf: clear correct BPF accumulator register
+ - genirq: Prevent resend to interrupts marked IRQ_NESTED_THREAD
+ - [x86] perf: Fix static_key bug in load_mm_cr4() (regression in 4.0)
+ - Revert "dm: only run the queue on completion if congested or no requests
+ pending" (regression in 4.1)
+ - scsi: fix host max depth checking for the 'queue_depth' sysfs interface
+ (regression in 3.19)
+ - scsi: fix memory leak with scsi-mq (regression in 3.17)
+ - mnt: Clarify and correct the disconnect logic in umount_tree
+ (regressions in 4.0.2, 4.1)
+ - mnt: In detach_mounts detach the appropriate unmounted mount
+ (regression in 4.1)
+ - ftrace: Fix breakage of set_ftrace_pid (regression in 3.16)
+ - [x86] iommu/vt-d: Fix VM domain ID leak (regression in 3.17)
+ - mmc: sdhci check parameters before call dma_free_coherent
+ (regression in 3.16)
+ - iwlwifi: mvm: fix antenna selection when BT is active
+ (regression in 3.17)
+ - md/raid1: fix test for 'was read error from last working device'.
+ - [armhf] spi: imx: Fix small DMA transfers (regression in 3.18)
+ - [armhf] regulator: s2mps11: Fix GPIO suspend enable shift wrapping bug
+ - usb-storage: ignore ZTE MF 823 card reader in mode 0x1225
+ - [armhf] Revert "serial: imx: initialized DMA w/o HW flow enabled"
+ (regression in 4.0)
+ - serial: core: Fix crashes while echoing when closing (regression in 3.19)
+ - efi: Handle memory error structures produced based on old versions of
+ standard (regression in 3.13)
+ - [x86] efi: Use all 64 bit of efi_memmap in setup_e820()
+ - rds: rds_ib_device.refcount overflow
+ - n_tty: signal and flush atomically (regression in 4.0)
+ - [x86] perf/intel/cqm: Return cached counter value from IRQ context
+ (regression in 4.1)f
+ - NFS: Don't revalidate the mapping if both size and change attr are up to
+ date (regression in 3.16)
+ - NFSv4: We must set NFS_OPEN_STATE flag in nfs_resync_open_stateid_locked
+ (regression in 4.0)
+ - NFS: Fix a memory leak in nfs_do_recoalesce (regression in 4.0)
+ - iscsi-target: Fix use-after-free during TPG session shutdown
+ - iscsi-target: Fix iscsit_start_kthreads failure OOPs (regression in 4.0)
+ - iscsi-target: Fix iser explicit logout TX kthread leak
+ (regression in 4.0)
+ - qla2xxx: Fix hardware lock/unlock issue causing kernel panic.
+ (regression in 3.18)
+ - qla2xxx: release request queue reservation. (regression in 3.18)
+ - qla2xxx: Remove msleep in qlt_send_term_exchange (regression in 3.18)
+ - qla2xxx: fix command initialization in target mode. (regression in 3.18)
+ - qla2xxx: kill sessions/log out initiator on RSCN and port down efvents
+ (regression in 3.18)
+ - drm/nouveau/fbcon/nv11-: correctly account for ring space usage
+ - drm/nouveau/kms/nv50-: guard against enabling cursor on disabled heads
+ - drm/nouveau: hold mutex when calling nouveau_abi16_fini()
+ - drm/nouveau/drm/nv04-nv40/instmem: protect access to priv->heap by mutex
+ - xfs: remote attribute headers contain an invalid LSN
+ - xfs: remote attributes need to be considered data
+
+ [ Ian Campbell ]
+ * [armhf] Enable cpufreq on some sunxi platforms (Closes: #793185)
+ - Enable autoloading of the cpufreq-dt driver.
+ - Enable autoloading of AXP20x regulator driver.
+
+ [ Ben Hutchings ]
+ * [x86] iio: Enable drivers for ACPI-discoverable devices as modules:
+ AK8975, BMC150_ACCEL, BMG160, BMP280, INV_MPU6050_IIO, JSA1212, KMX61,
+ KXCJK1013, MMA9551, MMA9553, SX9500
+ * Adjust for migration to git:
+ - Update .gitignore files
+ - debian/control: Update Vcs-* fields
+ - README.Debian, README.source: Update references to svn
+ * Bump ABI to 2
+ * virtio-net: drop NETIF_F_FRAGLIST (CVE-2015-5156)
+ * ovl: Add support for NFS as lower filesystem (Closes: #786925)
+ * perf: Fix double-free of the AUX buffer
+ * linux-source: Fix compression of the source tarball (Closes: #795199)
+ * udeb: Add newly enabled drivers:
+ - [i386] Add gpio_keys_polled, leds-gpio to input-modules
+ - Add virtio-input to input-modules
+ - Add toshsd to mmc-modules
+ - Add wd719x to scsi-extra-modules
+ - Move eeprom_93cx6 to core-modules; make scsi-extra-modules depend on it
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 15 Aug 2015 23:37:20 +0200
+
+linux-tools (4.1.4-2) unstable; urgency=medium
+
+ * [mips*,alpha,hppa] linux-perf: Add empty Build files for these architectures
+ (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 04 Aug 2015 17:11:46 +0100
+
+linux-tools (4.1.4-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.4
+ - perf bench numa: Fix to show proper convergence stats
+
+ [ Ben Hutchings ]
+ * linux-tools: Set $KBUILD_BUILD_TIMESTAMP from changelog and use it as man
+ page date
+ * hyperv-daemons: Only attempt to build package on i386, amd64
+ (fixes FTBFS on other architectures)
+ * linux-tools: Rename to linux-perf-<version>, since other tools are
+ in other binary packages
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 04 Aug 2015 00:47:58 +0100
+
+linux (4.1.3-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.3
+
+ [ Ben Hutchings ]
+ * [armel/kirkwood] ubi: Change UBIFS_FS and MTD_UBI from built-in to
+ modules, to reduce kernel image size (fixes FTBFS)
+ * debian/rules.real: Use dpkg-parsechangelog -S
+ * [rt] Update to 4.1.3-rt3 and re-enable
+ * KEYS: ensure we free the assoc array edit if edit is valid (CVE-2015-1333)
+ * [armel,sh4] linux-image: Recommend u-boot-tools rather than the obsolete
+ uboot-mkimage package (Closes: #793608)
+ * [i386/586] Enable KEYBOARD_GPIO_POLLED and LEDS_GPIO as modules, and
+ ALIX, NET5501, GEOS (Closes: #734204)
+ * [s390x] cachinfo: add missing facility check to init_cache_level()
+ (Closes: #793929)
+ * md: use kzalloc() when bitmap is disabled (CVE-2015-5697)
+ * inet: Enable IPVLAN, NET_FOU as modules; enable NET_FOU_IP_TUNNELS
+ * netfilter: Enable NFT_REDIR as module
+ * net/sched: Enable NET_ACT_VLAN, NET_ACT_BPF, NET_ACT_CONNMARK as modules
+ * mpls: Enable MPLS_ROUTING as module
+ * hci_uart: Enable BT_HCIUART_INTEL, BT_HCIUART_BCM
+ * SCSI: Enable SCSI_WD719X as module
+ * dm: Enable DM_LOG_WRITES as module
+ * cxgb4: Enable CHELSIO_T4_DCB
+ * ixgbe: Enable IXGBE_VXLAN
+ * i40e: Enable I40E_FCOE
+ * drm: Enable DRM_VGEM as module
+ * virtio: Enable VIRTIO_INPUT as module
+ * mmc: Enable MMC_TOSHIBA_PCI as module
+ * [x86] block: Enable BLK_DEV_PMEM as module; enable X86_PMEM_LEGACY
+ * [x86] tpm: Enable TCG_CRB as module
+ * debug: Enable DEBUG_LIST
+ * security: Apply and enable GRKERNSEC_PERF_HARDEN feature from Grsecurity,
+ disabling use of perf_event_open() by unprivileged users by default
+ (sysctl: kernel.perf_event_paranoid)
+ * Set ABI to 1
+
+ [ Ian Campbell ]
+ * [armhf] Set CONFIG_ARM_TEGRA_CPUFREQ as builtin.
+ * [armhf] Enable new drivers for sunxi platforms (Closes: #792388)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 03 Aug 2015 22:17:15 +0100
+
+linux-tools (4.1.2-1~exp1) experimental; urgency=medium
+
+ * New upstream release
+
+ [ Bastian Blank ]
+ * Add hyperv-daemons package, thanks to Hideki Yamane (closes: #782761)
+
+ [ Ben Hutchings ]
+ * hyperv-daemons: Rewrite description
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 13 Jul 2015 01:33:27 +0100
+
+linux (4.1.2-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.2
+
+ [ Ben Hutchings ]
+ * Fix more issues that prevent a reproducible build:
+ - linux-doc: DocBook: generate consistent IDs
+ - linux-manual: DocBook: Fix duplicate man pages
+ - linux-manual: kernel-doc: Use $KBUILD_BUILD_TIMESTAMP as man page date
+ * [i386] Disable VM86 (Closes: #792003)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 11 Jul 2015 18:01:42 +0100
+
+linux (4.1.1-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_4.1
+ - i40e: start up in VEPA mode by default (Closes: #790953)
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.1.1
+
+ [ Ben Hutchings ]
+ * Fix some issues that prevent a reproducible build (thanks to
+ Jérémy Bobbio):
+ - linux-image: Fix timestamps in the built-in initramfs
+ - linux-source: Fix timestamps and sort files in the tarball
+ - linux-doc,linux-manual: Drop original timestamp (and name) when
+ compressing
+ - linux-doc: Parse kernel-doc deterministically
+ * aufs: Apply patches to enable building aufs out-of-tree
+ * [x86] Enable MMIOTRACE (Closes: #790808)
+
+ [ maximilian attems ]
+ * [x86] Enable SND_SOC_INTEL_BROADWELL_MACH. (closes: #785422)
+
+ [ Ian Campbell ]
+ * [arm64+armhf] Enable SYSCON poweroff driver.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 07 Jul 2015 09:15:45 +0100
+
+linux (4.0.8-2) unstable; urgency=high
+
+ [ Uwe Kleine-König ]
+ * [rt] Update to 4.0.8-rt6
+
+ [ Ben Hutchings ]
+ * [amd64] Fix nested NMI handling (CVE-2015-3290, CVE-2015-3291,
+ CVE-2015-5157)
+ - Enable nested do_nmi handling for 64-bit kernels
+ - Remove asm code that saves cr2
+ - Switch stacks on userspace NMI entry
+ - Reorder nested NMI checks
+ - Use DF to avoid userspace RSP confusing nested NMI detection
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 22 Jul 2015 21:45:07 +0100
+
+linux (4.0.8-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.0.8
+ - netfilter: nft_rbtree: fix locking
+ - [armhf] clk-imx6q: refine sata's parent
+ - KVM: nSVM: Check for NRIPS support before updating control field
+ - [sparc*] Use GFP_ATOMIC in ldc_alloc_exp_dring() as it can be called in
+ softirq context
+ - bridge: fix multicast router rlist endless loop
+ - net: igb: fix the start time for periodic output signals
+ - net: don't wait for order-3 page allocation
+ - sctp: fix ASCONF list handling (CVE-2015-3212)
+ - bridge: fix br_stp_set_bridge_priority race conditions
+ - packet: read num_members once in packet_rcv_fanout()
+ - packet: avoid out of bounds read in round robin fanout
+ - neigh: do not modify unlinked entries
+ - tcp: Do not call tcp_fastopen_reset_cipher from interrupt context
+ - ip: report the original address of ICMP messages
+ - net/mlx4_en: Release TX QP when destroying TX ring
+ - net/mlx4_en: Wake TX queues only when there's enough room
+ - net/mlx4_en: Fix wrong csum complete report when rxvlan offload is
+ disabled
+ - mlx4: Disable HA for SRIOV PF RoCE devices
+ - net: phy: fix phy link up when limiting speed via device tree
+ - bnx2x: fix lockdep splat
+ - sctp: Fix race between OOTB responce and route removal
+ - [armhf] net: mvneta: introduce compatible string "marvell, armada-xp-neta"
+ - [armhf] mvebu: update Ethernet compatible string for Armada XP
+ - [armhf] net: mvneta: disable IP checksum with jumbo frames for Armada 370
+ - usb: gadget: f_fs: fix check in read operation
+ - usb: gadget: f_fs: add extra check before unregister_gadget_item
+ - crypto: talitos - avoid memleak in talitos_alg_alloc()
+ - Revert "crypto: talitos - convert to use be16_add_cpu()"
+ - [armhf/armmp-lpae] iommu/arm-smmu: Fix broken ATOS check
+ - [x86] iommu/amd: Handle large pages correctly in free_pagetable
+ - mmc: sdhci: fix low memory corruption
+ - [x86] intel_pstate: set BYT MSR with wrmsrl_on_cpu()
+ - selinux: fix setting of security labels on NFS
+ - [armhf] KVM: force execution of HCPTR access on VM exit
+ - [armhf] kvm: psci: fix handling of unimplemented functions
+ - [armhf] tegra20: Store CPU "resettable" status in IRAM
+ - [powerpc*] tick/idle: Do not register idle states with
+ CPUIDLE_FLAG_TIMER_STOP set in periodic mode
+ - [powerpc*] perf: Fix book3s kernel to userspace backtraces
+ - [x86] PCI: Use host bridge _CRS info on systems with >32 bit addressing
+ - [x86] PCI: Use host bridge _CRS info on Foxconn K8M890-8237A
+ - [s390x] KVM: fix external call injection without sigp interpretation
+ - [s390x] kdump: fix REGSET_VX_LOW vector register ELF notes
+ - [s390x] KVM: virtio-ccw: don't overwrite config space values
+ - [x86] KVM: properly restore LVT0
+ - [x86] KVM: make vapics_in_nmi_mode atomic
+ - fs: Fix S_NOSEC handling
+ - fs/ufs: revert "ufs: fix deadlocks introduced by sb mutex merge"
+ - fs/ufs: restore s_lock mutex
+ - vfs: Remove incorrect debugging WARN in prepend_path
+ - vfs: Ignore unlocked mounts in fs_fully_visible
+ - ufs: Fix warning from unlock_new_inode()
+ - ufs: Fix possible deadlock when looking up directories
+ - fs/ufs: restore s_lock mutex_init()
+
+ [ Ben Hutchings ]
+ * [ppc64el] Ignore ABI changes due to disabling HIBERNATION (fixes FTBFS)
+ * [x86] kvm: fix kvm_apic_has_events to check for NULL pointer (CVE-2015-4692)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 11 Jul 2015 04:58:05 +0100
+
+linux (4.0.7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.0.6
+ - crush: ensuring at most num-rep osds are selected
+ - aio: fix serial draining in exit_aio()
+ - net: core: Correct an over-stringent device loop detection.
+ - [x86] bpf_jit: fix FROM_BE16 and FROM_LE16/32 instructions
+ - [x86] bpf_jit: fix compilation of large bpf programs
+ - net: phy: Allow EEE for all RGMII variants
+ - netlink: Reset portid after netlink_insert failure
+ - rtnl/bond: don't send rtnl msg for unregistered iface
+ - tcp/ipv6: fix flow label setting in TIME_WAIT state
+ - net/ipv6/udp: Fix ipv6 multicast socket filter regression
+ - net: sched: fix call_rcu() race on classifier module unloads
+ - ipv4: Avoid crashing in ip_error
+ - cdc_ncm: Fix tx_bytes statistics
+ - bridge: fix parsing of MLDv2 reports
+ - net: dp83640: fix broken calibration routine.
+ - net: dp83640: reinforce locking rules.
+ - net: dp83640: fix improper double spin locking.
+ - unix/caif: sk_socket can disappear when state is unlocked
+ - xen/netback: Properly initialize credit_bytes
+ - net_sched: invoke ->attach() after setting dev->qdisc
+ - sctp: Fix mangled IPv4 addresses on a IPv6 listening socket
+ - bridge: fix br_multicast_query_expired() bug
+ - udp: fix behavior of wrong checksums (CVE-2015-5364)
+ - tcp: fix child sockets to use system default congestion control if not set
+ - xen: netback: read hotplug script once at start of day.
+ - ipv4/udp: Verify multicast group is ours in upd_v4_early_demux()
+ - be2net: Replace dma/pci_alloc_coherent() calls with dma_zalloc_coherent()
+ - bridge: disable softirqs around br_fdb_update to avoid lockup
+ - netlink: Disable insertions/removals during rehash
+ - drivers/base: cacheinfo: handle absence of caches
+ - n_tty: Fix auditing support for cannonical mode
+ - [x86] iommu/vt-d: Allow RMRR on graphics devices too
+ - [x86] iommu/vt-d: Fix passthrough mode with translation-disabled devices
+ - ALSA: hda/realtek - Add a fixup for another Acer Aspire 9420
+ - ALSA: usb-audio: Add mic volume fix quirk for Logitech Quickcam Fusion
+ - ALSA: usb-audio: don't try to get Outlaw RR2150 sample rate
+ - ALSA: usb-audio: add MAYA44 USB+ mixer control names
+ - ALSA: usb-audio: fix missing input volume controls in MAYA44 USB(+)
+ - ALSA: usb-audio: add native DSD support for JLsounds I2SoverUSB
+ - [armhf] dmaengine: pl330: Fix hang on dmaengine_terminate_all on certain
+ boards
+ - dmaengine: Fix choppy sound because of unimplemented resume
+ - Input: alps - do not reduce trackpoint speed by half
+ - Input: synaptics - add min/max quirk for Lenovo S540
+ - Input: elantech - fix detection of touchpads where the revision matches
+ a known rate
+ - Input: elantech - add new icbody type
+ - block: fix ext_dev_lock lockdep report
+ - block: discard bdi_unregister() in favour of bdi_destroy()
+ - USB: cp210x: add ID for HubZ dual ZigBee and Z-Wave dongle
+ - USB: serial: ftdi_sio: Add support for a Motion Tracker Development Board
+ - usb: host: xhci: add mutex for non-thread-safe data
+ - usb: make module xhci_hcd removable
+ - [x86] asm/irq: Stop relying on magic JMP behavior for early_idt_handlers
+ - [armhf] dts: am335x-boneblack: disable RTC-only sleep to avoid hardware
+ damage
+ - [x86] drm/amdkfd: fix topology bug with capability attr.
+ - drm/radeon: use proper ACR regisiter for DCE3.2
+ - [x86] drm/i915/hsw: Fix workaround for server AUX channel clock divisor
+ - [x86] drm/i915: Don't skip request retirement if the active list is empty
+ - [x86] drm/i915: Fix DDC probe for passive adapters
+ - drm/radeon: fix freeze for laptop with Turks/Thames GPU.
+ - Revert "drm/radeon: don't share plls if monitors differ in audio support"
+ - Revert "drm/radeon: adjust pll when audio is not enabled"
+ - drm/radeon: Make sure radeon_vm_bo_set_addr always unreserves the BO
+ - serial: imx: Fix DMA handling for IDLE condition aborts
+ - [powerpc*] of/dynamic: Fix test for PPC_PSERIES
+ - virtio_pci: Clear stale cpumask when setting irq affinity
+ - [armel,armhf] bus: mvebu-mbus: do not set WIN_CTRL_SYNCBARRIER on non
+ io-coherent platforms.
+ - [armel,armhf] Revert "bus: mvebu-mbus: make sure SDRAM CS for DMA don't
+ overlap the MBus bridge window"
+ - [arm64] dts: mt8173-evb: fix model name
+ - mm/memory_hotplug.c: set zone->wait_table to null after freeing it
+ - md: Close race when setting 'action' to 'idle'.
+ - md: don't return 0 from array_state_store
+ - sched, numa: do not hint for NUMA balancing on VM_MIXEDMAP mappings
+ - blk-mq: free hctx->ctxs in queue's release handler
+ - cfg80211: wext: clear sinfo struct before calling driver
+ - [armhf] irqchip: sunxi-nmi: Fix off-by-one error in irq iterator
+ - Btrfs: send, add missing check for dead clone root
+ - Btrfs: send, don't leave without decrementing clone root's send_progress
+ - btrfs: incorrect handling for fiemap_fill_next_extent return
+ - btrfs: cleanup orphans while looking up default subvolume
+ - Btrfs: fix range cloning when same inode used as source and destination
+ - Btrfs: fix uninit variable in clone ioctl
+ - Btrfs: fix regression in raid level conversion
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.0.7
+ - crypto: caam - improve initalization for context state saves
+ - crypto: caam - fix RNG buffer cache alignment
+ - [x86] KVM: fix lapic.timer_mode on restore
+ - ALSA: hda - adding a DAC/pin preference map for a HP Envy TS machine
+ - tracing: Have filter check for balanced ops
+ - iser-target: Fix variable-length response error completion
+ - iser-target: Fix possible use-after-free
+ - drm/mgag200: Reject non-character-cell-aligned mode widths
+ - [x86] drm/i915: Always reset vma->ggtt_view.pages cache on unbinding
+ - [x86] Revert "drm/i915: Don't skip request retirement if the active list
+ is empty"
+ - drm/radeon: Add RADEON_INFO_VA_UNMAP_WORKING query
+ - ath3k: Add support of 0489:e076 AR3012 device
+ - ath3k: add support of 13d3:3474 AR3012 device
+ - b43: fix support for 14e4:4321 PCI dev with BCM4321 chipset
+ - cdc-acm: Add support of ATOL FPrint fiscal printers
+ - [armhf] EXYNOS: Fix failed second suspend on Exynos4
+ - [x86] kprobes: Return correct length in __copy_instruction()
+ - dm: fix NULL pointer when clone_and_map_rq returns !DM_MAPIO_REMAPPED
+ - [x86] drm/i915: Avoid GPU hang when coming out of s3 or s4
+ - [powerpc*] powernv: Restore non-volatile CRs after nap
+
+ [ Ben Hutchings ]
+ * mm: Re-enable ZBUD as module (Closes: #789094)
+ * mm: Change ZSMALLOC from built-in to module
+ * Revert "tcp: fix child sockets to use system default congestion control if
+ not set" to avoid ABI change
+ * [ppc64el] Disable HIBERNATION (Closes: #789070)
+ * [mips*] Correct FP ISA requirements (Closes: #781892)
+ * udeb: Add more drivers to sound-modules, thanks to Samuel Thibault
+ (Closes: #782495)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 06 Jul 2015 02:57:42 +0100
+
+linux (4.0.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.0.5
+ - [x86] iommu/amd: Fix bug in put_pasid_state_wait (regression in 4.0)
+ - [x86] fpu: Disable XSAVES* support for now (regression in 3.17)
+ - [x86] KVM: MMU: fix smap permission check
+ - [x86] kvm: fix crash in kvm_vcpu_reload_apic_access_page
+ - [x86] KVM: MMU: fix SMAP virtualization
+ - ktime: Fix ktime_divns to do signed division (regression in 3.17)
+ - omfs: fix sign confusion for bitmap loop counter (regression in 3.18)
+ - xfs: xfs_attr_inactive leaves inconsistent attr fork state behind
+ - xfs: xfs_iozero can return positive errno (regression in 3.17)
+ - ovl: don't remove non-empty opaque directory (regression in 4.0)
+ - [armhf] mfd: da9052: Fix broken regulator probe (regression in 3.19)
+ - libceph: request a new osdmap if lingering request maps to no osd
+ - Revert "libceph: clear r_req_lru_item in __unregister_linger_request()"
+ (regression in 3.18)
+ - Btrfs: fix racy system chunk allocation when setting block group ro
+ (regression in 4.0)
+ - xen/events: don't bind non-percpu VIRQs with percpu chip
+ - hwmon: (tmp401) Do not auto-detect chip on I2C address 0x37
+ - clk: add missing lock when call clk_core_enable in clk_set_parent
+ (regression in 4.0)
+ - brcmfmac: avoid null pointer access when brcmf_msgbuf_get_pktid() fails
+ - lib: Fix strnlen_user() to not touch memory after specified maximum
+ - vfs: d_walk() might skip too much
+ - module: Call module notifier on failure after complete_formation()
+ (regression in 3.16)
+ - Revert "ALSA: hda - Add mute-LED mode control to Thinkpad"
+ (regression in 4.0.3)
+ - xhci: Solve full event ring by increasing TRBS_PER_SEGMENT to 256
+ - [powerpc*] mce: fix off by one errors in mce event handling
+ (regression in 3.19)
+ - pty: Fix input race when closing (regression in 3.19)
+ - ext4: fix lazytime optimization
+ - ext4: fix NULL pointer dereference when journal restart fails
+ - ext4: check for zero length extent explicitly
+ - jbd2: fix r_count overflows leading to buffer overflow in journal recovery
+ - libata: Ignore spurious PHY event on LPM policy change
+ - libata: Blacklist queued TRIM on all Samsung 800-series
+ - [arm64] bpf: fix signedness bug in loading 64-bit immediate
+ (regression in 3.18)
+ - [x86] gpio: gpio-kempld: Fix get_direction return value
+ - [s390x] crypto: ghash - Fix incorrect ghash icv buffer handling.
+ - mac80211: move WEP tailroom size check
+ - mac80211: don't use napi_gro_receive() outside NAPI context
+ - [s390x] mm: correct return value of pmd_pfn (regression in 3.17)
+ - [armhf] EXYNOS: Fix dereference of ERR_PTR returned by
+ of_genpd_get_from_provider (regression in 4.0)
+ - [arm*] fix missing syscall trace exit
+ - [hppa] Fix crashes due to stack randomization on stack-grows-upwards
+ architectures
+ - kernfs: do not account ino_ida allocations to memcg
+ - nfsd: fix the check for confirmed openowner in nfs4_preprocess_stateid_op
+ - md/raid5: don't record new size if resize_stripes fails.
+ - Revert "HID: logitech-hidpp: support combo keyboard touchpad TK820"
+ (regression in 3.19)
+ - [mips*] fix FP mode selection in lieu of .MIPS.abiflags data
+ (regression in 4.0)
+ - ACPI / init: Fix the ordering of acpi_reserve_resources()
+ - iwlwifi: mvm: Free fw_status after use to avoid memory leak
+ (regression in 3.19)
+ - iwlwifi: pcie: prevent using unmapped memory in fw monitor
+ - drm/plane-helper: Adapt cursor hack to transitional helpers
+ (regression in 4.0)
+ - drm/radeon/audio: make sure connector is valid in hotplug case
+ - Revert "drm/radeon: only mark audio as connected if the monitor supports
+ it (v3)" (regression in 4.0.3)
+ - dm: fix casting bug in dm_merge_bvec() (regression in 3.19)
+ - dm: fix reload failure of 0 path multipath mapping on blk-mq devices
+ (regression in 4.0)
+ - UBI: block: Add missing cache flushes
+ - md: fix race when unfreezing sync_action (regression in 4.0)
+ - fs/binfmt_elf.c:load_elf_binary(): return -EINVAL on zero-length mappings
+ (regression in 4.0.2)
+
+ [ Ben Hutchings ]
+ * udeb: Remove i2o modules (fixes FTBFS on amd64) (Closes: #787004)
+ * Revert "libata: Ignore spurious PHY event on LPM policy change" to avoid
+ ABI change
+
+ [ Ian Campbell ]
+ * [armhf] Enable PCIe support for IMX6 boards. Patch from Vagrant
+ Cascadian (Closes: #787029)
+ * [armhf] Add stmmac-platform module to nic-modules udeb. (Closes: #786716)
+ * [arm] Fix mvebu-mbus for non-io-coherent platforms. In particular
+ armel/{orion5x,kirkwood}.
+ * [armel/kirkwood]: Enable CONFIG_ARM_KIRKWOOD_CPUIDLE. (Closes: #787716)
+
+ [ Uwe Kleine-König ]
+ * [rt] Update to 4.0.5-rt3
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 16 Jun 2015 15:40:49 +0100
+
+linux (4.0.4-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.0.3
+ - bpf: fix 64-bit divide
+ - route: Use ipv4_mtu instead of raw rt_pmtu (regression in 3.19)
+ - cxgb4: Fix MC1 memory offset calculation (regression in 3.19)
+ - [mips*] Revert "MIPS: Remove race window in page fault handling"
+ (regression in 3.17)
+ - [mips*] Fix race condition in lazy cache flushing.
+ - [mips*/octeon] Remove udelay() causing huge IRQ latency
+ - [mips*] Fix cpu_has_mips_r2_exec_hazard.
+ - [mips*] asm: elf: Set O32 default FPU flags (regression in 4.0)
+ - ALSA: emux: Fix mutex deadlock in OSS emulation
+ - cdc-acm: prevent infinite loop when parsing CDC headers.
+ (regression in 4.0)
+ - [arm64] dma-mapping: always clear allocated buffers
+ - [arm64] add missing PAGE_ALIGN() to __dma_free()
+ - [armhf] usb: chipidea: otg: remove mutex unlock and lock while stop and
+ start role (regression in 3.16)
+ - btrfs: unlock i_mutex after attempting to delete subvolume during send
+ (regression in 3.16)
+ - [x86] ACPI / SBS: Enable battery manager when present (regression in 3.18)
+ - rbd: end I/O the entire obj_request on error
+ - ext4: fix data corruption caused by unwritten and delayed extents
+ (Closes: #785672)
+ - ext4: move check under lock scope to close a race.
+ - SCSI: add 1024 max sectors black list flag (regression in 3.19)
+ - 3w-xxxx: fix command completion race
+ - 3w-9xxx: fix command completion race
+ - 3w-sas: fix command completion race
+ - drm/radeon: fix lockup when BOs aren't part of the VM on release
+ - drm/radeon: reset BOs address after clearing it.
+ - drm/radeon: check new address before removing old one
+ - hfsplus: don't store special "osx" xattr prefix on-disk
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.0.4
+ - [x86] spinlocks: Fix regression in spinlock contention detection
+ (regression in 4.0)
+ - [x86] ACPI / SBS: Add 5 us delay to fix SBS hangs on MacBook
+ (regression in 3.18)
+ - [x86] PCI/ACPI: Make all resources except [io 0xcf8-0xcff] available on
+ PCI bus (regression in 4.0)
+ - ACPI / PNP: add two IDs to list for PNPACPI device enumeration
+ (regression in 3.16)
+ - ocfs2: dlm: fix race between purge and get lock resource
+ - nilfs2: fix sanity check of btree level in nilfs_btree_root_broken()
+ - mnt: Fix fs_fully_visible to verify the root directory is visible
+ - mm/memory-failure: call shake_page() when error hits thp tail page
+ - vfio: Fix runaway interruptible timeout (regression in 4.0)
+ - Revert "dm crypt: fix deadlock when async crypto algorithm returns -EBUSY"
+ (regression in 4.0.2)
+ - block: destroy bdi before blockdev is unregistered. (regression in 4.0)
+ - blk-mq: fix race between timeout and CPU hotplug
+ - blk-mq: fix CPU hotplug handling
+ - [armhf] dts: imx6: phyFLEX: USB VBUS control is active-high
+ (regression in 3.16)
+ - [armhf] mvebu: armada-xp-openblocks-ax3-4: Disable internal RTC
+ - [armhf] OMAP2+: Fix omap off idle power consumption creeping up
+ (regression in 3.16)
+ - [armel,armhf] net fix emit_udiv() for BPF_ALU | BPF_DIV | BPF_K
+ intruction.
+ - drm: Zero out invalid vblank timestamp in drm_update_vblank_count.
+ (regression in 3.17)
+ - [x86] drm/i915/dp: there is no audio on port A
+ - [x86] drm/amdkfd: allow unregister process with queues
+ - drm/radeon: disable semaphores for UVD V1 (v2)
+ - drm/radeon: don't setup audio on asics that don't support it
+ - drm/radeon: fix userptr BO unpin bug v3
+ - drm/radeon: make VCE handle check more strict
+ - drm/radeon: make UVD handle checking more strict
+ - drm/radeon: more strictly validate the UVD codec
+ - pinctrl: Don't just pretend to protect pinctrl_maps, do it for real
+ - mmc: card: Don't access RPMB partitions for normal read/write
+
+ [ Ben Hutchings ]
+ * Fix error messages at boot on systems without an RTC (Closes: #784146):
+ - rtc: hctosys: do not treat lack of RTC device as error
+ - rtc: hctosys: use function name in the error log
+ * [rt] Update to 4.0.4-rt1 and re-enable
+ * linux-image: Depend on kmod without an alternative of module-init-tools
+ * linux-image: Add versioned Breaks on udev (<< 208-8~) due to #752742 and
+ #756312
+ * [i386] pnp: Disable PNPBIOS_PROC_FS
+ * [arm64] USB: Add support for XHCI on APM Mustang (Closes: #785707)
+ - Change USB_XHCI_HCD to built-in and enable USB_XHCI_PLATFORM as built-in
+ - Make xhci platform driver use 64 bit or 32 bit DMA
+ - Add support for ACPI identification to xhci-platform
+ * md/raid0: fix restore to sector variable in raid0_make_request
+ (Closes: #786372) (regression in 4.0.2)
+ * [x86] e1000e: Add support for Sunrise Point (i219) (Closes: #784546)
+ * [x86] config: Enable NEED_DMA_MAP_STATE by default when SWIOTLB is selected
+ (Closes: #786551)
+ * cdc_ncm: Fix tx_bytes statistics (regression in 4.0)
+ * [armhf] USB: musb: Fix order of conditions for assigning end point
+ operations (regression in 3.19)
+ * [armel/{kirkwood,orion5x}] Disable PM again to reduce kernel image size
+ * [armel/kirkwood] Enable DEBUG_MVEBU_UART0_ALTERNATE, replacing
+ DEBUG_MVEBU_UART_ALTERNATE
+ * i2o: Disable I2O
+ * [x86] vmwgfx: Enable DRM_VMWGFX_FBCON (Closes: #714929)
+ * media: Enable DVB_SMIPCIE as module (Closes: #785153)
+ * Bump ABI to 2
+ * [x86] i2c: Change I2C to built-in and enable ACPI_I2C_OPREGION
+ (Closes: #778896)
+ * usb-storage: Enable USB_UAS for the third time, hoping that it's finally
+ robust enough (Closes: #749014)
+ * zram: Enable ZRAM_LZ4_COMPRESS (Closes: #770958)
+ * HID: Enable HID_BATTERY_STRENGTH (Closes: #783214)
+ * [x86] ALSA: Enable SND_SOC_INTEL_BROADWELL_MACH as module (Closes: #785422)
+
+ [ Ian Campbell ]
+ * [armhf+arm64] Enabled generic SYSCON regmap reset driver
+ * [arm64] Enable PCI support and related modules, adjusting udeb module lists
+ for new modules.
+ * [arm64] Build XHCI platform drivers as a module.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 26 May 2015 02:30:06 +0100
+
+linux (4.0.2-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.0.1
+ - udptunnels: Call handle_offloads after inserting vlan tag.
+ - tcp: tcp_make_synack() should clear skb->tstamp
+ - bnx2x: Fix busy_poll vs netpoll
+ - bpf: fix verifier memory corruption
+ - Revert "net: Reset secmark when scrubbing packet"
+ - skbuff: Do not scrub skb mark within the same name space
+ - fs: take i_mutex during prepare_binprm for set[ug]id executables
+ (CVE-2015-3339)
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v4.x/ChangeLog-4.0.2
+ - tcp: fix possible deadlock in tcp_send_fin()
+ - tcp: avoid looping in tcp_send_fin() (regression in 4.0)
+ - net: do not deplete pfmemalloc reserve
+ - net: fix crash in build_skb()
+ - net: rfs: fix crash in get_rps_cpus() (regression in 4.0)
+ - md: fix md io stats accounting broken (regression in 3.19)
+ - [x86] perf/intel: Fix Core2,Atom,NHM,WSM cycles:pp events
+ (regression in 3.19)
+ - [x86] fix special __probe_kernel_write() tail zeroing case
+ (regression in 4.0)
+ - Btrfs: fix log tree corruption when fs mounted with -o discard
+ - btrfs: don't accept bare namespace as a valid xattr
+ - Btrfs: fix inode eviction infinite loop after cloning into it
+ - Btrfs: fix inode eviction infinite loop after extent_same ioctl
+ - mm/hugetlb: use pmd_page() in follow_huge_pmd() (regression in 4.0)
+ - [powerpc] hugetlb: Call mm_dec_nr_pmds() in hugetlb_free_pmd_range()
+ (regression in 4.0)
+ - [s390x] KVM: fix handling of write errors in the tpi handler
+ - [s390x] KVM: reinjection of irqs can fail in the tpi handler
+ - [s390x] KVM: fix get_all_floating_irqs (regression in 3.15)
+ - [s390x] hibernate: fix save and restore of kernel text section
+ - KVM: use slowpath for cross page cached accesses
+ - [arm*] KVM: check IRQ number on userland injection
+ - [x86] KVM: VMX: Preserve host CR4.MCE value while in guest mode.
+ - [mips*el] Loongson-3: Add IRQF_NO_SUSPEND to Cascade irqaction
+ (regression in 3.19)
+ - [mips*] Hibernate: flush TLB entries earlier
+ - md/raid0: fix bug with chunksize not a power of 2.
+ - [armhf] spi: imx: read back the RX/TX watermark levels earlier
+ (regression in 3.18)
+ - ring-buffer: Replace this_cpu_*() with __this_cpu_*()
+ - NFS: fix BUG() crash in notify_change() with patch to chown_common()
+ - [armhf] fix broken hibernation (regression in 3.16)
+ - [armel,armhf] 8320/1: fix integer overflow in ELF_ET_DYN_BASE
+ - ALSA: emu10k1: don't deadlock in proc-functions
+ - Input: alps - fix touchpad buttons getting stuck when used with trackpoint
+ (regression in 4.0)
+ - mfd: core: Fix platform-device name collisions (regression in 3.19)
+ - fs/binfmt_elf.c: fix bug in loading of PIE binaries
+ - ptrace: fix race between ptrace_resume() and wait_task_stopped()
+ - ext4: make fsync to sync parent dir in no-journal for real this time
+ - mnt: Prevent circumvention of locked mounts using umount(MNT_DETACH)
+ (CVE-2014-9717)
+ - tpm: fix: sanitized code paths in tpm_chip_register() (regression in 4.0)
+ - [powerpc/powerpc64,ppc64*] perf: Cap 64bit userspace backtraces to
+ PERF_MAX_STACK_DEPTH (Closes: #784278)
+ - UBI: account for bitflips in both the VID header and data
+ - UBI: fix out of bounds write
+ - UBI: fix check for "too many bytes"
+ - target: Fix COMPARE_AND_WRITE with SG_TO_MEM_NOALLOC handling
+ - target/file: Fix SG table for prot_buf initialization
+ - [arm64] head.S: ensure visibility of page tables (regression in 3.15)
+ - [arm64] errata: add workaround for cortex-a53 erratum #845719
+ - [powerpc/powerpc64,ppc64*] powernv: Don't map M64 segments using M32DT
+ (regression in 3.17)
+ - [powerpc/powerpc64,ppc64] cell: Fix crash in iic_setup_cpu() after per_cpu
+ changes (regression in 3.19)
+ - [powerpc/powerpc64,ppc64] cell: Fix cell iommu after it_page_shift changes
+ - [i386/686-pae] ACPICA: Utilities: split IO address types from data type
+ models.
+ - ACPICA: Store GPE register enable masks upfront (regression in 3.19)
+ - [armhf] clk: samsung: exynos4: Disable ARMCLK down feature on Exynos4210
+ SoC (regression in 3.17)
+ - [armhf] clk: tegra: Use the proper parent for plld_dsi (regression in 4.0)
+ - [armhf] serial: imx: Fix clearing of receiver overrun flag
+ - serial: 8250: Check UART_SCR is writable (regression in 4.0)
+ - sd: Unregister integrity profile (regression in 3.18)
+ - sd: Fix missing ATO tag check (regression in 3.18)
+ - [x86] Drivers: hv: vmbus: Fix a bug in the error path in vmbus_open()
+ - IB/core: disallow registering 0-sized memory region
+ - IB/iser: Fix wrong calculation of protection buffer length
+ (regression in 3.16)
+ - i2c: Mark adapter devices with pm_runtime_no_callbacks (regression in 4.0)
+ - [armhf] drm/exynos: Enable DP clock to fix display on Exynos5250 and other
+ (regression in 4.0)
+ - [x86] drm/i915: vlv: fix save/restore of GFX_MAX_REQ_COUNT reg
+ (regression in 3.16)
+ - [x86] drm/i915: cope with large i2c transfers
+ - vfs: RCU pathwalk breakage when running into a symlink overmounting
+ something
+ - Revert "nfs: replace nfs_add_stats with nfs_inc_stats when add one"
+ (regression in 3.19)
+ - nfsd4: disallow ALLOCATE with special stateids (regression in 3.19)
+ - nfsd4: fix READ permission checking (regression in 3.16)
+ - nfsd4: disallow SEEK with special stateids (regression in 3.18)
+ - nfsd: eliminate NFSD_DEBUG (regression of linux-libc-dev in 3.19)
+ - nfs: fix high load average due to callback thread sleeping
+ (regression in 4.0)
+ - nfs: fix DIO good bytes calculation (regression in 4.0)
+ - nfs: remove WARN_ON_ONCE from nfs_direct_good_bytes
+ - NFS: Add a stub for GETDEVICELIST (regression in 3.18)
+ - sched/deadline: Always enqueue on previous rq when dl_task_timer() fires
+ (regression in 4.0)
+ - mac80211: send AP probe as unicast again (regression in 3.19)
+ - lib: memzero_explicit: use barrier instead of OPTIMIZER_HIDE_VAR
+ - [armhf] crypto: omap-aes - Fix support for unequal lengths
+ - memstick: mspro_block: add missing curly braces
+ - drivers: platform: parse IRQ flags from resources (regression in 3.18)
+
+ [ Ben Hutchings ]
+ * debian.py,gencontrol.py: Fix the version sanity checks for backports and
+ security/LTS uploads
+ * ipv4: Missing sk_nulls_node_init() in ping_unhash() (CVE-2015-3636)
+ * [armel/orion5x] Increase maximum kernel image size to ~2 MB, removing
+ support for DNS-323 (fixes FTBFS)
+ - Re-enable BLK_DEV_INTEGRITY, SCSI_UFSHCD, TCM_IBLOCK, AUDIT, USER_NS,
+ PCI_QUIRKS, FTRACE, DEBUG_BUGVERBOSE, SECURITY
+ - Enable DYNAMIC_DEBUG, FRONTSWAP
+ * [arm64,armhf,powerpcspe,x86] gpio: Explicitly enable GPIOLIB, as some
+ drivers now depend on rather than selecting it (fixes FTBFS on i386)
+ * [x86] thermal: Enable INT340X_THERMAL as module, replacing
+ ACPI_INT3403_THERMAL
+ * [x86] Re-enable IOSF_MBI and INTEL_RAPL as modules
+ * sound: Enable SND_USB_POD, SND_USB_PODHD, SND_USB_TONEPORT,
+ SND_USB_VARIAX as modules, replacing LINE6_USB
+ * media/rc: Enable IR_IGORPLUGUSB as module, replacing LIRC_IGORPLUGUSB
+ * [amd64] misc: Enable INTEL_MIC_BUS and re-enable INTEL_MIC_HOST as modules
+ * sound/firewire: Enable SND_OXFW as module, replacing SND_FIREWIRE_SPEAKERS
+ * [x86] Enable DW_DMAC and re-enable SND_SOC_INTEL_HASWELL_MACH,
+ SND_SOC_INTEL_BYT_RT5640_MACH, SND_SOC_INTEL_BYT_MAX98090_MACH as modules
+ * [x86] tpm: Enable TCG_TIS_I2C_ST33 as module, replacing TCG_ST33_I2C
+ * [armel/kirkwood] regulator: Re-enable REGULATOR, REGULATOR_FIXED_VOLTAGE
+ * [armel/kirkwood] sound: Enable SND_SIMPLE_CARD as module, replacing
+ SND_KIRKWOOD_SOC_OPENRD, SND_KIRKWOOD_SOC_T5325; re-enable
+ SND_SOC_ALC5623, SND_SOC_CS42L51_I2C as modules
+ * [alpha,armel/kirkwood,hppa,ia64,mips*/{octeon,sb1-bcm91250a}] Re-enable PM
+ * [armel/orion5x] Enable PM
+ * [armhf] sound: Enable SND_SIMPLE_CARD as module
+ * path_openat(): fix double fput()
+ * [x86] serial: Enable SERIAL_8250_DW as built-in
+ * [armhf] Enable ARM_ERRATA_430973 (Closes: #768890), ARM_ERRATA_643719,
+ ARM_ERRATA_754327, ARM_ERRATA_773022
+ * [x86] nfc: Enable NFC_HCI, NFC_MEI_PHY, NFC_PN544, NFC_PN544_MEI as
+ modules (Closes: #770323)
+ * Set ABI to 1
+ * mnt: Add missing pieces of fix for CVE-2014-9717:
+ - mnt: Fail collect_mounts when applied to unmounted mounts
+ - fs_pin: Allow for the possibility that m_list or s_list go unused.
+
+ [ Ian Campbell ]
+ * [armhf] Enable support for Freescale SNVS RTC. (Closes: #782364)
+ * [armhf] Add ehci-orion module to usb-modules udeb. (Closes: #783324)
+ * [armhf] imx-hdmi module is now called dw_hdmi-imx, so update fb-modules
+ udeb. Patches from both Vagrant Cascadian and Wookey. (Closes: #783275)
+ * [arm*] Install DTBS using dtbs_install target. (Closes: #784761)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 11 May 2015 04:29:06 +0100
+
+linux-tools (4.0.2-1) unstable; urgency=medium
+
+ * New upstream release
+ * Thanks to Luca Boccassi and Lukas Wunner for some hints on upgrading
+ to 4.0 (Closes: #778588)
+ * debian/control: Add gcc-multilib to Build-Depends in order to build
+ perf-read-vdso{,x}32
+ * linux-tools: Install perf-read-vdso{,x}32 in versioned directory
+ under /usr/lib
+ * linux-tools: Set ARCH=x86 when building perf for amd64, i386 or x32
+ * linux-kbuild: Include Makefile.kasan (Closes: #783681)
+ * linux-kbuild: Enable Large File Support (Closes: #778942)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 11 May 2015 03:53:12 +0100
+
+linux (4.0-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_4.0
+
+ [ Ben Hutchings ]
+ * [i386,s390] Remove 64-bit kernel flavours, which are also available
+ through multiarch
+ * [x86] Enable PARAVIRT_SPINLOCKS
+
+ -- maximilian attems <maks@debian.org> Tue, 21 Apr 2015 21:46:47 +0200
+
+linux (3.19.3-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.19.2
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.19.3
+
+ -- maximilian attems <maks@debian.org> Sun, 29 Mar 2015 20:14:33 +0200
+
+linux (3.19.1-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.19.1
+ - Bluetooth: ath3k: workaround the compatibility issue with xHCI controller
+ (Closes: #778463)
+ - random: Fix fast_mix() function (regression in 3.17)
+ - xfs: inode unlink does not set AGI buffer type
+ - xfs: set buf types when converting extent formats
+ - xfs: set superblock buffer type correctly
+ - iwlwifi: mvm: validate tid and sta_id in ba_notif
+ - iwlwifi: mvm: fix failure path when power_update fails in add_interface
+ (regression in 3.15)
+ - HID: i2c-hid: Limit reads to wMaxInputLength bytes for input events
+ (regression in 3.19)
+ - cpufreq: Set cpufreq_cpu_data to NULL before putting kobject
+ - [xen] manage: Fix USB interaction issues when resuming (regression in
+ 3.17)
+ - [xen] xen-scsiback: mark pvscsi frontend request consumed only after last
+ read
+ - megaraid_sas: endianness related bug fixes and code optimization
+ - rc-main: Re-apply filter for no-op protocol change (regression in 3.17)
+ - proc/pagemap: walk page tables under pte lock
+ - NFS: struct nfs_commit_info.lock must always point to inode->i_lock
+ (regression in 3.17)
+ - [mips*] asm: asmmacro: Replace "add" instructions with "addu"
+ - mm/hugetlb: pmd_huge() returns true for non-present hugepage
+ - blk-mq: fix double-free in error path
+ - nfs41: .init_read and .init_write can be called with valid pg_lseg
+ (regression in 3.15)
+ - SUNRPC: NULL utsname dereference on NFS umount during namespace cleanup
+ - NFSv4: Ensure we reference the inode for return-on-close in delegreturn
+ - NFSv4.1: Fix a kfree() of uninitialised pointers in
+ decode_cb_sequence_args
+ - sg: fix unkillable I/O wait deadlock with scsi-mq
+ - sg: fix EWOULDBLOCK errors with scsi-mq
+ - iscsi-target: Drop problematic active_ts_list usage
+ - cipso: don't use IPCB() to locate the CIPSO IP option (regression in 3.18)
+ - ring-buffer: Do not wake up a splice waiter when page is not full
+ (regression in 3.18)
+ - tty: Remove warning in tty_lock_slave() (regression in 3.19)
+ - tty: Prevent untrappable signals from malicious program
+ - USB: fix use-after-free bug in usb_hcd_unlink_urb()
+ - [armhf] usb: dwc3: gadget: add missing spin_lock() (regression in 3.19)
+ - usb: core: buffer: smallest buffer should start at ARCH_DMA_MINALIGN
+ - cdc-acm: add sanity checks
+ - ntp: Fixup adjtimex freq validation on 32-bit systems (regression in 3.19)
+ - udf: Check length of extended attributes and allocation descriptors
+ - [s390*] KVM: forward hrtimer if guest ckc not pending yet
+ (regression in 3.17)
+ - [s390*] KVM: base hrtimer on a monotonic clock
+ - [s390*] KVM: floating irqs: fix user triggerable endless loop
+ - [s390*] KVM: avoid memory leaks if __inject_vm() fails
+ - gpiolib: of: allow of_gpiochip_find_and_xlate to find more than one chip
+ per node (regression in 3.19)
+ - sb_edac: Fix detection on SNB machines (regression in 3.18)
+ - jffs2: fix handling of corrupted summary length
+ - samsung-laptop: Add use_native_backlight quirk, and enable it on some
+ models (regression in 3.16)
+ - libceph: fix double __remove_osd() problem
+ - btrfs: fix leak of path in btrfs_find_item
+ - Btrfs: fix fsync data loss after adding hard link to inode
+ - blk-throttle: check stats_cpu before reading it from sysfs
+ - [x86] efi: Avoid triple faults during EFI mixed mode calls
+ - [x86][xen] irq: Fix regression in 3.19
+ - Replace ACCESS_ONCE of non-scalar types with READ_ONCE
+ - kernel: tighten rules for ACCESS_ONCE
+ - [x86] spinlocks/paravirt: Fix memory corruption on unlock
+ - quota: Store maximum space limit in bytes
+
+ [ Ben Hutchings ]
+ * [armhf] Drop sun7i device tree patches which are included in 3.19
+ (fixes FTBFS) (Closes: #779799)
+ * nfsd: Enable NFSD_V4_SECURITY_LABEL
+
+ [ Helge Deller ]
+ * [hppa] Add virtio udeb modules
+ * [alpha] Add debian-installer udeb packages
+ * [alpha] Drop alpha-legacy kernel image
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 08 Mar 2015 15:29:45 +0000
+
+linux (3.19-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.19
+ * Enable SCSI_AM53C974 where tmscim was enabled.
+
+ -- maximilian attems <maks@debian.org> Thu, 12 Feb 2015 23:41:05 +0100
+
+linux (3.18.6-1~exp1) experimental; urgency=medium
+
+ [ Ben Hutchings ]
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.6
+
+ -- maximilian attems <maks@debian.org> Sat, 07 Feb 2015 22:38:37 +0100
+
+linux-tools (3.18.5-1~exp1) experimental; urgency=medium
+
+ * New upstream release
+ * linux-tools: Fix build configuration to avoid linking perf with libbfd
+ (Closes: #763002)
+ * linux-tools: Add a check that perf is not linked with libbfd
+ * [arm64] Enable building linux-tools, thanks to Steve Capper
+ (Closes: #771340)
+ * [armel,armhf] linux-tools: Enable use of libunwind
+ * [hppa,sparc] linux-tools: Enable use of libnuma
+ * [mips*,powerpcspe,x32] Enable building linux-tools
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 01 Feb 2015 02:53:07 +0100
+
+linux (3.18.5-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.4
+ - [hppa] fix out-of-register compiler error in ldcw inline assembler
+ function
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.5
+
+ [ Helge Deller ]
+ * [hppa] Enable CONFIG_PPDEV to avoid CUPS complaining with systemd
+
+ -- maximilian attems <maks@debian.org> Sat, 31 Jan 2015 22:20:40 +0100
+
+linux (3.18.3-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.1
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.2
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.3
+
+ [ Ian Campbell ]
+ * [armel/kirkwood]: Enable DEBUG_MVEBU_UART_ALTERNATE to match the behaviour
+ of previous boardfile based kirkwood kernels. Otherwise the kernel silently
+ crashes during boot.
+ * [armel/kirkwood]: Add versioned breaks on flash-kernel << 3.30~, versions
+ before this do not append a DTB on all platforms. This is required now that
+ board file support is removed.
+ * Add xhci-pci and xhci-plat-hcd to usb-modules udeb. (Inspired by #770912).
+ * [armhf/armmp]: Enable support for Tegra124 based platforms.
+
+ [ Helge Deller ]
+ * [hppa] udeb: Fix duplicate modules in ata-modules, pata-modules
+ (Closes: #770102)
+ * [hppa] Create build-dependencies on binutils-hppa64 and gcc-4.9-hppa64
+
+ [ Ben Hutchings ]
+ * [sh4] ftrace: Remove -m32 option from recordmcount.pl (Closes: #775611)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 18 Jan 2015 20:48:06 +0000
+
+linux (3.18-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.18
+
+ [ Ben Hutchings ]
+ * Remove aufs
+ * vfs: Enable OVERLAY_FS as module
+ * drivers/base: Disable UEVENT_HELPER, only needed for compatibility
+ with wheezy's udev package
+ * net: Enable 6LOWPAN as module; re-enable BT_6LOWPAN and
+ IEEE802154_6LOWPAN as modules
+ * net: Enable GENEVE as module; enable OPENVSWITCH_GENEVE
+ * ipv4: Enable TCP_CONG_DCTCP as module
+ * netfilter: Enable IP6_NF_NAT, IP_SET_HASH_MAC, IP_VS_FO, NF_LOG_ARP,
+ NF_LOG_BRIDGE, NFT_BRIDGE_REJECT, NFT_MASQ, NFT_MASQ_IPV4, NFT_MASQ_IPV6
+ as modules
+ * SCSI,xen: Enable XEN_SCSI_FRONTEND, XEN_SCSI_BACKEND as modules
+ * SCSI: Re-enable LIBFCOE, FCOE, FCOE_FNIC, SCSI_BNX2X_FCOE as modules
+ * drivers/net: Enable ET131X as module for all architectures
+ * wireless: Enable BRCMFMAC as module for all architectures;
+ enable BRCMFMAC_USB and BRCMFMAC_PCIE
+ * wireless: Enable RTL8192EE, RTL8821AE as modules for all architectures
+ (replacing R8192EE, R8821AE for x86 only)
+ * media: Enable VIDEO_VIVID as module (replacing VIDEO_VIVI)
+ * [armel/kirkwood] Enable ARCH_MULTI_V5, ARCH_MVEBU, MACH_KIRKWOOD and
+ MACH_NETXBIG, replacing ARCH_KIRKWOOD etc.
+ * [powerpc/powerpc64,ppc64*] Enable SCSI_IBMVFC as module, replacing
+ SCSI_IBMVSCSIS
+ * input/tablet: Enable TABLET_SERIAL_WACOM4 as module
+ * media: Enable MEDIA_SDR_SUPPORT; enable DVB_PT3, DVB_USB_DVBSKY,
+ USB_AIRSPY, USB_HACKRF, VIDEO_TW68 as modules; enable VIDEO_SOLO6X10 as
+ module on all architectures (replacing SOLO6X10 on x86);
+ enable USB_MSI2500 on all architectures (replacing USB_MSI3101 on x86)
+ * au0828: Enable VIDEO_AU0828_RC
+ * HID,gpio,i2c: Enable HID_CP2112 as module
+ * HID: Enable HID_PENMOUNT as module
+ * USB,leds: Enable USB_LED_TRIG
+ * leds: Disable LEDS_PCA9532, apparently only needed on armel/iop32x
+ * [x86] platform: Enable TOSHIBA_HAPS as module
+ * [x86] serial: Enable SERIAL_8250_FINTEK as module
+ * [x86] Enable MFD_MENF21BMC, LEDS_MENF21BMC, SENSORS_MENF21BMC_HWMON,
+ MENF21BMC_WATCHDOG as modules
+ * [x86] edac: Enable EDAC_IE31200 as module
+ * [x86] drivers/crypto: Enable CRYPTO_DEV_QAT_DH895xCC as module
+ * [x86] comedi: Enable COMEDI_NI_USB6501 as module
+ * [armel] Change configuration to reduce kernel image size (fixes FTBFS)
+ - [/kirkwood] netlink: Disable NETLINK_MMAP
+ - [/kirkwood] cgroups: Disable MEMCG
+ - [/kirkwood] Disable CHECKPOINT_RESTORE
+ - [/kirkwood] mm: Disable COMPACTION, KSM
+ - [/kirkwood] crypto: Disable CRYPTO_FIPS
+ - [/kirkwood] power: Disable HIBERNATION, PM_RUNTIME
+ - [/orion5x] mm: Disable COMPACTION, MIGRATION
+ - [/orion5x] block: Disable BLK_DEV_INTEGRITY
+ - [/orion5x] SCSI: Disable SCSI_UFSHCD
+ - [/orion5x] target: Disable TCM_IBLOCK
+ - [/orion5x] Disable AUDIT, DEBUG_BUGVERBOSE, PROFILING, OPROFILE, RD_LZO
+ * [armel] Include size of appended DTBs in image size check
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 11 Dec 2014 00:43:21 +0000
+
+linux (3.17.4-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.17.1
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.17.2
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.17.3
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.17.4
+
+ [ Ben Hutchings ]
+ * Set ABI to trunk
+ * aufs: Update to aufs3.17-20141020:
+ - support for AT_EMPTY_PATH/LOOKUP_EMPTY
+ - Show union filesystem paths in /proc/*/map_files/*
+ - bugfix, fix the returning size of the branch attr
+ * Compile with gcc-4.9 (except for ia64,m68k,s390*,sh4)
+
+ -- maximilian attems <maks@debian.org> Mon, 24 Nov 2014 00:00:27 +0100
+
+linux-tools (3.17-1~exp1) experimental; urgency=medium
+
+ * New upstream release
+ - usbip userspace moved to tools/usb/usbip
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 17 Oct 2014 14:58:51 +0200
+
+linux (3.17-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.17
+
+ * armel: Drop ixp4xx image.
+ * topconfig: Reenable renamed IP_NF_NAT. (closes #762458)
+ * udeb: refix renamed i2c-core.
+
+ -- maximilian attems <maks@debian.org> Tue, 14 Oct 2014 23:01:39 +0200
+
+linux (3.17~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.x-rcN-20140908
+
+ [ maximilian attems ]
+ * udeb: fix renamed i2ccore.
+
+ -- maximilian attems <maks@debian.org> Thu, 18 Sep 2014 23:50:00 +0200
+
+linux (3.16.7-ckt9-3) unstable; urgency=high
+
+ [ Ben Hutchings ]
+ * [x86] crypto: aesni - fix memory usage in GCM decryption (Closes: #782561)
+ (CVE-2015-3331)
+ * tcp: Fix crash in TCP Fast Open (Closes: #782515) (CVE-2015-3332)
+ * kernel: Provide READ_ONCE and ASSIGN_ONCE
+ * Replace use of ACCESS_ONCE on non-scalar types with READ_ONCE or barriers
+ as appropriate
+ * kernel: tighten rules for ACCESS ONCE
+ * kernel: Change ASSIGN_ONCE(val, x) to WRITE_ONCE(x, val)
+ * fs: take i_mutex during prepare_binprm for set[ug]id executables
+ (CVE-2015-3339)
+
+ [ Ian Campbell ]
+ * [xen] release per-queue Tx and Rx resource when disconnecting, fixing
+ network after save/restore or migration. (Closes: #782698)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 23 Apr 2015 16:41:27 +0100
+
+linux (3.16.7-ckt9-2) unstable; urgency=medium
+
+ * btrfs: simplify insert_orphan_item (Closes: #782362)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 13 Apr 2015 02:01:54 +0100
+
+linux (3.16.7-ckt9-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt8
+ - usb: core: buffer: smallest buffer should start at ARCH_DMA_MINALIGN
+ - btrfs: fix leak of path in btrfs_find_item
+ - tpm_tis: verify interrupt during init
+ - xfs: ensure buffer types are set correctly
+ - xfs: inode unlink does not set AGI buffer type
+ - xfs: set buf types when converting extent formats
+ - xfs: set superblock buffer type correctly
+ - [s390*] KVM: avoid memory leaks if __inject_vm() fails
+ - samsung-laptop: Add use_native_backlight quirk, and enable it on some
+ models (regression in 3.14)
+ - staging: comedi: comedi_compat32.c: fix COMEDI_CMD copy back
+ - nfs: don't call blocking operations while !TASK_RUNNING
+ - cdc-acm: add sanity checks
+ - USB: fix use-after-free bug in usb_hcd_unlink_urb()
+ - iwlwifi: mvm: fix failure path when power_update fails in add_interface
+ - tty: Prevent untrappable signals from malicious program
+ - cpufreq: Set cpufreq_cpu_data to NULL before putting kobject
+ - nfs41: .init_read and .init_write can be called with valid pg_lseg
+ (regression in 3.15)
+ - mei: mask interrupt set bit on clean reset bit (regression in
+ 3.16.7-ckt5)
+ - [s390*] KVM: floating irqs: fix user triggerable endless loop
+ - cfq-iosched: handle failure of cfq group allocation
+ - tracing: Fix unmapping loop in tracing_mark_write
+ - fsnotify: fix handling of renames in audit
+ - blk-mq: fix double-free in error path
+ - NFSv4.1: Fix a kfree() of uninitialised pointers in
+ decode_cb_sequence_args
+ - mm/hugetlb: pmd_huge() returns true for non-present hugepage
+ - mm/hugetlb: take page table lock in follow_huge_pmd()
+ - mm/hugetlb: fix getting refcount 0 page in hugetlb_fault()
+ - mm/hugetlb: add migration/hwpoisoned entry check in
+ hugetlb_change_protection
+ - mm/hugetlb: add migration entry check in __unmap_hugepage_range
+ - iscsi-target: Drop problematic active_ts_list usage
+ - mm/memory.c: actually remap enough memory
+ - mm: hwpoison: drop lru_add_drain_all() in __soft_offline_page()
+ (regression in 3.11)
+ - jffs2: fix handling of corrupted summary length
+ - dm mirror: do not degrade the mirror on discard error
+ - dm io: reject unsupported DISCARD requests with EOPNOTSUPP
+ - NFS: struct nfs_commit_info.lock must always point to inode->i_lock
+ (regression in 3.16.4)
+ - target: Add missing WRITE_SAME end-of-device sanity check
+ - target: Check for LBA + sectors wrap-around in sbc_parse_cdb
+ - Btrfs: fix fsync data loss after adding hard link to inode
+ - sg: fix read() error reporting
+ - IB/qib: Do not write EEPROM
+ - [amd64] EDAC, amd64_edac: Prevent OOPS with >16 memory controllers
+ (regression in 3.11)
+ - md/raid5: Fix livelock when array is both resyncing and degraded.
+ - locking/rtmutex: Avoid a NULL pointer dereference on deadlock
+ (regression in 3.16)
+ - time: adjtimex: Validate the ADJ_FREQUENCY values
+ - ntp: Fixup adjtimex freq validation on 32-bit systems
+ - dm: fix a race condition in dm_get_md
+ - dm snapshot: fix a possible invalid memory access on unload
+ - libceph: fix double __remove_osd() problem
+ - blk-throttle: check stats_cpu before reading it from sysfs
+ - debugfs: leave freeing a symlink body until inode eviction
+ - procfs: fix race between symlink removals and traversals
+ - autofs4 copy_dev_ioctl(): keep the value of ->size we'd used for
+ allocation
+ - clk-gate: fix bit # check in clk_register_gate() (regression in 3.11)
+ - [powerpc*] kernel: Avoid memory corruption at early stage
+ (regression in 3.14)
+ - GFS2: Fix crash during ACL deletion in acl max entry check in
+ gfs2_set_acl() (regression in 3.14)
+ - net: llc: use correct size for sysctl timeout entries (CVE-2015-2041)
+ - net: rds: use correct size for max unacked packets and bytes
+ (CVE-2015-2042)
+ - HID: i2c-hid: Limit reads to wMaxInputLength bytes for input events
+ (regression in 3.16.7-ckt4)
+ - net: sctp: fix race for one-to-many sockets in sendmsg's auto associate
+ - ipv6: mld: fix add_grhead skb_over_panic for devs with large MTUs
+ - IB/core: When marshaling ucma path from user-space, clear unused fields
+ (regression in 3.14)
+ - IB/core: Fix deadlock on uverbs modify_qp error flow (regression in 3.14)
+ - IB/mlx4: Fix wrong usage of IPv4 protocol for multicast attach/detach
+ (regression in 3.14)
+ - IB/iser: Use correct dma direction when unmapping SGs
+ (regression in 3.15)
+ - staging: comedi: cb_pcidas64: fix incorrect AI range code handling
+ - target: Fix R_HOLDER bit usage for AllRegistrants
+ - target: Avoid dropping AllRegistrants reservation during unregister
+ - target: Allow AllRegistrants to re-RESERVE existing reservation
+ - target: Allow Write Exclusive non-reservation holders to READ
+ - vhost/scsi: potential memory corruption
+ - mm: softdirty: unmapped addresses between VMAs are clean
+ - proc/pagemap: walk page tables under pte lock
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt9
+ - netfilter: nft_compat: fix module refcount underflow
+ - netfilter: xt_socket: fix a stack corruption bug
+ - ipvs: add missing ip_vs_pe_put in sync code
+ - flowcache: Fix kernel panic in flow_cache_flush_task (regression in 3.15)
+ - tcp: make sure skb is not shared before using skb_get()
+ (regression in 3.16)
+ - gen_stats.c: Duplicate xstats buffer for later use
+ - ematch: Fix auto-loading of ematch modules.
+ - openvswitch: Fix net exit.
+ - net: reject creation of netdev names with colons
+ - macvtap: make sure neighbour code can push ethernet header
+ - udp: only allow UFO for packets from SOCK_DGRAM sockets
+ - gpiolib: of: allow of_gpiochip_find_and_xlate to find more than one chip
+ per node (regression in 3.16.7-ckt6)
+ - [x86] drm/i915: Check obj->vma_list under the struct_mutex
+ (regression in 3.15)
+ - ALSA: hda - Disable runtime PM for Panther Point again
+ (regression in 3.14)
+ - nilfs2: fix potential memory overrun on inode
+ - [armhf] usb: dwc3: dwc3-omap: Fix disable IRQ
+ - [i386] KVM: emulate: fix CMPXCHG8B on 32-bit hosts
+ - xhci: Allocate correct amount of scratchpad buffers
+ - USB: usbfs: don't leak kernel data in siginfo
+ - efi/libstub: Fix boundary checking in efi_high_alloc()
+ - USB: serial: fix potential use-after-free after failed probe
+ - USB: serial: fix tty-device error handling at probe
+ - staging: comedi: adv_pci1710: fix AI INSN_READ for non-zero channel
+ - mei: make device disabled on stop unconditionally
+ - NFSv4: Don't call put_rpccred() under the rcu_read_lock()
+ - btrfs: fix lost return value due to variable shadowing
+ - eCryptfs: don't pass fs-specific ioctl commands through
+ - drm/radeon: fix DRM_IOCTL_RADEON_CS oops
+ - [armhf] ASoC: omap-pcm: Correct dma mask
+ - [amd64] x86/asm/entry/64: Remove a bogus 'ret_from_fork' optimization
+ (CVE-2015-2830)
+ - Btrfs: fix data loss in the fast fsync path
+ - Btrfs:__add_inode_ref: out of bounds memory read when looking for
+ extended ref.
+ - svcrpc: fix memory leak in gssp_accept_sec_context_upcall
+ (regression in 3.12)
+ - SUNRPC: Always manipulate rpc_rqst::rq_bc_pa_list under xprt->bc_pa_lock
+ (regression in 3.15)
+ - net: cls_bpf: fix size mismatch on filter preparation
+ - net: cls_bpf: fix auto generation of per list handles
+ - qlge: Fix qlge_update_hw_vlan_features to handle if interface is down
+ (regression in 3.13)
+ - libsas: Fix Kernel Crash in smp_execute_task
+ - ALSA: hda - Fix regression of HD-audio controller fallback modes
+ (regression in 3.11)
+ - can: add missing initialisations in CAN related skbuffs
+ - ftrace: Fix en(dis)able graph caller when en(dis)abling record via sysctl
+ - ftrace: Fix ftrace enable ordering of sysctl ftrace_enabled
+ - [armhf] imx6qdl-sabresd: set swbst_reg as vbus's parent reg
+ - [armhf] imx6sl-evk: set swbst_reg as vbus's parent reg
+ - xen-pciback: limit guest control of command register (CVE-2015-2150)
+ - drm/vmwgfx: Reorder device takedown somewhat
+ - ALSA: control: Add sanity checks for user ctl id name string
+ - Revert "i2c: core: Dispose OF IRQ mapping at client removal time"
+ (regression in 3.16.7-ckt2)
+ - nilfs2: fix deadlock of segment constructor during recovery
+ (regression in 3.16.7-ckt7)
+ - clk: divider: fix calculation of maximal parent rate for a given divider
+ (regression in 3.15)
+ - [sparc*] Fix several bugs in memmove().
+ - net: sysctl_net_core: check SNDBUF and RCVBUF for min length
+ - inet_diag: fix possible overflow in inet_diag_dump_one_icsk()
+ - caif: fix MSG_OOB test in caif_seqpkt_recvmsg()
+ - rxrpc: bogus MSG_PEEK test in rxrpc_recvmsg()
+ - tcp: fix tcp fin memory accounting
+ - net: compat: Update get_compat_msghdr() to match copy_msghdr_from_user()
+ behaviour (regression in 3.13)
+ - tcp: make connect() mem charging friendly
+
+ [ Ian Campbell ]
+ * Initialise framebuffer console earlier. (Closes: #779935)
+ * [xen] Enable Xen MCE log support. (Closes: #779698)
+ * [armhf] mvebu: do not register custom DMA operations when coherency is
+ disabled (Closes: #780858)
+ * [armhf] Enable power control on various sunxi platforms, enable MFD_AXP20X
+ and REGULATOR_AXP20X and adding the necessary DTB nodes. (Closes: #781576)
+
+ [ Ben Hutchings ]
+ * [armel/kirkwood] linux-image: Add versioned Breaks against flash-kernel,
+ to ensure that an FDT is appended to the image if needed (Closes: #781193)
+ * Revert "quota: Store maximum space limit in bytes" to avoid ABI change
+ * IB/core: Prevent integer overflow in ib_umem_get address arithmetic
+ (CVE-2014-8159)
+ * Btrfs: make xattr replace operations atomic (CVE-2014-9710)
+ * ext4: fix ZERO_RANGE bug hidden by flag aliasing
+ * ext4: fix accidental flag aliasing in ext4_map_blocks flags
+ * ext4: allocate entire range in zero range (CVE-2015-0275)
+ * [x86] microcode/intel: Guard against stack overflow in the loader
+ (CVE-2015-2666)
+ * ipv6: Don't reduce hop limit for an interface (CVE-2015-2922)
+ * [powerpc/powerpc64,ppc64] Disable THERM_PM72 and enable its replacements
+ WINDFARM_PM72 and WINDFARM_RM31 as modules. Update the udeb config
+ accordingly. Thanks to Milan Kupcevic. (Closes: #781934)
+ * psmouse: Add support for FocalTech touchpads, thanks to Rafal Ramocki
+ (Closes: #780971)
+ * [x86] drm/i915: Add limited color range readout for HDMI/DP ports on
+ g4x/vlv/chv (Closes: #775217)
+ * HID: thingm: fix workqueue race on remove (Closes: #780055)
+ * [x86] Disable X86_VERBOSE_BOOTUP (Closes: #781953)
+ * eMMC: Don't initialize partitions on RPMB flagged areas (Closes: #782038)
+ * [x86] powercap / RAPL: change domain detection message (Closes: #781418)
+ * procfs: Avoid ABI change in 3.16.7-ckt8
+ * [powerpc/powerpc] udeb: Add fb-modules package containing radeonfb driver
+ (Closes: #782058)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 08 Apr 2015 01:03:08 +0100
+
+linux (3.16.7-ckt7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt5
+ - [x86] vdso: Use asm volatile in __getcpu
+ - SCSI: fix regression in scsi_send_eh_cmnd() (regression in 3.16)
+ - Btrfs: don't delay inode ref updates during log replay
+ (regression in 3.16.7)
+ - mm: propagate error from stack expansion even for guard page
+ - vfio-pci: Fix the check on pci device type in vfio_pci_probe()
+ - rpc: fix xdr_truncate_encode to handle buffer ending on page boundary
+ (regression in 3.16)
+ - [arm64] efi: add missing call to early_ioremap_reset()
+ (regression in 3.16)
+ - exit: fix race between wait_consider_task() and wait_task_zombie()
+ (regression in 3.15)
+ - mm: prevent endless growth of anon_vma hierarchy
+ - mm: protect set_page_dirty() from ongoing truncation
+ - mm, vmscan: prevent kswapd livelock due to pfmemalloc-throttled process
+ being killed
+ - sched/deadline: Fix migration of SCHED_DEADLINE tasks
+ - HID: roccat: potential out of bounds in pyra_sysfs_write_settings()
+ - mm: Don't count the stack guard page towards RLIMIT_STACK
+ - mm: fix corner case in anon_vma endless growing prevention
+ - [arm*][xen] introduce xen_arch_need_swiotlb
+ - fsnotify: next_i is freed during fsnotify_unmount_inodes.
+ - [armhf] ASoC: eukrea-tlv320: Fix of_node_put() call with uninitialized
+ object (regression in 3.15)
+ - HID: i2c-hid: Do not free buffers in i2c_hid_stop() (regression in 3.15)
+ - ALSA: fireworks: fix an endianness bug for transaction length
+ (regression in 3.16)
+ - [armhf] mtd: nand: omap: Fix NAND enumeration on 3430 LDP
+ (regression in 3.13)
+ - ocfs2: fix the wrong directory passed to ocfs2_lookup_ino_from_name()
+ when link file (regression in 3.14)
+ - [powerpc*] Fix bad NULL pointer check in udbg_uart_getc_poll()
+ (regression in 3.12)
+ - nilfs2: fix the nilfs_iget() vs. nilfs_new_inode() races
+ - [armhf] OMAP4: PM: Only do static dependency configuration in
+ omap4_init_static_deps (regression in 3.11)
+ - [armel,armhf] Revert "ARM: 7830/1: delay: don't bother reporting bogomips
+ in /proc/cpuinfo" (regression in 3.12)
+ - gre: fix the inner mac header in nbma tunnel xmit path
+ (regression in 3.16.7-ckt3)
+ - netlink: Always copy on mmap TX.
+ - netlink: Don't reorder loads/stores before marking mmap netlink frame as
+ available
+ - batman-adv: Unify fragment size calculation (regression in 3.13)
+ - batman-adv: avoid NULL dereferences and fix if check (regression in 3.13)
+ - net: Fix stacked vlan offload features computation
+ - net: Reset secmark when scrubbing packet
+ - xen-netback: fixing the propagation of the transmit shaper timeout
+ (regression in 3.16)
+ - team: avoid possible underflow of count_pending value for notify_peers
+ and mcast_rejoin (regression in 3.12)
+ - usb: gadget: gadgetfs: Free memory allocated by memdup_user()
+ (regression in 3.15)
+ - iwlwifi: mvm: fix Rx with both chains (regression in 3.16)
+ - LOCKD: Fix a race when initialising nlmsvc_timeout (regression in 3.11)
+ - NFSv4.1: Fix client id trunking on Linux
+ - vhost-scsi: Add missing virtio-scsi -> TCM attribute conversion
+ - xhci: Check if slot is already in default state before moving it there
+ (regression in 3.14)
+ - USB: console: fix uninitialised ldisc semaphore (regression in 3.12)
+ - USB: console: fix potential use after free
+ - [armhf] usb: dwc3: gadget: Fix TRB preparation during SG
+ - [x86] ftrace/jprobes: Fix conflict between jprobes and function graph
+ tracing
+ - clk: Don't try to use a struct clk* after it could have been freed
+ - [x86] drm/i915: Evict CS TLBs between batches
+ - [xen] Revert "swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single"
+ (regression in 3.16.7-ckt4)
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt6
+ - ipvs: uninitialized data with IP_VS_IPV6
+ - netfilter: nfnetlink: validate nfnetlink header from batch
+ - time: settimeofday: Validate the values of tv from user
+ - drm/radeon: fix VM flush on cayman/aruba (v3)
+ - drm/radeon: fix VM flush on SI (v3)
+ - drm/radeon: fix VM flush on CIK (v3)
+ - drm/radeon: add a dpm quirk list (regression around 3.14)
+ - can: dev: fix crtlmode_supported check
+ - can: kvaser_usb: Don't free packets when tight on URBs
+ - drm/radeon: use rv515_ring_start on r5xx (regression in 3.12)
+ - PCI: Mark Atheros AR93xx to avoid bus reset (regression in 3.14)
+ - [x86] PCI: Clip bridge windows to fit in upstream windows
+ (regression in 3.16)
+ - [armhf] mvebu: completely disable hardware I/O coherency
+ - cifs: fix deadlock in cifs_ioctl_clone()
+ - ipr: wait for aborted command responses
+ - libata: allow sata_sil24 to opt-out of tag ordered submission
+ (regression in 3.14.4, 3.15)
+ - [media] vb2: fix vb2_thread_stop race conditions
+ - [i386/586] apic: Re-enable PCI_MSI support for non-SMP X86_32
+ (regression in 3.12)
+ - dm cache: share cache-metadata object across inactive and active DM
+ tables
+ - dm cache: fix problematic dual use of a single migration count variable
+ - Input: evdev - fix EVIOCG{type} ioctl
+ - tty: Fix pty master poll() after slave closes v2 (regression in 3.12)
+ - [armhf] bus: omap_l3_noc: Add resume hook to restore context
+ (regression in 3.16)
+ - decompress_bunzip2: off by one in get_next_block()
+ - kbuild: Fix removal of the debian/ directory (regression in 3.16)
+ - mm: get rid of radix tree gfp mask for pagecache_get_page
+ (regression in 3.16)
+ - regulator: core: fix race condition in regulator_put()
+ - ASoC: simple-card: Fix crash in asoc_simple_card_unref()
+ (regression in 3.15)
+ - [ppc64el] xmon: Fix another endiannes issue in RTAS call from xmon
+ - nfs: fix dio deadlock when O_DIRECT flag is flipped
+ - mac80211: properly set CCK flag in radiotap (regression in 3.12)
+ - [x86] drm/i915: Only fence tiled region of object.
+ - can: kvaser_usb: Do not sleep in atomic context
+ - can: kvaser_usb: Send correct context to URB completion
+ - rbd: fix rbd_dev_parent_get() when parent_overlap == 0
+ - rbd: drop parent_ref in rbd_dev_unprobe() unconditionally
+ - dm cache: fix missing ERR_PTR returns and handling
+ - dm thin: don't allow messages to be sent to a pool target in READ_ONLY
+ or FAIL mode
+ - [armhf] mvebu: don't set the PL310 in I/O coherency mode when I/O
+ coherency is disabled
+ - vm: add VM_FAULT_SIGSEGV handling support
+ - vm: make stack guard page errors return VM_FAULT_SIGSEGV rather than
+ SIGBUS
+ - perf: Tighten (and fix) the grouping condition
+ - iwlwifi: mvm: drop non VO frames when flushing (regression in 3.16)
+ - memcg: remove extra newlines from memcg oom kill log (regression in 3.15)
+ - ipv4: try to cache dst_entries which would cause a redirect
+ (regression in 3.16) (CVE-2015-1465)
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt7
+ - [ppc64el] powerpc: add little endian flag to syscall_get_arch()
+ - [arm64] Fix up /proc/cpuinfo
+ - cifs: Complete oplock break jobs before closing file handle
+ (regression in 3.15)
+ - [arm64,or1k] lib/checksum.c: fix carry in csum_tcpudp_nofold
+ - [mips*] Fix kernel lockup or crash after CPU offline/online
+ - md/raid5: fix another livelock caused by non-aligned writes.
+ (regression in 3.16)
+ - drm/radeon: fix PLLs on RS880 and older v2 (regression in 3.15)
+ (Closes: #770790)
+ - [armhf/armmp-lpae] 8299/1: mm: ensure local active ASID is marked as
+ allocated on rollover
+ - PCI: Handle read-only BARs on AMD CS553x devices
+ (regression in 3.16.7-ckt4)
+ - mm: pagewalk: call pte_hole() for VM_PFNMAP during walk_page_range
+ - nilfs2: fix deadlock of segment constructor over I_SYNC flag
+ - ip: zero sockaddr returned on error queue
+ - net: rps: fix cpu unplug
+ - ipv6: stop sending PTB packets for MTU < 1280
+ - udp_diag: Fix socket skipping within chain
+ - ping: Fix race in free in receive path
+ - net: don't OOPS on socket aio
+ - ipv4: tcp: get rid of ugly unicast_sock
+ - ppp: deflate: never return len larger than output buffer
+ - [x86] hyperv: Fix the error processing in netvsc_send()
+ - Bluetooth: ath3k: workaround the compatibility issue with xHCI controller
+ - ceph: introduce global empty snap context
+ - drm/vmwgfx: Don't use memory accounting for kernel-side fence objects
+ - net:socket: set msg_namelen to 0 if msg_name is passed as NULL in msghdr
+ struct from userland.
+ - virtio_pci: defer kfree until release callback
+
+ [ Ian Campbell ]
+ * [armhf] Add DTB for Olimex A20-OLinuXino-LIME2. (Closes: #777455)
+ * [armhf] Enable CONFIG_BACKLIGHT_GPIO as a module. (Closes: #778783)
+ * [armhf] Enable FB_SIMPLE on sunxi platform, backporting fixes and DTS
+ entries.
+
+ [ Ben Hutchings ]
+ * shm: add memfd.h to UAPI export list, so kdbus will build
+ * [x86] HPET force enable for e6xx based systems (Closes: #772951)
+ * vfs: read file_handle only once in handle_to_path (CVE-2015-1420)
+ * ASLR: fix stack randomization on 64-bit systems (CVE-2015-1593)
+ * Revert "quota: Switch ->get_dqblk() and ->set_dqblk() to use bytes as
+ space units" to avoid ABI change
+ * rmap: Fix ABI change in 3.16.7-ckt5
+ * perf: Fix ABI change in 3.16.7-ckt6
+ * mm: Fix pagecache_get_page() ABI change in 3.16.7-ckt6
+ * tcp: Fix ABI change in 3.16.7-ckt7
+ * [x86] ACPI / video: Add disable_native_backlight quirk for various
+ Samsung models and Dell XPS15 L521X (Closes: #772440)
+ * [x86] ALSA: Enable SND_SOC, SND_SOC_INTEL_SST, SND_SOC_INTEL_HASWELL_MACH,
+ SND_SOC_INTEL_BYT_RT5640_MACH, SND_SOC_INTEL_BYT_MAX98090_MACH as modules
+ (Closes: #773835)
+ * arcmsr: Backport changes up to Linux 3.18 (Closes: #698821)
+ * [x86] drm/i915: Quietly reject attempts to create non-pagealigned stolen
+ objects (Closes: #763155)
+ * KEYS: request_key() should reget expired keys rather than give EKEYEXPIRED
+ (Closes: #758870)
+ * drm: Enable DRM_BOCHS, DRM_QXL as modules
+ - qxl: Disable by default, as it is incompatible with wheezy's
+ xserver-xorg-video-qxl. It can be forced to load with module
+ parameter modeset=1.
+ * of.h: Keep extern declaration of of_* variables when !CONFIG_OF
+ (for simplefb)
+
+ [ Helge Deller ]
+ * [alpha] build debian-installer udeb packages
+ * [hppa] build virtio udeb packages
+
+ [ Uwe Kleine-König ]
+ * Add support for Bananapro board, thanks Karsten Merker for the patch.
+ (Closes: 779311)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 01 Mar 2015 15:13:40 +0000
+
+linux (3.16.7-ckt4-3) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [sh4] ftrace: Remove -m32 option from recordmcount.pl (Closes: #775611)
+ * [x86] Revert "KVM: Fix of previously incomplete fix for CVE-2014-8480"
+ as that issue does not affect 3.16
+ * [amd64] tls, ldt: Stop checking lm in LDT_empty (regression in 3.16.7-ckt4)
+ * [x86] tls: Interpret an all-zero struct user_desc as "no segment"
+ (regression in 3.16.7-ckt4)
+ * net: sctp: fix slab corruption from use after free on INIT collisions
+ (CVE-2015-1421)
+
+ [ Ian Campbell ]
+ * [xen] cancel ballooning if adding new memory failed (Closes: #776448)
+ * [arm64] Only use the virtual counter (CNTVCT) on arm64. (Closes: #776957)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 03 Feb 2015 20:07:06 +0000
+
+linux-tools (3.16-3) unstable; urgency=medium
+
+ * linux-tools: Fix build configuration to avoid linking perf with libbfd
+ (Closes: #763002)
+ * linux-tools: Add a check that perf is not linked with libbfd
+ * [arm64] Enable building linux-tools, thanks to Steve Capper
+ (Closes: #771340)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 02 Feb 2015 22:05:59 +0000
+
+linux (3.16.7-ckt4-2) unstable; urgency=medium
+
+ [ Ian Campbell ]
+ * [arm64] udeb: Remove zlib-modules, as ZLIB_DEFLATE is now
+ built-in (fixes FTBFS)
+ * [xen] Revert "swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single"
+ (Closes: #776237)
+
+ [ Helge Deller ]
+ * [hppa] udeb: Fix duplicate modules in ata-modules, pata-modules
+ (Closes: #770102)
+ * [hppa] Enable CONFIG_PPDEV to avoid CUPS complaining with systemd
+
+ [ Ben Hutchings ]
+ * crypto: Fix unprivileged arbitrary module loading (CVE-2013-7421,
+ CVE-2014-9644)
+ - prefix module autoloading with "crypto-"
+ - include crypto- module prefix in template
+ - add missing crypto module aliases
+ * [x86] KVM: Fix of previously incomplete fix for CVE-2014-8480
+ * [x86] KVM: SYSENTER emulation is broken (CVE-2015-0239)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 27 Jan 2015 03:57:26 +0000
+
+linux (3.16.7-ckt4-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt3
+ - [x86] kvm: use alternatives for VMCALL vs. VMMCALL if kernel text is
+ read-only
+ - [sparc*] Fix constraints on swab helpers.
+ - inetdevice: fixed signed integer overflow
+ - ieee802154: fix error handling in ieee802154fake_probe()
+ - bonding: fix curr_active_slave/carrier with loadbalance arp monitoring
+ (regression in 3.14)
+ - pptp: fix stack info leak in pptp_getname()
+ - ipx: fix locking regression in ipx_sendmsg and ipx_recvmsg
+ - net/mlx4_en: Add VXLAN ndo calls to the PF net device ops too
+ (regression in 3.15)
+ - net/mlx4_en: Advertize encapsulation offloads features only when VXLAN
+ tunnel is set (regression in 3.15)
+ - target: Don't call TFO->write_pending if data_length == 0
+ - vhost-scsi: Take configfs group dependency during VHOST_SCSI_SET_ENDPOINT
+ - iser-target: Handle DEVICE_REMOVAL event on network portal listener
+ correctly
+ - ASoC: dpcm: Fix race between FE/BE updates and trigger
+ - mac80211: Fix regression that triggers a kernel BUG with CCMP
+ (regression in 3.13)
+ - rt2x00: do not align payload on modern H/W
+ - bitops: Fix shift overflow in GENMASK macros
+ - [x86] Require exact match for 'noxsave' command line option
+ - [x86] drm/i915: Kick fbdev before vgacon (regression in 3.16)
+ - can: dev: avoid calling kfree_skb() from interrupt context
+ - [x86] mm: Set NX across entire PMD at boot
+ - of: Fix crash if an earlycon driver is not found
+ - btrfs: fix lockups from btrfs_clear_path_blocking
+ - [i386/686-pae,armhf/armmp-lpae] PCI: Support 64-bit bridge windows if we
+ have 64-bit dma_addr_t (regression in 3.14)
+ - ACPI / PM: Ignore wakeup setting if the ACPI companion can't wake up
+ (regression in 3.13)
+ - drm/radeon: fix endian swapping in vbios fetch for tdp table
+ - Bluetooth: Fix endian and alignment issue with ath3k version handling
+ - nfs: Don't busy-wait on SIGKILL in __nfs_iocounter_wait
+ - [armhf] 8109/1: mm: Modify pte_write and pmd_write logic for LPAE
+ - aio: fix incorrect dirty pages accouting when truncating AIO ring buffer
+ (regression in 3.12)
+ - [armel,armhf] mvebu: add missing of_node_put() call in coherency.c
+ (regression in 3.16)
+ - iio: Fix IIO_EVENT_CODE_EXTRACT_DIR bit mask
+ - spi: Fix mapping from vmalloc-ed buffer to scatter list
+ - SUNRPC: Fix locking around callback channel reply receive
+ - nfsd: Fix slot wake up race in the nfsv4.1 callback code
+ - bnx2fc: do not add shared skbs to the fcoe_rx_list
+ - Revert "xhci: clear root port wake on bits if controller isn't wake-up
+ capable" (regression in 3.16)
+ - usb: xhci: rework root port wake bits if controller isn't allowed to
+ wakeup
+ - ixgbe: Correctly disable VLAN filter in promiscuous mode
+ (regression in 3.16)
+ - ixgbe: fix use after free adapter->state test in ixgbe_remove/ixgbe_probe
+ (regression in 3.15)
+ - ALSA: hda - Limit 40bit DMA for AMD HDMI controllers
+ - PCI/MSI: Add device flag indicating that 64-bit MSIs don't work
+ - gpu/radeon: Set flag to indicate broken 64-bit MSI
+ - sound/radeon: Move 64-bit MSI quirk from arch to driver
+ - [powerpc*] pseries: Honor the generic "no_64bit_msi" flag
+ - [mips*] fix EVA & non-SMP non-FPU FP context signal handling
+ (regression in 3.15)
+ - [x86] drm/i915: Ignore SURFLIVE and flip counter when the GPU gets reset
+ (regression in 3.16)
+ - [powerpc*] 32 bit getcpu VDSO function uses 64 bit instructions
+ - [armhf] 8222/1: mvebu: enable strex backoff delay
+ - [armel,armhf] 8226/1: cacheflush: get rid of restarting block
+ - btrfs: zero out left over bytes after processing compression streams
+ - [armhf] net: sun4i-emac: fix memory leak on bad packet
+ - [armhf] i2c: omap: fix NACK and Arbitration Lost irq handling
+ - [media] s2255drv: fix payload size for JPG, MJPEG (regression in 3.15)
+ - nouveau: move the hotplug ignore to correct place. (regression in 3.16.4)
+ - mm: frontswap: invalidate expired data on a dup-store failure
+ - mm/vmpressure.c: fix race in vmpressure_work_fn()
+ - xen-netfront: Remove BUGs on paged skb data which crosses a page boundary
+ - drivers/input/evdev.c: don't kfree() a vmalloc address
+ (regression in 3.13)
+ - mm: fix anon_vma_clone() error treatment (regression in 3.12)
+ - ip_tunnel: the lack of vti_link_ops' dellink() cause kernel panic
+ - vxlan: Fix race condition between vxlan_sock_add and vxlan_sock_release
+ - bond: Check length of IFLA_BOND_ARP_IP_TARGET attributes
+ - gre: Set inner mac header in gro complete (regression in 3.16.7-ckt1)
+ - [mips*] bpf: Fix broken BPF_MOD
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt4
+ - [x86] drm/i915: don't warn if backlight unexpectedly enabled
+ (Closes: #757805)
+ - [x86] drm/i915/dp: only use training pattern 3 on platforms that
+ support it (regression in 3.15)
+ - btrfs: don't go readonly on existing qgroup items
+ - writeback: fix a subtle race condition in I_DIRTY clearing
+ - [s390*] KVM: flush CPU on load control
+ - UBI: Fix double free after do_sync_erase()
+ - [x86] Drivers: hv: util: make struct hv_do_fcopy match Hyper-V host
+ messages (regression for amd64 in 3.16.7)
+ - Drivers: hv: vmbus: Fix a race condition when unregistering a device
+ - misc: genwqe: check for error from get_user_pages_fast()
+ - drbd: merge_bvec_fn: properly remap bvm->bi_bdev
+ - PCI: Restore detection of read-only BARs
+ - scsi: correct return values for .eh_abort_handler implementations
+ - genhd: check for int overflow in disk_expand_part_tbl()
+ - Btrfs: make sure we wait on logged extents when fsycning two subvols
+ - Btrfs: make sure logged extents complete in the current transaction V3
+ - Btrfs: do not move em to modified list when unpinning
+ - [armhf] mvebu: disable I/O coherency on non-SMP situations on
+ Armada 370/375/38x/XP
+ - nfs41: fix nfs4_proc_layoutget error handling
+ - USB: cdc-acm: check for valid interfaces
+ - HID: i2c-hid: fix race condition reading reports
+ - [armhf] mfd: twl4030-power: Fix regression with missing compatible flag
+ (regression in 3.16)
+ - [armhf] serial: samsung: wait for transfer completion before clock
+ disable
+ - n_tty: Fix read_buf race condition, increment read_head after pushing
+ data (regression in 3.12)
+ - dm cache: only use overwrite optimisation for promotion when in
+ writeback mode
+ - dm cache: dirty flag was mistakenly being cleared when promoting via
+ overwrite
+ - dm bufio: fix memleak when using a dm_buffer's inline bio
+ - iwlwifi: dvm: fix flush support for old firmware (regression in
+ 3.16.7-ckt1)
+ - iwlwifi: mvm: update values for Smart Fifo (regression in 3.14)
+ - iommu/vt-d: Fix an off-by-one bug in __domain_mapping()
+ - dm crypt: use memzero_explicit for on-stack buffer
+ - mnt: Implicitly add MNT_NODEV on remount when it was implicitly added by
+ mount (regression in 3.16.3)
+ - umount: Disallow unprivileged mount force
+ - md/raid5: fetch_block must fetch all the blocks handle_stripe_dirtying
+ wants.
+ - [x86] drm/i915: Only warn the first time we attempt to mmio whilst
+ suspended (regression in 3.15)
+ - drm/vmwgfx: Fix error printout on signals pending
+ - drm/radeon: check the right ring in radeon_evict_flags()
+ - swiotlb-xen: pass dev_addr to xen_dma_unmap_page and
+ xen_dma_sync_single_for_cpu
+ - [armhf/armmp] swiotlb-xen: remove BUG_ON in xen_bus_to_phys
+ - swiotlb-xen: call xen_dma_sync_single_for_device when appropriate
+ - swiotlb-xen: pass dev_addr to swiotlb_tbl_unmap_single
+ - [powerpc] book3s: Fix partial invalidation of TLBs in MCE code.
+ - [armhf] clocksource: arch_timer: Fix code to use physical timers when
+ requested (regression in 3.11)
+ - userns: Prevent evasion of group negative permissions through a userns
+ (CVE-2014-8989):
+ + Don't allow setgroups until a gid mapping has been setablished
+ + Don't allow unprivileged creation of gid mappings
+ + Add a knob to disable setgroups on a per user namespace basis
+ + Allow setting gid_maps without privilege when setgroups is disabled
+ - KEYS: Fix stale key registration at error path
+ - blk-mq: Fix a use-after-free
+ - blk-mq: Fix a race between bt_clear_tag() and bt_get()
+ - nfsd4: fix xdr4 count of server in fs_location4 (regression in 3.16)
+ - [x86] drm/i915: Don't complain about stolen conflicts on gen3
+ (regression in 3.12)
+ - [x86] kvm: Clear paravirt_enabled on KVM guests for espfix32's benefit
+ (CVE-2014-8134)
+ - blk-mq: Fix uninitialized kobject at CPU hotplugging
+ - ncpfs: return proper error from NCP_IOC_SETROOT ioctl
+ - [armhf] rtc: omap: fix clock-source configuration (regression in 3.16)
+ - exit: pidns: alloc_pid() leaks pid_namespace if child_reaper is exiting
+ - [amd64] switch_to(): Load TLS descriptors before switching DS and ES
+ (CVE-2014-9419)
+ - [x86] KVM: nVMX: Disable unrestricted mode if ept=0 (regression in 3.13)
+ - [x86] KVM: em_ret_far overrides cpl (follow-up to CVE-2014-3647 fix)
+ - pstore-ram: Fix hangs by using write-combine mappings
+ - HID: i2c-hid: prevent buffer overflow in early IRQ
+ - mac80211: fix multicast LED blinking and counter (regression in
+ 3.16.7-ckt2)
+ - cfg80211: avoid mem leak on driver hint set
+ - nl80211: check matches array length before acessing it
+ - cfg80211: don't WARN about two consecutive Country IE hint
+ (regression in 3.14)
+ - tracing/sched: Check preempt_count() for current when reading task->state
+ (regression in 3.13)
+ - [x86] tls: Validate TLS entries to protect espfix (CVE-2014-8133)
+ - [x86] tls: Disallow unusual TLS segments
+ - isofs: Fix infinite looping over CE entries (CVE-2014-9420)
+ - mac80211: free management frame keys when removing station
+ - ceph: do_sync is never initialized (regression in 3.12)
+ - mnt: Fix a memory stomp in umount (regression in 3.14)
+ - ocfs2: fix journal commit deadlock
+ - md/bitmap: always wait for writes on unplug.
+ - [armhf] mmc: omap_hsmmc: Fix UHS card with DDR50 support (regression in
+ 3.16)
+ - [x86] mmc: sdhci-pci-o2micro: Fix Dell E5440 issue (regression in 3.14)
+ - dm space map metadata: fix sm_bootstrap_get_nr_blocks()
+ - dm thin: fix a race in thin_dtr
+ - eCryptfs: Force RO mount when encrypted view is enabled
+ - eCryptfs: Remove buggy and unnecessary write in file name decode routine
+ - tcm_loop: Fix wrong I_T nexus association
+ - Btrfs: fix fs corruption on transaction abort if device supports discard
+ - [x86] perf/intel/uncore: Make sure only uncore events are collected
+ - perf: Fix events installation during moving group
+ - iscsi,iser-target: Initiate termination only once (regression in 3.16.4)
+ - iser-target: Fix flush + disconnect completion handling
+ - iser-target: Parallelize CM connection establishment
+ - iser-target: Fix connected_handler + teardown flow race
+ - iser-target: Handle ADDR_CHANGE event for listener cm_id
+ - iser-target: Fix implicit termination of connections
+ - iser-target: Allocate PI contexts dynamically
+ - iser-target: Fix NULL dereference in SW mode DIF
+ - iscsi,iser-target: Expose supported protection ops according to t10_pi
+ - genirq: Prevent proc race against freeing of irq descriptors
+ - [powerpc] powernv: Switch off MMU before entering nap/sleep/rvwinkle mode
+ - [x86] storvsc: ring buffer failures may result in I/O freeze
+ - iscsi-target: Fail connection on short sendmsg writes
+ - [x86] drm/i915: Invalidate media caches on gen7
+ - [x86] drm/i915: Force the CS stall for invalidate flushes
+ - dm thin: fix inability to discard blocks when in out-of-data-space mode
+ - dm thin: fix missing out-of-data-space to write mode transition if blocks
+ are released
+ - dm: fix missed error code if .end_io isn't implemented by target_type
+ - [armhf] i2c: mv64xxx: rework offload support to fix several problems
+ (regression in 3.12)
+ - [x86] tls: Don't validate lm in set_thread_area() after all
+ - ALSA: usb-audio: extend KEF X300A FU 10 tweak to Arcam rPAC
+ - tick/powerclamp: Remove tick_nohz_idle abuse
+ - audit: don't attempt to lookup PIDs when changing PID filtering audit
+ rules (regression in 3.15)
+ - audit: use supplied gfp_mask from audit_buffer in
+ kauditd_send_multicast_skb (regression in 3.16)
+ - [arm64] kernel: fix __cpu_suspend mm switch on warm-boot
+ - audit: restore AUDIT_LOGINUID unset ABI (regression in 3.10)
+ - Btrfs: fix loop writing of async reclaim
+ - isofs: Fix unchecked printing of ER records (CVE-2014-9584)
+ - crypto: af_alg - fix backlog handling
+ - udf: Check path length when reading symlink
+ - udf: Verify i_size when loading inode
+ - udf: Verify symlink size before loading it
+ - udf: Check component length before reading it
+ - [x86] platform/chrome: chromeos_laptop - Add support for Acer C720
+ (Closes: #774209)
+ - batman-adv: Calculate extra tail size based on queued fragments
+ (Closes: #774155) (CVE-2014-9428)
+ - vfs: move d_rcu from overlapping d_child to overlapping d_alias
+ - vfs: deal with deadlock in d_walk() (CVE-2014-8559)
+ - KEYS: close race between key lookup and freeing (CVE-2014-9529)
+
+ [ Ben Hutchings ]
+ * [sh4] Build with gcc-4.8 (Closes: #772602)
+ * Fix inconsistent ABI name generation in
+ debian/bin/{abiupdate,buildcheck,gencontrol}.py (Closes: #773233)
+ * iov: Revert unwanted ABI 'fix' in 3.16.7-ckt2-1
+ * [armel,armhf] thread_info: Fix ABI change in 3.16.7-ckt3
+ * PCI: Fix ABI change in 3.16.7-ckt3
+ * Ignore some ABI changes that don't appear to affect OOT modules:
+ - Removal of __add_pages(), __remove_pages(), of_device_is_stdout_path(),
+ clk_divider_ro_ops, tick_nohz_idle_enter, tick_nohz_idle_exit
+ - Changes to ASoC functions
+ * [arm64] Enable PSTORE as built-in and EFI_VARS_PSTORE as module;
+ ensure efivars and efi-pstore are loaded on EFI systems (Closes: #773309)
+ * hwmon: Enable SENSORS_NCT6683 as module (Closes: #774372)
+ * udeb: Add i2c-designware-{core,platform} to i2c-modules and i2c-hid to
+ input-modules (Closes: #772578)
+ * [x86] ACPI / video: Run _BCL before deciding registering backlight
+ (regression in 3.16) (Closes: #762285)
+ * [amd64] Enable EFI_MIXED to support Bay Trail systems
+ * efi: Expose underlying UEFI firmware platform size to userland, to
+ support installation on Bay Trail systems (Closes: #775191)
+ * vfs: Changes for compatibility with CVE-2014-8559 fix:
+ - aufs: move d_rcu from overlapping d_child to overlapping d_alias
+ - vfs: Avoid ABI change for dentry union changes
+ * [powerpc/powerpc{,-smp}] video/fb: Change FB_RADEON back to module
+ (Closes: #748398) (thanks to John Paul Adrian Glaubitz for thoroughly
+ testing this change)
+ * userns: Fix ABI change in 3.16.7-ckt4
+ * netfilter: conntrack: disable generic tracking for known protocols
+ (CVE-2014-8160)
+ * [amd64] vdso: Fix the vdso address randomization algorithm (CVE-2014-9585)
+
+ [ Ian Campbell ]
+ * [armhf] Enable support for support OMAP5432 uEVM by enabling:
+ TI_SOC_THERMAL, MFD_PALMAS, REGULATOR_PALMAS, REGULATOR_PBIAS,
+ REGULATOR_TI_ABB, PINCTRL_PALMAS, GPIO_PALMAS, RTC_DRV_PALMAS,
+ OMAP5_DSS_HDMI, DISPLAY_ENCODER_TPD12S015, DISPLAY_CONNECTOR_HDMI,
+ USB_DWC3_OMAP, EXTCON_PALMAS, TI_EMIF and DDR.
+ Based on a patch from Chen Baozi (Closes: #772953)
+ * [armel] Change configuration to reduce kernel image size
+ - Warn if image size leaves less than 1% spare capacity in the flash. This
+ allows some slack for growth over the lifetime of a stable release.
+ - [/kirkwood] Disable RD_LZO and RD_LZ4
+ - [/kirkwood] mm: Disable KSM
+ - [/kirkwood] Disable CHECKPOINT_RESTORE
+ - [/kirkwood] Disable ZSMALLOC
+ - [/kirkwood] Disable CRYPTO_FIPS
+ - [/kirkwood] Disable NET_MPLS_GSO
+ - [/kirkwood] Disable NETLINK_MMAP
+ - [/kirkwood] Disable PROFILING
+ - [/kirkwood] Disable BPF_JIT
+ - [/kirkwood] Disable KPROBES
+ - [/ixp4xx,orion5x]: Disable RD_LZO
+ - [/ixp4xx,orion5x]: Disable PROFILING
+ - [/orion5x]: Make SERIO and dependants modular
+ * [arhmf] Add device-tree for LinkSprite pcDuino V3. Patch from Karsten
+ Merker (Closes: #774067)
+ * [xen] More netback fixes (including reintroducing support for
+ feature-rx-notify, which was regressed by the fix to #767261).
+ * Disable TSO in mv643xx_eth driver by default again, since previous fix
+ appears to not work on all platforms (Closes: #764162).
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 16 Jan 2015 00:15:12 +0000
+
+linux (3.16.7-ckt2-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt1
+ - drm/tilcdc: Fix the error path in tilcdc_load()
+ - usb: phy: return -ENODEV on failure of try_module_get
+ - PM / clk: Fix crash in clocks management code if !CONFIG_PM_RUNTIME
+ - rt2x00: support Ralink 5362.
+ - wireless: rt2x00: add new rt2800usb devices
+ - NFS: Fix /proc/fs/nfsfs/servers and /proc/fs/nfsfs/volumes
+ - nfs: fix duplicate proc entries
+ - mm: page_alloc: fix zone allocation fairness on UP
+ - ext4: check EA value offset when loading
+ - jbd2: free bh when descriptor block checksum fails
+ - ext4: don't check quota format when there are no quota files
+ - target: Fix queue full status NULL pointer for SCF_TRANSPORT_TASK_SENSE
+ - vfs: fix data corruption when blocksize < pagesize for mmaped data
+ - ext4: fix mmap data corruption when blocksize < pagesize
+ - ext4: grab missed write_count for EXT4_IOC_SWAP_BOOT
+ - qla_target: don't delete changed nacls
+ - target: Fix APTPL metadata handling for dynamic MappedLUNs
+ - iser-target: Disable TX completion interrupt coalescing
+ - ext4: don't orphan or truncate the boot loader inode
+ - ext4: add ext4_iget_normal() which is to be used for dir tree lookups
+ - ext4: fix reservation overflow in ext4_da_write_begin
+ - ext4: Replace open coded mdata csum feature to helper function
+ - ext4: move error report out of atomic context in ext4_init_block_bitmap()
+ - ext4: check s_chksum_driver when looking for bg csum presence
+ - drm/radeon: fix speaker allocation setup
+ - drm/radeon: use gart memory for DMA ring tests
+ - random: add and use memzero_explicit() for clearing data
+ - freezer: Do not freeze tasks killed by OOM killer
+ - OOM, PM: OOM killed task shouldn't escape PM suspend
+ - [mips*/loongson-2f] loongson2_cpufreq: Fix CPU clock rate setting mismerge
+ - drm/cirrus: bind also to qemu-xen-traditional
+ - cpufreq: intel_pstate: Fix setting max_perf_pct in performance policy
+ - cpufreq: expose scaling_cur_freq sysfs file for set_policy() drivers
+ - cpufreq: intel_pstate: Reflect current no_turbo state correctly
+ - [x86] intel_pstate: Don't lose sysfs settings during cpu offline
+ - [x86] intel_pstate: Fix BYT frequency reporting
+ - [x86] intel_pstate: Correct BYT VID values.
+ - [x86] kvm: don't kill guest on unknown exit reason
+ - kvm: fix excessive pages un-pinning in kvm_iommu_map error path.
+ (CVE-2014-8369)
+ - vfs: be careful with nd->inode in path_init() and follow_dotdot_rcu()
+ - pstore: Fix duplicate {console,ftrace}-efi entries
+ - [x86] bpf_jit: fix two bugs in eBPF JIT compiler (regression in 3.16)
+ - vxlan: fix a use after free in vxlan_encap_bypass
+ - vxlan: using pskb_may_pull as early as possible
+ - vxlan: fix a free after use
+ - ipv4: dst_entry leak in ip_send_unicast_reply()
+ - ipv4: fix a potential use after free in ip_tunnel_core.c
+ (regression in 3.11)
+ - net: tso: fix unaligned access to crafted TCP header in helper API
+ - [x86] hyperv: Fix the total_data_buflen in send path
+ - tcp: md5: do not use alloc_percpu()
+ - macvlan: fix a race on port dismantle and possible skb leaks
+ (regression in 3.16)
+ - net/mlx4_en: Don't attempt to TX offload the outer UDP checksum for VXLAN
+ (regression in 3.14)
+ - gre: Use inner mac length when computing tunnel length
+ (regression in 3.14)
+ - [armhf] spi: pl022: Fix incorrect dma_unmap_sg
+ - mac80211: fix typo in starting baserate for rts_cts_rate_idx
+ - staging: comedi: (regression) channel list must be set for COMEDI_CMD
+ ioctl (regression in 3.15)
+ - nfsd4: fix response size estimation for OP_SEQUENCE (regression in 3.16)
+ - quota: Properly return errors from dquot_writeback_dquots()
+ - i3200_edac: Report CE events properly
+ - i82860_edac: Report CE events properly
+ - cpc925_edac: Report UE events properly
+ - e7xxx_edac: Report CE events properly
+ - scsi: Fix error handling in SCSI_IOCTL_SEND_COMMAND
+ - usb: serial: ftdi_sio: add "bricked" FTDI device PID
+ - [armhf] Revert "usb: dwc3: dwc3-omap: Disable/Enable only wrapper
+ interrupts in prepare/complete" (regression in 3.16)
+ - usb: gadget: f_fs: remove redundant ffs_data_get() (regression in 3.14)
+ - [armhf] usb: ffs: fix regression when quirk_ep_out_aligned_size flag is
+ set (regression in 3.15)
+ - [armhf] usb: musb: dsps: start OTG timer on resume again
+ (regression in 3.16.6)
+ - usb: gadget: udc: core: fix kernel oops with soft-connect
+ - nfsd4: fix crash on unknown operation number
+ - Revert "iwlwifi: mvm: treat EAPOLs like mgmt frames wrt rate"
+ (regression in 3.16.4)
+ - [armhf] usb: dwc3: gadget: Properly initialize LINK TRB
+ - posix-timers: Fix stack info leak in timer_create()
+ - futex: Fix a race condition between REQUEUE_PI and task death
+ - ALSA: bebob: Uninitialized id returned by saffirepro_both_clk_src_get
+ - PM / Sleep: fix async suspend_late/freeze_late error handling
+ (regression in 3.15)
+ - Revert "block: all blk-mq requests are tagged" (regression in 3.16)
+ - ALSA: pcm: Zero-clear reserved fields of PCM status ioctl in compat mode
+ - zap_pte_range: update addr when forcing flush after TLB batching faiure
+ - staging: comedi: fix memory leak / bad pointer freeing for chanlist
+ (regression in 3.15)
+ - [x86] drm/i915: Ignore VBT backlight check on Macbook 2, 1
+ (regression in 3.15)
+ - [i386/686-pae] pageattr: Prevent overflow in slow_virt_to_phys() for
+ X86_PAE
+ - [x86] ACPI / EC: Fix regression due to conflicting firmware behavior
+ between Samsung and Acer. (regression in 3.16.3)
+ - mm: free compound page with correct order
+ - lib/bitmap.c: fix undefined shift in __bitmap_shift_{left|right}()
+ - ext4: fix overflow when updating superblock backups after resize
+ - ext4: fix oops when loading block bitmap failed
+ - ext4: enable journal checksum when metadata checksum feature enabled
+ - ext4: prevent bugon on race between write/fcntl
+ - ext4: bail out from make_indexed_dir() on first error
+ - PCI: Rename sysfs 'enabled' file back to 'enable' (regression in 3.13)
+ - fs: allow open(dir, O_TMPFILE|..., 0) with mode 0
+ - [arm*] tracing/syscalls: Ignore numbers outside NR_syscalls' range
+ - nfs: fix kernel warning when removing proc entry
+ http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt2
+ - rbd: Fix error recovery in rbd_obj_read_sync()
+ - regulator: max77693: Fix use of uninitialized regulator config
+ - xhci: no switching back on non-ULT Haswell (regression in 3.12)
+ - Btrfs: fix kfree on list_head in btrfs_lookup_csums_range error cleanup
+ - ocfs2: fix breakage in o2net_send_tcp_msg() (regression in 3.15)
+ - [armhf] phy: omap-usb2: Enable runtime PM of omap-usb2 phy properly
+ (regression in 3.16)
+ - USB: cdc-acm: add quirk for control-line state requests
+ (regression in 3.16)
+ - sysfs: driver core: Fix glue dir race condition by gdp_mutex
+ - drm/nouveau: make sure display hardware is reinitialised on runtime
+ resume (regression in 3.15)
+ - drm/nv50/disp: fix dpms regression on certain boards
+ - drm/nouveau/bios: memset dcb struct to zero before parsing
+ - GFS2: Make rename not save dirent location (regression in 3.14)
+ - netfilter: ipset: off by one in ip_set_nfnl_get_byindex()
+ - netfilter: nf_tables: check for NULL in nf_tables_newchain pcpu stats
+ allocation (regression in 3.16)
+ - netfilter: nfnetlink_log: fix maximum packet length logged to userspace
+ - netfilter: nft_compat: fix wrong target lookup in nft_target_select_ops()
+ - mmc: core: sdio: Fix unconditional wake_up_process() on sdio thread
+ (regression in 3.16)
+ - mmc: don't request CD IRQ until mmc_start_host()
+ - fs: make cont_expand_zero interruptible
+ - UBIFS: fix a race condition
+ - [x86] fpu: __restore_xstate_sig()->math_state_restore() needs
+ preempt_disable()
+ - [x86] fpu: shift drop_init_fpu() from save_xstate_sig() to
+ handle_signal()
+ - perf: Fix unclone_ctx() vs. locking
+ - evm: properly handle INTEGRITY_NOXATTRS EVM status
+ - [alpha] vfs: missing data dependency barrier in prepend_name()
+ - jffs2: kill wbuf_queued/wbuf_dwork_lock
+ - fix misuses of f_count() in ppp and netlink
+ - sched: Use dl_bw_of() under RCU read lock
+ - [s390*] topology: call set_sched_topology early
+ - [armhf] mfd: ti_am335x_tscadc: Fix TSC operation after ADC continouous
+ mode (regression in 3.14)
+ - [armhf] mfd: ti_am335x_tscadc: Fix TSC resume (regression in 3.14)
+ - selinux: fix inode security list corruption
+ - blk-mq: fix potential hang if rolling wakeup depth is too high
+ (regression in 3.16)
+ - block: fix alignment_offset math that assumes io_min is a power-of-2
+ - drm/nouveau/gpio: rename g92 class to g94 (regression in 3.16)
+ - [x86] drm/i915: Do not leak pages when freeing userptr objects
+ - media: v4l2-common: fix overflow in v4l_bound_align_image()
+ - sched: Use rq->rd in sched_setaffinity() under RCU read lock
+ - [powerpc*] use device_online/offline() instead of cpu_up/down()
+ (regression in 3.11)
+ - xen-blkback: fix leak on grant map error path
+ - net: skb_fclone_busy() needs to detect orphaned skb (regression in 3.16)
+ - rbd: avoid format-security warning inside alloc_workqueue()
+ - rbd: fix error return code in rbd_dev_device_setup()
+ - media: ttusb-dec: buffer overflow in ioctl (CVE-2014-8884)
+ - dm raid: ensure superblock's size matches device's logical block size
+ - ahci: disable MSI instead of NCQ on Samsung pci-e SSDs on macbooks
+ (Closes: #772435)
+ - mac80211: properly flush delayed scan work on interface removal
+ - [i386] microcode, AMD: Fix early ucode loading on 32-bit
+ (regression in 3.14)
+ - [armhf] mvebu: armada xp: Generalize use of i2c quirk
+ (regression in 3.12)
+ - mac80211: fix use-after-free in defragmentation
+ - iwlwifi: fix RFkill while calibrating (regression in 3.16)
+ - tun: Fix csum_start with VLAN acceleration (regression in 3.12)
+ - macvtap: Fix csum_start when VLAN tags are present
+ - dm thin: grab a virtual cell before looking up the mapping
+ - [x86] KVM: Fix uninitialized op->type for some immediate values
+ - [powerpc*] hwrng: pseries - port to new read API and fix stack corruption
+ - drm/radeon: set correct CE ram size for CIK
+ - drm/radeon: make sure mode init is complete in bandwidth_update
+ - cpufreq: Avoid crash in resume on SMP without OPP (regresion in 3.12)
+ - [i386] microcode, AMD: Fix ucode patch stashing on 32-bit
+ (regression in 3.14)
+ - [armhf] mfd: twl4030-power: Fix poweroff with PM configuration enabled
+ (regression in 3.16)
+ - [hppa] Use compat layer for msgctl, shmat, shmctl and semtimedop syscalls
+ - tracing: Do not busy wait in buffer splice (regresion in 3.16)
+ - param: fix crash on bad kernel arguments (regression in 3.16)
+ - audit: keep inode pinned
+ - drm/radeon: add locking around atombios scratch space usage
+ - nfs: fix pnfs direct write memory leak
+ - nfs: Fix use of uninitialized variable in nfs_getattr()
+ - NFSv4: Ensure that we remove NFSv4.0 delegations when state has expired
+ - NFSv4.1: nfs41_clear_delegation_stateid shouldn't trust
+ NFS_DELEGATED_STATE
+ - NFSv4: Fix races between nfs_remove_bad_delegation() and delegation
+ return
+ - NFSv4: Ensure that we call FREE_STATEID when NFSv4.x stateids are revoked
+ - NFS: Don't try to reclaim delegation open state if recovery failed
+ - [arm64] efi: Fix stub cache maintenance
+ - [arm64] __clear_user: handle exceptions on strb (CVE-2014-7843)
+ - [arm64] Correct the race condition in aarch64_insn_patch_text_sync()
+ - Fix thinko in iov_iter_single_seg_count
+ - libceph: do not crash on large auth tickets
+ - [armel,armhf] 8191/1: decompressor: ensure I-side picks up relocated code
+ - zram: avoid kunmap_atomic() of a NULL pointer
+ - firewire: cdev: prevent kernel stack leaking into ioctl arguments
+ - md: Always set RECOVERY_NEEDED when clearing RECOVERY_FROZEN
+ (regression in 3.13)
+ - vxlan: Do not reuse sockets for a different address family
+ - net: sctp: fix NULL pointer dereference in af->from_addr_param on
+ malformed packet (CVE-2014-7841)
+ - net: sctp: fix memory leak in auth key management
+ - [armel,m68k] ipv6: fix IPV6_PKTINFO with v4 mapped (regression in 3.15)
+ - netlink: Properly unbind in error conditions. (regression in 3.16)
+ - smsc911x: power-up phydev before doing a software reset.
+ (regression in 3.14)
+ - [sparc*] sunvdc: limit each sg segment to a page
+ - [sparc*] vio: fix reuse of vio_dring slot
+ - drm/radeon: initialize sadb to NULL in the audio code
+ - [x86] KVM: Don't report guest userspace emulation error to userspace
+ - crypto: caam - remove duplicated sg copy functions
+ - audit: correct AUDIT_GET_FEATURE return message type
+ - memory-hotplug: Remove "weak" from memory_block_size_bytes() declaration
+ (regression in 3.14)
+ - [s390*] vmcore: Remove "weak" from function declarations
+ - [s390*] clocksource: Remove "weak" from clocksource_default_clock()
+ declaration
+ - IB/core: Clear AH attr variable to prevent garbage data
+ - [amd64] x32, audit: Fix x32's AUDIT_ARCH wrt audit
+ - [armhf] dts: am335x-evm: Fix 5th NAND partition's name
+ (regression in 3.15)
+ - dell-wmi: Fix access out of memory
+
+ [ Ben Hutchings ]
+ * [x86] Complete Thunderbolt support on Apple computers (Closes: #768653)
+ - PCI: Add pci_fixup_suspend_late quirk pass
+ - PCI: Suspend/resume quirks for Apple thunderbolt
+ - Enable THUNDERBOLT as module
+ * [amd64] traps: Stop using IST for #SS (CVE-2014-9090)
+ * [amd64] traps: Fix the espfix64 #DF fixup and rewrite it in C
+ * [amd64] traps: Rework bad_iret
+ * [amd64] asm/traps: Disable tracing and kprobes in fixup_bad_iret and
+ sync_regs
+ * Fix ABI changes in iovec, of, perf and truncate
+ * Ignore ABI changes in iwlwifi, KVM and spi-nor
+ * Revert "drivers/net: Disable UFO through virtio" in macvtap and tun.
+ This removes the need to shut down VMs if migrating to a patched
+ host.
+
+ [ Ian Campbell ]
+ * [xen] Backport various netback fixes (Closes: #767261).
+ * Backport fix for TSO with mv643xx_eth driver, replacing previous workaround
+ (#764162)
+ * [armhf] Increase Ethernet phy startup delay on Banana-Pi. Patch from
+ Karsten Merker (Closes: #767042)
+ * [armhf] Enable FB_SIMPLE, used on some Exynos platforms and elsewhere.
+ * [arm64] Backport various upstream fixes and improvements to the APM X-gene
+ Ethernet driver.
+ * Honour stdout-path from Device Tree, along with supporting any supplied
+ options. (Closes: #770212)
+ * [armhf] Add udeb modules to support video and keyboard for imx6. Patch from
+ Vagrant Cascadian (Closes: #770635)
+ * [device-tree] Reserve memreserve regions even if they partially overlap
+ with an existing reservation. Fixes boot on Midway.
+ * [arm64] Enable reboot on the Xgene platform.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 08 Dec 2014 20:03:18 +0000
+
+linux (3.16.7-2) unstable; urgency=medium
+
+ [ Ian Campbell ]
+ * Disable TSO in mv643xx_eth driver by default (Closes: #764162).
+
+ [ Aurelien Jarno ]
+ * [i386] Rename 486 flavour to 586 for udebs. (Closes: #768288)
+
+ [ Ben Hutchings ]
+ * [hppa] udeb: Fix modules in multiple packages (Closes: 768297)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 06 Nov 2014 17:42:26 +0000
+
+linux (3.16.7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.16.6
+ - rtnetlink: fix VF info size (regression in 3.11)
+ - myri10ge: check for DMA mapping errors
+ - Revert "macvlan: simplify the structure port" (regression in 3.16)
+ - tcp: don't use timestamp from repaired skb-s to calculate RTT (v2)
+ (regression in 3.15)
+ - tcp: fix tcp_release_cb() to dispatch via address family for
+ mtu_reduced()
+ - tipc: fix message importance range check (regression in 3.15)
+ - packet: handle too big packets for PACKET_V3
+ - bnx2x: Revert UNDI flushing mechanism (regression in 3.14)
+ - net: ipv6: fib: don't sleep inside atomic lock (regression in 3.15)
+ - openvswitch: fix panic with multiple vlan headers
+ - ipv6: fix rtnl locking in setsockopt for anycast and multicast
+ - l2tp: fix race while getting PMTU on PPP pseudo-wire (regression in 3.15)
+ - ipv6: restore the behavior of ipv6_sock_ac_drop()
+ - bonding: fix div by zero while enslaving and transmitting
+ (regression in 3.12)
+ - net: filter: fix possible use after free (regression in 3.15)
+ - net: allow macvlans to move to net namespace (regression in 3.13)
+ - macvlan: allow to enqueue broadcast pkt on virtual device
+ (regression in 3.16)
+ - xfrm: Generate blackhole routes only from route lookup functions
+ - xfrm: Generate queueing routes only from route lookup functions
+ - macvtap: Fix race between device delete and open.
+ - net/mlx4_core: Allow not to specify probe_vf in SRIOV IB mode
+ (regression in 3.15)
+ - net/mlx4: Correctly configure single ported VFs from the host
+ (regression in 3.15)
+ - gro: fix aggregation for skb using frag_list (regression in 3.13)
+ - hyperv: Fix bug in netvsc_start_xmit() (potential use-after-free)
+ - team: avoid race condition in scheduling delayed work
+ - hyperv: Fix bug in netvsc_send() (potential use-after-free)
+ - sctp: handle association restarts when the socket is closed.
+ - net_sched: copy exts->type in tcf_exts_change() (regression in 3.14)
+ - crypto: caam - fix addressing of struct member
+ - driver/base/node: remove unnecessary kfree of node struct from
+ unregister_one_node (regression in 3.15)
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.16.7
+ - btrfs: wake up transaction thread from SYNC_FS ioctl
+ - Btrfs: fix up bounds checking in lseek
+ - Btrfs: don't do async reclaim during log replay
+ - Btrfs: cleanup error handling in build_backref_tree
+ - Btrfs: fix build_backref_tree issue with multiple shared blocks
+ - Btrfs: fix race in WAIT_SYNC ioctl
+ - fs: Add a missing permission check to do_umount (CVE-2014-7975)
+ - kvm: fix potentially corrupt mmio cache
+ - [x86] kvm,vmx: Preserve CR4 across VM entry (CVE-2014-3690)
+ - be2iscsi: check ip buffer before copying (stack buffer overflow)
+ - mptfusion: enable no_write_same for vmware scsi disks
+ - qla2xxx: fix kernel NULL pointer access (regression in 3.16)
+ (Closes: #764804)
+ - qla2xxx: Fix shost use-after-free on device removal (regression in 3.14)
+ - dmaengine: fix xor sources continuation
+ - [arm64] debug: don't re-enable debug exceptions on return from el1_dbg
+ - mei: bus: fix possible boundaries violation
+ - nfsv4: Fixing lease renewal (regression in 3.13)
+ - lzo: check for length overrun in variable length encoding.
+ - [armhf] tty: omap-serial: fix division by zero
+ - NFSv4: Fix lock recovery when CREATE_SESSION/SETCLIENTID_CONFIRM fails
+ - NFSv4: fix open/lock state recovery error handling
+ - NFSv4.1: Fix an NFSv4.1 state renewal regression
+ - nfsd4: reserve adequate space for LOCK op (regression in 3.16)
+ - NFS: Fix an uninitialised pointer Oops in the writeback error path
+ - NFS: Fix a bogus warning in nfs_generic_pgio (regression in 3.16.4)
+ - iwlwifi: mvm: disable BT Co-running by default
+ - [armel,armhf] PCI: mvebu: Fix uninitialized variable in
+ mvebu_get_tgt_attr()
+ - Revert "ath9k_hw: reduce ANI firstep range for older chips"
+ (regression in 3.15)
+ - fanotify: enable close-on-exec on events' fd when requested in
+ fanotify_init()
+ - futex: Ensure get_futex_key_refs() always implies a barrier
+ (regression in 3.14)
+ - [ppc64el] iommu/ddw: Fix endianness
+ - [arm64] compat: fix compat types affecting struct compat_elf_prpsinfo
+ - ALSA: emu10k1: Fix deadlock in synth voice lookup
+ - ALSA: hda - Add missing terminating entry to SND_HDA_PIN_QUIRK macro
+ - [armhf] mvebu: Netgear RN104: Use Hardware BCH ECC
+ - [armhf] mvebu: Netgear RN2120: Use Hardware BCH ECC
+ - [armhf] mvebu: Netgear RN102: Use Hardware BCH ECC
+ - ecryptfs: avoid to access NULL pointer when write metadata in xattr
+ - xfs: ensure WB_SYNC_ALL writeback handles partial pages correctly
+ - [sparc*] Do not disable interrupts in nmi_cpu_busy()
+ - [sparc*] Fix pcr_ops initialization and usage bugs.
+ - [sparc*] sun4v TLB error power off events
+ - [sparc*] Fix corrupted thread fault code.
+ - [sparc*] find_node adjustment
+ - [sparc*] Let memset return the address argument
+ - [sparc*] bpf_jit: fix support for ldx/stx mem and SKF_AD_VLAN_TAG
+ - [sparc*] bpf_jit: fix loads from negative offsets
+ - [sparc*] Fix FPU register corruption with AES crypto offload.
+ - [sparc*] Do not define thread fpregs save area as zero-length array.
+ - [sparc*] Fix hibernation code refrence to PAGE_OFFSET.
+ - [sparc*] correctly recognise M6 and M7 cpu type
+ - [sparc*] T5 PMU
+ - [sparc*] Switch to 4-level page tables.
+ - [sparc*] Adjust KTSB assembler to support larger physical addresses.
+ - [sparc*] Fix physical memory management regressions with large
+ max_phys_bits.
+ - [sparc*] Use kernel page tables for vmemmap.
+ - [sparc*] Increase MAX_PHYS_ADDRESS_BITS to 53.
+ - [sparc*] sparse irq
+ - [sparc*] Fix register corruption in top-most kernel stack frame during
+ boot.
+ - [sparc*] Implement __get_user_pages_fast().
+
+ [ Ben Hutchings ]
+ * [i386] Rename 486 flavour to 586, as it has not worked on 486 processors
+ since we enabled CC_STACKPROTECTOR (Closes: #766105)
+ - Select M586TSC instead of M486
+ * [x86] r8723au: Backport changes up to Linux 3.17 (Closes: #765685)
+ * mmc_block: Increase max_devices and set MMC_BLOCK_MINORS to 256
+ (Closes: #765621)
+ * [x86] drm/i915: Initialise userptr mmu_notifier serial to 1
+ (Closes: #765590)
+ * rtsx_usb_ms: Use msleep_interruptible() in polling loop (Closes: #765717)
+ * Bump ABI to 4
+ * Add '.0' to the kernel version string (Closes: #742226, #745984)
+ * vfs,fuse: Change iov_iter_get_pages() to take both maxsize and maxpages
+ parameters (Closes: #764285)
+ * lockd: Try to reconnect if statd has moved (Closes: #767219)
+ * m25p80: Fix module device ID table
+ * HID: i2c-hid: call the hid driver's suspend and resume callbacks
+ (Closes: #767204)
+ * [x86] drm/i915: Add some L3 registers to the parser whitelist
+ (Closes: #767148)
+ * wireless: rt2x00: add new rt2800usb device (thanks to Cyril Brulebois)
+ (Closes: #766802)
+ * drivers/net,ipv6: Fix virtio/IPv6 regression in 3.16:
+ - drivers/net: Disable UFO through virtio
+ - drivers/net,ipv6: Select IPv6 fragment idents for virtio UFO packets
+ * [x86] KVM: Check non-canonical addresses upon WRMSR (CVE-2014-3610)
+ * [x86] KVM: Prevent host from panicking on shared MSR writes.
+ (CVE-2014-3610)
+ * [x86] KVM: Improve thread safety in pit (CVE-2014-3611)
+ * [x86] kvm: vmx: handle invvpid vm exit gracefully (CVE-2014-3646)
+ * [x86] KVM: Fix wrong masking on relative jump/call
+ * [x86] KVM: Emulator fixes for eip canonical checks on near branches
+ (CVE-2014-3647)
+ * [x86] KVM: Handle errors when RIP is set during far jumps (CVE-2014-3647)
+ * [x86] KVM: Fix far-jump to non-canonical check
+ * net: sctp: fix skb_over_panic when receiving malformed ASCONF chunks
+ (CVE-2014-3673)
+ * net: sctp: fix panic on duplicate ASCONF chunks (CVE-2014-3687)
+ * net: sctp: fix remote memory pressure from excessive queueing
+ (CVE-2014-3688)
+ * mnt: Prevent pivot_root from creating a loop in the mount tree
+ (CVE-2014-7970)
+ * linux-image: Recommend irqbalance if CONFIG_SMP is enabled
+ (Closes: #577788)
+ * [armhf] leds: Enable LEDS_PWM as module (for Cubox-i)
+ * [x86] Backport Thunderbolt support on Apple computers from 3.17
+ * [x86] linux-image: Remove lilo from suggested boot loaders
+ * [amd64] linux-image: Add grub-efi to suggested boot loaders
+ * [hppa] Reduce SIGRTMIN from 37 to 32 to behave like other Linux
+ architectures (Closes: #766635)
+ * [hppa] udeb: Add many more module packages (Closes: #766793)
+ * iwlwifi: Backport firmware monitor from 3.17 (Closes: #767088)
+ * bug script: Warn if the running kernel matches the ABI name of the
+ package but is not the installed version
+
+ [ Mauricio Faria de Oliveira ]
+ * [ppc64el] Disable CONFIG_CMDLINE{,_BOOL} usage for setting consoles
+ (Closes: #764745)
+
+ [ Uwe Kleine-König ]
+ * [armhf] enable rtc driver for i.MX6
+ * [armhf] add chipidea usb host driver to usb-modules-$version-armmmp-di
+ for i.MX6
+ * [armhf] enable PCI and NAND driver for Armada 370
+ * [armhf] enable RTC, GPIO_PCA953X, SENSORS_G762 and watchdog driver for
+ Netgear ReadyNAS 102/104
+
+ [ Ian Campbell ]
+ * [armhf] Build i2c-s3c2410 statically, it is used by the arndale power
+ controller.
+ * [armhf] Backport device tree file for Olimex A20-OLinuXino-LIME. (Closes: #764967)
+ * [armhf] Enable various drivers for the Nokia N900. Patch from Sebastian
+ Reichel. (Closes: #766070)
+ * [arm64] Enable EHCI and OHCI platform USB HCD drivers.
+ * Enable MTD and MTDBLOCK in top-level config.
+ * [armhf] Add mtd-modules udeb. Patch from Uwe Kleine-Koenig.
+
+ [ Aurelien Jarno ]
+ * [mips*] Backport a hugetlb fix for Octeon from 3.18.
+ * [mips*] Backport math emulation fix for MIPS32r2 from 3.18.
+ * [mips*] Only define MAX_PHYSMEM_BITS on Loongson-3, until a better fix
+ is committed upstream. Fixes Loongson-2 kernel and maybe more. Closes:
+ #764223.
+ * [mips*/octeon] Add support for the UBNT E200 board (EdgeRouter/EdgeRouter
+ Pro 8 port).
+ * [mips*/octeon] Enable SERIAL_8250_DW. Disable KEYBOARD_ATKBD, MOUSE_PS2,
+ SERIO_I8042.
+ * [mips*/octeon] Really enable USB_OCTEON_EHCI and USB_OCTEON_OHCI. Closes:
+ Closes: #762066.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 04 Nov 2014 09:47:27 +0000
+
+linux (3.16.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.16.4
+ - module: Clean up ro/nx after early module load failures
+ (regression in 3.16)
+ - [armhf] cpufreq: OPP: Avoid sleeping while atomic
+ - [armhf] drm/tilcdc: Fix various bugs in removal path
+ - drm/ttm: Fix possible stack overflow by recursive shrinker calls.
+ - [x86] drm/i915: Fix crash when failing to parse MIPI VBT
+ (regression in 3.16)
+ - [x86] drm/i915: read HEAD register back in init_ring_common() to enforce
+ ordering (Closes: #763583)
+ - libata: widen Crucial M550 blacklist matching
+ - pata_scc: propagate return value of scc_wait_after_reset
+ - pwm: Fix period and polarity in pwm_get() for non-perfect matches
+ - aio: add missing smp_rmb() in read_events_ring
+ - [arm64] flush TLS registers during exec
+ - [arm64] use irq_set_affinity with force=false when migrating irqs
+ (regression in 3.15)
+ - [arm*] KVM: Nuke Hyp-mode tlbs before enabling MMU
+ - [x86] i2c: ismt: use correct length when copy buffer
+ - ftrace: Use current addr when converting to nop in
+ __ftrace_replace_code() (regression in 3.16)
+ - ALSA: core: fix buffer overflow in snd_info_get_line()
+ - ALSA: firewire-lib/dice: add arrangements of PCM pointer and interrupts
+ for Dice quirk (regression in 3.16)
+ - HID: picolcd: sanity check report size in raw_event() callback
+ (CVE-2014-3186)
+ - HID: magicmouse: sanity check report size in raw_event() callback
+ (CVE-2014-3181)
+ - HID: logitech-dj: prevent false errors to be shown (regression in 3.16.2)
+ - [x86] drm/i915: Skip load detect when intel_crtc->new_enable==true
+ (regression in 3.16)
+ - [x86] drm/i915: fix plane/cursor handling when runtime suspended
+ (regression in 3.14)
+ - [x86] drm/i915: Ignore VBT backlight presence check on Acer C720 (4005U)
+ (regression in 3.15)
+ - [x86] drm/i915: Wait for vblank before enabling the TV encoder
+ (regression in 3.16)
+ - [x86] drm/i915/hdmi: fix hdmi audio state readout (regression in 3.16)
+ - drm/radeon: Add ability to get and change dpm state when radeon PX card
+ is turned off (regression in 3.15)
+ - locks: pass correct "before" pointer to locks_unlink_lock in
+ generic_add_lease
+ - ufs: fix deadlocks introduced by sb mutex merge (regression in 3.16)
+ - USB: serial: fix potential stack buffer overflow
+ - USB: serial: fix potential heap buffer overflow
+ - USB: option: reduce interrupt-urb logging verbosity (regression in 3.16)
+ - [armhf] usb: phy: twl4030-usb: Fix lost interrupts after ID pin goes down
+ (regression in 3.13)
+ - [armhf] usb: phy: twl4030-usb: Fix regressions to runtime PM on omaps
+ (regressions in 3.14, 3.15)
+ - uwb: init beacon cache entry before registering uwb device
+ - usb: hub: take hub->hdev reference when processing from eventlist
+ - USB: EHCI: unlink QHs even after the controller has stopped
+ - Revert "ACPI / battery: fix wrong value of capacity_now reported when
+ fully charged" (regression in 3.16)
+ - [x86] iommu/vt-d: Check return value of acpi_bus_get_device()
+ (regression in 3.15)
+ - [armhf/armmp-lpae] iommu/arm-smmu: fix programming of SMMU_CBn_TCR for
+ stage 1
+ - cgroup: check cgroup liveliness before unbreaking kernfs
+ (regression in 3.15)
+ - NFSv4: Fix another bug in the close/open_downgrade code
+ (regression in 3.16.2)
+ - nfsd4: fix corruption of NFSv4 read data (regression in 3.16)
+ - nfs: check wait_on_bit_lock err in page_group_lock
+ - nfs: clear_request_commit while holding i_lock
+ - nfs: fix nonblocking calls to nfs_page_group_lock
+ - nfs: use blocking page_group_lock in add_request
+ - nfs: fix error handling in lock_and_join_requests
+ - nfs: don't sleep with inode lock in lock_and_join_requests
+ - nfs: disallow duplicate pages in pgio page vectors
+ - nfs: can_coalesce_requests must enforce contiguity
+ - [armhf] 8129/1: errata: work around Cortex-A15 erratum 830321 using dummy
+ strex
+ - [armhf] 8133/1: use irq_set_affinity with force=false when migrating irqs
+ (regression in 3.15)
+ - [armel,armhf] 8148/1: flush TLS and thumbee register state during exec
+ - [armel,armhf] 8149/1: perf: Don't sleep while atomic when enabling
+ per-cpu interrupts (regression in 3.15)
+ - [armhf] imx: fix .is_enabled() of shared gate clock (regression in 3.16)
+ - [armhf] 8165/1: alignment: don't break misaligned NEON load/store
+ - [mips*] Fix MFC1 & MFHC1 emulation for 64-bit MIPS systems
+ (regression in 3.15)
+ - ACPICA: Update to GPIO region handler interface.
+ - gpio / ACPI: Use pin index and bit length
+ - ACPI / platform / LPSS: disable async suspend/resume of LPSS devices
+ (regression in 3.16)
+ - ACPI / hotplug: Generate online uevents for ACPI containers
+ (regression in 3.14)
+ - ACPI / video: disable native backlight for ThinkPad X201s
+ (regression in 3.16)
+ - regmap: Fix regcache debugfs initialization (regression in 3.15)
+ - regmap: Fix handling of volatile registers for format_write() chips
+ - regmap: Don't attempt block writes when syncing cache on single_rw
+ devices
+ - cgroup: reject cgroup names with '\n'
+ - cgroup: delay the clearing of cgrp->kn->priv
+ - cgroup: fix unbalanced locking (regression in 3.14)
+ - [s390*] KVM: Fix user triggerable bug in dead code
+ - [s390*] KVM: mm: try a cow on read only pages for key ops
+ - [s390*] KVM: mm: Fix storage key corruption during swapping
+ - [s390*] KVM: mm: Fix guest storage key corruption in
+ ptep_set_access_flags
+ - [x86] xen: don't copy bogus duplicate entries into kernel page tables
+ - [x86] early_ioremap: Increase FIX_BTMAPS_SLOTS to 8 (regression in 3.16)
+ - shmem: fix nlink for rename overwrite directory
+ - SMB3: Fix oops when creating symlinks on smb3
+ - iio: Fix indio_dev->trig assignment in several drivers
+ - Target/iser: Don't put isert_conn inside disconnected handler
+ - target: Fix inverted logic in SE_DEV_ALUA_SUPPORT_STATE_STORE
+ (regression in 3.13)
+ - iscsi-target: Fix memory corruption in iscsit_logout_post_handler_diffcid
+ - SCSI: libiscsi: fix potential buffer overrun in __iscsi_conn_send_pdu
+ - Revert "iwlwifi: dvm: don't enable CTS to self" (regression in 3.16)
+ - iwlwifi: mvm: fix endianity issues with Smart Fifo commands
+ (regression in 3.14)
+ - iwlwifi: mvm: set MAC_FILTER_IN_BEACON correctly for STA/P2P client
+ (regression in 3.16)
+ - workqueue: apply __WQ_ORDERED to create_singlethread_workqueue()
+ (regression in 3.10)
+ - futex: Unlock hb->lock in futex_wait_requeue_pi() error path
+ - block: Fix dev_t minor allocation lifetime
+ - dm cache: fix race causing dirty blocks to be marked as clean
+ - percpu: fix pcpu_alloc_pages() failure path
+ - percpu: perform tlb flush after pcpu_map_pages() failure
+ - regulatory: add NUL to alpha2
+ - lockd: fix rpcbind crash on lockd startup failure (regression in 3.15)
+ - genhd: fix leftover might_sleep() in blk_free_devt()
+ - eventpoll: fix uninitialized variable in epoll_ctl
+ - kcmp: fix standard comparison bug
+ - fs/notify: don't show f_handle if exportfs_encode_inode_fh failed
+ - nilfs2: fix data loss with mmap()
+ - mm, slab: initialize object alignment on cache creation
+ - fs/cachefiles: add missing \n to kerror conversions (regression in 3.16)
+ - mm: softdirty: keep bit when zapping file pte
+ - sched: Fix unreleased llc_shared_mask bit during CPU hotplug
+ - brcmfmac: handle IF event for P2P_DEVICE interface (regression in 3.12)
+ - ath9k_htc: fix random decryption failure (regression in 3.15)
+ - [powerpc,ppc*] Add smp_mb() to arch_spin_is_locked()
+ - [powerpc,ppc*] Add smp_mb()s to arch_spin_unlock_wait()
+ - [hppa] Implement new LWS CAS supporting 64 bit operations.
+ - alarmtimer: Return relative times in timer_gettime
+ - alarmtimer: Do not signal SIGEV_NONE timers
+ - alarmtimer: Lock k_itimer during timer callback
+ - GFS2: fix d_splice_alias() misuses
+ - IB/qib: Correct reference counting in debugfs qp_stats
+ - IB/mlx4: Avoid null pointer dereference in mlx4_ib_scan_netdevs()
+ (regression in 3.14)
+ - IB/mlx4: Don't duplicate the default RoCE GID (regression in 3.14)
+ - IB/core: When marshaling uverbs path, clear unused fields
+ (regression in 3.14)
+ - mm: Fix unbalanced mutex in dma_pool_create(). (regression in 3.16)
+ - PCI: Add pci_ignore_hotplug() to ignore hotplug events for a device
+ (regression in 3.15)
+ - Revert "PCI: Don't scan random busses in pci_scan_bridge()"
+ (regression in 3.15)
+ - drm/nouveau/runpm: fix module unload
+ - drm/radeon/px: fix module unload
+ - fs: Fix nasty 32-bit overflow bug in buffer i/o code.
+ - blk-mq: Avoid race condition with uninitialized requests
+ - [x86] crypto: ccp - Check for CCP before registering crypto algs
+ - nl80211: clear skb cb before passing to netlink
+ - Revert "PCI: Make sure bus number resources stay within their parents
+ bounds" (regression in 3.15)
+ - cpufreq: release policy->rwsem on error (regression in 3.14)
+ - cpufreq: fix cpufreq suspend/resume for intel_pstate (regression in 3.15)
+ - media: it913x: init tuner on attach (regression in 3.15)
+ - media: videobuf2-dma-sg: fix for wrong GFP mask to
+ sg_alloc_table_from_pages (regression in 3.13)
+ - media: vb2: fix vb2 state check when start_streaming fails
+ (regression in 3.16.3)
+ - media: vb2: fix plane index sanity check in vb2_plane_cookie()
+ - md/raid1: clean up request counts properly in close_sync()
+ (regression in 3.13)
+ - md/raid1: be more cautious where we read-balance during resync.
+ (regression in 3.13)
+ - md/raid1: make sure resync waits for conflicting writes to complete.
+ (regression in 3.13)
+ - md/raid1: Don't use next_resync to determine how far resync has
+ progressed (regression in 3.13)
+ - md/raid1: update next_resync under resync_lock. (regression in 3.13)
+ - md/raid1: count resync requests in nr_pending. (regression in 3.13)
+ - md/raid1: fix_read_error should act on all non-faulty devices.
+ - md/raid1: intialise start_next_window for READ case to avoid hang
+ (regression in 3.13)
+ - netfilter: xt_hashlimit: perform garbage collection from process context
+ - mmc: mmci: Reverse IRQ handling for the arm_variant (regression in 3.15)
+ - partitions: aix.c: off by one bug (regression in 3.11)
+ - cpufreq: update 'cpufreq_suspended' after stopping governors
+ - aio: block exit_aio() until all context requests are completed
+ - ext4: propagate errors up to ext4_find_entry()'s callers
+ - ext4: avoid trying to kfree an ERR_PTR pointer
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.16.5
+ - udf: Avoid infinite loop when processing indirect ICBs (CVE-2014-6410)
+ - ASoC: core: fix possible ZERO_SIZE_PTR pointer dereferencing error.
+ - perf: fix perf bug in fork()
+ - mm: memcontrol: do not iterate uninitialized memcgs (regression in 3.14)
+ - mm: migrate: Close race between migration completion and mprotect
+ - [x86] ACPI / i915: Update the condition to ignore firmware backlight
+ change request (regression in 3.16)
+ - [x86] cpufreq: pcc-cpufreq: Fix wait_event() under spinlock
+ (regression in 3.15)
+ - md/raid5: disable 'DISCARD' by default due to safety concerns.
+ - [x86] drm/i915: Flush the PTEs after updating them before suspend
+ (regression in 3.12)
+ - cifs: Fix problem recognizing symlinks (regression in 3.13)
+ - ring-buffer: Fix infinite spin in reading buffer (regression in 3.16.3)
+ - mm: numa: Do not mark PTEs pte_numa when splitting huge pages
+ - media: vb2: fix VBI/poll regression
+
+ [ Ian Campbell ]
+ * [armhf] Add Exynos5 disk/usb/nic modules to udebs.
+ * [armhf] Backport BananaPi device tree files. Patch from Karsten
+ Merker (Closes: #763897).
+
+ [ Ben Hutchings ]
+ * [hppa/parisc64-smp] Work around gcc 4.8 miscompilation (Closes: #762390)
+ * [powerpc/powerpc64,ppc64*] video/fb: Change FB_MATROX, FB_RADEON, FB_ATY,
+ FB_SIS, FB_3DFX, FB_VOODOO1 back to modules (Closes: #748398)
+ * udeb: Add pata_rdc to pata-modules (Closes: #633128)
+ * [s390*] 3215: fix tty output containing tabs (Closes: #758264)
+ * radeon: Don't check for installed firmware if driver is built-in
+ (Closes: #763305)
+ * Bump ABI to 3
+ * vfs: fold swapping ->d_name.hash into switch_names()
+ * vfs: Don't exchange "short" filenames unconditionally. (Closes: #763700)
+ * [hppa,m68k,mips/r4k-ip22,sparc*] bluetooth: Enable BT as module
+ (Closes: #764524)
+
+ [ Aurelien Jarno ]
+ * [arm64] Change RTC_DRV_PL031 and RTC_DRV_XGENE from modules to built-ins
+ as the kernel isn't able to initialize the system clock from a hardware
+ clock whose driver is a module, and as there is no initramfs mechanism
+ to do that.
+ * [armhf] Change RTC_DRV_DA9052, RTC_DRV_IMXDI, RTC_DRV_MC13XXX,
+ RTC_DRV_MV, RTC_DRV_MXC, RTC_DRV_OMAP, RTC_DRV_PL030, RTC_DRV_PL031,
+ RTC_DRV_S5M, RTC_DRV_SUNXI, RTC_DRV_VT8500 from modules to built-ins for
+ the same reason as above.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 10 Oct 2014 09:15:17 +0100
+
+linux (3.16.3-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [s390*] syscall: Fix unimplented-syscall entries added before
+ memfd_create() (fixes FTBFS) (Closes: #762221)
+ * [armel/kirkwood] Change configuration to reduce kernel image size
+ (fixes FTBFS) (Closes: #762219)
+ - block: Change IOSCHED_DEADLINE to module
+ - gpu: Disable VGA_ARB
+
+ [ Aurelien Jarno ]
+ * [mips*/octeon] Enable OCTEON_USB, USB_EHCI_HCD, USB_OHCI_HCD,
+ and USB_OCTEON_EHCI, USB_OCTEON_OHCI (Closes: #762066).
+
+ -- Bastian Blank <waldi@debian.org> Sat, 20 Sep 2014 11:43:05 +0200
+
+linux (3.16.3-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.16.3
+ - reiserfs: fix corruption introduced by balance_leaf refactor
+ (regression in 3.16) (Closes: #761457)
+ - reiserfs: Fix use after free in journal teardown
+ - media: v4l: vb2: Fix stream start and buffer completion race
+ - [x86] iommu/vt-d: Exclude devices using RMRRs from IOMMU API domains
+ - [powerpc*] powerpc/powernv: Fix IOMMU group lost (regression in 3.15)
+ - [x86] iommu/vt-d: Defer domain removal if device is assigned to a driver
+ - [x86] iommu/amd: Fix cleanup_domain for mass device removal
+ - [s390*] locking: Reenable optimistic spinning
+ - firmware: Do not use WARN_ON(!spin_is_locked())
+ - CAPABILITIES: remove undefined caps from all processes
+ - fanotify: fix double free of pending permission events
+ - ocfs2: do not write error flag to user structure we cannot copy from/to
+ - [powerpc*] mm: fix potential infinite loop in dissolve_free_huge_pages()
+ - drivers/mfd/rtsx_usb.c: export device table (Closes: #761428)
+ - [powerpc*] mm: Use read barrier when creating real_pte
+ - [powerpc*] thp: Add write barrier after updating the valid bit
+ - [powerpc*] thp: Invalidate old 64K based hash page mapping before insert
+ of 4k pte
+ - [powerpc*] thp: Handle combo pages in invalidate
+ - [powerpc*] thp: Invalidate with vpn in loop
+ - [powerpc*] thp: Use ACCESS_ONCE when loading pmdp
+ - SCSI: save command pool address of Scsi_Host (regression in 3.15)
+ - fix regression in SCSI_IOCTL_SEND_COMMAND (regression in 3.16)
+ - [mips*] GIC: Prevent array overrun
+ - [mips*] ptrace: Test correct task's flags in task_user_regset_view()
+ - [mips*] ptrace: Change GP regset to use correct core dump register layout
+ - [mips*] ptrace: Avoid smp_processor_id() when retrieving FPU IR
+ - [mips*] syscall: Fix AUDIT value for O32 processes on MIPS64
+ - [mips*] scall64-o32: Fix indirect syscall detection
+ - [mips,powerpc] bfa: Fix undefined bit shift on big-endian architectures
+ with 32-bit DMA address
+ - ACPI / hotplug: Check scan handlers in acpi_scan_hot_remove()
+ (regression in 3.14)
+ - ACPI: Run fixed event device notifications in process context
+ (regression in 3.15)
+ - ACPI / scan: Allow ACPI drivers to bind to PNP device objects
+ (regression in 3.16)
+ - ACPI / EC: Add support to disallow QR_EC to be issued when SCI_EVT isn't
+ set (regression in 3.14.13, 3.16)
+ - ACPI / EC: Add support to disallow QR_EC to be issued before completing
+ previous QR_EC (regression in 3.14.13, 3.16)
+ - ACPI / scan: not cache _SUN value in struct acpi_device_pnp
+ (regression in 3.14)
+ - ACPI / video: Add a disable_native_backlight quirk
+ - ACPI / video: Disable native_backlight on HP ENVY 15 Notebook PC
+ - ring-buffer: Always reset iterator to reader page
+ - ring-buffer: Up rb_iter_peek() loop count to 3
+ - vfs: get rid of propagate_umount() mistakenly treating slaves as busy.
+ (regression in 3.15)
+ - Bluetooth: Fix tracking local SSP authentication requirement
+ - Bluetooth: Avoid use of session socket after the session gets freed
+ - vfs: __generic_file_write_iter(): fix handling of sync error after DIO
+ (regression in 3.16)
+ - rbd: rework rbd_request_fn() (regression in 3.15)
+ - vfs: fix copy_tree() regression (regression in 3.14)
+ - md/raid1,raid10: always abort recover on write error.
+ - md/raid5: avoid livelock caused by non-aligned writes.
+ (regression in 3.16)
+ - md/raid6: avoid data corruption during recovery of double-degraded RAID6
+ - md/raid10: fix memory leak when reshaping a RAID10.
+ - xfs: ensure verifiers are attached to recovered buffers
+ - xfs: quotacheck leaves dquot buffers without verifiers
+ - xfs: don't dirty buffers beyond EOF
+ - xfs: don't zero partial page cache pages during O_DIRECT writes
+ - xfs: don't zero partial page cache pages during O_DIRECT reads
+ - libceph: set last_piece in ceph_msg_data_pages_cursor_init() correctly
+ - libceph: gracefully handle large reply messages from the mon
+ - libceph: do not hard code max auth ticket len (CVE-2014-6416,
+ CVE-2014-6417, CVE-2014-6418)
+ - CIFS: Fix async reading on reconnects
+ - CIFS: Possible null ptr deref in SMB2_tcon
+ - CIFS: Fix wrong directory attributes after rename
+ - mtd/ftl: fix the double free of the buffers allocated in build_maps()
+ - mtd: nand: omap: Fix 1-bit Hamming code scheme, omap_calculate_ecc()
+ - dm table: propagate QUEUE_FLAG_NO_SG_MERGE (regression in 3.16)
+ - KEYS: Fix use-after-free in assoc_array_gc()
+ - KEYS: Fix termination condition in assoc array garbage collection
+ (CVE-2014-3631)
+
+ [ Ben Hutchings ]
+ * sfc: Adding PCI ID for Solarflare 7000 series 40G network adapter.
+ * sfc: Add 40G link capability decoding
+ * Bump ABI to 2 (Closes: #761874)
+ * ata: Enable SATA_ZPODD
+ * tracing: Enable TRACER_SNAPSHOT
+ * Add memfd_create() and shared memory sealing (Closes: #760702):
+ - mm: allow drivers to prevent new writable mappings
+ - shm: add sealing API
+ - shm: add memfd_create() syscall
+ - shm: wait for pins to be released when sealing
+ - mm: Add memfd_create() system call
+ - [arm*,m68k,mips*,powerpc*,s390*,sparc*] Wire up memfd_create()
+ * udeb: Add ccm, ctr to crypto-modules (Closes: #761902)
+ * [armhf] udeb: Add ehci-platform, ohci-platform and phy-sun4i-usb to
+ usb-modules (Closes: #761591)
+
+ [ Ian Campbell ]
+ * [armhf] Enable support for Exynos5 systems. (Closes: #759291)
+ * [arm64] Enable crypto accelerator modules
+ * [arm64] Add cdrom-core-modules udeb
+
+ [ Aurelien Jarno ]
+ * [powerpc/powerpc64,ppc64el] Backport more KVM patches from 3.17. Enable
+ KVM_BOOK3S_64, KVM_BOOK3S_64_HV, KVM_BOOK3S_64_PR and KVM_XICS. (Closes:
+ #761656).
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 18 Sep 2014 03:32:47 +0100
+
+linux (3.16.2-3) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [armhf] udeb: Remove efi-modules, as EFI is not yet supported on ARM!
+ * [arm64] ata: Enable PHY_XYGENE, AHCI_XGENE as modules
+ - udeb: Add ahci_xgene to sata-modules (fixes FTBFS)
+ * [arm64] rtc: Enable RTC_DRV_XGENE as module
+ * mfd,mmc,memstick: Enable MFD_RTSX_USB, MMC_REALTEK_USB,
+ MEMSTICK_REALTEK_USB as modules (Closes: #761099)
+ * [mips64,mips64el] Properly add the 5kc-malta flavour (should fix FTBFS)
+ * batman-adv: Enable BATMAN_ADV_MCAST
+ * can: Enable CAN_GS_USB as module
+ * bluetooth: Enable BT_6LOWPAN
+ * ubi: Enable MTD_UBI_BLOCK
+ * md: Enable DM_ERA as module
+ * qlcnic: Enable QLCNIC_VXLAN
+ * net/wireless: Enable RSI_91X, RSI_USB as modules
+ - udeb: Add rsi_usb to nic-wireless-modules
+ * i2c: Enable I2C_ROBOTFUZZ_OSIF as module
+ * mfd,gpio,i2c,iio: Enable MFD_VIPERBOARD, GPIO_VIPERBOARD, I2C_VIPERBOARD,
+ VIPERBOARD_ADC as modules
+ * media/usb/gspca: Enable USB_GSPCA_DTCS033 as module
+ * media/pci/cx23885: Enable MEDIA_ALTERA_CI as module
+ * sound/usb: Enable SND_USB_HIFACE, SND_BCD2000 as modules
+ * usb/misc: Enable USB_EHSET_TEST_FIXTURE as module
+ * usb/gadget: Enable USB_NET2280 as module
+ * leds: Enable LEDS_TRIGGER_CPU as built-in and LEDS_TRIGGER_ONESHOT,
+ LEDS_TRIGGER_GPIO, LEDS_TRIGGER_TRANSIENT, LEDS_TRIGGER_CAMERA as modules
+ * uio: Enable UIO_MF624 as module
+ * iio: Enable HID_SENSOR_PROX, HID_SENSOR_DEVICE_ROTATION, HID_SENSOR_PRESS
+ as modules
+ * ecryptfs: Enable ECRYPT_FS_MESSAGING
+ * ceph: Enable CEPH_FSCACHE
+ * crypto: Enable CRYPTO_LZ4, CRYPTO_LZ4HC as modules
+ * [x86] mfd,gpio,i2c,watchdog: Enable KEMPLD_MFD, GPIO_KEMPLD, I2C_KEMPLD,
+ KEMPLD_WDT as modules
+ * [x86] staging: Enable R8723AU as module
+ * [x86] staging: Enable WIMAX_GDM72XX as modules
+ - gdmwm: Enable WIMAX_GDM72XX_USB, WIMAX_GDM72XX_USB_PM
+ * [x86] staging/media: Enable DVB_AS102, USB_MSI3101, MEDIA_TUNER_MSI001,
+ SOLO6X10 as modules
+ * [x86] dvb-usb-rtl28xxu: Enable DVB_RTL2832_SDR
+ * [x86] platform: Enable ALIENWARE_WMI, DELL_SMO8800, IBM_RTL,
+ SAMSUNG_Q10, INTEL_RST, INTEL_SMARTCONNECT (Closes: #749273), PVPANIC
+ as modules
+ * [x86] sony-laptop: Enable SONYPI_COMPAT
+ * [x86,ia64] firmware: Enable DMI_SYSFS
+ * [x86] Disable USB_SN9C102; this driver is deprecated in favour of the
+ gspca drivers
+ * [i386] usb/gadget: Enable USB_AMD5536UDC as module
+ * [i386] comedi: Enable COMEDI_AMPLC_DIO200_ISA, COMEDI_AMPLC_PC236_ISA,
+ COMEDI_AMPLC_PC263_ISA, COMEDI_DAS08_ISA, COMEDI_NI_LABPC_ISA as modules
+ * [i386] speakup: Enable SPEAKUP_SYNTH_DECPC as module
+ * [!x86] staging: Enable R8712U, R8188EU as modules (Closes: #742055, #760859)
+ * i2o: Disable I2O_EXT_ADAPTEC on 64-bit, as it assumes 32-bit virtual
+ addresses
+ * SCSI: aic94xx: Remove broken fallback for missing 'Ctrl-A' user settings
+ * udeb: Add ath6kl_sdio, libertas_cs, libertas_sdio, mwifiex_sdio,
+ r8192u_usb, r8723au, rtl8188eu, rtl818x_pci, rtl8723be, rtl8821ae,
+ spectrum_cs to nic-wireless-modules
+ * builddeb: put the dbg files into the correct directory
+ * [ppc64el] deb-pkg: Add support for powerpc little endian
+ * [armhf] deb-pkg: Add automatic support for armhf architecture
+ * debian/rules.real: Never make kernel-wedge errors non-fatal, as in
+ practice this meant we didn't see them until they appeared in unstable
+ * udeb: Fix typo in dependencies of speakup-modules (fixes FTBFS on
+ mips64el due to interaction with another bug in kernel-wedge)
+ * libceph: Apply critical fixes:
+ - set last_piece in ceph_msg_data_pages_cursor_init() correctly
+ - gracefully handle large reply messages from the mon
+ - add process_one_ticket() helper
+ - do not hard code max auth ticket len
+
+ [ Ian Campbell ]
+ * [armel/orion5x] udeb: Include mvmdio in nic-modules udeb.
+ * [arm64] Backport X-GENE Ethernet driver from v3.17-rcs
+ * [arm64] Including phy-xgene in sata-modules udeb since it is needed by
+ ahci_xgene.
+
+ [ Aurelien Jarno ]
+ * [mips64el] Drop loongson-2e and loongson-2f flavour as the minimum
+ supported ISA will be at least MIPS64.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 13 Sep 2014 03:49:53 +0100
+
+linux-tools (3.16-2) unstable; urgency=medium
+
+ * linux-kbuild: Change the type headers used for devicetable-offsets.c
+ to avoid depending on UAPI headers or <linux/types.h>. This really
+ closes: #754213. It also fixes modpost handling of input device IDs
+ when host and target have differing word size.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 09 Sep 2014 13:21:05 +0100
+
+linux-tools (3.16-1) unstable; urgency=medium
+
+ * New upstream release
+
+ [ Mauricio Faria de Oliveira ]
+ * [ppc64el] Build linux-tools binary package (Closes: #754213)
+
+ [ Ben Hutchings ]
+ * linux-kbuild: Build and install recordmcount and recordmcount.pl,
+ needed for kernels with DYNAMIC_FTRACE enabled
+ * linux-kbuild: Fix recordmcount dependency for OOT modules
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 08 Sep 2014 18:45:06 +0100
+
+linux (3.16.2-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [armel,mips*] udeb: Remove lzo-modules, as LZO_COMPRESS is now built-in
+ (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 08 Sep 2014 18:39:25 +0100
+
+linux (3.16.2-1) unstable; urgency=medium
+
+ * New upstream stable update (closes: #748615):
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.16.1
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.16.2
+ - isofs: Fix unbounded recursion when processing relocated directories
+ (CVE-2014-5471, CVE-2014-5472)
+ - kvm: iommu: fix the third parameter of kvm_iommu_put_pages
+ (CVE-2014-3601)
+
+ [ Ben Hutchings ]
+ * HID: Enable HID_RMI as module (Closes: #754519)
+ * Set ABI to 1
+ * [armhf,arm64] udeb: Add efi-modules
+ * ftrace: Enable more tracers (Closes: #563847, #758469):
+ - Enable FUNCTION_TRACER and DYNAMIC_FTRACE
+ - Enable FUNCTION_GRAPH_TRACER, FTRACE_SYSCALLS and STACK_TRACER
+ (except on armel/kirkwood)
+ * [powerpc] drm: Disable DRM_RADEON_UMS, as radeon X driver now requires KMS
+ * aio: fix reqs_available handling (regression in 3.14.10)
+ * mm: Enable FRONTSWAP, ZSWAP (except armel/{ixp4xx,orion5x})
+ (Closes: #725703)
+ * [x86] mgag200: Enable auto-loading, but require mode-setting to be
+ explicitly enabled (as xserver-xorg-video-modesetting does)
+ * [armel] Remove obsolete mv78xx0 flavour
+ * virtio-scsi: Implement change_queue_depth for virtscsi targets
+ (Closes: #760324)
+ * sound/firewire: Enable SND_DICE, SND_FIREWORKS, SND_BEBOB as modules
+ (Closes: #756842)
+ * hid-sony: Enable SONY_FF (Closes: #760684)
+ * mtd: Enable MTD_SPI_NOR as module, since M25P80 now depends on it
+ * [m68k] Enable CGROUPS, required by systemd
+ * [armhf] Re-enable SPI_IMX as module
+ * [i386] comedi: Enable COMEDI_DAC02 as module, replacing COMEDI_POC
+ * sound: Disable SND_CS5535AUDIO on all but i386 and mips*/loongson-2f
+ * [mips*/loongson-2f] video: Re-add and enable sm7xxfb driver, removed
+ upstream in 3.15
+ * mnt: Fix flag handling on remount (CVE-2014-5206, CVE-2014-5207)
+ - mnt: Only change user settable mount flags in remount
+ - mnt: Move the test for MNT_LOCK_READONLY from change_mount_flags into
+ do_remount
+ - mnt: Correct permission checks in do_remount
+ - mnt: Change the default remount atime from relatime to the existing value
+ - mnt: Add tests for unprivileged remount cases that have found to be
+ faulty
+ * [armel/kirkwood] mm: Enable HIGHMEM (Closes: #760786)
+ * aufs: Update to aufs3.16-20140908:
+ - bugfix, missing mnt_want_write in moo
+ - new ioctl BRINFO
+ - bugfix, restore the lost unlock in an error path
+ - allow deleting a branch who has an opened dir
+ - bugfix, stop passing an error code to dput()
+ - possible bugfix, ptr in an array
+ - implement fhsm (not enabled)
+ - si_files has all opened files
+ - bugfix, use id instead of index to identify a branch
+ - new move-down flag AUFS_MVDOWN_FHSM_LOWER
+ - branch attr 'fhsm' is independent from rw/ro attrib
+ - support for a branch ro+fhsm
+ - fhsm notify after fixing inode attrib
+ - bugfix, hfile test in br_del_file()
+ - bugfix, pinning in mvdown
+ - bugfix, instantiate-revalidate race
+ - possible bugfix, temporary d_inode
+ - fhsm and br_del, allow the root dir only
+ - bugfix, get a removed dentry from an inode
+ * MAINTAINERS: Change aufs entry to say it's not upstream
+
+ [ Vagrant Cascadian ]
+ * [armmp] Enable IMX_IPUV3_CORE (closes: #756810).
+
+ [ Aurelien Jarno ]
+ * [mips*] Fix FP emulation for unaligned accesses.
+ * Update Spanish debconf template translations (Matias A. Bellone)
+ (Closes: #758591).
+ * [mips*/loongson3] Backport Loongson 3B support from 3.17.
+ * [powerpc,ppc64el] Backport KVM little endian support from 3.17.
+
+ [ maximilian attems ]
+ * Redisable UAS due to trouble with Seagate expansion drives
+ (closes: #755995, #759662), (reopen: #749014).
+
+ [ Ian Campbell ]
+ * [armhf] Remove incomplete list of hardware from image description. See
+ https://wiki.debian.org/DebianKernel/ARMMP for details.
+ * [armel/kirkwood] Enable CONFIG_MTD_SPI_NOR for flash access.
+
+ * [ppc64el] debian/patches/debian/ppc64el-disable-zImage.patch: remove patch.
+ The 'powerpc/boot: 64bit little endian wrapper' patch-set is in linux 3.16,
+ thus the default make/image-y target is OK now.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 08 Sep 2014 03:17:11 +0100
+
+linux (3.16-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.16
+
+ [ Aurelien Jarno ]
+ * [x86] vfio: Enable VFIO_PCI_VGA.
+ * udeb: rename crc32c.ko into crc32c_generic.ko in crc-modules.
+ * [mips*] Fix FP emulation.
+ * [mips*/loongson3] Enable TRANSPARENT_HUGEPAGE.
+
+ [ Bastian Blank ]
+ * [x86] Enable Xen PVH support.
+ * Enable more Nftables modules.
+ * [x86] Enable EARLY_PRINTK_EFI.
+ * Enable stack protector on all supported architectures. (closes: #756898)
+ * [powerpc64, s390x] Enable PCI hotplug.
+ * Enable RTL8723BE.
+ * Enable OPROFILE.
+ * [ppc64] Enable 64KiB pages.
+
+ [ Ben Hutchings ]
+ * udeb: Add new sound drivers to sound-modules (thanks to Samuel Thibault)
+ (Closes: #756998)
+ * [armhf] touchscreen: Enable TOUCHSCREEN_SUN4I as module (Closes: #757086)
+ * [!alpha,m68k,x86] Disable USELIB, only needed by libc5
+ * [arm*,ia64,ppc64el,s390*,sh4] Disable SYSFS_SYSCALL, only needed for
+ SVR4 compatibility
+ * [armel] Disable BINFMT_AOUT
+ * [armel] Re-enable ixp4xx flavour
+ * [armel] Change configuration to reduce kernel image size
+ - [/kirkwood] Change IPV6 to module
+ - [/ixp4xx,orion5x] Change IOSCHED_DEADLINE to module
+ - [/ixp4xx,orion5x] Disable SECURITY (i.e. Linux Security Modules,
+ including SELinux)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 09 Aug 2014 21:58:12 +0100
+
+linux-tools (3.16~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * genorig: Include new directory for usbip UAPI header
+ * debian/control: Update Build-Depends for usbip switching from
+ libsysfs to libudev
+ * perf: Build with V=1 as V=2 no longer works
+ * perf: Change build command to avoid a rebuild during 'make install'
+ * linux-tools: Install traceevent plugins in
+ /usr/lib/traceevent_<version>/plugins (Closes: #756429)
+ * linux-kbuild: Install scripts/Makefile.extrawarn
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 29 Jul 2014 21:11:10 +0100
+
+linux (3.16~rc6-1~exp1) experimental; urgency=medium
+
+ * New upstream rc
+
+ [ Aurelien Jarno ]
+ * [mipsel/loongson3] Enable SND_HDA_INTEL.
+ * [mips/4kc-malta, mips/5kc-malta] Cleanup configuration file.
+ * [mips/sb1-bcm91250a] Cleanup configuration file.
+ * [mips/r4k-ip22] Cleanup configuration file.
+ * [mips/r5k-ip32] Cleanup configuration file.
+ * [mips64,mips64el] Add a 5kc-malta flavour.
+
+ [ Ben Hutchings ]
+ * [x86] wireless: Enable R8192EE as module (Closes: #755310)
+ * net: Re-enable CGROUP_NET_PRIO as builtin
+
+ -- maximilian attems <maks@debian.org> Mon, 21 Jul 2014 21:51:45 +0200
+
+linux (3.16~rc5-1~exp1) experimental; urgency=medium
+
+ [ maximilian attems ]
+ * New upstream rc
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.x-rcN-20140714:
+ - tiny, no msg in spinlock regeion
+ - minor bugfix, correct error value in link(2)
+ - O_TMPFILE support
+ - bugfix, handling an error in opening a FIFO
+ - propagate aufs file references to new vmas created by remap_file_pages()
+ - begin supporting fallocate(2)
+ - linux-3.16, convert iovec into iov_iter
+ - allow an unprivileged mount under user_ns (enabled by module parameter)
+ - simply handing attribute string
+ - add mount option for copy-up on open
+ - add mount option for move-up on open
+ - add dirperm1 mount option
+ - mvdown, return a subset of statfs(2) optionally
+ - mvdown, tell about the branch is at the bottom
+
+ -- maximilian attems <maks@debian.org> Tue, 15 Jul 2014 22:57:31 +0200
+
+linux (3.15.5-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.15.4
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.15.5
+
+ -- maximilian attems <maks@debian.org> Thu, 10 Jul 2014 16:02:29 +0200
+
+linux (3.15.3-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.15.2
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.15.3
+
+ [ Yunqiang Su ]
+ * [mips,mipsel] Move common MIPS kernel config files to kernelarch-mips.
+ * [mips,mipsel] Clean mipsel installer by using symlinks to the mips
+ versions.
+ * [mips,mipsel] Add mips64 and mips64el support (Closes: #749688).
+
+ -- maximilian attems <maks@debian.org> Wed, 02 Jul 2014 20:30:41 +0200
+
+linux (3.15.1-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.15
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.15.1
+
+ [ maximilian attems ]
+ * Update policy version to 3.9.5 without changes
+
+ [ Ian Campbell ]
+ * [armhf] Enable HDMI on imx6qdl-wandboard, SolidRun HummingBoard and
+ Cubox -i. (Closes: #750406)
+
+ [ Ben Hutchings ]
+ * [powerpc] Build-depend on gcc-4.8 (>= 4.8.2-1) to ensure that
+ JUMP_LABEL works
+
+ -- maximilian attems <maks@debian.org> Fri, 20 Jun 2014 23:13:13 +0200
+
+linux (3.15~rc8-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ian Campbell ]
+ * [armhf] Enable Broadcom IEEE802.11n embedded FullMAC WLAN driver
+ (Closes: #734430)
+ * [armhf] Backport and enable sunxi MMC driver (Closes: #749484)
+
+ -- maximilian attems <maks@debian.org> Tue, 03 Jun 2014 11:43:26 +0200
+
+linux (3.15~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ maximilian attems ]
+ * Enable USB_UAS in topconfig (closes: #749014)
+
+ [ Ian Campbell ]
+ * [armhf] Enable SERIAL_OF_PLATFORM.
+ * [armhf] Enable DRM drivers DRM_IMX_* for IMX platform (Closes: #748406)
+ * [armhf] Enable SND_SOC_IMX_SPDIF (Closes: #748890)
+
+ -- maximilian attems <maks@debian.org> Tue, 27 May 2014 10:55:32 +0200
+
+linux (3.15~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.x-rcN-20140421
+ * [rt] Disable until it is updated for 3.15 or later
+
+ [ Aurelien Jarno ]
+ * [mipsel] Add a loongson-3 flavour to support Loongson 3A/3B machines.
+ * [mips/mipsel] Remove the sb1a-bcm91480b flavour.
+
+ [ Ian Campbell ]
+ * [armel/orion5x] Disable BPF_JIT, MEMCG, USER_NS to reduce kernel
+ size.
+ * [armel/kirkwood] Enable PCI_MVEBU for PCI support when booted via Device
+ Tree.
+
+ -- maximilian attems <maks@debian.org> Fri, 16 May 2014 14:33:57 +0200
+
+linux (3.14.15-2) unstable; urgency=medium
+
+ [ Aurelien Jarno ]
+ * [mips*/4kc-malta] Remove ABI reference as previous kernels were not
+ really usable, and the fix changes the ABI.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 09 Aug 2014 01:09:38 +0100
+
+linux (3.14.15-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.14
+ - Bluetooth: Ignore H5 non-link packets in non-active state
+ - fuse: timeout comparison fix
+ - tracing: instance_rmdir() leaks ftrace_event_file->filter
+ (regression in 3.11)
+ - xen/balloon: set ballooned out pages as invalid in p2m
+ (regression in 3.12)
+ - quota: missing lock in dqcache_shrink_scan() (regression in 3.12)
+ - shmem: fix faulting into a hole, not taking i_mutex (CVE-2014-4171)
+ - shmem: fix splicing from a hole while it's punched (CVE-2014-4171)
+ - e1000e: Fix SHRA register access for 82579 (regression in 3.12)
+ - ip_tunnel: fix ip_tunnel_lookup
+ - net: sctp: check proc_dointvec result in proc_sctp_do_auth
+ - 8021q: fix a potential memory leak
+ - net: fix UDP tunnel GSO of frag_list GRO packets
+ - ipv4: fix dst race in sk_dst_get()
+ - ipv4: irq safe sk_dst_[re]set() and ipv4_sk_update_pmtu() fix
+ - bnx2x: fix possible panic under memory stress
+ - tcp: Fix divide by zero when pushing during tcp-repair
+ - ipv4: icmp: Fix pMTU handling for rare case
+ - net: Fix NETDEV_CHANGE notifier usage causing spurious arp flush
+ (regression in 3.11)
+ - igmp: fix the problem when mc leave group
+ - appletalk: Fix socket referencing in skb
+ - netlink: Fix handling of error from netlink_dump().
+ - tipc: clear 'next'-pointer of message fragments before reassembly
+ (regression in 3.13)
+ - net: sctp: fix information leaks in ulpevent layer
+ - bonding: fix ad_select module param check (regression in 3.14)
+ - net-gre-gro: Fix a bug that breaks the forwarding path
+ (regression in 3.14)
+ - perf/x86/intel: ignore CondChgd bit to avoid false NMI handling
+ - mwifiex: fix Tx timeout issue
+ - [x86] tsc: Fix cpufreq lockup (regression in 3.14)
+ - dm thin metadata: do not allow the data block size to change
+ - dm cache metadata: do not allow the data block size to change
+ - locking/mutex: Disable optimistic spinning on some architectures
+ - sched: Fix possible divide by zero in avg_atom() calculation
+ - aio: protect reqs_available updates from changes in interrupt handlers
+ (regression in 3.14.10)
+ - Don't trigger congestion wait on dirty-but-not-writeout pages
+ (regression in 3.11)
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.15
+ - nfs: only show Posix ACLs in listxattr if actually present
+ (regression in 3.14)
+ - block: don't assume last put of shared tags is for the host
+ - libata: support the ata host which implements a queue depth less than 32
+ (regression in 3.14.4)
+ - libata: introduce ata_host->n_tags to avoid oops on SAS controllers
+ - blkcg: don't call into policy draining if root_blkg is already gone
+ - coredump: fix the setting of PF_DUMPCORE
+ - [hppa] Remove SA_RESTORER define
+ - hwmon: (smsc47m192) Fix temperature limit and vrm write operations
+ - fs: umount on symlink leaks mnt count (CVE-2014-5045)
+ - [x86] x86_32, entry: Store badsys error code in %eax
+ (regression in 3.14.10)
+ - drm/radeon: fix irq ring buffer overflow handling (regression in 3.14)
+ - mm: hugetlb: fix copy_hugetlb_page_range() (regression in 3.14.12)
+ - [x86] efi: Include a .bss section within the PE/COFF headers
+ - nl80211: move set_qos_map command into split state (regression in 3.14)
+ - platform_get_irq: Revert to platform_get_resource if of_irq_get fails
+ (regression in 3.14.6)
+
+ [ Aurelien Jarno ]
+ * Update German debconf template translations (Holger Wansing) (Closes:
+ #756049).
+ * Update French debconf template translations (David Prévot) (Closes:
+ #756134).
+ * Rewrite postinst to not require File::stat perl module (Closes: #756207).
+ * [mips*] Avoid smp_processor_id() in preemptible code.
+ * [mips*/octeon] Fix /proc/cpuinfo issues.
+ * [mips,mipsel/4kc-malta] Fix bug which can cause incorrect system call
+ restarts (fix hang on boot).
+ * [mips*] Fix hugepage support on machines with R4K like TLB.
+ * [mips*] Prevent user from setting FCSR cause bits and cause possible
+ kernel oops.
+ * Update Japanese debconf template translations (Victory).
+
+ [ Ben Hutchings ]
+ * [amd64] Reject x32 executables if x32 ABI not supported
+ * [amd64] Make x32 syscall support conditional on a kernel parameter
+ * [amd64] Enable X86_X32 (Closes: #708070) and X86_X32_DISABLED.
+ Use the kernel parameter "syscall.x32=y" to enable support for x32.
+ * [s390,s390x] 3215: fix hanging console issue (Closes: #747922)
+ * [armhf] Enable BRCMFMAC, BRCMFMAC_SDIO as modules (Closes: #734430)
+ * net: sctp: inherit auth_capable on INIT collisions (CVE-2014-5077)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 07 Aug 2014 16:47:21 +0100
+
+linux (3.14.13-2) unstable; urgency=medium
+
+ [ Aurelien Jarno ]
+ * [mips64,mips64el] Really enable mips64 and mips64el architectures.
+ * [mips64,mips64el] Build udebs for 5kc-malta flavour.
+ * [mipsel,mips64el/loongson-3] Disable not built modules in nic-modules,
+ scsi-common-modules, scsi-extra-modules, scsi-modules (fixes FTBFS).
+ * Add scsi_transport_sas and scsi_transport_spi to scsi-core-modules udeb
+ as optional so that these modules do not end up in two different udebs
+ as dependencies. Remove them from the i386, ia64, powerpc and sparc
+ definition.
+ * [mipsel,mips64el/loongson-2e,2f] Enable CONFIG_RTC_DRV_CMOS as built-in.
+ * [mips*] Add few new udebs and use standard udebs configuration when
+ possible.
+ * [s390,s390x] ptrace: fix PSW mask check (CVE-2014-3534).
+ * [mipsel,mips64el/loongson-3] Enable PREEMPT instead of PREEMPT_VOLUNTARY
+ as it workarounds SMP issues.
+
+ -- Aurelien Jarno <aurel32@debian.org> Thu, 24 Jul 2014 21:05:08 +0200
+
+linux (3.14.13-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.13
+ - iio: ti_am335x_adc: Fix: Use same step id at FIFOs both ends
+ (regression in 3.11)
+ - [hppa] Do not hardcode maximum userspace stack size (regression in 3.14)
+ - workqueue: fix dev_set_uevent_suppress() imbalance (regression in 3.10)
+ - workqueue: zero cpumask of wq_numa_possible_cpumask on init
+ (regression in 3.10)
+ - i8k: Fix non-SMP operation (regression in 3.14)
+ - Revert "ACPI / AC: Remove AC's proc directory." (regression in 3.13)
+ - ACPI / resources: only reject zero length resources based at address zero
+ (regression in 3.14)
+ - ACPI / EC: Avoid race condition related to advance_transaction()
+ - ACPI / EC: Fix race condition in ec_transaction_completed()
+ - [x86] crypto: sha512_ssse3 - fix byte count to bit count conversion
+ - [arm64] implement TASK_SIZE_OF
+ - phy: core: Fix error path in phy_create()
+ - dm io: fix a race condition in the wake up code for sync_io
+ - [x86] intel_pstate: Fix setting VID (regression in 3.14.6)
+ - PCI: Fix unaligned access in AF transaction pending test
+ (regression in 3.14)
+ - ext4: fix unjournalled bg descriptor while initializing inode bitmap
+ - ext4: fix a potential deadlock in __ext4_es_shrink()
+ - drm/radeon: stop poisoning the GART TLB
+ - [x86] drm/i915: Don't clobber the GTT when it's within stolen memory
+
+ [ Ian Campbell ]
+ * [armel] Remove drivers/net/phy configs which are redundant with toplevel.
+ * [armhf] Add MMC and NIC modules for BeagleBone Black to udebs.
+ (Closes: #754491)
+ * [arm64] Add xfs-modules udeb and add xen-netfront to nic-modules udeb.
+ * aufs: Fix build on arm64.
+
+ [ Aurelien Jarno ]
+ * [mips,mipsel] Add a debconf note to warn users that they have to
+ configure the system bootloader to load initramfs.
+ * Update Polish debconf template translations (Łukasz Dulny).
+ * Update Czech debconf template translations (Michal Simunek) (Closes:
+ #755060).
+ * Update Russian debconf template translations (Yuri Kozlov) (Closes:
+ #755085).
+ * Update Portuguese debconf template translations (Américo Monteiro)
+ (Closes: #755100).
+ * Update Swedish debconf template translations (Martin Bagge) (Closes:
+ #755145).
+ * Update Slovak debconf template translation (Slavko) (Closes: #755152).
+ * Update Turkish debconf template translation (Mert Dirik) (Closes:
+ #755223).
+ * Update Danish debconf template translation (Joe Dalton) (Closes:
+ #755400).
+ * [mips,mipsel] Cleanup configuration files.
+ * [mips,mipsel] Move common MIPS kernel config files to kernelarch-mips.
+ * [mips,mipsel] Clean mipsel installer by using symlinks to the mips
+ versions.
+ * [mipsel] Backport Loongson 3A/3B support from 3.15 and add the
+ corresponding flavour.
+ * [mips,mipsel] Remove the sb1a-bcm91480b flavour.
+ * [mips,mipsel] Add mips64 and mips64el support (Closes: #749688).
+ * [mips/octeon] Backport from upstream PCIe2 support and interface
+ mode detection for Octeon.
+ * [mips/sb1-91250a] Backport from upstream additional build flags
+ to fix excessive kernel warnings.
+ * [mips/malta] Backport from upstream power management support for
+ Malta.
+ * [mipsel/loongson3] Add support for Loongson 3 LS3A RS780E 1-way
+ boards.
+
+ [ Ben Hutchings ]
+ * net/l2tp: don't fall back on UDP [get|set]sockopt (CVE-2014-4943)
+ * Bump ABI to 2 (Closes: #754902)
+ * [powerpc/powerpc64] Re-enable JUMP_LABEL
+ * [powerpc/powerpc64,ppc64] Enable PPC_TRANSACTIONAL_MEM
+ * Enable DYNAMIC_DEBUG (except for armel/orion5x) (Closes: #694884)
+ * [rt] Update to 3.14.12-rt9 (no functional changes)
+ * udeb: Add sdhci-acpi to mmc-modules (Closes: #747284)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 21 Jul 2014 14:02:14 +0100
+
+linux (3.14.12-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.11
+ - iscsi-target: Avoid rejecting incorrect ITT for Data-Out
+ - iscsi-target: Explicily clear login response PDU in exception path
+ (regression in 3.10)
+ - iscsi-target: fix iscsit_del_np deadlock on unload (regression in 3.13)
+ - Input: synaptics - fix resolution for manually provided min/max
+ (regression in 3.14)
+ - [mips] MSC: Prevent out-of-bounds writes to MIPS SC ioremap'd region
+ - UBIFS: fix an mmap and fsync race condition
+ - UBIFS: Remove incorrect assertion in shrink_tnc()
+ - IB/ipath: Translate legacy diagpkt into newer extended diagpkt
+ - IB/srp: Fix a sporadic crash triggered by cable pulling
+ - IB/umad: Fix error handling
+ - IB/umad: Fix use-after-free on close
+ - nfsd4: fix FREE_STATEID lockowner leak (regression in 3.14.6)
+ - nfsd: getattr for FATTR4_WORD0_FILES_AVAIL needs the statfs buffer
+ - NFS: Don't declare inode uptodate unless all attributes were checked
+ - nfs: Fix cache_validity check in nfs_write_pageuptodate()
+ - [powerpc] mm: Check paca psize is up to date for huge mappings
+ - [powerpc] perf: Ensure all EBB register state is cleared on fork()
+ - xfs: xfs_readsb needs to check for magic numbers (regression in 3.14)
+ - reiserfs: call truncate_setsize under tailpack mutex
+ - ipvs: Fix panic due to non-linear skb
+ - tracing: Fix syscall_*regfunc() vs copy_process() race
+ - ALSA: usb-audio: Fix races at disconnection and PCM closing
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.12
+ - [powerpc] ibmvscsi: Abort init sequence during error recovery
+ - [powerpc] ibmvscsi: Add memory barriers for send / receive
+ - virtio-scsi: avoid cancelling uninitialized work items
+ - scsi_error: fix invalid setting of host byte
+ - virtio-scsi: fix various bad behavior on aborted requests
+ - xhci: Use correct SLOT ID when handling a reset device command
+ (regression in 3.13)
+ - usb: chipidea: udc: delete td from req's td list at ep_dequeue
+ - mtd: eLBC NAND: fix subpage write support (regression in 3.10)
+ - mtd: nand: omap: fix BCHx ecc.correct to return detected bit-flips in
+ erased-page
+ - [x86] drm/i915: Avoid div-by-zero when pixel_multiplier is zero
+ (regression in 3.13)
+ - [x86] drm/i915: set backlight duty cycle after backlight enable for gen4
+ (regression in 3.14)
+ - Bluetooth: Fix SSP acceptor just-works confirmation without MITM
+ - Bluetooth: Fix check for connection encryption
+ - rbd: use reference counts for image requests
+ - rbd: handle parent_overlap on writes correctly
+ - mac80211: fix a memory leak on sta rate selection table
+ (regression in 3.10)
+ - hugetlb: fix copy_hugetlb_page_range() to handle migration/hwpoisoned
+ entry
+ - [arm64] mm: Make icache synchronisation logic huge page aware
+ - [arm64] Bug fix in stack alignment exception
+ - fs/cifs: fix regression in cifs_create_mf_symlink() (regression in 3.14)
+ - blkcg: fix use-after-free in __blkg_release_rcu() by making
+ blkcg_gq refcnt an atomic_t
+ - ext4: Fix buffer double free in ext4_alloc_branch()
+ - ext4: Fix hole punching for files with indirect blocks
+ - [x86] KVM: preserve the high 32-bits of the PAT register
+ - [x86] kvm: fix wrong address when writing Hyper-V tsc page
+ - nfsd: fix rare symlink decoding bug
+ - tracing: Remove ftrace_stop/start() from reading the trace file
+ - md: flush writes before starting a recovery.
+ - mlx4_core: Fix incorrect FLAGS1 bitmap test in mlx4_QUERY_FUNC_CAP
+ (regression in 3.14)
+ - netfilter: nf_nat: fix oops on netns removal
+ - brcmfmac: Fix brcmf_chip_ai_coredisable not applying reset bits to
+ BCMA_IOCTL (regression in 3.14)
+ - mmc: rtsx: add R1-no-CRC mmc command type handle (regression in 3.13)
+ - aio: block io_destroy() until all context requests are completed
+ (regression in 3.11)
+ - audit: remove superfluous new- prefix in AUDIT_LOGIN messages
+ (regression in 3.14)
+ - mm/numa: Remove BUG_ON() in __handle_mm_fault() (regression in 3.13)
+ - slab: fix oops when reading /proc/slab_allocators
+ - sym53c8xx_2: Set DID_REQUEUE return code when aborting squeue
+ - mm: fix crashes from mbind() merging vmas
+
+ [ Ben Hutchings ]
+ * [rt] Update to 3.14.10-rt7:
+ - rtmutex: Resolve conflicts with changes in 3.14.10
+ - sched: Do not clear PF_NO_SETAFFINITY flag in select_fallback_rq()
+ - workqueue: Prevent deadlock/stall on RT
+ * [rt] random: Restore interrupt randomness dropped in 3.14.10-rt6
+ * [s390,s390x] Ignore ABI change in lowcore structure (fixes FTBFS)
+ * [m68k] block: Change IOSCHED_CFQ to built-in and make it the default
+ I/O scheduler, consistent with other architectures
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 11 Jul 2014 17:56:20 +0100
+
+linux (3.14.10-1) unstable; urgency=high
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.10
+ - [s390] af_iucv: wrong mapping of sent and confirmed skbs
+ - Staging: rtl8188eu: overflow in update_sta_support_rate()
+ - USB: option: fix runtime PM handling
+ - hugetlb: restrict hugepage_migration_support() to x86_64
+ - kthread: fix return value of kthread_create() upon SIGKILL.
+ - mm/memory-failure.c-failure: send right signal code to correct thread
+ - mm/memory-failure.c: don't let collect_procs() skip over processes for
+ MF_ACTION_REQUIRED
+ - ptrace: fix fork event messages across pid namespaces
+ - idr: fix overflow bug during maximum ID calculation at maximum height
+ - [s390] time: cast tv_nsec to u64 prior to shift in update_vsyscall
+ (regression in 3.13)
+ - [s390] lowcore: reserve 96 bytes for IRB in lowcore
+ - ext4: fix data integrity sync in ordered mode
+ - ext4: fix zeroing of page during writeback
+ - ext4: fix wrong assert in ext4_mb_normalize_request()
+ - USB: usb_wwan: fix race between write and resume
+ - USB: usb_wwan: fix write and suspend race
+ - USB: usb_wwan: fix urb leak at shutdown
+ - USB: sierra: fix use after free at suspend/resume
+ - USB: sierra: fix remote wakeup
+ - USB: serial: fix potential runtime pm imbalance at device remove
+ - media: stk1160: Avoid stack-allocated buffer for control URBs
+ - rtmutex: Detect changes in the pi lock chain
+ - rtmutex: Handle deadlock detection smarter
+ - rtmutex: Plug slow unlock race
+ - media: uvcvideo: Fix clock param realtime setting
+ - media: saa7134: fix regression with tvtime (regression in 3.14)
+ - Bluetooth: Fix L2CAP deadlock
+ - Target/iser: Wait for proper cleanup before unloading
+ - target: Set CMD_T_ACTIVE bit for Task Management Requests
+ - target: Use complete_all for se_cmd->t_transport_stop_comp
+ - iscsi-target: Fix ABORT_TASK + connection reset iscsi_queue_req memory
+ leak
+ - target: Explicitly clear ramdisk_mcp backend pages
+ - [x86] x86-32, espfix: Remove filter for espfix32 due to race
+ - aio: fix aio request leak when events are reaped by userspace
+ - aio: fix kernel memory disclosure in io_getevents() introduced in v3.10
+ (CVE-2014-0206)
+ - CIFS: Fix memory leaks in SMB2_open
+ - Btrfs: fix double free in find_lock_delalloc_range
+ - Btrfs: make sure there are not any read requests before stopping workers
+ - Btrfs: mark mapping with error flag to report errors to userspace
+ - Btrfs: set right total device count for seeding support
+ - fs: btrfs: volumes.c: Fix for possible null pointer dereference
+ - Btrfs: don't check nodes for extent items
+ - Btrfs: fix scrub_print_warning to handle skinny metadata extents
+ - btrfs: fix use of uninit "ret" in end_extent_writepage()
+ - btrfs: allocate raid type kobjects dynamically
+ - lz4: fix another possible overrun
+ - epoll: fix use-after-free in eventpoll_release_file
+ - builddeb: use $OBJCOPY variable instead of objcopy (regression in 3.12)
+ - [i386] efi-pstore: Fix an overflow on 32-bit builds
+
+ [ Ben Hutchings ]
+ * [amd64] ptrace,x86: force IRET path after a ptrace_stop() (CVE-2014-4699)
+ * shmem: fix faulting into a hole while it's punched (CVE-2014-4171)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 07 Jul 2014 09:54:10 +0100
+
+linux (3.14.9-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.8
+ - Target/iscsi,iser: Avoid accepting transport connections during stop
+ stage
+ - iser-target: Fix multi network portal shutdown regression
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.9
+ - target: Fix NULL pointer dereference for XCOPY in target_put_sess_cmd
+ (regression in 3.14.6)
+ - iscsi-target: Reject mutual authentication with reflected CHAP_C
+ - ima: audit log files opened with O_DIRECT flag
+ - ima: introduce ima_kernel_read() (regression in 3.10)
+ - evm: prohibit userspace writing 'security.evm' HMAC value
+ - net: Use netlink_ns_capable to verify the permisions of netlink messages
+ (CVE-2014-0181)
+ - netlink: Only check file credentials for implicit destinations
+ - qlcnic: info leak in qlcnic_dcb_peer_app_info()
+ - ipv6: Fix regression caused by efe4208 in udp_v6_mcast_next()
+ (regression in 3.13)
+ - netlink: rate-limit leftover bytes warning and print process name
+ - bridge: Prevent insertion of FDB entry with disallowed vlan
+ - net: tunnels - enable module autoloading
+ - [sparc] net: filter: fix typo in sparc BPF JIT
+ - sfc: PIO:Restrict to 64bit arch and use 64-bit writes.
+ (regression in 3.13)
+ - ipv4: fix a race in ip4_datagram_release_cb()
+ - sctp: Fix sk_ack_backlog wrap-around problem
+ - udp: ipv4: do not waste time in __udp4_lib_mcast_demux_lookup
+ (regression in 3.13)
+ - USB: cdc-acm: Fix various bugs in power management
+ - USB: cdc-acm: fix I/O after failed open
+ - [x86] hv: use correct order when freeing monitor_pages
+ - ASoC: dapm: Make sure to always update the DAPM graph in _put_volsw()
+ (regression in 3.12)
+ - lzo: properly check for overruns (CVE-2014-4608)
+ - lz4: ensure length does not wrap (CVE-2014-4608)
+ - ALSA: compress: Cancel the optimization of compiler and fix the size of
+ struct for all platform.
+ - ALSA: control: Protect user controls against concurrent access
+ (CVE-2014-4652)
+ - ALSA: control: Fix replacing user controls (CVE-2014-4654, CVE-2014-4655)
+ - ALSA: control: Don't access controls outside of protected regions
+ (CVE-2014-4653)
+ - ALSA: control: Make sure that id->index does not overflow;
+ Handle numid overflow (CVE-2014-4656)
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.14-20140616:
+ - tiny, no msg in spinlock regeion
+ - minor bugfix, correct error value in link(2)
+ - O_TMPFILE support
+ - bugfix, handling an error in opening a FIFO
+ - propagate aufs file references to new vmas created by remap_file_pages()
+ * linux-image: Make initramfs support unconditional
+ * [x86] x86_32, entry: Do syscall exit work on badsys (CVE-2014-4508)
+ * [rt] Fix latency histogram after "hrtimer: Set expiry time before
+ switch_hrtimer_base()" in 3.14.6
+
+ [ Aurelien Jarno ]
+ * [arm64] Enable COMPAT to support 32-bit binaries.
+ * [mips,mipsel] Enable initramfs for all flavours, but keep the disk
+ related drivers built-in for now.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 30 Jun 2014 13:57:11 +0100
+
+linux (3.14.7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.6
+ - [mipsel] loongson2_cpufreq: Fix CPU clock rate setting
+ (regression in 3.14)
+ - rtmutex: Fix deadlock detector for real
+ - kernfs: add back missing error check in kernfs_fop_mmap()
+ (regression in 3.14)
+ - coredump: fix va_list corruption (regression in 3.11)
+ - mm: make fixup_user_fault() check the vma access rights too
+ - serial: 8250: Fix thread unsafe __dma_tx_complete function
+ - 8250_core: Fix unwanted TX chars write
+ - iwlwifi: 7000: bump API to 9
+ - timer: Prevent overflow in apply_slack
+ - cfg80211: free sme on connection failures (regression in 3.11)
+ - cfg80211: add cfg80211_sched_scan_stopped_rtnl (regression in 3.14)
+ - mac80211: fix nested rtnl locking on ieee80211_reconfig
+ (regression in 3.14)
+ - mm, thp: close race between mremap() and split_huge_page()
+ - [x86] mm, hugetlb: Add missing TLB page invalidation for hugetlb_cow()
+ - hwpoison, hugetlb: lock_page/unlock_page does not match for handling a
+ free hugepage
+ - iwlwifi: mvm: delay enabling smart FIFO until after beacon RX
+ (regression in 3.14)
+ - aio: fix potential leak in aio_run_iocb().
+ - Revert "hwmon: (coretemp) Refine TjMax detection"
+ - hrtimer: Prevent remote enqueue of leftmost timers
+ - hrtimer: Set expiry time before switch_hrtimer_base()
+ - dm verity: fix biovecs hash calculation regression (regression in 3.14)
+ - dm cache: fix writethrough mode quiescing in cache_map
+ (regression in 3.13)
+ - md/raid10: call wait_barrier() for each request submitted.
+ (regression in 3.14)
+ - PNP / ACPI: Do not return errors if _DIS or _SRS are not present
+ (regression in 3.14)
+ - ACPI / EC: Process rather than discard events in acpi_ec_clear
+ (regression in 3.13.7, 3.14)
+ - irqchip: armada-370-xp: fix invalid cast of signed value into unsigned
+ variable (regression in 3.13)
+ - irqchip: armada-370-xp: implement the ->check_device() msi_chip
+ operation (regression in 3.13)
+ - irqchip: armada-370-xp: Fix releasing of MSIs (regression in 3.13)
+ - [x86] drm/i915: Allow user modes to exceed DVI 165MHz limit
+ (regression in 3.14)
+ - [x86] drm/i915: Don't check gmch state on inherited configs
+ (regression in 3.13?)
+ - [x86] drm/i915: Don't WARN nor handle unexpected hpd interrupts on gmch
+ platforms (regression in 3.13)
+ - [x86] drm/radeon: fix runpm handling on APUs (v4) (regression in 3.13)
+ - drm/radeon: disable mclk dpm on R7 260X (regression in 3.14)
+ - drm/radeon: add support for newer mc ucode on SI (v2)
+ - drm/radeon: add support for newer mc ucode on CI (v2)
+ - drm/radeon: re-enable mclk dpm on R7 260X asics
+ - drm/radeon/uvd: use lower clocks on old UVD to boot v2
+ (regression in 3.13)
+ - drm/radeon: check buffer relocation offset
+ - USB: Nokia 305 should be treated as unusual dev
+ - USB: Nokia 5300 should be treated as unusual dev
+ - Revert "Bluetooth: Enable autosuspend for Intel Bluetooth device"
+ (regression in 3.14)
+ - posix_acl: handle NULL ACL in posix_acl_equiv_mode
+ - fs/affs/super.c: bugfix / double free (regression in 3.14)
+ - [armel/orion5x] fix target ID for crypto SRAM window
+ (regression in 3.12)
+ - [armel/kirkwood]: dts: fix mislocated pcie-controller nodes
+ (regression in 3.12)
+ - [armhf/armmp-lpae] 8012/1: kdump: Avoid overflow when converting pfn to
+ physaddr
+ - drm/nouveau: fix another lock unbalance in nouveau_crtc_page_flip
+ (regression in 3.11)
+ - drm/i915/vlv: reset VLV media force wake request register
+ (regression in 3.14?)
+ - i40e: potential array underflow in i40e_vc_process_vf_msg()
+ - igb: Fix Null-pointer dereference in igb_reset_q_vector
+ (regression in 3.14)
+ - igb: Unset IGB_FLAG_HAS_MSIX-flag when falling back to msi-only
+ (regression in 3.14)
+ - leds: leds-pwm: properly clean up after probe failure
+ - device_cgroup: rework device access check and exception checking
+ - device_cgroup: check if exception removal is allowed
+ - media: media-device: fix infoleak in ioctl media_enum_entities()
+ (CVE-2014-1739)
+ - Input: Add INPUT_PROP_TOPBUTTONPAD device property
+ - Input: synaptics - report INPUT_PROP_TOPBUTTONPAD property
+ - e1000e: Fix no connectivity when driver loaded with cable out
+ (regression in 3.12)
+ - autofs: fix lockref lookup
+ - vfs: fix races between __d_instantiate() and checks of dentry flags
+ - ALSA: hda - hdmi: Set converter channel count even without sink
+ (regression in 3.13)
+ - NFSd: Move default initialisers from create_client() to alloc_client()
+ - NFSd: call rpc_destroy_wait_queue() from free_client()
+ - NFSD: Call ->set_acl with a NULL ACL structure if no entries
+ - nfsd4: remove lockowner when removing lock stateid
+ - workqueue: fix bugs in wq_update_unbound_numa() failure path
+ - workqueue: fix a possible race condition between rescuer and pwq-release
+ - [arm] mvebu: mvebu-soc-id: add missing clk_put() call
+ (regression in 3.14)
+ - [arm] mvebu: mvebu-soc-id: keep clock enabled if PCIe unit is enabled
+ (regression in 3.14)
+ - ASoC: dapm: Skip CODEC<->CODEC links in connect_dai_link_widgets()
+ (regression in 3.14)
+ - [hppa] ratelimit userspace segfault printing
+ - [amd64] modify_ldt: Make support for 16-bit segments a runtime option
+ - sysfs: make sure read buffer is zeroed (possible regression in 3.13)
+ - Target/iser: Fix wrong connection requests list addition
+ - Target/iser: Fix iscsit_accept_np and rdma_cm racy flow
+ - iscsi-target: Change BUG_ON to REJECT in iscsit_process_nop_out
+ (regression in 3.11)
+ - target: fix memory leak on XCOPY
+ - [x86] drm/i915: Disable self-refresh for untiled fbs on i915gm
+ (regression in 3.14)
+ - [x86] drm/i915: move power domain init earlier during system resume
+ (regression in 3.14?)
+ - [x86] drm/i915: Fix unsafe loop iteration over vma whilst unbinding them
+ (regression in 3.12)
+ - iwlwifi: mvm: BT Coex - fix Look Up Table (regression in 3.13)
+ - PCI: Wrong register used to check pending traffic (regression in 3.14)
+ - dm crypt: fix cpu hotplug crash by removing per-cpu structure
+ - dm thin: allow metadata commit if pool is in PM_OUT_OF_DATA_SPACE mode
+ (regression in 3.14)
+ - dm thin: add timeout to stop out-of-data-space mode holding IO forever
+ - dmaengine: fix dmaengine_unmap failure
+ - dma: mv_xor: Flush descriptors before activating a channel
+ - tcm_fc: Fix free-after-use regression in ft_free_cmd
+ (regression in 3.13)
+ - ACPICA: Tables: Restore old behavor to favor 32-bit FADT addresses.
+ (regression in 3.14)
+ - ACPI: Revert "ACPI: Remove CONFIG_ACPI_PROCFS_POWER and cm_sbsc.c"
+ (regression in 3.13)
+ - ACPI: Revert "ACPI / Battery: Remove battery's proc directory"
+ (regression in 3.13)
+ - [x86] ACPI / video: Add use_native_backlight quirks for more systems
+ - ACPI: Revert "ACPI / AC: convert ACPI ac driver to platform bus"
+ (regression in 3.13)
+ - [x86] ACPI / TPM: Fix resume regression on Chromebooks
+ (regression in 3.14)
+ - i2c: s3c2410: resume race fix
+ - [x86] intel_pstate: Set turbo VID for BayTrail
+ - [s390] crypto: fix aes,des ctr mode concurrency finding.
+ - clk: Fix double free due to devm_clk_register()
+ - clk: Fix slab corruption in clk_unregister()
+ - [powerpc] powernv: Reset root port in firmware (regression in 3.14)
+ - [powerpc] irq work racing with timer interrupt can result in timer
+ interrupt hang (regression in 3.14)
+ - [powerpc] kexec: Fix "Processor X is stuck" issue during kexec from ST
+ mode (regression in 3.13)
+ - spi: core: Ignore unsupported Dual/Quad Transfer Mode bits
+ (regression in 3.12)
+ - libceph: fix corruption when using page_count 0 page in rbd
+ - media: V4L2: ov7670: fix a wrong index, potentially Oopsing the kernel
+ from user-space
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.7
+ - perf: Limit perf_event_attr::sample_period to 63 bits
+ - perf: Fix race in removing an event
+ - SCSI: scsi_transport_sas: move bsg destructor into sas_rphy_remove
+ (regression in 3.13)
+ - [arm] 8051/1: put_user: fix possible data corruption in put_user
+ - [arm] 8064/1: fix v7-M signal return (regression in 3.11)
+ - cpufreq: remove race while accessing cur_policy
+ - firewire: revert to 4 GB RDMA, fix protocols using Memory Space
+ (regression in 3.14)
+ - [mips] Fix typo when reporting cache and ftlb errors for ImgTec cores
+ (regression in 3.14)
+ - dm cache: always split discards on cache block boundaries
+ - virtio_blk: fix race between start and stop queue
+ - sched/deadline: Restrict user params max value to 2^63 ns
+ - sched/dl: Fix race in dl_task_timer()
+ - drm/radeon: avoid crash if VM command submission isn't available
+ - [x86] drm/i915: Only copy back the modified fields to userspace from
+ execbuffer
+ - drm/radeon/dpm: resume fixes for some systems (regression in 3.14)
+ - libata: Blacklist queued trim for Crucial M500 (regression in 3.14.4)
+ - md: always set MD_RECOVERY_INTR when aborting a reshape or other
+ "resync".
+ - md: always set MD_RECOVERY_INTR when interrupting a reshape thread.
+ (regression in 3.12.9, 3.13)
+ - xhci: delete endpoints from bandwidth list before freeing whole device
+ - staging: comedi: ni_daq_700: add mux settling delay
+ - staging: r8192e_pci: fix htons error (regression in 3.14)
+ - ALSA: hda/analog - Fix silent output on ASUS A8JN (regression in 3.12)
+ - USB: io_ti: fix firmware download on big-endian machines (part 2)
+ - usb: pci-quirks: Prevent Sony VAIO t-series from switching usb ports
+ (regression in 3.12)
+ - percpu-refcount: fix usage of this_cpu_ops
+ - [x86] intel_pstate: Remove C0 tracking (regression in 3.14)
+ - [x86] intel_pstate: Correct rounding in busy calculation
+ (regression in 3.14)
+ - [x86] intel_pstate: add sample time scaling
+ - [x86] intel_pstate: Improve initial busy calculation
+ - mm: add !pte_present() check on existing hugetlb_entry callbacks
+ (CVE-2014-3940)
+ - mm: rmap: fix use-after-free in __put_anon_vma
+ - iser-target: Add missing target_put_sess_cmd for ImmedateData failure
+ - iscsi-target: Fix wrong buffer / buffer overrun in
+ iscsi_change_param_value()
+ - target: Fix alua_access_state attribute OOPs for un-configured devices
+ - netfilter: Fix potential use after free in ip6_route_me_harder()
+ - netfilter: nfnetlink: Fix use after free when it fails to process batch
+ - [x86] iommu/vt-d: Fix missing IOTLB flush in intel_iommu_unmap()
+
+ [ Ian Campbell ]
+ * [armhf] Enable VIRTIO_BALLOON and VIRTIO_PCI (Closes: #750742)
+ * [arm64] Update modules included in installer udebs.
+ * Include virtio_mmio in virtio-modules udeb when available.
+
+ [ Aurelien Jarno ]
+ * topconfig: Enable modular HW_RANDOM.
+ * [kernelarch-powerpc] Remove HW_RANDOM.
+ * [kernelarch-x86] Remove HW_RANDOM.
+ * [mips/4kc-malta] Remove HW_RANDOM.
+ * [mips/5kc-malta] Remove HW_RANDOM.
+ * [mips/octeon] Remove HW_RANDOM.
+ * [arm64] Enable modular RTC_DRV_PL031.
+
+ [ Ben Hutchings ]
+ * [ppc64el] Add kernel image, thanks to Mauricio Faria de Oliveira:
+ - Split common/big-endian powerpc64 options
+ - Add little-endian powerpc64 options
+ - Temporarily disable zImage
+ - powerpc/powernv: Add calls to support little endian host
+ - Add 'ppc64le' (uname output) to bug/include-model script
+ - udeb: Add packages based on ppc64 configuration
+ * netfilter: ipv4: defrag: set local_df flag on defragmented skb
+ (regression in 3.14.5)
+ * [mips] seccomp: Check system calls whenever seccomp is enabled,
+ even if audit and trace are disabled (Closes: #751417)
+ * auditsc: audit_krule mask accesses need bounds checking (CVE-2014-3917)
+ * fs,userns: Change inode_capable to capable_wrt_inode_uidgid
+ (CVE-2014-4014)
+ * SCSI: Fix spurious request sense in error handling (regression in 3.14)
+ * PCI/MSI: Fix memory leak in free_msi_irqs() (regression in 3.14)
+ * [rt] hrtimer: Disable MISSED_TIMER_OFFSETS_HIST as it will currently
+ result in a panic
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 16 Jun 2014 09:51:49 +0100
+
+linux (3.14.5-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.5
+ - SCSI: dual scan thread bug fix
+ - SCSI: megaraid: missing bounds check in mimd_to_kioc()
+ - [x86] KVM: remove WARN_ON from get_kernel_ns()
+ - audit: convert PPIDs to the inital PID namespace.
+ - netfilter: nf_tables: fix nft_cmp_fast failure on big endian for size < 4
+ - netfilter: nf_conntrack: reserve two bytes for nf_ct_ext->len
+ (Closes: #741667)
+ - netfilter: Can't fail and free after table replacement
+ - [i386] x86,preempt: Fix preemption for i386
+ - rbd: fix error paths in rbd_img_request_fill()
+ - [x86] drm/i915: restore QUIRK_NO_PCH_PWM_ENABLE (regression in 3.14)
+ - tick-sched: Don't call update_wall_time() when delta is lesser than
+ tick_period (regression in 3.14)
+ - tick-sched: Check tick_nohz_enabled in tick_nohz_switch_to_nohz()
+ (regression in 3.13)
+ - [hppa] change value of SHMLBA from 0x00400000 to PAGE_SIZE
+ - [hppa] fix epoll_pwait syscall on compat kernel
+ - [hppa] remove _STK_LIM_MAX override
+ - vfs: don't bother with {get,put}_write_access() on non-regular files
+ - cifs: Wait for writebacks to complete before attempting write.
+ - xen/spinlock: Don't enable them unconditionally. (regression in 3.12)
+ - thp: close race between split and zap huge pages (regression in 3.13)
+ - mm/hugetlb.c: add cond_resched_lock() in return_unused_surplus_pages()
+ - mm: use paravirt friendly ops for NUMA hinting ptes
+ - USB: io_ti: fix firmware download on big-endian machines
+ - fs: Don't return 0 from get_anon_bdev (regression in 3.14)
+ - [x86] drm/vmwgfx: Make sure user-space can't DMA across buffer object
+ boundaries v2
+ - [x86] drm/i915: Do not dereference pointers from ring buffer in evict
+ event (regression in 3.13)
+ - net: core: don't account for udp header size when computing seglen
+ (regression in 3.14)
+ - bridge: Fix double free and memory leak around br_allowed_ingress
+ - filter: prevent nla extensions to peek beyond the end of the message
+ (CVE-2014-3144, CVE-2014-3145)
+ - Revert "net: sctp: Fix a_rwnd/rwnd management to reflect real state of
+ the receiver's buffer" (regression in 3.14)
+ - ip6_gre: don't allow to remove the fb_tunnel_dev
+ - net: sctp: cache auth_enable per endpoint
+ - net: Fix ns_capable check in sock_diag_put_filterinfo
+ - rtnetlink: Warn when interface's information won't fit in our packet
+ - rtnetlink: Only supply IFLA_VF_PORTS information when RTEXT_FILTER_VF
+ is set
+ - tcp_cubic: fix the range of delayed_ack
+ - net: cdc_ncm: fix buffer overflow (regression in 3.13)
+ - ip_tunnel: Set network header properly for IP_ECN_decapsulate()
+ (regression in 3.11)
+ - ipv4: ip_tunnels: disable cache for nbma gre tunnels (regression in 3.14)
+ - net: cdc_mbim: __vlan_find_dev_deep need rcu_read_lock
+ (regression in 3.13)
+ - net: ipv4: ip_forward: fix inverted local_df test (regression in 3.14)
+ - net: ipv6: send pkttoobig immediately if orig frag size > mtu
+ (regression in 3.14)
+ - ip6_tunnel: fix potential NULL pointer dereference
+ - neigh: set nud_state to NUD_INCOMPLETE when probing router reachability
+ (regression in 3.14)
+ - batman-adv: fix neigh_ifinfo imbalance (regression in 3.14)
+ - batman-adv: fix neigh reference imbalance (regression in 3.14)
+ - batman-adv: always run purge_orig_neighbors (regression in 3.14)
+ - batman-adv: fix removing neigh_ifinfo (regression in 3.14)
+ - [s390,x86] net: filter: fix JIT address randomization
+ - net: avoid dependency of net_get_random_once on nop patching
+ (regression in 3.13)
+ - ipv6: fix calculation of option len in ip6_append_data
+ (regression in 3.13)
+ - rtnetlink: wait for unregistering devices in rtnl_link_unregister()
+ - bonding: fix out of range parameters for bond_intmax_tbl
+ (regression in 3.14)
+ - net: gro: make sure skb->cb[] initial content has not to be zero
+ (regression in 3.13)
+ - batman-adv: fix indirect hard_iface NULL dereference (regression in 3.14)
+ - batman-adv: fix reference counting imbalance while sending fragment
+ (regression in 3.14)
+ - batman-adv: increase orig refcount when storing ref in gw_node
+ - batman-adv: fix local TT check for outgoing arp requests in DAT
+ (regression in 3.13)
+ - net_sched: fix an oops in tcindex filter (regression in 3.14)
+ - ipv6: gro: fix CHECKSUM_COMPLETE support (regression in 3.14)
+ - ipv4: initialise the itag variable in __mkroute_input
+ - net-gro: reset skb->truesize in napi_reuse_skb()
+
+ [ Ben Hutchings ]
+ * [x86] ACPICA: Tables: Fix invalid pointer accesses in
+ acpi_tb_parse_root_table(). (Closes: #748574)
+ * net: Revert lockdep changes in 3.14.5 to avoid an ABI change
+ * futex: Add another early deadlock detection check
+ * futex: Prevent attaching to kernel threads
+ * futex: Forbid uaddr == uaddr2 in futex_requeue(..., requeue_pi=1)
+ (CVE-2014-3153)
+ * futex: Validate atomic acquisition in futex_lock_pi_atomic()
+ * futex: Always cleanup owner tid in unlock_pi
+ * futex: Make lookup_pi_state more robust
+
+ [ Ian Campbell ]
+ * [arm64] Initial kernel configuration and packaging (Closes: #745349).
+ * [armhf] Add virtio-modules udeb.
+
+ [ Aurelien Jarno ]
+ * [mips,mipsel] Fix branch emulation of branch likely instructions.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 05 Jun 2014 13:49:15 +0100
+
+linux (3.14.4-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.3
+ - ASoC: pcm: Drop incorrect double/extra frees
+ - [s390] KVM: Optimize ucontrol path (regression in 3.11)
+ - [s390] bitops,atomic: add missing memory barriers
+ - [s390] fix control register update (regression in 3.14)
+ - mei: me: do not load the driver if the FW doesn't support MEI interface
+ - staging: comedi: usbdux: bug fix for accessing 'ao_chanlist' in private
+ data
+ - [x86] AVX-512: AVX-512 Feature Detection
+ - [x86] AVX-512: Enable AVX-512 States Context Switch
+ - [x86] ftrace: One more missing sync after fixup of function modification
+ failure
+ - [amd64] modify_ldt: Ban 16-bit segments on 64-bit kernels
+ - [armhf] PCI: imx6: Wait for retraining (regression in 3.14)
+ - [arm] PCI: mvebu: Fix potential issue in range parsing
+ (regression in 3.12)
+ - NFSv4: Fix a use-after-free problem in open()
+ - nfsd: revert v2 half of "nfsd: don't return high mode bits"
+ (regression in 3.14)
+ - nfsd4: buffer-length check for SUPPATTR_EXCLCREAT
+ - nfsd4: fix test_stateid error reply encoding
+ - nfsd: notify_change needs elevated write count
+ - nfsd: check passed socket's net matches NFSd superblock's one
+ - nfsd4: fix memory leak in nfsd4_encode_fattr()
+ - nfsd4: fix setclientid encode size
+ - NFSD: Traverse unconfirmed client through hash-table
+ - IB/ipath: Fix potential buffer overrun in sending diag packet routine
+ - IB/nes: Return an error on ib_copy_from_udata() failure instead of NULL
+ - IB/mthca: Return an error on ib_copy_to_udata() failure
+ - IB/ehca: Returns an error on ib_copy_to_udata() failure
+ - IB/core: Don't resolve passive side RoCE L2 address in CMA REQ handler
+ (regression in 3.14)
+ - ib_srpt: Use correct ib_sg_dma primitives
+ - SCSI: arcmsr: upper 32 of dma address lost
+ - iscsi-target: Fix ERL=2 ASYNC_EVENT connection pointer bug
+ - target/iblock: Fix double bioset_integrity_free bug
+ - target/tcm_fc: Fix use-after-free of ft_tpg
+ - [x86] efi: Correct EFI boot stub use of code32_start
+ - efi: Pass correct file handle to efi_file_{read,close}
+ - reiserfs: fix race in readdir
+ - media: v4l2-dv-timings: add module name, description, license
+ - media: em28xx-audio: fix user counting in snd_em28xx_capture_open()
+ - [armhf] usb: musb: fix PHY power on/off (regression in 3.14)
+ - mtip32xx: Unmap the DMA segments before completing the IO request
+ - mtip32xx: mtip_async_complete() bug fixes
+ - iser-target: Match FRMR descriptors to available session tags
+ - iser-target: Add missing se_cmd put for WRITE_PENDING in tx_comp_err
+ - [sh] fix format string bug in stack tracer
+ - mm: page_alloc: spill to remote nodes before waking kswapd
+ (regression in 3.12/3.13)
+ - mm: try_to_unmap_cluster() should lock_page() before mlocking
+ (CVE-2014-3122) (Closes: #747326)
+ - xattr: guard against simultaneous glibc header inclusion
+ - ocfs2: do not put bh when buffer_uptodate failed
+ - ocfs2: fix panic on kfree(xattr->name)
+ - vfs: smarter propagate_mnt()
+ - block: Fix for_each_bvec()
+ - ext4: FIBMAP ioctl causes BUG_ON due to handle EXT_MAX_BLOCKS
+ - ext4: note the error in ext4_end_bio()
+ - ext4: move ext4_update_i_disksize() into mpage_map_and_submit_extent()
+ - ext4: use i_size_read in ext4_unaligned_aio()
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.4
+ - tty: Fix lockless tty buffer race
+ - n_tty: Fix n_tty_write crash when echoing in raw mode (CVE-2014-0196)
+ (Closes: #747166)
+ - floppy: ignore kernel-only members in FDRAWCMD ioctl input (CVE-2014-1737)
+ - floppy: don't write kernel-only members to FDRAWCMD ioctl output
+ (CVE-2014-1738)
+ - KVM: async_pf: mm->mm_users can not pin apf->mm
+ - KVM: ioapic: fix assignment of ioapic->rtc_status.pending_eoi
+ (CVE-2014-0155)
+ - [powerpc] KVM: Book3S HV: Fix KVM hang with CONFIG_KVM_XICS=n
+ (regression in 3.14)
+ - [mips] Hibernate: Flush TLB entries in swsusp_arch_resume()
+ - [powerpc] Fix Oops in rtas_stop_self() (regression in 3.14)
+ - [s390] bpf,jit: initialize A register if 1st insn is BPF_S_LDX_B_MSH
+ - SUNRPC: Ensure that call_connect times out correctly (regression in 3.13)
+ - SUNRPC: Ensure call_connect_status() deals correctly with SOFTCONN tasks
+ (regression in 3.13)
+ - Revert "net: mvneta: fix usage as a module on RGMII configurations"
+ (regression in 3.14)
+ - iwlwifi: dvm: take mutex when sending SYNC BT config command
+ - mac80211: fix potential use-after-free
+ - mac80211: fix WPA with VLAN on AP side with ps-sta again
+ - locks: allow __break_lease to sleep even when break_time is 0
+ - rtlwifi: rtl8192se: Fix regression due to commit 1bf4bbb
+ (regression in 3.13)
+ - dm cache: prevent corruption caused by discard_block_size >
+ cache_block_size
+ - dm transaction manager: fix corruption due to non-atomic transaction
+ commit
+ - dm: take care to copy the space map roots before locking the superblock
+ - dm thin: fix dangling bio in process_deferred_bios error path
+ - aio: v4 ensure access to ctx->ring_pages is correctly serialised for
+ migration
+ - cpufreq: loongson2_cpufreq: don't declare local variable as static
+ (regression in 3.14)
+
+ [ Ben Hutchings ]
+ * [or1k] Build a linux-libc-dev package (Closes: #746309)
+ * net: Start with correct mac_len in skb_network_protocol (Closes: #746453)
+ * [x86] ACPI/Processor: Fix failure of loading acpi-cpufreq driver
+ (Closes: #746448)
+ * [armhf] ARM: sun4i: dt: Add bindings for USB clocks (fixes FTBFS,
+ Closes: #746420)
+ * [x86] udeb: Add hyperv-keyboard to hyperv-modules
+ * drm: Enable auto-loading of ast, udl
+ * [ppc64el] Build a linux-libc-dev package (Closes: #747367)
+ * net: ipv4: current group_info should be put after using. (CVE-2014-2851)
+ * filter: prevent nla extensions to peek beyond the end of the message
+ (CVE-2014-3144, CVE-2014-3145)
+ * [powerpc,ppc64] Add versioned build-dependency on gcc-4.8, as compiler
+ changes have resulted in a different kernel module ABI
+ - [powerpc] Bump ABI to 1a as 3.14.2-1 was built with an older compiler
+ * [armhf] Enable IR_GPIO_CIR as module (Closes: #747762)
+ * [hppa/parisc64-smp] ipmi: Enable IPMI_HANDLER, IPMI_DEVICE_INTERFACE,
+ IPMI_SI, IPMI_WATCHDOG, IPMI_POWEROFF as modules (Closes: #747482)
+ * [armhf] Enable various drivers to support BeagleBone Black
+ (Closes: #747364)
+ * [hppa] udeb: Add xfs-modules (Closes: #746506)
+ * udeb: Add mtip32xx, nvme to sata-modules
+ * [rt] Update to 3.14.3-rt5:
+ - tracing: use migrate_disable() to prevent beeing pushed off the cpu
+ - rwsem-rt: Do not allow readers to nest
+ - Revert "migrate_disable pushd down in atomic_dec_and_spin_lock"
+ - rwlock: disable migration before taking a lock
+ - timer: do not spin_trylock() on UP
+ - stomp-machine: Fix wait for completion
+ - stomp-machine: create lg_global_trylock_relax() primitive
+ - stomp-machine: use lg_global_trylock_relax() to dead with
+ stop_cpus_lock lglock
+ - blk-mq: revert raw locks, post pone notifier to POST_DEAD
+ - use EXPORT_SYMBOL() on __rt_mutex_init() and rt_down_write_nested_lock()
+ - netconsole: Allow use with PREEMPT_RT_FULL
+ * aufs: Update to aufs3.14-20140512:
+ - bugfix, stop calling security_mmap_file() again
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 14 May 2014 00:46:05 +0100
+
+linux-tools (3.14-1) unstable; urgency=medium
+
+ * New upstream release
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 28 Apr 2014 17:46:24 +0100
+
+linux (3.14.2-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.2
+
+ [ Ian Campbell ]
+ * [armhf] Drop suffix from kernel udeb.
+ * [armhf] Backport sunxi AHCI and GMAC drivers from v3.15-rc1
+
+ [ Ben Hutchings ]
+ * [x86] Enable X86_INTEL_LPSS (Closes: #745331)
+ * [x86] thinkpad_acpi: Add support for X1 Carbon 2nd generation's adaptive
+ keyboard (Closes: #745252)
+ * [armhf] Enable more Allwinner/sunxi drivers (Closes: #745972):
+ - spi: sunxi: Add Allwinner A31 SPI controller driver
+ - ARM: dt: sun4i: Add A10 SPI controller nodes
+ - PHY: sunxi: Add driver for sunxi usb phy
+ - ARM: sun4i: dt: Add USB host bindings
+ - Enable PHY_SUN4I_USB, RTC_DRV_SUNXI, SPI_SUN6I, USB_EHCI_HCD_PLATFORM,
+ USB_OHCI_HCD_PLATFORM and CONFIG_SUNXI_WATCHDOG as modules
+ * Set ABI to 1
+ * Staging: speakup: Move pasting into a work item and update it to match vt
+ (Closes: #735202, #744015)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 28 Apr 2014 17:12:03 +0100
+
+linux (3.14.1-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.1
+
+ [ Ben Hutchings ]
+ * [armel] Disable ixp4xx flavour (fixes FTBFS)
+ * [armhf] Enable SECURITY_APPARMOR, SECURITY_TOMOYO
+ * [rt] Update to 3.14.0-rt1 and reenable
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 17 Apr 2014 13:17:18 +0100
+
+linux (3.14-1~exp1) experimental; urgency=medium
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.14
+
+ [ Ben Hutchings ]
+ * nftables: Enable NF_TABLES_BRIDGE, NF_TABLES_IPV4, NFT_CHAIN_ROUTE_IPV4,
+ NFT_CHAIN_NAT_IPV4, NF_TABLES_ARP, NF_TABLES_IPV6, NFT_CHAIN_ROUTE_IPV6,
+ NFT_CHAIN_NAT_IPV6 as modules (Closes: #742763)
+ * udeb: Update sound-modules, thanks to Samuel Thibault (Closes: #743319)
+ * aufs: Update to aufs3.14-20140407 (no functional changes)
+ * mtd: Enable MTD_NAND_ECC_BCH (Closes: #743933)
+ * drm: Enable DRM_LOAD_EDID_FIRMWARE (Closes: #728275)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 09 Apr 2014 09:53:05 +0100
+
+linux-tools (3.14~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 17 Mar 2014 19:31:14 +0000
+
+linux (3.14~rc7-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * bfa,bna: Replace large udelay() with mdelay() (fixes FTBFS on arm)
+ (Closes: #741142)
+ * aufs: Update to aufs3.x-rcN-20140310
+ - bugfix, Fix unmount to properly free anonymous block devices
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 17 Mar 2014 13:30:03 +0000
+
+linux (3.14~rc5-1~exp1) experimental; urgency=medium
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * mm: Enable ZSMALLOC as built-in, ZRAM as module (except for
+ armel/{ixp4xx,orion5x}) (Closes: #676779)
+ * iio,HID: Enable HID_SENSOR_INCLINOMETER_3D as module
+ * media/radio: Enable USB_RAREMONO as module
+ * i40e: Enable I40E_VXLAN, I40E_DCB
+ * net: Enable I40EVF, USB_NET_SR9800 as modules
+ * serial: Enable USB_SERIAL_MXUPORT as module
+ * ceph: Enable CEPH_FS_POSIX_ACL
+ * netfilter: Enable NF_TABLES_INET, NFT_QUEUE, NFT_REJECT,
+ NETFILTER_XT_MATCH_CGROUP, NETFILTER_XT_MATCH_IPCOMP as modules
+ * net/sched: Enable NET_SCH_HHF, NET_SCH_PIE as modules
+ * [x86] crypto: Enable CRYPTO_DEV_CCP, CRYPTO_DEV_CCP_DD,
+ CRYPTO_DEV_CCP_CRYPTO as modules
+ * [x86] platform: Enable CHROMEOS_PSTORE, HP_WIRELESS as modules
+ * [x86] comedi: Enable COMEDI_MF6X4 as modules
+ * [x86] staging: Enable R8821AE, RTS5208 as modules
+ * [x86] thermal: Enable ACPI_INT3403_THERMAL as module
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 07 Mar 2014 03:36:35 +0000
+
+linux (3.13.10-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.8
+ - ALSA: compress: Pass through return value of open ops callback
+ - [hppa] partly revert commit 8a10bc9: parisc/sti_console: prefer Linux
+ fonts over built-in ROM fonts (regression in 3.13.2)
+ - [armhf] net: davinci_emac: Replace devm_request_irq with request_irq
+ (regression in 3.11)
+ - NFSv4: Use the correct net namespace in nfs4_update_server
+ - media: cxusb: unlock on error in cxusb_i2c_xfer() (regression in 3.13)
+ - media: dw2102: some missing unlocks on error (regression in 3.13)
+ - libceph: block I/O when PAUSE or FULL osd map flags are set
+ - libceph: resend all writes after the osdmap loses the full flag
+ - stop_machine: Fix^2 race between stop_two_cpus() and stop_cpus()
+ - [arm] 7941/2: Fix incorrect FDT initrd parameter override
+ (regression in 3.13)
+ - [x86] bpf_jit: support negative offsets
+ - printk: fix syslog() overflowing user buffer
+ - Fix uses of dma_max_pfn() when converting to a limiting address
+ - deb-pkg: Fix building for MIPS big-endian or ARM OABI
+ - deb-pkg: Fix cross-building linux-headers package
+ - fs/proc/proc_devtree.c: remove empty /proc/device-tree when no
+ openfirmware exists.
+ - KVM: MMU: handle invalid root_hpa at __direct_map
+ - [x86] KVM: x86: handle invalid root_hpa everywhere
+ - KVM: VMX: fix use after free of vmx->loaded_vmcs
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.9
+ - ext4: atomically set inode->i_flags in ext4_set_inode_flags()
+ - rcuwalk: recheck mount_lock after mountpoint crossing attempts
+ - Input: mousedev - fix race when creating mixed device
+ - xen/balloon: flush persistent kmaps in correct position
+ - Revert "xen: properly account for _PAGE_NUMA during xen pte translations"
+ (regression in 3.13.5)
+ - drm/i915: Undo gtt scratch pte unmapping again (regression in 3.12)
+ - [i386/486] fix boot on uniprocessor systems
+ - random32: avoid attempt to late reseed if in the middle of seeding
+ - rcuwalk: switch mnt_hash to hlist
+ - mm: close PageTail race
+ - cgroup: protect modifications to cgroup_idr with cgroup_mutex
+ - netfilter: nf_conntrack_dccp: fix skb_header_pointer API usages
+ (CVE-2014-2523)
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.10
+ - selinux: correctly label /proc inodes in use before the policy is loaded
+ - net: sctp: fix skb leakage in COOKIE ECHO path of chunk->auth_chunk
+ - bridge: multicast: add sanity check for query source addresses
+ - tipc: allow connection shutdown callback to be invoked in advance
+ - tipc: fix connection refcount leak
+ - tipc: drop subscriber connection id invalidation
+ - inet: frag: make sure forced eviction removes all frags
+ - vlan: Set correct source MAC address with TX VLAN offload enabled
+ (regression in 3.13)
+ - tcp: tcp_release_cb() should release socket ownership
+ - bridge: multicast: add sanity check for general query destination
+ - bridge: multicast: enable snooping on general queries only
+ - net: socket: error on a negative msg_namelen (regression in 3.11.10)
+ - bonding: set correct vlan id for alb xmit path (regression in 3.12)
+ - ipv6: Avoid unnecessary temporary addresses being generated
+ - net: cdc_ncm: fix control message ordering (regression in 3.13)
+ - tcp: syncookies: do not use getnstimeofday() (regression in 3.13)
+ - tipc: fix spinlock recursion bug for failed subscriptions
+ - ip_tunnel: Fix dst ref-count. (regression in 3.13.7)
+ - tg3: Do not include vlan acceleration features in vlan_features
+ - virtio-net: correct error handling of virtqueue_kick()
+ (regression in 3.13)
+ - usbnet: include wait queue head in device structure
+ - vhost: fix total length when packets are too short (CVE-2014-0077)
+ - vhost: validate vhost_get_vq_desc return value (CVE-2014-0055)
+ - tcp: fix get_timewait4_sock() delay computation on 64bit
+ (regression in 3.13)
+ - xen-netback: remove pointless clause from if statement
+ - netlink: don't compare the nul-termination in nla_strcmp
+ - xen-netback: disable rogue vif in kthread context
+ - net: vxlan: fix crash when interface is created with no group
+ - rds: prevent dereference of a NULL device in rds_iw_laddr_check
+ (CVE-2014-2678)
+ - powernow-k6: disable cache when changing frequency
+ - [m68k] Skip futex_atomic_cmpxchg_inatomic() test
+ - crypto: ghash-clmulni-intel - use C implementation for setkey()
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 15 Apr 2014 22:12:38 +0100
+
+linux (3.13.7-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.7
+ - mm: page_alloc: exempt GFP_THISNODE allocations from zone fairness
+ (regression in 3.12)
+ - mm: include VM_MIXEDMAP flag in the VM_SPECIAL list to avoid m(un)locking
+ (regression in 3.12)
+ - ocfs2: fix quota file corruption
+ - ocfs2 syncs the wrong range...
+ - memcg: fix endless loop in __mem_cgroup_iter_next()
+ (regression in 3.13.3)
+ - net-tcp: fastopen: fix high order allocations
+ - ipv6: reuse ip6_frag_id from ip6_ufo_append_data
+ - ipv4: ipv6: better estimate tunnel header cut for correct ufo handling
+ - ip_tunnel:multicast process cause panic due to skb->_skb_refdst NULL
+ pointer
+ - mac80211: clear sequence/fragment number in QoS-null frames
+ - ath9k: Fix ETSI compliance for AR9462 2.0
+ - ath9k: protect tid->sched check
+ - cpuset: fix a locking issue in cpuset_migrate_mm()
+ - cpuset: fix a race condition in __cpuset_node_allowed_softwall()
+ - firewire: net: fix use after free
+ - firewire: don't use PREPARE_DELAYED_WORK
+ - libata: disable queued TRIM for Crucial M500 mSATA SSDs
+ - libata: use wider match for blacklisting Crucial M500
+ - NFSv4: Fix another nfs4_sequence corruptor (Closes: #734268)
+ - cpufreq: use cpufreq_cpu_get() to avoid cpufreq_get() race conditions
+ - cpufreq: Skip current frequency initialization for ->setpolicy drivers
+ (regression in 3.13)
+ - iscsi/iser-target: Use list_del_init for ->i_conn_node
+ - iser-target: Ignore completions for FRWRs in isert_cq_tx_work
+ - iser-target: Fix post_send_buf_count for RDMA READ/WRITE
+ - mm/readahead.c: fix do_readahead() for no readpage(s)
+ (regression in 3.13)
+ - fs/proc/base.c: fix GPF in /proc/$PID/map_files
+ - drm/i915: fix pch pci device enumeration (regression in 3.11)
+ - drm/i915: Reject >165MHz modes w/ DVI monitors (regression in 3.11)
+ - drm/radeon: fix runpm disabling on non-PX harder
+ (may fix #741619, #742507)
+ - PCI: Enable INTx in pci_reenable_device() only when MSI/MSI-X not enabled
+ (fixes regression in 3.13.6)
+ - [x86] vmxnet3: fix netpoll race condition
+ - mm/compaction: break out of loop on !PageBuddy in isolate_freepages_block
+ - dm space map metadata: fix refcount decrement below 0 which caused
+ corruption
+ - dm cache: fix truncation bug when copying a block to/from >2TB fast
+ device
+ - net: unix socket code abuses csum_partial
+ - SCSI: qla2xxx: Fix multiqueue MSI-X registration.
+ - [x86] fpu: Check tsk_used_math() in kernel_fpu_end() for eager FPU
+ - Btrfs: fix tree mod logging
+ - Btrfs: fix data corruption when reading/updating compressed extents
+ - intel_pstate: Add setting voltage value for baytrail P states.
+ - Fix mountpoint reference leakage in linkat
+ - bio-integrity: Fix bio_integrity_verify segment start bug
+ - memcg: reparent charges of children before processing parent
+
+ [ Ben Hutchings ]
+ * [arm] mm: Avoid ABI change in 3.13.6 (fixes FTBFS)
+ * nfqueue: Orphan frags in nfqnl_zcopy() and handle errors (CVE-2014-2568)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 25 Mar 2014 17:23:31 +0000
+
+linux-tools (3.13.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.5
+ - Modpost: fixed USB alias generation for ranges including 0x9 and 0xA
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.6
+ - perf trace: Fix ioctl 'request' beautifier build problems on
+ !(i386 || x86_64) arches
+
+ [ Ben Hutchings ]
+ * linux-tools: Remove the 'trace_3.13' link to perf
+ * Clean another autoconf-generated file so double-builds work
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 19 Mar 2014 22:33:21 +0000
+
+linux (3.13.6-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.6
+ - drm/nouveau/fb: use correct ram oclass for nv1a hardware
+ (regression in 3.13)
+ - ext4: fix xfstest generic/299 block validity failures
+ - ext4: fix error paths in swap_inode_boot_loader()
+ - ext4: don't try to modify s_flags if the the file system is read-only
+ - ext4: fix online resize with a non-standard blocks per group setting
+ - [arm] 7950/1: mm: Fix stage-2 device memory attributes
+ - [arm] 7953/1: mm: ensure TLB invalidation is complete before enabling MMU
+ - [arm] 7957/1: add DSB after icache flush in __flush_icache_all()
+ - powerpc: Set the correct ksp_limit on ppc32 when switching to irq stack
+ (regression in 3.12)
+ - jbd2: fix use after free in jbd2_journal_start_reserved()
+ - cifs: ensure that uncached writes handle unmapped areas correctly
+ (CVE-2014-0069)
+ - NFS: Do not set NFS_INO_INVALID_LABEL unless server supports labeled NFS
+ (regression in 3.11)
+ - NFS fix error return in nfs4_select_rw_stateid (regression in 3.12)
+ - bridge: fix netconsole setup over bridge (regression in 3.12)
+ - net: fix 'ip rule' iif/oif device rename
+ - net: asix: add missing flag to struct driver_info
+ - gre: add link local route when local addr is any (regression in 3.13)
+ - ipv4: fix counter in_slow_tot
+ - net: use __GFP_NORETRY for high order allocations
+ - batman-adv: fix soft-interface MTU computation (regression in 3.13)
+ - batman-adv: fix TT-TVLV parsing on OGM reception
+ - batman-adv: release vlan object after checking the CRC
+ - batman-adv: properly check pskb_may_pull return value
+ - batman-adv: avoid potential race condition when adding a new neighbour
+ - batman-adv: fix TT CRC computation by ensuring byte order
+ (regression in 3.13)
+ - batman-adv: free skb on TVLV parsing success
+ - batman-adv: avoid double free when orig_node initialization fails
+ - batman-adv: fix potential kernel paging error for unicast transmissions
+ - cgroup: fix error return value in cgroup_mount()
+ - cgroup: fix error return from cgroup_create()
+ - cgroup: fix locking in cgroup_cfts_commit()
+ - cgroup: update cgroup_enable_task_cg_lists() to grab siglock
+ - fs: fix iversion handling
+ - kvm: x86: fix emulator buffer overflow (CVE-2014-0049)
+ - kvm, vmx: Really fix lazy FPU on nested guest
+ - SUNRPC: Ensure that gss_auth isn't freed before its upcall messages
+ - powerpc/powernv: Fix opal_xscom_{read,write} prototype
+ - powerpc/powernv: Fix indirect XSCOM unmangling
+ - perf/x86: Fix event scheduling
+ - sata_sil: apply MOD15WRITE quirk to TOSHIBA MK2561GSYN
+ - cpufreq: powernow-k8: Initialize per-cpu data-structures properly
+ (regression in 3.12)
+ - Revert "writeback: do not sync data dirtied after sync start"
+ (regression in 3.13)
+ - [arm] PCI: mvebu: Use Device ID and revision from underlying endpoint
+ - PCI: Enable INTx if BIOS left them disabled
+ - i7core_edac: Fix PCI device reference count
+ - can: kvaser_usb: check number of channels returned by HW
+ - usb: chipidea: need to mask when writting endptflush and endptprime
+ - mei: set client's read_cb to NULL when flow control fails
+ - workqueue: ensure @task is valid across kthread_stop()
+ - regulator: da9063: Bug fix when setting max voltage on LDOs 5-11
+ - [armhf] mtd: nand: omap: fix ecclayout to be in sync with u-boot NAND
+ driver (regression in 3.13)
+ - [armhf] mtd: nand: omap: fix ecclayout->oobfree->offset
+ - [armhf] mtd: nand: omap: fix ecclayout->oobfree->length
+ - [armhf/armmp-lpae] iommu/arm-smmu: fix pud/pmd entry fill sequence
+ - [armhf/armmp-lpae] iommu/arm-smmu: really fix page table locking
+ - [armhf/armmp-lpae] iommu/arm-smmu: fix table flushing during initial
+ allocations
+ - [armhf/armmp-lpae] iommu/arm-smmu: set CBARn.BPSHCFG to NSH for
+ s1-s2-bypass contexts
+ - perf: Fix hotplug splat
+ - quota: Fix race between dqput() and dquot_scan_active()
+ - ipc,mqueue: remove limits for the amount of system-wide queues
+ - mm, thp: fix infinite loop on memcg OOM
+ - qla2xxx: Fix kernel panic on selective retransmission request
+ - i7300_edac: Fix device reference count
+ - dm cache: move hook_info into common portion of per_bio_data structure
+ (regression in 3.13)
+ - drm/radeon: fix missing bo reservation
+ - drm/radeon: free uvd ring on unload
+
+ [ Ben Hutchings ]
+ * xhci: Revert more sg changes (Closes: #741989; also see #738113):
+ - Revert "xhci 1.0: Limit arbitrarily-aligned scatter gather."
+ - Revert "USBNET: ax88179_178a: enable tso if usb host supports sg dma"
+ * aufs: Update to aufs3.13-20140303
+ - bugfix, Fix unmount to properly free anonymous block devices
+ * net: fix for a race condition in the inet frag code (CVE-2014-0100)
+ * net: sctp: fix sctp_sf_do_5_1D_ce to verify if we/peer is AUTH capable
+ (CVE-2014-0101)
+ * KEYS: Make the keyring cycle detector ignore other keyrings of the
+ same name (CVE-2014-0102)
+ * skbuff: skb_segment: orphan frags before copying (CVE-2014-0131)
+ * ipv6: don't set DST_NOCOUNT for remotely added routes (CVE-2014-2309)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 19 Mar 2014 16:18:42 +0000
+
+linux (3.13.5-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.5
+ - xen: properly account for _PAGE_NUMA during xen pte translations
+ - mm: fix page leak at nfs_symlink()
+ - mm/memory-failure.c: move refcount only in !MF_COUNT_INCREASED
+ - CIFS: Fix SMB2 mounts so they don't try to set or get xattrs via cifs
+ - CIFS: Add protocol specific operation for CIFS xattrs
+ - CIFS: retrieving CIFS ACLs when mounted with SMB2 fails dropping session
+ - mac80211: release the channel in error path in start_ap
+ - mac80211: Fix IBSS disconnect
+ - mac80211: fix fragmentation code, particularly for encryption
+ - ath9k_htc: Do not support PowerSave by default
+ - ath9k: Do not support PowerSave by default
+ - [s390x] fix kernel crash due to linkage stack instructions
+ - raw: test against runtime value of max_raw_minors
+ - hwmon: (ntc_thermistor) Avoid math overflow
+ - lockd: send correct lock when granting a delayed lock.
+ - drm/i915: Pair va_copy with va_end in i915_error_vprintf
+ - vt: Fix secure clear screen
+ - staging: lustre: fix quotactl permission denied (LU-4530)
+ - staging: comedi: adv_pci1710: fix analog output readback value
+ - iio: adis16400: Set timestamp as the last element in chan_spec
+ - iio: ak8975: Fix calculation formula for convert micro tesla to gauss
+ unit
+ - usb-storage: add unusual-devs entry for BlackBerry 9000
+ - usb-storage: restrict bcdDevice range for Super Top in Cypress ATACB
+ - xhci 1.0: Limit arbitrarily-aligned scatter gather.
+ - Revert "usbcore: set lpm_capable field for LPM capable root hubs"
+ (regression in 3.12.1)
+ - block: __elv_next_request() shouldn't call into the elevator if bypassing
+ - block: Fix nr_vecs for inline integrity vectors
+ - block: add cond_resched() to potentially long running ioctl discard loop
+ - compiler/gcc4: Make quirk for asm_volatile_goto() unconditional
+ - misc: mic: fix possible signed underflow (undefined behavior) in
+ userspace API
+ - KVM: return an error code in kvm_vm_ioctl_register_coalesced_mmio()
+ - md/raid1: restore ability for check and repair to fix read errors.
+ (regression in 3.10.5)
+ - i2c: mv64xxx: refactor message start to ensure proper initialization
+ - target: Fix free-after-use regression in PR unregister
+ - drivers/edac/edac_mc_sysfs.c: poll timeout cannot be zero
+ - EDAC: Poll timeout cannot be zero, p2
+ - EDAC: Correct workqueue setup path
+
+ [ Ben Hutchings ]
+ * [armhf] net/wireless: Really enable WL_TI and dependent modules
+ * aufs: Update to aufs3.13-20140127 (no functional changes)
+ * [powerpc] Change I2C_POWERMAC from module to built-in (Closes: #713943)
+ * [mips] rtl8187: fix regression on MIPS without coherent DMA
+ (Closes: #739978)
+ * [x86] Enable CHROME_PLATFORMS and re-enable CHROMEOS_LAPTOP as module
+ (Closes: #740042)
+ * [armel/!kirkwood] udeb: Re-add lzo-modules udeb as lzo_compress is a
+ module again (Closes: #740219)
+ * debian/control: Simplify build-dependencies:
+ - Remove versions for debhelper, python, kernel-wedge that are
+ satisfied by stable
+ - Remove module-init-tools as alternative to kmod, which is in stable
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 04 Mar 2014 19:49:27 +0000
+
+linux-tools (3.13.4-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.2
+ - perf kvm: Fix kvm report without guestmount.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 22 Feb 2014 15:39:27 +0000
+
+linux (3.13.4-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.1
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.2
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.3
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.13.4
+
+ [ Ben Hutchings ]
+ * [x86] Enable POWERCAP, INTEL_RAPL as module (Closes: #736399)
+ * [arm] Disable OABI_COMPAT and enable AUDITSYSCALL (except for
+ armel/{ixp4xx,orion5x}) (Closes: #728975, #736843)
+ * [x86] Enable R8188EU as module, 88EU_AP_MODE and 88EU_P2P (Closes: #736905)
+ * [x86] Enable I2C_DESIGNWARE_PLATFORM as module (Closes: #737163)
+ * [x86] snd-pcsp: Disable autoload (Closes: #697709)
+ * DFSG: Remove the af9005 initialisation script and vs6624 driver again
+ (they were renamed in 3.7)
+ * linux-image.postinst: Use lstat() to check symlink existence
+ (Closes: #738707)
+ * [hppa] Update configuration, thanks to Helge Deller (Closes: #738487)
+ - megaraid: Enable MEGARAID_NEWGEN as module; disable MEGARAID_LEGACY
+ - drm: Change DRM from module to built-in
+ - [/parisc64-smp] udeb: Add fb-modules package containing radeon driver
+ * udeb: Add various recently enabled drivers
+ - Add i40e to nic-modules
+ - Add r815x to nic-usb-modules
+ - Add ath10k_core, ath10k_pci, brcmfmac to nic-wireless-modules
+ - Add esas2r to scsi-modules
+ * Bluetooth: allocate static minor for vhci (fixes depmod error)
+ * Set ABI to 1
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 22 Feb 2014 11:54:57 +0000
+
+linux-tools (3.13-1~exp3) experimental; urgency=medium
+
+ * linux-tools: Fix/revert unportable code in perf trace (fixes FTBFS
+ on powerpc, sparc)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 07 Feb 2014 20:36:29 +0000
+
+linux-tools (3.13-1~exp2) experimental; urgency=medium
+
+ * Merge changes from sid up to 3.12.6-3
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 02 Feb 2014 16:57:49 +0100
+
+linux-tools (3.13-1~exp1) experimental; urgency=low
+
+ * New upstream release
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 02 Feb 2014 12:02:29 +0100
+
+linux (3.13-1~exp1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.13
+
+ [ Ben Hutchings ]
+ * [armhf] xen/pci: Fix build on non-x86
+ * [hppa/parisc64-smp] Disable MLONGCALLS (Closes: #733897)
+ * [armel] Remove iop32x flavour (fixes FTBFS)
+ * aufs: Update to aufs3.x-rcN-20140120
+ - bugfix, removed /proc/PID/fd/N
+
+ [ Bastian Blank ]
+ * Initial Python 3 support:
+ - Build-depend on python-six.
+
+ [ Aurelien Jarno ]
+ * [mipsel] Remove cobalt d-i files.
+ * [mipsel] Enable KEXEC like on mips.
+ * [mipsel] Explicitly unset RAPIDIO like on mips.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 20 Jan 2014 05:43:51 +0000
+
+linux (3.13~rc6-1~exp1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [rt] Disable until it is updated for 3.13 or later
+ * aufs: Update to aufs3.x-rcN-20131223
+ * [x86] staging: lustre: Make LUSTRE_LLITE_LLOOP tristate
+ * mm: Enable MEM_SOFT_DIRTY, NUMA_BALANCING but not
+ NUMA_BALANCING_DEFAULT_ENABLED
+ * ipv6: Enable IPV6_VTI as module
+ * netfilter: Enable NF_TABLES, NFT_EXTHDR, NFT_META, NFT_CT, NFT_RBTREE,
+ NFT_HASH, NFT_COUNTER, NFT_LOG, NFT_LIMIT, NFT_NAT, NFT_COMPAT,
+ IP_SET_HASH_NETPORTNET, IP_SET_HASH_NETNET, IP_NF_TARGET_SYNPROXY,
+ IP6_NF_TARGET_SYNPROXY as modules
+ * net/sched: Enable NET_CLS_BPF as module
+ * nfc: Enable NFC_DIGITAL, NFC_PORT100 as modules
+ * block: Enable BLK_DEV_NULL_BLK, BLK_DEV_SKD as modules
+ * SCSI: Enable SCSI_ESAS2R as module
+ * net/usb: Enable USB_NET_HUAWEI_CDC_NCM as module
+ * touchscreen: Enable TOUCHSCREEN_SUR40 as module
+ * [x86] video: Enable X86_SYSFB, FB_SIMPLE
+ * [x86] ACPI: Enable ACPI_EXTLOG
+ * [x86] touchscreen: Enable TOUCHSCREEN_TSC_SERIO as module
+ * [x86] tpm: Enable TCG_TIS_I2C_ATMEL, TCG_TIS_I2C_INFINEON,
+ TCG_TIS_I2C_NUVOTON, TCG_ST33_I2C, TCG_XEN as modules
+ * [amd64] misc: Enable INTEL_MIC_HOST as module
+ * [powerpc/powerpc64] block: Enable AIX_PARTITION
+ * net/sched: Change NET_CLS_CGROUP from built-in to module
+ * nfc: Disable NFC_NCI as no enabled drivers need it
+ * misc: Disable BMP085_I2C as unlikely to be useful
+
+ [ Aurelien Jarno ]
+ * [mipsel] Remove r5k-cobalt flavour.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 30 Dec 2013 02:36:11 +0100
+
+linux-tools (3.12.6-3) unstable; urgency=medium
+
+ * linux-tools: Explicitly enable/disable libunwind usage for all
+ architectures (fixes FTBFS on s390x and sparc)
+ * linux-tools: Only use libunwind on x86, as perf needs additional
+ porting work for other architectures (fixes FTBFS on arm and powerpc)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 02 Feb 2014 16:46:44 +0100
+
+linux-tools (3.12.6-2) unstable; urgency=medium
+
+ * linux-tools: Replace build-dependency on libunwind7-dev with
+ libunwind8-dev
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 02 Feb 2014 11:51:18 +0100
+
+linux (3.12.9-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.12.9
+ - Revert "ACPI: Add BayTrail SoC GPIO and LPSS ACPI IDs"
+ (regression in 3.12.7)
+ - GFS2: Increase i_writecount during gfs2_setattr_chown
+ - vfs: Fix a regression in mounting proc (regression in 3.12)
+ - fork: Allow CLONE_PARENT after setns(CLONE_NEWPID) (regression in 3.12)
+ - i2c: Re-instate body of i2c_parent_is_i2c_adapter() (regression in 3.12)
+ - writeback: Fix data corruption on NFS
+ - thp: fix copy_page_rep GPF by testing is_huge_zero_pmd once only
+ - [x86] ftrace: Load ftrace_ops in parameter not the variable holding it
+ - nilfs2: fix segctor bug that causes file system corruption
+ - md: fix problem when adding device to read-only array with bitmap.
+ - md/raid10: fix bug when raid10 recovery fails to recover a block.
+ - md/raid10: fix two bugs in handling of known-bad-blocks.
+ - md/raid5: Fix possible confusion when multiple write errors occur.
+ - mm: Make {,set}page_address() static inline if WANT_PAGE_VIRTUAL
+ (fixes FTBFS on sparc and m68k)
+ - [x86] drm/i915: Don't grab crtc mutexes in intel_modeset_gem_init()
+ (regression in 3.12.7)
+ - [arm] 7938/1: OMAP4/highbank: Flush L2 cache before disabling
+
+ [ Ben Hutchings ]
+ * HID: Enable HID_ELO, HID_XINMO as modules (Closes: #736369)
+ * xhci: Revert generalised sg support (Closes: #733826, #736274)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 01 Feb 2014 18:50:01 +0100
+
+linux (3.12.8-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.12.7
+ - [powerpc] kvm: fix rare but potential deadlock scene
+ - [m68k] TTY: pmac_zilog, check existence of ports in pmz_console_init()
+ - xhci: Limit the spurious wakeup fix only to HP machines (fixes
+ regression in 3.12)
+ - usb: chipidea: host: Only disable the vbus regulator if it is not NULL
+ (fixes regression in 3.12)
+ - aio: fix kioctx leak introduced by "aio: Fix a trinity splat"
+ - iser-target: Move INIT_WORK setup into isert_create_device_ib_res
+ - [x86] idle: Repair large-server 50-watt idle-power regression
+ (fixes regression in 3.10)
+ - ext4: call ext4_error_inode() if jbd2_journal_dirty_metadata() fails
+ - ext4: fix use-after-free in ext4_mb_new_blocks
+ - ext4: fix del_timer() misuse for ->s_err_report
+ - ext4: add explicit casts when masking cluster sizes
+ - ext4: fix bigalloc regression
+ - sched/rt: Fix rq's cpupri leak while enqueue/dequeue child RT entities
+ - net_dma: mark broken (fixes potential data loss)
+ - drm/i915: Take modeset locks around intel_modeset_setup_hw_state()
+ - drm/i915: Hold mutex across i915_gem_release
+ - drm/i915: Fix use-after-free in do_switch
+ - drm/i915: don't update the dri1 breadcrumb with modesetting
+ - drm/i915: Fix erroneous dereference of batch_obj inside reset_status
+ - ceph: Avoid data inconsistency due to d-cache aliasing in readpage()
+ - tg3: Expand 4g_overflow_test workaround to skb fragments of any size.
+ - cgroup: fix cgroup_create() error handling path
+ - [powerpc] auxvec.h: account for AT_HWCAP2 in AT_VECTOR_SIZE_BASE
+ - ath9k_htc: properly set MAC address and BSSID mask (CVE-2013-4579)
+ (Closes: #729573)
+ - KVM: nVMX: Unconditionally uninit the MMU on nested vmexit
+ - [x86] KVM: Fix APIC map calculation after re-enabling
+ - [powerpc] Fix bad stack check in exception entry
+ - libata: implement ATA_HORKAGE_NO_NCQ_TRIM and apply it to Micro M500 SSDs
+ (fixes potential data loss)
+ - radiotap: fix bitmap-end-finding buffer overrun
+ - mm: numa: serialise parallel get_user_page against THP migration
+ - mm: numa: call MMU notifiers on THP migration
+ - mm: clear pmd_numa before invalidating
+ - mm: numa: do not clear PTE for pte_numa update
+ - mm: numa: ensure anon_vma is locked to prevent parallel THP splits
+ - sched: numa: skip inaccessible VMAs
+ - mm: numa: clear numa hinting information on mprotect
+ - mm: fix TLB flush race between migration, and change_protection_range
+ - mm: numa: guarantee that tlb_flush_pending updates are visible before
+ page table updates
+ - mm/mempolicy: correct putback method for isolate pages if failed
+ - mm/compaction: respect ignore_skip_hint in update_pageblock_skip
+ - mm/hugetlb: check for pte NULL pointer in __page_check_address()
+ - mm: munlock: fix a bug where THP tail page is encountered
+ - mm: munlock: fix deadlock in __munlock_pagevec()
+ - mm: fix use-after-free in sys_remap_file_pages
+ - Input: allocate absinfo data when setting ABS capability
+ - GFS2: Fix use-after-free race when calling gfs2_remove_from_ail
+ - GFS2: Fix slab memory leak in gfs2_bufdata
+ - GFS2: Fix incorrect invalidation for DIO/buffered I/O
+ - [s390] 3270: fix allocation of tty3270_screen structure
+ - [sh] always link in helper functions extracted from libgcc
+ - selinux: look for IPsec labels on both inbound and outbound packets
+ - selinux: process labeled IPsec TCP SYN-ACK packets properly in
+ selinux_ip_postroute()
+ - aio: clean up and fix aio_setup_ring page mapping
+ - aio/migratepages: make aio migrate pages sane
+ - ACPIPHP / radeon / nouveau: Fix VGA switcheroo problem related to hotplug
+ (regression in 3.12)
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.12.8
+ - IPv6: Fixed support for blackhole and prohibit routes
+ - net: do not pretend FRAGLIST support
+ - tun: unbreak truncated packet signalling
+ - macvtap: signal truncated packets
+ - br: fix use of ->rx_handler_data in code executed on non-rx_handler path
+ - inet: fix NULL pointer Oops in fib(6)_rule_suppress
+ - vxlan: release rt when found circular route
+ - ipv6: fix illegal mac_header comparison on 32bit
+ - ip_gre: fix msg_name parsing for recvfrom/recvmsg
+ - net: inet_diag: zero out uninitialized idiag_{src,dst} fields
+ - drivers/net/hamradio: Integer overflow in hdlcdrv_ioctl()
+ - hamradio/yam: fix info leak in ioctl
+ - net: fec: fix potential use after free
+ - rds: prevent dereference of a NULL device
+ - arc_emac: fix potential use after free
+ - net: rose: restore old recvmsg behavior (regression in 3.12.4)
+ - vlan: Fix header ops passthru when doing TX VLAN offload.
+ - virtio-net: fix refill races during restore
+ - net: llc: fix use after free in llc_ui_recvmsg
+ - netpoll: Fix missing TXQ unlock and and OOPS.
+ - bridge: use spin_lock_bh() in br_multicast_set_hash_max
+ - sfc: Add length checks to efx_xmit_with_hwtstamp() and
+ efx_ptp_is_ptp_tx()
+ - sfc: PTP: Moderate log message on event queue overflow
+ - sfc: Rate-limit log message for PTP packets without a matching timestamp
+ event
+ - [arm] fix "bad mode in ... handler" message for undefined instructions
+ - [arm] 7923/1: mm: fix dcache flush logic for compound high pages
+ - [hppa] Ensure full cache coherency for kmap/kunmap
+ - clk: clk-divider: fix divisor > 255 bug
+ - mfd: rtsx_pcr: Disable interrupts before cancelling delayed works
+ - netfilter: fix wrong byte order in nf_ct_seqadj_set internal information
+ (regression in 3.12)
+ - netfilter: nf_nat: fix access to uninitialized buffer in IRC NAT helper
+ - x86, fpu, amd: Clear exceptions in AMD FXSAVE workaround
+ (CVE-2014-1438) (Closes: #733551)
+ - sched: Fix race on toggling cfs_bandwidth_used
+ - sched: Fix cfs_bandwidth misuse of hrtimer_expires_remaining
+ - sched: Fix hrtimer_cancel()/rq->lock deadlock
+
+ [ Ben Hutchings ]
+ * [hppa] Update configuration, thanks to Helge Deller (Closes: #733895)
+ - Change AGP, AGP_PARISC from modules to built-in, to work around
+ race condition between DRM and AGP
+ - Enable DEBUG_STACKOVERFLOW
+ - udeb: Build packages for the parisc64-smp flavour instead of the
+ removed parisc flavour (fixes FTBFS)
+ * linux-image: Make maintainer scripts less verbose (Closes: #734266)
+ * [m68k] Enable EARLY_PRINTK (Closes: #734289)
+ * crypto: Enable more processor-specific algorithms and drivers:
+ - [amd64] Enable CRYPTO_CRCT10DIF_PCLMUL, CRYPTO_SHA256_SSSE3,
+ CRYPTO_SHA512_SSSE3, CRYPTO_GHASH_CLMUL_NI_INTEL,
+ CRYPTO_CAMELLIA_AESNI_AVX_X86_64, CRYPTO_CAMELLIA_AESNI_AVX2_X86_64,
+ CRYPTO_CAST5_AVX_X86_64, CRYPTO_CAST6_AVX_X86_64,
+ CRYPTO_SERPENT_AVX2_X86_64 as modules (Closes: #734376)
+ - [arm] Enable CRYPTO_SHA1_ARM, CRYPTO_AES_ARM as modules
+ - [powerpc] Enable CRYPTO_SHA1_PPC as module
+ - [sparc] Enable CRYPTO_CRC32C_SPARC64, CRYPTO_MD5_SPARC64,
+ CRYPTO_SHA1_SPARC64, CRYPTO_SHA256_SPARC64, CRYPTO_SHA512_SPARC64,
+ CRYPTO_AES_SPARC64, CRYPTO_CAMELLIA_SPARC64, CRYPTO_DES_SPARC64,
+ CRYPTO_DEV_NIAGARA2 as modules
+ - [x86] Enable CRYPTO_CRC32_PCLMUL as module
+ * [powerpc] Remove AT_HWCAP2 from auxv to avoid module ABI change
+ * [rt] Update to 3.12.6-rt9:
+ - rcu: Don't activate RCU core on NO_HZ_FULL CPUs
+ - timers: do not raise softirq unconditionally
+ - rcutree/rcu_bh_qs: disable irq while calling rcu_preempt_qs()
+ * Revert "net: unix: allow set_peek_off to fail", included in 3.12.8,
+ as it would cause an ABI change
+ * media: Enable VIDEO_STK1160_COMMON (new dependency of VIDEO_STK1160)
+ as module (Closes: #735870)
+ * [x86] brcm80211: Enable BRCMFMAC as module, and BRCMFMAC_SDIO
+ (Closes: #735245)
+ * [x86] staging: lustre: Make LUSTRE_LLITE_LLOOP tristate
+
+ [ Ian Campbell ]
+ * [armel/kirkwood] Fix interrupt handling on non-DT platforms (Closes: #735172)
+ * [armhf/armmp] Add mmci driver to mmc-module udeb.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 19 Jan 2014 19:22:22 +0000
+
+linux (3.12.6-2) unstable; urgency=medium
+
+ [ Bastian Blank ]
+ * [x86] Make MICROCODE built-in for early microcode loading.
+
+ [ Ben Hutchings ]
+ * [armhf] linux-headers: Fix typo in compiler dependency
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 29 Dec 2013 16:56:20 +0100
+
+linux (3.12.6-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.12.4
+ - net: x86: bpf: don't forget to free sk_filter (v2)
+ - net: Fix "ip rule delete table 256" (Closes: #724783)
+ - net-tcp: fix panic in tcp_fastopen_cache_set()
+ - inet: prevent leakage of uninitialized memory to user in recv syscalls
+ (CVE-2013-6405)
+ - ping: prevent NULL pointer dereference on write to msg_name
+ (CVE-2013-6432)
+ - ipv6: fix leaking uninitialized port number of offender sockaddr
+ - netfilter: push reasm skb through instead of original frag skbs
+ - packet: fix use after free race in send path when dev is released
+ - gso: handle new frag_list of frags GRO packets
+ - net: update consumers of MSG_MORE to recognize MSG_SENDPAGE_NOTLAST
+ - xfs: add capability check to free eofblocks ioctl
+ - iommu/vt-d: Fixed interaction of VFIO_IOMMU_MAP_DMA with IOMMU address
+ limits
+ - aio: Fix a trinity splat
+ - aio: prevent double free in ioctx_alloc
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.12.5
+ - [s390,s390x] crypto: Fix aes-xts parameter corruption
+ - crypto: scatterwalk - Set the chain pointer indication bit
+ - crypto: ccm - Fix handling of zero plaintext when computing mac
+ - crypto: authenc - Find proper IV address in ablkcipher callback
+ - [armhf] mvebu: use the virtual CPU registers to access coherency
+ registers
+ - vfs: fix subtle use-after-free of pipe_inode_info
+ - SCSI: bfa: Fix crash when symb name set for offline vport
+ - SCSI: hpsa: do not discard scsi status on aborted commands
+ - [hppa] fix mmap(MAP_FIXED|MAP_SHARED) to already mmapped address
+ - net: update consumers of MSG_MORE to recognize MSG_SENDPAGE_NOTLAST
+ - SCSI: Disable WRITE SAME for RAID and virtual host adapter drivers
+ - tg3: avoid double-freeing of rx data memory
+ - crypto: scatterwalk - Use sg_chain_ptr on chain entries
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.12.6
+ - ALSA: memalloc.h - fix wrong truncation of dma_addr_t
+ - [arm] 7912/1: check stack pointer in get_wchan
+ - [arm] 7913/1: fix framepointer check in unwind_frame
+ - KVM: Improve create VCPU parameter (CVE-2013-4587)
+ - [x86] KVM: Fix potential divide by 0 in lapic (CVE-2013-6367)
+ - [x86] KVM: Convert vapic synchronization to _cached functions
+ (CVE-2013-6368)
+ - [x86] KVM: fix guest-initiated crash with x2apic (CVE-2013-6376)
+ - xfs: growfs overruns AGFL buffer on V4 filesystems
+ - futex: fix handling of read-only-mapped hugepages
+ - nfsd: when reusing an existing repcache entry, unhash it first
+ - [armhf] usb: musb: musb_cppi41: handle pre-mature TX complete interrupt
+ - powerpc: Fix PTE page address mismatch in pgtable ctor/dtor
+ - mm: memcg: do not allow task about to OOM kill to bypass the limit
+ - mm: memcg: fix race condition between memcg teardown and swapin
+ - cfg80211: disable 5/10 MHz support for all drivers
+ - Revert "mac80211: allow disable power save in mesh"
+ - mac80211: fix scheduled scan rtnl deadlock
+ - iwlwifi: mvm: check sta_id/drain values in debugfs
+ - Btrfs: fix access_ok() check in btrfs_ioctl_send()
+ - dm snapshot: avoid snapshot space leak on crash
+ - dm array: fix a reference counting bug in shadow_ablock
+ - dm space map metadata: return on failure in sm_metadata_new_block
+ - dm space map: disallow decrementing a reference count below zero
+ - dm table: fail dm_table_create on dm_round_up overflow
+ - dm thin: switch to read only mode if a mapping insert fails
+ - dm thin: switch to read-only mode if metadata space is exhausted
+ - dm thin: always fallback the pool mode if commit fails
+ - dm thin: re-establish read-only state when switching to fail mode
+ - dm thin: allow pool in read-only mode to transition to read-write mode
+ - media/cxd2820r_core: Fix regression in 3.12.3
+ - sched: Avoid throttle_cfs_rq() racing with period_timer stopping
+ - Btrfs: do a full search everytime in btrfs_search_old_slot
+ - Btrfs: reset intwrite on transaction abort
+ - Btrfs: fix memory leak of chunks' extent map
+ - Btrfs: fix hole check in log_one_extent
+ - Btrfs: fix incorrect inode acl reset
+ - Btrfs: take ordered root lock when removing ordered operations inode
+ - Btrfs: do not run snapshot-aware defragment on error
+ - Btrfs: fix a crash when running balance and defrag concurrently
+ - Btrfs: fix lockdep error in async commit
+
+ [ Ben Hutchings ]
+ * udeb: Add ohci-pci to usb-modules (Closes: #730789)
+ * cifs: Enable CIFS_SMB2
+ * [hppa] Update flavours and configuration, thanks to Helge Deller
+ (Closes: #721191)
+ - Remove parisc-smp and parisc64 (UP) flavours
+ - Build with gcc-4.8
+ - rtc: Enable HP_SDC_RTC as module
+ - megaraid: Enable MEGARAID_NEWGEN
+ - [/parisc64-smp] Enable MLONGCALLS, DISCONTIGMEM_MANUAL
+ - [/parisc64-smp] Enable PATA_SIL680, AGP, AGP_PARISC, DRM,
+ DRM_RADEON as modules
+ * firmware: Disable FW_LOADER_USER_HELPER (see #725714)
+ * firmware: Improve logging of success/failure for direct file loading
+ * media: az6007: support Technisat Cablestar Combo HDCI (minus remote)
+ (Closes: #732106)
+ * linux-source: Compress with gzip -1 (Closes: #725492)
+ * [alpha] Prevent a NULL ptr dereference in csum_partial_copy
+ * Set ABI to 1
+ * [ia64] Enable PSTORE, EFI_VARS_PSTORE
+ * [x86,ia64] udeb: Remove zlib-modules as zlib is now built-in
+ * [rt] Update to 3.12.5-rt7:
+ - ptrace: fix ptrace vs tasklist_lock race
+ - migrate_disable pushd down in atomic_dec_and_spin_lock
+ - migrate_disable pushd down in rt_spin_trylock_irqsave
+ - migrate_disable pushd down in rt_write_trylock_irqsave
+ - Revert "sched/rt: Fix wait_task_interactive() to test rt_spin_lock state"
+ - seqlock: consolidate spin_lock/unlock waiting with spin_unlock_wait
+ - softirq: make migrate disable/enable conditioned on softirq_nestcnt
+
+ [ Ian Campbell ]
+ * [armel/kirkwood+orion] Reenable MARVELL_PHY (Closes: #723177)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 21 Dec 2013 03:12:38 +0000
+
+linux (3.12.3-1~exp1) experimental; urgency=medium
+
+ * New upstream stable update:
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.12.1
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.12.2
+ - libertas: potential oops in debugfs (CVE-2013-6378)
+ - exec/ptrace: fix get_dumpable() incorrect tests (CVE-2013-2929)
+ https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.12.3
+
+ [ Ben Hutchings ]
+ * [rt] Update to 3.12.0-rt2 and reenable
+ * HID: Enable UHID as module (Closes: #729338)
+ * [sh4] Remove some accidental inconsistencies in config
+ * Enable CHECKPOINT_RESTORE (Closes: #682700)
+ * Enable JUMP_LABEL (Closes: #730071)
+ * [x86] staging: Enable CRYSTALHD as module (Closes: #730832)
+ * aufs: Update to aufs3.12-20131111 (no functional change)
+ * [rt] Update to 3.12.1-rt4
+ * udeb: Add snd-usb-hiface to sound-modules, thanks to Samuel Thibault
+ (Closes: #730418)
+ * linux-image-dbg: Use correct objcopy command when cross-compiling,
+ thanks to Jon Severinsson
+
+ [ Bastian Blank ]
+ * Use compiler name instead of Linux version in compiler meta-packages.
+
+ [ Ian Campbell ]
+ * [armhf]: Enable AHCI_IMX in armmp+lpae flavours.
+
+ [ Aurelien Jarno ]
+ * [mips/octeon] Add kernel udebs.
+ * [mipsel] Add a loongson-2e flavour.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 05 Dec 2013 14:34:39 +0000
+
+linux-tools (3.12.6-1) unstable; urgency=medium
+
+ * New upstream stable update
+ - perf tools: Remove cast of non-variadic function to variadic
+ - perf tools: Synthesize anon MMAP records again
+
+ [ Ben Hutchings ]
+ * linux-tools: Replace build-dependency on binutils-dev with
+ libiberty-dev (or old binutils-dev, for ease of backporting)
+ (Closes: #730883)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 30 Nov 2013 23:48:32 +0000
+
+linux-tools (3.12-1~exp1) experimental; urgency=low
+
+ * New upstream release (Closes: #729197)
+ * [x86, powerpc, ppc64] linux-tools: Build perf with libnuma
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 18 Nov 2013 05:14:34 +0000
+
+linux (3.12-1~exp1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.12
+
+ [ Ben Hutchings ]
+ * namespaces: Enable USER_NS (Closes: #712870)
+ - Restrict creation of user namespaces to root (CAP_SYS_ADMIN) by
+ default (sysctl: kernel.unprivileged_userns_clone)
+ * aufs: Update to aufs3.x-rcN-20131104
+ - mmap() holds a reference to the union file as well as the branch file
+ * [armel/{iop32x,ixp4xx}] Disable BPF_JIT, MEMCG, USER_NS to reduce kernel
+ size
+ * [arm,x86,s390,s390x] Introduce linux-compiler meta-packages to allow use
+ of foreign linux-headers packages with a native multilib compiler
+ * perf/ftrace: Fix paranoid level for enabling function tracer
+ (CVE-2013-2930)
+ * media/usb/gspca: Enable USB_GSPCA_STK1135 as module
+ * net/ethernet: Enable I40E as module
+ * net/usb: Enable USB_NET_SR9700 as module
+ * net/wireless/rt2x00: Enable RT2800USB_RT3573
+ * openvswitch: Enable OPENVSWITCH_VXLAN
+ * net/sched: Enable NET_SCH_FQ as module
+ * [x86] HID: Enable I2C_HID as module (Closes: #729801)
+ * [x86] input/misc: Enable INPUT_IDEAPAD_SLIDEBAR as module
+ * [x86] fs: Enable LUSTRE_FS, LUSTRE_LLITE_LOOP, LNET_XPRT_IB as modules
+ * [x86] thermal: Enable INTEL_POWERCLAMP, X86_PKG_TEMP_THERMAL as modules
+ * [armhf/armmp] udeb: Add zlib-modules
+
+ [ Thorsten Glaser ]
+ * Update m68k config (Closes: #728392):
+ - enable COMPAT_BRK by explicit upstream (m68k maintainer) request
+ - re-enable FPU emulation after discussion upstream, by popular request
+ - disable ADB_MACIISI by upstream (Mac68k maintainer) request
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 17 Nov 2013 22:41:26 +0000
+
+linux (3.12~rc7-1~exp1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.x-rcN-20131014
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 28 Oct 2013 04:12:20 +0000
+
+linux (3.11.10-1) unstable; urgency=medium
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.9
+ - net/mlx4_core: Fix call to __mlx4_unregister_mac
+ - net: sctp: do not trigger BUG_ON in sctp_cmd_delete_tcb
+ - cxgb3: Fix length calculation in write_ofld_wr() on 32-bit architectures
+ - tcp: gso: fix truesize tracking
+ - xen-netback: Handle backend state transitions in a more robust way
+ - xen-netback: transition to CLOSED when removing a VIF
+ - [x86] hyperv-fb: add pci stub
+ - tracing: Fix potential out-of-bounds in trace_get_user()
+ - perf: Fix perf ring buffer memory ordering
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.10
+ - ACPICA: DeRefOf operator: Update to fully resolve FieldUnit and
+ BufferField refs.
+ - libertas: potential oops in debugfs (CVE-2013-6378)
+ - aacraid: prevent invalid pointer dereference
+ - ACPICA: Return error if DerefOf resolves to a null package element.
+ - ACPICA: Fix for a Store->ArgX when ArgX contains a reference to a field.
+ - USB: mos7840: fix tiocmget error handling
+ - Btrfs: relocate csums properly with prealloc extents
+ - [s390,s390x] crypto: s390 - Fix aes-cbc IV corruption
+ - can: c_can: Fix RX message handling, handle lost message before EOB
+ - ipc,shm: correct error return value in shmctl (SHM_UNLOCK)
+ - ipc,shm: fix shm_file deletion races
+ - drm/nvc0-/gr: fix a number of missing explicit array terminators...
+ - sched, idle: Fix the idle polling state logic
+ - [x86] ACPI / EC: Ensure lock is acquired before accessing ec struct
+ members
+ - [x86] ACPI / video: Quirk initial backlight level 0
+ - Staging: zram: Fix access of NULL pointer
+ - Drivers: hv: vmbus: Fix a bug in channel rescind code
+ - rt2x00: fix a crash bug in the HT descriptor handling fix
+ - Bluetooth: revert: "Bluetooth: Add missing reset_resume dev_pm_ops"
+ - exec/ptrace: fix get_dumpable() incorrect tests (CVE-2013-2929)
+
+ [ Ben Hutchings ]
+ * net: clamp ->msg_namelen instead of returning an error
+ * tcp: tsq: restore minimal amount of queueing
+ * rds: prevent BUG_ON triggered on congestion update to loopback
+ (CVE-2012-2372)
+ * ipv6: fix headroom calculation in udp6_ufo_fragment (CVE-2013-4563)
+ * [s390,s390x] qeth: avoid buffer overflow in snmp ioctl (CVE-2013-6381)
+ * xfs: underflow bug in xfs_attrlist_by_handle() (CVE-2013-6382)
+ * [x86] Enable CHROMEOS_LAPTOP as module (Closes: #731271)
+ - iio/light: Enable SENSORS_TSL2563, SENSORS_ISL29018, TSL2583 as modules
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 04 Dec 2013 14:49:01 +0000
+
+linux (3.11.8-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.8
+ - bcache: Fixed incorrect order of arguments to bio_alloc_bioset()
+ - cgroup: fix to break the while loop in cgroup_attach_task() correctly
+ - mac80211: drop spoofed packets in ad-hoc mode
+ - mac80211: fix crash if bitrate calculation goes wrong
+ - rtlwifi: rtl8192cu: Fix error in pointer arithmetic
+ - jfs: fix error path in ialloc
+ - SCSI: sd: call blk_pm_runtime_init before add_disk
+ - ecryptfs: Fix memory leakage in keystore.c
+ - eCryptfs: fix 32 bit corruption issue
+ - raid5: set bio bi_vcnt 0 for discard request
+ - raid5: avoid finding "discard" stripe
+ - libata: make ata_eh_qc_retry() bump scmd->allowed on bogus failures
+ - Revert "epoll: use freezable blocking call"
+ - Revert "select: use freezable blocking call"
+ - md: Fix skipping recovery for read-only arrays.
+ - vhost/scsi: Fix incorrect usage of get_user_pages_fast write parameter
+ - Fix a few incorrectly checked [io_]remap_pfn_range() calls
+ - lib/scatterlist.c: don't flush_kernel_dcache_page on slab page
+ - aacraid: missing capable() check in compat ioctl
+ - mm: Wait for THP migrations to complete during NUMA hinting faults
+ - mm: Prevent parallel splits during THP migration
+ - mm: Close races between THP migration and PMD numa clearing
+ - mm/pagewalk.c: fix walk_page_range() access of wrong PTEs
+ - drm: Prevent overwriting from userspace underallocating core ioctl
+ structs
+ - seq_file: always update file->f_pos in seq_lseek()
+
+ [ Ben Hutchings ]
+ * perf/ftrace: Fix paranoid level for enabling function tracer
+ (CVE-2013-2930)
+ * [armhf] Bump ABI to 2
+ * [armhf/armmp] udeb: Add zlib-modules (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 13 Nov 2013 05:36:36 +0000
+
+linux (3.11.7-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.7
+ - tcp: TSO packets automatic sizing
+ - tcp: TSQ can use a dynamic limit
+ - tcp: must unclone packets before mangling them
+ - tcp: fix incorrect ca_state in tail loss probe (Closes: #728726)
+
+ [ Ben Hutchings ]
+ * [armel] udeb: Re-enable iop32x flavour
+ * Bump ABI to 2 due to TCP changes
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 09 Nov 2013 20:18:02 +0000
+
+linux (3.11.6-2) unstable; urgency=medium
+
+ [ Ben Hutchings ]
+ * [sh4] Reduce compiler version to gcc-4.7, as gcc-4.8 is not yet
+ available
+ * [ia64] Reduce compiler version to gcc-4.6, matching gcc-defaults
+ (fixes FTBFS)
+ * [armhf] Bump ABI to 1a, as enabling Xen and KVM support changes ABI
+ * net: Fix infinite loop in in skb_flow_dissect() (CVE-2013-4348)
+ * net: do not call sock_put() on TIMEWAIT sockets
+ * l2tp: fix kernel panic when using IPv4-mapped IPv6 addresses
+ * net: heap overflow in __audit_sockaddr()
+ * proc connector: fix info leaks
+ * bridge: update mdb expiration timer upon reports.
+ * Revert "bridge: only expire the mdb entry when query is received"
+ * unix_diag: fix info leak
+ * be2net: pass if_id for v1 and V2 versions of TX_CREATE cmd
+ * net: fix cipso packet validation when !NETLABEL
+ * inet: fix possible memory corruption with UDP_CORK and UFO
+ * [arm] 7851/1: check for number of arguments in syscall_get/set_arguments()
+ * ext[34]: fix double put in tmpfile
+ * dm snapshot: fix data corruption (CVE-2013-4299)
+ * i2c: ismt: initialize DMA buffer
+ * mm: fix BUG in __split_huge_page_pmd
+ * writeback: fix negative bdi max pause
+
+ [ Aurelien Jarno ]
+ * UAPI: include <asm/byteorder.h> in linux/raid/md_p.h.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 01 Nov 2013 05:23:13 +0000
+
+linux-tools (3.11-3) unstable; urgency=low
+
+ * linux-tools: Replace build-dependency on libunwind8-dev with
+ libunwind7-dev, as the new libunwind will not enter testing soon
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 29 Oct 2013 02:12:36 +0000
+
+linux (3.11.6-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.6
+ - random: run random_int_secret_init() run after all late_initcalls
+ - ext4: fix memory leak in xattr
+ - KVM: PPC: Book3S HV: Fix typo in saving DSCR
+ - ipc: Apply mainline changes up to 3.12-rc5
+
+ [ Ian Campbell ]
+ * [armhf] Enable Xen and virtio for armmp and armmp-lpae as well as KVM for
+ armmp-lpae only.
+
+ [ Ben Hutchings ]
+ * kbuild: Use -nostdinc in compile tests (Closes: #726861, workaround
+ for #717557)
+ * Disable CC_OPTIMIZE_FOR_SIZE (Closes: #635899, fixes FTBFS on mips,
+ mipsel, powerpc) [!armel/{iop32x,ixp4xx,kirkwood,orion5x},m68k]
+ * aufs: Update to aufs3.11-20131014
+ - Remove dependency on loop module (Closes: #727243)
+ * [armhf/armmp] udeb: Add ppp-modules
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 27 Oct 2013 19:02:04 +0000
+
+linux-tools (3.11-2) unstable; urgency=low
+
+ * linux-tools: Limit build-dependency on libunwind8-dev to architectures
+ where it is available and needed
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 27 Oct 2013 18:01:37 +0000
+
+linux-tools (3.11-1) unstable; urgency=low
+
+ * New upstream release
+ * linux-tools: Build perf with libaudit and libunwind
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 19 Oct 2013 02:38:59 +0100
+
+linux (3.11.5-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.1
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.2
+ - media: siano: fix divide error on 0 counters (Closes: #719623)
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.3
+ - HID: multitouch: validate indexes details (CVE-2013-2897)
+ - HID: LG: validate HID output report details (CVE-2013-2893)
+ - HID: zeroplus: validate output report details (CVE-2013-2889)
+ - HID: lenovo-tpkbd: fix leak if tpkbd_probe_tp fails (CVE-2013-2894)
+ - HID: steelseries: validate output report details (CVE-2013-2891)
+ - HID: logitech-dj: validate output report details (CVE-2013-2895)
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.4
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.11.5
+ - cpqarray: fix info leak in ida_locked_ioctl() (CVE-2013-2147)
+ - cciss: fix info leak in cciss_ioctl32_passthru() (CVE-2013-2147)
+ - tuntap: correctly handle error in tun_set_iff() (CVE-2013-4343)
+ - net: sctp: fix ipv6 ipsec encryption bug in sctp_v6_xmit (CVE-2013-4350)
+ - ipv6: udp packets following an UFO enqueued packet need also be handled
+ by UFO (CVE-2013-4387)
+
+ [ Ben Hutchings ]
+ * udeb: Update config to match previous kernel config changes:
+ - Remove ext{2,3}-modules
+ - Update description of ext4-modules and let it provide ext{2,3}-modules
+ - Remove aic7xxx_old, enc28j60 and imm from module lists
+ - [sh4] kernel-image no longer provides ext3-modules
+ * [hppa] udeb: kernel-image does not provide ext2-modules (since 3.2.7-1)
+ * [arm] thermal: Re-enable CPU_THERMAL as built-in (regression in
+ 3.10~rc4-1~exp1)
+ * Stop providing virtual packages linux-image (Closes: #724569),
+ linux-headers and linux-source
+ * hwmon: Enable SENSORS_JC42, SENSORS_NCT6775 as modules (Closes: #722062)
+ * compiler/gcc4: Add quirk for 'asm goto' miscompilation bug
+ * [arm64] Build a linux-libc-dev package (Closes: #695241)
+ * crypto: ansi_cprng - Fix off by one error in non-block size request
+ (CVE-2013-4345)
+ * mvsas: Recognise device/subsystem 9485/9485 as 88SE9485
+ * Set ABI to 1
+ * [i386] Remove xen-linux-system-<version> packages (Closes: #726010)
+
+ [ Ian Campbell ]
+ * [armhf] Enable CONFIG_PCI for multiplatform flavour.
+ - Enable standard NIC and SCSI modules and include in udebs.
+ * [armhf] Add multiplatform + LPAE flavour (armmp-lpae).
+ * [armhf] Remove mx5, omap and vexpress flavours. These are all supported
+ by the multiplatform flavour.
+ * [armel/kirkwood] Add orion-ehci, mvmdio and of_mdio modules to udebs.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 17 Oct 2013 14:46:41 +0100
+
+linux (3.11-1~exp1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.11
+
+ [ Ben Hutchings ]
+ * Disable drivers for various platform/undetectable devices by default:
+ - ata: Disable PATA_ARASAN_CF
+ - hwrng: Disable HW_RANDOM_TIMERIOMEM
+ - mdio: Disable MDIO_BITBANG
+ - media: Disable SOC_CAMERA
+ - media/radio: Disable I2C_SI470X, RADIO_SAA7706H, RADIO_SI4713,
+ RADIO_TEA5764, RADIO_TEF6862, RADIO_WL1273
+ - mfd: Disable HTC_PASIC3, MFD_PCF50633, MFD_SM501, TPS65010
+ - mtd: Disable MTD_ONENAND_GENERIC
+ - mmc: Disable MMC_SPI, MMC_SDHCI_PLTFM
+ - net/can: Disable CAN_MCP251X
+ - net/ethernet: Disable DNET, ENC28J60, ETHOC, KS8842, KS8851, KS8851_MLL,
+ WIZNET_W5100, WIZNET_W5300
+ - net/wireless: Disable LIBERTAS_SPI, P54_SPI
+ - parport: Disable PARPORT_AX88796
+ - power: Disable BATTERY_BQ27x00, BATTERY_DS2760, BATTERY_DS2782,
+ BATTERY_MAX17040
+ - regulator: Disable all drivers
+ - rtc: Disable all drivers except RTC_DRV_CMOS
+ - serial: Disable SERIAL_MAX3100
+ - spi: Disable SPI_TLE62X0
+ - uio: Disable UIO_PDRV, UIO_PDRV_GENIRQ
+ - USB: Disable USB_C67X00_HCD, USB_ISP116X_HCD, USB_R8A66597_HCD
+ - video: Disable FB_METRONOME
+ - w1: Disable W1_SLAVE_DS2760
+ * [x86] mtd: Disable MTD_NAND_PLATFORM
+ * [x86] power: Disable PDA_POWER
+ * [x86] video: Disable FB_S1D13XXX
+ * Disable some old non-hotplug PCI drivers:
+ - SCSI: Disable SCSI_AIC7XXX_OLD
+ - [x86] mtd: Disable MTD_PMC551
+ - [x86] net/wan: Disable SBNI
+ * Disable parport drivers that are no longer likely to be useful:
+ - block: Disable PARIDE
+ - media: Disable VIDEO_BWQCAM, VIDEO_CQCAM, VIDEO_W9966
+ - SCSI: Disable SCSI_IMM, SCSI_PPA
+ - [x86] net/ethernet: Disable ATP
+ * bluetooth: Disable BT_HCIBTUART; the serial_cs and hci_uart drivers
+ should be used instead
+ * PCI: Disable PCIEPORTBUS in configurations for systems without PCI
+ Express: armel/{iop32x,ixp4xx}, mips/!octeon, mipsel/*, sh4/*
+ * [armhf/{armmp,mx5}] cpufreq: Enable GENERIC_CPUFREQ_CPU0 as module,
+ replacing CPU_FREQ_IMX
+ * [armhf/armmp] Enable PINCTRL_WM8850, replacing GPIO_VT8500
+ * [powerpc/powerpc64] Enable CPU_FREQ_CBE (previously CBE_CPUFREQ) as module
+ * [armel] Re-enable iop32x and ixp4xx flavours
+ * aufs: Update to aufs3.x-rcN-20130909
+
+ [ Bastian Blank ]
+ * Symlink doc directory in linux-headers packages.
+ * Make gcc-4.8 the default compiler.
+ * Use default font selection.
+ * Enable NFS 4.2 client support.
+ * Use ext4 for all ext-variants.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 12 Sep 2013 03:57:27 +0100
+
+linux (3.11~rc7-1~exp1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [arm,mips,s390,sh4] Enable KPROBES
+ * trace: Enable KPROBE_EVENT (Closes: #640953)
+ * trace: Enable UPROBES, UPROBE_EVENT (Closes: #691167)
+ * irq: Always define devm_{request_threaded,free}_irq() (fixes FTBFS on
+ s390,s390x)
+ * [armel] Disable iop32x and ixp4xx flavours (fixes FTBFS)
+ * Clean up maintainer scripts and templating system
+ - Move all templates under debian/templates
+ - linux-image: Remove undocumented $KERNEL_ARCH variable from hook
+ environment
+ - Use only one template syntax (@keyword@) and do all substitutions
+ in gencontrol.py
+ - linux-image.postinst: Remove debconf warning about ramdisk variable in
+ /etc/kernel-img.conf
+ - linux-image.postinst: Remove debconf warning about missing firmware;
+ this should now be redundant and it annoys users that don't need the
+ files (Closes: #612822)
+ * Update Brazilian Portugese debconf template translations
+ (Fernando Ike de Oliveira) (Closes: #719725)
+ * hid: Enable HID_HUION as module (Closes: #721002)
+ * [powerpc,x86] hid: Enable HID_APPLEIR as module
+ * ACPI: Enable ACPI_INITRD_TABLE_OVERRIDE (Closes: #721310)
+ * net: Enable NET_MPLS_GSO
+ * nfc: Enable NFC_SIM as module
+ * md: Enable DM_SWITCH as module
+ * net: Enable NLMON as module
+ * wireless: Enable ATH10K, ATH10K_PCI as modules
+ * media: Enable VIDEO_USBTV as module
+ * video: Enable FB_SMSCUFX as module
+ * usb/serial: Enable USB_SERIAL_WISHBONE, USB_SERIAL_FLASHLOADER,
+ USB_SERIAL_SUUNTO as modules
+ * infiniband: Enable INFINIBAND_ISERT as module
+ * xen: Enable XEN_BALLOON_MEMORY_HOTPLUG
+ * fs: Enable QNX6FS_FS as module
+ * f2fs: Enable F2FS_FS_SECURITY
+ * 9p: Enable 9P_FS_SECURITY
+ * sunrpc: Enable SUNRPC_DEBUG
+ * vhost: Enable VHOST_SCSI as module
+ * [x86] video: Enable FB_HYPERV as module
+ * [x86] snd-hda-intel: Enable SND_HDA_I915
+ * [x86] mmc: Enable MMC_SDHCI_ACPI as module
+ * [x86] comedi: Enable COMEDI_ADV_PCI1724, COMEDI_NI_LABPC_PCI (formerly
+ COMEDI_NI_LABPC) as modules
+ * [x86] Enable MLX5_INFINIBAND as module
+ * [amd64] iommu: Enable AMD_IOMMU_V2
+ * [x86,ia64] fs: Enable EFIVAR_FS as module
+ * wireless/ti: Disable WL_TI on all configurations except armhf/armmp
+ * [hppa,mips,mipsel,sh4,sparc] ehci-hcd: Enable USB_EHCI_ROOT_HUB_TT and
+ USB_EHCI_TT_NEWSCHED in all configurations, consistent with other
+ architectures
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 01 Sep 2013 05:15:57 +0100
+
+linux-tools (3.11~rc4-1~exp1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * linux-tools: Build perf documentation out-of-tree, as this now works
+ and our previous workaround does not
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 08 Aug 2013 16:21:00 +0200
+
+linux (3.11~rc4-1~exp1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.x-rcN-20130805
+
+ [ Hector Oron ]
+ * [armhf/armmp] Enable NET_CALXEDA_XGMAC as module (Closes: #717269)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 08 Aug 2013 13:09:47 +0200
+
+linux (3.10.11-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.8
+ - [arm] perf/arm: Fix armpmu_map_hw_event()
+ - memcg: don't initialize kmem-cache destroying work for root caches
+ - fs/proc/task_mmu.c: fix buffer overflow in add_page_map()
+ - elevator: Fix a race in elevator switching
+ - mac80211: fix infinite loop in ieee80211_determine_chantype
+ - can: pcan_usb: fix wrong memcpy() bytes length
+ - cfg80211: fix P2P GO interface teardown
+ - ASoC: dapm: Fix empty list check in dapm_new_mux()
+ - ALSA: 6fire: make buffers DMA-able (pcm)
+ - ALSA: 6fire: make buffers DMA-able (midi)
+ - USB: ti_usb_3410_5052: fix big-endian firmware handling
+ - USB: mos7720: fix broken control requests
+ - Fix TLB gather virtual address range invalidation corner cases
+ - [arm] 7809/1: perf: fix event validation for software group leaders
+ (CVE-2013-4254)
+ - jbd2: Fix use after free after error in jbd2_journal_dirty_metadata()
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.9
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.10
+ - [s390] KVM: s390: move kvm_guest_enter,exit closer to sie
+ - mac80211: don't wait for TX status forever
+ - tracing/kprobe: Wait for disabling all running kprobe handlers
+ - tracing: Fix many race conditions including potential use-after-free
+ - tracing/kprobes: Fail to unregister if probe event files are in use
+ - tracing/uprobes: Fail to unregister if probe event files are in use
+ - ftrace: Check module functions being traced on reload
+ - zd1201: do not use stack as URB transfer_buffer
+ - VFS: collect_mounts() should return an ERR_PTR
+ - [arm] davinci: nand: specify ecc strength
+ - drm/radeon/r7xx: fix copy paste typo in golden register setup
+ - drm/radeon: fix UVD message buffer validation
+ - drm/i915: Invalidate TLBs for the rings after a reset
+ - nilfs2: remove double bio_put() in nilfs_end_bio_write() for
+ BIO_EOPNOTSUPP error
+ - Hostap: copying wrong data prism2_ioctl_giwaplist()
+ - SCSI: zfcp: fix lock imbalance by reworking request queue locking
+ - SCSI: zfcp: fix schedule-inside-lock in scsi_device list loops
+ - SCSI: sg: Fix user memory corruption when SG_IO is interrupted by a
+ signal
+ - [x86] get_unmapped_area: Access mmap_legacy_base through mm_struct member
+ - bcache: FUA fixes
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.11
+ - drm/nouveau/mc: fix race condition between constructor and request_irq()
+ - jfs: fix readdir cookie incompatibility with NFSv4 (Closes: #714974)
+ - [powerpc] Work around gcc miscompilation of __pa() on 64-bit
+ - [powerpc] Don't Oops when accessing /proc/powerpc/lparcfg without
+ hypervisor
+ - timer_list: correct the iterator for timer_list
+ - drivers/base/memory.c: fix show_mem_removable() to handle missing sections
+ - memcg: check that kmem_cache has memcg_params before accessing it
+ - SUNRPC: Fix memory corruption issue on 32-bit highmem systems
+ - ath9k_htc: Restore skb headroom when returning skb to mac80211
+ - iscsi-target: Fix ImmediateData=Yes failure regression in >= v3.10
+ - iscsi-target: Fix potential NULL pointer in solicited NOPOUT reject
+ - ACPI / EC: Add ASUSTEK L4R to quirk list in order to validate ECDT
+ - regmap: rbtree: Fix overlapping rbnodes.
+
+ [ Ben Hutchings ]
+ * [rt] Update to 3.10.10-rt7:
+ - hwlat-detector: Update hwlat_detector to add outer loop detection
+ - hwlat-detector: Use thread instead of stop machine
+ - hwlat-detector: Use trace_clock_local if available
+ - genirq: do not invoke the affinity callback via a workqueue
+ - simple-wait: rename and export the equivalent of waitqueue_active()
+ - simple-wait: Fix a race condition with swait wakeups vs adding items
+ to the list
+ - rcu: Use swait_wake_all() in rcu_nocb_gp_cleanup()
+ * aufs: Update to aufs3.10-20130826
+ * aufs: mvdown, don't let unprivileged users provoke a WARNING
+ * [x86] ACPI: Re-enable ACPI_HOTPLUG_MEMORY as built-in
+ * [x86] amd64_edac: Fix single-channel setups (Closes: #717473)
+ * [x86] efi: Ensure efi-pstore is loaded on EFI systems
+ * bug script: Prompt to include crash logs from pstore
+ * ipv6: remove max_addresses check from ipv6_create_tempaddr (CVE-2013-0343)
+ * HID: validate HID report id size (CVE-2013-2888)
+ * HID: pantherlord: validate output report details (CVE-2013-2892)
+ * HID: ntrig: validate feature report details (CVE-2013-2896)
+ * HID: sensor-hub: validate feature report details (CVE-2013-2898)
+ * HID: picolcd_core: validate output report details (CVE-2013-2899)
+ * HID: check for NULL field when setting values
+
+ [ Ian Campbell ]
+ * [armel]: Enable MVMDIO and USB_EHCI_HCD_ORION on Kirkwood and Orion
+ (Closes: #719680)
+ * Bump ABI to 3
+ * [armhf]: Add udebs for armmp flavour
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 10 Sep 2013 14:13:16 +0100
+
+linux-tools (3.10-4) unstable; urgency=low
+
+ * Sourceful upload for the perl 5.18 transition
+ * usbip: Fix package version override to be binNMU-safe
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 30 Aug 2013 12:44:56 +0100
+
+linux (3.10.7-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.6
+ - [arm] Modify vectors page to defend against ROP buffer overflow attacks
+ - [armel] 7790/1: Fix deferred mm switch on VIVT processors
+ - [armel] 7791/1: a.out: remove partial a.out support
+ - [powerpc] VPHN topology change updates all siblings
+ - hwmon: (max6697) fix MAX6581 ideality
+ - USB: mos7840: fix race in register handling
+ - USB: mos7840: fix race in led handling
+ - mac80211: fix duplicate retransmission detection
+ - mac80211: fix ethtool stats for non-station interfaces
+ - ixgbe: Fix Tx Hang issue with lldpad on 82598EB
+ - Bluetooth: ath3k: don't use stack memory for DMA
+ - Bluetooth: fix wrong use of PTR_ERR() in btusb
+ - svcrpc: fix gss-proxy xdr decoding oops
+ - svcrpc: fix gss_rpc_upcall create error
+ - svcrpc: fix kfree oops in gss-proxy code
+ - zram: avoid invalid memory access in zram_exit()
+ - zram: use zram->lock to protect zram_free_page() in swap free notify path
+ - zram: avoid double free in function zram_bvec_write()
+ - zram: avoid access beyond the zram device
+ - zram: protect sysfs handler from invalid memory access
+ - Revert "cpuidle: Quickly notice prediction failure in general case"
+ - cpufreq: Fix cpufreq driver module refcount balance after suspend/resume
+ - Revert "cpuidle: Quickly notice prediction failure for repeat mode"
+ - drm/radeon: Disable dma rings for bo moves on r6xx
+ - xen-blkfront: use a different scatterlist for each request
+ - drm/radeon: never unpin UVD bo v3
+ - Btrfs: fix crash regarding to ulist_add_merge
+ - [s390] bitops: fix find_next_bit_left
+ - userns: unshare_userns(&cred) should not populate cred on failure
+ (CVE-2013-4205)
+ - ipv6: take rtnl_lock and mark mrt6 table as freed on namespace cleanup
+ - usbnet: do not pretend to support SG/TSO
+ - net_sched: Fix stack info leak in cbq_dump_wrr().
+ - af_key: more info leaks in pfkey messages
+ - net_sched: info leak in atm_tc_dump_class()
+ - 8139cp: Add dma_mapping_error checking
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.7
+ - [powerpc] Save the TAR register earlier
+ - [powerpc] tm: Fix context switching TAR, PPR and DSCR SPRs
+ - ext4: make sure group number is bumped after a inode allocation race
+ - regmap: cache: Make sure to sync the last register in a block
+ - hwmon: (adt7470) Fix incorrect return code check
+ - media: em28xx: fix assignment of the eeprom data
+ - ACPI / PM: Walk physical_node_list under physical_node_lock
+ - ALSA: 6fire: fix DMA issues with URB transfer_buffer usage
+ - Btrfs: release both paths before logging dir/changed extents
+ - LOCKD: Don't call utsname()->nodename from nlmclnt_setlockargs
+ - SUNRPC: Don't auto-disconnect from the local rpcbind socket
+ - SUNRPC: If the rpcbind channel is disconnected, fail the call to
+ unregister
+ - virtio/console: Quit from splice_write if pipe->nrbufs is 0
+ - virtio/console: Add pipe_lock/unlock for splice_write
+ - virtio: console: fix race with port unplug and open/close
+ - virtio: console: fix race in port_fops_open() and port unplug
+ - virtio: console: clean up port data immediately at time of unplug
+ - virtio: console: fix raising SIGIO after port unplug
+ - virtio: console: return -ENODEV on all read operations after unplug
+ - drm/radeon: stop sending invalid UVD destroy msg
+ - ext4: flush the extent status cache during EXT4_IOC_SWAP_BOOT
+ - cifs: extend the buffer length enought for sprintf() using
+ - zram: allow request end to coincide with disksize
+ - reiserfs: fix deadlock in umount
+ - [x86] drm/i915: initialize gt_lock early with other spin locks
+
+ [ Ben Hutchings ]
+ * [x86] Enable ASUS_OLED as module (Closes: #680016)
+ * [armel/orion5x] I2C: mv64xxx: fix race between FSM/interrupt and process
+ context (Closes: #622325)
+ * [rt] Update to 3.10.6-rt3
+ - hpsa: fix warning with smp_processor_id() in preemptible
+ * [arm] Change SERIAL_8250_PCI from built-in to module
+ * net: Change WIZNET_W5{1,3}00 from built-in(!) to module
+ * net: Change DROP_MONITOR from built-in to module
+ * netlink: Change NETLINK_DIAG from built-in to module; enable on
+ armel/{iop32x,ixp4xx,orion5x}
+
+ [ Thorsten Glaser ]
+ * [m68k] debian/patches/bugfix/m68k/atari-irqs.patch: patch from mailing list
+ to silence IRQ problems on Atari platforms with multi-platform kernel
+ * [m68k] debian/patches/bugfix/m68k/type-fix-div64.patch: patch from Andreas
+ Schwab to handle do_div being called with a non-u32 second argument
+ * [m68k] begin working on d-i kernel configs (just enough to not FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 17 Aug 2013 22:35:15 +0200
+
+linux-tools (3.10-3) unstable; urgency=low
+
+ * linux-kbuild: Fix no-modules case in modpost wrapper (Closes: #719129)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 08 Aug 2013 21:49:02 +0200
+
+linux (3.10.5-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.4
+ - ipv6,mcast: always hold idev->lock before mca_lock
+ - ipv6: call udp_push_pending_frames when uncorking a socket with AF_INET
+ pending data (CVE-2013-4162)
+ - ipv6: ip6_append_data_mtu did not care about pmtudisc and frag_size
+ (CVE-2013-4163)
+ - sunvnet: vnet_port_remove must call unregister_netdev
+ - ipv6: only static routes qualify for equal cost multipathing
+ (CVE-2013-4125)
+ - atl1e: fix dma mapping warnings
+ - atl1e: unmap partially mapped skb on dma error and free skb
+ - vlan: mask vlan prio bits
+ - vlan: fix a race in egress prio management
+ - fuse: readdirplus: fix dentry leak
+ - fuse: readdirplus: fix instantiate
+ - fuse: readdirplus: sanity checks
+ - bcache: Fix a dumb race
+ - bcache: Advertise that flushes are supported
+ - bcache: Shutdown fix (possibly fixes #715019)
+ - bcache: Fix a sysfs splat on shutdown
+ - bcache: Journal replay fix
+ - ext4: fix error handling in ext4_ext_truncate()
+ - media: saa7134: Fix unlocked snd_pcm_stop() call
+ - media: dmxdev: remove dvb_ringbuffer_flush() on writer side
+ - lockd: protect nlm_blocked access in nlmsvc_retry_blocked
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.5
+ - mm: fix the TLB range flushed when __tlb_remove_page() runs out of slots
+ - iscsi-target: Fix tfc_tpg_nacl_auth_cit configfs length overflow
+ - iser-target: Fix session reset bug with RDMA_CM_EVENT_DISCONNECTED
+ - iscsi-target: Fix ISCSI_OP_SCSI_TMFUNC handling for iser
+ - firewire: fix libdc1394/FlyCap2 iso event regression
+ - SCSI: sd: fix crash when UA received on DIF enabled device
+ - tracing: Remove locking trace_types_lock from
+ tracing_reset_all_online_cpus()
+ - usb: host: xhci: Enable XHCI_SPURIOUS_SUCCESS for all controllers with
+ xhci 1.0
+ - xhci: fix null pointer dereference on ring_doorbell_for_active_rings
+ - xhci: Avoid NULL pointer deref when host dies.
+ - staging: comedi: fix a race between do_cmd_ioctl() and read/write
+ - Btrfs: fix wrong write offset when replacing a device
+ - Btrfs: fix lock leak when resuming snapshot deletion
+ - Btrfs: re-add root to dead root list if we stop dropping it
+ - xen-netfront: pull on receive skb may need to happen earlier
+ - md: Remove recent change which allows devices to skip recovery.
+ - md/raid1: fix bio handling problems in process_checks()
+ - md/raid5: fix interaction of 'replace' and 'recovery'.
+ - md/raid10: remove use-after-free bug.
+ - svcrdma: underflow issue in decode_write_list()
+ - nfsd: nfsd_open: when dentry_open returns an error do not propagate as
+ struct file
+ - ACPI / scan: Do not try to attach scan handlers to devices having them
+ - drm/radeon: fix endian issues with DP handling (v3)
+ - drm/radeon: fix combios tables on older cards
+ - drm/i915: fix up ring cleanup for the i830/i845 CS tlb w/a
+ - drm/i915: Fix write-read race with multiple rings
+ - Partially revert "drm/i915: unconditionally use mt forcewake on hsw/ivb"
+ - drm/i915: Fix incoherence with fence updates on Sandybridge+
+ - drm/i915: fix long-standing SNB regression in power consumption after resume v2
+ - drm/i915: Fix dereferencing invalid connectors in is_crtc_connector_off()
+ - drm/i915: correctly restore fences with objects attached
+ - drm/i915: Serialize almost all register access
+ - drm/radeon/atom: initialize more atom interpretor elements to 0
+ - mm: mempolicy: fix mbind_range() && vma_adjust() interaction
+ - tty_port: Fix refcounting leak in tty_port_tty_hangup()
+ - vfs: livelock avoidance in sget()
+ - iscsi-target: Fix iscsit_add_reject* usage for iser
+ - drm/i915: Correct obj->mm_list link to
+ dev_priv->dev_priv->mm.inactive_list
+
+ [ Ben Hutchings ]
+ * [hppa] udeb: Add core-modules package (Closes: #718270)
+ * nl80211: fix another nl80211_fam.attrbuf race
+ * Bump ABI to 2
+ * ext4: fix retry handling in ext4_ext_truncate()
+ * atl1c: Fix misuse of netdev_alloc_skb in refilling rx ring
+ (Closes: #718505)
+ * [rt] genpatch.py: Accept missing series-rt
+ * [rt] Update to 3.10.4-rt1 and reenable
+ * [rt] genpatch.py: Fix parsing of upstream patches with no header
+ * aufs: Update to aufs3.10-20130805
+ * [rt] md: Disable BCACHE, as it fails to build
+ * SCSI: Don't attempt to send extended INQUIRY command if skip_vpd_pages is
+ set (Closes: #719002)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 07 Aug 2013 22:38:45 +0200
+
+linux (3.10.3-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.2
+ - CIFS: Fix a deadlock when a file is reopened
+ - jbd2: move superblock checksum calculation to jbd2_write_superblock()
+ - jbd2: fix theoretical race in jbd2__journal_restart
+ - ext4: fix corruption when online resizing a fs with 1K block size
+ - ext3,ext4: don't mess with dir_file->f_pos in htree_dirblock_to_tree()
+ - ext4: check error return from ext4_write_inline_data_end()
+ - xhci: check for failed dma pool allocation
+ - [x86] drivers: hv: switch to use mb() instead of smp_mb()
+ - cgroup: fix umount vs cgroup_event_remove() race
+ - cgroup: fix RCU accesses to task->cgroups
+ - [hppa] Fix gcc miscompilation in pa_memcpy()
+ - [hppa] Ensure volatile space register %sr1 is not clobbered
+ - genirq: Fix can_request_irq() for IRQs without an action
+ (Closes: #709647)
+ - [x86] ACPI: Fix HP Folio 13 EC register access (Closes: #684186)
+ + ACPI: Add CMOS RTC Operation Region handler support
+ + ACPI / EC: Add HP Folio 13 to ec_dmi_table in order to skip DSDT scan
+ - ocfs2: xattr: fix inlined xattr reflink
+ - iwlwifi: pcie: fix race in queue unmapping
+ - Btrfs: fix estale with btrfs send
+ - Btrfs: hold the tree mod lock in __tree_mod_log_rewind
+ - Btrfs: only do the tree_mod_log_free_eb if this is our last ref
+ - ext4: fix data offset overflow on 32-bit archs in
+ ext4_inline_data_fiemap()
+ - ext4: fix overflows in SEEK_HOLE, SEEK_DATA implementations
+ - ext4: fix data offset overflow in ext4_xattr_fiemap() on 32-bit archs
+ - ext4: fix overflow when counting used blocks on 32-bit architectures
+ - ext4: fix ext4_get_group_number()
+ - ext4: don't allow ext4_free_blocks() to fail due to ENOMEM
+ - [arm] 7767/1: let the ASID allocator handle suspended animation
+ - [arm] 7768/1: prevent risks of out-of-bound access in ASID allocator
+ - [arm] 7769/1: Cortex-A15: fix erratum 798181 implementation
+ - [arm] 7778/1: smp_twd: twd_update_frequency need be run on all online CPUs
+ - [armhf] dts: imx: cpus/cpu nodes dts updates
+ - [armhf] drivers/dma/pl330.c: fix locking in pl330_free_chan_resources()
+ - memcg, kmem: fix reference count handling on the error path
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.3
+ - cpufreq: Revert commit a66b2e to fix suspend/resume regression
+ - iio: Fix iio_channel_has_info
+ - iio: inkern: fix iio_convert_raw_to_processed_unlocked
+ - ALSA: seq-oss: Initialize MIDI clients asynchronously
+ - ALSA: Fix unlocked snd_pcm_stop() calls in various drivers
+ - libata-zpodd: Use ata_tf_init() to select the right device
+ - md/raid10: fix bug which causes all RAID10 reshapes to move no data.
+ - md/raid10: fix two bugs affecting RAID10 reshape.
+ - md/raid10: fix two problems with RAID10 resync. (Closes: #717681)
+ - mac80211: close AP_VLAN interfaces before unregistering all
+ - svcrpc: fix failures to handle -1 uid's
+ - svcrpc: fix handling of too-short rpc's
+ - drm/i915: Fix context sizes on HSW
+ - drm/i915: Only clear write-domains after a successful wait-seqno
+ - drm/gem: fix not to assign error value to gem name
+ - drm/nv50-/disp: Use output specific mask in interrupt (Closes: #717590)
+ - iommu/amd: Only unmap large pages from the first pte
+ - MIPS: Octeon: Don't clobber bootloader data structures.
+ - perf: Clone child context from parent context pmu
+ - perf: Remove WARN_ON_ONCE() check in __perf_event_enable() for valid
+ scenario
+ - perf: Fix perf_lock_task_context() vs RCU
+ - tracing: Protect ftrace_trace_arrays list in trace_events.c
+ - tracing: Fix race between deleting buffer and setting events
+
+ [ Arnaud Patard ]
+ * udeb: add ehci-pci to usb-modules
+
+ [ Ben Hutchings ]
+ * udeb: Add snd-cmi8328 and snd-scs1x to sound-modules, thanks to
+ Samuel Thibault (Closes: #717183)
+ * be2net: Fix to avoid hardware workaround when not needed
+ * iwlwifi: Update 3160 and 7260 support to work with production firmware
+ * rtlwifi: rtl8723ae: Fix typo in firmware names
+ * [x86] Change INTEL_MEI_ME back to a module (Closes: #717383)
+ * [armhf/armmp] Enable NET_CALXEDA_XGMAC as module (Closes: #717269)
+ * linux-source: Switch compression of tarball and patch to xz. Disable
+ compression of package (but use gzip, to keep old tools happy).
+ * linux-source: Install kernel config files for linux-image packages in
+ /usr/src/linux-config-$UPSTREAMVERSION directory
+ * ata: Disable SATA_INIC162X - this driver corrupts data and is not
+ expected to be fixed (Closes: #714295)
+ * writeback: Fix periodic writeback after fs mount
+ * sfc: Fix memory leak when discarding scattered packets
+ * neighbour: fix a race in neigh_destroy()
+ * virtio: support unlocked queue poll
+ * virtio_net: fix race in RX VQ processing
+ * vhost-net: fix use-after-free in vhost_net_flush
+ * tuntap: correctly linearize skb when zerocopy is used
+ * macvtap: correctly linearize skb when zerocopy is used
+ * ipv6: in case of link failure remove route directly instead of
+ letting it expire
+ * 9p: fix off by one causing access violations and memory corruption
+
+ [ Thorsten Glaser ]
+ * Update m68k configs (Closes: #717689):
+ - disable some functionality due to size constraints
+ - switch to using initrd
+ - drop all flavours; build a generic image that runs on
+ multiple subarchitectores (old Amiga, Atari, Macintosh tested;
+ old BVME6000, MVME147, MVME16x, new Apollo, Q40/Q60 untested)
+ - use gcc-4.8
+ - add patch to make Atari EtherNAT actually selectable
+ * nfs: Enable swap on NFS
+ * fs/nls: Enable Macintosh HFS+ codepage modules
+ * debian/control: Fix Vcs-Svn: use anonscm.debian.org
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 28 Jul 2013 00:33:32 +0100
+
+linux-tools (3.10-2) unstable; urgency=low
+
+ * linux-kbuild: Fix use of getline() in modpost wrapper (Closes: #717195)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 18 Jul 2013 04:02:11 +0100
+
+linux-tools (3.10-1) unstable; urgency=low
+
+ * New upstream release
+
+ [ Chris Boot ]
+ * Update modpost-symbol-prefix.patch for 3.10
+
+ [ Ben Hutchings ]
+ * debian/patches: Add DEP-3 headers (From, Subject, Forwarded) to all patches
+ * debian/copyright: Convert to machine-readable format (fka DEP-5)
+ * debian/copyright: Add explanation of indirect linking of perf to OpenSSL
+ * debian/rules.real: Remove support for pre-multiarch dpkg
+ * Update policy version to 3.9.4
+ - debian/rules: Implement build-arch and build-indep targets
+ * linux-kbuild: Update modpost wrapper for 3.10
+ - Implement the -T option
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 16 Jul 2013 13:29:22 +0100
+
+linux (3.10.1-1) unstable; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.10
+ - netfilter: nf_nat_sip: fix mangling (Closes: #715822)
+ - drm/i915: Add HPD IRQ storm detection (Closes: #572537)
+ - ipv6: ip6_sk_dst_check() must not assume ipv6 dst (CVE-2013-2232)
+ - af_key: fix info leaks in notify messages (CVE-2013-2234)
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.10.1
+ - libceph: Fix NULL pointer dereference in auth client code (CVE-2013-1059)
+ - ceph: fix sleeping function called from invalid context.
+ - libceph: fix invalid unsigned->signed conversion for timespec encoding
+ - module: do percpu allocation after uniqueness check. No, really!
+ - charger-manager: Ensure event is not used as format string
+ - hpfs: better test for errors
+ - crypto: sanitize argument for format string
+ - MAINTAINERS: add stable_kernel_rules.txt to stable maintainer information
+ - futex: Take hugepages into account when generating futex_key
+ - tty: Reset itty for other pty
+ - Revert "serial: 8250_pci: add support for another kind of NetMos
+ Technology PCI 9835 Multi-I/O Controller"
+ - NFSv4.1 end back channel session draining
+ - nfsd4: fix decoding of compounds across page boundaries
+ - KVM: VMX: mark unusable segment as nonpresent
+ - SCSI: sd: Fix parsing of 'temporary ' cache mode prefix
+ - cpufreq: Fix cpufreq regression after suspend/resume
+ - Revert "memcg: avoid dangling reference count in creation failure"
+
+ [ Ben Hutchings ]
+ * cassini: Make missing firmware non-fatal (Closes: #714128)
+ * debian/patches: Add DEP-3 headers (From/Author, Subject/Description,
+ Forwarded/Origin) to all patches
+ * aufs: Add DEP-3 headers to generated/copied patches
+ * [rt] genpatch.py: Work with upstream patch series as well as git
+ - Fold convert-series into genpatch.py
+ * [rt] genpatch.py: Add Origin header to all patches
+ * debian/bin/check-patches.sh: Report missing DEP-3 headers
+ * alx: Use upstream minimal driver
+ - Update to 3.11-rc1
+ * [x86] efivars: Reenable 'paranoid' size check by default, as it should
+ no longer have false positives
+ * debian/patches: Reorder and group patches in series
+ * debian/rules.real: Remove support for pre-multiarch dpkg
+ * Update policy version to 3.9.4
+ - debian/control: Put xen-linux-system-* in the 'metapackages' section
+ * linux-source: Add bc to recommended packages (Closes: #715413)
+ * udeb: Add ath6kl_usb and mwifiex_usb to nic-wireless-modules
+ * udeb: Add pm80xx (previously pm8001) to scsi-extra-modules
+ * udeb: Add virtio_scsi to virtio-modules
+ * Set ABI to 1
+ * xen/blkback: Check device permissions before allowing OP_DISCARD
+ (CVE-2013-2140)
+ * udeb: Remove obsolete and unsupported drivers and filesystems
+ - Remove ppa from scsi-modules
+ - Remove floppy-modules, irda-modules, parport-modules, plip-modules,
+ qnx4-modules, reiserfs-modules, ufs-modules
+ * [x86] efivars: Re-enable pstore support by default. It can be disabled
+ by setting module parameter pstore_disable=Y.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 16 Jul 2013 02:06:53 +0100
+
+linux (3.10~rc7-1~exp1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [armhf/armmp] Add EMAC ethernet driver found on Allwinner A10 SoCs,
+ thanks to Niall Walsh (Closes: #711998)
+ - Add MDIO bus driver for the Allwinner EMAC
+ - Add EMAC controller node to sun4i DTSI
+ - cubieboard: Enable ethernet (EMAC) support in dts
+ - Add EMAC Controller to Hackberry dt
+ * [x86] cpufreq: Enable X86_INTEL_PSTATE (Closes: #712062)
+ * debian/control: Add Homepage field
+ * debian/watch: Add watch file and update script
+ * misc/bmp085: Enable building as a module
+ * misc: Enable BMP085_I2C as module
+ * team: Enable NET_TEAM_MODE_RANDOM as module
+ * 8021q: Enable VLAN_8021Q_MVRP
+ * batman: Enable BATMAN_ADV_NC
+ * netlink: Enable NETLINK_MMAP, NETLINK_DIAG [!armel/{iop32x,ixp4xx,orion5x}]
+ * sctp: Enable SCTP_COOKIE_HMAC_SHA1
+ * tipc: Enable TIPC_MEDIA_IB
+ * [x86] cpufreq: Enable X86_AMD_FREQ_SENSITIVITY as module
+ * [x86] i2c: Enable I2C_ISMT, I2C_DESIGNWARE_PCI as modules
+ * [x86] mouse: Enable MOUSE_CYAPA as modules
+ * [armel/{iop32x,ixp4xx,orion5x}] Disable features to reduce kernel size
+ - Disable KSM, YAMA
+ - [armel/orion5x] Disable FTRACE
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 24 Jun 2013 14:55:23 +0100
+
+linux (3.10~rc5-1~exp1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [x86] Enable HYPERVISOR_GUEST
+ * udeb: Clean up configuration:
+ - Move i2c-algo-bit to i2c-modules
+ - Remove redundant control file overrides
+ - [s390] Use symlinks to follow s390x configuration
+ - [sparc64] Use symlinks to follow sparc configuration
+ - Only list the 'new' firewire modules in firewire-core-modules
+ - Remove obsolete eth1394 and firewire-core-modules dependency from
+ nic-modules
+ - Move ide-modules and ide-core-modules into ia64 configuration
+ - [powerpc,x86] Fold nic-extra-modules into nic-modules
+ * iwlegacy: Use consistent condition for il_pm_ops (fixes FTBFS on ia64)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 11 Jun 2013 04:44:05 +0100
+
+linux (3.10~rc4-1~exp1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.x-rcN-20130520
+ * alx: Update VLAN tag handling for 3.10
+ * md: Enable BCACHE as module
+ * net/usb: Enable USB_RTL8152 as module
+ - udeb: Add r8152 to nic-usb-modules
+ * rt2800usb: Enable RT2800USB_RT55XX
+ * net/wireless: Enable RTL8188EE
+ - udeb: Add rtl8188ee to nic-wireless-modules
+ * linux-image: Restore package date (in ISO format) to utsname version
+ string ('uname -v' output)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 03 Jun 2013 02:43:51 +0100
+
+linux (3.9.8-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.7
+ - b43: stop format string leaking into error msgs (CVE-2013-2852)
+ - ACPI / video: Do not bind to device objects with a scan handler
+ - libceph: must hold mutex for reset_changed_osds()
+ - ceph: ceph_pagelist_append might sleep while atomic
+ - rbd: don't destroy ceph_opts in rbd_add()
+ - Bluetooth: Fix missing length checks for L2CAP signalling PDUs
+ - kmsg: honor dmesg_restrict sysctl on /dev/kmsg
+ - memcg: don't initialize kmem-cache destroying work for root caches
+ - md/raid1: consider WRITE as successful only if at least one non-Faulty
+ and non-rebuilding drive completed it.
+ - md/raid1,5,10: Disable WRITE SAME until a recovery strategy is in place
+ - [x86] Modify UEFI anti-bricking code
+ - powerpc: Fix stack overflow crash in resume_kernel when ftracing
+ - USB: pl2303: fix device initialisation at open
+ - USB: f81232: fix device initialisation at open
+ - USB: spcp8x5: fix device initialisation at open
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.8
+ - ARM: 7752/1: errata: LoUIS bit field in CLIDR register is incorrect
+ - clk: remove notifier from list before freeing it
+ - [hppa] make interrupt and interruption stack allocation reentrant
+ - ACPI / dock: Take ACPI scan lock in write_undock()
+ - net: fec: fix kernel oops when plug/unplug cable many times
+ - tcp: fix tcp_md5_hash_skb_data()
+ - net/802/mrp: fix lockdep splat
+ - ipv6: fix possible crashes in ip6_cork_release()
+ - r8169: fix offloaded tx checksum for small packets.
+ - xfrm: properly handle invalid states as an error
+ - ip_tunnel: fix kernel panic with icmp_dest_unreach
+ - net: Block MSG_CMSG_COMPAT in send(m)msg and recv(m)msg
+ - net: force a reload of first item in hlist_nulls_for_each_entry_rcu
+ - vhost_net: clear msg.control for non-zerocopy case during tx
+ - net: sctp: fix NULL pointer dereference in socket destruction
+ - team: check return value of team_get_port_by_index_rcu() for NULL
+ - team: move add to port list before port enablement
+ - l2tp: Fix PPP header erasure and memory leak
+ - sctp: fully initialize sctp_outq in sctp_outq_init
+ - macvtap: set transport header before passing skb to lower device
+ - tuntap: set transport header before passing it to kernel
+ - packet: set transport header before doing xmit
+ - netback: set transport header before passing it to kernel
+ - net_sched: better precise estimation on packet length for untrusted
+ packets
+ - firmware loader: fix use-after-free by double abort
+ - target/iscsi: don't corrupt bh_count in iscsit_stop_time2retain_timer()
+ - rbd: use the correct length for format 2 object names
+ - perf: Fix perf mmap bugs
+ - perf: Fix mmap() accounting hole
+
+ [ Ben Hutchings ]
+ * yama: Disable ptrace restrictions by default, and change boot message
+ to indicate this (Closes: #712740)
+ * fanotify: info leak in copy_event_to_user() (CVE-2013-2148)
+ * drivers/cdrom/cdrom.c: use kzalloc() for failing hardware (CVE-2013-2164)
+ * block: do not pass disk names as format strings (CVE-2013-2851)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 29 Jun 2013 18:44:21 +0100
+
+linux (3.9.6-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.6
+ - xhci - correct comp_mode_recovery_timer on return from hibernate
+ - usb: musb: make use_sg flag URB specific
+ - USB: keyspan: fix bogus array index
+ - [arm] 7747/1: pcpu: ensure __my_cpu_offset cannot be re-ordered across
+ barrier()
+ - hpfs: fix warnings when the filesystem fills up
+ - cifs: fix off-by-one bug in build_unc_path_to_root
+ - ecryptfs: fixed msync to flush data
+ - eCryptfs: Check return of filemap_write_and_wait during fsync
+ - hwmon: (adm1021) Strengthen chip detection for ADM1021, LM84 and MAX1617
+ - drm: fix a use-after-free when GPU acceleration disabled
+ - [powerpc] pseries: Force 32 bit MSIs for devices that require it
+ - [powerpc] pseries: Make 32-bit MSI quirk work on systems lacking firmware
+ support
+
+ [ Ben Hutchings ]
+ * [armel/orion5x] Enable EXPERT; disable FIPS, OABI_COMPAT, PCI_QUIRKS,
+ VGA_ARB to reduce kernel size (really fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 15 Jun 2013 04:53:13 +0100
+
+linux (3.9.5-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.5
+ - [arm] 7723/1: crypto: sha1-armv4-large.S: fix SP handling
+ - mac80211: use just spin_lock() in ieee80211_get_tkip_p2k()
+ - USB: cxacru: potential underflow in cxacru_cm_get_array()
+ - TTY: Fix tty miss restart after we turn off flow-control
+ (Closes: #465823)
+ - cifs: only set ops for inodes in I_NEW state
+ - drivers/char/random.c: fix priming of last_data
+ - random: fix accounting race condition with lockless irq entropy_count
+ update
+ - fat: fix possible overflow for fat_clusters
+ - tg3: Fix data corruption on 5725 with TSO
+ - ocfs2: goto out_unlock if ocfs2_get_clusters_nocache() failed in
+ ocfs2_fiemap()
+ - mm compaction: fix of improper cache flush in migration code
+ - klist: del waiter from klist_remove_waiters before wakeup waitting process
+ - wait: fix false timeouts when using wait_event_timeout()
+ - nilfs2: fix issue of nilfs_set_page_dirty() for page at EOF boundary
+ - mm: mmu_notifier: re-fix freed page still mapped in secondary MMU
+ - mm: memcg: remove incorrect VM_BUG_ON for swap cache pages in uncharge
+ - mm/pagewalk.c: walk_page_range should avoid VM_PFNMAP areas
+ - mm/THP: use pmd_populate() to update the pmd with pgtable_t pointer
+ - module: don't unlink the module until we've removed all exposure.
+ - xfs: kill suid/sgid through the truncate path.
+ - SUNRPC: Prevent an rpc_task wakeup race
+ - cifs: fix potential buffer overrun when composing a new options string
+ - cgroup: initialize xattr before calling d_instantiate()
+ - [powerpc] 32bit:Store temporary result in r0 instead of r8
+ - [powerpc] tm: Fix userspace stack corruption on signal delivery for active
+ transactions
+ - [powerpc] tm: Abort on emulation and alignment faults
+ - iscsi-target: fix heap buffer overflow on error
+ - KVM: fix sil/dil/bpl/spl in the mod/rm fields
+ - reiserfs: fix deadlock with nfs racing on create/lookup
+ - reiserfs: fix problems with chowning setuid file w/ xattrs
+ - reiserfs: fix spurious multiple-fill in reiserfs_readdir_dentry
+ - jfs: fix a couple races
+ - IB/iser: Return error to upper layers on EAGAIN registration failures
+ - fuse: fix readdirplus Oops in fuse_dentry_revalidate
+ - target: Re-instate sess_wait_list for target_wait_for_sess_cmds
+ - xen-netback: Fix regressions caused by fix for CVE-2013-0216
+ + coalesce slots in TX path and fix regressions
+ + don't disconnect frontend when seeing oversize packet
+
+ [ Ben Hutchings ]
+ * [powerpcspe] Remove installer udebs (really fixes FTBFS)
+ * [s390] Add pgste to ptep_modify_prot_start()
+ * [s390] Enable PCI, PCI and USB drivers
+ * [powerpc] Fix build error in stable/3.9
+ * [armel/iop32x,armel/ixp4xx] Disable OABI_COMPAT, PCI_QUIRKS to reduce
+ kernel size (fixes FTBFS)
+ * ath9k: Disable PowerSave by default (Closes: #695968)
+ * [i386] udeb: Add viafb to fb-modules (Closes: #705788)
+ - [i386] udeb: Move i2c-algo-bit to i2c-modules and make fb-modules
+ depend on it
+ - viafb: Autoload on OLPC XO 1.5 only
+ * fs: Enable F2FS_FS as module (Closes: #711342)
+ * iio,HID: Enable IIO, HID_SENSOR_HUB, HID_SENSOR_ACCEL_3D,
+ HID_SENSOR_ALS, HID_SENSOR_GYRO_3D, HID_SENSOR_MAGNETOMETER_3D
+ as modules (Closes: #711690)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 10 Jun 2013 02:41:53 +0100
+
+linux-tools (3.9.4-1) unstable; urgency=low
+
+ * New upstream release
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 03 Jun 2013 13:45:52 +0100
+
+linux (3.9.4-1) unstable; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.9
+ - ALSA: hda - Add generic parser support to Analog Device codec driver
+ (Closes: #659033)
+ - Input: add support for Cypress PS/2 Trackpads (Closes: #703607)
+ - [armel] media: VIDEO_ZORAN is disabled as it requires virt_to_bus()
+ - [armhf/omap] OMAP_MBOX_FWK and TIDSPBRIDGE is disabled as they are
+ not yet compatible with ARM multiplatform
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.1
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.2
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.3
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.9.4
+
+ [ Ben Hutchings ]
+ * [rt] Disable until it is updated for Linux 3.9 or later
+ * Build-Depend on bc, needed to build kernel/timeconst.h
+ * [x86] Enable VMWARE_VMCI, VSOCKETS, VMWARE_VMCI_VSOCKETS as modules
+ (Closes: #707676)
+ * README.Debian: Correct reference to Berkeley Database development package
+ * aufs: Update to aufs3.9-20130506
+ * [powerpcspe] Prevent building uImage with missing mkimage, thanks to
+ Roland Stigge (Closes: #708094)
+ * udeb: Fix yet more configuration errors causing FTBFS:
+ - [powerpc/powerpc64] Replace ibmvscsic with ibmvscsi in scsi-modules
+ - [ppc64] Use symlinks to follow powerpc/powerpc64 configuration
+ - [powerpcspe] Use symlinks to follow powerpc configuration
+ (Closes: #708336, #708662)
+ - Add raid6_pq to md-modules, and make btrfs-modules depend on it
+ * netfilter: Enable NETFILTER_XT_MATCH_BPF, NETFILTER_XT_MATCH_CONNLABEL
+ as modules
+ * bridge: Enable BRIDGE_VLAN_FILTERING
+ * batman: Enable BATMAN_ADV_DAT
+ * nfc: Enable NFC_LLCP
+ * can: Enable CAN_PEAK_USB, CAN_8DEV_USB as modules
+ * hci_uart: Enable BT_HCIUART_3WIRE
+ * [amd64,powerpc/powerpc64,ppc64] block: Enable BLK_DEV_RSXX as module
+ * SCSI: Enable SCSI_CHELSIO_FCOE, SCSI_MPT3SAS, SCSI_UFSHCD as modules
+ - udeb: Add csiostor, mpt3sas, ufshcd, ufshcd-pci to scsi-extra-modules
+ * md: Enable DM_CACHE as module
+ * net/usb: Enable USB_NET_AX88179_178A as module (Closes: #704129)
+ - udeb: Add ax88179_178a to nic-usb-modules
+ * net/wireless: Enable AR5523 (Closes: #701777), IWLMVM,
+ RTL8723AE (Closes: #708348), WIL6210 as modules
+ - udeb: Add ar5523, iwldvm, iwlmvm, rtl8723ae, wil6210 to
+ nic-wireless-modules
+ * serial: Enable SERIAL_RP2 as module
+ - udeb: Add rp2 to serial-modules
+ * hw_random: Enable HW_RANDOM_TPM as module
+ * [x86] watchdog: Enable IE6XX_WDT, VIA_WDT as modules
+ * media/usb: Enable DVB_USB_AZ6007, USB_GSPCA_JL2005BCD as modules
+ * stk1160: Enable VIDEO_STK1160_AC97
+ * ivtv: Enable VIDEO_IVTV_ALSA as module
+ * radio: Enable RADIO_SHARK, RADIO_SHARK2, USB_KEENE, USB_MA901 as modules
+ * hda: Enable SND_HDA_CODEC_CA0132_DSP
+ * sound/firewire: Enable SND_SCS1X as module
+ * hid-holtek: Enable HOLTEK_FF
+ * hid: Enable HID_ICADE, HID_PS3REMOTE, HID_STEELSERIES, HID_THINGM as
+ modules
+ * usb/serial: Enable USB_SERIAL_F81232, USB_SERIAL_METRO, USB_SERIAL_QT2,
+ USB_SERIAL_XSENS_MT, USB_SERIAL_ZTE as modules
+ - udeb: Add f81232, quatech2, zte_ev to usb-serial-modules
+ * infiniband: Enable INFINIBAND_OCRDMA as module
+ * [x86] vfio: Enable VFIO, VFIO_PCI as modules
+ * [x86] hv: Enable HYPERV_BALLOON as module
+ * security: Enable SECURITY_YAMA, SECURITY_YAMA_STACKED (Closes: #704750)
+ * iscsi-target: fix heap buffer overflow on error (CVE-2013-2850)
+
+ [ Aurelien Jarno ]
+ * [mips] Enable KEXEC.
+
+ [ Arnaud Patard ]
+ * [armhf] Add armmp flavour
+ * [armhf] backport usb support for imx53 through chipidea and usb phy nop fixes
+ * [armhf] backport armada 370/xp thermal support
+ * [armhf] fix hard freeze when mvneta is used as module
+ * [arm] backport ehci split patches for omap and orion
+ * [armel] enable thermal
+ * [armel] kirkwood: enable more DT configs, thermal, POWER_RESET_*
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 01 Jun 2013 23:13:01 +0100
+
+linux (3.8.13-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.13
+ - autofs - remove autofs dentry mount check
+ - hugetlbfs: fix mmap failure in unaligned size request
+ (fixes regression in 3.4)
+ - perf/x86/intel/lbr: Fix LBR filter
+ - perf/x86/intel/lbr: Demand proper privileges for PERF_SAMPLE_BRANCH_KERNEL
+ - ipvs: ip_vs_sip_fill_param() BUG: bad check of return value
+ - netfilter: ctnetlink: don't permit ct creation with random tuple
+ - ext4: add check for inodes_count overflow in new resize ioctl
+ - r8169: fix 8168evl frame padding.
+ - drm/prime: keep a reference from the handle to exported dma-buf (v6)
+ - Btrfs: compare relevant parts of delayed tree refs
+ - Btrfs: fix extent logging with O_DIRECT into prealloc
+ - kernel/audit_tree.c: tree will leak memory when failure occurs in
+ audit_trim_trees()
+
+ [ Ben Hutchings ]
+ * udeb: Fix more configuration errors causing FTBFS:
+ - [m68k,mips,mipsel,ppc64,sparc64] Add crc-modules as common dependency
+ of btrfs-modules and xfs-modules (and others)
+ - [powerpc] Add llc to nic-shared-modules
+ * Bump ABI to 2
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 16 May 2013 00:28:04 +0100
+
+linux (3.8.12-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.12
+ - [powerpc] spufs: Initialise inode->i_ino in spufs_new_inode()
+ (possibly fixes: #707175)
+ - iwlwifi: fix freeing uninitialized pointer
+ - tty: fix up atime/mtime mess, take three
+ - sysfs: fix use after free in case of concurrent read/write and readdir
+ - [ia64] Fix initialization of CMCI/CMCP interrupts
+ - [ia64] Wrong asm register contraints in the futex implementation
+ (Closes: #702641)
+ - [ia64] Wrong asm register contraints in the kvm implementation
+ (Closes: #702639)
+ - fs/fscache/stats.c: fix memory leak
+ - hrtimer: Fix ktime_add_ns() overflow on 32bit architectures
+ - swap: redirty page if page write fails on swap file
+ - mm: swap: mark swap pages writeback before queueing for direct IO
+ - ACPI: Fix wrong parameter passed to memblock_reserve
+ - cgroup: fix an off-by-one bug which may trigger BUG_ON()
+ - cgroup: fix broken file xattrs
+ - clockevents: Set dummy handler on CPU_DEAD shutdown (Closes: #700333)
+ - inotify: invalid mask should return a error number but not set it
+ (fixes regression in 3.8.1)
+ - exec: do not abuse ->cred_guard_mutex in threadgroup_lock()
+ - md: bad block list should default to disabled.
+ - MD: ignore discard request for hard disks of hybid raid1/raid10 array
+ (fixes regression in 3.6)
+ - nfsd4: don't close read-write opens too soon
+ - wireless: regulatory: fix channel disabling race condition
+ - ext4/jbd2: don't wait (forever) for stale tid caused by wraparound
+ - jbd2: fix race between jbd2_journal_remove_checkpoint and
+ ->j_commit_callback
+ - ext4: fix journal callback list traversal
+ - ext4: fix big-endian bug in metadata checksum calculations
+ - [x86] KVM: X86 emulator: fix source operand decoding for 8bit mov[zs]x
+ instructions
+
+ [ Ben Hutchings ]
+ * [rt] Remove xen-linux-system packages and references to Xen support,
+ as Xen does not support real-time scheduling
+ * udeb: Fix configuration errors causing FTBFS:
+ - [armhf/vexpress] Remove ipv6-modules; ipv6 is now built-in
+ - [mipsel/sb1-bcm91250a,sparc] Add crc-modules as common dependency of
+ btrfs-modules and xfs-modules (and others)
+ - [powerpc] Add nic-shared-modules as common dependency of nic-modules
+ and nic-extra-modules
+ - Unify module list for nic-shared-modules across architectures [!m68k]
+ * [rt] Update to 3.8.11-rt8:
+ - time/timekeeping: shadow tk->cycle_last together with clock->cycle_last
+ - sched/workqueue: Only wake up idle workers if not blocked on sleeping
+ spin lock
+ * aufs: Update to aufs3.8-20130506
+ - for linux-3.7, btrfs limits the link count explicitly
+ - for linux-3.6, push mnt_want_write() outside of i_mutex
+ - possible bugfix, make sure the target branch is upper
+ - possible bugfix, error handling in reopen_nondir()
+ - new copyup implementation
+ - pin the branch dir
+ - convert the plink list into hlist
+ * linux-doc: Include aufs documentation
+ * [x86] zsmalloc: Change to built-in, as it can no longer be modular
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 10 May 2013 04:46:36 +0100
+
+linux-tools (3.8.11-1) unstable; urgency=low
+
+ * New upstream stable update
+
+ [ Ben Hutchings ]
+ * Upload to unstable (Closes: #707023)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 07 May 2013 02:11:16 +0100
+
+linux (3.8.11-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.6
+ - sysfs: fix race between readdir and lseek
+ - sysfs: handle failure path correctly for readdir()
+ - rtlwifi: usb: add missing freeing of skbuff
+ - b43: A fix for DMA transmission sequence errors
+ - tg3: fix length overflow in VPD firmware parsing (CVE-2013-1929)
+ - xen-blkback: fix dispatch_rw_block_io() error path
+ - net/irda: add missing error path release_sock call
+ - usb: xhci: Fix TRB transfer length macro used for Event TRB.
+ - Btrfs: fix locking on ROOT_REPLACE operations in tree mod log
+ - Btrfs: fix race between mmap writes and compression
+ - USB: serial: fix use-after-free in TIOCMIWAIT
+ - loop: prevent bdev freeing while device in use
+ - virtio: console: add locking around c_ovq operations
+ - nfsd4: reject "negative" acl lengths
+ - Btrfs: fix space leak when we fail to reserve metadata space
+ - net: remove a WARN_ON() in net_enable_timestamp()
+ - 8021q: fix a potential use-after-free
+ - unix: fix a race condition in unix_release()
+ - atl1e: drop pci-msi support because of packet corruption
+ (possibly fixes: #577747)
+ - ipv6: fix bad free of addrconf_init_net
+ - ipv6: don't accept multicast traffic with scope 0
+ - ipv6: don't accept node local multicast traffic from the wire
+ - pch_gbe: fix ip_summed checksum reporting on rx
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.7
+ - drm/nouveau: fix handling empty channel list in ioctl's
+ - drm/i915: Be sure to turn hsync/vsync back on at crt enable (v2)
+ (fixes regression in 3.8.3)
+ - drm: correctly restore mappings if drm_open fails
+ - mm: prevent mmap_cache race in find_vma()
+ - mwifiex: limit channel number not to overflow memory
+ - spinlocks and preemption points need to be at least compiler barriers
+ - crypto: gcm - fix assumption that assoc has one segment
+ - NFSv4/4.1: Fix bugs in nfs4[01]_walk_client_list
+ - vfio-pci: Fix possible integer overflow
+ - can: gw: use kmem_cache_free() instead of kfree()
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.8
+ - ipc: set msg back to -EAGAIN if copy wasn't performed
+ - GFS2: Fix unlock of fcntl locks during withdrawn state
+ - cifs: Allow passwords which begin with a delimitor (fixes
+ regression in 3.8)
+ - [i386] Fix possible incomplete TLB invalidate with PAE pagetables
+ - sched_clock: Prevent 64bit inatomicity on 32bit systems
+ - [x86] mm, paravirt: Fix vmalloc_fault oops during lazy MMU updates
+ - tty: don't deadlock while flushing workqueue
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.9
+ - [powerpc] add a missing label in resume_kernel
+ - [powerpc] kvm/powerpc/e500mc: fix tlb invalidation on cpu migration
+ - kthread: Prevent unpark race which puts threads on the wrong cpu
+ - hrtimer: Don't reinitialize a cpu_base lock on CPU_UP
+ - hugetlbfs: add swap entry check in follow_hugetlb_page()
+ - kernel/signal.c: stop info leak via the tkill and the tgkill syscalls
+ - hfsplus: fix potential overflow in hfsplus_file_truncate()
+ - md: raid1,10: Handle REQ_WRITE_SAME flag in write bios
+ - [x86] KVM: Allow cross page reads and writes from cached translations.
+ (fixes regression in fix for CVE-2013-1796)
+ - hsched: Convert BUG_ON()s in try_to_wake_up_local() to WARN_ON_ONCE()s
+ - [armel] Fix kexec by setting outer_cache.inv_all for Feroceon
+ - ath9k_htc: accept 1.x firmware newer than 1.3
+ - mac80211: fix cfg80211 interaction on auth/assoc request
+ - crypto: algif - suppress sending source address information in recvmsg
+ (CVE-2013-3076)
+ - vm: add and use vm_iomap_memory() helper function
+ - Btrfs: make sure nbytes are right after log replay
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.10
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.11
+ - TTY: do not update atime/mtime on read/write
+ - TTY: fix atime/mtime regression
+ - [sparc] sparc64: Fix race in TLB batch processing.
+ - atm: update msg_namelen in vcc_recvmsg() (CVE-2013-3222)
+ - ax25: fix info leak via msg_name in ax25_recvmsg() (CVE-2013-3223)
+ - Bluetooth: fix possible info leak in bt_sock_recvmsg() (CVE-2013-3224)
+ - Bluetooth: RFCOMM - Fix missing msg_namelen update in
+ rfcomm_sock_recvmsg() (CVE-2013-3225)
+ - Bluetooth: SCO - Fix missing msg_namelen update in sco_sock_recvmsg()
+ - caif: Fix missing msg_namelen update in caif_seqpkt_recvmsg()
+ (CVE-2013-3227)
+ - irda: Fix missing msg_namelen update in irda_recvmsg_dgram()
+ (CVE-2013-3228)
+ - [s390] iucv: Fix missing msg_namelen update in iucv_sock_recvmsg()
+ (CVE-2013-3229)
+ - l2tp: fix info leak in l2tp_ip6_recvmsg()
+ - llc: Fix missing msg_namelen update in llc_ui_recvmsg() (CVE-2013-3231)
+ - netrom: fix info leak via msg_name in nr_recvmsg()
+ - NFC: llcp: fix info leaks via msg_name in llcp_sock_recvmsg()
+ - rose: fix info leak via msg_name in rose_recvmsg() (CVE-2013-3234)
+ - tipc: fix info leaks via msg_name in recv_msg/recv_stream
+ (CVE-2013-3235)
+ - atl1e: limit gso segment size to prevent generation of wrong ip length
+ fields (Closes: #565404)
+ - af_unix: If we don't care about credentials coallesce all messages
+ - ipv6/tcp: Stop processing ICMPv6 redirect messages
+ - rtnetlink: Call nlmsg_parse() with correct header length
+ - tcp: incoming connections might use wrong route under synflood
+ - tcp: Reallocate headroom if it would overflow csum_start
+ - net: cdc_mbim: remove bogus sizeof()
+ - net: fix incorrect credentials passing (CVE-2013-1979)
+ - net: drop dst before queueing fragments
+
+ [ Ben Hutchings ]
+ * [rt] Update to 3.8.10-rt6
+ * aufs: Update to aufs3.8-20130325
+ - ftruncate() supports sb_{start,end}_write()
+ - replace mnt_drop_write_file() by __mnt_drop_write()
+ - support for vfs_truncate()
+ * udeb: Move modules and adjust dependencies to avoid duplicates
+ (Closes: #706646)
+ - Move crc16 to crc-modules; make ext4-modules and nic-usb-modules depend
+ on it
+ - Make xfs-modules depends on crc-modules
+ - Move pps_core and ptp to nic-common-modules or nic-modules as appropriate
+ * udeb: Merge redundant configuration for ext{2,3} dependency on mbcache
+ * Set ABI to 1
+ * bug script: Remove broken sound functions (Closes: #705619)
+ * [i386/486] udeb: Add lxfb to fb-modules (Closes: #705780)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 04 May 2013 21:45:23 +0100
+
+linux (3.8.5-1~experimental.1) experimental; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.4
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.5
+
+ [ Ben Hutchings ]
+ * signal: Fix use of missing sa_restorer field (build regression
+ introduced by fix for CVE-2013-0914)
+ * udeb: Add hid-generic, hid-holtek-kbd, hid-lenovo-tpkbd,
+ hid-roccat-isku, hid-roccat-lua, hid-roccat-savu to input-modules
+ * cdc_ncm,cdc_mbim: Use NCM by default
+ * [rt] Update to 3.8.4-rt2 and reenable
+ * [rt] wireless: orinoco_usb is BROKEN
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 31 Mar 2013 07:35:31 +0100
+
+linux (3.8.3-1~experimental.1) experimental; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.3
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.8-20130311
+ * USB: cdc-wdm: fix buffer overflow (CVE-2013-1860)
+ * signal: always clear sa_restorer on execve (CVE-2013-0914)
+ * ext3: Fix format string issues (CVE-2013-1848)
+ * net/sctp: Validate parameter size for SCTP_GET_ASSOC_STATS (CVE-2013-1828)
+ * bridge: fix mdb info leaks
+ * rtnl: fix info leak on RTM_GETLINK request for VF devices
+ * dcbnl: fix various netlink info leaks
+ * ALSA: seq: Fix missing error handling in snd_seq_timer_open()
+
+ [ Ian Campbell ]
+ * arm: correct path to DTB files. Patch from Nobuhiro Iwamatsu.
+ (Closes: #703082)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 19 Mar 2013 04:52:46 +0000
+
+linux-tools (3.8.2-1~experimental.1) experimental; urgency=low
+
+ * New upstream release (Closes: #702450)
+
+ [ Ben Hutchings ]
+ * linux-tools: Install bash_completion script for perf with a version-
+ dependent name (Closes: #701790)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 07 Mar 2013 05:32:40 +0000
+
+linux (3.8.2-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.1
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.8.2
+
+ [ Ben Hutchings ]
+ * linux-image: Increase minimum version of initramfs-tools to 0.110~
+ which copes with the recently renamed EHCI and NFS modules
+ * genorig: Accept xz-compressed upstream tarballs and patches,
+ thanks to Sedat Dilek
+ * net: Enable USB_NET_CDC_MBIM as module (Closes: #701869)
+ * mfd,mmc,memstick: Enable MFD_RTSX_PCI, MMC_REALTEK_PCI and
+ MEMSTICK_REALTEK_PCI as modules, replacing RTS_PSTOR (Closes: #702108)
+ * [mips,mipsel] Add dependencies for HAVE_ARCH_TRANSPARENT_HUGEPAGE
+ (fixes FTBFS)
+
+ [ Aurelien Jarno ]
+ * [mips/octeon] Change HW_RANDOM and HW_RANDOM_OCTEON to modules.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 07 Mar 2013 04:00:04 +0000
+
+linux (3.8-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.8
+ - pidns: Support unsharing the pid namespace. (Closes: #595920)
+ - fsnotify: Rework locking and reference counting (Closes: #602966)
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.x-rcN-20130204
+ * sock_diag: Fix out-of-bounds access to sock_diag_handlers[]
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 25 Feb 2013 05:29:53 +0000
+
+linux (3.7.8-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.7.4
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.7.5
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.7.6
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.7.7
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.7.8
+
+ [ Ben Hutchings ]
+ * Add powerpcspe architecture, thanks to Roland Stigge (Closes: #693042)
+ * aufs: Hide CONFIG_AUFS_PROC_MAP, which requires a patch we don't apply
+ (Closes: #693332)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 15 Feb 2013 00:42:03 +0000
+
+linux (3.7.3-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.7.2
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.7.3
+
+ [ Ben Hutchings ]
+ * [ia64] nouveau: Disable another bit of ACPI support (fixes FTBFS)
+ * [armhf/omap] Make OMAP_DMA built-in (fixes FTBFS)
+ * ath6kl: Do not use virt_addr_valid() (fixes FTBFS on mips,mipsel)
+ * [armel/iop32x,armel/ixp4xx,armel/orion5x] Make IPV6 a module again due
+ to kernel size limit (fixes FTBFS)
+ * ALSA: usb-audio: Avoid autopm calls after disconnection; Fix missing
+ autopm for MIDI input (Closes: #664068)
+ * [!x86] Disable ZRAM, ZSMALLOC as modules (Reopens: #676779), as they
+ really aren't portable yet.
+ * udeb: Remove ipv6-modules on all architectures/flavours where it's
+ now built-in (fixes FTBFS)
+
+ [ Ian Campbell ]
+ * [x86/xen] Update microcode driver to use new API.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 18 Jan 2013 01:36:15 +0000
+
+linux (3.7.1-1~experimental.2) experimental; urgency=low
+
+ [ Ben Hutchings ]
+ * linux-headers-common: Include the include/uapi/asm-generic directory
+ (Closes: #696664)
+ * linux-headers-common: Do not use link-vmlinux.sh when cleaning external
+ modules (Closes: #696775)
+ * Enable ZRAM, ZSMALLOC as modules on all architectures (Closes: #676779)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 05 Jan 2013 17:48:05 +0000
+
+linux-tools (3.7.1-1~experimental.1) experimental; urgency=low
+
+ * New upstream release
+
+ [ Ben Hutchings ]
+ * [amd64] linux-tools: Enable optimisations and special-casing of x86_64
+ (Closes: #694759)
+
+ [ Uwe Kleine-König ]
+ * linux-kbuild: debian/control: Use Section: kernel (Closes: #545017)
+
+ -- Jonathan Nieder <jrnieder@gmail.com> Fri, 28 Dec 2012 09:29:53 -0800
+
+linux (3.7.1-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.7
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.7.1
+
+ [ maximilian attems ]
+ * Enable WIZNET_W5100, WIZNET_W5300, AMD_PHY, BCM87XX_PHY.
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.x-rcN-20121210
+ * [rt] Disable until it is updated for Linux 3.7 or later
+ * Make gcc-4.7 the default compiler
+ * [mips,mipsel,sparc] media/parpot: Disable VIDEO_PMS in all
+ configurations where the other parport video drivers are disabled
+ * [x86] fs: Re-enable PSTORE_RAM (formerly known as RAMOOPS) as module
+ * net/wireless: Enable WL_TI; re-enable WL1251 and WL12XX as modules
+ * staging: Enable RTLLIB; re-enable RTL8192E as module
+ * media: Enable IR_TTUSBIR as module, replacing LIRC_TTUSBIR
+ * media: Enable VIDEO_STK1160 as module, replacing EASYCAP
+ * [armhf/mx5] Update configuration:
+ - Enable MACH_IMX51_DT, replacing MACH_MX51_EFIKAMX (but not fully
+ working in this kernel version)
+ - Enable SOC_IMX53, replacing MACH_MX53_{EVK,SMD,LOCO,ARD}
+ - Re-enable MFD_MC13XXX_SPI (formerly included in MFD_MC13XXX)
+ - Enable PWM and re-enable PWM_IMX (formerly known as MXC_PWM)
+ * [i386] comedi: Re-enable COMEDI_ISA_DRIVERS
+ * [i386,alpha] media/radio: Enable V4L_RADIO_ISA_DRIVERS and re-enable
+ the ISA drivers
+ * PCI: Enable PCI_REALLOC_ENABLE_AUTO
+ * [x86] PCI: Enable PCI_PRI, PCI_PASID, PCI_IOAPIC
+ * [amd64] ACPI: Enable ACPI_BGRT
+ * net: Enable INET_UDP_DIAG, NET_IPVTI, PACKET_DIAG, UNIX_DIAG as modules
+ * netfilter: Enable NF_NAT_IPV6, IP6_NF_TARGET_MASQUERADE, IP6_NF_TARGET_NPT,
+ NF_CT_NETLINK_HELPER as modules
+ * net/sched: Enable NET_EMATCH_CANID, NET_EMATCH_IPSET as modules
+ * can: Enable CAN_PEAK_PCIEC, CAN_PEAK_PCMCIA, CAN_PEAK_USB as modules
+ * [i386] can: Enable CAN_CC770, CAN_CC770_ISA as module
+ * block: Enable BLK_DEV_NVME, BLK_DEV_PCIESSD_MTIP32XX as modules
+ * qla2xxx: Enable TCM_QLA2XXX as module
+ * team: Enable NET_TEAM_MODE_BROADCAST as module
+ * net: Enable VXLAN as module
+ * phy: Enable AT803X_PHY as module
+ * rt2800pci: Enable RT2800PCI_RT3290
+ * wireless/ti: Enable WL18XX as module
+ * ptp: Enable clock drivers along with associated net/PHY drivers
+ * [!x86] drm: Disable DRM_VMWGFX
+ * drm: Enable DRM_UDL as module
+ - Disable autoloading as it is incompatible with older versions of
+ xserver-xorg-video-displaylink
+ * [x86] drm: Enable DRM_AST, DRM_MGAG200 as modules
+ - Disable autoloading as they are incompatible with older versions of
+ xserver-xorg-video-ast and xserver-xorg-video-mga
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 24 Dec 2012 02:50:21 +0000
+
+linux (3.6.9-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.6.9
+
+ [ maximilian attems ]
+ * Enable NETFILTER_XT_TARGET_HMARK, NET_EMATCH_IPSET, USB_NET_QMI_WWAN.
+ * Enable more HID drivers.
+ * [x86] Enable INTEL_MEI.
+ * [ARM]: 7492/1: add strstr declaration for decompressors.
+
+ [ Ben Hutchings ]
+ * HID: Add Apple wireless keyboard 2011 ANSI to special driver list
+ (Closes: #694546)
+
+ [ Arnaud Patard ]
+ * [ARM]: add patch from staging-next to fix lis3l02dq on omap
+ * [ARM]: backport omap usb fixes to make it build again.
+ * Change musb Kconfig so that our configuration of USB_MUSB_OMAP2PLUS
+ is used and not set to 'm'.
+
+ -- maximilian attems <maks@debian.org> Wed, 05 Dec 2012 16:16:50 +0100
+
+linux (3.6.8-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.6.7
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.6.8
+
+ [ Bastian Blank ]
+ * Enable POWER_SUPPLY, BLK_DEV_THROTTLING and NETPRIO_CGROUP.
+ * [amd64] Enable CRYPTO_CAMELLIA_X86_64, CRYPTO_SERPENT_AVX_X86_64 and
+ CRYPTO_TWOFISH_AVX_X86_64.
+ * [x86] Enable more platform drivers.
+ * [s390/s390x-tape, s390x/s390x-tape] Remove not longer supported image
+ variant.
+ * [s390, s390x] Enable support for transparent hugepages.
+ * Use XZ for kernel images if supported.
+
+ [ maximilian attems ]
+ * Enable DVB_USB_RTL28XXU. (closes: #692749)
+ * Enable SBP_TARGET. (closes: #685341)
+
+ -- maximilian attems <maks@debian.org> Wed, 28 Nov 2012 18:35:41 +0100
+
+linux-tools (3.6-1~experimental.1) experimental; urgency=low
+
+ * New upstream release (Closes: #690011)
+
+ [ Ben Hutchings ]
+ * genorig: Accept xz-compressed upstream tarballs and patches, and
+ generate an xz-compressed orig tarball, thanks to Sedat Dilek
+ * source: Enable xz-compression for debian directory tarball
+
+ [ Jonathan Nieder ]
+ * Add myself to uploaders list.
+
+ -- Jonathan Nieder <jrnieder@gmail.com> Sat, 24 Nov 2012 13:40:28 -0800
+
+linux (3.6.6-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.6.5
+ - [x86] mm: Find_early_table_space based on ranges that are actually
+ being mapped (Closes: #692067)
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.6.6
+ - ext4: fix unjournaled inode bitmap modification (Closes: #692411)
+
+ [ Uwe Kleine-König ]
+ * [rt] bump to 3.6.4-rt10
+
+ [ Ben Hutchings ]
+ * [x86] staging: Re-enable ZSMALLOC as module, previously selected by
+ ZRAM but now a dependency (Closes: #692024)
+ * fs: Re-enable link security restrictions that are disabled by default
+ in 3.6.5
+ * [rt] Update to 3.6.6-rt17
+ * rc: Enable RC_DEVICES; re-enable LIRC; re-enable the drivers that
+ depend on those; enable IR_SANYO_DECODER and IR_IGUANA as modules
+
+ [ Bastian Blank ]
+ * [sparc] Remove IP_PNP, IP_PNP_RARP, NET_IPGRE and ARPD overrides.
+ * Enable IPv6 globally.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 15 Nov 2012 04:49:50 +0000
+
+linux (3.6.4-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.6
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.6.1
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.6.2
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.6.3
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.6.4
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.6-20121015
+ * cirrus: Disable by default, as it is currently incompatible with
+ xserver-xorg-video-cirrus. It can be forced to load with module
+ parameter modeset=1.
+
+ [ Uwe Kleine-König ]
+ * reenable the rt featureset using 3.6.3-rt8
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 29 Oct 2012 04:22:02 +0000
+
+linux (3.5.5-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.5.3
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.5.4
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.5.5
+
+ [ Ben Hutchings ]
+ * mfd: lpc_ich: Fix a 3.5 kernel regression for iTCO_wdt driver
+ (Closes: #686040)
+ * drm: Enable various drivers (Closes: #685479):
+ - [x86] Enable DRM_GMA500 (previously DRM_PSB) as module
+ - Enable DRM_CIRRUS_QEMU as module
+ * media/dvb: Enable DVB_USB_AF9035 as module (Closes: #687050)
+
+ [ Bastian Blank ]
+ * Remove superfluous dependency in debugging packages.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 04 Oct 2012 15:19:30 +0200
+
+linux-tools (3.5-1~experimental.1) experimental; urgency=low
+
+ * New upstream release
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 20 Aug 2012 00:57:12 +0100
+
+linux (3.5.2-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.5.1
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.5.2
+
+ [ Ben Hutchings ]
+ * genorig: Fix linux_upstream_full compute for version with modifier,
+ thanks to Julien Danjou (Closes: #683824)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 19 Aug 2012 21:36:04 +0100
+
+linux (3.5-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.5
+
+ [ Ben Hutchings ]
+ * net: Enable OPENVSWITCH as module (Closes: #675010)
+ * aufs: Update to aufs3.5-20120730
+ * rt: Disable until it is updated for Linux 3.5 or later
+ * debian/copyright: Convert to machine-readable format (fka DEP-5)
+ * debian/copyright: Add copyright notice for newly-added Unicode data
+ * [x86] seccomp: Enable SECCOMP_FILTER
+ * [x86] applesmc: Update to Linux 3.6, including fixes for new MacBook models
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 01 Aug 2012 14:08:55 +0100
+
+linux (3.4.4-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.4.2
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.4.3
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.4.4
+
+ [ Ben Hutchings ]
+ * [ia64] Export <asm/cmpxchg.h> to userland (fixes FTBFS)
+ * [x86] Enable BATTERY_SBS as module (Closes: #662902)
+ * team: Enable NET_TEAM_MODE_LOADBALANCE as module
+ * [x32] Build a linux-libc-dev package
+ * input: Enable MOUSE_SYNAPTICS_USB (Closes: #678071)
+ * [x86] staging: zsmalloc: Finish conversion to a separate module
+ (Closes: #677273)
+ * [rt] Update to 3.4.4-rt13
+
+ [ Arnaud Patard ]
+ * [armel] disable FIPS, VGA_ARB, FTRACE on iop32x and ixp4xx to reduce
+ kernel size.
+ * [armel] disable virtio modules on all platforms except versatile
+ * [armel] enable PHYSMAP on all platforms except ixp4xx
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 26 Jun 2012 07:28:41 +0100
+
+linux-tools (3.4-1~experimental.1) experimental; urgency=low
+
+ * New upstream release
+ * Build-Depend on bison and flex, now required to build perf
+ * Fix version insertion in perf man pages
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 09 Jun 2012 20:51:12 +0100
+
+linux-2.6 (3.4.1-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.4
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.4.1
+
+ [ maximilian attems ]
+ * Enable DM_VERITY, NF_CONNTRACK_TIMEOUT, NF_CT_NETLINK_TIMEOUT,
+ IP_NF_MATCH_RPFILTER, IP6_NF_MATCH_RPFILTER, NETFILTER_NETLINK_ACCT,
+ NETFILTER_XT_MATCH_NFACCT, NET_SCH_PLUG, SCSI_UFSHCD, SCSI_VIRTIO,
+ NET_TEAM, ATH6KL.
+
+ [ Ben Hutchings ]
+ * DFSG: Remove the new vs6624 driver, which contains non-free firmware
+ * aufs: Update to aufs3.4-20120521
+ * [rt] Update to 3.4-rt8 and reenable
+
+ -- maximilian attems <maks@debian.org> Wed, 06 Jun 2012 10:25:57 +0200
+
+linux-2.6 (3.3.6-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.3.5
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.3.6
+ - USB: cdc-wdm: fix race leading leading to memory corruption
+ - autofs: make the autofsv5 packet file descriptor use a packetized pipe
+ (Closes: #633423)
+ - PM / Hibernate: fix the number of pages used for hibernate/thaw buffering
+ (Closes: #659363)
+ - efi: Validate UEFI boot variables
+ - efivars: Improve variable validation
+ - fs/cifs: fix parsing of dfs referrals
+ - hfsplus: Fix potential buffer overflows (CVE-2012-2319)
+ - exit_signal: fix the "parent has changed security domain" logic
+ - net: l2tp: unlock socket lock before returning from l2tp_ip_sendmsg
+ - sky2: fix receive length error in mixed non-VLAN/VLAN traffic
+ (Closes: #492853)
+ - [s390] KVM: do store status after handling STOP_ON_STOP bit
+ - [s390] KVM: Sanitize fpc registers for KVM_SET_FPU
+ - KVM: Fix write protection race during dirty logging
+ - KVM: mmu_notifier: Flush TLBs before releasing mmu_lock
+ - KVM: Ensure all vcpus are consistent with in-kernel irqchip settings
+ (CVE-2012-1601)
+ - KVM: nVMX: Fix erroneous exception bitmap check
+ - KVM: VMX: Fix kvm_set_shared_msr() called in preemptible context
+ - KVM: lock slots_lock around device assignment
+ - hugepages: fix use after free bug in "quota" handling
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 18 May 2012 03:53:16 +0100
+
+linux-2.6 (3.3.4-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.3.3
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.3.4
+
+ [ Ben Hutchings ]
+ * [x86] dell-laptop: Terminate quirks list properly
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 01 May 2012 01:23:59 +0100
+
+linux-2.6 (3.3.2-1~experimental.1) experimental; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.3.1
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.3.2
+
+ [ Ben Hutchings ]
+ * [armel/iop32x] Add missing #includes (fixes FTBFS)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 15 Apr 2012 16:36:13 +0100
+
+linux-tools (3.3-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+ * linux-kbuild: debian/control: Set Multi-Arch: foreign
+ * linux-tools: Build perf on alpha and hppa (Closes: #664834)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 24 Mar 2012 23:15:59 +0000
+
+linux-2.6 (3.3-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.3
+
+ [ Ben Hutchings ]
+ * [x86] crypto: Enable CRYPTO_SERPENT_SSE2_586, CRYPTO_SERPENT_SSE2_X86_64
+ * aufs: Update to aufs3.x-rcN-20120312
+ * IB: Enable INFINIBAND_SRPT as module (Closes: #663041)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 21 Mar 2012 03:08:36 +0000
+
+linux-2.6 (3.3~rc6-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.x-rcN-20120123
+ * rt: Disable until it is updated for Linux 3.3 or later
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 04 Mar 2012 20:27:42 +0000
+
+linux (3.2.41-2) unstable; urgency=low
+
+ * [ia64] udeb: Remove efi-modules package; make kernel-image provide
+ efi-modules (fixes FTBFS)
+ * linux-headers: Fix file installation on architectures without
+ Kbuild.platforms (Closes: #703800)
+ * [x86] drm/i915: bounds check execbuffer relocation count (CVE-2013-0913)
+ * [x86] drm: Enable DRM_GMA500 as module, replacing DRM_PSB (Closes: #703506)
+ - Enable DRM_GMA600, DRM_GMA3600, DRM_MEDFIELD
+ * [x86] KVM: x86: fix for buffer overflow in handling of MSR_KVM_SYSTEM_TIME
+ (CVE-2013-1796)
+ * [x86] KVM: x86: Convert MSR_KVM_SYSTEM_TIME to use gfn_to_hva_cache
+ functions (CVE-2013-1797)
+ * KVM: Fix bounds checking in ioapic indirect register reads (CVE-2013-1798)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 25 Mar 2013 15:17:44 +0000
+
+linux (3.2.41-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.40
+ - ext4: return ENOMEM if sb_getblk() fails
+ - ext4: fix possible use-after-free with AIO
+ - s390/kvm: Fix store status for ACRS/FPRS
+ - staging: comedi: disallow COMEDI_DEVCONFIG on non-board minors
+ - ext4: fix race in ext4_mb_add_n_trim()
+ - UBIFS: fix double free of ubifs_orphan objects
+ - hrtimer: Prevent hrtimer_enqueue_reprogram race
+ - nfsd: Fix memleak
+ - x86: Do not leak kernel page mapping locations
+ - USB: usb-storage: unusual_devs update for Super TOP SATA bridge
+ - posix-cpu-timers: Fix nanosleep task_struct leak
+ - NFSv4.1: Don't decode skipped layoutgets
+ - cgroup: fix exit() vs rmdir() race
+ - cpuset: fix cpuset_print_task_mems_allowed() vs rename() race
+ - ext4: fix xattr block allocation/release with bigalloc
+ - mm: fix pageblock bitmap allocation
+ - target: Add missing mapped_lun bounds checking during make_mappedlun
+ setup
+ - b43: Increase number of RX DMA slots
+ - posix-timer: Don't call idr_find() with out-of-range ID
+ - fs: Fix possible use-after-free with AIO
+ - powerpc/kexec: Disable hard IRQ before kexec
+ - mmu_notifier_unregister NULL Pointer deref and multiple ->release()
+ callouts
+ - tmpfs: fix use-after-free of mempolicy object (CVE-2013-1767)
+ - ocfs2: fix possible use-after-free with AIO
+ - ocfs2: fix ocfs2_init_security_and_acl() to initialize acl correctly
+ - ocfs2: ac->ac_allow_chain_relink=0 won't disable group relink
+ - idr: fix a subtle bug in idr_get_next()
+ - idr: make idr_get_next() good for rcu_read_lock()
+ - idr: fix top layer handling
+ - sysctl: fix null checking in bin_dn_node_address()
+ - nbd: fsync and kill block device on shutdown
+ - s390/timer: avoid overflow when programming clock comparator
+ (regression in 3.2.38)
+ - xen-pciback: rate limit error messages from xen_pcibk_enable_msi{,x}()
+ (CVE-2013-0231)
+ - xen-netback: correctly return errors from netbk_count_requests()
+ - xen-netback: cancel the credit timer when taking the vif down
+ - ipv6: use a stronger hash for tcp
+ - staging: comedi: ni_labpc: correct differential channel sequence for
+ AI commands
+ - staging: comedi: ni_labpc: set up command4 register *after* command3
+ - vhost: fix length for cross region descriptor (CVE-2013-0311)
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.41
+ - NFS: Don't allow NFS silly-renamed files to be deleted, no signal
+ - ARM: VFP: fix emulation of second VFP instruction
+ - md: fix two bugs when attempting to resize RAID0 array.
+ - proc connector: reject unprivileged listener bumps
+ - cifs: ensure that cifs_get_root() only traverses directories
+ - dm: fix truncated status strings
+ - hw_random: make buffer usable in scatterlist. (real fix for #701784)
+ - efi_pstore: Check remaining space with QueryVariableInfo() before
+ writing data
+ - efi: be more paranoid about available space when creating variables
+ (Closes: #703574)
+ - vfs: fix pipe counter breakage
+ - xen/pciback: Don't disable a PCI device that is already disabled.
+ - ALSA: seq: Fix missing error handling in snd_seq_timer_open()
+ - ext3: Fix format string issues (CVE-2013-1848)
+ - keys: fix race with concurrent install_user_keyrings() (CVE-2013-1792)
+ - USB: cdc-wdm: fix buffer overflow (CVE-2013-1860)
+ - signal: always clear sa_restorer on execve (CVE-2013-0914)
+ - crypto: user - fix info leaks in report API (CVE-2013-2546,
+ CVE-2013-2547, CVE-2013-2548)
+ - Fix: compat_rw_copy_check_uvector() misuse in aio, readv, writev, and
+ security keys
+ - batman-adv: bat_socket_read missing checks
+ - batman-adv: Only write requested number of byte to user buffer
+ - mm/hotplug: correctly add new zone to all other nodes' zone lists
+ (CVE-2012-5517)
+ - btrfs: use rcu_barrier() to wait for bdev puts at unmount
+
+ [ Aurelien Jarno]
+ * [mips,mipsel] Disable VGA_CONSOLE and ignore the corresponding ABI
+ change. It is completely broken on MIPS.
+ * headers: Include Kbuild.platforms and Platform files in -common to
+ fix out-of-tree building on mips and mipsel.
+ * [{mips,mipsel}/{4,5}kc-malta] Enable HW_RANDOM as module so that both
+ flavours have a consistent configuration.
+
+ [ Ben Hutchings ]
+ * [x86] ata_piix: reenable MS Virtual PC guests (fixes regression in
+ 3.2.19-1)
+ * test-patches: Clean up all previous test patches, whether or not they
+ were applied
+ * test-patches: Add --fuzz option to allow testing patches that have fuzz
+ * [x86] efi: Fix processor-specific memcpy() build error (Closes: #698581)
+ * udeb: Add hid-topseed to input-modules (Closes: #702611)
+ * [x86] drm/i915: Unconditionally initialise the interrupt workers,
+ thanks to Bjørn Mork (Closes: #692607)
+ * efi: Ensure efivars is loaded on EFI systems (Closes: #703363)
+ - [x86] Use a platform device to trigger loading of efivars
+ - [ia64] Change EFI_VARS from module to built-in
+ * efivars: Work around serious firmware bugs
+ - Allow disabling use as a pstore backend
+ - Add module parameter to disable use as a pstore backend
+ * [x86] Set EFI_VARS_PSTORE_DEFAULT_DISABLE=y
+ - explicitly calculate length of VariableName
+ - Handle duplicate names from get_next_variable()
+ * efi_pstore: Introducing workqueue updating sysfs
+ * efivars: pstore: Do not check size when erasing variable
+ * efivars: Remove check for 50% full on write
+ * kmsg_dump: Only dump kernel log in error cases (Closes: #703386)
+ - kexec: remove KMSG_DUMP_KEXEC
+ - kmsg_dump: don't run on non-error paths by default
+ * [x86] i915: initialize CADL in opregion (Closes: #703271)
+ * drm, agp: Update to 3.4.37:
+ - drm/radeon/dce6: fix display powergating
+ - drm: don't add inferred modes for monitors that don't support them
+ - drm/i915: Increase the RC6p threshold.
+ * signal: Fix use of missing sa_restorer field (build regression
+ introduced by fix for CVE-2013-0914)
+ * rds: limit the size allocated by rds_message_alloc()
+ * rtnl: fix info leak on RTM_GETLINK request for VF devices
+ * dcbnl: fix various netlink info leaks
+ * [s390] mm: fix flush_tlb_kernel_range()
+ * [powerpc] Fix cputable entry for 970MP rev 1.0
+ * vhost/net: fix heads usage of ubuf_info
+ * udf: avoid info leak on export (CVE-2012-6548)
+ * isofs: avoid info leak on export (CVE-2012-6549)
+ * [x86,powerpc/powerpc64] random: Change HW_RANDOM back from built-in to
+ module, as we now have a real fix for #701784
+ * [rt] Update to 3.2.40-rt60
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 23 Mar 2013 03:54:34 +0000
+
+linux (3.2.39-2) unstable; urgency=high
+
+ * [s390,s390x] virtio: Ignore ABI changes in 3.2.39 (fixes FTBFS)
+ * [sparc] drm: Ignore ABI changes in 3.2.39 (fixes FTBFS)
+ * [sparc] drm: Change from built-in to module
+ * [rt] Update to 3.2.39-rt59:
+ - acpi/rt: Convert acpi_gbl_hardware lock back to a raw_spinlock_t
+ - printk: Fix rq->lock vs logbuf_lock unlock lock inversion
+ - wait-simple: Simple waitqueue implementation
+ - rcutiny: Use simple waitqueue
+ * [x86] efi: Fix ABI change for introduction of efi_enabled() function
+ in 3.2.38 (Closes: #701690)
+ * [armel/versatile] i2c: Re-enable I2C_PCA_PLATFORM as module, erroneously
+ disabled in 3.2.39-1 (fixes FTBFS)
+ * [x86,powerpc/powerpc64] random: Change HW_RANDOM from module to built-in,
+ to work around virtio-rng bug (Closes: #701784)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 27 Feb 2013 03:48:30 +0000
+
+linux (3.2.39-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.36
+ - freezer: PF_FREEZER_NOSIG should be cleared along with PF_NOFREEZE
+ (Closes: #697077)
+ - tmpfs: fix shared mempolicy leak
+ - virtio: 9p: correctly pass physical address to userspace for high pages
+ - virtio: force vring descriptors to be allocated from lowmem
+ - USB: EHCI: bugfix: urb->hcpriv should not be NULL
+ - rcu: Fix batch-limit size problem
+ - Bluetooth: ath3k: Add support for VAIO VPCEH [0489:e027]
+ (Closes: #700550)
+ - mvsas: fix undefined bit shift
+ - ALSA: usb-audio: Avoid autopm calls after disconnection; Fix missing
+ autopm for MIDI input (Closes: #664068)
+ - target/file: Fix 32-bit highmem breakage for SGL -> iovec mapping
+ - SCSI: fix Null pointer dereference on disk error
+ - proc: pid/status: show all supplementary groups
+ - nfsd4: fix oops on unusual readlike compound
+ - ARM: missing ->mmap_sem around find_vma() in swp_emulate.c
+ - sctp: fix memory leak in sctp_datamsg_from_user() when copy from user
+ space fails
+ - ne2000: add the right platform device
+ - irda: sir_dev: Fix copy/paste typo
+ - ipv4: ip_check_defrag must not modify skb before unsharing
+ - telephony: ijx: buffer overflow in ixj_write_cid()
+ - udf: fix memory leak while allocating blocks during write
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.37
+ - ext4: fix extent tree corruption caused by hole punch
+ - jbd2: fix assertion failure in jbd2_journal_flush()
+ - tmpfs mempolicy: fix /proc/mounts corrupting memory
+ - sparc: huge_ptep_set_* functions need to call set_huge_pte_at()
+ - inet: Fix kmemleak in tcp_v4/6_syn_recv_sock and
+ dccp_v4/6_request_recv_sock
+ - net: sched: integer overflow fix
+ - tcp: implement RFC 5961 3.2
+ - tcp: implement RFC 5961 4.2
+ - tcp: refine SYN handling in tcp_validate_incoming
+ - tcp: tcp_replace_ts_recent() should not be called from
+ tcp_validate_incoming()
+ - tcp: RFC 5961 5.2 Blind Data Injection Attack Mitigation
+ - RDMA/nes: Fix for crash when registering zero length MR for CQ
+ - ACPI : do not use Lid and Sleep button for S5 wakeup
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.38
+ - staging: comedi: comedi_test: fix race when cancelling command
+ - mm: use aligned zone start for pfn_to_bitidx calculation
+ - [s390] s390/time: fix sched_clock() overflow (Closes: #698382)
+ - [i386] xen: Fix stack corruption in xen_failsafe_callback for 32bit
+ PVOPS guests. (CVE-2013-0190)
+ - KVM: PPC: Emulate dcbf
+ - evm: checking if removexattr is not a NULL
+ - ath9k_htc: Fix memory leak
+ - ath9k: do not link receive buffers during flush
+ - ath9k: fix double-free bug on beacon generate failure
+ - x86/msr: Add capabilities check
+ - can: c_can: fix invalid error codes
+ - can: ti_hecc: fix invalid error codes
+ - can: pch_can: fix invalid error codes
+ - smp: Fix SMP function call empty cpu mask race
+ - xfs: Fix possible use-after-free with AIO
+ - EDAC: Test correct variable in ->store function
+ - samsung-laptop: Disable on EFI hardware, to avoid damaging it
+ - NFS: Don't silently fail setattr() requests on mountpoints
+ - intel-iommu: Prevent devices with RMRRs from being placed into SI Domain
+ - ALSA: usb-audio: Fix regression by disconnection-race-fix patch
+ (Closes: #696321)
+ - printk: fix buffer overflow when calling log_prefix function from
+ call_console_drivers
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.39
+ - USB: XHCI: fix memory leak of URB-private data
+ - sched/rt: Use root_domain of rt_rq not current processor
+ - mwifiex: fix incomplete scan in case of IE parsing error
+ - x86-64: Replace left over sti/cli in ia32 audit exit code
+ - Bluetooth: Fix handling of unexpected SMP PDUs
+ - ptrace/x86: Partly fix set_task_blockstep()->update_debugctlmsr() logic
+ - Fix race condition with PTRACE_SETREGS and fatal signal (CVE-2013-0871)
+ + ptrace: introduce signal_wake_up_state() and ptrace_signal_wake_up()
+ + ptrace: ensure arch_ptrace/ptrace_request can never race with SIGKILL
+ + wake_up_process() should be never used to wakeup a TASK_STOPPED/TRACED
+ task
+ - net: prevent setting ttl=0 via IP_TTL
+ - ipv6: fix header length calculation in ip6_append_data()
+ - netxen: fix off by one bug in netxen_release_tx_buffer()
+ - r8169: remove the obsolete and incorrect AMD workaround
+ - net: loopback: fix a dst refcounting issue
+ - packet: fix leakage of tx_ring memory
+ - net: sctp: sctp_setsockopt_auth_key: use kzfree instead of kfree
+ - net: sctp: sctp_endpoint_free: zero out secret key data
+ - xen/netback: shutdown the ring if it contains garbage. (CVE-2013-0216)
+ - xen/netback: don't leak pages on failure in xen_netbk_tx_check_gop.
+ - xen/netback: free already allocated memory on failure in
+ xen_netbk_get_requests
+ - netback: correct netbk_tx_err to handle wrap around. (CVE-2013-0217)
+ - tcp: frto should not set snd_cwnd to 0
+ - tcp: fix for zero packets_in_flight was too broad
+ - tcp: fix MSG_SENDPAGE_NOTLAST logic
+ - bridge: Pull ip header into skb->data before looking into ip header.
+ (Closes: #697903)
+ - x86/xen: don't assume %ds is usable in xen_iret for 32-bit PVOPS.
+ (CVE-2013-0228)
+
+ [ Aurelien Jarno ]
+ * [armhf/vexpress] Add kernel udebs.
+
+ [ Julien Cristau ]
+ * Backport drm and agp subsystems from Linux 3.4.29 (closes: #687442)
+ - [x86] i915: Fixes freezes on Ivy Bridge (Closes: #689268)
+ - nouveau: Support for newer nvidia chipsets (Closes: #690284)
+ - radeon: Support for HD7000 'Southern Islands' chips
+ - [x86] drm/i915: add Ivy Bridge GT2 Server entries (Closes: #684767)
+ - [x86] drm/i915: Close race between processing unpin task and queueing
+ the flip
+
+ [ Ben Hutchings ]
+ * Input: wacom - fix touch support for Bamboo Fun CTH-461
+ * media/rc: Add iguanair driver from Linux 3.7 (Closes: #696925)
+ * rt2800: add chipset revision RT5390R support (Closes: #696592)
+ * [armhf/mx5] mtd: Enable MTD_BLOCK as module
+ * [armhf/mx5] udeb: Add missing storage drivers (Closes: #697128)
+ - Add ata-modules including libata, pata-modules including pata_imx,
+ sata-modules including ahci_platform
+ - Add sdhci-esdhc-imx to mmc-modules
+ - Add mtd-modules including mtd, mtdblock and m25p80
+ * [armhf] udeb: Fix network driver selection
+ - [armhf/mx5] Remove nic-modules
+ - [armhf/vexpress] Add usb-modules
+ - Add standard set of USB drivers to nic-usb-modules
+ - Add nic-wireless-modules
+ * be2net: Apply backported fixes requested by Emulex (Closes: #697479)
+ - be2net: do not modify PCI MaxReadReq size
+ - be2net: fix reporting number of actual rx queues
+ - be2net: do not use SCRATCHPAD register
+ - be2net: reduce gso_max_size setting to account for ethernet header.
+ - be2net: Increase statistics structure size for skyhawk.
+ - be2net: Explicitly clear the reserved field in the Tx Descriptor
+ - be2net: Regression bug wherein VFs creation broken for multiple cards.
+ - be2net: Fix to trim skb for padded vlan packets to workaround an ASIC Bug
+ - be2net: Fix Endian
+ - be2net: Enable RSS UDP hashing for Lancer and Skyhawk
+ - be2net: dont pull too much data in skb linear part
+ - be2net: Fix to parse RSS hash from Receive completions correctly.
+ - be2net: Avoid disabling BH in be_poll()
+ * udeb: Add specialised USB keyboard/mouse drivers to input-modules:
+ hid-a4tech, hid-cypress, hid-ezkey (Closes: #697035), hid-kensington,
+ hid-keytouch, hid-kye, hid-multitouch, hid-ortek, hid-primax,
+ hid-quanta, hid-samsung, hid-speedlink
+ * radeon: Firmware is required for DRM and KMS on R600 onward, but not
+ for KMS on earlier chips (Closes: #697229)
+ * [!powerpc] radeon: Reenable DRM_RADEON_KMS, as it apparently works on
+ most non-PowerMac systems
+ * fs: cachefiles: add support for large files in filesystem caching
+ (Closes: #698376)
+ * [rt] Update to 3.2.38-rt57:
+ - sched: Adjust sched_reset_on_fork when nothing else changes
+ - sched: Queue RT tasks to head when prio drops
+ - sched: Consider pi boosting in setscheduler
+ - sched: Init idle->on_rq in init_idle()
+ - sched: Check for idle task in might_sleep()
+ - mm: swap: Initialize local locks early
+ * [armel/versatile,armhf/vexpress] i2c: Enable I2C, I2C_VERSATILE as modules
+ (Closes: #696182)
+ * ext4: Fix corruption by hole punch in large files (Closes: #685726)
+ - rewrite punch hole to use ext4_ext_remove_space()
+ - fix hole punch failure when depth is greater than 0
+ - fix kernel BUG on large-scale rm -rf commands
+ * md: protect against crash upon fsync on ro array (Closes: #696650)
+ * net: Add alx driver for Atheros AR8161 and AR8162 (Closes: #699129)
+ - Mark as staging, since it has not been accepted upstream
+ * [armel/kirkwood] rtc-s35390a: add wakealarm support (Closes: #693997)
+ * [x86] i915: Invert backlight brightness control for various models
+ including Packard Bell NCL20 (Closes: #627372) and eMachines G725
+ (Closes: #680737)
+ - Also allow this behaviour to be enabled via module parameter
+ invert_brightness=1
+ * [amd64] edac: Enable EDAC_SBRIDGE as module (Closes: #699283)
+ * SCSI: Add virtio_scsi driver (Closes: #686636)
+ * [x86] sound: Enable LINE6_USB as module (Closes: #700211)
+ - Apply upstream changes up to Linux 3.8-rc1
+ * [armhf/mx5] Update description to mention i.MX53
+ * mm: Try harder to allocate vmemmap blocks (Closes: #699913)
+ * aufs: Update to aufs3.2-20130204:
+ - support for syncfs(2)
+ - possible bugfix, race in lookup
+ - bugfix, half refreshed iinfo
+ - possible bugfix, au_lkup_by_ino() returns ESTALE
+ * [x86] efi: Clear EFI_RUNTIME_SERVICES rather than EFI_BOOT by "noefi" boot
+ parameter
+ * [x86] efi: Make "noefi" really disable EFI runtime serivces
+ * drm, agp: Update to 3.4.32
+ - drm/radeon: add WAIT_UNTIL to the non-VM safe regs list for cayman/TN
+ - drm/radeon: prevent crash in the ring space allocation
+ * linux-image-dbg: Add symlinks to vmlinux from the locations expected by
+ kdump-tools (Closes: #700418), systemtap and others
+ * mm: fix pageblock bitmap allocation (fixes regression in 3.2.38)
+ * USB: usb-storage: unusual_devs update for Super TOP SATA bridge
+
+ [ Cyril Brulebois ]
+ * Bump python build-dep, needed since the switch from local SortedDict
+ to collections.OrderedDict (new in version 2.7). (Closes: #697740)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 25 Feb 2013 00:36:51 +0000
+
+linux (3.2.35-2) unstable; urgency=low
+
+ * [ia64] Make IPV6 built-in (fixes FTBFS)
+ * [rt] Update to 3.2.35-rt52
+ * audit: Increase maximum number of names logged per syscall to 30
+ (Closes: #631799)
+ * asix: Add support for Lenovo 10/100 USB dongle (Closes: #696248)
+ * udeb: Add ums-eneub6250, ums-realtek (Closes: #694348) to
+ usb-storage-modules
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 19 Dec 2012 03:41:35 +0000
+
+linux (3.2.35-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.33
+ - samsung-laptop: don't handle backlight if handled by acpi/video
+ (Closes: #693190)
+ - e1000: fix vlan processing regression (Closes: #690956)
+ - [x86] drm/i915: no lvds quirk for Zotac ZDBOX SD ID12/ID13
+ (Closes: #691122)
+ - au0828: fix case where STREAMOFF being called on stopped stream
+ causes BUG()
+ - net: Fix skb_under_panic oops in neigh_resolve_output
+ - vlan: don't deliver frames for unknown vlans to protocols
+ - RDS: fix rds-ping spinlock recursion
+ - tcp: resets are misrouted
+ - nfsd4: fix nfs4 stateid leak
+ - [arm] vfp: fix saving d16-d31 vfp registers on v6+ kernels
+ - scsi_debug: Fix off-by-one bug when unmapping region
+ - storvsc: Account for in-transit packets in the RESET path
+ - tmpfs,ceph,gfs2,isofs,reiserfs,xfs: fix fh_len checking
+ - ext4: race-condition protection for ext4_convert_unwritten_extents_endio
+ (CVE-2012-4508)
+ - md/raid10: use correct limit variable
+ - net/wireless: ipw2200: Fix panic occurring in ipw_handle_promiscuous_tx()
+ - USB: cdc-acm: fix pipe type of write endpoint
+ - [x86] xen: don't corrupt %eip when returning from a signal handler
+ - sysfs: sysfs_pathname/sysfs_add_one: Use strlcat() instead of strcat()
+ - fs/compat_ioctl.c: VIDEO_SET_SPU_PALETTE missing error check
+ - netfilter: nf_conntrack: fix racy timer handling with reliable events
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.34
+ - x86: Remove the ancient and deprecated disable_hlt() and enable_hlt()
+ facility (Closes: #667501)
+ - ALSA: PCM: Fix some races at disconnection
+ - ALSA: usb-audio: Fix races at disconnection
+ - crypto: cryptd - disable softirqs in cryptd_queue_worker to prevent
+ data corruption
+ - mac80211: Only process mesh config header on frames that RA_MATCH
+ - mac80211: fix SSID copy on IBSS JOIN
+ - mac80211: check management frame header length
+ - mac80211: verify that skb data is present
+ - mac80211: make sure data is accessible in EAPOL check
+ - ath9k: Test for TID only in BlockAcks while checking tx status
+ - nfs: Show original device name verbatim in /proc/*/mount{s,info}
+ (Closes: #669314)
+ - target: Avoid integer overflow in se_dev_align_max_sectors()
+ - hwmon: (w83627ehf) Force initial bank selection
+ - xfs: fix reading of wrapped log data
+ - fanotify: fix missing break
+ - drm/vmwgfx: Fix a case where the code would BUG when trying to pin
+ GMR memory
+ - sctp: fix call to SCTP_CMD_PROCESS_SACK in sctp_cmd_interpreter()
+ - netlink: use kfree_rcu() in netlink_release()
+ - tcp: fix FIONREAD/SIOCINQ
+ - net: fix divide by zero in tcp algorithm illinois (CVE-2012-4565)
+ - af-packet: fix oops when socket is not present
+ - r8169: Fix WoL on RTL8168d/8111d. (Closes: #674154)
+ - sky2: Fix for interrupt handler (Closes: #681280)
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.35
+ - UBIFS: fix mounting problems after power cuts
+ - [s390] gup: add missing TASK_SIZE check to get_user_pages_fast()
+ - [x86] Exclude E820_RESERVED regions and memory holes above 4 GB from
+ direct mapping.
+ - netfilter: Mark SYN/ACK packets as invalid from original direction
+ - netfilter: Validate the sequence number of dataless ACK packets as well
+ - ipv4: avoid undefined behavior in do_ip_setsockopt()
+ - Input: i8042 - also perform controller reset when suspending
+ (Closes: #693934)
+ - brcm80211: smac: only print block-ack timeout message at trace level
+ (Closes: #674430)
+ - GFS2: Test bufdata with buffer locked and gfs2_log_lock held
+ - [x86] mce, therm_throt: Don't report power limit and package level
+ thermal throttle events in mcelog (Closes: #695209)
+ - [hppa] fix virtual aliasing issue in get_shared_area()
+ - xfs: drop buffer io reference when a bad bio is built
+ - reiserfs: Protect reiserfs_quota_{on,write}() with write lock
+ - md: Reassigned the parameters if read_seqretry returned true in func
+ md_is_badblock.
+ - md: Avoid write invalid address if read_seqretry returned true.
+ - [i386] Fix invalid stack address while in softirq
+ - selinux: fix sel_netnode_insert() suspicious rcu dereference
+ - [hppa] fix user-triggerable panic on parisc
+ - block: Don't access request after it might be freed
+ - futex: avoid wake_futex() for a PI futex_q
+
+ [ Ben Hutchings ]
+ * [x86] udeb: Re-add isci to scsi-extra-modules (Closes: #690886;
+ regression of #652897 in version 3.2~rc7-1~experimental.1 due to
+ mis-merge)
+ * udeb: Add missing net drivers:
+ - Add 8021q (Closes: #689159), cxgb4, cxgb4vf, igbvf, ixgbevf, micrel,
+ mlx4_en, pch_gbe, qlge, smsc9420, tehuti, vxge to nic-extra-modules
+ - Add int51x1, smsc75xx, smsc95xx to nic-usb-modules
+ - Add adm8211, at76c50x-usb, b43legacy, iwl4965, libertas_tf_usb,
+ mwifiex_pcie, mwl8k, orinoco_usb, prism2_usb, r8187se, r8192e_pci,
+ r8712u, rtl8192ce (Closes: #686605), rtl8192cu, rtl8192de, rtl8192se
+ vt6656_stage to nic-wireless-modules
+ - Move broadcom to nic-modules, as it may be needed by tg3
+ * udeb: Add bnx2fc, fnic, pmcraid to scsi-extra-modules
+ * udeb: Move rtl8180 to nic-wireless-modules
+ * [x86] asus-laptop: Do not call HWRS on init (Closes: #692436)
+ * [x86] drm/i915: Only kick out vesafb if we takeover the fbcon with KMS
+ (Closes: #686284)
+ * [!x86] radeon: Disable DRM_RADEON_KMS, as this is still not expected to
+ work (Closes: #628972)
+ * radeon: Disable KMS earlier if firmware is not installed (Closes: #607194)
+ * [amd64] linux-image: Include VIA Nano in package description
+ * linux-image-dbg: Change package description to use the phrase
+ 'debugging symbols' and correct grammar
+ * usb: Disable UAS; it is known to be broken, and the supported devices
+ can also work with usb-storage
+ * ipv6: Treat ND option 31 as userland (DNSSL support) (Closes: #694522)
+ * rt2x00: Add device IDs 5362, 5392, 539b (Closes: #694312)
+ * udeb: Add pata_piccolo to pata-modules (Closes: #695437)
+ * firmware_class: Log every success and failure against given device
+ * firmware: Remove redundant log messages from drivers
+ * [x86] ACPI / video: ignore BIOS initial backlight value for
+ HP Folio 13-2000 (Closes: #692361)
+ * [x86] KVM: x86: invalid opcode oops on SET_SREGS with OSXSAVE bit set
+ (CVE-2012-4461)
+ * kmod: make __request_module() killable (CVE-2012-4398)
+ * exec: do not leave bprm->interp on stack (CVE-2012-4530)
+ * exec: use -ELOOP for max recursion depth
+ * [rt] Update to 3.2.34-rt51:
+ - hrtimer: Raise softirq if hrtimer irq stalled
+ - rcu: Disable RCU_FAST_NO_HZ on RT
+ - net: netfilter: Serialize xt_write_recseq sections on RT
+ * megaraid_sas: fix memory leak if SGL has zero length entries
+ (Closes: #688198)
+
+ [ Ian Campbell ]
+ * [xen] add support for microcode updating. (Closes: #693053)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 10 Dec 2012 00:14:55 +0000
+
+linux (3.2.32-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.31
+ - target: Fix ->data_length re-assignment bug with SCSI overflow
+ - hpsa: fix handling of protocol error
+ - cifs: fix return value in cifsConvertToUTF16
+ - asix: Support DLink DUB-E100 H/W Ver C1 (Closes: #687567)
+ - dj: memory scribble in logi_dj
+ - dm: handle requests beyond end of device instead of using BUG_ON
+ - md/raid10: fix "enough" function for detecting if array is failed.
+ - libata: Prevent interface errors with Seagate FreeAgent GoFlex
+ - vfs: dcache: fix deadlock in tree traversal
+ - Revert "drm/radeon: rework pll selection (v3)" (regression in 3.2.30)
+ - HID: hidraw: don't deallocate memory when it is in use
+ - xfrm: Workaround incompatibility of ESN and async crypto
+ - xfrm_user: fix various information leaks
+ - xfrm_user: ensure user supplied esn replay window is valid
+ - net: guard tcp_set_keepalive() to tcp sockets
+ - ipv4: raw: fix icmp_filter()
+ - ipv6: raw: fix icmpv6_filter()
+ - ipv6: mip6: fix mip6_mh_filter()
+ - netrom: copy_datagram_iovec can fail
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.32
+ - mtd: nand: Use the mirror BBT descriptor when reading its version
+ - TTY: ttyprintk, don't touch behind tty->write_buf
+ - n_gsm: fix various serious bugs
+ - hpsa: Use LUN reset instead of target reset
+ - staging: comedi: don't dereference user memory for INSN_INTTRIG
+ - ext4: fix potential deadlock in ext4_nonda_switch()
+ - staging: comedi: fix memory leak for saved channel list
+ - scsi_remove_target: fix softlockup regression on hot remove
+ (Closes: #690990)
+ - usb: host: xhci: Fix Null pointer dereferencing with 71c731a for
+ non-x86 systems (regression in 3.2.30)
+ - ext4: online defrag is not supported for journaled files
+ - staging: comedi: s626: don't dereference insn->data
+ - serial: pl011: handle corruption at high clock speeds
+ - ext4: always set i_op in ext4_mknod()
+ - ext4: fix fdatasync() for files with only i_size changes
+ - [x86] drm/i915: use adjusted_mode instead of mode for checking the
+ 6bpc force flag (regression in 3.2.29)
+ - staging: comedi: jr3_pci: fix iomem dereference
+ - JFFS2: don't fail on bitflips in OOB
+ - mtd: nandsim: bugfix: fail if overridesize is too big
+ - pnfsblock: fix partial page buffer wirte
+ - target/file: Re-enable optional fd_buffered_io=1 operation
+ - iscsit: remove incorrect unlock in iscsit_build_sendtargets_resp
+ - rapidio/rionet: fix multicast packet transmit logic
+ - ALSA: aloop - add locking to timer access
+ - [armhf/omap] counter: add locking to read_persistent_clock
+ - mm: fix invalidate_complete_page2() lock ordering
+ - mm: thp: fix pmd_present for split_huge_page and PROT_NONE with THP
+ - mm: hugetlb: fix pgoff computation when unmapping page from vma
+ - hugetlb: do not use vma_hugecache_offset() for vma_prio_tree_foreach
+ - [x86] firewire: cdev: fix user memory corruption (i386 userland on
+ amd64 kernel)
+ - udf: fix retun value on error path in udf_load_logicalvol
+ - eCryptfs: Unlink lower inode when ecryptfs_create() fails
+ - eCryptfs: Initialize empty lower files when opening them
+ - eCryptfs: Revert to a writethrough cache model
+ - eCryptfs: Write out all dirty pages just before releasing the lower file
+ - eCryptfs: Call lower ->flush() from ecryptfs_flush()
+ - mempolicy: remove mempolicy sharing
+ - mempolicy: fix a race in shared_policy_replace()
+ - mempolicy: fix refcount leak in mpol_set_shared_policy()
+ - mempolicy: fix a memory corruption by refcount imbalance in
+ alloc_pages_vma()
+ - hpsa: dial down lockup detection during firmware flash
+ - netfilter: nf_ct_ipv4: packets with wrong ihl are invalid
+ - netfilter: nf_nat_sip: fix incorrect handling of EBUSY for RTCP
+ expectation
+ - netfilter: nf_ct_expect: fix possible access to uninitialized timer
+ - ipvs: fix oops on NAT reply in br_nf context
+
+ [ Ben Hutchings ]
+ * codel: refine one condition to avoid a nul rec_inv_sqrt
+ * [mips,mipsel] Ignore NFS/SunRPC ABI changes in 3.2.30 (fixes FTBFS)
+ * tg3: Fix TSO CAP for 5704 devs w / ASF enabled
+ * SUNRPC: Set alloc_slot for backchannel tcp ops (regression in 3.2.30)
+ * iwlwifi: Do not request unreleased firmware for IWL6000 (Closes: #689416)
+ * aufs: Update to aufs3.2-20120827:
+ - Fix statfs() values when different block sizes are in use
+ * udeb: Add hid-logitech-dj to input-modules (Closes: #661379)
+ * connector: Make CONNECTOR built-in; enable PROC_EVENTS (Closes: #588200)
+ * e1000e: Change wthresh to 1 to avoid possible Tx stalls
+ * [x86] efi: Build EFI stub with EFI-appropriate options
+ * [rt] Update to 3.2.32-rt48:
+ - random: Make add_interrupt_randomness() work on rt
+ - softirq: Init softirq local lock after per cpu section is set up
+ - mm: slab: Fix potential deadlock
+ - mm: page_alloc: Use local_lock_on() instead of plain spinlock
+ - rt: rwsem/rwlock: lockdep annotations
+ - sched: Better debug output for might sleep
+ - stomp_machine: Use mutex_trylock when called from inactive cpu
+ * [x86] storvsc: Account for in-transit packets in the RESET path
+ * fs: handle failed audit_log_start properly
+ * fs: prevent use after free in auditing when symlink following was denied
+ * kernel/sys.c: fix stack memory content leak via UNAME26 (CVE-2012-0957)
+ * ALSA: hda: Fix oops caused by "Fix internal mic for Lenovo Ideapad U300s"
+ in 3.2.32
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 22 Oct 2012 06:25:37 +0100
+
+linux (3.2.30-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.30
+ - ext3: Fix fdatasync() for files with only i_size changes
+ - UBI: fix a horrible memory deallocation bug
+ - fuse: fix retrieve length
+ - mmc: card: Skip secure erase on MoviNAND; causes unrecoverable corruption
+ - udf: Fix data corruption for files in ICB
+ - xen: Use correct masking in xen_swiotlb_alloc_coherent.
+ - CIFS: Fix error handling in cifs_push_mandatory_locks
+ - [x86] drm/i915: Wait for all pending operations to the fb before
+ disabling the pipe
+ - xhci: Fix bug after deq ptr set to link TRB
+ - NFS: Fix the initialisation of the readdir 'cookieverf' array
+ - staging: comedi: das08: Correct AI encoding for das08jr-16-ao
+ - staging: comedi: das08: Correct AO output for das08jr-16-ao
+ - rt2800usb: Added rx packet length validity check
+ - staging: zcache: fix cleancache race condition with shrinker
+ - NFS: return error from decode_getfh in decode open
+ - ARM: 7526/1: traps: send SIGILL if get_user fails on undef handling path
+ - ahci: Add alternate identifier for the 88SE9172
+
+ [ Ben Hutchings ]
+ * [s390/s390x-tape] udeb: Remove fuse-modules configuration (fixes FTBFS)
+
+ -- dann frazier <dannf@debian.org> Wed, 26 Sep 2012 16:00:58 +0900
+
+linux (3.2.29-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.24
+ - sched/nohz: Rewrite and fix load-avg computation -- again
+ (Closes: #674153)
+ - libsas: fix taskfile corruption in sas_ata_qc_fill_rtf
+ - md/raid1: fix use-after-free bug in RAID1 data-check code.
+ - PCI: EHCI: fix crash during suspend on ASUS computers
+ - cpufreq / ACPI: Fix not loading acpi-cpufreq driver (regression in 3.2.2)
+ - block: fix infinite loop in __getblk_slow (regression in 3.2.19)
+ (Closes: #684293)
+ - PM / Hibernate: Hibernate/thaw fixes/improvements
+ - tcm_fc: Fix crash seen with aborts and large reads
+ - fifo: Do not restart open() if it already found a partner
+ - cifs: on CONFIG_HIGHMEM machines, limit the rsize/wsize to the kmap space
+ - UBIFS: fix a bug in empty space fix-up
+ - ore: Fix NFS crash by supporting any unaligned RAID IO
+ - ore: Remove support of partial IO request (NFS crash)
+ - pnfs-obj: don't leak objio_state if ore_write/read fails
+ - pnfs-obj: Fix __r4w_get_page when offset is beyond i_size
+ - dm raid1: fix crash with mirror recovery and discard
+ - dm raid1: set discard_zeroes_data_unsupported
+ - time: Fix bugs in leap-second handling (Closes: #679882)
+ + ntp: Fix leap-second hrtimer livelock
+ + timekeeping: Fix leapsecond triggered load spike issue
+ - bnx2x: fix checksum validation
+ - bnx2x: fix panic when TX ring is full
+ - eCryptfs: Gracefully refuse miscdev file ops on inherited/passed files
+ - ACPI / PM: Make acpi_pm_device_sleep_state() follow the specification
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.25
+ - mm: Fix various performance problems, particularly affecting use of
+ transparent hugepages (Closes: #675493)
+ - target: Add range checking to UNMAP emulation
+ - target: Fix reading of data length fields for UNMAP commands
+ - target: Fix possible integer underflow in UNMAP emulation
+ - target: Check number of unmap descriptors against our limit
+ - ext4: don't let i_reserved_meta_blocks go negative
+ - ext4: undo ext4_calc_metadata_amount if we fail to claim space
+ - locks: fix checking of fcntl_setlease argument
+ - Btrfs: call the ordered free operation without any locks held
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.26
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.27
+ - lirc_sir: make device registration work (Closes: #680762)
+ - random: Improve random number generation on non-interactive systems
+ + random: Use arch_get_random_int instead of cycle counter if avail
+ + random: Use arch-specific RNG to initialize the entropy store
+ + random: make 'add_interrupt_randomness()' do something sane
+ + usb: feed USB device information to the /dev/random driver
+ + net: feed /dev/random with the MAC address when registering a device
+ + rtc: wm831x: Feed the write counter into device_add_randomness()
+ + mfd: wm831x: Feed the device UUID into device_add_randomness()
+ - futex: Test for pi_mutex on fault in futex_wait_requeue_pi()
+ - futex: Forbid uaddr == uaddr2 in futex_wait_requeue_pi()
+ - s390/mm: downgrade page table after fork of a 31 bit process
+ - asus-wmi: use ASUS_WMI_METHODID_DSTS2 as default DSTS ID.
+ (Closes: #679158)
+ - md/raid1: don't abort a resync on the first badblock.
+ - [arm] 7467/1: mutex: use generic xchg-based implementation for ARMv6+
+ - [arm] 7476/1: vfp: only clear vfp state for current cpu in vfp_pm_suspend
+ - [arm] 7477/1: vfp: Always save VFP state in vfp_pm_suspend on UP
+ - [arm] 7478/1: errata: extend workaround for erratum #720789
+ - [arm] Fix undefined instruction exception handling
+ - mm: mmu_notifier: fix freed page still mapped in secondary MMU
+ - mm: hugetlbfs: close race during teardown of hugetlbfs shared page tables
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.28
+ - bnx2: Fix bug in bnx2_free_tx_skbs().
+ - sch_sfb: Fix missing NULL check
+ - sctp: Fix list corruption resulting from freeing an association on a list
+ - cipso: don't follow a NULL pointer when setsockopt() is called
+ - caif: fix NULL pointer check
+ - net/tun: fix ioctl() based info leaks
+ - rtlwifi: rtl8192cu: Change buffer allocation for synchronous reads
+ - hfsplus: fix overflow in sector calculations in hfsplus_submit_bio
+ - drm/i915: fixup seqno allocation logic for lazy_request
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.29
+ - pnfs: defer release of pages in layoutget
+ - fuse: verify all ioctl retry iov elements
+ - usb: serial: mos7840: Fixup mos7840_chars_in_buffer()
+ - sched: fix divide by zero at {thread_group,task}_times
+ - vfs: canonicalize create mode in build_open_flags()
+ - dccp: check ccid before dereferencing
+ - md: Don't truncate size at 4TB for RAID0 and Linear
+ - target: fix NULL pointer dereference bug alloc_page() fails to get memory
+ - USB: CDC ACM: Fix NULL pointer dereference
+ - alpha: Don't export SOCK_NONBLOCK to user space. (Closes: #658460)
+ - radeon: Fix various bugs in reading vbios (Closes: #685604)
+ - vfs: missed source of ->f_pos races
+ - svcrpc: fix BUG() in svc_tcp_clear_pages
+ - svcrpc: sends on closed socket should stop immediately
+ - fbcon: fix race condition between console lock and cursor timer (v1.1)
+ - mm: hugetlbfs: correctly populate shared pmd
+ - fs/buffer.c: remove BUG() in possible but rare condition
+ - block: replace __getblk_slow misfix by grow_dev_page fix
+ - Staging: speakup: fix an improperly-declared variable. (Closes: #685953)
+ - NFS: Fix Oopses in nfs_lookup_revalidate and nfs4_lookup_revalidate
+
+ [ Ben Hutchings ]
+ * Bump ABI to 4
+ * linux-image: Include package version in utsname version string
+ ('uname -v' output) (Closes: #638878)
+ * linux-source: Drop support for version.$DISTRIBUTION
+ * [arm,ia64,powerpc,s390,sh,x86] linux-image: Include package version
+ in stack traces from WARN, BUG, Oops etc.
+ * udeb: Add snd-hda-codec-ca0132 to sound-modules (Closes: #682368)
+ * linux-source: Suggest pkg-config, needed to build kconfig GUIs
+ (Closes: #682726)
+ * debugfs: Add mode, uid and gid mount options; set default mode to 700
+ (Closes: #681418)
+ * net: new counter for tx_timeout errors in sysfs
+ * net: Add byte queue limits (bql) for reduced buffer-bloat
+ * bnx2,bnx2x,e1000e,forcedeth,igb,ixgbe,sfc,skge,sky2,tg3:
+ Add support for bql
+ * fs: Update link security restrictions to match Linux 3.6:
+ - Drop kconfig options; restrictions can only be disabled by sysctl
+ - Change the audit message type from AUDIT_AVC (1400) to
+ AUDIT_ANON_LINK (1702)
+ * [rt] Update to 3.2.28-rt42:
+ - time/rt: Fix up leap-second backport for RT changes
+ - fix printk flush of messages
+ * rds: set correct msg_namelen (CVE-2012-3430)
+ * e1000: add dropped DMA receive enable back in for WoL (Closes: #684618)
+ * PCI/PM/Runtime: make PCI traces quieter (Closes: #684049)
+ * rc: ite-cir: Initialise ite_dev::rdev earlier (Closes: #684441)
+ * input: Enable TOUCHSCREEN_ATMEL_MXT as module (Closes: #685123)
+ * usb: Add USB_QUIRK_RESET_RESUME for all Logitech UVC webcams
+ (Closes: #668211)
+ * [alpha] Use gcc-4.6 (Closes: #685894)
+ - Use large data model to work around link failure
+ * [i386/486] video: Change FB_GEODE_LX from built-in to module (lxfb)
+ (Closes: #686528)
+ * [i386/686-pae] video: Disable Geode framebuffer drivers, not used with
+ any chips that support PAE
+ * [x86] drm/i915: Fix i8xx interrupt handling (Closes: #655152)
+ * [armel/kirkwood] ahci: Add JMicron 362 device IDs (Closes: #634180)
+ * speakup: lower default software speech rate (Closes: #686742)
+ * e1000e: Fix potential DoS when TSO enabled
+ * mm: Remove user-triggerable BUG from mpol_to_str
+ * sfc: Fix maximum number of TSO segments and minimum TX queue size
+ (CVE-2012-3412)
+ - tcp: Apply device TSO segment limit earlier
+ * net_sched: gact: Fix potential panic in tcf_gact().
+ * af_packet: remove BUG statement in tpacket_destruct_skb
+ * net: Fix various information leaks
+ * af_packet: don't emit packet on orig fanout group
+ * af_netlink: force credentials passing (CVE-2012-3520)
+ * netlink: fix possible spoofing from non-root processes
+ * net: ipv4: ipmr_expire_timer causes crash when removing net namespace
+ * [i386] i810fb: Enable FB_I810_GTF, FB_I810_I2C (Closes: #687644)
+ * udeb: Add fuse-modules to support os-prober (see #684265)
+
+ [ Bastian Blank ]
+ * Make xen-linux-system meta-packages depend on xen-system. This allows
+ automatic updates. (closes: #681637)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 16 Sep 2012 06:16:38 +0100
+
+linux (3.2.23-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.22
+ - nilfs2: ensure proper cache clearing for gc-inodes
+ - ath9k_hw: avoid possible infinite loop in ar9003_get_pll_sqsum_dvc
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.23
+ - splice: fix racy pipe->buffers uses
+ - NFC: Prevent multiple buffer overflows in NCI (CVE-2012-3364)
+ - NFC: Return from rawsock_release when sk is NULL
+ - md/raid5: Do not add data_offset before call to is_badblock
+ - md/raid5: In ops_run_io, inc nr_pending before calling
+ md_wait_for_blocked_rdev
+ - md/raid10: fix failure when trying to repair a read error.
+ - udf: Improve sanity checking of filesystem metadata (CVE-2012-3400)
+ + udf: Avoid run away loop when partition table length is corrupted
+ + udf: Fortify loading of sparing table
+ - l2tp: fix a race in l2tp_ip_sendmsg()
+ - netpoll: fix netpoll_send_udp() bugs
+ - Btrfs: run delayed directory updates during log replay
+ - ocfs2: clear unaligned io flag when dio fails
+ - aio: make kiocb->private NUll in init_sync_kiocb()
+ - mm: Hold a file reference in madvise_remove
+
+ [ Ben Hutchings ]
+ * linux-libc-dev: Fix redundant 'GNU glibc' in description (Closes: #631228)
+ * README.source: Correct name of main patch series file
+ * [sh] Fix up store queue code for subsys_interface changes (Closes: #680025)
+ * scsi: Silence unnecessary warnings about ioctl to partition
+ (Closes: #656899)
+ * Update Czech debconf template translations (Michal Simunek)
+ (Closes: #679674)
+ * linux-image: Remove versioned relations where stable version is new enough
+ * udf: Improve table length check to avoid possible overflow
+ * CIFS: Respect negotiated MaxMpxCount (deferred from 3.2.14)
+ * epoll: clear the tfile_check_list on -ELOOP (CVE-2012-3375)
+ * nouveau: Update to support Fermi (NVC0+) acceleration (Closes: #679566)
+ - Refactor sub-channel use
+ - Bump version to 1.0.0
+ * e100: ucode is optional in some cases
+ * [x86] drm/i915: prefer wide & slow to fast & narrow in DP configs
+ (Closes: #658662)
+ * cipso: don't follow a NULL pointer when setsockopt() is called
+ * [x86] hwmon: Enable SENSORS_SCH5636 as module (Closes: #680934)
+ * atl1c: fix issue of transmit queue 0 timed out
+ * raid5: delayed stripe fix (Closes: #680366)
+ * fs: Remove easily user-triggerable BUG from generic_setlease
+ * tcp: drop SYN+FIN messages
+ * fifo: Do not restart open() if it already found a partner (Closes: #678852)
+ * [rt] linux-source: Include -rt version suffix
+ * [rt] Update to 3.2.23-rt37:
+ - Latency histogramms: Cope with backwards running local trace clock
+ - Latency histograms: Adjust timer, if already elapsed when programmed
+ - Disable RT_GROUP_SCHED in PREEMPT_RT_FULL
+ - Latency histograms: Detect another yet overlooked sharedprio condition
+ - slab: Prevent local lock deadlock
+ - fs, jbd: pull your plug when waiting for space
+ - perf: Make swevent hrtimer run in irq instead of softirq
+ - cpu/rt: Rework cpu down for PREEMPT_RT
+ - cpu/rt: Fix cpu_hotplug variable initialization
+ - workqueue: Revert workqueue: Fix PF_THREAD_BOUND abuse
+ - workqueue: Revert workqueue: Fix cpuhotplug trainwreck
+
+ [ Arnaud Patard ]
+ * [mipsel] add r8169 to d-i udeb.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 22 Jul 2012 23:25:47 +0100
+
+linux (3.2.21-3) unstable; urgency=low
+
+ * driver core: remove __must_check from device_create_file
+ (fixes FTBFS on sparc)
+ * i2400m: Disable I2400M_SDIO; hardware did not reach production
+ * apparmor: remove advertising the support of network rules from
+ compat iface (Closes: #676515)
+ * xen/netfront: teardown the device before unregistering it (Closes: #675190)
+ * linux-{doc,manual,source,support}: Mark as capable of satisfying
+ relations from foreign packages (Multi-Arch: foreign) (Closes: #679202)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 28 Jun 2012 04:58:18 +0100
+
+linux (3.2.21-2) unstable; urgency=low
+
+ * [i386] cpufreq/gx: Fix the compile error
+ * [powerpc] Enable PPC_DISABLE_WERROR (fixes FTBFS)
+ * tracing/mm: Move include of trace/events/kmem.h out of header into slab.c
+ (fixes FTBFS on sparc)
+ * [i386] Disable incomplete lguest support
+ * udeb: Add missing dependencies for various modules (see #678587)
+ - [armel/kirkwood] fb-modules depends on kernel-image
+ - [ia64] nic-usb-modules depends on kernel-image, nic-shared-modules,
+ usb-modules
+ - [ia64] sata-modules depends on kernel-image, scsi-core-modules
+ - [ia64] scsi-modules depends on scsi-core-modules
+ - [ia64,powerpc,ppc64] pcmcia-modules depends on kernel-image
+ - [powerpc,ppc64] nic-pcmcia-modules depends on kernel-image,
+ nic-shared-modules, pcmcia-modules
+ - [powerpc,ppc64,x86] scsi-modules depends on ata-modules
+ - [x86] nic-extra-modules depends on i2c-modules
+ * wacom: do not crash when retrieving touch_max (Closes: #678798)
+ * wacom: Revert unintended changes to handling of Tablet PCs
+ (Closes: #677164)
+ * linux-image, README.Debian: Suggest debian-kernel-handbook package
+
+ [ Arnaud Patard ]
+ * [armel, armhf] backport BPF JIT support
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 26 Jun 2012 01:56:42 +0100
+
+linux-tools (3.2.17-1) unstable; urgency=low
+
+ * New upstream stable updates:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.15
+ - modpost: fix ALL_INIT_DATA_SECTIONS
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.16
+ - perf hists: Catch and handle out-of-date hist entry maps.
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.17
+ - Perf: fix build breakage
+
+ * Fix version insertion in perf man pages
+ * Build usbip userland packages (Closes: #568362)
+ - Do not build a shared library package; the API and ABI have changed
+ from libusbip0 but there has been no upstream soversion change
+ * usbipd: Enable TCP wrappers for access control
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 24 Jun 2012 02:52:26 +0100
+
+linux (3.2.21-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.21
+ - NFSv4.1: Fix a request leak on the back channel
+ - target: Return error to initiator if SET TARGET PORT GROUPS emulation
+ fails
+ - USB: add NO_D3_DURING_SLEEP flag and revert 151b61284776be2
+ - USB: fix gathering of interface associations
+
+ [ Ben Hutchings ]
+ * [ia64,powerpc] udeb: Add crc-itu-t to crc-modules; make
+ firewire-core-modules depend on it (fixes FTBFS)
+ * [arm,m68k,sh4] udeb: Build ipv6-modules
+ * ethtool: allow ETHTOOL_GSSET_INFO for users
+ * [rt] bump version to 3.2.20-rt32
+ * cpu: Convert 'cpu' and 'machinecheck' sysdev_class to a regular subsystem
+ * [x86] Add driver auto probing for x86 features
+ - crypto: Add support for x86 cpuid auto loading for x86 crypto drivers
+ (Closes: #568008)
+ - intel-idle: convert to x86_cpu_id auto probing
+ - HWMON: Convert coretemp to x86 cpuid autoprobing
+ - HWMON: Convert via-cputemp to x86 cpuid autoprobing
+ - cpufreq: Add support for x86 cpuinfo auto loading (Closes: #664813)
+ * [x86] ACPI: Load acpi-cpufreq from processor driver automatically
+ * Bump ABI to 3
+ * input: Add Synaptics USB device driver (Closes: #678071)
+ * [x86] udeb: Fix dependencies for nic-wireless-modules
+
+ [ Aurelien Jarno ]
+ * [mips,mipsel] udeb: Remove rivafb and nvidiafb.
+ * [ppc64]: add udebs, based on powerpc/powerpc64.
+
+ [ Bastian Blank ]
+ * Support build-arch and build-indep make targets.
+
+ [ Arnaud Patard ]
+ * [armel/kirkwood] Add dreamplug and iconnect support (Closes: #675922)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 22 Jun 2012 13:54:15 +0100
+
+linux (3.2.20-1) unstable; urgency=low
+
+ * The "Confused? You Won't Be" release
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.20
+ - cifs: fix oops while traversing open file list (try #4)
+ - mm/fork: fix overflow in vma length when copying mmap on clone
+ - mm: fix faulty initialization in vmalloc_init()
+ - x86, amd, xen: Avoid NULL pointer paravirt references
+ - ext4: force ro mount if ext4_setup_super() fails
+ - ext4: disallow hard-linked directory in ext4_lookup
+ - ext4: add missing save_error_info() to ext4_error()
+ - ALSA: usb-audio: fix rate_list memory leak
+ - Bluetooth: btusb: typo in Broadcom SoftSailing id (Closes: #674565)
+ - ipv4: Do not use dead fib_info entries.
+ - ipv4: fix the rcu race between free_fib_info and ip_route_output_slow
+ - l2tp: fix oops in L2TP IP sockets for connect() AF_UNSPEC case
+ - btree: fix tree corruption in btree_get_prev()
+ - asix: allow full size 8021Q frames to be received (Closes: #676545)
+ - ext4: don't trash state flags in EXT4_IOC_SETFLAGS
+ - ext4: fix the free blocks calculation for ext3 file systems w/ uninit_bg
+
+ [ Ben Hutchings ]
+ * Rename source package to 'linux' (Closes: #636010)
+ * Convert source package format to 3.0 (quilt)
+ - Convert patch system to quilt, except for the 'orig' patch series
+ - Use xz compression for upstream and Debian tarballs
+ - README.source: Update description of patch system to match current
+ usage
+ - linux-patch-debian: Remove; it is no longer necessary for GPL
+ compliance and does not work with our current patch management
+ * linux-image: Change package name for bugs to 'src:linux' (Closes: #644198)
+ * DFSG: video: Remove nvidiafb and rivafb, which include apparently
+ obfuscated code (Closes: #383481, #609615). The nouveau driver supports
+ all the same hardware, aside from RIVA 128 (NV3).
+ * udeb: Add udf-modules containing UDF filesystem module (Closes: #613972)
+ * [mipsel/loongson2f] linux-image: Recommend libc6-loongson2f
+ (Closes: #629410)
+ * Build-Depend on kmod or module-init-tools, not just the latter
+ * test-patches: Recognise the rt featureset automatically
+ * udeb: Build-Depend on kernel-wedge >= 2.84; this allows us to list
+ modules as required even if they are built-in in some configurations
+ * filter: Allow to create sk-unattached filters
+ * proc: Backport hidepid mount option from Linux 3.4 (Closes: #669028)
+ * NFSv4: Reduce the footprint of the idmapper (Closes: #657078)
+ * [i386] thp: avoid atomic64_read in pmd_read_atomic for 32bit PAE
+ (Closes: #676360)
+ * linux-source: Add single patch for each featureset
+ * [x86] Enable CRASH_DUMP, PROC_VMCORE (Closes: #623177)
+ * media/dvb: Enable DVB_DDBRIDGE as module (Closes: #676952)
+ * net: sock: validate data_len before allocating skb in
+ sock_alloc_send_pskb() (CVE-2012-2136)
+ * macvtap: zerocopy: fix offset calculation when building skb
+ * macvtap: zerocopy: fix truesize underestimation
+ * macvtap: zerocopy: put page when fail to get all requested user pages
+ * macvtap: zerocopy: set SKBTX_DEV_ZEROCOPY only when skb is built
+ successfully
+ * macvtap: zerocopy: validate vectors before building skb (CVE-2012-2119)
+ * KVM: Fix buffer overflow in kvm_set_irq() (CVE-2012-2137)
+
+ [ Bastian Blank ]
+ * [s390/s390x,s390x/s390x] Build debugging symbols.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 11 Jun 2012 02:46:34 +0100
+
+linux-2.6 (3.2.19-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.19
+ - hpsa: Fix problem with MSA2xxx devices (Closes: #661057)
+ - IB/core: Fix mismatch between locked and pinned pages
+ - iommu: Fix off by one in dmar_get_fault_reason()
+ - vfs: make AIO use the proper rw_verify_area() area helpers
+ - HID: logitech: read all 32 bits of report type bitfield (Closes: #671292)
+ - USB: Remove races in devio.c
+ - ext{3,4}: Fix error handling on inode bitmap corruption
+ - uvcvideo: Fix ENUMINPUT handling
+ - dl2k: Clean up rio_ioctl (CVE-2012-2313)
+ - [x86] MCE: Fix vm86 handling for 32bit mce handler
+ - [x86] mce: Fix check for processor context when machine check was taken.
+ - ethtool: Null-terminate filename passed to ethtool_ops::flash_device
+ - NFSv4: Fix buffer overflows in ACL support (CVE-2012-2375)
+ + Avoid reading past buffer when calling GETACL
+ + Avoid beyond bounds copy while caching ACL
+
+ [ Ben Hutchings ]
+ * be2net: Backport most changes up to Linux 3.5-rc1, thanks to
+ Sarveshwar Bandi (Closes: #673391)
+ - Add support for Skyhawk cards
+ * net/sched: Add codel and fq_codel from Linux 3.5-rc1
+ * [x86] udeb: Add hyperv-modules containing Hyper-V paravirtualised drivers
+ * [x86] ata_piix: defer disks to the Hyper-V drivers by default
+ * [x86] drm/i915:: Disable FBC on SandyBridge (Closes: #675022)
+ * AppArmor: compatibility patch for v5 interface (Closes: #661151)
+ * hugepages: fix use after free bug in "quota" handling (CVE-2012-2133)
+ * [x86] mm: pmd_read_atomic: fix 32bit PAE pmd walk vs pmd_populate SMP race
+ condition (CVE-2012-2373)
+ * hugetlb: fix resv_map leak in error path (CVE-2012-2390)
+ * [SCSI] fix scsi_wait_scan (Closes: #647436)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 01 Jun 2012 13:15:48 +0100
+
+linux-2.6 (3.2.18-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.18
+ - hugetlb: prevent BUG_ON in hugetlb_fault() -> hugetlb_cow()
+ - net: l2tp: unlock socket lock before returning from l2tp_ip_sendmsg
+ - [sparc] sparc64: Do not clobber %g2 in xcall_fetch_glob_regs().
+ - ext4: avoid deadlock on sync-mounted FS w/o journal
+ - brcm80211: smac: fix endless retry of A-MPDU transmissions
+ (Closes: #672891)
+ - target: Fix SPC-2 RELEASE bug for multi-session iSCSI client setups
+ - ALSA: hda/idt - Fix power-map for speaker-pins with some HP laptops
+ (Closes: #672582)
+ - usbnet: fix skb traversing races during unlink(v2)
+ - [arm] prevent VM_GROWSDOWN mmaps extending below FIRST_USER_ADDRESS
+
+ [ Jonathan Nieder ]
+ * wacom: Add support for various tablet models (Closes: #671801)
+ * rt2800usb: Add support for Ralink RT5392/RF5372 chipset (Closes: #673186)
+
+ [ Ben Hutchings ]
+ * test-patches: Fix -j option, broken since 3.1.0-1~experimental.1
+ * rt2800usb: Re-enable powersaving by default, as it should work better
+ than in 2.6.38
+ * [sparc,sparc64] Build virtio-modules-udeb for use in qemu (Closes: #673320)
+ * KVM: mmu_notifier: Flush TLBs before releasing mmu_lock
+ * [x86] KVM: nVMX: Fix erroneous exception bitmap check
+ * [x86] KVM: VMX: vmx_set_cr0 expects kvm->srcu locked
+ * [s390] KVM: do store status after handling STOP_ON_STOP bit
+ * [s390] KVM: Sanitize fpc registers for KVM_SET_FPU
+ * ACPI battery: only refresh the sysfs files when pertinent information
+ changes (Closes: #670958)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 21 May 2012 04:07:08 +0100
+
+linux-2.6 (3.2.17-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.17
+ - md: fix possible corruption of array metadata on shutdown.
+ - ext4: fix endianness breakage in ext4_split_extent_at()
+ - KVM: unmap pages from the iommu when slots are removed (CVE-2012-2121)
+ - btrfs: btrfs_root_readonly() broken on big-endian
+ - ocfs2: Fix various bugs affecting big-endian architectures
+ - lockd: fix the endianness bug
+ - phonet: Check input from user before allocating
+ - netlink: fix races after skb queueing
+ - net: fix a race in sock_queue_err_skb()
+ - net/ethernet: ks8851_mll fix rx frame buffer overflow
+ - x86, apic: APIC code touches invalid MSR on P5 class machines
+ - drm/i915: fix integer overflow in i915_gem_execbuffer2()
+ - drm/i915: fix integer overflow in i915_gem_do_execbuffer()
+ - USB: cdc-wdm: fix race leading leading to memory corruption
+ - autofs: make the autofsv5 packet file descriptor use a packetized pipe
+ (Closes: #633423)
+ - efi: Validate UEFI boot variables
+ - efivars: Improve variable validation
+ - fs/cifs: fix parsing of dfs referrals
+ - hfsplus: Fix potential buffer overflows (CVE-2012-2319)
+ - exit_signal: fix the "parent has changed security domain" logic
+
+ [ Ben Hutchings ]
+ * aufs: Enable AUFS_EXPORT
+ * ext4: Report max_batch_time option correctly (Closes: #654206)
+ * [i386/rt-686-pae] Enable HIGHMEM64G as intended for this configuration
+ * NFSv4: Revalidate uid/gid after open (Closes: #659111)
+ * sky2: propogate rx hash when packet is copied
+ * sky2: fix receive length error in mixed non-VLAN/VLAN traffic
+ (Closes: #492853)
+ * KVM: Ensure all vcpus are consistent with in-kernel irqchip settings
+ (CVE-2012-1601)
+ * KVM: lock slots_lock around device assignment (CVE-2012-2121)
+ * [rt] bump version to 3.2.16-rt27
+
+ [ Bastian Blank ]
+ * [s390] Enable IUCV special message support. (closes: #671238)
+
+ [ Arnaud Patard ]
+ * [armhf] Add vexpress support from Vagrant Cascadian with a slightly
+ modified kernel configuration (Closes: #670462)
+ * [armel] Introduce a new udeb module for leds and use it on kirkwoord
+ kernel thanks to Simon Guinot (Closes: #671200)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 12 May 2012 15:29:09 +0100
+
+linux-2.6 (3.2.16-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.16
+ - drm/i915: properly compute dp dithering for user-created modes
+ (Closes: #666360)
+ - md/bitmap: prevent bitmap_daemon_work running while initialising bitmap
+ - [ia64] Fix futex_atomic_cmpxchg_inatomic() (Closes: #659485)
+ - USB: serial: fix race between probe and open
+ - fcaps: clear the same personality flags as suid when fcaps are used
+ (CVE-2012-2123)
+ - ACPICA: Fix to allow region arguments to reference other scopes
+ (Closes: #661581)
+ - futex: Do not leak robust list to unprivileged process
+ - drm/radeon/kms: fix the regression of DVI connector check
+ (Closes: #670047)
+
+ [ Ben Hutchings ]
+ * rt2x00: Identify rt2800usb chipsets. (Closes: #658067)
+ * [x86] Add EFI boot stub support (Closes: #669033)
+ * brcmsmac: "INTERMEDIATE but not AMPDU" only when tracing
+ * NFSv4: Fix error handling and improve error reporting for file locking
+ (Closes: #669270)
+ - Rate limit the state manager for lock reclaim warning messages
+ - Ensure that the LOCK code sets exception->inode
+ - Ensure that we check lock exclusive/shared type against open modes
+ * [x86] i915: Fix integer overflows in i915_gem_{do_execbuffer,execbuffer2}
+ * Revert "autofs: work around unhappy compat problem on x86-64".
+ Reopens #633423.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 29 Apr 2012 08:00:53 +0100
+
+linux-2.6 (3.2.15-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.15
+ - drm/radeon/kms: fix fans after resume (Closes: #596741)
+ - sysctl: fix write access to dmesg_restrict/kptr_restrict
+ - [x86] PCI: use host bridge _CRS info on MSI MS-7253 (Closes: #619034)
+ - nfs: Fix length of buffer copied in __nfs4_get_acl_uncached
+ - [x86] ioat: fix size of 'completion' for Xen (Closes: #660554)
+ - cred: copy_process() should clear child->replacement_session_keyring
+
+ [ Ben Hutchings ]
+ * net: fix /proc/net/dev regression (Closes: #659499)
+ * [armel/orion5x] Fix GPIO enable bits for MPP9 (Closes: #667446)
+ * [x86] drm/i915: mask transcoder select bits before setting them on LVDS
+ * [armhf/mx5,mipsel/loongson-2f] input: Enable INPUT_TOUCHSCREEN
+ (Closes: #668036)
+ * [x86] hv: Update all Hyper-V drivers to 3.4-rc1 (Closes: #661318)
+ * hugetlb: fix race condition in hugetlb_fault()
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 14 Apr 2012 18:23:44 +0100
+
+linux-2.6 (3.2.14-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.14
+ - mm: thp: fix pmd_bad() triggering in code paths holding mmap_sem
+ read mode (CVE-2012-1179)
+ - hugetlbfs: avoid taking i_mutex from hugetlbfs_read()
+ - md/bitmap: ensure to load bitmap when creating via sysfs
+ (Closes: #661558)
+ - md: dont set md arrays to readonly on shutdown
+ - md/raid1,raid10: avoid deadlock during resync/recovery (Closes: #584881)
+ - md: fix clearing of the changed flags for the bad blocks list
+ - xfs: fix inode lookup race
+ - sysctl: protect poll() in entries that may go away
+ - NFSv4: Rate limit the state manager warning messages (Closes: #666121)
+ - jbd2: clear BH_Delay & BH_Unwritten in journal_unmap_buffer
+ - ext4: ignore EXT4_INODE_JOURNAL_DATA flag with delalloc
+ - ext4: fix race between sync and completed io work
+ - ext4: check for zero length extent
+ - vfs: fix d_ancestor() case in d_materialize_unique
+ - udf: Fix deadlock in udf_release_file()
+ - dm crypt: add missing error handling
+ - dm thin: fix stacked bi_next usage
+ - xfs: Fix oops on IO error during xlog_recover_process_iunlinks()
+ - NFSv4: Fix two infinite loops in the mount code
+ - drm/i915: suspend fbdev device around suspend/hibernate
+ (Closes: #645547)
+ - net: fix a potential rcu_read_lock() imbalance in rt6_fill_node()
+ - [x86] tls: Off by one limit check
+ - PCI: ASPM: Fix pcie devices with non-pcie children (Closes: #665420)
+
+ [ Jonathan Nieder ]
+ * ata: Enable PATA_IT8213 as module (Closes: #666506)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 05 Apr 2012 05:02:45 +0100
+
+linux-2.6 (3.2.13-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.13
+
+ [ Ben Hutchings ]
+ * kbuild: do not check for ancient modutils tools
+
+ [ Uwe Kleine-König ]
+ * [rt] bump version to 3.2.12-rt22
+
+ [ Bastian Blank ]
+ * [s390x] Ignore ABI change.
+
+ -- Bastian Blank <waldi@debian.org> Wed, 28 Mar 2012 13:40:26 +0200
+
+linux-tools (3.2.7-2) unstable; urgency=high
+
+ * Apply upstream changes to fix various buffer overflow bugs:
+ - perf tools: Use scnprintf where applicable
+ - perf tools: Incorrect use of snprintf results in SEGV
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 20 Mar 2012 04:54:22 +0000
+
+linux-2.6 (3.2.12-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.11
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.12
+ - aio: fix io_setup/io_destroy race
+ - aio: fix the "too late munmap()" race
+ - vfs: fix double put after complete_walk()
+ - acer-wmi: No wifi rfkill on Lenovo machines (Closes: #655941)
+ - tcp: fix false reordering signal in tcp_shifted_skb
+ - r8169: corrupted IP fragments fix for large mtu
+ - tcp: don't fragment SACKed skbs in tcp_mark_head_lost()
+ - tcp: fix tcp_shift_skb_data() to not shift SACKed data below snd_una
+ - block: Fix NULL pointer dereference in sd_revalidate_disk
+ (Closes: #649735)
+ - block: fix __blkdev_get and add_disk race condition
+
+ [ Ben Hutchings ]
+ * [powerpc] Enable KVM_GUEST
+ * [s390] Ignore arch_pick_mmap_layout version change; it should not be
+ needed by modules (fixes FTBFS)
+ * [x86] Disable POHMELFS; this version is obsolete
+ * epoll: Don't limit non-nested epoll paths
+ * CIFS: Fix a spurious error in cifs_push_posix_locks
+ * [rt] bump rt patch to version 3.2.11-rt20
+ * aufs: Update to aufs3.2-20120312
+ * tcp: fix syncookie regression
+ * ipv6: Don't dev_hold(dev) in ip6_mc_find_dev_rcu
+
+ [ Jonathan Nieder ]
+ * [x86] Enable RTS5139 as module (Closes: #663912)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 20 Mar 2012 04:32:51 +0000
+
+linux-2.6 (3.2.10-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.10
+ - regset: Prevent null pointer reference on readonly regsets
+ (CVE-2012-1097)
+
+ [ Uwe Kleine-König ]
+ * [rt] bump rt patch to version 3.2.9-rt17
+ * [rt] fix conflict between the security restrictions on links introduced in
+ 3.2.9-1 and rt (Closes: #663269)
+
+ [ Aurelien Jarno ]
+ * [mips,mipsel] Mark ext4-modules as provided by the kernel-image udeb, remove
+ ide-core-modules provide.
+
+ [ Ben Hutchings ]
+ * [x86,ia64] PCI/hotplug: Build-in common hotplug drivers:
+ - Change HOTPLUG_PCI, HOTPLUG_PCI_PCIE to built-in
+ - [x86] Change HOTPLUG_PCI_ACPI to built-in (Closes: #663433)
+ - [ia64] Enable HOTPLUG_PCI_SGI as built-in
+ * linux-headers: Remove unused, broken symlinks to Kbuild (Closes: #663597)
+ * udeb: Remove dependency of {pcmcia,usb}-storage-modules on ide-core-modules
+ * [mips,mipsel] Mark ata-modules as provided by the kernel-image udeb
+ for most flavours
+
+ -- Bastian Blank <waldi@debian.org> Tue, 13 Mar 2012 17:19:32 +0100
+
+linux-tools (3.2.7-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.7
+ - perf tools: Fix perf stack to non executable on x86_64
+ - perf evsel: Fix an issue where perf report fails to show the proper
+ percentage
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 05 Mar 2012 00:19:02 +0000
+
+linux-2.6 (3.2.9-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.8
+ - [i386] i387: move TS_USEDFPU flag from thread_info to task_struct
+ - [x86] additional refactoring of FPU/SSE state save and restore
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.9
+ - vfs: fix d_inode_lookup() dentry ref leak
+ - target: Allow control CDBs with data > 1 page
+ - epoll: introduce POLLFREE to flush ->signalfd_wqh before kfree()
+ - epoll: ep_unregister_pollwait() can use the freed pwq->whead
+ - epoll: limit paths (CVE-2011-1083)
+ - cdrom: use copy_to_user() without the underscores
+
+ [ Bastian Blank ]
+ * [mips,mipsel] Also remove ext4 modules from installer.
+
+ [ Ben Hutchings ]
+ * Update debconf template translations:
+ - Update Dutch (Willem Kuyn) (Closes: #658736)
+ - Add Polish (Michał Kułach) (Closes: #658912)
+ * Bump ABI to 2
+ * fs: Introduce and enable security restrictions on links:
+ - Do not follow symlinks in /tmp that are owned by other users
+ (sysctl: fs.protected_symlinks)
+ - Do not allow unprivileged users to create hard links to sensitive files
+ (sysctl: fs.protected_hardlinks) (Closes: #609455)
+ + This breaks the 'at' package in stable, which will be fixed shortly
+ (see #597130)
+ The precise restrictions are specified in Documentation/sysctl/fs.txt in
+ the linux-doc-3.2 and linux-source-3.2 packages.
+ * iwlwifi: fix key removal (Closes: #651199)
+ * cgroups: Set CGROUP_PERF
+ * hid: Enable HID_HOLTEK, HID_PRIMAX, HID_SPEEDLINK, HID_WIIMOTE as modules,
+ HID_ACRUX_FF
+ * media/rc: Enable RC_ATI_REMOTE as module
+ * gspca: Enable USB_GSPCA_TOPRO as module
+ * dvb-usb: Enable DVB_USB_PCTV452E, DVB_USB_MXL111SF as modules
+
+ [ Uwe Kleine-König ]
+ * [x86] Update rt featureset to 3.2.9-rt15
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 04 Mar 2012 15:32:20 +0000
+
+linux-2.6 (3.2.7-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.7
+
+ [ Ben Hutchings ]
+ * Add Turkish debconf template translations (Mert Dirik) (Closes: #660117)
+ * [amd64] Disable BLK_DEV_IDEPNP, BLK_DEV_OPTI621, IDE_GENERIC
+ * Use libata-based drivers for most of the remaining PATA controllers:
+ - pata_legacy replaces ide-generic
+ - pata_isapnp replaces ide-pnp
+ - pata_opti replaces opti621
+ - pata_hpt366 and pata_hpt37x replace hpt366
+ - pata_ninja32 replaces delkin_cb
+ - pata_cs5535 replaces cs5535
+ - pata_winbond replaces sl82c105
+ - [alpha] pata_cypress replaces cy82c693
+ - [hppa] pata_ns87415 replaces ns87415
+ - [sparc] Various replacements, as for x86 in 2.6.32-10
+ * Disable old IDE subsystem [!ia64,m68k]:
+ - Disable BLK_DEV_IT8172, BLK_DEV_IT8213, BLK_DEV_TC86C001, BLK_DEV_TRM290
+ - [alpha] Disable BLK_DEV_4DRIVES, BLK_DEV_ALI14XX, BLK_DEV_DTC2278,
+ BLK_DEV_HT6560B, BLK_DEV_QD65XX, BLK_DEV_UMC8672
+ * fs: Enable EFI_PARTITION in all configurations (Closes: #660582)
+ * [i386] Re-enable INTEL_IOMMU, IRQ_REMAP
+ * [mips/r5k-ip32] Enable INPUT_SGI_BTNS (previously INPUT_SGIO2_BTNS)
+ * [powerpc/powerpc64] Enable IBM_EMAC (previously IBM_NEW_EMAC)
+ * [x86] drm/i915: do not enable RC6p on Sandy Bridge (Closes: #660265)
+ * ipsec: be careful of non existing mac headers (Closes: #660804)
+ * version: Use maintainer rather than uploader address for official
+ binary packages
+
+ [ Bastian Blank ]
+ * Don't advertise Xen support for rt images. (closes: #659988)
+ * [m68k,mips,mipsel] Use ext4 for all ext-variants. (closes: #660446)
+ * [m68k,mips,mipsel] Don't built-in ramdisk support.
+ * [hppa,mips,mipsel] Don't built-in cramfs support.
+ * [alpha,hppa] Don't built-in ext2.
+ * Remove IDE trigger for LED support.
+ * Remove all framebuffer bootup logos.
+ * NFSv4: Fix an Oops in the NFSv4 getacl code.
+
+ -- Bastian Blank <waldi@debian.org> Tue, 28 Feb 2012 16:00:41 +0100
+
+linux-2.6 (3.2.6-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.5
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.6
+ - ALSA: hda - Apply 0x0f-VREF fix to all ASUS laptops with ALC861/660
+ (Closes: #657302)
+ - [armhf] vfp: flush thread hwstate before restoring context from sigframe
+ - proc: mem_release() should check mm != NULL
+ - proc: make sure mem_open() doesnt pin the targets memory
+ - [arm] sched/rt: Fix task stack corruption under
+ __ARCH_WANT_INTERRUPTS_ON_CTXSW
+ - eCryptfs: Infinite loop due to overflow in ecryptfs_write()
+ - iscsi-target: Fix reject release handling in iscsit_free_cmd()
+ - iscsi-target: Fix double list_add with iscsit_alloc_buffs reject
+ - pcmcia: fix socket refcount decrementing on each resume
+
+ [ Aurelien Jarno ]
+ * hwmon: backport IT8728F support for linux 3.3.
+
+ [ Uwe Kleine-König ]
+ * [amd64] Update rt featureset to 3.2.5-rt12
+ * [i386] enable rt featureset for 686-pae
+
+ [ Arnaud Patard ]
+ * Merge ixp4xx oops fix when probing mtd.
+
+ [ Ben Hutchings ]
+ * Change linux-image dependencies to allow kmod as an alternative to
+ module-init-tools
+ * relay: prevent integer overflow in relay_open()
+ * builddeb: Don't create files in /tmp with predictable names
+ * ath9k: fix a WEP crypto related regression (Closes: #659484)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 16 Feb 2012 02:38:38 +0000
+
+linux-2.6 (3.2.4-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.3
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.4
+ - eCryptfs: Sanitize write counts of /dev/ecryptfs
+ - eCryptfs: Make truncate path killable
+ - eCryptfs: Check inode changes in setattr
+ - drm/i915: paper over missed irq issues with force wake voodoo
+ - tpm_tis: add delay after aborting command (Closes: #649033)
+ - USB: ftdi_sio: fix initial baud rate (Closes: #658164)
+ - USB: Realtek cr: fix autopm scheduling while atomic (Closes: #656724)
+
+ [ Ben Hutchings ]
+ * [armel] Add mv78xx0 flavour; thanks to Steve McIntyre for the config
+ * net: Disable FIXED_PHY; this driver only causes trouble
+ * PCI: Rework ASPM disable code (fixes power usage regression on some
+ systems)
+
+ [ Bastian Blank ]
+ * Remove unneeded scmversion workaround.
+
+ -- Bastian Blank <waldi@debian.org> Sun, 05 Feb 2012 15:42:21 +0100
+
+linux-2.6 (3.2.2-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.2
+ - ext4: fix undefined behavior in ext4_fill_flex_info() (CVE-2009-4307)
+ - Unused iocbs in a batch should not be accounted as active (CVE-2012-0058)
+ - uvcvideo: Fix integer overflow in uvc_ioctl_ctrl_map()
+ - [arm] proc: clear_refs: do not clear reserved pages
+
+ [ Ben Hutchings ]
+ * Clean up linux-image maintainer scripts:
+ - Stop changing 'build' and 'source' symlinks; these now belong to the
+ linux-headers packages
+ - Remove unused configuration variables
+ - prerm: Remove last vestige of /usr/doc transition
+ - postrm: Remove modules.*.bin; currently modules.builtin.bin is left
+ behind
+ * [alpha] Build with gcc-4.5 (Closes: #657112)
+ * aufs: Update to aufs3.2-20120109 (fixes FTBFS on m68k)
+ * [m68k] Fix assembler constraint to prevent overeager gcc optimisation
+ * sdhci-pci: Include driver in installer
+ * [armel] udeb: Do not attempt to build lzo-modules udeb as lzo_compress
+ is now built-in (fixes FTBFS)
+ * [armhf] udeb: Include rt2800usb in nic-modules, replacing rt2870sta
+ which was removed from the kernel
+ * drm: Fix authentication kernel crash
+ * xfs: Fix missing xfs_iunlock() on error recovery path in xfs_readlink()
+ * jbd: Issue cache flush after checkpointing
+ * crypto: sha512 - make it work, undo percpu message schedule
+ - crypto: sha512 - reduce stack usage to safe number
+ * [x86] xen: size struct xen_spinlock to always fit in arch_spinlock_t
+ * l2tp: l2tp_ip - fix possible oops on packet receive
+ * macvlan: fix a possible use after free
+ * tcp: fix tcp_trim_head() to adjust segment count with skb MSS
+ * [x86] KVM: fix missing checks in syscall emulation (CVE-2012-0045)
+
+ [ Thorsten Glaser ]
+ * [m68k] Use gcc-4.6 like (almost) all other architectures
+ * Pass the cflags define as CFLAGS_KERNEL and CFLAGS_MODULE to kbuild
+ * [m68k] Use cflags -ffreestanding (Closes: #648996)
+
+ [ Aurelien Jarno ]
+ * [mips,octeon] Disabled CONFIG_FIXED_PHY as it conflicts with the octeon
+ phy driver.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 01 Feb 2012 01:44:05 +0000
+
+linux-tools (3.2.1-2) unstable; urgency=low
+
+ * Add Vcs-{Svn,Browser} fields
+ * Reduce minimum version of linux-base to 3.4~ to support backports
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 24 Jan 2012 04:26:24 +0000
+
+linux-2.6 (3.2.1-2) unstable; urgency=high
+
+ [ Stefan Lippers-Hollmann ]
+ * udeb: Add missing modules to nic-wireless-modules:
+ - lib80211 encryption algorithms (lib80211_crypt_{wep,ccmptkip})
+ needed for e.g. ipw2x00 wlan modules (Closes: #636259)
+ - ath9k_htc, carl9170 and rt2800{pci,usb} drivers
+ (Closes: #636321, #636353, #636385)
+
+ [ Ben Hutchings ]
+ * Update Vcs-Browser URL for the switch to ViewVC
+ * Point Vcs-{Svn,Browser} at trunk branch, since the sid branch does
+ not always exist
+ * Build linux-libc-dev without multiarch if dpkg does not support it,
+ to support backports
+ * proc: clean up and fix /proc/<pid>/mem handling (CVE-2012-0056)
+
+ [ Aurelien Jarno ]
+ * [x86] Backport KVM nested VMX fixes from 3.3 to fix warnings and
+ crashes of L1 guests.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 23 Jan 2012 15:10:04 +0000
+
+linux-tools (3.2.1-1) unstable; urgency=low
+
+ * New upstream release
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 19 Jan 2012 04:17:19 +0000
+
+linux-2.6 (3.2.1-1) unstable; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.2
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.2.1
+
+ [ Aurelien Jarno ]
+ * [arm, mips, mipsel, sh4] Add a virtio-modules udeb on flavours which
+ can be emulated by QEMU.
+
+ [ Ben Hutchings ]
+ * media/dvb: Enable DVB_USB_IT913X as module (Closes: #653776)
+ * [arm] Remove use of possibly undefined BUILD_BUG_ON in <asm/bug.h>
+ (fixes FTBFS)
+ * Install /lib/modules/<kernel-version>/modules.builtin in linux-image
+ packages
+ * [ia64] Add accept4() syscall (Closes: #647825)
+ * [x86] staging: Enable STAGING_MEDIA, which various drivers now depend on
+ (Closes: #654800)
+ * [um,m68k] Register a generic CPU device (fixes regression introduced by
+ the fix for #649216)
+ * [alpha] add io{read,write}{16,32}be functions, thanks to Michael Cree
+ * net: reintroduce missing rcu_assign_pointer() calls
+ * Input: ALPS - add support for protocol versions 3 and 4
+ (Closes: #618422, #648207)
+ * [powerpc/powerpc64] udeb: Drop zlib-modules; ZLIB_DEFLATE is built-in
+ * [amd64] iommu: Enable INTEL_IOMMU, INTEL_IOMMU_FLOPPY_WA, IRQ_REMAP
+ * [amd64] cpufreq: Enable X86_P4_CLOCKMOD (Closes: #656328)
+ * Refresh list of related firmware packages for bug script
+
+ [ Bastian Blank ]
+ * [amd64] crypt: Enable some amd64 only ciphers.
+ * Packaging updates:
+ - Use unicode.
+ - Cleanup config handling.
+ - Remove support for plain-xen image type.
+ - Allow disabling debug infos for unreleased builds.
+
+ [ Arnaud Patard ]
+ * [armel] disable tomoyo and apparmor to allow kernel image to fit into flash.
+ * [armel] add back ixp4xx gpiolib patch
+ * [arm] backport topdown mmap support from rmk's tree
+ * [armel] Enable support from LaCIE kirkwood devices, thanks to Simon Guinot
+ (Closes: #655344)
+ * [armel] Backport 88f6282 A1 support
+
+ [ Jurij Smakov ]
+ * [sparc] Add mpt2sas to scsi-common-modules udeb on sparc and sparc64,
+ needed by Niagara T3 machines.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 18 Jan 2012 16:14:12 +0000
+
+linux-2.6 (3.2~rc7-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+ - [powerpc] pasemi_mac: Fix building as module
+ - [x86] mpparse: Account for bus types other than ISA and PCI
+ (Closes: #586494)
+ - EHCI : Fix a regression in the ISO scheduler (Closes: #651382)
+ - [arm] setup: initialize arm_dma_zone_size earlier (Closes: #651215)
+
+ [ Ben Hutchings ]
+ * [x86] et131x: Include driver in installer (Closes: #651440)
+ * security: Enable APPARMOR (Closes: #598408)
+
+ [ Uwe Kleine-König ]
+ * [amd64] Update rt featureset to 3.2-rc5-rt8
+
+ [ Bastian Blank ]
+ * Use xz compression for all packages.
+
+ -- Bastian Blank <waldi@debian.org> Wed, 28 Dec 2011 14:55:38 +0100
+
+linux-tools (3.2~rc4-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 07 Dec 2011 01:53:15 +0000
+
+linux-2.6 (3.2~rc4-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Update to aufs3.x-rcN-20111114
+ * ieee802154: Enable IEEE802154_6LOWPAN as module
+ * can: Enable CAN_GW, CAN_EMS_PCMCIA, CAN_PEAK_PCI as modules
+ * nfc: enable NFC_NCI as module
+ * scsi: Enable MVUMI as module
+ * dm: Enable DM_THIN_PROVISIONING as module
+ * b43: Enable B43_PHY_HT
+ * [ia64,powerpc,sparc,x86] wireless: Enable MWIFIEX_PCIE as module
+ * udeb: Update configuration for 3.2:
+ - Provide the default configuration instead of including it from the
+ kernel-wedge package
+ - iwlagn is renamed to iwlwifi
+ - blowfish is renamed to blowfish_generic
+
+ [ Uwe Kleine-König ]
+ * [amd64] reenable rt featureset with 3.2-rc4-rt5
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 03 Dec 2011 23:07:41 +0000
+
+linux-2.6 (3.1.8-2) unstable; urgency=high
+
+ * igmp: Avoid zero delay when receiving odd mixture of IGMP queries
+ (Closes: #654876) (CVE-2012-0207)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 10 Jan 2012 00:14:39 +0000
+
+linux-2.6 (3.1.8-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.1.7
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.1.8
+ - Revert "clockevents: Set noop handler in clockevents_exchange_device()",
+ included in stable update 3.1.5 (Closes: #653398)
+ - cfq-iosched: fix cfq_cic_link() race condition
+ - binary_sysctl(): fix memory leak
+ - cgroups: fix a css_set not found bug in cgroup_attach_proc
+ - iwlwifi: allow to switch to HT40 if not associated (Closes: #653423)
+ - futex: Fix uninterruptible loop due to gate_area
+ - drm/radeon/kms: bail on BTC parts if MC ucode is missing
+ - [sparc] sparc64: Fix masking and shifting in VIS fpcmp emulation.
+ - llc: llc_cmsg_rcv was getting called after sk_eat_skb.
+ - ipv4: reintroduce route cache garbage collector
+ - Revert "rtc: Disable the alarm in the hardware" (Closes: #652869)
+
+ [ Ben Hutchings ]
+ * snapshot: Implement compat_ioctl (Closes: #502816)
+ * drm/radeon: flush read cache for gtt with fence on r6xx and newer GPU
+ (Closes: #646376)
+ * rtc: Fix alarm rollover when day or month is out-of-range (Closes: #646429)
+ * l2tp: ensure sk->dst is still valid (Closes: #652503)
+ * Update Russian debconf template translations (Yuri Kozlov)
+ (Closes: #653716)
+ * v4l2-ioctl: integer overflow in video_usercopy()
+ * Restrict ioctl forwarding on partitions and logical volumes (CVE-2011-4127)
+ * [x86] KVM: Prevent starting PIT timers in the absence of irqchip support
+ (CVE-2011-4622)
+
+ [ Jonathan Nieder ]
+ * prerm: Print an error message when aborting removal of the running
+ kernel (Closes: #601962)
+
+ [ Aurelien Jarno ]
+ * [sh4] Remove core-modules udeb as it is empty.
+ * [sh4/sh7751r] Disable CONFIG_RTS7751R2D_1. Support for this board
+ implies IRQless IDE, which causes data corruption.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 08 Jan 2012 16:31:16 +0000
+
+linux-2.6 (3.1.6-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.1.6
+ - staging: r8712u: Add new USB ID (Closes: #651622)
+ - [arm] setup: initialize arm_dma_zone_size earlier (Closes: #651215)
+
+ [ Ben Hutchings ]
+ * [x86] Enable HYPERV, HYPERV_STORAGE, HYPERV_NET, HYPERV_UTILS,
+ HYPERV_MOUSE as modules (Closes: #652014)
+ * cciss: Add IRQF_SHARED back in for the non-MSI(X) interrupt handler
+ (Closes: #650119)
+ * udeb: Update configuration:
+ - Provide the default configuration instead of including it from the
+ kernel-wedge package
+ - [x86] Include et131x (Closes: #651440)
+ - [x86] Include isci (Closes: #652897)
+
+ -- Bastian Blank <waldi@debian.org> Fri, 23 Dec 2011 17:02:26 +0100
+
+linux-tools (3.1.1-3) unstable; urgency=low
+
+ * Fix s390x support.
+
+ -- Aurelien Jarno <aurel32@debian.org> Sun, 18 Dec 2011 19:32:12 +0100
+
+linux-2.6 (3.1.5-1) unstable; urgency=low
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.1.5
+ - bridge: correct IPv6 checksum after pull (Closes: #651469)
+ - USB: EHCI: fix HUB TT scheduling issue with iso transfer
+ (Closes: #651015)
+ - [x86] mpparse: Account for bus types other than ISA and PCI
+ (Closes: #586494)
+
+ [ Bastian Blank ]
+ * Fix generation of revisions for the patch list.
+
+ [ Hector Oron ]
+ * regulator: backport fix for nullpointer dereference in core.
+
+ [ Ben Hutchings ]
+ * [x86] Enable MEMTEST (Closes: #613321, #646361)
+ - If bad RAM is detected, WARN and recommend a more thorough test
+ * brcmsmac: Fix I/O functions for MIPS and for big-endian architectures
+ * [x86] Enable GPIO_PCH, GPIO_ML_IOH, I2C_EG20T, PCH_CAN, PCH_DMA,
+ PCH_GBE, PCH_PHUB, SERIAL_PCH_UART, SPI_TOPCLIFF_PCH, USB_GADGET,
+ USB_EG20T as modules
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 11 Dec 2011 05:28:40 +0000
+
+linux-2.6 (3.1.4-1) unstable; urgency=low
+
+ * New upstream stable updates:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.1.2
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.1.3
+ - TTY: ldisc, wait for ldisc infinitely in hangup (Closes: #645071)
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.1.4
+
+ [ Martin Michlmayr ]
+ * [armel] Set the priority of pata-modules to standard since the
+ GLAN Tank uses PATA.
+
+ [ Ben Hutchings ]
+ * Enable BCMA as module, BCMA_HOST_PCI and B43_BCMA (Closes: #649567)
+ but limit these to devices not supported by brcmsmac
+ * brcmsmac: Enable as module for all architectures
+ * Include module taint flags in bug reports
+ * lirc_serial: Fix various bugs that may result in a crash, deadlock or
+ other failure (Closes: #645811)
+ * amilo-rfkill: Use proper functions to write to the i8042 safely
+ * topology: Provide CPU topology in sysfs in !SMP configurations
+ (Closes: #649216)
+
+ [ Bastian Blank ]
+ * Include generated headers. (closes: #650085)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 29 Nov 2011 14:14:14 +0100
+
+linux-tools (3.1.1-2) unstable; urgency=low
+
+ * Change the check for stale debian/control to tolerate binNMUs
+ (Closes: #649005)
+ * Rebuild with perl 5.14 (Closes: #649006)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 17 Nov 2011 03:18:03 +0000
+
+linux-tools (3.1.1-1) unstable; urgency=low
+
+ * New upstream release
+
+ [ Bastian Blank ]
+ * Rename to linux-tools.
+ * Use 3.0 (quilt) source format.
+ * Properly patch modpost symbol prefix setting.
+ * Build linux-tools binary package.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 14 Nov 2011 04:57:47 +0000
+
+linux-2.6 (3.1.1-1) unstable; urgency=high
+
+ * New upstream stable update:
+ http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.1.1
+
+ [ Aurelien Jarno ]
+ * [s390x] Add s390x udebs, based on linux-kernel-di-s390x-2.6.
+ * [sparc64] Sync udebs with sparc.
+
+ [ Ben Hutchings ]
+ * [powerpc] Fix module selection for {ata,ide,scsi-core}-modules udebs
+ * [alpha] wire up accept4 syscall, thanks to Michael Cree
+ * iwlagn: fix modinfo display for 135 ucode (Closes: #647958)
+ * [powerpc] ptrace: Fix build with gcc 4.6
+ * [arm] add io{read,write}{16,32}be functions (fixes FTBFS)
+ * cifs, freezer: add wait_event_freezekillable and have cifs use it
+ (Closes: #488794)
+ * [alpha] Remove old, broken udeb configuration (Closes: #647586)
+ * DFSG: Remove drivers/staging/ft1000/ft1000-*/*.img, non-free
+ firmware for drivers we don't build
+ * hfs: fix hfs_find_init() sb->ext_tree NULL ptr oops (CVE-2011-2203)
+ * vmscan: fix shrinker callback bug in fs/super.c
+ * block: Always check length of all iov entries in blk_rq_map_user_iov()
+ * [x86] Add amilo-rfkill driver for some Fujitsu-Siemens Amilo laptops
+ (Closes: #631664)
+
+ [ Arnaud Patard ]
+ * [arm] add missing ioread/write be functions to ixp4xx to fix FTBFS
+ * [armhf] allow to build kernel image for iMX51 and iMX53 and enable some
+ iMX53 platforms.
+ * [armhf] add ahci for iMX53, pata for iMX51
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 13 Nov 2011 20:08:09 +0000
+
+linux-2.6 (3.1.0-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.1
+ - drm/i915: FBC off for ironlake and older, otherwise on by default
+ (Closes: #641622)
+ - drm/radeon: Update AVIVO cursor coordinate origin before x/yorigin
+ calculation (Closes: #585130)
+ - crypto: ghash - Avoid null pointer dereference if no key is set
+
+ [ Ben Hutchings ]
+ * [powerpc/powerpc64] Add missing #include to LPAR console selection fix
+ * Make kernel-wedge package checks non-fatal in experimental builds
+ * [x86/!486] Enable INTEL_IDLE
+ * aufs: Update to aufs3.1-20111031 (Closes: #644687)
+
+ [ Bastian Blank ]
+ * Use xz compression for debug packages.
+ * Make gcc-4.6 the default compiler.
+ * Use shorter versions in the package names.
+ * Remove linux-tools-* binary package.
+ * Drop external module packages stuff.
+ * Set default security module to Unix Discretionary Access Controls.
+ - Remove unneeded selinux boot parameter.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 03 Nov 2011 20:03:14 +0100
+
+linux-2.6 (3.1.0~rc7-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * Build udebs for the installer
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 25 Sep 2011 22:52:50 +0100
+
+linux-2.6 (3.1.0~rc6-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [ia64] Disable GENERIC_GPIO (fixes FTBFS)
+ * [i386] libertas: prioritize usb8388_olpc.bin firmware on OLPC machines
+ * [armel/ixp4xx] Add gpioblib support (fixes FTBFS)
+ * [i386] Fix alignment of alternative instruction entries (Closes: #640964)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 21 Sep 2011 05:45:40 +0100
+
+linux-2.6 (3.1.0~rc4-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * aufs: Disable until it is updated for Linux 3.1
+ * rt: Disable until it is updated for Linux 3.1
+ * nfs: Enable NFSv4.1/pNFS (Closes: #627655)
+ * [x86] ACPI: Enable ACPI_APEI_GHES as built-in (no longer modular).
+ Enable ACPI_APEI_MEMORY_FAILURE.
+ * netfilter: Enable IP_SET_HASH_NETIFACE as module
+ * net: Enable NFC, NFC_PN533 as modules
+ * video: Enable FB_UDL as module (Closes: #618261)
+ * target: Enable ISCSI_TARGET as module
+ * skge: Enable SKGE_GENESIS
+ * net/wireless: Enable RTL8192DE as module
+ * hwmon: Enable SENSORS_EMC2103, SENSORS_LM95245, SENSORS_MAX1668,
+ SENSORS_NTC_THERMISTOR, SENSORS_SMM665 as modules
+ * [i386] Enable GPIO_CS5535, MFD_CS5535, CS5535_MFGPT,
+ CS5535_CLOCK_EVENT_SRC, GPIO_VX855, MFD_VX855 as modules;
+ [i386/486] Enable OLPC_XO1_PM, OLPC_XO1_RTC, OLPC_XO1_SCI, OLPC_XO15_SCI
+ (Closes: #639113)
+ * media/dvb: Enable DVB_NET
+ * media/rc: Enable IR_MCE_KBD_DECODER as module
+ * gspca: Enable USB_GSPCA_SE401 as module
+ * de4x5: Disable on all architectures except alpha (Closes: #639538)
+ * wl128x: Disable on all flavours except armhf/omap
+ * Make bug script accept failure of lspci (Closes: #639439)
+ * [alpha] Disable GENERIC_GPIO (Closes: #638696)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 29 Aug 2011 14:48:28 +0100
+
+linux-2.6 (3.0.0-6) unstable; urgency=high
+
+ [ Uwe Kleine-König ]
+ * [amd64] Update rt featureset to 3.0.7-rt20
+
+ [ Bastian Blank ]
+ * Add stable 3.0.7, including:
+ - drm/radeon: Update AVIVO cursor coordinate origin before x/yorigin
+ calculation (Closes: #585130)
+ - ipv6: fix NULL dereference in udp6_ufo_fragment() (Closes: #643817)
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.0.7
+
+ [ Ben Hutchings ]
+ * [powerpc] Change ATA, PATA_MACIO from module to built-in (Closes: #641210)
+ * [powerpc] Change IDE, IDE_GD from built-in to module
+ * Add stable 3.0.8, including:
+ - cputimer: Cure lock inversion
+ - drm/ttm: ensure ttm for new node is bound before calling move_notify()
+ - drm/ttm: unbind ttm before destroying node in accel move cleanup
+ - CIFS: Fix ERR_PTR dereference in cifs_get_root
+ - xfs: start periodic workers later
+ - mm: fix race between mremap and removing migration entry
+ - x25: Prevent skb overreads when checking call user data
+ - crypto: ghash - Avoid null pointer dereference if no key is set
+ (CVE-2011-4081)
+ - hfsplus: Fix kfree of wrong pointers in hfsplus_fill_super() error path
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.0.8
+ * [{mips,mipsel}/{4,5}kc-malta] Disable X.25, as in all other configurations
+ * ark3116: Fix initialisation order (Closes: #640391)
+ * Add empty files to trigger generation of kernel-image udebs
+ * aufs: Update to aufs3.0-20111031 (Closes: #644687)
+ * xfs: Fix possible memory corruption in xfs_readlink (CVE-2011-4077)
+ * oom: fix integer overflow of points in oom_badness (CVE-2011-4097)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 01 Nov 2011 14:50:06 +0000
+
+linux-2.6 (3.0.0-5) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * Bump ABI to 2
+ * kobj_uevent: Ignore if some listeners cannot handle message
+ (Closes: #641661)
+ * Build udebs for the installer
+ * Add stable 3.0.5 and 3.0.6, including:
+ - TTY: pty, fix pty counting
+ - pata_via: disable ATAPI DMA on AVERATEC 3200
+ - atm: br2684: Fix oops due to skb->dev being NULL
+ - alarmtimers: Avoid possible null pointer traversal
+ - alarmtimers: Memset itimerspec passed into alarm_timer_get
+ - alarmtimers: Avoid possible denial of service with high freq periodic
+ timers
+ - rtc: Fix RTC PIE frequency limit
+ - x86, perf: Check that current->mm is alive before getting user callchain
+ - xen/smp: Warn user why they keel over - nosmp or noapic and what to use
+ instead. (Closes: #637308)
+ - drm/nouveau: properly handle allocation failure in nouveau_sgdma_populate
+ - net/9p: fix client code to fail more gracefully on protocol error
+ - virtio: Fix the size of receive buffer packing onto VirtIO ring.
+ - virtio: VirtIO can transfer VIRTQUEUE_NUM of pages.
+ - fs/9p: Fid is not valid after a failed clunk.
+ - fs/9p: When doing inode lookup compare qid details and inode mode bits.
+ - fs/9p: Always ask new inode in create
+ - net/9p: Fix the msize calculation.
+ - 9p: close ACL leaks
+ - fs/9p: Add fid before dentry instantiation
+ - net/9p: Fix kernel crash with msize 512K
+ - fs/9p: Always ask new inode in lookup for cache mode disabled
+ - vfs: restore pinning the victim dentry in vfs_rmdir()/vfs_rename_dir()
+ - cifs: fix possible memory corruption in CIFSFindNext (CVE-2011-3191)
+ - writeback: introduce .tagged_writepages for the WB_SYNC_NONE sync stage
+ - writeback: update dirtied_when for synced inode to prevent livelock
+ - fib:fix BUG_ON in fib_nl_newrule when add new fib rule
+ - scm: Capture the full credentials of the scm sender
+ - vlan: reset headers on accel emulation path
+ - xfrm: Perform a replay check after return from async codepaths
+ - bridge: Pseudo-header required for the checksum of ICMPv6
+ - bridge: fix a possible use after free
+ - TPM: Call tpm_transmit with correct size (CVE-2011-1161)
+ - TPM: Zero buffer after copying to userspace (CVE-2011-1162)
+ - ALSA: fm801: Gracefully handle failure of tuner auto-detect
+ (Closes: #641946)
+ - btrfs: fix d_off in the first dirent
+ - ARM: 7091/1: errata: D-cache line maintenance operation by MVA may not
+ succeed
+ - ARM: 7099/1: futex: preserve oldval in SMP __futex_atomic_op
+ - ALSA: usb-audio: Check for possible chip NULL pointer before clearing
+ probing flag
+ - cfg80211: Fix validation of AKM suites
+ - iwlagn: fix dangling scan request
+ - block: Free queue resources at blk_release_queue() (Closes: #631187)
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.0.5
+ http://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.0.6
+ * Make taskstats require root access (CVE-2011-2494)
+
+ [ Uwe Kleine-König ]
+ * [amd64] Update rt featureset to 3.0.6-rt16 (Closes: #643301)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 05 Oct 2011 15:14:34 +0100
+
+linux-2.6 (3.0.0-4) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * Make bug script accept failure of lspci (Closes: #639439)
+ * [alpha] Disable GENERIC_GPIO (Closes: #638696)
+ * Add stable 3.0.4, including:
+ - loop: fix deadlock when sysfs and LOOP_CLR_FD race against each other
+ - Btrfs: fix an oops of log replay
+ - ext4: Fix ext4_should_writeback_data() for no-journal mode
+ - ext4: call ext4_ioend_wait and ext4_flush_completed_IO in ext4_evict_inode
+ - ext4: Resolve the hang of direct i/o read in handling
+ EXT4_IO_END_UNWRITTEN.
+ - ext4: fix nomblk_io_submit option so it correctly converts uninit blocks
+ - xen-blkfront: Drop name and minor adjustments for emulated scsi devices
+ - xen/x86: replace order-based range checking of M2P table by linear one
+ - rt2x00: fix order of entry flags modification
+ - Add a personality to report 2.6.x version numbers
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.0.4
+ * sendmmsg/sendmsg: fix unsafe user pointer access
+ * rt2x00: fix crash in rt2800usb_write_tx_desc
+ * rt2x00: fix crash in rt2800usb_get_txwi (Closes: #636531)
+ * [sparc] Only Panther cheetah+ chips have POPC (Closes: #639949)
+ * uvcvideo: Fix crash when linking entities (Closes: #637740)
+ * Update Spanish debconf template translations (Omar Campagne)
+ (Closes: #636242)
+
+ [ Moritz Muehlenhoff ]
+ * Update German Debconf translation. Thanks to Holger Wansing
+ (Closes: #641487)
+
+ [ Uwe Kleine-König ]
+ * [amd64] Update rt featureset to 3.0.4-rt14
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 19 Sep 2011 14:40:42 +0100
+
+linux-2.6 (3.0.0-3) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * Disable SENSORS_SHT15, unlikely to be usable on any supported platform
+ (Closes: #638696)
+ * Add stable 3.0.3, including:
+ - atm: br2864: sent packets truncated in VC routed mode (Closes: #638656)
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.0.3
+ * netfilter: TCP and raw fix for ip_route_me_harder (fixes case where
+ SNAT/masquerading is not done)
+ * Remove net device features from bug reports (Closes: #638956)
+ * [mips,mipsel] Ignore nfs ABI changes made in 3.0.0-2; fixes FTBFS
+ * genirq: Fix wrong bit operation
+ * befs: Validate length of long symbolic links (CVE-2011-2928)
+ * CIFS: Fix memory corruption on mount (Closes: #635344)
+ * x86-32, vdso: On system call restart after SYSENTER, use int $0x80
+ * drm/ttm: fix ttm_bo_add_ttm(user) failure path
+ * fuse: check size of FUSE_NOTIFY_INVAL_ENTRY message
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 27 Aug 2011 08:04:02 +0100
+
+linux-2.6 (3.0.0-2) unstable; urgency=high
+
+ [ Aurelien Jarno ]
+ * Add configuration files for s390x architecture.
+
+ [ Ben Hutchings ]
+ * linux-libc-dev: Install include/asm under arch-specific directory
+ (thanks to Aurelien for correcting the directory); mark package as
+ multi-arch-coinstallable (Multi-Arch: same)
+ * [powerpc] Use libata-based drivers for most PATA controllers
+ (Closes: #636854):
+ - Various drivers replaced as for x86 in 2.6.32-10
+ - pata_macio replaces ide_pmac
+ * Add stable 3.0.2, including:
+ - net: Cap number of elements for sendmmsg
+ - net: Fix security_socket_sendmsg() bypass problem
+ - [x86] xen: allow enable use of VGA console on dom0
+ - net: Compute protocol sequence numbers and fragment IDs using MD5
+ - cifs: cope with negative dentries in cifs_get_root
+ - ALSA: snd-usb: avoid dividing by zero on invalid input
+ - ipv6: make fragment identifications less predictable (CVE-2011-2699)
+ - sch_sfq: fix sfq_enqueue() (Closes: #631945)
+ - gre: fix improper error handling
+ - ecryptfs: Add mount option to check uid of device being mounted
+ = expect uid
+ - ecryptfs: Return error when lower file pointer is NULL
+ - ext{3,4}: Properly count journal credits for long symlinks
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.0.2
+ * [x86] Enable RTS_PSTOR as module
+
+ [ maximilian attems ]
+ * Add stable 3.0.1, including:
+ - gro: Only reset frag0 when skb can be pulled (CVE-2011-2723)
+ - staging: comedi: fix infoleak to userspace (CVE-2011-2909)
+ - rtc: limit frequency
+ - CIFS: Fix oops while mounting with prefixpath
+ - [SCSI] fix crash in scsi_dispatch_cmd()
+ - tracing: Fix bug when reading system filters on module removal
+ - tracing: Have "enable" file use refcounts like the "filter" file
+ - ext4: fix i_blocks/quota accounting when extent insertion fails
+ - ext4: free allocated and pre-allocated blocks when check_eofblocks_fl
+ fails
+ - ext3: Fix oops in ext3_try_to_allocate_with_rsv()
+ - nfsd4: remember to put RW access on stateid destruction
+ - nfsd4: fix file leak on open_downgrade
+ - NFS: Fix spurious readdir cookie loop messages
+ - proc: fix a race in do_io_accounting()
+ - ipc/sem.c: fix race with concurrent semtimedop() timeouts and IPC_RMID
+ - [armel,armhf,hppa] dm io: flush cpu cache with vmapped io
+ - dm snapshot: flush disk cache when merging
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.0.1
+
+ [ Jonathan Nieder ]
+ * perf: do not look at ./config for configuration (Closes: #632923)
+ (CVE-2011-2905)
+
+ [ Uwe Kleine-König ]
+ * [amd64] Update rt featureset to 3.0.1-rt11
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 16 Aug 2011 06:08:53 +0100
+
+linux-kbuild-2.6 (3.0.0-2) unstable; urgency=low
+
+ * Include new script depmod.sh (Closes: #635539)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 29 Jul 2011 01:00:20 +0200
+
+linux-kbuild-2.6 (3.0.0-1) unstable; urgency=low
+
+ * New upstream release
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 24 Jul 2011 15:38:35 +0200
+
+linux-2.6 (3.0.0-1) unstable; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_3.0
+
+ [ maximilian attems ]
+ * Topconfig enable modular VIDEO_SR030PC30, VIDEO_NOON010PC30,
+ SOC_CAMERA_IMX074, SOC_CAMERA_OV2640, SOC_CAMERA_OV6650,
+ SOC_CAMERA_OV9740, USB_YUREX.
+ * [x86] enable modular VIDEO_VIA_CAMERA.
+ * [x86_32] enable modular XO15_EBOOK.
+ * ALSA: hda - Enable auto-parser as default for Conexant codecs.
+
+ [ Ben Hutchings ]
+ * linux-support, linux-tools: Use dh_python2 instead of dh_pysupport
+ * aufs: Update for 3.0
+ * [amd64] Enable PCMCIA_AHA152X as module (Closes: #632929)
+ * Update debconf template translations:
+ - Slovak (Slavko)
+ * [x86] comedi: Enable the same drivers as in stable (squeeze), except
+ for ISA drivers on amd64 (Closes: #633516)
+ * Reduce required initramfs-tools version to 0.99~, to ease backporting
+ * [armhf/mx5] Explicitly configure this flavour to support i.MX51; it
+ is not currently possible to support other i.MX5x processors as well
+
+ [ Arnaud Patard ]
+ * Merge ixp4xx build fix and enable ixp4xx back
+
+ [ Aurelien Jarno ]
+ * [mips/octeon] Disable MEGARAID_SAS, SUSPEND, HIBERNATION, PM_RUNTIME.
+ Enable FUSION, FUSION_SAS, HW_RANDOM, HW_RANDOM_OCTEON,
+ OCTEON_MGMT_ETHERNET, CONFIG_OCTEON_ETHERNET.
+
+ [ Bastian Blank ]
+ * [xen] Allow autoloading of backend drivers.
+
+ [ Uwe Kleine-König ]
+ * [amd64] Add rt featureset with 3.0-rt2 patch set
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 24 Jul 2011 02:42:27 +0200
+
+linux-2.6 (3.0.0~rc6-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ maximilian attems ]
+ * Topconfig enable modular USB_NET_KALMIA, I2C_DIOLAN_U2C, SMBUS,
+ SENSORS_SMBUS, SENSORS_SHT21, SENSORS_EMC6W201, SENSORS_SCH5627,
+ SENSORS_ADS1015, SENSORS_W83795, SENSORS_DS620, SENSORS_LINEAGE,
+ SENSORS_LTC4151, SENSORS_LTC4261, SENSORS_MAX16065, SENSORS_MAX6639,
+ SENSORS_MAX6642, BT_WILINK.
+ * [x86_32] enable modular I2C_PXA.
+ * [x86] enable modular SENSORS_FAM15H_POWER.
+ * drm/i915: Hold struct_mutex during i915_save_state/i915_restore_state.
+ * [thinkpad]: Add KEY_MICMUTE and enable it on Lenovo X220.
+ * [m68k]: resources: Add lookup_resource().
+ * m68k/atari: Reserve some ST-RAM early on for device buffer use.
+ * ALSA: hda - Handle -1 as invalid position, too
+ * ALSA: hda - Judge playback stream from stream id in azx_via_get_position()
+
+ [ Ben Hutchings ]
+ * [x86] Enable SCSI_ISCI as module
+
+ -- maximilian attems <maks@debian.org> Tue, 05 Jul 2011 11:05:43 +0200
+
+linux-kbuild-2.6 (3.0.0~rc5-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 29 Jun 2011 02:32:31 +0100
+
+linux-2.6 (3.0.0~rc5-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+ - fix wrong iput on d_inod. (closes: #631255, #631802)
+
+ [ maximilian attems ]
+ * [x86] enable some comedi modules. (closes: #631199)
+ * [kirkwood] Enable sound support for the HP t5325 (closes: #631762)
+
+ [ Arnaud Patard ]
+ * [armel] disable ixp4xx, until upstream agrees on how to fix
+ the build error
+ * [armel] Remove configuration options which don't exist anymore
+ * [armhf] disable net dma/async tx on mx5 as it can't work
+
+ -- maximilian attems <maks@debian.org> Tue, 28 Jun 2011 11:55:21 +0200
+
+linux-2.6 (3.0.0~rc4-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+ - drm/i915: Fixes. (closes: #627976)
+
+ [ maximilian attems ]
+ * [x86] enable modular INTEL_OAKTRAIL, ACPI_APEI_PCIEAER.
+ * Topconfig enable modular RADIO_WL1273, RADIO_WL128X.
+
+ [ Ben Hutchings ]
+ * rt2800pci: Add device ID for RT539F device (Closes: #630960)
+ * atm: Enable for all architectures except m68k, s390 (Closes: #630900)
+
+ -- maximilian attems <maks@debian.org> Tue, 21 Jun 2011 15:00:23 +0200
+
+linux-2.6 (3.0.0~rc3-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [i386] idle: EXPORT_SYMBOL(default_idle, pm_idle) if
+ CONFIG_APM_MODULE (only); fixes FTBFS
+
+ [ maximilian attems ]
+ * Update configs.
+ * Topconfig enable BPF_JIT. (closes: #630553)
+ * Update debconf pt (Américo Monteiro) translations. (closes: #627631)
+ * Add kbuild fixes out of linux-next.
+
+ -- maximilian attems <maks@debian.org> Thu, 16 Jun 2011 15:04:33 +0200
+
+linux-2.6 (3.0.0~rc2-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ maximilian attems ]
+ * Newer Standards-Version 3.9.2 without changes.
+
+ [ Hector Oron ]
+ * [armel/iop32x] Fix FTBFS (Closes: #629342)
+
+ [ Aurelien Jarno ]
+ * [mips,mipsel] Update arch/mips/kernel/i8259.c to fix FTBFS.
+ * [mips,mipsel] Remove explicit disable of CONFIG_DRM_NOUVEAU and
+ CONFIG_DRM_RADEON_KMS.
+
+ [ Ben Hutchings ]
+ * perf: Cancel -Werror compiler option; fixes FTBFS with perl 5.14
+ * qla4xxx: Remove our fix for #598503; it has now been fixed upstream
+ in a different way and the two changes resulted in FTBFS
+ * [ia64] nouveau: Disable ACPI support. It probably wasn't very useful
+ on ia64, and now depends on mxm-wmi which is definitely x86-only.
+ * Make gcc-4.5 the default compiler (except for alpha, hppa and m68k)
+ * Restore xen-linux-system-<version>-<flavour> packages
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 09 Jun 2011 01:10:53 +0100
+
+linux-kbuild-2.6 (3.0.0~rc1-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+ * Remove docproc, no longer required for module builds
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 01 Jun 2011 10:21:01 +0100
+
+linux-2.6 (3.0.0~rc1-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [x86] Enable BACKLIGHT_APPLE, replacing BACKLIGHT_MBP_NVIDIA
+ (Closes: #627492)
+ * cgroups: Disable memory resource controller by default. Allow it
+ to be enabled using kernel parameter 'cgroup_enable=memory'.
+ * rt2800usb: Enable support for more USB devices including
+ Linksys WUSB600N (Closes: #596626) (this change was accidentally
+ omitted from 2.6.39-1)
+ * fs: Enable FHANDLE
+ * cgroups: Enable CGROUP_MEM_RES_CTLR_SWAP but not
+ CGROUP_MEM_RES_CTLR_SWAP_ENABLED. Swap accounting can be enabled
+ using kernel parameter 'swapaccount'.
+ * ipv4: Enable IP_FIB_TRIE_STATS
+ * netfilter: Enable IP_SET, IP_SET_BITMAP_IP, IP_SET_BITMAP_IPMAC,
+ IP_SET_BITMAP_PORT, IP_SET_HASH_IP, IP_SET_HASH_IPPORT,
+ IP_SET_HASH_IPPORTIP, IP_SET_HASH_IPPORTNET, IP_SET_HASH_NET,
+ IP_SET_HASH_NETPORT, IP_SET_LIST_SET, NETFILTER_XT_SET as modules
+ * net/sched: Enable NET_SCH_QFQ as module
+ * can: Enable CAN_SOFTING, CAN_SOFTING_CS as modules
+ * mtd: Enable MTD_SWAP as module
+ * of, proc: Enable PROC_DEVICETREE
+ * dm: Enable DM_RAID, DM_FLAKEY as modules. Note these are currently
+ experimental.
+ * target: Enable TCM_FC as module
+ * net/wireless/ath: Enable CARL9170 as module (carl9170, replacing
+ ar9170usb)
+ * rtlwifi: Enable RTL8192SE as module (Closes: #590280)
+ * net/wireless: Enable MWIFIEX, MWIFIEX_SDIO as modules
+ * net/usb: Enable USB_VL600 as module
+ * tablet: Enable drivers for all possible architectures and flavours
+ * tablet: Enable TABLET_USB_HANWANG as module
+ * pps: Enable PPS_CLIENT_PARPORT as module
+ * ptp: Enable PTP_1588_CLOCK, PTP_1588_CLOCK_GIANFAR,
+ PTP_1588_CLOCK_IXP46X as modules
+ * [x86] watchdog: Enable SP5100_TCO, NV_TCO as modules
+ * media/rc: Enable IR_REDRAT3, RC_LOOPBACK as module
+ * [x86] media/rc: Enable IR_ITE_CIR, IR_FINTEK as modules
+ * gspca: Enable USB_GSPCA_KINECT as module
+ * [i386] radio: Enable RADIO_MIROPCM20 as module
+ * s3fb: Enable FB_S3_DDC
+ * viafb: Enable FB_VIA_X_COMPATIBILITY
+ * es1968: Enable SND_ES1968_RADIO
+ * sound: Enable SND_ISIGHT, SND_LOLA as modules
+ * hid: Enable HID_ACRUX, HID_EMS_FF, HID_KEYTOUCH, HID_LCPOWER,
+ HID_MULTITOUCH, HID_ROCCAT_ARVO, HID_ROCCAT_KONEPLUS,
+ HID_ROCCAT_KOVAPLUS as modules
+ * usb-storage: Enable USB_STORAGE_REALTEK, USB_STORAGE_ENE_UB6250 as
+ modules
+ * mmc: Enable MMC_VUB300, MMC_USHC as modules
+ * memstick: Enable MEMSTICK_R592 as module
+ * [x86] edac: Enable EDAC_I7300 as module
+ * [i386] staging, video: Enable FB_OLPC_DCON as module
+ * [x86] staging, drm: Enable DRM_PSB as module
+ * crypto, net: Enable CRYPTO_USER_API_HASH, CRYPTO_USER_API_SKCIPHER as
+ modules
+ * [x86] block, xen: Enable XEN_BLKDEV_BACKEND as module
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 01 Jun 2011 06:41:14 +0100
+
+linux-2.6 (2.6.39-3) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * [x86] i915: Revert "drm/i915: Enable GMBUS for post-gen2 chipsets"
+ (Closes: #627575)
+ * linux-source-<version>: Suggest libqt4-dev (for 'make xconfig')
+ instead of libqt3-mt-dev (Closes: #631666)
+ * [armhf] Add omap flavour, thanks to Sebastian Reichel
+ * [armhf] rtc-twl: Switch to using threaded irq
+ * bridge/netfilter: provide a cow_metrics method for fake_ops
+ (Closes: #629932)
+ * Update debconf template translations:
+ - Danish (Joe Dalton) (Closes: #632551)
+ - Slovak (Slavko) (Closes: #608684)
+ * partitions/efi: Fix crash (oops) caused by corrupted GUID partition
+ table (CVE-2011-1577)
+ * ksm: fix NULL pointer dereference in scan_get_next_rmap_item()
+ (CVE-2011-2183)
+ * inet_diag: Fix infinite loop in inet_diag_bc_audit() (CVE-2011-2213)
+ * taskstats: don't allow duplicate entries in listener mode (CVE-2011-2484)
+ * bluetooth: Prevent buffer overflow in l2cap config request
+ (CVE-2011-2497)
+
+ [ maximilian attems ]
+ * Add stable 2.6.39.2, including:
+ - block: Fix crash (oops) in blkdev_get() on failed exclusive open
+ (Closes: #631574)
+ - nl80211: fix check for valid SSID size in scan operations (CVE-2011-2517)
+ - drm/radeon/kms: viewport height has to be even
+ - drm/radeon/kms: fix for radeon on systems >4GB without hardware iommu
+ - fat: Fix corrupt inode flags when remove ATTR_SYS flag
+ - scsi: Fix oops caused by queue refcounting failure
+ - cifs: don't allow cifs_reconnect to exit with NULL socket pointer
+ - drm/radeon/kms: do bounds checking for 3D_LOAD_VBPNTR and bump array
+ limit
+ - TOMOYO: Fix oops in tomoyo_mount_acl() (CVE-2011-2518)
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.39.2
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 04 Jul 2011 07:08:10 +0100
+
+linux-2.6 (2.6.39-2) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * [x86] Enable BACKLIGHT_APPLE, replacing BACKLIGHT_MBP_NVIDIA
+ (Closes: #627492)
+ * cgroups: Disable memory resource controller by default. Allow it
+ to be enabled using kernel parameter 'cgroup_enable=memory'.
+ * rt2800usb: Enable support for more USB devices including
+ Linksys WUSB600N (Closes: #596626) (this change was accidentally
+ omitted from 2.6.39-1)
+ * [x86] Remove Celeron from list of processors supporting PAE. Most
+ 'Celeron M' models do not.
+ * Update debconf template translations:
+ - Swedish (Martin Bagge) (Closes: #628932)
+ - French (David Prévot) (Closes: #628191)
+ * aufs: Update for 2.6.39 (Closes: #627837)
+ * Add stable 2.6.39.1, including:
+ - ext4: dont set PageUptodate in ext4_end_bio()
+ - pata_cmd64x: fix boot crash on parisc (Closes: #622997, #622745)
+ - ext3: Fix fs corruption when make_indexed_dir() fails
+ - netfilter: nf_ct_sip: validate Content-Length in TCP SIP messages
+ - sctp: fix race between sctp_bind_addr_free() and
+ sctp_bind_addr_conflict()
+ - sctp: fix memory leak of the ASCONF queue when free asoc
+ - md/bitmap: fix saving of events_cleared and other state
+ - cdc_acm: Fix oops when Droids MuIn LCD is connected
+ - cx88: Fix conversion from BKL to fine-grained locks (Closes: #619827)
+ - keys: Set cred->user_ns in key_replace_session_keyring (CVE-2011-2184)
+ - tmpfs: fix race between truncate and writepage
+ - nfs41: Correct offset for LAYOUTCOMMIT
+ - xen/mmu: fix a race window causing leave_mm BUG()
+ - ext4: fix possible use-after-free in ext4_remove_li_request()
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.39.1
+ * Bump ABI to 2
+ * netfilter: Enable IP_SET, IP_SET_BITMAP_IP, IP_SET_BITMAP_IPMAC,
+ IP_SET_BITMAP_PORT, IP_SET_HASH_IP, IP_SET_HASH_IPPORT,
+ IP_SET_HASH_IPPORTIP, IP_SET_HASH_IPPORTNET, IP_SET_HASH_NET,
+ IP_SET_HASH_NETPORT, IP_SET_LIST_SET, NETFILTER_XT_SET as modules
+ (Closes: #629401)
+
+ [ Aurelien Jarno ]
+ * [mipsel/loongson-2f] Disable_SCSI_LPFC to workaround GCC ICE.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 07 Jun 2011 12:14:05 +0100
+
+linux-kbuild-2.6 (2.6.39-1) unstable; urgency=low
+
+ * New upstream release
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 20 May 2011 04:53:57 +0100
+
+linux-2.6 (2.6.39-1) unstable; urgency=low
+
+ [ maximilian attems ]
+ * [x86] Enable CRYPTO_AES_NI_INTEL for all flavours. (closes: #623631)
+ * topconfig: Enable SND_USB_6FIRE, SND_FIREWIRE_SPEAKERS,
+ MEDIA_CONTROLLER, DVB_USB_TECHNISAT_USB2, USB_GSPCA_NW80X,
+ USB_GSPCA_VICAM, XEN_WDT, LOOPBACK_TARGET.
+ * [x86] Enable modular XEN_NETDEV_BACKEND.
+ * topconfig enable mem cgroup RESOURCE_COUNTERS, CGROUP_MEM_RES_CTLR.
+ (closes: #534964)
+ * Cleanup configs.
+
+ [ Ben Hutchings ]
+ * [!x86] Disable TPM drivers. TPMs are currently only fitted in PCs.
+ * rt2800usb: Enable support for more USB devices including
+ Linksys WUSB600N (Closes: #596626)
+ * mm: Select SLAB allocator again. Although SLUB is currently the
+ upstream default, this was set as an experiment rather than a
+ recommendation! SLUB generally has poorer performance than SLAB on
+ larger systems.
+ * postinst: Remove specific support for running a ramdisk creator;
+ warn users that specify one in /etc/kernel-img.conf
+ * Require initramfs-tools >= 0.99, which installs a postinst hook
+
+ [ Arnaud Patard ]
+ * [armel] Disable eeti touchscreen driver due to missing irq_to_gpio on
+ several platforms.
+
+ -- maximilian attems <maks@debian.org> Thu, 19 May 2011 15:34:37 +0200
+
+linux-2.6 (2.6.39~rc7-1~experimental.1) experimental; urgency=low
+
+ * [x86] Enable modular ASUS_WMI and ASUS_NB_WMI. (closes: #626141)
+ * [x86] Enable modular DELL_WMI_AIO, HP_ACCEL, INTEL_IPS, ACPI_IPMI.
+ * [x86/486] Enable modular XO1_RFKILL, XO15_EBOOK.
+ * topconfig: Enable modular NF_CONNTRACK_TIMESTAMP, NF_CONNTRACK_SNMP,
+ NETFILTER_XT_TARGET_AUDIT, NETFILTER_XT_MATCH_ADDRTYPE,
+ NETFILTER_XT_MATCH_DEVGROUP, NET_SCH_SFB, NET_SCH_MQPRIO, NET_SCH_CHOKE,
+ SATA_ACARD_AHCI, PATA_ARASAN_CF, SCSI_BNX2X_FCOE.
+ * Add nl debconf template translation. (closes: #622967)
+ Thanks willem kuyn <willemkuyn@gmail.com>.
+ * topconfig Enable modular RTL8192CU. (closes: #625613)
+
+ -- maximilian attems <maks@debian.org> Tue, 10 May 2011 15:11:00 +0200
+
+linux-2.6 (2.6.39~rc6-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ maximilian attems ]
+ * Enable SQUASHFS_{LZO,XZ}. (closes: #613658)
+ * [x86] Enable EASYCAP. (closes: #624505)
+
+ [ Ben Hutchings
+ * xhci-hcd: Include <linux/slab.h> in xhci-pci.c (fixes FTBFS on armel)
+ * [x86] Enable BRCMSMAC; the brcmsmac module replaces brcm80211
+ (Closes: #625510)
+
+ [ Aurelien Jarno ]
+ * drm/nouveau, drm/radeon: remove fix for non-powerpc/sparc/x86.
+ * [mips,mipsel] Disabled CONFIG_DRM_NOUVEAU and CONFIG_DRM_RADEON_KMS.
+ * [mips/octeon] Disabled CONFIG_HOTPLUG_CPU and CONFIG_PM.
+
+ -- maximilian attems <maks@debian.org> Sun, 08 May 2011 12:23:15 +0200
+
+linux-2.6 (2.6.39~rc5-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [powerpc] kexec: Fix build failure on 32-bit SMP
+ * net/wireless: Adjust config for iwlegacy/iwlwifi split (Closes: #624124)
+ - Enable IWLWIFI_LEGACY as module
+ - Enable IWL4965 as module; it is no longer part of the iwlagn module
+ * [armhf] Actually install zImage into the linux-image package, thanks to
+ Sebastian Reichel
+ * [armhf] Build a linux-tools package
+ * Fix configuration for features that are no longer modular, thanks to
+ Sedat Dilek (Closes: #624372):
+ - bluetooth: Re-enable BT_L2CAP and BT_SCO as part of bluetooth module
+ - leds: Explicitly enable LEDS_CLASS as built-in
+ - mfd: Explicitly disable MFD_WM8994
+
+ [ Aurelien Jarno ]
+ * drm/nouveau, drm/radeon: fix build failure on mips.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 29 Apr 2011 06:04:13 +0100
+
+linux-2.6 (2.6.39~rc4-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [i386] Rename '686-bigmem' flavour to '686-pae'; remove '686' flavour.
+ For 686-class systems without PAE, the '486' flavour is more efficient
+ than the '686' flavour due to optimisation for uniprocessor systems.
+ * Add armhf architecture with mx5 flavour, thanks to Hector Oron and
+ Vagrant Cascadian (Closes: #621032)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 24 Apr 2011 03:21:31 +0100
+
+linux-2.6 (2.6.38-5) unstable; urgency=medium
+
+ [ Thorsten Glaser ]
+ * [m68k] atari: Enable and compile in generic RTC
+ * [m68k] Backport the most urgent fixes from 2.6.39
+ - Add helper functions to handle kernel faults, traps and
+ exceptions better (used by the other patches below)
+ - Add improved support for running under the ARAnyM emulator
+ (its native features interface) and emulated hardware
+ + block access (similar to virtio-block)
+ + console access (redirection to stdout)
+ + network access (Ethernet) (Closes: #599121)
+ * [m68k] Add patch from queue fixing atarifb console output on
+ machines with a lot of FastRAM by reserving some ST-RAM early
+ * [m68k] Add patch from mm mailing list to fix SLUB breakage
+
+ [ Aurelien Jarno ]
+ * [mips/octeon] Disable CONFIG_HOTPLUG_CPU.
+
+ [ Ben Hutchings ]
+ * rt2800pci, rt2800usb: Enable experimental support for more recent
+ chips (Closes: #623808)
+ * [x86] staging: Enable EASYCAP as module (Closes: #624505)
+ * Add stable 2.6.38.5, including:
+ - p54: Initialize extra_len in p54_tx_80211
+ - nfsd4: Fix filp leak (regression introduced in 2.6.38.3)
+ - radeon: PLL tweaks for R7xx
+ - nouveau: Fix notifier memory corruption bug
+ - radeon: Fix bad shift in atom iio table parser
+ - [x86] i915: Sanitize the output registers after resume
+ - [x86] ideapad: Read brightness setting on brightness key notify
+ - ath9k_hw: Partially revert "fix dma descriptor rx error bit parsing"
+ - [s390] pfault: fix token handling
+ - ACPI/PM: Avoid infinite recurrence while registering power resources
+ - [hppa] slub: Disable use with DISCONTIGMEM && !NUMA
+ - vfs: avoid large kmalloc()s for the fdtable
+ - agp: Fix arbitrary kernel memory writes (CVE-2011-1745)
+ - agp: Fix OOM and buffer overflow (CVE-2011-1746)
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.38.5
+ * [hppa] Bump ABI to 2a
+ * mpt2sas: Prevent heap overflows and unchecked reads
+ (CVE-2011-1494, CVE-2011-1495)
+ * [armel] Prevent heap corruption in OABI semtimedop
+ * can: Add missing socket check in can/bcm release (CVE-2011-1598)
+ * ldm: Disable broken support for VBLK fragments (CVE-2011-1017)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 07 May 2011 21:24:55 +0100
+
+linux-2.6 (2.6.38-4) unstable; urgency=low
+
+ * usb-audio: Define another USB ID for a buggy USB MIDI cable
+ (Closes: #617743)
+ * net: Enable BATMAN_ADV as module (Closes: #622361)
+ * Add stable 2.6.38.3, including:
+ - eCryptfs: Unlock page in write_begin error path
+ - irda: validate peer name and attribute lengths (CVE-2011-1180)
+ - irda: prevent heap corruption on invalid nickname
+ - nilfs2: fix data loss in mmap page write for hole blocks
+ - ALSA: pcm: fix infinite loop in snd_pcm_update_hw_ptr0()
+ - inotify: fix double free/corruption of stuct user
+ - perf: Fix task_struct reference leak
+ - ROSE: prevent heap corruption with bad facilities (CVE-2011-1493)
+ - [x86] mtrr, pat: Fix one cpu getting out of sync during resume
+ - Input: synaptics - fix crash in synaptics_module_init()
+ - ath9k: fix a chip wakeup related crash in ath9k_start
+ - mac80211: fix a crash in minstrel_ht in HT mode with no supported MCS
+ rates
+ - UBIFS: fix oops on error path in read_pnode
+ - quota: Don't write quota info in dquot_commit()
+ - mm: avoid wrapping vm_pgoff in mremap()
+ - wl12xx: fix potential buffer overflow in testmode nvs push
+ - Bluetooth: sco: fix information leak to userspace (CVE-2011-1078)
+ - bridge: netfilter: fix information leak (CVE-2011-1080)
+ - Bluetooth: bnep: fix buffer overflow (CVE-2011-1079)
+ - netfilter: ip_tables: fix infoleak to userspace (CVE-2011-1171)
+ - netfilter: arp_tables: fix infoleak to userspace (CVE-2011-1170)
+ - [x86] Revert "x86: Cleanup highmap after brk is concluded"
+ (Closes: #621072)
+ - Squashfs: handle corruption of directory structure
+ - ext4: fix a double free in ext4_register_li_request
+ - ext4: fix credits computing for indirect mapped files
+ - nfsd: fix auth_domain reference leak on nlm operations
+ - nfsd4: fix oops on lock failure
+ - char/tpm: Fix unitialized usage of data buffer (CVE-2011-1160)
+ - ipv6: netfilter: ip6_tables: fix infoleak to userspace (CVE-2011-1172)
+ - econet: 4 byte infoleak to the network (CVE-2011-1173)
+ - sound/oss: remove offset from load_patch callbacks
+ (CVE-2011-1476, CVE-2011-1477)
+ - inotify: fix double free/corruption of stuct user (CVE-2011-1479)
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.38.3
+ * Add stable 2.6.38.4, including:
+ - vm: Fix vm_pgoff wrap in stack expansion
+ - cifs: Always do is_path_accessible check in cifs_mount
+ - cifs: Check for private_data before trying to put it
+ - sn9c102: Restrict world-wirtable sysfs files
+ - UBIFS: Restrict world-writable debugfs files
+ - vm: Fix mlock() on stack guard page
+ - UBIFS: Fix assertion warnings
+ - perf: Fix task context scheduling
+ - fib: Add rtnl locking in ip_fib_net_exit
+ - l2tp: Fix possible oops on l2tp_eth module unload
+ - ipv6: Fix duplicate /proc/sys/net/ipv6/neigh directory entries.
+ - net_sched: fix ip_tos2prio
+ - pppoe: drop PPPOX_ZOMBIEs in pppoe_flush_dev
+ - xfrm: Refcount destination entry on xfrm_lookup
+ - vlan: Take into account needed_headroom
+ - bridge: Reset IPCB when entering IP stack on NF_FORWARD
+ - futex: Set FLAGS_HAS_TIMEOUT during futex_wait restart setup
+ - oom-kill: Remove boost_dying_task_prio()
+ - UBIFS: Fix oops when R/O file-system is fsync'ed
+ - sched: Fix erroneous all_pinned logic
+ - vmscan: all_unreclaimable() use zone->all_unreclaimable as a name
+ - next_pidmap: fix overflow condition
+ - proc: Do proper range check on readdir offset
+ - [powerpc] Fix oops if scan_dispatch_log is called too early
+ - ehci: Unlink unused QHs when the controller is stopped
+ - USB: Fix formatting of SuperSpeed endpoints in /proc/bus/usb/devices
+ - xhci: Fix math in xhci_get_endpoint_interval()
+ - xhci: Also free streams when resetting devices
+ - USB: Fix unplug of device with active streams
+ - bluetooth: Fix HCI_RESET command synchronization
+ - bridge: Reset IPCB in br_parse_ip_options
+ - ip: ip_options_compile() resilient to NULL skb route
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.38.4
+ * [s390] pfault: fix token handling (Closes: #622570)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 23 Apr 2011 03:17:53 +0100
+
+linux-2.6 (2.6.38-3) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * [ppc64] Add to linux-tools package architectures (Closes: #620124)
+ * [amd64] Save cr4 to mmu_cr4_features at boot time (Closes: #620284)
+ * appletalk: Fix bugs introduced when removing use of BKL
+ * ALSA: Fix yet another race in disconnection
+ * cciss: Fix lost command issue
+ * ath9k: Fix kernel panic in AR2427
+ * ses: Avoid kernel panic when lun 0 is not mapped
+ * PCI/ACPI: Report ASPM support to BIOS if not disabled from command line
+
+ [ Aurelien Jarno ]
+ * rtlwifi: fix build when PCI is not enabled.
+
+ [ Martin Michlmayr ]
+ * rtlwifi: Eliminate udelay calls with too large values (Closes: #620204)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 06 Apr 2011 13:53:30 +0100
+
+linux-2.6 (2.6.38-2) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * kconfig: Avoid buffer underrun in choice input (fixes FTBFS on mips)
+ * rt2800usb: Disable powersaving by default (Closes: #618930)
+ * b43: Enable B43_PHY_N (Closes: #619070)
+ * net/wireless: Enable RTL8192CE as module (Closes: #619051)
+ * Add configuration for Debian architecture ppc64, matching the
+ powerpc/powerpc64 flavour (Closes: #618976)
+ * Enable BOOT_PRINTK_DELAY (support for the boot_delay kernel parameter)
+ * [x86/!486] Enable TRANSPARENT_HUGEPAGE, TRANSPARENT_HUGEPAGE_MADVISE
+ (Closes: #618924)
+ * [x86/486] Enable X86_32_IRIS (IRIS power-off support) (Closes: #619493)
+ * Add stable 2.6.38.1, including:
+ - RDMA/cma: Fix crash in request handlers (CVE-2011-0695)
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.38.1
+ * radeon: Add some sanity checks to obj info record parsing, thanks
+ to John Lindgren (Closes: #618847)
+ * [x86] KVM: remove isr_ack logic from PIC (Closes: #612105)
+ * Add stable 2.6.38.2, including:
+ - cgroups: If you list_empty() a head then don't list_del() it
+ - oom: Fix various bugs in victim task selection
+ - xen-kbdfront: Advertise either absolute or relative coordinates
+ - signal: Prevent rt_sigqueueinfo and rt_tgsigqueueinfo from spoofing
+ the signal code (CVE-2011-1182)
+ - ext3: Skip orphan cleanup on rocompat fs
+ - sysctl: Restrict write access to dmesg_restrict
+ - proc: Protect mm start_code/end_code in /proc/pid/stat
+ - nfsd: Fix internal NFSv4.1 operation flags to be non-overlapping
+ - nfsd: Fix wrong limit used in NFSv4 session creation
+ - USB: Do not pass negative length to snoop_urb()
+ - cdc-acm: Fix various bugs that can lead to a crash or memory corruption
+ - fs: Fix deadlock in pivot_root()
+ - fs: Assign sb->s_bdi to default_backing_dev_info if the bdi is going away
+ - x86: Cleanup highmap after brk is concluded
+ - NFS: Fix a hang/infinite loop in nfs_wb_page()
+ - ext4: Skip orphan cleanup if fs has unknown ROCOMPAT features
+ For the complete list of changes, see:
+ http://www.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.38.2
+ * [amd64] media/rc: Enable IR_NUVOTON as module (Closes: #619937)
+ * [x86] media/rc: Enable IR_WINBOND_CIR as module
+ * [x86] Enable DEBUG_SET_MODULE_RONX (Closes: #619838)
+ * SCSI: Enable TARGET_CORE and related modules (Closes: #619298)
+ * [hppa] Remove .size directive for flush_alias_page (should fix FTBFS)
+
+ [ Jurij Smakov ]
+ * Bump CONFIG_NR_CPUS on sparc to 256 to accomodate T2+ machines
+ (Closes: #619435)
+ * Bump ABI to 2
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 29 Mar 2011 05:31:03 +0100
+
+linux-kbuild-2.6 (2.6.38-1) unstable; urgency=low
+
+ * New upstream release
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 16 Mar 2011 13:45:58 +0000
+
+linux-2.6 (2.6.38-1) unstable; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_2_6_38
+
+ [ Ben Hutchings ]
+ * Move firmware-linux-free to separate source package (firmware-free)
+ * Move linux-base to separate source package
+ * net/can: Enable CAN_SLCAN as module (Closes: #617629)
+ * sound: Enable SND_ALOOP as module (Closes: #617869)
+ * Remove the Big Kernel Lock:
+ - adfs,appletalk,i810,ufs,usbip: Refactor locking
+ - hpfs: Disable HPFS_FS
+ * ext4: Disable FS_IOC_FIEMAP ioctl temporarily (together with fixes
+ for btrfs in 2.6.38, closes: #615035)
+ * sched: Build with SCHED_AUTOGROUP, but do not enable autogrouping by
+ default (use sysctl kernel.sched_autogroup_enabled=1) (Closes: #618486)
+ * Set ABI to 1
+
+ [ Aurelien Jarno]
+ * mips/malta-[45]kc:
+ - disable ATM, TR, WAN.
+ - synchronize options in malta-4kc and malta-5kc.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 16 Mar 2011 04:47:57 +0000
+
+linux-2.6 (2.6.38~rc8-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * [sparc] Fix .size directive for do_int_load
+ * [arm] Fix .size directive for xscale_dma_a0_map_area
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 12 Mar 2011 03:31:52 +0000
+
+linux-2.6 (2.6.38~rc7-1~experimental.1) experimental; urgency=low
+
+ [ maximilian attems ]
+ * New upstream release candidate
+ - swiotlb: Fix wrong panic (Closes: #615990)
+ * x86: Set DRM_I915_KMS on request by xorg team.
+
+ [ Ben Hutchings ]
+ * [x86] Correct typos in label names in two asm functions (Closes: #616426)
+ * [x86] Enable VT6656, loading firmware from a separate file (requires
+ firmware-linux-nonfree 0.29) (Closes: #568454)
+ * perf: Build with libdwarf for improved analysis capabilities
+ * perf: Build with newt for improved user interface (Closes: #615868)
+ * aufs: Update for 2.6.38
+ * aufs: Fix device numbers passed to security_path_mknod()
+ * dib0700/dib7000m: Add pid filtering (Closes: #614837)
+ * [powerpc] Revert fb module changes (Closes: #614221)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 08 Mar 2011 02:34:04 +0000
+
+linux-2.6 (2.6.38~rc6-1~experimental.1) experimental; urgency=low
+
+ [ Ben Hutchings ]
+ * New upstream release candidate
+ - drm/radeon/kms: hopefully fix pll issues for real (v3) (Closes: #614566)
+ - r8169: Keep firmware in memory (Closes: #609538)
+ - [sparc] Fix misaligned tracing information which the module loader
+ does not support (Closes: #609371)
+ - [sh4] Export cpu_core_map to fix build failure with CONFIG_SFC=m.
+ - [armel] Support for Buffalo LS-CHL (Closes: #590105).
+ - btrfs: Prevent heap corruption in btrfs_ioctl_space_info()
+ (CVE-2011-0699)
+ - [s390] Remove task_show_regs (CVE-2011-0710)
+ * DFSG: Remove drivers/staging/ft1000/ft1000-pcmcia/boot.h, non-free
+ firmware for a driver we don't build (Closes: #609448)
+ * module,bug: Add TAINT_OOT_MODULE flag for modules that weren't built
+ in-tree
+
+ [ maximilian attems ]
+ * [x86] linux-images suggest extlinux, s/grub/grub-pc/. (closes: #613909)
+
+ [ Aurelien Jarno]
+ * mips/swarm: enable PATA drivers that have been lost during IDE -> PATA
+ conversion.
+ * mips/malta-[45]kc: set VIRTUALIZATION.
+
+ -- maximilian attems <maks@debian.org> Tue, 22 Feb 2011 14:36:33 +0100
+
+linux-2.6 (2.6.37-2) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * Add stable 2.6.37.1:
+ - libata: Set queue DMA alignment to sector size for ATAPI too
+ - USB: serial: add missing .usb_driver field in serial drivers
+ - USB: EHCI: fix scheduling while atomic during suspend
+ - zram: Fix data corruption issue
+ - brcm80211: Fix suspend/resume issue
+ - ath9k: Fix system hang when resuming from S3/S4
+ - SCSI: Fix medium error problems with some arrays which can cause
+ data corruption
+ - libsas: Fix runaway error handler problem
+ - NFS: Don't use vm_map_ram() in readdir
+ - NFS: Fix NFSv3 exclusive open semantics
+ - /proc/kcore: Fix seeking
+ - mm: Fix migration hangs on anon_vma lock
+ - writeback: Stop background/kupdate works from livelocking other works
+ - writeback: Avoid livelocking WB_SYNC_ALL writeback
+ - ext4: Fix trimming of a single group
+ - af_unix: Avoid socket->sk NULL OOPS in stream connect security hooks
+ - virtio_net: Add schedule check to napi_enable call
+ - ptrace: Use safer wake up on ptrace_detach()
+ - net: Fix ip link add netns oops
+ - SMP: Fix smp_call_function_many() SMP race
+ - md: Ensure no IO request to get md device before it is properly
+ initialised
+ - PM/runtime: Don't enable interrupts while running in_interrupt
+ - [x86] mm: Avoid possible bogus TLB entries by clearing prev
+ mm_cpumask after switching mm
+ * Kbuild: Include localversion file in linux-headers-*; fixes output
+ of 'make kernelrelease'
+ * Add stable 2.6.37.2:
+ - nfsd: Memory corruption due to writing beyond the stat array
+ - xen: p2m: Correctly initialize partial p2m leaf
+ - av7110: Check for negative array offset (CVE-2011-0521)
+ - cred: Fix kernel panic upon security_file_alloc() failure
+ - btrfs: Prevent heap corruption in btrfs_ioctl_space_info()
+ (CVE-2011-0699)
+ - cred: Fix BUG() upon security_cred_alloc_blank() failure
+ - cred: Fix memory and refcount leaks upon security_prepare_creds()
+ failure
+ - PCI: Use security_capable() when checking capablities during config
+ space read
+ - [s390] Remove task_show_regs (CVE-2011-0710)
+ - PM/hibernate: Return error code when alloc_image_page() fails
+ - fs/partitions: Validate map_count in Mac partition tables
+ - workqueue: Wake up a worker when a rescuer is leaving a gcwq
+ - ALSA: caiaq - Fix possible string-buffer overflow
+ * Set ABI to 2
+
+ [ Martin Michlmayr ]
+ * [armel/orion5x] Re-enable all devices.
+ * [armel/kirkwood] Re-enable Seagate FreeAgent DockStar support.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 26 Feb 2011 03:16:16 +0000
+
+linux-kbuild-2.6 (2.6.37-1) unstable; urgency=low
+
+ * Upload to unstable
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 15 Feb 2011 14:15:36 +0000
+
+linux-2.6 (2.6.37-1) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * [arm] ixp4xx: Revert build fix, now applied upstream which resulted
+ in another build failure
+ * r8169: Keep firmware in memory (Closes: #609538)
+ * r8712u: Firmware filename is rtlwifi/rtl8712u.bin (Closes: #602450)
+ * [sparc] Fix misaligned tracing information which the module loader
+ does not support (Closes: #609371)
+ * Set ABI to 1
+ * Add aufs2.1, marked as staging (Closes: #573189, #613248)
+ * fs/notify: Enable FANOTIFY (Closes: #599877)
+ * acer-wmi, aic94xx, asus_acpi, iscsi, janz-ican3, rtc-ds1511, tc1100-wmi:
+ Restrict write permissions on files in procfs/sysfs
+ * nbd: Remove module-level ioctl mutex mistakenly introduced in 2.6.37
+ * [x86] crypto: Re-enable AES_NI_INTEL as module (Closes: #597658)
+ * [powerpc] video/fb: Enable FB_VGA16 as built-in; build FB_CT65550,
+ FB_NVIDIA, FB_MATROX, FB_RADEON, FB_ATY128, FB_ATY, FB_SIS, FB_3DFX
+ as modules (Closes: #609615)
+
+ [ Aurelien Jarno ]
+ * [sh4] Export cpu_core_map to fix build failure with CONFIG_SFC=m.
+ * [mips/5kc-malta] Enable CONFIG_VGA_CONSOLE.
+
+ [ Bastian Blank ]
+ * Enable CIFS fscache and ACL support.
+ * Enable Xen PCI frontend.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 15 Feb 2011 04:14:09 +0000
+
+linux-kbuild-2.6 (2.6.37-1~experimental.1) experimental; urgency=low
+
+ * New upstream version
+ * Include new script gcc-goto.sh
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 16 Jan 2011 15:14:34 +0000
+
+linux-2.6 (2.6.37-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_2_6_37
+ - starfire: Fix dma_addr_t size test for MIPS (fixes FTBFS)
+ - watchdog: Improve failure message and documentation (Closes: #608138)
+
+ [ Ben Hutchings ]
+ * i2c-i801: Include <linux/slab.h> (fixes FTBFS on alpha)
+ * [x86] Staging: Enable R8712U as module (r8712u, replacing r8192s_usb)
+ - Enable loading external firmware, thanks to Stefan Lippers-Hollmann
+ * linux-base: Look for GRUB 1 configuration in both /boot/grub and
+ /boot/boot/grub (Closes: #607863)
+ * btrfs: Require CAP_SYS_ADMIN for filesystem rebalance (Closes: #608185)
+ * r8169: Change RTL8111D/RTL8168D initialisation and firmware loading to
+ match upstream version (Closes: #596390 with firmware-realtek 0.28)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 05 Jan 2011 02:44:28 +0000
+
+linux-2.6 (2.6.37~rc7-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+ - [mips] Rename mips_dma_cache_sync back to dma_cache_sync (fixes FTBFS)
+
+ [ Ben Hutchings ]
+ * debian/copyright: Add explanation of indirect linking of perf to
+ OpenSSL (Closes: #606520)
+ * [powerpc,x86] Enable PATA_PCMCIA (Closes: #606324)
+ * Disable BLK_DEV_IDECS
+ * [alpha] Use libata-based drivers for most PATA controllers
+ * [powerpc] linux-base: Run ybin after updating yaboot.conf
+ (Closes: #607284)
+ * Update debconf template translations:
+ - Add Catalan (Jordi Mallach)
+ - Update Danish (Joe Hansen)
+ - Update Spanish (Omar Campagne, Javier Fernández-Sanguino)
+ - Add Italian (Luca Bruno)
+ - Update Japanese (Nobuhiro Iwamatsu)
+ - Add Brazilian Portugese (Flamarion Jorge)
+ - Update Vietnamese (Clytie Siddall)
+ * debian/bin/test-patches: Restrict patches to featureset when building
+ with a featureset (thanks to Tim Small)
+ * Recommend use of 'make deb-pkg' to build custom kernel packages
+ * [ia64] drm/nouveau: Revert unnecessary exclusion of ACPI support code
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 25 Dec 2010 16:21:09 +0000
+
+linux-2.6 (2.6.37~rc5-1~experimental.3) experimental; urgency=low
+
+ * Really apply patches added in the previous version
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 11 Dec 2010 16:27:21 +0000
+
+linux-2.6 (2.6.37~rc5-1~experimental.2) experimental; urgency=low
+
+ * Second attempt to fix FTBFS on various architectures:
+ - [alpha] Do not use -Werror for arch/alpha
+ - [arm/ixp4xx] Rename FREQ macro to avoid collisions (v2)
+ - drm/nouveau: Only select ACPI_VIDEO if its dependencies are met
+ - [mips] Change mips_sc_is_activated() to do what the comment says
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 11 Dec 2010 06:27:51 +0000
+
+linux-2.6 (2.6.37~rc5-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * Attempt to fix FTBFS on various architectures:
+ - [alpha] Do not use -Werror for arch/alpha/kernel
+ - [arm/ixp4xx] Rename FREQ macro to avoid collisions
+ - [mips] Add the necessary parameter to mips_sc_is_activated()
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 10 Dec 2010 02:59:12 +0000
+
+linux-2.6 (2.6.37~rc4-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ maximilian attems ]
+ * Newer Standards-Version 3.9.1 without changes.
+
+ [ Martin Michlmayr ]
+ * Add ixp4xx build fix from Arnaud Patard (Closes: #602669)
+ * [armel/kirkwood] Enable sound.
+ * ASoC: Add support for OpenRD Ultimate (Arnaud Patard).
+
+ [ Ben Hutchings ]
+ * Enable PM_ADVANCED_DEBUG (Closes: #603254)
+ * Disable X.25 protocol and related drivers. This 10 year old experiment
+ has stalled and is a source of security bugs.
+ * Disable Econet protocol. It is unmaintained upstream, probably broken,
+ and of historical interest only.
+ * af_802154,decnet,rds: Disable auto-loading as mitigation against local
+ exploits. These protocol modules are not widely used and can be
+ explicitly loaded or aliased on systems where they are wanted.
+ * debian/rules: Change 'clean' rule to remove package build directories
+ even after a version bump, thanks to Timo Juhani Lindfors
+ * dm: Deal with merge_bvec_fn in component devices better (Closes: #604457)
+ * 9p: Enable 9P_FS_POSIX_ACL
+ * netfilter/ipvs: Enable IP_VS_PE_SIP as module
+ * net/sched: Enable NET_ACT_CSUM as module
+ * can: Enable CAN_SJA1000_ISA, CAN_TSCAN1 as modules
+ * block: Enable BLK_DEV_RBD (Rados) as module
+ * sensors: Enable AD525X_DPOT_SPI, APDS9802ALS, ISL29020, SENSORS_BH1780,
+ SENSORS_BH1770, SENSORS_APDS990X, HMC6352, BMP085 as modules
+ * scsi: Enable SCSI_CXGB4_ISCSI as module
+ * net/ppp: Enable PPTP as module
+ * net: Enable BNA, SMCTR, USB_NET_CX82310_ETH as modules
+ * IR: Enable IR_RC5_SZ_DECODER as module
+ * [i386] IR: Enable IR_NUVOTON as module
+ * V4L: Enable GSPCA_KONICA, GSPCA_XIRLINK_CIT as modules
+ * DVB: Enable USB_LME2510 as module
+ * [i386] sound/isa: Enable SND_AZT1605, SND_AZT2316, SND_JAZZ16,
+ SND_MSND_PINNACLE, SND_MSND_CLASSIC as modules
+ * HID: Enable HID_UCLOGIC, HID_WALTOP, HID_ROCCAT_PYRA as modules
+ * hid-logitech: Enable LOGIWII_FF
+ * Enable USB_UAS (USB-attached SCSI) as module
+ * serial: Enable USB_SERIAL_SAMBA as module
+ * drm/nouveau: Enable DRM_I2C_SIL164 as module
+ * perf: Use libiberty, not libbfd, for symbol demangling
+ (Closes: #604750, #606050)
+ * firmware: Correct copyright information and add source for CIS files
+ (accidentally omitted when merging from sid branch)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 05 Dec 2010 23:19:38 +0000
+
+linux-kbuild-2.6 (2.6.36-1~experimental.1) experimental; urgency=low
+
+ * New upstream version
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 15 Nov 2010 00:20:33 +0000
+
+linux-2.6 (2.6.36-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_2_6_36
+ - writeback: always use sb->s_bdi for writeback purposes (Closes: #599466)
+ - i7core_edac: fix panic in udimm sysfs attributes registration
+ (Closes: #600528)
+
+ [ Ben Hutchings ]
+ * qla4xxx: Fix build on some architectures lacking 64-bit I/O
+ (Closes: #598503)
+ * [x86] Enable modular TM6000, TM6000_ALSA, TM6000_DVB
+ * [x86] Staging: fix Makefile so brcm80211 will actually build
+ (Closes: #599465)
+ * [x86] Enable modular IDEAPAD_ACPI (Closes: #599444)
+ * perf: Enable Perl and Python scripting
+ - Move scripts to /usr/share/perf_<version>-core (Closes: #599624)
+ * crypto: Explicitly enable algorithm self-tests (Closes: #599441)
+ * [x86] Skip looking for ioapic overrides when ioapics are not present
+ (Closes: #598533)
+ * [x86] ata_piix: Add device ID for ICH4-L
+ * [armel/iop32x,ia64,x86] Disable BLK_DEV_PIIX as obsolete
+ * [amd64] Disable DRM_I810; i81x chipsets do not support 64-bit processors
+ * [x86] Disable DRM_I830; the i915 driver is now used instead
+
+ [ Martin Michlmayr ]
+ * Kirkwood: restrict the scope of the PCIe reset workaround
+
+ -- maximilian attems <max@stro.at> Wed, 27 Oct 2010 13:23:11 +0200
+
+linux-2.6 (2.6.36~rc6-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+ - drm/i915: Ensure that the crtcinfo is populated during mode_fixup()
+ (Closes: #592415)
+ - USB: fix bug in initialization of interface minor numbers
+ (Closes: #598207)
+
+ [ Ben Hutchings ]
+ * linux-base: Remove dependency on libapt-pkg-perl (Closes: #589996, really)
+ * Disable INTEL_IDLE. It can no longer be built as a module and so was
+ actually disabled by the previous version, but I do not consider it ready
+ to build-in yet.
+ * Enable modular NETFILTER_XT_TARGET_CHECKSUM, NETFILTER_XT_TARGET_IDLETIMER,
+ NETFILTER_XT_MATCH_CPU, NETFILTER_XT_MATCH_IPVS
+ * Reenable LOCKUP_DETECTOR, accidentally disabled by the previous version
+ * Enable modular AD525X_DPOT_I2C, ATM_NICSTAR, CAN_ESD_USB2, CHELSIO_T4VF,
+ FIREWIRE_NOSY, HID_ACRUX_FF, HID_ELECOM, INFINIBAND_CXGB4, INFINIBAND_QIB,
+ MTD_PCMCIA, ORINOCO_USB, PPS_CLIENT_LDISC, RAMOOPS, SERIAL_MFD_HSU,
+ UIO_NETX, USB_GSPCA_SPCA1528, USB_GSPCA_SQ930X, USB_SERIAL_SSU100,
+ USB_SERIAL_ZIO, WL1271_SDIO, WL1271_SPI
+ * Enable BT_HCIUART_ATH3K, USB_SERIAL_MOS7715_PARPORT
+ * [x86] Enable modular SENSORS_PKGTEMP
+ * Enable modular IR_CORE, RC_MAP, all IR decoders, IR_IMON, IR_MCEUSB,
+ IR_ENE, IR_STREAMZAP
+ * [x86] Enable modular LIRC drivers
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 03 Oct 2010 21:18:41 +0100
+
+linux-2.6 (2.6.36~rc5-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+ - 3c59x: Fix deadlock in vortex_error() (Closes: #595554)
+
+ [ Ben Hutchings ]
+ * speakup: Update to match Debian package version 3.1.5.dfsg.1-1
+ * [x86] Add brcm80211 driver for Broadcom 802.11n wireless network
+ controllers
+ * [x86] Set XEN_PLATFORM_PCI=y
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 21 Sep 2010 02:15:33 +0100
+
+linux-2.6 (2.6.35-1~experimental.3) experimental; urgency=low
+
+ [ Ritesh Raj Sarraf ]
+ * Add .gnu_debuglink information into kernel modules (Closes: #555549)
+
+ [ Ben Hutchings ]
+ * linux-base: Remove dependency on libapt-pkg-perl (Closes: #589996)
+ * Update debconf template translations:
+ - Czech (Michal Simunek) (Closes: #590546)
+ - Portugese (Américo Monteiro) (Closes: #590557)
+ - French (David Prévot) (Closes: #591149)
+ - Russian (Yuri Kozlov) (Closes: #591241)
+ - Swedish (Martin Bagge) (Closes: #592045)
+ - German (Holger Wansing) (Closes: #592226)
+ * [x86] Enable samsung-laptop driver
+ * [sparc] Enable XVR1000 driver (Closes: #574243)
+ * Change BLK_CGROUP from module to built-in so that cfq can be the
+ default I/O scheduler again (Closes: #593720)
+ * [mipsel/loongson-2f] Enable smtcfb (FB_SM7XX) driver (Closes: #594642)
+
+ [ Ian Campbell ]
+ * Fixes/overrides for Linitan warnings:
+ - Add "(meta package)" to short description of linux-headers
+ metapackages, resolves empty-binary-package.
+ - Add dependency on ${misc:Depends} to all packages, resolves
+ debhelper-but-no-misc-depends. Required update to gencontrol.py to
+ augment rather than override headers_arch_depends read from templates.
+ - Override dbg-package-missing-depends for linux-image-*-dbg. It is not
+ necessary to install the kernel image package to use the dbg package
+ since the dbg package already contains a complete image with symbols.
+
+ [ Bastian Blank ]
+ * Disable Ralink staging drivers, the in-tree ones reached "works-for-me"
+ status.
+
+ [ Aurelien Jarno ]
+ * Fix netfilter CONFIG_COMPAT support.
+ * [sh4] set VIRTUALIZATION.
+ * [mips] Add an octeon flavour.
+
+ [ maximilian attems]
+ * Add stable 2.6.35.3 and 2.6.35.4.
+
+ -- maximilian attems <maks@debian.org> Mon, 06 Sep 2010 15:16:17 +0200
+
+linux-2.6 (2.6.35-1~experimental.2) experimental; urgency=low
+
+ * images: Nuke modules.devname on removal. (closes: #590607)
+ * Add stable 2.6.35.1 and 2.6.35.2.
+ * mm: fix page table unmap for stack guard page properly.
+ * mm: fix up some user-visible effects of the stack guard page.
+ * config.loongson-2f: Enable USB and RTC for loongson-2f.
+ Thanks Geert Stappers <stappers@stappers.nl> (closes: #583689)
+
+ -- maximilian attems <maks@debian.org> Mon, 16 Aug 2010 23:49:32 +0200
+
+linux-kbuild-2.6 (2.6.35-1~experimental.1) experimental; urgency=low
+
+ * New upstream version
+ * Update policy version to 3.9.1; no changes required
+ * Fix minor issues reported by lintian:
+ - Add ${misc:Depends} to dependencies
+ - Add debian/source/format file
+ - Remove redundant priority and section fields
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 08 Aug 2010 22:31:47 +0100
+
+linux-2.6 (2.6.35-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_2_6_35
+ - [ia64] Fix crash when gcore reads gate area (Closes: #588574)
+ - tpm_tis: fix subsequent suspend failures (Closes: #591031)
+
+ * topconfig enable BLK_CGROUP, NETFILTER_XT_TARGET_TEE, VMWARE_BALLOON,
+ ATH9K_HTC, TOUCHSCREEN_HAMPSHIRE, TOUCHSCREEN_TPS6507X, SND_ASIHPI,
+ SQUASHFS_XATTRS, RCU_FAST_NO_HZ, COMPACTION, IP_MROUTE_MULTIPLE_TABLES,
+ IPV6_MROUTE_MULTIPLE_TABLES, NET_DCCPPROBE, NET_SCTPPROBE, L2TP,
+ BT_L2CAP_EXT_FEATURES, MTD_NAND_RICOH, ATA_BMDMA, KEYBOARD_QT2160,
+ N_GSM, SENSORS_SHT15, SENSORS_EMC1403, SENSORS_ADS7871, SENSORS_TMP102,
+ SND_ES1968_INPUT, SND_MAESTRO3_INPUT, LEDS_LT3593, LEDS_MC13783.
+ * x86 enable INTEL_IDLE, ACPI_HED, ACPI_APEI, ACPI_APEI_GHES,
+ PCI_CNB20LE_QUIRK.
+
+ -- maximilian attems <maks@debian.org> Tue, 03 Aug 2010 16:21:16 +0200
+
+linux-2.6 (2.6.35~rc6-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+ - drm/i915: Add 'reclaimable' to i915 self-reclaimable page allocations
+ (Closes: #534422)
+
+ [ Ben Hutchings ]
+ * [!x86] Disable FB_VIA; these GPUs are only found on x86 motherboards
+ * ds2782_battery: Fix build failure on several architectures
+ * postinst: Remove support for 'default' boot loaders. Warn users on
+ upgrade if the current configuration may rely on this.
+ * [i386/686] Remove AMD K6 from the list of supported processors; it
+ does not implement the CMOV instruction
+ * 3c59x: Fix call to mdio_sync() with the wrong argument (Closes: #589989)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 24 Jul 2010 01:00:26 +0100
+
+linux-2.6 (2.6.35~rc5-1~experimental.1) experimental; urgency=low
+
+ * New upstream release candidate
+
+ [ Ben Hutchings ]
+ * Consistently name the linux-tools package and perf binary using the
+ upstream version without any -rcN suffix
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 13 Jul 2010 01:09:27 +0100
+
+linux-2.6 (2.6.35~rc4-1~experimental.1) experimental; urgency=low
+
+ * New upstream snapshot
+ - [hppa] clear floating point exception flag on SIGFPE signal
+ (Closes: #559406)
+ - Add mantis and hopper DVB drivers (Closes: #577264)
+ - eeepc-laptop: Disable wireless hotplug on more models where the
+ controller is not at the expected address (Closes: #576199)
+ - qcserial: Add support for Qualcomm Gobi 2000 devices
+ (Closes: #585661)
+ - radeon: Fix MacBook Pro connector quirk (Closes: #585943)
+ - r8169: Fix MDIO timing (Closes: #583139)
+ - asix: fix setting mac address for AX88772 (Closes: #587580)
+ - Update Marvell CESA (mv_cesa) driver (Closes: #585790):
+
+ [ Ben Hutchings ]
+ * ipr: add writeq definition if needed (Closes: #584840)
+ * [mips] Fix boot from ATA hard drives (Closes: #584784):
+ - Set io_map_base for several PCI bridges lacking it
+ - Replace per-platform built-in IDE drivers with libata-based drivers
+ - Enable BLK_DEV_SD as built-in on all platforms
+ * Update Spanish debconf templates, thanks to Omar Campagne
+ (Closes: #580538)
+ * [powerpc] Enable pata_amd driver, replacing amd74xx
+ * linux-base: Don't identify LVM2 PVs by UUID (Closes: #585852)
+ * Move NEWS to linux-latest-2.6 (Closes: #586401)
+ * 3c59x: Change locking to avoid use of disable_irq() (Closes: #586967)
+ * Enable IPv6 support for IPVS (IP_VS_IPV6) (Closes: #584549)
+ * linux-base: If the disk ID update process fails, give the user a
+ chance to retry or change their answers (Closes: #585609)
+ * ipv6: Clamp reported valid_lft to a minimum of 0 (Closes: #514644)
+ * ipv6: Use interface max_desync_factor instead of static default
+ (Closes: #514646)
+ * [ia64, powerpc, sparc, x86] Enable KPROBES and KRETPROBES
+ (Closes: #584130)
+ * r8192s_usb: Fix various bugs:
+ - Clean up in case of an error in module initialisation
+ - Rename and remove proc directories correctly if an interface is
+ not called wlan0 (Closes: #582972)
+ - Correct device ID table (Closes: #584945, #587985)
+ * [x86] Enable r8192u_usb driver
+ * Add linux-tools-<version> package containing the perf tool
+ (Closes: #548715)
+ * Enable SERIAL_USB_TI (Closes: #588096) and SERIAL_USB_WHITEHEAT
+ * [x86] Enable EDAC_I7CORE
+
+ [ maximilian attems ]
+ * Enable DRM_RADEON_KMS.
+
+ [ Martin Michlmayr ]
+ * OpenRD-Base: revert patch "allow SD/UART1 selection" since it
+ never made it upstream.
+ * ARM: update mach types.
+ * Add support for OpenRD-Ultimate.
+ * QNAP TS-11x/TS-21x: Add MPP44 (board ID).
+ * Add support for the HP t5325 Thin Client.
+ * m25p80: Add support for Macronix 25L8005.
+ * [armel/kirkwood] Enable FB_XGI and FRAMEBUFFER_CONSOLE.
+ * [armel] Make MOUSE_PS2 modular.
+ * [armel] Build INPUT_UINPUT for all flavours.
+ * [armel/kirkwood] Enable FB_UDL.
+ * [armel] Disable PARPORT_PC (Closes: #588164)
+
+ [ Bastian Blank ]
+ * Disable mISDN support for NETJet cards. The driver binds a generic PCI
+ bridge.
+ * Disable ISDN4Linux drivers.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 10 Jul 2010 21:53:57 +0100
+
+linux-2.6 (2.6.34-1~experimental.2) experimental; urgency=low
+
+ [ Ben Hutchings ]
+ * [x86] Reenable rtl8192su, accidentally disabled in previous version
+ (Closes: #580740)
+ * writeback: Update dirty flags in two steps
+ * writeback: ensure that WB_SYNC_NONE writeback with sb pinned is sync
+ (Closes: #582808)
+ * writeback: fix non-integrity write-back
+ * [mipsel] Add a loongson-2f flavour
+ * [mipsel] Loongson: Define rtc device on MC146818-equipped systems
+ * Make gcc-4.4 the default compiler
+ * [ia64] Hardcode the output of the scripts under arch/ia64/scripts so
+ that we can build out-of-tree modules correctly (refresh and re-add
+ dropped patch) (Closes: #392592)
+ * [ia64] Enable SGI SN support and mspec driver (Closes: #582224)
+ * iwlwifi: Disable QoS when connected to a non-QoS-capable AP
+ (Closes: #578262)
+ * [x86] Disable e_powersaver cpufreq driver as unsafe. It has already
+ been blacklisted by cpufrequtils. The acpi-cpufreq driver can be used
+ instead on some VIA C7 systems. (Closes: #566208)
+ * [amd64] ext4: Fix compat EXT4_IOC_ADD_GROUP (used by online resize)
+ * Install debug kernel image in /usr/lib/debug/boot (Closes: #582810)
+ * Build inet_lro as a module
+ * [sparc] Enable CONFIG_FB_XVR500, CONFIG_FB_XVR2500 (Closes: #508108)
+
+ [ maximilian attems ]
+ * topconfig enable CFQ_GROUP_IOSCHED, MFD_WM8994, REGULATOR_MAX8649,
+ REGULATOR_WM8994, VHOST_NET, BT_ATH3K, CRYPTO_PCRYPT.
+ * [x86] Enable X86_PCC_CPUFREQ, VGA_SWITCHEROO (closes: #582637).
+
+ [ Martin Michlmayr ]
+ * QNAP TS-419P: Export GPIO indicating jumper setting of JP1.
+
+ [ dann frazier ]
+ * [hppa] clear floating point exception flag on SIGFPE signal
+ (Closes: #559406)
+
+ [ Aurelien Jarno ]
+ * [sh4] fix sh_tmu clocksource following recent nohz changes.
+
+ [ Moritz Muehlenhoff ]
+ * Enable X86 board specific fixups for reboot (Closes: #536537)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 06 Jun 2010 18:53:04 +0100
+
+linux-kbuild-2.6 (2.6.34-1~experimental.1) experimental; urgency=low
+
+ * New upstream version
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 20 May 2010 01:19:43 +0100
+
+linux-2.6 (2.6.34-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_2_6_34
+
+ * New upstream release
+ - rtl8192su: Add IDs for several more devices (Closes: #580740)
+
+ [ maximilian attems ]
+ * topconfig enable IPV6_SIT_6RD, NETFILTER_XT_TARGET_CT, IP_VS_PROTO_SCTP,
+ NF_CONNTRACK_ZONES, CAN_PLX_PCI, TI_DAC7512, SCSI_HPSA, PATA_TOSHIBA,
+ MACVTAP, CHELSIO_T4, IXGBEVF, QLCNIC, LIBERTAS_MESH,
+ USB_NET_SMSC75XX, USB_SIERRA_NET, VIDEO_CX18_ALSA, USB_GSPCA_BENQ,
+ USB_GSPCA_CPIA1, USB_GSPCA_OV534_9, USB_GSPCA_SN9C2028, RADIO_TEF6862,
+ RADIO_SAA7706H, SND_USB_UA101, CEPH_FS, MICREL_PHY, KSZ884X_PCI,
+ SENSORS_ADT7411, SENSORS_ASC7621, VIDEO_TLG2300, DVB_USB_AZ6027,
+ DVB_NGENE, HID_3M_PCT, LOGIG940_FF, HID_MAGICMOUSE, HID_MOSART,
+ HID_NTRIG, HID_QUANTA, HID_STANTUM, HID_WACOM, USB_SERIAL_QCAUX,
+ USB_SERIAL_VIVOPAY_SERIAL, MMC_RICOH_MMC, LEDS_DELL_NETBOOKS, LOGFS.
+ * [x86] Enable EEEPC_WMI.
+ * Fix backlight support on some recent Thinkpads.
+ * acpi: Fall back to manually changing SCI_EN.
+ * Explicitly pass in whether sb is pinned or not.
+
+ [ Ben Hutchings ]
+ * Prepare debconf templates for translation (Closes: #576758)
+ * [x86] Enable r8187se driver, previously named rtl8187se
+
+ [ Aurelien Jarno ]
+ * mips/swarm: fix boot from IDE based media (Sebastian Andrzej Siewior)
+ (closes: #466977).
+ * mips/*: remove SND_* options, as they are already enabled in topconfig.
+
+ -- maximilian attems <maks@debian.org> Wed, 19 May 2010 17:06:13 +0200
+
+linux-2.6 (2.6.33-1~experimental.5) experimental; urgency=low
+
+ [ Ian Campbell ]
+ * Include Xen hypervisor in reportbug "related to" list.
+
+ [ maximilian attems]
+ * Add stable 2.6.33.2.
+
+ [ Ben Hutchings ]
+ * [x86] Enable ramzswap driver (Closes: #573912)
+ * [x86] Re-enable rt2860sta and rt2870sta drivers which were accidentally
+ disabled when moving to Linux 2.6.33 (Closes: #576723)
+ * Add stable 2.6.33.3:
+ - ACPI: EC: Allow multibyte access to EC; fixes temperature monitoring
+ on some Dell laptops (Closes: #563313)
+
+ [ Aurelien Jarno ]
+ * Add support for sh4 architecture, patch by Nobuhiro Iwamatsu
+ (Closes: #569034)
+ * [mips*/*malta] Remove options that are present in topconfig.
+
+ -- maximilian attems <maks@debian.org> Wed, 05 May 2010 16:38:53 +0200
+
+linux-2.6 (2.6.33-1~experimental.4) experimental; urgency=low
+
+ [ Ben Hutchings ]
+ * Include aufs2, marked as staging (Closes: #573189)
+ * Remove /usr/include/drm from linux-libc-dev; let libdrm-dev provide it
+ again (Closes: #572067)
+ * [x86] Enable rtl8192su driver using external firmware
+
+ [ maximilian attems]
+ * Add stable 2.6.33.1.
+
+ -- maximilian attems <maks@debian.org> Wed, 17 Mar 2010 18:13:53 +0100
+
+linux-2.6 (2.6.33-1~experimental.3) experimental; urgency=low
+
+ [ Ben Hutchings ]
+ * Fix regexp for binNMU versions in modules/rules.include (Closes: #524632)
+ * linux-base: Fix bugs and improve libata transition code:
+ - Fix calls to disk_id_to_path (renamed to id_to_path) (Closes: #572283)
+ - Don't show empty list of devices to be relabelled
+ - Don't update udev CD rules unnecessarily
+ - Show the device paths to be added to udev CD rules
+ - Ignore nonexistent devices and properly handle devices of unknown
+ filesystem type (Closes: #572341, #572445)
+ - Don't accept empty filesystem labels as identifiers (Closes: #572438)
+ - For consistency with fresh installations, use or assign UUIDs rather
+ than labels where both are available (Closes: #572376)
+ - Replace CD/DVD/BD device names with udev-provided persistent aliases
+ - Fix update of boot device name for LILO and related loaders
+ - Update uswsusp resume device name
+
+ -- maximilian attems <maks@debian.org> Thu, 11 Mar 2010 05:58:02 +0100
+
+linux-2.6 (2.6.33-1~experimental.2) experimental; urgency=low
+
+ [ Ben Hutchings ]
+ * Add missing debconf templates for linux-base (Closes: #571558)
+ * Fix libata transition code for GRUB 1 config (Closes: #571662)
+
+ -- maximilian attems <maks@debian.org> Sun, 28 Feb 2010 17:48:11 +0100
+
+linux-2.6 (2.6.33-1~experimental.1) experimental; urgency=low
+
+ * New upstream release: http://kernelnewbies.org/Linux_2_6_33
+
+ [ maximilian attems]
+ * [topconfig] set BLK_DEV_DRBD, DRM_NOUVEAU, DRM_NOUVEAU_BACKLIGHT,
+ DRM_VMWGFX, SENSORS_LM73, SENSORS_AMC682, SENSORS_LIS3_I2C,
+ SENSORS_MC13783_ADC, TOUCHSCREEN_DYNAPRO, TOUCHSCREEN_MC13783,
+ GIGASET_CAPI, LEDS_DAC124S085, LEDS_INTEL_SS4200, LEDS_INTEL_SS4200,
+ DVB_FIREDTV, DVB_USB_EC168, SOC_CAMERA_MT9T112, SOC_CAMERA_OV9640,
+ USB_GSPCA_PAC7302, USB_GSPCA_STV0680, AD525X_DPOT, CAN_MCP251X,
+ RT2800PCI, REGULATOR_MAX8660, RTC_DRV_BQ32K, RTC_DRV_MSM6242,
+ RTC_DRV_RP5C01, VMWARE_PVSCSI, SCSI_PM8001, WIMAX_IWMC3200_SDIO,
+ INPUT_SPARSEKMAP, SERIO_ALTERA_PS2, MANTIS_CORE, DVB_MANTIS,
+ DVB_HOPPER.
+ * [x86] set CS5535_MFGPT, SENSORS_K10TEMP, GEODE_WDT, MSI_WMI,
+ TOSHIBA_BT_RFKILL, ACPI_CMPC, CRYPTO_GHASH_CLMUL_NI_INTE.
+
+ [ Ben Hutchings ]
+ * Use libata-based drivers for most PATA controllers (Closes: #444182):
+ - pata_triflex replaces triflex
+ - pata_atiixp replaces atiixp
+ - pata_ns87415 replaces ns87415
+ - pata_sc1200 replaces sc1200
+ - pata_cs5536 replaces cs5536
+ - pata_amd replaces amd74xx
+ - pata_sis replaces sis5513
+ - pata_rz1000 replaces rz1000
+ - pata_efar replaces slc90e66
+ - pata_pdc202xx_old replaces pdc202xx_old
+ - pata_pdc2027x replaces pdc202xx_new
+ - pata_cs5520 replaces cs5520
+ - pata_cs5530 replaces cs5530
+ - pata_cmd64x replaces cmd64x
+ - pata_sil680 replaces siimage
+ - pata_ali replaces alim15x3
+ - pata_via replaces via82cxxx
+ - pata_serverworks replaces serverworks
+ - pata_artop replaces aec62xx
+ - pata_it821x replaces it821x
+ - ata_piix, pata_oldpiix, pata_mpiix mostly replace piix
+ - ata_generic, pata_ns87410, pata_netcell replace ide-pci-generic
+ * Add libata transition script
+
+ -- maximilian attems <maks@debian.org> Thu, 25 Feb 2010 15:21:38 +0100
+
+linux-2.6 (2.6.32-30) unstable; urgency=high
+
+ [ Ben Hutchings ]
+ * mpt2sas: Fix incorrect scsi_dma_map error checking (Closes: #606968)
+ * Update Spanish debconf template translation (Omar Campagne, Javier
+ Fernández-Sanguino) (Really closes: #600694)
+ * intel-iommu: Force-disable IOMMU for iGFX on broken Cantiga revisions
+ (Closes: #607095)
+ * [powerpc] linux-base: Run ybin after updating yaboot.conf
+ (Closes: #607284)
+ * tehuti: Firmware filename is tehuti/bdx.bin
+ * iwlwifi: Reduce a failure-prone memory allocation (Closes: #599345)
+ * linux-base: Look for GRUB 1 configuration in both /boot/grub and
+ /boot/boot/grub (Closes: #607863)
+ * rt28x0: Add ieee80211_regdom module parameter mimicking cfg80211 as a
+ workaround for incorrect region code in NVRAM (Closes: #594561)
+ * btrfs: Require CAP_SYS_ADMIN for filesystem rebalance (Closes: #608185)
+ * [x86] dell-laptop: Enable for some newer Dell models
+ * r8169: Change RTL8111D/RTL8168D initialisation and firmware loading to
+ match upstream version (Closes: #596390 with firmware-realtek 0.28)
+ * Add stable 2.6.32.28:
+ - NFS: Fix panic after nfs_umount()
+ - usb-storage/libusual: Add support for Samsung YP-CP3 MP4 Player,
+ thanks to Vitaly Kuznetsov (Closes: #555835)
+ - bfa: Fix system crash when reading sysfs fc_host statistics
+ (CVE-2010-4343)
+ - IB/uverbs: Handle large number of entries in poll CQ (CVE-2010-4649)
+ - orinoco: Fix TKIP countermeasure behaviour (CVE-2010-4648)
+ - mm: Add security_file_mmap check to install_special_mapping
+ (CVE-2010-4346)
+ - sctp: Fix a race between ICMP protocol unreachable and connect()
+ (CVE-2010-4526)
+ - hvc_console: Fix race between hvc_close and hvc_remove (CVE-2010-2653)
+ (previously applied as an isolated fix in 2.6.32-25)
+ - fuse/cuse: Verify ioctl retries (CVE-2010-4650)
+ * [powerpc] Restore device tree source files to linux-image packages
+ (Closes: #609155)
+
+ [ maximilian attems ]
+ * [openvz] Reenable NF_CONNTRACK_IPV6. (closes: #580507)
+ * cifs: fix another memleak, in cifs_root_iget.
+ * b43: Fix warning at drivers/mmc/core/core.c:237 in mmc_wait_for_cmd.
+ * drm/radeon/kms: MC vram map needs to be >= pci aperture size.
+ * drm/radeon/kms: make sure blit addr masks are 64 bit.
+ * drm/radeon/kms: fix handling of tex lookup disable in cs checker on r2xx.
+ * drm/i915: Free hardware status page on unload when physically mapped.
+ * drm/i915/overlay: Ensure that the reg_bo is in the GTT prior to writing.
+ * drm/radeon/kms/atom: set sane defaults in atombios_get_encoder_mode().
+ * drm/radeon/kms: fix typos in disabled vbios code.
+ * drm/radeon/kms: add workaround for dce3 ddc line vbios bug.
+ * drm/radeon/kms: fix interlaced and doublescan handling.
+ * drm/i915/sdvo: Always add a 30ms delay to make SDVO TV detection reliable.
+ * wireless: b43: fix error path in SDIO.
+ * drm/radeon/kms: don't apply 7xx HDP flush workaround on AGP.
+
+ [ Ian Campbell ]
+ * xen: backport TTM patches to use PCI API. Fixes PCIe GPU (specifically
+ Radeon and Nouveau) on Xen (Closes: #601341).
+ * xen: netback: drop SKBs which are GSO but do not have a partial
+ checksum set (Closes: #608144).
+
+ [ dann frazier ]
+ * exec: make argv/envp memory visible to oom-killer (CVE-2010-4243)
+ * irda: Fix information leak in IRLMP_ENUMDEVICES (CVE-2010-4529)
+ * af_unix: limit unix_tot_inflight (CVE-2010-4249)
+
+ [ Moritz Muehlenhoff ]
+ * net: ax25: fix information leak to userland (CVE-2010-3875)
+ * net: packet: fix information leak to userland (CVE-2010-3876)
+ * net: tipc: fix information leak to userland (CVE-2010-3877)
+ * inet_diag: Make sure we actually run the same bytecode we audited
+ (CVE-2010-3880)
+ * econet: Fix crash in aun_incoming() (CVE-2010-4342)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 11 Jan 2011 05:42:11 +0000
+
+linux-2.6 (2.6.32-29) unstable; urgency=high
+
+ [ Ben Hutchings ]
+ * megaraid_sas: Add support for 'entry-level' SAS controllers including
+ the 9240 family (Closes: #604083)
+ * tcp: Make TCP_MAXSEG minimum more correct (refinement of fix for
+ CVE-2010-4165)
+ * l2tp: Fix UDP socket reference count bugs in the pppol2tp driver
+ (Closes: #604748)
+ * USB: Retain device power/wakeup setting across reconfiguration;
+ don't enable remote wakeup by default (Closes: #605246)
+ * dm: Deal with merge_bvec_fn in component devices better (Closes: #604457)
+ * Update Spanish debconf template translation (Aaron H Farias Martinez)
+ (Closes: #600694)
+ * perf: Use libiberty, not libbfd, for symbol demangling
+ (Closes: #590226, #606050)
+ * [x86] Add support for Fintek hardware watchdogs (Closes: #601187)
+ - resource: Add shared I/O region support
+ - hwmon: f71882fg: Use a muxed resource lock for the Super I/O port
+ - watchdog: Add f71808e_wdt driver
+ * bcm5974: Add reporting of multitouch events (Closes: #605450)
+ * fusion: Set FUSION_MAX_SGE=128, the upstream default (Closes: #606096)
+ * Add stable 2.6.32.27:
+ - block: limit vec count in bio_kmalloc() and bio_alloc_map_data()
+ - block: take care not to overflow when calculating total iov length
+ - block: check for proper length of iov entries in blk_rq_map_user_iov()
+ (CVE-2010-4163)
+ - net: clear heap allocation for ETHTOOL_GRXCLSRLALL (CVE-2010-3861)
+ - asus_oled: fix up some sysfs attribute permissions
+ - ipc: initialize structure memory to zero for compat functions
+ (CVE-2010-4073)
+ - ipc/shm: fix information leak to userland (CVE-2010-4072)
+ - ipc/sem: sys_semctl: fix kernel stack information leakage (CVE-2010-4083)
+ - tty: prevent DOS in the flush_to_ldisc
+ - [x86] KVM: VMX: Fix host userspace gsbase corruption (Closes: #604956)
+ - KVM: VMX: fix vmx null pointer dereference on debug register access
+ (CVE-2010-0435)
+ - KVM: x86: fix information leak to userland (CVE-2010-3881)
+ - firewire/cdev: fix information leak
+ - firewire-core: fix an information leak
+ - firewire-ohci: fix buffer overflow in AR split packet handling
+ - bio: take care not overflow page count when mapping/copying user data
+ (CVE-2010-4162)
+ - sisusbvga: fix information leak to userland
+ - iowarrior: fix information leak to userland
+ - usb: core: fix information leak to userland
+ - usb-storage/sierra_ms: fix sysfs file attribute
+ - ueagle-atm: fix up some permissions on the sysfs files
+ - cypress_cy7c63: fix up some sysfs attribute permissions
+ - usbled: fix up some sysfs attribute permissions
+ - trancevibrator: fix up a sysfs attribute permission
+ - usbsevseg: fix up some sysfs attribute permissions
+ - do_exit(): make sure that we run with get_fs() == USER_DS (CVE-2010-4258)
+ - DECnet: don't leak uninitialized stack byte
+ - perf_events: Fix perf_counter_mmap() hook in mprotect() (CVE-2010-4169)
+ - frontier: fix up some sysfs attribute permissions
+ - net/sched: fix kernel information leak in act_police
+ - can-bcm: fix minor heap overflow (CVE-2010-3874)
+ - ivtvfb: prevent reading uninitialized stack memory (CVE-2010-4079)
+ - net/sched: fix some kernel information leaks
+ * TTY: Fix error return from tty_ldisc_open() (regression in 2.6.32.27)
+ * filter: make sure filters dont read uninitialized memory (CVE-2010-4158)
+ * posix-cpu-timers: workaround to suppress the problems with mt exec
+ (CVE-2010-4248)
+
+ [ Ian Campbell ]
+ * xen: disable ACPI NUMA for PV guests and allow IRQ desc allocation on any
+ node (Closes: #603632)
+ * xen: handle potential time discontinuity on resume (Closes: #602273)
+ * xen: don't bother to stop other cpus on shutdown/reboot (Closes: #605448)
+ * xen: Add cpu hotplug support to prevent crash while parsing ACPI processor
+ tables (Closes: #602109)
+
+ [ Martin Michlmayr ]
+ * Kirkwood: Add support for 6282 based QNAP devices.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 10 Dec 2010 05:45:11 +0000
+
+linux-2.6 (2.6.32-28) unstable; urgency=high
+
+ [ maximilian attems ]
+ * ipc: initialize structure memory to zero for shmctl.
+ * drm/i915: set DIDL using the ACPI video output device _ADR method return.
+ * images: Nuke modules.devname on removal. (closes: #590607)
+ * Newer Standards-Version 3.9.1 without changes.
+ * drm/ttm: Clear the ghost cpu_writers flag on ttm_buffer_object_transfer.
+ * [openvz] Update upstream patch to 2.6.32-dzhanibekov.
+ * [openvz] ubc: Fix orphan count checks after merge.
+
+ [ Martin Michlmayr ]
+ * Update udlfb to 2.6.37:
+ - udlfb: minor cleanups
+ - udlfb: fix coding style issues
+ - udlfb: fbdev character read and write support
+ - udlfb: add DPMS support
+ - udlfb: remove metrics_misc sysfs attribute
+ - udlfb: revamp reference handling to insure successful shutdown
+ - udlfb: enhance EDID and mode handling support
+ - udlfb: fix big endian rendering error
+ - udlfb: support for writing backup EDID to sysfs file
+ - udlfb: add module options for console and fb_defio
+ - udlfb: fix incorrect fb_defio implementation for multiple framebuffers
+ - udlfb: fix checkpatch and style
+
+ [ Ben Hutchings ]
+ * Update debconf template translations:
+ - Update Japanese (Nobuhiro Iwamatsu) (Closes: #602152)
+ - Update Catalan (Jordi Mallach) (Closes: #602520)
+ - Add Italian (Luca Bruno) (Closes: #602945)
+ * sunrpc: Fix NFS client over TCP hangs due to packet loss (Closes: #589945)
+ * brcm80211: Update to 2.6.37-rc1
+ * [powerpc] ALSA: Fix headphone and line-out detection on PowerMac G4 DA
+ (Closes: #603419)
+ * [x86] snd-hda-codec-cirrus: Add quirks for IMac 27", MacBookPro 5,5 and 7,1
+ * [x86] btusb: Add device IDs for MacBookPro 6,2 and 7,1 (Closes: #603651)
+ * [x86] applesmc: Add support for iMac 9,1 and MacBookPro 2,2, 5,3, 5,4, 6,*
+ and 7,*
+ * [x86] applesmc, bcm5974, btusb, HID, mbp_nvidia_bl, snd-hda-codec-cirrus:
+ Add support for MacBookAir 3,1 and 3,2 (Closes: #603395)
+ * [x86] mbp_nvidia_bl: Add support for MacBookPro 7,1
+ * x25: Fix remote denial-of-service vulnerabilities:
+ - x25 accesses fields beyond end of packet
+ - memory corruption in X.25 facilities parsing (CVE-2010-3873)
+ - Prevent crashing when parsing bad X.25 facilities (CVE-2010-4164)
+ * tcp: Increase TCP_MAXSEG socket option minimum (CVE-2010-4165)
+ * rds: Fix integer overflow in RDS cmsg handling
+ * af_802154,decnet,econet,rds,x25: Disable auto-loading as mitigation
+ against local exploits. These protocol modules are not widely used
+ and can be explicitly loaded or aliased on systems where they are
+ wanted.
+ * atl1c: Add support for Atheros AR8151 and AR8152 (Closes: #599771)
+ * Add stable 2.6.32.26:
+ - synclink_cs: Fix information leak to userland
+ - bluetooth: Fix missing NULL check
+ - [x86] KVM: VMX: Fix host GDT.LIMIT corruption
+ - [x86] KVM: Fix fs/gs reload oops with invalid ldt (CVE-2010-3698)
+ - gdth: Fix integer overflow in ioctl (CVE-2010-4157)
+ * [x86] KVM: SVM: Fix wrong intercept masks for KVM_{GET,SET}_VCPU_EVENTS
+ on 32 bit, thanks to Philipp Matthias Hahn (Closes: #599507)
+
+ [ dann frazier ]
+ * [vserver] Update patch to 2.6.32.25-vs2.3.0.36.29.6
+ * add qlcnic driver
+ * econet: Avoid stack overflow w/ large msgiovlen (CVE-2010-3848)
+ * econet: disallow NULL remote addr for sendmsg() (CVE-2010-3849)
+ * econet: Add mising CAP_NET_ADMIN check in SIOCSIFADDR (CVE-2010-3850)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 25 Nov 2010 01:20:50 +0000
+
+linux-2.6 (2.6.32-27) unstable; urgency=high
+
+ * The "We'll Always Have Paris" release
+
+ [ Ben Hutchings ]
+ * rndis_host: Restrict fix for #576929 to specific devices
+ (Closes: #589403, #600660)
+ * Add stable 2.6.32.25:
+ - rme9652: prevent reading uninitialized stack memory
+ (CVE-2010-4080, CVE-2010-4081)
+ - ocfs2: Don't walk off the end of fast symlinks
+ - ip: fix truesize mismatch in ip fragmentation
+ - net: clear heap allocations for privileged ethtool actions
+ - execve: setup_arg_pages: diagnose excessive argument size
+ - execve: improve interactivity with large arguments
+ - execve: make responsive to SIGKILL with large arguments
+ - rose: Fix signedness issues wrt. digi count. (CVE-2010-3310)
+ - ALSA: prevent heap corruption in snd_ctl_new() (CVE-2010-3442)
+ - setup_arg_pages: diagnose excessive argument size (CVE-2010-3858)
+ * btrfs: add a "df" ioctl for btrfs (Closes: #600190)
+ * Update debconf template translations:
+ - Add Catalan (Jordi Mallach) (Closes: #601146)
+ - Add Brazilian Portugese (Flamarion Jorge) (Closes: #601102)
+ - Update Vietnamese (Clytie Siddall) (Closes: #601534)
+ * phonet: device notifier only runs on initial namespace
+ (Really closes: #597904)
+ * net/socket: Limit sendto()/recvfrom() length (CVE-2010-1187)
+ [Original reference is incorrect; should be CVE-2010-3859.]
+
+ [ Ian Campbell ]
+ * xen: import additional fixes for disabling netfront smartpoll mode
+ (Closes: #600992).
+
+ [ dann frazier ]
+ * e1000e: Reset 82577/82578 PHY before first PHY register read
+ (Closes: #601017)
+
+ [ Martin Michlmayr ]
+ * Kirkwood: reset PCIe unit on boot
+ * Kirkwood: restrict the scope of the PCIe reset workaround
+
+ [ maximilian attems ]
+ * Update abi files, readd Xen as ABI stable.
+ * 2.6.33.stable-queue: drm/radeon: fix PCI ID 5657 to be an RV410.
+ * Add drm changes from 2.6.32.24+drm33.11:
+ - i915: return -EFAULT if copy_to_user fails.
+ - drm/i915: Prevent double dpms on
+ - drm: Only decouple the old_fb from the crtc is we call mode_set*
+ - drm/i915: Unset cursor if out-of-bounds upon mode change (v4)
+ - drm/i915,agp/intel: Add second set of PCI-IDs for B43
+ * net: Limit socket I/O iovec total length to INT_MAX. (CVE-2010-1187)
+ [Original reference is incorrect; should be CVE-2010-3859.]
+ * numa: fix slab_node(MPOL_BIND).
+
+ -- maximilian attems <maks@debian.org> Sat, 30 Oct 2010 12:24:37 +0200
+
+linux-2.6 (2.6.32-26) unstable; urgency=high
+
+ [ Ian Campbell ]
+ * xen: fix PVHVM hang at boot when Xen does not support vector callbacks.
+ * xen: fix race between PV drivers and xenstore initialisation which caused
+ breakage in drivers for both regular PV and PVHVM guests.
+
+ [ maximilian attems ]
+ * [openvz] Enable ioprio. (closes: #596772)
+ Thanks Daniel Hahler <debian-bugs@thequod.de>
+
+ [ Ben Hutchings ]
+ * [x86] radeon: Add quirks to make HP nx6125 and dv5000 laptops resume
+ (Closes: #583968)
+ * dm-crypt: Add 'plain64' IV; this avoids watermarking attacks that are
+ possible with 'plain' IV on devices larger than 2TB (Closes: #600384)
+ * [x86] ahci,ata_generic: let ata_generic handle new MBP w/ MCP89
+ (Closes: #600305)
+ * debian/.../patches.py: Open files as needed, rather than all at once
+ (Closes: #600423)
+ * [openvz] printk: Handle global log buffer reallocation (Closes: #600299)
+ * debian/bin/test-patches: Restrict patches to featureset when building
+ with a featureset (thanks to Tim Small)
+ * sata_via: Delay on vt6420 when starting ATAPI DMA write (Closes: #488566)
+ * r6040: Fix various bugs in r6040_multicast_list() (Closes: #600155)
+
+ [ dann frazier ]
+ * Force enable DMA on MBP w/ MCP 7,1
+ * RDS sockets: remove unsafe kmap_atomic optimization (CVE-2010-3904)
+ * v4l: disable dangerous buggy compat function (CVE-2010-2963)
+
+ -- dann frazier <dannf@debian.org> Tue, 19 Oct 2010 07:50:55 -0600
+
+linux-2.6 (2.6.32-25) unstable; urgency=high
+
+ [ Ben Hutchings ]
+ * mmc: build fix: mmc_pm_notify is only available with CONFIG_PM=y
+ * Add stable 2.6.32.24 (trivial fix, already applied)
+ * ipg: Remove device claimed by dl2k from pci id table (Closes: #599021)
+ * linux-image: Include modules.order in image packages (Closes: #598518)
+ * [x86] isdn/i4l: Reenable ISDN4Linux drivers, but mark them as staging
+ (Closes: #588551)
+ - hisax: Disable device aliases that conflict with mISDN
+ * Update Danish debconf template translation (Joe Hansen) (Closes: #599457)
+ * [x86] KVM: SVM: Fix wrong intercept masks on 32 bit (Closes: #599507)
+ * e1000: fix Tx hangs by disabling 64-bit DMA (Closes: #518182)
+ * rt2x00: Fix calculation of required TX headroom (Closes: #599395)
+ * Add drm changes from 2.6.32.22+drm33.10:
+ - i915: Don't touch PORT_HOTPLUG_EN in intel_dp_detect()
+ - i915: Kill dangerous pending-flip debugging
+ - radeon: release AGP bridge at suspend
+ - radeon: initialize set_surface_reg for rs600 asic
+ * [x86] toshiba_acpi: Add full hotkey support (Closes: #599768)
+
+ [ Stephen R. Marenka ]
+ * m68k: fix missing io macros.
+ * m68k: modular swim on mac.
+ * m68k: never build staging drivers on m68k.
+ * m68k: build in rtc class on atari.
+
+ [ Ian Campbell ]
+ * xen: do not truncate machine address on gnttab_copy_grant_page hypercall
+ (Closes: #599089)
+
+ [ dann frazier ]
+ * drm/i915: Sanity check pread/pwrite (CVE-2010-2962)
+ * drm/i915: Rephrase pwrite bounds checking to avoid any potential overflow
+ * GFS2: Fix writing to non-page aligned gfs2_quota structures (CVE-2010-1436)
+ * hvc_console: Fix race between hvc_close and hvc_remove (CVE-2010-2653)
+ * net sched: fix some kernel memory leaks (CVE-2010-2942)
+ * niu: Fix kernel buffer overflow for ETHTOOL_GRXCLSRLALL (CVE-2010-3084)
+ * rose: Fix signedness issues wrt. digi count (CVE-2010-3310)
+ * Fix pktcdvd ioctl dev_minor range check (CVE-2010-3437)
+ * ALSA: prevent heap corruption in snd_ctl_new() (CVE-2010-3442)
+ * net sched: fix kernel leak in act_police (CVE-2010-3477)
+ * sctp: Fix out-of-bounds reading in sctp_asoc_get_hmac() (CVE-2010-3705)
+
+ -- dann frazier <dannf@debian.org> Thu, 14 Oct 2010 01:08:05 -0600
+
+linux-2.6 (2.6.32-24) unstable; urgency=high
+
+ [ Ben Hutchings ]
+ * speakup: Update to match Debian package version 3.1.5.dfsg.1-1
+ * scsi_dh_emc: Fix mode select request setup (Closes: #591540)
+ * snd-hda-codec-via: Fix syntax error when CONFIG_SND_HDA_POWER_SAVE is
+ disabled (Closes: #597043)
+ * Add stable 2.6.32.22:
+ - [vserver] Revert sched changes since they conflict.
+ * Recommend use of 'make deb-pkg' to build custom kernel packages
+ * [x86] Revert "i915: Blacklist i830, i845, i855 for KMS". The current X
+ driver (xserver-xorg-video-intel version 2.12.0+shadow-1) should work
+ properly with KMS on these chips. (Closes: #596453)
+ * phonet: Restrict to initial namespace (Closes: #597904)
+ * Add stable 2.6.32.23:
+ - serial/mos*: prevent reading uninitialized stack memory
+ - net: Fix oops from tcp_collapse() when using splice()
+ - rds: fix a leak of kernel memory
+ - hso: prevent reading uninitialized memory (CVE-2010-3298)
+ - cxgb3: prevent reading uninitialized stack memory (CVE-2010-3296)
+ - eql: prevent reading uninitialized stack memory (CVE-2010-3297)
+ - vt6655: fix buffer overflow
+ - net/llc: make opt unsigned in llc_ui_setsockopt()
+ - sisfb: prevent reading uninitialized stack memory
+ - aio: check for multiplication overflow in do_io_submit (CVE-2010-3067)
+ - xfs: prevent reading uninitialized stack memory (CVE-2010-3078)
+ - viafb: prevent reading uninitialized stack memory
+ - [hppa,ia64] mm: guard page for stacks that grow upwards (CVE-2010-2240)
+ - sctp: Do not reset the packet during sctp_packet_config()
+ (CVE-2010-3432)
+ * xen: Fix typo in xen_percpu_chip definition
+ * 3c59x: Remove incorrect locking (Closes: #598103)
+ * f71882fg: Add support for the f71889fg (Closes: #597820)
+ * drm/radeon: Fix regressions introduced in 2.6.34.3 (Closes: #597636)
+ * mmc: fix hangs related to mmc/sd card insert/removal during suspend/resume
+ (Closes: #598147)
+
+ [ Martin Michlmayr ]
+ * ARM: update mach types.
+ * [armel/config.kirkwood] Enable MACH_DOCKSTAR.
+
+ [ Ian Campbell ]
+ * [x86/xen] Disable netfront's smartpoll mode by default. (Closes: #596635)
+
+ [ maximilian attems ]
+ * [openvz] Update upstream patch to 2.6.32-dyomin.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 30 Sep 2010 00:46:16 +0100
+
+linux-2.6 (2.6.32-23) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * cgroupfs: create /sys/fs/cgroup to mount cgroupfs on (Closes: #595964)
+ * r8169: Fix MDIO timing (Closes: #583139; mistakenly reverted in 2.6.32-19)
+ * gro: Fix bogus gso_size on the first fraglist entry (Closes: #596802)
+ * vgaarb: Fix VGA arbiter to accept PCI domains other than 0 (from stable
+ 2.6.32.12; mistakenly omitted in 2.6.32-12)
+
+ [ maximilian attems ]
+ * openvz: cfq-iosched: do not force idling for sync workload.
+
+ [ Stephen R. Marenka ]
+ * m68k: switch to generic siginfo layout.
+ * m68k: NPTL support.
+
+ [ dann frazier ]
+ * compat: Make compat_alloc_user_space() incorporate the access_ok()
+ (CVE-2010-3081)
+ * x86-64, compat (CVE-2010-3301):
+ - Retruncate rax after ia32 syscall entry tracing
+ - Test %rax for the syscall number, not %eax
+ * wireless extensions: fix kernel heap content leak (CVE-2010-2955)
+ * KEYS (CVE-2010-2960):
+ - Fix RCU no-lock warning in keyctl_session_to_parent()
+ - Fix bug in keyctl_session_to_parent() if parent has no session keyring
+
+ -- dann frazier <dannf@debian.org> Fri, 17 Sep 2010 15:27:04 -0600
+
+linux-2.6 (2.6.32-22) unstable; urgency=low
+
+ [ Ian Campbell ]
+ * xen: backport pvhvm drivers from upstream.
+ * Fixes/overrides for Lintian warnings:
+ - Add "(meta package)" to short description of linux-headers
+ metapackages, resolves empty-binary-package.
+ - Add dependency on ${misc:Depends} to all packages, resolves
+ debhelper-but-no-misc-depends. Required update to gencontrol.py to
+ augment rather than override headers_arch_depends read from templates.
+ - Override dbg-package-missing-depends for linux-image-*-dbg. It is not
+ necessary to install the kernel image package to use the dbg package
+ since the dbg package already contains a complete image with symbols.
+
+ [ Ben Hutchings ]
+ * [x86/xen] Restore stack guard page (CVE-2010-2240)
+ * Add stable 2.6.32.21:
+ - ext4: consolidate in_range() definitions (CVE-2010-3015)
+ - mm: make the mlock() stack guard page checks stricter
+ (avoids regression for Xen tools; closes: 594756)
+ - [sparc] sunxvr500: Ignore secondary output PCI devices
+ (Closes: #594604)
+ - ocfs2: fix o2dlm dlm run purgelist (Closes: #593679)
+ - Avoid ABI change in mm
+ - Ignore ABI change in snd-emu10k1
+ * Add drm changes from stable 2.6.34.6:
+ - drm: stop information leak of old kernel stack (CVE-2010-2803)
+ * rt2870sta: Add more device IDs from vendor drivers
+ * rt2860sta, rt2870sta: Enable channels 12-14 (Closes: #594561)
+ * SCSI/mptsas: fix hangs caused by ATA pass-through (Closes: #594690)
+ * sky2: Apply fixes and new hardware support from 2.6.33-2.6.35
+ (Closes: #571526)
+ * postinst: Really warn users on upgrade if the current configuration may
+ rely on running a default boot loader.
+ * input: add compat support for sysfs and /proc capabilities output
+ (Closes: #579017)
+ * snd-hda-intel: Add support for VIA V1708S, VT1718S, VT1828S, VT2020,
+ VT1716S, VT2002P, VT1812, VT1818S
+ * hwmon/w83627ehf: Add support for W83667HG-B
+ * 3c59x: Fix deadlock in vortex_error() (Closes: #595554)
+ * [x86] paravirt: Add a global synchronization point for pvclock (from
+ 2.6.32.16; reverted due to a regression which was addressed in 2.6.32.19)
+ * sched, cputime: Introduce thread_group_times() (from 2.6.32.19; reverted
+ due to the potential ABI change which we now carefully avoid)
+ * net/{tcp,udp,llc,sctp,tipc,x25}: Add limit for socket backlog
+ (Closes: #592187)
+ * tun: Don't add sysfs attributes to devices without sysfs directories
+ (Closes: #594845)
+ * [x86] Add brcm80211 driver for Broadcom 802.11n wireless network
+ controllers
+ * r8169: Remove MODULE_FIRMWARE declarations since the firmware is
+ non-essential and we do not distribute it
+ * [x86] HPET: unmap unused I/O space
+ * ipheth: add support for iPhone 4
+ * ipheth: remove incorrect devtype of WWAN
+ * ALSA: emux: Add trivial compat ioctl handler (Closes: #596478)
+ * hostap_pci: set dev->base_addr during probe (Closes: #595802)
+ * ethtool: allow non-netadmin to query settings (see #520724)
+ * ACPI: add boot option acpi=copy_dsdt to fix corrupt DSDT, and enable this
+ automatically for known-bad Toshiba models (Closes: #596709)
+
+ [ Bastian Blank ]
+ * Use Breaks instead of Conflicts.
+
+ [ Aurelien Jarno ]
+ * [mips,mipsel] Fix computation of DMA flags from device's
+ coherent_dma_mask.
+
+ [ Martin Michlmayr ]
+ * Add some patches from the Orion tree:
+ - OpenRD: Enable SD/UART selection for serial port 1
+ - kirkwood: Unbreak PCIe I/O port
+ - Kirkwood: support for Seagate DockStar
+
+ [ dann frazier ]
+ * netxen_nic: add support for loading unified firmware images
+ * irda: Correctly clean up self->ias_obj on irda_bind() failure.
+ (CVE-2010-2954)
+
+ [ maximilian attems ]
+ * [powerpc] Enable WINDFARM_PM121. (closes: #596515)
+ Thanks Étienne BERSAC <bersace03@gmail.com>
+ * nouveau: disable acceleration on NVA3/NVA5/NVA8 by default.
+ * openvz: disable KSM. Thanks Dietmar Maurer <dietmar@proxmox.com>.
+ (closes: #585864)
+ * Update openvz patch to d38b56fd0dca.
+ * openvz: enalbe modular VZ_EVENT.
+
+ -- maximilian attems <maks@debian.org> Tue, 14 Sep 2010 14:17:11 +0200
+
+linux-2.6 (2.6.32-21) unstable; urgency=high
+
+ [ Ben Hutchings ]
+ * Add stable 2.6.32.19:
+ - ext4: Make sure the MOVE_EXT ioctl can't overwrite append-only files
+ (CVE-2010-2066)
+ - mm: keep a guard page below a grow-down stack segment (CVE-2010-2240)
+ (not applied to xen featureset)
+ - md/raid10: fix deadlock with unaligned read during resync
+ (Closes: #591415)
+ - Revert "sched, cputime: Introduce thread_group_times()" which would
+ result in an ABI change
+ * Add stable 2.6.32.20:
+ - Fix regressions introduced by original fix for CVE-2010-2240
+ * Add drm and other relevant changes from stable 2.6.34.4
+ * Add 'breaks' relation from image packages to boot loader packages that
+ do not install required hooks (Closes: #593683)
+ * [x86] i915: Blacklist i830, i845, i855 for KMS
+ (Closes: #568207, #582105, #593432, #593507)
+
+ [ Bastian Blank ]
+ * Update Xen patch.
+ - Notify Xen on crash.
+ - Several blktap fixes.
+
+ [ Ritesh Raj Sarraf ]
+ * Add .gnu_debuglink information into kernel modules (Closes: #555549)
+
+ [ Ian Campbell ]
+ * [x86/xen] temporarily remove stack guard page, it breaks the xen
+ toolstack.
+
+ [ Aurelien Jarno ]
+ * [mips,mipsel] Fix 64-bit atomics.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 25 Aug 2010 01:06:18 +0100
+
+linux-2.6 (2.6.32-20) unstable; urgency=low
+
+ [ Moritz Muehlenhoff ]
+ * Backport XVR1000 driver (Closes: #574243)
+
+ [ Ben Hutchings ]
+ * Add stable 2.6.32.18:
+ - CIFS: Fix compile error with __init in cifs_init_dns_resolver()
+ definition (FTBFS for most architectures)
+ - GFS2: rename causes kernel Oops (CVE-2010-2798)
+ - xfs: prevent swapext from operating on write-only files
+ (CVE-2010-2226)
+ * Update debconf template translations:
+ - Swedish (Martin Bagge) (Closes: #592045)
+ - German (Holger Wansing) (Closes: #592226)
+ * [i386/openvz-686] Remove AMD Geode LX and VIA C3 "Nehemiah" from the
+ list of supported processors; they do not implement PAE
+ * V4L/DVB: Add Elgato EyeTV Diversity to dibcom driver (Closes: #591710)
+ * [s390] dasd: use correct label location for diag fba disks
+ (Closes: #582281)
+ * Add drm changes from stable 2.6.34.2 (thanks to Stefan Bader) and
+ 2.6.34.3
+ * drm/i915: disable FBC when more than one pipe is active
+ (Closes: #589077)
+ * IB/ipath: Fix probe failure path (Closes: #579393)
+ * ext4: fix freeze deadlock under IO (regression introduced in 2.6.32.17)
+ * xen: Completely disable use of XSAVE (Closes: #592428)
+
+ [ Martin Michlmayr ]
+ * [armel/orion5x] Add a missing #include to fix a build issue.
+ * [armel/kirkwood, armel/orion5x] Build-in support for more devices.
+
+ [ dann frazier ]
+ * can: add limit for nframes and clean up signed/unsigned variables
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 12 Aug 2010 03:26:39 +0100
+
+linux-2.6 (2.6.32-19) unstable; urgency=low
+
+ [ maximilian attems ]
+ * inotify send IN_UNMOUNT events.
+ * inotify fix oneshot support.
+
+ [ Ben Hutchings ]
+ * linux-base: Remove dependency on libapt-pkg-perl (Closes: #589996)
+ * pata_pdc202xx_old: Fix UDMA mode for PDC2024x and PDC2026x controllers
+ (Closes: #590532)
+ * Update debconf template translations:
+ - Czech (Michal Simunek) (Closes: #590546)
+ - Portugese (Américo Monteiro) (Closes: #590557)
+ - French (David Prévot) (Closes: #591149)
+ - Russian (Yuri Kozlov) (Closes: #591241)
+ * Add stable 2.6.32.17:
+ - ethtool: Fix potential kernel buffer overflow in ETHTOOL_GRXCLSRLALL
+ (CVE-2010-2478)
+ - GFS2: Fix up system xattrs (CVE-2010-2525)
+ - Revert ABI changes in firmware_class and ssb
+ - Ignore ABI changes in acpi_processor, hostap and jbd2
+ * Add drm changes from stable 2.6.33.7:
+ - drm/i915: Enable low-power render writes on GEN3 hardware (915, 945,
+ G33 and Atom "Pineview") (Closes: #590193, maybe others)
+ * [i386/xen-686] Remove AMD Geode LX and VIA C3 "Nehemiah" from the list
+ of supported processors; they do not implement PAE
+ * [x86] Add samsung-laptop driver
+
+ [ dann frazier ]
+ * [ia64] Fix crash when gcore reads gate area (Closes: #588574)
+
+ [ Bastian Blank ]
+ * Update Xen patch.
+ - Ignore ABI changes.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 05 Aug 2010 02:43:19 +0100
+
+linux-2.6 (2.6.32-18) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * iwlwifi: Allocate pages for RX buffers, reducing the probability of
+ allocation failure (Closes: #580124)
+ * postinst: Remove support for 'default' boot loaders. Warn users on
+ upgrade if the current configuration may rely on this.
+ * rt2860sta, rt2870sta: Apply changes from Linux 2.6.33 and 2.6.34
+ - rt2860sta: Fix WPA(2)PSK issue when group cipher of AP is WEP40
+ or WEP104 (Closes: #574766)
+ * rt3090sta: Replace with rt2860sta (Closes: #588863)
+ * [i386/686] Remove AMD K6 from the list of supported processors; it
+ does not implement the CMOV instruction
+ * drm/i915: Add 'reclaimable' to i915 self-reclaimable page allocations
+ (really closes: #534422, we hope)
+ * Revert "x86, paravirt: Add a global synchronization point for pvclock",
+ included in stable 2.6.32.16 (Closes: #588426)
+ * 3c59x: Fix call to mdio_sync() with the wrong argument (Closes: #589989)
+
+ [ Martin Michlmayr ]
+ * Add some patches from the Orion tree, including support for Marvell's
+ Armada 300 (88F6282):
+ - Kirkwood: update MPP definition.
+ - Kirkwood: fix HP t5325 after updating MPP definitions
+ - leds: leds-gpio: Change blink_set callback to be able to turn off
+ blinking
+ - net/phy/marvell: Expose IDs and flags in a .h and add dns323 LEDs
+ setup flag
+ - orion5x: Base support for DNS-323 rev C1
+ - orion5x: Fix soft-reset for some platforms
+ - mtd: orion/kirkwood: add RnB line support to orion mtd driver
+ - mtd: kirkwood: allow machines to register RnB callback
+ - Kirkwood: add support for rev A1 of the 88f6192 and 88f6180 chips
+ - Kirkwood: Add support for 88f6282
+ - PCI: add platform private data to pci_sys_data
+ - Kirkwood: add support for PCIe1
+ - Kirkwood: more factorization of the PCIe init code
+
+ [ maximilian attems ]
+ * sched: Fix over-scheduling bug.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 23 Jul 2010 03:48:08 +0100
+
+linux-2.6 (2.6.32-17) unstable; urgency=low
+
+ [ maximilian attems ]
+ * agp: add no warn since we have a fallback to vmalloc paths.
+
+ [ Ben Hutchings ]
+ * linux-tools: Fix build for hppa and do not attempt to build for
+ architectures where perf events are not available (Closes: #588409)
+ * linux-tools: Add build-dependency on binutils-dev to enable symbol
+ demangling in perf
+ * drm/i915: Fix memory corruption on resume from hibernation
+ (Closes: #534422)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 10 Jul 2010 16:40:38 +0100
+
+linux-2.6 (2.6.32-16) unstable; urgency=low
+
+ [ dann frazier ]
+ * [hppa] clear floating point exception flag on SIGFPE signal
+ (Closes: #559406)
+
+ [ Ben Hutchings ]
+ * Add stable 2.6.32.15
+ * Add mantis and hopper DVB drivers with mb86a16 and tda665x DVB
+ front-ends, backported by Bjørn Mork (Closes: #577264)
+ * Build inet_lro as a module
+ * [sparc] Enable CONFIG_FB_XVR500, CONFIG_FB_XVR2500 (Closes: #508108)
+ * Update Spanish debconf templates, thanks to Omar Campagne
+ (Closes: #580538)
+ * Revert "Add EC path for Thinkpad X100."; it is incomplete and broken
+ * sctp: fix append error cause to ERROR chunk correctly (regression due
+ to fix for CVE-2010-1173)
+ * [powerpc] Enable pata_amd driver, replacing amd74xx
+ * eeepc-laptop: Disable wireless hotplug on more models where the
+ controller is not at the expected address (Closes: #576199)
+ * [mips] Fix boot from ATA hard drives (Closes: #584784):
+ - Set io_map_base for several PCI bridges lacking it
+ - Replace per-platform built-in IDE drivers with libata-based drivers
+ - Enable BLK_DEV_SD as built-in on all platforms
+ * Revert "vlan/macvlan: propagate transmission state to upper layers"
+ (Closes: #585770)
+ * linux-base: Don't identify LVM2 PVs by UUID (Closes: #585852)
+ * usb-serial: Add generic USB WWAN code, backported by Mark Hymers
+ (Closes: #585661)
+ - option, qcserial: Use generic USB WWAN code
+ - qcserial: Add support for Qualcomm Gobi 2000 devices
+ * radeon: Fix MacBook Pro connector quirk (Closes: #585943)
+ * r8169: Fix MDIO timing (Closes: #583139)
+ * Move NEWS to linux-latest-2.6 (Closes: #586401)
+ * 3c59x: Change locking to avoid use of disable_irq() (Closes: #586967)
+ * Enable IPv6 support for IPVS (IP_VS_IPV6) (Closes: #584549)
+ * Revert "tpm: autoload tpm_tis based on system PnP IDs", included in
+ stable 2.6.32.12 (Closes: #584273)
+ * linux-base: If the disk ID update process fails, give the user a
+ chance to retry or change their answers (Closes: #585609)
+ * asix: fix setting mac address for AX88772 (Closes: #587580)
+ * ipv6: Clamp reported valid_lft to a minimum of 0 (Closes: #514644)
+ * ipv6: Use interface max_desync_factor instead of static default
+ (Closes: #514646)
+ * Add stable 2.6.32.16:
+ - Fixes CVE-2010-1641, CVE-2010-1187, CVE-2010-1148, CVE-2010-1173
+ and CVE-2010-2071
+ - libata: disable ATAPI AN by default (Closes: #582737, #582903)
+ * Add drm changes from stable 2.6.33.6
+ * [ia64, powerpc, sparc, x86] Enable KPROBES and KRETPROBES
+ (Closes: #584130)
+ * r8192s_usb: Fix various bugs:
+ - Check for skb allocation failure in 2 more places
+ - Update LED control code
+ - Clean up in case of an error in module initialisation
+ - Rename and remove proc directories correctly if an interface is
+ not called wlan0 (Closes: #582972)
+ - Correct device ID table (Closes: #584945, #587985)
+ * Add r8192u_usb driver
+ * Add linux-tools-<version> package containing the perf tool
+ (Closes: #548715)
+ * Enable USB_SERIAL_TI (Closes: #588096) and USB_SERIAL_WHITEHEAT
+
+ [ Aurelien Jarno ]
+ * [sh4] optimize runtime disabling of trapped I/O.
+ * [mips] backport mips/swarm: fix M3 TLB exception handler.
+
+ [ Moritz Muehlenhoff ]
+ * Enable X86 board specific fixups for reboot (Closes: #536537)
+
+ [ Martin Michlmayr ]
+ * OpenRD-Base: revert patch "allow SD/UART1 selection" since it
+ never made it upstream.
+ * ARM: update mach types.
+ * Add support for OpenRD-Ultimate.
+ * QNAP TS-11x/TS-21x: Add MPP36 (RAM) and MPP44 (board ID).
+ * Add support for the HP t5325 Thin Client.
+ * m25p80: Add support for Macronix 25L8005.
+ * Add framebuffer driver for XGI chipsets.
+ * [armel/kirkwood] Enable FB_XGI and FRAMEBUFFER_CONSOLE.
+ * [armel] Make MOUSE_PS2 modular.
+ * [armel] Build INPUT_UINPUT for all flavours.
+ * Update Marvell CESA (mv_cesa) driver (Closes: #585790):
+ - Invoke the user callback from a softirq context
+ - Remove compiler warning in mv_cesa driver
+ - Fix situation where the dest sglist is organized differently than...
+ - Fix situations where the src sglist spans more data than the reques...
+ - Enqueue generic async requests
+ - Rename a variable to a more suitable name
+ - Execute some code via function pointers rathr than direct calls
+ - Make the copy-back of data optional
+ - Support processing of data from previous requests
+ - Add sha1 and hmac(sha1) async hash drivers
+ * Update DisplayLink (udlfb) driver:
+ - add dynamic modeset support
+ - checkpatch cleanup
+ - reorganize function order
+ - pre-allocated urb list helpers
+ - clean up function naming
+ - Add functions to expose sysfs metrics and controls
+ - Rework startup and teardown to fix race conditions
+ - improved rendering performance
+ - Support for fbdev mmap clients (defio)
+ - explicit dependencies and warnings
+ - remove printk and small cleanup
+ * [armel/kirkwood] Enable FB_UDL.
+ * [armel] Disable PARPORT_PC (Closes: #588164)
+
+ [ Bastian Blank ]
+ * Disable mISDN support for NETJet cards. The driver binds a generic PCI
+ bridge.
+ * Disable ISDN4Linux drivers.
+
+ [ maximilian attems]
+ * Update openvz patch to 5fd638726a69.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Mon, 05 Jul 2010 22:13:33 +0100
+
+linux-2.6 (2.6.32-15) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * [hppa] Ignore ABI change caused by disabling CONFIG_IDE_TIMINGS
+ * [powerpc] Fix unnecessary ABI change
+
+ [ Bastian Blank ]
+ * xen: Fix crash in netback.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Tue, 01 Jun 2010 01:31:05 +0100
+
+linux-2.6 (2.6.32-14) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * [ia64] Hardcode the output of the scripts under arch/ia64/scripts so
+ that we can build out-of-tree modules correctly (refresh and re-add
+ dropped patch) (Closes: #392592)
+ * vlan/macvlan: propagate transmission state to upper layers
+ * macvlan: add GRO bit to features mask
+ * macvlan: allow multiple driver backends
+ * Add macvtap driver (Closes: #568755)
+ * [ia64] Enable SGI SN support and mspec driver (Closes: #582224)
+ * iwlwifi: Disable QoS when connected to a non-QoS-capable AP
+ (Closes: #578262)
+ * [x86] Disable e_powersaver cpufreq driver as unsafe. It has already
+ been blacklisted by cpufrequtils. The acpi-cpufreq driver can be used
+ instead on some VIA C7 systems. (Closes: #566208)
+ * nouveau: Fix fbcon corruption with font width not divisible by 8
+ (Closes: #583162)
+ * [amd64] ext4: Fix compat EXT4_IOC_ADD_GROUP (used by online resize)
+ * Install debug kernel image in /usr/lib/debug/boot (Closes: #582810)
+ * net: sysfs: Check for null ethtool_ops before getting speed/duplex
+ * Add stable 2.6.32.14:
+ - [hppa] Revert "parisc: Set PCI CLS early in boot.", erroneously
+ included in 2.6.32.13 causing FTBFS
+ - btrfs: check for read permission on src file in the clone ioctl
+ (CVE-2010-1636)
+
+ [ Bastian Blank ]
+ * Update Xen patch.
+ - Fix checksum offloading in netback. (closes: #583366)
+
+ [ maximilian attems]
+ * Add drm changes from stable 2.6.33.5:
+ - i915: Disable FBC on 915GM and 945GM (Closes: #582427)
+ * Update openvz patch to e7399c239fad.
+
+ [ Martin Michlmayr ]
+ * QNAP TS-419P: Export GPIO indicating jumper setting of JP1.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 29 May 2010 00:32:44 +0100
+
+linux-2.6 (2.6.32-13) unstable; urgency=low
+
+ [ Frederik Schueler ]
+ * sparc: Fix use of uid16_t and gid16_t in asm/stat.h
+
+ [ Moritz Muehlenhoff ]
+ * Enable tomoyo (Closes: #562486)
+
+ [ maximilian attems]
+ * backport KVM: x86: Extend KVM_SET_VCPU_EVENTS with selective updates.
+ (closes: #580652)
+ * KEYS: find_keyring_by_name() can gain access to a freed keyring.
+ CVE-2010-1437
+ * hppa, sparc, powerpc disable BLK_DEV_CMD64X.
+ * topconfig enable PATA_CMD64X. (closes: #580799)
+ * x86: Disable CRYPTO_AES_NI_INTEL as it causes boot failures on T410.
+ * Add stable 2.6.32.13:
+ - [SCSI] Enable retries for SYNCRONIZE_CACHE commands to fix I/O error.
+ - [SCSI] Retry commands with UNIT_ATTENTION sense codes to fix ext3/ext4
+ I/O errors.
+ - [SCSI] skip sense logging for some ATA PASS-THROUGH cdbs
+ (Closes: #578129)
+ - raid6: fix recovery performance regression.
+ - raid456: Enable error-correction on singly-degraded RAID6
+ (Closes: #581392)
+ - r8169: fix broken register writes (Closes: #407217, #573007)
+ - V4L/DVB: budget: Fix crash in case of failure to attach frontend
+ (Closes: #575207)
+ * drm/edid: Fix 1024x768@85Hz.
+
+ [ Ben Hutchings ]
+ * linux-base: Fix typo in disk relabelling code (Closes: #580467)
+ * linux-base: Don't quote boot device name in elilo.conf
+ (Closes: #580710; works-around: #581173)
+ * rtl8192su: Add IDs for several more devices (Closes: #580740)
+ * Add drm and sfc changes from stable 2.6.33.4
+ * Improve workaround for HPAs (Host Protected Areas) overlapping
+ partitions, thanks to Tejun Heo:
+ - SCSI/libata: Disable HPA if it overlaps a partition (Closes: #572618)
+ - buffer: Make invalidate_bdev() drain all percpu LRU add caches
+ - block: Rescan partition tables after HPA is disabled
+ - libata: Disable HPA if it is only enabled after suspend
+ * V4L/DVB: budget: Select correct frontend drivers (Closes: #575223)
+ * 3c503: Fix IRQ probing (Closes: #566522)
+ * sis-agp: Remove SIS 760, handled by amd64-agp
+ * amd64-agp: Probe unknown AGP devices the right way (Closes: #548090)
+
+ [ Aurelien Jarno ]
+ * mips/swarm: fix boot from IDE based media (Sebastian Andrzej Siewior)
+ (closes: #466977).
+ * backport mips/swarm: fix M3 TLB exception handler.
+ [This patch was actually reverted and never applied in version 2.6.32-13]
+ * backport MIPS FPU emulator: allow Cause bits of FCSR to be writeable
+ by ctc1. (closes: #580602).
+ * mips/swarm: enable adm* hwmon drivers.
+ * backport Input: Add support of Synaptics Clickpad device (Closes: #572842)
+
+ [ Bastian Blank ]
+ * Fix symlinks in several packages.
+ * Update Xen patch.
+ * [amd64, i386/{686-bigmem,openvz-686,vserver-686-bigmem,xen-686}]
+ Build debugging symbols. (closes: #365349)
+ * Ignore crypto ABI changes.
+
+ [ Martin Michlmayr ]
+ * Backport GuruPlug support.
+
+ [ Christian Perrier ]
+ * Update debconf templates:
+ - English revised by the debian-l10n-english team as part of the Smith
+ review project (Closes: #578349)
+ - Vietnamese (Clytie Siddall) (Closes: #579234)
+ - German (Holger Wansing) (Closes: #579864)
+ - Russian (Yuri Kozlov) (Closes: #578994)
+ - Estonian (mihkel) (Closes: #579019)
+ - Czech (Michal Simunek) (Closes: #579268)
+ - Swedish (Martin Bagge) (Closes: #579308)
+ - French (David Prévot) (Closes: #579763)
+ - Spanish (Omar Campagne) (Closes: #580538)
+ - Portuguese (Américo Monteiro) (Closes: #577227)
+ - Japanese (Kenshi Muto) (Closes: #580855)
+ - Danish (Joe Hansen) (Closes: #580915)
+ - Czech (Michal Simunek) (Closes: #581399)
+
+ -- maximilian attems <maks@debian.org> Mon, 17 May 2010 15:29:27 +0200
+
+linux-2.6 (2.6.32-12) unstable; urgency=low
+
+ * The "Microwave Background" release
+
+ [ Ben Hutchings ]
+ * Prepare debconf templates for translation. (closes: #576758)
+ * [x86] PCI/forcedeth: Disable MSI for MCP55 on P5N32-E SLI
+ (Closes: #552299)
+ * phylib: Fix typo in bcm63xx PHY driver table
+ * linux-base: Fix bugs and improve libata transition code:
+ - Fix scope of _system() function (Closes: #576925)
+ - Fix case where a file may wrongly be listed as automatically converted
+ (Closes: #577047)
+ - Check device IDs in mdadm.conf rather than assuming it needs manual
+ conversion
+ - Use vol_id if available since the version of blkid in lenny does not
+ support the output format we need (Closes: #576608)
+ - Fix missing line breaks in updated crypttab (Closes: #577735)
+ * i915: Stop trying to use ACPI lid status to determine LVDS connection
+ (Closes: #577724)
+ * forcedeth: Fix hardware version check for TX bug workaround
+ (Closes: #572201)
+ * rndis_host: Poll status channel before control channel (Closes: #576929)
+ * megaraid_sas: Fix copying of sense data for 32-bit management tools on
+ 64-bit kernel (Closes: #578398)
+ * Add ipheth driver for iPhone tethering
+ * virtio_net: Make delayed refill more reliable (Closes: #576838)
+
+ [ maximilian attems]
+ * [ia64] Built in fbcon.
+ * Update openvz patch to c05f95fcb04e. (closes: #574598)
+ * Reenable nouveau autoloading.
+ * reiserfs: Fix permissions on .reiserfs_priv. CVE-2010-1146
+ * libata,ata_piix: detect and clear spurious IRQs.
+ * libata/SCSI: fix locking around blk_abort_request().
+ * topconfig enable NET_DROP_MONITOR. (closes: #578568)
+ * Add stable 2.6.32.12:
+ - ACPI: EC: Allow multibyte access to EC; fixes temperature monitoring
+ on some Dell laptops (Closes: #563313)
+ - [x86] KVM: disable paravirt mmu reporting (Closes: #573071)
+ - thinkpad-acpi: lock down video output state access (Closes: #565790)
+ - xfs update (closes: #579410)
+ * Add drm changes from stable 2.6.33.3:
+ - drm/radeon: R300 AD only has one quad pipe (Closes: #575681)
+ * libata: Fix accesses at LBA28 boundary (old bug, but nasty) (v2)
+ * Add EC path for Thinkpad X100.
+ * Bump ABI to 5, apply:
+ - hrtimer: Tune hrtimer_interrupt hang logic
+ * Add libata TRIM support.
+ * Backport radeon r800 modesetting support.
+ * drm/radeon/kms: further spread spectrum fixes.
+ * Backport p54 fixes.
+ * net: export device speed and duplex via sysfs.
+ * postrm: rm modules.softdep. (closes: #579175)
+ * Backport KVM: Xen PV-on-HVM guest support.
+ * Backport KVM: x86: Add KVM_GET/SET_VCPU_EVENTS.
+ * hugetlb: fix infinite loop in get_futex_key() when backed by huge pages
+ * ext4: Issue the discard operation *before* releasing the blocks to be
+ reused.
+ * libiscsi: regression: fix header digest errors.
+ * Revert module.c and module.h changes from -stable update.
+
+ [ dann frazier ]
+ * Add DRBD backport
+ * sctp: Fix skb_over_panic resulting from multiple invalid parameter
+ errors (CVE-2010-1173)
+ * [CIFS] Allow null nd (as nfs server uses) on create (CVE-2010-1148)
+ * tipc: Fix oops on send prior to entering networked mode (CVE-2010-1187)
+ * [powerpc] KGDB: don't needlessly skip PAGE_USER test for Fsl booke
+ Note: KGDB is not currently enabled in debian builds (CVE-2010-1446)
+
+ [ Aurelien Jarno ]
+ * [sh4] Add a sh7751r flavour.
+ * [mips/*malta] Remove options that are present in topconfig.
+
+ [ Martin Michlmayr ]
+ * dns323-setup.c: fix WARN() when booting (Arnaud Patard).
+ * mips: enable PATA platform on SWARM and LITTLESUR (Sebastian Andrzej
+ Siewior).
+ * [mips/sb1-bcm91250a] Enable PATA_PLATFORM.
+
+ [ Bastian Blank ]
+ * Update Xen patch.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 01 May 2010 02:58:31 +0100
+
+linux-2.6 (2.6.32-11) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * [sparc] Provide io{read,write}{16,32}be() (Closes: #574421)
+ * Use libata-based drivers for most PATA controllers on all architectures
+ (previously applied only to x86)
+ * linux-base: Fix bugs and improve libata transition code:
+ - Handle duplicates in /etc/udev/rules.d/70-persistent-cd.rules
+ (Closes: #574630)
+ - Always attempt conversion if $DEBCONF_RECONFIGURE is set
+ - Never attempt conversion during a fresh installation (Closes: #576243)
+ - Convert disk IDs in crypttab (Closes: #575056)
+ - Redirect stdin and stdout of child processes to avoid interfering with
+ debconf (Closes: #574987)
+ - Report when hdparm.conf or mdadm.conf may need to be updated
+ (Closes: #576442)
+ - Where a device has both a UUID and a label, prefer to identify it by
+ UUID, consistent with fresh installations
+ - Do not use device labels including certain unsafe characters
+ (Closes: #576537)
+ * iwlwifi: Fix repeated warnings about tfds_in_queue (Closes: #574526)
+ * eeepc-laptop: Disable CPU speed control on 701 and 702 since it can
+ cause the system to hang (Closes: #559578)
+ * eeepc-laptop: Disable wireless hotplug on 1005HA, 1201N and 1005PE
+ since it disconnects the wrong device (Closes: #573607)
+ * linux-headers-*: Support postinst hooks in /etc/kernel/header_postinst.d,
+ thanks to Michael Gilbert (Closes: #569724)
+ * rt2860sta: Fix argument to linux_pci_unmap_single() (Closes: #575726)
+ * nouveau: nv50: Implement ctxprog/state generation
+ * phylib: Support PHY module autoloading (Closes: #553024)
+ * [x86] Add ramzswap driver (Closes: #573912)
+
+ [ maximilian attems]
+ * [alpha, hppa] Disable oprofile as tracing code is unsupported here.
+ (closes: #574368)
+ * Update openvz patch to 14a9729fab67. (closes: #574598, #575189)
+ * [x86]: Disable FB_INTEL. (closes: #447575, #503766, #574401)
+ * ssb: do not read SPROM if it does not exist.
+ * ssb: Avoid null pointer dereference by aboves.
+ * Add stable 2.6.32.11.
+ - MIPS: Cleanup forgotten label_module_alloc in tlbex.c (Closes: #571305)
+ - ath5k: fix setup for CAB queue (closes: #576213)
+ - NFS: Prevent another deadlock in nfs_release_page() (Closes: #574348)
+ * Revert to keep ABI:
+ - hrtimer: Tune hrtimer_interrupt hang logic
+
+ [ Moritz Muehlenhoff ]
+ * Add support for sh4 architecture, patch by Nobuhiro Iwamatsu
+ (Closes: #569034)
+
+ [ Bastian Blank ]
+ * Update Xen patch.
+ - Fix free interrupt problem on uni-processor machines.
+
+ [ Ian Campbell ]
+ * Include Xen hypervisor in reportbug "related to" list.
+
+ -- maximilian attems <maks@debian.org> Mon, 05 Apr 2010 20:31:15 +0200
+
+linux-2.6 (2.6.32-10) unstable; urgency=low
+
+ * The "Big Bang" release
+
+ [ maximilian attems]
+ * tcp: fix ICMP-RTO war.
+ * Add stable 2.6.32.10.
+ - net/via-rhine: Fix scheduling while atomic bugs (closes: #549606)
+ - HID: remove TENX iBuddy from blacklist (Closes: #551312)
+ - USB: SIS USB2VGA DRIVER: support KAIREN's USB VGA adaptor
+ USB20SVGA-MB-PLUS (Closes: #565857)
+ * Bump ABI to 4.
+ * [x86] Add openvz flavour.
+ - adds ppp support (closes: #550975)
+ * Prevent nouveau from autoloading until xserver-xorg-video-nouveau lands.
+
+ [ Moritz Muehlenhoff ]
+ * Enable CONFIG_KEYS_DEBUG_PROC_KEYS (Closes: #400932)
+ * Amend README.source with documentation on how to generate a
+ source tree with all patches applied (Closes: #509156)
+ * Document needed packages for preparatory packaging
+ steps (Closes: #548028)
+
+ [ Aurelien Jarno ]
+ * Fix signal stack alignement on sparc64 (Closes: #569797)
+
+ [ Bastian Blank ]
+ * Add support for Xen dom0 into its featureset.
+ (Closes: #499745, #503857, #504805, #505545, #506118, #507785, #509085,
+ #509733, #511963, #513835, #514511, #516223, #516374, #516635, #517048,
+ #519586, #520702, #522452, #524571, #524596, #526695, #533132, #533432,
+ #534880, #534978, #541227, #542299, #542614, #543489, #544525, #548345,
+ #554564, #554621, #559175, #559634)
+ * [alpha, amd64, i386, amd64, powerpc] Make all AGP driver built-in to
+ workaround race-condition between DRM and AGP.
+
+ [ Ben Hutchings ]
+ * drm: Apply all changes from 2.6.33 and 2.6.33.1:
+ - Add nouveau driver
+ - i915: Fix disappearing mouse pointer (Closes: #551330)
+ - i915: Restore video overlay support (Closes: #560033)
+ - i915: Fix DDC on some systems by clearing BIOS GMBUS (Closes: #567747)
+ - radeon: Enable KMS support
+ * qla2xxx: Disable MSI/MSI-X on some chips or as selected by module parameter
+ (Closes: #572322)
+ - MSI is disabled on QLA24xx chips other than QLA2432 (MSI-X already was)
+ - MSI-X is disabled if qlx2enablemsix=2
+ - MSI and MSI-X are disabled if qlx2enablemsix=0
+ * [sparc64] Make prom entry spinlock NMI safe (Closes: #572442)
+ * firmware: Correct copyright information and add source for CIS files
+ * Fix first line of kernel-doc for a few functions so that they get valid
+ manual pages
+ * Remove /usr/include/drm from linux-libc-dev; let libdrm-dev provide it
+ again
+ * [x86] Enable rtl8192su driver using external firmware
+ * [x86] Use libata-based drivers for most PATA controllers (Closes: #444182):
+ - pata_triflex replaces triflex
+ - pata_atiixp replaces atiixp
+ - pata_ns87415 replaces ns87415
+ - pata_sc1200 replaces sc1200
+ - pata_cs5536 replaces cs5536
+ - pata_amd replaces amd74xx
+ - pata_sis replaces sis5513
+ - pata_rz1000 replaces rz1000
+ - pata_efar replaces slc90e66
+ - pata_pdc202xx_old replaces pdc202xx_old
+ - pata_pdc2027x replaces pdc202xx_new
+ - pata_cs5520 replaces cs5520
+ - pata_cs5530 replaces cs5530
+ - pata_cmd64x replaces cmd64x
+ - pata_sil680 replaces siimage
+ - pata_ali replaces alim15x3
+ - pata_via replaces via82cxxx
+ - pata_serverworks replaces serverworks
+ - pata_artop replaces aec62xx
+ - pata_it821x replaces it821x
+ - ata_piix, pata_oldpiix, pata_mpiix mostly replace piix
+ - ata_generic, pata_ns87410, pata_netcell replace ide-pci-generic
+ * linux-base: Add libata transition script
+ * Hide sensitive information when including network configuration in bug
+ reports and running a different kernel version
+
+ [ Martin Michlmayr ]
+ * Add some ARM patches from git:
+ - Update mach types
+ - eSATA SheevaPlug: basic board support
+ - eSATA SheevaPlug: configure SoC SATA interface
+ - eSATA SheevaPlug: correlate MPP to SD CD and SD WP
+ * [armel/kirkwood] Enable MACH_ESATA_SHEEVAPLUG.
+
+ -- maximilian attems <maks@debian.org> Tue, 16 Mar 2010 23:39:05 +0100
+
+linux-2.6 (2.6.32-9) unstable; urgency=high
+
+ [ Ben Hutchings ]
+ * Do not build obsolete lgs8gl5 driver
+ * [x86] Enable USB IP drivers (Closes: #568903)
+ * Ignore failure of lsusb when gathering information for bug reports
+ (Closes: #569725)
+ * macvlan: Add bridge, VEPA and private modes (Closes: #568756)
+ * [sparc] sunxvr500: Support Intergraph graphics chips again
+ (Closes: #508108)
+ * sfc: Apply fixes from 2.6.33
+ * ath9k: Add support for AR2427
+ * fs/exec.c: fix initial stack reservation (regression in 2.6.32.9)
+
+ [ maximilian attems]
+ * Postinst don't refercence k-p related manpage. (closes: #542208)
+ * Postinst only write kernel-img.conf for palo boxes.
+ * Enable VT_HW_CONSOLE_BINDING for unbinding efifb. (closes: #569314)
+ * hwmon: Add driver for VIA CPU core temperature.
+ * wireless: report reasonable bitrate for MCS rates through wext.
+ * efifb: fix framebuffer handoff. (bugzilla.k.o #15151)
+ * Add stable 2.6.32.9:
+ - drm/i915: Fix DDC on some systems by clearing BIOS GMBUS setup.
+ (closes: #567747)
+ - futex: Handle futex value corruption gracefully. (CVE-2010-0623)
+ - futex_lock_pi() key refcnt fix. (CVE-2010-0623)
+ - Staging: fix rtl8187se compilation errors with mac80211.
+ (closes: #566726)
+ * r8169 patch for rx length check errors. (CVE-2009-4537)
+ * vgaarb: fix incorrect dereference of userspace pointer.
+ * Bump ABI to 3.
+ * drm/i915: give up on 8xx lid status.
+ * vgaarb: fix "target=default" passing.
+ * drm/radeon: block ability for userspace app to trash 0 page and beyond.
+ (closes: #550562)
+
+ [ Bastian Blank ]
+ * Restrict access to sensitive SysRq keys by default.
+ * debian/rules.real: Install arch specific scripts.
+
+ [ Moritz Muehlenhoff ]
+ * Set source format to 1.0
+
+ [ Martin Michlmayr ]
+ * [armel/iop32x] Enable ARCH_IQ80321 and ARCH_IQ31244 (Thanks Arnaud
+ Patard).
+ * [armel/kirkwood] Disable MTD_NAND_VERIFY_WRITE to avoid errors
+ with ubifs on OpenRD (Thanks Gert Doering) (Closes: #570407)
+ * OpenRD-Base: allow SD/UART1 selection (Closes: #571019)
+ * D-Link DNS-323 revision A1: implement power LED (Closes: 503172).
+
+ -- maximilian attems <maks@debian.org> Wed, 24 Feb 2010 17:06:27 +0100
+
+linux-2.6 (2.6.32-8) unstable; urgency=high
+
+ [ Bastian Blank ]
+ * Don't let default compiler flags escape into build.
+
+ [ dann frazier ]
+ * KVM: PIT: control word is write-only (CVE-2010-0309)
+ * Fix potential crash with sys_move_pages (CVE-2010-0415)
+
+ [ Ben Hutchings ]
+ * Build lgs8gxx driver along with cxusb (Closes: #568414)
+ * Revert incorrect change to powerpc clocksource setup (Closes: #568457)
+ * Add stable release 2.6.32.8:
+ - Remove TIF_ABI_PENDING bit from x86, sparc & powerpc, fixing
+ 32-bit userland/64-bit kernel breakage (Closes: #568416)
+ - connector: Delete buggy notification code. (CVE-2010-0410)
+ * [x86] KVM: Add IOPL/CPL checks to emulator, to prevent privilege
+ escalation within a guest. (CVE-2010-0298, CVE-2010-0306)
+
+ [ Martin Michlmayr ]
+ * Implement power-off for D-Link DNS-323 rev B1 and fix the blinking
+ power LED (Erik Benada) (Closes: #503172).
+
+ [ Aurelien Jarno ]
+ * Enable CONFIG_FB_CIRRUS and CONFIG_LOGO on 4kc-malta and 5kc-malta.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 11 Feb 2010 02:17:17 +0000
+
+linux-2.6 (2.6.32-7) unstable; urgency=low
+
+ [ maximilian attems]
+ * [x86] Disable deprecated X86_CPU_DEBUG, causes boot failures.
+ * Newer Standards-Version 3.8.4 without changes.
+
+ [ Ben Hutchings ]
+ * clocksource/events: Fix fallout of generic code changes
+ (Closes: #568030)
+ * Set ABI to 2.
+
+ [ dann frazier ]
+ * Disable FUNCTION_TRACER due to performance/build issues.
+ (Closes: #568025)
+ * Split 'flush_old_exec' into two functions (CVE-2010-0307)
+
+ -- dann frazier <dannf@debian.org> Wed, 03 Feb 2010 18:35:21 -0700
+
+linux-2.6 (2.6.32-6) unstable; urgency=high
+
+ [ Ben Hutchings ]
+ * Documentation/3c509: document ethtool support (Closes: #564743)
+ * Add MODULE_FIRMWARE declarations to several drivers that lacked them
+ * [x86] Update rt2860sta/rt2870sta firmware loader patch
+ - Accept 8K versions of rt2870.bin
+ - Fix hang on resume
+ * [x86] Enable rt3090sta using firmware loader
+ * Add stable release 2.6.32.4:
+ - untangle the do_mremap() mess (CVE-2010-0291)
+ - fasync: split 'fasync_helper()' into separate add/remove functions
+ (CVE-2009-4141)
+ - kernel/signal.c: fix kernel information leak with print-fatal-signals=1
+ (CVE-2010-0003)
+ - netfilter: ebtables: enforce CAP_NET_ADMIN (CVE-2010-0007)
+ - quota: Fix dquot_transfer for filesystems different from ext4
+ (Closes: #566532)
+ - audit: Fix memory management bugs (Closes: #562815)
+ + fix braindamage in audit_tree.c untag_chunk()
+ + fix more leaks in audit_tree.c tag_chunk()
+ - ipv6: skb_dst() can be NULL in ipv6_hop_jumbo(). (CVE-2010-0006)
+ - Fix DMA mapping for i915 driver (Closes: #558237, #567352)
+ + drm: remove address mask param for drm_pci_alloc()
+ + agp/intel-agp: Clear entire GTT on startup
+ * e1000,e1000e: Discard all fragments of received over-length packets
+ (CVE-2009-4536, CVE-2009-4538)
+ * Enable the '686' configuration options in '686-vserver' packages and
+ the '686-bigmem' configuration options in '686-bigmem-vserver' packages
+ (Closes: #566213)
+ * Add stable release 2.6.32.5:
+ - inotify: do not reuse watch descriptors (Closes: #561880)
+ - megaraid_sas: remove sysfs poll_mode_io world writeable permissions
+ (CVE-2009-3939) (Closes: #562975)
+ * Force distribution=UNRELEASED in debian/bin/test-patches so that it
+ works in released source packages
+ * Add stable release 2.6.32.6
+ * postinst: Enable escape sequences in debconf notes (Closes: #566539)
+ * Add 3w-sas driver for LSI 3ware 9750 SAS controllers
+ * aufs2: Update to snapshot from 2010-01-25 (Closes: #567391)
+ * cdc_ether: Do not set link down initially; not all devices send link
+ change interrupts (Closes: #567689)
+ * Add stable release 2.6.32.7:
+ - clockevent: Don't remove broadcast device on halt or CPU hotplug
+ (Closes: #566547)
+ * sfc: Apply fixes from 2.6.33-rc{5,6}
+ * Set ABI to 1.
+
+ [ Ian Campbell ]
+ * xen: Enable up to 32G of guest memory on i386.
+
+ [ Julien Cristau ]
+ * drm/i915: disable powersave by default (closes: #564807)
+
+ [ Bastian Blank ]
+ * Enable all NCP file system options.
+ * [amd64] Make AGP support again built-in to fullfill the not completely
+ documented dependency with GART IOMMU support. (closes: #561552)
+ * Enable dynamic minor allocations for ALSA, DVB and USB. (closes: #510593)
+
+ [ maximilian attems ]
+ * [topconfig] set MEMORY_FAILURE, 9P_FSCACHE, INFINIBAND_IPOIB_CM
+ (closes: #565494), ITCO_VENDOR_SUPPORT (closes: #525232), PCIEASPM
+ (closes: #545417), HWPOISON_INJECT.
+ * Enable easier debugging of Power Managment code. (closes: #478315)
+ * Pass `DEB_MAINT_PARAMS' to hook scripts. (closes: #563161)
+ * Enable more mobile IPv6 needs. (closes: #528834)
+
+ [ dann frazier ]
+ * [vserver] explicitly disable CFS_HARD_LIMITS
+ * Enable FUNCTION_TRACER and STACK_TRACER (Closes: #563847)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 31 Jan 2010 23:09:28 +0000
+
+linux-2.6 (2.6.32-5) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * sfc: Apply fixes from 2.6.33-rc3
+ * ath5k: Fix eeprom checksum check for custom sized eeproms
+ (Closes: #563136)
+
+ [ maximilian attems ]
+ * topconfig unset USB_ISP1362_HCD FTBFS on armel and useless.
+ (closes: #564156)
+ * topconfig set PATA_ATP867X, PATA_RDC, SND_CS5535AUDIO, PM_RUNTIME,
+ ATA_VERBOSE_ERROR, RTC_DRV_WM831X, RTC_DRV_PCF2123, RTC_DRV_AB3100,
+ SND_HDA_PATCH_LOADER, DEVTMPFS (closes: #560040).
+ * [x86] set RTL8192E, TOPSTAR_LAPTOP, I2C_SCMI.
+ * Explicitly disable diverse staging drivers.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 10 Jan 2010 03:22:23 +0000
+
+linux-2.6 (2.6.32-4) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * Correct comments referring to dpkg --print-installation-architecture
+ in maintainer scripts (Closes: #558077)
+ * modules: Skip empty sections when exporting section notes
+ (Closes: #563036)
+ * via-velocity: Give RX descriptors to the NIC later on open or MTU change
+ (Closes: #508527)
+ * dmfe/tulip: Let dmfe handle DM910x except for SPARC on-board chips
+ (Closes: #515533)
+ * Add stable release 2.6.32.3:
+ - ath5k: fix SWI calibration interrupt storm (may fix #563466)
+ - iwl3945: disable power save (Closes: #563693)
+ - rt2x00: Disable powersaving for rt61pci and rt2800pci (may fix #561087)
+
+ [ maximilian attems ]
+ * topconfig set CAN_EMS_USB, BT_MRVL, BT_MRVL_SDIO, BE2ISCSI, SCSI_PMCRAID,
+ SCSI_BFA_FC, USB_GL860, USB_GSPCA_JEILINJ, I2C_SI4713, RADIO_SI4713,
+ RADIO_SI470X, DVB_USB_FRIIO, EDAC_I3200, SENSORS_TMP421, SENSORS_WM8350,
+ SBC_FITPC2_WATCHDOG, TOUCHSCREEN_MCS5000, UIO_PCI_GENERIC, KSZ8842,
+ KS8851, KS8851_MLL, MISDN_AVMFRITZ, MISDN_SPEEDFAX, MISDN_INFINEON,
+ MISDN_W6692, MISDN_NETJET, INPUT_WINBOND_CIR, BATTERY_DS2782, MFD_WM831X,
+ MFD_MC13783, MTD_SST25L, TOUCHSCREEN_USB_E2I, INPUT_WM831X_ON,
+ SENSORS_WM831X, WM831X_WATCHDOG, AB3100_OTP, REGULATOR_WM831X,
+ REGULATOR_MC13783, REGULATOR_AB3100, REGULATOR_TPS65023,
+ REGULATOR_TPS6507X, VIDEO_SAA7164, DVB_PT1, BACKLIGHT_WM831X,
+ SND_HDA_CODEC_CIRRUS, USB_ISP1362_HCD, LEDS_WM831X_STATUS,
+ MTD_ONENAND_GENERIC, B43_SDIO, B43_PHY_LP, KEYBOARD_ADP5588, QT2160,
+ KEYBOARD_LM8323, KEYBOARD_MAX7359, KEYBOARD_OPENCORES, MOUSE_PS2_SENTELIC,
+ WM831X_POWER.
+ * [x86] set ACPI_POWER_METER, ACPI_PROCESSOR_AGGREGATOR, SFI,
+ EDAC_DECODE_MCE.
+ * Set MOUSE_PS2_ELANTECH for various EeePc. (closes: #522920)
+
+ [ dann frazier ]
+ * Fix vserver build on ia64 (Closes: #563356)
+ * Fix vserver build on s390 (Closes: #563355)
+
+ [ Martin Michlmayr ]
+ * Report model information on armel when filing a bug.
+ * ARM: Add an earlyprintk debug console (Catalin Marinas)
+ * [armel] Enable EARLY_PRINTK.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 07 Jan 2010 03:33:39 +0000
+
+linux-2.6 (2.6.32-3) unstable; urgency=high
+
+ * The "Not a Suitable Christmas Present" release
+
+ [ Martin Michlmayr ]
+ * [armel/orion5x] Build MTD_CFI_AMDSTD into the kernel again since
+ it's needed on the D-Link DNS-323 (thanks Manuel Roeder).
+ (Closes: #562205)
+
+ [ dann frazier ]
+ * Input: ALPS - add support for touchpads with 4-directional button
+ * Input: ALPS - add interleaved protocol support (Dell E6x00 series)
+ (Closes: #561589)
+ * Re-enable vserver
+
+ [ Ben Hutchings ]
+ * sfc: Apply changes from 2.6.33-rc1 adding support for SFC9000 family
+ * Add stable release 2.6.32.2:
+ - KVM: x86 emulator: limit instructions to 15 bytes (CVE-2009-4031)
+ - hfs: fix a potential buffer overflow (CVE-2009-4020)
+ * radeon: fix crtc vblank update for r600 (regression in 2.6.32.2)
+ * ia64: Include <linux/personality.h> header in <asm/fcntl.h>; fixes
+ FTBFS
+ * r8169: Allow RTL8168D v1 and v2 to be used without firmware files
+ (Closes: #561309)
+ * Enable vmxnet3 (VMware guest paravirt net driver) (Closes: #562046)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 24 Dec 2009 04:28:55 +0000
+
+linux-2.6 (2.6.32-2) unstable; urgency=high
+
+ [ Bastian Blank ]
+ * Allow memory hot-add and -remove if possible.
+ * Enable USB suspend.
+ * Enable kernel samepage merging. (closes: #558200)
+ * [s390]
+ - Enable SECCOMP.
+ - Enable z/VM Watchdog Timer.
+
+ [ Moritz Muehlenhoff ]
+ * Disable cryptoloop (Closes: #559755)
+ * Initial work on a README.source file as suggested by current policy
+
+ [ Ben Hutchings ]
+ * aufs2: Update to snapshot from 2009-12-05
+ * postinst: Fix failure paths in check for missing firmware
+ (Closes: #560263)
+ * atl1c: Fix system hang when link drops (Closes: #559577)
+ * netfilter: xtables: fix conntrack match v1 ipt-save output
+ (Closes: #556587)
+
+ [ Aurelien Jarno ]
+ * Add support for the sparc64 architecture.
+
+ [ dann frazier ]
+ * Add stable release 2.6.32.1:
+ - ext4: Fix double-free of blocks with EXT4_IOC_MOVE_EXT (CVE-2009-4306)
+ - ext4: avoid divide by zero when trying to mount a corrupted file system
+ (CVE-2009-4307)
+ - ext4: Fix insufficient checks in EXT4_IOC_MOVE_EXT (CVE-2009-4131)
+
+ -- Ben Hutchings <ben@decadent.org.uk> Wed, 16 Dec 2009 21:42:49 +0000
+
+linux-kbuild-2.6 (2.6.32-1) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * New upstream version. (closes: #560090)
+ * Include new script module-common.lds, thanks to Zoran Dzelajlija.
+
+ [ Bastian Blank ]
+ * Move contents of linux-kbuild package to /usr/lib.
+
+ -- Bastian Blank <waldi@debian.org> Fri, 11 Dec 2009 16:16:12 +0100
+
+linux-2.6 (2.6.32-1) unstable; urgency=low
+
+ * New upstream release candidate:
+ - Fixes wifi with rt73usb (Closes: #555640)
+
+ [ Martin Michlmayr ]
+ * [armel/kirkwood] Turn on USB_SUSPEND (on the request of a SheevaPlug
+ user).
+ * [mips/4kc-malta, mips/5kc-malta] Compile USB as a module rather than
+ into the kernel.
+
+ [ Bastian Blank ]
+ * Enable PCI_MSI.
+ * [powerpc] Properly enable Apple PMU battery.
+ * [mips/mipsel] Drop remaining OSS drivers.
+ * [powerpc] Enable PCIe support.
+ * Move contents of linux-support package to /usr/share.
+ * Make linux-patch package depend against python.
+ * Use python-support instead of python-central.
+ * Always enable software watchdog support.
+ * Always enable complete USB mass storage support.
+ * [amd64, powerpc, sparc] Build USB support as module.
+ * [amd64] Build AGP support as module.
+ * Always enable dummy net driver support.
+ * Drop linux-tree package, it have no users left.
+
+ [ Ben Hutchings ]
+ * Re-enable accidentally omitted drivers, thanks to Uwe Kleine-König
+ (Closes: #558011):
+ - Atheros wireless drivers (ar9170, ath5k, ath9k)
+ - TI wl12xx wireless drivers (wl1251_spi, wl1251_sdio and wl1271
+ replace wl12xx)
+ - Silicon Labs Si470x FM Radio Receiver driver (radio-usb-si470x)
+ * Add 'removable' option to the mmc module. Setting this to 0 causes
+ MMC/SD cards to be assumed non-removable, and filesystems on them
+ will remain mounted over a suspend/resume cycle. (Closes: #504391)
+ * Add MODULE_FIRMWARE declarations to many drivers that lacked them, so
+ that missing firmware will be reported automatically during upgrades
+ * atl1e: Remove broken implementation of TSO for TCP/IPv6
+ (Closes: #558426) and allow other hardware offloads to be disabled in
+ case they are also buggy
+ * usbnet: Set link down initially for drivers that update link state
+ (Closes: #444043)
+ * aufs2: Update to snapshot from 2009-11-29
+ * i915: Enable auto-loading even though CONFIG_DRM_I915_KMS is not set
+
+ [ dann frazier ]
+ * mac80211 (CVE-2009-4026, CVE-2009-4027):
+ - fix two remote exploits
+ - fix spurious delBA handling
+
+ -- Bastian Blank <waldi@debian.org> Sun, 06 Dec 2009 18:17:39 +0100
+
+linux-2.6 (2.6.32~rc8-1~experimental.1) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * New upstream release candidate.
+ - slip: Clean up create and destroy (Closes: #408635)
+ - signal: Fix alternate signal stack check (Closes: #544905)
+ * README.Debian: Add brief information about building specific binary
+ packages (Closes: #546182)
+ * lgs8gxx: Remove firmware for lgs8g75 and use request_firmware() to
+ load it
+ * r8169: Remove firmware for RTL8168D v1 and v2 and use
+ request_firmware() to load it
+ * DocBook: Fix build breakage
+ * Hide WPA authentication parameters and comments when including network
+ configuration in bug reports
+
+ [ Bastian Blank ]
+ * [mips] Don't force EMBEDDED on.
+ * [sparc] Don't builtin Ext2 support.
+ * Enable PERF_EVENTS, EVENT_PROFILE, CRYPTO_VMAC, CRYPTO_GHASH, TREE_RCU.
+ * Use SLUB as default SLAB allocator.
+
+ [ Martin Michlmayr ]
+ * [armel] Make some options modular (since there's no reason for them
+ to be built in): FTL, NFTL, MTD_CFI_AMDSTD, MTD_CFI_STAA.
+ * [armel/orion5x, armel/kirkwood] Enable ISDN (requested by Markus
+ Krebs).
+ * Add patch from Albin Tonnerre to add HAVE_KERNEL_LZMA to arm.
+ * [armel] Enable KERNEL_LZMA, i.e. compress kernels with lzma to get
+ much better compression.
+ * [armel] Re-enable options that were turned off recently because of
+ size constraints: DEBUG_USER, DEBUG_KERNEL, BOOT_TRACER, ARM_UNWIND,
+ BLK_DEV_IO_TRACE and SECURITY_SELINUX.
+
+ [ maximilian attems ]
+ * Simplify postinst nuke reverse symlinks handling. Patch from
+ Sebastian Andrzej Siewior <sebastian@breakpoint.cc>.
+
+ -- Bastian Blank <waldi@debian.org> Sat, 21 Nov 2009 21:41:45 +0100
+
+linux-2.6 (2.6.31-2) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * [armel/orion5x, armel/kirkwood] Make sure VGA_CONSOLE is disabled,
+ otherwise the kernel won't boot.
+ * [armel/kirkwood] Enable CRYPTO_DEV_MV_CESA (Closes: #552270).
+ * [armel/kirkwood, armel/orion5x] Enable ORION_WATCHDOG (the
+ name of the config variable changed).
+ * Add OpenRD-Client support again.
+ * Add QNAP TS-41x support.
+ * [armel/orion5x, armel/kirkwood] Enable ISDN (requested by Markus
+ Krebs).
+ * Fix a build failure of the ISDN hisax elsa driver on ARM.
+ * mips: fix build of vmlinux.lds (Closes: #552422).
+
+ [ Ben Hutchings ]
+ * postinst: Accept absolute paths in modules.dep generated by the
+ lenny version of module-init-tools (Closes: #552610)
+ * aufs2: Remove incorrect static assertion (Closes: #554120)
+ * Add stable release 2.6.31.6:
+ - fs: pipe.c null pointer dereference (CVE-2009-3547)
+ - KEYS: get_instantiation_keyring() should inc the keyring refcount
+ in all cases (CVE-2009-3624)
+ - netlink: fix typo in initialization (CVE-2009-3612)
+ * Undo PCMCIA ABI change in 2.6.31.6
+ * Hide wireless keys and wake-on-LAN password when including network
+ configuration in bug reports
+ * Add Geode LX/NX to list of 686-class processors
+
+ [ Bastian Blank ]
+ * [powerpc] Remove SMP warning from PowerMac cpufreq (Closes: #554124)
+
+ [ maximilian Attems ]
+ * Really fix making a debian kernel installable without kernel-img.conf.
+ Thanks for patch to Sebastian Andrzej Siewior <sebastian@breakpoint.cc>.
+ (closes: #555093).
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 15 Nov 2009 18:47:49 +0000
+
+linux-kbuild-2.6 (2.6.31.2-1) unstable; urgency=low
+
+ * Upload to unstable.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sun, 25 Oct 2009 18:38:44 +0000
+
+linux-2.6 (2.6.31-1) unstable; urgency=low
+
+ [ Ben Hutchings ]
+ * Include aufs2, marked as staging (Closes: #541828)
+ * Include speakup modules under staging
+ * Add stable release 2.6.31.5
+ * [x86_64] Enable NUMA_EMU (Closes: #541389)
+
+ [ Martin Michlmayr ]
+ * CPUidle: always return with interrupts enabled.
+ * [armel/orion5x, armel/kirkwood] Enable FB since some Kirkwood
+ machines have a VGA chip (e.g. OpenRD-Client) and because it's
+ possible to use a DisplayLink USB virtual graphics adapter.
+
+ [ maximilian attems ]
+ * [alpha] Disable SND_MIXART, causes gcc ICE.
+ * [x86] Enable modular X86_MCE_INJECT.
+ * [x86_32] Set LSM_MMAP_MIN_ADDR to zero to unbreak dosemu and 16-bit Wine,
+ ia64 and x86_64 to 65536 otherwise default to 32768.
+ * Unset UEVENT_HELPER_PATH to save some boot cycles.
+
+ [ Bastian Blank ]
+ * Set ABI to 1.
+ * Enable Apple PMU battery. (closes: #544264)
+
+ -- Bastian Blank <waldi@debian.org> Sat, 24 Oct 2009 19:17:30 +0200
+
+linux-kbuild-2.6 (2.6.31.2-1~experimental.1) experimental; urgency=low
+
+ [ Bastian Blank ]
+ * New upstream version.
+
+ [ Ben Hutchings ]
+ * Include new script gcc-x86_32-has-stack-protector.sh.
+ * Add myself to Uploaders.
+ * New upstream version (2.6.31.2).
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 17 Oct 2009 23:05:27 +0100
+
+linux-2.6 (2.6.31-1~experimental.2) experimental; urgency=low
+
+ [ Ben Hutchings ]
+ * Include more information in bug reports:
+ - Model information
+ - Firmware package status
+ - Network configuration and status (optional)
+ - USB device list
+ * nfs: Avoid overrun when copying client IP address string
+ (Closes: #549002)
+ * Add support for DEB_BUILD_OPTIONS=parallel=N (Closes: #458560)
+ * sfc: Fix initial link state
+ * Improve package descriptions
+ - Clarify the differences between i386 flavours (Closes: #414690)
+ - Simplify wording of the description template
+ * Add stable release 2.6.31.3
+ * Remove /usr/include/scsi from linux-libc-dev; these headers are
+ provided by libc6-dev (Closes: #550130)
+ * Remove dummy dot-files from linux-libc-dev
+ * hfsplus: Refuse to mount volumes larger than 2TB, which may otherwise
+ be corrupted (Closes: #550010)
+ * Add stable release 2.6.31.4
+ - x86: Don't leak 64-bit kernel register values to 32-bit processes
+ (CVE-2009-2910)
+ - appletalk: Fix skb leak when ipddp interface is not loaded
+ (CVE-2009-2903)
+
+ [ maximilian attems ]
+ * Add stable release 2.6.31.2
+ - ax25: Fix signed comparison in the sockopt handler (CVE-2009-2909)
+ - PM / yenta: Fix cardbus suspend/resume regression (Closes: #522828)
+
+ [ dann frazier ]
+ * [sparc] build zImage by default, fixes build
+ * [ia64] Fix call to elilo in postinst
+
+ -- maximilian attems <maks@debian.org> Mon, 12 Oct 2009 23:54:52 +0200
+
+linux-2.6 (2.6.31-1~experimental.1) experimental; urgency=low
+
+ * New upstream release.
+ - Support for W83627DHG-P (closes: #535646).
+ - Restore MAC address and MTU change operations on Orinoco and others
+ (Closes: #536455)
+ - Remove incorrect ACPI blacklisting of ASUS P4B266 mainboards
+ (Closes: #525625)
+ - atl1c fixes for Eee PC model 1005HA-H. (closes: #538410)
+ - parisc64-smp boot fix on J5600. (closes: #539369)
+ - parisc: Fix GOT overflow during module load on 64bit kernel
+ (closes: #539378)
+ - xfs: fix freeing of inodes not yet added to the inode cache
+ (Closes: #527517)
+ - IPv6: add "disable" module parameter support to ipv6.ko.
+ (closes: #542470)
+ - IPv6: avoid wraparound for expired preferred lifetime
+ (Closes: #518710)
+ - Fixes lockups with older dual-CPU machines (Closes: #542551)
+ - x86, pat: Allow ISA memory range uncacheable mapping requests
+ (Closes: #538159)
+ - drm/i915: Hook connector to encoder during load detection
+ (Closes: #522358)
+ - module: workaround duplicate section names (Closes: #545229)
+ - b43: Add fw capabilities (Closes: #533357)
+ - procfs: Fix idle time in uptime (Closes: #545981)
+ - e1000, e1000e, igb, ixgb, ixgbe: Fix initial link state
+ (Closes: #546041)
+ - CIFS: Handle port= mount option correctly (Closes: #524142)
+ - i915: Prevent screen flickering in X11 (Closes: #545377)
+ - hppa: Ensure broadcast tlb purge runs single threaded
+ (Closes: #539215)
+
+ [ maximilian attems ]
+ * [powerpc64] Enable modular RTC_DRV_PS3, PS3_VRAM.
+ (Closes: #528694)
+ * Set new NETFILTER_XT_MATCH_OSF, FIREWIRE_NET, SND_CTXFI, USB_XHCI_HCD,
+ IEEE802154, CAN_DEV, EEPROM_MAX6875, DM_LOG_USERSPACE, DM_MULTIPATH_QL,
+ DM_MULTIPATH_ST, LIBERTAS_SPI, CAN_SJA1000, CAN_SJA1000_PLATFORM,
+ CAN_EMS_PCI, CAN_KVASER_PCI, CB710_CORE, CNIC, RT2800USB,
+ USB_NET_INT51X1, SND_LX6464ES, BLK_DEV_OSD, SCSI_BNX2_ISCSI, IWM,
+ IEEE802154_DRIVERS, TOUCHSCREEN_EETI, TOUCHSCREEN_W90X900,
+ BATTERY_MAX17040, SENSORS_TMP401, REGULATOR_USERSPACE_CONSUMER,
+ REGULATOR_MAX1586, REGULATOR_LP3971, MEDIA_SUPPORT, CUSE,
+ WL12XX, PPS, AB3100_CORE, SND_HDA_INPUT_JACK,MMC_SDHCI_PLTFM,
+ MMC_CB710, MMC_VIA_SDMMC, LEDS_LP3944, RTC_DRV_RX8025,
+ SMARTJOYPLUS_FF, USB_CDC_PHONET, USB_GSPCA_SN9C20X, MOUSE_SYNAPTICS_I2C,
+ PCIEAER_INJECT.
+ * Disable v4l1 ov511 and quickcam_messenger drivers.
+ * [x86_64] Enable HW_RANDOM_VIA.
+ * [x86] Keep divers staging stuff enabled.
+ * [x86] Enable RT3070, COMEDI_PCMCIA_DRIVERS, ACERHDF, EDAC_AMD64,
+ XEN_DEV_EVTCHN, XEN_SYS_HYPERVISOR, PERF_COUNTERS,
+ CC_STACKPROTECTOR, DEFAULT_MMAP_MIN_ADDR=65536.
+ * rtl8192su: remove firmware and disable.
+ * Newer Standards-Version 3.8.2 without changes.
+ * Allow install in chroot without do_initrd check for piuparts.
+ * Cleanup Maintainer scripts from ancient pre linux-2.6 assumptions.
+ (Also closes: #536333)
+ * Disable DEVKMEM.
+ * [ppc, sparc] Enable EFI_PARTITION. (closes: #540486)
+ * Disable old USB_DEVICE_CLASS. (Closes: #510279)
+ * Drop yaird initramfs generator support.
+ * Add stable release 2.6.31.1.
+ * Enable PREEMPT_VOLUNTARY.
+
+ [ Ben Hutchings ]
+ * mga: remove unnecessary change from firmware-loading patch
+ * cxgb3: remove PHY firmware and use request_firmware() to load it
+ * Add firmware-linux-free package containing DFSG-free firmware
+ * av7110: include firmware source and binary
+ * snd-cs46xx: reenable using external firmware (closes: #464197,
+ but note that Debian cannot currently distribute the firmware),
+ thanks to Kalle Olavi Niemitalo <kon@iki.fi>
+ * ib_ipath: remove firmware for QLogic IBA7220 and use
+ request_firmware() to load it
+ * dvb-usb-af9005: remove initialisation script derived from Windows
+ driver and use request_firmware() to extract it at run-time
+ (closes: #494119)
+ * Add warning on upgrade to a new upstream version where the system
+ appears to be missing necessary firmware files (closes: #541702)
+ * qla1280: Release spinlock when requesting firmware (closes: #543244)
+ * r128: Add test for initialisation to all ioctls that require it
+ (closes: #541630)
+ * rt{2860,2870,3070}sta: Use existing CCITT CRC implementation on
+ firmware rather than adding an equivalent variant of ITU-T CRC
+ * rd: Build as a module since we do not require initrd support
+ * x86: Fix crash in text_poke_early() on 486-class processors
+ (Closes: #515982)
+ * intel-agp: Fix cache flushing on i8xx chipsets, avoiding graphics
+ corruption and GPU lock-ups (Closes: #541307)
+ * Generate architecture-qualified package relations as needed for
+ flavours that exist for multiple architectures (Closes: #278729)
+ * Prompt bug reporters to run the kernel version they're reporting on
+ or otherwise record boot messages
+ * Include PCI device list in bug reports even if the running kernel
+ doesn't match
+
+ [ Martin Michlmayr ]
+ * [armel/orion5x, armel/kirkwood] Set GPIO_SYSFS=y since these
+ platforms have been converted to GPIOLIB.
+ * [armel/orion5x, armel/kirkwood] Disable MARVELL_PHY since it may
+ lead to conflicts with the built-in Ethernet.
+ * Add features from 2.6.32:
+ - crypto: mv_cesa - Add support for Orion5X crypto engine
+ * [armel/orion5x] Enable CRYPTO_DEV_MV_CESA.
+ * Disable SYS_HAS_EARLY_PRINTK on SGI IP22 to work around a hang
+ during bootup (Closes: #507557)
+ * [armel] Enable BPQETHER (on the request of Iain Young) and some
+ other AX25 drivers.
+
+ [ Bastian Blank ]
+ * Disable staging drivers by default.
+ * Force all bugs against images to be reported to linux-2.6.
+ (closes: #539176)
+ * [arm] Remove old arm architecture.
+ * Use kernel architecture for libc-dev build.
+
+ [ Moritz Muehlenhoff ]
+ * Fix Linus' name in copyright file (Closes: #530620)
+ * More verbose explanation on difference between Alpha flavour
+ (Closes: #497230)
+ * Add Vcs-Svn and Vcs-Browser stanzas pointing to the SVN branch
+ used for development in unstable. There are other branches
+ used for experimental (trunk), oldstable and stable, but Vcs-*
+ doesn't yet provide the ability to distinguish branches in a
+ more fine-grained manner. (Closes: #471495)
+ * Update Standards-Version to 3.8.3, no changes needed
+ * Disable PROM console support (Closes: #525958)
+ * Make the description of linux-support a little more verbose
+ (Closes: #400825)
+ * This upload fixes the following security issues:
+ - CVE-2009-3290 (2.6.31)
+ - CVE-2009-3288 (2.6.31.1)
+ - CVE-2009-3280 (2.6.31.1)
+ - CVE-2009-3234 (2.6.31.1)
+ - CVE-2009-3043 (2.6.31)
+ - CVE-2009-3002 (2.6.31)
+ - CVE-2009-3001 (2.6.31)
+ - CVE-2009-2844 (2.6.31)
+ - CVE-2009-2695 (2.6.31)
+ - CVE-2009-2691 (2.6.31)
+
+ [ dann frazier ]
+ * n_tty: Fix echo race
+ * [ia64] Stop disabling CONFIG_HOTPLUG_CPU, which was blocking
+ CONFIG_KEXEC from being enabled
+ * [hppa] Disable CONFIG_AB3100_CORE, it fails to build
+
+ -- maximilian attems <maks@debian.org> Sun, 04 Oct 2009 20:27:05 +0200
+
+linux-2.6 (2.6.30-8) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * Disable SYS_HAS_EARLY_PRINTK on SGI IP22 to work around a hang
+ during bootup (Closes: #507557)
+ * module: workaround duplicate section names to fix a panic on
+ boot on hppa (Closes: #545229).
+ * Add stable release 2.6.30.8.
+ * [armel/kirkwood] Add Marvell OpenRD-Client support (Dhaval Vasa).
+ Thanks Stefan Kaltenbrunner.
+
+ -- Bastian Blank <waldi@debian.org> Fri, 25 Sep 2009 23:47:56 +0200
+
+linux-2.6 (2.6.30-7) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * [armel/kirkwood] Enable eSATA on QNAP TS-219P (John Holland).
+ * [armel/kirkwood] Marvell OpenRD-Base board support (Dhaval Vasa).
+ * [armel/kirkwood] Initialise SATA for OpenRD-Base (Ron Lee).
+ * [armel/kirkwood] Enable SATA_AHCI.
+
+ [ Ben Hutchings ]
+ * qla1280: Release spinlock when requesting firmware (closes: #543244)
+ * r128: Add test for initialisation to all ioctls that require it
+ (closes: #541630)
+ * [i386] Fix crash in text_poke_early() on 486-class processors
+ (Closes: #515982)
+ * intel-agp: Fix cache flushing on i8xx chipsets, avoiding graphics
+ corruption and GPU lock-ups (Closes: #541307)
+ * [i386] Allow ISA memory range uncacheable mapping requests
+ (Closes: #538159)
+ * Fix idle time in /proc/uptime (Closes: #545981)
+ * e1000, e1000e, igb, ixgb, ixgbe, sfc: Fix initial link state
+ (Closes: #546041)
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.30.5.
+ - drm/i915: Hook connector to encoder during load detection
+ (fixes tv/vga detect) (Closes: #522358)
+ * Add stable release 2.6.30.6.
+ - x86: Fix lock-up on SMP Pentium Pro, Pentium 2, Pentium 3, and
+ Athlon MP systems (Closes: #542551)
+ - NET: Fix information leaks from getsockname() (CVE-2009-3001,
+ CVE-2009-3002)
+ - iwl3945/rfkill: Reenable radio when hardware switch turned back on
+ (Closes: #530554)
+ * Bump ABI to 2.
+ * Apply missing fixes:
+ - block: fix sg SG_DXFER_TO_FROM_DEV regression.
+ - sched_rt: Fix overload bug on rt group scheduling.
+ * Add stable release 2.6.30.7.
+ * [sparc] Disable PROM console. (closes: #525958)
+
+ -- Bastian Blank <waldi@debian.org> Wed, 16 Sep 2009 17:23:13 +0200
+
+linux-2.6 (2.6.30-6) unstable; urgency=high
+
+ [ Bastian Blank ]
+ * Set default low address space protection to default value.
+
+ [ dann frazier ]
+ * Make sock_sendpage() use kernel_sendpage() (CVE-2009-2692)
+ * flat: fix uninitialized ptr with shared libs
+ * [parisc] isa-eeprom - Fix loff_t usage
+ * do_sigaltstack: avoid copying 'stack_t' as a structure to user space
+ * posix-timers: Fix oops in clock_nanosleep() with CLOCK_MONOTONIC_RAW
+
+ -- Bastian Blank <waldi@debian.org> Sat, 15 Aug 2009 15:50:02 +0200
+
+linux-2.6 (2.6.30-5) unstable; urgency=high
+
+ [ maximilian attems ]
+ * Add stable release 2.6.30.4.
+ - cifs: fix regression with O_EXCL creates and optimize away lookup
+ (closes: #536426)
+ - ecryptfs: check tag 11 literal data buffer size (CVE-2009-2406)
+ - ecryptfs: check tag 3 package encrypted size (CVE-2009-2407)
+ * Ignore nf_conntrack ABI change.
+ * Revert to keep ABI:
+ - block: fix sg SG_DXFER_TO_FROM_DEV regression.
+ - sched_rt: Fix overload bug on rt group scheduling.
+ * [hppa]: Ignore any ABI (broke on 2.6.30.2).
+
+ -- maximilian attems <maks@debian.org> Mon, 03 Aug 2009 12:08:56 +0200
+
+linux-2.6 (2.6.30-4) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.30.2.
+ * Fix pci access in x86 startup code. (closes: #537783)
+ * Ignore ABI changes.
+ * Include all plattform and mach specific headers on arm.
+
+ [ maximilian attems ]
+ * Add stable release 2.6.30.3.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 30 Jul 2009 11:55:11 +0200
+
+linux-2.6 (2.6.30-3) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Build-Depend against cpio. (closes: #536196)
+
+ [ Martin Michlmayr ]
+ * [arm] Export __cpu_flush_dcache_page.
+
+ [ Aurelien Jarno ]
+ * [ia64] Fix asm/fpu.h includes.
+
+ [ dann frazier ]
+ * Fix NULL pointer dereference in tun_chr_pool() (CVE-2009-1897)
+ * personality: fix PER_CLEAR_ON_SETID (CVE-2009-1895)
+ * Add -fno-delete-null-pointer-checks to CFLAGS
+
+ -- Bastian Blank <waldi@debian.org> Sat, 18 Jul 2009 10:00:01 +0200
+
+linux-2.6 (2.6.30-2) unstable; urgency=low
+
+ [ dann frazier ]
+ * [powerpc] Use generic rtc (closes: #535354)
+ * [parisc]
+ - ensure broadcast tlb purge runs single threaded
+ - fix ldcw inline assembler
+ (closes: #535844)
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.30.1:
+ - KVM: x86: check for cr3 validity in ioctl_set_sregs (CVE-2009-2287)
+ - ALSA: intel8x0 - Fix PCM position craziness (closes: #533780)
+ - ide-cd: prevent null pointer deref via cdrom_newpc_intr (closes: #535342)
+ * Ignore ABI changes.
+
+ [ maximilian attems ]
+ * [alpha] Add upstream smp buildfix.
+ * [parisc] Disable vxge and niu.
+
+ -- Bastian Blank <waldi@debian.org> Tue, 07 Jul 2009 14:45:43 +0200
+
+linux-kbuild-2.6 (2.6.30-1) unstable; urgency=low
+
+ * New upstream version.
+
+ -- Bastian Blank <waldi@debian.org> Wed, 17 Jun 2009 16:49:57 +0200
+
+linux-2.6 (2.6.30-1) unstable; urgency=low
+
+ * New upstream release.
+ - radeonfb: suspend/resume for ATI Mobility Radeon RV350.
+ (closes: #506964)
+ - tcp: fix MSG_PEEK race check (closes: #513695)
+ - e100 fixes (closes: #527056)
+ - mos7840: fix miscalculation of minor numbers (closes: #498293)
+ - reiserfs update (closes: #531804)
+ - bluetooth stack suspend/resume (closes: #508426, #529785)
+ - e1000e: Remove mutex_trylock and associated WARN on failure
+ (closes: #524699)
+
+ [ maximilian attems ]
+ * [sparc] Enable BLK_DEV_CRYPTOLOOP. (closes: #521829)
+ * Enable PATA_JMICRON instead of legacy BLK_DEV_JMICRON.
+ (closes: #431500, #458493)
+ * Set new NILFS2, AT76C50X_USB, MWL8K, P54_SPI, AR9170_USB,
+ NETFILTER_XT_MATCH_CLUSTER, RDS, SCSI_MPT2SAS, SCSI_OSD_INITIATOR,
+ ETHOC, IGBVF, VXGE, TOUCHSCREEN_AD7877, SENSORS_ATK0110,
+ NETFILTER_XT_TARGET_LED, 3C359, HW_RANDOM_TIMERIOMEM, SENSORS_G760A,
+ SENSORS_LTC4215, SENSORS_LM95241, USB_GSPCA_MR97310A, USB_GSPCA_SQ905,
+ USB_GSPCA_SQ905C, USB_PWC_INPUT_EVDEV, DVB_USB_CE6230, SND_INDIGOIOX,
+ SND_INDIGODJX, USB_SERIAL_CP210X, USB_SERIAL_QUALCOMM,
+ USB_SERIAL_SYMBOL, ISL29003, SERIAL_MAX3100, VIDEO_HDPVR, VIDEO_CX231XX,
+ DRAGONRISE_FF, LEDS_LP5521, LEDS_DAC124S085, LEDS_BD2802,
+ UIO_AEC, CRYPTO_ZLIB, REGULATOR_FIXED_VOLTAGE, NOP_USB_XCEIV,
+ POHMELFS, FSCACHE, CACHEFILES, EXOFS, NFS_FSCACHE, AFS_FSCACHE,
+ MTD_NAND_NANDSIM, STRIP_ASM_SYMS, FCOE_FNIC, USB_NET_CDC_EEM,
+ PCI_IOV, ASYNC_TX_DMA, ROMFS_BACKED_BY_BOTH, DETECT_HUNG_TASK.
+ * [amd64, i386] Set new DELL_WMI, EDAC_AMD8131, EDAC_AMD8111, X86_PAT, DMAR,
+ X86_CPU_DEBUG, CRYPTO_AES_NI_INTEL, X86_X2APIC.
+ * Newer Standards-Version 3.8.1 without changes.
+ * xfs: fix freeing memory in xfs_getbmap().
+
+ [ Ben Hutchings ]
+ * Remove firmware from drivers/staging (closes: #521553)
+ - make rt2860sta and rt2870sta use request_firmware(),
+ thanks to Darren Salt
+ * Remove some sourceless firmware not included in Debian kernel images
+
+ [ Martin Michlmayr ]
+ * [mipsel/r5k-cobalt] Enable SCSI_SYM53C8XX_2 (closes: #526836).
+ * [arm/iop32x, arm/ixp4xx, arm/orion5x] Turn off BOOT_TRACER,
+ BLK_DEV_IO_TRACE, CONTEXT_SWITCH_TRACER, ARM_UNWIND and
+ SECURITY_SELINUX because of size constraints.
+ * [mips/sb1-bcm91250a] There is a platform PATA driver for SWARM IDE
+ these days, so disable IDE and build in ATA, SCSI and BLK_DEV_SD.
+ * [mips/sb1-bcm91250a, mips/sb1a-bcm91480b] Compile in SB1250_MAC and
+ BROADCOM_PHY.
+ * [mips/r4k-ip22] Enable NET_ISA and various ISA network modules on
+ the request of Damian Dimmich since they might be useful on the
+ SGI Indigo2.
+ * Add patches from git.marvell.com:
+ - alternative copy_to_user: more precise fallback threshold
+ - lower overhead with alternative copy_to_user for small copies
+ - Kirkwood: Add CPU idle driver
+ - Kirkwood: clock gating for unused peripherals
+
+ [ Aurelien Jarno ]
+ * [mips(el)/sb1-bcm91250a] Set CONFIG_SCSI_AIC7XXX=y, it is needed
+ on the build daemons.
+ * topconfig set CONFIG_RD_GZIP, CONFIG_RD_BZIP2, CONFIG_RD_LZMA.
+
+ [ Bastian Blank ]
+ * [i386] Disable PentiumPro errata workaround.
+ * [i386] Enable support for big SMP systems.
+ * Disable OSS.
+ * [s390] Use Sparse Memory layout.
+ * [amd64, i386, powerpc, sparc] Make IPv6 support built-in.
+ * Centralize Sound core options.
+ * Centralize Power Management options.
+ * Centralize CPU Frequency scaling options.
+ * [sparc] Enable CPU Frequency scaling.
+ * Enable Network console logging support.
+ * [s390/s390x-tape] Add image.
+ * [s390/s390, s390/s390-tape] Remove images.
+ * [i386/486] Enable High Memory Support.
+ * [i386] Allocate pagetables from High Memory.
+ * [amd64, i386] Write protect kernel read-only data structures.
+ * [amd64, i386] Make kernel relocatable.
+ * Move images and headers into kernel section.
+
+ [ dann frazier ]
+ * Enable bnx2x, using firmware-split patches from net-next and mirroring
+ the per-subarch config settings used for bnx2
+
+ -- Bastian Blank <waldi@debian.org> Sun, 14 Jun 2009 11:45:08 +0200
+
+linux-2.6 (2.6.29-5) unstable; urgency=low
+
+ [ dann frazier ]
+ * [ia64] Backport rtc-efi driver from mainline
+
+ [ maximilian attems ]
+ * qla1280: Fix off-by-some error in firmware loading. (closes: #527265)
+
+ [ Martin Michlmayr ]
+ * Broadcom SB: fix locking in set_irq_affinity.
+ * mmc: load mvsdio automatically when it's a platform device.
+ * mmc: mvsdio: ignore high speed timing requests from the core
+ * USB: ftdi_sio: add vendor/product id for the Marvell SheevaPlug.
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.29.3:
+ - ath9k: Fix FIF_BCN_PRBRESP_PROMISC handling
+ - tracing: x86, mmiotrace: fix range test
+ - sched: account system time properly
+ - rndis_wlan: fix initialization order for workqueue&workers
+ - mm: fix Committed_AS underflow on large NR_CPUS environment
+ - Ignore madvise(MADV_WILLNEED) for hugetlbfs-backed regions
+ - clockevents: prevent endless loop in tick_handle_periodic()
+ - intel-iommu: Avoid panic() for DRHD at address zero.
+ - intel-iommu: Fix oops in device_to_iommu() when devices not found.
+ - intel-iommu: Fix device-to-iommu mapping for PCI-PCI bridges.
+ - cs5536: define dma_sff_read_status() method
+ - proc: avoid information leaks to non-privileged processes
+ - ath5k: fix buffer overrun in rate debug code
+ - mv643xx_eth: OOM handling fixes
+ - mv643xx_eth: 64bit mib counter read fix
+ - check_unsafe_exec: s/lock_task_sighand/rcu_read_lock/
+ - do_execve() must not clear fs->in_exec if it was set by another thread
+ - check_unsafe_exec() doesn't care about signal handlers sharing
+ - New locking/refcounting for fs_struct
+ - Take fs_struct handling to new file (fs/fs_struct.c)
+ - Get rid of bumping fs_struct refcount in pivot_root(2)
+ - Kill unsharing fs_struct in __set_personality()
+ - Annotate struct fs_struct's usage count restriction
+ - fix setuid sometimes wouldn't
+ - fix setuid sometimes doesn't
+ - compat_do_execve should unshare_files
+ - powerpc: Sanitize stack pointer in signal handling code
+ - ACPI: Revert conflicting workaround for BIOS w/ mangled PRT entries
+ - USB: serial: fix lifetime and locking problems
+ - ptrace: ptrace_attach: fix the usage of ->cred_exec_mutex
+ - kbuild: fix Module.markers permission error under cygwin
+ - pagemap: require aligned-length, non-null reads of /proc/pid/pagemap
+ - drm/i915: allow tiled front buffers on 965+
+ - bio: fix memcpy corruption in bio_copy_user_iov()
+ - PCI quirk: disable MSI on VIA VT3364 chipsets
+ - ASoC: Fix offset of freqmode in WM8580 PLL configuration
+ - x86/PCI: don't call e820_all_mapped with -1 in the mmconfig case
+ - x86-64: fix FPU corruption with signals and preemption
+ - drm/i915: add support for G41 chipset
+ - unreached code in selinux_ip_postroute_iptables_compat() (CVE-2009-1184)
+ - PCI: fix incorrect mask of PM No_Soft_Reset bit
+ - exit_notify: kill the wrong capable(CAP_KILL) check (CVE-2009-1337)
+ - crypto: ixp4xx - Fix handling of chained sg buffers
+ - block: include empty disks in /proc/diskstats
+ - b44: Use kernel DMA addresses for the kernel DMA API
+ - virtio-rng: Remove false BUG for spurious callbacks
+ - USB: Unusual Device support for Gold MP3 Player Energy
+ - KVM: x86: release time_page on vcpu destruction
+ - KVM: Fix overlapping check for memory slots
+ - KVM: MMU: disable global page optimization
+ - KVM: MMU: Fix off-by-one calculating large page count
+ - mac80211: fix basic rate bitmap calculation
+ - ALSA: us122l: add snd_us122l_free()
+ - thinkpad-acpi: fix LED blinking through timer trigger
+ - b43: Refresh RX poison on buffer recycling
+ - b43: Poison RX buffers
+ - mac80211: Fix bug in getting rx status for frames pending in reorder
+ buffer
+ - forcedeth: Fix resume from hibernation regression.
+ * Ignore ABI change.
+
+ [ Jurij Smakov ]
+ * [sparc] Fix build
+
+ -- Bastian Blank <waldi@debian.org> Sun, 17 May 2009 12:45:13 +0200
+
+linux-2.6 (2.6.29-4) unstable; urgency=low
+
+ [ maximilian attems ]
+ * drm/i915: allow tiled front buffers on 965+.
+
+ [ Martin Michlmayr ]
+ * Extend erase timeout in M25P80 SPI Flash driver (Peter Horton).
+ * Add driver for GMT G760A fan speed PWM controller chip.
+ * [arm/orion5x] Enable SENSORS_G760A.
+ * Add patches from git.marvell.com:
+ - allow for alternative __copy_to_user/__clear_user implementations
+ - alternative copy_to_user/clear_user implementation copy_user
+ * [arm/orion5x, armel/kirkwood] Enable UACCESS_WITH_MEMCPY.
+ * [MMC] give Sandisk/Kingston SDHC cards some slack before the SWITCH
+ command.
+
+ [ dann frazier ]
+ * [parisc] Fix macro expansion in atomic.h fixing PHONET compilation issue
+ * [parisc] reenable PHONET
+ * Btrfs: fix __ucmpdi2 compile bug on 32 bit builds
+
+ [ Stephen R. Marenka ]
+ * [m68k] Add 2.6.29 patches.
+ * [m68k] Enable RTC for aranym (2.6.29 solution).
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.29.2:
+ - Bonding: fix zero address hole bug in arp_ip_target list
+ - skge: fix occasional BUG during MTU change
+ - scsi: mpt: suppress debugobjects warning
+ - hugetlbfs: return negative error code for bad mount option
+ - NFS: Fix the XDR iovec calculation in nfs3_xdr_setaclargs
+ - gso: Fix support for linear packets
+ - agp: zero pages before sending to userspace
+ - virtio: fix suspend when using virtio_balloon
+ - Revert "console ASCII glyph 1:1 mapping"
+ - Input: gameport - fix attach driver code
+ - x86, PAT: Remove page granularity tracking for vm_insert_pfn maps
+ - KVM: is_long_mode() should check for EFER.LMA
+ - KVM: VMX: Update necessary state when guest enters long mode
+ - KVM: fix kvm_vm_ioctl_deassign_device
+ - KVM: MMU: handle compound pages in kvm_is_mmio_pfn
+ - KVM: Reset PIT irq injection logic when the PIT IRQ is unmasked
+ - KVM: Interrupt mask notifiers for ioapic
+ - KVM: Add CONFIG_HAVE_KVM_IRQCHIP
+ - KVM: Fix missing smp tlb flush in invlpg
+ - USB: usb-storage: augment unusual_devs entry for Simple Tech/Datafab
+ - USB: fix oops in cdc-wdm in case of malformed descriptors
+ - USB: ftdi_sio: add vendor/project id for JETI specbos 1201 spectrometer
+ - usb gadget: fix ethernet link reports to ethtool
+ - x86: disable X86_PTRACE_BTS for now
+ - SCSI: sg: fix q->queue_lock on scsi_error_handler path
+ - SCSI: sg: avoid blk_put_request/blk_rq_unmap_user in interrupt
+ - SCSI: sg: fix races with ioctl(SG_IO)
+ - SCSI: sg: fix races during device removal
+ - mm: pass correct mm when growing stack
+ - pata_hpt37x: fix HPT370 DMA timeouts
+ - hpt366: fix HPT370 DMA timeouts
+ - powerpc: Fix data-corrupting bug in __futex_atomic_op
+ - ALSA: hda - Fix the cmd cache keys for amp verbs
+ - sfc: Match calls to netif_napi_add() and netif_napi_del()
+ - tty: Fix leak in ti-usb
+ - spi: spi_write_then_read() bugfixes
+ - add some long-missing capabilities to fs_mask
+ - hrtimer: fix rq->lock inversion (again)
+ - x86: fix broken irq migration logic while cleaning up multiple vectors
+ - sched: do not count frozen tasks toward load
+ - dm kcopyd: fix callback race
+ - dm kcopyd: prepare for callback race fix
+ - posix-timers: fix RLIMIT_CPU && setitimer(CPUCLOCK_PROF)
+ - posix-timers: fix RLIMIT_CPU && fork()
+ - posixtimers, sched: Fix posix clock monotonicity
+ - cap_prctl: don't set error to 0 at 'no_change'
+ - SCSI: libiscsi: fix iscsi pool error path
+ - SCSI: libiscsi: fix iscsi pool error path
+ - sparc64: Fix bug in ("sparc64: Flush TLB before releasing pages.")
+ - ALSA: hda - add missing comma in ad1884_slave_vols
+ - splice: fix deadlock in splicing to file
+ - netfilter: {ip, ip6, arp}_tables: fix incorrect loop detection
+ - kprobes: Fix locking imbalance in kretprobes
+ - acer-wmi: Blacklist Acer Aspire One
+ - crypto: shash - Fix unaligned calculation with short length
+ - net/netrom: Fix socket locking
+ - af_rose/x25: Sanity check the maximum user frame size
+ - dm table: fix upgrade mode race
+ - dm: path selector use module refcount directly
+ - dm target: use module refcount directly
+ - dm snapshot: avoid having two exceptions for the same chunk
+ - dm snapshot: avoid dropping lock in __find_pending_exception
+ - dm snapshot: refactor __find_pending_exception
+ - dm io: make sync_io uninterruptible
+ - dm raid1: switch read_record from kmalloc to slab to save memory
+ - vfs: skip I_CLEAR state inodes
+ - dm: preserve bi_io_vec when resubmitting bios
+ - ixgbe: Fix potential memory leak/driver panic issue while setting up Tx &
+ Rx ring parameters
+ - mm: do_xip_mapping_read: fix length calculation
+ - mm: define a UNIQUE value for AS_UNEVICTABLE flag
+ - sysctl: fix suid_dumpable and lease-break-time sysctls
+ - cpumask: fix slab corruption caused by alloc_cpumask_var_node()
+ - ide-atapi: start DMA after issuing a packet command
+ - ide: drivers/ide/ide-atapi.c needs <linux/scatterlist.h>
+ - V4L/DVB (10943): cx88: Prevent general protection fault on rmmod
+ - r8169: Reset IntrStatus after chip reset
+ - md/raid1 - don't assume newly allocated bvecs are initialised.
+ - SCSI: sg: fix iovec bugs introduced by the block layer conversion
+ - drm/i915: fix TV mode setting in property change
+ - drm/i915: only set TV mode when any property changed
+ - drm: Use pgprot_writecombine in GEM GTT mapping to get the right bits for
+ !PAT.
+ - drm/i915: check for -EINVAL from vm_insert_pfn
+ - drm/i915: Check for dev->primary->master before dereference.
+ - drm/i915: Sync crt hotplug detection with intel video driver
+ - drm/i915: Read the right SDVO register when detecting SVDO/HDMI.
+ - drm/i915: Change DCC tiling detection case to cover only mobile parts.
+ - dock: fix dereference after kfree()
+ - ACPI: cap off P-state transition latency from buggy BIOSes
+ - x86, setup: mark %esi as clobbered in E820 BIOS call
+ - tracing/core: fix early free of cpumasks
+ - rt2x00: Fix SLAB corruption during rmmod
+ - ext4: fix locking typo in mballoc which could cause soft lockup hangs
+ - ext4: fix typo which causes a memory leak on error path
+ - MIPS: Compat: Zero upper 32-bit of offset_high and offset_low.
+ - PCI/x86: detect host bridge config space size w/o using quirks
+ - ide: Fix code dealing with sleeping devices in do_ide_request()
+ - fbdev: fix info->lock deadlock in fbcon_event_notify()
+ - fbmem: fix fb_info->lock and mm->mmap_sem circular locking dependency
+ - security/smack: fix oops when setting a size 0 SMACK64 xattr
+ * Bump ABI to 2.
+ * [sparc] Make the kernels again 64bit. (closes: #525926)
+
+ -- Bastian Blank <waldi@debian.org> Sun, 03 May 2009 09:38:42 +0200
+
+linux-2.6 (2.6.29-3) unstable; urgency=low
+
+ [ maximilian attems ]
+ * [powerpc] Pipe mkimage postinst call to stderr for debconf.
+ Thanks Jordi Mallach <jordi@debian.org> for the patch. (closes: #518231)
+ * [parisc] Disable PHONET.
+ * [sparc] Disable BTRFS.
+
+ [ Bastian Blank ]
+ * [alpha] Fix location of kernel image.
+ * Add source link to headers packages. (closes: #523726)
+
+ [ Martin Michlmayr ]
+ * Add some sata_mv fixes for Kirkwood from Marvell:
+ - use new sata phy register settings for new devices
+ - increate the IORDY timeout for the soc controllers
+
+ -- maximilian attems <maks@debian.org> Fri, 17 Apr 2009 10:36:03 +0200
+
+linux-2.6 (2.6.29-2) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * [arm/ixp4xx] Build in LEDS_TRIGGER_TIMER (closes: #521141).
+ * [mips*/4kc-malta, mips*/5kc-malta] Build in RTC_DRV_CMOS.
+
+ [ maximilian attems ]
+ * linux-libc-dev: Bump versioned replaces libdrm-dev.
+ * parisc: hardcode gcc-4.3 usage.
+ * Postrm cleanup new module-init-tools 3.7 files.
+
+ [ Bastian Blank ]
+ * Install all needed Makefiles into common headers package.
+ (closes: #521472)
+ * Add stable release 2.6.29.1:
+ - V4L: v4l2-common: remove incorrect MODULE test
+ - sparc64: Fix reset hangs on Niagara systems.
+ - sparc64: Flush TLB before releasing pages.
+ - sparc64: Fix MM refcount check in smp_flush_tlb_pending().
+ - KVM: MMU: Fix another largepage memory leak
+ - cfg80211: fix incorrect assumption on last_request for 11d
+ - lguest: fix spurious BUG_ON() on invalid guest stack.
+ - lguest: wire up pte_update/pte_update_defer
+ - VM, x86, PAT: Change is_linear_pfn_mapping to not use vm_pgoff
+ - x86: mtrr: don't modify RdDram/WrDram bits of fixed MTRRs
+ - x86: ptrace, bts: fix an unreachable statement
+ - x86: fix 64k corruption-check
+ - x86, uv: fix cpumask iterator in uv_bau_init()
+ - x86, PAT, PCI: Change vma prot in pci_mmap to reflect inherited prot
+ - Add a missing unlock_kernel() in raw_open()
+ - fuse: fix fuse_file_lseek returning with lock held
+ - ARM: 5435/1: fix compile warning in sanity_check_meminfo()
+ - ARM: twl4030 - leak fix
+ - ARM: fix leak in iop13xx/pci
+ - ARM: cumana: Fix a long standing bogon
+ - ARM: 5428/1: Module relocation update for R_ARM_V4BX
+ - ARM: pxa: fix overlay being un-necessarily initialized on pxa25x
+ - DVB: firedtv: FireDTV S2 problems with tuning solved
+ - cfg80211: force last_request to be set for OLD_REG if regdom is EU
+ - CIFS: Fix memory overwrite when saving nativeFileSystem field during mount
+ - ath5k: warn and correct rate for unknown hw rate indexes
+ - ath5k: disable MIB interrupts
+ - b43: fix b43_plcp_get_bitrate_idx_ofdm return type
+ - ath9k: fix dma mapping leak of rx buffer upon rmmod
+ - ath5k: use spin_lock_irqsave for beacon lock
+ - cifs: fix buffer format byte on NT Rename/hardlink
+ - ath9k: downgrade xmit queue full message to xmit debug
+ - KVM: SVM: set accessed bit for VMCB segment selectors
+ - KVM: VMX: Don't allow uninhibited access to EFER on i386
+ - USB: add quirk to avoid config and interface strings
+ - USB: gadget: fix rndis regression
+ - USB: usb-storage: increase max_sectors for tape drives
+ - USB: fix USB_STORAGE_CYPRESS_ATACB
+ - USB: EHCI: add software retry for transaction errors
+ - xfrm: spin_lock() should be spin_unlock() in xfrm_state.c
+ - ipv6: Plug sk_buff leak in ipv6_rcv (net/ipv6/ip6_input.c)
+ - GRO: Disable GRO on legacy netif_rx path (closes: #521691)
+ - bridge: bad error handling when adding invalid ether address
+ - dnet: drivers/net/dnet.c needs <linux/io.h>
+ - udp: Wrong locking code in udp seq_file infrastructure
+ - netfilter: nf_conntrack_tcp: fix unaligned memory access in tcp_sack
+
+ [ dann frazier ]
+ * bnx2: correct firmware revisions (closes: #522049)
+ * [mips] Zero upper 32-bits of compat llseek (closes: #521016)
+
+ -- Bastian Blank <waldi@debian.org> Sat, 04 Apr 2009 15:13:33 +0200
+
+linux-kbuild-2.6 (2.6.29-1) unstable; urgency=low
+
+ * New upstream version.
+ * Autogenerate list of supported options in modpost. (closes: #518961)
+ - Build-depend against python.
+ * Use debhelper compat level 7.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 26 Mar 2009 12:54:47 +0100
+
+linux-2.6 (2.6.29-1) unstable; urgency=low
+
+ * New upstream release
+ - tg3 use request_firmware and firmware nuked.
+ - acenic use request_firmware and firmware nuked.
+ - e100 use request_firmware and firmware nuked. (closes: #494308)
+ - cassini use request_firmware and firmware nuked.
+ - starfire use request_firmware and firmware nuked. (closes: #501152)
+ - cxgb3 use request_firmware and firmware nuked.
+ - NR_CPUS setting no longer affects size of modules. (closes: #516709)
+ - orinoco: use KERN_DEBUG for link status messages. (closes: #447549)
+ - [CIFS] Fix oops in cifs_strfromUCS_le mounting to servers which do
+ not specify their OS. (closes: #463402)
+ - fixes conflict between <asm/byteorder.h> and <endian.h> on mips
+ (closes: #519761)
+
+ [ maximilian attems ]
+ * topconfig set new NET_NS, NET_SCH_DRR, NET_CLS_CGROUP, LIB80211,
+ SCSI_CXGB3_ISCSI, NATIONAL_PHY, STE10XP, LSI_ET1011C_PHY, BTRFS_FS,
+ SQUASHFS, PCI_STUB, WIMAX, MTD_LPDDR, EEPROM_AT24, EEPROM_AT25,
+ EEPROM_LEGACY, BLK_DEV_IT8172, SMSC9420, WIMAX_I2400M_USB,
+ WIMAX_I2400M_SDIO, MISDN_HFCUSB, SENSORS_ADT7475, SENSORS_LTC4245,
+ RADIO_TEA5764, SND_HDA_CODEC_INTELHDMI, RT2860, RT2870, RTL8187SE,
+ LIBFC, FCOE, ATL1C, JOYSTICK_WALKERA0701, TOUCHSCREEN_WACOM_W8001,
+ TOUCHSCREEN_TSC2007, W1_SLAVE_DS2431, WM8350_POWER, SOC_CAMERA_MT9T031,
+ SOC_CAMERA_TW9910, SOC_CAMERA_OV772X, USB_STV06XX, USB_GSPCA_OV534,
+ DVB_LGDT3304, WM8350_WATCHDOG, SMSC_SCH311X_WDT, SND_HRTIMER,
+ SND_HDA_RECONFIG, GREENASIA_FF, USB_SERIAL_SIEMENS_MPI,
+ USB_SERIAL_OPTICON, LEDS_ALIX2, LEDS_WM8350, OCFS2_FS_POSIX_ACL,
+ BTRFS_FS_POSIX_ACL, ATM_SOLOS, MFD_PCF50633, PCF50633_ADC, PCF50633_GPIO,
+ REGULATOR_PCF50633, DVB_S921, EDAC_I5400, RTC_DRV_PCF50633,
+ INPUT_PCF50633_PMU, CHARGER_PCF50633, DEVPTS_MULTIPLE_INSTANCES,
+ SCHED_OMIT_FRAME_POINTER, DCB, IXGBE_DCB, SFC_MTD, BE2NET, DNET.
+ * topconfig enable SND_HDA_HWDEP for sound debugging purpose.
+ * topconfig enable USB_HIDDEV (closes: #517771)
+ * [x86] set DELL_LAPTOP, COMEDI, X86_PTRACE_BTS, XENFS, XEN_COMPAT_XENFS,
+ X86_REROUTE_FOR_BROKEN_BOOT_IRQS, OPTIMIZE_INLINING.
+ * [x86] unset DRM_I915_KMS due to upgrade path from Lenny override with
+ modeset module param.
+ * temp.image.plain/preinst: Consistent output.
+ * [x86_64] set SPARSE_IRQ, NUMA_MIGRATE_IRQ_DESC, TREE_RCU.
+ * [x86_32] set BLK_DEV_CS5536.
+ * [powerpc] set PHANTOM, HP_ILO, MV643XX_ETH, MOUSE_BCM5974, VIRTUALIZATION.
+ * topconfig unset legacy SCSI_PROC_FS, PCMCIA_IOCTL, ACPI_PROCFS_POWER,
+ ACPI_PROC_EVENT.
+
+ [ Bastian Blank ]
+ * Use external source directory for all builds.
+ * Use external source directory for all header packages.
+ * Use dh_prep.
+ * Update copyright file.
+ * [s390/s390] Disable BTRFS.
+ * [sparc] Use sparc as kernel architecture.
+ * Update kconfig report changes patch.
+ * [s390] Enable KVM.
+ * Use debhelper compat level 7.
+
+ [ Martin Michlmayr ]
+ * [mips/r4k-ip22] Build in RTC_DRV_DS1286.
+ * [mips/r5k-ip32] Build in RTC_DRV_CMOS (Closes: #516775).
+ * [arm/versatile, arm/iop32x, arm/ixp4xx] Make LLC2 modular.
+ * [arm, mips, mipsel] Make MII modular.
+ * [arm/ixp4xx] Make IXP4XX_WATCHDOG modular.
+ * topconfig: Disable NET_DSA since this hardware is special purpose and
+ the option cannot be made modular at the moment and bloats the kernel
+ image too much.
+ * [arm, armel] Enable various V4L USB devices. (Closes: #518582)
+ * [arm/orion5x] Build the SENSORS_LM75 module since it's needed on the
+ D-Link DNS-323.
+ * [arm/iop32x, arm/ixp4xx, arm/orion5x] Enable INPUT_TOUCHSCREEN.
+ * [arm/iop32x, arm/ixp4xx, arm/orion5x] Enable INPUT_JOYDEV, GAMEPORT
+ and INPUT_JOYSTICK (Closes: #520433).
+ * [arm/iop32x, arm/ixp4xx, arm/orion5x] Add a size check to ensure that
+ the kernel will fit in flash.
+ * Add patches from git.marvell.com to improve Kirkwood support:
+ - make gpio /input/output validation separate
+ - MPP initialization code
+ - SDIO driver for Marvell SoCs
+ - SDIO driver registration for DB6281 and RD6281
+ - register internal devices in a common place
+ - Marvell SheevaPlug support
+ - SheevaPlug USB Power Enable setup
+ - SheevaPlug LED support
+ - Hook up I2C on Kirkwood
+ - Add support for QNAP TS-119/TS-219 Turbo NAS
+ * [armel/kirkwood] Add an image for Marvell's Kirkwood platform.
+
+ [ Ben Hutchings ]
+ * Remove firmware from drivers and make them use request_firmware():
+ - mga (closes: #502666)
+ - qla1280 (closes: #502667)
+ - r128 (closes: #494007)
+ - radeon (closes: #494009)
+ - tehuti (closes: #501153)
+ - typhoon (closes: #502669)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 24 Mar 2009 14:32:11 +0100
+
+linux-kbuild-2.6 (2.6.28-1) unstable; urgency=low
+
+ * New upstream version.
+
+ -- Bastian Blank <waldi@debian.org> Sun, 22 Feb 2009 13:45:39 +0100
+
+linux-2.6 (2.6.28-1) unstable; urgency=low
+
+ * New upstream release
+ - new btusb. (closes: #505184)
+ - iwlagn driver for Intel Wifi Link 5100 and 5300. (closes: #501157)
+ - drm git branch vblank-rework merged. (closes: #456219)
+ - netfilter.h got in.h include. (closes: #487103)
+ - netlink errno propageted. (closes: #489340)
+ - agp g41 support (closes: #513228)
+ - Includes atl2 driver (Closes: #500065)
+ - Fixes loading of video module on Samsung systems
+ (Closes: #475319, #495697)
+ - Fix rf_kill handling of iwl3945 driver (Closes: #503688)
+ - Fix adjtimex frequency offset (Closes: #432877)
+ - Fix oopses with Canon PIXMA MP150 (Closes: #487725)
+ - Fix excessive interrrupts with compiz (Closes: #456219)
+ - dsp56k: use request_firmware and firmware nuked (closes: #494010)
+ - dabusb: use request_firmware and firmware nuked (closes: #502663)
+ - kaweth: use request_firmware and firmware nuked (closes: #502665)
+
+ [ maximilian attems ]
+ * Reenable new Juju firewire stack.
+ * topconfig set ATH9K, IWL5000, IP_NF_SECURITY, IP6_NF_SECURITY,
+ BRIDGE_EBT_IP6, BT_HCIBTUSB, TOUCHSCREEN_INEXIO, TOUCHSCREEN_TOUCHIT213,
+ VIRTIO_CONSOLE, VIDEO_ZORAN_ZR36060, USB_VIDEO_CLASS_INPUT_EVDEV,
+ USB_GSPCA, USB_S2255, OCFS2_FS_STATS, OMFS_FS, CRYPTO_RMD128,
+ CRYPTO_RMD160, CRYPTO_RMD256, CRYPTO_RMD320, VLAN_8021Q_GVRP, HP_WMI,
+ COMPAL_LAPTOP, SCSI_DH, SCSI_DH_RDAC, SCSI_DH_HP_SW, SCSI_DH_EMC,
+ SCSI_DH_ALUA, MAC80211_HWSIM, USB_HSO, BLK_DEV_INTEGRITY, SGI_XP, SGI_GRU,
+ TLAN, ATM_IA, ATM_FORE200E, MISDN, I2C_HELPER_AUTO, I2C_ISCH,
+ I2C_NFORCE2_S4985, AT24, SENSORS_AD7414, SENSORS_ADCXX,
+ SOC_CAMERA_PLATFORM, VIDEO_SH_MOBILE_CEU, DVB_USB_DW2102, DVB_USB_ANYSEE,
+ DVB_SIANO_SMS1XXX, DVB_DRX397XD, MMC_SDHCI_PCI (closes: #507150),
+ MMC_SDRICOH_CS (closes: #509979), EDAC_I5100, RTC_DRV_M41T94,
+ RTC_DRV_DS1305, UBIFS, EXT4 (closes: #512266), CGROUP_FREEZER,
+ NETFILTER_TPROXY, NETFILTER_XT_TARGET_TPROXY, NETFILTER_XT_MATCH_RECENT,
+ NETFILTER_XT_MATCH_SOCKET, NET_ACT_SKBEDIT, PHONET, NET_9P_RDMA, ATL2, JME,
+ ENIC, MLX4_EN, USB_NET_SMSC95XX, I7300_IDLE, NET_SCH_MULTIQ, ICS932S401,
+ PANASONIC_LAPTOP, QLGE, LIBERTAS_THINFIRM, LIBERTAS_THINFIRM_USB,
+ INPUT_CM109, W1_SLAVE_BQ27000, SENSORS_ADT7462, SENSORS_MAX1111,
+ SENSORS_LIS3LV02D, MFD_WM8400, MFD_WM8350_I2C, SOC_CAMERA_MT9M111,
+ USB_M5602, USB_GSPCA_CONEX, USB_GSPCA_ETOMS, USB_GSPCA_FINEPIX,
+ USB_GSPCA_MARS, USB_GSPCA_OV519, USB_GSPCA_PAC207, USB_GSPCA_PAC7311,
+ USB_GSPCA_SONIXB, USB_GSPCA_SONIXJ, USB_GSPCA_SPCA500, USB_GSPCA_SPCA501,
+ USB_GSPCA_SPCA505, USB_GSPCA_SPCA506, USB_GSPCA_SPCA508, USB_GSPCA_SPCA561,
+ USB_GSPCA_STK014, USB_GSPCA_SUNPLUS, USB_GSPCA_T613, USB_GSPCA_TV8532,
+ USB_GSPCA_VC032X, USB_GSPCA_ZC3XX, C2PORT, C2PORT_DURAMAR_2150,
+ W83697UG_WDT, USB_MR800, DVB_USB_CINERGY_T2, DVB_USB_DTV5100,
+ DVB_USB_AF9015, DVB_DM1105, DVB_LGS8GL5, DVB_DUMMY_FE,
+ SND_HDA_CODEC_NVHDMI, SND_USB_US122L, USB_VST, LEDS_PCA9532, LEDS_HP_DISK,
+ LEDS_PCA955X, LEDS_TRIGGER_BACKLIGHT, EDAC_X38, RTC_DRV_RX8581,
+ RTC_DRV_DS1390, RTC_DRV_DS3234, RTC_DRV_DS1286, RTC_DRV_M48T35,
+ RTC_DRV_BQ4802, RTC_DRV_WM8350, UNEVICTABLE_LRU, MAC80211_RC_MINSTREL,
+ BATTERY_BQ27x00, REGULATOR, REGULATOR_BQ24022, REGULATOR_WM8350,
+ REGULATOR_WM8400, FB_VIA, FB_METRONOME, FB_MB862XX, UIO_SERCOS3,
+ CORE_DUMP_DEFAULT_ELF_HEADERS, NET_DSA, NET_DSA_MV88E6060,
+ NET_DSA_MV88E6131, NET_DSA_MV88E6123_61_65, IT87_WDT,
+ BACKLIGHT_MBP_NVIDIA, SND_HDA_INPUT_BEEP, USB_WUSB, USB_TMC, IDE_GD,
+ IDE_GD_ATA, IDE_GD_ATAPI, PCMCIA_IBMTR, USB_EMI62, USB_EMI26, USB_SEVSEG,
+ UWB, UWB_WLP, UWB_I1480U, UWB_I1480U_WLP, CRYPTO_FIPS, ANSI_CPRNG,
+ CRC_T10DIF, STAGING, ET131X, CRYPTO_ANSI_CPRNG, PRISM2_USB, HID_COMPAT,
+ SYSCTL_SYSCALL_CHECK, BOOT_TRACER.
+ * [x86] set MOUSE_BCM5974, X86_RESERVE_LOW_64K, OPROFILE_IBS,
+ MICROCODE_INTEL, MICROCODE_AMD, X86_VERBOSE_BOOTUP, MTRR_SANITIZER,
+ CRYPTO_CRC32C_INTEL, STRICT_DEVMEM.
+ * [x86_64] set AMD_IOMMU, INTR_REMAP.
+ * [x86_32] set TOUCHSCREEN_HTCPEN, MOUSE_PS2_OLPC.
+ * Add stable releases 2.6.28.1-6.
+ * Turn off SYSFS_DEPRECATED* for newer udev and proper /sys/.
+ * linux-libc-dev: Add versioned replaces libdrm-dev. (closes: #513604)
+ * topconfig: Enable MACVLAN. (closes: #504611)
+ * [ppc] BAYCOM_PAR, BAYCOM_EPP.
+ * [x86_64] set NR_CPUS to 512. (closes: #491309)
+ * [686-bigmem] set modular XEN_FBDEV_FRONTEND.
+ * Newer Standards-Version 3.8.0 without changes.
+ * Use update-initramfs for initramfs-tools.
+ * Fix preinst and postinst call to not use deprecated mkinitramfs-kpkg
+ interfaces.
+
+ [ Martin Michlmayr ]
+ * [mips/r4k-ip22, mips/sb1-bcm91250a] Don't build in ISO9660.
+ * [mipsel/r5k-cobalt] Enable INPUT_COBALT_BTNS.
+ * [mipsel/r5k-cobalt] Enable the new Cobalt LCD driver (FB_COBALT).
+ * [mips/r4k-ip22] Enable the new ALSA sound driver (SND_SGI_HAL2).
+ * [arm/iop32x, arm/ixp4xx] Don't build in KEYBOARD_ATKBD, MOUSE_PS2,
+ SERIO, JFFS2_FS, and CRAMFS.
+ * [arm/iop32x, arm/ixp4xx] Unset DEBUG_KERNEL so the kernel will
+ fit in flash.
+ * [arm/orion5x] Unset FIXED_PHY to work around a clash with fixed
+ mdio bus and mv643xx_eth.
+ * Migrate arm, armel, mips and mipsel away from kernel-package.
+
+ [ Ian Campbell ]
+ * [x86]: Enable Xen guest support in amd64 flavour. (closes: #495590)
+
+ [ dann frazier ]
+ * [x86, ia64] Enable ACPI_PCI_SLOT
+
+ [ Bastian Blank ]
+ * Make gcc-4.3 the default compiler. (closes: #463295)
+ * Add optional image size check.
+ * debian/rules.real: Setup image installation rules for alpha, hppa,
+ ia64 and sparc.
+ * Remove support to build images using kernel-package.
+
+ -- maximilian attems <maks@debian.org> Wed, 18 Feb 2009 16:36:04 +0100
+
+linux-2.6 (2.6.26-12) unstable; urgency=high
+
+ [ Ian Campbell ]
+ * xen: fix ACPI processor throttling for when processor id is -1. (closes: #502849)
+
+ [ dann frazier ]
+ * Make sendmsg() block during UNIX garbage collection (CVE-2008-5300)
+ * Fix race conditions between inotify removal and umount (CVE-2008-5182)
+ * Fix DoS when calling svc_listen twice on the same socket while reading
+ /proc/net/atm/*vc (CVE-2008-5079)
+
+ [ Bastian Blank ]
+ * [openvz, vserver] Fix descriptions.
+ * [sparc] Enable Sun Logical Domains support. (closes: #501684)
+ * Fix coexistence of pata_marvell and ahci. (closes: #507432)
+ * [sparc] Support Intergraph graphics chips. (closes: #508108)
+
+ -- Bastian Blank <waldi@debian.org> Mon, 15 Dec 2008 12:57:18 +0100
+
+linux-2.6 (2.6.26-11) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * [sparc] Reintroduce dummy PCI host controller to workaround broken X.org.
+ * [sparc] Fix size checks in PCI maps.
+ * Add stable release 2.6.26.8:
+ - netfilter: restore lost ifdef guarding defrag exception
+ - netfilter: snmp nat leaks memory in case of failure
+ - netfilter: xt_iprange: fix range inversion match
+ - ACPI: dock: avoid check _STA method
+ - ACPI: video: fix brightness allocation
+ - sparc64: Fix race in arch/sparc64/kernel/trampoline.S
+ - math-emu: Fix signalling of underflow and inexact while packing result.
+ - tcpv6: fix option space offsets with md5
+ - net: Fix netdev_run_todo dead-lock
+ - scx200_i2c: Add missing class parameter
+ - DVB: s5h1411: Power down s5h1411 when not in use
+ - DVB: s5h1411: Perform s5h1411 soft reset after tuning
+ - DVB: s5h1411: bugfix: Setting serial or parallel mode could destroy bits
+ - V4L: pvrusb2: Keep MPEG PTSs from drifting away
+ - ACPI: Always report a sync event after a lid state change
+ - ALSA: use correct lock in snd_ctl_dev_disconnect()
+ - file caps: always start with clear bprm->caps_*
+ - libertas: fix buffer overrun
+ - net: Fix recursive descent in __scm_destroy().
+ - SCSI: qla2xxx: Skip FDMI registration on ISP21xx/22xx parts.
+ (Closes: #502552)
+ - edac cell: fix incorrect edac_mode
+ - ext[234]: Avoid printk floods in the face of directory corruption
+ (CVE-2008-3528)
+ - gpiolib: fix oops in gpio_get_value_cansleep()
+ * Override ABI changes.
+ * [xen] Update description. (closes: #505961)
+ * Revert parts of 2.6.26.6 to fix resume breakage. (closes: #504167)
+ - clockevents: prevent multiple init/shutdown
+ - clockevents: broadcast fixup possible waiters
+
+ [ dann frazier ]
+ * Fix buffer overflow in hfsplus (CVE-2008-4933)
+ * Fix BUG() in hfsplus (CVE-2008-4934)
+ * Fix stack corruption in hfs (CVE-2008-5025)
+ * Fix oops in tvaudio when controlling bass/treble (CVE-2008-5033)
+
+ [ Martin Michlmayr ]
+ * [arm/iop32x, arm/ixp4xx, arm/orion5x] Enable support for more partition
+ tables, including MAC_PARTITION (requested by Benoît Knecht).
+ * leds-pca9532: Fix memory leak and properly handle errors (Sven Wegener)
+ * leds-pca9532: Move i2c work to a workqueque (Riku Voipio). (closes:
+ #506116)
+
+ -- Bastian Blank <waldi@debian.org> Wed, 26 Nov 2008 11:43:48 +0100
+
+linux-2.6 (2.6.26-10) unstable; urgency=low
+
+ [ dann frazier ]
+ * sctp: Fix possible kernel panic in sctp_sf_abort_violation (CVE-2008-4618)
+
+ [ Martin Michlmayr ]
+ * DNS-323: add support for revision B1 machines (Matthew Palmer).
+ * ext3/ext4: Add support for non-native signed/unsigned htree hash
+ algorithms (Theodore Ts'o). (closes: #493957)
+ * [arm/ixp4xx] Enable USB_ACM (closes: #504723).
+
+ [ Bastian Blank ]
+ * agp: Fix stolen memory counting on Intel G4X. (closes: #502606)
+ * Add stable release 2.6.26.7:
+ - security: avoid calling a NULL function pointer in drivers/video/tvaudio.c
+ - DVB: au0828: add support for another USB id for Hauppauge HVR950Q
+ - drm/i915: fix ioremap of a user address for non-root (CVE-2008-3831)
+ - ACPI: Ignore _BQC object when registering backlight device
+ - hwmon: (it87) Prevent power-off on Shuttle SN68PT
+ - Check mapped ranges on sysfs resource files
+ - x86: avoid dereferencing beyond stack + THREAD_SIZE
+ - PCI: disable ASPM on pre-1.1 PCIe devices
+ - PCI: disable ASPM per ACPI FADT setting
+ - V4L/DVB (9053): fix buffer overflow in uvc-video
+ - V4L/DVB (8617): uvcvideo: don't use stack-based buffers for USB transfers.
+ - V4L/DVB (8498): uvcvideo: Return sensible min and max values when querying
+ a boolean control.
+ - V4L: zr36067: Fix RGBR pixel format
+ - V4L: bttv: Prevent NULL pointer dereference in radio_open
+ - libata: fix EH action overwriting in ata_eh_reset()
+ - libata: always do follow-up SRST if hardreset returned -EAGAIN
+ - fbcon_set_all_vcs: fix kernel crash when switching the rotated consoles
+ - modules: fix module "notes" kobject leak
+ - b43legacy: Fix failure in rate-adjustment mechanism
+ - CIFS: make sure we have the right resume info before calling CIFSFindNext
+ - sched_rt.c: resch needed in rt_rq_enqueue() for the root rt_rq
+ - tty: Termios locking - sort out real_tty confusions and lock reads
+ - x86, early_ioremap: fix fencepost error
+ - x86: improve UP kernel when CPU-hotplug and SMP is enabled
+ - x86: Reserve FIRST_DEVICE_VECTOR in used_vectors bitmap.
+ * [xen] Remove pte file workaround.
+
+ [ Ian Campbell ]
+ * [xen] Disable usage of PAT. (closes: #503821)
+
+ -- Bastian Blank <waldi@debian.org> Sat, 08 Nov 2008 10:50:58 +0100
+
+linux-2.6 (2.6.26-9) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.26.6:
+ - mm owner: fix race between swapoff and exit
+ - rtc: fix kernel panic on second use of SIGIO nofitication
+ - fbcon: fix monochrome color value calculation
+ - ALSA: snd-powermac: HP detection for 1st iMac G3 SL
+ - ALSA: snd-powermac: mixers for PowerMac G4 AGP
+ - sparc64: Fix missing devices due to PCI bridge test in
+ of_create_pci_dev().
+ - sparc64: Fix disappearing PCI devices on e3500.
+ - sparc64: Fix OOPS in psycho_pcierr_intr_other().
+ - sparc64: Fix interrupt register calculations on Psycho and Sabre.
+ - sparc64: Fix PCI error interrupt registry on PSYCHO.
+ - udp: Fix rcv socket locking
+ - sctp: Fix oops when INIT-ACK indicates that peer doesn't support AUTH
+ (CVE-2008-4576)
+ - sctp: do not enable peer features if we can't do them.
+ - ipsec: Fix pskb_expand_head corruption in xfrm_state_check_space
+ - netlink: fix overrun in attribute iteration
+ - niu: panic on reset
+ - ipv6: Fix OOPS in ip6_dst_lookup_tail().
+ - XFRM,IPv6: initialize ip6_dst_blackhole_ops.kmem_cachep
+ - af_key: Free dumping state on socket close
+ - pcmcia: Fix broken abuse of dev->driver_data
+ - clockevents: remove WARN_ON which was used to gather information
+ - ntp: fix calculation of the next jiffie to trigger RTC sync
+ - x86: HPET: read back compare register before reading counter
+ - x86: HPET fix moronic 32/64bit thinko
+ - clockevents: broadcast fixup possible waiters
+ - HPET: make minimum reprogramming delta useful
+ - clockevents: prevent endless loop lockup
+ - clockevents: prevent multiple init/shutdown
+ - clockevents: enforce reprogram in oneshot setup
+ - clockevents: prevent endless loop in periodic broadcast handler
+ - clockevents: prevent clockevent event_handler ending up handler_noop
+ - x86: fix memmap=exactmap boot argument
+ - x86: add io delay quirk for Presario F700
+ - ACPI: Avoid bogus EC timeout when EC is in Polling mode
+ - x86: fix SMP alternatives: use mutex instead of spinlock, text_poke is
+ sleepable
+ - rtc: fix deadlock
+ - mm: dirty page tracking race fix
+ - x86-64: fix overlap of modules and fixmap areas
+ - x86: PAT proper tracking of set_memory_uc and friends
+ - x86: fix oprofile + hibernation badness
+ - x86: fdiv bug detection fix
+ - rt2x00: Use ieee80211_hw->workqueue again
+ - x86: Fix 27-rc crash on vsmp due to paravirt during module load
+ - sg: disable interrupts inside sg_copy_buffer
+ - ocfs2: Increment the reference count of an already-active stack.
+ - APIC routing fix
+ - sched: fix process time monotonicity
+ - block: submit_bh() inadvertently discards barrier flag on a sync write
+ - x64, fpu: fix possible FPU leakage in error conditions
+ - x86-64: Clean up save/restore_i387() usage
+ - KVM: SVM: fix guest global tlb flushes with NPT
+ - KVM: SVM: fix random segfaults with NPT enabled
+ - ALSA: remove unneeded power_mutex lock in snd_pcm_drop
+ - ALSA: fix locking in snd_pcm_open*() and snd_rawmidi_open*()
+ - ALSA: oxygen: fix distorted output on AK4396-based cards
+ - ALSA: hda - Fix model for Dell Inspiron 1525
+ - SCSI: qla2xxx: Defer enablement of RISC interrupts until ISP
+ initialization completes.
+ - USB: fix hcd interrupt disabling
+ - smb.h: do not include linux/time.h in userspace
+ - pxa2xx_spi: fix build breakage
+ - pxa2xx_spi: chipselect bugfixes
+ - pxa2xx_spi: dma bugfixes
+ - mm: mark the correct zone as full when scanning zonelists
+ - async_tx: fix the bug in async_tx_run_dependencies
+ - drivers/mmc/card/block.c: fix refcount leak in mmc_block_open()
+ - ixgbe: initialize interrupt throttle rate
+ - i2c-dev: Return correct error code on class_create() failure
+ - x86-32: AMD c1e force timer broadcast late
+ * [x86] Update patch to detect not properly announced cmos RTC devices.
+ * [xen] Overtake hvc console by default.
+
+ [ maximilian attems ]
+ * [openvz] ip: NULL pointer dereferrence in tcp_v(4|6)_send_ack
+ (closes: #500472)
+ * [openvz] unset NF_CONNTRACK_IPV6 for now until abi bump.
+
+ [ Stephen R. Marenka ]
+ * [m68k] add patches to fix atari ethernec per Michael Schmitz:
+ atari-ethernec-IRQF_SHARED.diff and atari-ethernec-fixes.diff.
+ * [m68k] add mac-esp-fix-for-quadras-with-two-esp-chips.diff to fix macs
+ with dual scsi busses and a problem with xorg, per Finn Thain.
+ * [m68k] add atari-atari_keyb_init-operator-precedence.diff per
+ Michael Schmitz.
+ * [m68k] more mac patches, per Finn Thain.
+
+ [ Martin Michlmayr ]
+ * [arm/ixp4xx] Enable USB_ATM and USB_SPEEDTOUCH (closes: #502182).
+ * [arm/iop32x, arm/orion5x] Likewise.
+ * DNS-323: read MAC address from flash (Matthew Palmer).
+
+ [ dann frazier ]
+ * Restrict access to the DRM_I915_HWS_ADDR ioctl (CVE-2008-3831)
+ * Don't allow splicing to files opened with O_APPEND (CVE-2008-4554)
+
+ -- Bastian Blank <waldi@debian.org> Sat, 18 Oct 2008 12:14:22 +0200
+
+linux-2.6 (2.6.26-8) unstable; urgency=medium
+
+ [ dann frazier ]
+ * [x86] Fix broken LDT access in VMI (CVE-2008-4410)
+ * ata: Fix off-by-one-error that causes errors when reading a
+ block on the LBA28-LBA48 boundary
+ * [s390] prevent ptrace padding area read/write in 31-bit mode
+ (CVE-2008-1514)
+
+ [ Bastian Blank ]
+ * Fix generation of i386 Xen image information.
+ * [i386] Restrict the usage of long NOPs. (closes: #464962)
+ * Fix access to uninitialized user keyring. (closes: #500279)
+ * [x86] Fix detection of non-PNP RTC devices. (closes: #499230)
+
+ -- Bastian Blank <waldi@debian.org> Thu, 09 Oct 2008 12:07:21 +0200
+
+linux-2.6 (2.6.26-7) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * [xen] Add SuSE Xen patch. (closes: #495895)
+ * Only register notifiers in braille console if used, fixes Insert key.
+ (closes: #494374)
+ * Fix ACPI EC GPE storm detection. (closes: #494546)
+ * Disable useless support for ISP1760 USB host controller.
+ (closes: #498304)
+ * rt61pci: Add a sleep after firmware upload. (closes: #498828)
+
+ [ Stephen R. Marenka ]
+ * [m68k] Set CONFIG_ATARI_ETHERNEC=m for atari, since it only works
+ in modular form.
+ * [m68k] Enable CONFIG_ADB_PMU68K=y for mac.
+ * [m68k] Add atari-aranym-nf-wrappers.diff patch to fix atari LBD
+ problems, set CONFIG_LBD=y for atari.
+
+ [ Martin Michlmayr ]
+ * [arm/orion5x] Enable CONFIG_ATALK (requested by Ben Schwarz).
+ * [arm/versatile] Enable CONFIG_VFP. (closes: #499463)
+ * ath5k: Fix bad udelay calls on AR5210 code (Nick Kossifidis).
+ * [arm] No longer disable ATH5K.
+
+ [ dann frazier ]
+ * Add missing capability checks in sbni_ioctl (CVE-2008-3525)
+
+ -- Bastian Blank <waldi@debian.org> Wed, 01 Oct 2008 09:02:30 +0200
+
+linux-2.6 (2.6.26-6) unstable; urgency=low
+
+ [ maximilian attems ]
+ * [openvz] Enable checkpointing. (closes: #497292)
+
+ [ Bastian Blank ]
+ * Allow forced module loading again. (closes: #494144)
+ * Set IEEE 802.11 (wireless) regulatory domain default to EU.
+ (closes: #497971)
+ * [i386] Enable IDE ACPI support. Override ABI changes. (closes: #470528)
+ * [i386/686-bigmem] Promote to generic subarch. (closes: #476120)
+
+ [ Martin Michlmayr ]
+ * Fix dead 21041 ethernet after ifconfig down (Thomas Bogendoerfer).
+
+ [ dann frazier ]
+ * [hppa] Enable the FPU before using it, fixes booting on A500s
+ with our CONFIG_PRINTK_TIME=y setting. (closes: #499458)
+
+ -- Bastian Blank <waldi@debian.org> Wed, 24 Sep 2008 12:06:47 +0200
+
+linux-2.6 (2.6.26-5) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * Backport power-off method for Kurobox Pro.
+ * [arm/versatile] Really enable CONFIG_RTC_DRV_PL031 (closes: #484432).
+
+ [ Stephen R. Marenka ]
+ * [m68k] Set CONFIG_LBD=n for atari, since it conflicts with nfblock.
+
+ [ Bastian Blank ]
+ * Reenable SiS SATA support. (closes: #496603)
+ * [amd64,i386] Disable new-style SiS PATA support.
+ * Add stable release 2.6.26.4:
+ - sata_mv: don't issue two DMA commands concurrently
+ - KVM: MMU: Fix torn shadow pte
+ - x86: work around MTRR mask setting, v2
+ - nfsd: fix buffer overrun decoding NFSv4 acl (CVE-2008-3915)
+ - sunrpc: fix possible overrun on read of /proc/sys/sunrpc/transports
+ (CVE-2008-3911)
+ - r8169: balance pci_map / pci_unmap pair
+ - tg3: Fix firmware event timeouts
+ - crypto: authenc - Avoid using clobbered request pointer
+ - sparc64: Fix cmdline_memory_size handling bugs.
+ - sparc64: Fix overshoot in nid_range().
+ - ipsec: Fix deadlock in xfrm_state management. (closes: #497796)
+ - sctp: fix random memory dereference with SCTP_HMAC_IDENT option.
+ - sctp: correct bounds check in sctp_setsockopt_auth_key
+ - sch_prio: Fix nla_parse_nested_compat() regression
+ - sctp: add verification checks to SCTP_AUTH_KEY option
+ - sctp: fix potential panics in the SCTP-AUTH API.
+ - udp: Drop socket lock for encapsulated packets
+ - pkt_sched: Fix actions referencing
+ - pkt_sched: Fix return value corruption in HTB and TBF.
+ - netns: Add network namespace argument to rt6_fill_node() and
+ ipv6_dev_get_saddr()
+ - ipv6: Fix OOPS, ip -f inet6 route get fec0::1, linux-2.6.26,
+ ip6_route_output, rt6_fill_node+0x175 (CVE-2008-3686)
+ - AX.25: Fix sysctl registration if !CONFIG_AX25_DAMA_SLAVE
+ - mm: make setup_zone_migrate_reserve() aware of overlapping nodes
+ - 8250: improve workaround for UARTs that don't re-assert THRE correctly
+ - rtc_time_to_tm: fix signed/unsigned arithmetic
+ - drivers/char/random.c: fix a race which can lead to a bogus BUG()
+ - cifs: fix O_APPEND on directio mounts
+ - atl1: disable TSO by default
+ - forcedeth: fix checksum flag
+ - bio: fix bio_copy_kern() handling of bio->bv_len
+ - bio: fix __bio_copy_iov() handling of bio->bv_len
+ - ALSA: oxygen: prevent muting of nonexistent AC97 controls
+ - S390 dasd: fix data size for PSF/PRSSD command
+ - x86: fix "kernel won't boot on a Cyrix MediaGXm (Geode)"
+ - x86: work around MTRR mask setting
+ - USB: cdc-acm: don't unlock acm->mutex on error path
+ - binfmt_misc: fix false -ENOEXEC when coupled with other binary handlers
+ - fbdefio: add set_page_dirty handler to deferred IO FB
+ - eeepc-laptop: fix use after free
+ - PCI: fix reference leak in pci_get_dev_by_id()
+ - cramfs: fix named-pipe handling
+ * Override ABI changes.
+ * [hppa] Disable new-style RTC support. Override ABI changes.
+
+ [ maximilian attems ]
+ * openvz: Add upstream fixes up to 24cebf40278cb071ff8b. (closes: #497528)
+
+ -- Bastian Blank <waldi@debian.org> Wed, 10 Sep 2008 12:55:16 +0200
+
+linux-2.6 (2.6.26-4) unstable; urgency=low
+
+ [ maximilian attems ]
+ * x86: Reset ACPI_PROCFS_POWER for Lenny as buggy apps depend on it.
+ (closes: #495541)
+ * x86: ACPI: Fix thermal shutdowns
+ * openvz: Add upstream fixes up to 0f14912e3d2251aff. (closes: #494384)
+ * Add stable release 2.6.26.3:
+ - USB: fix interface unregistration logic
+ - usb-storage: unusual_devs entries for iRiver T10 and Datafab CF+SM reader
+ - usb-serial: don't release unregistered minors
+ - usb-storage: revert DMA-alignment change for Wireless USB
+ - usb-storage: automatically recognize bad residues
+ - USB: ftdi_sio: Add USB Product Id for ELV HS485
+ - qla2xxx: Set an rport's dev_loss_tmo value in a consistent manner.
+ - dccp: change L/R must have at least one byte in the dccpsf_val field
+ (CVE-2008-3276)
+ - KVM: Avoid instruction emulation when event delivery is pending
+ - cs5520: add enablebits checking
+ - acer-wmi: Fix wireless and bluetooth on early AMW0 v2 laptops
+ - USB: usb-storage: quirk around v1.11 firmware on Nikon D4
+ - radeonfb: fix accel engine hangs
+ - radeon: misc corrections
+ - sparc64: Fix global reg snapshotting on self-cpu.
+ - sparc64: Do not clobber %g7 in setcontext() trap.
+ - sparc64: Fix end-of-stack checking in save_stack_trace().
+ - sparc64: Fix recursion in stack overflow detection handling.
+ - sparc64: Make global reg dumping even more useful.
+ - sparc64: Implement IRQ stacks.
+ - sparc64: Handle stack trace attempts before irqstacks are setup.
+ - PCI: Limit VPD length for Broadcom 5708S
+ - ide: it821x in pass-through mode segfaults in 2.6.26-stable
+ - syncookies: Make sure ECN is disabled
+ - USB: ftdi_sio: add support for Luminance Stellaris Evaluation/Development
+ Kits
+ - i2c: Fix NULL pointer dereference in i2c_new_probed_device
+ - SCSI: hptiop: add more PCI device IDs
+ - SCSI: ses: fix VPD inquiry overrun
+ - SCSI: scsi_transport_spi: fix oops in revalidate
+ - CIFS: Fix compiler warning on 64-bit
+ - x86: fix spin_is_contended()
+ - matrox maven: fix a broken error path
+ - i2c: Let users select algorithm drivers manually again
+ - CIFS: properly account for new user= field in SPNEGO upcall string
+ allocation
+ - x86: fix setup code crashes on my old 486 box
+ - KVM: ia64: Fix irq disabling leak in error handling code
+ - mlock() fix return values
+ - rtl8187: Fix lockups due to concurrent access to config routine
+ - KVM: task switch: segment base is linear address
+ - KVM: task switch: use seg regs provided by subarch instead of reading
+ from GDT
+ - KVM: task switch: translate guest segment limit to virt-extension byte
+ granular field
+ - r8169: avoid thrashing PCI conf space above RTL_GIGA_MAC_VER_06
+ - sparc64: FUTEX_OP_ANDN fix
+ - posix-timers: do_schedule_next_timer: fix the setting of ->si_overrun
+ - posix-timers: fix posix_timer_event() vs dequeue_signal() race
+ - vt8623fb: fix kernel oops
+ - ide-cd: fix endianity for the error message in cdrom_read_capacity
+ - qla2xxx: Add dev_loss_tmo_callbk/terminate_rport_io callback support.
+ - random32: seeding improvement
+ - CIFS: mount of IPC$ breaks with iget patch
+ - CIFS: if get root inode fails during mount, cleanup tree connection
+ - crypto: padlock - fix VIA PadLock instruction usage with
+ irq_ts_save/restore()
+ - ipvs: Fix possible deadlock in estimator code
+ - SCSI: block: Fix miscalculation of sg_io timeout in CDROM_SEND_PACKET
+ handler.
+ - ALSA: asoc: restrict sample rate and size in Freescale MPC8610 sound
+ drivers
+ - ALSA: ASoC: fix SNDCTL_DSP_SYNC support in Freescale 8610 sound drivers
+ - USB: pl2023: Remove USB id (4348:5523) handled by ch341
+ - relay: fix "full buffer with exactly full last subbuffer" accounting
+ problem
+ - ipv6: Fix ip6_xmit to send fragments if ipfragok is true
+ - x86: amd opteron TOM2 mask val fix
+
+ [ dann frazier ]
+ * [ia64] Fix boot-time hang w/ PRINTK_TIME by ensuring that cpu0 can access
+ per-cpu vars in early boot
+ * delay calls to sched_clock() until after sched_clock_init() to prevent
+ inaccurate printk timings on ia64 and presumably other architectures
+
+ [ Ian Campbell ]
+ * [xen] import upstream fix to fb-defio driver used by Xen framebuffer.
+
+ [ Bastian Blank ]
+ * [powerpc] Enable proper RTC support. (closes: #484693)
+
+ [ Martin Michlmayr ]
+ * Add Marvell Orion fixes:
+ - sata_mv: add the Gen IIE flag to the SoC devices.
+ - sata_mv: don't avoid clearing interrupt status on SoC host adapters
+
+ [ dann frazier ]
+ * Fix overflow condition in sctp_setsockopt_auth_key (CVE-2008-3526)
+ * Fix panics that may occur if SCTP AUTH is disabled (CVE-2008-3792)
+ * [x86] Fix memory leak in the copy_user routine
+ (CVE-2008-0598, closes: #490910)
+
+ -- Bastian Blank <waldi@debian.org> Thu, 28 Aug 2008 08:46:42 +0200
+
+linux-2.6 (2.6.26-3) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Disable Emagic Audiowerk 2 soundcard support. The PCI IDs clashes with
+ many DVB cards.
+ * Update VServer patch to 2.3.0.35.
+ * [armel/versatile] Override ABI changes.
+ * [i386/686-bigmem] Add VServer image.
+
+ [ Aurelien Jarno ]
+ * [armel/versatile] Disable CONFIG_NO_HZ, CONFIG_HIGH_RES_TIMERS for
+ dynticks. (closes: #494842)
+
+ [ Martin Michlmayr ]
+ * Fix PCIe on the Kurobox Pro (Lennert Buytenhek).
+ * Fix regressions caused by the "use software GSO for SG+CSUM capable
+ netdevices" patch:
+ - loopback: Enable TSO (Herbert Xu)
+ - net: Preserve netfilter attributes in skb_gso_segment using
+ __copy_skb_header (Herbert Xu)
+
+ [ dann frazier ]
+ * [amd64] Fix typo in TOM2 mask value, preventing a hang on some opteron
+ systems. (closes: #494365)
+
+ -- Bastian Blank <waldi@debian.org> Mon, 18 Aug 2008 15:34:38 +0200
+
+linux-kbuild-2.6 (2.6.26-3) unstable; urgency=low
+
+ * Fix recursive installation. (closes: #494435)
+
+ -- Bastian Blank <waldi@debian.org> Sun, 10 Aug 2008 13:01:41 +0200
+
+linux-kbuild-2.6 (2.6.26-2) unstable; urgency=low
+
+ * Include new scripts. (closes: #494435)
+
+ -- Bastian Blank <waldi@debian.org> Sat, 09 Aug 2008 20:45:12 +0200
+
+linux-2.6 (2.6.26-2) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * [powerpc] Install arch/powerpc/lib/crtsavres.o into the headers, it is
+ used during module linking.
+ * Add stable release 2.6.26.1:
+ - Fix off-by-one error in iov_iter_advance()
+ - ath5k: don't enable MSI, we cannot handle it yet
+ - b43legacy: Release mutex in error handling code
+ - cpufreq acpi: only call _PPC after cpufreq ACPI init funcs got called already
+ - VFS: increase pseudo-filesystem block size to PAGE_SIZE
+ - markers: fix markers read barrier for multiple probes
+ - tmpfs: fix kernel BUG in shmem_delete_inode
+ - mpc52xx_psc_spi: fix block transfer
+ - ixgbe: remove device ID for unsupported device
+ - UML - Fix boot crash
+ - eCryptfs: use page_alloc not kmalloc to get a page of memory
+ - x86: fix kernel_physical_mapping_init() for large x86 systems
+ - DVB: cx23885: SRAM changes for the 885 and 887 silicon parts
+ - DVB: cx23885: Reallocated the sram to avoid concurrent VIDB/C issues
+ - DVB: cx23885: DVB Transport cards using DVB port VIDB/TS1 did not stream
+ - DVB: cx23885: Ensure PAD_CTRL is always reset to a sensible default
+ - V4L: cx23885: Bugfix for concurrent use of /dev/video0 and /dev/video1
+ - V4L: saa7134: Copy tuner data earlier to avoid overwriting manual tuner type
+ - V4L: uvcvideo: Add support for Medion Akoya Mini E1210 integrated webcam
+ - V4L: uvcvideo: Make input device support optional
+ - V4L: uvcvideo: Don't free URB buffers on suspend
+ - V4L: uvcvideo: Use GFP_NOIO when allocating memory during resume
+ - V4L: uvcvideo: Fix a buffer overflow in format descriptor parsing
+ - DVB: dib0700: add support for Hauppauge Nova-TD Stick 52009
+ - V4L: cx18: Upgrade to newer firmware & update documentation
+ - ALSA: trident - pause s/pdif output
+ - myri10ge: do not use mgp->max_intr_slots before loading the firmware
+ - myri10ge: do not forget to setup the single slice pointers
+ - iop-adma: fix platform driver hotplug/coldplug
+ - sparc64: Do not define BIO_VMERGE_BOUNDARY.
+ - sparc64: Fix cpufreq notifier registry.
+ - sparc64: Fix lockdep issues in LDC protocol layer.
+ - tcp: Clear probes_out more aggressively in tcp_ack().
+ - ARM: fix fls() for 64-bit arguments
+ - vmlinux.lds: move __attribute__((__cold__)) functions back into final .text section
+ - rtc-at91rm9200: avoid spurious irqs
+ - ide-cd: fix oops when using growisofs
+ - x86: fix crash due to missing debugctlmsr on AMD K6-3
+ - cpusets: fix wrong domain attr updates
+ - proc: fix /proc/*/pagemap some more
+ - Fix build on COMPAT platforms when CONFIG_EPOLL is disabled
+ - markers: fix duplicate modpost entry
+ - x86, suspend, acpi: enter Big Real Mode
+ - USB: fix usb serial pm counter decrement for disconnected interfaces
+ - x86 reboot quirks: add Dell Precision WorkStation T5400
+ - Fix typos from signal_32/64.h merge
+ - rcu: fix rcu_try_flip_waitack_needed() to prevent grace-period stall
+ - Patch Upstream: x86 ptrace: fix PTRACE_GETFPXREGS error
+ - KVM: MMU: Fix potential race setting upper shadow ptes on nonpae hosts
+ - KVM: MMU: nuke shadowed pgtable pages and ptes on memslot destruction
+ - KVM: x86 emulator: Fix HLT instruction
+ - KVM: VMX: Add ept_sync_context in flush_tlb
+ - KVM: mmu_shrink: kvm_mmu_zap_page requires slots_lock to be held
+ - KVM: SVM: fix suspend/resume support
+ - KVM: VMX: Fix a wrong usage of vmcs_config
+ - isofs: fix minor filesystem corruption
+ - quota: fix possible infinite loop in quota code
+ - hdlcdrv: Fix CRC calculation.
+ - ipv6: __KERNEL__ ifdef struct ipv6_devconf
+ - ipv6: use timer pending
+ - udplite: Protection against coverage value wrap-around
+ - pxamci: trivial fix of DMA alignment register bit clearing
+ * [sparc] Install asm-sparc headers again.
+ * Force RTC on by default and set clock on startup. Override ABI changes.
+ * [i386, amd64] Make the CMOS RTC support builtin. (closes: #493567)
+ * Add stable release 2.6.26.2:
+ - sound: ensure device number is valid in snd_seq_oss_synth_make_info
+ - Ath5k: kill tasklets on shutdown
+ - Ath5k: fix memory corruption
+ - vfs: fix lookup on deleted directory
+ - ALSA: emu10k1 - Fix inverted Analog/Digital mixer switch on Audigy2
+ - ALSA: hda - Add missing Thinkpad Z60m support
+ - ALSA: hda - Fix DMA position inaccuracy
+ - ALSA: hda - Fix wrong volumes in AD1988 auto-probe mode
+ - Add compat handler for PTRACE_GETSIGINFO
+ - Bluetooth: Signal user-space for HIDP and BNEP socket errors
+ - Input: i8042 - add Acer Aspire 1360 to nomux blacklist
+ - Input: i8042 - add Gericom Bellagio to nomux blacklist
+ - Input: i8042 - add Intel D845PESV to nopnp list
+ - jbd: fix race between free buffer and commit transaction
+ - NFS: Ensure we zap only the access and acl caches when setting new acls
+ - SCSI: ch: fix ch_remove oops
+ - linear: correct disk numbering error check
+ - netfilter: xt_time: fix time's time_mt()'s use of do_div()
+ - Kprobe smoke test lockdep warning
+ - Close race in md_probe
+ - x86: io delay - add checking for NULL early param
+ - x86: idle process - add checking for NULL early param
+ - SCSI: bsg: fix bsg_mutex hang with device removal
+ - netfilter: nf_nat_sip: c= is optional for session
+ - romfs_readpage: don't report errors for pages beyond i_size
+ - ftrace: remove unneeded documentation
+
+ [ Martin Michlmayr ]
+ * METH: fix MAC address setup (Thomas Bogendoerfer)
+ * Export the reset button of the QNAP TS-409.
+ * net: use software GSO for SG+CSUM capable netdevices (Lennert Buytenhek)
+
+ [ dann frazier ]
+ * device_create interface changed between 2.6.26 and 2.6.27; adjust hpilo
+ backport appropriately. Fixes a NULL pointer dereference in ilo_probe().
+
+ -- Bastian Blank <waldi@debian.org> Fri, 08 Aug 2008 08:09:00 +0200
+
+linux-kbuild-2.6 (2.6.26-1) unstable; urgency=low
+
+ * New upstream version.
+ * modpost: Support new parameters.
+
+ -- Bastian Blank <waldi@debian.org> Sat, 02 Aug 2008 13:09:54 +0200
+
+linux-2.6 (2.6.26-1) unstable; urgency=low
+
+ * New upstream release see http://kernelnewbies.org/Linux_2_6_26
+ - UDF 2.50 support. (closes: #480910)
+ - mmc: increase power up delay (closes: #481190)
+ - snd-hda-intel suspend troubles fixed. (closes: #469727, #481613, #480034)
+ - cifs QueryUnixPathInfo fix (closes: #480995)
+ - r8169 oops in r8169_get_mac_version (closes: #471892)
+ - netfilter headers cleanup (closes: #482331)
+ - iwlwifi led support (closes: #469095)
+ - ath5k associates on AR5213A (closes: #463785)
+ - T42 suspend fix (closes: #485873)
+ - cpuidle acpi driver: fix oops on AC<->DC (closes: #477201)
+ - opti621 ide fixes (closes: #475561)
+ - ssh connection hangs with mac80211 (closes: #486089)
+ - ocfs2: Allow uid/gid/perm changes of symlinks (closes: #479475)
+ - xircom_tulip_cb: oboslete driver removed (closes: #416900)
+ - r8169 properly detect link status (closes: #487586)
+ - iwl3945 connection + support fixes (closes: #481436, #482196)
+ - longrun cpufreq min freq fix (closes: #468149)
+ - emux midi synthesizer SOFT_PEDAL-release event (closes: #474312)
+ - vmemmap fixes to use smaller pages (closes: #483489)
+ - x86 freeze fixes (closes: #482100, #482074)
+ - xen boot failure fix (closes: #488284)
+ - gdb read floating-point and SSE registers (closes: #485375)
+ - USB_PERSIST is default on (closes: #489963)
+ - alsa snd-hda Dell Inspiron fix (closes: #490649)
+ - ipw2200: queue direct scans (closes: #487721)
+ - better gcc-4.3 support (closes: #492301)
+ - iwl3945 monitor mode. (closes: #482387)
+
+ [ maximilian attems ]
+ * topconfig set CRYPTO_CTS, SND_PCSP, SND_AW2, IWL4965_LEDS, IWL3945_LEDS,
+ RT2400PCI_LEDS, RT2500PCI_LEDS, RT61PCI_LEDS, RT2500USB_LEDS,
+ RT73USB_LEDS, NF_CT_PROTO_DCCP, BRIDGE_EBT_NFLOG, IWLWIFI_RFKILL,
+ USB_SERIAL_SPCP8X5, USB_STORAGE_CYPRESS_ATACB, DVB_ISL6405, DVB_AU8522,
+ VIDEO_EM28XX_DVB, VIDEO_CX18, VIDEO_AU0828, SOC_CAMERA_MT9M001,
+ SOC_CAMERA_MT9V022, DVB_TUNER_ITD1000, VIDEO_PVRUSB2_DVB, USB_C67X00_HCD,
+ USB_ISP1760_HCD, HTC_PASIC3, I2C_PCA_PLATFORM, TOUCHSCREEN_WM97XX,
+ JOYSTICK_ZHENHUA, SFC, ACCESSIBILITY, UIO_SMX, LOGIRUMBLEPAD2_FF,
+ A11Y_BRAILLE_CONSOLE, EDS_TRIGGER_DEFAULT_ON, VIDEO_ALLOW_V4L1, ATA_ACPI,
+ SATA_PMP, ATA_SFF, USB_SERIAL_MOTOROLA, USB_WDM, MAC80211_MESH,
+ IPV6_MROUTE, IPV6_PIMSM_V2, MTD_AR7_PARTS, SENSORS_IBMAEM, PATA_SCH,
+ CGROUP_DEVICE, USB_ISIGHTFW, HW_RANDOM_VIRTIO, RTC_DRV_FM3130,
+ USB_VIDEO_CLASS, CIFS_DFS_UPCALL.
+ * [amd64, i386]: KVM_CLOCK, KVM_GUEST, ISCSI_IBFT_FIND, ISCSI_IBFT, THERMAL,
+ EEEPC_LAPTOP, FB_N411, THERMAL_HWMON.
+ * [amd64]: Enable SCSI_DPT_I2O as 64 bit now.
+ * Reenable USB_SERIAL_EDGEPORT, USB_SERIAL_EDGEPORT_TI. (closes: #480195)
+ * Enable TCP_MD5SIG for BGP sessions. (closes: #443742)
+ * Add recognised alsa cards to bug report.
+ * topconfig: Enable HYSDN, no longer broken on smp.
+ * Add request_firmware patch for keyspan. (closes: #448900)
+ * [x86]: Enable dma engine. (closes: #473331)
+ * [ppc64]: Enable IBMEBUS and EHEA. (closes: #484888)
+ * topconfig: Enable PROFILING across all flavours. (closes: #484885)
+ * 486: enable OLPC support thanks Andres Salomon for merge.
+ Kconfig variable patch by Robert Millan (closes: #485063).
+ * Add request_firmware patch for ip2.
+ * Add request_firmware patch for acenic. (closes: #284221)
+ * [x86, ia64]: Set HPET_RTC_IRQ. (closes: #479709, #476970)
+ * [ppc]: Set SND_VIRMIDI. (closes: #290090)
+ * Fallback for userspace compatibility to old IEEE 1394 FireWire stack.
+ (closes: #451367, #475295, #478419)
+ * [x86]: Enable modular FB_UVESA. (closes: #473180)
+ * JFFS2 enable summary and compressor support. (closes: #488242)
+ * Add OLPC sdhci quirks. Thanks Andres Salomon <dilinger@debian.org>
+ (closes: #485192)
+ * [ppc]: Enable RTC_DRV_PPC. (closes: #484693) Thanks for the patch to
+ Geoff Levand <geoffrey.levand@am.sony.com>.
+ * Enable BLK_DEV_BSG for SG v4 support.
+ * [amd64] Enable default disabled memtest boot param.
+ * topconfig: Enable PATA_SIS instead of SATA_SIS. (closes: #485609)
+ * Add OpenVZ countainer flavour for amd64, i386. (closes: #392015)
+ * atl1e driver for Atheros(R) L1e Fast Ethernet. (closes: #492029)
+ * [ALSA] hda - Add ICH9 controller support (8086:2911)
+ * [ALSA] hda - support intel DG33 motherboards
+ * HP iLO driver
+ * Input: i8042 - add Arima-Rioworks HDAMB board to noloop list
+ (closes: #489190) thanks Guillaume Morin <guillaume@morinfr.org>
+
+ [ Martin Michlmayr ]
+ * [arm/orion5x] Update the config to reflect upstream renaming this
+ subarch.
+ * [arm/orion5x] Add some patches from Marvell's Orion tree:
+ - Feroceon: speed up flushing of the entire cache
+ - support for 5281 D0 stepping
+ - cache align destination pointer when copying memory for some processors
+ - cache align memset and memzero
+ - DMA engine driver for Marvell XOR engine
+ - Orion hardware watchdog support
+ * [arm/orion5x] Enable NETCONSOLE.
+ * [arm/orion5x] Disable more SCSI drivers.
+ * [arm/ixp4xx] Disable most ATA and more SCSI and network drivers.
+ * [arm/versatile] Enable CONFIG_RTC_DRV_PL031 (closes: #484432).
+ * [arm/iop32x, arm/ixp4xx, arm/versatile] Enable ARM_THUMB (closes: #484524).
+ * [arm/iop32x] Add LED driver for Thecus N2100 (Riku Voipio).
+ * [mips/r5k-ip32] Enable USB.
+ * [arm/orion5x, arm/iop32x, arm/ixp4xx, mipsel/r5k-cobalt] Enable HAMRADIO
+ on the request of Heinz Janssen.
+ * [arm/orion5x] Add support for QNAP TS-409 and HP mv2120; thanks
+ Sylver Bruneau.
+ * [mips] Add patches from Thomas Bogendoerfer:
+ - gbefb: fix cmap FIFO timeout (closes: #487257)
+ - IP32: Enable FAST-20 for onboard scsi
+ - IP32: SGI O2 sound driver
+ * [arm/ixp4xx] Add support for Freecom FSG-3 (Rod Whitby).
+ * [arm/ixp4xx] Enable CONFIG_MACH_DSMG600.
+ * [arm/iop32x] Unset NET_DMA since it actually leads to worse network
+ performance.
+ * [arm/orion5x] Fix a boot crash on the Kurobox Pro.
+ * [arm/orion5x] use better key codes for the TS-209/TS-409 buttons
+ * [arm/orion5x] export red SATA lights on TS-409, fix SATA presence/activity
+ * [arm] Enable KEXEC (closes: #492268).
+ * [arm/orion5x] Enable USB_PRINTER, requested by Mike Arthur.
+ * [arm/orion5x] Enable binfmt aout, x25, wireless and ATM.
+ * [arm/iop32x, arm/orion5x] Enable USB_SISUSBVGA.
+ * [arm] xfs: pack some shortform dir2 structures for the ARM old ABI
+ architecture (closes: #414932).
+
+ [ Ian Campbell ]
+ * Readme.build updated on how to generate orig tarballs.
+ * Forward port vmlinuz-target.patch.
+ * Enable Xen save/restore and memory ballooning for Xen enabled kernels.
+
+ [ Bastian Blank ]
+ * [powerpc/powerpc-miboot] Disable. (closes: #481358)
+ * [powerpc/powerpc64] Support IBM Cell based plattforms and PS3.
+ (closes: #462529)
+ * [s390] Synchronize block device, network bridge, network scheduler and CRC
+ support.
+ * [s390] Enable support for PCI-attached cryptographic adapters.
+ * Use control group as base for group CPU scheduler. This reenabled
+ traditional nice behaviour. (closes: #489223)
+ * Bump yaird dependencies to at least 0.0.13.
+ * Reenable SECCOMP. There is no longer additional overhead.
+ (closes: #474648)
+ * Export symbol required for MOL again. (closes: #460667)
+ * [powerpc/powerpc64] Fix console selection in LPAR environment.
+ (closes: #492703)
+ * Fix several userspace compatibility problems.
+
+ [ Christian T. Steigies ]
+ * [m68k] enable SERIAL_CONSOLE for amiga and atari
+
+ [ Thiemo Seufer ]
+ * [mips] Fix logic bug in atomic_sub_if_positive.
+
+ [ Stephen R. Marenka ]
+ * [m68k] Update pending m68k patches.
+ * [m68k] Enable nfcon and nfblock for atari.
+ * [m68k] Change compiler to default.
+
+ [ Aurelien Jarno ]
+ * [arm/versatile] Switch scsi/ext3/smc91x to modules now that we have proper
+ d-i support. Remove options defined in toplevel config file.
+
+ -- Bastian Blank <waldi@debian.org> Wed, 30 Jul 2008 10:17:29 +0200
+
+linux-2.6 (2.6.25-7) unstable; urgency=high
+
+ * Add stable release 2.6.25.10:
+ - TTY: fix for tty operations bugs (CVE-2008-2812)
+ - sched: fix cpu hotplug
+ - IB/mthca: Clear ICM pages before handing to FW
+ - DRM: enable bus mastering on i915 at resume time
+ - x86: shift bits the right way in native_read_tscp
+ - x86_64 ptrace: fix sys32_ptrace task_struct leak (CVE-2008-3077)
+ - ptrace GET/SET FPXREGS broken
+ - futexes: fix fault handling in futex_lock_pi
+ - x86: fix cpu hotplug crash
+ * Add stable release 2.6.25.11:
+ - x86: fix ldt limit for 64 bit
+
+ -- maximilian attems <maks@debian.org> Mon, 14 Jul 2008 10:58:14 +0200
+
+linux-2.6 (2.6.25-6) unstable; urgency=high
+
+ [ maximilian attems ]
+ * Add stable release 2.6.25.7:
+ - double-free of inode on alloc_file() failure exit in create_write_pipe()
+ - m68k: Add ext2_find_{first,next}_bit() for ext4
+ - bluetooth: fix locking bug in the rfcomm socket cleanup handling
+ - serial: fix enable_irq_wake/disable_irq_wake imbalance in serial_core.c
+ - bttv: Fix a deadlock in the bttv driver (closes: #487594)
+ - forcedeth: msi interrupts
+ - CPUFREQ: Fix format string bug.
+ - mmc: wbsd: initialize tasklets before requesting interrupt
+ - ecryptfs: fix missed mutex_unlock
+ - mac80211: send association event on IBSS create
+ - bluetooth: rfcomm_dev_state_change deadlock fix
+ - sunhv: Fix locking in non-paged I/O case.
+ - cassini: Only use chip checksum for ipv4 packets.
+ - ipwireless: Fix blocked sending
+ - net: Fix call to ->change_rx_flags(dev, IFF_MULTICAST) in
+ dev_change_flags()
+ - fbdev: export symbol fb_mode_option
+ - ipsec: Use the correct ip_local_out function
+ - tcp: fix skb vs fack_count out-of-sync condition
+ - tcp FRTO: Fix fallback to conventional recovery
+ - tcp FRTO: SACK variant is errorneously used with NewReno
+ - tcp FRTO: work-around inorder receivers
+ - tcp: Fix inconsistency source (CA_Open only when !tcp_left_out(tp))
+ - l2tp: avoid skb truesize bug if headroom is increased
+ - l2tp: Fix possible WARN_ON from socket code when UDP socket is closed
+ - l2tp: Fix possible oops if transmitting or receiving when tunnel goes down
+ - ax25: Fix NULL pointer dereference and lockup.
+ - sound: emu10k1 - fix system hang with Audigy2 ZS Notebook PCMCIA card
+ - tcp: Allow send-limited cwnd to grow up to max_burst when gso disabled
+ - tcp: Limit cwnd growth when deferring for GSO
+ - af_key: Fix selector family initialization.
+ - hgafb: resource management fix
+ - cifs: fix oops on mount when CONFIG_CIFS_DFS_UPCALL is enabled
+ - b43: Fix controller restart crash
+ - ssb: Fix context assertion in ssb_pcicore_dev_irqvecs_enable
+ - eCryptfs: protect crypt_stat->flags in ecryptfs_open()
+ - cciss: add new hardware support
+ - ecryptfs: add missing lock around notify_change
+ - ecryptfs: clean up (un)lock_parent
+ - Add 'rd' alias to new brd ramdisk driver
+ - net_sched: cls_api: fix return value for non-existant classifiers
+ - vlan: Correctly handle device notifications for layered VLAN devices
+ - IB/umem: Avoid sign problems when demoting npages to integer
+ - x86: fix recursive dependencies
+ - can: Fix copy_from_user() results interpretation
+ - Kconfig: introduce ARCH_DEFCONFIG to DEFCONFIG_LIST
+ - tcp: TCP connection times out if ICMP frag needed is delayed
+ - ALSA: hda - Fix resume of auto-config mode with Realtek codecs
+ - netlink: Fix nla_parse_nested_compat() to call nla_parse() directly
+ * Add stable release 2.6.25.9:
+ - Add return value to reserve_bootmem_node()
+ - x86: use BOOTMEM_EXCLUSIVE on 32-bit
+ - sctp: Make sure N * sizeof(union sctp_addr) does not overflow.
+ - hwmon: (lm85) Fix function RANGE_TO_REG()
+ - hwmon: (adt7473) Initialize max_duty_at_overheat before use
+ - x86: set PAE PHYSICAL_MASK_SHIFT to 44 bits.
+ - Reinstate ZERO_PAGE optimization in 'get_user_pages()' and fix XIP
+ - watchdog: hpwdt: fix use of inline assembly
+ - Fix ZERO_PAGE breakage with vmware
+ - atl1: relax eeprom mac address error check
+
+ [ Martin Michlmayr]
+ * [arm/orion5x] Enable INPUT_EVDEV and KEYBOARD_GPIO.
+
+ [ Steve Langasek ]
+ * Enable CONFIG_CIFS_EXPERIMENTAL and CONFIG_CIFS_UPCALL, required for
+ CIFS mounts to be able to use Kerberos authentication. Closes: #480663.
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.25.8:
+ - x86: disable mwait for AMD family 10H/11H CPUs
+ - x86: remove mwait capability C-state check
+ - nf_conntrack_h323: fix memory leak in module initialization error path
+ - nf_conntrack_h323: fix module unload crash
+ - nf_conntrack: fix ctnetlink related crash in nf_nat_setup_info()
+ - SCSI: sr: fix corrupt CD data after media change and delay
+ - ACPICA: Ignore ACPI table signature for Load() operator
+ - scsi_host regression: fix scsi host leak
+ - b43: Fix possible NULL pointer dereference in DMA code
+ - b43: Fix noise calculation WARN_ON
+ - virtio_net: Fix skb->csum_start computation
+ - opti621: remove DMA support
+ - opti621: disable read prefetch
+ - Fix tty speed handling on 8250
+ - x86-64: Fix "bytes left to copy" return value for copy_from_user()
+ * Fix alpha build due too inconsistent kallsyms data.
+
+ -- maximilian attems <maks@debian.org> Fri, 27 Jun 2008 00:33:53 +0200
+
+linux-2.6 (2.6.25-5) unstable; urgency=low
+
+ [ maximilian attems ]
+ [ Bastian Blank ]
+ * Reenable VServer images.
+
+ [ maximilian attems ]
+ * Add stable release 2.6.25.5:
+ - asn1: additional sanity checking during BER decoding (CVE-2008-1673)
+ * Add stable release 2.6.25.6:
+ - atl1: fix 4G memory corruption bug
+ - capabilities: remain source compatible with 32-bit raw legacy capability
+ support.
+ - usb-serial: Use ftdi_sio driver for RATOC REX-USB60F
+ - cpufreq: fix null object access on Transmeta CPU
+ - Smack: fuse mount hang fix
+ - cgroups: remove node_ prefix_from ns subsystem
+ - XFS: Fix memory corruption with small buffer reads
+ - x86: don't read maxlvt before checking if APIC is mapped
+ - USB: option: add new Dell 5520 HSDPA variant
+ - md: do not compute parity unless it is on a failed drive
+ - md: fix uninitialized use of mddev->recovery_wait
+ - md: fix prexor vs sync_request race
+ - HID: split Numlock emulation quirk from HID_QUIRK_APPLE_HAS_FN.
+ - USB: do not handle device 1410:5010 in 'option' driver
+ - USB: unusual_devs: Add support for GI 0401 SD-Card interface
+ - USB: add Telstra NextG CDMA id to option driver
+ - USB: fix build errors in ohci-omap.c and ohci-sm501.c
+ - USB: add TELIT HDSPA UC864-E modem to option driver
+ - memory_hotplug: always initialize pageblock bitmap
+ - x86: fix bad pmd ffff810000207xxx(9090909090909090)
+ - USB: add Zoom Telephonics Model 3095F V.92 USB Mini External modem to
+ cdc-acm
+ - x86: prevent PGE flush from interruption/preemption
+ - IPoIB: Test for NULL broadcast object in ipiob_mcast_join_finish()
+ - i386: fix asm constraint in do_IRQ()
+ - i2c-nforce2: Disable the second SMBus channel on the DFI Lanparty NF4
+ Expert
+ - i2c/max6875: Really prevent 24RF08 corruption
+ - brk: make sys_brk() honor COMPAT_BRK when computing lower bound
+ - Revert "PCI: remove default PCI expansion ROM memory allocation"
+ - PS3: gelic: fix memory leak
+ - eCryptfs: remove unnecessary page decrypt call
+ - netfilter: nf_conntrack_expect: fix error path unwind in
+ nf_conntrack_expect_init()
+ - netfilter: xt_connlimit: fix accouning when receive RST packet in
+ ESTABLISHED state
+ - netfilter: nf_conntrack_ipv6: fix inconsistent lock state in
+ nf_ct_frag6_gather()
+ - POWERPC Bolt in SLB entry for kernel stack on secondary cpus
+ - netfilter: xt_iprange: module aliases for xt_iprange
+ - x86: user_regset_view table fix for ia32 on 64-bit
+ - x86: if we cannot calibrate the TSC, we panic.
+ - CIFS: Fix UNC path prefix on QueryUnixPathInfo to have correct slash
+ - x86, fpu: fix CONFIG_PREEMPT=y corruption of application's FPU stack
+ - libata: force hardreset if link is in powersave mode
+ - x86: fix setup of cyc2ns in tsc_64.c
+ - x86: distangle user disabled TSC from unstable
+ - x86: disable TSC for sched_clock() when calibration failed
+ - pagemap: fix bug in add_to_pagemap, require aligned-length reads of
+ /proc/pid/pagemap
+ - ext3/4: fix uninitialized bs in ext3/4_xattr_set_handle()
+ - proc: calculate the correct /proc/<pid> link count
+ - CPUFREQ: Make acpi-cpufreq more robust against BIOS freq changes behind
+ our back.
+ - USB: remove PICDEM FS USB demo (04d8:000c) device from ldusb
+ - types.h: don't expose struct ustat to userspace
+
+ [ Bastian Blank ]
+ * Ignore ABI change in internal XFS symbol.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 12 Jun 2008 08:47:11 +0200
+
+linux-2.6 (2.6.25-4) unstable; urgency=low
+
+ [ maximilian attems ]
+ * Fix arm Kconfig logic disabling random drivers. (closes: #481410)
+ * Add stable release 2.6.25.4:
+ - OHCI: fix regression upon awakening from hibernation
+ - V4L/DVB (7473): PATCH for various Dibcom based devices
+ - {nfnetlink, ip, ip6}_queue: fix skb_over_panic when enlarging packets
+ - dccp: return -EINVAL on invalid feature length
+ - md: fix raid5 'repair' operations
+ - sparc: Fix SA_ONSTACK signal handling.
+ - sparc: Fix fork/clone/vfork system call restart.
+ - sparc64: Stop creating dummy root PCI host controller devices.
+ - sparc64: Fix wedged irq regression.
+ - SPARC64: Fix args to 64-bit sys_semctl() via sys_ipc().
+ - serial: Fix sparc driver name strings.
+ - sparc: Fix ptrace() detach.
+ - sparc: Fix mremap address range validation.
+ - sparc: Fix debugger syscall restart interactions.
+ - sparc32: Don't twiddle PT_DTRACE in exec.
+ - r8169: fix oops in r8169_get_mac_version
+ - SCSI: aha152x: Fix oops on module removal
+ - SCSI: aha152x: fix init suspiciously returned 1, it should follow
+ 0/-E convention
+ - sch_htb: remove from event queue in htb_parent_to_leaf()
+ - i2c-piix4: Blacklist two mainboards
+ - SCSI: qla1280: Fix queue depth problem
+ - ipvs: fix oops in backup for fwmark conn templates
+ - USB: airprime: unlock mutex instead of trying to lock it again
+ - rtc: rtc_time_to_tm: use unsigned arithmetic
+ - SCSI: libiscsi regression in 2.6.25: fix nop timer handling
+ - SCSI: libiscsi regression in 2.6.25: fix setting of recv timer
+ - can: Fix can_send() handling on dev_queue_xmit() failures
+ - macvlan: Fix memleak on device removal/crash on module removal
+ - nf_conntrack: padding breaks conntrack hash on ARM
+ - sparc: sunzilog uart order
+ - r8169: fix past rtl_chip_info array size for unknown chipsets
+ - x86: use defconfigs from x86/configs/*
+ - vt: fix canonical input in UTF-8 mode
+ - ata_piix: verify SIDPR access before enabling it
+ - serial: access after NULL check in uart_flush_buffer()
+ - x86: sysfs cpu?/topology is empty in 2.6.25 (32-bit Intel system)
+ - XFRM: AUDIT: Fix flowlabel text format ambibuity.
+ * Update userspace merged HZ alpha fixed version.
+ * Backport netfilter: Move linux/types.h inclusions outside of #ifdef
+ __KERNEL__. (closes: #479899)
+ * types.h: don't expose struct ustat to userspace. (closes: #429064)
+
+ [ Bastian Blank ]
+ * Fix ABI changes from: ipvs: fix oops in backup for fwmark conn templates
+
+ -- maximilian attems <maks@debian.org> Tue, 27 May 2008 11:46:11 +0200
+
+linux-2.6 (2.6.25-3) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.25.3:
+ - sit: Add missing kfree_skb() on pskb_may_pull() failure.
+ - sparc: Fix mmap VA span checking.
+ - CRYPTO: eseqiv: Fix off-by-one encryption
+ - CRYPTO: authenc: Fix async crypto crash in crypto_authenc_genicv()
+ - CRYPTO: cryptd: Correct kzalloc error test
+ - CRYPTO: api: Fix scatterwalk_sg_chain
+ - x86 PCI: call dmi_check_pciprobe()
+ - b43: Fix some TX/RX locking issues
+ - kprobes/arm: fix decoding of arithmetic immediate instructions
+ - kprobes/arm: fix cache flush address for instruction stub
+ - b43: Fix dual-PHY devices
+ - POWERPC: mpc5200: Fix unterminated of_device_id table
+ - reiserfs: Unpack tails on quota files
+ - sched: fix hrtick_start_fair and CPU-Hotplug
+ - vfs: fix permission checking in sys_utimensat
+ - md: fix use after free when removing rdev via sysfs
+ - mm: fix usemap initialization
+ - 2.6.25 regression: powertop says 120K wakeups/sec
+
+ [ maximilian attems ]
+ * Redisable old dup prism54 driver.
+ * Reenable accidentaly disabled SIS190. (closes: #478773)
+ * Add lmkl patch to unbreak HZ userspace aka perl5.10 build fix.
+ (closes: #480130)
+
+ [ Martin Michlmayr ]
+ * [armel] Disable some SCSI drives (that are disabled on arm) so the
+ ramdisk will fit in flash on NSLU2 (closes: #480310).
+
+ -- maximilian attems <maks@debian.org> Wed, 14 May 2008 11:16:56 +0200
+
+linux-2.6 (2.6.25-2) unstable; urgency=low
+
+ [ maximilian attems ]
+ * Add stable release 2.6.25.1:
+ - Fix dnotify/close race (CVE-2008-1375)
+ - V4L: Fix VIDIOCGAP corruption in ivtv
+ - USB: log an error message when USB enumeration fails
+ - USB: OHCI: fix bug in controller resume
+ - SCSI: qla2xxx: Correct regression in relogin code.
+ - rose: Socket lock was not released before returning to user space
+ - x86, pci: fix off-by-one errors in some pirq warnings
+ - hrtimer: timeout too long when using HRTIMER_CB_SOFTIRQ
+ - RDMA/nes: Fix adapter reset after PXE boot
+ - rtc-pcf8583 build fix
+ - JFFS2: Fix free space leak with in-band cleanmarkers
+ - SELinux: no BUG_ON(!ss_initialized) in selinux_clone_mnt_opts
+ - tehuti: check register size (CVE-2008-1675)
+ - IPSEC: Fix catch-22 with algorithm IDs above 31
+ - alpha: unbreak OSF/1 (a.out) binaries
+ - tehuti: move ioctl perm check closer to function start (CVE-2008-1675)
+ - aio: io_getevents() should return if io_destroy() is invoked
+ - mm: fix possible off-by-one in walk_pte_range()
+ - TCP: Increase the max_burst threshold from 3 to tp->reordering.
+ - ssb: Fix all-ones boardflags
+ - cgroup: fix a race condition in manipulating tsk->cg_list
+ - drivers/net/tehuti: use proper capability check for raw IO access
+ - tg3: 5701 DMA corruption fix
+ - V4L: tea5761: bugzilla #10462: tea5761 autodetection code were broken
+ - b43: Workaround invalid bluetooth settings
+ - b43: Add more btcoexist workarounds
+ - b43: Workaround DMA quirks
+ - dm snapshot: fix chunksize sector conversion
+ - x86: Fix 32-bit x86 MSI-X allocation leakage
+ - RTNETLINK: Fix bogus ASSERT_RTNL warning
+ - net: Fix wrong interpretation of some copy_to_user() results.
+ - dz: test after postfix decrement fails in dz_console_putchar()
+ - RDMA/nes: Free IRQ before killing tasklet
+ - S2io: Fix memory leak during free_tx_buffers
+ - S2io: Version update for memory leak fix during free_tx_buffers
+ - USB: Add HP hs2300 Broadband Wireless Module to sierra.c
+ - V4L: cx88: enable radio GPIO correctly
+ - hrtimer: raise softirq unlocked to avoid circular lock dependency
+ - tcp: tcp_probe buffer overflow and incorrect return value
+ * [ide] Add upstream piix patch for asus eee pc. (closes: #479217)
+
+ [ Christian T. Steigies ]
+ * [m68k] Add patches for 2.6.25.
+ * [m68k] Disable EXT4DEV_FS for now.
+ * [m68k] Enable SCSI_MAC_ESP for mac.
+
+ [ Ian Campbell ]
+ * [x86]: Enable Xen guest support in all i386 flavours.
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.25.2:
+ - fix SMP ordering hole in fcntl_setlk() (CVE-2008-1669)
+
+ -- Bastian Blank <waldi@debian.org> Thu, 08 May 2008 14:46:48 +0200
+
+linux-kbuild-2.6 (2.6.25-2) unstable; urgency=low
+
+ * modpost: Support new parameters. (closes: #479271)
+
+ -- Bastian Blank <waldi@debian.org> Mon, 05 May 2008 19:58:40 +0200
+
+linux-kbuild-2.6 (2.6.25-1) unstable; urgency=low
+
+ * New upstream version.
+
+ -- Bastian Blank <waldi@debian.org> Fri, 02 May 2008 10:32:13 +0200
+
+linux-2.6 (2.6.25-1) unstable; urgency=low
+
+ * New upstream release (closes: #456799, #468440, #475161, #475134, #475441)
+ - Add oabi shim for fstatat64 (closes: #462677)
+
+ [ maximilian attems ]
+ * topconfig set NOZOMI, CRYPTO_SEQIV, CRYPTO_CTR, CRYPTO_GCM, CRYPTO_CCM,
+ CRYPTO_SALSA20, CRYPTO_LZO, CRYPTO_DEV_HIFN_795X, USB_SI470X,
+ USB_STKWEBCAM, VIDEO_PVRUSB2_ONAIR_USB2, VIDEO_PVRUSB2_ONAIR_CREATOR,
+ VIDEO_EM28XX_ALSA, CRYPTO_DEV_HIFN_795X_RNG, PCF8575, TPS65010, RTL8180,
+ ENC28J60, R6040, CAN, NETFILTER_XT_MATCH_OWNER, MAC80211_RC_DEFAULT_PI,
+ NETFILTER_XT_TARGET_RATEEST, NETFILTER_XT_TARGET_TCPOPTSTRIP,
+ NETFILTER_XT_MATCH_IPRANGE, NETFILTER_XT_MATCH_RATEEST, SND_OXYGEN,
+ SND_HIFIER, SND_VIRTUOSO, USB_NET_RNDIS_WLAN, USB_ANNOUNCE_NEW_DEVICES,
+ USB_SERIAL_IUU, NET_CLS_FLOW, INFINIBAND_NES, RTC_DRV_R9701,
+ RTC_DRV_DS1511, MEMSTICK, SENSORS_W83L786NG, SENSORS_ADS7828, IPWIRELESS,
+ RISCOM8, IGB, UTS_NS, IPC_NS, IPV6_ROUTE_INFO, ENCLOSURE_SERVICES,
+ SCSI_ENCLOSURE, SENSORS_ADT7473, SCSI_MVSAS, REALTEK_PHY, RTC_DRV_S35390A,
+ MEMSTICK_JMICRON_38X, IWL4965_HT.
+ * [amd64] Enable CRYPTO_SALSA20_X86_64, EDAC_I3000, EFI, EFI_VARS, I8K,
+ PARAVIRT_GUEST, PARAVIRT, VIRTIO_PCI, VIRTIO_BALLOON, SPARSEMEM_VMEMMAP.
+ * [amd64, i386]: Enable LEDS_CLEVO_MAIL, INPUT_APANEL, ACER_WMI,
+ THINKPAD_ACPI_HOTKEY_POLL, HP_WATCHDOG, THINKPAD_ACPI_VIDEO,
+ VIRTION_CONSOLE, ACPI_WMI, IO_DELAY_0X80.
+ * topconfig disable PARPORT_PC_FIFO due to instabilities.
+ (closes: #366165, #388309, #406056, #407816, #453911)
+ * [amd64, i386]: Enable SONYPI_COMPAT for better sony laptop support.
+ * topconfig: Enable HID_FF for some HID devices. (closes: #441348)
+ * topconfig: Enable IPV6_ROUTER_PREF for multi-homed net. (closes: #449247)
+ * topconfig: Set UTF8 as default encoding. (closes: #417324)
+ * Tighten yaird dependency. (closes: #403171)
+ * Configs general cleanup, centralize USB_NET, disable IRDA_DEBUG.
+ * postinst: Nuke confusing postinst message. (closes: #465512)
+ * [sparc]: Enable SCSI_SCAN_ASYNC.
+ * [i386]: Enable TC1100_WMI, SND_SIS7019, CRYPTO_SALSA20_586.
+ * topconfig: Centralize old IEEE80211 stack options. (closes: #470558)
+ * control.source.in: Newer standard version without changes.
+ * copyright: adapt to latest lintian recommendation.
+ * input: Add 4 additional exports for modular speakup and braille support.
+ * firewire: Add firewire-git.patch for latest firewire tree features.
+ * 686: Set USB_PERSIST for eee pc suspend support. (closes: #468213)
+ * topconfig disable PATA_SIS as sis5513 enabled. (closes: #475525)
+ * [xen]: Support direct load of bzImage under Xen. (closes: #474509)
+ Thanks Ian Campbell <ijc@hellion.org.uk> for patches.
+ * [xen]: Module autoprobing support for frontend drivers.
+ * [arm]: Don't ovverride topconfig SENSORS_W83792D setting.
+ (closes: #477745)
+
+ [ Martin Michlmayr ]
+ * [arm/armel] Add a kernel for Orion based devices, such as the QNAP
+ TS-109/TS-209.
+ * [mips(el)/sb1*] Enable SB1250_MAC (thanks Thomas Bogendoerfer).
+ * [mipsel/r5k-cobalt] Enable DUMMY_CONSOLE since this might
+ fix the debian-installer startup hang on Qube 2700.
+ * [arm/footbridge] Disable KEYS and SECURITY for smaller d-i image.
+ * [arm/footbridge] Build NFS as a module to make the image smaller.
+ * [mips/r5k-ip32] Don't build in NFS.
+ * [mips/r5k-ip32] Use the generic config options for NFS, which will
+ enable NFSv4. (closes: #471007)
+ * [mips/r5k-ip32] Enable R8169, requested by Giuseppe Sacco.
+ * [arm/iop32x] Enable MACH_EM7210. (closes: #473136)
+ * [arm/orion] Add patch to set the MAC address on QNAP TS-109/TS-209
+ (Lennert Buytenhek).
+ * [arm/orion] Add support for Buffalo Linkstation Pro/Live (Byron Bradley).
+ * [arm/orion] Fix hang when Write Allocate is enabled (Lennert Buytenhek).
+ * [arm/orion] Add support for QNAP TS-409 (Sylver Bruneau).
+ * [arm/orion] Add preliminary support for HP mv2120.
+
+ [ Daniel Baumann ]
+ * Added patch from unionfs upstream to export release_open_intent symbol.
+
+ [ Gordon Farquharson ]
+ * [arm/ixp4xx] Use GPIO LED driver as opposed to ixp4xx LED driver.
+ * [arm/ixp4xx] Fix ixp4xx-beeper module so that udev loads it
+ automatically.
+ * [arm/iop32x] Enable support for the GLAN Tank flash chip (M29W400DB).
+ * [arm/iop32x] Do not build the ARTOP PATA driver (PATA_ARTOP).
+ * [arm/iop32x] Register the F75375 device in the GLAN Tank platform code.
+ * Prevent physmap from calling request_module() too early.
+ * [arm/ixp4xx] Fix used_sram_bitmap corruption in qmgr_release_queue().
+
+ [ Aurelien Jarno ]
+ * [mips/mipsel] Enable CONFIG_NO_HZ, CONFIG_HIGH_RES_TIMERS for dynticks
+ and true high-resolution timers on 4kc-malta and 5kc-malta flavours.
+ * [i386, amd64] Set modular VIRTIO, VIRTIO_RING, VIRTIO_BLK, VIRTIO_NET.
+
+ [ Bastian Blank ]
+ * Remove binary only firmwares for:
+ - Broadcom NetXtremeII 10Gb support
+ * Disable now broken drivers:
+ - Broadcom NetXtremeII 10Gb support
+ * Fix broken drivers:
+ - Broadcom NetXtremeII support
+ * [powerpc] Use new wrapper install support.
+ * [s390] Enable DM_MULTIPATH_EMC.
+ * Enable AF_RXRPC, RXKAD, PRINTK_TIME, DEBUG_KERNEL, SCHED_DEBUG,
+ TIMER_STATS, DEBUG_FS.
+ * Disable R3964, USB_GADGET.
+ * [hppa] Enable several filesystems.
+ * Make NLS modular.
+ * [i386/486] Make ext2 modular.
+ * [alpha,amd64,i386] Make ATM modular.
+ * [powerpc/powerpc64] Support PA Semi based plattforms. (closes: #463200)
+ * Follow upstream change for default TCP congestion control.
+ (closes: #477589)
+
+ [ Steve Langasek ]
+ * topconfig: Enable CONFIG_CIFS_WEAK_PW_HASH, required for compatibility
+ with legacy (pre-NTLM) fileservers.
+
+ [ Christian Perrier ]
+ * Debconf template rewrite + mark them as translatable.
+ Thanks to Justin B Rye <jbr@edlug.org.uk> for review.
+
+ -- Bastian Blank <waldi@debian.org> Fri, 25 Apr 2008 16:27:23 +0200
+
+linux-2.6 (2.6.24-6) unstable; urgency=high
+
+ [ Martin Michlmayr ]
+ * [armel] Fix FTBFS on armel by enabling CONFIG_USB_USBNET=m in
+ armel/config, as it was done for arm/config already.
+ * [armel] Add oabi shim for fstatat64 (Riku Voipio)
+
+ [ Gordon Farquharson ]
+ * [arm/iop32x] Do not build the ARTOP PATA driver (PATA_ARTOP).
+ * [arm/iop32x] Enable MTD_CMDLINE_PARTS.
+
+ [ Kyle McMartin ]
+ * [hppa] fix pdc_console panic at boot (closes: #476292).
+ * [hppa] properly flush user signal tramps
+ * [hppa] special case futex cmpxchg on kernel space NULL (closes: 476285).
+
+ -- Bastian Blank <waldi@debian.org> Fri, 18 Apr 2008 19:41:30 +0200
+
+linux-2.6 (2.6.24-5) unstable; urgency=low
+
+ [ Gordon Farquharson ]
+ * [arm] Enable asix driver (USB_NET_AX8817X).
+ * [arm] Enable CONFIG_USB_CATC, CONFIG_USB_KAWETH, CONFIG_USB_PEGASUS,
+ and CONFIG_USB_RTL8150.
+ * [arm/ixp4xx] Update Ethernet driver (closes: #471062).
+ * [arm/ixp4xx] Add HSS driver.
+
+ [ Bastian Blank ]
+ * [s390/s390-tape]: Override localversion correctly.
+ * Add stable release 2.6.24.3:
+ - x86_64: CPA, fix cache attribute inconsistency bug
+ - bonding: fix NULL pointer deref in startup processing
+ - POWERPC: Revert chrp_pci_fixup_vt8231_ata devinit to fix libata on pegasos
+ - PCMCIA: Fix station address detection in smc
+ - SCSI: gdth: scan for scsi devices
+ - USB: fix pm counter leak in usblp
+ - S390: Fix futex_atomic_cmpxchg_std inline assembly.
+ - genirq: do not leave interupts enabled on free_irq
+ - hrtimer: catch expired CLOCK_REALTIME timers early
+ - hrtimer: check relative timeouts for overflow
+ - SLUB: Deal with annoying gcc warning on kfree()
+ - hrtimer: fix *rmtp/restarts handling in compat_sys_nanosleep()
+ - hrtimer: fix *rmtp handling in hrtimer_nanosleep()
+ - Disable G5 NAP mode during SMU commands on U3
+ - Be more robust about bad arguments in get_user_pages()
+ - AUDIT: Increase skb->truesize in audit_expand
+ - BLUETOOTH: Add conn add/del workqueues to avoid connection fail.
+ - INET: Prevent out-of-sync truesize on ip_fragment slow path
+ - INET_DIAG: Fix inet_diag_lock_handler error path.
+ - IPCOMP: Fetch nexthdr before ipch is destroyed
+ - IPCOMP: Fix reception of incompressible packets
+ - IPV4: fib: fix route replacement, fib_info is shared
+ - IPV4: fib_trie: apply fixes from fib_hash
+ - PKT_SCHED: ematch: oops from uninitialized variable (resend)
+ - SELinux: Fix double free in selinux_netlbl_sock_setsid()
+ - TC: oops in em_meta
+ - TCP: Fix a bug in strategy_allowed_congestion_control
+ - SCSI: sd: handle bad lba in sense information
+ - Fix dl2k constants
+ - XFS: Fix oops in xfs_file_readdir()
+ - hugetlb: add locking for overcommit sysctl
+ - inotify: fix check for one-shot watches before destroying them
+ - NFS: Fix a potential file corruption issue when writing
+ - NETFILTER: nf_conntrack_tcp: conntrack reopening fix
+ - SPARC/SPARC64: Fix usage of .section .sched.text in assembler code.
+ * Add stable release 2.6.24.4:
+ - S390 futex: let futex_atomic_cmpxchg_pt survive early functional tests.
+ - slab: NUMA slab allocator migration bugfix
+ - relay: fix subbuf_splice_actor() adding too many pages
+ - BLUETOOTH: Fix bugs in previous conn add/del workqueue changes.
+ - SCSI advansys: Fix bug in AdvLoadMicrocode
+ - async_tx: avoid the async xor_zero_sum path when src_cnt > device->max_xor
+ - aio: bad AIO race in aio_complete() leads to process hang
+ - jbd: correctly unescape journal data blocks
+ - jbd2: correctly unescape journal data blocks
+ - zisofs: fix readpage() outside i_size
+ - NETFILTER: nfnetlink_log: fix computation of netlink skb size
+ - NETFILTER: nfnetlink_queue: fix computation of allocated size for netlink skb
+ - NETFILTER: xt_time: fix failure to match on Sundays
+ - sched_nr_migrate wrong mode bits
+ - nfsd: fix oops on access from high-numbered ports
+ - sched: fix race in schedule()
+ - SCSI: mpt fusion: don't oops if NumPhys==0
+ - SCSI: gdth: fix to internal commands execution
+ - SCSI: gdth: bugfix for the at-exit problems
+ - Fix default compose table initialization
+ - x86: don't use P6_NOPs if compiling with CONFIG_X86_GENERIC
+ - SCSI: fix BUG when sum(scatterlist) > bufflen
+ - USB: ehci: handle large bulk URBs correctly (again)
+ - USB: ftdi_sio - really enable EM1010PC
+ - USB: ftdi_sio: Workaround for broken Matrix Orbital serial port
+ - VT notifier fix for VT switch
+ - eCryptfs: make ecryptfs_prepare_write decrypt the page
+ - ioat: fix 'ack' handling, driver must ensure that 'ack' is zero
+ - macb: Fix speed setting
+ - x86: move out tick_nohz_stop_sched_tick() call from the loop
+ - atmel_spi: fix clock polarity
+ - b43: Backport bcm4311 fix
+ - arcmsr: fix IRQs disabled warning spew
+ - e1000e: Fix CRC stripping in hardware context bug
+ - PCI x86: always use conf1 to access config space below 256 bytes
+ - moduleparam: fix alpha, ia64 and ppc64 compile failures
+ - pata_hpt*, pata_serverworks: fix UDMA masking
+ - SCSI advansys: fix overrun_buf aligned bug
+ - NETFILTER: fix ebtable targets return
+ - NETFILTER: Fix incorrect use of skb_make_writable
+ - NETFILTER: nfnetlink_queue: fix SKB_LINEAR_ASSERT when mangling packet data
+ - spi: pxa2xx_spi clock polarity fix
+ - ufs: fix parenthesisation in ufs_set_fs_state()
+ - hugetlb: ensure we do not reference a surplus page after handing it to buddy
+ - file capabilities: simplify signal check
+ - futex: runtime enable pi and robust functionality
+ - futex: fix init order
+ - ARM pxa: fix clock lookup to find specific device clocks
+ - x86: replace LOCK_PREFIX in futex.h
+ - SCSI aic94xx: fix REQ_TASK_ABORT and REQ_DEVICE_RESET
+ - SCSI gdth: don't call pci_free_consistent under spinlock
+ - SCSI ips: fix data buffer accessors conversion bug
+ - usb-storage: don't access beyond the end of the sg buffer
+ - fuse: fix permission checking
+ - CRYPTO xts: Use proper alignment
+ - CRYPTO xcbc: Fix crash with IPsec
+ - SCSI ips: handle scsi_add_host() failure, and other err cleanups
+ - x86: adjust enable_NMI_through_LVT0()
+ - drivers: fix dma_get_required_mask
+ - iov_iter_advance() fix
+ - x86: Clear DF before calling signal handler (closes: #469058)
+ - ub: fix up the conversion to sg_init_table()
+ - MIPS: Mark all but i8259 interrupts as no-probe.
+ - IRQ_NOPROBE helper functions
+ - IPCOMP: Disable BH on output when using shared tfm
+ - IPCONFIG: The kernel gets no IP from some DHCP servers
+ - IPV4: Remove IP_TOS setting privilege checks.
+ - IPV6: dst_entry leak in ip4ip6_err.
+ - IPV6: Fix IPsec datagram fragmentation
+ - NET: Fix race in dev_close(). (Bug 9750)
+ - NET: Messed multicast lists after dev_mc_sync/unsync (closes: #466719)
+ - NIU: Bump driver version and release date.
+ - NIU: Fix BMAC alternate MAC address indexing.
+ - NIU: More BMAC alt MAC address fixes.
+ - TCP: Improve ipv4 established hash function.
+ - SPARC: Fix link errors with gcc-4.3
+ - SPARC64: Loosen checks in exception table handling.
+
+ [ Martin Michlmayr ]
+ * [mips/r4k-ip22] Enable BLK_DEV_LOOP and BLK_DEV_CRYPTOLOOP.
+ * [mips/r5k-ip32] Enable BLK_DEV_LOOP and BLK_DEV_CRYPTOLOOP.
+ * [mips/r4k-ip22] Enable PPP, PPPOE and SLIP.
+ * [mips/r5k-ip32] Enable PPP, PPPOE and SLIP.
+ * Don't check the section size when we're cross compiling.
+
+ [ dann frazier ]
+ * Remove cap_task_kill (closes: #463669)
+
+ -- Bastian Blank <waldi@debian.org> Thu, 27 Mar 2008 12:40:16 +0100
+
+linux-2.6 (2.6.24-4) unstable; urgency=low
+
+ * Add stable release 2.6.24.1:
+ - splice: missing user pointer access verification (CVE-2008-0009/10)
+ - drm: the drm really should call pci_set_master..
+ - Driver core: Revert "Fix Firmware class name collision"
+ - fix writev regression: pan hanging unkillable and un-straceable
+ - sched: fix high wake up latencies with FAIR_USER_SCHED
+ - sched: let +nice tasks have smaller impact
+ - b43: Reject new firmware early
+ - selinux: fix labeling of /proc/net inodes
+ - b43legacy: fix DMA slot resource leakage
+ - b43legacy: drop packets we are not able to encrypt
+ - b43legacy: fix suspend/resume
+ - b43legacy: fix PIO crash
+ - b43: Fix dma-slot resource leakage
+ - b43: Drop packets we are not able to encrypt
+ - b43: Fix suspend/resume
+ - sky2: fix for WOL on some devices
+ - sky2: restore multicast addresses after recovery
+ - x86: restore correct module name for apm
+ - ACPI: update ACPI blacklist
+ - PCI: Fix fakephp deadlock
+ - sys_remap_file_pages: fix ->vm_file accounting
+ - lockdep: annotate epoll
+ - forcedeth: mac address mcp77/79
+ - USB: Fix usb_serial_driver structure for Kobil cardreader driver.
+ - USB: handle idVendor of 0x0000
+ - USB: fix usbtest halt check on big endian systems
+ - USB: storage: Add unusual_dev for HP r707
+ - USB: Variant of the Dell Wireless 5520 driver
+ - USB: use GFP_NOIO in reset path
+ - USB: ftdi driver - add support for optical probe device
+ - USB: pl2303: add support for RATOC REX-USB60F
+ - USB: remove duplicate entry in Option driver and Pl2303 driver for Huawei modem
+ - USB: sierra: add support for Onda H600/Zte MF330 datacard to USB Driver for Sierra Wireless
+ - USB: ftdi-sio: Patch to add vendor/device id for ATK_16IC CCD
+ - USB: ftdi_sio - enabling multiple ELV devices, adding EM1010PC
+ - USB: sierra driver - add devices
+ - USB: Adding YC Cable USB Serial device to pl2303
+ - USB: Sierra - Add support for Aircard 881U
+ - USB: add support for 4348:5523 WinChipHead USB->RS 232 adapter
+ - USB: CP2101 New Device IDs
+ - usb gadget: fix fsl_usb2_udc potential OOPS
+ - USB: keyspan: Fix oops
+ - vm audit: add VM_DONTEXPAND to mmap for drivers that need it (CVE-2008-0007)
+ - slab: fix bootstrap on memoryless node
+ - DVB: cx23885: add missing subsystem ID for Hauppauge HVR1800 Retail
+
+ [ Martin Michlmayr ]
+ * [arm/ixp4xx] Enble ATA_OVER_ETH, requested by Nicola Fankhauser.
+ * [arm/iop32x] Enble ATA_OVER_ETH.
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.24.2:
+ - splice: fix user pointer access in get_iovec_page_array()
+ (CVE-2008-0600, closes: #464945)
+
+ -- Bastian Blank <waldi@debian.org> Mon, 11 Feb 2008 12:29:23 +0100
+
+linux-2.6 (2.6.24-3) unstable; urgency=low
+
+ [ maximilian attems ]
+ * [scsi]: hptiop: add more adapter models and fixes.
+ * [amd64, i386]: Reenable ACPI_PROCFS_POWER. (closes: #463253)
+
+ [ Gordon Farquharson ]
+ * [arm/ixp4xx] Update Ethernet driver so that it can be loaded by udev
+ automatically.
+
+ [ Martin Michlmayr ]
+ * [mips/r5k-ip32] Enable R8169, requested by Giuseppe Sacco. (Closes:
+ #463705)
+
+ -- Bastian Blank <waldi@debian.org> Wed, 06 Feb 2008 13:05:18 +0100
+
+linux-2.6 (2.6.24-2) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Fix broken merge of flavour specific settings.
+ - [i386]: Recommends are fixed.
+ - [s390/s390-tape]: Built as small image again.
+
+ [ maximilian attems ]
+ * Disable old dup prism54 driver.
+ * Stable queue: slab: fix bootstrap on memoryless node.
+
+ [ Aurelien Jarno ]
+ * [arm]: Remove options that are present in topconfig from config.versatile.
+ * [arm]: Turn off B44 since it fails to compile on armel.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 31 Jan 2008 17:37:00 +0100
+
+linux-kbuild-2.6 (2.6.24-1) unstable; urgency=low
+
+ * New upstream version.
+
+ -- Bastian Blank <waldi@debian.org> Tue, 29 Jan 2008 14:03:06 +0100
+
+linux-2.6 (2.6.24-1) unstable; urgency=low
+
+ * New upstream release
+ (closes: #461639)
+
+ [ Martin Michlmayr ]
+ * Don't build the AdvanSys driver on ARM since it fails to compile.
+ * Disable ATH5K on ARM since it fails to compile.
+ * [arm/iop32x] Activate DMADEVICES.
+ * [mips/mipsel] Turn off CONFIG_NIU since it fails to compile.
+
+ [ maximilian attems ]
+ * [amd64, i386]: Enable ACPI_SYSFS_POWER and disable ACPI_PROCFS_POWER.
+ * [fw] Sync with latest git-ieee1394 for sbp2 fixes.
+
+ [ Bastian Blank ]
+ * Kill reboot warning from old templates.
+ * Fix strange default value for link_in_boot. (closes: #425056)
+ * [powerpc/powerpc]: Enable Efika support.
+ * [powerpc]: Lower mkvmlinuz to the state of a bootloader.
+ * [powerpc]: Remove ppc and m68k include dirs from headers.
+ * Remove versions from relations fullfilled in stable.
+
+ [ Aurelien Jarno ]
+ * [arm]: Update versatile config.
+
+ [ Gordon Farquharson ]
+ * [arm/ixp4xx] Change the ixp4xx network driver from the driver
+ written by Christian Hohnstaedt to the driver written by Krzysztof
+ Hasala which has partially been accepted upstream.
+
+ -- Bastian Blank <waldi@debian.org> Sat, 26 Jan 2008 11:35:11 +0100
+
+linux-2.6 (2.6.24~rc8-1~experimental.1) experimental; urgency=low
+
+ * New upstream release
+ (closes: #454776, #458142, #457992, #458899, #426124, #459732, #455566).
+
+ [ maximilian attems ]
+ * New upstream release, rebase dfsg stuff plus drivers-atm.patch,
+ scripts-kconfig-reportoldconfig.patch.
+ * [amd64, powerpc] Set HIGH_RES_TIMERS and NO_HZ (closes: #458312).
+ * topconfig set NETFILTER_XT_MATCH_TIME, NET_ACT_NAT, KSDAZZLE_DONGLE,
+ KS959_DONGLE, NET_9P_FD, IP1000, VETH, IXGBE, NIU, TEHUTI, LIBERTAS_CS,
+ LIBERTAS_SDIO, RT2X00, SENSORS_ADT7470, SENSORS_I5K_AMB, SENSORS_F71882FG,
+ SENSORS_FSCHMD, SENSORS_IBMPEX, CRYPTO_XTS, CRYPTO_SEED, CRYPTO_AUTHENC,
+ DVB_S5H1409, DVB_TUNER_MT2131, INET_LRO, MMC_RICOH_MMC, MMC_SPI,
+ RTC_DRV_DS1374, VIDEO_CX23885, VIDEO_FB_IVTV, USB_SERIAL_CH341,
+ SCSI_SRP_TGT_ATTRS, ADM8211, MTD_INTEL_VR_NOR, MTD_ALAUDA,
+ MTD_ONENAND_2X_PROGRAM, MTD_ONENAND_SIM, DM_MULTIPATH_HP, FUJITSU_LAPTOP,
+ QUOTA_NETLINK_INTERFACE, DM_UEVENT, SCSI_FC_TGT_ATTRS, SSB, BT_HCIUART_LL,
+ BT_HCIBTSDIO, MTD_OOPS, CGROUPS, MDIO_BITBANG, HIDRAW, P54, SDIO_UART,
+ NETCONSOLE_DYNAMIC, SECURITY_FILE_CAPABILITIES.
+ * Disable smbfs in topconfig, not supported upstream, use cifs.
+ * Disable bcm43xx, deprecated by upstream. Enable B43 (needs v4 firmware)
+ and B43LEGACY (needs v3 firmware).
+ * [i386]: Set SND_SC6000, EDAC_I3000, EDAC_I5000, SBC7240_WDT,
+ NET_9P_VIRTIO, FB_GEODE_LX, VIRTIO_NET, VIRTIO_BLK.
+ * Set USB_EHCI_TT_NEWSCHED fills USB 2.0 bandwith better. (closes: #454797)
+ * postrm: Nuke initramfs sha1sum on linux-image removal. (closes: #420245)
+ * Unifiy BSD_PROCESS_ACCT settings across configs. (closes: #455892)
+ * Reenable DABUSB as firmware is BSD licensed.
+ * [hppa]: Disable OCFS2, due build trouble.
+ * topconfig: Enable delay accounting TASKSTATS. (closes: #433204)
+ * Add git-ieee1394.patch for latest firewire fixes.
+ * [i386] Enable PARAVIRT_GUEST. (closes: #457562)
+ * [amd64, i386] Enable CPU_IDLE for software-controlled idle pm.
+ * [amd64, i386] Enable IT8712F_WDT, FB_EFI.
+ * Add and enable at76.patch wireless driver for Atmel USB cards.
+ * Add and enable ath5k.patch wireless driver for Atheros 5xxx cards.
+ * Unify VLAN_8021Q setting, needed also on r5k-cobalt.
+ * Double max SERIAL_8250_NR_UARTS to 32. (closes: #440807)
+ * topconfig: Enable AUDITSYSCALL for better SELinux support.
+
+ [ Bastian Blank ]
+ * [amd64, i386]: Set kernel architecture to x86.
+ * [i386]: Remove linux-libc-dev arch override.
+
+ [ Martin Michlmayr ]
+ * [mipsel/r5k-cobalt] Enable the new LEDs driver for Cobalt RaQ.
+ * [arm/iop32x] Re-enable USB_NET and PPP, thanks Daniel Hess (closes:
+ #456416).
+ * [arm/iop32x] Enable BSD_PROCESS_ACCT and POSIX_MQUEUE (closes: #455892).
+ * [mips] Disable AdvanSys SCSI since it doesn't compile.
+ * [arm/ixp4xx] Enable IP_ADVANCED_ROUTER, requested by Oliver Urbann.
+ * [arm/iop32x] Enable IP_ADVANCED_ROUTER.
+
+ [ dann frazier ]
+ * [ia64]: Enable BLK_CPQ_DA
+
+ [ Frederik Schüler ]
+ * Add GFS2 locking symbols export patch.
+
+ [ Aurelien Jarno ]
+ * [mips/mipsel] Remove QEMU flavour, as the Malta platform is now correctly
+ emulated in QEMU.
+
+ [ Christian T. Steigies ]
+ * [m68k]: Update patches from linux-m68k CVS
+ * [m68k]: Enable building for bvme6000, mvme147, and mvme16x again
+
+ -- Bastian Blank <waldi@debian.org> Fri, 18 Jan 2008 12:23:26 +0100
+
+linux-2.6 (2.6.23-2) unstable; urgency=low
+
+ [ dann frazier ]
+ * [ia64]: Enable BLK_CPQ_DA
+
+ [ Gordon Farquharson ]
+ * [arm/iop32x] Use the new i2c framework to load rtc-rs5c372 for the
+ GLAN Tank.
+
+ [ Frederik Schüler ]
+ * Export gfs2 locking symbols required to build gfs1 module.
+
+ [ maximilian attems ]
+ * [ppc] Reenable PMAC_BACKLIGHT.
+ * [sparc] Add davem get_cpu() SunFire boot patch. (closes: #440720)
+ * Add stable release 2.6.23.10:
+ - IPV4: Remove bogus ifdef mess in arp_process
+ - KVM: x86 emulator: Use emulator_write_emulated and not emulator_write_std
+ - KVM: SVM: Fix FPU leak while emulating clts
+ - revert "dpt_i2o: convert to SCSI hotplug model"
+ - KVM: x86 emulator: fix access registers for instructions with ModR/M
+ byte and Mod = 3
+ - KVM: x86 emulator: invd instruction
+ - KVM: SVM: Intercept the 'invd' and 'wbinvd' instructions
+ - KVM: Skip pio instruction when it is emulated, not executed
+ - KVM: VMX: Force vm86 mode if setting flags during real mode
+ - forcedeth: new mcp79 pci ids
+ - forcedeth boot delay fix
+ - PFKEY: Sending an SADB_GET responds with an SADB_GET
+ - rd: fix data corruption on memory pressure.
+ - create /sys/.../power when CONFIG_PM is set
+ - USB: fix up EHCI startup synchronization
+ - RXRPC: Add missing select on CRYPTO
+ - KVM: VMX: Reset mmu context when entering real mode
+ - NET: random : secure_tcp_sequence_number should not assume
+ CONFIG_KTIME_SCALAR
+ - NET: Corrects a bug in ip_rt_acct_read()
+ - NETFILTER: Fix NULL pointer dereference in nf_nat_move_storage()
+ - netfilter: Fix kernel panic with REDIRECT target.
+ - IPV6: Restore IPv6 when MTU is big enough
+ - UNIX: EOF on non-blocking SOCK_SEQPACKET
+ - x86 setup: add a near jump to serialize %cr0 on 386/486
+ - Fix synchronize_irq races with IRQ handler
+ - CRYPTO api: Fix potential race in crypto_remove_spawn
+ - TCP: Fix TCP header misalignment
+ - tmpfs: restore missing clear_highpage (CVE-2007-6417)
+ - TCP: MTUprobe: fix potential sk_send_head corruption
+ - NETFILTER: fix forgotten module release in xt_CONNMARK and xt_CONNSECMARK
+ - fb_ddc: fix DDC lines quirk
+ - VLAN: Fix nested VLAN transmit bug
+ - I4L: fix isdn_ioctl memory overrun vulnerability (CVE-2007-6151)
+ - isdn: avoid copying overly-long strings
+ - nf_nat: fix memset error
+ - esp_scsi: fix reset cleanup spinlock recursion
+ - libertas: properly account for queue commands
+ - KVM: Fix hang on uniprocessor
+ - USB: make the microtek driver and HAL cooperate
+ - TEXTSEARCH: Do not allow zero length patterns in the textsearch
+ infrastructure
+ - XFRM: Fix leak of expired xfrm_states
+ - NETFILTER: xt_TCPMSS: remove network triggerable WARN_ON
+ - BRIDGE: Lost call to br_fdb_fini() in br_init() error path
+ - DECNET: dn_nl_deladdr() almost always returns no error
+ - BRIDGE: Properly dereference the br_should_route_hook
+ - PKT_SCHED: Check subqueue status before calling hard_start_xmit
+ - Freezer: Fix APM emulation breakage
+ - XFS: Make xfsbufd threads freezable
+ - TCP: Problem bug with sysctl_tcp_congestion_control function
+ - wait_task_stopped(): pass correct exit_code to wait_noreap_copyout()
+ - KVM: x86 emulator: implement 'movnti mem, reg'
+ - TCP: illinois: Incorrect beta usage
+ - futex: fix for futex_wait signal stack corruption
+ - libata: kill spurious NCQ completion detection
+ - hrtimers: avoid overflow for large relative timeouts (CVE-2007-5966)
+ - Input: ALPS - add support for model found in Dell Vostro 1400
+ (closes: #448818)
+ - PNP: increase the maximum number of resources
+ - sched: some proc entries are missed in sched_domain sys_ctl debug code
+ - ATM: [he] initialize lock and tasklet earlier
+ * Add stable release 2.6.23.11:
+ - BRIDGE: Section fix.
+ - Revert "Freezer: Fix APM emulation breakage"
+ * Backport fix for CVE-2007-5938
+ - iwlwifi: fix possible NULL dereference in iwl_set_rate()
+ * Add stable release 2.6.23.12:
+ - Revert "PNP: increase the maximum number of resources"
+ * VM/Security: add security hook to do_brk (CVE-2007-6434)
+ * security: protect from stack expantion into low vm addresses
+ * [hppa]: Disable OCFS2, due build trouble.
+
+ [ Aurelien Jarno ]
+ * [arm/versatile] Disable ACENIC and MYRI10GE as they are useless on this
+ platform.
+ * Add em28xx-dv100.patch to add support for Pinnacle Dazzle DVC 100.
+
+ [ Bastian Blank ]
+ * Fix abi change in 2.6.23.10.
+
+ -- maximilian attems <maks@debian.org> Fri, 21 Dec 2007 11:47:55 +0100
+
+linux-kbuild-2.6 (2.6.23-1) unstable; urgency=low
+
+ * New upstream version.
+ * modpost: Support -s.
+
+ -- Bastian Blank <waldi@debian.org> Wed, 05 Dec 2007 08:23:28 +0100
+
+linux-2.6 (2.6.23-1) unstable; urgency=low
+
+ * New upstream release (closes: #447682).
+ - r8169: fix confusion between hardware and IP header alignment
+ (closes: #452069).
+
+ [ maximilian attems ]
+ * [ppc] Enable for powerpc config the ams (Apple Motion Sensor).
+ (closes: #426210)
+ * Add to linux-doc the missing toplevel text files.
+ (closes: #360876, #438697)
+ * Set CONFIG_BLK_DEV_IO_TRACE for blktrace(8) support. (closes: #418442)
+ * ipw2200: Enable IPW2200_RADIOTAP and IPW2200_PROMISCUOUS for optional
+ rtap interface. (closes: #432555)
+ * Enable in topconfig NF_CT_PROTO_UDPLITE, NETFILTER_XT_TARGET_TRACE,
+ NETFILTER_XT_MATCH_CONNLIMIT, NETFILTER_XT_MATCH_U32, SENSORS_ABITUGURU3,
+ SENSORS_LM93, SENSORS_DME1737, SENSORS_THMC50, DVB_USB_AF9005,
+ DVB_USB_AF9005_REMOTE, CRC7, I2C_TAOS_EVM, DS1682, SENSORS_TSL2550,
+ SPI_LM70_LLP, SPI_TLE62X0, W1_SLAVE_DS2760, TUNER_TEA5761, NET_9P,
+ DM_MULTIPATH_RDAC, NET_SCH_RR, EEPROM_93CX6, PPPOL2TP, CRYPTO_HW, UIO,
+ UIO_CIF, SND_CS5530, RTL8187, PC300TOO, TCG_TIS, SCSI_SAS_ATA,
+ PATA_MARVELL.
+ * [i386] Enable lguest.
+ * [amd64, i386] Enable VIDEO_OUTPUT_CONTROL, NETDEVICES_MULTIQUEUE.
+ * linux-image bugscript add cmdline.
+ * [amd64, i386, ia64]: Enable DMIID, ACPI_PROC_EVENT.
+ * Enable TCG_TPM various userspace accesses it. (closes: #439020)
+ * Add and enable IWLWIFI.
+ * Add git-ieee1394.patch for latest firewire fixes.
+ * [ipv6] Enable IPV6_MULTIPLE_TABLES, IPV6_SUBTREES. (closes: #441226)
+ * Add and enable E1000E.
+ * Add stable release 2.6.23.1:
+ - libata: sata_mv: more S/G fixes
+
+ [ Martin Michlmayr ]
+ * [mips] Add a bcm1480 PCI build fix.
+ * Update Riku Voipio's Fintek F75375/SP driver to the latest version.
+ * [arm/iop32x] Set the fan on Thecus N2100 to full speed (Riku Voipio).
+ * [arm/iop32x] Remove the IPv6 and filesystem info from the config file
+ so we will get the values from the main config file. This should
+ enable NFSv4 and ip6tables support requested by Wouter Verhelst.
+ * [arm/iop32x] Remove even more options to receive the default options.
+ * [arm/ixp4xx] Remove a lot of options to receive the default options.
+ * [mips/r4k-ip22] Remove a lot of options to receive the default options.
+ This will enable ISCSI requested by Martin Zobel-Helas.
+ * [mips/r5k-ip32] Remove a lot of options to receive the default options.
+ This will enable PCI Ethernet devices requested by Giuseppe Sacco.
+ * [mipsel/r5k-cobalt] Remove a lot of options to receive the default
+ options.
+ * [mipsel/r5k-cobalt] Enable the modern Cobalt LEDs driver.
+ * [arm/iop32x] Enable Intel IOP ADMA support.
+ * [arm] Mark BCM43XX as broken on ARM.
+ * [mips/r4k-ip22] Disable EARLY PRINTK because it breaks serial console.
+ * [mips] Add some IP22 fixes from Thomas Bogendoerfer:
+ - Fix broken EISA interrupt setup by switching to generic i8259
+ - Fix broken eeprom access by using __raw_readl/__raw_writel
+
+ [ Bastian Blank ]
+ * Add unpriviledged only Xen support.
+ * [i386] Drop k7 images.
+ * Drop maybe IETF document. (closes: #423040)
+ * Drop drivers because of binary only firmwares:
+ - DABUSB driver
+ - COPS LocalTalk PC support
+ - Digi Intl. RightSwitch SE-X support
+ - 3Com 3C359 Token Link Velocity XL adapter support
+ - SMC ISA/MCA adapter support
+ - EMI 6|2m USB Audio interface support
+ - EMI 2|6 USB Audio interface support
+ - Computone IntelliPort Plus serial support
+ * Remove binary only firmwares for:
+ - Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support
+ - Broadcom Tigon3 support
+ - USB Keyspan USA-xxx Serial Driver
+ - Korg 1212 IO
+ - ESS Allegro/Maestro3
+ - Yamaha YMF724/740/744/754
+ - Technotrend/Hauppauge Nova-USB devices
+ - YAM driver for AX.25
+ - MyriCOM Gigabit Ethernet support
+ - PTI Qlogic, ISP Driver
+ - Cirrus Logic (Sound Fusion) CS4280/CS461x/CS462x/CS463x
+ - Madge Ambassador (Collage PCI 155 Server)
+ - PCA-200E support
+ - SBA-200E support
+ - Broadcom NetXtremeII support
+ * Disable now broken drivers:
+ - Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support
+ - USB Keyspan USA-xxx Serial Driver
+ - Technotrend/Hauppauge Nova-USB devices
+ - YAM driver for AX.25
+ - MyriCOM Gigabit Ethernet support
+ - PTI Qlogic, ISP Driver
+ - Cirrus Logic (Sound Fusion) CS4280/CS461x/CS462x/CS463x
+ - Madge Ambassador (Collage PCI 155 Server)
+ - PCA-200E support
+ - SBA-200E support
+ - Broadcom NetXtremeII support
+ * Add -common to common header package names.
+ * Drop provides from common header packages.
+ * Update plain image type.
+ * Put only a config dump into linux-support.
+
+ [ Aurelien Jarno ]
+ * [mips, mipsel] Add a 64-bit image (5kc-malta) for the MIPS Malta board.
+ (closes: #435677)
+ [sparc] Enable r8169 module on sparc64 and sparc64-smp flavours (closes:
+ #431977)
+
+ [ Frederik Schüler ]
+ * Move all PATA options into the global config file, exept PATA_ARTOP
+ (arm/ixp4xx) and PATA_MPC52xx (powerpc).
+ * Move new global options into the global config file
+ * Clean up new amd64 options
+
+ [ dann frazier ]
+ * [ia64] Re-enable various unintentionally disabled config options
+ * Enable hugetlbfs on i386, amd64, sparc64 and powerpc64. Closes: #450939
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.23.2:
+ - BLOCK: Fix bad sharing of tag busy list on queues with shared tag maps
+ - fix tmpfs BUG and AOP_WRITEPAGE_ACTIVATE
+ - Fix compat futex hangs. (closes: #433187)
+ - sched: keep utime/stime monotonic
+ - fix the softlockup watchdog to actually work
+ - splice: fix double kunmap() in vmsplice copy path
+ - writeback: don't propagate AOP_WRITEPAGE_ACTIVATE
+ - SLUB: Fix memory leak by not reusing cpu_slab
+ - HOWTO: update ja_JP/HOWTO with latest changes
+ - fix param_sysfs_builtin name length check
+ - param_sysfs_builtin memchr argument fix
+ - Remove broken ptrace() special-case code from file mapping
+ - locks: fix possible infinite loop in posix deadlock detection
+ - lockdep: fix mismatched lockdep_depth/curr_chain_hash
+ * Add stable release 2.6.23.3:
+ - revert "x86_64: allocate sparsemem memmap above 4G"
+ - x86: fix TSC clock source calibration error
+ - x86 setup: sizeof() is unsigned, unbreak comparisons
+ - x86 setup: handle boot loaders which set up the stack incorrectly
+ - x86: fix global_flush_tlb() bug
+ - xfs: eagerly remove vmap mappings to avoid upsetting Xen
+ - xen: fix incorrect vcpu_register_vcpu_info hypercall argument
+ - xen: deal with stale cr3 values when unpinning pagetables
+ - xen: add batch completion callbacks
+ - UML - kill subprocesses on exit
+ - UML - stop using libc asm/user.h
+ - UML - Fix kernel vs libc symbols clash
+ - UML - Stop using libc asm/page.h
+ - POWERPC: Make sure to of_node_get() the result of pci_device_to_OF_node()
+ - POWERPC: Fix handling of stfiwx math emulation
+ - MIPS: R1: Fix hazard barriers to make kernels work on R2 also.
+ - MIPS: MT: Fix bug in multithreaded kernels.
+ - Fix sparc64 MAP_FIXED handling of framebuffer mmaps
+ - Fix sparc64 niagara optimized RAID xor asm
+ * Add stable release 2.6.23.4:
+ - mac80211: make ieee802_11_parse_elems return void
+ - mac80211: only honor IW_SCAN_THIS_ESSID in STA, IBSS, and AP modes
+ - mac80211: honor IW_SCAN_THIS_ESSID in siwscan ioctl
+ - mac80211: store SSID in sta_bss_list
+ - mac80211: store channel info in sta_bss_list
+ - mac80211: reorder association debug output
+ - ieee80211: fix TKIP QoS bug
+ - NETFILTER: nf_conntrack_tcp: fix connection reopening
+ - Fix netlink timeouts.
+ - Fix crypto_alloc_comp() error checking.
+ - Fix SET_VLAN_INGRESS_PRIORITY_CMD error return.
+ - Fix VLAN address syncing.
+ - Fix endianness bug in U32 classifier.
+ - Fix TEQL oops.
+ - Fix error returns in sys_socketpair()
+ - softmac: fix wext MLME request reason code endianness
+ - Fix kernel_accept() return handling.
+ - TCP: Fix size calculation in sk_stream_alloc_pskb
+ - Fix SKB_WITH_OVERHEAD calculations.
+ - Fix 9P protocol build
+ - Fix advertised packet scheduler timer resolution
+ - Add get_unaligned to ieee80211_get_radiotap_len
+ - mac80211: Improve sanity checks on injected packets
+ - mac80211: filter locally-originated multicast frames
+ * Add stable release 2.6.23.5:
+ - zd1211rw, fix oops when ejecting install media
+ - rtl8187: Fix more frag bit checking, rts duration calc
+ - ipw2100: send WEXT scan events
+ - zd1201: avoid null ptr access of skb->dev
+ - sky2: fix power settings on Yukon XL
+ - sky2: ethtool register reserved area blackout
+ - sky2: status ring race fix
+ - skge: XM PHY handling fixes
+ - Fix L2TP oopses.
+ - TG3: Fix performance regression on 5705.
+ - forcedeth: add MCP77 device IDs
+ - forcedeth msi bugfix
+ - ehea: 64K page kernel support fix
+ - libertas: fix endianness breakage
+ - libertas: more endianness breakage
+ * Add stable release 2.6.23.6:
+ - ACPI: suspend: Wrong order of GPE restore.
+ - ACPI: sleep: Fix GPE suspend cleanup
+ - libata: backport ATA_FLAG_NO_SRST and ATA_FLAG_ASSUME_ATA, part 2
+ - libata: backport ATA_FLAG_NO_SRST and ATA_FLAG_ASSUME_ATA
+ - libata: add HTS542525K9SA00 to NCQ blacklist
+ - radeon: set the address to access the GART table on the CPU side correctly
+ - Char: moxa, fix and optimise empty timer
+ - Char: rocket, fix dynamic_dev tty
+ - hptiop: avoid buffer overflow when returning sense data
+ - ide: Fix cs5535 driver accessing beyond array boundary
+ - ide: Fix siimage driver accessing beyond array boundary
+ - ide: Add ide_get_paired_drive() helper
+ - ide: fix serverworks.c UDMA regression
+ - i4l: fix random freezes with AVM B1 drivers
+ - i4l: Fix random hard freeze with AVM c4 card
+ - ALSA: hda-codec - Add array terminator for dmic in STAC codec
+ - USB: usbserial - fix potential deadlock between write() and IRQ
+ - USB: add URB_FREE_BUFFER to permissible flags
+ - USB: mutual exclusion for EHCI init and port resets
+ - usb-gadget-ether: prevent oops caused by error interrupt race
+ - USB: remove USB_QUIRK_NO_AUTOSUSPEND
+ - MSI: Use correct data offset for 32-bit MSI in read_msi_msg()
+ - md: raid5: fix clearing of biofill operations
+ - md: fix an unsigned compare to allow creation of bitmaps with v1.0 metadata
+ - dm: fix thaw_bdev
+ - dm delay: fix status
+ - libata: sync NCQ blacklist with upstream
+ - ALSA: hdsp - Fix zero division
+ - ALSA: emu10k1 - Fix memory corruption
+ - ALSA: Fix build error without CONFIG_HAS_DMA
+ - ALSA: fix selector unit bug affecting some USB speakerphones
+ - ALSA: hda-codec - Avoid zero NID in line_out_pins[] of STAC codecs
+ - IB/mthca: Use mmiowb() to avoid firmware commands getting jumbled up
+ - IB/uverbs: Fix checking of userspace object ownership
+ - hwmon/lm87: Disable VID when it should be
+ - hwmon/lm87: Fix a division by zero
+ - hwmon/w83627hf: Don't assume bank 0
+ - hwmon/w83627hf: Fix setting fan min right after driver load
+ - i915: fix vbl swap allocation size.
+ - POWERPC: Fix platinumfb framebuffer
+ * Add stable release 2.6.23.7:
+ - NFS: Fix a writeback race...
+ - ocfs2: fix write() performance regression
+ - minixfs: limit minixfs printks on corrupted dir i_size (CVE-2006-6058)
+ * Add stable release 2.6.23.8:
+ - wait_task_stopped: Check p->exit_state instead of TASK_TRACED (CVE-2007-5500)
+ - TCP: Make sure write_queue_from does not begin with NULL ptr (CVE-2007-5501)
+ * Add stable release 2.6.23.9:
+ - ipw2200: batch non-user-requested scan result notifications
+ - USB: Nikon D40X unusual_devs entry
+ - USB: unusual_devs modification for Nikon D200
+ - softlockup: use cpu_clock() instead of sched_clock()
+ - softlockup watchdog fixes and cleanups
+ - x86: fix freeze in x86_64 RTC update code in time_64.c
+ - ntp: fix typo that makes sync_cmos_clock erratic
+ - x86: return correct error code from child_rip in x86_64 entry.S
+ - x86: NX bit handling in change_page_attr()
+ - x86: mark read_crX() asm code as volatile
+ - x86: fix off-by-one in find_next_zero_string
+ - i386: avoid temporarily inconsistent pte-s
+ - libcrc32c: keep intermediate crc state in cpu order
+ - geode: Fix not inplace encryption
+ - Fix divide-by-zero in the 2.6.23 scheduler code
+ - ACPI: VIDEO: Adjust current level to closest available one.
+ - libata: sata_sis: use correct S/G table size
+ - sata_sis: fix SCR read breakage
+ - reiserfs: don't drop PG_dirty when releasing sub-page-sized dirty file
+ - x86: disable preemption in delay_tsc()
+ - dmaengine: fix broken device refcounting
+ - nfsd4: recheck for secure ports in fh_verify
+ - knfsd: fix spurious EINVAL errors on first access of new filesystem
+ - raid5: fix unending write sequence
+ - oProfile: oops when profile_pc() returns ~0LU
+ - drivers/video/ps3fb: fix memset size error
+ - i2c/eeprom: Hide Sony Vaio serial numbers
+ - i2c/eeprom: Recognize VGN as a valid Sony Vaio name prefix
+ - i2c-pasemi: Fix NACK detection
+
+ -- maximilian attems <maks@debian.org> Fri, 30 Nov 2007 11:40:09 +0100
+
+linux-2.6 (2.6.22-6) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * [mips] Add IP22 (SGI Indy) patches from Thomas Bogendoerfer:
+ - Disable EARLY PRINTK because it breaks serial.
+ - fix wrong argument order.
+ - wrong check for second HPC. Closes: #448488
+
+ [ maximilian attems ]
+ * Add stable release 2.6.22.11 - minus ipv6 abi breaker:
+ - libertas: fix endianness breakage
+ - libertas: more endianness breakage
+ - Fix ROSE module unload oops.
+ - Add get_unaligned to ieee80211_get_radiotap_len
+ - Fix ipv6 redirect processing, leads to TAHI failures.
+ - i915: fix vbl swap allocation size.
+ - Fix ESP host instance numbering.
+ - Fix TCP MD5 on big-endian.
+ - Fix zero length socket write() semantics.
+ - Fix sys_ipc() SEMCTL on sparc64.
+ - Fix TCP initial sequence number selection.
+ - lockdep: fix mismatched lockdep_depth/curr_chain_hash
+ - V4L: ivtv: fix udma yuv bug
+ - Fix TCP's ->fastpath_cnt_hit handling.
+ - hwmon/lm87: Fix a division by zero
+ - hwmon/lm87: Disable VID when it should be
+ - hwmon/w83627hf: Fix setting fan min right after driver load
+ - hwmon/w83627hf: Don't assume bank 0
+ - netdrvr: natsemi: Fix device removal bug
+ - Fix ieee80211 handling of bogus hdrlength field
+ - mac80211: filter locally-originated multicast frames
+ - POWERPC: Fix handling of stfiwx math emulation
+ - dm9601: Fix receive MTU
+ - firewire: fix unloading of fw-ohci while devices are attached
+ - Fix cls_u32 error return handling.
+ - ACPI: disable lower idle C-states across suspend/resume
+ * Add stable release 2.6.22.12-rc1:
+ - genirq: cleanup mismerge artifact
+ - genirq: suppress resend of level interrupts
+ - genirq: mark io_apic level interrupts to avoid resend
+ - IB/uverbs: Fix checking of userspace object ownership
+ - minixfs: limit minixfs printks on corrupted dir i_size (CVE-2006-6058)
+ - param_sysfs_builtin memchr argument fix
+ - x86: fix global_flush_tlb() bug
+ - dm snapshot: fix invalidation deadlock
+ - Revert "x86_64: allocate sparsemem memmap above 4G"
+
+ [ Bastian Blank ]
+ * Update vserver patch to 2.2.0.5.
+ - Ignore symbols from never to be merged patch.
+
+ -- maximilian attems <maks@debian.org> Sun, 4 Nov 2007 17:35:51 +0100
+
+linux-2.6 (2.6.22-5) unstable; urgency=low
+
+ [ maximilian attems ]
+ * Add stable release 2.6.22.6:
+ - USB: allow retry on descriptor fetch errors
+ - PCI: lets kill the 'PCI hidden behind bridge' message
+ - Netfilter: Missing Kbuild entry for netfilter
+ - Fix soft-fp underflow handling.
+ - SPARC64: Fix sparc64 task stack traces.
+ - TCP: Do not autobind ports for TCP sockets
+ - DCCP: Fix DCCP GFP_KERNEL allocation in atomic context
+ - NET: Share correct feature code between bridging and bonding
+ - SNAP: Fix SNAP protocol header accesses.
+ - NET: Fix missing rcu unlock in __sock_create()
+ - IPv6: Invalid semicolon after if statement
+ - TCP: Fix TCP rate-halving on bidirectional flows.
+ - TCP: Fix TCP handling of SACK in bidirectional flows.
+ - uml: fix previous request size limit fix
+ - usb: add PRODUCT, TYPE to usb-interface events
+ - PPP: Fix PPP buffer sizing.
+ - ocfs2: Fix bad source start calculation during kernel writes
+ - signalfd: fix interaction with posix-timers
+ - signalfd: make it group-wide, fix posix-timers scheduling
+ - USB: fix DoS in pwc USB video driver
+ - sky2: don't clear phy power bits
+ - PCI: disable MSI on RS690
+ - PCI: disable MSI on RD580
+ - PCI: disable MSI on RX790
+ - IPV6: Fix kernel panic while send SCTP data with IP fragments
+ - i386: fix lazy mode vmalloc synchronization for paravirt
+ * Set abi to 3.
+ * Add stable release 2.6.22.7: (CVE-2007-4573)
+ - x86_64: Zero extend all registers after ptrace in 32bit entry path.
+ * Add stable release 2.6.22.8: (CVE-2007-4571)
+ - Convert snd-page-alloc proc file to use seq_file
+ * Add stable release 2.6.22.9:
+ - 3w-9xxx: Fix dma mask setting
+ - Fix pktgen src_mac handling.
+ - nfs: fix oops re sysctls and V4 support
+ - DVB: get_dvb_firmware: update script for new location of tda10046 firmware
+ - afs: mntput called before dput
+ - disable sys_timerfd()
+ - Fix "Fix DAC960 driver on machines which don't support 64-bit DMA"
+ - futex_compat: fix list traversal bugs
+ - MTD: Initialise s_flags in get_sb_mtd_aux()
+ - Fix sparc64 v100 platform booting.
+ - Fix IPV6 DAD handling
+ - ext34: ensure do_split leaves enough free space in both blocks
+ - dir_index: error out instead of BUG on corrupt dx dirs
+ - Fix oops in vlan and bridging code
+ - V4L: ivtv: fix VIDIOC_S_FBUF: new OSD values were never set
+ - crypto: blkcipher_get_spot() handling of buffer at end of page
+ - Fix datagram recvmsg NULL iov handling regression.
+ - Handle snd_una in tcp_cwnd_down()
+ - Fix TCP DSACK cwnd handling
+ - JFFS2: fix write deadlock regression
+ - hwmon: End of I/O region off-by-one
+ - Fix debug regression in video/pwc
+ - splice: fix direct splice error handling
+ - Fix race with shared tag queue maps
+ - Fix ipv6 source address handling.
+ - POWERPC: Flush registers to proper task context
+ - bcm43xx: Fix cancellation of work queue crashes
+ - Fix DAC960 driver on machines which don't support 64-bit DMA
+ - DVB: get_dvb_firmware: update script for new location of sp8870 firmware
+ - USB: fix linked list insertion bugfix for usb core
+ - Correctly close old nfsd/lockd sockets.
+ - Fix IPSEC AH4 options handling
+ - setpgid(child) fails if the child was forked by sub-thread
+ - sigqueue_free: fix the race with collect_signal()
+ - Fix decnet device address listing.
+ - Fix inet_diag OOPS.
+ - Leases can be hidden by flocks
+ - kconfig: oldconfig shall not set symbols if it does not need to
+ - MTD: Makefile fix for mtdsuper
+ - firewire: fw-ohci: ignore failure of pci_set_power_state
+ (fix suspend regression)
+ - ieee1394: ohci1394: fix initialization if built non-modular
+ - Fix device address listing for ipv4.
+ - Fix tc_ematch kbuild
+ - V4L: cx88: Avoid a NULL pointer dereference during mpeg_open()
+ - DVB: b2c2-flexcop: fix Airstar HD5000 tuning regression
+ - fix realtek phy id in forcedeth
+ - rpc: fix garbage in printk in svc_tcp_accept()
+ - Fix IPV6 append OOPS.
+ - Fix ipv6 double-sock-release with MSG_CONFIRM
+ - ACPI: Validate XSDT, use RSDT if XSDT fails
+ * Update vserver patch to 2.2.0.4.
+ * Add stable release 2.6.22.10:
+ - i386: Use global flag to disable broken local apic timer on AMD CPUs.
+ - Fix timer_stats printout of events/sec
+ - libata: update drive blacklists
+ - i2c-algo-bit: Read block data bugfix
+ - scsi_transport_spi: fix domain validation failure from incorrect width
+ setting
+ - Fix SMP poweroff hangs
+ - Fix ppp_mppe kernel stack usage.
+ - sky2: reduce impact of watchdog timer
+ - sky2: fix VLAN receive processing
+ - sky2: fix transmit state on resume
+ - SELinux: clear parent death signal on SID transitions
+ - NLM: Fix a circular lock dependency in lockd
+ - NLM: Fix a memory leak in nlmsvc_testlock
+
+ [ Martin Michlmayr ]
+ * [mips] Add a fix so qemu NE2000 will work again.
+ * [mipsel/r5k-cobalt] Enable MTD.
+ * [mips] Backport "Fix CONFIG_BUILD_ELF64 kernels with symbols in
+ CKSEG0" to fix crash on boot on IP32 (SGI O2). Closes: #444104.
+
+ [ Steve Langasek ]
+ * Set CONFIG_MATHEMU=y on alpha, which is required for proper fp math on
+ at least ev4-ev56 systems. Closes: #411813.
+ * linux-image packages need to depend on a newer version of coreutils,
+ because of the use of readlink -q -m inherited from kernel-package.
+ Closes: #413311.
+
+ [ Bastian Blank ]
+ * Fix tainted check in bug scripts.
+
+ [ dann frazier ]
+ * [ia64] Re-enable various unintentionally disabled config options
+
+ -- Maximilian Attems <maks@debian.org> Thu, 11 Oct 2007 13:31:38 +0000
+
+linux-2.6 (2.6.22-4) unstable; urgency=low
+
+ [ dann frazier ]
+ * [hppa] Use generic compat_sys_getdents (closes: #431773)
+
+ [ Martin Michlmayr ]
+ * [powerpc] Fix PS/2 keyboard detection on Pegasos (closes: #435378).
+
+ [ Emanuele Rocca ]
+ * [sparc] Add patch to fix PCI config space accesses on sun4u.
+ * [sparc] Disable CONFIG_SCSI_SCAN_ASYNC.
+
+ [ maximilian attems ]
+ * Add stable release 2.6.22.2:
+ - usb-serial: Fix edgeport regression on non-EPiC devices
+ - Missing header include in ipt_iprange.h
+ - drivers/video/macmodes.c:mac_find_mode() mustn't be __devinit
+ - Fix ipv6 tunnel endianness bug.
+ - aacraid: fix security hole
+ - USB: cdc-acm: fix sysfs attribute registration bug
+ - USB: fix warning caused by autosuspend counter going negative
+ - Fix sparc32 memset()
+ - Fix leak on /proc/lockdep_stats
+ - Fix leaks on /proc/{*/sched, sched_debug, timer_list, timer_stats}
+ - futex: pass nr_wake2 to futex_wake_op
+ - md: handle writes to broken raid10 arrays gracefully
+ - forcedeth bug fix: cicada phy
+ - forcedeth bug fix: vitesse phy
+ - forcedeth bug fix: realtek phy
+ - ACPI: dock: fix opps after dock driver fails to initialize
+ - pcmcia: give socket time to power down
+ - drm/i915: Fix i965 secured batchbuffer usage (CVE-2007-3851)
+ - Fix console write locking in sparc drivers.
+ - Sparc64 bootup assembler bug
+ - IPV6: /proc/net/anycast6 unbalanced inet6_dev refcnt
+ - make timerfd return a u64 and fix the __put_user
+ - Fix error queue socket lookup in ipv6
+ - Input: lifebook - fix an oops on Panasonic CF-18
+ - readahead: MIN_RA_PAGES/MAX_RA_PAGES macros
+ - V4L: Add check for valid control ID to v4l2_ctrl_next
+ - V4L: ivtv: fix broken VBI output support
+ - V4L: ivtv: fix DMA timeout when capturing VBI + another stream
+ - V4L: ivtv: Add locking to ensure stream setup is atomic
+ - V4L: wm8775/wm8739: Fix memory leak when unloading module
+ - do not limit locked memory when RLIMIT_MEMLOCK is RLIM_INFINITY
+ - Include serial_reg.h with userspace headers (closes: #433755)
+ - TCP FRTO retransmit bug fix
+ - Fix rfkill IRQ flags.
+ - nfsd: fix possible read-ahead cache and export table corruption
+ - nfsd: fix possible oops on re-insertion of rpcsec_gss modules
+ - jbd commit: fix transaction dropping
+ - jbd2 commit: fix transaction dropping
+ - softmac: Fix ESSID problem
+ - uml: limit request size on COWed devices
+ - UML: exports for hostfs
+ - splice: fix double page unlock
+ - cfq-iosched: fix async queue behaviour
+ - cr_backlight_probe() allocates too little storage for struct cr_panel
+ - sx: switch subven and subid values
+ - hugetlb: fix race in alloc_fresh_huge_page()
+ - KVM: SVM: Reliably detect if SVM was disabled by BIOS
+ - dm io: fix another panic on large request
+ - md: raid10: fix use-after-free of bio
+ - fs: 9p/conv.c error path fix
+ - Fix sparc32 udelay() rounding errors.
+ - sony-laptop: fix bug in event handling
+ - eCryptfs: ecryptfs_setattr() bugfix
+ - Hangup TTY before releasing rfcomm_dev
+ - dm io: fix panic on large request
+ - dm raid1: fix status
+ - dm snapshot: permit invalid activation
+ - "ext4_ext_put_in_cache" uses __u32 to receive physical block number
+ - destroy_workqueue() can livelock
+ - USB: fix for ftdi_sio quirk handling
+ - Fix TC deadlock.
+ - Fix IPCOMP crashes.
+ - gen estimator timer unload race
+ - Netfilter: Fix logging regression
+ - Fix user struct leakage with locked IPC shem segment
+ - Fix reported task file values in sense data
+ - gen estimator deadlock fix
+ - Netpoll leak
+ - dm: disable barriers
+ - firewire: fw-sbp2: set correct maximum payload (fixes CardBus adapters)
+ - fw-ohci: fix "scheduling while atomic"
+ - firewire: fix memory leak of fw_request instances
+ - ieee1394: revert "sbp2: enforce 32bit DMA mapping"
+ - libata: add FUJITSU MHV2080BH to NCQ blacklist
+ - i386: HPET, check if the counter works
+ - CPU online file permission
+ - acpi-cpufreq: Proper ReadModifyWrite of PERF_CTL MSR
+ - Keep rfcomm_dev on the list until it is freed
+ - SCTP scope_id handling fix
+ - Fix ipv6 link down handling.
+ - Fix TCP IPV6 MD5 bug.
+ - sysfs: release mutex when kmalloc() failed in sysfs_open_file().
+ - nf_conntrack: don't track locally generated special ICMP error
+ * Bump abi due to firewire, ivtv and xrfm changes.
+ * Add stable release 2.6.22.3:
+ - fix oops in __audit_signal_info()
+ - direct-io: fix error-path crashes
+ - powerpc: Fix size check for hugetlbfs
+ - stifb: detect cards in double buffer mode more reliably
+ - pata_atiixp: add SB700 PCI ID
+ - PPC: Revert "[POWERPC] Add 'mdio' to bus scan id list for platforms
+ with QE UEC"
+ - random: fix bound check ordering (CVE-2007-3105)
+ - softmac: Fix deadlock of wx_set_essid with assoc work
+ - PPC: Revert "[POWERPC] Don't complain if size-cells == 0 in prom_parse()"
+ - ata_piix: update map 10b for ich8m
+ - CPUFREQ: ondemand: fix tickless accounting and software coordination bug
+ - CPUFREQ: ondemand: add a check to avoid negative load calculation
+ * Add stable release 2.6.22.4:
+ - Reset current->pdeath_signal on SUID binary execution (CVE-2007-3848)
+ * Add stable release 2.6.22.5:
+ - x86_64: Check for .cfi_rel_offset in CFI probe
+ - x86_64: Change PMDS invocation to single macro
+ - i386: Handle P6s without performance counters in nmi watchdog
+ - revert "x86, serial: convert legacy COM ports to platform devices"
+ - ACPICA: Fixed possible corruption of global GPE list
+ - ACPICA: Clear reserved fields for incoming ACPI 1.0 FADTs
+ - i386: Fix double fault handler
+ - JFFS2 locking regression fix.
+ - r8169: avoid needless NAPI poll scheduling
+ - Linux 2.6.22.5
+ - AVR32: Fix atomic_add_unless() and atomic_sub_unless()
+ - i386: allow debuggers to access the vsyscall page with compat vDSO
+ - hwmon: (smsc47m1) restore missing name attribute
+ - hwmon: fix w83781d temp sensor type setting
+ - Hibernation: do not try to mark invalid PFNs as nosave
+ - sky2: restore workarounds for lost interrupts
+ - sky2: carrier management
+ - sky2: check for more work before leaving NAPI
+ - sky2: check drop truncated packets
+ - forcedeth: fix random hang in forcedeth driver when using netconsole
+ - libata: add ATI SB700 device IDs to AHCI driver
+
+ [ dann frazier ]
+ * [ia64] Restore config cleanup now that its safe to break the ABI
+
+ [ Bastian Blank ]
+ * Update vserver patch to 2.2.0.3.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 30 Aug 2007 20:19:44 +0200
+
+linux-2.6 (2.6.22-3) unstable; urgency=low
+
+ [ dann frazier ]
+ * [ia64] Config cleanup in 2.6.22-2 broke the ABI; revert most of it
+ for now (everything but the efivars and sym53c8xx modules)
+
+ [ Martin Michlmayr ]
+ * [mipsel/r5k-cobalt] Fix a typo in the config file.
+ * [mipsel/4kc-malta] Update the config file, thanks Aurelien Jarno.
+ * [mipsel] Add patch from Yoichi Yuasa to fix IDE on Cobalt.
+
+ -- Bastian Blank <waldi@debian.org> Sun, 29 Jul 2007 13:47:38 +0200
+
+linux-2.6 (2.6.22-2) unstable; urgency=low
+
+ [ Steve Langasek ]
+ * [alpha] request_irq-retval.patch: capture the return value of all
+ request_irq() calls in sys_titan.c to suppress the warning (and
+ build failure with -Werror); failures still aren't being handled, but
+ there's nothing that needs to be done -- or nothing that can be done
+ -- if these requests fail anyway.
+
+ [ Christian T. Steigies ]
+ * Add module.lds to kernel headers (closes: #396220)
+ * Enable INPUT_UINPUT on mac
+ * Add 2.6.22 patches from linux-m68k CVS
+
+ [ maximilian attems ]
+ * Add stable release 2.6.22.1:
+ - nf_conntrack_h323: add checking of out-of-range on choices' index values
+ (CVE-2007-3642)
+
+ [ dann frazier ]
+ * [ia64] Re-enable various config options which were unintentionally
+ disabled somewhere between 2.6.21 and 2.6.22
+ * [ia64] Re-enable vserver flavour - this was somehow lost when 2.6.22
+ was merged from trunk to the sid branch
+
+ [ Bastian Blank ]
+ * Update vserver patch to 2.2.0.3-rc1.
+
+ -- Bastian Blank <waldi@debian.org> Mon, 23 Jul 2007 09:38:01 +0200
+
+linux-kbuild-2.6 (2.6.22-1) unstable; urgency=low
+
+ * New upstream version.
+ * Don't fail if no module is specified.
+
+ -- Bastian Blank <waldi@debian.org> Tue, 17 Jul 2007 23:14:23 +0200
+
+linux-2.6 (2.6.22-1) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Drop asfs options.
+ * Drop linux-libc-headers references.
+ * Update vserver patch to 2.2.0-rc5.
+
+ [ maximilian attems ]
+ * Fullfils policy 3.7.2.2.
+ * Add Sempron to the k7 image description (closes: #384737)
+ Thanks Robert Millan <rmh@aybabtu.com>.
+ * [powerpc] Enable CONFIG_ADB_PMU_LED.
+ * [hppa] Disable a bunch of topconfig enabled fb devices. Thanks Frank
+ Lichtenheld <djpig@debian.org> for build fix.
+
+ [ Christian T. Steigies ]
+ * Add module.lds to kernel headers
+ * Enable INPUT_UINPUT on mac
+ * Add 2.6.22 patches from linux-m68k CVS
+
+ [ dann frazier ]
+ * Enable vserver flavour for ia64 (closes: #423232)
+
+ -- Bastian Blank <waldi@debian.org> Sun, 15 Jul 2007 15:03:40 +0200
+
+linux-2.6 (2.6.22~rc5-1~experimental.1) experimental; urgency=low
+
+ [ Bastian Blank ]
+ * [powerpc]: Disable prep.
+ * [powerpc]: Disable apm emulation.
+ * Drop inactive members from Uploaders.
+
+ [ maximilian attems ]
+ * Cleanup configs of old unused variables.
+ * Enable TCP_CONG_YEAH, TCP_CONG_ILLINOIS, NF_CONNTRACK_SANE, DM_DELAY,
+ GIGASET_M101, SATA_INIC162X, VIDEO_IVTV, USB_ZR364XX, INFINIBAND_CXGB3,
+ MLX4_INFINIBAND, SPI_AT25, MFD_SM501, DVB_USB_M920X, DVB_USB_GL861,
+ DVB_USB_AU6610, DVB_USB_OPERA1, SENSORS_AD7418, SENSORS_ADM1029,
+ SENSORS_F75375S, SENSORS_CORETEMP, SENSORS_MAX6650, SENSORS_APPLESMC,
+ I2C_SIMTEC, I2C_TINY_USB, SC92031, LIBERTAS_USB, RFKILL, RFKILL_INPUT,
+ MTD_UBI, SND_USB_CAIAQ, SND_USB_CAIAQ_INPUT, USB_BERRY_CHARGE,
+ RTC_DRV_MAX6900, SUNRPC_BIND34, SND_PORTMAN2X4, FB_VT8623, FUSION_LAN,
+ DISPLAY_SUPPORT, FB_ARK, FB_SM501
+ and disable SCSI_ESP_CORE, SPI_SPIDEV, CRYPT_CRYPTD, SYSV68_PARTITION,
+ MOUSE_PS2_TOUCHKIT, INPUT_POLLDEV in topconfig.
+ * [amd64, i386]: Take care of the renaming acpi-ibm to thinkpad-acpi.
+ Enable KINGSUN_DONGLE, AF_RXRPC, RXKAD, MTD_NAND_PLATFORM, BLINK, PHANTOM,
+ BACKLIGHT_PROGEAR, FB_HECUBA, FB_LE80578, FB_CARILLO_RANCH.
+ Disable OSS_OBSOLETE.
+ * Enable WLAN_PRE80211 and WLAN_80211 on all archs with NET_RADIO enabled.
+ * Fix RTC_INTF_{DEV,SYSFS,PROC}=y where enabled modular.
+ * Enable new wirless stack mac80211 and improved wireless conf api.
+ * Enable new USB Touchscreen Driver on all configs with touchscreens.
+ * Enable the newly added crypto algorythm: fcrypt, pcbc and camellia.
+ * Unify CONFIG_TR to toplevel config, also enable new drivers 3C359
+ and SMCTR.
+ * Enable the moved USB tablets config options where wacom is enabled.
+ * [i386] Enable driver for Crystalfontz 128x64 2-color LCD.
+ * [amd64] Enable KS0108 LCD controller.
+ * Enable the new firewire stack labeled to be more simple and robust.
+ * [i386] Enable VMI paravirtualized interface.
+ * [powerpc] Enable fb for IBM GXT4500P adaptor.
+ * [amd64] Enable timerstats too.
+
+ [ Martin Michlmayr ]
+ * mipsel/r5k-cobalt: Use the new RTC system.
+
+ [ dann frazier ]
+ * Add Xen licensing info to the copyright file. (closes: #368912)
+
+ [ Gordon Farquharson ]
+ * arm: Mark CHELSIO_T3, NETXEN_NIC, BCM43XX, VIDEO_BT848,
+ DVB_B2C2_FLEXCOP, and DVB_BUDGET as broken on ARM.
+ * arm/ixp4xx: Add support for the new generic I2C GPIO driver on the
+ NSLU2 and the NAS100D. Thanks to Michael-Luke Jones and Rod Whitby.
+ * arm/ixp4xx: Update Artop PATA support patch for the NAS 100d.
+
+ [ Christian T. Steigies ]
+ * m68k: Disable already included patches (611, 618, 630)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 19 Jun 2007 17:49:52 +0200
+
+linux-2.6 (2.6.21-6) unstable; urgency=low
+
+ * Add stable release 2.6.21.6:
+ - nf_conntrack_h323: add checking of out-of-range on choices' index values
+ (CVE-2007-3642)
+ * Update vserver patch to 2.2.0.
+
+ -- Bastian Blank <waldi@debian.org> Tue, 10 Jul 2007 18:36:17 +0200
+
+linux-2.6 (2.6.21-5) unstable; urgency=low
+
+ [ Christian T. Steigies ]
+ * [m68k] Add atari isa and scsi fixes
+
+ [ maximilian attems ]
+ * Add stable release 2.6.21.4:
+ - cpuset: prevent information leak in cpuset_tasks_read (CVE-2007-2875)
+ - random: fix error in entropy extraction (CVE-2007-2453 1 of 2)
+ - random: fix seeding with zero entropy (CVE-2007-2453 2 of 2)
+ - NETFILTER: {ip, nf}_conntrack_sctp: fix remotely triggerable NULL ptr
+ dereference (CVE-2007-2876)
+ * Add stable release 2.6.21.5:
+ - acpi: fix potential call to a freed memory section.
+ - USB: set the correct Interrupt interval in usb_bulk_msg
+ - i386: Fix K8/core2 oprofile on multiple CPUs
+ - ntfs_init_locked_inode(): fix array indexing
+ - ALSA: wm8750 typo fix
+ - neofb: Fix pseudo_palette array overrun in neofb_setcolreg
+ - e1000: disable polling before registering netdevice
+ - timer statistics: fix race
+ - x86: fix oprofile double free
+ - ALSA: usb-audio: explicitly match Logitech QuickCam
+ - zd1211rw: Add AL2230S RF support
+ - IPV4: Correct rp_filter help text.
+ - Fix AF_UNIX OOPS
+ - ICMP: Fix icmp_errors_use_inbound_ifaddr sysctl
+ - NET: Fix BMSR_100{HALF,FULL}2 defines in linux/mii.h
+ - SPARC64: Fix _PAGE_EXEC_4U check in sun4u I-TLB miss handler.
+ - SPARC64: Don't be picky about virtual-dma values on sun4v.
+ - SPARC64: Fix two bugs wrt. kernel 4MB TSB.
+ - cciss: fix pci_driver.shutdown while device is still active
+ - fix compat console unimap regression
+ - timer stats: speedups
+ - SPARC: Linux always started with 9600 8N1
+ - pci_ids: update patch for Intel ICH9M
+ - PCI: quirk disable MSI on via vt3351
+ - UML - Improve host PTRACE_SYSEMU check
+ - NET: parse ip:port strings correctly in in4_pton
+ - Char: cyclades, fix deadlock
+ - IPSEC: Fix panic when using inter address familiy IPsec on loopback.
+ - TCP: Use default 32768-61000 outgoing port range in all cases.
+ - TG3: Fix link problem on Dell's onboard 5906.
+ - fuse: fix mknod of regular file
+ - md: Avoid overflow in raid0 calculation with large components.
+ - md: Don't write more than is required of the last page of a bitmap
+ - make freezeable workqueues singlethread
+ - tty: fix leakage of -ERESTARTSYS to userland
+ - V4L/DVB (5593): Budget-ci: Fix tuning for TDM 1316 (160..200 MHz)
+ - Input: i8042 - fix AUX port detection with some chips
+ - SCSI: aacraid: Correct sa platform support.
+ (Was: [Bug 8469] Bad EIP value on pentium3 SMP kernel-2.6.21.1)
+ - BLUETOOTH: Fix locking in hci_sock_dev_event().
+ - hpt366: don't check enablebits for HPT36x
+ - ieee1394: eth1394: bring back a parent device
+ - NET: Fix race condition about network device name allocation.
+ - ALSA: hda-intel - Probe additional slots only if necessary
+ - ALSA: hda-intel - Fix detection of audio codec on Toshiba A100
+ - ahci: disable 64bit dma on sb600
+ - i386: HPET, check if the counter works
+ - Ignore bogus ACPI info for offline CPUs
+ - NOHZ: Rate limit the local softirq pending warning output
+ - Prevent going idle with softirq pending
+ - Work around Dell E520 BIOS reboot bug
+ - NET: "wrong timeout value" in sk_wait_data() v2
+ - IPV6 ROUTE: No longer handle ::/0 specially.
+ - x86_64: allocate sparsemem memmap above 4G
+ * Bump ABI to 2.
+
+ [ Bastian Blank ]
+ * Back out ABI fixing changes.
+ * Update vserver patch to 2.2.0-rc3.
+
+ -- Bastian Blank <waldi@debian.org> Fri, 22 Jun 2007 12:39:47 +0200
+
+linux-2.6 (2.6.21-4) unstable; urgency=low
+
+ * [powerpc] Fix mkvmlinuz support.
+ * [s390] Add exception handler for diagnose 224.
+
+ -- Bastian Blank <waldi@debian.org> Sat, 26 May 2007 14:08:44 +0200
+
+linux-2.6 (2.6.21-3) unstable; urgency=low
+
+ [ Gordon Farquharson ]
+ * arm/ixp4xx: Add patch to set NSLU2 timer frequency.
+
+ [ maximilian attems ]
+ * sparc64: enable USB_SERIAL. (closes: #412740)
+ * Apply stable 2.6.21.1.
+ * Add stable release 2.6.21.2:
+ - slob: fix page order calculation on not 4KB page
+ - libata-sff: Undo bug introduced with pci_iomap changes
+ - kbuild: fixdep segfault on pathological string-o-death
+ - IPMI: fix SI address space settings
+ - IPV6: Reverse sense of promisc tests in ip6_mc_input
+ - iop: fix iop_getttimeoffset
+ - iop13xx: fix i/o address translation
+ - arm: fix handling of svc mode undefined instructions
+ - CPUFREQ: powernow-k7: fix MHz rounding issue with perflib
+ - CPUFREQ: Support rev H AMD64s in powernow-k8
+ - CPUFREQ: Correct revision mask for powernow-k8
+ - JFS: Fix race waking up jfsIO kernel thread
+ - IPV6: Send ICMPv6 error on scope violations.
+ - SPARC64: Add missing cpus_empty() check in hypervisor xcall handling.
+ - SPARC64: Fix recursion in PROM tree building.
+ - SERIAL SUNHV: Add an ID string.
+ - SPARC64: Bump PROMINTR_MAX to 32.
+ - SPARC64: Be more resiliant with PCI I/O space regs.
+ - oom: fix constraint deadlock
+ - fix for bugzilla 8426: massive slowdown on SCSI CD/DVD drive connected to
+ mptspi driver
+ - x86_64 : Fix vgettimeofday()
+ - IPV6: Fix slab corruption running ip6sic
+ - IPSEC: Check validity of direction in xfrm_policy_byid
+ - CRYPTO: api: Read module pointer before freeing algorithm
+ - NET_SCHED: prio qdisc boundary condition
+ - reiserfs: suppress lockdep warning
+ - USB HID: hiddev - fix race between hiddev_send_event() and
+ hiddev_release()
+ - NETFILTER: {ip,nf}_nat_proto_gre: do not modify/corrupt GREv0 packets
+ through NAT
+ - fix leaky resv_huge_pages when cpuset is in use
+ - ACPI: Fix 2.6.21 boot regression on P4/HT
+ - TG3: Fix TSO bugs.
+ - TG3: Remove reset during MAC address changes.
+ - TG3: Update version and reldate.
+ - BNX2: Fix TSO problem with small MSS.
+ - BNX2: Block MII access when ifdown.
+ - BNX2: Save PCI state during suspend.
+ - BNX2: Update version and reldate.
+ - sis900: Allocate rx replacement buffer before rx operation
+ - knfsd: Avoid use of unitialised variables on error path when nfs exports.
+ - knfsd: rpc: fix server-side wrapping of krb5i replies
+ - md: Avoid a possibility that a read error can wrongly propagate through
+ - md/raid1 to a filesystem.
+ - fat: fix VFAT compat ioctls on 64-bit systems
+ - NETFILTER: {ip,nf}_conntrack: fix use-after-free in helper destroy
+ callback invocation
+ - ppp: Fix ppp_deflate issues with recent zlib_inflate changes
+ - NETPOLL: Fix TX queue overflow in trapped mode.
+ - NETPOLL: Remove CONFIG_NETPOLL_RX
+ - cxacru: Fix infinite loop when trying to cancel polling task
+ - TCP: zero out rx_opt in tcp_disconnect()
+ - ipv6: track device renames in snmp6
+ - skge: default WOL should be magic only (rev2)
+ - skge: allow WOL except for known broken chips
+ - sky2: allow 88E8056
+ - sky2: 88e8071 support not ready
+ - skge: crash on shutdown/suspend
+ - sky2: fix oops on shutdown
+ - udf: decrement correct link count in udf_rmdir
+ - ALSA: hda-codec - Fix resume of STAC92xx codecs
+ - sata_via: add missing PM hooks
+ - driver-core: don't free devt_attr till the device is released
+ - pci-quirks: disable MSI on RS400-200 and RS480
+ - highres/dyntick: prevent xtime lock contention
+ - clocksource: fix resume logic
+ - smc911x: fix compilation breakage wjen debug is on
+ - SCTP: Fix sctp_getsockopt_local_addrs_old() to use local storage.
+ - SCTP: Correctly copy addresses in sctp_copy_laddrs
+ - SCTP: Prevent OOPS if hmac modules didn't load
+ - IPV6: Do no rely on skb->dst before it is assigned.
+ - IPV6 ROUTE: Assign rt6i_idev for ip6_{prohibit,blk_hole}_entry.
+
+ [ Christian T. Steigies ]
+ * m68k: enable ATARI_SCSI and ATARI_ROM_ISA
+
+ [ Bastian Blank ]
+ * Fix linux/version.h in linux-libc-dev.
+ * Make it possible to specifiy special CFLAGS.
+ * [hppa] Reenable.
+ * [hppa] Workaround hppa64 failure.
+ * [hppa] Fix debugging in lws syscalls.
+ * Fix abi change.
+ * Add stable release 2.6.21.3:
+ - [PATCH] GEODE-AES: Allow in-place operations [CVE-2007-2451]
+
+ -- Bastian Blank <waldi@debian.org> Fri, 25 May 2007 10:57:48 +0200
+
+linux-kbuild-2.6 (2.6.21-1) unstable; urgency=low
+
+ * New upstream version.
+
+ -- Bastian Blank <waldi@debian.org> Fri, 18 May 2007 23:45:14 +0200
+
+linux-2.6 (2.6.21-2) unstable; urgency=low
+
+ [ Christian T. Steigies ]
+ * m68k: fix atari scc patch
+ * m68k: install compressed vmlinuz images so the post-inst script can find it
+
+ [ Steve Langasek ]
+ * [alpha] isa-mapping-support.patch: add isa_page_to_bus and
+ isa_bus_to_virt defines to complement the existing isa_virt_to_bus
+ define; untested, but these should all be straightforward on alpha and
+ defining them is certainly a better option for getting user feedback
+ than disabling the affected drivers.
+
+ [ Bastian Blank ]
+ * [powerpc] Readd mkvmlinuz support. (closes: #419033)
+ * [sparc]: Disable sparc32 image.
+ * [hppa]: Temporary disable all images.
+
+ -- Bastian Blank <waldi@debian.org> Fri, 18 May 2007 19:52:36 +0200
+
+linux-2.6 (2.6.21-1) unstable; urgency=low
+
+ [ maximilian attems ]
+ * New upstream release see http://kernelnewbies.org/Linux_2_6_21
+ (closes: #423874)
+ * Disable CONFIG_IP_ROUTE_MULTIPATH_CACHED in topconfig.
+ * Enable CONFIG_IP6_NF_MATCH_MH, CONFIG_CHELSIO_T3, CONFIG_USB_NET_DM9601,
+ CONFIG_NETFILTER_XT_TARGET_TCPMSS, CONFIG_RTC_DRV_CMOS,
+ CONFIG_ASUS_LAPTOP, CONFIG_SONY_LAPTOP, CONFIG_DVB_TUNER_QT1010,
+ CONFIG_USB_IOWARRIOR, CONFIG_ATL1 in topconfig.
+ * [i386] Enable CONFIG_ACPI_BAY, CONFIG_X86_LONGHAUL, CONFIG_BLK_DEV_DELKIN,
+ CONFIG_BLK_DEV_IT8213, CONFIG_BLK_DEV_TC86C001, CONFIG_INPUT_ATLAS_BTNS,
+ CONFIG_SENSORS_ADM1029, CONFIG_FB_SVGALIB, CONFIG_FB_S3,
+ CONFIG_USB_KC2190, CONFIG_KS0108.
+ * Add stable release 2.6.21.1:
+ - IPV4: Fix OOPS'er added to netlink fib.
+ - IPV6: Fix for RT0 header ipv6 change.
+ * [i386] Enable CONFIG_NO_HZ, CONFIG_HIGH_RES_TIMERS for dynticks and true
+ high-resolution timers.
+ * [i386] Enable CONFIG_TIMER_STATS to collect stats about kernel/userspace
+ timer aka power usage (see powertop). (closes: #423694)
+ * [i386] Disable obsolete CONFIG_IRQBALANCE due to bad timer behaviour.
+
+ [ Martin Michlmayr ]
+ * Add armel (arm with EABI) support. Thanks, Lennert Buytenhek and
+ Joey Hess. (closes: #410853)
+ * Mark CHELSIO_T3 as broken on ARM.
+ * Take arch/arm/tools/mach-types from current git to fix build failure
+ because MACH_TYPE_EP80219 is not defined.
+ * mips/sb1: Don't build CONFIG_ATA into the kernel.
+ * mips/sb1: Unset CONFIG_USB_{KBD,MOUSE} since the generic HID is used.
+ * arm/iop32x: Don't build CONFIG_ATA into the kernel.
+ * arm/ixp4xx: Enable more SATA drivers.
+ * arm/ixp4xx: Enable PATA_ARTOP which is needed by the nas100d.
+ * arm/ixp4xx: Set CONFIG_USB_EHCI_TT_NEWSCHED.
+ * mips/4kc-malta: Add an image for the MIPS Malta board. Thanks,
+ Aurelien Jarno. (closes: #421377)
+
+ [ Emanuele Rocca ]
+ * sparc: Enable CONFIG_SCSI_QLOGIC_1280. (closes: #423177)
+
+ [ Christian T. Steigies ]
+ * Add m68k patches for 2.6.21
+ * Add type: plain to [image] in arch/m68k/defines to fix missing
+ Modules.symvers problem
+
+ [ Steve Langasek ]
+ * Revert change to disable image building on alpha.
+
+ [ Bastian Blank ]
+ * Update vserver patch to 2.2.0-rc1.
+
+ -- Bastian Blank <waldi@debian.org> Wed, 16 May 2007 13:46:38 +0200
+
+linux-2.6 (2.6.20-3) unstable; urgency=low
+
+ [ Gordon Farquharson ]
+ * arm: Mark CONFIG_MTD_NAND_CAFE and CONFIG_NETXEN_NIC as broken to
+ fix FTBFS.
+
+ [ Bastian Blank ]
+ * Disable new pata drivers. (closes: #419458)
+ * Disable pata in ata_piix.
+
+ -- Bastian Blank <waldi@debian.org> Tue, 24 Apr 2007 09:54:44 +0200
+
+linux-2.6 (2.6.20-2) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Rename linux-libc-headers into linux-libc-dev.
+ * [mips] Drop sb1250 uart support.
+ * [alpha] Temporary disable alpha images.
+ * Add stable release 2.6.20.7:
+ - Linux 2.6.20.7
+ - Update libata drive blacklist to the latest from 2.6.21
+ - fix page leak during core dump
+ - revert "retries in ext4_prepare_write() violate ordering requirements"
+ - revert "retries in ext3_prepare_write() violate ordering requirements"
+ - libata: Clear tf before doing request sense (take 3)
+ - fix lba48 bug in libata fill_result_tf()
+ - ahci.c: walkaround for SB600 SATA internal error issue
+ - libata bugfix: preserve LBA bit for HDIO_DRIVE_TASK
+ - softmac: avoid assert in ieee80211softmac_wx_get_rate
+ - knfsd: allow nfsd READDIR to return 64bit cookies
+ - Fix TCP slow_start_after_idle sysctl
+ - Fix tcindex classifier ABI borkage...
+ - Fix IPSEC replay window handling
+ - Fix TCP receiver side SWS handling.
+ - Fix scsi sense handling
+ - Fix length validation in rawv6_sendmsg()
+ - NETFILTER: ipt_CLUSTERIP: fix oops in checkentry function
+ - 8139too: RTNL and flush_scheduled_work deadlock
+ - Fix calculation for size of filemap_attr array in md/bitmap.
+ - HID: Do not discard truncated input reports
+ - DVB: pluto2: fix incorrect TSCR register setting
+ - DVB: tda10086: fix DiSEqC message length
+ - sky2: phy workarounds for Yukon EC-U A1
+ - sky2: turn on clocks when doing resume
+ - sky2: turn carrier off when down
+ - skge: turn carrier off when down
+ - sky2: reliable recovery
+ - i386: fix file_read_actor() and pipe_read() for original i386 systems
+ - kbuild: fix dependency generation
+
+ [ dann frazier ]
+ * [hppa] Add parisc arch patch from Kyle McMartin
+ * [hppa] Enable CONFIG_TULIP_MMIO (closes: #332962)
+ * [hppa] Disable ni52 driver, it doesn't build (and wouldn't work if it did)
+
+ -- Bastian Blank <waldi@debian.org> Sun, 15 Apr 2007 16:04:16 +0200
+
+linux-kbuild-2.6 (2.6.20-1) unstable; urgency=low
+
+ * New upstream version.
+ * modpost: Support -w.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 12 Apr 2007 06:53:00 +0200
+
+linux-2.6 (2.6.20-1) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * mipsel: Drop DECstation support (both r3k-kn02 and r4k-kn04).
+ * arm: Drop RiscPC (rpc) support.
+ * arm: Update configs for 2.6.19-rc6.
+ * arm: source drivers/ata/Kconfig so SATA can be enabled on ARM.
+ * arm/footbridge: Unset SATA.
+ * arm/s3c2410: Drop this flavour since no such device is supported
+ in debian-installer and the ARM build resources are limited.
+
+ [ Sven Luther ]
+ * [powerpc] Added Genesi Efika support patch
+
+ [ Bastian Blank ]
+ * Remove legacy pty support. (closes: #338404)
+ * Enable new scsi parts.
+ * powerpc: Enable ibmvscsis.
+ * Add stable release 2.6.20.1:
+ - Linux 2.6.20.1
+ - [PATCH] Fix a free-wrong-pointer bug in nfs/acl server (CVE-2007-0772)
+ * Add stable release 2.6.20.2:
+ - Linux 2.6.20.2
+ - IPV6: Handle np->opt being NULL in ipv6_getsockopt_sticky() [CVE-2007-1000]
+ - x86-64: survive having no irq mapping for a vector
+ - Fix buffer overflow in Omnikey CardMan 4040 driver (CVE-2007-0005)
+ - TCP: Fix minisock tcp_create_openreq_child() typo.
+ - gfs2: fix locking mistake
+ - ATA: convert GSI to irq on ia64
+ - pktcdvd: Correctly set cmd_len field in pkt_generic_packet
+ - video/aty/mach64_ct.c: fix bogus delay loop
+ - revert "drivers/net/tulip/dmfe: support basic carrier detection"
+ - throttle_vm_writeout(): don't loop on GFP_NOFS and GFP_NOIO allocations
+ - fix section mismatch warning in lockdep
+ - ueagle-atm.c needs sched.h
+ - kvm: Fix asm constraint for lldt instruction
+ - lockdep: forward declare struct task_struct
+ - Char: specialix, isr have 2 params
+ - buffer: memorder fix
+ - kernel/time/clocksource.c needs struct task_struct on m68k
+ - m32r: build fix for processors without ISA_DSP_LEVEL2
+ - hugetlb: preserve hugetlb pte dirty state
+ - enable mouse button 2+3 emulation for x86 macs
+ - v9fs_vfs_mkdir(): fix a double free
+ - ufs: restore back support of openstep
+ - Fix MTRR compat ioctl
+ - kexec: Fix CONFIG_SMP=n compilation V2 (ia64)
+ - NLM: Fix double free in __nlm_async_call
+ - RPM: fix double free in portmapper code
+ - Revert "[PATCH] LOG2: Alter get_order() so that it can make use of ilog2() on a constant"
+ - Backport of psmouse suspend/shutdown cleanups
+ - USB: usbnet driver bugfix
+ - sched: fix SMT scheduler bug
+ - tty_io: fix race in master pty close/slave pty close path
+ - forcedeth: disable msix
+ - export blk_recount_segments
+ - Fix reference counting (memory leak) problem in __nfulnl_send() and callers related to packet queueing.
+ - Fix anycast procfs device leak
+ - Don't add anycast reference to device multiple times
+ - Fix TCP MD5 locking.
+ - Fix %100 cpu spinning on sparc64
+ - Fix skb data reallocation handling in IPSEC
+ - Fix xfrm_add_sa_expire() return value
+ - Fix interrupt probing on E450 sparc64 systems
+ - HID: fix possible double-free on error path in hid parser
+ - POWERPC: Fix performance monitor exception
+ - libata: add missing CONFIG_PM in LLDs
+ - libata: add missing PM callbacks
+ - bcm43xx: Fix assertion failures in interrupt handler
+ - mmc: Power quirk for ENE controllers
+ - UML - Fix 2.6.20 hang
+ - fix umask when noACL kernel meets extN tuned for ACLs
+ - sata_sil: ignore and clear spurious IRQs while executing commands by polling
+ - swsusp: Fix possible oops in userland interface
+ - Fix posix-cpu-timer breakage caused by stale p->last_ran value
+ - V4L: cx88-blackbird: allow usage of 376836 and 262144 sized firmware images
+ - V4L: fix cx25840 firmware loading
+ - DVB: digitv: open nxt6000 i2c_gate for TDED4 tuner handling
+ - DVB: cxusb: fix firmware patch for big endian systems
+ - V4L: pvrusb2: Handle larger cx2341x firmware images
+ - V4L: pvrusb2: Fix video corruption on stream start
+ - dvbdev: fix illegal re-usage of fileoperations struct
+ - md: Fix raid10 recovery problem.
+ - bcm43xx: fix for 4309
+ - i386: Fix broken CONFIG_COMPAT_VDSO on i386
+ - x86: Don't require the vDSO for handling a.out signals
+ - x86_64: Fix wrong gcc check in bitops.h
+ - sky2: transmit timeout deadlock
+ - sky2: dont flush good pause frames
+ - Fix oops in xfrm_audit_log()
+ - Prevent pseudo garbage in SYN's advertized window
+ - Fix IPX module unload
+ - Clear TCP segmentation offload state in ipt_REJECT
+ - Fix atmarp.h for userspace
+ - UHCI: fix port resume problem
+ - Fix recently introduced problem with shutting down a busy NFS server.
+ - Avoid using nfsd process pools on SMP machines.
+ - EHCI: turn off remote wakeup during shutdown
+ - IPV6: HASHTABLES: Use appropriate seed for caluculating ehash index.
+ - MTD: Fatal regression in drivers/mtd/redboot.c in 2.6.20
+ - Kconfig: FAULT_INJECTION can be selected only if LOCKDEP is enabled.
+ - USB HID: Fix USB vendor and product IDs endianness for USB HID devices
+ - Fix null pointer dereference in appledisplay driver
+ - ieee1394: fix host device registering when nodemgr disabled
+ - ieee1394: video1394: DMA fix
+ - Fix compile error for e500 core based processors
+ - md: Avoid possible BUG_ON in md bitmap handling.
+ - Fix allocation failure handling in multicast
+ - Fix TCP FIN handling
+ - Fix ATM initcall ordering.
+ - Fix various bugs with aligned reads in RAID5.
+ - hda-intel - Don't try to probe invalid codecs
+ - usbaudio - Fix Oops with unconventional sample rates
+ - usbaudio - Fix Oops with broken usb descriptors
+ - USB: fix concurrent buffer access in the hub driver
+ - Missing critical phys_to_virt in lib/swiotlb.c
+ - AGP: intel-agp bugfix
+ - bcm43xx: Fix for oops on ampdu status
+ - bcm43xx: Fix for oops on resume
+ - ide: fix drive side 80c cable check
+ - Keys: Fix key serial number collision handling
+ - knfsd: Fix a race in closing NFSd connections.
+ - pata_amd: fix an obvious bug in cable detection
+ - prism54: correct assignment of DOT1XENABLE in WE-19 codepaths
+ - rtc-pcf8563: detect polarity of century bit automatically
+ - x86_64: fix 2.6.18 regression - PTRACE_OLDSETOPTIONS should be accepted
+ - ocfs2: ocfs2_link() journal credits update
+ * Update xen patch to changeset 48670 from fedora 2.6.20 branch.
+ * Support xen versions 3.0.4-1 and 3.0.3-1.
+
+ [ Rod Whitby ]
+ * arm/ixp4xx: Enable PATA_ARTOP for the nas100d and dsmg600.
+ * arm/ixp4xx: Enable RTC for the nas100d
+ * Add nas100d Ethernet MAC setup support.
+ * Add temporary hack to get Artop PATA support going on the nas100d.
+
+ [ maximilian attems ]
+ * i386: Enable kvm.
+ * Add stable release 2.6.20.3:
+ - Fix sparc64 device register probing
+ - Fix bug 7994 sleeping function called from invalid context
+ - Fix timewait jiffies
+ - Fix UDP header pointer after pskb_trim_rcsum()
+ - Fix compat_getsockopt
+ - bcm43xx: Fix problem with >1 GB RAM
+ - nfnetlink_log: fix NULL pointer dereference
+ - nfnetlink_log: fix possible NULL pointer dereference
+ - conntrack: fix {nf, ip}_ct_iterate_cleanup endless loops
+ - nf_conntrack/nf_nat: fix incorrect config ifdefs
+ - tcp conntrack: accept SYN|URG as valid
+ - nfnetlink_log: fix reference leak
+ - nfnetlink_log: fix use after free
+ - nf_conntrack: fix incorrect classification of IPv6 fragments as
+ ESTABLISHED
+ - nfnetlink_log: zero-terminate prefix
+ - nfnetlink_log: fix crash on bridged packet
+ - Fix callback bug in connector
+ - fix for bugzilla #7544 (keyspan USB-to-serial converter)
+ - ip6_route_me_harder should take into account mark
+ * Add myself to uploaders field, entry got lost after 2.6.16-2
+ * Add stable release 2.6.20.4:
+ - fix deadlock in audit_log_task_context()
+ - EHCI: add delay to bus_resume before accessing ports
+ - Copy over mac_len when cloning an skb
+ - fix read past end of array in md/linear.c
+ - oom fix: prevent oom from killing a process with children/sibling unkillable
+ - Fix sparc64 hugepage bugs
+ - Fix page allocation debugging on sparc64
+ - Fix niagara memory corruption
+ - Input: i8042 - really suppress ACK/NAK during panic blink
+ - Input: i8042 - fix AUX IRQ delivery check
+ - Input: i8042 - another attempt to fix AUX delivery checks
+ - Fix rtm_to_ifaddr() error return.
+ - r8169: fix a race between PCI probe and dev_open
+ - futex: PI state locking fix
+ - adjust legacy IDE resource setting (v2)
+ - UML - arch_prctl should set thread fs
+ - gdth: fix oops in gdth_copy_cmd()
+ - Fix extraneous IPSEC larval SA creation
+ - IA64: fix NULL pointer in ia64/irq_chip-mask/unmask function
+ - st: fix Tape dies if wrong block size used, bug 7919
+ - Fix ipv6 flow label inheritance
+ - NETFILTER: nfnetlink_log: fix reference counting
+ - mm: fix madvise infinine loop
+ - Fix another NULL pointer deref in ipv6_sockglue.c
+ - NetLabel: Verify sensitivity level has a valid CIPSO mapping
+ - Fix GFP_KERNEL with preemption disabled in fib_trie
+ - IrDA: irttp_dup spin_lock initialisation
+ - hda-intel - Fix codec probe with ATI controllers
+ - hrtimer: prevent overrun DoS in hrtimer_forward()
+ - fix MTIME_SEC_MAX on 32-bit
+ - nfs: nfs_getattr() can't call nfs_sync_mapping_range() for non-regular files
+ - dio: invalidate clean pages before dio write
+ - initialise pi_lock if CONFIG_RT_MUTEXES=N
+ * Add stable release 2.6.20.5:
+ - FRA_{DST,SRC} are le16 for decnet
+ - CIFS: reset mode when client notices that ATTR_READONLY is no longer set
+ - ide: clear bmdma status in ide_intr() for ICHx controllers (revised #4)
+ - ide: remove clearing bmdma status from cdrom_decode_status() (rev #4)
+ - NET: Fix sock_attach_fd() failure in sys_accept()
+ - DCCP: Fix exploitable hole in DCCP socket options
+ - ide: revert "ide: fix drive side 80c cable check, take 2" for now
+ - generic_serial: fix decoding of baud rate
+ - IPV6: Fix ipv6 round-robin locking.
+ - VIDEO: Fix FFB DAC revision probing
+ - PPP: Fix PPP skb leak
+ - V4L: msp_attach must return 0 if no msp3400 was found.
+ - CRYPTO: api: scatterwalk_copychunks() fails to advance through scatterlist
+ - APPLETALK: Fix a remotely triggerable crash (CVE-2007-1357)
+ - UML - fix epoll
+ - UML - host VDSO fix
+ - UML - Fix static linking
+ - UML - use correct register file size everywhere
+ - libata: sata_mv: don't touch reserved bits in EDMA config register
+ - libata: sata_mv: Fix 50xx irq mask
+ - libata bugfix: HDIO_DRIVE_TASK
+ - V4L: Fix SECAM handling on saa7115
+ - DVB: fix nxt200x rf input switching
+ - SPARC: Fix sparc builds with gcc-4.2.x
+ - V4L: saa7146: Fix allocation of clipping memory
+ - uml: fix unreasonably long udelay
+ - NET: Fix packet classidier NULL pointer OOPS
+ - NET_SCHED: Fix ingress qdisc locking.
+ - sata_nv: delay on switching between NCQ and non-NCQ commands
+ - dvb-core: fix several locking related problems
+ - ieee1394: dv1394: fix CardBus card ejection
+ - CIFS: Allow reset of file to ATTR_NORMAL when archive bit not set
+ - jmicron: make ide jmicron driver play nice with libata ones
+ - libata: clear TF before IDENTIFYing
+ - NET: Fix FIB rules compatability
+ - DVB: isl6421: don't reference freed memory
+ - V4L: radio: Fix error in Kbuild file
+ - i2o: block IO errors on i2o disk
+ * Add stable release 2.6.20.6:
+ - CRYPTO api: Use the right value when advancing scatterwalk_copychunks
+ - uml: fix static linking for real
+
+ [ Gordon Farquharson ]
+ * Disable broken config options on ARM.
+
+ [ Frederik Schüler ]
+ * Disable NAPI on forcedeth, it is broken.
+
+ [ dann frazier ]
+ * Hardcode the output of the scripts under arch/ia64/scripts as executed
+ in an etch environment so that we can build out of tree modules correctly
+ (re-add; patch seems to have been dropped during a merge.)
+ See: #392592
+ * Allow '.' and '+' in the target dist field of the changelog. dpkg has
+ supported this since 1.13.20, see #361171.
+
+ -- Bastian Blank <waldi@debian.org> Mon, 09 Apr 2007 19:21:52 +0200
+
+linux-2.6 (2.6.18.dfsg.1-10) unstable; urgency=low
+
+ [ maximilian attems ]
+ * Add patches out of stable queue 2.6.18
+ - [amd64] Don't leak NT bit into next task (CVE-2006-5755)
+ - IB/srp: Fix FMR mapping for 32-bit kernels and addresses above 4G
+ - SCSI: add missing cdb clearing in scsi_execute()
+ * Xen postinst: Use takeover for update-initramfs. Makes postinst idempotent.
+ On creation it should always overwrite. (closes: #401183)
+ * Hand-picked from stable release 2.6.16.38:
+ - i2c-viapro: Add support for the VT8237A and VT8251
+ - PCI: irq: irq and pci_ids patch for Intel ICH9
+ - i2c-i801: SMBus patch for Intel ICH9
+ - fix the UML compilation
+ - drm: allow detection of new VIA chipsets
+ - drm: Add the P4VM800PRO PCI ID.
+ - rio: typo in bitwise AND expression.
+ - i2c-mv64xxx: Fix random oops at boot
+ - i2c: fix broken ds1337 initialization
+ - [SUNKBD]: Fix sunkbd_enable(sunkbd, 0); obvious.
+ - Call init_timer() for ISDN PPP CCP reset state timer (CVE-2006-5749)
+ - V4L: cx88: Fix leadtek_eeprom tagging
+ - SPI/MTD: mtd_dataflash oops prevention
+ - grow_buffers() infinite loop fix (CVE-2006-5757/CVE-2006-6060)
+ - corrupted cramfs filesystems cause kernel oops (CVE-2006-5823)
+ - ext2: skip pages past number of blocks in ext2_find_entry
+ (CVE-2006-6054)
+ - handle ext3 directory corruption better (CVE-2006-6053)
+ - hfs_fill_super returns success even if no root inode (CVE-2006-6056)
+ backout previous fix, was not complete.
+ - Fix for shmem_truncate_range() BUG_ON()
+ - ebtables: check struct type before computing gap
+ - [IPV4/IPV6]: Fix inet{,6} device initialization order.
+ - [IPV6] Fix joining all-node multicast group.
+ - [SOUND] Sparc CS4231: Use 64 for period_bytes_min
+ * [PKTGEN]: Convert to kthread API. Thanks David Miller for patch.
+ * [IDE] Add driver for Jmicron JMB36x devices by Alan Cox.
+ Enable jmicron on i386 and amd64 archs.
+ * Hand-picked from stable release 2.6.16.39:
+ - atiixp: hang fix
+ - V4L/DVB: Flexcop-usb: fix debug printk
+ - V4L/DVB: Fix uninitialised variable in dvb_frontend_swzigzag
+ - read_zero_pagealigned() locking fix
+ - adfs: fix filename handling
+ - sparc32: add offset in pci_map_sg()
+ - cdrom: set default timeout to 7 seconds
+ - [SCSI] qla1280 command timeout
+ - [SCSI] qla1280 bus reset typo
+ - [Bluetooth] Check if DLC is still attached to the TTY
+ - [Bluetooth] Fix uninitialized return value for RFCOMM sendmsg()
+ - [Bluetooth] Return EINPROGRESS for non-blocking socket calls
+ - [Bluetooth] Handle command complete event for exit periodic inquiry
+ - [Bluetooth] Fix compat ioctl for BNEP, CMTP and HIDP
+ - [Bluetooth] Add locking for bt_proto array manipulation
+ - i386: fix CPU hotplug with 2GB VMSPLIT
+
+ [ dann frazier ]
+ * Fix raid1 recovery (closes: #406181)
+
+ [ Jurij Smakov ]
+ * Add dtlb-prot-bug-niagara.patch by David Miller, fixing the bug in the
+ Niagara's DTLB-PROT trap.
+
+ [ Bastian Blank ]
+ * i386: Add amd64 image. (closes: #379090)
+
+ -- Bastian Blank <waldi@debian.org> Fri, 2 Feb 2007 12:50:35 +0100
+
+linux-2.6 (2.6.18.dfsg.1-9) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * arm/iop32x: Enable CONFIG_IP_NF_CONNTRACK_EVENTS and _NETLINK.
+ * arm/ixp4xx: Enable some more I2C sensor modules.
+ * arm/ixp4xx: Enable CONFIG_USB_NET_RNDIS_HOST.
+ * arm/footbridge: Enable CONFIG_NATSEMI.
+ * Revert mm/msync patches because they cause filesystem corruption
+ (closes: #401006, #401980, #402707) ...
+ * ... and add an alternative msync patch from Hugh Dickins that
+ doesn't depend on the mm changes (closes: #394392).
+ * mips: provide pci_get_legacy_ide_irq needed by some IDE drivers
+ (see #404950).
+ * arm: Implement flush_anon_page(), which is needed for FUSE
+ (closes: #402876) and possibly dm-crypt/LUKS (see #403426).
+ * arm: Turn off PCI burst on the Cyber2010, otherwise X11 on
+ Netwinder will crash.
+ * arm/iop32x: Enable CONFIG_IEEE80211_SOFTMAC and drivers based
+ on it.
+ * arm/ixp4xx: Upgrade to version 0.3.1 of the IXP4xx NPE Ethernet
+ driver. This version fixes stuck connections, e.g. with scp and
+ NFS (closes: #404447).
+ * arm/ixp4xx: Enable CONFIG_VIDEO_CPIA_USB.
+ * arm/ixp4xx: Enable CONFIG_ISCSI_TCP.
+ * arm/iop32x: Likewise.
+
+ [ Bastian Blank ]
+ * Bump ABI to 4.
+ * Update vserver patch to 2.0.2.2-rc9. (closes: #402743, #403790)
+ * Update xen patch to changeset 36186 from Fedora 2.6.18 branch.
+ * i386/xen: Build only the pae version. (closes: #390862)
+ * hppa: Override host type when necessary.
+ * Fix tg3 reset. (closes: #405085)
+
+ [ dann frazier ]
+ * Fix potential fragmentation attacks in ip6_tables (CVE-2006-4572)
+ * Backport a number of fixes for the cciss driver
+ - Fix a bug with 1TB disks caused by converting total_size to an int
+ - Claim devices that are of the HP RAID class and have a valid cciss sig
+ - Make NR_CMDS a per-controller define - most can do 1024 commands, but
+ the E200 family can only support 128
+ - Change the SSID on the E500 as a workaround for a firmware bug
+ - Disable prefetch on the P600 controller. An ASIC bug may result in
+ prefetching beyond the end of physical memory
+ - Increase blk_queue_max_sectors from 512 to 2048 to increase performance
+ - Map out more memor for the PCI config table, required to reach offset
+ 0x214 to disable DMA on the P600
+ - Set a default raid level on a volume that either does not support
+ reading the geometry or reports an invalid geometry for whatever reason
+ to avoid problems with buggy firmware
+ - Revert change that replaed XFER_READ/XFER_WRITE macros with
+ h->cciss_read/h->cciss_write that caused command timeouts on older
+ controllers on ia32 (closes: #402787)
+ * Fix mincore hang (CVE-2006-4814)
+ * ia64: turn on IOC4 modules for SGI Altix systems. Thanks to Stephane Larose
+ for suggesting this.
+ * Add versioned build dep on findutils to make sure the system find command
+ supports the -execdir action (closes: #405150)
+ * Hardcode the output of the scripts under arch/ia64/scripts as executed
+ in an etch environment so that we can build out of tree modules correctly
+ (closes: #392592)
+ * Update unusual_devs entry for ipod to fix an eject issue (closes: #406124)
+ * Re-add verify_pmtmr_rate, resolving problems seen on older K6 ASUS
+ boards where the ACPI PM timer runs too fast (closes: #394753)
+ * Avoid condition where /proc/swaps header may not be printed
+ (closes: #292318)
+ * [hppa] disable XFS until it works (closes: #350482)
+
+ [ Norbert Tretkowski ]
+ * libata: handle 0xff status properly. (closes: #391867)
+ * alpha: enabled CONFIG_SCSI_ARCMSR. (closes: #401187)
+ * removed BROKEN_ON_SMP dependency from I2C_ELEKTOR. (closes: #402253)
+
+ [ Christian T. Steigies ]
+ * m68k/atari: enable keyboard, mouse and fb drivers
+ * m68k/atari: fixes for ethernec and video driver by Michael Schmitz
+ * m68k/atari: fixes for scsi driver by Michael Schmitz
+ * m68k/mac: fixes for mace and cuda driver by Finn Thain
+ * m68k/atari: fixes for ide driver by Michael Schmitz
+ * m68k/atari: fixes for ide driver by Michael Schmitz
+ * m68k/atari: fixes for ethernec and atakeyb driver by Michael Schmitz, build ethernec as module
+ * m68k/mac: fixes for mace and adb driver by Finn Thain
+
+ [ maximilian attems ]
+ * Add stable release 2.6.18.6:
+ - EBTABLES: Fix wraparounds in ebt_entries verification.
+ - EBTABLES: Verify that ebt_entries have zero ->distinguisher.
+ - EBTABLES: Deal with the worst-case behaviour in loop checks.
+ - EBTABLES: Prevent wraparounds in checks for entry components' sizes.
+ - skip data conversion in compat_sys_mount when data_page is NULL
+ - bonding: incorrect bonding state reported via ioctl
+ - x86-64: Mark rdtsc as sync only for netburst, not for core2
+ (closes: #406767)
+ - dm crypt: Fix data corruption with dm-crypt over RAID5 (closes: #402812)
+ - forcedeth: Disable INTx when enabling MSI in forcedeth
+ - PKT_SCHED act_gact: division by zero
+ - XFRM: Use output device disable_xfrm for forwarded packets
+ - IPSEC: Fix inetpeer leak in ipv4 xfrm dst entries.
+ - V4L: Fix broken TUNER_LG_NTSC_TAPE radio support
+ - m32r: make userspace headers platform-independent
+ - IrDA: Incorrect TTP header reservation
+ - SUNHME: Fix for sunhme failures on x86
+ - Bluetooth: Add packet size checks for CAPI messages (CVE-2006-6106)
+ - softmac: remove netif_tx_disable when scanning
+ - DVB: lgdt330x: fix signal / lock status detection bug
+ - dm snapshot: fix freeing pending exception
+ - NET_SCHED: policer: restore compatibility with old iproute binaries
+ - NETFILTER: ip_tables: revision support for compat code
+ - ARM: Add sys_*at syscalls
+ - ieee1394: ohci1394: add PPC_PMAC platform code to driver probe
+ - softirq: remove BUG_ONs which can incorrectly trigger
+ * Hand-picked from stable release 2.6.16.30:
+ - [PPPOE]: Advertise PPPoE MTU
+ * Hand-picked from stable release 2.6.16.31:
+ - [NETFILTER]: Fix ip6_tables extension header bypass bug (CVE-2006-4572)
+ - fix RARP ic_servaddr breakage
+ * Hand-picked from stable release 2.6.16.32:
+ - drivers/telephony/ixj: fix an array overrun
+ - flush D-cache in failure path
+ * Hand-picked from stable release 2.6.16.33:
+ - Add new PHY to sis900 supported list
+ - ipmi_si_intf.c: fix "&& 0xff" typos
+ - drivers/scsi/psi240i.c: fix an array overrun
+ * Hand-picked from stable release 2.6.16.34:
+ - [IPX]: Annotate and fix IPX checksum
+ - [IGMP]: Fix IGMPV3_EXP() normalization bit shift value.
+ * Hand-picked from stable release 2.6.16.35:
+ - sgiioc4: Disable module unload
+ - Fix a masking bug in the 6pack driver.
+ - drivers/usb/input/ati_remote.c: fix cut'n'paste error
+ - proper flags type of spin_lock_irqsave()
+ * Hand-picked from stable release 2.6.16.37:
+ - [CRYPTO] sha512: Fix sha384 block size
+ - [SCSI] gdth: Fix && typos
+ - Fix SUNRPC wakeup/execute race condition
+ * Enable DEBUG_FS for usbmon in generic config. Don't disable it on alpha,
+ amd64, hppa and ia64. (closes: 378542)
+ * Backport a number of upstream fixes for the r8169 driver, needed for
+ network performance (closes: 388870, 400524)
+ - r8169: more alignment for the 0x8168
+ - r8169: phy program update
+ - r8169: more magic during initialization of the hardware
+ - r8169: perform a PHY reset before any other operation at boot time
+ - r8169: Fix iteration variable sign
+ - r8169: remove extraneous Cmd{Tx/Rx}Enb write
+ * sound: hda: detect ALC883 on MSI K9A Platinum motherboards (MS-7280)
+ patch from Leonard Norrgard <leonard.norrgard@refactor.fi>
+ * tulip: Add i386 specific patch to remove duplicate pci ids.
+ Thanks Jurij Smakov <jurij@wooyd.org> (closes: #334104, #405203)
+ * amd64, i386: Disable SK98LIN as SKGE is the modern capable driver.
+ (closes: 405196)
+ * Backout net-bcm43xx_netdev_watchdog.patch and push 2.6.18.2 fix.
+ (closes: 402475)
+
+ [ Jurij Smakov ]
+ * Add bugfix/sparc/isa-dev-no-reg.patch to make sure that
+ isa_dev_get_resource() can deal with devices which do not have a 'reg'
+ PROM property. Failure to handle such devices properly resulted in an
+ oops during boot on Netra X1. Thanks to Richard Mortimer for debugging
+ and patch. (closes: #404216)
+ * Add bugfix/sparc/ehci-hub-contol-alignment.patch to prevent unaligned
+ memory accesses in ehci-hub-control() by adding an alignment attribute
+ to the tbuf array declaration. Thanks to David Miller for the patch.
+
+ [ Sven Luther ]
+ * [powerpc] Enable CONFIG_PMAC_BACKLIGHT_LEGACY (Closes: #407671).
+
+ -- Bastian Blank <waldi@debian.org> Wed, 24 Jan 2007 13:21:51 +0100
+
+linux-2.6 (2.6.18-8) unstable; urgency=low
+
+ * Fix relations in the generated control file. (closes: #400544)
+ * Add stable release 2.6.18.4:
+ - bridge: fix possible overflow in get_fdb_entries (CVE-2006-5751)
+ * Add stable release 2.6.18.5:
+ - pcmcia: fix 'rmmod pcmcia' with unbound devices
+ - BLUETOOTH: Fix unaligned access in hci_send_to_sock.
+ - alpha: Fix ALPHA_EV56 dependencies typo
+ - TG3: Add missing unlock in tg3_open() error path.
+ - softmac: fix a slab corruption in WEP restricted key association
+ - AGP: Allocate AGP pages with GFP_DMA32 by default
+ - V4L: Do not enable VIDEO_V4L2 unconditionally
+ - bcm43xx: Drain TX status before starting IRQs
+ - fuse: fix Oops in lookup
+ - UDP: Make udp_encap_rcv use pskb_may_pull
+ - NETFILTER: Missing check for CAP_NET_ADMIN in iptables compat layer
+ - NETFILTER: ip_tables: compat error way cleanup
+ - NETFILTER: ip_tables: fix module refcount leaks in compat error paths
+ - NETFILTER: Missed and reordered checks in {arp,ip,ip6}_tables
+ - NETFILTER: arp_tables: missing unregistration on module unload
+ - NETFILTER: Kconfig: fix xt_physdev dependencies
+ - NETFILTER: xt_CONNSECMARK: fix Kconfig dependencies
+ - NETFILTER: H.323 conntrack: fix crash with CONFIG_IP_NF_CT_ACCT
+ - IA64: bte_unaligned_copy() transfers one extra cache line.
+ - x86 microcode: don't check the size
+ - scsi: clear garbage after CDBs on SG_IO
+ - IPV6: Fix address/interface handling in UDP and DCCP, according to the scoping architecture.
+ * Revert abi changing patch from 2.6.18.5.
+
+ -- Bastian Blank <waldi@debian.org> Sun, 10 Dec 2006 17:51:53 +0100
+
+linux-2.6 (2.6.18-7) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Emit conflict lines for initramfs generators. (closes: #400305)
+ * Update vserver patch to 2.0.2.2-rc8.
+ * s390: Add patch to fix posix types.
+
+ [ Martin Michlmayr ]
+ * r8169: Add an option to ignore parity errors.
+ * r8169: Ignore parity errors on the Thecus N2100.
+ * rtc: Add patch from Riku Voipio to get RS5C372 going on the N2100.
+ * arm/iop32x: Build RS5C372 support into the kernel.
+
+ [ maximilian attems ]
+ * hfs: Fix up error handling in HFS. (MOKB-14-11-2006)
+ * sata: Avoid null pointer dereference in SATA Promise.
+ * cifs: Set CIFS preferred IO size.
+
+ [ Jurij Smakov ]
+ * Add bugfix/sunhme-pci-enable.patch, fixing the failure of sunhme
+ driver on x86/PCI hosts due to missing pci_enable_device() and
+ pci_set_master() calls, lost during code refactoring upstream.
+ (closes: #397460)
+
+ -- Bastian Blank <waldi@debian.org> Mon, 4 Dec 2006 15:20:30 +0100
+
+linux-2.6 (2.6.18-6) unstable; urgency=low
+
+ [ maximilian attems ]
+ * Enable the new ACT modules globally. They were already set for amd64, hppa
+ and mips/mipsel - needed by newer iproute2. (closes: #395882, #398172)
+ * Fix msync() for LSB 3.1 compliance, backport fedora patches from 2.6.19
+ - mm: tracking shared dirty pages
+ - mm: balance dirty pages
+ - mm: optimize the new mprotect() code a bit
+ - mm: small cleanup of install_page()
+ - mm: fixup do_wp_page()
+ - mm: msync() cleanup (closes: #394392)
+ * [amd64,i386] Enable CONFIG_USB_APPLETOUCH=m (closes: #382298)
+ * Add stable release 2.6.18.3:
+ - x86_64: Fix FPU corruption
+ - e1000: Fix regression: garbled stats and irq allocation during swsusp
+ - POWERPC: Make alignment exception always check exception table
+ - usbtouchscreen: use endpoint address from endpoint descriptor
+ - fix via586 irq routing for pirq 5
+ - init_reap_node() initialization fix
+ - CPUFREQ: Make acpi-cpufreq unsticky again.
+ - SPARC64: Fix futex_atomic_cmpxchg_inatomic implementation.
+ - SPARC: Fix missed bump of NR_SYSCALLS.
+ - NET: __alloc_pages() failures reported due to fragmentation
+ - pci: don't try to remove sysfs files before they are setup.
+ - fix UFS superblock alignment issues
+ - NET: Set truesize in pskb_copy
+ - block: Fix bad data direction in SG_IO (closes: #394690)
+ - cpqarray: fix iostat
+ - cciss: fix iostat
+ - Char: isicom, fix close bug
+ - TCP: Don't use highmem in tcp hash size calculation.
+ - S390: user readable uninitialised kernel memory, take 2.
+ - correct keymapping on Powerbook built-in USB ISO keyboards
+ - USB: failure in usblp's error path
+ - Input: psmouse - fix attribute access on 64-bit systems
+ - Fix sys_move_pages when a NULL node list is passed.
+ - CIFS: report rename failure when target file is locked by Windows
+ - CIFS: New POSIX locking code not setting rc properly to zero on successful
+ - Patch for nvidia divide by zero error for 7600 pci-express card
+ (maybe fixes 398258)
+ - ipmi_si_intf.c sets bad class_mask with PCI_DEVICE_CLASS
+
+ [ Steve Langasek ]
+ * [alpha] new titan-video patch, for compatibility with TITAN and similar
+ systems with non-standard VGA hose configs
+ * [alpha] bugfix for srm_env module from upstream (Jan-Benedict Glaw),
+ makes the module compatible with the current /proc interface so that
+ reads no longer return EFAULT. (closes: #353079)
+ * Bump ABI to 3 for the msync fixes above.
+
+ [ Martin Michlmayr ]
+ * arm: Set CONFIG_BINFMT_MISC=m
+ * arm/ixp4xx: Set CONFIG_ATM=m (and related modules) so CONFIG_USB_ATM has
+ an effect.
+ * arm/iop32x: Likewise.
+ * arm/s3c2410: Unset CONFIG_PM_LEGACY.
+ * arm/versatile: Fix Versatile PCI config byte accesses
+ * arm/ixp4xx: Swap the disk 1 and disk 2 LED definitions so they're right.
+ * mipsel/r5k-cobalt: Unset CONFIG_SCSI_SYM53C8XX_2 because the timeout is
+ just too long.
+ * arm/ixp4xx: Enable more V4L USB devices.
+
+ [ dann frazier ]
+ * Backport various SCTP changesets from 2.6.19, recommended by Vlad Yasevich
+ (closes: #397946)
+ * Add a "Scope of security support" section to README.Debian, recommended
+ by Moritz Muehlenhoff
+
+ [ Thiemo Seufer ]
+ * Enable raid456 for mips/mipsel qemu kernel.
+
+ [ dann frazier ]
+ * The scope of the USR-61S2B unusual_dev entry was tightened, but too
+ strictly. Loosen it to apply to additional devices with a smaller bcd.
+ (closes: #396375)
+
+ [ Sven Luther ]
+ * Added support for TI ez430 development tool ID in ti_usb.
+ Thanks to Oleg Verych for providing the patch.
+
+ [ Christian T. Steigies ]
+ * Added support for Atari EtherNEC, Aranym, video, keyboard, mouse, and serial
+ by Michael Schmitz
+
+ [ Bastian Blank ]
+ * [i386] Reenable AVM isdn card modules. (closes: #386872)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 21 Nov 2006 11:28:09 +0100
+
+linux-2.6 (2.6.18-5) unstable; urgency=low
+
+ [ maximilian attems ]
+ * [s390] readd the fix for "S390: user readable uninitialised kernel memory
+ (CVE-2006-5174)"
+ * [s390] temporarily add patch queued for 2.6.18.3 fixing 32 bit opcodes and
+ instructions.
+
+ [ Thiemo Seufer ]
+ * Fix build failure of hugetlbfs (closes: #397139).
+ * Add kernel configuration for qemu's mips/mipsel emulation, thanks to
+ Aurelien Jarno.
+
+ [ Bastian Blank ]
+ * Update vserver patch to 2.0.2.2-rc6.
+ * Update xen parts for vserver. (closes: #397281)
+
+ [ dann frazier ]
+ * [ia64] Move to upstream version of sal-flush-fix patch, which is slightly
+ different than the early version added in 2.6.18-3.
+
+ [ Frederik Schüler ]
+ * [i386] Acticate CONFIG_SX for all flavours. (closes: #391275)
+
+ [ Steve Langasek ]
+ * [alpha] new asm-subarchs patch: tell the compiler that we're
+ deliberately emitting ev56 or ev6 instructions, so that this code
+ will still compile without having to cripple gcc-4.1's checking of
+ whether the correct instruction set is used. Closes: #397139.
+
+ [ Martin Michlmayr ]
+ * arm/ixp4xx: Enable CONFIG_USB_ATM.
+ * arm/iop32x: Enable CONFIG_PPPOE.
+ * arm/iop32x: Enable CONFIG_USB_ATM.
+
+ -- Bastian Blank <waldi@debian.org> Wed, 8 Nov 2006 17:15:55 +0100
+
+linux-2.6 (2.6.18-4) unstable; urgency=low
+
+ [ Norbert Tretkowski ]
+ * [alpha] Switched to gcc-4.1.
+
+ [ Jurij Smakov ]
+ * [sparc] Remove sparc64-atyfb-xl-gr.patch, it does more harm than
+ good in 2.6.18.
+ * [sparc] Add bugfix/sparc/compat-alloc-user-space-alignment.patch
+ (thanks to David Miller) to make sure that compat_alloc_user_space()
+ always returns memory aligned on a 8-byte boundary on sparc. This
+ prevents a number of unaligned memory accesses, like the ones in
+ sys_msgrcv() and compat_sys_msgrcv(), triggered every 5 seconds whenever
+ fakeroot is running.
+ * [sparc] Add bugfix/sparc/bus-id-size.patch (thanks to David Miller)
+ to ensure that the size of the strings stored in the bus_id field of
+ struct device never exceeds the amount of memory allocated for them
+ (20 bytes). It fixes the situations in which storing longer device
+ names in this field would cause corruption of adjacent memory regions.
+ (closes: #394697).
+ * [sparc] Add bugfix/sparc/sunblade1k-boot-fix.patch (thanks to David
+ Miller) to fix a boottime crash on SunBlade1000.
+ * [sparc] Add bugfix/sparc/t1k-cpu-lockup.patch (thanks to David Miller)
+ to prevent soft CPU lockup on T1000 servers, which can be triggered from
+ userspace, resulting in denial of service.
+
+ [ Martin Michlmayr ]
+ * arm/iop32x: Fix the interrupt of the 2nd Ethernet slot on N2100.
+ * arm/iop32x: Allow USB and serial to co-exist on N2100.
+ * arm/ixp4xx: Add clocksource for Intel IXP4xx platforms.
+ * arm: Enable CONFIG_AUDIT=y again.
+ * arm/ixp4xx: Add the IXP4xx Ethernet driver.
+ * arm/ixp4xx: Build LED support into the kernel.
+ * Add a driver for Fintek F75375S/SP and F75373.
+ * arm/iop32x: Build F75375S/SP support in.
+ * arm/iop32x: Fix the size of the RedBoot config partition.
+
+ [ maximilian attems ]
+ * Add netpoll leak fix.
+ * Add upstream forcedeth swsusp support.
+ * r8169: PCI ID for Corega Gigabit network card.
+ * r8169: the MMIO region of the 8167 stands behin BAR#1.
+ * r8169: Add upstream fix for infinite loop during hotplug.
+ * Bump build-dependency on kernel-package to 10.063.
+ * r8169: pull revert mac address change support.
+ * bcm43xx: Add full netdev watchout timeout patch. (closes: 392065)
+ Thanks Sjoerd Simons <sjoerd@spring.luon.net> for the testing.
+ * Add stable release 2.6.18.2:
+ - Remove not yet released, revert the included patches.
+ - Keep aboves bcm43xx fix, it's more complete.
+ - Watchdog: sc1200wdt - fix missing pnp_unregister_driver()
+ - fix missing ifdefs in syscall classes hookup for generic targets
+ - JMB 368 PATA detection
+ - usbfs: private mutex for open, release, and remove
+ - sound/pci/au88x0/au88x0.c: ioremap balanced with iounmap
+ - x86-64: Fix C3 timer test
+ - Reintroduce NODES_SPAN_OTHER_NODES for powerpc
+ - ALSA: emu10k1: Fix outl() in snd_emu10k1_resume_regs()
+ - IB/mthca: Use mmiowb after doorbell ring
+ - SCSI: DAC960: PCI id table fixup
+ - ALSA: snd_rtctimer: handle RTC interrupts with a tasklet
+ - JFS: pageno needs to be long
+ - SPARC64: Fix central/FHC bus handling on Ex000 systems.
+ - SPARC64: Fix memory corruption in pci_4u_free_consistent().
+ - SPARC64: Fix PCI memory space root resource on Hummingbird.
+ (closes: #392078)
+ - Fix uninitialised spinlock in via-pmu-backlight code.
+ - SCSI: aic7xxx: pause sequencer before touching SBLKCTL
+ - IPoIB: Rejoin all multicast groups after a port event
+ - ALSA: Dereference after free in snd_hwdep_release()
+ - rtc-max6902: month conversion fix
+ - NET: Fix skb_segment() handling of fully linear SKBs
+ - SCTP: Always linearise packet on input
+ - SCSI: aic7xxx: avoid checking SBLKCTL register for certain cards
+ - IPV6: fix lockup via /proc/net/ip6_flowlabel [CVE-2006-5619]
+ - fix Intel RNG detection
+ - ISDN: check for userspace copy faults
+ - ISDN: fix drivers, by handling errors thrown by ->readstat()
+ - splice: fix pipe_to_file() ->prepare_write() error path
+ - ALSA: Fix bug in snd-usb-usx2y's usX2Y_pcms_lock_check()
+ - ALSA: Repair snd-usb-usx2y for usb 2.6.18
+ - PCI: Remove quirk_via_abnormal_poweroff
+ - Bluetooth: Check if DLC is still attached to the TTY
+ - vmscan: Fix temp_priority race
+ - Use min of two prio settings in calculating distress for reclaim
+ - __div64_32 for 31 bit. Fixes funny clock speed on hercules emulator.
+ (closes: 395247)
+ - DVB: fix dvb_pll_attach for mt352/zl10353 in cx88-dvb, and nxt200x
+ - fuse: fix hang on SMP
+ - md: Fix bug where spares don't always get rebuilt properly when they become live.
+ - md: Fix calculation of ->degraded for multipath and raid10
+ - knfsd: Fix race that can disable NFS server.
+ - md: check bio address after mapping through partitions.
+ - fill_tgid: fix task_struct leak and possible oops
+ - uml: fix processor selection to exclude unsupported processors and features
+ - uml: remove warnings added by previous -stable patch
+ - Fix sfuzz hanging on 2.6.18
+ - SERIAL: Fix resume handling bug
+ - SERIAL: Fix oops when removing suspended serial port
+ - sky2: MSI test race and message
+ - sky2: pause parameter adjustment
+ - sky2: turn off PHY IRQ on shutdown
+ - sky2: accept multicast pause frames
+ - sky2: GMAC pause frame
+ - sky2: 88E803X transmit lockup (2.6.18)
+ - tcp: cubic scaling error
+ - mm: fix a race condition under SMC + COW
+ - ALSA: powermac - Fix Oops when conflicting with aoa driver
+ - ALSA: Fix re-use of va_list
+ - posix-cpu-timers: prevent signal delivery starvation
+ - NFS: nfs_lookup - don't hash dentry when optimising away the lookup
+ - uml: make Uml compile on FC6 kernel headers
+ - Fix potential interrupts during alternative patching
+ * Backport atkbd - supress "too many keys" error message.
+ * [s390] Revert temporarly 2.6.18.1 "S390: user readable uninitialised
+ kernel memory (CVE-2006-5174)" fix as it causes ftfbs
+
+ [ Sven Luther ]
+ * [powerpc] Added exception alignement patch from Benjamin Herrenschmidt.
+
+ [ Frederik Schüler ]
+ * Bump ABI to 2.
+ * Update vserver patch to 2.0.2.2-rc4.
+
+ [ Thiemo Seufer ]
+ * Add patches from linux-mips.org's 2.6.18-stable branch:
+ - bugfix/copy-user-highpage.patch, needed for cache alias handling
+ on mips/mipsel/hppa.
+ - bugfix/mips/syscall-wiring.patch, fixes TLS register access, and
+ n32 rt_sigqueueinfo.
+ - bugfix/mips/sb1-flush-cache-data-page.patch, missing cache flush
+ on SB-1.
+ - bugfix/mips/trylock.patch, fix trylock implementation for R1x000
+ and R3xxx.
+ - bugfix/mips/smp-cpu-bringup.patch, correct initialization of
+ non-contiguous CPU topology.
+ - bugfix/mips/header-exports.patch, clean up userland exports of
+ kernel headers.
+ - bugfix/mips/sb1-interrupt-handler.patch, fix broken interrupt
+ routing on SB-1.
+ - bugfix/mips/cache-alias.patch, fixes #387498 for mips/mipsel.
+ - bugfix/mips/ip22-zilog-console.patch, fix long delays seen with
+ SGI ip22 serial console.
+ - bugfix/mips/signal-handling.patch, fixes a signal handling race
+ condition shown with gdb.
+ - bugfix/mips/sb1-duart-tts.patch, replaces mips-sb1-duart-tts.patch,
+ use standard Linux names for SB-1 consoles.
+ - bugfix/mips/wait-race.patch, correct behaviour of the idle loop.
+ - bugfix/mips/sgi-ioc3.patch, checksumming fix for IOC3 network
+ driver.
+ - features/mips/qemu-kernel.patch, support for the mips/mipsel
+ machine emulated by Qemu.
+ - features/mips/backtrace.patch, reimplementation of stack analysis
+ and backtrace printing, useful for in-kernel debugging.
+ - bugfix/mips/dec-scsi.patch, replaces mips-dec-scsi.patch, fixes DSP
+ SCSI driver for DECstations.
+ - bugfix/mips/dec-serial.patch, replaces mips-dec-serial.patch, fix
+ serial console handling on DECstations.
+
+ -- Frederik Schüler <fs@debian.org> Sat, 4 Nov 2006 18:45:02 +0100
+
+linux-2.6 (2.6.18-3) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Fix home of patch apply script.
+ * Unify CPUSET option. (closes: #391931)
+ * Support xen version 3.0.3-1.
+ * Add AHCI suspend support.
+ * Add patch to support bindmount without nodev on vserver.
+ * Update fedora xen patch to changeset 36252.
+
+ [ Steve Langasek ]
+ * [alpha] restore alpha-prctl.patch, which keeps disappearing every time
+ there's a kernel upgrade :/
+
+ [ Frederik Schüler ]
+ * Activate CONFIG_NET_CLS_* globaly. (Closes: #389918)
+ * Make CONFIG_EFI_VARS modular on i386. (Closes: #381951)
+ * Activate CONFIG_SCSI_ARCMSR on amd64, powerpc, sparc too.
+ * [vserver] Activate HARDCPU and HARDCPU_IDLE.
+ * [vserver] Upgrade to vs2.0.2.2-rc2.
+
+ [ maximilian attems ]
+ * [mipsel] Disable CONFIG_SECURITY_SECLVL on DECstations too.
+ * Add stable release 2.6.18.1:
+ - add utsrelease.h to the dontdiff file
+ - V4L: copy-paste bug in videodev.c
+ - block layer: elv_iosched_show should get elv_list_lock
+ - NETFILTER: NAT: fix NOTRACK checksum handling
+ - bcm43xx: fix regressions in 2.6.18 (Closes: #392065)
+ - x86-64: Calgary IOMMU: Fix off by one when calculating register space
+ location
+ - ide-generic: jmicron fix
+ - scx200_hrt: fix precedence bug manifesting as 27x clock in 1 MHz mode
+ - invalidate_inode_pages2(): ignore page refcounts
+ - rtc driver rtc-pcf8563 century bit inversed
+ - fbdev: correct buffer size limit in fbmem_read_proc()
+ - mm: bug in set_page_dirty_buffers
+ - TCP: Fix and simplify microsecond rtt sampling
+ - MD: Fix problem where hot-added drives are not resynced.
+ - IPV6: Disable SG for GSO unless we have checksum
+ - PKT_SCHED: cls_basic: Use unsigned int when generating handle
+ - sata_mv: fix oops
+ - [SPARC64]: Kill bogus check from bootmem_init().
+ - IPV6: bh_lock_sock_nested on tcp_v6_rcv
+ - [CPUFREQ] Fix some more CPU hotplug locking.
+ - SPARC64: Fix serious bug in sched_clock() on sparc64
+ - Fix VIDIOC_ENUMSTD bug
+ - load_module: no BUG if module_subsys uninitialized
+ - i386: fix flat mode numa on a real numa system
+ - cpu to node relationship fixup: map cpu to node
+ - cpu to node relationship fixup: acpi_map_cpu2node
+ - backlight: fix oops in __mutex_lock_slowpath during head
+ /sys/class/graphics/fb0/*
+ - do not free non slab allocated per_cpu_pageset
+ - rtc: lockdep fix/workaround
+ - powerpc: Fix ohare IDE irq workaround on old powermacs
+ - sysfs: remove duplicated dput in sysfs_update_file
+ - powerpc: fix building gdb against asm/ptrace.h
+ - Remove offsetof() from user-visible <linux/stddef.h>
+ - Clean up exported headers on CRIS
+ - Fix v850 exported headers
+ - Don't advertise (or allow) headers_{install,check} where inappropriate.
+ - Remove UML header export
+ - Remove ARM26 header export.
+ - Fix H8300 exported headers.
+ - Fix m68knommu exported headers
+ - Fix exported headers for SPARC, SPARC64
+ - Fix 'make headers_check' on m32r
+ - Fix 'make headers_check' on sh64
+ - Fix 'make headers_check' on sh
+ - Fix ARM 'make headers_check'
+ - One line per header in Kbuild files to reduce conflicts
+ - sky2 network driver device ids
+ - sky2: tx pause bug fix
+ - netdrvr: lp486e: fix typo
+ - mv643xx_eth: fix obvious typo, which caused build breakage
+ - zone_reclaim: dynamic slab reclaim
+ - Fix longstanding load balancing bug in the scheduler
+ - jbd: fix commit of ordered data buffers
+ - ALSA: Fix initiailization of user-space controls
+ - USB: Allow compile in g_ether, fix typo
+ - IB/mthca: Fix lid used for sending traps
+ - S390: user readable uninitialised kernel memory (CVE-2006-5174)
+ - zd1211rw: ZD1211B ASIC/FWT, not jointly decoder
+ - V4L: pvrusb2: Limit hor res for 24xxx devices
+ - V4L: pvrusb2: Suppress compiler warning
+ - V4L: pvrusb2: improve 24XXX config option description
+ - V4L: pvrusb2: Solve mutex deadlock
+ - DVB: cx24123: fix PLL divisor setup
+ - V4L: Fix msp343xG handling regression
+ - UML: Fix UML build failure
+ - uml: use DEFCONFIG_LIST to avoid reading host's config
+ - uml: allow using again x86/x86_64 crypto code
+ - NET_SCHED: Fix fallout from dev->qdisc RCU change
+ * Add backported git patch remving BSD secure level - request by the
+ Debian Security Team. (closes: 389282)
+ * [powerpc] Add DAC960-ipr PCI id table fixup.
+ * [powerpc] Fix uninitialised spinlock in via-pmu-backlight code.
+ * Fix serial_cs resume handling.
+ * Fix oops when removing suspended serial port.
+ * Check if DLC is still attached to the TTY.
+ * Add fedora backport of i965 DRM support.
+
+ [ Martin Michlmayr ]
+ * [mips] Apply some patches from linux-mips' linux-2.6.18-stable GIT tree:
+ - The o32 fstatat syscall behaves differently on 32 and 64 bit kernels
+ - fstatat syscall names
+ - BCM1480: Mask pending interrupts against c0_status.im.
+ - Cobalt: Time runs too quickly
+ - Show actual CPU information in /proc/cpuinfo
+ - Workaround for bug in gcc -EB / -EL options
+ - Do not use -msym32 option for modules
+ - Fix O32 personality(2) call with 0xffffffff argument
+ - Use compat_sys_mount
+
+ [ dann frazier ]
+ * [ia64]: Fix booting on HP cell systems, thanks to Troy Heber
+ - Enable CONFIG_HUGETLBFS
+ - bugfix/ia64/sal-flush-fix.patch: delay sal cache flush
+ * bugfix/sky2-receive-FIFO-fix.patch: fix sky2 hangs on some chips
+ Thanks to Stephen Hemminger for the patch. (Closes: #391382)
+ * features/all/drivers/cciss-support-for-gt-2TB-volumes.patch:
+ Add support for > 2TB volumes
+ * bugfix/sym2-dont-claim-raid-devs.patch: Prevent cpqarray/sym2 conflict
+ by telling sym2 not to claim raid devices. (Closes: #391384)
+
+ [ Sven Luther ]
+ * [powerpc] Added AMD74xx driver module to the powerpc64 flavour
+ (Closes: #391861).
+
+ [ Kyle McMartin ]
+ * [hppa] Force CROSS_COMPILE=hppa64-linux-gnu- (closes: #389296)
+
+ -- Bastian Blank <waldi@debian.org> Sat, 21 Oct 2006 15:59:43 +0200
+
+linux-2.6 (2.6.18-2) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * hppa: Fix compiler dependencies. (closes: #389296)
+ * Make cfq the default io scheduler.
+ * Add arcmsr (Areca) driver.
+ * powerpc/prep: Fix compatibility asm symlink.
+ * m68k: Disable initramfs support.
+
+ [ Kyle McMartin ]
+ * hppa: Add parisc patchset.
+
+ [ Norbert Tretkowski ]
+ * [alpha] Workaround undefined symbols by setting CONFIG_SCSI=y for smp flavour.
+ (closes: #369517)
+
+ [ Christian T. Steiges ]
+ * m68k: Update patches for 2.6.18.
+ * m68k: Re-Add m68k-as and m68k-macro patch which allow building with current binutils.
+ * m68k: disable CONFIG_AUDIT for m68k.
+ * m68k/mac: add m68k-no-backlight and m68k-fbcon patch.
+ * m68k/mac: enable SONIC, disable all ADB but CUDA.
+
+ [ Jurij Smakov ]
+ * Add bugfix/proc-fb-reading.patch to fix the inconsistent behaviour
+ of /proc/fb. (Closes: #388815)
+ * sparc: Enable vserver flavour for sparc64. (Closes: #386656)
+
+ -- Bastian Blank <waldi@debian.org> Fri, 29 Sep 2006 14:12:19 +0200
+
+linux-kbuild-2.6 (2.6.18-1) unstable; urgency=low
+
+ * New upstream version.
+ * Use included headers. (closes: #382286, #384211)
+
+ -- Bastian Blank <waldi@debian.org> Mon, 25 Sep 2006 21:45:50 +0200
+
+linux-2.6 (2.6.18-1) unstable; urgency=low
+
+ The unpruned release
+
+ [ Martin Michlmayr ]
+ * Bump build-dependency on kernel-package to 10.054.
+ * arm/iop32x: Build ext2/3 as modules.
+ * arm/iop32x: Disable CONFIG_EMBEDDED.
+ * mipsel/r5k-cobalt: Enable ISDN.
+ * arm/footbridge: Enable the CIFS module (closes: #274808).
+ * arm/nslu2: Drop flavour since this machine is supported by arm/ixp4xx.
+ * arm: Make get_unaligned() work with const pointers and GCC 4.1.
+ * mipsel/r5k-cobalt: Enable CONFIG_BONDING as a module.
+ * arm/iop32x: Likewise.
+ * arm/ixp4xx: Likewise.
+ * arm: Disable CONFIG_AUDIT for now since it's broken.
+
+ [ Sven Luther ]
+ * [powerpc] Enabled the -prep flavour. (Closes: #359025)
+ * [powerpc] The sisfb framebuffer device is now builtin.
+ * [powerpc] Updated the powerpc serial patch. This fixes the XServe serial
+ port, but at the cost powermac pcmcia serial cards support.
+ Thanks go to Mark Hymers for providing the patch.
+ (Closes: #364637, #375194)
+ * [powerpc] Added patch to fix oldworld/quik booting.
+ Thanks fo to Christian Aichinger for investigating to Benjamin
+ Herrenschmidt for providing the patch. (Closes: #366620, #375035).
+ * [powerpc] Fixes hvc_console caused suspsend-to-disk breakage. Thanks to
+ Andrew Morton for providing the patch. (Closes: #387178)
+ * [powerpc] Disabled mv643xx_eth on powerpc64 flavours, as there never was a
+ Marvell Discovery northbrige for 64bit powerpc cpus.
+
+ [ Frederik Schüler ]
+ * Remove obsolete options from amd64 and i386 configs.
+ * Deactivate EVBUG.
+ * Make PARPORT options global.
+ * [i386] Add class definition for 486 flavour.
+
+ [ maximilian attems ]
+ * Enable CONFIG_PRINTER=m for all powerpc flavours.
+ * Enable the new alsa CONFIG_SND_AOA framework for powerpc.
+ * Add the merged advansys pci table patch.
+
+ [ Bastian Blank ]
+ * hppa: Use gcc-4.1.
+ * Only provide 16 legacy ptys.
+
+ [ Norbert Tretkowski ]
+ * [alpha] Updated configs.
+ * [alpha] Disabled CONFIG_AUDIT, broken.
+ * [alpha] Added vserver flavour.
+
+ -- Bastian Blank <waldi@debian.org> Sun, 24 Sep 2006 15:55:37 +0200
+
+linux-2.6 (2.6.17-9) unstable; urgency=medium
+
+ [ Bastian Blank ]
+ * Update vserver patch to 2.0.2.
+ - Fix possible priviledge escalation in remount code. (CVE-2006-4243)
+
+ [ Frederik Schüler ]
+ * Add stable release 2.5.17.12:
+ - sky2: version 1.6.1
+ - sky2: fix fiber support
+ - sky2: MSI test timing
+ - sky2: use dev_alloc_skb for receive buffers
+ - sky2: clear status IRQ after empty
+ - sky2: accept flow control
+ - dm: Fix deadlock under high i/o load in raid1 setup.
+ - Remove redundant up() in stop_machine()
+ - Missing PCI id update for VIA IDE
+ - PKTGEN: Fix oops when used with balance-tlb bonding
+ - PKTGEN: Make sure skb->{nh,h} are initialized in fill_packet_ipv6() too.
+ - Silent data corruption caused by XPC
+ - uhci-hcd: fix list access bug
+ - binfmt_elf: fix checks for bad address
+ - [s390] bug in futex unqueue_me
+ - fcntl(F_SETSIG) fix
+ - IPV6 OOPS'er triggerable by any user
+ - SCTP: Fix sctp_primitive_ABORT() call in sctp_close().
+ - SPARC64: Fix X server crashes on sparc64
+ - TG3: Disable TSO by default
+ - dm: mirror sector offset fix
+ - dm: fix block device initialisation
+ - dm: add module ref counting
+ - dm: fix mapped device ref counting
+ - dm: add DMF_FREEING
+ - dm: change minor_lock to spinlock
+ - dm: move idr_pre_get
+ - dm: fix idr minor allocation
+ - dm snapshot: unify chunk_size
+ - Have ext2 reject file handles with bad inode numbers early.
+ - Allow per-route window scale limiting
+ - bridge-netfilter: don't overwrite memory outside of skb
+ - fix compilation error on IA64
+ - Fix output framentation of paged-skbs
+ - spectrum_cs: Fix firmware uploading errors
+ - TEXTSEARCH: Fix Boyer Moore initialization bug
+ * Add stable release 2.6.17.13:
+ - lib: add idr_replace
+ - pci_ids.h: add some VIA IDE identifiers
+ * Remove patches merged upstream:
+ - s390-kernel-futex-barrier.patch
+ * Unpatch ia64-mman.h-fix.patch
+
+ -- Bastian Blank <waldi@debian.org> Wed, 13 Sep 2006 14:54:14 +0200
+
+linux-2.6 (2.6.17-8) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * arm/ixp4xx: Enable CONFIG_W1.
+
+ [ dann frazier ]
+ * sound-pci-hda-mac-mini-quirks.diff, sound-pci-hda-intel-d965.diff
+ sound-pci-hda-mac-mini-intel945.diff:
+ Updates to patch_sigmatel.c to add x86 mac-mini sound support
+ Thanks to Matt Kraai. (closes: #384972)
+
+ [ Kyle McMartin ]
+ * hppa: Re-enable pa8800 fixing patches from James Bottomley.
+ Pulled fresh from parisc-linux git tree.
+ * ia64: Pull in compile-failure fix from Christian Cotte-Barrot.
+ Pulled from linux-ia64 mailing list. Fix is correct.
+ * hppa/alpha/mips: Fix compile-failure due to missing arch_mmap_check. Patch sent
+ upstream to stable@kernel.org.
+
+ [ dann frazier ]
+ * sym2: only claim "Storage" class devices - the cpqarray driver should be
+ used for 5c1510 devices in RAID mode. (closes: #380272)
+
+ [ Bastian Blank ]
+ * Backport change to allow all hypercalls for xen.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 31 Aug 2006 12:12:51 +0200
+
+linux-2.6 (2.6.17-7) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * arm/iop32x: Enable CONFIG_BLK_DEV_OFFBOARD.
+ * arm/iop32x: Unset CONFIG_BLK_DEV_AMD74XX since it fails on ARM
+ with "Unknown symbol pci_get_legacy_ide_irq".
+ * arm/iop32x: Enable a number of MD and DM modules.
+ * arm/iop32x: Enable some more USB network modules.
+ * mipsel/r5k-cobalt: Increase 8250 NR_UARTS and RUNTIME_UARTS to 4.
+ * mipsel/r5k-cobalt: Fix MAC detection problem on Qube 2700.
+
+ [ Bastian Blank ]
+ * Update vserver patch to 2.0.2-rc29.
+ * Add stable release 2.6.17.10:
+ - Fix possible UDF deadlock and memory corruption (CVE-2006-4145)
+ - elv_unregister: fix possible crash on module unload
+ - Fix sctp privilege elevation (CVE-2006-3745)
+
+ [ maximilian attems ]
+ * Add RAM range to longclass for -bigmem. (closes: 382799)
+ * Add stable release 2.6.17.9:
+ - powerpc: Clear HID0 attention enable on PPC970 at boot time
+ (CVE-2006-4093)
+ * Add stable release 2.6.17.11:
+ - Fix ipv4 routing locking bug
+ - disable debugging version of write_lock()
+ - PCI: fix ICH6 quirks
+ - 1394: fix for recently added firewire patch that breaks things on ppc
+ - Fix IFLA_ADDRESS handling
+ - Fix BeFS slab corruption
+ - Fix timer race in dst GC code
+ - Have ext3 reject file handles with bad inode numbers early
+ - Kill HASH_HIGHMEM from route cache hash sizing
+ - sys_getppid oopses on debug kernel
+ - IA64: local DoS with corrupted ELFs
+ - tpm: interrupt clear fix
+ - ulog: fix panic on SMP kernels
+ - dm: BUG/OOPS fix
+ - MD: Fix a potential NULL dereference in md/raid1
+ - ip_tables: fix table locking in ipt_do_table
+ - swsusp: Fix swap_type_of
+ - sky2: phy power problem on 88e805x
+ - ipx: header length validation needed
+
+ [ Frederik Schüler ]
+ * Activate CONFIG_R8169_VLAN on amd64. (closes: #383707)
+ * Activate EFI boot support on i386. (closes: #381951)
+
+ [ dann frazier ]
+ * Include module.lds in headers package if it exists. (closes: #342246)
+ * Add Apple MacBook product IDs to usbhid and set
+ CONFIG_USB_HIDINPUT_POWERBOOK=y on i386 and amd64. (closes: #383620)
+
+ -- Bastian Blank <waldi@debian.org> Thu, 24 Aug 2006 15:54:51 +0000
+
+linux-2.6 (2.6.17-6) unstable; urgency=low
+
+ [ maximilian attems ]
+ * debian/arch/i386/defines: Activate 686-bigmem flavour for enterprise
+ usage.
+ * Add ubuntu pci table patch for scsi drivers advansys and fdomain.
+
+ [ Martin Michlmayr ]
+ * arm/armeb: Use gcc-4.1.
+ * mips/mipsel: Use gcc-4.1.
+ * arm/ixp4xx: Update config based on the NSLU2 config.
+ * arm/s3c2410: Unset CONFIG_DEBUG_INFO.
+ * arm/iop32x: xscale: don't mis-report 80219 as an iop32x
+ * arm/iop32x: Add an MTD map for IOP3xx boards
+ * arm/iop32x: Add support for the Thecus N2100.
+ * arm/iop32x: Add support for the GLAN Tank.
+ * arm/iop32x: Add a flavour for IOP32x based machines.
+
+ [ Bastian Blank ]
+ * Shrink short descriptions.
+ * Make gcc-4.1 the default compiler.
+ * [powerpc]: Use gcc-4.1.
+ * Move latest and transitional packages to linux-latest-2.6.
+
+ [ Frederik Schüler ]
+ * [amd64] Add smp-alternatives backport.
+ * [amd64] Drop smp flavours.
+ * [amd64] Merge k8 and p4 flavours into a generic one, following upstreams
+ advice.
+ * Activate BSD_PROCESS_ACCT_V3.
+ * Add stable release 2.6.17.8:
+ - ALSA: Don't reject O_RDWR at opening PCM OSS
+ - Add stable branch to maintainers file
+ - tty serialize flush_to_ldisc
+ - S390: fix futex_atomic_cmpxchg_inatomic
+ - Fix budget-av compile failure
+ - cond_resched() fix
+ - e1000: add forgotten PCI ID for supported device
+ - ext3: avoid triggering ext3_error on bad NFS file handle
+ - ext3 -nobh option causes oops
+ - Fix race related problem when adding items to and svcrpc auth cache.
+ - ieee1394: sbp2: enable auto spin-up for Maxtor disks
+ - invalidate_bdev() speedup
+ - Sparc64 quad-float emulation fix
+ - VLAN state handling fix
+ - Update frag_list in pskb_trim
+ - UHCI: Fix handling of short last packet
+ - sky2: NAPI bug
+ - i2c: Fix 'ignore' module parameter handling in i2c-core
+ - scx200_acb: Fix the block transactions
+ - scx200_acb: Fix the state machine
+ - H.323 helper: fix possible NULL-ptr dereference
+ - Don't allow chmod() on the /proc/<pid>/ files
+ - PCI: fix issues with extended conf space when MMCONFIG disabled because of e820
+
+ [ Sven Luther ]
+ * [powerpc] Added console=hvsi0 too to CMDLINE to the powerpc64 flavour, for
+ non-virtualized IBM power machines serial console.
+
+ -- Bastian Blank <waldi@debian.org> Fri, 11 Aug 2006 19:58:06 +0200
+
+linux-kbuild-2.6 (2.6.17-3) unstable; urgency=low
+
+ * Replace own modpost with original one.
+
+ -- Bastian Blank <waldi@debian.org> Tue, 1 Aug 2006 11:01:18 +0200
+
+linux-2.6 (2.6.17-5) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * [arm/nslu2] Enable CONFIG_USB_EHCI_SPLIT_ISO. Closes: #378554
+
+ [ maximilian attems ]
+ * Add stable release 2.6.17.7:
+ - BLOCK: Fix bounce limit address check
+ - v4l/dvb: Fix budget-av frontend detection
+ - v4l/dvb: Fix CI on old KNC1 DVBC cards
+ - v4l/dvb: Fix CI interface on PRO KNC1 cards
+ - v4l/dvb: Backport fix to artec USB DVB devices
+ - v4l/dvb: Backport the DISEQC regression fix to 2.6.17.x
+ - v4l/dvb: stradis: dont export MODULE_DEVICE_TABLE
+ - pnp: suppress request_irq() warning
+ - generic_file_buffered_write(): handle zero-length iovec segments
+ - serial 8250: sysrq deadlock fix
+ - Reduce ACPI verbosity on null handle condition
+ - ieee80211: TKIP requires CRC32
+ - Make powernow-k7 work on SMP kernels.
+ - via-velocity: the link is not correctly detected when the device starts
+ - Add missing UFO initialisations
+ - USB serial ftdi_sio: Prevent userspace DoS (CVE-2006-2936)
+ - cdrom: fix bad cgc.buflen assignment
+ - splice: fix problems with sys_tee()
+ - fix fdset leakage
+ - struct file leakage
+ - XFS: corruption fix
+ - v4l/dvb: Kconfig: fix description and dependencies for saa7115 module
+ - dvb-bt8xx: fix frontend detection for DViCO FusionHDTV DVB-T Lite rev 1.2
+ - IB/mthca: restore missing PCI registers after reset
+ - v4l/dvb: Backport the budget driver DISEQC instability fix
+ - Fix IPv4/DECnet routing rule dumping
+ - pdflush: handle resume wakeups
+ - x86_64: Fix modular pc speaker
+ - Fix powernow-k8 SMP kernel on UP hardware bug.
+ - ALSA: RME HDSP - fixed proc interface (missing {})
+ - ALSA: au88x0 - Fix 64bit address of MPU401 MMIO port
+ - ALSA: Fix a deadlock in snd-rtctimer
+ - ALSA: Fix missing array terminators in AD1988 codec support
+ - ALSA: Fix model for HP dc7600
+ - ALSA: Fix mute switch on VAIO laptops with STAC7661
+ - ALSA: fix the SND_FM801_TEA575X dependencies
+ - ALSA: Fix undefined (missing) references in ISA MIRO sound driver
+ - ALSA: Fix workaround for AD1988A rev2 codec
+ - ALSA: hda-intel - Fix race in remove
+ - Suppress irq handler mismatch messages in ALSA ISA drivers
+ - PKT_SCHED: Fix illegal memory dereferences when dumping actions
+ - PKT_SCHED: Return ENOENT if action module is unavailable
+ - PKT_SCHED: Fix error handling while dumping actions
+ - generic_file_buffered_write(): deadlock on vectored write
+ - ethtool: oops in ethtool_set_pauseparam()
+ - memory hotplug: solve config broken: undefined reference to `online_page'
+ * Add budget-av-compile-fix.patch stable compile fix.
+ * Enable in all configs setting SND_FM801_TEA575X SND_FM801_TEA575X_BOOL=y.
+
+ -- Bastian Blank <waldi@debian.org> Sat, 29 Jul 2006 13:30:06 +0200
+
+linux-2.6 (2.6.17-4) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.17.5:
+ - Fix nasty /proc vulnerability (CVE-2006-3626)
+ * Add stable release 2.6.17.6:
+ - Relax /proc fix a bit
+ * Set section of images to admin.
+
+ [ dann frazier ]
+ * [ia64] Drop the non-SMP flavours; they are not well maintained upstream.
+ Note that the non-SMP flavours have been identical to the SMP builds
+ since 2.6.13-1; this was to avoid having to drop then re-add these
+ flavours if upstream resolved the issue - but that never happened.
+ Note that this is a measurable performance penalty on non-SMP systems.
+
+ -- Bastian Blank <waldi@debian.org> Mon, 17 Jul 2006 11:08:41 +0200
+
+linux-2.6 (2.6.17-3) unstable; urgency=low
+
+ [ maximilian attems ]
+ * Add stable release 2.6.17.2:
+ - ide-io: increase timeout value to allow for slave wakeup
+ - NTFS: Critical bug fix (affects MIPS and possibly others)
+ - Link error when futexes are disabled on 64bit architectures
+ - SCTP: Reset rtt_in_progress for the chunk when processing its sack.
+ - SPARC32: Fix iommu_flush_iotlb end address
+ - ETHTOOL: Fix UFO typo
+ - UML: fix uptime
+ - x86: compile fix for asm-i386/alternatives.h
+ - bcm43xx: init fix for possible Machine Check
+ - SCTP: Fix persistent slowdown in sctp when a gap ack consumes rx buffer.
+ - kbuild: bugfix with initramfs
+ - Input: return correct size when reading modalias attribute
+ - ohci1394: Fix broken suspend/resume in ohci1394
+ - idr: fix race in idr code
+ - USB: Whiteheat: fix firmware spurious errors
+ - libata: minor patch for ATA_DFLAG_PIO
+ - SCTP: Send only 1 window update SACK per message.
+ - PFKEYV2: Fix inconsistent typing in struct sadb_x_kmprivate.
+ - SCTP: Limit association max_retrans setting in setsockopt.
+ - SCTP: Reject sctp packets with broadcast addresses.
+ - IPV6: Sum real space for RTAs.
+ - IPV6 ADDRCONF: Fix default source address selection without
+ CONFIG_IPV6_PRIVACY
+ - IPV6: Fix source address selection.
+ * Add stable release 2.6.17.3:
+ - NETFILTER: SCTP conntrack: fix crash triggered by packet without chunks
+ [CVE-2006-2934]
+ * Deapply merged sparc32-iotlb.patch.
+ * Fix README.Debian: Correct svn location, remove old boot param bswap
+ reference, the asfs patch is in the Debian kernel. Remove reference to
+ AMD 768 erratum 10, it was solved in 2.6.12. Add wording corrections.
+ * Set CONFIG_SERIAL_8250_RN_UARTS=16 for all archs beside mips/m68k unless
+ explicitly set on a specific value. (closes: 377151)
+ * Add stable release 2.6.17.4:
+ - fix prctl privilege escalation and suid_dumpable (CVE-2006-2451)
+
+ [ Sven Luther ]
+ * Re-enabled fs-asfs patch.
+
+ [ Thiemo Seufer ]
+ * [mips,mipsel] Fix sb1 interrupt handlers.
+ * [mips,mipsel] Fix devfs-induced build failure in sb1250 serial driver.
+ * [mips] SGI ip22 RTC was broken, fixed thanks to Julien Blache.
+ * [mips] Fix SGI ip22 serial console, thanks to Julien Blache.
+
+ [ Martin Michlmayr ]
+ * [arm/nslu2] Enable HFS and some other filesystems.
+ * [arm/nslu2] Unset CONFIG_USB_STORAGE_DEBUG. Closes: #377853.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 13 Jul 2006 13:14:53 +0200
+
+linux-kbuild-2.6 (2.6.17-2) unstable; urgency=low
+
+ * Fix uninitialied variable. (closes: #377656)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 11 Jul 2006 10:10:24 +0200
+
+linux-kbuild-2.6 (2.6.17-1) unstable; urgency=low
+
+ * Initial release. (closes: #368544)
+
+ -- Bastian Blank <waldi@debian.org> Sat, 1 Jul 2006 19:10:07 +0200
+
+linux-2.6 (2.6.17-2) unstable; urgency=low
+
+ [ Jurij Smakov ]
+ * [sparc] Switch to gcc-4.1 as it produces a working kernel,
+ while gcc-4.0 does not. No ABI bump neccessary, because
+ 2.6.17-1 sparc binaries never made it to the archive.
+ * [sparc32] Add sparc32-iotlb.patch to fix DMA errors on sparc32.
+
+ [ Sven Luther ]
+ * [powerpc] Added console=hvc0 default commandline option to powerpc64 flavour.
+ * [powerpc] Fixed mkvmlinuz support, which was missing from -1. (Closes: #375645)
+ * [powerpc] Added PowerBook HID support for last-gen PowerBook keyboards.
+ (Closes: #307327)
+
+ [ Martin Michlmayr ]
+ * [mipsel] Fix compilation error in dz serial driver.
+ * [mipsel] Update configs.
+ * [mipsel] Add a build fix for the Cobalt early console support.
+ * [arm/nslu2] Disable SE Linux support for now so the kernel fits into flash.
+
+ [ Christian T. Steigies ]
+ * [m68k] Update patches for 2.6.17.
+ * [m68k] Add m68k-as and m68k-macro patch which allow building with current binutils.
+ * [m68k] Disable all subarches but amiga and mac for official linux-images.
+
+ [ Kyle McMartin ]
+ * [hppa] Update patchset (2.6.17-pa6) from parisc-linux.org.
+ Which fixes relocation errors in modules with 64-bit kernels, and
+ a softlockup on non-SMP flavours with gettimeofday.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 29 Jun 2006 18:49:35 +0200
+
+linux-2.6 (2.6.17-1) unstable; urgency=low
+
+ [ Frederik Schüler ]
+ * New upstream release.
+ * [amd64] Use gcc 4.1.
+ * [amd64] Drop amd64-generic flavor. We will use amd64-k8 for the
+ installer.
+
+ [ Martin Michlmayr ]
+ * [mips] Update patches for 2.6.17.
+ * [arm] Update configs.
+ * [armeb] Update configs.
+
+ [ Thiemo Seufer ]
+ * [mips] Fix SWARM FPU detection.
+ * [mips] Update configurations.
+
+ [ Kyle McMartin ]
+ * [hppa] Set PDC_CHASSIS_WARN to y.
+ * [hppa] Update patchset (2.6.17-pa2) from parisc-linux.org.
+ * [hppa] Change NR_CPUS to 8 from 32 on both SMP flavours.
+ * [hppa] Set PARISC_PAGE_SIZE to 4K on all platforms.
+
+ [ Bastian Blank ]
+ * [s390] Use gcc 4.1.
+ * [i386] Enable REGPARM.
+ * [i386] Use gcc 4.1.
+ * [powerpc] Disable prep.
+
+ [ dann frazier ]
+ * [ia64] Update configs
+ * [ia64] Use gcc 4.1.
+
+ [ maximilian attems ]
+ * Add stable release 2.6.17.1:
+ - xt_sctp: fix endless loop caused by 0 chunk length (CVE-2006-3085)
+
+ -- Bastian Blank <waldi@debian.org> Thu, 22 Jun 2006 12:13:15 +0200
+
+linux-2.6 (2.6.16+2.6.17-rc3-0experimental.1) experimental; urgency=low
+
+ [ Frederik Schüler ]
+ * New upstream release candidate.
+ * Switch HZ from 1000 to 250, following upstreams default.
+ * Activate CONFIG_BCM43XX_DEBUG.
+
+ [ maximilian attems ]
+ * Disable broken and known unsecure LSM modules: CONFIG_SECURITY_SECLVL,
+ CONFIG_SECURITY_ROOTPLUG. Upstream plans to remove them for 2.6.18
+
+ -- Frederik Schüler <fs@debian.org> Sun, 7 May 2006 17:06:29 +0200
+
+linux-2.6.16 (2.6.16-18) unstable; urgency=high
+
+ [ Sven Luther ]
+ * [powerpc] Added console=hvsi0 too to CMDLINE to the powerpc64 flavour,
+ for non-virtualized IBM power machines serial console.
+
+ [ dann frazier ]
+ * fs-ext3-bad-nfs-handle.patch: avoid triggering ext3_error on bad NFS
+ file handle (CVE-2006-3468)
+ * cdrom-bad-cgc.buflen-assign.patch: fix buffer overflow in dvd_read_bca
+ * usb-serial-ftdi_sio-dos.patch: fix userspace DoS in ftdi_sio driver
+
+ [ Bastian Blank ]
+ * Update xen patch to changeset 9762.
+
+ -- Frederik Schüler <fs@debian.org> Fri, 18 Aug 2006 20:29:17 +0200
+
+linux-2.6.16 (2.6.16-17) unstable; urgency=high
+
+ [ Martin Michlmayr ]
+ * Add stable release 2.6.16.22:
+ - powernow-k8 crash workaround
+ - NTFS: Critical bug fix (affects MIPS and possibly others)
+ - JFS: Fix multiple errors in metapage_releasepage
+ - SPARC64: Fix D-cache corruption in mremap
+ - SPARC64: Respect gfp_t argument to dma_alloc_coherent().
+ - SPARC64: Fix missing fold at end of checksums.
+ - scsi_lib.c: properly count the number of pages in scsi_req_map_sg()
+ - I2O: Bugfixes to get I2O working again
+ - Missed error checking for intent's filp in open_namei().
+ - tmpfs: time granularity fix for [acm]time going backwards
+ - USB: Whiteheat: fix firmware spurious errors
+ - fs/namei.c: Call to file_permission() under a spinlock in do_lookup_path()
+ * Add stable release 2.6.16.23:
+ - revert PARPORT_SERIAL should depend on SERIAL_8250_PCI patch
+ - NETFILTER: SCTP conntrack: fix crash triggered by packet without
+ chunks (CVE-2006-2934)
+ * Add stable release 2.6.16.24:
+ - fix prctl privilege escalation and suid_dumpable (CVE-2006-2451)
+ * Add stable release 2.6.16.25:
+ - Fix nasty /proc vulnerability (CVE-2006-3626)
+ * Relax /proc fix a bit (Linus Torvalds)
+
+ * [arm/nslu2] Unset CONFIG_USB_STORAGE_DEBUG. Closes: #377853.
+ * [mips] SGI ip22 RTC was broken, fixed thanks to Julien Blache.
+ * [mips] Fix SGI ip22 serial console, thanks to Julien Blache.
+
+ [ Bastian Blank ]
+ * Fix vserver patch.
+
+ -- Bastian Blank <waldi@debian.org> Sat, 15 Jul 2006 17:18:49 +0200
+
+linux-2.6.16 (2.6.16-16) unstable; urgency=low
+
+ [ Sven Luther ]
+ * [powerpc] Added console=hvc0 default commandline option to powerpc64 flavour.
+ * [powerpc] Now THERM_PM72 and all WINDFARMs are builtin, for better fan control.
+
+ [ Martin Michlmayr ]
+ * [arm/nslu2] Disable SE Linux support for now so the kernel fits into
+ flash. Closes: #376926.
+
+ [ Bastian Blank ]
+ * [powerpc,powerpc-miboot] Enable OpenFirmware device tree support.
+ (closes: #376012)
+
+ -- Bastian Blank <waldi@debian.org> Sat, 8 Jul 2006 17:57:57 +0200
+
+linux-2.6.16 (2.6.16-15) unstable; urgency=low
+
+ [ maximilian attems ]
+ * Add stable release 2.6.16.18:
+ - NETFILTER: SNMP NAT: fix memory corruption (CVE-2006-2444)
+ * Add stable release 2.6.16.19:
+ - NETFILTER: Fix small information leak in SO_ORIGINAL_DST (CVE-2006-1343)
+ * Add stable release 2.6.16.20:
+ - x86_64: Don't do syscall exit tracing twice
+ - Altix: correct ioc4 port order
+ - Input: psmouse - fix new device detection logic
+ - PowerMac: force only suspend-to-disk to be valid
+ - the latest consensus libata resume fix
+ - Altix: correct ioc3 port order
+ - Cpuset: might sleep checking zones allowed fix
+ - ohci1394, sbp2: fix "scsi_add_device failed" with PL-3507 based devices
+ - sbp2: backport read_capacity workaround for iPod
+ - sbp2: fix check of return value of hpsb_allocate_and_register_addrspace
+ - x86_64: x86_64 add crashdump trigger points
+ - ipw2200: Filter unsupported channels out in ad-hoc mode
+ * Add stable release 2.6.16.21:
+ - check_process_timers: fix possible lockup
+ - run_posix_cpu_timers: remove a bogus BUG_ON() (CVE-2006-2445)
+ - xt_sctp: fix endless loop caused by 0 chunk length (CVE-2006-3085)
+ - powerpc: Fix machine check problem on 32-bit kernels (CVE-2006-2448)
+
+ [ Christian T. Steigies ]
+ * [m68k] Add mac via patch from Finn Thain.
+ * [m68k] Enable INPUT_EVDEV.
+
+ [ Martin Michlmayr ]
+ * [mips/b1-bcm91250a] Enable SMP.
+ * [mips] Add a compile fix for the Maxine fb.
+ * [mipsel] Add a patch that let's you enable serial console on DECstation.
+ * [mipsel] Add a patch to get SCSI working on DECstation.
+ * [mipsel] Handle memory-mapped RTC chips properly.
+ * [mipsel] Add configs for r3k-kn02 and r4k-kn04 DECstation.
+ * [arm] Allow RiscPC machines to boot an initrd (tagged list fix).
+ * [arm/nslu2] Enable many modules.
+ * [arm] Build loop support as a module.
+ * [arm] Use the generic netfilter configuration.
+ * [arm/footbridge] Enable sound.
+
+ [ Kyle McMartin ]
+ * [hppa] Pulled patch from cvs to fix build of kernel/ptrace.c which needs
+ {read,write}_can_lock.
+ * [hppa] Disable CONFIG_DETECT_SOFTLOCKUP to fix boot on pa8800 machines.
+
+ [ Sven Luther ]
+ * [powerpc,prep] Added a new ARCH=ppc PReP flavour, currently mostly a copy
+ of the -powerpc one.
+ * Upgraded mkvmlinuz dependency to mkvmlinuz 21.
+
+ [ Bastian Blank ]
+ * Update vserver patch to 2.0.2-rc21.
+ * Bump build-dependency on kernel-package to 10.049.
+
+ [ Jurij Smakov ]
+ * Add dcache-memory-corruption.patch to fix the mremap(), occasionally
+ triggered on sparc in the form of dpkg database corruption. Affects
+ sparc64, mips and generic includes. Thanks to David Miller, original
+ patch is included in 2.6.17.
+ Ref: http://marc.theaimsgroup.com/?l=linux-sparc&m=114920963824047&w=2
+ * Add sparc32-iotlb.patch to fix the DMA errors encountered with latest
+ kernels on sparc32, in particularly HyperSparcs. Thanks to Bob Breuer.
+ Ref: http://marc.theaimsgroup.com/?l=linux-sparc&m=115077649707675&w=2
+
+ -- Bastian Blank <waldi@debian.org> Wed, 21 Jun 2006 14:09:11 +0200
+
+linux-2.6 (2.6.16-14) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.16.16:
+ - fs/locks.c: Fix lease_init (CVE-2006-1860)
+ * Make i386 xen images recommend libc6-xen.
+ * Update vserver patch to 2.0.2-rc20.
+ * Update xen patch to changeset 9687.
+
+ [ Christian T. Steigies ]
+ * [m68k] Add generic m68k ide fix.
+ * [m68k] Add cross-compile instructions.
+ * [m68k] Enable INPUT_EVDEV for yaird.
+ * [m68k] sun3 general compile and scsi fixes, enable sun3 SCSI again.
+
+ [ dann frazier ]
+ * cs4281 - Fix the check of timeout in probe to deal with variable HZ.
+ (closes: #361197)
+
+ [ Norbert Tretkowski ]
+ * [alpha] Readded patch to support prctl syscall, got lost when upgrading
+ to 2.6.16.
+
+ [ Frederik Schüler ]
+ * Add stable release 2.6.16.17:
+ - SCTP: Validate the parameter length in HB-ACK chunk (CVE-2006-1857)
+ - SCTP: Respect the real chunk length when walking parameters
+ (CVE-2006-1858)
+ - ptrace_attach: fix possible deadlock schenario with irqs
+ - Fix ptrace_attach()/ptrace_traceme()/de_thread() race
+ - page migration: Fix fallback behavior for dirty pages
+ - add migratepage address space op to shmem
+ - Remove cond_resched in gather_stats()
+ - VIA quirk fixup, additional PCI IDs
+ - PCI quirk: VIA IRQ fixup should only run for VIA southbridges
+ - Fix udev device creation
+ - limit request_fn recursion
+ - PCI: correctly allocate return buffers for osc calls
+ - selinux: check for failed kmalloc in security_sid_to_context()
+ - TG3: ethtool always report port is TP.
+ - Netfilter: do_add_counters race, possible oops or info leak
+ (CVE-2006-0039)
+ - scx200_acb: Fix resource name use after free
+ - smbus unhiding kills thermal management
+ - fs/compat.c: fix 'if (a |= b )' typo
+ - smbfs: Fix slab corruption in samba error path
+ - fs/locks.c: Fix sys_flock() race
+ - USB: ub oops in block_uevent
+ - via-rhine: zero pad short packets on Rhine I ethernet cards
+ - md: Avoid oops when attempting to fix read errors on raid10
+
+ -- Bastian Blank <waldi@debian.org> Mon, 22 May 2006 14:56:11 +0200
+
+linux-2.6 (2.6.16-13) unstable; urgency=low
+
+ [ Frederik Schüler ]
+ * Add stable release 2.6.16.14:
+ - smbfs chroot issue (CVE-2006-1864)
+
+ [ Bastian Blank ]
+ * Don't make headers packages depend on images.
+ * Bump abiname to 2. (closes: #366291)
+ * Update vserver patch to 2.0.2-rc19.
+ * Update xen patch to changeset 9668.
+ * Remove abi fixes.
+ * Add stable release 2.6.16.15:
+ - SCTP: Allow spillover of receive buffer to avoid deadlock. (CVE-2006-2275)
+ - SCTP: Fix panic's when receiving fragmented SCTP control chunks. (CVE-2006-2272)
+ - SCTP: Fix state table entries for chunks received in CLOSED state. (CVE-2006-2271)
+ - SCTP: Prevent possible infinite recursion with multiple bundled DATA. (CVE-2006-2274)
+ * Switch HZ from 1000 to 250.
+
+ [ Christian T. Steigies ]
+ * [m68k] Add patches that allow building images for atari
+ * [m68k] Enable atyfb driver for atari
+
+ -- Bastian Blank <waldi@debian.org> Wed, 10 May 2006 18:58:44 +0200
+
+linux-2.6 (2.6.16-12) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.16.12:
+ - dm snapshot: fix kcopyd destructor
+ - x86_64: Pass -32 to the assembler when compiling the 32bit vsyscall pages
+ - for_each_possible_cpu
+ - Simplify proc/devices and fix early termination regression
+ - sonypi: correct detection of new ICH7-based laptops
+ - MIPS: Fix tx49_blast_icache32_page_indexed.
+ - NET: e1000: Update truesize with the length of the packet for packet split
+ - i386: fix broken FP exception handling
+ - tipar oops fix
+ - USB: fix array overrun in drivers/usb/serial/option.c
+ - Altix snsc: duplicate kobject fix
+ - Alpha: strncpy() fix
+ - LSM: add missing hook to do_compat_readv_writev()
+ - Fix reiserfs deadlock
+ - make vm86 call audit_syscall_exit
+ - fix saa7129 support in saa7127 module for pvr350 tv out
+ - dm flush queue EINTR
+ - get_dvb_firmware: download nxt2002 firmware from new driver location
+ - cxusb-bluebird: bug-fix: power down corrupts frontend
+ - x86_64: Fix a race in the free_iommu path.
+ - MIPS: Use "R" constraint for cache_op.
+ - MIPS: R2 build fixes for gcc < 3.4.
+ - cs5535_gpio.c: call cdev_del() during module_exit to unmap kobject references and other cleanups
+ - MIPS: Fix branch emulation for floating-point exceptions.
+ - x86/PAE: Fix pte_clear for the >4GB RAM case
+ * Add stable release 2.6.16.13:
+ - NETFILTER: SCTP conntrack: fix infinite loop (CVE-2006-1527)
+ * Remove merged patches.
+ * Rediff xen patch.
+ * Bump build-dependency on kernel-package to 10.047.
+
+ [ Martin Michlmayr ]
+ * [arm] Enable cramfs for ixp4xx and rpc.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 4 May 2006 11:37:26 +0200
+
+linux-2.6 (2.6.16-11) unstable; urgency=low
+
+ * Update vserver patch to 2.0.2-rc18.
+ - Limit ccaps to root inside a guest (CVE-2006-2110)
+ * Conflict with known broken grub versions. (closes: #361308)
+ * Enable s390 vserver image.
+ * Enable xen and xen-vserver images.
+ * Use localversion for kernel-package images. (closes: #365505)
+
+ -- Bastian Blank <waldi@debian.org> Mon, 1 May 2006 16:38:45 +0200
+
+linux-2.6 (2.6.16-10) unstable; urgency=low
+
+ [ Norbert Tretkowski ]
+ * [alpha] Added backport of for_each_possible_cpu() to fix alpha build.
+ (closes: #364206)
+ * Add stable release 2.6.16.10:
+ - IPC: access to unmapped vmalloc area in grow_ary()
+ - Add more prevent_tail_call()
+ - alim15x3: ULI M-1573 south Bridge support
+ - apm: fix Armada laptops again
+ - fbdev: Fix return error of fb_write
+ - Fix file lookup without ref
+ - m41t00: fix bitmasks when writing to chip
+ - Open IPMI BT overflow
+ - x86: be careful about tailcall breakage for sys_open[at] too
+ - x86: don't allow tail-calls in sys_ftruncate[64]()
+ - IPV6: XFRM: Fix decoding session with preceding extension header(s).
+ - IPV6: XFRM: Don't use old copy of pointer after pskb_may_pull().
+ - IPV6: Ensure to have hop-by-hop options in our header of &sk_buff.
+ - selinux: Fix MLS compatibility off-by-one bug
+ - PPC: fix oops in alsa powermac driver
+ - MTD_NAND_SHARPSL and MTD_NAND_NANDSIM should be tristate's
+ - i2c-i801: Fix resume when PEC is used
+ - Fix hotplug race during device registration
+ - Fix truesize underflow
+ - efficeon-agp: Add missing memory mask
+ - 3ware 9000 disable local irqs during kmap_atomic
+ - 3ware: kmap_atomic() fix
+
+ [ maximilian attems ]
+ * Add stable release 2.6.16.11:
+ - Don't allow a backslash in a path component (CVE-2006-1863)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 25 Apr 2006 13:56:19 +0200
+
+linux-2.6 (2.6.16-9) unstable; urgency=low
+
+ [ maximilian attems ]
+ * Add stable release 2.6.16.8:
+ - ip_route_input panic fix (CVE-2006-1525)
+ * Add stable release 2.6.16.9:
+ - i386/x86-64: Fix x87 information leak between processes (CVE-2006-1056)
+
+ [ Bastian Blank ]
+ * Update vserver patch to 2.0.2-rc17.
+
+ -- Bastian Blank <waldi@debian.org> Thu, 20 Apr 2006 15:37:28 +0200
+
+linux-2.6 (2.6.16-8) unstable; urgency=low
+
+ * Fix ABI-breakage introduced in -7. (closes: #363032)
+ * Add stable release 2.6.16.6:
+ - ext3: Fix missed mutex unlock
+ - RLIMIT_CPU: fix handling of a zero limit
+ - alpha: SMP boot fixes
+ - m32r: security fix of {get, put}_user macros
+ - m32r: Fix cpu_possible_map and cpu_present_map initialization for SMP kernel
+ - shmat: stop mprotect from giving write permission to a readonly attachment (CVE-2006-1524)
+ - powerpc: fix incorrect SA_ONSTACK behaviour for 64-bit processes
+ - MPBL0010 driver sysfs permissions wide open
+ - cciss: bug fix for crash when running hpacucli
+ - fuse: fix oops in fuse_send_readpages()
+ - Fix utime(2) in the case that no times parameter was passed in.
+ - Fix buddy list race that could lead to page lru list corruptions
+ - NETFILTER: Fix fragmentation issues with bridge netfilter
+ - USB: remove __init from usb_console_setup
+ - Fix suspend with traced tasks
+ - isd200: limit to BLK_DEV_IDE
+ - edac_752x needs CONFIG_HOTPLUG
+ - fix non-leader exec under ptrace
+ - sky2: bad memory reference on dual port cards
+ - atm: clip causes unregister hang
+ - powerpc: iSeries needs slb_initialize to be called
+ - Fix block device symlink name
+ - Incorrect signature sent on SMB Read
+ * Add stable release 2.6.16.7:
+ - fix MADV_REMOVE vulnerability (CVE-2006-1524 for real this time)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 18 Apr 2006 16:22:31 +0200
+
+linux-2.6 (2.6.16-7) unstable; urgency=low
+
+ [ Frederik Schüler ]
+ * Add stable release 2.6.16.3:
+ - Keys: Fix oops when adding key to non-keyring (CVE-2006-1522)
+
+ [ Bastian Blank ]
+ * Add stable release 2.6.16.4:
+ - RCU signal handling (CVE-2006-1523)
+
+ [ Sven Luther ]
+ * [powerpc] Transitioned mkvmlinuz support patch to the 2.6.16 ARCH=powerpc
+ tree. PReP is broken in 2.6.16 though.
+
+ [ maximilian attems ]
+ * Add stable release 2.6.16.5:
+ - x86_64: Clean up execve
+ - x86_64: When user could have changed RIP always force IRET (CVE-2006-0744)
+ * Disable CONFIG_SECCOMP (adds useless overhead on context-switch) -
+ thanks to fs for checking abi.
+
+ [ Christian T. Steigies ]
+ * [m68k] update m68k patch and config to 2.6.16, temporarily disable atari
+
+ -- Bastian Blank <waldi@debian.org> Sat, 15 Apr 2006 13:56:05 +0200
+
+linux-2.6 (2.6.16-6) unstable; urgency=medium
+
+ [ Bastian Blank ]
+ * Provide version infos in support package and don't longer rely on the
+ changelog.
+ * [amd64/i386] Enable cpu hotplug support.
+
+ [ maximilian attems ]
+ * Add stable release 2.6.16.2:
+ - PCMCIA_SPECTRUM must select FW_LOADER
+ - drivers/net/wireless/ipw2200.c: fix an array overun
+ - AIRO{,_CS} <-> CRYPTO fixes
+ - tlclk: fix handling of device major
+ - fbcon: Fix big-endian bogosity in slow_imageblit()
+ - Fix NULL pointer dereference in node_read_numastat()
+ - USB: EHCI full speed ISO bugfixes
+ - Mark longhaul driver as broken.
+ - fib_trie.c node freeing fix
+ - USB: Fix irda-usb use after use
+ - sysfs: zero terminate sysfs write buffers (CVE-2006-1055)
+ - USB: usbcore: usb_set_configuration oops (NULL ptr dereference)
+ - pcmcia: permit single-character-identifiers
+ - hostap: Fix EAPOL frame encryption
+ - wrong error path in dup_fd() leading to oopses in RCU
+ - {ip, nf}_conntrack_netlink: fix expectation notifier unregistration
+ - isicom must select FW_LOADER
+ - knfsd: Correct reserved reply space for read requests.
+ - Fix module refcount leak in __set_personality()
+ - sbp2: fix spinlock recursion
+ - powerpc: make ISA floppies work again
+ - opti9x - Fix compile without CONFIG_PNP
+ - Add default entry for CTL Travel Master U553W
+ - Fix the p4-clockmod N60 errata workaround.
+ - kdump proc vmcore size oveflow fix
+
+ -- Bastian Blank <waldi@debian.org> Mon, 10 Apr 2006 16:09:51 +0200
+
+linux-2.6 (2.6.16-5) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Provide real dependency packages for module building.
+ - Add linux-headers-$version-$abiname-all and
+ linux-headers-$version-$abiname-all-$arch.
+ * Rename support package to linux-support-$version-$abiname.
+ * Fix module package output.
+ * Include .kernelrelease in headers packages. (closes: #359813)
+ * Disable Cumana partition support completely. (closes: #359207)
+ * Update vserver patch to 2.0.2-rc15.
+
+ [ dann frazier ]
+ * [ia64] initramfs-tools works now, no longer restrict initramfs-generators
+
+ -- Bastian Blank <waldi@debian.org> Mon, 3 Apr 2006 14:00:08 +0200
+
+linux-2.6 (2.6.16-4) unstable; urgency=medium
+
+ [ Martin Michlmayr ]
+ * [arm/armeb] Update nslu2 config.
+ * Add stable release 2.6.16.1:
+ - Fix speedstep-smi assembly bug in speedstep_smi_ownership
+ - DMI: fix DMI onboard device discovery
+ - cciss: fix use-after-free in cciss_init_one
+ - DM: Fix bug: BIO_RW_BARRIER requests to md/raid1 hang.
+ - fix scheduler deadlock
+ - proc: fix duplicate line in /proc/devices
+ - rtc.h broke strace(1) builds
+ - dm: bio split bvec fix
+ - v9fs: assign dentry ops to negative dentries
+ - i810fb_cursor(): use GFP_ATOMIC
+ - NET: Ensure device name passed to SO_BINDTODEVICE is NULL terminated.
+ - XFS writeout fix
+ - sysfs: fix a kobject leak in sysfs_add_link on the error path
+ - get_cpu_sysdev() signedness fix
+ - firmware: fix BUG: in fw_realloc_buffer
+ - sysfs: sysfs_remove_dir() needs to invalidate the dentry
+ - TCP: Do not use inet->id of global tcp_socket when sending RST (CVE-2006-1242)
+ - 2.6.xx: sata_mv: another critical fix
+ - Kconfig: VIDEO_DECODER must select FW_LOADER
+ - V4L/DVB (3324): Fix Samsung tuner frequency ranges
+ - sata_mv: fix irq port status usage
+
+ -- Bastian Blank <waldi@debian.org> Tue, 28 Mar 2006 17:19:10 +0200
+
+linux-2.6 (2.6.16-3) unstable; urgency=low
+
+ [ Frederik Schüler ]
+ * [amd64] Add asm-i386 to the linux-headers packages.
+
+ [ Jonas Smedegaard ]
+ * Tighten yaird dependency to at least 0.0.12-8 (supporting Linux
+ 2.6.16 uppercase hex in Kconfig and new IDE sysfs naming, and VIA
+ IDE on powerpc).
+
+ [ Martin Michlmayr ]
+ * [arm/armeb] Enable CONFIG_NFSD on NSLU2 again. Closes: #358709.
+ * [arm/footbridge] CONFIG_NE2K_PCI should be a module, not built-in.
+ * [arm/footbridge] Enable CONFIG_BLK_DEV_IDECD=m since the CATS can
+ have a CD-ROM drive.
+ * [mips/sb1*] Use ttyS rather than duart as the name for the serial
+ console since the latter causes problems with debian-installer.
+
+ [ Bastian Blank ]
+ * Update vserver patch to 2.0.2-rc14.
+ - Fix sendfile. (closes: #358391, #358752)
+
+ -- Bastian Blank <waldi@debian.org> Mon, 27 Mar 2006 16:08:20 +0200
+
+linux-2.6 (2.6.16-2) unstable; urgency=low
+
+ [ dann frazier ]
+ * [ia64] Set unconfigured options:
+ CONFIG_PNP_DEBUG=n and CONFIG_NET_SB1000=m
+ * [hppa] Update config for 2.6.16
+
+ [ Martin Michlmayr ]
+ * [mips/mipsel] Put something in the generic config file because diff
+ will otherwise remove the empty file, causing the build to fail.
+ * [mipsel/r5k-cobalt] Set CONFIG_PACKET=y.
+ * [arm] Set CONFIG_MACLIST=y for ixp4xx because nas100d needs it.
+
+ [ Frederik Schüler ]
+ * Add Maximilian Attems to uploaders list.
+
+ -- Martin Michlmayr <tbm@cyrius.com> Wed, 22 Mar 2006 15:15:14 +0000
+
+linux-2.6 (2.6.16-1) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * New upstream release.
+ * Default to initramfs-tools 0.55 or higher on s390.
+
+ [ maximilian attems ]
+ * Default to initramfs-tools on arm and armeb.
+
+ [ Martin Michlmayr ]
+ * [mips/mipsel] Add an image for the Broadcom BCM91480B evaluation board
+ (aka "BigSur").
+ * [arm, armeb] Enable the netconsole module.
+ * [mipsel/cobalt] Enable the netconsole module.
+ * [mips] SB1: Fix interrupt disable hazard (Ralf Baechle).
+ * [mips] SB1: Support for 1480 ethernet (Broadcom).
+ * [mips] SB1: Support for NAPI (Tom Rix).
+ * [mips] SB1: DUART support (Broadcom).
+ * [mips] Work around bad code generation for <asm/io.h> (Ralf Baechle).
+ * [mips] Fix VINO drivers when using a 64-bit kernel (Mikael Nousiainen).
+ * [arm/armeb] Update configs for 2.6.16.
+ * [mips/mipsel] Update configs for 2.6.16.
+ * [arm/armeb] Enable the SMB module on NSLU2.
+ * [mipsel] Enable parallel port modules for Cobalt since there are PCI
+ cards that can be used in a Qube.
+ * [mipsel] Enable the JFS module on Cobalt.
+
+ [ dann frazier ]
+ * [ia64] use yaird on ia64 until #357414 is fixed
+ * [ia64] Update configs for 2.6.16
+
+ -- Bastian Blank <waldi@debian.org> Tue, 21 Mar 2006 16:12:16 +0100
+
+linux-2.6 (2.6.15+2.6.16-rc5-0experimental.1) experimental; urgency=low
+
+ [ Frederik Schüler ]
+ * New upstream release candidate.
+
+ [ Martin Michlmayr ]
+ * Add initial mips/mipsel 2.6 kernels.
+ * Important changes compared to the 2.4 kernels:
+ - Drop the XXS1500 flavour since there's little interest in it.
+ - Drop the LASAT flavour since these machines never went into
+ production.
+ - Drop the IP22 R5K (Indy, Indigo2) flavour since the IP22 R4K
+ image now also works on machines with a R5K CPU.
+ - Add an image for SGI IP32 (O2).
+ - Rename the sb1-swarm-bn flavour to sb1-bcm91250a.
+ - Enable PCI network (and other) modules on Cobalt. Closes: #315895.
+ * Add various MIPS related patches:
+ - Fix iomap compilation on machines without COW.
+ - Improve gettimeofday on MIPS.
+ - Fix an oops on IP22 zerilog (serial console).
+ - Improve IDE probing so it won't take so long on Cobalt.
+ - Probe for IDE disks on SWARM.
+ - Test whether there's a scache (fixes Cobalt crash).
+ - Add Tulip fixes for Cobalt.
+ * Fix a typo in the description of the linux-doc-* package,
+ thanks Justin Pryzby. Closes: #343424.
+ * [arm] Enable nfs and nfsd modules.
+ * [arm/footbride] Suggest nwutil (Netwinder utilities).
+
+ -- Frederik Schüler <fs@debian.org> Thu, 9 Mar 2006 14:13:17 +0000
+
+linux-2.6 (2.6.15+2.6.16-rc4-0experimental.1) experimental; urgency=low
+
+ [ Frederik Schüler ]
+ * New upstream release.
+ * Activate CONFIG_DVB_AV7110_OSD on alpha amd64 and ia64.
+ Closes: #353292
+ * Globally enable NAPI on all network card drivers which support it.
+
+ [ maximilian attems ]
+ * Drop fdutils from i386 and amd64 Suggests.
+ * Swap lilo and grub Suggests for i386 and amd64.
+
+ [ Jurij Smakov ]
+ * Make sure that LOCALVERSION environment variable is not
+ passed to a shell while invoking make-kpkg, since it
+ appends it to the version string, breaking the build.
+ Closes: #349472
+ * [sparc32] Re-enable the building of sparc32 images.
+ * [sparc64] Re-add (partial) sparc64-atyf-xl-gr.patch, since it
+ was only partially applied upstream, so the problem (garbled
+ screen output on SunBlade 100) is still present. Thanks to
+ Luis Ortiz for pointing it out.
+ * Bump the build-dep on kernel-package to 10.035, which fixes
+ the problem with building documentation packages.
+
+ [ Martin Michlmayr ]
+ * [sparc] Add sys_newfstatat -> sys_fstatat64 fix from git.
+ * [arm] Update configs for 2.6.16-rc3.
+ * [armeb] Update configs for 2.6.16-rc3.
+ * [arm/armeb] Fix compilation error on NSLU2 due to recent flash
+ changes.
+ * [arm/armeb] Fix a compilation error in the IXP4xx beeper support
+ (Alessandro Zummo).
+
+ [ Norbert Tretkowski ]
+ * [alpha] Update arch/alpha/config* for 2.6.16-rc3.
+
+ -- Bastian Blank <waldi@debian.org> Fri, 24 Feb 2006 16:02:11 +0000
+
+linux-2.6 (2.6.15-8) unstable; urgency=high
+
+ [ maximilian attems ]
+ * Add stable Release 2.6.15.5:
+ - Fix deadlock in br_stp_disable_bridge
+ - Fix a severe bug
+ - i386: Move phys_proc_id/early intel workaround to correct function
+ - ramfs: update dir mtime and ctime
+ - sys_mbind sanity checking
+ - Fix s390 build failure.
+ - Revert skb_copy_datagram_iovec() recursion elimination.
+ - s390: add #ifdef __KERNEL__ to asm-s390/setup.h
+ - netfilter missing symbol has_bridge_parent
+ - hugetlbfs mmap ENOMEM failure
+ - IB/mthca: max_inline_data handling tweaks
+ - it87: Fix oops on removal
+ - hwmon it87: Probe i2c 0x2d only
+ - reiserfs: disable automatic enabling of reiserfs inode attributes
+ - Fix snd-usb-audio in 32-bit compat environment
+ - dm: missing bdput/thaw_bdev at removal
+ - dm: free minor after unlink gendisk
+ - gbefb: IP32 gbefb depth change fix
+ - shmdt cannot detach not-alined shm segment cleanly.
+ - Address autoconfiguration does not work after device down/up cycle
+ - gbefb: Set default of FB_GBE_MEM to 4 MB
+ - XFS ftruncate() bug could expose stale data (CVE-2006-0554)
+ - sys_signal: initialize ->sa_mask
+ - do_sigaction: cleanup ->sa_mask manipulation
+ - fix zap_thread's ptrace related problems
+ - fix deadlock in ext2
+ - cfi: init wait queue in chip struct
+ - sd: fix memory corruption with broken mode page headers
+ - sbp2: fix another deadlock after disconnection
+ - skge: speed setting
+ - skge: fix NAPI/irq race
+ - skge: genesis phy initialization fix
+ - skge: fix SMP race
+ - x86_64: Check for bad elf entry address (CVE-2006-0741)
+ - alsa: fix bogus snd_device_free() in opl3-oss.c
+ - ppc32: Put cache flush routines back into .relocate_code section
+ - sys32_signal() forgets to initialize ->sa_mask
+ - Normal user can panic NFS client with direct I/O (CVE-2006-0555)
+ * Deactivate merged duplicates: s390-klibc-buildfix.patch,
+ powerpc-relocate_code.patch.
+ * Add stable Release 2.6.15.6:
+ - Don't reset rskq_defer_accept in reqsk_queue_alloc
+ - fs/nfs/direct.c compile fix
+ - mempolicy.c compile fix, make sure BITS_PER_BYTE is defined
+ - [IA64] die_if_kernel() can return (CVE-2006-0742)
+
+ [ Sven Luther ]
+ * [powerpc] Disabled CONFIG_IEEE1394_SBP2_PHYS_DMA, which was broken on
+ powerpc64, as it used the long deprecated bus_to_virt symbol.
+ (Closes: #330225)
+ * [powerpc] Fixed gettimeofday breakage causing clock drift.
+
+ -- Bastian Blank <waldi@debian.org> Mon, 6 Mar 2006 11:06:28 +0100
+
+linux-2.6 (2.6.15-7) unstable; urgency=low
+
+ [ Norbert Tretkowski ]
+ * [alpha] Disabled CONFIG_ALPHA_LEGACY_START_ADDRESS for -alpha-generic and
+ -alpha-smp flavours, and introduced a new -alpha-legacy flavour for MILO
+ based machines, which has CONFIG_ALPHA_LEGACY_START_ADDRESS enabled.
+ (closes: #352186)
+ * [alpha] Added new patch to support prctl syscall. (closes: #349765)
+ * [i386] Renamed kernel-image-2.6-486 to kernel-image-2.6-386, it's meant for
+ transition only, and kernel-image-2.6-386 is the package name in sarge.
+
+ [ Jurij Smakov ]
+ * Bump build-dependency on kernel-package to 10.035, which is fixed
+ to build the documentation packages again.
+ Closes: #352000, #348332
+
+ [ Frederik Schüler ]
+ * Activate CONFIG_DVB_AV7110_OSD on alpha amd64 and ia64.
+ Closes: #353292
+ * Deactivate CONFIG_FB_ATY_XL_INIT on all architectures: it is broken and
+ already removed in 2.6.16-rc.
+ Closes: #353310
+
+ [ Christian T. Steigies ]
+ * [m68k] build in cirrusfb driver
+
+ -- Bastian Blank <waldi@debian.org> Tue, 21 Feb 2006 17:35:21 +0000
+
+linux-2.6 (2.6.15-6) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Moved the mkvmlinuz support patch modification to a -1 version of the
+ patch.
+
+ [ maximilian attems ]
+ * Add stable treee 2.6.15.4
+ - PCMCIA=m, HOSTAP_CS=y is not a legal configuration
+ - Input: iforce - do not return ENOMEM upon successful allocation
+ - x86_64: Let impossible CPUs point to reference per cpu data
+ - x86_64: Clear more state when ignoring empty node in SRAT parsing
+ - x86_64: Dont record local apic ids when they are disabled in MADT
+ - Fix keyctl usage of strnlen_user()
+ - Kill compat_sys_clock_settime sign extension stub.
+ - Input: grip - fix crash when accessing device
+ - Input: db9 - fix possible crash with Saturn gamepads
+ - Input: iforce - fix detection of USB devices
+ - Fixed hardware RX checksum handling
+ - SCSI: turn off ordered flush barriers
+ - Input: mousedev - fix memory leak
+ - seclvl settime fix
+ - fix regression in xfs_buf_rele
+ - md: remove slashes from disk names when creation dev names in sysfs
+ - d_instantiate_unique / NFS inode leakage
+ - dm-crypt: zero key before freeing it
+ - bridge: netfilter races on device removal
+ - bridge: fix RCU race on device removal
+ - SELinux: fix size-128 slab leak
+ - __cmpxchg() must really always be inlined
+ - emu10k1 - Fix the confliction of 'Front' control
+ - Input: sidewinder - fix an oops
+ * Deactivate merged alpha-cmpxchg-inline.patch, sparc64-clock-settime.patch.
+
+ [ Christian T. Steigies ]
+ * [m68k] Add fix for m68k/buddha IDE and m68k/mac SCSI driver
+ * [m68k] Patch by Peter Krummrich to stop flickering pixels with PicassoII
+ * [m68k] make Amiga keyboard usable again, patch by Roman Zippel
+ * [m68k] prevent wd33c93 SCSI driver from crashing the kernel, patch by Roman Zippel
+ * [m68k] remove SBCs from VME descriptions (closes: #351924)
+
+ -- Frederik Schüler <fs@debian.org> Fri, 10 Feb 2006 15:33:21 +0000
+
+linux-2.6 (2.6.15-5) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * Add a fix for the input support for the ixp4xx beeper driver from
+ 2.6.16-rc2.
+ * Add stable tree 2.6.15.3:
+ - Fix extra dst release when ip_options_echo fails (CVE-2006-0454)
+
+ [ Sven Luther ]
+ * [powerpc] Removed -o root -g root option to mkvmlinuz support patch.
+ (Closes: #351412)
+
+ -- Sven Luther <luther@debian.org> Tue, 7 Feb 2006 19:23:14 +0000
+
+linux-2.6 (2.6.15-4) unstable; urgency=low
+
+ [ Jurij Smakov ]
+ * [sparc64] Add sparc64-clock-settime.patch to fix the incorrect
+ handling of the clock_settime syscall arguments, which resulted
+ in a hang when trying to set the date using 'date -s'. Patch
+ by David Miller is applied upstream. Thanks to Ludovic Courtes
+ and Frans Pop for reporting and testing.
+ Ref: http://marc.theaimsgroup.com/?t=113861017400002&r=1&w=2
+
+ [ Christian T. Steigies ]
+ * [m68k] update m68k patch and config to 2.6.15
+ * [m68k] SCSI drivers need to be built in until ramdisk generator tools
+ supports loading scsi modules
+ * [m68k] ISCSI and IDE-TAPE don't compile, disabled
+ * [m68k] set CC_OPTIMIZE_FOR_SIZE=n
+ * [m68k] added vmeints patch which fixes building for vme
+
+ [ maximilian attems ]
+ * Use initramfs-tools for ia64 - fixed klibc.
+ * Add stable tree 2.6.15.2:
+ - Fix double decrement of mqueue_mnt->mnt_count in sys_mq_open
+ - (CVE-2005-3356)
+ - Mask off GFP flags before swiotlb_alloc_coherent
+ - usb-audio: don't use empty packets at start of playback
+ - Make second arg to skb_reserved() signed.
+ - Input: HID - fix an oops in PID initialization code
+ - Fix oops in ufs_fill_super at mount time
+ - Kill blk_attempt_remerge()
+ - Fix i2o_scsi oops on abort
+ - Fix mkiss locking bug
+ - Fix timekeeping on sparc64 ultra-IIe machines
+ - Someone broke reiserfs v3 mount options and this fixes it
+ * Deactivate sparc64-jumping-time.patch, amd64-pppd-fix.patch incl in aboves.
+ * Add s390-klibc-buildfix.patch, regression due to header file changes.
+
+ [ Steve Langasek ]
+ * [alpha] set __attribute__((always_inline)) on __cmpxchg(), to avoid
+ wrong optimizations with -Os (Closes: #347556).
+
+ [ Martin Michlmayr ]
+ * Add input support for the ixp4xx beeper driver (Alessandro Zummo).
+ * [arm] Add NSLU2 specific portion of ixp4xx beeper driver (Alessandro Zummo).
+ * [arm/nslu2] Build PPP as a module.
+ * [arm/nslu2] Enable wireless.
+ * [arm/nslu2] Enable most USB modules.
+ * [arm/nslu2] Enable ALSA and USB sound modules.
+ * [arm/nslu2] Set 4 MB as the size of the initrd in the kernel cmd line.
+ * [arm/footbridge] Set CONFIG_BLK_DEV_RAM_SIZE to 8192.
+ * [armeb] Add support for big-endian ARM.
+ * [armeb/nslu2] Use the nslu2 config from arm.
+
+ [ Frederik Schüler ]
+ * [amd64] Add amd64-pppd-fix.patch to fix kernel panic when using pppd.
+ (Closes: #347711)
+ * Add 64bit-vidiocswin-ioctl-fix.patch to fix VIDIOCSWIN ioctl on 64bit
+ kernel 32bit userland setups. (Closes: #349338)
+
+ [ Sven Luther ]
+ * [powerpc] Adapted apus config file to be more modular and in sync with the
+ other powerpc configs. Scsi drivers are disabled as they don't build
+ cleanly though (need some esp stuff).
+ * [powerpc] Default to initramfs-tools as initramfs generator, as klibc
+ build is fixed now.
+
+ [ Bastian Blank ]
+ * [powerpc] Fix dependencies of image packages.
+
+ -- maximilian attems <maks@sternwelten.at> Wed, 1 Feb 2006 11:34:20 +0100
+
+linux-2.6 (2.6.15-3) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * [arm] Update configs for 2.6.15; closes: #347998.
+ * [arm] Activate tmpfs.
+ * [arm] Allow modules to be unloaded.
+ * [arm] Enable CONFIG_INPUT_EVDEV since yaird needs this module in
+ order to generate initrds.
+ * [arm/footbridge] Activate IDEPCI so SL82C105 will really be
+ compiled in.
+ * [arm/footbridge] Activate the right network drivers (Tulip and
+ NE2K).
+ * [arm/footbridge] Enable more framebuffer drivers.
+ * debian/patches/arm-fix-dc21285.patch: Fix compilation of DC21285
+ flash driver.
+ * [arm/footbridge] Enable MTD and the DC21285 flash driver.
+ * [arm/footbridge] Enable RAID and LVM modules.
+ * [arm/footbridge] Enable USB modules.
+ * [arm/nslu2] Add an image for Network Storage Link for USB 2.0 Disk
+ Drives.
+ * debian/patches/arm-memory-h-page-shift.patch: Fix error "PAGE_SHIFT
+ undeclared" (Rod Whitby).
+ * debian/patches/mtdpart-redboot-fis-byteswap.patch: recognise a foreign
+ endian RedBoot partition table (John Bowler).
+ * debian/patches/maclist.patch: Add support for the maclist interface
+ (John Bowler).
+ * debian/patches/arm-nslu2-maclist.patch: Add NSLU2 maclist support
+ (John Bowler).
+ * [arm/nslu2] Activate maclist.
+
+ [ maximilian attems ]
+ * Add stable tree 2.6.15.1:
+ - arch/sparc64/Kconfig: fix HUGETLB_PAGE_SIZE_64K dependencies
+ - moxa serial: add proper capability check
+ - fix /sys/class/net/<if>/wireless without dev->get_wireless_stats
+ - Don't match tcp/udp source/destination port for IP fragments
+ - Fix sys_fstat64() entry in 64-bit syscall table.
+ - UFS: inode->i_sem is not released in error path
+ - netlink oops fix due to incorrect error code
+ - Fix onboard video on SPARC Blade 100 for 2.6.{13,14,15}
+ - Fix DoS in netlink_rcv_skb() (CVE-2006-0035)
+ - fix workqueue oops during cpu offline
+ - Fix crash in ip_nat_pptp (CVE-2006-0036)
+ - Fix another crash in ip_nat_pptp (CVE-2006-0037)
+ - ppc32: Re-add embed_config.c to ml300/ep405
+ - Fix ptrace/strace
+ - vgacon: fix doublescan mode
+ - BRIDGE: Fix faulty check in br_stp_recalculate_bridge_id()
+ - skge: handle out of memory on ring changes
+ * Drop merged patch:
+ - sparc64-atyfb-xl-gr-final.patch
+
+ [ Simon Horman ]
+ * Fix booting on PReP machines
+ (Closes: #348040)
+ powerpc-relocate_code.patch
+
+ -- Simon Horman <horms@verge.net.au> Tue, 17 Jan 2006 18:01:17 +0900
+
+linux-2.6 (2.6.15-2) unstable; urgency=low
+
+ [ maximilian attems ]
+ * Default to initramfs-tools as initramfs generator for amd64, hppa, i386,
+ alpha and sparc. More archs will be added once klibc matures.
+ (Closes: #346141, #343147, #341524, #346305)
+ * Backport alsa patch for opl3 - Fix the unreleased resources.
+ (Closes: #346273)
+ * Readd buslogic-pci-id-table.patch.
+
+ [ dann frazier ]
+ * [ia64] Update config for 2.6.15.
+
+ [ Frederik Schüler ]
+ * Make CONFIG_IPW2100 a per-architecture option and deactivate it on all
+ architectures but i386. (Closes: #344515)
+
+ [ Sven Luther ]
+ * Removed spurious file from powerpc-apus patch. (Closes: #346159)
+
+ [ Norbert Tretkowski ]
+ * Backport the generic irq framework for alpha. (closes: #339080)
+
+ [ Bastian Blank ]
+ * Remove pre-sarge conflict with hotplug.
+ * Fix hppa diff to apply.
+ * Make the latest packages depend on the corect version of the real images.
+ (closes: #346366)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 10 Jan 2006 16:54:21 +0100
+
+linux-2.6 (2.6.15-1) unstable; urgency=low
+
+ [ Sven Luther ]
+ * New upstream release.
+ * [powerpc] Now use ARCH=powerpc for 64bit powerpc flavours, 32bit still
+ stays with ARCH=ppc for now.
+ * [powerpc] Readded PReP Motorola PowerStack II Utah IDE interrupt
+ (Closes: #345424)
+ * [powerpc] Fixed apus patch.
+ * Added make-kpkg --arch option support to gencontrol.py.
+ * Added debian/bin/kconfig.ml to process config file snipplet, so we can
+ preserve the pre 2.6.15 ordering of config file snipplets. Upto 2.6.15
+ the kernel Kconfig magic apparently kept the later occuring config options,
+ but it seems that this is no more the case. Instead of catting the config
+ files together, not use the kconfig.ml script to read in the files from
+ more generic to more specific, and keep only the more specific.
+
+ [ Bastian Blank ]
+ * [s390] Update configs.
+
+ [ Kyle McMartin ]
+ * [hppa] Snag latest hppa.diff from cvs.parisc-linux.org.
+ * [hppa] Update configs for 2.6.15.
+ * [hppa] Change parisc kernel names to something less ambiguous.
+
+ [ dann frazier ]
+ * [ia64] Update ia64 configs
+
+ [ maximilian attems ]
+ * Drop modular-ide.patch, nacked by ide upstream. Prevents udev to load
+ ide-generic and those successfull boots with initramfs-tools.
+ * Disable CONFIG_USB_BANDWIDTH, causes major trouble for alsa usb cards.
+
+ [ Norbert Tretkowski ]
+ * [alpha] Removed conflict with initramfs-tools, thanks vorlon for finding
+ the klibc bug!
+
+ [ Jonas Smedegaard ]
+ * Adjust short description of transitional package kernel-image-2.6-
+ 486 to mention 2.6 (not 2.6.12).
+ * Clean duplicate Kconfig options.
+
+ [ Frederik Schüler ]
+ * Add updated version of drivers-scsi-megaraid_splitup.patch.
+ * Deactivate CONFIG_IDE_TASK_IOCTL on alpha and ia64 and make it a global
+ option.
+ * Make CONFIG_VIDEO_SAA7134 a global option.
+ * New option CONFIG_CC_OPTIMIZE_FOR_SIZE set per-arch.
+ * Rename i386 368 flavour to 486.
+ * Add myself to uploaders.
+ * Readdition of qla2xxx drivers, as firmware license has been fixed.
+ * Make CONFIG_PACKET, PACKET_MM and UNIX builtin on all architectures:
+ statically linked has better performance then modules due to TLB issue.
+ * clean up debian-patches dir: remove all obsolete patches:
+ - alpha-compile-fix.patch: obsolete
+ - amd64-int3-fix.patch: fixed since 2.6.12
+ - net-ipconntrack-nat-fix.patch: merged upstream after 2.6.14 release
+ - net-nf_queue-oops.patch: merged upstream after 2.6.14 release
+ - qla2xxx-removed.patch: obsolete
+ * Drop M386 support remains from the i386 386 flavour: built with M486
+ from now on.
+
+ [ Martin Michlmayr ]
+ * [arm] Don't define "compiler" since GCC 4.x is the default now anyway.
+ * [arm] Add descriptions for "class" and "longclass".
+ * [arm] Compile CONFIG_BLK_DEV_SL82C105 support into the kernel on
+ Footbridge.
+ * [arm] Compile ext3 support into the kernel on Footbridge.
+ * [arm] Turn on CONFIG_SERIAL_8250 support on Footbridge.
+
+ [ Jurij Smakov ]
+ * [sparc] Correct the patch for the atyfb framebuffer driver
+ (sparc64-atyfb-xl-gr.patch) to finally fix the console and X
+ image defects on Blade 100/150. The new patch is named
+ sparc64-atyfb-xl-gr-final.patch to avoid the confusion.
+ Thanks to Luis F. Ortiz for fixing the patch and Luigi Gangitano
+ for testing it out.
+ * Drop tty-locking-fixes9.patch, which was preventing the oops during
+ shutdown on some sparc machines with serial console. Proper fix has
+ been incorporated upstream.
+
+ [ Simon Horman ]
+ * Enable MKISS globally (closes: #340215)
+ * Add recommends libc6-i686 to 686 and k7 image packages
+ (closes: #278729)
+ * Enable OBSOLETE_OSS_USB_DRIVER and USB_AUDIO
+ as alsa snd-usb-audio still isn't quite there.
+ I expect this to be re-disabled at some stage,
+ possibly soon if it proves to be a source of bugs.
+ (closes: #340388)
+
+ -- Sven Luther <luther@debian.org> Tue, 3 Jan 2006 06:48:07 +0000
+
+linux-2.6 (2.6.14-7) unstable; urgency=low
+
+ [ maximilian attems ]
+ * Add stable tree 2.6.14.5 fixes:
+ - setting ACLs on readonly mounted NFS filesystems (CVE-2005-3623)
+ - Fix bridge-nf ipv6 length check
+ - Perform SA switchover immediately.
+ - Input: fix an OOPS in HID driver
+ - Fix hardware checksum modification
+ - kernel/params.c: fix sysfs access with CONFIG_MODULES=n
+ - Fix RTNLGRP definitions in rtnetlink.h
+ - Fix CTA_PROTO_NUM attribute size in ctnetlink
+ - Fix unbalanced read_unlock_bh in ctnetlink
+ - Fix NAT init order
+ - Fix incorrect dependency for IP6_NF_TARGET_NFQUEUE
+ - dpt_i2o fix for deadlock condition
+ - SCSI: fix transfer direction in sd (kernel panic when ejecting iPod)
+ - SCSI: fix transfer direction in scsi_lib and st
+ - Fix hardware rx csum errors
+ - Fix route lifetime.
+ - apci: fix NULL deref in video/lcd/brightness
+ * Disable CONFIG_USB_BANDWIDTH, causes major trouble on alsa usb cards.
+ (Closes: #344939)
+
+ -- maximilian attems <maks@sternwelten.at> Tue, 27 Dec 2005 20:50:28 +0100
+
+linux-2.6 (2.6.14-6) unstable; urgency=low
+
+ [ Kyle McMartin ]
+ * Change parisc kernel names to something less ambiguous.
+
+ [ maximilian attems ]
+ * Drop modular-ide.patch, nacked by ide upstream. Prevents udev to load
+ ide-generic and those successfull boots with initramfs-tools.
+ * Add stable tree 2.6.14.4 with the following fixes:
+ - drivers/scsi/dpt_i2o.c: fix a user-after-free
+ - drivers/message/i2o/pci.c: fix a use-after-free
+ - drivers/infiniband/core/mad.c: fix a use-after-free
+ - DVB: BUDGET CI card depends on STV0297 demodulator
+ - setkeys needs root
+ - Fix listxattr() for generic security attributes
+ - AGPGART: Fix serverworks TLB flush.
+ - Fix crash when ptrace poking hugepage areas
+ - I8K: fix /proc reporting of blank service tags
+ - i82365: release all resources if no devices are found
+ - bonding: fix feature consolidation
+ - libata: locking rewrite (== fix)
+ - cciss: bug fix for BIG_PASS_THRU
+ - ALSA: nm256: reset workaround for Latitude CSx
+ - cciss: bug fix for hpacucli
+ - V4L/DVB: Fix analog NTSC for Thomson DTT 761X hybrid tuner
+ - BRIDGE: recompute features when adding a new device
+ - 32bit integer overflow in invalidate_inode_pages2()
+ - USB: Adapt microtek driver to new scsi features
+ - ide-floppy: software eject not working with LS-120 drive
+ - Add try_to_freeze to kauditd
+ - V4L/DVB (3135) Fix tuner init for Pinnacle PCTV Stereo
+ - NETLINK: Fix processing of fib_lookup netlink messages
+ - ACPI: fix HP nx8220 boot hang regression
+
+ [ Norbert Tretkowski ]
+ * [alpha] Removed conflict with initramfs-tools, thanks vorlon for finding
+ the klibc bug!
+
+ [ Frederik Schüler ]
+ * Add updated drivers-scsi-megaraid_splitup.patch. (Closes: #317258)
+ * Add ppc64-thermal-overtemp.patch to fix a thermal control bug in G5
+ machines. (Closes: #343980)
+ * Unpatch the following patches which are included in 2.6.14.4:
+ - setkeys-needs-root-1.patch
+ - setkeys-needs-root-2.patch
+ - mm-invalidate_inode_pages2-overflow.patch
+ - net-bonding-consolidation-fix.patch
+
+ -- Frederik Schüler <fs@debian.org> Tue, 20 Dec 2005 18:50:41 +0000
+
+linux-2.6 (2.6.14-5) unstable; urgency=low
+
+ [ dann frazier ]
+ * ia64-new-assembler-fix.patch
+ Fix ia64 builds with newer assembler (Closes: #341257)
+
+ [ Sven Luther ]
+ * [powerpc] incremented ramdisk size to 24576 from 8192, needed by the
+ graphical installer, maybe we can bring this to 16384 later.
+
+ [ Simon Horman ]
+ * Add recommends libc6-i686 to 686 and k7 image packages
+ (closes: #278729)
+ * Enable OBSOLETE_OSS_USB_DRIVER and USB_AUDIO
+ as alsa snd-usb-audio still isn't quite there.
+ I expect this to be re-disabled at some stage,
+ possibly soon if it proves to be a source of bugs.
+ (closes: #340388)
+
+ [ dann frazier ]
+ * buslogic-pci-id-table.patch
+ add a pci device id table to fix initramfs-tools discovery.
+ (closes #342057)
+ * fix feature consolidation in bonding driver. (closes #340068)
+
+ -- dann frazier <dannf@debian.org> Thu, 8 Dec 2005 10:59:31 -0700
+
+linux-2.6 (2.6.14-4) unstable; urgency=low
+
+ [ dann frazier ]
+ * setkeys-needs-root-1.patch, setkeys-needs-root-2.patch:
+ [SECURITY] Require root privilege to write the current
+ function key string entry of other user's terminals.
+ See CVE-2005-3257 (Closes: #334113)
+
+ [ Simon Horman ]
+ * Enable MKISS globally (closes: #340215)
+ * mm-invalidate_inode_pages2-overflow.patch
+ [SECURITY] 32bit integer overflow in invalidate_inode_pages2() (local DoS)
+ * ctnetlink-check-if-protoinfo-is-present.patch
+ [SECURITY] ctnetlink: check if protoinfo is present (local DoS)
+ * ctnetlink-fix-oops-when-no-icmp-id-info-in-message.patch
+ [SECURITY] ctnetlink: Fix oops when no ICMP ID info in message (local DoS)
+
+ [ Sven Luther ]
+ * Re-added powerpc/apus patch, now that Roman Zippel merged it in.
+ * Let's create asm-(ppc|ppc64) -> asm-powerpc symlink farm. (Closes: #340571)
+
+ [ maximilian attems ]
+ * Add 2.6.14.3 patch - features changelog:
+ - isdn/hardware/eicon/os_4bri.c: correct the xdiLoadFile() signature
+ - x86_64/i386: Compute correct MTRR mask on early Noconas
+ - PPTP helper: Fix endianness bug in GRE key / CallID NAT
+ - nf_queue: Fix Ooops when no queue handler registered
+ - ctnetlink: check if protoinfo is present
+ - ip_conntrack: fix ftp/irc/tftp helpers on ports >= 32768
+ - VFS: Fix memory leak with file leases
+ - hwmon: Fix lm78 VID conversion
+ - hwmon: Fix missing it87 fan div init
+ - ppc64 memory model depends on NUMA
+ - Generic HDLC WAN drivers - disable netif_carrier_off()
+ - ctnetlink: Fix oops when no ICMP ID info in message
+ - Don't auto-reap traced children
+ - packet writing oops fix
+ - PPTP helper: fix PNS-PAC expectation call id
+ - NAT: Fix module refcount dropping too far
+ - Fix soft lockup with ALSA rtc-timer
+ - Fix calculation of AH length during filling ancillary data.
+ - ip_conntrack TCP: Accept SYN+PUSH like SYN
+ - refcount leak of proto when ctnetlink dumping tuple
+ - Fix memory management error during setting up new advapi sockopts.
+ - Fix sending extension headers before and including routing header.
+ - hwmon: Fix missing boundary check when setting W83627THF in0 limits
+ * Remove ctnetlink-check-if-protoinfo-is-present.patch,
+ net-nf_queue-oops.patch - already included in 2.6.14.3.
+
+ [ Frederik Schüler ]
+ * Make CONFIG_PACKET, PACKET_MM and UNIX builtin on all architectures:
+ statically linked has better performance then modules due to TLB issue.
+ * Add myself to uploaders.
+
+ -- Frederik Schüler <fs@debian.org> Sat, 26 Nov 2005 13:18:41 +0100
+
+linux-2.6 (2.6.14-3) unstable; urgency=low
+
+ [ Norbert Tretkowski ]
+ * [alpha] Switch to gcc 4.0.
+ * [alpha] Conflict with initramfs-tools, klibc is broken on alpha.
+ * [alpha] Enabled CONFIG_KOBJECT_UEVENT in arch/alphaconfig to fix trouble
+ with latest udev, thanks to Uwe Schindler for reporting. (closes: #338911)
+ * Bumped ABI revision:
+ + ABI changes on sparc and alpha because of compiler switch.
+ + 2.6.14.1 changes ABI of procfs.
+
+ [ Sven Luther ]
+ * Set default TCP congestion algorithm to NewReno + BIC (Closes: #337089)
+
+ [ maximilian attems ]
+ * Reenable CONFIG_SOFTWARE_SUSPEND on i386 and ppc, resume=/dev/<other device>
+ must be set by boot loader. (Closes: #267600)
+ * Set CONFIG_USB_SUSPEND on i386. Usefull for suspend to ram and apm suspend.
+ * Add 2.6.14.1 patch:
+ - Al Viro: CVE-2005-2709 sysctl unregistration oops
+ * Add 2.6.14.2 patch:
+ - airo.c/airo_cs.c: correct prototypes
+ - fix XFS_QUOTA for modular XFS (closes: #337072)
+ - USB: always export interface information for modalias
+ - NET: Fix zero-size datagram reception
+ - fix alpha breakage
+ - Oops on suspend after on-the-fly switch to anticipatory i/o scheduler
+ - ipvs: fix connection leak if expire_nodest_conn=1
+ - Fix ptrace self-attach rule
+ - fix signal->live leak in copy_process()
+ - fix de_thread() vs send_group_sigqueue() race
+ - prism54 : Fix frame length
+ - tcp: BIC max increment too large
+ * Remove alpha compile fix as contained in 2.6.14.2
+ * Readd CONFIG_XFS_QUOTA=y.
+ * Disable ACPI cutoff year on i386, was set to 2001.
+ No need for acpi=force on boot.
+
+ [ Jurij Smakov ]
+ * Fix the install-image script to correctly include all the necessary
+ stuff in scripts. (Closes: #336424)
+ * Enable CONFIG_SND_ALI5451 on sparc.
+ * Switch sparc to gcc-4.0. Thanks to Norbert for making sure it successfully
+ builds a working kernel now.
+ * Apply patch to fix ATI framebuffer output corruption on SunBlade 100
+ (sparc64-atyfb-xl-gr.patch). Thanks to Luigi Gangitano. (Closes: #321200)
+ * Disable CONFIG_PARPORT_PC_FIFO on sparc, since it causes a hang whenever
+ something is sent to the parallel port device. Thanks to Attilla
+ (boera at rdslink.ro) for pointing that out.
+
+ [ Simon Horman ]
+ * [386, AMD64] Set CONFIG_FRAMEBUFFER_CONSOLE=y instead of m.
+ As vesadb now built into the kernel, after finally dropping the
+ debian-specific patch to make it modular, make fbcons builtin too, else
+ all sorts of weird stuff happens which is hard for the inird builders to
+ automatically compenste for. (Closes: #336450)
+ * Redisable CONFIG_SOFTWARE_SUSPEND on ppc/miboot as it required
+ CONFIG_PM to compile.
+ * [NETFILTER] nf_queue: Fix Ooops when no queue handler registered
+ This is a regression introduced in 2.6.14.
+ net-nf_queue-oops.patch. (Closes: #337713)
+ * Make manuals with defconfig, as is required for kernel-package 10.008
+
+ [ dann frazier ]
+ * net-ipconntrack-nat-fix.patch - fix compilation of
+ ip_conntrack_helper_pptp.c when NAT is disabled. (Closes: #336431)
+
+ [ Christian T. Steigies ]
+ * update m68k.diff to 2.6.14
+ * add m68k-*vme* patches
+ * disable macsonic driver until the dma patch is fixed
+ * disable IEEE80211 drivers for all of m68k
+
+ [ Frederik Schüler ]
+ * activate CONFIG_SECURITY_NETWORK to fix SElinux operation.
+ (Closes: #338543)
+
+ -- Norbert Tretkowski <nobse@debian.org> Mon, 14 Nov 2005 10:23:05 +0100
+
+linux-2.6 (2.6.14-2) unstable; urgency=low
+
+ [ Simon Horman ]
+ * [SECURITY] Avoid 'names_cache' memory leak with CONFIG_AUDITSYSCALL
+ This fix, included as part of the 2.6.13.4 patch in
+ 2.6.13+2.6.14-rc4-0experimental.1 is CVE-2005-3181
+ * Fix genearation of .extraversion, again (closes: #333842)
+ * Add missing kernel-arch and kernel-header-dirs to defines
+ so headers get included. (closes: #336521)
+ N.B: I only filled in arches where other's hadn't done so alread.
+ Please fix if its wrong.
+ * Allow powerpc64 to compile with AUDIT enabled but
+ AUDITSYSCALL disabled. powerpc64-audit_sysctl-build.patch
+
+ [ dann frazier ]
+ * Update hppa.diff to 2.6.14-pa0
+
+ [ Norbert Tretkowski ]
+ * [alpha] New patch to include compiler.h in barrier.h, barrier() is used in
+ non-SMP case.
+ * [alpha] Added kernel-header-dirs and kernel-arch to debian/arch/alpha/defines
+ to include asm-alpha in linux-headers package.
+ * Added myself to Uploaders.
+
+ [ Frederik Schüler ]
+ * [amd64] use DISCONTIGMEM instead of SPARSEMEM on amd64-k8-smp flavour to
+ fix bootup kernel panic.
+ * [amd64] include asm-x86_64 in linux-headers package.
+ * Deactivate AUDITSYSCALL globally, it slows down the kernel and is not
+ needed for selinux at all.
+
+ -- Simon Horman <horms@debian.org> Tue, 1 Nov 2005 15:27:40 +0900
+
+linux-2.6 (2.6.14-1) unstable; urgency=low
+
+ [ Sven Luther ]
+ * New upstream release.
+
+ [ Norbert Tretkowski ]
+ * [alpha] Update arch/alpha/config* for 2.6.14.
+
+ [ Simon Horman ]
+ * Fix misformatting of long description of
+ linux-patch-debian-linux-patch-debian-X.Y.Z.
+ templates/control.main.in
+ (closes: #335088)
+ * Make sure version is seeded in apply and unapply scripts.
+ Actually changed in some earlier, post 2.6.12, release,
+ but the changelog seems to be missing.
+ (closes: #324583)
+
+ [ dann frazier ]
+ * [ia64] Disable the CONFIG_IA64_SGI_SN_XP module. This forces
+ CONFIG_GENERIC_ALLOCATOR and CONFIG_IA64_UNCACHED_ALLOCATOR to y, which
+ appears to break on zx1 systems.
+
+ -- Simon Horman <horms@debian.org> Fri, 28 Oct 2005 16:26:03 +0900
+
+linux-2.6 (2.6.13+2.6.14-rc5-0experimental.1) experimental; urgency=low
+
+ [ Sven Luther ]
+ * Upgraded to 2.6.14-rc5.
+
+ [ Jonas Smedegaard ]
+ * Quote variables in debian/rules.real and postinstall (making it
+ safer to run with weird characters in path of build environment).
+
+ [ Bastian Blank ]
+ * Add some missing files from scripts to headers packages.
+ * Add new patch powerpc-build-links.patch: Emit relative symlinks in
+ arch/ppc{,64}/include.
+ * Include arch/*/include into headers package.
+
+ -- Sven Luther <luther@debian.org> Tue, 25 Oct 2005 03:56:11 +0000
+
+linux-2.6 (2.6.13+2.6.14-rc4-0experimental.1) experimental; urgency=low
+
+ [ Sven Luther ]
+ * Upgraded to 2.6.14-rc4.
+
+ [ Simon Horman ]
+ * Fix genearation of .extraversion (closes: #333842)
+
+ [ dann frazier ]
+ * Enhance the linux-source description to explain the types of patches
+ Debian adds to it. (closes: #258043)
+ * Correct linux-patch-debian description. It replaces the
+ kernel-patch-debian packages, not the kernel-source packages.
+
+ [ Jonas Smedegaard ]
+ * Fix building from within a very long dir (all patches was applied at
+ once - exhausting shell commandline, now applied one by one).
+ * Add Simon Horman, Sven Luther and myself as Uploaders.
+
+ [ Bastian Blank ]
+ * Use list of revisions in patch scripts.
+ * Use correct names for tarball and scripts.
+
+ [ Jurij Smakov ]
+ * [i386] Set the CONFIG_HPET_EMULATE_RTC option to make the clock
+ work properly on certain Dell machines. This required setting the
+ CONFIG_RTC option to 'y' instead of 'm'. (closes: #309909)
+ [i386] Enable VIDEO_CX88 and VIDEO_CX88_DVB (both set to 'm') by
+ popular demand. (closes: #330916)
+
+ [ Norbert Tretkowski ]
+ * [alpha] Update arch/alpha/config for 2.6.13.
+
+ [ Kyle McMartin ]
+ * [hppa] Oops. Fix linux-headers not including asm-parisc by adding
+ headers_dirs = parisc to Makefile.inc.
+
+ [ maximilian attems ]
+ * Set CONFIG_FB_VESA=y for i386 and amd64 configs. (closes: #333003)
+
+ [ Sven Luther ]
+ * [powerpc] Fixed apus build, now use mkvmlinuz too to generate the vmlinuz
+ kernel.
+ * Fixed control.image.in to depend on :
+ initramfs-tools | yaird | linux-ramdisk-tool
+ where linux-ramdisk-tools is the virtual package provided by all
+ initrd/initramfs generating tools.
+
+ [ Frederik Schüler ]
+ * deactivate FB_RIVA on all architectures.
+ * deactivate BLK_DEV_IDESCSI on all architectures.
+ * Added patch-2.6.13.4:
+ - [SECURITY] key: plug request_key_auth memleak
+ See CAN-2005-3119
+ - [SECURITY] Fix drm 'debug' sysfs permissions
+ See CAN-2005-3179
+ - [SECURITY] Avoid 'names_cache' memory leak with CONFIG_AUDITSYSCALL
+ - [SPARC64] Fix userland FPU state corruption.
+ - BIC coding bug in Linux 2.6.13
+ - [SECURITY] orinoco: Information leakage due to incorrect padding
+ See CAN-2005-3180
+ - ieee1394/sbp2: fixes for hot-unplug and module unloading
+
+ [ Christian T. Steigies ]
+ * disable CONFIG_EXT2_FS_XIP for m68k like on all(?) other arches
+ * deactivate OKTAGON_SCSI for amiga/m68k until it can be compiled again
+ * deactivate CONFIG_KEYBOARD_HIL_OLD, CONFIG_KEYBOARD_HIL, CONFIG_MOUSE_HIL,
+ CONFIG_HIL_MLC, and CONFIG_HP_SDC for hp/m68k
+ * update m68k.diff for 2.6.13
+ * split out patches that do not intefere with other arches to
+ patches-debian/m68k-*
+
+ -- Bastian Blank <waldi@debian.org> Fri, 21 Oct 2005 12:17:47 +0000
+
+linux-2.6 (2.6.13-1) experimental; urgency=low
+
+ * New upstream release "git booost":
+ - new arch xtensa
+ - kexec/kdump
+ - execute-in-place
+ - inotify (closes: #304387)
+ - time-sharing cfq I/O scheduler
+ - manual driver binding
+ - voluntary preemption
+ - user-space I/O initiation for InfiniBand
+ - new speedy DES (crypto) implementation
+ - uml "almost-skas" mode support
+ - 250 HZ default (closes: #320366)
+ - fixes all over (alsa, archs, ide, input, ntfs, scsi, swsusp, usb, ..)
+ - orinoco driver updates (closes: #291684)
+ - md, dm updates (closes: #317787)
+
+ [ Frederik Schüler ]
+ * [amd64] Added class and longclass descriptions for amd64 flavours.
+ * [amd64] add amd64-tlb-flush-sigsegv-fix.patch: disable tlb flush
+ filtering on smp systems to workaround processor errata.
+ * backport kernel-api-documentation-generation-fix.diff from git to fix
+ documentation build.
+ * Added patch-2.6.13.1:
+ - raw_sendmsg DoS (CAN-2005-2492)
+ - 32bit sendmsg() flaw (CAN-2005-2490)
+ - Reassembly trim not clearing CHECKSUM_HW
+ - Use SA_SHIRQ in sparc specific code.
+ - Fix boundary check in standard multi-block cipher processors
+ - 2.6.13 breaks libpcap (and tcpdump)
+ - x86: pci_assign_unassigned_resources() update
+ - Fix PCI ROM mapping
+ - aacraid: 2.6.13 aacraid bad BUG_ON fix
+ - Kconfig: saa7134-dvb must select tda1004x
+
+ [ Simon Horman ]
+ * Disable BSDv3 accounting on hppa and alpha, it was already
+ disabled on all other architectures. Also unify BSD accounting
+ config into top level config, rather than per flavour configs.
+ * [SECURITY] The seq_file memory leak fix included in 2.6.12-6
+ as part of upstream's 2.6.12.6 patchset is now CAN-2005-2800.
+
+ [ Jurij Smakov, Simon Horman ]
+ * Ensure that only one kernel-manual/linux-manual package can
+ be installed at a time to avoid file conflicts. (closes: #320042)
+
+ [ Bastian Blank ]
+ * Move audit, preempt and security settings to core config file.
+ * Fix powerpc configuration.
+ * Add debian version information to kernel version string.
+ * Drop coreutils | fileutils dependencies.
+ * Drop modular-vesafb patch. (closes: #222374, #289810)
+
+ [ Christian T. Steigies ]
+ * update m68k.diff for linux-2.6.13
+ * add m68k-42_dma.patch and m68k-sonic.patch that will be in upstream 2.6.14
+ (which makes sun3 build fail, needs fixing)
+
+ [ maximilian attems ]
+ * Drop drivers-add-scsi_changer.patch (merged)
+ * Drop drivers-ide-dma-blacklist-toshiba.patch (merged)
+ * Drop drivers-ide-__devinit.patch (merged)
+ * Added patch-2.6.13.2:
+ - USB: ftdi_sio: custom baud rate fix
+ - Fix up more strange byte writes to the PCI_ROM_ADDRESS config word
+ - Fix MPOL_F_VERIFY
+ - jfs: jfs_delete_inode must call clear_inode
+ - Fix DHCP + MASQUERADE problem
+ - Sun HME: enable and map PCI ROM properly
+ - Sun GEM ethernet: enable and map PCI ROM properly
+ - hpt366: write the full 4 bytes of ROM address, not just low 1 byte
+ - forcedeth: Initialize link settings in every nv_open()
+ - Lost sockfd_put() in routing_ioctl()
+ - lost fput in 32bit ioctl on x86-64
+ * Added patch-2.6.13.3:
+ - Fix fs/exec.c:788 (de_thread()) BUG_ON
+ - Don't over-clamp window in tcp_clamp_window()
+ - fix IPv6 per-socket multicast filtering in exact-match case
+ - yenta oops fix
+ - ipvs: ip_vs_ftp breaks connections using persistence
+ - uml - Fix x86_64 page leak
+ - skge: set mac address oops with bonding
+ - tcp: set default congestion control correctly for incoming connections
+
+ [ Sven Luther ]
+ * [powerpc] Added hotplug support to the mv643xx_eth driver :
+ powerpc-mv643xx-hotplug-support.patch
+ thanks go to Nicolas Det for providing the patch.
+ * [powerpc] Modified a couple of configuration options for the powerpc64
+ flavour, fixes and enhances Apple G5 support (Closes: #323724, #328324)
+ * [powerpc] Added powerpc-miboot flavour to use exclusively with oldworld
+ powermac miboot floppies for debian-installer.
+ * [powerpc] Checked upgraded version of the apus patches, separated them in
+ a part which is safe to apply, and one which needs checking, and is thus
+ not applied yet.
+
+ [ Kyle McMartin ]
+ * [hppa] Update hppa.diff to 2.6.13-pa4.
+ * [hppa] Add space register fix to pacache.S to hppa.diff.
+
+ [ dann frazier ]
+ * Add a note to README.Debian that explains where users can find the .config
+ files used to generate the linux-image packages. Closes: #316809
+ * [ia64] Workaround #325070 until upstream works out an acceptable solution.
+ This bug breaks module loading on non-SMP ia64 kernels. The workaround
+ is to temporarily use an SMP config for the non-SMP kernels. (Note that
+ John Wright is running benchmarks to determine the overhead of running
+ an SMP kernel on UP systems to help decide if this should be a
+ permanent change).
+ * [ia64] Update arch/ia64/config for 2.6.13
+
+ -- Simon Horman <horms@debian.org> Thu, 6 Oct 2005 15:45:21 +0900
+
+linux-2.6 (2.6.12-6) unstable; urgency=high
+
+ [ Andres Salomon, Bastian Blank ]
+ * Change ATM and Classical-IP-over-ATM to be modular, instead of being
+ statically included. (closes: #323143)
+
+ [ Sven Luther ]
+ * [powerpc] powerpc-pmac-sound-check.patch: Added pmac-sound sanity check.
+ * [powerpc] powerpc-apus.patch:
+ Added preliminary apus patch to package, not applied to kernel tree yet.
+
+ [ Simon Horman ]
+ * Unset CC_OPTIMIZE_FOR_SIZE in i386 config,
+ it breaks iproute's (and other netlink users) ability
+ to set routes. (closes: #322723)
+ * Added 2.6.12.6
+ - [SECURITY: CAN-2005-2555] Restrict socket policy loading to
+ CAP_NET_ADMIN.
+ - [SECURITY] Fix DST leak in icmp_push_reply(). Possible remote
+ DoS?
+ - [SECURITY] NPTL signal delivery deadlock fix; possible local
+ DoS.
+ - fix gl_skb/skb type error in genelink driver in usbnet
+ - [SECURITY] fix a memory leak in devices seq_file implementation;
+ local DoS.
+ - [SECURITY] Fix SKB leak in ip6_input_finish(); local DoS.
+
+ [ Andres Salomon ]
+ * [hppa] enable discontiguous memory support for 32bit hppa images, so
+ they build.
+
+ -- Andres Salomon <dilinger@debian.org> Tue, 06 Sep 2005 10:14:35 -0400
+
+linux-2.6 (2.6.12-5) unstable; urgency=low
+
+ * Change ARM to use GCC 3.3 to avoid FTBFS errors with GCC 4
+ (dann frazier)
+
+ * Remove spurious double quote character from ia64 package descriptions.
+ (dann frazier)
+
+ * Add transitional meta packages (kernel-image-2.6-*) for ia64.
+ (dann frazier)
+
+ * Change fuzz factor to 1, stricter patch appliance. (Maximilian Attems)
+
+ * Enabled CONFIG_THERM_PM72 on powerpc64 flavour. (Sven Luther)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 16 Aug 2005 21:43:31 +0200
+
+linux-2.6 (2.6.12-4) unstable; urgency=low
+
+ * Supply correct subarch values for the powerpc images.
+
+ -- Bastian Blank <waldi@debian.org> Mon, 15 Aug 2005 21:06:18 +0200
+
+linux-2.6 (2.6.12-3) unstable; urgency=low
+
+ * Added reference to old kernel-* package names to make
+ transition a little more obvious to end users.
+ A Dan Jacobson special. (Simon Horman) Closes: #321167
+
+ * By the time this makes it into the archive, it will
+ be handling kernel-image-2.6-* packages. (Simon Horman)
+ Closes: #321867
+
+ * Link palinfo statically on ia64. (dann frazier) (Closes: #321885)
+
+ * [hppa] :
+ - Add hppa arch specific patch.
+ - Build-Depend on binutils-hppa64 and gcc-4.0-hppa64.
+ (Kyle McMartin)
+
+ * Fix permissions in source tarball. (Bastian Blank) (Closes: #322409)
+
+ * Enable the CONFIG_IP_ADVANCED_ROUTER and related options on
+ sparc64 to sync with other architectures. (Jurij Smakov)
+ Closes: #321236
+
+ * Include all executables as well as *.sh and *.pl files found in
+ scripts directory in the headers package. (Bastian Blank)
+ Closes: #322612, #322680, #322765
+
+ * Include m68k headers into the arch-common headers package on
+ powerpc and make sure that all the directories are linked to
+ properly from the flavour-specific headers packages. (Jurij Smakov)
+ Closes: #322610
+
+ * [powerpc] Enabled the powerpc64 flavour, now that we have a real biarch
+ toolchain in sid. Many thanks go to GOTO Masanori and Matthias Klose as
+ well as any other who worked on the biarch toolchain to make this happen.
+
+ * Added 2.6.12.5 (Simon Horman)
+ - Fix BUG() is triggered by a call to set_mempolicy() with a negativ
+ first argument.
+ - [amd64] Fix a SRAT handling on systems with dual cores.
+ - [amd64] SMP timing problem
+ - [security] Zlib fixes See CAN-2005-2458, CAN-2005-2459
+ http://sources.redhat.com/ml/bug-gnu-utils/1999-06/msg00183.html
+ http://bugs.gentoo.org/show_bug.cgi
+ - Add zlib deflateBound()
+ - [security] Fix error during session join. See CAN-2005-2098
+ - [security] Fix keyring destructor. See CAN-2005-2099
+ - Module per-cpu alignment cannot always be met
+ http://www.ussg.iu.edu/hypermail/linux/kernel/0409.0/0768.html
+ Closes: #323039
+
+ -- Bastian Blank <waldi@debian.org> Mon, 15 Aug 2005 16:42:05 +0200
+
+linux-2.6 (2.6.12-2) unstable; urgency=low
+
+ * The Kernel Team offers its condolences to the family of Jens Schmalzing
+ (jensen@debian), who died Saturday, July 30, 2005 in a tragic accident in
+ Munich. Jens was a member of the Kernel Team, and was instrumental in
+ taking the powerpc kernel package to 2.6, as well as maintaining MOL
+ and its kernel modules.
+
+ * Add @longclass@ variable to control file autogeneration. (Andres Salomon)
+
+ * Bump build-depends on kernel-package to a fixed version (>= 9.005).
+ (Jurij Smakov, Sven Luther) (closes: #319657, #320422, #321625)
+
+ * Change default ramdisk size for sparc to 16,384K to accomodate a fatter
+ d-i initrd for netboot installs.
+ (Joshua Kwan)
+
+ * Don't build-depend on console-tools on s390. (Bastian Blank)
+
+ * Add ARM support. (Vincent Sanders)
+
+ * Add ia64 descriptions. (dann frazier)
+
+ * Strip down the scripts dir in the headers packages. (Bastian Blank)
+
+ * Add m68k support. (Christian T. Steigies)
+
+ * Added 2.6.12.4 (Frederik Schüler)
+ - Fix powernow oops on dual-core athlon
+ - Fix early vlan adding leads to not functional device
+ - sys_get_thread_area does not clear the returned argument
+ - bio_clone fix
+ - Fix possible overflow of sock->sk_policy (CAN-2005-2456)
+ (closes: #321401)
+ - Wait until all references to ip_conntrack_untracked are dropped on
+ unload
+ - Fix potential memory corruption in NAT code (aka memory NAT)
+ - Fix deadlock in ip6_queue
+ - Fix signedness issues in net/core/filter.c
+ - x86_64 memleak from malicious 32bit elf program
+ - rocket.c: Fix ldisc ref count handling
+ - kbuild: build TAGS problem with O=
+
+ * Enable CONFIG_6PACK=m for all archs (Andres Salomon)
+ (closes: #319646)
+
+ * Overhaul the generation of the control file. Now it is handled
+ by debian/bin/gencontrol.py. The debian/control target in rules
+ also fails now, since we don't want the control file generated
+ during build. Arch-specific Depends and suggests are now generated
+ correctly. (Bastian Blank) (Closes: #319896)
+
+ * [powerpc] Fixed typo which made asm-ppc and asm-ppc64 not being included
+ in the header package. (Sven Luther) (Closes: #320817)
+
+ * Added list of flavours built to common header package. (Sven Luther)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 09 Aug 2005 11:12:40 +0200
+
+linux-2.6 (2.6.12-1) unstable; urgency=low
+
+ * New upstream release:
+ - "git rocks"
+ - address space randomization
+ - conversion of ide driver code to the device model
+ - restored Philips webcam driver
+ - new Broadcom bcm5706 gigabit driver
+ - new resource limits for the audio community
+ - Multipath device mapper
+ - Intel HD Audio alsa driver
+ - fixes + arch updates..
+ - readdition of tg3 driver, as firmware license has been fixed
+
+ * Dropped the following patches:
+ - patch-2.6.11.*.patch (merged)
+ - powerpc-ppc64-ibmvscsi.patch (Christoph didn't like it, and it failed
+ to build anyways) (Sven Luther)
+ - doc-post_halloween.patch (unless someone can come up w/ a valid
+ reason for carrying around rapidly bitrotting documentation...)
+ (Andres Salomon)
+ - sparc32-hypersparc-srmmu.patch (dropped until sparc32 is working
+ again, and we can figure out whether it's necessary)
+ - fix-alpha-ext3-oops.patch (no longer needed, fixed by compiler)
+ - x86-i486_emu.patch (buggy and insecure 80486 instruction emulation
+ for 80386; we're no longer supporting this) (closes: #250468)
+ - amd64-outs.patch (according to
+ http://www.ussg.iu.edu/hypermail/linux/kernel/0502.3/1095.html, this
+ is unnecessary for us) (Andres Salomon)
+ - sparc64-rtc-mostek.patch (merged)
+ - sparc64-compat-nanoseconds.patch (merged)
+ - sparc64-sunsu-init-2.6.11.patch (merged)
+ - sunsab-uart-update-timeout.patch (merged)
+ - alpha-read-trylock.patch (different version got merged)
+ - powerpc-prep-motorola-irq-fix.patch (merged)
+ - drivers-media-video-saa7134-update.patch (merged)
+ - drivers-media-video-saa7134-update-2.patch (merged)
+ - drivers-media-video-pll-lib.patch (merged)
+ - drivers-media-video-pll-lib-2.patch (merged)
+ - drivers-media-video-tuner-update-1.patch (merged)
+ - drivers-media-video-tuner-update-2.patch (merged)
+ - drivers-media-video-v4l-mpeg-support.patch (merged)
+ - drivers-media-video-mt352-update.patch (merged)
+ - arch-ppc64-hugepage-aio-panic.patch (merged)
+ - drivers-input-serio-nmouse.patch (merged)
+ - sparc64-sb1500-clock-2.6.patch (merged)
+ - docbook-allow-preprocessor-directives-... (merged)
+ - docbook-fix-function-parameter-descriptin-in-fbmem.patch (merged)
+ - docbook-move-kernel-doc-comment-next-to-function.patch (merged)
+ - powerpc-therm-adt746x-new-i2c-fix.patch (merged)
+ - powerpc-mv643xx-enet.patch (merged)
+ - powerpc-mv643xx-eth-pegasos.patch (merged)
+ - powerpc-pmac-agp-sleep.patch (merged)
+ - drivers-input-serio-8042-resume.patch (merged)
+
+ * Premiere of the common-source kernel package
+ (Jurij Smakov, Andres Salomon)
+ - build all architectures out of kernel source package
+ - rename source and binary packages
+ - create a common config for different architectures, and management
+ tools to allow for easier modification of config options
+ - drop default configs, autogenerate them instead; requires
+ kernel-package >= 9.002.
+
+ * Add 2.6.12.1 (Maximilian Attems)
+ - Clean up subthread exec (CAN-2005-1913)
+ - ia64 ptrace + sigrestore_context (CAN-2005-1761)
+
+ * Add 2.6.12.2 (Frederik Schüler)
+ - Fix two socket hashing bugs.
+ - ACPI: Make sure we call acpi_register_gsi() even for default PCI
+ interrupt assignment
+ - Add "memory" clobbers to the x86 inline asm of strncmp and friends
+ - e1000: fix spinlock bug
+ - fix remap_pte_range BUG
+ - Fix typo in drivers/pci/pci-driver.c
+
+ * Add 2.6.12.3 (Joshua Kwan)
+ - Fix semaphore handling in __unregister_chrdev
+ - Fix TT mode in UML.
+ - Check for a null return in tty_ldisc_ref.
+ - v4l: cx88 hue offset fix
+ - Fix 8139cp breakage that occurs with tpm driver.
+ - Fix the 6pack driver in SMP environments.
+ - Switch to spinlocks in the shaper driver.
+ - ppc32: stop misusing NTP's time_offset value
+ - netfilter: go back to dropping conntrack references manually
+ - ACPI: don't accept 0 as a PCI IRQ.
+
+ * Enable CONFIG_SCSI_INITIO. (Maximilian Attems) (closes: #318121)
+
+ * [powerpc] :
+ - Added powerpc-mkvmlinuz-support patch which allows, together with
+ kernel-package 9.0002 to add mkvmlinuz support to hand built packages.
+ - Removed powerpc-ppc64-ibmvscsi.patch, FTBFS, and Christoph doesn't like
+ it and thinks it is not needed.
+ - Disabled swim3 on powerpc-smp, FTBFS.
+ - Disabled software-suspend on powerpc-smp, FTBFS, amd64/i386 only smp code.
+ - Rediffed and readded the G4 L2 hardware flush assist patch from Jacob Pan.
+ (Sven Luther)
+
+ * [sparc]
+ - Drop sparc32 flavour for now. sparc32 kernel is currently in the
+ category "too buggy for us to support". In spite of numerous efforts
+ I still see occasional random filesystem corruptions in my tests.
+ That does NOT mean that we are dropping sparc32 support, we will
+ work with upstream trying to solve these problems for the next
+ kernel release. Those interested in helping/testing are encouraged
+ to subscribe to debian-sparc mailing list.
+ (Jurij Smakov)
+
+ * [alpha]
+ - Renamed resulting binary packages for alpha, kernel-image-x.y.z-generic
+ wasn't a generic kernel, it was a generic kernel for alpha machines, so
+ we're now using linux-image-x.y.z-alpha-generic (and of course, the same
+ change for the smp kernel-image). This change was postponed after the
+ sarge release. (closes: #260003)
+ (Norbert Tretkowski)
+
+ * [amd64]
+ - Now using the default compiler (gcc-4.0), thus we get rid of the
+ annoying MAKEFLAGS="CC=gcc-3.4" make-kpkg... invocation for third-party
+ modules.
+ This release lacks 64bit kernels for i386 userland; support will be
+ added in a later release as soon as the toolchain has stabilized again.
+ (Frederik Schüler)
+
+ -- Andres Salomon <dilinger@debian.org> Wed, 20 Jul 2005 17:16:04 -0400
+
diff --git a/debian/config.defines.dump b/debian/config.defines.dump
new file mode 100644
index 000000000..6ed7f27cd
--- /dev/null
+++ b/debian/config.defines.dump
@@ -0,0 +1,3076 @@
+cdebian_linux.config
+ConfigCore
+p0
+(tRp1
+(Vabi
+p2
+tp3
+(dp4
+Vabiname
+p5
+V28
+p6
+sVignore-changes
+p7
+(lp8
+V__cpuhp_*
+p9
+aV__udp_gso_segment
+p10
+aVbpf_analyzer
+p11
+aVbpf_offload_dev_create
+p12
+aVbpf_verifier_log_write
+p13
+aVcxl_*
+p14
+aVdax_flush
+p15
+aVieee80211_nullfunc_get
+p16
+aVinet_add_protocol
+p17
+aVinet_del_protocol
+p18
+aViommu_device_*
+p19
+aVmm_iommu_*
+p20
+aVmv_mbus_*
+p21
+aVperf_*
+p22
+aVregister_cxl_calls
+p23
+aVregister_key_type
+p24
+aVunregister_cxl_calls
+p25
+aV*_hw_breakpoint
+p26
+aVmodule:drivers/crypto/ccp/*
+p27
+aVmodule:drivers/hv/*
+p28
+aVmodule:drivers/gpu/drm/sun4i/*
+p29
+aVmodule:drivers/iio/**
+p30
+aVmodule:drivers/misc/cxl/*
+p31
+aVmodule:drivers/misc/lis3lv02d/*
+p32
+aVmodule:drivers/mtd/nand/*
+p33
+aVmodule:drivers/net/ethernet/**
+p34
+aVmodule:drivers/net/wireless/**
+p35
+aVmodule:drivers/nvdimm/*
+p36
+aVmodule:drivers/nvme/**
+p37
+aVmodule:drivers/power/supply/bq27xxx_battery
+p38
+aVmodule:drivers/scsi/cxgbi/*
+p39
+aVmodule:drivers/scsi/libiscs*
+p40
+aVmodule:drivers/scsi/qla2xxx/qla2xxx
+p41
+aVmodule:drivers/scsi/ufs/*
+p42
+aVmodule:drivers/target/**
+p43
+aVmodule:drivers/usb/chipidea/**
+p44
+aVmodule:drivers/usb/gadget/**
+p45
+aVmodule:drivers/usb/host/**
+p46
+aVmodule:drivers/usb/musb/**
+p47
+aVmodule:fs/nfs/**
+p48
+aVmodule:net/ceph/libceph
+p49
+aVmodule:net/l2tp/**
+p50
+aVmodule:net/openvswitch/**
+p51
+aVmodule:net/rxrpc/rxrpc
+p52
+aVmodule:net/sctp/**
+p53
+aVmodule:sound/core/seq/**
+p54
+aVmodule:sound/firewire/snd-firewire-lib
+p55
+aVmodule:sound/pci/hda/*
+p56
+aVbtree_*
+p57
+aVvisitor*
+p58
+aVcan_rx_register
+p59
+aVip6_xmit
+p60
+aVmodule:net/dccp/dccp
+p61
+aVmodule:net/rds/rds
+p62
+aVdevfreq_*
+p63
+aVdevm_devfreq_*
+p64
+aVupdate_devfreq
+p65
+aVmodule:drivers/infiniband/**
+p66
+aVacpi_ec_add_query_handler
+p67
+aVacpi_ec_remove_query_handler
+p68
+aVfirst_ec
+p69
+aVdebugfs_create_automount
+p70
+aVmodule:drivers/iio/imu/inv_mpu6050/*
+p71
+aVdrm_crtc_accurate_vblank_count
+p72
+aVacpi_nfit_desc_init
+p73
+aVacpi_nfit_init
+p74
+aVloop_register_transfer
+p75
+aVxen_xlate_*
+p76
+aVnf_nat_masquerade_ipv4_register_notifier
+p77
+aVnf_nat_masquerade_ipv6_register_notifier
+p78
+aVdfltcc_*
+p79
+aVmodule:drivers/scsi/hisi_sas/*
+p80
+aV__gfn_*
+p81
+aV__kvmhv_*
+p82
+aV__kvm_*
+p83
+aV__xive_vm_h_*
+p84
+aVgfn_*
+p85
+aVh_ipi_redirect
+p86
+aVhalt_poll_ns*
+p87
+aVkvm_*
+p88
+aVkvmhv_*
+p89
+aVkvmppc_*
+p90
+aVmark_page_dirty
+p91
+aVvcpu_*
+p92
+aVmodule:arch/powerpc/kvm/*
+p93
+aVmodule:arch/s390/kvm/*
+p94
+aVmodule:arch/x86/kvm/*
+p95
+aVuv_info
+p96
+aVxhci_init_driver
+p97
+aVnft_parse_register
+p98
+ass(Vbase
+p99
+tp100
+(dp101
+Varches
+p102
+(lp103
+Valpha
+p104
+aVamd64
+p105
+aVarm64
+p106
+aVarm64ilp32
+p107
+aVarmel
+p108
+aVarmhf
+p109
+aVhppa
+p110
+aVi386
+p111
+aVia64
+p112
+aVm68k
+p113
+aVmips
+p114
+aVmips64
+p115
+aVmips64el
+p116
+aVmips64r6
+p117
+aVmips64r6el
+p118
+aVmipsel
+p119
+aVmipsn32
+p120
+aVmipsn32el
+p121
+aVmipsn32r6
+p122
+aVmipsn32r6el
+p123
+aVmipsr6
+p124
+aVmipsr6el
+p125
+aVpowerpc
+p126
+aVppc64
+p127
+aVppc64el
+p128
+aVriscv64
+p129
+aVs390
+p130
+aVs390x
+p131
+aVsh3
+p132
+aVsh4
+p133
+aVsparc
+p134
+aVsparc64
+p135
+aVx32
+p136
+asVcompiler
+p137
+Vgcc-10
+p138
+sVfeaturesets
+p139
+(lp140
+Vnone
+p141
+aVrt
+p142
+ass(Vbuild
+p143
+tp144
+(dp145
+Vdebug-info
+p146
+I01
+sVsigned-code
+p147
+I00
+ss(Vbase
+p148
+NVrt
+p149
+tp150
+(dp151
+Venabled
+p152
+I01
+ss(Vdescription
+p153
+tp154
+(dp155
+Vpart-long-up
+p156
+VThis kernel is not suitable for SMP (multi-processor,\u000amulti-core or hyper-threaded) systems.
+p157
+ss(Vimage
+p158
+tp159
+(dp160
+Vinitramfs-generators
+p161
+(lp162
+Vinitramfs-tools
+p163
+aVinitramfs-fallback
+p164
+asVbreaks
+p165
+(lp166
+Vfwupdate (<< 12-7)
+p167
+aVwireless-regdb (<< 2019.06.03-1~)
+p168
+asVrecommends
+p169
+(lp170
+Vapparmor
+p171
+ass(Vrelations
+p172
+tp173
+(dp174
+Vgcc-10
+p175
+Vgcc-10 <!stage1 !cross !pkg.linux.nokernel>, gcc-10-@gnu-type-package@ <!stage1 cross !pkg.linux.nokernel>
+p176
+sVinitramfs-fallback
+p177
+Vlinux-initramfs-tool
+p178
+sVinitramfs-tools
+p179
+Vinitramfs-tools (>= 0.120+deb8u2)
+p180
+ss(Vbase
+p181
+Valpha
+p182
+tp183
+(dp184
+Vdefault-flavour
+p185
+Valpha-smp
+p186
+sVkernel-arch
+p187
+Valpha
+p188
+sVfeaturesets
+p189
+(lp190
+Vnone
+p191
+ass(Vbuild
+p192
+g182
+tp193
+(dp194
+Vimage-file
+p195
+Varch/alpha/boot/vmlinux.gz
+p196
+ss(Vimage
+p197
+g182
+tp198
+(dp199
+Vsuggests
+p200
+(lp201
+Vaboot
+p202
+aVfdutils
+p203
+asVinstall-stem
+p204
+Vvmlinuz
+p205
+ss(Vdescription
+p206
+g182
+NValpha-generic
+p207
+tp208
+(dp209
+Vhardware
+p210
+VAlpha
+p211
+sVhardware-long
+p212
+VDEC Alpha systems with extended kernel start address (Wildfire, Titan, Marvel)
+p213
+ss(Vdescription
+p214
+g182
+NValpha-smp
+p215
+tp216
+(dp217
+Vhardware
+p218
+VAlpha SMP
+p219
+sVhardware-long
+p220
+VDEC Alpha SMP systems with extended kernel start address (Wildfire, Titan, Marvel)
+p221
+ss(Vbase
+p222
+g182
+g191
+tp223
+(dp224
+Vflavours
+p225
+(lp226
+Valpha-generic
+p227
+aValpha-smp
+p228
+asVimplicit-flavour
+p229
+I01
+ss(Vbase
+p230
+Vamd64
+p231
+tp232
+(dp233
+Vfeaturesets
+p234
+(lp235
+Vnone
+p236
+aVrt
+p237
+asVkernel-arch
+p238
+Vx86
+p239
+ss(Vbuild
+p240
+g231
+tp241
+(dp242
+Vimage-file
+p243
+Varch/x86/boot/bzImage
+p244
+sVsigned-code
+p245
+I01
+sVvdso
+p246
+I01
+ss(Vimage
+p247
+g231
+tp248
+(dp249
+Vbootloaders
+p250
+(lp251
+Vgrub-pc
+p252
+aVgrub-efi-amd64
+p253
+aVextlinux
+p254
+asVinstall-stem
+p255
+Vvmlinuz
+p256
+sVbreaks
+p257
+(lp258
+Vxserver-xorg-input-vmmouse (<< 1:13.0.99)
+p259
+ass(Vrelations
+p260
+g231
+tp261
+(dp262
+Vheaders%gcc-10
+p263
+Vlinux-compiler-gcc-10-x86
+p264
+ss(Vdescription
+p265
+g231
+NVamd64
+p266
+tp267
+(dp268
+Vhardware
+p269
+V64-bit PCs
+p270
+sVhardware-long
+p271
+VPCs with AMD64, Intel 64 or VIA Nano processors
+p272
+ss(Vdescription
+p273
+g231
+NVcloud-amd64
+p274
+tp275
+(dp276
+Vhardware
+p277
+Vx86-64 cloud
+p278
+sVhardware-long
+p279
+Vcloud platforms including Amazon EC2, Microsoft Azure, and Google Compute Engine
+p280
+ss(Vbase
+p281
+g231
+Vnone
+p282
+tp283
+(dp284
+Vflavours
+p285
+(lp286
+Vamd64
+p287
+aVcloud-amd64
+p288
+asVdefault-flavour
+p289
+Vamd64
+p290
+ss(Vimage
+p291
+g231
+g282
+Vcloud-amd64
+p292
+tp293
+(dp294
+Vconfigs
+p295
+(lp296
+Vconfig.cloud
+p297
+aVamd64/config.cloud-amd64
+p298
+ass(Vbase
+p299
+g231
+Vrt
+p300
+tp301
+(dp302
+Vflavours
+p303
+(lp304
+Vamd64
+p305
+ass(Vbase
+p306
+Varm64
+p307
+tp308
+(dp309
+Vcross-compile-compat
+p310
+Varm-linux-gnueabihf-
+p311
+sVkernel-arch
+p312
+Varm64
+p313
+sVfeaturesets
+p314
+(lp315
+Vnone
+p316
+aVrt
+p317
+ass(Vbuild
+p318
+g307
+tp319
+(dp320
+Vimage-file
+p321
+Varch/arm64/boot/Image
+p322
+sVsigned-code
+p323
+I01
+sVvdso
+p324
+I01
+ss(Vimage
+p325
+g307
+tp326
+(dp327
+Vinstall-stem
+p328
+Vvmlinuz
+p329
+sVbreaks
+p330
+(lp331
+Vlibmozjs185-1.0
+p332
+aVlibmozjs-24-0 (<< 24.2.0-5.1~)
+p333
+ass(Vdescription
+p334
+g307
+NVarm64
+p335
+tp336
+(dp337
+Vhardware
+p338
+V64-bit ARMv8 machines
+p339
+ss(Vdescription
+p340
+g307
+NVcloud-arm64
+p341
+tp342
+(dp343
+Vhardware
+p344
+Varm64 cloud
+p345
+sVhardware-long
+p346
+Vcloud platforms supporting arm64 virtual machines
+p347
+ss(Vimage
+p348
+g307
+NVarm64
+p349
+tp350
+(dp351
+s(Vrelations
+p352
+g307
+tp353
+(dp354
+Vgcc-10
+p355
+Vgcc-10 <!stage1 !cross !pkg.linux.nokernel>, gcc-10-aarch64-linux-gnu <!stage1 cross !pkg.linux.nokernel>, gcc-arm-linux-gnueabihf <!stage1 !pkg.linux.nokernel>
+p356
+sVheaders%gcc-10
+p357
+Vgcc-10
+p358
+ss(Vbase
+p359
+g307
+Vnone
+p360
+tp361
+(dp362
+Vflavours
+p363
+(lp364
+Varm64
+p365
+aVcloud-arm64
+p366
+asVdefault-flavour
+p367
+Varm64
+p368
+ss(Vimage
+p369
+g307
+g360
+Vcloud-arm64
+p370
+tp371
+(dp372
+Vconfigs
+p373
+(lp374
+Vconfig.cloud
+p375
+aVarm64/config.cloud-arm64
+p376
+ass(Vbase
+p377
+g307
+Vrt
+p378
+tp379
+(dp380
+Vflavours
+p381
+(lp382
+Varm64
+p383
+ass(Vbase
+p384
+Varm64ilp32
+p385
+tp386
+(dp387
+Vkernel-arch
+p388
+Varm64
+p389
+sVfeaturesets
+p390
+(lp391
+ss(Vbase
+p392
+Varmel
+p393
+tp394
+(dp395
+Vkernel-arch
+p396
+Varm
+p397
+sg189
+(lp398
+g191
+ass(Vbuild
+p399
+g393
+tp400
+(dp401
+Vimage-file
+p402
+Varch/arm/boot/zImage
+p403
+sVuncompressed-image-file
+p404
+Varch/arm/boot/Image
+p405
+ss(Vimage
+p406
+g393
+tp407
+(dp408
+Vinstall-stem
+p409
+Vvmlinuz
+p410
+ss(Vrelations
+p411
+g393
+tp412
+(dp413
+Vheaders%gcc-10
+p414
+Vlinux-compiler-gcc-10-arm
+p415
+ss(Vdescription
+p416
+g393
+NVmarvell
+p417
+tp418
+(dp419
+Vhardware
+p420
+VMarvell Kirkwood/Orion
+p421
+sVhardware-long
+p422
+VMarvell Kirkwood and Orion based systems (https://wiki.debian.org/ArmEabiPort#Supported_hardware)
+p423
+ss(Vdescription
+p424
+g393
+NVrpi
+p425
+tp426
+(dp427
+Vhardware
+p428
+VRaspberry Pi and Pi Zero
+p429
+sVhardware-long
+p430
+VRaspberry Pi, Raspberry Pi Zero based systems
+p431
+ss(Vimage
+p432
+g393
+NVmarvell
+p433
+tp434
+(dp435
+Vrecommends
+p436
+(lp437
+Vu-boot-tools
+p438
+asVcheck-size
+p439
+I2729712
+sVcheck-size-with-dtb
+p440
+I01
+sVbreaks
+p441
+(lp442
+Vflash-kernel (<< 3.57~)
+p443
+ass(g222
+g393
+g191
+tp444
+(dp445
+g225
+(lp446
+Vmarvell
+p447
+aVrpi
+p448
+asg229
+I01
+ss(Vbase
+p449
+Varmhf
+p450
+tp451
+(dp452
+Vfeaturesets
+p453
+(lp454
+Vnone
+p455
+aVrt
+p456
+asVkernel-arch
+p457
+Varm
+p458
+ss(Vbuild
+p459
+g450
+tp460
+(dp461
+Vimage-file
+p462
+Varch/arm/boot/zImage
+p463
+sVvdso
+p464
+I01
+ss(Vimage
+p465
+g450
+tp466
+(dp467
+Vinstall-stem
+p468
+Vvmlinuz
+p469
+ss(Vrelations
+p470
+g450
+tp471
+(dp472
+Vheaders%gcc-10
+p473
+Vlinux-compiler-gcc-10-arm
+p474
+ss(Vdescription
+p475
+g450
+NVarmmp
+p476
+tp477
+(dp478
+Vhardware
+p479
+VARMv7 multiplatform compatible SoCs
+p480
+sVhardware-long
+p481
+VARMv7 multiplatform kernel. See\u000ahttps://wiki.debian.org/DebianKernel/ARMMP for details of supported\u000aplatforms
+p482
+ss(Vdescription
+p483
+g450
+NVarmmp-lpae
+p484
+tp485
+(dp486
+Vhardware
+p487
+VARMv7 multiplatform compatible SoCs supporting LPAE
+p488
+sVhardware-long
+p489
+VARMv7 multiplatform kernel supporting LPAE. See\u000ahttps://wiki.debian.org/DebianKernel/ARMMP for details of supported\u000aplatforms.
+p490
+ss(Vbase
+p491
+g450
+Vnone
+p492
+tp493
+(dp494
+Vflavours
+p495
+(lp496
+Varmmp
+p497
+aVarmmp-lpae
+p498
+asVdefault-flavour
+p499
+Varmmp
+p500
+ss(Vbase
+p501
+g450
+Vrt
+p502
+tp503
+(dp504
+Vflavours
+p505
+(lp506
+Varmmp
+p507
+ass(Vbase
+p508
+Vhppa
+p509
+tp510
+(dp511
+Vdefault-flavour
+p512
+Vparisc
+p513
+sVkernel-arch
+p514
+Vparisc
+p515
+sg189
+(lp516
+g191
+ass(Vbuild
+p517
+g509
+tp518
+(dp519
+Vimage-file
+p520
+Varch/parisc/boot/bzImage
+p521
+sVdebug-info
+p522
+I00
+ss(Vimage
+p523
+g509
+tp524
+(dp525
+Vsuggests
+p526
+(lp527
+Vpalo
+p528
+asVinstall-stem
+p529
+Vvmlinuz
+p530
+ss(Vdescription
+p531
+g509
+NVparisc
+p532
+tp533
+(dp534
+Vhardware
+p535
+V32-bit PA-RISC
+p536
+sVhardware-long
+p537
+VHP PA-RISC 32-bit systems with max 4 GB RAM
+p538
+ss(Vbase
+p539
+g509
+NVparisc64
+p540
+tp541
+(dp542
+Vcflags
+p543
+V-fno-cse-follow-jumps
+p544
+sVoverride-host-type
+p545
+Vhppa64-linux-gnu
+p546
+ss(Vdescription
+p547
+g509
+NVparisc64
+p548
+tp549
+(dp550
+Vhardware
+p551
+V64-bit PA-RISC
+p552
+sVhardware-long
+p553
+VHP PA-RISC 64-bit systems with support for more than 4 GB RAM
+p554
+ss(Vrelations
+p555
+g509
+tp556
+(dp557
+Vgcc-10
+p558
+Vgcc-10 <!stage1 !cross !pkg.linux.nokernel>, gcc-10-hppa-linux-gnu <!stage1 cross !pkg.linux.nokernel>, binutils-hppa64-linux-gnu <!stage1 !pkg.linux.nokernel>, gcc-10-hppa64-linux-gnu <!stage1 !pkg.linux.nokernel>
+p559
+ss(g222
+g509
+g191
+tp560
+(dp561
+g225
+(lp562
+Vparisc
+p563
+aVparisc64
+p564
+asg229
+I01
+ss(Vbase
+p565
+Vi386
+p566
+tp567
+(dp568
+Vfeaturesets
+p569
+(lp570
+Vnone
+p571
+aVrt
+p572
+asVkernel-arch
+p573
+Vx86
+p574
+ss(Vbuild
+p575
+g566
+tp576
+(dp577
+Vimage-file
+p578
+Varch/x86/boot/bzImage
+p579
+sVsigned-code
+p580
+I01
+sVvdso
+p581
+I01
+ss(Vdescription
+p582
+g566
+tp583
+(dp584
+Vpart-long-pae
+p585
+VThis kernel requires PAE (Physical Address Extension).\u000aThis feature is supported by the Intel Pentium Pro/II/III/4/4M/D, Xeon,\u000aCore and Atom; AMD Geode NX, Athlon (K7), Duron, Opteron, Sempron,\u000aTurion or Phenom; Transmeta Efficeon; VIA C7; and some other processors.
+p586
+ss(Vimage
+p587
+g566
+tp588
+(dp589
+Vbootloaders
+p590
+(lp591
+Vgrub-pc
+p592
+aVgrub-efi-ia32
+p593
+aVextlinux
+p594
+asVinstall-stem
+p595
+Vvmlinuz
+p596
+sVbreaks
+p597
+(lp598
+Vxserver-xorg-input-vmmouse (<< 1:13.0.99)
+p599
+ass(Vrelations
+p600
+g566
+tp601
+(dp602
+Vheaders%gcc-10
+p603
+Vlinux-compiler-gcc-10-x86
+p604
+ss(Vdescription
+p605
+g566
+NV686
+p606
+tp607
+(dp608
+Vhardware
+p609
+Volder PCs
+p610
+sVhardware-long
+p611
+VPCs with one or more processors not supporting PAE
+p612
+ss(Vdescription
+p613
+g566
+NV686-pae
+p614
+tp615
+(dp616
+Vhardware
+p617
+Vmodern PCs
+p618
+sVhardware-long
+p619
+VPCs with one or more processors supporting PAE
+p620
+sVparts
+p621
+(lp622
+Vpae
+p623
+ass(Vbase
+p624
+g566
+Vnone
+p625
+tp626
+(dp627
+Vflavours
+p628
+(lp629
+V686
+p630
+aV686-pae
+p631
+asVdefault-flavour
+p632
+V686-pae
+p633
+ss(Vbase
+p634
+g566
+Vrt
+p635
+tp636
+(dp637
+Vflavours
+p638
+(lp639
+V686-pae
+p640
+ass(Vbase
+p641
+Via64
+p642
+tp643
+(dp644
+Vdefault-flavour
+p645
+Vitanium
+p646
+sVkernel-arch
+p647
+Via64
+p648
+sg189
+(lp649
+g191
+ass(Vbuild
+p650
+g642
+tp651
+(dp652
+Vimage-file
+p653
+Vvmlinux.gz
+p654
+ss(Vimage
+p655
+g642
+tp656
+(dp657
+Vbootloaders
+p658
+(lp659
+Vgrub-efi-ia64
+p660
+asVinstall-stem
+p661
+Vvmlinuz
+p662
+ss(Vdescription
+p663
+g642
+NVitanium
+p664
+tp665
+(dp666
+Vhardware
+p667
+VItanium (Merced)
+p668
+sVhardware-long
+p669
+Vsystems with original Itanium (Merced) processors
+p670
+ss(Vdescription
+p671
+g642
+NVmckinley
+p672
+tp673
+(dp674
+Vhardware
+p675
+VItanium 2+
+p676
+sVhardware-long
+p677
+Vsystems with Itanium 2 or 9300/9500/9700-series processors
+p678
+ss(g222
+g642
+g191
+tp679
+(dp680
+g225
+(lp681
+Vitanium
+p682
+aVmckinley
+p683
+asg229
+I01
+ss(Vbase
+p684
+Vm68k
+p685
+tp686
+(dp687
+Vcflags
+p688
+V-ffreestanding
+p689
+sVdefault-flavour
+p690
+Vm68k
+p691
+sVkernel-arch
+p692
+Vm68k
+p693
+sg189
+(lp694
+g191
+ass(Vbuild
+p695
+g685
+tp696
+(dp697
+Vimage-file
+p698
+Vvmlinux
+p699
+ss(Vimage
+p700
+g685
+tp701
+(dp702
+Vsuggests
+p703
+(lp704
+Vvmelilo
+p705
+aVfdutils
+p706
+asVinstall-stem
+p707
+Vvmlinux
+p708
+ss(Vdescription
+p709
+g685
+NVm68k
+p710
+tp711
+(dp712
+Vhardware
+p713
+VMotorola MC68020+ family
+p714
+ss(g222
+g685
+g191
+tp715
+(dp716
+g225
+(lp717
+Vm68k
+p718
+asg229
+I01
+ss(Vbase
+p719
+Vmips
+p720
+tp721
+(dp722
+Vkernel-arch
+p723
+Vmips
+p724
+sg189
+(lp725
+g191
+ass(Vbuild
+p726
+g720
+tp727
+(dp728
+Vimage-file
+p729
+Vvmlinuz
+p730
+ss(Vimage
+p731
+g720
+tp732
+(dp733
+Vinstall-stem
+p734
+Vvmlinuz
+p735
+ss(Vdescription
+p736
+g720
+NV4kc-malta
+p737
+tp738
+(dp739
+Vhardware
+p740
+VMIPS Malta
+p741
+sVhardware-long
+p742
+VMIPS Malta boards
+p743
+ss(Vimage
+p744
+g720
+NV4kc-malta
+p745
+tp746
+(dp747
+Vconfigs
+p748
+(lp749
+Vkernelarch-mips/config.malta
+p750
+aVkernelarch-mips/config.mips32r2
+p751
+ass(Vdescription
+p752
+g720
+NV5kc-malta
+p753
+tp754
+(dp755
+Vhardware
+p756
+VMIPS Malta (64-bit)
+p757
+sVhardware-long
+p758
+VMIPS Malta boards (64-bit)
+p759
+ss(Vimage
+p760
+g720
+NV5kc-malta
+p761
+tp762
+(dp763
+Vconfigs
+p764
+(lp765
+Vkernelarch-mips/config.malta
+p766
+aVkernelarch-mips/config.mips64r2
+p767
+ass(Vdescription
+p768
+g720
+NVocteon
+p769
+tp770
+(dp771
+Vhardware
+p772
+VOcteon
+p773
+sVhardware-long
+p774
+VCavium Networks Octeon
+p775
+ss(Vbuild
+p776
+g720
+NVocteon
+p777
+tp778
+(dp779
+Vimage-file
+p780
+Vvmlinux
+p781
+ss(Vimage
+p782
+g720
+NVocteon
+p783
+tp784
+(dp785
+Vinstall-stem
+p786
+Vvmlinux
+p787
+sVconfigs
+p788
+(lp789
+Vkernelarch-mips/config.octeon
+p790
+ass(g222
+g720
+g191
+tp791
+(dp792
+g225
+(lp793
+V4kc-malta
+p794
+aV5kc-malta
+p795
+aVocteon
+p796
+asg229
+I01
+ss(Vbase
+p797
+Vmips64
+p798
+tp799
+(dp800
+Vkernel-arch
+p801
+Vmips
+p802
+sg189
+(lp803
+g191
+ass(Vbuild
+p804
+g798
+tp805
+(dp806
+Vimage-file
+p807
+Vvmlinuz
+p808
+ss(Vimage
+p809
+g798
+tp810
+(dp811
+Vinstall-stem
+p812
+Vvmlinuz
+p813
+ss(Vdescription
+p814
+g798
+NV5kc-malta
+p815
+tp816
+(dp817
+Vhardware
+p818
+VMIPS Malta
+p819
+sVhardware-long
+p820
+VMIPS Malta boards
+p821
+ss(Vimage
+p822
+g798
+NV5kc-malta
+p823
+tp824
+(dp825
+Vconfigs
+p826
+(lp827
+Vkernelarch-mips/config.malta
+p828
+aVkernelarch-mips/config.mips64r2
+p829
+ass(Vdescription
+p830
+g798
+NVocteon
+p831
+tp832
+(dp833
+Vhardware
+p834
+VOcteon
+p835
+sVhardware-long
+p836
+VCavium Networks Octeon
+p837
+ss(Vbuild
+p838
+g798
+NVocteon
+p839
+tp840
+(dp841
+Vimage-file
+p842
+Vvmlinux
+p843
+ss(Vimage
+p844
+g798
+NVocteon
+p845
+tp846
+(dp847
+Vinstall-stem
+p848
+Vvmlinux
+p849
+sVconfigs
+p850
+(lp851
+Vkernelarch-mips/config.octeon
+p852
+ass(g222
+g798
+g191
+tp853
+(dp854
+g225
+(lp855
+V5kc-malta
+p856
+aVocteon
+p857
+asg229
+I01
+ss(Vbase
+p858
+Vmips64el
+p859
+tp860
+(dp861
+Vkernel-arch
+p862
+Vmips
+p863
+sg189
+(lp864
+g191
+ass(Vbuild
+p865
+g859
+tp866
+(dp867
+Vimage-file
+p868
+Vvmlinuz
+p869
+ss(Vimage
+p870
+g859
+tp871
+(dp872
+Vinstall-stem
+p873
+Vvmlinuz
+p874
+ss(Vdescription
+p875
+g859
+NV5kc-malta
+p876
+tp877
+(dp878
+Vhardware
+p879
+VMIPS Malta
+p880
+sVhardware-long
+p881
+VMIPS Malta boards
+p882
+ss(Vimage
+p883
+g859
+NV5kc-malta
+p884
+tp885
+(dp886
+Vconfigs
+p887
+(lp888
+Vkernelarch-mips/config.malta
+p889
+aVkernelarch-mips/config.mips64r2
+p890
+ass(Vdescription
+p891
+g859
+NVloongson-3
+p892
+tp893
+(dp894
+Vhardware
+p895
+VLoongson 3A/3B
+p896
+sVhardware-long
+p897
+VLoongson 3A or 3B based systems (e.g. from Loongson or Lemote)
+p898
+ss(Vimage
+p899
+g859
+NVloongson-3
+p900
+tp901
+(dp902
+Vconfigs
+p903
+(lp904
+Vkernelarch-mips/config.loongson-3
+p905
+ass(Vdescription
+p906
+g859
+NVocteon
+p907
+tp908
+(dp909
+Vhardware
+p910
+VOcteon
+p911
+sVhardware-long
+p912
+VCavium Networks Octeon
+p913
+ss(Vbuild
+p914
+g859
+NVocteon
+p915
+tp916
+(dp917
+Vimage-file
+p918
+Vvmlinux
+p919
+ss(Vimage
+p920
+g859
+NVocteon
+p921
+tp922
+(dp923
+Vinstall-stem
+p924
+Vvmlinux
+p925
+sVconfigs
+p926
+(lp927
+Vkernelarch-mips/config.octeon
+p928
+ass(g222
+g859
+g191
+tp929
+(dp930
+g225
+(lp931
+V5kc-malta
+p932
+aVloongson-3
+p933
+aVocteon
+p934
+asg229
+I01
+ss(Vbase
+p935
+Vmips64r6
+p936
+tp937
+(dp938
+Vdefault-flavour
+p939
+Vmips64r6
+p940
+sVkernel-arch
+p941
+Vmips
+p942
+sg189
+(lp943
+g191
+ass(Vbuild
+p944
+g936
+tp945
+(dp946
+Vimage-file
+p947
+Vvmlinux
+p948
+ss(Vimage
+p949
+g936
+tp950
+(dp951
+Vinstall-stem
+p952
+Vvmlinux
+p953
+ss(Vdescription
+p954
+g936
+NVmips64r6
+p955
+tp956
+(dp957
+Vhardware
+p958
+VMIPS R6 (64 bit, big endian)
+p959
+sVhardware-long
+p960
+VMIPS R6 (64 bit, big endian)
+p961
+ss(Vimage
+p962
+g936
+NVmips64r6
+p963
+tp964
+(dp965
+Vconfigs
+p966
+(lp967
+Vkernelarch-mips/config.boston
+p968
+aVkernelarch-mips/config.mips64r6
+p969
+ass(g222
+g936
+g191
+tp970
+(dp971
+g225
+(lp972
+Vmips64r6
+p973
+asg229
+I01
+ss(Vbase
+p974
+Vmips64r6el
+p975
+tp976
+(dp977
+Vdefault-flavour
+p978
+Vmips64r6el
+p979
+sVkernel-arch
+p980
+Vmips
+p981
+sg189
+(lp982
+g191
+ass(Vbuild
+p983
+g975
+tp984
+(dp985
+Vimage-file
+p986
+Vvmlinux
+p987
+ss(Vimage
+p988
+g975
+tp989
+(dp990
+Vinstall-stem
+p991
+Vvmlinux
+p992
+ss(Vdescription
+p993
+g975
+NVmips64r6el
+p994
+tp995
+(dp996
+Vhardware
+p997
+VMIPS R6 (64 bit, little endian)
+p998
+sVhardware-long
+p999
+VMIPS R6 (64 bit, little endian)
+p1000
+ss(Vimage
+p1001
+g975
+NVmips64r6el
+p1002
+tp1003
+(dp1004
+Vconfigs
+p1005
+(lp1006
+Vkernelarch-mips/config.boston
+p1007
+aVkernelarch-mips/config.mips64r6
+p1008
+ass(g222
+g975
+g191
+tp1009
+(dp1010
+g225
+(lp1011
+Vmips64r6el
+p1012
+asg229
+I01
+ss(Vbase
+p1013
+Vmipsel
+p1014
+tp1015
+(dp1016
+Vkernel-arch
+p1017
+Vmips
+p1018
+sg189
+(lp1019
+g191
+ass(Vbuild
+p1020
+g1014
+tp1021
+(dp1022
+Vimage-file
+p1023
+Vvmlinuz
+p1024
+ss(Vimage
+p1025
+g1014
+tp1026
+(dp1027
+Vinstall-stem
+p1028
+Vvmlinuz
+p1029
+ss(Vdescription
+p1030
+g1014
+NV4kc-malta
+p1031
+tp1032
+(dp1033
+Vhardware
+p1034
+VMIPS Malta
+p1035
+sVhardware-long
+p1036
+VMIPS Malta boards
+p1037
+ss(Vimage
+p1038
+g1014
+NV4kc-malta
+p1039
+tp1040
+(dp1041
+Vconfigs
+p1042
+(lp1043
+Vkernelarch-mips/config.malta
+p1044
+aVkernelarch-mips/config.mips32r2
+p1045
+ass(Vdescription
+p1046
+g1014
+NV5kc-malta
+p1047
+tp1048
+(dp1049
+Vhardware
+p1050
+VMIPS Malta (64-bit)
+p1051
+sVhardware-long
+p1052
+VMIPS Malta boards (64-bit)
+p1053
+ss(Vimage
+p1054
+g1014
+NV5kc-malta
+p1055
+tp1056
+(dp1057
+Vconfigs
+p1058
+(lp1059
+Vkernelarch-mips/config.malta
+p1060
+aVkernelarch-mips/config.mips64r2
+p1061
+ass(Vdescription
+p1062
+g1014
+NVloongson-3
+p1063
+tp1064
+(dp1065
+Vhardware
+p1066
+VLoongson 3A/3B
+p1067
+sVhardware-long
+p1068
+VLoongson 3A or 3B based systems (e.g. from Loongson or Lemote)
+p1069
+ss(Vimage
+p1070
+g1014
+NVloongson-3
+p1071
+tp1072
+(dp1073
+Vconfigs
+p1074
+(lp1075
+Vkernelarch-mips/config.loongson-3
+p1076
+ass(Vdescription
+p1077
+g1014
+NVocteon
+p1078
+tp1079
+(dp1080
+Vhardware
+p1081
+VOcteon
+p1082
+sVhardware-long
+p1083
+VCavium Networks Octeon
+p1084
+ss(Vbuild
+p1085
+g1014
+NVocteon
+p1086
+tp1087
+(dp1088
+Vimage-file
+p1089
+Vvmlinux
+p1090
+ss(Vimage
+p1091
+g1014
+NVocteon
+p1092
+tp1093
+(dp1094
+Vinstall-stem
+p1095
+Vvmlinux
+p1096
+sVconfigs
+p1097
+(lp1098
+Vkernelarch-mips/config.octeon
+p1099
+ass(g222
+g1014
+g191
+tp1100
+(dp1101
+g225
+(lp1102
+V4kc-malta
+p1103
+aV5kc-malta
+p1104
+aVloongson-3
+p1105
+aVocteon
+p1106
+asg229
+I01
+ss(Vbase
+p1107
+Vmipsn32
+p1108
+tp1109
+(dp1110
+Vkernel-arch
+p1111
+Vmips
+p1112
+sVfeaturesets
+p1113
+(lp1114
+ss(Vbase
+p1115
+Vmipsn32el
+p1116
+tp1117
+(dp1118
+Vkernel-arch
+p1119
+Vmips
+p1120
+sVfeaturesets
+p1121
+(lp1122
+ss(Vbase
+p1123
+Vmipsn32r6
+p1124
+tp1125
+(dp1126
+Vkernel-arch
+p1127
+Vmips
+p1128
+sVfeaturesets
+p1129
+(lp1130
+ss(Vbase
+p1131
+Vmipsn32r6el
+p1132
+tp1133
+(dp1134
+Vkernel-arch
+p1135
+Vmips
+p1136
+sVfeaturesets
+p1137
+(lp1138
+ss(Vbase
+p1139
+Vmipsr6
+p1140
+tp1141
+(dp1142
+Vdefault-flavour
+p1143
+Vmips32r6
+p1144
+sVkernel-arch
+p1145
+Vmips
+p1146
+sg189
+(lp1147
+g191
+ass(Vbuild
+p1148
+g1140
+tp1149
+(dp1150
+Vimage-file
+p1151
+Vvmlinux
+p1152
+ss(Vimage
+p1153
+g1140
+tp1154
+(dp1155
+Vinstall-stem
+p1156
+Vvmlinux
+p1157
+ss(Vdescription
+p1158
+g1140
+NVmips32r6
+p1159
+tp1160
+(dp1161
+Vhardware
+p1162
+VMIPS R6 (32 bit, big endian)
+p1163
+sVhardware-long
+p1164
+VMIPS R6 (32 bit, big endian)
+p1165
+ss(Vimage
+p1166
+g1140
+NVmips32r6
+p1167
+tp1168
+(dp1169
+Vconfigs
+p1170
+(lp1171
+Vkernelarch-mips/config.boston
+p1172
+aVkernelarch-mips/config.mips32r6
+p1173
+ass(Vdescription
+p1174
+g1140
+NVmips64r6
+p1175
+tp1176
+(dp1177
+Vhardware
+p1178
+VMIPS R6 (64 bit, big endian)
+p1179
+sVhardware-long
+p1180
+VMIPS R6 (64 bit, big endian)
+p1181
+ss(Vimage
+p1182
+g1140
+NVmips64r6
+p1183
+tp1184
+(dp1185
+Vconfigs
+p1186
+(lp1187
+Vkernelarch-mips/config.boston
+p1188
+aVkernelarch-mips/config.mips64r6
+p1189
+ass(g222
+g1140
+g191
+tp1190
+(dp1191
+g225
+(lp1192
+Vmips32r6
+p1193
+aVmips64r6
+p1194
+asg229
+I01
+ss(Vbase
+p1195
+Vmipsr6el
+p1196
+tp1197
+(dp1198
+Vdefault-flavour
+p1199
+Vmips32r6el
+p1200
+sVkernel-arch
+p1201
+Vmips
+p1202
+sg189
+(lp1203
+g191
+ass(Vbuild
+p1204
+g1196
+tp1205
+(dp1206
+Vimage-file
+p1207
+Vvmlinux
+p1208
+ss(Vimage
+p1209
+g1196
+tp1210
+(dp1211
+Vinstall-stem
+p1212
+Vvmlinux
+p1213
+ss(Vdescription
+p1214
+g1196
+NVmips32r6el
+p1215
+tp1216
+(dp1217
+Vhardware
+p1218
+VMIPS R6 (32 bit, little endian)
+p1219
+sVhardware-long
+p1220
+VMIPS R6 (32 bit, little endian)
+p1221
+ss(Vimage
+p1222
+g1196
+NVmips32r6el
+p1223
+tp1224
+(dp1225
+Vconfigs
+p1226
+(lp1227
+Vkernelarch-mips/config.boston
+p1228
+aVkernelarch-mips/config.mips32r6
+p1229
+ass(Vdescription
+p1230
+g1196
+NVmips64r6el
+p1231
+tp1232
+(dp1233
+Vhardware
+p1234
+VMIPS R6 (64 bit, little endian)
+p1235
+sVhardware-long
+p1236
+VMIPS R6 (64 bit, little endian)
+p1237
+ss(Vimage
+p1238
+g1196
+NVmips64r6el
+p1239
+tp1240
+(dp1241
+Vconfigs
+p1242
+(lp1243
+Vkernelarch-mips/config.boston
+p1244
+aVkernelarch-mips/config.mips64r6
+p1245
+ass(g222
+g1196
+g191
+tp1246
+(dp1247
+g225
+(lp1248
+Vmips32r6el
+p1249
+aVmips64r6el
+p1250
+asg229
+I01
+ss(Vbase
+p1251
+Vpowerpc
+p1252
+tp1253
+(dp1254
+Vkernel-arch
+p1255
+Vpowerpc
+p1256
+sg189
+(lp1257
+g191
+ass(Vbuild
+p1258
+g1252
+tp1259
+(dp1260
+Vimage-file
+p1261
+Vvmlinux
+p1262
+sVvdso
+p1263
+I01
+ss(Vimage
+p1264
+g1252
+tp1265
+(dp1266
+Vconfigs
+p1267
+(lp1268
+sVbootloaders
+p1269
+(lp1270
+Vgrub-ieee1275
+p1271
+asVsuggests
+p1272
+(lp1273
+Vmkvmlinuz
+p1274
+asVinstall-stem
+p1275
+Vvmlinux
+p1276
+ss(Vdescription
+p1277
+g1252
+NVpowerpc
+p1278
+tp1279
+(dp1280
+Vhardware
+p1281
+Vuniprocessor 32-bit PowerPC
+p1282
+ss(Vdescription
+p1283
+g1252
+NVpowerpc-smp
+p1284
+tp1285
+(dp1286
+Vhardware
+p1287
+Vmultiprocessor 32-bit PowerPC
+p1288
+ss(Vimage
+p1289
+g1252
+NVpowerpc-smp
+p1290
+tp1291
+(dp1292
+Vconfigs
+p1293
+(lp1294
+Vpowerpc/config.powerpc
+p1295
+aVpowerpc/config.powerpc-smp
+p1296
+ass(Vdescription
+p1297
+g1252
+NVpowerpc64
+p1298
+tp1299
+(dp1300
+Vhardware
+p1301
+V64-bit PowerPC
+p1302
+ss(Vimage
+p1303
+g1252
+NVpowerpc64
+p1304
+tp1305
+(dp1306
+Vconfigs
+p1307
+(lp1308
+Vkernelarch-powerpc/config-arch-64
+p1309
+aVkernelarch-powerpc/config-arch-64-be
+p1310
+ass(g222
+g1252
+g191
+tp1311
+(dp1312
+g225
+(lp1313
+Vpowerpc
+p1314
+aVpowerpc-smp
+p1315
+aVpowerpc64
+p1316
+asg229
+I01
+ss(Vbase
+p1317
+Vppc64
+p1318
+tp1319
+(dp1320
+Vdefault-flavour
+p1321
+Vpowerpc64
+p1322
+sVkernel-arch
+p1323
+Vpowerpc
+p1324
+sg189
+(lp1325
+g191
+ass(Vbuild
+p1326
+g1318
+tp1327
+(dp1328
+Vimage-file
+p1329
+Vvmlinux
+p1330
+sVvdso
+p1331
+I01
+ss(Vimage
+p1332
+g1318
+tp1333
+(dp1334
+Vconfigs
+p1335
+(lp1336
+sVbootloaders
+p1337
+(lp1338
+Vgrub-ieee1275
+p1339
+asVsuggests
+p1340
+(lp1341
+Vmkvmlinuz
+p1342
+asVinstall-stem
+p1343
+Vvmlinux
+p1344
+ss(Vdescription
+p1345
+g1318
+NVpowerpc64
+p1346
+tp1347
+(dp1348
+Vhardware
+p1349
+V64-bit PowerPC
+p1350
+ss(Vimage
+p1351
+g1318
+NVpowerpc64
+p1352
+tp1353
+(dp1354
+Vconfigs
+p1355
+(lp1356
+Vkernelarch-powerpc/config-arch-64
+p1357
+aVkernelarch-powerpc/config-arch-64-be
+p1358
+ass(g222
+g1318
+g191
+tp1359
+(dp1360
+g225
+(lp1361
+Vpowerpc64
+p1362
+asg229
+I01
+ss(Vbase
+p1363
+Vppc64el
+p1364
+tp1365
+(dp1366
+Vdefault-flavour
+p1367
+Vpowerpc64le
+p1368
+sVkernel-arch
+p1369
+Vpowerpc
+p1370
+sg189
+(lp1371
+g191
+ass(Vbuild
+p1372
+g1364
+tp1373
+(dp1374
+Vimage-file
+p1375
+Vvmlinux
+p1376
+sVvdso
+p1377
+I01
+ss(Vimage
+p1378
+g1364
+tp1379
+(dp1380
+Vconfigs
+p1381
+(lp1382
+sVbootloaders
+p1383
+(lp1384
+Vgrub-ieee1275
+p1385
+asVsuggests
+p1386
+(lp1387
+Vmkvmlinuz
+p1388
+asVinstall-stem
+p1389
+Vvmlinux
+p1390
+ss(Vdescription
+p1391
+g1364
+NVpowerpc64le
+p1392
+tp1393
+(dp1394
+Vhardware
+p1395
+VLittle-endian 64-bit PowerPC
+p1396
+ss(Vimage
+p1397
+g1364
+NVpowerpc64le
+p1398
+tp1399
+(dp1400
+Vconfigs
+p1401
+(lp1402
+Vkernelarch-powerpc/config-arch-64
+p1403
+aVkernelarch-powerpc/config-arch-64-le
+p1404
+ass(g222
+g1364
+g191
+tp1405
+(dp1406
+g225
+(lp1407
+Vpowerpc64le
+p1408
+asg229
+I01
+ss(Vbase
+p1409
+Vriscv64
+p1410
+tp1411
+(dp1412
+Vkernel-arch
+p1413
+Vriscv
+p1414
+sVfeaturesets
+p1415
+(lp1416
+Vnone
+p1417
+ass(Vbuild
+p1418
+g1410
+tp1419
+(dp1420
+Vimage-file
+p1421
+Varch/riscv/boot/Image
+p1422
+sVvdso
+p1423
+I01
+ss(Vimage
+p1424
+g1410
+tp1425
+(dp1426
+Vinstall-stem
+p1427
+Vvmlinux
+p1428
+ss(Vdescription
+p1429
+g1410
+NVriscv64
+p1430
+tp1431
+(dp1432
+Vhardware
+p1433
+V64-bit RISC-V platforms
+p1434
+sVhardware-long
+p1435
+V64-bit RISC-V platforms
+p1436
+ss(Vbase
+p1437
+g1410
+Vnone
+p1438
+tp1439
+(dp1440
+Vflavours
+p1441
+(lp1442
+Vriscv64
+p1443
+asVdefault-flavour
+p1444
+Vriscv64
+p1445
+ss(Vbase
+p1446
+Vs390
+p1447
+tp1448
+(dp1449
+Vkernel-arch
+p1450
+Vs390
+p1451
+sVfeaturesets
+p1452
+(lp1453
+ss(Vbase
+p1454
+Vs390x
+p1455
+tp1456
+(dp1457
+Vdefault-flavour
+p1458
+Vs390x
+p1459
+sVkernel-arch
+p1460
+Vs390
+p1461
+sg189
+(lp1462
+g191
+ass(Vbuild
+p1463
+g1455
+tp1464
+(dp1465
+Vimage-file
+p1466
+Varch/s390/boot/bzImage
+p1467
+sVvdso
+p1468
+I01
+ss(Vimage
+p1469
+g1455
+tp1470
+(dp1471
+Vbootloaders
+p1472
+(lp1473
+Vs390-tools
+p1474
+asVinstall-stem
+p1475
+Vvmlinuz
+p1476
+ss(Vrelations
+p1477
+g1455
+tp1478
+(dp1479
+Vheaders%gcc-10
+p1480
+Vlinux-compiler-gcc-10-s390
+p1481
+ss(Vdescription
+p1482
+g1455
+NVs390x
+p1483
+tp1484
+(dp1485
+Vhardware
+p1486
+VIBM zSeries
+p1487
+ss(g222
+g1455
+g191
+tp1488
+(dp1489
+g225
+(lp1490
+Vs390x
+p1491
+asg229
+I01
+ss(Vbase
+p1492
+Vsh3
+p1493
+tp1494
+(dp1495
+Vkernel-arch
+p1496
+Vsh
+p1497
+sVfeaturesets
+p1498
+(lp1499
+ss(Vbase
+p1500
+Vsh4
+p1501
+tp1502
+(dp1503
+Vkernel-arch
+p1504
+Vsh
+p1505
+sg189
+(lp1506
+g191
+ass(Vbuild
+p1507
+g1501
+tp1508
+(dp1509
+Vimage-file
+p1510
+Varch/sh/boot/zImage
+p1511
+ss(Vimage
+p1512
+g1501
+tp1513
+(dp1514
+Vinstall-stem
+p1515
+Vvmlinuz
+p1516
+ss(Vdescription
+p1517
+g1501
+NVsh7751r
+p1518
+tp1519
+(dp1520
+Vhardware
+p1521
+Vsh7751r
+p1522
+sVhardware-long
+p1523
+VRenesas SH7751R R2D plus board
+p1524
+ss(Vdescription
+p1525
+g1501
+NVsh7785lcr
+p1526
+tp1527
+(dp1528
+Vhardware
+p1529
+Vsh7785lcr
+p1530
+sVhardware-long
+p1531
+VRenesas SH7785 reference board
+p1532
+ss(Vimage
+p1533
+g1501
+NVsh7785lcr
+p1534
+tp1535
+(dp1536
+Vrecommends
+p1537
+(lp1538
+Vu-boot-tools
+p1539
+asVcheck-size
+p1540
+I4194304
+ss(g222
+g1501
+g191
+tp1541
+(dp1542
+g225
+(lp1543
+Vsh7751r
+p1544
+aVsh7785lcr
+p1545
+asg229
+I01
+ss(Vbase
+p1546
+Vsparc
+p1547
+tp1548
+(dp1549
+Vkernel-arch
+p1550
+Vsparc
+p1551
+sVfeaturesets
+p1552
+(lp1553
+ss(Vbase
+p1554
+Vsparc64
+p1555
+tp1556
+(dp1557
+Vdefault-flavour
+p1558
+Vsparc64-smp
+p1559
+sVkernel-arch
+p1560
+Vsparc
+p1561
+sg189
+(lp1562
+g191
+ass(Vbuild
+p1563
+g1555
+tp1564
+(dp1565
+Vimage-file
+p1566
+Vvmlinux
+p1567
+ss(Vimage
+p1568
+g1555
+tp1569
+(dp1570
+Vconfigs
+p1571
+(lp1572
+sVbootloaders
+p1573
+(lp1574
+Vgrub-ieee1275
+p1575
+asVsuggests
+p1576
+(lp1577
+Vfdutils
+p1578
+asVinstall-stem
+p1579
+Vvmlinux
+p1580
+ss(Vdescription
+p1581
+g1555
+NVsparc64
+p1582
+tp1583
+(dp1584
+Vhardware
+p1585
+Vuniprocessor 64-bit UltraSPARC
+p1586
+ss(Vimage
+p1587
+g1555
+NVsparc64
+p1588
+tp1589
+(dp1590
+Vconfigs
+p1591
+(lp1592
+Vkernelarch-sparc/config-up
+p1593
+ass(Vdescription
+p1594
+g1555
+NVsparc64-smp
+p1595
+tp1596
+(dp1597
+Vhardware
+p1598
+Vmultiprocessor 64-bit UltraSPARC
+p1599
+ss(Vimage
+p1600
+g1555
+NVsparc64-smp
+p1601
+tp1602
+(dp1603
+Vconfigs
+p1604
+(lp1605
+Vkernelarch-sparc/config-smp
+p1606
+ass(g222
+g1555
+g191
+tp1607
+(dp1608
+g225
+(lp1609
+Vsparc64
+p1610
+aVsparc64-smp
+p1611
+asg229
+I01
+ss(Vbase
+p1612
+Vx32
+p1613
+tp1614
+(dp1615
+Vkernel-arch
+p1616
+Vx86
+p1617
+sVfeaturesets
+p1618
+(lp1619
+ss(Vabi
+p1620
+NVrt
+p1621
+tp1622
+(dp1623
+Vignore-changes
+p1624
+(lp1625
+V*
+p1626
+ass(Vdescription
+p1627
+Ng1621
+tp1628
+(dp1629
+Vpart-long-rt
+p1630
+VThis kernel includes the PREEMPT_RT realtime patch set.
+p1631
+sVpart-short-rt
+p1632
+VPREEMPT_RT
+p1633
+sVparts
+p1634
+(lp1635
+Vrt
+p1636
+ass(Vversion
+p1637
+tp1638
+(dp1639
+Vsource
+p1640
+V5.10.209-2
+p1641
+sVupstream
+p1642
+V5.10
+p1643
+sVabiname_base
+p1644
+V5.10.0
+p1645
+sVabiname
+p1646
+V5.10.0-28
+p1647
+ss. \ No newline at end of file
diff --git a/debian/config/alpha/config b/debian/config/alpha/config
new file mode 100644
index 000000000..7ff99dc33
--- /dev/null
+++ b/debian/config/alpha/config
@@ -0,0 +1,966 @@
+##
+## file: arch/alpha/Kconfig
+##
+## choice: Alpha system type
+CONFIG_ALPHA_GENERIC=y
+# CONFIG_ALPHA_ALCOR is not set
+# CONFIG_ALPHA_XL is not set
+# CONFIG_ALPHA_BOOK1 is not set
+# CONFIG_ALPHA_AVANTI_CH is not set
+# CONFIG_ALPHA_CABRIOLET is not set
+# CONFIG_ALPHA_DP264 is not set
+# CONFIG_ALPHA_EB164 is not set
+# CONFIG_ALPHA_EB64P_CH is not set
+# CONFIG_ALPHA_EB66 is not set
+# CONFIG_ALPHA_EB66P is not set
+# CONFIG_ALPHA_EIGER is not set
+# CONFIG_ALPHA_JENSEN is not set
+# CONFIG_ALPHA_LX164 is not set
+# CONFIG_ALPHA_LYNX is not set
+# CONFIG_ALPHA_MARVEL is not set
+# CONFIG_ALPHA_MIATA is not set
+# CONFIG_ALPHA_MIKASA is not set
+# CONFIG_ALPHA_NAUTILUS is not set
+# CONFIG_ALPHA_NONAME_CH is not set
+# CONFIG_ALPHA_NORITAKE is not set
+# CONFIG_ALPHA_PC164 is not set
+# CONFIG_ALPHA_P2K is not set
+# CONFIG_ALPHA_RAWHIDE is not set
+# CONFIG_ALPHA_RUFFIAN is not set
+# CONFIG_ALPHA_RX164 is not set
+# CONFIG_ALPHA_SX164 is not set
+# CONFIG_ALPHA_SABLE is not set
+# CONFIG_ALPHA_SHARK is not set
+# CONFIG_ALPHA_TAKARA is not set
+# CONFIG_ALPHA_TITAN is not set
+# CONFIG_ALPHA_WILDFIRE is not set
+## end choice
+# CONFIG_ARCH_DISCONTIGMEM_ENABLE is not set
+# CONFIG_VERBOSE_MCHECK is not set
+CONFIG_SRM_ENV=m
+
+##
+## file: arch/alpha/Kconfig.debug
+##
+CONFIG_MATHEMU=y
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_ACORN_PARTITION=y
+# CONFIG_ACORN_PARTITION_CUMANA is not set
+# CONFIG_ACORN_PARTITION_EESOX is not set
+CONFIG_ACORN_PARTITION_ICS=y
+# CONFIG_ACORN_PARTITION_ADFS is not set
+# CONFIG_ACORN_PARTITION_POWERTEC is not set
+CONFIG_ACORN_PARTITION_RISCIX=y
+CONFIG_OSF_PARTITION=y
+CONFIG_AMIGA_PARTITION=y
+CONFIG_ATARI_PARTITION=y
+CONFIG_MAC_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+CONFIG_SOLARIS_X86_PARTITION=y
+CONFIG_UNIXWARE_DISKLABEL=y
+CONFIG_LDM_PARTITION=y
+# CONFIG_LDM_DEBUG is not set
+CONFIG_SGI_PARTITION=y
+CONFIG_ULTRIX_PARTITION=y
+CONFIG_SUN_PARTITION=y
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_ALI=m
+CONFIG_PATA_AMD=m
+CONFIG_PATA_CS5520=m
+CONFIG_PATA_CYPRESS=m
+CONFIG_PATA_EFAR=m
+CONFIG_PATA_HPT366=m
+CONFIG_PATA_HPT37X=m
+CONFIG_PATA_NS87415=m
+CONFIG_PATA_OLDPIIX=m
+CONFIG_PATA_PDC2027X=m
+CONFIG_PATA_PDC_OLD=m
+CONFIG_PATA_SC1200=m
+CONFIG_PATA_SERVERWORKS=m
+CONFIG_PATA_SIL680=m
+CONFIG_PATA_TRIFLEX=m
+CONFIG_PATA_VIA=m
+CONFIG_PATA_ISAPNP=y
+CONFIG_PATA_MPIIX=m
+CONFIG_PATA_OPTI=m
+CONFIG_PATA_LEGACY=m
+
+##
+## file: drivers/atm/Kconfig
+##
+CONFIG_ATM_DRIVERS=y
+CONFIG_ATM_TCP=m
+CONFIG_ATM_LANAI=m
+CONFIG_ATM_ENI=m
+# CONFIG_ATM_ENI_DEBUG is not set
+# CONFIG_ATM_ENI_TUNE_BURST is not set
+CONFIG_ATM_FIRESTREAM=m
+CONFIG_ATM_ZATM=m
+# CONFIG_ATM_ZATM_DEBUG is not set
+CONFIG_ATM_IDT77252=m
+# CONFIG_ATM_IDT77252_DEBUG is not set
+# CONFIG_ATM_IDT77252_RCV_ALL is not set
+CONFIG_ATM_AMBASSADOR=m
+# CONFIG_ATM_AMBASSADOR_DEBUG is not set
+CONFIG_ATM_HORIZON=m
+# CONFIG_ATM_HORIZON_DEBUG is not set
+# CONFIG_ATM_FORE200E_USE_TASKLET is not set
+CONFIG_ATM_FORE200E_TX_RETRY=16
+CONFIG_ATM_FORE200E_DEBUG=0
+CONFIG_ATM_HE=m
+CONFIG_ATM_HE_USE_SUNI=y
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV_FD=m
+CONFIG_BLK_DEV_UMEM=m
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+CONFIG_CDROM_PKTCDVD_WCACHE=y
+
+##
+## file: drivers/bluetooth/Kconfig
+##
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+CONFIG_BT_HCIDTL1=m
+CONFIG_BT_HCIBT3C=m
+CONFIG_BT_HCIBLUECARD=m
+CONFIG_BT_HCIVHCI=m
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_PRINTER=m
+# CONFIG_LP_CONSOLE is not set
+CONFIG_PPDEV=m
+CONFIG_DTLK=m
+CONFIG_APPLICOM=m
+CONFIG_RAW_DRIVER=m
+CONFIG_MAX_RAW_DEVS=256
+
+##
+## file: drivers/char/agp/Kconfig
+##
+#. Workaround
+CONFIG_AGP=y
+#. Workaround
+CONFIG_AGP_ALPHA_CORE=y
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+CONFIG_IPMI_HANDLER=m
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+
+##
+## file: drivers/eisa/Kconfig
+##
+CONFIG_EISA_PCI_EISA=y
+CONFIG_EISA_VIRTUAL_ROOT=y
+CONFIG_EISA_NAMES=y
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=m
+CONFIG_DRM_RADEON=m
+
+##
+## file: drivers/gpu/drm/i2c/Kconfig
+##
+CONFIG_DRM_I2C_CH7006=m
+CONFIG_DRM_I2C_SIL164=m
+
+##
+## file: drivers/gpu/drm/nouveau/Kconfig
+##
+CONFIG_DRM_NOUVEAU=m
+# CONFIG_DRM_NOUVEAU_BACKLIGHT is not set
+
+##
+## file: drivers/hid/usbhid/Kconfig
+##
+CONFIG_USB_HID=m
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_SENSORS_ADM1021=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1031=m
+CONFIG_SENSORS_ASB100=m
+CONFIG_SENSORS_DS1621=m
+CONFIG_SENSORS_F71805F=m
+CONFIG_SENSORS_GL518SM=m
+CONFIG_SENSORS_GL520SM=m
+CONFIG_SENSORS_IT87=m
+CONFIG_SENSORS_MAX1619=m
+CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_PC87360=m
+CONFIG_SENSORS_PCF8591=m
+CONFIG_SENSORS_SIS5595=m
+CONFIG_SENSORS_SMSC47M1=m
+CONFIG_SENSORS_SMSC47B397=m
+CONFIG_SENSORS_VIA686A=m
+CONFIG_SENSORS_W83781D=m
+CONFIG_SENSORS_W83L785TS=m
+CONFIG_SENSORS_W83627HF=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=m
+CONFIG_I2C_STUB=m
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_ALI1535=m
+CONFIG_I2C_ALI1563=m
+CONFIG_I2C_ALI15X3=m
+CONFIG_I2C_AMD756=m
+# CONFIG_I2C_AMD756_S4882 is not set
+CONFIG_I2C_AMD8111=m
+CONFIG_I2C_I801=m
+CONFIG_I2C_PIIX4=m
+CONFIG_I2C_NFORCE2=m
+CONFIG_I2C_SIS5595=m
+CONFIG_I2C_SIS630=m
+CONFIG_I2C_SIS96X=m
+CONFIG_I2C_VIA=m
+CONFIG_I2C_VIAPRO=m
+CONFIG_I2C_PARPORT=m
+CONFIG_I2C_ELEKTOR=m
+CONFIG_I2C_PCA_ISA=m
+CONFIG_SCx200_ACB=m
+
+##
+## file: drivers/input/gameport/Kconfig
+##
+CONFIG_GAMEPORT=m
+CONFIG_GAMEPORT_NS558=m
+CONFIG_GAMEPORT_L4=m
+CONFIG_GAMEPORT_EMU10K1=m
+CONFIG_GAMEPORT_FM801=m
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+CONFIG_INPUT_JOYSTICK=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ATKBD=y
+CONFIG_KEYBOARD_LKKBD=m
+CONFIG_KEYBOARD_NEWTON=m
+CONFIG_KEYBOARD_SUNKBD=m
+CONFIG_KEYBOARD_XTKBD=m
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_PCSPKR=m
+CONFIG_INPUT_UINPUT=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_SERIAL=m
+CONFIG_MOUSE_INPORT=m
+# CONFIG_MOUSE_ATIXL is not set
+CONFIG_MOUSE_LOGIBM=m
+CONFIG_MOUSE_PC110PAD=m
+CONFIG_MOUSE_VSXXXAA=m
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO=y
+CONFIG_SERIO_I8042=y
+CONFIG_SERIO_SERPORT=m
+CONFIG_SERIO_PARKBD=m
+CONFIG_SERIO_PCIPS2=m
+CONFIG_SERIO_LIBPS2=y
+CONFIG_SERIO_RAW=m
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+CONFIG_INPUT_TOUCHSCREEN=y
+
+##
+## file: drivers/isdn/Kconfig
+##
+CONFIG_ISDN=y
+
+##
+## file: drivers/media/radio/Kconfig
+##
+CONFIG_USB_DSBR=m
+CONFIG_RADIO_MAXIRADIO=m
+CONFIG_V4L_RADIO_ISA_DRIVERS=y
+CONFIG_RADIO_CADET=m
+CONFIG_RADIO_RTRACK=m
+CONFIG_RADIO_RTRACK2=m
+CONFIG_RADIO_AZTECH=m
+CONFIG_RADIO_GEMTEK=m
+CONFIG_RADIO_SF16FMI=m
+CONFIG_RADIO_SF16FMR2=m
+CONFIG_RADIO_TERRATEC=m
+CONFIG_RADIO_TRUST=m
+CONFIG_RADIO_TYPHOON=m
+CONFIG_RADIO_ZOLTRIX=m
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=m
+
+##
+## file: drivers/mmc/core/Kconfig
+##
+CONFIG_MMC_BLOCK=m
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+# CONFIG_MMC_DEBUG is not set
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_FTL=m
+CONFIG_NFTL=m
+CONFIG_NFTL_RW=y
+CONFIG_INFTL=m
+
+##
+## file: drivers/mtd/chips/Kconfig
+##
+CONFIG_MTD_CFI=m
+CONFIG_MTD_JEDECPROBE=m
+CONFIG_MTD_CFI_ADV_OPTIONS=y
+## choice: Flash cmd/query data swapping
+# CONFIG_MTD_CFI_NOSWAP is not set
+CONFIG_MTD_CFI_BE_BYTE_SWAP=y
+# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set
+## end choice
+CONFIG_MTD_CFI_GEOMETRY=y
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+CONFIG_MTD_MAP_BANK_WIDTH_8=y
+CONFIG_MTD_MAP_BANK_WIDTH_16=y
+CONFIG_MTD_MAP_BANK_WIDTH_32=y
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+CONFIG_MTD_CFI_I4=y
+CONFIG_MTD_CFI_I8=y
+# CONFIG_MTD_OTP is not set
+CONFIG_MTD_CFI_INTELEXT=m
+CONFIG_MTD_CFI_AMDSTD=m
+CONFIG_MTD_CFI_STAA=m
+CONFIG_MTD_RAM=m
+CONFIG_MTD_ROM=m
+CONFIG_MTD_ABSENT=m
+
+##
+## file: drivers/mtd/devices/Kconfig
+##
+CONFIG_MTD_PMC551=m
+# CONFIG_MTD_PMC551_BUGFIX is not set
+# CONFIG_MTD_PMC551_DEBUG is not set
+CONFIG_MTD_SLRAM=m
+CONFIG_MTD_PHRAM=m
+CONFIG_MTD_MTDRAM=m
+CONFIG_MTDRAM_TOTAL_SIZE=4096
+CONFIG_MTDRAM_ERASE_SIZE=128
+CONFIG_MTD_BLOCK2MTD=m
+
+##
+## file: drivers/mtd/maps/Kconfig
+##
+CONFIG_MTD_COMPLEX_MAPPINGS=y
+CONFIG_MTD_PHYSMAP=m
+CONFIG_MTD_PHYSMAP_START=0x8000000
+CONFIG_MTD_PHYSMAP_LEN=0x4000000
+CONFIG_MTD_PHYSMAP_BANKWIDTH=2
+CONFIG_MTD_PCI=m
+
+##
+## file: drivers/mtd/nand/raw/Kconfig
+##
+CONFIG_MTD_RAW_NAND=m
+# CONFIG_MTD_NAND_DISKONCHIP is not set
+
+##
+## file: drivers/mtd/parsers/Kconfig
+##
+CONFIG_MTD_CMDLINE_PARTS=y
+CONFIG_MTD_REDBOOT_PARTS=y
+CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
+CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED=y
+CONFIG_MTD_REDBOOT_PARTS_READONLY=y
+
+##
+## file: drivers/net/Kconfig
+##
+CONFIG_NET_FC=y
+CONFIG_NET_SB1000=m
+
+##
+## file: drivers/net/arcnet/Kconfig
+##
+CONFIG_ARCNET=m
+CONFIG_ARCNET_1201=m
+CONFIG_ARCNET_1051=m
+CONFIG_ARCNET_RAW=m
+CONFIG_ARCNET_CAP=m
+CONFIG_ARCNET_COM90xx=m
+CONFIG_ARCNET_COM90xxIO=m
+CONFIG_ARCNET_RIM_I=m
+CONFIG_ARCNET_COM20020=m
+CONFIG_ARCNET_COM20020_ISA=m
+CONFIG_ARCNET_COM20020_PCI=m
+CONFIG_ARCNET_COM20020_CS=m
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+CONFIG_FEALNX=m
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_EL3=m
+CONFIG_3C515=m
+CONFIG_PCMCIA_3C574=m
+CONFIG_PCMCIA_3C589=m
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_PCMCIA_AXNET=m
+CONFIG_NE2000=m
+CONFIG_NE2K_PCI=m
+CONFIG_PCMCIA_PCNET=m
+CONFIG_ULTRA=m
+CONFIG_WD80x3=m
+
+##
+## file: drivers/net/ethernet/adaptec/Kconfig
+##
+CONFIG_ADAPTEC_STARFIRE=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+CONFIG_AMD8111_ETH=m
+CONFIG_LANCE=m
+CONFIG_PCMCIA_NMCLAN=m
+CONFIG_NI65=m
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+CONFIG_B44=m
+
+##
+## file: drivers/net/ethernet/cirrus/Kconfig
+##
+CONFIG_CS89x0=m
+
+##
+## file: drivers/net/ethernet/dec/tulip/Kconfig
+##
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+CONFIG_DE4X5=m
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+CONFIG_PCMCIA_XIRCOM=m
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+CONFIG_SUNDANCE=m
+# CONFIG_SUNDANCE_MMIO is not set
+
+##
+## file: drivers/net/ethernet/fujitsu/Kconfig
+##
+CONFIG_PCMCIA_FMVJ18X=m
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_E100=m
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_NATSEMI=m
+
+##
+## file: drivers/net/ethernet/nvidia/Kconfig
+##
+CONFIG_FORCEDETH=m
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+
+##
+## file: drivers/net/ethernet/sis/Kconfig
+##
+CONFIG_SIS900=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_SMC9194=m
+CONFIG_PCMCIA_SMC91C92=m
+CONFIG_EPIC100=m
+
+##
+## file: drivers/net/ethernet/sun/Kconfig
+##
+CONFIG_HAPPYMEAL=m
+CONFIG_SUNGEM=m
+
+##
+## file: drivers/net/ethernet/via/Kconfig
+##
+CONFIG_VIA_RHINE=m
+# CONFIG_VIA_RHINE_MMIO is not set
+
+##
+## file: drivers/net/ethernet/xircom/Kconfig
+##
+CONFIG_PCMCIA_XIRC2PS=m
+
+##
+## file: drivers/net/fddi/Kconfig
+##
+CONFIG_FDDI=y
+CONFIG_SKFP=m
+
+##
+## file: drivers/net/hippi/Kconfig
+##
+CONFIG_HIPPI=y
+CONFIG_ROADRUNNER=m
+# CONFIG_ROADRUNNER_LARGE_RINGS is not set
+
+##
+## file: drivers/net/plip/Kconfig
+##
+CONFIG_PLIP=m
+
+##
+## file: drivers/net/wan/Kconfig
+##
+CONFIG_WAN=y
+CONFIG_HOSTESS_SV11=m
+CONFIG_COSA=m
+CONFIG_LANMEDIA=m
+CONFIG_SEALEVEL_4021=m
+CONFIG_PCI200SYN=m
+CONFIG_WANXL=m
+CONFIG_N2=m
+CONFIG_C101=m
+CONFIG_FARSYNC=m
+CONFIG_DLCI=m
+CONFIG_DLCI_MAX=8
+CONFIG_SDLA=m
+
+##
+## file: drivers/net/wireless/Kconfig
+##
+CONFIG_PCMCIA_RAYCS=m
+CONFIG_PCMCIA_WL3501=m
+
+##
+## file: drivers/net/wireless/atmel/Kconfig
+##
+CONFIG_ATMEL=m
+CONFIG_PCI_ATMEL=m
+CONFIG_PCMCIA_ATMEL=m
+
+##
+## file: drivers/net/wireless/cisco/Kconfig
+##
+CONFIG_AIRO_CS=m
+
+##
+## file: drivers/net/wireless/intel/ipw2x00/Kconfig
+##
+# CONFIG_IPW2100 is not set
+
+##
+## file: drivers/net/wireless/intersil/orinoco/Kconfig
+##
+CONFIG_HERMES=m
+CONFIG_PLX_HERMES=m
+CONFIG_TMD_HERMES=m
+CONFIG_PCI_HERMES=m
+CONFIG_PCMCIA_HERMES=m
+
+##
+## file: drivers/net/wireless/marvell/mwifiex/Kconfig
+##
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+
+##
+## file: drivers/net/wireless/zydas/Kconfig
+##
+CONFIG_USB_ZD1201=m
+
+##
+## file: drivers/pcmcia/Kconfig
+##
+CONFIG_PCCARD=m
+CONFIG_PCMCIA=m
+CONFIG_CARDBUS=y
+CONFIG_YENTA=m
+CONFIG_PD6729=m
+CONFIG_I82092=m
+CONFIG_I82365=m
+CONFIG_TCIC=m
+CONFIG_PCMCIA_DEBUG=y
+
+##
+## file: drivers/pnp/Kconfig
+##
+CONFIG_PNP=y
+
+##
+## file: drivers/pnp/isapnp/Kconfig
+##
+CONFIG_ISAPNP=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_ALPHA=y
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI_ARCMSR=m
+CONFIG_SCSI_BUSLOGIC=m
+CONFIG_SCSI_MYRB=m
+CONFIG_SCSI_MYRS=m
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_GDTH=m
+CONFIG_SCSI_GENERIC_NCR5380=m
+CONFIG_SCSI_IPS=m
+CONFIG_SCSI_INITIO=m
+CONFIG_SCSI_INIA100=m
+CONFIG_SCSI_IZIP_EPP16=y
+CONFIG_SCSI_IZIP_SLOW_CTR=y
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+CONFIG_SCSI_IPR=m
+CONFIG_SCSI_IPR_TRACE=y
+CONFIG_SCSI_IPR_DUMP=y
+CONFIG_SCSI_QLOGIC_FAS=m
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_SIM710=m
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_AM53C974=m
+CONFIG_SCSI_DEBUG=m
+
+##
+## file: drivers/scsi/aic7xxx/Kconfig.aic7xxx
+##
+CONFIG_AIC7XXX_CMDS_PER_DEVICE=8
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+
+##
+## file: drivers/scsi/pcmcia/Kconfig
+##
+CONFIG_PCMCIA_QLOGIC=m
+CONFIG_PCMCIA_SYM53C500=m
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+# CONFIG_SERIAL_NONSTANDARD is not set
+CONFIG_ROCKETPORT=m
+CONFIG_CYCLADES=m
+# CONFIG_CYZ_INTR is not set
+CONFIG_MOXA_INTELLIO=m
+CONFIG_SYNCLINK=m
+CONFIG_SYNCLINKMP=m
+CONFIG_ISI=m
+CONFIG_N_HDLC=m
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_JSM=m
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_CS=m
+CONFIG_SERIAL_8250_NR_UARTS=32
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_MANY_PORTS=y
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+# CONFIG_SERIAL_8250_DETECT_IRQ is not set
+CONFIG_SERIAL_8250_RSA=y
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=m
+CONFIG_USB_USS720=m
+
+##
+## file: drivers/usb/atm/Kconfig
+##
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_UHCI_HCD=m
+CONFIG_USB_SL811_HCD=m
+CONFIG_USB_SL811_CS=m
+
+##
+## file: drivers/video/backlight/Kconfig
+##
+CONFIG_LCD_CLASS_DEVICE=m
+
+##
+## file: drivers/video/console/Kconfig
+##
+CONFIG_VGA_CONSOLE=y
+CONFIG_MDA_CONSOLE=m
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+CONFIG_FB_CIRRUS=m
+CONFIG_FB_PM2=m
+CONFIG_FB_PM2_FIFO_DISCONNECT=y
+CONFIG_FB_CYBER2000=m
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+CONFIG_FB_TGA=m
+CONFIG_FB_S1D13XXX=m
+CONFIG_FB_MATROX=m
+CONFIG_FB_MATROX_MILLENIUM=y
+CONFIG_FB_MATROX_MYSTIQUE=y
+CONFIG_FB_MATROX_G=y
+CONFIG_FB_MATROX_I2C=m
+CONFIG_FB_MATROX_MAVEN=m
+CONFIG_FB_RADEON=m
+CONFIG_FB_RADEON_I2C=y
+# CONFIG_FB_RADEON_DEBUG is not set
+CONFIG_FB_ATY128=m
+CONFIG_FB_ATY=m
+CONFIG_FB_ATY_CT=y
+# CONFIG_FB_ATY_GENERIC_LCD is not set
+CONFIG_FB_ATY_GX=y
+CONFIG_FB_SAVAGE=m
+# CONFIG_FB_SAVAGE_I2C is not set
+# CONFIG_FB_SAVAGE_ACCEL is not set
+CONFIG_FB_SIS=m
+CONFIG_FB_SIS_300=y
+CONFIG_FB_SIS_315=y
+CONFIG_FB_NEOMAGIC=m
+CONFIG_FB_KYRO=m
+CONFIG_FB_VOODOO1=m
+CONFIG_FB_TRIDENT=m
+CONFIG_FB_VIRTUAL=m
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_PCWATCHDOG=m
+CONFIG_MIXCOMWD=m
+CONFIG_WDT=m
+CONFIG_PCIPCWATCHDOG=m
+CONFIG_WDTPCI=m
+CONFIG_USBPCWATCHDOG=m
+
+##
+## file: fs/Kconfig.binfmt
+##
+# CONFIG_BINFMT_EM86 is not set
+
+##
+## file: init/Kconfig
+##
+CONFIG_USELIB=y
+#. TODO
+# CONFIG_AUDIT is not set
+CONFIG_SYSFS_SYSCALL=y
+
+##
+## file: lib/Kconfig
+##
+#. TODO
+CONFIG_CRC32=m
+
+##
+## file: net/lapb/Kconfig
+##
+CONFIG_LAPB=m
+
+##
+## file: sound/drivers/Kconfig
+##
+CONFIG_SND_DUMMY=m
+CONFIG_SND_VIRMIDI=m
+CONFIG_SND_MTPAV=m
+CONFIG_SND_SERIAL_U16550=m
+CONFIG_SND_MPU401=m
+
+##
+## file: sound/isa/Kconfig
+##
+CONFIG_SND_ADLIB=m
+CONFIG_SND_AD1816A=m
+CONFIG_SND_AD1848=m
+CONFIG_SND_ALS100=m
+CONFIG_SND_AZT2320=m
+CONFIG_SND_CMI8330=m
+CONFIG_SND_CS4231=m
+CONFIG_SND_CS4236=m
+CONFIG_SND_ES1688=m
+CONFIG_SND_ES18XX=m
+CONFIG_SND_GUSCLASSIC=m
+CONFIG_SND_GUSEXTREME=m
+CONFIG_SND_GUSMAX=m
+CONFIG_SND_INTERWAVE=m
+CONFIG_SND_INTERWAVE_STB=m
+CONFIG_SND_OPL3SA2=m
+CONFIG_SND_OPTI92X_AD1848=m
+CONFIG_SND_OPTI92X_CS4231=m
+CONFIG_SND_OPTI93X=m
+CONFIG_SND_MIRO=m
+CONFIG_SND_SB8=m
+CONFIG_SND_SB16=m
+CONFIG_SND_SBAWE=m
+CONFIG_SND_SB16_CSP=y
+CONFIG_SND_SSCAPE=m
+CONFIG_SND_WAVEFRONT=m
+
+##
+## file: sound/pci/Kconfig
+##
+CONFIG_SND_ALS4000=m
+CONFIG_SND_ALI5451=m
+CONFIG_SND_ATIIXP=m
+CONFIG_SND_ATIIXP_MODEM=m
+CONFIG_SND_AU8810=m
+CONFIG_SND_AU8820=m
+CONFIG_SND_AU8830=m
+CONFIG_SND_AZT3328=m
+CONFIG_SND_BT87X=m
+# CONFIG_SND_BT87X_OVERCLOCK is not set
+CONFIG_SND_CA0106=m
+CONFIG_SND_CMIPCI=m
+CONFIG_SND_CS4281=m
+CONFIG_SND_CS46XX=m
+CONFIG_SND_CS46XX_NEW_DSP=y
+CONFIG_SND_EMU10K1=m
+CONFIG_SND_EMU10K1X=m
+CONFIG_SND_ENS1370=m
+CONFIG_SND_ENS1371=m
+CONFIG_SND_ES1938=m
+CONFIG_SND_ES1968=m
+CONFIG_SND_FM801=m
+CONFIG_SND_FM801_TEA575X_BOOL=y
+CONFIG_SND_HDSP=m
+CONFIG_SND_ICE1712=m
+CONFIG_SND_ICE1724=m
+CONFIG_SND_INTEL8X0=m
+CONFIG_SND_INTEL8X0M=m
+CONFIG_SND_KORG1212=m
+CONFIG_SND_MAESTRO3=m
+# CONFIG_SND_MIXART is not set
+CONFIG_SND_NM256=m
+CONFIG_SND_RME32=m
+CONFIG_SND_RME96=m
+CONFIG_SND_RME9652=m
+CONFIG_SND_SONICVIBES=m
+CONFIG_SND_TRIDENT=m
+CONFIG_SND_VIA82XX=m
+CONFIG_SND_VIA82XX_MODEM=m
+CONFIG_SND_VX222=m
+CONFIG_SND_YMFPCI=m
+
+##
+## file: sound/pci/hda/Kconfig
+##
+CONFIG_SND_HDA_INTEL=m
+
diff --git a/debian/config/alpha/config.alpha-generic b/debian/config/alpha/config.alpha-generic
new file mode 100644
index 000000000..d63bf76e6
--- /dev/null
+++ b/debian/config/alpha/config.alpha-generic
@@ -0,0 +1,10 @@
+##
+## file: arch/alpha/Kconfig
+##
+# CONFIG_SMP is not set
+
+##
+## file: arch/alpha/Kconfig.debug
+##
+# CONFIG_ALPHA_LEGACY_START_ADDRESS is not set
+
diff --git a/debian/config/alpha/config.alpha-smp b/debian/config/alpha/config.alpha-smp
new file mode 100644
index 000000000..19288e398
--- /dev/null
+++ b/debian/config/alpha/config.alpha-smp
@@ -0,0 +1,16 @@
+##
+## file: arch/alpha/Kconfig
+##
+CONFIG_SMP=y
+CONFIG_NR_CPUS=64
+
+##
+## file: arch/alpha/Kconfig.debug
+##
+# CONFIG_ALPHA_LEGACY_START_ADDRESS is not set
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI=y
+
diff --git a/debian/config/alpha/defines b/debian/config/alpha/defines
new file mode 100644
index 000000000..5f2034e76
--- /dev/null
+++ b/debian/config/alpha/defines
@@ -0,0 +1,19 @@
+[base]
+flavours: alpha-generic alpha-smp
+default-flavour: alpha-smp
+kernel-arch: alpha
+
+[build]
+image-file: arch/alpha/boot/vmlinux.gz
+
+[image]
+suggests: aboot, fdutils
+install-stem: vmlinuz
+
+[alpha-generic_description]
+hardware: Alpha
+hardware-long: DEC Alpha systems with extended kernel start address (Wildfire, Titan, Marvel)
+
+[alpha-smp_description]
+hardware: Alpha SMP
+hardware-long: DEC Alpha SMP systems with extended kernel start address (Wildfire, Titan, Marvel)
diff --git a/debian/config/amd64/config b/debian/config/amd64/config
new file mode 100644
index 000000000..87691911f
--- /dev/null
+++ b/debian/config/amd64/config
@@ -0,0 +1,259 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_ARCH_MMAP_RND_BITS=28
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8
+
+##
+## file: arch/x86/Kconfig
+##
+CONFIG_64BIT=y
+CONFIG_SMP=y
+CONFIG_X86_X2APIC=y
+CONFIG_MAXSMP=y
+CONFIG_X86_16BIT=y
+CONFIG_X86_VSYSCALL_EMULATION=y
+# CONFIG_X86_5LEVEL is not set
+CONFIG_NUMA=y
+CONFIG_AMD_NUMA=y
+CONFIG_X86_64_ACPI_NUMA=y
+CONFIG_NUMA_EMU=y
+CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y
+CONFIG_EFI_MIXED=y
+CONFIG_KEXEC_FILE=y
+CONFIG_KEXEC_SIG=y
+CONFIG_KEXEC_BZIMAGE_VERIFY_SIG=y
+CONFIG_RANDOMIZE_MEMORY=y
+## choice: vsyscall table for legacy applications
+# CONFIG_LEGACY_VSYSCALL_EMULATE is not set
+CONFIG_LEGACY_VSYSCALL_NONE=y
+## end choice
+CONFIG_PCI_MMCONFIG=y
+CONFIG_ISA_DMA_API=y
+# CONFIG_IA32_AOUT is not set
+CONFIG_X86_X32=y
+CONFIG_X86_X32_DISABLED=y
+
+##
+## file: arch/x86/Kconfig.cpu
+##
+## choice: Processor family
+# CONFIG_MK8 is not set
+# CONFIG_MPSC is not set
+# CONFIG_MCORE2 is not set
+# CONFIG_MATOM is not set
+CONFIG_GENERIC_CPU=y
+## end choice
+
+##
+## file: arch/x86/xen/Kconfig
+##
+CONFIG_XEN_512GB=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_AEGIS128_AESNI_SSE2=m
+CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m
+CONFIG_CRYPTO_POLY1305_X86_64=m
+CONFIG_CRYPTO_SHA1_SSSE3=m
+CONFIG_CRYPTO_SHA256_SSSE3=m
+CONFIG_CRYPTO_SHA512_SSSE3=m
+CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
+CONFIG_CRYPTO_BLOWFISH_X86_64=m
+CONFIG_CRYPTO_CAMELLIA_X86_64=m
+CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m
+CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64=m
+CONFIG_CRYPTO_CAST5_AVX_X86_64=m
+CONFIG_CRYPTO_CAST6_AVX_X86_64=m
+CONFIG_CRYPTO_DES3_EDE_X86_64=m
+CONFIG_CRYPTO_CHACHA20_X86_64=m
+CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m
+CONFIG_CRYPTO_SERPENT_AVX_X86_64=m
+CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m
+CONFIG_CRYPTO_TWOFISH_X86_64=m
+CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m
+CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m
+
+##
+## file: crypto/asymmetric_keys/Kconfig
+##
+CONFIG_SIGNED_PE_FILE_VERIFICATION=y
+
+##
+## file: drivers/acpi/Kconfig
+##
+CONFIG_ACPI_BGRT=y
+
+##
+## file: drivers/android/Kconfig
+##
+CONFIG_ANDROID=y
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV_RSXX=m
+
+##
+## file: drivers/char/agp/Kconfig
+##
+CONFIG_AGP=y
+#. Needed by GART_IOMMU
+CONFIG_AGP_AMD64=y
+
+##
+## file: drivers/edac/Kconfig
+##
+CONFIG_EDAC_SBRIDGE=m
+
+##
+## file: drivers/gpu/drm/i915/Kconfig
+##
+CONFIG_DRM_I915_GVT=y
+CONFIG_DRM_I915_GVT_KVMGT=m
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_SENSORS_AMD_ENERGY=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C_STUB=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+CONFIG_MOUSE_PS2_LIFEBOOK=y
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+
+##
+## file: drivers/iommu/amd/Kconfig
+##
+CONFIG_AMD_IOMMU=y
+#. Can be built as a module, but nothing will trigger loading
+CONFIG_AMD_IOMMU_V2=y
+
+##
+## file: drivers/macintosh/Kconfig
+##
+CONFIG_MACINTOSH_DRIVERS=y
+CONFIG_MAC_EMUMOUSEBTN=y
+
+##
+## file: drivers/net/Kconfig
+##
+CONFIG_FUJITSU_ES=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+CONFIG_AMD_XGBE=m
+
+##
+## file: drivers/net/ethernet/google/Kconfig
+##
+CONFIG_NET_VENDOR_GOOGLE=y
+CONFIG_GVE=m
+
+##
+## file: drivers/net/wireless/intel/ipw2x00/Kconfig
+##
+# CONFIG_IPW2100 is not set
+
+##
+## file: drivers/nvdimm/Kconfig
+##
+CONFIG_NVDIMM_PFN=y
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI_HYPERV=y
+
+##
+## file: drivers/pinctrl/Kconfig
+##
+CONFIG_PINCTRL_AMD=y
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI_INIA100=m
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI_PXA2XX=m
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_MOXA_INTELLIO=m
+CONFIG_ISI=m
+
+##
+## file: drivers/vfio/mdev/Kconfig
+##
+CONFIG_VFIO_MDEV=m
+CONFIG_VFIO_MDEV_DEVICE=m
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_MATROX_G=y
+CONFIG_FB_MATROX_MAVEN=m
+# CONFIG_FB_ATY_GENERIC_LCD is not set
+# CONFIG_FB_SAVAGE_I2C is not set
+
+##
+## file: init/Kconfig
+##
+CONFIG_KALLSYMS_ALL=y
+
+##
+## file: kernel/livepatch/Kconfig
+##
+CONFIG_LIVEPATCH=y
+
+##
+## file: kernel/rcu/Kconfig
+##
+CONFIG_RCU_FANOUT=64
+
+##
+## file: lib/Kconfig.debug
+##
+CONFIG_DEBUG_INFO_BTF=y
+CONFIG_FRAME_WARN=2048
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+CONFIG_SPARSEMEM_MANUAL=y
+## end choice
+CONFIG_SPARSEMEM_VMEMMAP=y
+CONFIG_ZONE_DEVICE=y
+
+##
+## file: security/Kconfig
+##
+CONFIG_LSM_MMAP_MIN_ADDR=65536
+
+##
+## file: sound/soc/amd/Kconfig
+##
+CONFIG_SND_SOC_AMD_ACP3x=m
+CONFIG_SND_SOC_AMD_RENOIR=m
+CONFIG_SND_SOC_AMD_RENOIR_MACH=m
+
+##
+## file: sound/soc/sof/intel/Kconfig
+##
+CONFIG_SND_SOC_SOF_COMETLAKE_LP_SUPPORT=y
+
diff --git a/debian/config/amd64/config.cloud-amd64 b/debian/config/amd64/config.cloud-amd64
new file mode 100644
index 000000000..bc87079ab
--- /dev/null
+++ b/debian/config/amd64/config.cloud-amd64
@@ -0,0 +1,42 @@
+##
+## file: arch/x86/Kconfig
+##
+# CONFIG_X86_MPPARSE is not set
+# CONFIG_X86_EXTENDED_PLATFORM is not set
+# CONFIG_X86_INTEL_LPSS is not set
+# CONFIG_X86_AMD_PLATFORM_DEVICE is not set
+# CONFIG_IOSF_MBI is not set
+# CONFIG_GART_IOMMU is not set
+#. XXX
+# CONFIG_X86_MCE is not set
+# CONFIG_X86_16BIT is not set
+# CONFIG_I8K is not set
+# CONFIG_MICROCODE is not set
+# CONFIG_AMD_NUMA is not set
+# CONFIG_NUMA_EMU is not set
+# CONFIG_ISA_DMA_API is not set
+# CONFIG_ISA is not set
+# CONFIG_X86_X32 is not set
+
+##
+## file: arch/x86/xen/Kconfig
+##
+# CONFIG_XEN_DOM0 is not set
+
+##
+## file: drivers/infiniband/hw/usnic/Kconfig
+##
+# CONFIG_INFINIBAND_USNIC is not set
+
+##
+## file: drivers/platform/x86/Kconfig
+##
+# CONFIG_X86_PLATFORM_DEVICES is not set
+# CONFIG_DCDBAS is not set
+# CONFIG_DELL_RBU is not set
+
+##
+## file: drivers/watchdog/Kconfig
+##
+# CONFIG_PCIPCWATCHDOG is not set
+
diff --git a/debian/config/amd64/defines b/debian/config/amd64/defines
new file mode 100644
index 000000000..b278f3622
--- /dev/null
+++ b/debian/config/amd64/defines
@@ -0,0 +1,26 @@
+[base]
+featuresets:
+ none
+ rt
+kernel-arch: x86
+
+[build]
+image-file: arch/x86/boot/bzImage
+signed-code: true
+vdso: true
+
+[image]
+bootloaders: grub-pc grub-efi-amd64 extlinux
+install-stem: vmlinuz
+breaks: xserver-xorg-input-vmmouse (<< 1:13.0.99)
+
+[relations]
+headers%gcc-10: linux-compiler-gcc-10-x86
+
+[amd64_description]
+hardware: 64-bit PCs
+hardware-long: PCs with AMD64, Intel 64 or VIA Nano processors
+
+[cloud-amd64_description]
+hardware: x86-64 cloud
+hardware-long: cloud platforms including Amazon EC2, Microsoft Azure, and Google Compute Engine
diff --git a/debian/config/amd64/none/defines b/debian/config/amd64/none/defines
new file mode 100644
index 000000000..ada23557a
--- /dev/null
+++ b/debian/config/amd64/none/defines
@@ -0,0 +1,10 @@
+[base]
+flavours:
+ amd64
+ cloud-amd64
+default-flavour: amd64
+
+[cloud-amd64_image]
+configs:
+ config.cloud
+ amd64/config.cloud-amd64
diff --git a/debian/config/amd64/rt/defines b/debian/config/amd64/rt/defines
new file mode 100644
index 000000000..090dc41bf
--- /dev/null
+++ b/debian/config/amd64/rt/defines
@@ -0,0 +1,3 @@
+[base]
+flavours:
+ amd64
diff --git a/debian/config/arm64/config b/debian/config/arm64/config
new file mode 100644
index 000000000..64bda9fcd
--- /dev/null
+++ b/debian/config/arm64/config
@@ -0,0 +1,1587 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_SECCOMP=y
+
+##
+## file: arch/arm64/Kconfig
+##
+CONFIG_ARM64_ERRATUM_834220=y
+CONFIG_ARM64_ERRATUM_843419=y
+CONFIG_ARM64_ERRATUM_1418040=y
+## choice: Virtual address space size
+CONFIG_ARM64_VA_BITS_48=y
+## end choice
+CONFIG_SCHED_MC=y
+CONFIG_SCHED_SMT=y
+CONFIG_NR_CPUS=256
+CONFIG_NUMA=y
+CONFIG_KEXEC=y
+CONFIG_CRASH_DUMP=y
+CONFIG_XEN=y
+CONFIG_COMPAT=y
+CONFIG_COMPAT_VDSO=y
+CONFIG_COMPAT_ALIGNMENT_FIXUPS=y
+CONFIG_ARMV8_DEPRECATED=y
+CONFIG_SWP_EMULATION=y
+CONFIG_CP15_BARRIER_EMULATION=y
+CONFIG_SETEND_EMULATION=y
+CONFIG_ARM64_USE_LSE_ATOMICS=y
+CONFIG_ARM64_PMEM=y
+CONFIG_RANDOMIZE_BASE=y
+CONFIG_RANDOMIZE_MODULE_REGION_FULL=y
+CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y
+
+##
+## file: arch/arm64/crypto/Kconfig
+##
+CONFIG_ARM64_CRYPTO=y
+CONFIG_CRYPTO_SHA512_ARM64=m
+CONFIG_CRYPTO_SHA1_ARM64_CE=m
+CONFIG_CRYPTO_SHA2_ARM64_CE=m
+CONFIG_CRYPTO_SHA512_ARM64_CE=m
+CONFIG_CRYPTO_SHA3_ARM64=m
+CONFIG_CRYPTO_GHASH_ARM64_CE=m
+CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
+CONFIG_CRYPTO_AES_ARM64_CE=m
+CONFIG_CRYPTO_AES_ARM64_CE_CCM=m
+CONFIG_CRYPTO_AES_ARM64_CE_BLK=m
+# CONFIG_CRYPTO_AES_ARM64_NEON_BLK is not set
+CONFIG_CRYPTO_NHPOLY1305_NEON=m
+CONFIG_CRYPTO_AES_ARM64_BS=m
+
+##
+## file: arch/arm64/kvm/Kconfig
+##
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=y
+
+##
+## file: arch/arm64/Kconfig.platforms
+##
+CONFIG_ARCH_SUNXI=y
+CONFIG_ARCH_BCM2835=y
+CONFIG_ARCH_LAYERSCAPE=y
+CONFIG_ARCH_HISI=y
+CONFIG_ARCH_MESON=y
+CONFIG_ARCH_MVEBU=y
+CONFIG_ARCH_MXC=y
+CONFIG_ARCH_QCOM=y
+CONFIG_ARCH_ROCKCHIP=y
+CONFIG_ARCH_SEATTLE=y
+CONFIG_ARCH_SYNQUACER=y
+CONFIG_ARCH_TEGRA=y
+CONFIG_ARCH_THUNDER=y
+CONFIG_ARCH_THUNDER2=y
+CONFIG_ARCH_VEXPRESS=y
+CONFIG_ARCH_XGENE=y
+CONFIG_ARCH_ZYNQMP=y
+
+##
+## file: drivers/acpi/Kconfig
+##
+CONFIG_ACPI=y
+CONFIG_ACPI_SPCR_TABLE=y
+CONFIG_ACPI_IPMI=m
+CONFIG_ACPI_PCI_SLOT=y
+CONFIG_ACPI_HED=y
+CONFIG_ACPI_BGRT=y
+
+##
+## file: drivers/acpi/apei/Kconfig
+##
+CONFIG_ACPI_APEI=y
+CONFIG_ACPI_APEI_GHES=y
+CONFIG_ACPI_APEI_PCIEAER=y
+CONFIG_ACPI_APEI_MEMORY_FAILURE=y
+CONFIG_ACPI_APEI_EINJ=m
+
+##
+## file: drivers/acpi/numa/Kconfig
+##
+CONFIG_ACPI_NUMA=y
+
+##
+## file: drivers/android/Kconfig
+##
+CONFIG_ANDROID=y
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_SATA_AHCI_PLATFORM=m
+CONFIG_AHCI_CEVA=m
+CONFIG_AHCI_MVEBU=m
+CONFIG_AHCI_TEGRA=m
+CONFIG_AHCI_XGENE=m
+CONFIG_AHCI_QORIQ=m
+CONFIG_SATA_AHCI_SEATTLE=m
+
+##
+## file: drivers/bluetooth/Kconfig
+##
+CONFIG_BT_HCIUART=m
+CONFIG_BT_MRVL_SDIO=m
+CONFIG_BT_QCOMSMD=m
+
+##
+## file: drivers/bus/Kconfig
+##
+CONFIG_MOXTET=m
+CONFIG_HISILICON_LPC=y
+CONFIG_QCOM_EBI2=y
+CONFIG_TEGRA_ACONNECT=y
+
+##
+## file: drivers/bus/fsl-mc/Kconfig
+##
+CONFIG_FSL_MC_BUS=y
+
+##
+## file: drivers/char/hw_random/Kconfig
+##
+CONFIG_HW_RANDOM_BCM2835=m
+CONFIG_HW_RANDOM_OMAP=m
+CONFIG_HW_RANDOM_HISI=m
+CONFIG_HW_RANDOM_XGENE=m
+CONFIG_HW_RANDOM_MESON=m
+CONFIG_HW_RANDOM_CAVIUM=m
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+CONFIG_IPMI_HANDLER=m
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SSIF=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+
+##
+## file: drivers/char/tpm/Kconfig
+##
+CONFIG_TCG_TPM=m
+CONFIG_TCG_TIS_I2C_INFINEON=m
+
+##
+## file: drivers/clk/Kconfig
+##
+CONFIG_COMMON_CLK_RK808=y
+CONFIG_COMMON_CLK_HI655X=y
+CONFIG_COMMON_CLK_FSL_SAI=y
+CONFIG_CLK_QORIQ=y
+CONFIG_CLK_LS1028A_PLLDIG=y
+CONFIG_COMMON_CLK_XGENE=y
+
+##
+## file: drivers/clk/bcm/Kconfig
+##
+CONFIG_CLK_RASPBERRYPI=y
+
+##
+## file: drivers/clk/hisilicon/Kconfig
+##
+CONFIG_STUB_CLK_HI6220=y
+
+##
+## file: drivers/clk/imx/Kconfig
+##
+CONFIG_CLK_IMX8MM=y
+CONFIG_CLK_IMX8MN=y
+CONFIG_CLK_IMX8MP=y
+CONFIG_CLK_IMX8MQ=y
+
+##
+## file: drivers/clk/qcom/Kconfig
+##
+CONFIG_COMMON_CLK_QCOM=y
+CONFIG_QCOM_CLK_RPM=m
+CONFIG_QCOM_CLK_SMD_RPM=m
+CONFIG_MSM_GCC_8916=y
+CONFIG_MSM_GCC_8996=y
+CONFIG_MSM_MMCC_8996=y
+
+##
+## file: drivers/clk/sunxi-ng/Kconfig
+##
+CONFIG_SUN8I_DE2_CCU=y
+
+##
+## file: drivers/clk/zynqmp/Kconfig
+##
+CONFIG_COMMON_CLK_ZYNQMP=y
+
+##
+## file: drivers/cpufreq/Kconfig
+##
+## choice: Default CPUFreq governor
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL=y
+## end choice
+CONFIG_CPUFREQ_DT=m
+CONFIG_QORIQ_CPUFREQ=m
+
+##
+## file: drivers/cpufreq/Kconfig.arm
+##
+CONFIG_ACPI_CPPC_CPUFREQ=m
+CONFIG_ARM_ARMADA_37XX_CPUFREQ=m
+CONFIG_ARM_RASPBERRYPI_CPUFREQ=m
+
+##
+## file: drivers/cpuidle/Kconfig.arm
+##
+CONFIG_ARM_CPUIDLE=y
+
+##
+## file: drivers/crypto/Kconfig
+##
+CONFIG_CRYPTO_DEV_QCE=m
+CONFIG_CRYPTO_DEV_QCOM_RNG=m
+CONFIG_CRYPTO_DEV_SAFEXCEL=m
+
+##
+## file: drivers/crypto/allwinner/Kconfig
+##
+CONFIG_CRYPTO_DEV_SUN8I_CE=m
+
+##
+## file: drivers/crypto/caam/Kconfig
+##
+CONFIG_CRYPTO_DEV_FSL_CAAM=m
+CONFIG_CRYPTO_DEV_FSL_CAAM_JR=m
+CONFIG_CRYPTO_DEV_FSL_DPAA2_CAAM=m
+
+##
+## file: drivers/crypto/cavium/cpt/Kconfig
+##
+CONFIG_CAVIUM_CPT=m
+
+##
+## file: drivers/crypto/cavium/nitrox/Kconfig
+##
+CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m
+
+##
+## file: drivers/crypto/marvell/Kconfig
+##
+CONFIG_CRYPTO_DEV_MARVELL_CESA=m
+
+##
+## file: drivers/devfreq/Kconfig
+##
+CONFIG_ARM_RK3399_DMC_DEVFREQ=m
+
+##
+## file: drivers/devfreq/event/Kconfig
+##
+CONFIG_PM_DEVFREQ_EVENT=y
+CONFIG_DEVFREQ_EVENT_ROCKCHIP_DFI=m
+
+##
+## file: drivers/dma/Kconfig
+##
+CONFIG_DMADEVICES=y
+CONFIG_DMA_BCM2835=y
+CONFIG_DMA_SUN6I=m
+CONFIG_FSL_EDMA=m
+CONFIG_FSL_QDMA=m
+CONFIG_K3_DMA=m
+CONFIG_MV_XOR=y
+CONFIG_MV_XOR_V2=y
+CONFIG_PL330_DMA=m
+CONFIG_TEGRA20_APB_DMA=y
+CONFIG_TEGRA210_ADMA=y
+CONFIG_XGENE_DMA=m
+
+##
+## file: drivers/dma/qcom/Kconfig
+##
+CONFIG_QCOM_BAM_DMA=m
+CONFIG_QCOM_HIDMA_MGMT=m
+CONFIG_QCOM_HIDMA=m
+
+##
+## file: drivers/edac/Kconfig
+##
+CONFIG_EDAC=y
+CONFIG_EDAC_LAYERSCAPE=m
+CONFIG_EDAC_THUNDERX=m
+CONFIG_EDAC_XGENE=m
+
+##
+## file: drivers/extcon/Kconfig
+##
+CONFIG_EXTCON=m
+CONFIG_EXTCON_QCOM_SPMI_MISC=m
+CONFIG_EXTCON_USB_GPIO=m
+CONFIG_EXTCON_USBC_CROS_EC=m
+
+##
+## file: drivers/firmware/Kconfig
+##
+CONFIG_RASPBERRYPI_FIRMWARE=y
+CONFIG_TURRIS_MOX_RWTM=m
+
+##
+## file: drivers/gpio/Kconfig
+##
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_MB86S7X=m
+CONFIG_GPIO_MPC8XXX=y
+CONFIG_GPIO_MXC=y
+CONFIG_GPIO_PL061=y
+CONFIG_GPIO_XGENE=y
+CONFIG_GPIO_XGENE_SB=m
+CONFIG_GPIO_XLP=y
+CONFIG_GPIO_ZYNQ=m
+CONFIG_GPIO_PCA953X=y
+CONFIG_GPIO_PCA953X_IRQ=y
+CONFIG_GPIO_MAX77620=y
+CONFIG_GPIO_SL28CPLD=m
+CONFIG_GPIO_MOXTET=m
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=m
+CONFIG_DRM_RADEON=m
+CONFIG_DRM_AMDGPU=m
+
+##
+## file: drivers/gpu/drm/arm/Kconfig
+##
+CONFIG_DRM_HDLCD=m
+CONFIG_DRM_MALI_DISPLAY=m
+
+##
+## file: drivers/gpu/drm/ast/Kconfig
+##
+CONFIG_DRM_AST=m
+
+##
+## file: drivers/gpu/drm/bridge/Kconfig
+##
+CONFIG_DRM_NXP_PTN3460=m
+
+##
+## file: drivers/gpu/drm/bridge/adv7511/Kconfig
+##
+CONFIG_DRM_I2C_ADV7511=m
+CONFIG_DRM_I2C_ADV7511_AUDIO=y
+
+##
+## file: drivers/gpu/drm/bridge/analogix/Kconfig
+##
+CONFIG_DRM_ANALOGIX_ANX6345=m
+
+##
+## file: drivers/gpu/drm/bridge/synopsys/Kconfig
+##
+CONFIG_DRM_DW_HDMI=m
+CONFIG_DRM_DW_HDMI_CEC=m
+
+##
+## file: drivers/gpu/drm/hisilicon/hibmc/Kconfig
+##
+CONFIG_DRM_HISI_HIBMC=m
+
+##
+## file: drivers/gpu/drm/hisilicon/kirin/Kconfig
+##
+CONFIG_DRM_HISI_KIRIN=m
+
+##
+## file: drivers/gpu/drm/lima/Kconfig
+##
+CONFIG_DRM_LIMA=m
+
+##
+## file: drivers/gpu/drm/meson/Kconfig
+##
+CONFIG_DRM_MESON=m
+
+##
+## file: drivers/gpu/drm/msm/Kconfig
+##
+CONFIG_DRM_MSM=m
+CONFIG_DRM_MSM_DSI=y
+CONFIG_DRM_MSM_DSI_PLL=y
+CONFIG_DRM_MSM_DSI_28NM_PHY=y
+CONFIG_DRM_MSM_DSI_20NM_PHY=y
+
+##
+## file: drivers/gpu/drm/nouveau/Kconfig
+##
+CONFIG_NOUVEAU_PLATFORM_DRIVER=y
+
+##
+## file: drivers/gpu/drm/panel/Kconfig
+##
+CONFIG_DRM_PANEL_SIMPLE=m
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
+
+##
+## file: drivers/gpu/drm/panfrost/Kconfig
+##
+CONFIG_DRM_PANFROST=m
+
+##
+## file: drivers/gpu/drm/rockchip/Kconfig
+##
+CONFIG_DRM_ROCKCHIP=m
+CONFIG_ROCKCHIP_ANALOGIX_DP=y
+CONFIG_ROCKCHIP_CDN_DP=y
+CONFIG_ROCKCHIP_DW_HDMI=y
+CONFIG_ROCKCHIP_DW_MIPI_DSI=y
+
+##
+## file: drivers/gpu/drm/sun4i/Kconfig
+##
+CONFIG_DRM_SUN4I=m
+CONFIG_DRM_SUN8I_DW_HDMI=m
+CONFIG_DRM_SUN8I_MIXER=m
+
+##
+## file: drivers/gpu/drm/tegra/Kconfig
+##
+CONFIG_DRM_TEGRA=m
+CONFIG_DRM_TEGRA_STAGING=y
+
+##
+## file: drivers/gpu/drm/vc4/Kconfig
+##
+CONFIG_DRM_VC4=m
+CONFIG_DRM_VC4_HDMI_CEC=y
+
+##
+## file: drivers/gpu/host1x/Kconfig
+##
+CONFIG_TEGRA_HOST1X=m
+
+##
+## file: drivers/hid/i2c-hid/Kconfig
+##
+CONFIG_I2C_HID=m
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_PWM_FAN=m
+CONFIG_SENSORS_SL28CPLD=m
+CONFIG_SENSORS_XGENE=m
+
+##
+## file: drivers/hwspinlock/Kconfig
+##
+CONFIG_HWSPINLOCK_QCOM=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=y
+CONFIG_I2C_MUX=m
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_BCM2835=m
+CONFIG_I2C_DESIGNWARE_PLATFORM=m
+CONFIG_I2C_GPIO=m
+CONFIG_I2C_IMX=m
+CONFIG_I2C_MESON=m
+CONFIG_I2C_MV64XXX=m
+CONFIG_I2C_PXA=m
+CONFIG_I2C_QCOM_GENI=m
+CONFIG_I2C_QUP=m
+CONFIG_I2C_RK3X=m
+CONFIG_I2C_TEGRA=m
+CONFIG_I2C_THUNDERX=m
+CONFIG_I2C_XLP9XX=m
+CONFIG_I2C_CROS_EC_TUNNEL=m
+CONFIG_I2C_XGENE_SLIMPRO=m
+
+##
+## file: drivers/i2c/muxes/Kconfig
+##
+CONFIG_I2C_MUX_PCA954x=m
+
+##
+## file: drivers/iio/common/cros_ec_sensors/Kconfig
+##
+CONFIG_IIO_CROS_EC_SENSORS_CORE=m
+CONFIG_IIO_CROS_EC_SENSORS=m
+
+##
+## file: drivers/iio/humidity/Kconfig
+##
+CONFIG_DHT11=m
+
+##
+## file: drivers/infiniband/hw/hns/Kconfig
+##
+CONFIG_INFINIBAND_HNS=m
+CONFIG_INFINIBAND_HNS_HIP06=y
+CONFIG_INFINIBAND_HNS_HIP08=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_KEYBOARD_ADC=m
+CONFIG_KEYBOARD_GPIO=m
+CONFIG_KEYBOARD_TEGRA=m
+CONFIG_KEYBOARD_CROS_EC=m
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_PM8941_PWRKEY=m
+CONFIG_INPUT_GPIO_BEEPER=m
+CONFIG_INPUT_AXP20X_PEK=m
+CONFIG_INPUT_UINPUT=m
+CONFIG_INPUT_HISI_POWERKEY=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_MOUSE_ELAN_I2C=m
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_ELAN=m
+
+##
+## file: drivers/iommu/Kconfig
+##
+CONFIG_ROCKCHIP_IOMMU=y
+CONFIG_TEGRA_IOMMU_SMMU=y
+CONFIG_ARM_SMMU=y
+CONFIG_ARM_SMMU_V3=y
+CONFIG_QCOM_IOMMU=y
+
+##
+## file: drivers/irqchip/Kconfig
+##
+CONFIG_SL28CPLD_INTC=y
+CONFIG_QCOM_IRQ_COMBINER=y
+
+##
+## file: drivers/leds/Kconfig
+##
+CONFIG_LEDS_GPIO=m
+CONFIG_LEDS_PWM=m
+
+##
+## file: drivers/mailbox/Kconfig
+##
+CONFIG_MAILBOX=y
+CONFIG_IMX_MBOX=m
+CONFIG_ARMADA_37XX_RWTM_MBOX=m
+CONFIG_BCM2835_MBOX=y
+CONFIG_HI6220_MBOX=y
+CONFIG_QCOM_APCS_IPC=m
+CONFIG_XGENE_SLIMPRO_MBOX=m
+
+##
+## file: drivers/media/platform/Kconfig
+##
+CONFIG_VIDEO_QCOM_VENUS=m
+
+##
+## file: drivers/media/rc/Kconfig
+##
+CONFIG_IR_MESON=m
+
+##
+## file: drivers/memory/tegra/Kconfig
+##
+CONFIG_TEGRA_MC=y
+
+##
+## file: drivers/mfd/Kconfig
+##
+CONFIG_MFD_AXP20X_I2C=m
+CONFIG_MFD_AXP20X_RSB=m
+CONFIG_MFD_CROS_EC_DEV=m
+CONFIG_MFD_HI655X_PMIC=m
+CONFIG_MFD_MAX77620=y
+CONFIG_MFD_QCOM_RPM=m
+CONFIG_MFD_SPMI_PMIC=m
+CONFIG_MFD_RK808=m
+CONFIG_MFD_SL28CPLD=y
+
+##
+## file: drivers/misc/Kconfig
+##
+CONFIG_QCOM_COINCELL=m
+
+##
+## file: drivers/misc/ti-st/Kconfig
+##
+CONFIG_TI_ST=m
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=y
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+CONFIG_MMC_ARMMMCI=m
+CONFIG_MMC_QCOM_DML=y
+CONFIG_MMC_SDHCI_ACPI=m
+CONFIG_MMC_SDHCI_PLTFM=m
+CONFIG_MMC_SDHCI_OF_ARASAN=m
+CONFIG_MMC_SDHCI_OF_ESDHC=m
+CONFIG_MMC_SDHCI_ESDHC_IMX=m
+CONFIG_MMC_SDHCI_TEGRA=m
+CONFIG_MMC_SDHCI_F_SDH30=m
+CONFIG_MMC_SDHCI_IPROC=m
+CONFIG_MMC_MESON_GX=m
+CONFIG_MMC_SDHCI_MSM=m
+CONFIG_MMC_SPI=m
+CONFIG_MMC_CAVIUM_THUNDERX=m
+CONFIG_MMC_DW=m
+CONFIG_MMC_DW_K3=m
+CONFIG_MMC_DW_ROCKCHIP=m
+CONFIG_MMC_SUNXI=m
+CONFIG_MMC_BCM2835=m
+CONFIG_MMC_SDHCI_XENON=m
+
+##
+## file: drivers/mtd/spi-nor/controllers/Kconfig
+##
+CONFIG_SPI_HISI_SFC=m
+
+##
+## file: drivers/net/can/Kconfig
+##
+CONFIG_CAN_FLEXCAN=m
+
+##
+## file: drivers/net/dsa/Kconfig
+##
+CONFIG_NET_DSA_MV88E6060=m
+
+##
+## file: drivers/net/dsa/mv88e6xxx/Kconfig
+##
+CONFIG_NET_DSA_MV88E6XXX=m
+
+##
+## file: drivers/net/dsa/ocelot/Kconfig
+##
+CONFIG_NET_DSA_MSCC_FELIX=m
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+CONFIG_FEALNX=m
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_NET_VENDOR_8390=y
+CONFIG_NE2K_PCI=m
+
+##
+## file: drivers/net/ethernet/adaptec/Kconfig
+##
+CONFIG_NET_VENDOR_ADAPTEC=y
+CONFIG_ADAPTEC_STARFIRE=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+CONFIG_AMD_XGBE=m
+
+##
+## file: drivers/net/ethernet/apm/xgene/Kconfig
+##
+CONFIG_NET_XGENE=m
+
+##
+## file: drivers/net/ethernet/apm/xgene-v2/Kconfig
+##
+CONFIG_NET_XGENE_V2=m
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+CONFIG_BCMGENET=m
+
+##
+## file: drivers/net/ethernet/cadence/Kconfig
+##
+CONFIG_NET_VENDOR_CADENCE=y
+CONFIG_MACB=m
+
+##
+## file: drivers/net/ethernet/cavium/Kconfig
+##
+CONFIG_NET_VENDOR_CAVIUM=y
+CONFIG_THUNDER_NIC_PF=m
+CONFIG_THUNDER_NIC_VF=m
+CONFIG_THUNDER_NIC_BGX=m
+CONFIG_THUNDER_NIC_RGX=m
+
+##
+## file: drivers/net/ethernet/dec/tulip/Kconfig
+##
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+CONFIG_NET_VENDOR_DLINK=y
+CONFIG_SUNDANCE=m
+# CONFIG_SUNDANCE_MMIO is not set
+
+##
+## file: drivers/net/ethernet/freescale/Kconfig
+##
+CONFIG_NET_VENDOR_FREESCALE=y
+CONFIG_FEC=m
+CONFIG_FSL_XGMAC_MDIO=m
+
+##
+## file: drivers/net/ethernet/freescale/dpaa2/Kconfig
+##
+CONFIG_FSL_DPAA2_ETH=m
+CONFIG_FSL_DPAA2_PTP_CLOCK=m
+
+##
+## file: drivers/net/ethernet/freescale/enetc/Kconfig
+##
+CONFIG_FSL_ENETC=m
+CONFIG_FSL_ENETC_VF=m
+CONFIG_FSL_ENETC_MDIO=m
+CONFIG_FSL_ENETC_PTP_CLOCK=m
+CONFIG_FSL_ENETC_QOS=y
+
+##
+## file: drivers/net/ethernet/google/Kconfig
+##
+CONFIG_NET_VENDOR_GOOGLE=y
+CONFIG_GVE=m
+
+##
+## file: drivers/net/ethernet/hisilicon/Kconfig
+##
+CONFIG_NET_VENDOR_HISILICON=y
+CONFIG_HIX5HD2_GMAC=m
+CONFIG_HISI_FEMAC=m
+CONFIG_HIP04_ETH=m
+CONFIG_HNS_DSAF=m
+CONFIG_HNS_ENET=m
+CONFIG_HNS3=m
+CONFIG_HNS3_HCLGE=m
+CONFIG_HNS3_DCB=y
+CONFIG_HNS3_HCLGEVF=m
+CONFIG_HNS3_ENET=m
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_NET_VENDOR_INTEL=y
+CONFIG_E100=m
+
+##
+## file: drivers/net/ethernet/marvell/Kconfig
+##
+CONFIG_MVMDIO=m
+CONFIG_MVNETA=m
+CONFIG_MVPP2=m
+
+##
+## file: drivers/net/ethernet/mscc/Kconfig
+##
+CONFIG_NET_VENDOR_MICROSEMI=y
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_NET_VENDOR_NATSEMI=y
+CONFIG_NATSEMI=m
+
+##
+## file: drivers/net/ethernet/qualcomm/Kconfig
+##
+CONFIG_QCOM_EMAC=m
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_NET_VENDOR_SMSC=y
+CONFIG_SMC91X=m
+CONFIG_EPIC100=m
+CONFIG_SMSC911X=m
+
+##
+## file: drivers/net/ethernet/socionext/Kconfig
+##
+CONFIG_SNI_NETSEC=m
+
+##
+## file: drivers/net/ethernet/stmicro/stmmac/Kconfig
+##
+CONFIG_STMMAC_ETH=m
+CONFIG_STMMAC_PLATFORM=m
+CONFIG_DWMAC_GENERIC=m
+CONFIG_DWMAC_IPQ806X=m
+CONFIG_DWMAC_MESON=m
+CONFIG_DWMAC_ROCKCHIP=m
+
+##
+## file: drivers/net/fddi/Kconfig
+##
+CONFIG_FDDI=y
+CONFIG_SKFP=m
+
+##
+## file: drivers/net/mdio/Kconfig
+##
+CONFIG_MDIO_XGENE=m
+CONFIG_MDIO_HISI_FEMAC=m
+CONFIG_MDIO_THUNDER=m
+CONFIG_MDIO_BUS_MUX_MMIOREG=m
+
+##
+## file: drivers/net/phy/Kconfig
+##
+CONFIG_MESON_GXL_PHY=m
+CONFIG_BCM54140_PHY=m
+CONFIG_MARVELL_PHY=m
+CONFIG_MARVELL_10G_PHY=m
+CONFIG_AT803X_PHY=m
+
+##
+## file: drivers/net/wireless/ath/wcn36xx/Kconfig
+##
+CONFIG_WCN36XX=m
+
+##
+## file: drivers/net/wireless/broadcom/brcm80211/brcmfmac/Kconfig
+##
+CONFIG_BRCMFMAC_SDIO=y
+
+##
+## file: drivers/net/wireless/marvell/mwifiex/Kconfig
+##
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+CONFIG_MWIFIEX_PCIE=m
+
+##
+## file: drivers/net/wireless/ti/Kconfig
+##
+CONFIG_WLAN_VENDOR_TI=y
+CONFIG_WILINK_PLATFORM_DATA=y
+
+##
+## file: drivers/net/wireless/ti/wl1251/Kconfig
+##
+CONFIG_WL1251=m
+CONFIG_WL1251_SPI=m
+CONFIG_WL1251_SDIO=m
+
+##
+## file: drivers/net/wireless/ti/wl12xx/Kconfig
+##
+CONFIG_WL12XX=m
+
+##
+## file: drivers/net/wireless/ti/wl18xx/Kconfig
+##
+CONFIG_WL18XX=m
+
+##
+## file: drivers/net/wireless/ti/wlcore/Kconfig
+##
+CONFIG_WLCORE=m
+CONFIG_WLCORE_SPI=m
+CONFIG_WLCORE_SDIO=m
+
+##
+## file: drivers/nvmem/Kconfig
+##
+CONFIG_NVMEM_IMX_OCOTP=m
+CONFIG_QCOM_QFPROM=m
+CONFIG_ROCKCHIP_EFUSE=m
+CONFIG_NVMEM_SUNXI_SID=m
+CONFIG_MESON_EFUSE=m
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+CONFIG_PCI_PRI=y
+CONFIG_PCI_PASID=y
+
+##
+## file: drivers/pci/controller/Kconfig
+##
+CONFIG_PCI_AARDVARK=y
+CONFIG_PCIE_XILINX_NWL=y
+CONFIG_PCI_TEGRA=y
+CONFIG_PCI_HOST_GENERIC=y
+CONFIG_PCI_XGENE=y
+CONFIG_PCI_HOST_THUNDER_PEM=y
+CONFIG_PCI_HOST_THUNDER_ECAM=y
+CONFIG_PCIE_ROCKCHIP_HOST=y
+CONFIG_PCIE_BRCMSTB=y
+
+##
+## file: drivers/pci/controller/dwc/Kconfig
+##
+CONFIG_PCI_LAYERSCAPE=y
+CONFIG_PCI_HISI=y
+CONFIG_PCIE_QCOM=y
+CONFIG_PCIE_ARMADA_8K=y
+CONFIG_PCIE_KIRIN=y
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+CONFIG_HOTPLUG_PCI=y
+CONFIG_HOTPLUG_PCI_ACPI=y
+CONFIG_HOTPLUG_PCI_ACPI_IBM=m
+CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
+CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
+CONFIG_HOTPLUG_PCI_SHPC=y
+
+##
+## file: drivers/pci/pcie/Kconfig
+##
+CONFIG_HOTPLUG_PCI_PCIE=y
+
+##
+## file: drivers/perf/Kconfig
+##
+CONFIG_ARM_CCI_PMU=y
+CONFIG_ARM_CCI400_PMU=y
+CONFIG_ARM_CCI5xx_PMU=y
+CONFIG_ARM_CCN=y
+CONFIG_ARM_CMN=m
+CONFIG_ARM_SMMU_V3_PMU=m
+CONFIG_QCOM_L2_PMU=y
+CONFIG_QCOM_L3_PMU=y
+CONFIG_XGENE_PMU=y
+
+##
+## file: drivers/perf/hisilicon/Kconfig
+##
+CONFIG_HISI_PMU=y
+
+##
+## file: drivers/phy/Kconfig
+##
+CONFIG_PHY_XGENE=m
+
+##
+## file: drivers/phy/allwinner/Kconfig
+##
+CONFIG_PHY_SUN4I_USB=m
+
+##
+## file: drivers/phy/amlogic/Kconfig
+##
+CONFIG_PHY_MESON8B_USB2=m
+
+##
+## file: drivers/phy/hisilicon/Kconfig
+##
+CONFIG_PHY_HI6220_USB=m
+
+##
+## file: drivers/phy/marvell/Kconfig
+##
+CONFIG_PHY_MVEBU_A3700_COMPHY=m
+CONFIG_PHY_MVEBU_A3700_UTMI=m
+CONFIG_PHY_MVEBU_CP110_COMPHY=m
+
+##
+## file: drivers/phy/qualcomm/Kconfig
+##
+CONFIG_PHY_QCOM_APQ8064_SATA=m
+CONFIG_PHY_QCOM_IPQ806X_SATA=m
+CONFIG_PHY_QCOM_QMP=m
+CONFIG_PHY_QCOM_QUSB2=m
+CONFIG_PHY_QCOM_USB_HS=m
+CONFIG_PHY_QCOM_USB_HSIC=m
+
+##
+## file: drivers/phy/rockchip/Kconfig
+##
+CONFIG_PHY_ROCKCHIP_DP=m
+CONFIG_PHY_ROCKCHIP_EMMC=m
+CONFIG_PHY_ROCKCHIP_INNO_HDMI=m
+CONFIG_PHY_ROCKCHIP_INNO_USB2=m
+CONFIG_PHY_ROCKCHIP_PCIE=m
+CONFIG_PHY_ROCKCHIP_TYPEC=m
+CONFIG_PHY_ROCKCHIP_USB=m
+
+##
+## file: drivers/phy/tegra/Kconfig
+##
+CONFIG_PHY_TEGRA_XUSB=m
+
+##
+## file: drivers/pinctrl/Kconfig
+##
+CONFIG_PINCTRL_AXP209=m
+CONFIG_PINCTRL_AMD=y
+CONFIG_PINCTRL_SINGLE=y
+CONFIG_PINCTRL_MAX77620=y
+
+##
+## file: drivers/pinctrl/freescale/Kconfig
+##
+CONFIG_PINCTRL_IMX8MM=y
+CONFIG_PINCTRL_IMX8MN=y
+CONFIG_PINCTRL_IMX8MP=y
+CONFIG_PINCTRL_IMX8MQ=y
+
+##
+## file: drivers/pinctrl/qcom/Kconfig
+##
+CONFIG_PINCTRL_MSM8916=y
+CONFIG_PINCTRL_MSM8996=y
+CONFIG_PINCTRL_QCOM_SPMI_PMIC=y
+CONFIG_PINCTRL_QCOM_SSBI_PMIC=y
+
+##
+## file: drivers/platform/chrome/Kconfig
+##
+CONFIG_CHROME_PLATFORMS=y
+CONFIG_CROS_EC=m
+CONFIG_CROS_EC_I2C=m
+CONFIG_CROS_EC_SPI=m
+CONFIG_CROS_KBD_LED_BACKLIGHT=m
+
+##
+## file: drivers/power/reset/Kconfig
+##
+CONFIG_POWER_RESET_HISI=y
+CONFIG_POWER_RESET_MSM=y
+CONFIG_POWER_RESET_VEXPRESS=y
+CONFIG_POWER_RESET_XGENE=y
+CONFIG_POWER_RESET_SYSCON=y
+CONFIG_POWER_RESET_SYSCON_POWEROFF=y
+
+##
+## file: drivers/power/supply/Kconfig
+##
+CONFIG_BATTERY_CW2015=m
+CONFIG_BATTERY_SBS=m
+CONFIG_BATTERY_BQ27XXX=m
+CONFIG_CHARGER_AXP20X=m
+CONFIG_BATTERY_AXP20X=m
+CONFIG_AXP20X_POWER=m
+CONFIG_AXP288_FUEL_GAUGE=m
+CONFIG_CHARGER_GPIO=m
+CONFIG_CHARGER_QCOM_SMBB=m
+CONFIG_CHARGER_CROS_USBPD=m
+
+##
+## file: drivers/ptp/Kconfig
+##
+CONFIG_PTP_1588_CLOCK_QORIQ=m
+
+##
+## file: drivers/pwm/Kconfig
+##
+CONFIG_PWM=y
+CONFIG_PWM_BCM2835=m
+CONFIG_PWM_CROS_EC=m
+CONFIG_PWM_MESON=m
+CONFIG_PWM_ROCKCHIP=m
+CONFIG_PWM_SL28CPLD=m
+CONFIG_PWM_SUN4I=m
+CONFIG_PWM_TEGRA=m
+
+##
+## file: drivers/regulator/Kconfig
+##
+CONFIG_REGULATOR=y
+CONFIG_REGULATOR_FIXED_VOLTAGE=m
+CONFIG_REGULATOR_AXP20X=m
+CONFIG_REGULATOR_FAN53555=m
+CONFIG_REGULATOR_GPIO=m
+CONFIG_REGULATOR_HI655X=m
+CONFIG_REGULATOR_MAX77620=m
+CONFIG_REGULATOR_PWM=m
+CONFIG_REGULATOR_QCOM_RPM=m
+CONFIG_REGULATOR_QCOM_SMD_RPM=m
+CONFIG_REGULATOR_QCOM_SPMI=m
+CONFIG_REGULATOR_RK808=m
+CONFIG_REGULATOR_VCTRL=m
+
+##
+## file: drivers/remoteproc/Kconfig
+##
+CONFIG_QCOM_Q6V5_MSS=m
+#. We want to enable this but it currently results in a dependency loop!
+# CONFIG_QCOM_WCNSS_PIL is not set
+
+##
+## file: drivers/reset/Kconfig
+##
+CONFIG_RESET_CONTROLLER=y
+
+##
+## file: drivers/rpmsg/Kconfig
+##
+CONFIG_RPMSG_QCOM_GLINK_RPM=m
+CONFIG_RPMSG_QCOM_GLINK_SMEM=m
+CONFIG_RPMSG_QCOM_SMD=m
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_DS1307=y
+CONFIG_RTC_DRV_MAX77686=y
+CONFIG_RTC_DRV_RK808=y
+CONFIG_RTC_DRV_PCF85063=y
+CONFIG_RTC_DRV_PCF8563=y
+CONFIG_RTC_DRV_RV8803=m
+CONFIG_RTC_DRV_PCF2127=m
+CONFIG_RTC_DRV_EFI=y
+CONFIG_RTC_DRV_CROS_EC=m
+CONFIG_RTC_DRV_PL031=y
+CONFIG_RTC_DRV_SUN6I=y
+CONFIG_RTC_DRV_MV=m
+CONFIG_RTC_DRV_ARMADA38X=m
+CONFIG_RTC_DRV_PM8XXX=m
+CONFIG_RTC_DRV_TEGRA=y
+CONFIG_RTC_DRV_XGENE=y
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI_DMX3191D=m
+
+##
+## file: drivers/scsi/hisi_sas/Kconfig
+##
+CONFIG_SCSI_HISI_SAS=m
+CONFIG_SCSI_HISI_SAS_PCI=m
+
+##
+## file: drivers/soc/bcm/Kconfig
+##
+CONFIG_RASPBERRYPI_POWER=y
+
+##
+## file: drivers/soc/fsl/Kconfig
+##
+CONFIG_FSL_MC_DPIO=m
+CONFIG_DPAA2_CONSOLE=m
+
+##
+## file: drivers/soc/qcom/Kconfig
+##
+CONFIG_QCOM_GSBI=m
+CONFIG_QCOM_SMEM=m
+CONFIG_QCOM_SMD_RPM=m
+CONFIG_QCOM_SMP2P=m
+CONFIG_QCOM_SMSM=m
+CONFIG_QCOM_WCNSS_CTRL=m
+
+##
+## file: drivers/soc/rockchip/Kconfig
+##
+CONFIG_ROCKCHIP_IODOMAIN=m
+CONFIG_ROCKCHIP_PM_DOMAINS=y
+
+##
+## file: drivers/soc/tegra/Kconfig
+##
+CONFIG_ARCH_TEGRA_132_SOC=y
+CONFIG_ARCH_TEGRA_210_SOC=y
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI_ARMADA_3700=m
+CONFIG_SPI_BCM2835=m
+CONFIG_SPI_BCM2835AUX=m
+CONFIG_SPI_NXP_FLEXSPI=m
+CONFIG_SPI_FSL_DSPI=m
+CONFIG_SPI_MESON_SPICC=m
+CONFIG_SPI_MESON_SPIFC=m
+CONFIG_SPI_ROCKCHIP=m
+CONFIG_SPI_QUP=m
+CONFIG_SPI_TEGRA114=m
+CONFIG_SPI_TEGRA20_SFLASH=m
+CONFIG_SPI_TEGRA20_SLINK=m
+CONFIG_SPI_THUNDERX=m
+CONFIG_SPI_XLP=m
+
+##
+## file: drivers/spmi/Kconfig
+##
+CONFIG_SPMI=y
+CONFIG_SPMI_MSM_PMIC_ARB=y
+
+##
+## file: drivers/staging/media/Kconfig
+##
+CONFIG_STAGING_MEDIA=y
+
+##
+## file: drivers/staging/media/sunxi/Kconfig
+##
+CONFIG_VIDEO_SUNXI=y
+
+##
+## file: drivers/staging/media/sunxi/cedrus/Kconfig
+##
+CONFIG_VIDEO_SUNXI_CEDRUS=m
+
+##
+## file: drivers/staging/rtl8723bs/Kconfig
+##
+CONFIG_RTL8723BS=m
+
+##
+## file: drivers/staging/vc04_services/bcm2835-audio/Kconfig
+##
+CONFIG_SND_BCM2835=m
+
+##
+## file: drivers/staging/vc04_services/bcm2835-camera/Kconfig
+##
+CONFIG_VIDEO_BCM2835=m
+
+##
+## file: drivers/tee/Kconfig
+##
+CONFIG_TEE=m
+
+##
+## file: drivers/tee/optee/Kconfig
+##
+CONFIG_OPTEE=m
+
+##
+## file: drivers/thermal/Kconfig
+##
+CONFIG_THERMAL=y
+CONFIG_CPU_THERMAL=y
+CONFIG_HISI_THERMAL=m
+CONFIG_QORIQ_THERMAL=m
+CONFIG_SUN8I_THERMAL=m
+CONFIG_ROCKCHIP_THERMAL=m
+CONFIG_ARMADA_THERMAL=m
+
+##
+## file: drivers/thermal/broadcom/Kconfig
+##
+CONFIG_BCM2711_THERMAL=m
+CONFIG_BCM2835_THERMAL=m
+
+##
+## file: drivers/thermal/qcom/Kconfig
+##
+CONFIG_QCOM_TSENS=m
+CONFIG_QCOM_SPMI_TEMP_ALARM=m
+
+##
+## file: drivers/thermal/tegra/Kconfig
+##
+CONFIG_TEGRA_SOCTHERM=y
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_AMBA_PL010=y
+CONFIG_SERIAL_AMBA_PL010_CONSOLE=y
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+CONFIG_SERIAL_MESON=y
+CONFIG_SERIAL_MESON_CONSOLE=y
+CONFIG_SERIAL_TEGRA=y
+CONFIG_SERIAL_IMX=y
+CONFIG_SERIAL_IMX_CONSOLE=y
+CONFIG_SERIAL_MSM=y
+CONFIG_SERIAL_MSM_CONSOLE=y
+CONFIG_SERIAL_XILINX_PS_UART=y
+CONFIG_SERIAL_XILINX_PS_UART_CONSOLE=y
+CONFIG_SERIAL_FSL_LPUART=y
+CONFIG_SERIAL_FSL_LPUART_CONSOLE=y
+CONFIG_SERIAL_MVEBU_UART=y
+CONFIG_SERIAL_MVEBU_CONSOLE=y
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+CONFIG_SERIAL_8250_BCM2835AUX=y
+CONFIG_SERIAL_8250_DW=y
+# CONFIG_SERIAL_8250_EM is not set
+CONFIG_SERIAL_OF_PLATFORM=y
+
+##
+## file: drivers/usb/chipidea/Kconfig
+##
+CONFIG_USB_CHIPIDEA=m
+CONFIG_USB_CHIPIDEA_UDC=y
+CONFIG_USB_CHIPIDEA_HOST=y
+
+##
+## file: drivers/usb/dwc2/Kconfig
+##
+CONFIG_USB_DWC2=m
+## choice: DWC2 Mode Selection
+CONFIG_USB_DWC2_DUAL_ROLE=y
+## end choice
+
+##
+## file: drivers/usb/dwc3/Kconfig
+##
+CONFIG_USB_DWC3=m
+CONFIG_USB_DWC3_ULPI=y
+## choice: DWC3 Mode Selection
+CONFIG_USB_DWC3_DUAL_ROLE=y
+## end choice
+
+##
+## file: drivers/usb/gadget/Kconfig
+##
+CONFIG_USB_GADGET=m
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_XHCI_HCD=m
+CONFIG_USB_XHCI_PLATFORM=m
+CONFIG_USB_XHCI_MVEBU=m
+CONFIG_USB_XHCI_TEGRA=m
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_EHCI_HCD_ORION=m
+CONFIG_USB_EHCI_TEGRA=m
+CONFIG_USB_EHCI_HCD_PLATFORM=m
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_OHCI_HCD_PLATFORM=m
+
+##
+## file: drivers/usb/isp1760/Kconfig
+##
+CONFIG_USB_ISP1760=m
+## choice: ISP1760 Mode Selection
+# CONFIG_USB_ISP1760_HOST_ROLE is not set
+# CONFIG_USB_ISP1760_GADGET_ROLE is not set
+CONFIG_USB_ISP1760_DUAL_ROLE=y
+## end choice
+
+##
+## file: drivers/usb/misc/Kconfig
+##
+CONFIG_USB_HSIC_USB3503=m
+
+##
+## file: drivers/usb/musb/Kconfig
+##
+CONFIG_USB_MUSB_HDRC=m
+CONFIG_USB_MUSB_SUNXI=m
+
+##
+## file: drivers/usb/phy/Kconfig
+##
+CONFIG_NOP_USB_XCEIV=m
+CONFIG_USB_ULPI=y
+
+##
+## file: drivers/usb/typec/Kconfig
+##
+CONFIG_TYPEC=m
+
+##
+## file: drivers/usb/typec/tcpm/Kconfig
+##
+CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_FUSB302=m
+
+##
+## file: drivers/vfio/Kconfig
+##
+CONFIG_VFIO=m
+
+##
+## file: drivers/vfio/pci/Kconfig
+##
+CONFIG_VFIO_PCI=m
+
+##
+## file: drivers/video/backlight/Kconfig
+##
+CONFIG_BACKLIGHT_LP855X=m
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_ARMCLCD=y
+CONFIG_FB_EFI=y
+CONFIG_FB_SIMPLE=y
+
+##
+## file: drivers/virtio/Kconfig
+##
+CONFIG_VIRTIO_MMIO=m
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_GPIO_WATCHDOG=m
+CONFIG_WDAT_WDT=m
+CONFIG_SL28CPLD_WATCHDOG=m
+CONFIG_ARM_SP805_WATCHDOG=m
+CONFIG_ARM_SBSA_WATCHDOG=m
+CONFIG_ARMADA_37XX_WATCHDOG=m
+CONFIG_DW_WATCHDOG=m
+CONFIG_SUNXI_WATCHDOG=m
+CONFIG_TEGRA_WATCHDOG=m
+CONFIG_QCOM_WDT=m
+CONFIG_MESON_GXBB_WATCHDOG=m
+CONFIG_MESON_WATCHDOG=m
+CONFIG_BCM2835_WDT=m
+
+##
+## file: kernel/dma/Kconfig
+##
+CONFIG_DMA_CMA=y
+CONFIG_CMA_SIZE_MBYTES=64
+
+##
+## file: kernel/power/Kconfig
+##
+CONFIG_ENERGY_MODEL=y
+
+##
+## file: lib/Kconfig.debug
+##
+CONFIG_DEBUG_INFO_BTF=y
+
+##
+## file: mm/Kconfig
+##
+CONFIG_CMA=y
+
+##
+## file: mm/Kconfig.debug
+##
+CONFIG_DEBUG_WX=y
+
+##
+## file: net/bluetooth/Kconfig
+##
+CONFIG_BT_LEDS=y
+
+##
+## file: net/dsa/Kconfig
+##
+CONFIG_NET_DSA=m
+
+##
+## file: sound/pci/hda/Kconfig
+##
+CONFIG_SND_HDA_INTEL=m
+CONFIG_SND_HDA_TEGRA=m
+
+##
+## file: sound/soc/Kconfig
+##
+CONFIG_SND_SOC=m
+
+##
+## file: sound/soc/bcm/Kconfig
+##
+CONFIG_SND_BCM2835_SOC_I2S=m
+
+##
+## file: sound/soc/codecs/Kconfig
+##
+CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m
+CONFIG_SND_SOC_WM8904=m
+CONFIG_SND_SOC_ES8316=m
+
+##
+## file: sound/soc/fsl/Kconfig
+##
+CONFIG_SND_SOC_FSL_SAI=m
+
+##
+## file: sound/soc/generic/Kconfig
+##
+CONFIG_SND_SIMPLE_CARD=m
+
+##
+## file: sound/soc/hisilicon/Kconfig
+##
+CONFIG_SND_I2S_HI6210_I2S=m
+
+##
+## file: sound/soc/qcom/Kconfig
+##
+CONFIG_SND_SOC_QCOM=m
+CONFIG_SND_SOC_APQ8016_SBC=m
+
+##
+## file: sound/soc/rockchip/Kconfig
+##
+CONFIG_SND_SOC_ROCKCHIP=m
+CONFIG_SND_SOC_ROCKCHIP_I2S=m
+CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
+CONFIG_SND_SOC_ROCKCHIP_RT5645=m
+CONFIG_SND_SOC_RK3399_GRU_SOUND=m
+
+##
+## file: sound/soc/sunxi/Kconfig
+##
+CONFIG_SND_SUN8I_CODEC=m
+CONFIG_SND_SUN50I_CODEC_ANALOG=m
+CONFIG_SND_SUN4I_I2S=m
+
+##
+## file: sound/soc/tegra/Kconfig
+##
+CONFIG_SND_SOC_TEGRA=m
+CONFIG_SND_SOC_TEGRA_RT5640=m
+CONFIG_SND_SOC_TEGRA_WM8753=m
+CONFIG_SND_SOC_TEGRA_WM8903=m
+CONFIG_SND_SOC_TEGRA_TRIMSLICE=m
+CONFIG_SND_SOC_TEGRA_ALC5632=m
+CONFIG_SND_SOC_TEGRA_MAX98090=m
+CONFIG_SND_SOC_TEGRA_RT5677=m
+
diff --git a/debian/config/arm64/config.cloud-arm64 b/debian/config/arm64/config.cloud-arm64
new file mode 100644
index 000000000..b22bcf62a
--- /dev/null
+++ b/debian/config/arm64/config.cloud-arm64
@@ -0,0 +1,116 @@
+##
+## file: arch/arm64/Kconfig.platforms
+##
+# CONFIG_ARCH_ACTIONS is not set
+# CONFIG_ARCH_AGILEX is not set
+# CONFIG_ARCH_SUNXI is not set
+CONFIG_ARCH_ALPINE=y
+# CONFIG_ARCH_BCM2835 is not set
+# CONFIG_ARCH_BCM_IPROC is not set
+# CONFIG_ARCH_BERLIN is not set
+# CONFIG_ARCH_BITMAIN is not set
+# CONFIG_ARCH_BRCMSTB is not set
+# CONFIG_ARCH_EXYNOS is not set
+# CONFIG_ARCH_K3 is not set
+# CONFIG_ARCH_LAYERSCAPE is not set
+# CONFIG_ARCH_LG1K is not set
+CONFIG_ARCH_HISI=y
+# CONFIG_ARCH_MEDIATEK is not set
+# CONFIG_ARCH_MESON is not set
+# CONFIG_ARCH_MVEBU is not set
+# CONFIG_ARCH_MXC is not set
+CONFIG_ARCH_QCOM=y
+# CONFIG_ARCH_REALTEK is not set
+# CONFIG_ARCH_RENESAS is not set
+# CONFIG_ARCH_ROCKCHIP is not set
+CONFIG_ARCH_SEATTLE=y
+# CONFIG_ARCH_STRATIX10 is not set
+# CONFIG_ARCH_SYNQUACER is not set
+# CONFIG_ARCH_TEGRA is not set
+# CONFIG_ARCH_SPRD is not set
+CONFIG_ARCH_THUNDER=y
+CONFIG_ARCH_THUNDER2=y
+# CONFIG_ARCH_UNIPHIER is not set
+CONFIG_ARCH_VEXPRESS=y
+CONFIG_ARCH_XGENE=y
+# CONFIG_ARCH_ZX is not set
+# CONFIG_ARCH_ZYNQMP is not set
+
+##
+## file: drivers/acpi/Kconfig
+##
+CONFIG_ACPI=y
+CONFIG_ACPI_SPCR_TABLE=y
+# CONFIG_ACPI_EC_DEBUGFS is not set
+CONFIG_ACPI_AC=y
+CONFIG_ACPI_BATTERY=y
+CONFIG_ACPI_BUTTON=y
+CONFIG_ACPI_FAN=y
+CONFIG_ACPI_PROCESSOR=y
+CONFIG_ACPI_THERMAL=y
+CONFIG_ACPI_TABLE_UPGRADE=y
+CONFIG_ACPI_PCI_SLOT=y
+CONFIG_ACPI_CONTAINER=y
+CONFIG_ACPI_HOTPLUG_MEMORY=y
+CONFIG_ACPI_HED=y
+
+##
+## file: drivers/acpi/apei/Kconfig
+##
+CONFIG_ACPI_APEI=y
+CONFIG_ACPI_APEI_GHES=y
+CONFIG_ACPI_APEI_PCIEAER=y
+CONFIG_ACPI_APEI_MEMORY_FAILURE=y
+CONFIG_ACPI_APEI_EINJ=m
+
+##
+## file: drivers/acpi/numa/Kconfig
+##
+CONFIG_ACPI_NUMA=y
+
+##
+## file: drivers/ata/Kconfig
+##
+# CONFIG_AHCI_QORIQ is not set
+
+##
+## file: drivers/bus/Kconfig
+##
+CONFIG_VEXPRESS_CONFIG=y
+
+##
+## file: drivers/clk/Kconfig
+##
+# CONFIG_CLK_QORIQ is not set
+
+##
+## file: drivers/cpufreq/Kconfig.arm
+##
+CONFIG_ACPI_CPPC_CPUFREQ=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_ACPI_I2C_OPREGION=y
+
+##
+## file: drivers/power/reset/Kconfig
+##
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_GPIO=y
+CONFIG_POWER_RESET_GPIO_RESTART=y
+CONFIG_POWER_RESET_HISI=y
+CONFIG_POWER_RESET_RESTART=y
+CONFIG_POWER_RESET_VEXPRESS=y
+CONFIG_POWER_RESET_SYSCON=y
+
+##
+## file: drivers/power/supply/Kconfig
+##
+CONFIG_POWER_SUPPLY_HWMON=y
+
+##
+## file: kernel/power/Kconfig
+##
+CONFIG_PM=y
+
diff --git a/debian/config/arm64/defines b/debian/config/arm64/defines
new file mode 100644
index 000000000..a61d02a4b
--- /dev/null
+++ b/debian/config/arm64/defines
@@ -0,0 +1,28 @@
+[base]
+cross-compile-compat: arm-linux-gnueabihf-
+kernel-arch: arm64
+featuresets:
+ none
+ rt
+
+[build]
+image-file: arch/arm64/boot/Image
+signed-code: true
+vdso: true
+
+[image]
+install-stem: vmlinuz
+breaks: libmozjs185-1.0, libmozjs-24-0 (<< 24.2.0-5.1~)
+
+[arm64_description]
+hardware: 64-bit ARMv8 machines
+
+[cloud-arm64_description]
+hardware: arm64 cloud
+hardware-long: cloud platforms supporting arm64 virtual machines
+
+[arm64_image]
+
+[relations]
+gcc-10: gcc-10 <!stage1 !cross !pkg.linux.nokernel>, gcc-10-aarch64-linux-gnu <!stage1 cross !pkg.linux.nokernel>, gcc-arm-linux-gnueabihf <!stage1 !pkg.linux.nokernel>
+headers%gcc-10: gcc-10
diff --git a/debian/config/arm64/none/defines b/debian/config/arm64/none/defines
new file mode 100644
index 000000000..190576845
--- /dev/null
+++ b/debian/config/arm64/none/defines
@@ -0,0 +1,10 @@
+[base]
+flavours:
+ arm64
+ cloud-arm64
+default-flavour: arm64
+
+[cloud-arm64_image]
+configs:
+ config.cloud
+ arm64/config.cloud-arm64
diff --git a/debian/config/arm64/rt/config b/debian/config/arm64/rt/config
new file mode 100644
index 000000000..23bd5f3ab
--- /dev/null
+++ b/debian/config/arm64/rt/config
@@ -0,0 +1,7 @@
+##
+## file: arch/arm64/kvm/Kconfig
+##
+#. ARCH_SUPPORTS_RT depends on HAVE_POSIX_CPU_TIMERS_TASK_WORK
+#. HAVE_POSIX_CPU_TIMERS_TASK_WORK depneds on !KVM
+# CONFIG_KVM is not set
+
diff --git a/debian/config/arm64/rt/defines b/debian/config/arm64/rt/defines
new file mode 100644
index 000000000..fdea40cbc
--- /dev/null
+++ b/debian/config/arm64/rt/defines
@@ -0,0 +1,3 @@
+[base]
+flavours:
+ arm64
diff --git a/debian/config/arm64ilp32/defines b/debian/config/arm64ilp32/defines
new file mode 100644
index 000000000..999d4166e
--- /dev/null
+++ b/debian/config/arm64ilp32/defines
@@ -0,0 +1,5 @@
+[base]
+kernel-arch: arm64
+featuresets:
+# empty; arm64ilp32 must be part of a multiarch installation with an arm64
+# kernel
diff --git a/debian/config/armel/config b/debian/config/armel/config
new file mode 100644
index 000000000..2cb39c7e3
--- /dev/null
+++ b/debian/config/armel/config
@@ -0,0 +1,15 @@
+##
+## file: net/netlabel/Kconfig
+##
+# CONFIG_NETLABEL is not set
+
+##
+## file: security/selinux/Kconfig
+##
+# CONFIG_SECURITY_SELINUX is not set
+
+##
+## file: security/tomoyo/Kconfig
+##
+# CONFIG_SECURITY_TOMOYO is not set
+
diff --git a/debian/config/armel/config.marvell b/debian/config/armel/config.marvell
new file mode 100644
index 000000000..ae4d37525
--- /dev/null
+++ b/debian/config/armel/config.marvell
@@ -0,0 +1,856 @@
+##
+## file: arch/Kconfig
+##
+# CONFIG_KPROBES is not set
+# CONFIG_STACKPROTECTOR_STRONG is not set
+# CONFIG_STRICT_KERNEL_RWX is not set
+# CONFIG_STRICT_MODULE_RWX is not set
+
+##
+## file: arch/arm/Kconfig
+##
+CONFIG_ARCH_MULTI_V5=y
+# CONFIG_ARCH_MULTI_V7 is not set
+CONFIG_HIGHMEM=y
+CONFIG_UACCESS_WITH_MEMCPY=y
+CONFIG_ZBOOT_ROM_TEXT=0x0
+CONFIG_ZBOOT_ROM_BSS=0x0
+CONFIG_ARM_APPENDED_DTB=y
+CONFIG_ARM_ATAG_DTB_COMPAT=y
+CONFIG_CMDLINE=""
+# CONFIG_XIP_KERNEL is not set
+CONFIG_ATAGS_PROC=y
+# CONFIG_CRASH_DUMP is not set
+CONFIG_VFP=y
+
+##
+## file: arch/arm/Kconfig.debug
+##
+# CONFIG_DEBUG_WX is not set
+## choice: Kernel low-level debugging port
+# CONFIG_DEBUG_ICEDCC is not set
+CONFIG_DEBUG_LL_UART_8250=y
+## end choice
+#. Kirkwood (with new boot loader) and Orion both have an 8250 at
+#. physical address 0xf1012000.
+CONFIG_DEBUG_UART_PHYS=0xf1012000
+#. MVEBU is flexible about the virtual address (relying on
+#. debug_ll_io_init()) but Orion maps the 8250 as part of a larger
+#. block of registers. So use the VA that Orion requires.
+CONFIG_DEBUG_UART_VIRT=0xfe012000
+
+##
+## file: arch/arm/mach-imx/Kconfig
+##
+# CONFIG_ARCH_MXC is not set
+
+##
+## file: arch/arm/mach-mvebu/Kconfig
+##
+CONFIG_ARCH_MVEBU=y
+CONFIG_MACH_KIRKWOOD=y
+
+##
+## file: arch/arm/mach-orion5x/Kconfig
+##
+CONFIG_ARCH_ORION5X=y
+CONFIG_MACH_DB88F5281=y
+CONFIG_MACH_RD88F5182=y
+CONFIG_MACH_RD88F5182_DT=y
+CONFIG_MACH_KUROBOX_PRO=y
+#. Only 1.5 MB flash available for kernel
+# CONFIG_MACH_DNS323 is not set
+CONFIG_MACH_TS209=y
+CONFIG_MACH_TERASTATION_PRO2=y
+CONFIG_MACH_LINKSTATION_PRO=y
+CONFIG_MACH_LINKSTATION_MINI=y
+CONFIG_MACH_LINKSTATION_LS_HGL=y
+CONFIG_MACH_TS409=y
+CONFIG_MACH_WRT350N_V2=y
+CONFIG_MACH_TS78XX=y
+CONFIG_MACH_MV2120=y
+CONFIG_MACH_NET2BIG=y
+CONFIG_MACH_MSS2_DT=y
+CONFIG_MACH_WNR854T=y
+CONFIG_MACH_RD88F5181L_GE=y
+CONFIG_MACH_RD88F5181L_FXO=y
+CONFIG_MACH_RD88F6183AP_GE=y
+
+##
+## file: arch/arm/mm/Kconfig
+##
+CONFIG_CPU_FEROCEON_OLD_ID=y
+CONFIG_ARM_THUMB=y
+# CONFIG_CPU_ICACHE_DISABLE is not set
+# CONFIG_CPU_DCACHE_DISABLE is not set
+# CONFIG_CPU_DCACHE_WRITETHROUGH is not set
+
+##
+## file: block/Kconfig
+##
+# CONFIG_BLK_DEV_ZONED is not set
+# CONFIG_BLK_SED_OPAL is not set
+
+##
+## file: block/Kconfig.iosched
+##
+CONFIG_MQ_IOSCHED_DEADLINE=m
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_ACORN_PARTITION=y
+# CONFIG_ACORN_PARTITION_CUMANA is not set
+# CONFIG_ACORN_PARTITION_EESOX is not set
+CONFIG_ACORN_PARTITION_ICS=y
+# CONFIG_ACORN_PARTITION_ADFS is not set
+# CONFIG_ACORN_PARTITION_POWERTEC is not set
+CONFIG_ACORN_PARTITION_RISCIX=y
+CONFIG_OSF_PARTITION=y
+CONFIG_AMIGA_PARTITION=y
+CONFIG_ATARI_PARTITION=y
+CONFIG_MAC_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+CONFIG_SOLARIS_X86_PARTITION=y
+CONFIG_UNIXWARE_DISKLABEL=y
+CONFIG_LDM_PARTITION=y
+# CONFIG_LDM_DEBUG is not set
+CONFIG_SGI_PARTITION=y
+CONFIG_ULTRIX_PARTITION=y
+CONFIG_SUN_PARTITION=y
+
+##
+## file: crypto/Kconfig
+##
+# CONFIG_CRYPTO_FIPS is not set
+#. Saves about 95K
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+CONFIG_CRYPTO_SHA256=m
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_ATA=m
+CONFIG_SATA_AHCI=m
+# CONFIG_SATA_SIL24 is not set
+CONFIG_ATA_SFF=y
+# CONFIG_PDC_ADMA is not set
+# CONFIG_SATA_QSTOR is not set
+# CONFIG_SATA_SX4 is not set
+# CONFIG_ATA_PIIX is not set
+CONFIG_SATA_MV=m
+# CONFIG_SATA_NV is not set
+# CONFIG_SATA_PROMISE is not set
+# CONFIG_SATA_SIL is not set
+# CONFIG_SATA_SIS is not set
+# CONFIG_SATA_SVW is not set
+# CONFIG_SATA_ULI is not set
+# CONFIG_SATA_VIA is not set
+# CONFIG_SATA_VITESSE is not set
+# CONFIG_PATA_ALI is not set
+# CONFIG_PATA_AMD is not set
+# CONFIG_PATA_ARTOP is not set
+# CONFIG_PATA_ATIIXP is not set
+# CONFIG_PATA_CMD64X is not set
+# CONFIG_PATA_CS5520 is not set
+# CONFIG_PATA_CYPRESS is not set
+# CONFIG_PATA_EFAR is not set
+# CONFIG_PATA_HPT366 is not set
+# CONFIG_PATA_HPT37X is not set
+# CONFIG_PATA_HPT3X2N is not set
+# CONFIG_PATA_HPT3X3 is not set
+# CONFIG_PATA_IT8213 is not set
+# CONFIG_PATA_IT821X is not set
+# CONFIG_PATA_JMICRON is not set
+# CONFIG_PATA_MARVELL is not set
+# CONFIG_PATA_NETCELL is not set
+# CONFIG_PATA_NINJA32 is not set
+# CONFIG_PATA_NS87415 is not set
+# CONFIG_PATA_OLDPIIX is not set
+# CONFIG_PATA_OPTIDMA is not set
+# CONFIG_PATA_PDC2027X is not set
+# CONFIG_PATA_PDC_OLD is not set
+# CONFIG_PATA_RADISYS is not set
+# CONFIG_PATA_SC1200 is not set
+# CONFIG_PATA_SCH is not set
+# CONFIG_PATA_SERVERWORKS is not set
+# CONFIG_PATA_SIL680 is not set
+# CONFIG_PATA_SIS is not set
+# CONFIG_PATA_TRIFLEX is not set
+# CONFIG_PATA_VIA is not set
+# CONFIG_PATA_WINBOND is not set
+# CONFIG_PATA_CMD640_PCI is not set
+# CONFIG_PATA_MPIIX is not set
+# CONFIG_PATA_NS87410 is not set
+# CONFIG_PATA_OPTI is not set
+# CONFIG_PATA_RZ1000 is not set
+# CONFIG_ATA_GENERIC is not set
+
+##
+## file: drivers/base/firmware_loader/Kconfig
+##
+CONFIG_FW_LOADER=m
+
+##
+## file: drivers/bluetooth/Kconfig
+##
+# CONFIG_BT_HCIUART is not set
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+CONFIG_BT_HCIVHCI=m
+
+##
+## file: drivers/char/hw_random/Kconfig
+##
+# CONFIG_HW_RANDOM is not set
+
+##
+## file: drivers/connector/Kconfig
+##
+CONFIG_CONNECTOR=m
+
+##
+## file: drivers/cpuidle/Kconfig
+##
+CONFIG_CPU_IDLE=y
+
+##
+## file: drivers/cpuidle/Kconfig.arm
+##
+CONFIG_ARM_KIRKWOOD_CPUIDLE=y
+
+##
+## file: drivers/crypto/marvell/Kconfig
+##
+CONFIG_CRYPTO_DEV_MARVELL_CESA=m
+
+##
+## file: drivers/dma/Kconfig
+##
+CONFIG_DMADEVICES=y
+CONFIG_MV_XOR=y
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+# CONFIG_DRM is not set
+
+##
+## file: drivers/gpu/vga/Kconfig
+##
+# CONFIG_VGA_ARB is not set
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_HWMON=m
+CONFIG_SENSORS_G760A=m
+CONFIG_SENSORS_G762=m
+CONFIG_SENSORS_GPIO_FAN=m
+CONFIG_SENSORS_LM75=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=y
+CONFIG_I2C_CHARDEV=y
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_MV64XXX=y
+
+##
+## file: drivers/input/Kconfig
+##
+CONFIG_INPUT_MOUSEDEV=m
+
+##
+## file: drivers/input/gameport/Kconfig
+##
+CONFIG_GAMEPORT=m
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+CONFIG_INPUT_JOYSTICK=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+# CONFIG_KEYBOARD_ATKBD is not set
+CONFIG_KEYBOARD_GPIO=m
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO=m
+CONFIG_SERIO_SERPORT=m
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=m
+# CONFIG_SERIO_RAW is not set
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+CONFIG_INPUT_TOUCHSCREEN=y
+
+##
+## file: drivers/isdn/Kconfig
+##
+CONFIG_ISDN=y
+
+##
+## file: drivers/leds/Kconfig
+##
+CONFIG_LEDS_NS2=m
+CONFIG_LEDS_NETXBIG=m
+
+##
+## file: drivers/leds/trigger/Kconfig
+##
+CONFIG_LEDS_TRIGGER_TIMER=y
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
+
+##
+## file: drivers/md/Kconfig
+##
+# CONFIG_DM_INTEGRITY is not set
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=m
+
+##
+## file: drivers/mmc/core/Kconfig
+##
+CONFIG_MMC_BLOCK=m
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+CONFIG_MMC_MVSDIO=m
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_MTD=m
+CONFIG_MTD_BLOCK=m
+CONFIG_FTL=m
+CONFIG_NFTL=m
+# CONFIG_NFTL_RW is not set
+# CONFIG_INFTL is not set
+# CONFIG_RFD_FTL is not set
+# CONFIG_SSFDC is not set
+# CONFIG_MTD_OOPS is not set
+
+##
+## file: drivers/mtd/chips/Kconfig
+##
+CONFIG_MTD_CFI=m
+CONFIG_MTD_JEDECPROBE=m
+CONFIG_MTD_CFI_ADV_OPTIONS=y
+## choice: Flash cmd/query data swapping
+CONFIG_MTD_CFI_NOSWAP=y
+# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set
+# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set
+## end choice
+CONFIG_MTD_CFI_GEOMETRY=y
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+CONFIG_MTD_CFI_I4=y
+# CONFIG_MTD_CFI_I8 is not set
+# CONFIG_MTD_OTP is not set
+#. Needed e.g. on QNAP devices
+CONFIG_MTD_CFI_INTELEXT=m
+#. Needed e.g. on D-Link DNS-323, Buffalo KuroBox-Pro, Buffalo Linkstation LS-GL / LS-WTGL, etc
+CONFIG_MTD_CFI_AMDSTD=m
+CONFIG_MTD_CFI_STAA=m
+# CONFIG_MTD_RAM is not set
+# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_ABSENT is not set
+
+##
+## file: drivers/mtd/devices/Kconfig
+##
+# CONFIG_MTD_PMC551 is not set
+# CONFIG_MTD_SLRAM is not set
+# CONFIG_MTD_PHRAM is not set
+# CONFIG_MTD_MTDRAM is not set
+# CONFIG_MTD_BLOCK2MTD is not set
+
+##
+## file: drivers/mtd/maps/Kconfig
+##
+# CONFIG_MTD_COMPLEX_MAPPINGS is not set
+CONFIG_MTD_PHYSMAP=m
+CONFIG_MTD_PHYSMAP_OF=y
+# CONFIG_MTD_IMPA7 is not set
+# CONFIG_MTD_INTEL_VR_NOR is not set
+# CONFIG_MTD_PLATRAM is not set
+
+##
+## file: drivers/mtd/nand/onenand/Kconfig
+##
+# CONFIG_MTD_ONENAND is not set
+
+##
+## file: drivers/mtd/nand/raw/Kconfig
+##
+CONFIG_MTD_RAW_NAND=m
+# CONFIG_MTD_NAND_CAFE is not set
+CONFIG_MTD_NAND_ORION=m
+# CONFIG_MTD_NAND_DISKONCHIP is not set
+
+##
+## file: drivers/mtd/parsers/Kconfig
+##
+CONFIG_MTD_CMDLINE_PARTS=m
+CONFIG_MTD_OF_PARTS=m
+# CONFIG_MTD_AFS_PARTS is not set
+# CONFIG_MTD_REDBOOT_PARTS is not set
+
+##
+## file: drivers/mtd/spi-nor/Kconfig
+##
+CONFIG_MTD_SPI_NOR=m
+
+##
+## file: drivers/net/arcnet/Kconfig
+##
+# CONFIG_ARCNET is not set
+
+##
+## file: drivers/net/ethernet/atheros/Kconfig
+##
+# CONFIG_ATL1 is not set
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+# CONFIG_BNX2 is not set
+# CONFIG_TIGON3 is not set
+# CONFIG_BNX2X is not set
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+# CONFIG_DL2K is not set
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+# CONFIG_E1000 is not set
+# CONFIG_E1000E is not set
+# CONFIG_IGB is not set
+
+##
+## file: drivers/net/ethernet/marvell/Kconfig
+##
+CONFIG_MV643XX_ETH=m
+CONFIG_MVMDIO=m
+# CONFIG_SKGE is not set
+# CONFIG_SKY2 is not set
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+# CONFIG_NS83820 is not set
+
+##
+## file: drivers/net/ethernet/packetengines/Kconfig
+##
+# CONFIG_HAMACHI is not set
+# CONFIG_YELLOWFIN is not set
+
+##
+## file: drivers/net/ethernet/qlogic/Kconfig
+##
+# CONFIG_QLA3XXX is not set
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+# CONFIG_R8169 is not set
+
+##
+## file: drivers/net/ethernet/sis/Kconfig
+##
+# CONFIG_SIS190 is not set
+
+##
+## file: drivers/net/ethernet/via/Kconfig
+##
+# CONFIG_VIA_VELOCITY is not set
+
+##
+## file: drivers/net/wireless/marvell/mwifiex/Kconfig
+##
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+
+##
+## file: drivers/pci/controller/Kconfig
+##
+CONFIG_PCI_MVEBU=y
+
+##
+## file: drivers/pci/pcie/Kconfig
+##
+# CONFIG_PCIEAER is not set
+# CONFIG_PCIEASPM is not set
+# CONFIG_PCIE_DPC is not set
+# CONFIG_PCIE_PTM is not set
+
+##
+## file: drivers/pcmcia/Kconfig
+##
+# CONFIG_PCCARD is not set
+
+##
+## file: drivers/power/reset/Kconfig
+##
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_GPIO=y
+CONFIG_POWER_RESET_QNAP=y
+CONFIG_POWER_RESET_RESTART=y
+
+##
+## file: drivers/regulator/Kconfig
+##
+CONFIG_REGULATOR=y
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+# CONFIG_RTC_NVMEM is not set
+CONFIG_RTC_DRV_DS1307=m
+CONFIG_RTC_DRV_RS5C372=m
+CONFIG_RTC_DRV_PCF8563=m
+CONFIG_RTC_DRV_M41T80=m
+CONFIG_RTC_DRV_S35390A=m
+CONFIG_RTC_DRV_MV=m
+
+##
+## file: drivers/scsi/Kconfig
+##
+# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
+# CONFIG_SCSI_3W_9XXX is not set
+# CONFIG_SCSI_AACRAID is not set
+# CONFIG_SCSI_DPT_I2O is not set
+# CONFIG_SCSI_ARCMSR is not set
+# CONFIG_SCSI_HPTIOP is not set
+# CONFIG_SCSI_DMX3191D is not set
+# CONFIG_SCSI_IPS is not set
+# CONFIG_SCSI_INITIO is not set
+# CONFIG_SCSI_INIA100 is not set
+# CONFIG_SCSI_STEX is not set
+# CONFIG_SCSI_SYM53C8XX_2 is not set
+# CONFIG_SCSI_IPR is not set
+# CONFIG_SCSI_QLOGIC_1280 is not set
+# CONFIG_SCSI_LPFC is not set
+# CONFIG_SCSI_DC395x is not set
+# CONFIG_SCSI_NSP32 is not set
+
+##
+## file: drivers/scsi/aic7xxx/Kconfig.aic79xx
+##
+# CONFIG_SCSI_AIC79XX is not set
+
+##
+## file: drivers/scsi/aic7xxx/Kconfig.aic7xxx
+##
+# CONFIG_SCSI_AIC7XXX is not set
+
+##
+## file: drivers/scsi/aic94xx/Kconfig
+##
+# CONFIG_SCSI_AIC94XX is not set
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+# CONFIG_MEGARAID_NEWGEN is not set
+# CONFIG_MEGARAID_LEGACY is not set
+# CONFIG_MEGARAID_SAS is not set
+
+##
+## file: drivers/scsi/mvsas/Kconfig
+##
+# CONFIG_SCSI_MVSAS is not set
+
+##
+## file: drivers/scsi/qla2xxx/Kconfig
+##
+# CONFIG_SCSI_QLA_FC is not set
+
+##
+## file: drivers/scsi/qla4xxx/Kconfig
+##
+# CONFIG_SCSI_QLA_ISCSI is not set
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI_ORION=m
+
+##
+## file: drivers/ssb/Kconfig
+##
+# CONFIG_SSB is not set
+
+##
+## file: drivers/thermal/Kconfig
+##
+CONFIG_THERMAL=y
+CONFIG_KIRKWOOD_THERMAL=m
+
+##
+## file: drivers/tty/Kconfig
+##
+# CONFIG_VT is not set
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_PCI=m
+CONFIG_SERIAL_8250_EXAR=m
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=2
+# CONFIG_SERIAL_8250_EXTENDED is not set
+# CONFIG_SERIAL_8250_DW is not set
+CONFIG_SERIAL_OF_PLATFORM=y
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB_SUPPORT=y
+CONFIG_USB=m
+
+##
+## file: drivers/usb/atm/Kconfig
+##
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_EHCI_HCD_ORION=y
+# CONFIG_USB_ISP116X_HCD is not set
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_UHCI_HCD=m
+CONFIG_USB_SL811_HCD=m
+
+##
+## file: drivers/usb/misc/Kconfig
+##
+#. Selects BACKLIGHT_CLASS_DEVICE which is always built-in
+# CONFIG_USB_APPLEDISPLAY is not set
+
+##
+## file: drivers/video/backlight/Kconfig
+##
+# CONFIG_BACKLIGHT_CLASS_DEVICE is not set
+
+##
+## file: drivers/video/console/Kconfig
+##
+# CONFIG_VGA_CONSOLE is not set
+#. We want to enable this as a module, but that's not currently possible
+# CONFIG_FRAMEBUFFER_CONSOLE is not set
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB=m
+
+##
+## file: drivers/virtio/Kconfig
+##
+# CONFIG_VIRTIO_PCI is not set
+# CONFIG_VIRTIO_BALLOON is not set
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_ORION_WATCHDOG=m
+
+##
+## file: fs/Kconfig
+##
+# CONFIG_FS_DAX is not set
+
+##
+## file: fs/crypto/Kconfig
+##
+# CONFIG_FS_ENCRYPTION is not set
+
+##
+## file: fs/nls/Kconfig
+##
+CONFIG_NLS=m
+
+##
+## file: fs/notify/fanotify/Kconfig
+##
+# CONFIG_FANOTIFY_ACCESS_PERMISSIONS is not set
+
+##
+## file: init/Kconfig
+##
+#. Saves about 7K
+# CONFIG_MEMCG is not set
+# CONFIG_CFS_BANDWIDTH is not set
+# CONFIG_CGROUP_RDMA is not set
+# CONFIG_CGROUP_BPF is not set
+# CONFIG_CHECKPOINT_RESTORE is not set
+## choice: Compiler optimization level
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+## end choice
+# CONFIG_USERFAULTFD is not set
+# CONFIG_SLUB_DEBUG is not set
+# CONFIG_SLAB_FREELIST_HARDENED is not set
+# CONFIG_PROFILING is not set
+# CONFIG_MODULE_SIG is not set
+
+##
+## file: kernel/power/Kconfig
+##
+# CONFIG_SUSPEND is not set
+# CONFIG_HIBERNATION is not set
+# CONFIG_PM is not set
+
+##
+## file: kernel/trace/Kconfig
+##
+# CONFIG_FUNCTION_GRAPH_TRACER is not set
+# CONFIG_STACK_TRACER is not set
+# CONFIG_FTRACE_SYSCALLS is not set
+# CONFIG_UPROBE_EVENTS is not set
+
+##
+## file: lib/Kconfig.debug
+##
+# CONFIG_SCHEDSTATS is not set
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+CONFIG_FLATMEM_MANUAL=y
+# CONFIG_DISCONTIGMEM_MANUAL is not set
+# CONFIG_SPARSEMEM_MANUAL is not set
+## end choice
+# CONFIG_KSM is not set
+# CONFIG_ZSWAP is not set
+
+##
+## file: mm/Kconfig.debug
+##
+# CONFIG_PAGE_EXTENSION is not set
+# CONFIG_PAGE_POISONING is not set
+
+##
+## file: net/Kconfig
+##
+#. Saves about 3K
+# CONFIG_BPF_JIT is not set
+# CONFIG_BPF_STREAM_PARSER is not set
+# CONFIG_LWTUNNEL is not set
+
+##
+## file: net/atm/Kconfig
+##
+CONFIG_ATM=m
+
+##
+## file: net/ipv6/Kconfig
+##
+CONFIG_IPV6=m
+#. Can be modular, but selects LWTUNNEL which cannot
+# CONFIG_IPV6_ILA is not set
+
+##
+## file: net/l3mdev/Kconfig
+##
+# CONFIG_NET_L3_MASTER_DEV is not set
+
+##
+## file: net/mpls/Kconfig
+##
+# CONFIG_NET_MPLS_GSO is not set
+
+##
+## file: net/packet/Kconfig
+##
+CONFIG_PACKET=m
+
+##
+## file: net/switchdev/Kconfig
+##
+# CONFIG_NET_SWITCHDEV is not set
+
+##
+## file: net/xdp/Kconfig
+##
+# CONFIG_XDP_SOCKETS is not set
+
+##
+## file: security/integrity/Kconfig
+##
+# CONFIG_INTEGRITY is not set
+
+##
+## file: security/lockdown/Kconfig
+##
+# CONFIG_SECURITY_LOCKDOWN_LSM is not set
+
+##
+## file: sound/soc/Kconfig
+##
+CONFIG_SND_SOC=m
+
+##
+## file: sound/soc/codecs/Kconfig
+##
+# CONFIG_SND_SOC_ALL_CODECS is not set
+CONFIG_SND_SOC_ALC5623=m
+CONFIG_SND_SOC_CS42L51_I2C=m
+
+##
+## file: sound/soc/generic/Kconfig
+##
+CONFIG_SND_SIMPLE_CARD=m
+
+##
+## file: sound/soc/kirkwood/Kconfig
+##
+CONFIG_SND_KIRKWOOD_SOC=m
+
+##
+## file: usr/Kconfig
+##
+# CONFIG_RD_BZIP2 is not set
+# CONFIG_RD_LZMA is not set
+# CONFIG_RD_LZO is not set
+# CONFIG_RD_LZ4 is not set
+
diff --git a/debian/config/armel/config.rpi b/debian/config/armel/config.rpi
new file mode 100644
index 000000000..7fc1158b0
--- /dev/null
+++ b/debian/config/armel/config.rpi
@@ -0,0 +1,195 @@
+##
+## file: arch/arm/Kconfig
+##
+CONFIG_ARCH_MULTI_V6=y
+# CONFIG_ARCH_MULTI_V7 is not set
+CONFIG_VFP=y
+
+##
+## file: arch/arm/mach-bcm/Kconfig
+##
+CONFIG_ARCH_BCM=y
+CONFIG_ARCH_BCM2835=y
+
+##
+## file: drivers/bluetooth/Kconfig
+##
+CONFIG_BT_HCIUART=m
+
+##
+## file: drivers/dma/Kconfig
+##
+CONFIG_DMADEVICES=y
+CONFIG_DMA_BCM2835=y
+
+##
+## file: drivers/firmware/Kconfig
+##
+CONFIG_RASPBERRYPI_FIRMWARE=y
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=y
+
+##
+## file: drivers/gpu/drm/vc4/Kconfig
+##
+CONFIG_DRM_VC4=y
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_SENSORS_RASPBERRYPI_HWMON=m
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_BCM2835=y
+
+##
+## file: drivers/iommu/Kconfig
+##
+# CONFIG_IOMMU_SUPPORT is not set
+
+##
+## file: drivers/mailbox/Kconfig
+##
+CONFIG_MAILBOX=y
+CONFIG_BCM2835_MBOX=y
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=y
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+CONFIG_MMC_SDHCI_PLTFM=y
+CONFIG_MMC_SDHCI_IPROC=y
+CONFIG_MMC_BCM2835=y
+
+##
+## file: drivers/net/wireless/broadcom/brcm80211/brcmfmac/Kconfig
+##
+CONFIG_BRCMFMAC_SDIO=y
+
+##
+## file: drivers/pwm/Kconfig
+##
+CONFIG_PWM=y
+CONFIG_PWM_BCM2835=y
+
+##
+## file: drivers/soc/bcm/Kconfig
+##
+CONFIG_RASPBERRYPI_POWER=y
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI_BCM2835=y
+CONFIG_SPI_BCM2835AUX=y
+
+##
+## file: drivers/staging/vc04_services/bcm2835-audio/Kconfig
+##
+CONFIG_SND_BCM2835=m
+
+##
+## file: drivers/staging/vc04_services/bcm2835-camera/Kconfig
+##
+CONFIG_VIDEO_BCM2835=m
+
+##
+## file: drivers/thermal/broadcom/Kconfig
+##
+CONFIG_BCM2835_THERMAL=y
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+CONFIG_SERIAL_8250_BCM2835AUX=y
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=y
+
+##
+## file: drivers/usb/core/Kconfig
+##
+CONFIG_USB_OTG=y
+
+##
+## file: drivers/usb/dwc2/Kconfig
+##
+CONFIG_USB_DWC2=y
+
+##
+## file: drivers/usb/gadget/Kconfig
+##
+CONFIG_USB_GADGET=y
+
+##
+## file: drivers/usb/gadget/legacy/Kconfig
+##
+CONFIG_USB_ETH_EEM=y
+
+##
+## file: drivers/usb/phy/Kconfig
+##
+CONFIG_NOP_USB_XCEIV=y
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_SIMPLE=y
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_BCM2835_WDT=y
+
+##
+## file: kernel/dma/Kconfig
+##
+CONFIG_DMA_CMA=y
+CONFIG_CMA_SIZE_MBYTES=32
+
+##
+## file: kernel/power/Kconfig
+##
+# CONFIG_SUSPEND is not set
+
+##
+## file: lib/xz/Kconfig
+##
+# CONFIG_XZ_DEC_ARMTHUMB is not set
+
+##
+## file: mm/Kconfig
+##
+CONFIG_CMA=y
+
+##
+## file: sound/soc/Kconfig
+##
+CONFIG_SND_SOC=y
+
+##
+## file: sound/soc/bcm/Kconfig
+##
+CONFIG_SND_BCM2835_SOC_I2S=y
+
diff --git a/debian/config/armel/defines b/debian/config/armel/defines
new file mode 100644
index 000000000..8194b3af9
--- /dev/null
+++ b/debian/config/armel/defines
@@ -0,0 +1,40 @@
+[base]
+flavours:
+ marvell
+ rpi
+kernel-arch: arm
+
+[build]
+image-file: arch/arm/boot/zImage
+# uncompressed-image is just for size checking
+uncompressed-image-file: arch/arm/boot/Image
+
+[image]
+install-stem: vmlinuz
+
+[relations]
+headers%gcc-10: linux-compiler-gcc-10-arm
+
+[marvell_description]
+hardware: Marvell Kirkwood/Orion
+hardware-long: Marvell Kirkwood and Orion based systems (https://wiki.debian.org/ArmEabiPort#Supported_hardware)
+
+[rpi_description]
+hardware: Raspberry Pi and Pi Zero
+hardware-long: Raspberry Pi, Raspberry Pi Zero based systems
+
+[marvell_image]
+recommends: u-boot-tools
+## Maximum kernel size for supported devices (64 bytes is the u-boot header)
+# SheevaPlug: 4194304 - 64 = 4194240
+# QNAP TS-119/TS-219: 2097152 - 64 = 2097088
+# D-Link DNS-323: 1572864 - 8 - 64 = 1572792 (too small, no longer supported)
+# HP Media Vault mv2120: 2097152 - 8 - 64 = 2097080
+# QNAP TS-109/TS-209 & TS-409: 2097152 - 8 - 64 = 2097080
+# Buffalo Linkstation LS-WSXL/WXL/WVL (from stock kernel): 2729776 - 64 = 2729712
+check-size: 2729712
+check-size-with-dtb: true
+## Maximum uncompressed kernel size for supported devices
+# Buffalo Linkstation LS-WSXL/WXL/WVL: 7340032
+#TODO# check-uncompressed-size: 7340032
+breaks: flash-kernel (<< 3.57~)
diff --git a/debian/config/armhf/config b/debian/config/armhf/config
new file mode 100644
index 000000000..c791edd76
--- /dev/null
+++ b/debian/config/armhf/config
@@ -0,0 +1,1665 @@
+##
+## file: arch/arm/Kconfig
+##
+## choice: ARM system type
+CONFIG_ARCH_MULTIPLATFORM=y
+## end choice
+# CONFIG_ARCH_MULTI_V6 is not set
+CONFIG_ARCH_MULTI_V7=y
+CONFIG_ARCH_VIRT=y
+CONFIG_ARM_ERRATA_430973=y
+CONFIG_ARM_ERRATA_643719=y
+CONFIG_ARM_ERRATA_754327=y
+CONFIG_ARM_ERRATA_773022=y
+CONFIG_SMP=y
+CONFIG_SMP_ON_UP=y
+CONFIG_MCPM=y
+CONFIG_NR_CPUS=8
+CONFIG_HIGHMEM=y
+CONFIG_XEN=y
+CONFIG_ARM_APPENDED_DTB=y
+CONFIG_ARM_ATAG_DTB_COMPAT=y
+## choice: Kernel command line type
+CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_FROM_BOOTLOADER=y
+# CONFIG_ARM_ATAG_DTB_COMPAT_CMDLINE_EXTEND is not set
+## end choice
+CONFIG_ATAGS_PROC=y
+CONFIG_EFI=y
+#. Enable floating point unit
+CONFIG_VFP=y
+CONFIG_NEON=y
+CONFIG_KERNEL_MODE_NEON=y
+
+##
+## file: arch/arm/Kconfig.debug
+##
+#. DEBUG_LL is incompatible with multiplatform
+# CONFIG_DEBUG_LL is not set
+
+##
+## file: arch/arm/crypto/Kconfig
+##
+CONFIG_CRYPTO_SHA1_ARM_NEON=m
+CONFIG_CRYPTO_SHA1_ARM_CE=m
+CONFIG_CRYPTO_SHA2_ARM_CE=m
+CONFIG_CRYPTO_AES_ARM_BS=m
+CONFIG_CRYPTO_AES_ARM_CE=m
+CONFIG_CRYPTO_GHASH_ARM_CE=m
+CONFIG_CRYPTO_CRCT10DIF_ARM_CE=m
+CONFIG_CRYPTO_CRC32_ARM_CE=m
+CONFIG_CRYPTO_CHACHA20_NEON=m
+CONFIG_CRYPTO_NHPOLY1305_NEON=m
+CONFIG_CRYPTO_CURVE25519_NEON=m
+
+##
+## file: arch/arm/mach-aspeed/Kconfig
+##
+CONFIG_ARCH_ASPEED=y
+CONFIG_MACH_ASPEED_G6=y
+
+##
+## file: arch/arm/mach-bcm/Kconfig
+##
+CONFIG_ARCH_BCM=y
+CONFIG_ARCH_BCM2835=y
+
+##
+## file: arch/arm/mach-exynos/Kconfig
+##
+CONFIG_ARCH_EXYNOS=y
+# CONFIG_ARCH_EXYNOS3 is not set
+CONFIG_ARCH_EXYNOS4=y
+CONFIG_ARCH_EXYNOS5=y
+
+##
+## file: arch/arm/mach-highbank/Kconfig
+##
+CONFIG_ARCH_HIGHBANK=y
+
+##
+## file: arch/arm/mach-imx/Kconfig
+##
+CONFIG_ARCH_MXC=y
+CONFIG_SOC_IMX51=y
+CONFIG_SOC_IMX53=y
+CONFIG_SOC_IMX6Q=y
+CONFIG_SOC_IMX6SL=y
+CONFIG_SOC_IMX6SLL=y
+CONFIG_SOC_IMX6SX=y
+CONFIG_SOC_IMX6UL=y
+
+##
+## file: arch/arm/mach-meson/Kconfig
+##
+CONFIG_ARCH_MESON=y
+
+##
+## file: arch/arm/mach-mmp/Kconfig
+##
+CONFIG_ARCH_MMP=y
+CONFIG_MACH_MMP2_DT=y
+
+##
+## file: arch/arm/mach-mvebu/Kconfig
+##
+CONFIG_ARCH_MVEBU=y
+CONFIG_MACH_ARMADA_370=y
+CONFIG_MACH_ARMADA_375=y
+CONFIG_MACH_ARMADA_38X=y
+CONFIG_MACH_ARMADA_39X=y
+CONFIG_MACH_ARMADA_XP=y
+CONFIG_MACH_DOVE=y
+
+##
+## file: arch/arm/mach-omap1/Kconfig
+##
+CONFIG_OMAP_MUX=y
+# CONFIG_OMAP_MUX_DEBUG is not set
+CONFIG_OMAP_MUX_WARNINGS=y
+
+##
+## file: arch/arm/mach-omap2/Kconfig
+##
+# CONFIG_ARCH_OMAP2 is not set
+CONFIG_ARCH_OMAP3=y
+CONFIG_ARCH_OMAP4=y
+CONFIG_SOC_OMAP5=y
+CONFIG_SOC_AM33XX=y
+CONFIG_SOC_DRA7XX=y
+CONFIG_ARCH_OMAP2PLUS_TYPICAL=y
+CONFIG_SOC_OMAP3430=y
+CONFIG_SOC_TI81XX=y
+
+##
+## file: arch/arm/mach-rockchip/Kconfig
+##
+CONFIG_ARCH_ROCKCHIP=y
+
+##
+## file: arch/arm/mach-socfpga/Kconfig
+##
+CONFIG_ARCH_SOCFPGA=y
+
+##
+## file: arch/arm/mach-stm32/Kconfig
+##
+CONFIG_ARCH_STM32=y
+
+##
+## file: arch/arm/mach-sunxi/Kconfig
+##
+CONFIG_ARCH_SUNXI=y
+
+##
+## file: arch/arm/mach-tegra/Kconfig
+##
+CONFIG_ARCH_TEGRA=y
+
+##
+## file: arch/arm/mach-vexpress/Kconfig
+##
+CONFIG_ARCH_VEXPRESS=y
+CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA=y
+
+##
+## file: arch/arm/mach-vt8500/Kconfig
+##
+CONFIG_ARCH_WM8850=y
+
+##
+## file: arch/arm/mm/Kconfig
+##
+CONFIG_ARM_THUMBEE=y
+CONFIG_CACHE_TAUROS2=y
+
+##
+## file: arch/arm/plat-omap/Kconfig
+##
+CONFIG_POWER_AVS_OMAP=y
+CONFIG_POWER_AVS_OMAP_CLASS3=y
+CONFIG_OMAP_RESET_CLOCKS=y
+# CONFIG_OMAP_MPU_TIMER is not set
+CONFIG_OMAP_32K_TIMER=y
+# CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE is not set
+CONFIG_OMAP_SERIAL_WAKE=y
+
+##
+## file: drivers/android/Kconfig
+##
+CONFIG_ANDROID=y
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_SATA_AHCI_PLATFORM=m
+CONFIG_AHCI_IMX=m
+CONFIG_AHCI_MVEBU=m
+CONFIG_AHCI_SUNXI=m
+CONFIG_AHCI_TEGRA=m
+CONFIG_SATA_HIGHBANK=m
+CONFIG_PATA_IMX=m
+CONFIG_PATA_PLATFORM=m
+CONFIG_PATA_OF_PLATFORM=m
+
+##
+## file: drivers/auxdisplay/Kconfig
+##
+CONFIG_ARM_CHARLCD=y
+
+##
+## file: drivers/bluetooth/Kconfig
+##
+CONFIG_BT_HCIUART=m
+
+##
+## file: drivers/bus/Kconfig
+##
+CONFIG_OMAP_INTERCONNECT=m
+CONFIG_OMAP_OCP2SCP=m
+
+##
+## file: drivers/char/hw_random/Kconfig
+##
+CONFIG_HW_RANDOM_BCM2835=m
+CONFIG_HW_RANDOM_OMAP=m
+CONFIG_HW_RANDOM_STM32=m
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+CONFIG_ASPEED_KCS_IPMI_BMC=m
+CONFIG_ASPEED_BT_IPMI_BMC=m
+
+##
+## file: drivers/clk/Kconfig
+##
+CONFIG_COMMON_CLK_MAX77686=m
+CONFIG_COMMON_CLK_RK808=m
+CONFIG_COMMON_CLK_SI5351=m
+CONFIG_COMMON_CLK_ASPEED=y
+CONFIG_COMMON_CLK_S2MPS11=m
+CONFIG_CLK_TWL6040=m
+
+##
+## file: drivers/clk/bcm/Kconfig
+##
+CONFIG_CLK_RASPBERRYPI=y
+
+##
+## file: drivers/clk/sunxi-ng/Kconfig
+##
+CONFIG_SUNXI_CCU=y
+CONFIG_SUN8I_DE2_CCU=y
+
+##
+## file: drivers/cpufreq/Kconfig
+##
+## choice: Default CPUFreq governor
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL=y
+## end choice
+CONFIG_CPUFREQ_DT=m
+
+##
+## file: drivers/cpufreq/Kconfig.arm
+##
+CONFIG_ARM_IMX6Q_CPUFREQ=m
+CONFIG_ARM_RASPBERRYPI_CPUFREQ=m
+CONFIG_ARM_TEGRA20_CPUFREQ=y
+
+##
+## file: drivers/cpuidle/Kconfig.arm
+##
+CONFIG_ARM_EXYNOS_CPUIDLE=y
+
+##
+## file: drivers/crypto/Kconfig
+##
+CONFIG_CRYPTO_DEV_OMAP_SHAM=m
+CONFIG_CRYPTO_DEV_OMAP_AES=m
+
+##
+## file: drivers/crypto/allwinner/Kconfig
+##
+CONFIG_CRYPTO_DEV_SUN4I_SS=m
+
+##
+## file: drivers/crypto/marvell/Kconfig
+##
+CONFIG_CRYPTO_DEV_MARVELL_CESA=m
+
+##
+## file: drivers/crypto/stm32/Kconfig
+##
+CONFIG_CRYPTO_DEV_STM32_CRC=m
+CONFIG_CRYPTO_DEV_STM32_HASH=m
+CONFIG_CRYPTO_DEV_STM32_CRYP=m
+
+##
+## file: drivers/devfreq/Kconfig
+##
+CONFIG_PM_DEVFREQ=y
+CONFIG_ARM_TEGRA_DEVFREQ=m
+
+##
+## file: drivers/dma/Kconfig
+##
+CONFIG_DMADEVICES=y
+CONFIG_AMBA_PL08X=y
+CONFIG_DMA_BCM2835=y
+CONFIG_DMA_SUN6I=m
+CONFIG_IMX_DMA=y
+CONFIG_IMX_SDMA=y
+CONFIG_MV_XOR=y
+CONFIG_MXS_DMA=y
+CONFIG_PL330_DMA=y
+CONFIG_STM32_DMA=y
+CONFIG_STM32_DMAMUX=y
+CONFIG_STM32_MDMA=y
+CONFIG_TEGRA20_APB_DMA=y
+
+##
+## file: drivers/dma/ti/Kconfig
+##
+CONFIG_TI_CPPI41=m
+CONFIG_TI_EDMA=y
+CONFIG_DMA_OMAP=y
+
+##
+## file: drivers/extcon/Kconfig
+##
+CONFIG_EXTCON=m
+CONFIG_EXTCON_AXP288=m
+CONFIG_EXTCON_PALMAS=m
+CONFIG_EXTCON_USB_GPIO=m
+
+##
+## file: drivers/firmware/Kconfig
+##
+CONFIG_RASPBERRYPI_FIRMWARE=y
+
+##
+## file: drivers/fsi/Kconfig
+##
+CONFIG_FSI=m
+# CONFIG_FSI_NEW_DEV_NODE is not set
+CONFIG_FSI_MASTER_GPIO=m
+CONFIG_FSI_MASTER_HUB=m
+CONFIG_FSI_MASTER_ASPEED=m
+CONFIG_FSI_SCOM=m
+CONFIG_FSI_SBEFIFO=m
+CONFIG_FSI_OCC=m
+
+##
+## file: drivers/gpio/Kconfig
+##
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_ASPEED=m
+CONFIG_GPIO_GENERIC_PLATFORM=m
+CONFIG_GPIO_MXC=m
+CONFIG_GPIO_PCA953X=m
+CONFIG_GPIO_PCA953X_IRQ=y
+CONFIG_GPIO_PCF857X=m
+CONFIG_GPIO_DA9052=m
+CONFIG_GPIO_PALMAS=y
+CONFIG_GPIO_TWL4030=y
+CONFIG_GPIO_TWL6040=y
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=m
+
+##
+## file: drivers/gpu/drm/armada/Kconfig
+##
+CONFIG_DRM_ARMADA=m
+
+##
+## file: drivers/gpu/drm/aspeed/Kconfig
+##
+CONFIG_DRM_ASPEED_GFX=m
+
+##
+## file: drivers/gpu/drm/bridge/Kconfig
+##
+CONFIG_DRM_DISPLAY_CONNECTOR=m
+CONFIG_DRM_SII902X=m
+CONFIG_DRM_TI_TPD12S015=m
+
+##
+## file: drivers/gpu/drm/bridge/synopsys/Kconfig
+##
+CONFIG_DRM_DW_HDMI_AHB_AUDIO=m
+CONFIG_DRM_DW_HDMI_CEC=m
+
+##
+## file: drivers/gpu/drm/etnaviv/Kconfig
+##
+CONFIG_DRM_ETNAVIV=m
+
+##
+## file: drivers/gpu/drm/exynos/Kconfig
+##
+CONFIG_DRM_EXYNOS=m
+CONFIG_DRM_EXYNOS_FIMD=y
+CONFIG_DRM_EXYNOS_MIXER=y
+CONFIG_DRM_EXYNOS_DSI=y
+CONFIG_DRM_EXYNOS_DP=y
+CONFIG_DRM_EXYNOS_HDMI=y
+
+##
+## file: drivers/gpu/drm/i2c/Kconfig
+##
+CONFIG_DRM_I2C_NXP_TDA998X=m
+
+##
+## file: drivers/gpu/drm/imx/Kconfig
+##
+CONFIG_DRM_IMX=m
+CONFIG_DRM_IMX_PARALLEL_DISPLAY=m
+CONFIG_DRM_IMX_LDB=m
+CONFIG_DRM_IMX_HDMI=m
+
+##
+## file: drivers/gpu/drm/lima/Kconfig
+##
+CONFIG_DRM_LIMA=m
+
+##
+## file: drivers/gpu/drm/nouveau/Kconfig
+##
+CONFIG_NOUVEAU_PLATFORM_DRIVER=y
+
+##
+## file: drivers/gpu/drm/omapdrm/Kconfig
+##
+CONFIG_DRM_OMAP=m
+
+##
+## file: drivers/gpu/drm/omapdrm/dss/Kconfig
+##
+CONFIG_OMAP2_DSS=m
+CONFIG_OMAP2_DSS_VENC=y
+CONFIG_OMAP4_DSS_HDMI=y
+CONFIG_OMAP5_DSS_HDMI=y
+CONFIG_OMAP2_DSS_SDI=y
+CONFIG_OMAP2_DSS_DSI=y
+
+##
+## file: drivers/gpu/drm/panel/Kconfig
+##
+CONFIG_DRM_PANEL_SIMPLE=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
+CONFIG_DRM_PANEL_SONY_ACX565AKM=m
+CONFIG_DRM_PANEL_TPO_TD028TTEC1=m
+CONFIG_DRM_PANEL_TPO_TD043MTEA1=m
+
+##
+## file: drivers/gpu/drm/panfrost/Kconfig
+##
+CONFIG_DRM_PANFROST=m
+
+##
+## file: drivers/gpu/drm/rockchip/Kconfig
+##
+CONFIG_DRM_ROCKCHIP=m
+CONFIG_ROCKCHIP_ANALOGIX_DP=y
+CONFIG_ROCKCHIP_DW_HDMI=y
+CONFIG_ROCKCHIP_DW_MIPI_DSI=y
+
+##
+## file: drivers/gpu/drm/stm/Kconfig
+##
+CONFIG_DRM_STM=m
+CONFIG_DRM_STM_DSI=m
+
+##
+## file: drivers/gpu/drm/sun4i/Kconfig
+##
+CONFIG_DRM_SUN4I=m
+CONFIG_DRM_SUN4I_HDMI=m
+CONFIG_DRM_SUN4I_HDMI_CEC=y
+CONFIG_DRM_SUN4I_BACKEND=m
+CONFIG_DRM_SUN8I_DW_HDMI=m
+CONFIG_DRM_SUN8I_MIXER=m
+
+##
+## file: drivers/gpu/drm/tegra/Kconfig
+##
+CONFIG_DRM_TEGRA=m
+# CONFIG_DRM_TEGRA_DEBUG is not set
+CONFIG_DRM_TEGRA_STAGING=y
+
+##
+## file: drivers/gpu/drm/tilcdc/Kconfig
+##
+CONFIG_DRM_TILCDC=m
+
+##
+## file: drivers/gpu/host1x/Kconfig
+##
+CONFIG_TEGRA_HOST1X=m
+CONFIG_TEGRA_HOST1X_FIREWALL=y
+
+##
+## file: drivers/gpu/ipu-v3/Kconfig
+##
+CONFIG_IMX_IPUV3_CORE=m
+
+##
+## file: drivers/hsi/Kconfig
+##
+CONFIG_HSI=m
+
+##
+## file: drivers/hsi/clients/Kconfig
+##
+CONFIG_NOKIA_MODEM=m
+CONFIG_CMT_SPEECH=m
+CONFIG_SSI_PROTOCOL=m
+
+##
+## file: drivers/hsi/controllers/Kconfig
+##
+CONFIG_OMAP_SSI=m
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_SENSORS_ASPEED=m
+CONFIG_SENSORS_G762=m
+CONFIG_SENSORS_GPIO_FAN=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_PWM_FAN=m
+
+##
+## file: drivers/hwmon/occ/Kconfig
+##
+CONFIG_SENSORS_OCC_P9_SBE=m
+
+##
+## file: drivers/hwmon/pmbus/Kconfig
+##
+CONFIG_PMBUS=m
+CONFIG_SENSORS_PMBUS=m
+CONFIG_SENSORS_IBM_CFFPS=m
+CONFIG_SENSORS_MAX31785=m
+
+##
+## file: drivers/hwspinlock/Kconfig
+##
+CONFIG_HWSPINLOCK_OMAP=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C_MUX=m
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_ASPEED=m
+CONFIG_I2C_BCM2835=m
+CONFIG_I2C_EXYNOS5=m
+CONFIG_I2C_GPIO=y
+CONFIG_I2C_IMX=m
+CONFIG_I2C_MESON=m
+CONFIG_I2C_MV64XXX=m
+CONFIG_I2C_OMAP=y
+CONFIG_I2C_PXA=m
+CONFIG_I2C_RK3X=m
+CONFIG_I2C_S3C2410=y
+CONFIG_I2C_STM32F7=m
+CONFIG_I2C_SUN6I_P2WI=m
+CONFIG_I2C_TEGRA=y
+CONFIG_I2C_VERSATILE=m
+CONFIG_I2C_CROS_EC_TUNNEL=m
+CONFIG_I2C_FSI=m
+
+##
+## file: drivers/i2c/muxes/Kconfig
+##
+CONFIG_I2C_ARB_GPIO_CHALLENGE=m
+CONFIG_I2C_MUX_PCA954x=m
+CONFIG_I2C_MUX_PINCTRL=m
+
+##
+## file: drivers/iio/Kconfig
+##
+CONFIG_IIO=m
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_KEYBOARD_GPIO=y
+CONFIG_KEYBOARD_IMX=m
+CONFIG_KEYBOARD_TEGRA=m
+CONFIG_KEYBOARD_SUN4I_LRADC=m
+CONFIG_KEYBOARD_OMAP4=m
+CONFIG_KEYBOARD_TWL4030=m
+CONFIG_KEYBOARD_CROS_EC=m
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MMA8450=m
+CONFIG_INPUT_AXP20X_PEK=m
+CONFIG_INPUT_TWL4030_PWRBUTTON=m
+CONFIG_INPUT_TWL4030_VIBRA=m
+CONFIG_INPUT_TWL6040_VIBRA=m
+CONFIG_INPUT_STPMIC1_ONKEY=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+CONFIG_MOUSE_ELAN_I2C=m
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO_AMBAKMI=m
+CONFIG_SERIO_OLPC_APSP=m
+CONFIG_SERIO_SUN4I_PS2=m
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_EDT_FT5X06=m
+CONFIG_TOUCHSCREEN_TI_AM335X_TSC=m
+CONFIG_TOUCHSCREEN_TSC2005=m
+CONFIG_TOUCHSCREEN_STMPE=m
+CONFIG_TOUCHSCREEN_SUN4I=m
+
+##
+## file: drivers/iommu/Kconfig
+##
+CONFIG_OMAP_IOMMU=y
+# CONFIG_OMAP_IOMMU_DEBUG is not set
+CONFIG_ROCKCHIP_IOMMU=y
+CONFIG_TEGRA_IOMMU_SMMU=y
+
+##
+## file: drivers/leds/Kconfig
+##
+CONFIG_LEDS_CLASS=y
+CONFIG_LEDS_LP5523=m
+CONFIG_LEDS_DA9052=m
+CONFIG_LEDS_PWM=m
+CONFIG_LEDS_TCA6507=m
+
+##
+## file: drivers/leds/trigger/Kconfig
+##
+CONFIG_LEDS_TRIGGER_GPIO=m
+
+##
+## file: drivers/mailbox/Kconfig
+##
+CONFIG_MAILBOX=y
+CONFIG_OMAP2PLUS_MBOX=y
+CONFIG_OMAP_MBOX_KFIFO_SIZE=256
+CONFIG_BCM2835_MBOX=y
+
+##
+## file: drivers/media/Kconfig
+##
+CONFIG_MEDIA_SUPPORT=y
+CONFIG_MEDIA_CONTROLLER=y
+
+##
+## file: drivers/media/platform/Kconfig
+##
+CONFIG_VIDEO_ASPEED=m
+CONFIG_VIDEO_MUX=m
+CONFIG_VIDEO_OMAP3=m
+CONFIG_VIDEO_CODA=m
+CONFIG_VIDEO_IMX_PXP=m
+CONFIG_VIDEO_TI_VPE=m
+
+##
+## file: drivers/media/platform/marvell-ccic/Kconfig
+##
+CONFIG_VIDEO_MMP_CAMERA=m
+
+##
+## file: drivers/media/platform/omap/Kconfig
+##
+CONFIG_VIDEO_OMAP2_VOUT=m
+
+##
+## file: drivers/media/radio/Kconfig
+##
+CONFIG_RADIO_ADAPTERS=y
+CONFIG_RADIO_SI4713=m
+
+##
+## file: drivers/media/radio/si4713/Kconfig
+##
+CONFIG_I2C_SI4713=m
+
+##
+## file: drivers/media/radio/wl128x/Kconfig
+##
+CONFIG_RADIO_WL128X=m
+
+##
+## file: drivers/media/rc/Kconfig
+##
+CONFIG_IR_GPIO_CIR=m
+CONFIG_IR_SUNXI=m
+
+##
+## file: drivers/media/v4l2-core/Kconfig
+##
+CONFIG_VIDEO_V4L2_SUBDEV_API=y
+
+##
+## file: drivers/memory/Kconfig
+##
+CONFIG_TI_EMIF=m
+
+##
+## file: drivers/memory/tegra/Kconfig
+##
+CONFIG_TEGRA_MC=y
+CONFIG_TEGRA124_EMC=y
+
+##
+## file: drivers/mfd/Kconfig
+##
+CONFIG_MFD_AS3722=y
+CONFIG_MFD_AC100=y
+CONFIG_MFD_AXP20X_I2C=y
+CONFIG_MFD_AXP20X_RSB=y
+# CONFIG_MFD_CROS_EC_DEV is not set
+CONFIG_MFD_DA9052_SPI=y
+CONFIG_MFD_DA9052_I2C=y
+CONFIG_MFD_MC13XXX_SPI=m
+CONFIG_MFD_MC13XXX_I2C=m
+CONFIG_MFD_MAX77686=y
+CONFIG_MFD_RK808=y
+CONFIG_MFD_SEC_CORE=y
+CONFIG_MFD_STMPE=y
+CONFIG_MFD_TI_AM335X_TSCADC=m
+CONFIG_MFD_PALMAS=y
+CONFIG_MFD_TPS65217=m
+CONFIG_TWL4030_CORE=y
+CONFIG_TWL6040_CORE=y
+CONFIG_MFD_STM32_LPTIMER=m
+CONFIG_MFD_STPMIC1=m
+
+##
+## file: drivers/misc/ti-st/Kconfig
+##
+CONFIG_TI_ST=m
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=y
+
+##
+## file: drivers/mmc/core/Kconfig
+##
+CONFIG_PWRSEQ_SD8787=m
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+CONFIG_MMC_ARMMMCI=m
+CONFIG_MMC_SDHCI=m
+CONFIG_MMC_SDHCI_PLTFM=m
+CONFIG_MMC_SDHCI_OF_ASPEED=m
+CONFIG_MMC_SDHCI_ESDHC_IMX=m
+CONFIG_MMC_SDHCI_DOVE=m
+CONFIG_MMC_SDHCI_TEGRA=m
+CONFIG_MMC_SDHCI_S3C=m
+CONFIG_MMC_SDHCI_PXAV3=m
+CONFIG_MMC_SDHCI_IPROC=m
+CONFIG_MMC_MESON_MX_SDIO=m
+CONFIG_MMC_OMAP=m
+CONFIG_MMC_OMAP_HS=m
+CONFIG_MMC_MVSDIO=m
+CONFIG_MMC_SPI=m
+CONFIG_MMC_DW=m
+CONFIG_MMC_DW_EXYNOS=m
+CONFIG_MMC_DW_ROCKCHIP=m
+CONFIG_MMC_WMT=m
+CONFIG_MMC_SUNXI=m
+CONFIG_MMC_BCM2835=m
+CONFIG_MMC_SDHCI_OMAP=m
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_MTD=y
+
+##
+## file: drivers/mtd/nand/onenand/Kconfig
+##
+CONFIG_MTD_ONENAND=y
+CONFIG_MTD_ONENAND_OMAP2=m
+
+##
+## file: drivers/mtd/nand/raw/Kconfig
+##
+CONFIG_MTD_RAW_NAND=y
+CONFIG_MTD_NAND_OMAP2=m
+CONFIG_MTD_NAND_ORION=m
+CONFIG_MTD_NAND_MARVELL=m
+CONFIG_MTD_NAND_GPMI_NAND=m
+CONFIG_MTD_NAND_MXC=m
+CONFIG_MTD_NAND_SUNXI=m
+CONFIG_MTD_NAND_STM32_FMC2=m
+
+##
+## file: drivers/mtd/spi-nor/controllers/Kconfig
+##
+CONFIG_SPI_ASPEED_SMC=m
+
+##
+## file: drivers/mux/Kconfig
+##
+CONFIG_MUX_MMIO=m
+
+##
+## file: drivers/net/can/Kconfig
+##
+CONFIG_CAN_FLEXCAN=m
+CONFIG_CAN_SUN4I=m
+
+##
+## file: drivers/net/can/c_can/Kconfig
+##
+CONFIG_CAN_C_CAN=m
+CONFIG_CAN_C_CAN_PLATFORM=m
+
+##
+## file: drivers/net/dsa/Kconfig
+##
+CONFIG_NET_DSA_BCM_SF2=m
+CONFIG_NET_DSA_MV88E6060=m
+
+##
+## file: drivers/net/dsa/b53/Kconfig
+##
+CONFIG_B53=m
+CONFIG_B53_MDIO_DRIVER=m
+
+##
+## file: drivers/net/dsa/mv88e6xxx/Kconfig
+##
+CONFIG_NET_DSA_MV88E6XXX=m
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+CONFIG_FEALNX=m
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_TYPHOON=m
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_NET_VENDOR_8390=y
+CONFIG_NE2K_PCI=m
+
+##
+## file: drivers/net/ethernet/adaptec/Kconfig
+##
+CONFIG_NET_VENDOR_ADAPTEC=y
+CONFIG_ADAPTEC_STARFIRE=m
+
+##
+## file: drivers/net/ethernet/allwinner/Kconfig
+##
+CONFIG_SUN4I_EMAC=m
+
+##
+## file: drivers/net/ethernet/arc/Kconfig
+##
+CONFIG_EMAC_ROCKCHIP=m
+
+##
+## file: drivers/net/ethernet/calxeda/Kconfig
+##
+CONFIG_NET_CALXEDA_XGMAC=m
+
+##
+## file: drivers/net/ethernet/dec/tulip/Kconfig
+##
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+CONFIG_NET_VENDOR_DLINK=y
+CONFIG_SUNDANCE=m
+# CONFIG_SUNDANCE_MMIO is not set
+
+##
+## file: drivers/net/ethernet/faraday/Kconfig
+##
+CONFIG_FTGMAC100=m
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_NET_VENDOR_INTEL=y
+CONFIG_E100=m
+
+##
+## file: drivers/net/ethernet/marvell/Kconfig
+##
+CONFIG_MV643XX_ETH=m
+CONFIG_MVMDIO=m
+CONFIG_MVNETA=m
+CONFIG_MVPP2=m
+
+##
+## file: drivers/net/ethernet/microchip/Kconfig
+##
+CONFIG_ENC28J60=m
+# CONFIG_ENC28J60_WRITEVERIFY is not set
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_NET_VENDOR_NATSEMI=y
+CONFIG_NATSEMI=m
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_NET_VENDOR_SMSC=y
+CONFIG_SMC91X=m
+CONFIG_EPIC100=m
+CONFIG_SMC911X=m
+CONFIG_SMSC911X=m
+
+##
+## file: drivers/net/ethernet/stmicro/stmmac/Kconfig
+##
+CONFIG_STMMAC_ETH=m
+CONFIG_DWMAC_GENERIC=m
+CONFIG_DWMAC_ROCKCHIP=m
+CONFIG_DWMAC_SOCFPGA=m
+CONFIG_DWMAC_SUNXI=m
+
+##
+## file: drivers/net/ethernet/ti/Kconfig
+##
+CONFIG_TI_DAVINCI_EMAC=m
+CONFIG_TI_DAVINCI_MDIO=m
+CONFIG_TI_CPSW=m
+CONFIG_TI_CPSW_SWITCHDEV=m
+CONFIG_TI_CPTS=y
+
+##
+## file: drivers/net/fddi/Kconfig
+##
+CONFIG_FDDI=y
+CONFIG_SKFP=m
+
+##
+## file: drivers/net/mdio/Kconfig
+##
+CONFIG_MDIO_SUN4I=y
+CONFIG_MDIO_ASPEED=m
+
+##
+## file: drivers/net/wireless/broadcom/brcm80211/brcmfmac/Kconfig
+##
+CONFIG_BRCMFMAC=m
+CONFIG_BRCMFMAC_SDIO=y
+
+##
+## file: drivers/net/wireless/ti/Kconfig
+##
+CONFIG_WLAN_VENDOR_TI=y
+CONFIG_WILINK_PLATFORM_DATA=y
+
+##
+## file: drivers/net/wireless/ti/wl1251/Kconfig
+##
+CONFIG_WL1251=m
+CONFIG_WL1251_SPI=m
+CONFIG_WL1251_SDIO=m
+
+##
+## file: drivers/net/wireless/ti/wl12xx/Kconfig
+##
+CONFIG_WL12XX=m
+
+##
+## file: drivers/net/wireless/ti/wl18xx/Kconfig
+##
+CONFIG_WL18XX=m
+
+##
+## file: drivers/net/wireless/ti/wlcore/Kconfig
+##
+CONFIG_WLCORE_SPI=m
+CONFIG_WLCORE_SDIO=m
+
+##
+## file: drivers/nvmem/Kconfig
+##
+CONFIG_NVMEM_IMX_OCOTP=m
+CONFIG_ROCKCHIP_EFUSE=m
+CONFIG_NVMEM_SUNXI_SID=m
+CONFIG_MESON_MX_EFUSE=m
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+
+##
+## file: drivers/pci/controller/Kconfig
+##
+CONFIG_PCI_MVEBU=y
+CONFIG_PCI_TEGRA=y
+CONFIG_PCI_HOST_GENERIC=y
+
+##
+## file: drivers/pci/controller/dwc/Kconfig
+##
+CONFIG_PCI_DRA7XX_HOST=y
+CONFIG_PCI_IMX6=y
+
+##
+## file: drivers/phy/allwinner/Kconfig
+##
+CONFIG_PHY_SUN4I_USB=m
+CONFIG_PHY_SUN9I_USB=m
+
+##
+## file: drivers/phy/marvell/Kconfig
+##
+CONFIG_PHY_MVEBU_A38X_COMPHY=m
+CONFIG_PHY_PXA_USB=m
+
+##
+## file: drivers/phy/rockchip/Kconfig
+##
+CONFIG_PHY_ROCKCHIP_DP=m
+CONFIG_PHY_ROCKCHIP_EMMC=m
+CONFIG_PHY_ROCKCHIP_INNO_HDMI=m
+CONFIG_PHY_ROCKCHIP_USB=m
+
+##
+## file: drivers/phy/samsung/Kconfig
+##
+CONFIG_PHY_EXYNOS_DP_VIDEO=m
+CONFIG_PHY_EXYNOS_MIPI_VIDEO=m
+CONFIG_PHY_SAMSUNG_USB2=m
+CONFIG_PHY_EXYNOS5_USBDRD=m
+CONFIG_PHY_EXYNOS5250_SATA=m
+
+##
+## file: drivers/phy/st/Kconfig
+##
+CONFIG_PHY_STM32_USBPHYC=m
+
+##
+## file: drivers/phy/tegra/Kconfig
+##
+CONFIG_PHY_TEGRA_XUSB=m
+
+##
+## file: drivers/phy/ti/Kconfig
+##
+CONFIG_OMAP_CONTROL_PHY=m
+CONFIG_OMAP_USB2=m
+CONFIG_TI_PIPE3=y
+CONFIG_TWL4030_USB=m
+
+##
+## file: drivers/pinctrl/Kconfig
+##
+CONFIG_PINCTRL_AS3722=y
+CONFIG_PINCTRL_AXP209=m
+CONFIG_PINCTRL_MCP23S08=m
+CONFIG_PINCTRL_SINGLE=y
+CONFIG_PINCTRL_PALMAS=y
+
+##
+## file: drivers/pinctrl/aspeed/Kconfig
+##
+CONFIG_PINCTRL_ASPEED_G6=y
+
+##
+## file: drivers/pinctrl/vt8500/Kconfig
+##
+CONFIG_PINCTRL_WM8850=y
+
+##
+## file: drivers/platform/chrome/Kconfig
+##
+CONFIG_CHROME_PLATFORMS=y
+CONFIG_CROS_EC=m
+CONFIG_CROS_EC_SPI=m
+
+##
+## file: drivers/platform/olpc/Kconfig
+##
+CONFIG_OLPC_XO175=y
+CONFIG_OLPC_XO175_EC=m
+
+##
+## file: drivers/power/reset/Kconfig
+##
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_AS3722=y
+CONFIG_POWER_RESET_GPIO=y
+CONFIG_POWER_RESET_GPIO_RESTART=y
+CONFIG_POWER_RESET_RESTART=y
+CONFIG_POWER_RESET_SYSCON=y
+CONFIG_POWER_RESET_SYSCON_POWEROFF=y
+
+##
+## file: drivers/power/supply/Kconfig
+##
+CONFIG_BATTERY_OLPC=m
+CONFIG_BATTERY_SBS=m
+CONFIG_BATTERY_BQ27XXX=m
+CONFIG_CHARGER_AXP20X=m
+CONFIG_BATTERY_AXP20X=m
+CONFIG_AXP20X_POWER=m
+CONFIG_AXP288_CHARGER=m
+CONFIG_AXP288_FUEL_GAUGE=m
+CONFIG_BATTERY_TWL4030_MADC=m
+CONFIG_BATTERY_RX51=m
+CONFIG_CHARGER_ISP1704=m
+CONFIG_CHARGER_TWL4030=m
+CONFIG_CHARGER_GPIO=m
+CONFIG_CHARGER_BQ2415X=m
+
+##
+## file: drivers/pwm/Kconfig
+##
+CONFIG_PWM=y
+CONFIG_PWM_BCM2835=m
+CONFIG_PWM_IMX27=m
+CONFIG_PWM_MESON=m
+CONFIG_PWM_OMAP_DMTIMER=m
+CONFIG_PWM_ROCKCHIP=m
+CONFIG_PWM_SAMSUNG=m
+CONFIG_PWM_STM32_LP=m
+CONFIG_PWM_SUN4I=m
+CONFIG_PWM_TEGRA=m
+CONFIG_PWM_TIECAP=m
+CONFIG_PWM_TIEHRPWM=m
+CONFIG_PWM_TWL=m
+CONFIG_PWM_TWL_LED=m
+CONFIG_PWM_VT8500=m
+
+##
+## file: drivers/regulator/Kconfig
+##
+CONFIG_REGULATOR=y
+CONFIG_REGULATOR_ACT8865=m
+CONFIG_REGULATOR_ANATOP=m
+CONFIG_REGULATOR_AS3722=y
+CONFIG_REGULATOR_AXP20X=m
+CONFIG_REGULATOR_DA9052=m
+CONFIG_REGULATOR_FAN53555=m
+CONFIG_REGULATOR_GPIO=m
+CONFIG_REGULATOR_MAX77686=m
+CONFIG_REGULATOR_MC13783=m
+CONFIG_REGULATOR_MC13892=m
+CONFIG_REGULATOR_PALMAS=y
+CONFIG_REGULATOR_PBIAS=m
+CONFIG_REGULATOR_PFUZE100=m
+CONFIG_REGULATOR_RK808=m
+CONFIG_REGULATOR_S2MPA01=m
+CONFIG_REGULATOR_S2MPS11=m
+CONFIG_REGULATOR_S5M8767=m
+CONFIG_REGULATOR_STM32_BOOSTER=m
+CONFIG_REGULATOR_STM32_VREFBUF=m
+CONFIG_REGULATOR_STM32_PWR=y
+CONFIG_REGULATOR_STPMIC1=m
+CONFIG_REGULATOR_TI_ABB=m
+CONFIG_REGULATOR_SY8106A=m
+CONFIG_REGULATOR_TPS65910=m
+CONFIG_REGULATOR_TWL4030=y
+CONFIG_REGULATOR_VEXPRESS=m
+
+##
+## file: drivers/remoteproc/Kconfig
+##
+CONFIG_REMOTEPROC=y
+CONFIG_STM32_RPROC=m
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_AC100=y
+CONFIG_RTC_DRV_AS3722=y
+CONFIG_RTC_DRV_DS1307=y
+CONFIG_RTC_DRV_MAX77686=y
+CONFIG_RTC_DRV_RK808=y
+CONFIG_RTC_DRV_PCF8523=y
+CONFIG_RTC_DRV_PCF8563=y
+CONFIG_RTC_DRV_TWL4030=y
+CONFIG_RTC_DRV_PALMAS=y
+CONFIG_RTC_DRV_S5M=y
+CONFIG_RTC_DRV_DA9052=y
+CONFIG_RTC_DRV_EFI=y
+CONFIG_RTC_DRV_IMXDI=y
+CONFIG_RTC_DRV_OMAP=y
+CONFIG_RTC_DRV_PL030=y
+CONFIG_RTC_DRV_PL031=y
+CONFIG_RTC_DRV_VT8500=y
+CONFIG_RTC_DRV_SUN6I=y
+CONFIG_RTC_DRV_SUNXI=y
+CONFIG_RTC_DRV_MV=y
+CONFIG_RTC_DRV_ARMADA38X=y
+CONFIG_RTC_DRV_MC13XXX=y
+CONFIG_RTC_DRV_TEGRA=y
+CONFIG_RTC_DRV_MXC=y
+CONFIG_RTC_DRV_SNVS=y
+CONFIG_RTC_DRV_STM32=y
+CONFIG_RTC_DRV_ASPEED=m
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_AM53C974=m
+
+##
+## file: drivers/soc/aspeed/Kconfig
+##
+CONFIG_ASPEED_LPC_CTRL=m
+CONFIG_ASPEED_LPC_SNOOP=m
+CONFIG_ASPEED_P2A_CTRL=m
+
+##
+## file: drivers/soc/bcm/Kconfig
+##
+CONFIG_RASPBERRYPI_POWER=y
+
+##
+## file: drivers/soc/rockchip/Kconfig
+##
+CONFIG_ROCKCHIP_IODOMAIN=m
+CONFIG_ROCKCHIP_PM_DOMAINS=y
+
+##
+## file: drivers/soc/tegra/Kconfig
+##
+# CONFIG_ARCH_TEGRA_2x_SOC is not set
+# CONFIG_ARCH_TEGRA_3x_SOC is not set
+# CONFIG_ARCH_TEGRA_114_SOC is not set
+CONFIG_ARCH_TEGRA_124_SOC=y
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI=y
+CONFIG_SPI_BCM2835=m
+CONFIG_SPI_BCM2835AUX=m
+CONFIG_SPI_GPIO=y
+CONFIG_SPI_IMX=m
+CONFIG_SPI_MESON_SPICC=m
+CONFIG_SPI_MESON_SPIFC=m
+CONFIG_SPI_OMAP24XX=m
+CONFIG_SPI_TI_QSPI=m
+CONFIG_SPI_ORION=m
+CONFIG_SPI_PL022=m
+CONFIG_SPI_PXA2XX=m
+CONFIG_SPI_ROCKCHIP=m
+CONFIG_SPI_STM32=m
+CONFIG_SPI_STM32_QSPI=m
+CONFIG_SPI_SUN4I=m
+CONFIG_SPI_SUN6I=m
+CONFIG_SPI_TEGRA114=m
+CONFIG_SPI_TEGRA20_SFLASH=m
+CONFIG_SPI_SLAVE=y
+
+##
+## file: drivers/staging/media/Kconfig
+##
+CONFIG_STAGING_MEDIA=y
+
+##
+## file: drivers/staging/media/imx/Kconfig
+##
+CONFIG_VIDEO_IMX_MEDIA=m
+CONFIG_VIDEO_IMX_CSI=m
+
+##
+## file: drivers/staging/media/sunxi/Kconfig
+##
+CONFIG_VIDEO_SUNXI=y
+
+##
+## file: drivers/staging/media/sunxi/cedrus/Kconfig
+##
+CONFIG_VIDEO_SUNXI_CEDRUS=m
+
+##
+## file: drivers/staging/vc04_services/bcm2835-audio/Kconfig
+##
+CONFIG_SND_BCM2835=m
+
+##
+## file: drivers/staging/vc04_services/bcm2835-camera/Kconfig
+##
+CONFIG_VIDEO_BCM2835=m
+
+##
+## file: drivers/thermal/Kconfig
+##
+CONFIG_IMX_THERMAL=m
+CONFIG_SUN8I_THERMAL=m
+CONFIG_ROCKCHIP_THERMAL=m
+CONFIG_DOVE_THERMAL=m
+CONFIG_ARMADA_THERMAL=y
+
+##
+## file: drivers/thermal/broadcom/Kconfig
+##
+CONFIG_BCM2835_THERMAL=m
+
+##
+## file: drivers/thermal/tegra/Kconfig
+##
+CONFIG_TEGRA_SOCTHERM=y
+
+##
+## file: drivers/thermal/ti-soc-thermal/Kconfig
+##
+CONFIG_TI_SOC_THERMAL=m
+CONFIG_TI_THERMAL=y
+CONFIG_OMAP4_THERMAL=y
+CONFIG_OMAP5_THERMAL=y
+CONFIG_DRA752_THERMAL=y
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_AMBA_PL010=y
+CONFIG_SERIAL_AMBA_PL010_CONSOLE=y
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+CONFIG_SERIAL_MESON=y
+CONFIG_SERIAL_MESON_CONSOLE=y
+CONFIG_SERIAL_SAMSUNG=y
+CONFIG_SERIAL_SAMSUNG_CONSOLE=y
+CONFIG_SERIAL_TEGRA=y
+CONFIG_SERIAL_IMX=y
+CONFIG_SERIAL_IMX_CONSOLE=y
+CONFIG_SERIAL_VT8500=y
+CONFIG_SERIAL_VT8500_CONSOLE=y
+CONFIG_SERIAL_OMAP=y
+CONFIG_SERIAL_OMAP_CONSOLE=y
+CONFIG_SERIAL_ARC=y
+CONFIG_SERIAL_ARC_CONSOLE=y
+CONFIG_SERIAL_ARC_NR_PORTS=1
+CONFIG_SERIAL_STM32=y
+CONFIG_SERIAL_STM32_CONSOLE=y
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_NR_UARTS=5
+CONFIG_SERIAL_8250_RUNTIME_UARTS=5
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_ASPEED_VUART=m
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+CONFIG_SERIAL_8250_BCM2835AUX=y
+CONFIG_SERIAL_8250_DW=y
+# CONFIG_SERIAL_8250_EM is not set
+CONFIG_SERIAL_OF_PLATFORM=y
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=m
+
+##
+## file: drivers/usb/chipidea/Kconfig
+##
+CONFIG_USB_CHIPIDEA=m
+CONFIG_USB_CHIPIDEA_UDC=y
+CONFIG_USB_CHIPIDEA_HOST=y
+
+##
+## file: drivers/usb/dwc2/Kconfig
+##
+CONFIG_USB_DWC2=m
+## choice: DWC2 Mode Selection
+CONFIG_USB_DWC2_DUAL_ROLE=y
+## end choice
+
+##
+## file: drivers/usb/dwc3/Kconfig
+##
+CONFIG_USB_DWC3=m
+## choice: DWC3 Mode Selection
+CONFIG_USB_DWC3_DUAL_ROLE=y
+## end choice
+CONFIG_USB_DWC3_OMAP=m
+CONFIG_USB_DWC3_EXYNOS=m
+# CONFIG_USB_DWC3_PCI is not set
+
+##
+## file: drivers/usb/gadget/Kconfig
+##
+CONFIG_USB_GADGET=m
+
+##
+## file: drivers/usb/gadget/legacy/Kconfig
+##
+CONFIG_USB_G_NOKIA=m
+
+##
+## file: drivers/usb/gadget/udc/aspeed-vhub/Kconfig
+##
+CONFIG_USB_ASPEED_VHUB=m
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_XHCI_MVEBU=m
+CONFIG_USB_XHCI_TEGRA=m
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_EHCI_MXC=m
+CONFIG_USB_EHCI_HCD_OMAP=y
+CONFIG_USB_EHCI_TEGRA=m
+CONFIG_USB_EHCI_EXYNOS=m
+CONFIG_USB_EHCI_MV=m
+CONFIG_USB_EHCI_HCD_PLATFORM=m
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_OHCI_HCD_OMAP3=y
+CONFIG_USB_OHCI_EXYNOS=m
+CONFIG_USB_OHCI_HCD_PLATFORM=m
+
+##
+## file: drivers/usb/misc/Kconfig
+##
+CONFIG_USB_HSIC_USB3503=m
+
+##
+## file: drivers/usb/musb/Kconfig
+##
+CONFIG_USB_MUSB_HDRC=m
+## choice: MUSB Mode Selection
+# CONFIG_USB_MUSB_HOST is not set
+# CONFIG_USB_MUSB_GADGET is not set
+CONFIG_USB_MUSB_DUAL_ROLE=y
+## end choice
+CONFIG_USB_MUSB_SUNXI=m
+CONFIG_USB_MUSB_TUSB6010=m
+CONFIG_USB_MUSB_OMAP2PLUS=m
+CONFIG_USB_MUSB_AM35X=m
+CONFIG_USB_MUSB_DSPS=m
+# CONFIG_MUSB_PIO_ONLY is not set
+CONFIG_USB_INVENTRA_DMA=y
+CONFIG_USB_TI_CPPI41_DMA=y
+CONFIG_USB_TUSB_OMAP_DMA=y
+
+##
+## file: drivers/usb/phy/Kconfig
+##
+CONFIG_NOP_USB_XCEIV=m
+CONFIG_AM335X_PHY_USB=m
+CONFIG_TWL6030_USB=m
+CONFIG_USB_MXS_PHY=m
+
+##
+## file: drivers/video/backlight/Kconfig
+##
+CONFIG_BACKLIGHT_PANDORA=m
+CONFIG_BACKLIGHT_GPIO=m
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_ARMCLCD=y
+CONFIG_FB_EFI=y
+CONFIG_FB_VT8500=y
+CONFIG_FB_WM8505=y
+CONFIG_FB_SIMPLE=y
+
+##
+## file: drivers/video/fbdev/omap2/omapfb/Kconfig
+##
+#. Redundant and conflicting with DRM_OMAP
+# CONFIG_FB_OMAP2 is not set
+
+##
+## file: drivers/virtio/Kconfig
+##
+CONFIG_VIRTIO_MMIO=m
+
+##
+## file: drivers/w1/masters/Kconfig
+##
+CONFIG_HDQ_MASTER_OMAP=m
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_DA9052_WATCHDOG=m
+CONFIG_ARM_SP805_WATCHDOG=m
+CONFIG_S3C2410_WATCHDOG=m
+CONFIG_DW_WATCHDOG=m
+CONFIG_OMAP_WATCHDOG=m
+CONFIG_ORION_WATCHDOG=m
+CONFIG_SUNXI_WATCHDOG=m
+CONFIG_TWL4030_WATCHDOG=m
+CONFIG_IMX2_WDT=m
+CONFIG_TEGRA_WATCHDOG=m
+CONFIG_MESON_WATCHDOG=m
+CONFIG_STPMIC1_WATCHDOG=m
+CONFIG_BCM2835_WDT=m
+
+##
+## file: kernel/dma/Kconfig
+##
+CONFIG_DMA_CMA=y
+
+##
+## file: kernel/power/Kconfig
+##
+CONFIG_SUSPEND=y
+CONFIG_APM_EMULATION=y
+CONFIG_ENERGY_MODEL=y
+
+##
+## file: mm/Kconfig
+##
+CONFIG_CMA=y
+
+##
+## file: net/dsa/Kconfig
+##
+CONFIG_NET_DSA=m
+
+##
+## file: net/ncsi/Kconfig
+##
+CONFIG_NET_NCSI=y
+
+##
+## file: net/phonet/Kconfig
+##
+CONFIG_PHONET=m
+
+##
+## file: sound/pci/hda/Kconfig
+##
+CONFIG_SND_HDA_TEGRA=m
+
+##
+## file: sound/soc/Kconfig
+##
+CONFIG_SND_SOC=m
+
+##
+## file: sound/soc/bcm/Kconfig
+##
+CONFIG_SND_BCM2835_SOC_I2S=m
+
+##
+## file: sound/soc/codecs/Kconfig
+##
+CONFIG_SND_SOC_CS42L51_I2C=m
+CONFIG_SND_SOC_SPDIF=y
+
+##
+## file: sound/soc/fsl/Kconfig
+##
+CONFIG_SND_IMX_SOC=m
+CONFIG_SND_SOC_EUKREA_TLV320=m
+CONFIG_SND_SOC_IMX_ES8328=m
+CONFIG_SND_SOC_IMX_SGTL5000=m
+CONFIG_SND_SOC_IMX_SPDIF=m
+CONFIG_SND_SOC_IMX_MC13783=m
+
+##
+## file: sound/soc/generic/Kconfig
+##
+CONFIG_SND_SIMPLE_CARD=m
+CONFIG_SND_AUDIO_GRAPH_CARD=m
+
+##
+## file: sound/soc/kirkwood/Kconfig
+##
+CONFIG_SND_KIRKWOOD_SOC=m
+
+##
+## file: sound/soc/rockchip/Kconfig
+##
+CONFIG_SND_SOC_ROCKCHIP=m
+CONFIG_SND_SOC_ROCKCHIP_I2S=m
+CONFIG_SND_SOC_ROCKCHIP_SPDIF=m
+CONFIG_SND_SOC_ROCKCHIP_MAX98090=m
+CONFIG_SND_SOC_ROCKCHIP_RT5645=m
+
+##
+## file: sound/soc/stm/Kconfig
+##
+CONFIG_SND_SOC_STM32_SAI=m
+CONFIG_SND_SOC_STM32_I2S=m
+CONFIG_SND_SOC_STM32_SPDIFRX=m
+CONFIG_SND_SOC_STM32_DFSDM=m
+
+##
+## file: sound/soc/sunxi/Kconfig
+##
+CONFIG_SND_SUN4I_CODEC=m
+CONFIG_SND_SUN8I_CODEC=m
+CONFIG_SND_SUN8I_CODEC_ANALOG=m
+CONFIG_SND_SUN4I_SPDIF=m
+
+##
+## file: sound/soc/tegra/Kconfig
+##
+CONFIG_SND_SOC_TEGRA=m
+CONFIG_SND_SOC_TEGRA_RT5640=m
+CONFIG_SND_SOC_TEGRA_WM8753=m
+CONFIG_SND_SOC_TEGRA_WM8903=m
+CONFIG_SND_SOC_TEGRA_TRIMSLICE=m
+CONFIG_SND_SOC_TEGRA_ALC5632=m
+CONFIG_SND_SOC_TEGRA_MAX98090=m
+CONFIG_SND_SOC_TEGRA_RT5677=m
+
+##
+## file: sound/soc/ti/Kconfig
+##
+CONFIG_SND_SOC_DAVINCI_MCASP=m
+CONFIG_SND_SOC_NOKIA_RX51=m
+CONFIG_SND_SOC_OMAP3_PANDORA=m
+CONFIG_SND_SOC_OMAP3_TWL4030=m
+CONFIG_SND_SOC_OMAP_ABE_TWL6040=m
+
diff --git a/debian/config/armhf/config.armmp-lpae b/debian/config/armhf/config.armmp-lpae
new file mode 100644
index 000000000..6eaad12bd
--- /dev/null
+++ b/debian/config/armhf/config.armmp-lpae
@@ -0,0 +1,15 @@
+##
+## file: arch/arm/Kconfig
+##
+CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8
+
+##
+## file: arch/arm/mm/Kconfig
+##
+CONFIG_ARM_LPAE=y
+
+##
+## file: drivers/iommu/Kconfig
+##
+CONFIG_ARM_SMMU=y
+
diff --git a/debian/config/armhf/defines b/debian/config/armhf/defines
new file mode 100644
index 000000000..1050d8212
--- /dev/null
+++ b/debian/config/armhf/defines
@@ -0,0 +1,27 @@
+[base]
+featuresets:
+ none
+ rt
+kernel-arch: arm
+
+[build]
+image-file: arch/arm/boot/zImage
+vdso: true
+
+[image]
+install-stem: vmlinuz
+
+[relations]
+headers%gcc-10: linux-compiler-gcc-10-arm
+
+[armmp_description]
+hardware: ARMv7 multiplatform compatible SoCs
+hardware-long: ARMv7 multiplatform kernel. See
+ https://wiki.debian.org/DebianKernel/ARMMP for details of supported
+ platforms
+
+[armmp-lpae_description]
+hardware: ARMv7 multiplatform compatible SoCs supporting LPAE
+hardware-long: ARMv7 multiplatform kernel supporting LPAE. See
+ https://wiki.debian.org/DebianKernel/ARMMP for details of supported
+ platforms.
diff --git a/debian/config/armhf/none/defines b/debian/config/armhf/none/defines
new file mode 100644
index 000000000..8a3c95b20
--- /dev/null
+++ b/debian/config/armhf/none/defines
@@ -0,0 +1,5 @@
+[base]
+flavours:
+ armmp
+ armmp-lpae
+default-flavour: armmp
diff --git a/debian/config/armhf/rt/defines b/debian/config/armhf/rt/defines
new file mode 100644
index 000000000..897e415f8
--- /dev/null
+++ b/debian/config/armhf/rt/defines
@@ -0,0 +1,3 @@
+[base]
+flavours:
+ armmp
diff --git a/debian/config/config b/debian/config/config
new file mode 100644
index 000000000..aac879436
--- /dev/null
+++ b/debian/config/config
@@ -0,0 +1,8176 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_OPROFILE=m
+CONFIG_KPROBES=y
+CONFIG_JUMP_LABEL=y
+# CONFIG_STATIC_KEYS_SELFTEST is not set
+CONFIG_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_VMAP_STACK=y
+CONFIG_STRICT_KERNEL_RWX=y
+CONFIG_STRICT_MODULE_RWX=y
+
+##
+## file: block/Kconfig
+##
+CONFIG_BLOCK=y
+CONFIG_BLK_DEV_BSG=y
+CONFIG_BLK_DEV_INTEGRITY=y
+CONFIG_BLK_DEV_ZONED=y
+CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_THROTTLING_LOW is not set
+# CONFIG_BLK_CMDLINE_PARSER is not set
+CONFIG_BLK_WBT=y
+# CONFIG_BLK_CGROUP_IOLATENCY is not set
+CONFIG_BLK_CGROUP_IOCOST=y
+CONFIG_BLK_WBT_MQ=y
+CONFIG_BLK_DEBUG_FS=y
+CONFIG_BLK_SED_OPAL=y
+
+##
+## file: block/Kconfig.iosched
+##
+CONFIG_MQ_IOSCHED_DEADLINE=y
+CONFIG_MQ_IOSCHED_KYBER=m
+CONFIG_IOSCHED_BFQ=m
+CONFIG_BFQ_GROUP_IOSCHED=y
+# CONFIG_BFQ_CGROUP_DEBUG is not set
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_PARTITION_ADVANCED=y
+# CONFIG_ACORN_PARTITION is not set
+# CONFIG_AIX_PARTITION is not set
+# CONFIG_OSF_PARTITION is not set
+# CONFIG_AMIGA_PARTITION is not set
+# CONFIG_ATARI_PARTITION is not set
+# CONFIG_MAC_PARTITION is not set
+CONFIG_MSDOS_PARTITION=y
+# CONFIG_BSD_DISKLABEL is not set
+# CONFIG_MINIX_SUBPARTITION is not set
+# CONFIG_SOLARIS_X86_PARTITION is not set
+# CONFIG_UNIXWARE_DISKLABEL is not set
+# CONFIG_LDM_PARTITION is not set
+# CONFIG_SGI_PARTITION is not set
+# CONFIG_ULTRIX_PARTITION is not set
+# CONFIG_SUN_PARTITION is not set
+CONFIG_KARMA_PARTITION=y
+CONFIG_EFI_PARTITION=y
+# CONFIG_SYSV68_PARTITION is not set
+# CONFIG_CMDLINE_PARTITION is not set
+
+##
+## file: certs/Kconfig
+##
+#. Signatures are added in linux-signed
+CONFIG_MODULE_SIG_KEY=""
+#. Actually a file containing X.509 certificates, not keys.
+#. Whenever the filename changes, this also needs to be updated in
+#. debian/featureset-*/config
+CONFIG_SYSTEM_TRUSTED_KEYS="debian/certs/debian-uefi-certs.pem"
+#. Add secondary keyring with keys from UEFI db and MOK.
+CONFIG_SECONDARY_TRUSTED_KEYRING=y
+CONFIG_SYSTEM_BLACKLIST_KEYRING=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO=y
+CONFIG_CRYPTO_FIPS=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_USER=m
+# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set
+CONFIG_CRYPTO_NULL=m
+CONFIG_CRYPTO_PCRYPT=m
+# CONFIG_CRYPTO_CRYPTD is not set
+CONFIG_CRYPTO_AUTHENC=m
+CONFIG_CRYPTO_TEST=m
+CONFIG_CRYPTO_RSA=m
+CONFIG_CRYPTO_DH=m
+CONFIG_CRYPTO_ECDH=m
+CONFIG_CRYPTO_ECRDSA=m
+# CONFIG_CRYPTO_SM2 is not set
+CONFIG_CRYPTO_CURVE25519=m
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_CHACHA20POLY1305=m
+CONFIG_CRYPTO_AEGIS128=m
+CONFIG_CRYPTO_SEQIV=m
+CONFIG_CRYPTO_ECHAINIV=m
+CONFIG_CRYPTO_CBC=m
+CONFIG_CRYPTO_CFB=m
+CONFIG_CRYPTO_CTR=m
+CONFIG_CRYPTO_CTS=m
+CONFIG_CRYPTO_ECB=m
+CONFIG_CRYPTO_LRW=m
+CONFIG_CRYPTO_OFB=m
+CONFIG_CRYPTO_PCBC=m
+CONFIG_CRYPTO_XTS=m
+CONFIG_CRYPTO_KEYWRAP=m
+CONFIG_CRYPTO_ADIANTUM=m
+CONFIG_CRYPTO_CMAC=m
+CONFIG_CRYPTO_HMAC=m
+CONFIG_CRYPTO_XCBC=m
+CONFIG_CRYPTO_VMAC=m
+CONFIG_CRYPTO_CRC32C=m
+CONFIG_CRYPTO_CRC32=m
+CONFIG_CRYPTO_BLAKE2S=m
+CONFIG_CRYPTO_CRCT10DIF=m
+CONFIG_CRYPTO_GHASH=m
+CONFIG_CRYPTO_POLY1305=m
+CONFIG_CRYPTO_MD4=m
+CONFIG_CRYPTO_MD5=y
+CONFIG_CRYPTO_MICHAEL_MIC=m
+CONFIG_CRYPTO_RMD128=m
+CONFIG_CRYPTO_RMD160=m
+CONFIG_CRYPTO_RMD256=m
+CONFIG_CRYPTO_RMD320=m
+CONFIG_CRYPTO_SHA1=m
+#. Must be built-in for IMA_DEFAULT_HASH_SHA256
+CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_SHA512=m
+CONFIG_CRYPTO_SHA3=m
+# CONFIG_CRYPTO_SM3 is not set
+CONFIG_CRYPTO_TGR192=m
+CONFIG_CRYPTO_WP512=m
+CONFIG_CRYPTO_AES=m
+CONFIG_CRYPTO_AES_TI=m
+CONFIG_CRYPTO_ANUBIS=m
+CONFIG_CRYPTO_ARC4=m
+CONFIG_CRYPTO_BLOWFISH=m
+CONFIG_CRYPTO_CAMELLIA=m
+CONFIG_CRYPTO_CAST5=m
+CONFIG_CRYPTO_CAST6=m
+CONFIG_CRYPTO_DES=m
+CONFIG_CRYPTO_FCRYPT=m
+CONFIG_CRYPTO_KHAZAD=m
+CONFIG_CRYPTO_SALSA20=m
+CONFIG_CRYPTO_CHACHA20=m
+CONFIG_CRYPTO_SEED=m
+CONFIG_CRYPTO_SERPENT=m
+# CONFIG_CRYPTO_SM4 is not set
+CONFIG_CRYPTO_TEA=m
+CONFIG_CRYPTO_TWOFISH=m
+CONFIG_CRYPTO_DEFLATE=m
+CONFIG_CRYPTO_LZO=m
+# CONFIG_CRYPTO_842 is not set
+CONFIG_CRYPTO_LZ4=m
+CONFIG_CRYPTO_LZ4HC=m
+CONFIG_CRYPTO_ZSTD=m
+CONFIG_CRYPTO_ANSI_CPRNG=m
+CONFIG_CRYPTO_DRBG_MENU=m
+CONFIG_CRYPTO_DRBG_HASH=y
+CONFIG_CRYPTO_DRBG_CTR=y
+CONFIG_CRYPTO_JITTERENTROPY=m
+CONFIG_CRYPTO_USER_API_HASH=m
+CONFIG_CRYPTO_USER_API_SKCIPHER=m
+CONFIG_CRYPTO_USER_API_RNG=m
+CONFIG_CRYPTO_USER_API_AEAD=m
+# CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE is not set
+
+##
+## file: crypto/asymmetric_keys/Kconfig
+##
+CONFIG_ASYMMETRIC_KEY_TYPE=y
+CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
+CONFIG_PKCS8_PRIVATE_KEY_PARSER=m
+
+##
+## file: drivers/accessibility/Kconfig
+##
+CONFIG_ACCESSIBILITY=y
+CONFIG_A11Y_BRAILLE_CONSOLE=y
+
+##
+## file: drivers/accessibility/speakup/Kconfig
+##
+CONFIG_SPEAKUP=m
+CONFIG_SPEAKUP_SYNTH_ACNTSA=m
+CONFIG_SPEAKUP_SYNTH_ACNTPC=m
+CONFIG_SPEAKUP_SYNTH_APOLLO=m
+CONFIG_SPEAKUP_SYNTH_AUDPTR=m
+CONFIG_SPEAKUP_SYNTH_BNS=m
+CONFIG_SPEAKUP_SYNTH_DECTLK=m
+CONFIG_SPEAKUP_SYNTH_DECEXT=m
+CONFIG_SPEAKUP_SYNTH_DTLK=m
+CONFIG_SPEAKUP_SYNTH_KEYPC=m
+CONFIG_SPEAKUP_SYNTH_LTLK=m
+CONFIG_SPEAKUP_SYNTH_SOFT=m
+CONFIG_SPEAKUP_SYNTH_SPKOUT=m
+CONFIG_SPEAKUP_SYNTH_TXPRT=m
+CONFIG_SPEAKUP_SYNTH_DUMMY=m
+
+##
+## file: drivers/acpi/Kconfig
+##
+# CONFIG_ACPI_DEBUGGER is not set
+CONFIG_ACPI_TAD=m
+CONFIG_ACPI_TABLE_UPGRADE=y
+# CONFIG_ACPI_BGRT is not set
+# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set
+# CONFIG_ACPI_CONFIGFS is not set
+
+##
+## file: drivers/acpi/nfit/Kconfig
+##
+CONFIG_ACPI_NFIT=m
+
+##
+## file: drivers/acpi/numa/Kconfig
+##
+CONFIG_ACPI_HMAT=y
+
+##
+## file: drivers/acpi/pmic/Kconfig
+##
+# CONFIG_PMIC_OPREGION is not set
+
+##
+## file: drivers/android/Kconfig
+##
+# CONFIG_ANDROID is not set
+CONFIG_ANDROID_BINDER_IPC=m
+#. This configuration should support Anbox
+CONFIG_ANDROID_BINDER_DEVICES="binder"
+# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_ATA=m
+CONFIG_ATA_VERBOSE_ERROR=y
+CONFIG_ATA_ACPI=y
+CONFIG_SATA_ZPODD=y
+CONFIG_SATA_PMP=y
+CONFIG_SATA_AHCI=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
+# CONFIG_SATA_AHCI_PLATFORM is not set
+# CONFIG_AHCI_CEVA is not set
+# CONFIG_AHCI_QORIQ is not set
+#. This driver loses data (#714295)
+# CONFIG_SATA_INIC162X is not set
+CONFIG_SATA_ACARD_AHCI=m
+CONFIG_SATA_SIL24=m
+CONFIG_ATA_SFF=y
+CONFIG_PDC_ADMA=m
+CONFIG_SATA_QSTOR=m
+CONFIG_SATA_SX4=m
+CONFIG_ATA_BMDMA=y
+CONFIG_ATA_PIIX=m
+# CONFIG_SATA_DWC is not set
+# CONFIG_SATA_HIGHBANK is not set
+CONFIG_SATA_MV=m
+CONFIG_SATA_NV=m
+CONFIG_SATA_PROMISE=m
+# CONFIG_SATA_RCAR is not set
+CONFIG_SATA_SIL=m
+CONFIG_SATA_SIS=m
+CONFIG_SATA_SVW=m
+CONFIG_SATA_ULI=m
+CONFIG_SATA_VIA=m
+CONFIG_SATA_VITESSE=m
+# CONFIG_PATA_ALI is not set
+# CONFIG_PATA_AMD is not set
+# CONFIG_PATA_ARASAN_CF is not set
+CONFIG_PATA_ARTOP=m
+# CONFIG_PATA_ATIIXP is not set
+CONFIG_PATA_ATP867X=m
+CONFIG_PATA_CMD64X=m
+# CONFIG_PATA_CS5536 is not set
+# CONFIG_PATA_CYPRESS is not set
+# CONFIG_PATA_EFAR is not set
+# CONFIG_PATA_HPT366 is not set
+# CONFIG_PATA_HPT37X is not set
+# CONFIG_PATA_HPT3X2N is not set
+# CONFIG_PATA_HPT3X3 is not set
+CONFIG_PATA_IT8213=m
+CONFIG_PATA_IT821X=m
+CONFIG_PATA_JMICRON=m
+CONFIG_PATA_MARVELL=m
+# CONFIG_PATA_NETCELL is not set
+CONFIG_PATA_NINJA32=m
+# CONFIG_PATA_NS87415 is not set
+# CONFIG_PATA_OLDPIIX is not set
+# CONFIG_PATA_OPTIDMA is not set
+# CONFIG_PATA_PDC2027X is not set
+# CONFIG_PATA_PDC_OLD is not set
+# CONFIG_PATA_RADISYS is not set
+CONFIG_PATA_RDC=m
+CONFIG_PATA_SCH=m
+# CONFIG_PATA_SERVERWORKS is not set
+# CONFIG_PATA_SIL680 is not set
+CONFIG_PATA_SIS=m
+CONFIG_PATA_TOSHIBA=m
+# CONFIG_PATA_TRIFLEX is not set
+# CONFIG_PATA_VIA is not set
+# CONFIG_PATA_WINBOND is not set
+# CONFIG_PATA_CMD640_PCI is not set
+# CONFIG_PATA_ISAPNP is not set
+# CONFIG_PATA_MPIIX is not set
+# CONFIG_PATA_NS87410 is not set
+# CONFIG_PATA_OPTI is not set
+# CONFIG_PATA_PCMCIA is not set
+# CONFIG_PATA_PLATFORM is not set
+# CONFIG_PATA_QDI is not set
+# CONFIG_PATA_RZ1000 is not set
+# CONFIG_PATA_WINBOND_VLB is not set
+# CONFIG_PATA_ACPI is not set
+CONFIG_ATA_GENERIC=m
+# CONFIG_PATA_LEGACY is not set
+
+##
+## file: drivers/atm/Kconfig
+##
+CONFIG_ATM_DUMMY=m
+CONFIG_ATM_NICSTAR=m
+CONFIG_ATM_NICSTAR_USE_SUNI=y
+CONFIG_ATM_NICSTAR_USE_IDT77105=y
+CONFIG_ATM_IA=m
+# CONFIG_ATM_IA_DEBUG is not set
+CONFIG_ATM_FORE200E=m
+CONFIG_ATM_SOLOS=m
+
+##
+## file: drivers/auxdisplay/Kconfig
+##
+# CONFIG_AUXDISPLAY is not set
+# CONFIG_PANEL is not set
+
+##
+## file: drivers/base/Kconfig
+##
+# CONFIG_UEVENT_HELPER is not set
+CONFIG_DEVTMPFS=y
+# CONFIG_DEVTMPFS_MOUNT is not set
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+CONFIG_ALLOW_DEV_COREDUMP=y
+# CONFIG_DEBUG_DRIVER is not set
+# CONFIG_DEBUG_DEVRES is not set
+# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
+# CONFIG_DMA_FENCE_TRACE is not set
+
+##
+## file: drivers/base/firmware_loader/Kconfig
+##
+CONFIG_FW_LOADER=y
+CONFIG_EXTRA_FIRMWARE=""
+# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set
+
+##
+## file: drivers/base/test/Kconfig
+##
+# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
+
+##
+## file: drivers/bcma/Kconfig
+##
+CONFIG_BCMA=m
+CONFIG_BCMA_HOST_PCI=y
+# CONFIG_BCMA_HOST_SOC is not set
+# CONFIG_BCMA_DRIVER_PCI_HOSTMODE is not set
+# CONFIG_BCMA_DRIVER_GMAC_CMN is not set
+# CONFIG_BCMA_DRIVER_GPIO is not set
+# CONFIG_BCMA_DEBUG is not set
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV=y
+CONFIG_BLK_DEV_NULL_BLK=m
+# CONFIG_PARIDE is not set
+CONFIG_BLK_DEV_LOOP=m
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
+# CONFIG_BLK_DEV_CRYPTOLOOP is not set
+CONFIG_BLK_DEV_NBD=m
+CONFIG_BLK_DEV_SKD=m
+CONFIG_BLK_DEV_RAM=m
+CONFIG_BLK_DEV_RAM_COUNT=16
+CONFIG_BLK_DEV_RAM_SIZE=16384
+CONFIG_ATA_OVER_ETH=m
+CONFIG_XEN_BLKDEV_FRONTEND=m
+CONFIG_XEN_BLKDEV_BACKEND=m
+CONFIG_VIRTIO_BLK=m
+CONFIG_BLK_DEV_RBD=m
+# CONFIG_BLK_DEV_RSXX is not set
+
+##
+## file: drivers/block/drbd/Kconfig
+##
+CONFIG_BLK_DEV_DRBD=m
+# CONFIG_DRBD_FAULT_INJECTION is not set
+
+##
+## file: drivers/block/mtip32xx/Kconfig
+##
+CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m
+
+##
+## file: drivers/block/zram/Kconfig
+##
+CONFIG_ZRAM=m
+CONFIG_ZRAM_WRITEBACK=y
+CONFIG_ZRAM_MEMORY_TRACKING=y
+
+##
+## file: drivers/bluetooth/Kconfig
+##
+CONFIG_BT_HCIBTUSB=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
+CONFIG_BT_HCIBTUSB_BCM=y
+CONFIG_BT_HCIBTUSB_RTL=y
+CONFIG_BT_HCIBTSDIO=m
+CONFIG_BT_HCIUART_NOKIA=m
+CONFIG_BT_HCIUART_ATH3K=y
+CONFIG_BT_HCIUART_LL=y
+CONFIG_BT_HCIUART_3WIRE=y
+CONFIG_BT_HCIUART_INTEL=y
+CONFIG_BT_HCIUART_BCM=y
+CONFIG_BT_HCIUART_RTL=y
+CONFIG_BT_HCIUART_QCA=y
+CONFIG_BT_HCIUART_AG6XX=y
+CONFIG_BT_HCIUART_MRVL=y
+CONFIG_BT_MRVL=m
+CONFIG_BT_MRVL_SDIO=m
+CONFIG_BT_ATH3K=m
+CONFIG_BT_MTKUART=m
+
+##
+## file: drivers/bus/Kconfig
+##
+# CONFIG_OMAP_OCP2SCP is not set
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_TTY_PRINTK=m
+CONFIG_VIRTIO_CONSOLE=m
+# CONFIG_R3964 is not set
+CONFIG_PC8736x_GPIO=m
+CONFIG_NSC_GPIO=m
+CONFIG_DEVMEM=y
+# CONFIG_DEVKMEM is not set
+# CONFIG_RAW_DRIVER is not set
+CONFIG_DEVPORT=y
+CONFIG_HANGCHECK_TIMER=m
+CONFIG_TELCLOCK=m
+CONFIG_RANDOM_TRUST_CPU=y
+CONFIG_RANDOM_TRUST_BOOTLOADER=y
+
+##
+## file: drivers/char/hw_random/Kconfig
+##
+CONFIG_HW_RANDOM=m
+# CONFIG_HW_RANDOM_TIMERIOMEM is not set
+CONFIG_HW_RANDOM_VIRTIO=m
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+CONFIG_IPMI_SSIF=m
+
+##
+## file: drivers/char/pcmcia/Kconfig
+##
+CONFIG_SYNCLINK_CS=m
+CONFIG_CARDMAN_4000=m
+CONFIG_CARDMAN_4040=m
+CONFIG_SCR24X=m
+CONFIG_IPWIRELESS=m
+
+##
+## file: drivers/char/tpm/Kconfig
+##
+CONFIG_HW_RANDOM_TPM=y
+CONFIG_TCG_TIS_SPI=m
+CONFIG_TCG_VTPM_PROXY=m
+
+##
+## file: drivers/char/tpm/st33zp24/Kconfig
+##
+# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
+
+##
+## file: drivers/char/xillybus/Kconfig
+##
+# CONFIG_XILLYBUS is not set
+
+##
+## file: drivers/clk/Kconfig
+##
+# CONFIG_COMMON_CLK_SI5351 is not set
+# CONFIG_COMMON_CLK_SI514 is not set
+# CONFIG_COMMON_CLK_SI570 is not set
+# CONFIG_COMMON_CLK_CDCE706 is not set
+# CONFIG_COMMON_CLK_CDCE925 is not set
+# CONFIG_COMMON_CLK_CS2000_CP is not set
+
+##
+## file: drivers/connector/Kconfig
+##
+CONFIG_CONNECTOR=y
+CONFIG_PROC_EVENTS=y
+
+##
+## file: drivers/cpufreq/Kconfig
+##
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_STAT=y
+## choice: Default CPUFreq governor
+CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
+## end choice
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=m
+CONFIG_CPU_FREQ_GOV_USERSPACE=m
+CONFIG_CPU_FREQ_GOV_ONDEMAND=m
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
+CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
+# CONFIG_CPUFREQ_DT is not set
+
+##
+## file: drivers/cpuidle/Kconfig
+##
+CONFIG_CPU_IDLE_GOV_LADDER=y
+CONFIG_CPU_IDLE_GOV_MENU=y
+
+##
+## file: drivers/crypto/Kconfig
+##
+CONFIG_CRYPTO_HW=y
+CONFIG_CRYPTO_DEV_HIFN_795X=m
+CONFIG_CRYPTO_DEV_HIFN_795X_RNG=y
+
+##
+## file: drivers/crypto/chelsio/Kconfig
+##
+CONFIG_CRYPTO_DEV_CHELSIO=m
+
+##
+## file: drivers/crypto/virtio/Kconfig
+##
+CONFIG_CRYPTO_DEV_VIRTIO=m
+
+##
+## file: drivers/dax/Kconfig
+##
+CONFIG_DEV_DAX=m
+CONFIG_DEV_DAX_PMEM=m
+
+##
+## file: drivers/devfreq/Kconfig
+##
+# CONFIG_PM_DEVFREQ is not set
+CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m
+# CONFIG_DEVFREQ_GOV_PERFORMANCE is not set
+# CONFIG_DEVFREQ_GOV_POWERSAVE is not set
+# CONFIG_DEVFREQ_GOV_USERSPACE is not set
+
+##
+## file: drivers/devfreq/event/Kconfig
+##
+# CONFIG_PM_DEVFREQ_EVENT is not set
+
+##
+## file: drivers/dma/Kconfig
+##
+# CONFIG_DMADEVICES_DEBUG is not set
+# CONFIG_FSL_EDMA is not set
+# CONFIG_INTEL_IDMA64 is not set
+CONFIG_ASYNC_TX_DMA=y
+# CONFIG_DMATEST is not set
+
+##
+## file: drivers/dma/dw/Kconfig
+##
+# CONFIG_DW_DMAC is not set
+# CONFIG_DW_DMAC_PCI is not set
+
+##
+## file: drivers/dma-buf/Kconfig
+##
+# CONFIG_SYNC_FILE is not set
+
+##
+## file: drivers/edac/Kconfig
+##
+CONFIG_EDAC_LEGACY_SYSFS=y
+
+##
+## file: drivers/extcon/Kconfig
+##
+# CONFIG_EXTCON is not set
+# CONFIG_EXTCON_FSA9480 is not set
+
+##
+## file: drivers/firewire/Kconfig
+##
+CONFIG_FIREWIRE=m
+CONFIG_FIREWIRE_OHCI=m
+CONFIG_FIREWIRE_SBP2=m
+CONFIG_FIREWIRE_NET=m
+CONFIG_FIREWIRE_NOSY=m
+
+##
+## file: drivers/firmware/Kconfig
+##
+CONFIG_DMI_SYSFS=y
+CONFIG_FW_CFG_SYSFS=m
+#. Needs to be disabled under Secure Boot - but should be done at run-time
+# CONFIG_FW_CFG_SYSFS_CMDLINE is not set
+
+##
+## file: drivers/firmware/efi/Kconfig
+##
+CONFIG_EFI_VARS_PSTORE=m
+# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set
+CONFIG_EFI_SOFT_RESERVE=y
+CONFIG_EFI_BOOTLOADER_CONTROL=m
+CONFIG_EFI_CAPSULE_LOADER=m
+# CONFIG_EFI_TEST is not set
+CONFIG_RESET_ATTACK_MITIGATION=y
+
+##
+## file: drivers/firmware/google/Kconfig
+##
+CONFIG_GOOGLE_FIRMWARE=y
+CONFIG_GOOGLE_COREBOOT_TABLE=m
+CONFIG_GOOGLE_MEMCONSOLE_COREBOOT=m
+
+##
+## file: drivers/fpga/Kconfig
+##
+# CONFIG_FPGA is not set
+
+##
+## file: drivers/gnss/Kconfig
+##
+CONFIG_GNSS=m
+CONFIG_GNSS_SIRF_SERIAL=m
+CONFIG_GNSS_UBX_SERIAL=m
+
+##
+## file: drivers/gpio/Kconfig
+##
+# CONFIG_GPIOLIB is not set
+# CONFIG_DEBUG_GPIO is not set
+CONFIG_GPIO_SYSFS=y
+# CONFIG_GPIO_74XX_MMIO is not set
+# CONFIG_GPIO_ALTERA is not set
+# CONFIG_GPIO_AMDPT is not set
+# CONFIG_GPIO_DWAPB is not set
+CONFIG_GPIO_EXAR=m
+# CONFIG_GPIO_GENERIC_PLATFORM is not set
+# CONFIG_GPIO_GRGPIO is not set
+# CONFIG_GPIO_MB86S7X is not set
+# CONFIG_GPIO_VX855 is not set
+# CONFIG_GPIO_XILINX is not set
+# CONFIG_GPIO_ZX is not set
+# CONFIG_GPIO_104_IDIO_16 is not set
+# CONFIG_GPIO_IT87 is not set
+# CONFIG_GPIO_SCH311X is not set
+# CONFIG_GPIO_TS5500 is not set
+# CONFIG_GPIO_WINBOND is not set
+# CONFIG_GPIO_WS16C48 is not set
+# CONFIG_GPIO_ADP5588 is not set
+# CONFIG_GPIO_ADNP is not set
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_TPIC2810 is not set
+# CONFIG_GPIO_TS4900 is not set
+# CONFIG_GPIO_CS5535 is not set
+# CONFIG_GPIO_AMD8111 is not set
+# CONFIG_GPIO_INTEL_MID is not set
+# CONFIG_GPIO_ML_IOH is not set
+CONFIG_GPIO_PCI_IDIO_16=m
+CONFIG_GPIO_PCIE_IDIO_24=m
+# CONFIG_GPIO_RDC321X is not set
+# CONFIG_GPIO_74X164 is not set
+# CONFIG_GPIO_MAX3191X is not set
+# CONFIG_GPIO_MAX7301 is not set
+# CONFIG_GPIO_MC33880 is not set
+# CONFIG_GPIO_PISOSR is not set
+# CONFIG_GPIO_XRA1403 is not set
+CONFIG_GPIO_VIPERBOARD=m
+# CONFIG_GPIO_MOCKUP is not set
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM_DP_AUX_CHARDEV=y
+# CONFIG_DRM_DEBUG_SELFTEST is not set
+CONFIG_DRM_FBDEV_EMULATION=y
+CONFIG_DRM_FBDEV_OVERALLOC=100
+# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set
+CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+CONFIG_DRM_VGEM=m
+# CONFIG_DRM_VKMS is not set
+# CONFIG_DRM_LEGACY is not set
+
+##
+## file: drivers/gpu/drm/amd/acp/Kconfig
+##
+# CONFIG_DRM_AMD_ACP is not set
+
+##
+## file: drivers/gpu/drm/amd/amdgpu/Kconfig
+##
+CONFIG_DRM_AMDGPU_SI=y
+CONFIG_DRM_AMDGPU_CIK=y
+CONFIG_DRM_AMDGPU_USERPTR=y
+# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
+
+##
+## file: drivers/gpu/drm/amd/display/Kconfig
+##
+CONFIG_DRM_AMD_DC=y
+CONFIG_DRM_AMD_DC_DCN3_0=y
+CONFIG_DRM_AMD_DC_HDCP=y
+CONFIG_DRM_AMD_DC_SI=y
+# CONFIG_DEBUG_KERNEL_DC is not set
+
+##
+## file: drivers/gpu/drm/ast/Kconfig
+##
+# CONFIG_DRM_AST is not set
+
+##
+## file: drivers/gpu/drm/bochs/Kconfig
+##
+CONFIG_DRM_BOCHS=m
+
+##
+## file: drivers/gpu/drm/bridge/Kconfig
+##
+# CONFIG_DRM_NXP_PTN3460 is not set
+# CONFIG_DRM_PARADE_PS8622 is not set
+
+##
+## file: drivers/gpu/drm/bridge/adv7511/Kconfig
+##
+# CONFIG_DRM_I2C_ADV7511 is not set
+
+##
+## file: drivers/gpu/drm/bridge/analogix/Kconfig
+##
+# CONFIG_DRM_ANALOGIX_ANX78XX is not set
+
+##
+## file: drivers/gpu/drm/hisilicon/hibmc/Kconfig
+##
+# CONFIG_DRM_HISI_HIBMC is not set
+
+##
+## file: drivers/gpu/drm/i2c/Kconfig
+##
+# CONFIG_DRM_I2C_CH7006 is not set
+# CONFIG_DRM_I2C_SIL164 is not set
+# CONFIG_DRM_I2C_NXP_TDA998X is not set
+# CONFIG_DRM_I2C_NXP_TDA9950 is not set
+
+##
+## file: drivers/gpu/drm/i915/Kconfig
+##
+CONFIG_DRM_I915_CAPTURE_ERROR=y
+CONFIG_DRM_I915_COMPRESS_ERROR=y
+CONFIG_DRM_I915_USERPTR=y
+
+##
+## file: drivers/gpu/drm/i915/Kconfig.debug
+##
+# CONFIG_DRM_I915_WERROR is not set
+# CONFIG_DRM_I915_DEBUG is not set
+# CONFIG_DRM_I915_SW_FENCE_DEBUG_OBJECTS is not set
+# CONFIG_DRM_I915_SW_FENCE_CHECK_DAG is not set
+# CONFIG_DRM_I915_DEBUG_GUC is not set
+# CONFIG_DRM_I915_SELFTEST is not set
+# CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS is not set
+# CONFIG_DRM_I915_DEBUG_VBLANK_EVADE is not set
+
+##
+## file: drivers/gpu/drm/mgag200/Kconfig
+##
+# CONFIG_DRM_MGAG200 is not set
+
+##
+## file: drivers/gpu/drm/nouveau/Kconfig
+##
+CONFIG_DRM_NOUVEAU=m
+# CONFIG_NOUVEAU_LEGACY_CTX_SUPPORT is not set
+CONFIG_NOUVEAU_DEBUG=5
+CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
+CONFIG_DRM_NOUVEAU_BACKLIGHT=y
+
+##
+## file: drivers/gpu/drm/panel/Kconfig
+##
+# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
+# CONFIG_DRM_PANEL_LG_LG4573 is not set
+# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
+
+##
+## file: drivers/gpu/drm/qxl/Kconfig
+##
+CONFIG_DRM_QXL=m
+
+##
+## file: drivers/gpu/drm/radeon/Kconfig
+##
+# CONFIG_DRM_RADEON_USERPTR is not set
+
+##
+## file: drivers/gpu/drm/tiny/Kconfig
+##
+CONFIG_DRM_CIRRUS_QEMU=m
+
+##
+## file: drivers/gpu/drm/udl/Kconfig
+##
+CONFIG_DRM_UDL=m
+
+##
+## file: drivers/gpu/drm/virtio/Kconfig
+##
+CONFIG_DRM_VIRTIO_GPU=m
+
+##
+## file: drivers/gpu/drm/vmwgfx/Kconfig
+##
+# CONFIG_DRM_VMWGFX is not set
+
+##
+## file: drivers/gpu/vga/Kconfig
+##
+CONFIG_VGA_ARB=y
+
+##
+## file: drivers/greybus/Kconfig
+##
+# CONFIG_GREYBUS is not set
+
+##
+## file: drivers/hid/Kconfig
+##
+CONFIG_HID=m
+CONFIG_HID_BATTERY_STRENGTH=y
+CONFIG_HIDRAW=y
+CONFIG_UHID=m
+CONFIG_HID_GENERIC=m
+CONFIG_HID_A4TECH=y
+CONFIG_HID_ACCUTOUCH=m
+CONFIG_HID_ACRUX=m
+CONFIG_HID_ACRUX_FF=y
+CONFIG_HID_APPLE=y
+CONFIG_HID_ASUS=m
+CONFIG_HID_AUREAL=m
+CONFIG_HID_BELKIN=y
+CONFIG_HID_BETOP_FF=m
+CONFIG_HID_BIGBEN_FF=m
+CONFIG_HID_CHERRY=y
+CONFIG_HID_CHICONY=y
+CONFIG_HID_CORSAIR=m
+CONFIG_HID_COUGAR=m
+CONFIG_HID_MACALLY=m
+CONFIG_HID_PRODIKEYS=m
+CONFIG_HID_CMEDIA=m
+CONFIG_HID_CP2112=m
+CONFIG_HID_CYPRESS=y
+CONFIG_HID_DRAGONRISE=m
+CONFIG_DRAGONRISE_FF=y
+CONFIG_HID_EMS_FF=m
+CONFIG_HID_ELAN=m
+CONFIG_HID_ELECOM=m
+CONFIG_HID_ELO=m
+CONFIG_HID_EZKEY=y
+CONFIG_HID_GEMBIRD=m
+CONFIG_HID_GFRM=m
+CONFIG_HID_HOLTEK=m
+CONFIG_HOLTEK_FF=y
+CONFIG_HID_GT683R=m
+CONFIG_HID_KEYTOUCH=m
+CONFIG_HID_KYE=m
+CONFIG_HID_UCLOGIC=m
+CONFIG_HID_WALTOP=m
+CONFIG_HID_VIEWSONIC=m
+CONFIG_HID_GYRATION=m
+CONFIG_HID_ICADE=m
+CONFIG_HID_ITE=m
+CONFIG_HID_JABRA=m
+CONFIG_HID_TWINHAN=m
+CONFIG_HID_KENSINGTON=y
+CONFIG_HID_LCPOWER=m
+CONFIG_HID_LED=m
+CONFIG_HID_LENOVO=m
+CONFIG_HID_LOGITECH=y
+CONFIG_HID_LOGITECH_DJ=m
+CONFIG_LOGITECH_FF=y
+CONFIG_LOGIRUMBLEPAD2_FF=y
+CONFIG_LOGIG940_FF=y
+CONFIG_LOGIWHEELS_FF=y
+CONFIG_HID_MAGICMOUSE=m
+CONFIG_HID_MALTRON=m
+CONFIG_HID_MAYFLASH=m
+CONFIG_HID_REDRAGON=m
+CONFIG_HID_MICROSOFT=y
+CONFIG_HID_MONTEREY=y
+CONFIG_HID_MULTITOUCH=m
+CONFIG_HID_NTI=m
+CONFIG_HID_NTRIG=m
+CONFIG_HID_ORTEK=m
+CONFIG_HID_PANTHERLORD=m
+CONFIG_PANTHERLORD_FF=y
+CONFIG_HID_PENMOUNT=m
+CONFIG_HID_PETALYNX=m
+CONFIG_HID_PICOLCD=m
+CONFIG_HID_PICOLCD_FB=y
+CONFIG_HID_PICOLCD_BACKLIGHT=y
+CONFIG_HID_PICOLCD_LCD=y
+CONFIG_HID_PICOLCD_LEDS=y
+CONFIG_HID_PICOLCD_CIR=y
+CONFIG_HID_PLANTRONICS=m
+CONFIG_HID_PRIMAX=m
+CONFIG_HID_RETRODE=m
+CONFIG_HID_ROCCAT=m
+CONFIG_HID_SAITEK=m
+CONFIG_HID_SAMSUNG=m
+CONFIG_HID_SONY=m
+CONFIG_SONY_FF=y
+CONFIG_HID_SPEEDLINK=m
+CONFIG_HID_STEAM=m
+CONFIG_HID_STEELSERIES=m
+CONFIG_HID_SUNPLUS=m
+CONFIG_HID_RMI=m
+CONFIG_HID_GREENASIA=m
+CONFIG_GREENASIA_FF=y
+CONFIG_HID_SMARTJOYPLUS=m
+CONFIG_SMARTJOYPLUS_FF=y
+CONFIG_HID_TIVO=m
+CONFIG_HID_TOPSEED=m
+CONFIG_HID_THINGM=m
+CONFIG_HID_THRUSTMASTER=m
+CONFIG_THRUSTMASTER_FF=y
+CONFIG_HID_UDRAW_PS3=m
+CONFIG_HID_U2FZERO=m
+CONFIG_HID_WACOM=m
+CONFIG_HID_WIIMOTE=m
+CONFIG_HID_XINMO=m
+CONFIG_HID_ZEROPLUS=m
+CONFIG_ZEROPLUS_FF=y
+CONFIG_HID_ZYDACRON=m
+CONFIG_HID_SENSOR_HUB=m
+CONFIG_HID_SENSOR_CUSTOM_SENSOR=m
+CONFIG_HID_ALPS=m
+
+##
+## file: drivers/hid/intel-ish-hid/Kconfig
+##
+# CONFIG_INTEL_ISH_HID is not set
+
+##
+## file: drivers/hid/usbhid/Kconfig
+##
+CONFIG_HID_PID=y
+CONFIG_USB_HIDDEV=y
+#. These are for HID Boot Protocol, not full HID
+# CONFIG_USB_KBD is not set
+# CONFIG_USB_MOUSE is not set
+
+##
+## file: drivers/hsi/Kconfig
+##
+# CONFIG_HSI is not set
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_HWMON=y
+# CONFIG_HWMON_DEBUG_CHIP is not set
+CONFIG_SENSORS_ABITUGURU=m
+CONFIG_SENSORS_ABITUGURU3=m
+# CONFIG_SENSORS_AD7314 is not set
+CONFIG_SENSORS_AD7414=m
+CONFIG_SENSORS_AD7418=m
+CONFIG_SENSORS_ADM1029=m
+CONFIG_SENSORS_ADM9240=m
+# CONFIG_SENSORS_ADT7310 is not set
+CONFIG_SENSORS_ADT7411=m
+CONFIG_SENSORS_ADT7462=m
+CONFIG_SENSORS_ADT7470=m
+CONFIG_SENSORS_ADT7475=m
+CONFIG_SENSORS_ASC7621=m
+CONFIG_SENSORS_APPLESMC=m
+CONFIG_SENSORS_ASPEED=m
+CONFIG_SENSORS_ATXP1=m
+CONFIG_SENSORS_DRIVETEMP=m
+CONFIG_SENSORS_DS620=m
+CONFIG_SENSORS_I5K_AMB=m
+CONFIG_SENSORS_F71882FG=m
+CONFIG_SENSORS_F75375S=m
+CONFIG_SENSORS_MC13783_ADC=m
+CONFIG_SENSORS_FSCHMD=m
+CONFIG_SENSORS_FTSTEUTATES=m
+CONFIG_SENSORS_G760A=m
+# CONFIG_SENSORS_GPIO_FAN is not set
+# CONFIG_SENSORS_HIH6130 is not set
+CONFIG_SENSORS_IBMAEM=m
+CONFIG_SENSORS_IBMPEX=m
+# CONFIG_SENSORS_IIO_HWMON is not set
+CONFIG_SENSORS_CORETEMP=m
+# CONFIG_SENSORS_IT87 is not set
+CONFIG_SENSORS_JC42=m
+CONFIG_SENSORS_LINEAGE=m
+CONFIG_SENSORS_LTC4151=m
+CONFIG_SENSORS_LTC4215=m
+CONFIG_SENSORS_LTC4245=m
+CONFIG_SENSORS_LTC4261=m
+CONFIG_SENSORS_MAX1111=m
+CONFIG_SENSORS_MAX16065=m
+CONFIG_SENSORS_MAX1668=m
+# CONFIG_SENSORS_MAX197 is not set
+CONFIG_SENSORS_MAX6639=m
+CONFIG_SENSORS_MAX6642=m
+CONFIG_SENSORS_MAX6650=m
+# CONFIG_SENSORS_MCP3021 is not set
+CONFIG_SENSORS_ADCXX=m
+CONFIG_SENSORS_LM70=m
+CONFIG_SENSORS_LM73=m
+CONFIG_SENSORS_LM93=m
+CONFIG_SENSORS_LM95241=m
+CONFIG_SENSORS_LM95245=m
+CONFIG_SENSORS_PC87427=m
+CONFIG_SENSORS_NTC_THERMISTOR=m
+CONFIG_SENSORS_NCT6683=m
+CONFIG_SENSORS_NCT6775=m
+CONFIG_SENSORS_NCT7802=m
+CONFIG_SENSORS_NCT7904=m
+CONFIG_SENSORS_NPCM7XX=m
+# CONFIG_SENSORS_SHT15 is not set
+CONFIG_SENSORS_SHT21=m
+CONFIG_SENSORS_DME1737=m
+CONFIG_SENSORS_EMC1403=m
+CONFIG_SENSORS_EMC2103=m
+CONFIG_SENSORS_EMC6W201=m
+CONFIG_SENSORS_SMSC47M192=m
+CONFIG_SENSORS_SCH5627=m
+CONFIG_SENSORS_SMM665=m
+CONFIG_SENSORS_ADS7828=m
+CONFIG_SENSORS_ADS7871=m
+CONFIG_SENSORS_AMC6821=m
+# CONFIG_SENSORS_INA209 is not set
+# CONFIG_SENSORS_INA2XX is not set
+CONFIG_SENSORS_THMC50=m
+CONFIG_SENSORS_TMP102=m
+CONFIG_SENSORS_TMP401=m
+CONFIG_SENSORS_TMP421=m
+CONFIG_SENSORS_VIA_CPUTEMP=m
+CONFIG_SENSORS_VT1211=m
+CONFIG_SENSORS_VT8231=m
+CONFIG_SENSORS_W83773G=m
+CONFIG_SENSORS_W83791D=m
+CONFIG_SENSORS_W83792D=m
+CONFIG_SENSORS_W83793=m
+CONFIG_SENSORS_W83795=m
+# CONFIG_SENSORS_W83795_FANCTRL is not set
+CONFIG_SENSORS_W83L786NG=m
+CONFIG_SENSORS_W83627EHF=m
+CONFIG_SENSORS_WM831X=m
+CONFIG_SENSORS_WM8350=m
+# CONFIG_SENSORS_XGENE is not set
+CONFIG_SENSORS_ATK0110=m
+
+##
+## file: drivers/hwmon/pmbus/Kconfig
+##
+# CONFIG_PMBUS is not set
+
+##
+## file: drivers/hwtracing/intel_th/Kconfig
+##
+# CONFIG_INTEL_TH is not set
+
+##
+## file: drivers/hwtracing/stm/Kconfig
+##
+# CONFIG_STM is not set
+# CONFIG_STM_DUMMY is not set
+# CONFIG_STM_SOURCE_CONSOLE is not set
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C_COMPAT=y
+CONFIG_I2C_CHARDEV=m
+# CONFIG_I2C_MUX is not set
+CONFIG_I2C_HELPER_AUTO=y
+# CONFIG_I2C_SLAVE is not set
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_ISCH=m
+CONFIG_I2C_NFORCE2_S4985=m
+# CONFIG_I2C_CBUS_GPIO is not set
+# CONFIG_I2C_DESIGNWARE_SLAVE is not set
+# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
+# CONFIG_I2C_DESIGNWARE_BAYTRAIL is not set
+# CONFIG_I2C_EMEV2 is not set
+# CONFIG_I2C_GPIO is not set
+CONFIG_I2C_OCORES=m
+CONFIG_I2C_PCA_PLATFORM=m
+# CONFIG_I2C_RK3X is not set
+CONFIG_I2C_SIMTEC=m
+# CONFIG_I2C_XILINX is not set
+CONFIG_I2C_DIOLAN_U2C=m
+CONFIG_I2C_ROBOTFUZZ_OSIF=m
+CONFIG_I2C_TAOS_EVM=m
+CONFIG_I2C_TINY_USB=m
+CONFIG_I2C_VIPERBOARD=m
+# CONFIG_I2C_MLXCPLD is not set
+
+##
+## file: drivers/i2c/muxes/Kconfig
+##
+# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set
+# CONFIG_I2C_MUX_GPIO is not set
+# CONFIG_I2C_MUX_LTC4306 is not set
+# CONFIG_I2C_MUX_PCA9541 is not set
+# CONFIG_I2C_MUX_PCA954x is not set
+# CONFIG_I2C_MUX_PINCTRL is not set
+# CONFIG_I2C_MUX_REG is not set
+# CONFIG_I2C_MUX_MLXCPLD is not set
+
+##
+## file: drivers/ide/Kconfig
+##
+# CONFIG_IDE is not set
+#. But for ia64 and m68k flavours that need it
+CONFIG_IDE_GD=m
+CONFIG_IDE_GD_ATA=y
+CONFIG_IDE_GD_ATAPI=y
+# CONFIG_IDE_TASK_IOCTL is not set
+CONFIG_IDE_PROC_FS=y
+# CONFIG_BLK_DEV_PLATFORM is not set
+# CONFIG_BLK_DEV_JMICRON is not set
+# CONFIG_BLK_DEV_IT821X is not set
+
+##
+## file: drivers/iio/Kconfig
+##
+CONFIG_IIO=m
+CONFIG_IIO_BUFFER=y
+# CONFIG_IIO_TRIGGER is not set
+
+##
+## file: drivers/iio/accel/Kconfig
+##
+CONFIG_ADIS16201=m
+CONFIG_ADIS16209=m
+CONFIG_ADXL345_I2C=m
+CONFIG_ADXL345_SPI=m
+CONFIG_ADXL372_SPI=m
+CONFIG_ADXL372_I2C=m
+CONFIG_BMA180=m
+CONFIG_BMA220=m
+CONFIG_BMA400=m
+CONFIG_BMC150_ACCEL=m
+CONFIG_DA280=m
+CONFIG_DA311=m
+CONFIG_DMARD09=m
+CONFIG_DMARD10=m
+CONFIG_HID_SENSOR_ACCEL_3D=m
+CONFIG_IIO_ST_ACCEL_3AXIS=m
+CONFIG_KXSD9=m
+CONFIG_KXCJK1013=m
+CONFIG_MC3230=m
+CONFIG_MMA7455_I2C=m
+CONFIG_MMA7455_SPI=m
+CONFIG_MMA7660=m
+CONFIG_MMA8452=m
+CONFIG_MMA9551=m
+CONFIG_MMA9553=m
+CONFIG_MXC4005=m
+CONFIG_MXC6255=m
+CONFIG_SCA3000=m
+CONFIG_STK8312=m
+CONFIG_STK8BA50=m
+
+##
+## file: drivers/iio/adc/Kconfig
+##
+CONFIG_AD7091R5=m
+CONFIG_AD7124=m
+CONFIG_AD7192=m
+CONFIG_AD7266=m
+CONFIG_AD7291=m
+CONFIG_AD7292=m
+CONFIG_AD7298=m
+CONFIG_AD7476=m
+CONFIG_AD7606_IFACE_PARALLEL=m
+CONFIG_AD7606_IFACE_SPI=m
+CONFIG_AD7766=m
+CONFIG_AD7768_1=m
+CONFIG_AD7780=m
+CONFIG_AD7791=m
+CONFIG_AD7793=m
+CONFIG_AD7887=m
+CONFIG_AD7923=m
+CONFIG_AD7949=m
+CONFIG_AD799X=m
+CONFIG_AD9467=m
+CONFIG_ADI_AXI_ADC=m
+CONFIG_AXP20X_ADC=m
+CONFIG_AXP288_ADC=m
+CONFIG_CC10001_ADC=m
+CONFIG_HI8435=m
+CONFIG_HX711=m
+CONFIG_INA2XX_ADC=m
+CONFIG_LTC2471=m
+CONFIG_LTC2485=m
+CONFIG_LTC2496=m
+CONFIG_LTC2497=m
+CONFIG_MAX1027=m
+CONFIG_MAX11100=m
+CONFIG_MAX1118=m
+CONFIG_MAX1241=m
+CONFIG_MAX1363=m
+CONFIG_MAX9611=m
+CONFIG_MCP320X=m
+CONFIG_MCP3422=m
+CONFIG_MCP3911=m
+CONFIG_NAU7802=m
+CONFIG_TI_ADC081C=m
+CONFIG_TI_ADC0832=m
+CONFIG_TI_ADC084S021=m
+CONFIG_TI_ADC12138=m
+CONFIG_TI_ADC108S102=m
+CONFIG_TI_ADC128S052=m
+CONFIG_TI_ADC161S626=m
+CONFIG_TI_ADS1015=m
+CONFIG_TI_ADS7950=m
+# CONFIG_VF610_ADC is not set
+CONFIG_VIPERBOARD_ADC=m
+
+##
+## file: drivers/iio/amplifiers/Kconfig
+##
+# CONFIG_AD8366 is not set
+
+##
+## file: drivers/iio/buffer/Kconfig
+##
+#. These will be selected by drivers that need them
+# CONFIG_IIO_BUFFER_CB is not set
+# CONFIG_IIO_KFIFO_BUF is not set
+
+##
+## file: drivers/iio/chemical/Kconfig
+##
+# CONFIG_ATLAS_PH_SENSOR is not set
+# CONFIG_IAQCORE is not set
+# CONFIG_VZ89X is not set
+
+##
+## file: drivers/iio/common/ssp_sensors/Kconfig
+##
+# CONFIG_IIO_SSP_SENSORHUB is not set
+
+##
+## file: drivers/iio/dac/Kconfig
+##
+CONFIG_AD5064=m
+CONFIG_AD5360=m
+CONFIG_AD5380=m
+CONFIG_AD5421=m
+CONFIG_AD5446=m
+CONFIG_AD5449=m
+CONFIG_AD5592R=m
+CONFIG_AD5593R=m
+CONFIG_AD5504=m
+CONFIG_AD5624R_SPI=m
+CONFIG_AD5686_SPI=m
+CONFIG_AD5696_I2C=m
+CONFIG_AD5755=m
+CONFIG_AD5758=m
+CONFIG_AD5761=m
+CONFIG_AD5764=m
+CONFIG_AD5770R=m
+CONFIG_AD5791=m
+CONFIG_AD7303=m
+CONFIG_AD8801=m
+CONFIG_DS4424=m
+CONFIG_LTC1660=m
+CONFIG_LTC2632=m
+CONFIG_M62332=m
+CONFIG_MAX517=m
+# CONFIG_MAX5821 is not set
+CONFIG_MCP4725=m
+CONFIG_MCP4922=m
+CONFIG_TI_DAC082S085=m
+CONFIG_TI_DAC5571=m
+CONFIG_TI_DAC7311=m
+CONFIG_TI_DAC7612=m
+
+##
+## file: drivers/iio/dummy/Kconfig
+##
+# CONFIG_IIO_SIMPLE_DUMMY is not set
+
+##
+## file: drivers/iio/frequency/Kconfig
+##
+# CONFIG_AD9523 is not set
+# CONFIG_ADF4350 is not set
+
+##
+## file: drivers/iio/gyro/Kconfig
+##
+CONFIG_ADIS16080=m
+CONFIG_ADIS16130=m
+CONFIG_ADIS16136=m
+CONFIG_ADIS16260=m
+CONFIG_ADXRS290=m
+CONFIG_ADXRS450=m
+CONFIG_BMG160=m
+CONFIG_FXAS21002C=m
+CONFIG_HID_SENSOR_GYRO_3D=m
+CONFIG_MPU3050_I2C=m
+CONFIG_IIO_ST_GYRO_3AXIS=m
+CONFIG_ITG3200=m
+
+##
+## file: drivers/iio/health/Kconfig
+##
+# CONFIG_AFE4403 is not set
+# CONFIG_AFE4404 is not set
+# CONFIG_MAX30100 is not set
+
+##
+## file: drivers/iio/humidity/Kconfig
+##
+# CONFIG_AM2315 is not set
+# CONFIG_DHT11 is not set
+# CONFIG_HDC100X is not set
+# CONFIG_HTU21 is not set
+# CONFIG_SI7005 is not set
+# CONFIG_SI7020 is not set
+
+##
+## file: drivers/iio/imu/Kconfig
+##
+# CONFIG_ADIS16400 is not set
+CONFIG_ADIS16460=m
+CONFIG_ADIS16475=m
+CONFIG_ADIS16480=m
+CONFIG_FXOS8700_I2C=m
+CONFIG_FXOS8700_SPI=m
+CONFIG_KMX61=m
+
+##
+## file: drivers/iio/imu/bmi160/Kconfig
+##
+CONFIG_BMI160_I2C=m
+CONFIG_BMI160_SPI=m
+
+##
+## file: drivers/iio/imu/inv_icm42600/Kconfig
+##
+CONFIG_INV_ICM42600_I2C=m
+CONFIG_INV_ICM42600_SPI=m
+
+##
+## file: drivers/iio/imu/inv_mpu6050/Kconfig
+##
+CONFIG_INV_MPU6050_I2C=m
+CONFIG_INV_MPU6050_SPI=m
+
+##
+## file: drivers/iio/imu/st_lsm6dsx/Kconfig
+##
+CONFIG_IIO_ST_LSM6DSX=m
+
+##
+## file: drivers/iio/light/Kconfig
+##
+CONFIG_ACPI_ALS=m
+CONFIG_ADJD_S311=m
+CONFIG_ADUX1020=m
+CONFIG_AL3010=m
+CONFIG_AL3320A=m
+CONFIG_APDS9300=m
+CONFIG_APDS9960=m
+CONFIG_AS73211=m
+CONFIG_BH1750=m
+CONFIG_BH1780=m
+CONFIG_CM32181=m
+CONFIG_CM3232=m
+CONFIG_CM3323=m
+CONFIG_CM36651=m
+CONFIG_GP2AP002=m
+CONFIG_GP2AP020A00F=m
+CONFIG_SENSORS_ISL29018=m
+CONFIG_SENSORS_ISL29028=m
+CONFIG_ISL29125=m
+CONFIG_HID_SENSOR_ALS=m
+CONFIG_HID_SENSOR_PROX=m
+CONFIG_JSA1212=m
+CONFIG_RPR0521=m
+CONFIG_LTR501=m
+CONFIG_LV0104CS=m
+CONFIG_MAX44000=m
+CONFIG_MAX44009=m
+CONFIG_NOA1305=m
+CONFIG_OPT3001=m
+CONFIG_PA12203001=m
+CONFIG_SI1133=m
+CONFIG_SI1145=m
+CONFIG_STK3310=m
+CONFIG_ST_UVIS25=m
+CONFIG_TCS3414=m
+CONFIG_TCS3472=m
+CONFIG_SENSORS_TSL2563=m
+CONFIG_TSL2583=m
+CONFIG_TSL2772=m
+CONFIG_TSL4531=m
+CONFIG_US5182D=m
+CONFIG_VCNL4000=m
+CONFIG_VCNL4035=m
+CONFIG_VEML6030=m
+CONFIG_VEML6070=m
+CONFIG_VL6180=m
+CONFIG_ZOPT2201=m
+
+##
+## file: drivers/iio/magnetometer/Kconfig
+##
+CONFIG_AK8975=m
+CONFIG_AK09911=m
+CONFIG_BMC150_MAGN_I2C=m
+CONFIG_BMC150_MAGN_SPI=m
+CONFIG_MAG3110=m
+CONFIG_HID_SENSOR_MAGNETOMETER_3D=m
+CONFIG_MMC35240=m
+CONFIG_IIO_ST_MAGN_3AXIS=m
+CONFIG_SENSORS_HMC5843_I2C=m
+CONFIG_SENSORS_HMC5843_SPI=m
+CONFIG_SENSORS_RM3100_I2C=m
+CONFIG_SENSORS_RM3100_SPI=m
+
+##
+## file: drivers/iio/orientation/Kconfig
+##
+CONFIG_HID_SENSOR_INCLINOMETER_3D=m
+CONFIG_HID_SENSOR_DEVICE_ROTATION=m
+
+##
+## file: drivers/iio/potentiometer/Kconfig
+##
+# CONFIG_DS1803 is not set
+# CONFIG_MAX5487 is not set
+# CONFIG_MCP4131 is not set
+# CONFIG_MCP4531 is not set
+# CONFIG_TPL0102 is not set
+
+##
+## file: drivers/iio/pressure/Kconfig
+##
+CONFIG_ABP060MG=m
+CONFIG_BMP280=m
+CONFIG_DLHL60D=m
+CONFIG_DPS310=m
+CONFIG_HID_SENSOR_PRESS=m
+CONFIG_HP03=m
+CONFIG_ICP10100=m
+CONFIG_MPL115_I2C=m
+CONFIG_MPL115_SPI=m
+CONFIG_MPL3115=m
+CONFIG_MS5611=m
+CONFIG_MS5637=m
+CONFIG_IIO_ST_PRESS=m
+CONFIG_T5403=m
+CONFIG_HP206C=m
+CONFIG_ZPA2326=m
+
+##
+## file: drivers/iio/proximity/Kconfig
+##
+# CONFIG_AS3935 is not set
+CONFIG_ISL29501=m
+CONFIG_LIDAR_LITE_V2=m
+CONFIG_MB1232=m
+CONFIG_PING=m
+CONFIG_RFD77402=m
+CONFIG_SRF04=m
+CONFIG_SX9310=m
+# CONFIG_SX9500 is not set
+CONFIG_SRF08=m
+CONFIG_VCNL3020=m
+CONFIG_VL53L0X_I2C=m
+
+##
+## file: drivers/iio/resolver/Kconfig
+##
+# CONFIG_AD2S90 is not set
+# CONFIG_AD2S1200 is not set
+
+##
+## file: drivers/iio/temperature/Kconfig
+##
+CONFIG_LTC2983=m
+CONFIG_MAXIM_THERMOCOUPLE=m
+CONFIG_HID_SENSOR_TEMP=m
+CONFIG_MLX90614=m
+CONFIG_MLX90632=m
+CONFIG_TMP006=m
+CONFIG_TMP007=m
+CONFIG_TSYS01=m
+CONFIG_TSYS02D=m
+CONFIG_MAX31856=m
+
+##
+## file: drivers/iio/trigger/Kconfig
+##
+# CONFIG_IIO_INTERRUPT_TRIGGER is not set
+# CONFIG_IIO_SYSFS_TRIGGER is not set
+
+##
+## file: drivers/infiniband/Kconfig
+##
+CONFIG_INFINIBAND=m
+CONFIG_INFINIBAND_USER_MAD=m
+CONFIG_INFINIBAND_USER_ACCESS=m
+CONFIG_INFINIBAND_ON_DEMAND_PAGING=y
+
+##
+## file: drivers/infiniband/hw/cxgb4/Kconfig
+##
+CONFIG_INFINIBAND_CXGB4=m
+
+##
+## file: drivers/infiniband/hw/hfi1/Kconfig
+##
+CONFIG_INFINIBAND_HFI1=m
+
+##
+## file: drivers/infiniband/hw/i40iw/Kconfig
+##
+CONFIG_INFINIBAND_I40IW=m
+
+##
+## file: drivers/infiniband/hw/mlx4/Kconfig
+##
+CONFIG_MLX4_INFINIBAND=m
+
+##
+## file: drivers/infiniband/hw/mlx5/Kconfig
+##
+CONFIG_MLX5_INFINIBAND=m
+
+##
+## file: drivers/infiniband/hw/mthca/Kconfig
+##
+CONFIG_INFINIBAND_MTHCA=m
+CONFIG_INFINIBAND_MTHCA_DEBUG=y
+
+##
+## file: drivers/infiniband/hw/ocrdma/Kconfig
+##
+CONFIG_INFINIBAND_OCRDMA=m
+
+##
+## file: drivers/infiniband/hw/qedr/Kconfig
+##
+CONFIG_INFINIBAND_QEDR=m
+
+##
+## file: drivers/infiniband/hw/qib/Kconfig
+##
+CONFIG_INFINIBAND_QIB=m
+CONFIG_INFINIBAND_QIB_DCA=y
+
+##
+## file: drivers/infiniband/sw/rdmavt/Kconfig
+##
+CONFIG_INFINIBAND_RDMAVT=m
+
+##
+## file: drivers/infiniband/sw/rxe/Kconfig
+##
+CONFIG_RDMA_RXE=m
+
+##
+## file: drivers/infiniband/ulp/ipoib/Kconfig
+##
+CONFIG_INFINIBAND_IPOIB=m
+CONFIG_INFINIBAND_IPOIB_CM=y
+CONFIG_INFINIBAND_IPOIB_DEBUG=y
+# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
+
+##
+## file: drivers/infiniband/ulp/iser/Kconfig
+##
+CONFIG_INFINIBAND_ISER=m
+
+##
+## file: drivers/infiniband/ulp/isert/Kconfig
+##
+CONFIG_INFINIBAND_ISERT=m
+
+##
+## file: drivers/infiniband/ulp/srp/Kconfig
+##
+CONFIG_INFINIBAND_SRP=m
+
+##
+## file: drivers/infiniband/ulp/srpt/Kconfig
+##
+CONFIG_INFINIBAND_SRPT=m
+
+##
+## file: drivers/input/Kconfig
+##
+CONFIG_INPUT=y
+CONFIG_INPUT_LEDS=y
+CONFIG_INPUT_FF_MEMLESS=m
+# CONFIG_INPUT_POLLDEV is not set
+CONFIG_INPUT_SPARSEKMAP=m
+# CONFIG_INPUT_MATRIXKMAP is not set
+CONFIG_INPUT_MOUSEDEV=y
+CONFIG_INPUT_MOUSEDEV_PSAUX=y
+CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
+CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
+CONFIG_INPUT_JOYDEV=m
+CONFIG_INPUT_EVDEV=m
+# CONFIG_INPUT_EVBUG is not set
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+CONFIG_JOYSTICK_ANALOG=m
+CONFIG_JOYSTICK_A3D=m
+CONFIG_JOYSTICK_ADI=m
+CONFIG_JOYSTICK_COBRA=m
+CONFIG_JOYSTICK_GF2K=m
+CONFIG_JOYSTICK_GRIP=m
+CONFIG_JOYSTICK_GRIP_MP=m
+CONFIG_JOYSTICK_GUILLEMOT=m
+CONFIG_JOYSTICK_INTERACT=m
+CONFIG_JOYSTICK_SIDEWINDER=m
+CONFIG_JOYSTICK_TMDC=m
+CONFIG_JOYSTICK_WARRIOR=m
+CONFIG_JOYSTICK_MAGELLAN=m
+CONFIG_JOYSTICK_SPACEORB=m
+CONFIG_JOYSTICK_SPACEBALL=m
+CONFIG_JOYSTICK_STINGER=m
+CONFIG_JOYSTICK_TWIDJOY=m
+CONFIG_JOYSTICK_ZHENHUA=m
+CONFIG_JOYSTICK_DB9=m
+CONFIG_JOYSTICK_GAMECON=m
+CONFIG_JOYSTICK_TURBOGRAFX=m
+# CONFIG_JOYSTICK_AS5011 is not set
+CONFIG_JOYSTICK_JOYDUMP=m
+CONFIG_JOYSTICK_XPAD=m
+CONFIG_JOYSTICK_XPAD_FF=y
+CONFIG_JOYSTICK_XPAD_LEDS=y
+CONFIG_JOYSTICK_WALKERA0701=m
+# CONFIG_JOYSTICK_PSXPAD_SPI is not set
+CONFIG_JOYSTICK_PXRC=m
+
+##
+## file: drivers/input/joystick/iforce/Kconfig
+##
+CONFIG_JOYSTICK_IFORCE=m
+CONFIG_JOYSTICK_IFORCE_USB=y
+CONFIG_JOYSTICK_IFORCE_232=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+# CONFIG_KEYBOARD_ADC is not set
+CONFIG_KEYBOARD_ADP5588=m
+# CONFIG_KEYBOARD_ADP5589 is not set
+# CONFIG_KEYBOARD_QT1070 is not set
+CONFIG_KEYBOARD_QT2160=m
+# CONFIG_KEYBOARD_DLINK_DIR685 is not set
+# CONFIG_KEYBOARD_GPIO is not set
+# CONFIG_KEYBOARD_GPIO_POLLED is not set
+# CONFIG_KEYBOARD_TCA6416 is not set
+# CONFIG_KEYBOARD_TCA8418 is not set
+# CONFIG_KEYBOARD_MATRIX is not set
+CONFIG_KEYBOARD_LM8323=m
+# CONFIG_KEYBOARD_LM8333 is not set
+CONFIG_KEYBOARD_MAX7359=m
+# CONFIG_KEYBOARD_MCS is not set
+# CONFIG_KEYBOARD_MPR121 is not set
+CONFIG_KEYBOARD_OPENCORES=m
+# CONFIG_KEYBOARD_SAMSUNG is not set
+CONFIG_KEYBOARD_STOWAWAY=m
+# CONFIG_KEYBOARD_OMAP4 is not set
+# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set
+# CONFIG_KEYBOARD_CAP11XX is not set
+# CONFIG_KEYBOARD_BCM is not set
+
+##
+## file: drivers/input/misc/Kconfig
+##
+# CONFIG_INPUT_AD714X is not set
+# CONFIG_INPUT_BMA150 is not set
+# CONFIG_INPUT_E3X0_BUTTON is not set
+# CONFIG_INPUT_MMA8450 is not set
+# CONFIG_INPUT_GPIO_BEEPER is not set
+# CONFIG_INPUT_GPIO_DECODER is not set
+CONFIG_INPUT_ATI_REMOTE2=m
+CONFIG_INPUT_KEYSPAN_REMOTE=m
+# CONFIG_INPUT_KXTJ9 is not set
+CONFIG_INPUT_POWERMATE=m
+CONFIG_INPUT_YEALINK=m
+CONFIG_INPUT_CM109=m
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
+CONFIG_INPUT_AXP20X_PEK=m
+CONFIG_INPUT_PCF50633_PMU=m
+# CONFIG_INPUT_PCF8574 is not set
+# CONFIG_INPUT_PWM_BEEPER is not set
+# CONFIG_INPUT_PWM_VIBRA is not set
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
+CONFIG_INPUT_WM831X_ON=m
+# CONFIG_INPUT_ADXL34X is not set
+# CONFIG_INPUT_IMS_PCU is not set
+# CONFIG_INPUT_CMA3000 is not set
+CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y
+# CONFIG_INPUT_DRV260X_HAPTICS is not set
+# CONFIG_INPUT_DRV2665_HAPTICS is not set
+# CONFIG_INPUT_DRV2667_HAPTICS is not set
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_MOUSE_PS2_ALPS=y
+CONFIG_MOUSE_PS2_BYD=y
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y
+CONFIG_MOUSE_PS2_CYPRESS=y
+CONFIG_MOUSE_PS2_LIFEBOOK=y
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+CONFIG_MOUSE_PS2_ELANTECH=y
+CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y
+CONFIG_MOUSE_PS2_SENTELIC=y
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
+CONFIG_MOUSE_PS2_FOCALTECH=y
+# CONFIG_MOUSE_ELAN_I2C is not set
+# CONFIG_MOUSE_GPIO is not set
+CONFIG_MOUSE_SYNAPTICS_I2C=m
+CONFIG_MOUSE_SYNAPTICS_USB=m
+
+##
+## file: drivers/input/rmi4/Kconfig
+##
+# CONFIG_RMI4_I2C is not set
+# CONFIG_RMI4_SPI is not set
+CONFIG_RMI4_F03=y
+CONFIG_RMI4_F11=y
+CONFIG_RMI4_F12=y
+CONFIG_RMI4_F30=y
+CONFIG_RMI4_F34=y
+CONFIG_RMI4_F3A=y
+#. Enabling this makes input-modules pull in media/v4l2
+# CONFIG_RMI4_F54 is not set
+CONFIG_RMI4_F55=y
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO_ALTERA_PS2=m
+# CONFIG_SERIO_PS2MULT is not set
+# CONFIG_SERIO_ARC_PS2 is not set
+# CONFIG_SERIO_APBPS2 is not set
+# CONFIG_SERIO_OLPC_APSP is not set
+# CONFIG_USERIO is not set
+
+##
+## file: drivers/input/tablet/Kconfig
+##
+CONFIG_INPUT_TABLET=y
+CONFIG_TABLET_USB_ACECAD=m
+CONFIG_TABLET_USB_AIPTEK=m
+CONFIG_TABLET_USB_GTCO=m
+CONFIG_TABLET_USB_HANWANG=m
+CONFIG_TABLET_USB_KBTAB=m
+CONFIG_TABLET_USB_PEGASUS=m
+CONFIG_TABLET_SERIAL_WACOM4=m
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+CONFIG_TOUCHSCREEN_ADS7846=m
+CONFIG_TOUCHSCREEN_AD7877=m
+CONFIG_TOUCHSCREEN_AD7879=m
+CONFIG_TOUCHSCREEN_AD7879_I2C=m
+# CONFIG_TOUCHSCREEN_AD7879_SPI is not set
+# CONFIG_TOUCHSCREEN_ADC is not set
+# CONFIG_TOUCHSCREEN_AR1021_I2C is not set
+#. Chromebook Pixel
+CONFIG_TOUCHSCREEN_ATMEL_MXT=m
+# CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 is not set
+# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_BU21013 is not set
+# CONFIG_TOUCHSCREEN_BU21029 is not set
+# CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set
+# CONFIG_TOUCHSCREEN_CHIPONE_ICN8505 is not set
+# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
+# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set
+# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set
+CONFIG_TOUCHSCREEN_DYNAPRO=m
+CONFIG_TOUCHSCREEN_HAMPSHIRE=m
+CONFIG_TOUCHSCREEN_EETI=m
+# CONFIG_TOUCHSCREEN_EGALAX is not set
+# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
+CONFIG_TOUCHSCREEN_FUJITSU=m
+CONFIG_TOUCHSCREEN_GOODIX=m
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
+# CONFIG_TOUCHSCREEN_ILI210X is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
+CONFIG_TOUCHSCREEN_GUNZE=m
+# CONFIG_TOUCHSCREEN_EKTF2127 is not set
+# CONFIG_TOUCHSCREEN_ELAN is not set
+CONFIG_TOUCHSCREEN_ELO=m
+CONFIG_TOUCHSCREEN_WACOM_W8001=m
+# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
+# CONFIG_TOUCHSCREEN_MAX11801 is not set
+CONFIG_TOUCHSCREEN_MCS5000=m
+# CONFIG_TOUCHSCREEN_MMS114 is not set
+# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
+CONFIG_TOUCHSCREEN_MTOUCH=m
+# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
+CONFIG_TOUCHSCREEN_INEXIO=m
+CONFIG_TOUCHSCREEN_MK712=m
+CONFIG_TOUCHSCREEN_HTCPEN=m
+CONFIG_TOUCHSCREEN_PENMOUNT=m
+# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set
+CONFIG_TOUCHSCREEN_TOUCHRIGHT=m
+CONFIG_TOUCHSCREEN_TOUCHWIN=m
+CONFIG_TOUCHSCREEN_UCB1400=m
+# CONFIG_TOUCHSCREEN_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set
+CONFIG_TOUCHSCREEN_WM97XX=m
+CONFIG_TOUCHSCREEN_WM9705=y
+CONFIG_TOUCHSCREEN_WM9712=y
+CONFIG_TOUCHSCREEN_WM9713=y
+CONFIG_TOUCHSCREEN_USB_COMPOSITE=m
+CONFIG_TOUCHSCREEN_MC13783=m
+CONFIG_TOUCHSCREEN_USB_EGALAX=y
+CONFIG_TOUCHSCREEN_USB_PANJIT=y
+CONFIG_TOUCHSCREEN_USB_3M=y
+CONFIG_TOUCHSCREEN_USB_ITM=y
+CONFIG_TOUCHSCREEN_USB_ETURBO=y
+CONFIG_TOUCHSCREEN_USB_GUNZE=y
+CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y
+CONFIG_TOUCHSCREEN_USB_IRTOUCH=y
+CONFIG_TOUCHSCREEN_USB_IDEALTEK=y
+CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y
+CONFIG_TOUCHSCREEN_USB_GOTOP=y
+CONFIG_TOUCHSCREEN_USB_JASTEC=y
+CONFIG_TOUCHSCREEN_USB_ELO=y
+CONFIG_TOUCHSCREEN_USB_E2I=y
+CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y
+CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y
+CONFIG_TOUCHSCREEN_USB_NEXIO=y
+CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y
+CONFIG_TOUCHSCREEN_TOUCHIT213=m
+# CONFIG_TOUCHSCREEN_TSC2004 is not set
+# CONFIG_TOUCHSCREEN_TSC2005 is not set
+CONFIG_TOUCHSCREEN_TSC2007=m
+# CONFIG_TOUCHSCREEN_TSC2007_IIO is not set
+# CONFIG_TOUCHSCREEN_RM_TS is not set
+# CONFIG_TOUCHSCREEN_SILEAD is not set
+# CONFIG_TOUCHSCREEN_SIS_I2C is not set
+# CONFIG_TOUCHSCREEN_ST1232 is not set
+# CONFIG_TOUCHSCREEN_STMFTS is not set
+CONFIG_TOUCHSCREEN_SUR40=m
+# CONFIG_TOUCHSCREEN_SX8654 is not set
+CONFIG_TOUCHSCREEN_TPS6507X=m
+# CONFIG_TOUCHSCREEN_ZET6223 is not set
+# CONFIG_TOUCHSCREEN_ZFORCE is not set
+# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+
+##
+## file: drivers/iommu/Kconfig
+##
+CONFIG_IOMMU_SUPPORT=y
+
+##
+## file: drivers/ipack/Kconfig
+##
+# CONFIG_IPACK_BUS is not set
+
+##
+## file: drivers/isdn/Kconfig
+##
+# CONFIG_ISDN is not set
+
+##
+## file: drivers/isdn/hardware/mISDN/Kconfig
+##
+CONFIG_MISDN_HFCPCI=m
+CONFIG_MISDN_HFCMULTI=m
+CONFIG_MISDN_HFCUSB=m
+CONFIG_MISDN_AVMFRITZ=m
+CONFIG_MISDN_SPEEDFAX=m
+CONFIG_MISDN_INFINEON=m
+CONFIG_MISDN_W6692=m
+#. Binds a generic PCI bridge
+# CONFIG_MISDN_NETJET is not set
+
+##
+## file: drivers/isdn/mISDN/Kconfig
+##
+CONFIG_MISDN=m
+CONFIG_MISDN_DSP=m
+CONFIG_MISDN_L1OIP=m
+
+##
+## file: drivers/leds/Kconfig
+##
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+# CONFIG_LEDS_CLASS_FLASH is not set
+CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y
+# CONFIG_LEDS_BCM6328 is not set
+# CONFIG_LEDS_BCM6358 is not set
+# CONFIG_LEDS_LM3530 is not set
+# CONFIG_LEDS_LM3642 is not set
+CONFIG_LEDS_NET48XX=m
+# CONFIG_LEDS_PCA9532 is not set
+CONFIG_LEDS_GPIO=m
+CONFIG_LEDS_LP3944=m
+# CONFIG_LEDS_LP3952 is not set
+# CONFIG_LEDS_LP5521 is not set
+# CONFIG_LEDS_LP5523 is not set
+# CONFIG_LEDS_LP5562 is not set
+# CONFIG_LEDS_LP8501 is not set
+# CONFIG_LEDS_LP8860 is not set
+CONFIG_LEDS_PCA955X=m
+# CONFIG_LEDS_PCA963X is not set
+CONFIG_LEDS_WM831X_STATUS=m
+CONFIG_LEDS_WM8350=m
+CONFIG_LEDS_DAC124S085=m
+CONFIG_LEDS_REGULATOR=m
+CONFIG_LEDS_BD2802=m
+CONFIG_LEDS_INTEL_SS4200=m
+CONFIG_LEDS_LT3593=m
+CONFIG_LEDS_MC13783=m
+# CONFIG_LEDS_TCA6507 is not set
+# CONFIG_LEDS_TLC591XX is not set
+# CONFIG_LEDS_LM355x is not set
+# CONFIG_LEDS_OT200 is not set
+# CONFIG_LEDS_BLINKM is not set
+# CONFIG_LEDS_MLXCPLD is not set
+
+##
+## file: drivers/leds/trigger/Kconfig
+##
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_TIMER=m
+CONFIG_LEDS_TRIGGER_ONESHOT=m
+CONFIG_LEDS_TRIGGER_DISK=y
+CONFIG_LEDS_TRIGGER_MTD=y
+CONFIG_LEDS_TRIGGER_HEARTBEAT=m
+CONFIG_LEDS_TRIGGER_BACKLIGHT=m
+CONFIG_LEDS_TRIGGER_CPU=y
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
+CONFIG_LEDS_TRIGGER_GPIO=m
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
+CONFIG_LEDS_TRIGGER_TRANSIENT=m
+CONFIG_LEDS_TRIGGER_CAMERA=m
+CONFIG_LEDS_TRIGGER_PANIC=y
+CONFIG_LEDS_TRIGGER_NETDEV=m
+CONFIG_LEDS_TRIGGER_PATTERN=m
+
+##
+## file: drivers/lightnvm/Kconfig
+##
+# CONFIG_NVM is not set
+
+##
+## file: drivers/mailbox/Kconfig
+##
+# CONFIG_MAILBOX is not set
+
+##
+## file: drivers/mcb/Kconfig
+##
+# CONFIG_MCB is not set
+
+##
+## file: drivers/md/Kconfig
+##
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=m
+CONFIG_MD_LINEAR=m
+CONFIG_MD_RAID0=m
+CONFIG_MD_RAID1=m
+CONFIG_MD_RAID10=m
+CONFIG_MD_RAID456=m
+CONFIG_MD_MULTIPATH=m
+CONFIG_MD_FAULTY=m
+CONFIG_MD_CLUSTER=m
+CONFIG_BLK_DEV_DM=m
+# CONFIG_DM_DEBUG is not set
+# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
+# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set
+CONFIG_DM_UNSTRIPED=m
+CONFIG_DM_CRYPT=m
+CONFIG_DM_SNAPSHOT=m
+CONFIG_DM_THIN_PROVISIONING=m
+CONFIG_DM_CACHE=m
+CONFIG_DM_CACHE_SMQ=m
+CONFIG_DM_WRITECACHE=m
+CONFIG_DM_ERA=m
+CONFIG_DM_MIRROR=m
+CONFIG_DM_LOG_USERSPACE=m
+CONFIG_DM_RAID=m
+CONFIG_DM_ZERO=m
+CONFIG_DM_MULTIPATH=m
+CONFIG_DM_MULTIPATH_QL=m
+CONFIG_DM_MULTIPATH_ST=m
+CONFIG_DM_DELAY=m
+CONFIG_DM_UEVENT=y
+CONFIG_DM_FLAKEY=m
+CONFIG_DM_VERITY=m
+CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y
+# CONFIG_DM_VERITY_FEC is not set
+CONFIG_DM_SWITCH=m
+CONFIG_DM_LOG_WRITES=m
+CONFIG_DM_INTEGRITY=m
+CONFIG_DM_ZONED=m
+
+##
+## file: drivers/md/bcache/Kconfig
+##
+CONFIG_BCACHE=m
+# CONFIG_BCACHE_DEBUG is not set
+# CONFIG_BCACHE_CLOSURES_DEBUG is not set
+
+##
+## file: drivers/media/Kconfig
+##
+CONFIG_MEDIA_SUPPORT=m
+CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
+CONFIG_MEDIA_CAMERA_SUPPORT=y
+CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
+CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
+CONFIG_MEDIA_RADIO_SUPPORT=y
+CONFIG_MEDIA_SDR_SUPPORT=y
+CONFIG_MEDIA_CONTROLLER=y
+
+##
+## file: drivers/media/cec/Kconfig
+##
+CONFIG_MEDIA_CEC_SUPPORT=y
+
+##
+## file: drivers/media/cec/usb/pulse8/Kconfig
+##
+CONFIG_USB_PULSE8_CEC=m
+
+##
+## file: drivers/media/cec/usb/rainshadow/Kconfig
+##
+CONFIG_USB_RAINSHADOW_CEC=m
+
+##
+## file: drivers/media/common/siano/Kconfig
+##
+CONFIG_SMS_SIANO_RC=y
+# CONFIG_SMS_SIANO_DEBUGFS is not set
+
+##
+## file: drivers/media/dvb-core/Kconfig
+##
+# CONFIG_DVB_MMAP is not set
+CONFIG_DVB_NET=y
+CONFIG_DVB_DYNAMIC_MINORS=y
+# CONFIG_DVB_DEMUX_SECTION_LOSS_LOG is not set
+# CONFIG_DVB_ULE_DEBUG is not set
+
+##
+## file: drivers/media/dvb-frontends/Kconfig
+##
+CONFIG_DVB_CX24110=m
+CONFIG_DVB_CX24123=m
+CONFIG_DVB_MT312=m
+CONFIG_DVB_S5H1420=m
+CONFIG_DVB_STV0299=m
+CONFIG_DVB_TDA8083=m
+CONFIG_DVB_TDA10086=m
+CONFIG_DVB_VES1X93=m
+CONFIG_DVB_TUNER_ITD1000=m
+CONFIG_DVB_TDA826X=m
+CONFIG_DVB_TUA6100=m
+CONFIG_DVB_SP8870=m
+CONFIG_DVB_SP887X=m
+CONFIG_DVB_CX22700=m
+CONFIG_DVB_CX22702=m
+CONFIG_DVB_L64781=m
+CONFIG_DVB_TDA1004X=m
+CONFIG_DVB_NXT6000=m
+CONFIG_DVB_MT352=m
+CONFIG_DVB_ZL10353=m
+CONFIG_DVB_DIB3000MB=m
+CONFIG_DVB_DIB3000MC=m
+CONFIG_DVB_DIB7000M=m
+CONFIG_DVB_DIB7000P=m
+CONFIG_DVB_VES1820=m
+CONFIG_DVB_TDA10021=m
+CONFIG_DVB_TDA10023=m
+CONFIG_DVB_STV0297=m
+CONFIG_DVB_NXT200X=m
+CONFIG_DVB_OR51211=m
+CONFIG_DVB_OR51132=m
+CONFIG_DVB_BCM3510=m
+CONFIG_DVB_LGDT330X=m
+CONFIG_DVB_S5H1409=m
+CONFIG_DVB_S921=m
+CONFIG_DVB_TC90522=m
+CONFIG_DVB_PLL=m
+CONFIG_DVB_LNBP21=m
+CONFIG_DVB_ISL6405=m
+CONFIG_DVB_ISL6421=m
+CONFIG_DVB_LGS8GXX=m
+CONFIG_DVB_DUMMY_FE=m
+
+##
+## file: drivers/media/firewire/Kconfig
+##
+CONFIG_DVB_FIREDTV=m
+
+##
+## file: drivers/media/i2c/Kconfig
+##
+CONFIG_VIDEO_TVAUDIO=m
+CONFIG_VIDEO_TDA7432=m
+CONFIG_VIDEO_TDA9840=m
+CONFIG_VIDEO_TEA6415C=m
+CONFIG_VIDEO_TEA6420=m
+CONFIG_VIDEO_MSP3400=m
+CONFIG_VIDEO_CS53L32A=m
+CONFIG_VIDEO_TLV320AIC23B=m
+CONFIG_VIDEO_WM8775=m
+CONFIG_VIDEO_WM8739=m
+CONFIG_VIDEO_SAA6588=m
+CONFIG_VIDEO_BT819=m
+CONFIG_VIDEO_BT856=m
+CONFIG_VIDEO_KS0127=m
+CONFIG_VIDEO_SAA7110=m
+CONFIG_VIDEO_SAA711X=m
+CONFIG_VIDEO_TVP5150=m
+# CONFIG_VIDEO_TW9910 is not set
+CONFIG_VIDEO_VPX3220=m
+CONFIG_VIDEO_SAA7127=m
+CONFIG_VIDEO_SAA7185=m
+CONFIG_VIDEO_ADV7170=m
+CONFIG_VIDEO_ADV7175=m
+CONFIG_VIDEO_UPD64031A=m
+CONFIG_VIDEO_UPD64083=m
+# CONFIG_VIDEO_OV2640 is not set
+# CONFIG_VIDEO_OV772X is not set
+CONFIG_VIDEO_OV7670=m
+# CONFIG_VIDEO_OV9640 is not set
+# CONFIG_VIDEO_MT9M001 is not set
+# CONFIG_VIDEO_MT9T112 is not set
+CONFIG_VIDEO_SR030PC30=m
+CONFIG_VIDEO_NOON010PC30=m
+# CONFIG_VIDEO_RJ54N1 is not set
+
+##
+## file: drivers/media/i2c/cx25840/Kconfig
+##
+CONFIG_VIDEO_CX25840=m
+
+##
+## file: drivers/media/mc/Kconfig
+##
+# CONFIG_MEDIA_CONTROLLER_DVB is not set
+
+##
+## file: drivers/media/mmc/siano/Kconfig
+##
+CONFIG_SMS_SDIO_DRV=m
+
+##
+## file: drivers/media/pci/Kconfig
+##
+CONFIG_MEDIA_PCI_SUPPORT=y
+# CONFIG_VIDEO_PCI_SKELETON is not set
+
+##
+## file: drivers/media/pci/b2c2/Kconfig
+##
+CONFIG_DVB_B2C2_FLEXCOP_PCI=m
+# CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set
+
+##
+## file: drivers/media/pci/bt8xx/Kconfig
+##
+CONFIG_VIDEO_BT848=m
+CONFIG_DVB_BT8XX=m
+
+##
+## file: drivers/media/pci/cx18/Kconfig
+##
+CONFIG_VIDEO_CX18=m
+CONFIG_VIDEO_CX18_ALSA=m
+
+##
+## file: drivers/media/pci/cx23885/Kconfig
+##
+CONFIG_VIDEO_CX23885=m
+CONFIG_MEDIA_ALTERA_CI=m
+
+##
+## file: drivers/media/pci/cx25821/Kconfig
+##
+# CONFIG_VIDEO_CX25821 is not set
+
+##
+## file: drivers/media/pci/cx88/Kconfig
+##
+CONFIG_VIDEO_CX88=m
+CONFIG_VIDEO_CX88_ALSA=m
+CONFIG_VIDEO_CX88_BLACKBIRD=m
+CONFIG_VIDEO_CX88_DVB=m
+CONFIG_VIDEO_CX88_ENABLE_VP3054=y
+
+##
+## file: drivers/media/pci/ddbridge/Kconfig
+##
+CONFIG_DVB_DDBRIDGE=m
+# CONFIG_DVB_DDBRIDGE_MSIENABLE is not set
+
+##
+## file: drivers/media/pci/dm1105/Kconfig
+##
+CONFIG_DVB_DM1105=m
+
+##
+## file: drivers/media/pci/dt3155/Kconfig
+##
+CONFIG_VIDEO_DT3155=m
+
+##
+## file: drivers/media/pci/ivtv/Kconfig
+##
+CONFIG_VIDEO_IVTV=m
+# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set
+CONFIG_VIDEO_IVTV_ALSA=m
+CONFIG_VIDEO_FB_IVTV=m
+
+##
+## file: drivers/media/pci/mantis/Kconfig
+##
+CONFIG_MANTIS_CORE=m
+CONFIG_DVB_MANTIS=m
+CONFIG_DVB_HOPPER=m
+
+##
+## file: drivers/media/pci/meye/Kconfig
+##
+CONFIG_VIDEO_MEYE=m
+
+##
+## file: drivers/media/pci/netup_unidvb/Kconfig
+##
+CONFIG_DVB_NETUP_UNIDVB=m
+
+##
+## file: drivers/media/pci/ngene/Kconfig
+##
+CONFIG_DVB_NGENE=m
+
+##
+## file: drivers/media/pci/pluto2/Kconfig
+##
+CONFIG_DVB_PLUTO2=m
+
+##
+## file: drivers/media/pci/pt1/Kconfig
+##
+CONFIG_DVB_PT1=m
+
+##
+## file: drivers/media/pci/pt3/Kconfig
+##
+CONFIG_DVB_PT3=m
+
+##
+## file: drivers/media/pci/saa7134/Kconfig
+##
+CONFIG_VIDEO_SAA7134=m
+CONFIG_VIDEO_SAA7134_ALSA=m
+CONFIG_VIDEO_SAA7134_RC=y
+CONFIG_VIDEO_SAA7134_DVB=m
+
+##
+## file: drivers/media/pci/saa7146/Kconfig
+##
+CONFIG_VIDEO_HEXIUM_GEMINI=m
+CONFIG_VIDEO_HEXIUM_ORION=m
+CONFIG_VIDEO_MXB=m
+
+##
+## file: drivers/media/pci/saa7164/Kconfig
+##
+CONFIG_VIDEO_SAA7164=m
+
+##
+## file: drivers/media/pci/smipcie/Kconfig
+##
+CONFIG_DVB_SMIPCIE=m
+
+##
+## file: drivers/media/pci/solo6x10/Kconfig
+##
+CONFIG_VIDEO_SOLO6X10=m
+
+##
+## file: drivers/media/pci/ttpci/Kconfig
+##
+CONFIG_DVB_AV7110=m
+CONFIG_DVB_AV7110_OSD=y
+CONFIG_DVB_BUDGET_CORE=m
+CONFIG_DVB_BUDGET=m
+CONFIG_DVB_BUDGET_CI=m
+CONFIG_DVB_BUDGET_AV=m
+CONFIG_DVB_BUDGET_PATCH=m
+
+##
+## file: drivers/media/pci/tw5864/Kconfig
+##
+CONFIG_VIDEO_TW5864=m
+
+##
+## file: drivers/media/pci/tw68/Kconfig
+##
+CONFIG_VIDEO_TW68=m
+
+##
+## file: drivers/media/pci/tw686x/Kconfig
+##
+CONFIG_VIDEO_TW686X=m
+
+##
+## file: drivers/media/platform/Kconfig
+##
+CONFIG_V4L_PLATFORM_DRIVERS=y
+# CONFIG_VIDEO_RENESAS_CEU is not set
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set
+# CONFIG_DVB_PLATFORM_DRIVERS is not set
+# CONFIG_SDR_PLATFORM_DRIVERS is not set
+
+##
+## file: drivers/media/platform/cadence/Kconfig
+##
+# CONFIG_VIDEO_CADENCE is not set
+
+##
+## file: drivers/media/platform/marvell-ccic/Kconfig
+##
+CONFIG_VIDEO_CAFE_CCIC=m
+
+##
+## file: drivers/media/radio/Kconfig
+##
+CONFIG_RADIO_ADAPTERS=y
+# CONFIG_RADIO_SI4713 is not set
+CONFIG_USB_MR800=m
+CONFIG_RADIO_SHARK=m
+CONFIG_RADIO_SHARK2=m
+CONFIG_USB_KEENE=m
+CONFIG_USB_RAREMONO=m
+CONFIG_USB_MA901=m
+# CONFIG_RADIO_TEA5764 is not set
+# CONFIG_RADIO_SAA7706H is not set
+# CONFIG_RADIO_TEF6862 is not set
+# CONFIG_RADIO_WL1273 is not set
+
+##
+## file: drivers/media/radio/si470x/Kconfig
+##
+CONFIG_RADIO_SI470X=y
+CONFIG_USB_SI470X=m
+# CONFIG_I2C_SI470X is not set
+
+##
+## file: drivers/media/radio/si4713/Kconfig
+##
+# CONFIG_I2C_SI4713 is not set
+
+##
+## file: drivers/media/radio/wl128x/Kconfig
+##
+# CONFIG_RADIO_WL128X is not set
+
+##
+## file: drivers/media/rc/Kconfig
+##
+CONFIG_RC_CORE=m
+CONFIG_LIRC=y
+CONFIG_RC_DECODERS=y
+CONFIG_IR_NEC_DECODER=m
+CONFIG_IR_RC5_DECODER=m
+CONFIG_IR_RC6_DECODER=m
+CONFIG_IR_JVC_DECODER=m
+CONFIG_IR_SONY_DECODER=m
+CONFIG_IR_SANYO_DECODER=m
+CONFIG_IR_SHARP_DECODER=m
+CONFIG_IR_MCE_KBD_DECODER=m
+CONFIG_IR_XMP_DECODER=m
+CONFIG_IR_IMON_DECODER=m
+CONFIG_RC_DEVICES=y
+CONFIG_RC_ATI_REMOTE=m
+CONFIG_IR_ENE=m
+# CONFIG_IR_HIX5HD2 is not set
+CONFIG_IR_IMON=m
+CONFIG_IR_IMON_RAW=m
+CONFIG_IR_MCEUSB=m
+# CONFIG_IR_NUVOTON is not set
+CONFIG_IR_REDRAT3=m
+CONFIG_IR_STREAMZAP=m
+CONFIG_IR_IGORPLUGUSB=m
+CONFIG_IR_IGUANA=m
+CONFIG_IR_TTUSBIR=m
+CONFIG_RC_LOOPBACK=m
+# CONFIG_IR_GPIO_CIR is not set
+
+##
+## file: drivers/media/rc/img-ir/Kconfig
+##
+# CONFIG_IR_IMG is not set
+
+##
+## file: drivers/media/rc/keymaps/Kconfig
+##
+CONFIG_RC_MAP=m
+
+##
+## file: drivers/media/spi/Kconfig
+##
+# CONFIG_CXD2880_SPI_DRV is not set
+
+##
+## file: drivers/media/test-drivers/Kconfig
+##
+CONFIG_V4L_TEST_DRIVERS=y
+# CONFIG_VIDEO_VIM2M is not set
+
+##
+## file: drivers/media/test-drivers/vivid/Kconfig
+##
+CONFIG_VIDEO_VIVID=m
+CONFIG_VIDEO_VIVID_CEC=y
+CONFIG_VIDEO_VIVID_MAX_DEVS=64
+
+##
+## file: drivers/media/tuners/Kconfig
+##
+CONFIG_MEDIA_TUNER_TDA827X=m
+CONFIG_MEDIA_TUNER_TEA5761=y
+CONFIG_MEDIA_TUNER_MT2060=m
+CONFIG_MEDIA_TUNER_MT2131=m
+CONFIG_MEDIA_TUNER_QT1010=m
+
+##
+## file: drivers/media/usb/Kconfig
+##
+CONFIG_MEDIA_USB_SUPPORT=y
+
+##
+## file: drivers/media/usb/airspy/Kconfig
+##
+CONFIG_USB_AIRSPY=m
+
+##
+## file: drivers/media/usb/as102/Kconfig
+##
+CONFIG_DVB_AS102=m
+
+##
+## file: drivers/media/usb/au0828/Kconfig
+##
+CONFIG_VIDEO_AU0828=m
+CONFIG_VIDEO_AU0828_V4L2=y
+CONFIG_VIDEO_AU0828_RC=y
+
+##
+## file: drivers/media/usb/b2c2/Kconfig
+##
+CONFIG_DVB_B2C2_FLEXCOP_USB=m
+# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set
+
+##
+## file: drivers/media/usb/cpia2/Kconfig
+##
+CONFIG_VIDEO_CPIA2=m
+
+##
+## file: drivers/media/usb/cx231xx/Kconfig
+##
+CONFIG_VIDEO_CX231XX=m
+CONFIG_VIDEO_CX231XX_RC=y
+CONFIG_VIDEO_CX231XX_ALSA=m
+CONFIG_VIDEO_CX231XX_DVB=m
+
+##
+## file: drivers/media/usb/dvb-usb/Kconfig
+##
+CONFIG_DVB_USB=m
+# CONFIG_DVB_USB_DEBUG is not set
+CONFIG_DVB_USB_A800=m
+CONFIG_DVB_USB_DIBUSB_MB=m
+CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y
+CONFIG_DVB_USB_DIBUSB_MC=m
+CONFIG_DVB_USB_DIB0700=m
+CONFIG_DVB_USB_UMT_010=m
+CONFIG_DVB_USB_CXUSB=m
+CONFIG_DVB_USB_M920X=m
+CONFIG_DVB_USB_DIGITV=m
+CONFIG_DVB_USB_VP7045=m
+CONFIG_DVB_USB_VP702X=m
+CONFIG_DVB_USB_GP8PSK=m
+CONFIG_DVB_USB_NOVA_T_USB2=m
+CONFIG_DVB_USB_TTUSB2=m
+CONFIG_DVB_USB_DTT200U=m
+CONFIG_DVB_USB_OPERA1=m
+CONFIG_DVB_USB_AF9005=m
+CONFIG_DVB_USB_AF9005_REMOTE=m
+CONFIG_DVB_USB_PCTV452E=m
+CONFIG_DVB_USB_DW2102=m
+CONFIG_DVB_USB_CINERGY_T2=m
+CONFIG_DVB_USB_DTV5100=m
+CONFIG_DVB_USB_AZ6027=m
+CONFIG_DVB_USB_TECHNISAT_USB2=m
+
+##
+## file: drivers/media/usb/dvb-usb-v2/Kconfig
+##
+CONFIG_DVB_USB_V2=m
+CONFIG_DVB_USB_AF9015=m
+CONFIG_DVB_USB_AF9035=m
+CONFIG_DVB_USB_ANYSEE=m
+CONFIG_DVB_USB_AU6610=m
+CONFIG_DVB_USB_AZ6007=m
+CONFIG_DVB_USB_CE6230=m
+CONFIG_DVB_USB_EC168=m
+CONFIG_DVB_USB_GL861=m
+CONFIG_DVB_USB_LME2510=m
+CONFIG_DVB_USB_MXL111SF=m
+CONFIG_DVB_USB_RTL28XXU=m
+CONFIG_DVB_USB_DVBSKY=m
+CONFIG_DVB_USB_ZD1301=m
+
+##
+## file: drivers/media/usb/em28xx/Kconfig
+##
+CONFIG_VIDEO_EM28XX=m
+CONFIG_VIDEO_EM28XX_V4L2=m
+CONFIG_VIDEO_EM28XX_ALSA=m
+CONFIG_VIDEO_EM28XX_DVB=m
+CONFIG_VIDEO_EM28XX_RC=y
+
+##
+## file: drivers/media/usb/go7007/Kconfig
+##
+CONFIG_VIDEO_GO7007=m
+CONFIG_VIDEO_GO7007_USB=m
+CONFIG_VIDEO_GO7007_LOADER=m
+CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m
+
+##
+## file: drivers/media/usb/gspca/Kconfig
+##
+CONFIG_USB_GSPCA=m
+CONFIG_USB_GSPCA_BENQ=m
+CONFIG_USB_GSPCA_CONEX=m
+CONFIG_USB_GSPCA_CPIA1=m
+CONFIG_USB_GSPCA_DTCS033=m
+CONFIG_USB_GSPCA_ETOMS=m
+CONFIG_USB_GSPCA_FINEPIX=m
+CONFIG_USB_GSPCA_JEILINJ=m
+CONFIG_USB_GSPCA_JL2005BCD=m
+CONFIG_USB_GSPCA_KINECT=m
+CONFIG_USB_GSPCA_KONICA=m
+CONFIG_USB_GSPCA_MARS=m
+CONFIG_USB_GSPCA_MR97310A=m
+CONFIG_USB_GSPCA_NW80X=m
+CONFIG_USB_GSPCA_OV519=m
+CONFIG_USB_GSPCA_OV534=m
+CONFIG_USB_GSPCA_OV534_9=m
+CONFIG_USB_GSPCA_PAC207=m
+CONFIG_USB_GSPCA_PAC7302=m
+CONFIG_USB_GSPCA_PAC7311=m
+CONFIG_USB_GSPCA_SE401=m
+CONFIG_USB_GSPCA_SN9C2028=m
+CONFIG_USB_GSPCA_SN9C20X=m
+CONFIG_USB_GSPCA_SONIXB=m
+CONFIG_USB_GSPCA_SONIXJ=m
+CONFIG_USB_GSPCA_SPCA500=m
+CONFIG_USB_GSPCA_SPCA501=m
+CONFIG_USB_GSPCA_SPCA505=m
+CONFIG_USB_GSPCA_SPCA506=m
+CONFIG_USB_GSPCA_SPCA508=m
+CONFIG_USB_GSPCA_SPCA561=m
+CONFIG_USB_GSPCA_SPCA1528=m
+CONFIG_USB_GSPCA_SQ905=m
+CONFIG_USB_GSPCA_SQ905C=m
+CONFIG_USB_GSPCA_SQ930X=m
+CONFIG_USB_GSPCA_STK014=m
+CONFIG_USB_GSPCA_STK1135=m
+CONFIG_USB_GSPCA_STV0680=m
+CONFIG_USB_GSPCA_SUNPLUS=m
+CONFIG_USB_GSPCA_T613=m
+CONFIG_USB_GSPCA_TOPRO=m
+CONFIG_USB_GSPCA_TOUPTEK=m
+CONFIG_USB_GSPCA_TV8532=m
+CONFIG_USB_GSPCA_VC032X=m
+CONFIG_USB_GSPCA_VICAM=m
+CONFIG_USB_GSPCA_XIRLINK_CIT=m
+CONFIG_USB_GSPCA_ZC3XX=m
+
+##
+## file: drivers/media/usb/gspca/gl860/Kconfig
+##
+CONFIG_USB_GL860=m
+
+##
+## file: drivers/media/usb/gspca/m5602/Kconfig
+##
+CONFIG_USB_M5602=m
+
+##
+## file: drivers/media/usb/gspca/stv06xx/Kconfig
+##
+CONFIG_USB_STV06XX=m
+
+##
+## file: drivers/media/usb/hackrf/Kconfig
+##
+CONFIG_USB_HACKRF=m
+
+##
+## file: drivers/media/usb/hdpvr/Kconfig
+##
+CONFIG_VIDEO_HDPVR=m
+
+##
+## file: drivers/media/usb/msi2500/Kconfig
+##
+CONFIG_USB_MSI2500=m
+
+##
+## file: drivers/media/usb/pvrusb2/Kconfig
+##
+CONFIG_VIDEO_PVRUSB2=m
+CONFIG_VIDEO_PVRUSB2_SYSFS=y
+CONFIG_VIDEO_PVRUSB2_DVB=y
+# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
+
+##
+## file: drivers/media/usb/pwc/Kconfig
+##
+CONFIG_USB_PWC=m
+# CONFIG_USB_PWC_DEBUG is not set
+CONFIG_USB_PWC_INPUT_EVDEV=y
+
+##
+## file: drivers/media/usb/s2255/Kconfig
+##
+CONFIG_USB_S2255=m
+
+##
+## file: drivers/media/usb/siano/Kconfig
+##
+CONFIG_SMS_USB_DRV=m
+
+##
+## file: drivers/media/usb/stk1160/Kconfig
+##
+CONFIG_VIDEO_STK1160_COMMON=m
+
+##
+## file: drivers/media/usb/stkwebcam/Kconfig
+##
+CONFIG_USB_STKWEBCAM=m
+
+##
+## file: drivers/media/usb/ttusb-budget/Kconfig
+##
+CONFIG_DVB_TTUSB_BUDGET=m
+
+##
+## file: drivers/media/usb/ttusb-dec/Kconfig
+##
+CONFIG_DVB_TTUSB_DEC=m
+
+##
+## file: drivers/media/usb/usbtv/Kconfig
+##
+CONFIG_VIDEO_USBTV=m
+
+##
+## file: drivers/media/usb/uvc/Kconfig
+##
+CONFIG_USB_VIDEO_CLASS=m
+CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y
+
+##
+## file: drivers/media/usb/zr364xx/Kconfig
+##
+CONFIG_USB_ZR364XX=m
+
+##
+## file: drivers/media/v4l2-core/Kconfig
+##
+# CONFIG_VIDEO_V4L2_SUBDEV_API is not set
+# CONFIG_VIDEO_ADV_DEBUG is not set
+# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
+
+##
+## file: drivers/memory/Kconfig
+##
+CONFIG_MEMORY=y
+
+##
+## file: drivers/memstick/Kconfig
+##
+CONFIG_MEMSTICK=m
+# CONFIG_MEMSTICK_DEBUG is not set
+
+##
+## file: drivers/memstick/core/Kconfig
+##
+# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
+CONFIG_MSPRO_BLOCK=m
+# CONFIG_MS_BLOCK is not set
+
+##
+## file: drivers/memstick/host/Kconfig
+##
+CONFIG_MEMSTICK_TIFM_MS=m
+CONFIG_MEMSTICK_JMICRON_38X=m
+CONFIG_MEMSTICK_R592=m
+CONFIG_MEMSTICK_REALTEK_PCI=m
+CONFIG_MEMSTICK_REALTEK_USB=m
+
+##
+## file: drivers/message/fusion/Kconfig
+##
+CONFIG_FUSION=y
+CONFIG_FUSION_SPI=m
+CONFIG_FUSION_FC=m
+CONFIG_FUSION_SAS=m
+CONFIG_FUSION_MAX_SGE=128
+CONFIG_FUSION_CTL=m
+CONFIG_FUSION_LAN=m
+# CONFIG_FUSION_LOGGING is not set
+
+##
+## file: drivers/mfd/Kconfig
+##
+# CONFIG_MFD_CS5535 is not set
+# CONFIG_MFD_AS3711 is not set
+# CONFIG_MFD_AS3722 is not set
+# CONFIG_PMIC_ADP5520 is not set
+# CONFIG_MFD_AAT2870_CORE is not set
+# CONFIG_MFD_ATMEL_FLEXCOM is not set
+# CONFIG_MFD_ATMEL_HLCDC is not set
+# CONFIG_MFD_BCM590XX is not set
+# CONFIG_MFD_BD9571MWV is not set
+# CONFIG_MFD_AXP20X_I2C is not set
+# CONFIG_MFD_MADERA is not set
+# CONFIG_PMIC_DA903X is not set
+# CONFIG_MFD_DA9052_SPI is not set
+# CONFIG_MFD_DA9052_I2C is not set
+# CONFIG_MFD_DA9055 is not set
+# CONFIG_MFD_DA9062 is not set
+# CONFIG_MFD_DA9063 is not set
+# CONFIG_MFD_DA9150 is not set
+# CONFIG_MFD_DLN2 is not set
+# CONFIG_MFD_EXYNOS_LPASS is not set
+# CONFIG_MFD_MC13XXX_SPI is not set
+# CONFIG_MFD_MC13XXX_I2C is not set
+# CONFIG_MFD_HI6421_PMIC is not set
+# CONFIG_HTC_PASIC3 is not set
+# CONFIG_HTC_I2CPLD is not set
+CONFIG_LPC_SCH=m
+# CONFIG_INTEL_SOC_PMIC is not set
+# CONFIG_MFD_INTEL_LPSS_ACPI is not set
+# CONFIG_MFD_INTEL_LPSS_PCI is not set
+# CONFIG_MFD_JANZ_CMODIO is not set
+# CONFIG_MFD_KEMPLD is not set
+# CONFIG_MFD_88PM800 is not set
+# CONFIG_MFD_88PM805 is not set
+# CONFIG_MFD_88PM860X is not set
+# CONFIG_MFD_MAX14577 is not set
+# CONFIG_MFD_MAX77686 is not set
+# CONFIG_MFD_MAX77693 is not set
+# CONFIG_MFD_MAX77843 is not set
+# CONFIG_MFD_MAX8907 is not set
+# CONFIG_MFD_MAX8925 is not set
+# CONFIG_MFD_MAX8997 is not set
+# CONFIG_MFD_MAX8998 is not set
+# CONFIG_MFD_MT6397 is not set
+# CONFIG_MFD_MENF21BMC is not set
+# CONFIG_EZX_PCAP is not set
+CONFIG_MFD_VIPERBOARD=m
+# CONFIG_MFD_RETU is not set
+# CONFIG_MFD_PCF50633 is not set
+CONFIG_PCF50633_ADC=m
+CONFIG_PCF50633_GPIO=m
+# CONFIG_UCB1400_CORE is not set
+# CONFIG_MFD_RDC321X is not set
+# CONFIG_MFD_RT5033 is not set
+# CONFIG_MFD_RC5T583 is not set
+# CONFIG_MFD_RK808 is not set
+# CONFIG_MFD_RN5T618 is not set
+# CONFIG_MFD_SEC_CORE is not set
+# CONFIG_MFD_SI476X_CORE is not set
+# CONFIG_MFD_SM501 is not set
+# CONFIG_MFD_SKY81452 is not set
+# CONFIG_ABX500_CORE is not set
+# CONFIG_AB3100_CORE is not set
+CONFIG_AB3100_OTP=m
+# CONFIG_MFD_STMPE is not set
+# CONFIG_MFD_SYSCON is not set
+# CONFIG_MFD_TI_AM335X_TSCADC is not set
+# CONFIG_MFD_LP3943 is not set
+# CONFIG_MFD_LP8788 is not set
+# CONFIG_MFD_TI_LMU is not set
+# CONFIG_MFD_PALMAS is not set
+# CONFIG_TPS6105X is not set
+# CONFIG_TPS65010 is not set
+# CONFIG_TPS6507X is not set
+# CONFIG_MFD_TPS65086 is not set
+# CONFIG_MFD_TPS65090 is not set
+# CONFIG_MFD_TPS65217 is not set
+# CONFIG_MFD_TPS68470 is not set
+# CONFIG_MFD_TI_LP873X is not set
+# CONFIG_MFD_TPS65218 is not set
+# CONFIG_MFD_TPS6586X is not set
+# CONFIG_MFD_TPS65910 is not set
+# CONFIG_MFD_TPS65912_I2C is not set
+# CONFIG_MFD_TPS65912_SPI is not set
+# CONFIG_MFD_TPS80031 is not set
+# CONFIG_TWL4030_CORE is not set
+# CONFIG_TWL6040_CORE is not set
+# CONFIG_MFD_WL1273_CORE is not set
+# CONFIG_MFD_LM3533 is not set
+# CONFIG_MFD_TIMBERDALE is not set
+# CONFIG_MFD_TC3589X is not set
+# CONFIG_MFD_VX855 is not set
+# CONFIG_MFD_ARIZONA_I2C is not set
+# CONFIG_MFD_ARIZONA_SPI is not set
+# CONFIG_MFD_WM8400 is not set
+# CONFIG_MFD_WM831X_I2C is not set
+# CONFIG_MFD_WM831X_SPI is not set
+# CONFIG_MFD_WM8350_I2C is not set
+# CONFIG_MFD_WM8994 is not set
+# CONFIG_RAVE_SP_CORE is not set
+
+##
+## file: drivers/misc/Kconfig
+##
+CONFIG_AD525X_DPOT=m
+CONFIG_AD525X_DPOT_I2C=m
+CONFIG_AD525X_DPOT_SPI=m
+# CONFIG_DUMMY_IRQ is not set
+# CONFIG_INTEL_MID_PTI is not set
+CONFIG_TIFM_CORE=m
+CONFIG_TIFM_7XX1=m
+CONFIG_ICS932S401=m
+# CONFIG_ATMEL_SSC is not set
+CONFIG_ENCLOSURE_SERVICES=m
+CONFIG_SGI_XP=m
+CONFIG_CS5535_CLOCK_EVENT_SRC=m
+CONFIG_SGI_GRU=m
+# CONFIG_SGI_GRU_DEBUG is not set
+CONFIG_APDS9802ALS=m
+CONFIG_ISL29003=m
+CONFIG_ISL29020=m
+CONFIG_SENSORS_TSL2550=m
+CONFIG_SENSORS_BH1770=m
+CONFIG_SENSORS_APDS990X=m
+CONFIG_HMC6352=m
+CONFIG_DS1682=m
+# CONFIG_LATTICE_ECP3_CONFIG is not set
+# CONFIG_SRAM is not set
+# CONFIG_PCI_ENDPOINT_TEST is not set
+
+##
+## file: drivers/misc/altera-stapl/Kconfig
+##
+# CONFIG_ALTERA_STAPL is not set
+
+##
+## file: drivers/misc/c2port/Kconfig
+##
+CONFIG_C2PORT=m
+CONFIG_C2PORT_DURAMAR_2150=m
+
+##
+## file: drivers/misc/cardreader/Kconfig
+##
+CONFIG_MISC_RTSX_PCI=m
+CONFIG_MISC_RTSX_USB=m
+
+##
+## file: drivers/misc/cb710/Kconfig
+##
+CONFIG_CB710_CORE=m
+# CONFIG_CB710_DEBUG is not set
+
+##
+## file: drivers/misc/echo/Kconfig
+##
+# CONFIG_ECHO is not set
+
+##
+## file: drivers/misc/eeprom/Kconfig
+##
+CONFIG_EEPROM_AT24=m
+CONFIG_EEPROM_AT25=m
+CONFIG_EEPROM_LEGACY=m
+CONFIG_EEPROM_MAX6875=m
+CONFIG_EEPROM_93CX6=m
+# CONFIG_EEPROM_93XX46 is not set
+# CONFIG_EEPROM_IDT_89HPESX is not set
+CONFIG_EEPROM_EE1004=m
+
+##
+## file: drivers/misc/genwqe/Kconfig
+##
+# CONFIG_GENWQE is not set
+
+##
+## file: drivers/misc/lis3lv02d/Kconfig
+##
+CONFIG_SENSORS_LIS3_I2C=m
+
+##
+## file: drivers/misc/ti-st/Kconfig
+##
+# CONFIG_TI_ST is not set
+
+##
+## file: drivers/mmc/core/Kconfig
+##
+CONFIG_MMC_BLOCK_MINORS=256
+CONFIG_SDIO_UART=m
+# CONFIG_MMC_TEST is not set
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+CONFIG_MMC_SDHCI=m
+CONFIG_MMC_SDHCI_PCI=m
+CONFIG_MMC_RICOH_MMC=y
+# CONFIG_MMC_SDHCI_PLTFM is not set
+CONFIG_MMC_WBSD=m
+CONFIG_MMC_TIFM_SD=m
+# CONFIG_MMC_SPI is not set
+CONFIG_MMC_SDRICOH_CS=m
+CONFIG_MMC_CB710=m
+CONFIG_MMC_VIA_SDMMC=m
+CONFIG_MMC_VUB300=m
+CONFIG_MMC_USHC=m
+# CONFIG_MMC_USDHI6ROL0 is not set
+CONFIG_MMC_REALTEK_PCI=m
+CONFIG_MMC_REALTEK_USB=m
+CONFIG_MMC_TOSHIBA_PCI=m
+# CONFIG_MMC_MTK is not set
+
+##
+## file: drivers/most/Kconfig
+##
+# CONFIG_MOST is not set
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_MTD=m
+# CONFIG_MTD_TESTS is not set
+CONFIG_MTD_BLOCK=m
+CONFIG_MTD_BLOCK_RO=m
+CONFIG_RFD_FTL=m
+CONFIG_SSFDC=m
+# CONFIG_SM_FTL is not set
+CONFIG_MTD_OOPS=m
+CONFIG_MTD_SWAP=m
+# CONFIG_MTD_PARTITIONED_MASTER is not set
+
+##
+## file: drivers/mtd/devices/Kconfig
+##
+CONFIG_MTD_DATAFLASH=m
+# CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set
+# CONFIG_MTD_DATAFLASH_OTP is not set
+# CONFIG_MTD_MCHP23K256 is not set
+CONFIG_MTD_SST25L=m
+# CONFIG_MTD_DOCG3 is not set
+
+##
+## file: drivers/mtd/lpddr/Kconfig
+##
+CONFIG_MTD_LPDDR=m
+
+##
+## file: drivers/mtd/maps/Kconfig
+##
+# CONFIG_MTD_PHYSMAP_OF is not set
+# CONFIG_MTD_PHYSMAP_GPIO_ADDR is not set
+# CONFIG_MTD_ESB2ROM is not set
+# CONFIG_MTD_CK804XROM is not set
+CONFIG_MTD_PCMCIA=m
+# CONFIG_MTD_PCMCIA_ANONYMOUS is not set
+CONFIG_MTD_INTEL_VR_NOR=m
+CONFIG_MTD_PLATRAM=m
+
+##
+## file: drivers/mtd/nand/onenand/Kconfig
+##
+CONFIG_MTD_ONENAND=m
+CONFIG_MTD_ONENAND_VERIFY_WRITE=y
+# CONFIG_MTD_ONENAND_GENERIC is not set
+# CONFIG_MTD_ONENAND_OTP is not set
+CONFIG_MTD_ONENAND_2X_PROGRAM=y
+
+##
+## file: drivers/mtd/nand/raw/Kconfig
+##
+# CONFIG_MTD_NAND_ECC_SW_HAMMING_SMC is not set
+CONFIG_MTD_NAND_ECC_SW_BCH=y
+# CONFIG_MTD_NAND_DENALI_PCI is not set
+# CONFIG_MTD_NAND_DENALI_DT is not set
+CONFIG_MTD_NAND_CAFE=m
+CONFIG_MTD_NAND_CS553X=m
+# CONFIG_MTD_NAND_HISI504 is not set
+# CONFIG_MTD_NAND_MTK is not set
+# CONFIG_MTD_NAND_GPIO is not set
+# CONFIG_MTD_NAND_PLATFORM is not set
+CONFIG_MTD_NAND_NANDSIM=m
+CONFIG_MTD_NAND_RICOH=m
+
+##
+## file: drivers/mtd/nand/spi/Kconfig
+##
+# CONFIG_MTD_SPI_NAND is not set
+
+##
+## file: drivers/mtd/parsers/Kconfig
+##
+CONFIG_MTD_AR7_PARTS=m
+CONFIG_MTD_OF_PARTS=m
+
+##
+## file: drivers/mtd/spi-nor/Kconfig
+##
+CONFIG_MTD_SPI_NOR=m
+CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
+
+##
+## file: drivers/mtd/ubi/Kconfig
+##
+CONFIG_MTD_UBI=m
+CONFIG_MTD_UBI_WL_THRESHOLD=4096
+CONFIG_MTD_UBI_BEB_LIMIT=20
+# CONFIG_MTD_UBI_FASTMAP is not set
+# CONFIG_MTD_UBI_GLUEBI is not set
+CONFIG_MTD_UBI_BLOCK=y
+
+##
+## file: drivers/net/Kconfig
+##
+CONFIG_NETDEVICES=y
+CONFIG_NET_CORE=y
+CONFIG_BONDING=m
+CONFIG_DUMMY=m
+CONFIG_WIREGUARD=m
+# CONFIG_WIREGUARD_DEBUG is not set
+CONFIG_EQUALIZER=m
+CONFIG_IFB=m
+CONFIG_MACVLAN=m
+CONFIG_MACVTAP=m
+CONFIG_IPVLAN=m
+CONFIG_IPVTAP=m
+CONFIG_VXLAN=m
+CONFIG_GENEVE=m
+CONFIG_GTP=m
+CONFIG_MACSEC=m
+CONFIG_NETCONSOLE=m
+CONFIG_NETCONSOLE_DYNAMIC=y
+CONFIG_TUN=m
+# CONFIG_TUN_VNET_CROSS_LE is not set
+CONFIG_VETH=m
+CONFIG_VIRTIO_NET=m
+CONFIG_NLMON=m
+CONFIG_NET_VRF=m
+CONFIG_VSOCKMON=m
+CONFIG_XEN_NETDEV_FRONTEND=m
+CONFIG_XEN_NETDEV_BACKEND=m
+# CONFIG_VMXNET3 is not set
+# CONFIG_FUJITSU_ES is not set
+# CONFIG_NETDEVSIM is not set
+CONFIG_NET_FAILOVER=m
+
+##
+## file: drivers/net/appletalk/Kconfig
+##
+CONFIG_ATALK=m
+CONFIG_DEV_APPLETALK=y
+CONFIG_LTPC=m
+CONFIG_IPDDP=m
+CONFIG_IPDDP_ENCAP=y
+
+##
+## file: drivers/net/can/Kconfig
+##
+CONFIG_CAN_VCAN=m
+CONFIG_CAN_VXCAN=m
+CONFIG_CAN_SLCAN=m
+CONFIG_CAN_DEV=m
+CONFIG_CAN_CALC_BITTIMING=y
+# CONFIG_CAN_LEDS is not set
+# CONFIG_CAN_GRCAN is not set
+# CONFIG_CAN_DEBUG_DEVICES is not set
+
+##
+## file: drivers/net/can/c_can/Kconfig
+##
+# CONFIG_CAN_C_CAN is not set
+
+##
+## file: drivers/net/can/cc770/Kconfig
+##
+# CONFIG_CAN_CC770 is not set
+
+##
+## file: drivers/net/can/ifi_canfd/Kconfig
+##
+# CONFIG_CAN_IFI_CANFD is not set
+
+##
+## file: drivers/net/can/m_can/Kconfig
+##
+# CONFIG_CAN_M_CAN is not set
+
+##
+## file: drivers/net/can/peak_canfd/Kconfig
+##
+CONFIG_CAN_PEAK_PCIEFD=m
+
+##
+## file: drivers/net/can/sja1000/Kconfig
+##
+CONFIG_CAN_SJA1000=m
+CONFIG_CAN_EMS_PCI=m
+CONFIG_CAN_EMS_PCMCIA=m
+CONFIG_CAN_KVASER_PCI=m
+CONFIG_CAN_PEAK_PCI=m
+CONFIG_CAN_PEAK_PCIEC=y
+CONFIG_CAN_PEAK_PCMCIA=m
+CONFIG_CAN_PLX_PCI=m
+CONFIG_CAN_SJA1000_ISA=m
+# CONFIG_CAN_SJA1000_PLATFORM is not set
+CONFIG_CAN_TSCAN1=m
+
+##
+## file: drivers/net/can/softing/Kconfig
+##
+CONFIG_CAN_SOFTING=m
+CONFIG_CAN_SOFTING_CS=m
+
+##
+## file: drivers/net/can/spi/Kconfig
+##
+# CONFIG_CAN_HI311X is not set
+CONFIG_CAN_MCP251X=m
+
+##
+## file: drivers/net/can/usb/Kconfig
+##
+CONFIG_CAN_8DEV_USB=m
+CONFIG_CAN_EMS_USB=m
+CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_GS_USB=m
+CONFIG_CAN_KVASER_USB=m
+CONFIG_CAN_MCBA_USB=m
+CONFIG_CAN_PEAK_USB=m
+CONFIG_CAN_UCAN=m
+
+##
+## file: drivers/net/dsa/Kconfig
+##
+# CONFIG_NET_DSA_BCM_SF2 is not set
+# CONFIG_NET_DSA_MV88E6060 is not set
+
+##
+## file: drivers/net/dsa/mv88e6xxx/Kconfig
+##
+# CONFIG_NET_DSA_MV88E6XXX is not set
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+CONFIG_ETHERNET=y
+# CONFIG_DNET is not set
+CONFIG_JME=m
+# CONFIG_ETHOC is not set
+
+##
+## file: drivers/net/ethernet/agere/Kconfig
+##
+CONFIG_NET_VENDOR_AGERE=y
+CONFIG_ET131X=m
+
+##
+## file: drivers/net/ethernet/alacritech/Kconfig
+##
+CONFIG_NET_VENDOR_ALACRITECH=y
+# CONFIG_SLICOSS is not set
+
+##
+## file: drivers/net/ethernet/alteon/Kconfig
+##
+CONFIG_NET_VENDOR_ALTEON=y
+CONFIG_ACENIC=m
+# CONFIG_ACENIC_OMIT_TIGON_I is not set
+
+##
+## file: drivers/net/ethernet/amazon/Kconfig
+##
+CONFIG_NET_VENDOR_AMAZON=y
+CONFIG_ENA_ETHERNET=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+CONFIG_NET_VENDOR_AMD=y
+CONFIG_PCNET32=m
+CONFIG_AMD_XGBE_DCB=y
+
+##
+## file: drivers/net/ethernet/apm/xgene/Kconfig
+##
+# CONFIG_NET_XGENE is not set
+
+##
+## file: drivers/net/ethernet/aquantia/Kconfig
+##
+CONFIG_NET_VENDOR_AQUANTIA=y
+CONFIG_AQTION=m
+
+##
+## file: drivers/net/ethernet/arc/Kconfig
+##
+# CONFIG_NET_VENDOR_ARC is not set
+
+##
+## file: drivers/net/ethernet/atheros/Kconfig
+##
+CONFIG_NET_VENDOR_ATHEROS=y
+CONFIG_ATL2=m
+CONFIG_ATL1=m
+CONFIG_ATL1E=m
+CONFIG_ATL1C=m
+CONFIG_ALX=m
+
+##
+## file: drivers/net/ethernet/aurora/Kconfig
+##
+# CONFIG_NET_VENDOR_AURORA is not set
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+CONFIG_NET_VENDOR_BROADCOM=y
+# CONFIG_BCMGENET is not set
+CONFIG_BNX2=m
+CONFIG_CNIC=m
+CONFIG_TIGON3=m
+CONFIG_TIGON3_HWMON=y
+CONFIG_BNX2X=m
+CONFIG_BNX2X_SRIOV=y
+# CONFIG_SYSTEMPORT is not set
+CONFIG_BNXT=m
+CONFIG_BNXT_SRIOV=y
+CONFIG_BNXT_FLOWER_OFFLOAD=y
+CONFIG_BNXT_DCB=y
+CONFIG_BNXT_HWMON=y
+
+##
+## file: drivers/net/ethernet/brocade/Kconfig
+##
+CONFIG_NET_VENDOR_BROCADE=y
+
+##
+## file: drivers/net/ethernet/brocade/bna/Kconfig
+##
+CONFIG_BNA=m
+
+##
+## file: drivers/net/ethernet/cadence/Kconfig
+##
+CONFIG_NET_VENDOR_CADENCE=y
+# CONFIG_MACB is not set
+
+##
+## file: drivers/net/ethernet/calxeda/Kconfig
+##
+# CONFIG_NET_CALXEDA_XGMAC is not set
+
+##
+## file: drivers/net/ethernet/cavium/Kconfig
+##
+CONFIG_NET_VENDOR_CAVIUM=y
+# CONFIG_THUNDER_NIC_PF is not set
+# CONFIG_THUNDER_NIC_VF is not set
+# CONFIG_THUNDER_NIC_BGX is not set
+# CONFIG_THUNDER_NIC_RGX is not set
+CONFIG_CAVIUM_PTP=m
+CONFIG_LIQUIDIO=m
+CONFIG_LIQUIDIO_VF=m
+
+##
+## file: drivers/net/ethernet/chelsio/Kconfig
+##
+CONFIG_NET_VENDOR_CHELSIO=y
+CONFIG_CHELSIO_T1=m
+CONFIG_CHELSIO_T1_1G=y
+CONFIG_CHELSIO_T3=m
+CONFIG_CHELSIO_T4=m
+CONFIG_CHELSIO_T4_DCB=y
+CONFIG_CHELSIO_T4_FCOE=y
+CONFIG_CHELSIO_T4VF=m
+
+##
+## file: drivers/net/ethernet/cirrus/Kconfig
+##
+# CONFIG_CS89x0_PLATFORM is not set
+
+##
+## file: drivers/net/ethernet/cisco/Kconfig
+##
+CONFIG_NET_VENDOR_CISCO=y
+
+##
+## file: drivers/net/ethernet/cisco/enic/Kconfig
+##
+CONFIG_ENIC=m
+
+##
+## file: drivers/net/ethernet/cortina/Kconfig
+##
+CONFIG_NET_VENDOR_CORTINA=y
+
+##
+## file: drivers/net/ethernet/dec/Kconfig
+##
+CONFIG_NET_VENDOR_DEC=y
+
+##
+## file: drivers/net/ethernet/dec/tulip/Kconfig
+##
+CONFIG_DE2104X_DSL=0
+CONFIG_TULIP_NAPI=y
+CONFIG_TULIP_NAPI_HW_MITIGATION=y
+# CONFIG_DE4X5 is not set
+CONFIG_ULI526X=m
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+CONFIG_NET_VENDOR_DLINK=y
+CONFIG_DL2K=m
+
+##
+## file: drivers/net/ethernet/emulex/Kconfig
+##
+CONFIG_NET_VENDOR_EMULEX=y
+
+##
+## file: drivers/net/ethernet/emulex/benet/Kconfig
+##
+CONFIG_BE2NET=m
+CONFIG_BE2NET_HWMON=y
+CONFIG_BE2NET_BE2=y
+CONFIG_BE2NET_BE3=y
+CONFIG_BE2NET_LANCER=y
+CONFIG_BE2NET_SKYHAWK=y
+
+##
+## file: drivers/net/ethernet/ezchip/Kconfig
+##
+CONFIG_NET_VENDOR_EZCHIP=y
+# CONFIG_EZCHIP_NPS_MANAGEMENT_ENET is not set
+
+##
+## file: drivers/net/ethernet/huawei/Kconfig
+##
+CONFIG_NET_VENDOR_HUAWEI=y
+
+##
+## file: drivers/net/ethernet/huawei/hinic/Kconfig
+##
+CONFIG_HINIC=m
+
+##
+## file: drivers/net/ethernet/i825xx/Kconfig
+##
+CONFIG_NET_VENDOR_I825XX=y
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_NET_VENDOR_INTEL=y
+CONFIG_E1000=m
+CONFIG_E1000E=m
+CONFIG_E1000E_HWTS=y
+CONFIG_IGB=m
+CONFIG_IGB_HWMON=y
+CONFIG_IGB_DCA=y
+CONFIG_IGBVF=m
+CONFIG_IXGB=m
+CONFIG_IXGBE=m
+CONFIG_IXGBE_HWMON=y
+CONFIG_IXGBE_DCA=y
+CONFIG_IXGBE_DCB=y
+CONFIG_IXGBEVF=m
+CONFIG_I40E=m
+CONFIG_I40E_DCB=y
+CONFIG_I40EVF=m
+CONFIG_ICE=m
+# CONFIG_FM10K is not set
+CONFIG_IGC=m
+
+##
+## file: drivers/net/ethernet/marvell/Kconfig
+##
+CONFIG_NET_VENDOR_MARVELL=y
+# CONFIG_MVMDIO is not set
+CONFIG_SKGE=m
+# CONFIG_SKGE_DEBUG is not set
+CONFIG_SKGE_GENESIS=y
+CONFIG_SKY2=m
+# CONFIG_SKY2_DEBUG is not set
+
+##
+## file: drivers/net/ethernet/mellanox/Kconfig
+##
+CONFIG_NET_VENDOR_MELLANOX=y
+
+##
+## file: drivers/net/ethernet/mellanox/mlx4/Kconfig
+##
+CONFIG_MLX4_EN=m
+CONFIG_MLX4_EN_DCB=y
+CONFIG_MLX4_DEBUG=y
+CONFIG_MLX4_CORE_GEN2=y
+
+##
+## file: drivers/net/ethernet/mellanox/mlx5/core/Kconfig
+##
+CONFIG_MLX5_CORE=m
+CONFIG_MLX5_FPGA=y
+CONFIG_MLX5_CORE_EN=y
+CONFIG_MLX5_EN_ARFS=y
+CONFIG_MLX5_EN_RXNFC=y
+CONFIG_MLX5_MPFS=y
+CONFIG_MLX5_ESWITCH=y
+CONFIG_MLX5_CORE_EN_DCB=y
+CONFIG_MLX5_CORE_IPOIB=y
+CONFIG_MLX5_SW_STEERING=y
+
+##
+## file: drivers/net/ethernet/mellanox/mlxfw/Kconfig
+##
+CONFIG_MLXFW=m
+
+##
+## file: drivers/net/ethernet/mellanox/mlxsw/Kconfig
+##
+# CONFIG_MLXSW_CORE is not set
+
+##
+## file: drivers/net/ethernet/micrel/Kconfig
+##
+CONFIG_NET_VENDOR_MICREL=y
+# CONFIG_KS8842 is not set
+# CONFIG_KS8851 is not set
+# CONFIG_KS8851_MLL is not set
+CONFIG_KSZ884X_PCI=m
+
+##
+## file: drivers/net/ethernet/microchip/Kconfig
+##
+CONFIG_NET_VENDOR_MICROCHIP=y
+# CONFIG_ENC28J60 is not set
+# CONFIG_ENC28J60_WRITEVERIFY is not set
+# CONFIG_ENCX24J600 is not set
+CONFIG_LAN743X=m
+
+##
+## file: drivers/net/ethernet/mscc/Kconfig
+##
+CONFIG_NET_VENDOR_MICROSEMI=y
+# CONFIG_MSCC_OCELOT_SWITCH is not set
+
+##
+## file: drivers/net/ethernet/myricom/Kconfig
+##
+CONFIG_NET_VENDOR_MYRI=y
+CONFIG_MYRI10GE=m
+CONFIG_MYRI10GE_DCA=y
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_NET_VENDOR_NATSEMI=y
+CONFIG_NS83820=m
+
+##
+## file: drivers/net/ethernet/neterion/Kconfig
+##
+CONFIG_NET_VENDOR_NETERION=y
+CONFIG_S2IO=m
+CONFIG_VXGE=m
+# CONFIG_VXGE_DEBUG_TRACE_ALL is not set
+
+##
+## file: drivers/net/ethernet/netronome/Kconfig
+##
+CONFIG_NET_VENDOR_NETRONOME=y
+CONFIG_NFP=m
+CONFIG_NFP_APP_FLOWER=y
+CONFIG_NFP_APP_ABM_NIC=y
+# CONFIG_NFP_DEBUG is not set
+
+##
+## file: drivers/net/ethernet/ni/Kconfig
+##
+CONFIG_NET_VENDOR_NI=y
+
+##
+## file: drivers/net/ethernet/oki-semi/Kconfig
+##
+CONFIG_NET_VENDOR_OKI=y
+
+##
+## file: drivers/net/ethernet/packetengines/Kconfig
+##
+CONFIG_NET_VENDOR_PACKET_ENGINES=y
+CONFIG_HAMACHI=m
+CONFIG_YELLOWFIN=m
+
+##
+## file: drivers/net/ethernet/qlogic/Kconfig
+##
+CONFIG_NET_VENDOR_QLOGIC=y
+CONFIG_QLA3XXX=m
+CONFIG_QLCNIC=m
+CONFIG_QLCNIC_SRIOV=y
+CONFIG_QLCNIC_DCB=y
+CONFIG_QLCNIC_HWMON=y
+CONFIG_NETXEN_NIC=m
+CONFIG_QED=m
+CONFIG_QED_SRIOV=y
+CONFIG_QEDE=m
+
+##
+## file: drivers/net/ethernet/qualcomm/Kconfig
+##
+CONFIG_NET_VENDOR_QUALCOMM=y
+# CONFIG_QCA7000_SPI is not set
+# CONFIG_QCOM_EMAC is not set
+
+##
+## file: drivers/net/ethernet/qualcomm/rmnet/Kconfig
+##
+# CONFIG_RMNET is not set
+
+##
+## file: drivers/net/ethernet/rdc/Kconfig
+##
+CONFIG_NET_VENDOR_RDC=y
+CONFIG_R6040=m
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_NET_VENDOR_REALTEK=y
+# CONFIG_8139TOO_PIO is not set
+CONFIG_8139TOO_TUNE_TWISTER=y
+CONFIG_8139TOO_8129=y
+# CONFIG_8139_OLD_RX_RESET is not set
+CONFIG_R8169=m
+
+##
+## file: drivers/net/ethernet/renesas/Kconfig
+##
+CONFIG_NET_VENDOR_RENESAS=y
+# CONFIG_SH_ETH is not set
+
+##
+## file: drivers/net/ethernet/rocker/Kconfig
+##
+CONFIG_NET_VENDOR_ROCKER=y
+# CONFIG_ROCKER is not set
+
+##
+## file: drivers/net/ethernet/samsung/Kconfig
+##
+CONFIG_NET_VENDOR_SAMSUNG=y
+# CONFIG_SXGBE_ETH is not set
+
+##
+## file: drivers/net/ethernet/seeq/Kconfig
+##
+# CONFIG_NET_VENDOR_SEEQ is not set
+
+##
+## file: drivers/net/ethernet/sfc/Kconfig
+##
+CONFIG_NET_VENDOR_SOLARFLARE=y
+CONFIG_SFC=m
+CONFIG_SFC_MTD=y
+CONFIG_SFC_MCDI_MON=y
+CONFIG_SFC_SRIOV=y
+CONFIG_SFC_MCDI_LOGGING=y
+
+##
+## file: drivers/net/ethernet/sfc/falcon/Kconfig
+##
+CONFIG_SFC_FALCON=m
+CONFIG_SFC_FALCON_MTD=y
+
+##
+## file: drivers/net/ethernet/silan/Kconfig
+##
+CONFIG_NET_VENDOR_SILAN=y
+CONFIG_SC92031=m
+
+##
+## file: drivers/net/ethernet/sis/Kconfig
+##
+CONFIG_NET_VENDOR_SIS=y
+CONFIG_SIS190=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_NET_VENDOR_SMSC=y
+# CONFIG_SMSC911X is not set
+CONFIG_SMSC9420=m
+
+##
+## file: drivers/net/ethernet/socionext/Kconfig
+##
+CONFIG_NET_VENDOR_SOCIONEXT=y
+
+##
+## file: drivers/net/ethernet/stmicro/Kconfig
+##
+CONFIG_NET_VENDOR_STMICRO=y
+
+##
+## file: drivers/net/ethernet/stmicro/stmmac/Kconfig
+##
+# CONFIG_STMMAC_ETH is not set
+
+##
+## file: drivers/net/ethernet/sun/Kconfig
+##
+CONFIG_NET_VENDOR_SUN=y
+CONFIG_CASSINI=m
+CONFIG_NIU=m
+
+##
+## file: drivers/net/ethernet/synopsys/Kconfig
+##
+CONFIG_NET_VENDOR_SYNOPSYS=y
+# CONFIG_DWC_XLGMAC is not set
+
+##
+## file: drivers/net/ethernet/tehuti/Kconfig
+##
+CONFIG_NET_VENDOR_TEHUTI=y
+CONFIG_TEHUTI=m
+
+##
+## file: drivers/net/ethernet/ti/Kconfig
+##
+CONFIG_NET_VENDOR_TI=y
+CONFIG_TLAN=m
+
+##
+## file: drivers/net/ethernet/via/Kconfig
+##
+CONFIG_NET_VENDOR_VIA=y
+CONFIG_VIA_VELOCITY=m
+
+##
+## file: drivers/net/ethernet/wiznet/Kconfig
+##
+CONFIG_NET_VENDOR_WIZNET=y
+# CONFIG_WIZNET_W5100 is not set
+# CONFIG_WIZNET_W5300 is not set
+
+##
+## file: drivers/net/ethernet/xscale/Kconfig
+##
+CONFIG_PTP_1588_CLOCK_IXP46X=m
+
+##
+## file: drivers/net/fddi/Kconfig
+##
+CONFIG_DEFXX=m
+# CONFIG_DEFXX_MMIO is not set
+
+##
+## file: drivers/net/hamradio/Kconfig
+##
+CONFIG_MKISS=m
+CONFIG_6PACK=m
+CONFIG_BPQETHER=m
+CONFIG_DMASCC=m
+CONFIG_SCC=m
+# CONFIG_SCC_DELAY is not set
+# CONFIG_SCC_TRXECHO is not set
+CONFIG_BAYCOM_SER_FDX=m
+CONFIG_BAYCOM_SER_HDX=m
+CONFIG_BAYCOM_PAR=m
+CONFIG_BAYCOM_EPP=m
+CONFIG_YAM=m
+
+##
+## file: drivers/net/ieee802154/Kconfig
+##
+CONFIG_IEEE802154_DRIVERS=m
+CONFIG_IEEE802154_FAKELB=m
+CONFIG_IEEE802154_AT86RF230=m
+# CONFIG_IEEE802154_AT86RF230_DEBUGFS is not set
+CONFIG_IEEE802154_MRF24J40=m
+CONFIG_IEEE802154_CC2520=m
+CONFIG_IEEE802154_ATUSB=m
+CONFIG_IEEE802154_ADF7242=m
+# CONFIG_IEEE802154_CA8210 is not set
+# CONFIG_IEEE802154_MCR20A is not set
+CONFIG_IEEE802154_HWSIM=m
+
+##
+## file: drivers/net/mdio/Kconfig
+##
+CONFIG_MDIO_DEVICE=m
+# CONFIG_MDIO_BITBANG is not set
+# CONFIG_MDIO_BCM_UNIMAC is not set
+# CONFIG_MDIO_GPIO is not set
+# CONFIG_MDIO_MSCC_MIIM is not set
+# CONFIG_MDIO_OCTEON is not set
+# CONFIG_MDIO_THUNDER is not set
+# CONFIG_MDIO_BUS_MUX_GPIO is not set
+# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
+
+##
+## file: drivers/net/phy/Kconfig
+##
+CONFIG_PHYLIB=m
+CONFIG_LED_TRIGGER_PHY=y
+#. Must only be enabled for specific flavours
+# CONFIG_FIXED_PHY is not set
+CONFIG_SFP=m
+CONFIG_AMD_PHY=m
+CONFIG_AQUANTIA_PHY=m
+# CONFIG_AX88796B_PHY is not set
+CONFIG_BROADCOM_PHY=m
+# CONFIG_BCM63XX_PHY is not set
+# CONFIG_BCM7XXX_PHY is not set
+CONFIG_BCM87XX_PHY=m
+CONFIG_CICADA_PHY=m
+CONFIG_CORTINA_PHY=m
+CONFIG_DAVICOM_PHY=m
+CONFIG_ICPLUS_PHY=m
+CONFIG_LXT_PHY=m
+# CONFIG_INTEL_XWAY_PHY is not set
+CONFIG_LSI_ET1011C_PHY=m
+CONFIG_MARVELL_PHY=m
+CONFIG_MARVELL_10G_PHY=m
+CONFIG_MICREL_PHY=m
+CONFIG_MICROCHIP_PHY=m
+CONFIG_MICROCHIP_T1_PHY=m
+CONFIG_MICROSEMI_PHY=m
+CONFIG_NATIONAL_PHY=m
+CONFIG_AT803X_PHY=m
+CONFIG_QSEMI_PHY=m
+CONFIG_REALTEK_PHY=m
+CONFIG_RENESAS_PHY=m
+CONFIG_ROCKCHIP_PHY=m
+CONFIG_SMSC_PHY=m
+CONFIG_STE10XP=m
+CONFIG_TERANETICS_PHY=m
+CONFIG_DP83822_PHY=m
+CONFIG_DP83TC811_PHY=m
+CONFIG_DP83848_PHY=m
+CONFIG_DP83867_PHY=m
+CONFIG_VITESSE_PHY=m
+# CONFIG_XILINX_GMII2RGMII is not set
+# CONFIG_MICREL_KS8995MA is not set
+
+##
+## file: drivers/net/ppp/Kconfig
+##
+CONFIG_PPP=m
+CONFIG_PPP_BSDCOMP=m
+CONFIG_PPP_DEFLATE=m
+CONFIG_PPP_FILTER=y
+CONFIG_PPP_MPPE=m
+CONFIG_PPP_MULTILINK=y
+CONFIG_PPPOATM=m
+CONFIG_PPPOE=m
+CONFIG_PPTP=m
+CONFIG_PPPOL2TP=m
+CONFIG_PPP_ASYNC=m
+CONFIG_PPP_SYNC_TTY=m
+
+##
+## file: drivers/net/slip/Kconfig
+##
+CONFIG_SLIP=m
+CONFIG_SLIP_COMPRESSED=y
+CONFIG_SLIP_SMART=y
+CONFIG_SLIP_MODE_SLIP6=y
+
+##
+## file: drivers/net/team/Kconfig
+##
+CONFIG_NET_TEAM=m
+CONFIG_NET_TEAM_MODE_BROADCAST=m
+CONFIG_NET_TEAM_MODE_ROUNDROBIN=m
+CONFIG_NET_TEAM_MODE_RANDOM=m
+CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m
+CONFIG_NET_TEAM_MODE_LOADBALANCE=m
+
+##
+## file: drivers/net/usb/Kconfig
+##
+CONFIG_USB_CATC=m
+CONFIG_USB_KAWETH=m
+CONFIG_USB_PEGASUS=m
+CONFIG_USB_RTL8150=m
+CONFIG_USB_RTL8152=m
+CONFIG_USB_LAN78XX=m
+CONFIG_USB_USBNET=m
+CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_AX88179_178A=m
+CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_CDC_EEM=m
+CONFIG_USB_NET_CDC_NCM=m
+CONFIG_USB_NET_HUAWEI_CDC_NCM=m
+CONFIG_USB_NET_CDC_MBIM=m
+CONFIG_USB_NET_DM9601=m
+CONFIG_USB_NET_SR9700=m
+CONFIG_USB_NET_SR9800=m
+CONFIG_USB_NET_SMSC75XX=m
+CONFIG_USB_NET_SMSC95XX=m
+CONFIG_USB_NET_GL620A=m
+CONFIG_USB_NET_NET1080=m
+CONFIG_USB_NET_PLUSB=m
+CONFIG_USB_NET_MCS7830=m
+CONFIG_USB_NET_RNDIS_HOST=m
+CONFIG_USB_NET_CDC_SUBSET=m
+CONFIG_USB_ALI_M5632=y
+CONFIG_USB_AN2720=y
+CONFIG_USB_BELKIN=y
+CONFIG_USB_ARMLINUX=y
+CONFIG_USB_EPSON2888=y
+CONFIG_USB_KC2190=y
+CONFIG_USB_NET_ZAURUS=m
+CONFIG_USB_NET_CX82310_ETH=m
+CONFIG_USB_NET_KALMIA=m
+CONFIG_USB_NET_QMI_WWAN=m
+CONFIG_USB_HSO=m
+CONFIG_USB_NET_INT51X1=m
+CONFIG_USB_CDC_PHONET=m
+CONFIG_USB_IPHETH=m
+CONFIG_USB_SIERRA_NET=m
+CONFIG_USB_VL600=m
+CONFIG_USB_NET_CH9200=m
+CONFIG_USB_NET_AQC111=m
+
+##
+## file: drivers/net/wan/Kconfig
+##
+CONFIG_HDLC=m
+CONFIG_HDLC_RAW=m
+CONFIG_HDLC_RAW_ETH=m
+CONFIG_HDLC_CISCO=m
+CONFIG_HDLC_FR=m
+CONFIG_HDLC_PPP=m
+# CONFIG_HDLC_X25 is not set
+# CONFIG_PC300TOO is not set
+
+##
+## file: drivers/net/wimax/i2400m/Kconfig
+##
+CONFIG_WIMAX_I2400M_USB=m
+CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8
+
+##
+## file: drivers/net/wireless/Kconfig
+##
+CONFIG_WLAN=y
+# CONFIG_WIRELESS_WDS is not set
+CONFIG_MAC80211_HWSIM=m
+CONFIG_USB_NET_RNDIS_WLAN=m
+
+##
+## file: drivers/net/wireless/admtek/Kconfig
+##
+CONFIG_WLAN_VENDOR_ADMTEK=y
+CONFIG_ADM8211=m
+
+##
+## file: drivers/net/wireless/ath/Kconfig
+##
+CONFIG_WLAN_VENDOR_ATH=y
+# CONFIG_ATH_DEBUG is not set
+
+##
+## file: drivers/net/wireless/ath/ar5523/Kconfig
+##
+CONFIG_AR5523=m
+
+##
+## file: drivers/net/wireless/ath/ath10k/Kconfig
+##
+CONFIG_ATH10K=m
+CONFIG_ATH10K_PCI=m
+# CONFIG_ATH10K_SDIO is not set
+CONFIG_ATH10K_USB=m
+# CONFIG_ATH10K_DEBUG is not set
+# CONFIG_ATH10K_DEBUGFS is not set
+# CONFIG_ATH10K_TRACING is not set
+
+##
+## file: drivers/net/wireless/ath/ath11k/Kconfig
+##
+CONFIG_ATH11K=m
+CONFIG_ATH11K_AHB=m
+CONFIG_ATH11K_PCI=m
+# CONFIG_ATH11K_DEBUG is not set
+# CONFIG_ATH11K_DEBUGFS is not set
+# CONFIG_ATH11K_TRACING is not set
+
+##
+## file: drivers/net/wireless/ath/ath5k/Kconfig
+##
+CONFIG_ATH5K=m
+# CONFIG_ATH5K_DEBUG is not set
+# CONFIG_ATH5K_TRACER is not set
+
+##
+## file: drivers/net/wireless/ath/ath6kl/Kconfig
+##
+CONFIG_ATH6KL=m
+CONFIG_ATH6KL_SDIO=m
+CONFIG_ATH6KL_USB=m
+# CONFIG_ATH6KL_DEBUG is not set
+# CONFIG_ATH6KL_TRACING is not set
+
+##
+## file: drivers/net/wireless/ath/ath9k/Kconfig
+##
+CONFIG_ATH9K_BTCOEX_SUPPORT=y
+CONFIG_ATH9K=m
+CONFIG_ATH9K_PCI=y
+# CONFIG_ATH9K_AHB is not set
+# CONFIG_ATH9K_DEBUGFS is not set
+# CONFIG_ATH9K_DYNACK is not set
+# CONFIG_ATH9K_WOW is not set
+CONFIG_ATH9K_RFKILL=y
+CONFIG_ATH9K_CHANNEL_CONTEXT=y
+CONFIG_ATH9K_PCOEM=y
+CONFIG_ATH9K_HTC=m
+# CONFIG_ATH9K_HTC_DEBUGFS is not set
+# CONFIG_ATH9K_HWRNG is not set
+
+##
+## file: drivers/net/wireless/ath/carl9170/Kconfig
+##
+CONFIG_CARL9170=m
+CONFIG_CARL9170_LEDS=y
+# CONFIG_CARL9170_DEBUGFS is not set
+# CONFIG_CARL9170_HWRNG is not set
+
+##
+## file: drivers/net/wireless/ath/wcn36xx/Kconfig
+##
+# CONFIG_WCN36XX is not set
+
+##
+## file: drivers/net/wireless/ath/wil6210/Kconfig
+##
+CONFIG_WIL6210=m
+CONFIG_WIL6210_ISR_COR=y
+CONFIG_WIL6210_TRACING=y
+CONFIG_WIL6210_DEBUGFS=y
+
+##
+## file: drivers/net/wireless/atmel/Kconfig
+##
+CONFIG_WLAN_VENDOR_ATMEL=y
+CONFIG_AT76C50X_USB=m
+
+##
+## file: drivers/net/wireless/broadcom/Kconfig
+##
+CONFIG_WLAN_VENDOR_BROADCOM=y
+
+##
+## file: drivers/net/wireless/broadcom/b43/Kconfig
+##
+CONFIG_B43=m
+## choice: Supported bus types
+CONFIG_B43_BUSES_BCMA_AND_SSB=y
+# CONFIG_B43_BUSES_BCMA is not set
+# CONFIG_B43_BUSES_SSB is not set
+## end choice
+CONFIG_B43_SDIO=y
+CONFIG_B43_PHY_G=y
+CONFIG_B43_PHY_N=y
+CONFIG_B43_PHY_LP=y
+CONFIG_B43_PHY_HT=y
+# CONFIG_B43_DEBUG is not set
+
+##
+## file: drivers/net/wireless/broadcom/b43legacy/Kconfig
+##
+CONFIG_B43LEGACY=m
+CONFIG_B43LEGACY_DEBUG=y
+## choice: Broadcom 43xx-legacy data transfer mode
+CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
+# CONFIG_B43LEGACY_DMA_MODE is not set
+# CONFIG_B43LEGACY_PIO_MODE is not set
+## end choice
+
+##
+## file: drivers/net/wireless/broadcom/brcm80211/Kconfig
+##
+CONFIG_BRCMSMAC=m
+# CONFIG_BRCM_TRACING is not set
+# CONFIG_BRCMDBG is not set
+
+##
+## file: drivers/net/wireless/broadcom/brcm80211/brcmfmac/Kconfig
+##
+CONFIG_BRCMFMAC=m
+# CONFIG_BRCMFMAC_SDIO is not set
+CONFIG_BRCMFMAC_USB=y
+CONFIG_BRCMFMAC_PCIE=y
+
+##
+## file: drivers/net/wireless/cisco/Kconfig
+##
+CONFIG_WLAN_VENDOR_CISCO=y
+CONFIG_AIRO=m
+
+##
+## file: drivers/net/wireless/intel/Kconfig
+##
+CONFIG_WLAN_VENDOR_INTEL=y
+
+##
+## file: drivers/net/wireless/intel/ipw2x00/Kconfig
+##
+CONFIG_IPW2200=m
+CONFIG_IPW2200_MONITOR=y
+CONFIG_IPW2200_RADIOTAP=y
+CONFIG_IPW2200_PROMISCUOUS=y
+CONFIG_IPW2200_QOS=y
+# CONFIG_IPW2200_DEBUG is not set
+# CONFIG_LIBIPW_DEBUG is not set
+
+##
+## file: drivers/net/wireless/intel/iwlegacy/Kconfig
+##
+CONFIG_IWL4965=m
+CONFIG_IWL3945=m
+# CONFIG_IWLEGACY_DEBUG is not set
+
+##
+## file: drivers/net/wireless/intel/iwlwifi/Kconfig
+##
+CONFIG_IWLWIFI=m
+CONFIG_IWLDVM=m
+CONFIG_IWLMVM=m
+# CONFIG_IWLWIFI_BCAST_FILTERING is not set
+# CONFIG_IWLWIFI_DEBUG is not set
+# CONFIG_IWLWIFI_DEVICE_TRACING is not set
+
+##
+## file: drivers/net/wireless/intersil/Kconfig
+##
+CONFIG_WLAN_VENDOR_INTERSIL=y
+# CONFIG_PRISM54 is not set
+
+##
+## file: drivers/net/wireless/intersil/hostap/Kconfig
+##
+CONFIG_HOSTAP=m
+CONFIG_HOSTAP_FIRMWARE=y
+# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set
+CONFIG_HOSTAP_PLX=m
+CONFIG_HOSTAP_PCI=m
+CONFIG_HOSTAP_CS=m
+
+##
+## file: drivers/net/wireless/intersil/orinoco/Kconfig
+##
+# CONFIG_HERMES_PRISM is not set
+CONFIG_HERMES_CACHE_FW_ON_INIT=y
+CONFIG_NORTEL_HERMES=m
+CONFIG_PCMCIA_SPECTRUM=m
+CONFIG_ORINOCO_USB=m
+
+##
+## file: drivers/net/wireless/intersil/p54/Kconfig
+##
+CONFIG_P54_COMMON=m
+CONFIG_P54_USB=m
+CONFIG_P54_PCI=m
+# CONFIG_P54_SPI is not set
+# CONFIG_P54_SPI_DEFAULT_EEPROM is not set
+
+##
+## file: drivers/net/wireless/marvell/Kconfig
+##
+CONFIG_WLAN_VENDOR_MARVELL=y
+CONFIG_MWL8K=m
+
+##
+## file: drivers/net/wireless/marvell/libertas/Kconfig
+##
+CONFIG_LIBERTAS=m
+CONFIG_LIBERTAS_USB=m
+CONFIG_LIBERTAS_CS=m
+CONFIG_LIBERTAS_SDIO=m
+# CONFIG_LIBERTAS_SPI is not set
+# CONFIG_LIBERTAS_DEBUG is not set
+CONFIG_LIBERTAS_MESH=y
+
+##
+## file: drivers/net/wireless/marvell/libertas_tf/Kconfig
+##
+CONFIG_LIBERTAS_THINFIRM=m
+# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set
+CONFIG_LIBERTAS_THINFIRM_USB=m
+
+##
+## file: drivers/net/wireless/mediatek/Kconfig
+##
+CONFIG_WLAN_VENDOR_MEDIATEK=y
+
+##
+## file: drivers/net/wireless/mediatek/mt76/mt76x0/Kconfig
+##
+CONFIG_MT76x0U=m
+CONFIG_MT76x0E=m
+
+##
+## file: drivers/net/wireless/mediatek/mt76/mt76x2/Kconfig
+##
+CONFIG_MT76x2E=m
+CONFIG_MT76x2U=m
+
+##
+## file: drivers/net/wireless/mediatek/mt7601u/Kconfig
+##
+CONFIG_MT7601U=m
+
+##
+## file: drivers/net/wireless/quantenna/Kconfig
+##
+CONFIG_WLAN_VENDOR_QUANTENNA=y
+
+##
+## file: drivers/net/wireless/ralink/Kconfig
+##
+CONFIG_WLAN_VENDOR_RALINK=y
+
+##
+## file: drivers/net/wireless/ralink/rt2x00/Kconfig
+##
+CONFIG_RT2X00=m
+CONFIG_RT2400PCI=m
+CONFIG_RT2500PCI=m
+CONFIG_RT61PCI=m
+CONFIG_RT2800PCI=m
+CONFIG_RT2800PCI_RT33XX=y
+CONFIG_RT2800PCI_RT35XX=y
+CONFIG_RT2800PCI_RT53XX=y
+CONFIG_RT2800PCI_RT3290=y
+CONFIG_RT2500USB=m
+CONFIG_RT73USB=m
+CONFIG_RT2800USB=m
+CONFIG_RT2800USB_RT33XX=y
+CONFIG_RT2800USB_RT35XX=y
+CONFIG_RT2800USB_RT3573=y
+CONFIG_RT2800USB_RT53XX=y
+CONFIG_RT2800USB_RT55XX=y
+# CONFIG_RT2800USB_UNKNOWN is not set
+# CONFIG_RT2X00_DEBUG is not set
+
+##
+## file: drivers/net/wireless/realtek/Kconfig
+##
+CONFIG_WLAN_VENDOR_REALTEK=y
+
+##
+## file: drivers/net/wireless/realtek/rtl818x/Kconfig
+##
+CONFIG_RTL8180=m
+CONFIG_RTL8187=m
+
+##
+## file: drivers/net/wireless/realtek/rtl8xxxu/Kconfig
+##
+CONFIG_RTL8XXXU=m
+# CONFIG_RTL8XXXU_UNTESTED is not set
+
+##
+## file: drivers/net/wireless/realtek/rtlwifi/Kconfig
+##
+CONFIG_RTL_CARDS=m
+CONFIG_RTL8192CE=m
+CONFIG_RTL8192SE=m
+CONFIG_RTL8192DE=m
+CONFIG_RTL8723AE=m
+CONFIG_RTL8723BE=m
+CONFIG_RTL8188EE=m
+CONFIG_RTL8192EE=m
+CONFIG_RTL8821AE=m
+CONFIG_RTL8192CU=m
+# CONFIG_RTLWIFI_DEBUG is not set
+
+##
+## file: drivers/net/wireless/realtek/rtw88/Kconfig
+##
+CONFIG_RTW88=m
+CONFIG_RTW88_8822BE=m
+CONFIG_RTW88_8822CE=m
+CONFIG_RTW88_8723DE=m
+CONFIG_RTW88_8821CE=m
+
+##
+## file: drivers/net/wireless/rsi/Kconfig
+##
+CONFIG_WLAN_VENDOR_RSI=y
+CONFIG_RSI_91X=m
+CONFIG_RSI_DEBUGFS=y
+# CONFIG_RSI_SDIO is not set
+CONFIG_RSI_USB=m
+CONFIG_RSI_COEX=y
+
+##
+## file: drivers/net/wireless/st/Kconfig
+##
+CONFIG_WLAN_VENDOR_ST=y
+
+##
+## file: drivers/net/wireless/st/cw1200/Kconfig
+##
+# CONFIG_CW1200 is not set
+
+##
+## file: drivers/net/wireless/ti/Kconfig
+##
+# CONFIG_WLAN_VENDOR_TI is not set
+
+##
+## file: drivers/net/wireless/zydas/Kconfig
+##
+CONFIG_WLAN_VENDOR_ZYDAS=y
+
+##
+## file: drivers/net/wireless/zydas/zd1211rw/Kconfig
+##
+CONFIG_ZD1211RW=m
+# CONFIG_ZD1211RW_DEBUG is not set
+
+##
+## file: drivers/nfc/Kconfig
+##
+# CONFIG_NFC_TRF7970A is not set
+CONFIG_NFC_SIM=m
+CONFIG_NFC_PORT100=m
+
+##
+## file: drivers/nfc/microread/Kconfig
+##
+# CONFIG_NFC_MICROREAD_I2C is not set
+# CONFIG_NFC_MICROREAD_MEI is not set
+
+##
+## file: drivers/nfc/pn533/Kconfig
+##
+CONFIG_NFC_PN533_USB=m
+# CONFIG_NFC_PN533_I2C is not set
+
+##
+## file: drivers/nfc/st21nfca/Kconfig
+##
+# CONFIG_NFC_ST21NFCA_I2C is not set
+
+##
+## file: drivers/nfc/st95hf/Kconfig
+##
+# CONFIG_NFC_ST95HF is not set
+
+##
+## file: drivers/ntb/Kconfig
+##
+# CONFIG_NTB is not set
+
+##
+## file: drivers/nvdimm/Kconfig
+##
+CONFIG_NVDIMM_DAX=y
+
+##
+## file: drivers/nvme/host/Kconfig
+##
+CONFIG_BLK_DEV_NVME=m
+CONFIG_NVME_MULTIPATH=y
+CONFIG_NVME_HWMON=y
+CONFIG_NVME_RDMA=m
+CONFIG_NVME_FC=m
+CONFIG_NVME_TCP=m
+
+##
+## file: drivers/nvme/target/Kconfig
+##
+CONFIG_NVME_TARGET=m
+# CONFIG_NVME_TARGET_LOOP is not set
+CONFIG_NVME_TARGET_RDMA=m
+CONFIG_NVME_TARGET_FC=m
+# CONFIG_NVME_TARGET_FCLOOP is not set
+CONFIG_NVME_TARGET_TCP=m
+
+##
+## file: drivers/of/Kconfig
+##
+# CONFIG_OF is not set
+# CONFIG_OF_UNITTEST is not set
+# CONFIG_OF_OVERLAY is not set
+
+##
+## file: drivers/parport/Kconfig
+##
+CONFIG_PARPORT=m
+CONFIG_PARPORT_PC=m
+CONFIG_PARPORT_SERIAL=m
+# CONFIG_PARPORT_PC_FIFO is not set
+# CONFIG_PARPORT_PC_SUPERIO is not set
+CONFIG_PARPORT_PC_PCMCIA=m
+# CONFIG_PARPORT_AX88796 is not set
+CONFIG_PARPORT_1284=y
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI_MSI=y
+CONFIG_PCI_QUIRKS=y
+# CONFIG_PCI_DEBUG is not set
+CONFIG_PCI_REALLOC_ENABLE_AUTO=y
+CONFIG_PCI_STUB=m
+CONFIG_PCI_PF_STUB=m
+CONFIG_XEN_PCIDEV_FRONTEND=m
+CONFIG_PCI_IOV=y
+# CONFIG_PCI_PRI is not set
+# CONFIG_PCI_PASID is not set
+
+##
+## file: drivers/pci/controller/dwc/Kconfig
+##
+# CONFIG_PCIE_DW_PLAT_HOST is not set
+
+##
+## file: drivers/pci/endpoint/Kconfig
+##
+# CONFIG_PCI_ENDPOINT is not set
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+CONFIG_HOTPLUG_PCI_CPCI=y
+
+##
+## file: drivers/pci/pcie/Kconfig
+##
+CONFIG_PCIEPORTBUS=y
+CONFIG_HOTPLUG_PCI_PCIE=y
+CONFIG_PCIEAER=y
+CONFIG_PCIEAER_INJECT=m
+# CONFIG_PCIE_ECRC is not set
+CONFIG_PCIEASPM=y
+## choice: Default ASPM policy
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+## end choice
+CONFIG_PCIE_DPC=y
+CONFIG_PCIE_PTM=y
+
+##
+## file: drivers/pci/switch/Kconfig
+##
+# CONFIG_PCI_SW_SWITCHTEC is not set
+
+##
+## file: drivers/pcmcia/Kconfig
+##
+CONFIG_PCMCIA_LOAD_CIS=y
+CONFIG_YENTA_O2=y
+CONFIG_YENTA_RICOH=y
+CONFIG_YENTA_TI=y
+CONFIG_YENTA_ENE_TUNE=y
+CONFIG_YENTA_TOSHIBA=y
+
+##
+## file: drivers/phy/Kconfig
+##
+# CONFIG_GENERIC_PHY is not set
+
+##
+## file: drivers/phy/broadcom/Kconfig
+##
+# CONFIG_BCM_KONA_USB2_PHY is not set
+
+##
+## file: drivers/phy/marvell/Kconfig
+##
+# CONFIG_PHY_PXA_28NM_HSIC is not set
+# CONFIG_PHY_PXA_28NM_USB2 is not set
+
+##
+## file: drivers/phy/samsung/Kconfig
+##
+# CONFIG_PHY_EXYNOS_DP_VIDEO is not set
+# CONFIG_PHY_EXYNOS_MIPI_VIDEO is not set
+# CONFIG_PHY_SAMSUNG_USB2 is not set
+
+##
+## file: drivers/phy/ti/Kconfig
+##
+# CONFIG_OMAP_CONTROL_PHY is not set
+# CONFIG_OMAP_USB2 is not set
+# CONFIG_TWL4030_USB is not set
+
+##
+## file: drivers/pinctrl/Kconfig
+##
+# CONFIG_PINMUX is not set
+# CONFIG_PINCONF is not set
+# CONFIG_DEBUG_PINCTRL is not set
+# CONFIG_PINCTRL_AMD is not set
+# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_SINGLE is not set
+# CONFIG_PINCTRL_SX150X is not set
+
+##
+## file: drivers/pinctrl/intel/Kconfig
+##
+# CONFIG_PINCTRL_BAYTRAIL is not set
+# CONFIG_PINCTRL_CHERRYVIEW is not set
+# CONFIG_PINCTRL_BROXTON is not set
+# CONFIG_PINCTRL_SUNRISEPOINT is not set
+
+##
+## file: drivers/platform/chrome/Kconfig
+##
+# CONFIG_CHROME_PLATFORMS is not set
+
+##
+## file: drivers/platform/goldfish/Kconfig
+##
+# CONFIG_GOLDFISH is not set
+
+##
+## file: drivers/pnp/Kconfig
+##
+# CONFIG_PNP_DEBUG_MESSAGES is not set
+
+##
+## file: drivers/power/reset/Kconfig
+##
+# CONFIG_POWER_RESET is not set
+
+##
+## file: drivers/power/supply/Kconfig
+##
+CONFIG_POWER_SUPPLY=y
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+# CONFIG_PDA_POWER is not set
+# CONFIG_GENERIC_ADC_BATTERY is not set
+CONFIG_WM831X_POWER=m
+CONFIG_WM8350_POWER=m
+# CONFIG_TEST_POWER is not set
+# CONFIG_CHARGER_ADP5061 is not set
+CONFIG_BATTERY_DS2760=m
+# CONFIG_BATTERY_DS2780 is not set
+# CONFIG_BATTERY_DS2781 is not set
+# CONFIG_BATTERY_DS2782 is not set
+# CONFIG_CHARGER_SBS is not set
+# CONFIG_MANAGER_SBS is not set
+CONFIG_BATTERY_BQ27XXX=m
+# CONFIG_BATTERY_BQ27XXX_I2C is not set
+CONFIG_BATTERY_BQ27XXX_HDQ=m
+# CONFIG_BATTERY_MAX17040 is not set
+# CONFIG_BATTERY_MAX17042 is not set
+# CONFIG_BATTERY_MAX1721X is not set
+CONFIG_CHARGER_PCF50633=m
+# CONFIG_CHARGER_ISP1704 is not set
+# CONFIG_CHARGER_MAX8903 is not set
+# CONFIG_CHARGER_LP8727 is not set
+# CONFIG_CHARGER_GPIO is not set
+# CONFIG_CHARGER_MANAGER is not set
+# CONFIG_CHARGER_LT3651 is not set
+# CONFIG_CHARGER_BQ2415X is not set
+# CONFIG_CHARGER_BQ24190 is not set
+# CONFIG_CHARGER_BQ24257 is not set
+# CONFIG_CHARGER_BQ24735 is not set
+# CONFIG_CHARGER_BQ25890 is not set
+# CONFIG_CHARGER_SMB347 is not set
+# CONFIG_BATTERY_GAUGE_LTC2941 is not set
+# CONFIG_CHARGER_RT9455 is not set
+
+##
+## file: drivers/pps/Kconfig
+##
+CONFIG_PPS=m
+# CONFIG_PPS_DEBUG is not set
+# CONFIG_NTP_PPS is not set
+
+##
+## file: drivers/pps/clients/Kconfig
+##
+# CONFIG_PPS_CLIENT_KTIMER is not set
+CONFIG_PPS_CLIENT_LDISC=m
+CONFIG_PPS_CLIENT_PARPORT=m
+# CONFIG_PPS_CLIENT_GPIO is not set
+
+##
+## file: drivers/ptp/Kconfig
+##
+CONFIG_PTP_1588_CLOCK=m
+CONFIG_PTP_1588_CLOCK_QORIQ=m
+
+##
+## file: drivers/pwm/Kconfig
+##
+# CONFIG_PWM is not set
+
+##
+## file: drivers/regulator/Kconfig
+##
+# CONFIG_REGULATOR is not set
+# CONFIG_REGULATOR_DEBUG is not set
+# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
+# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
+# CONFIG_REGULATOR_88PG86X is not set
+# CONFIG_REGULATOR_ACT8865 is not set
+# CONFIG_REGULATOR_AD5398 is not set
+# CONFIG_REGULATOR_AXP20X is not set
+# CONFIG_REGULATOR_DA9210 is not set
+# CONFIG_REGULATOR_DA9211 is not set
+# CONFIG_REGULATOR_FAN53555 is not set
+# CONFIG_REGULATOR_GPIO is not set
+# CONFIG_REGULATOR_ISL9305 is not set
+# CONFIG_REGULATOR_ISL6271A is not set
+# CONFIG_REGULATOR_LP3971 is not set
+# CONFIG_REGULATOR_LP3972 is not set
+# CONFIG_REGULATOR_LP872X is not set
+# CONFIG_REGULATOR_LP8755 is not set
+# CONFIG_REGULATOR_LTC3589 is not set
+# CONFIG_REGULATOR_LTC3676 is not set
+# CONFIG_REGULATOR_MAX1586 is not set
+# CONFIG_REGULATOR_MAX8649 is not set
+# CONFIG_REGULATOR_MAX8660 is not set
+# CONFIG_REGULATOR_MAX8952 is not set
+# CONFIG_REGULATOR_MT6311 is not set
+# CONFIG_REGULATOR_PFUZE100 is not set
+# CONFIG_REGULATOR_PV88060 is not set
+# CONFIG_REGULATOR_PV88080 is not set
+# CONFIG_REGULATOR_PV88090 is not set
+# CONFIG_REGULATOR_PWM is not set
+# CONFIG_REGULATOR_TPS51632 is not set
+# CONFIG_REGULATOR_TPS62360 is not set
+# CONFIG_REGULATOR_TPS65023 is not set
+# CONFIG_REGULATOR_TPS6507X is not set
+# CONFIG_REGULATOR_TPS65132 is not set
+# CONFIG_REGULATOR_TPS6524X is not set
+
+##
+## file: drivers/reset/Kconfig
+##
+# CONFIG_RESET_CONTROLLER is not set
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+CONFIG_RTC_SYSTOHC=y
+CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
+CONFIG_RTC_NVMEM=y
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
+# CONFIG_RTC_DRV_TEST is not set
+# CONFIG_RTC_DRV_ABB5ZES3 is not set
+# CONFIG_RTC_DRV_ABX80X is not set
+# CONFIG_RTC_DRV_DS1307 is not set
+# CONFIG_RTC_DRV_DS1374 is not set
+# CONFIG_RTC_DRV_DS1672 is not set
+# CONFIG_RTC_DRV_HYM8563 is not set
+# CONFIG_RTC_DRV_MAX6900 is not set
+# CONFIG_RTC_DRV_RS5C372 is not set
+# CONFIG_RTC_DRV_ISL1208 is not set
+# CONFIG_RTC_DRV_ISL12022 is not set
+# CONFIG_RTC_DRV_X1205 is not set
+# CONFIG_RTC_DRV_PCF8523 is not set
+# CONFIG_RTC_DRV_PCF85063 is not set
+# CONFIG_RTC_DRV_PCF8563 is not set
+# CONFIG_RTC_DRV_PCF8583 is not set
+# CONFIG_RTC_DRV_M41T80 is not set
+# CONFIG_RTC_DRV_M41T80_WDT is not set
+# CONFIG_RTC_DRV_BQ32K is not set
+# CONFIG_RTC_DRV_S35390A is not set
+# CONFIG_RTC_DRV_FM3130 is not set
+# CONFIG_RTC_DRV_RX8010 is not set
+# CONFIG_RTC_DRV_RX8581 is not set
+# CONFIG_RTC_DRV_RX8025 is not set
+# CONFIG_RTC_DRV_EM3027 is not set
+# CONFIG_RTC_DRV_RV8803 is not set
+# CONFIG_RTC_DRV_M41T93 is not set
+# CONFIG_RTC_DRV_M41T94 is not set
+# CONFIG_RTC_DRV_DS1302 is not set
+# CONFIG_RTC_DRV_DS1305 is not set
+# CONFIG_RTC_DRV_DS1343 is not set
+# CONFIG_RTC_DRV_DS1347 is not set
+# CONFIG_RTC_DRV_DS1390 is not set
+# CONFIG_RTC_DRV_MAX6916 is not set
+# CONFIG_RTC_DRV_R9701 is not set
+# CONFIG_RTC_DRV_RX4581 is not set
+# CONFIG_RTC_DRV_RX6110 is not set
+# CONFIG_RTC_DRV_RS5C348 is not set
+# CONFIG_RTC_DRV_MAX6902 is not set
+# CONFIG_RTC_DRV_PCF2123 is not set
+# CONFIG_RTC_DRV_MCP795 is not set
+# CONFIG_RTC_DRV_DS3232 is not set
+# CONFIG_RTC_DRV_PCF2127 is not set
+# CONFIG_RTC_DRV_RV3029C2 is not set
+CONFIG_RTC_DRV_CMOS=m
+# CONFIG_RTC_DRV_DS1286 is not set
+# CONFIG_RTC_DRV_DS1511 is not set
+# CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_DS1685_FAMILY is not set
+# CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_DS2404 is not set
+# CONFIG_RTC_DRV_STK17TA8 is not set
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T35 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
+# CONFIG_RTC_DRV_MSM6242 is not set
+# CONFIG_RTC_DRV_BQ4802 is not set
+# CONFIG_RTC_DRV_RP5C01 is not set
+# CONFIG_RTC_DRV_V3020 is not set
+CONFIG_RTC_DRV_WM831X=m
+CONFIG_RTC_DRV_WM8350=m
+CONFIG_RTC_DRV_PCF50633=m
+CONFIG_RTC_DRV_AB3100=m
+# CONFIG_RTC_DRV_ZYNQMP is not set
+# CONFIG_RTC_DRV_SNVS is not set
+# CONFIG_RTC_DRV_MOXART is not set
+# CONFIG_RTC_DRV_XGENE is not set
+# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_RAID_ATTRS=m
+CONFIG_SCSI=m
+# CONFIG_SCSI_PROC_FS is not set
+CONFIG_BLK_DEV_SD=m
+CONFIG_CHR_DEV_ST=m
+CONFIG_BLK_DEV_SR=m
+CONFIG_CHR_DEV_SG=m
+CONFIG_CHR_DEV_SCH=m
+CONFIG_SCSI_ENCLOSURE=m
+CONFIG_SCSI_CONSTANTS=y
+CONFIG_SCSI_LOGGING=y
+CONFIG_SCSI_SCAN_ASYNC=y
+CONFIG_SCSI_SPI_ATTRS=m
+CONFIG_SCSI_FC_ATTRS=m
+CONFIG_SCSI_ISCSI_ATTRS=m
+CONFIG_SCSI_SAS_ATTRS=m
+CONFIG_SCSI_LOWLEVEL=y
+CONFIG_ISCSI_TCP=m
+CONFIG_BLK_DEV_3W_XXXX_RAID=m
+CONFIG_SCSI_HPSA=m
+CONFIG_SCSI_3W_9XXX=m
+CONFIG_SCSI_3W_SAS=m
+CONFIG_SCSI_ACARD=m
+CONFIG_SCSI_AHA152X=m
+CONFIG_SCSI_AHA1542=m
+CONFIG_SCSI_AHA1740=m
+CONFIG_SCSI_AACRAID=m
+CONFIG_SCSI_MVUMI=m
+CONFIG_SCSI_ADVANSYS=m
+CONFIG_SCSI_HPTIOP=m
+CONFIG_XEN_SCSI_FRONTEND=m
+CONFIG_LIBFC=m
+CONFIG_LIBFCOE=m
+CONFIG_FCOE=m
+CONFIG_FCOE_FNIC=m
+CONFIG_SCSI_SNIC=m
+# CONFIG_SCSI_SNIC_DEBUG_FS is not set
+# CONFIG_SCSI_PPA is not set
+# CONFIG_SCSI_IMM is not set
+# CONFIG_SCSI_IZIP_EPP16 is not set
+# CONFIG_SCSI_IZIP_SLOW_CTR is not set
+CONFIG_SCSI_STEX=m
+CONFIG_SCSI_SYM53C8XX_2=m
+CONFIG_SCSI_SYM53C8XX_MMIO=y
+# CONFIG_SCSI_IPR is not set
+CONFIG_SCSI_LPFC=m
+# CONFIG_SCSI_LPFC_DEBUG_FS is not set
+CONFIG_SCSI_WD719X=m
+# CONFIG_SCSI_DEBUG is not set
+CONFIG_SCSI_PMCRAID=m
+CONFIG_SCSI_PM8001=m
+CONFIG_SCSI_BFA_FC=m
+CONFIG_SCSI_VIRTIO=m
+
+##
+## file: drivers/scsi/aic7xxx/Kconfig.aic79xx
+##
+CONFIG_SCSI_AIC79XX=m
+CONFIG_AIC79XX_CMDS_PER_DEVICE=32
+CONFIG_AIC79XX_RESET_DELAY_MS=15000
+CONFIG_AIC79XX_DEBUG_ENABLE=y
+CONFIG_AIC79XX_DEBUG_MASK=0
+CONFIG_AIC79XX_REG_PRETTY_PRINT=y
+
+##
+## file: drivers/scsi/aic7xxx/Kconfig.aic7xxx
+##
+CONFIG_SCSI_AIC7XXX=m
+CONFIG_AIC7XXX_CMDS_PER_DEVICE=32
+CONFIG_AIC7XXX_RESET_DELAY_MS=15000
+CONFIG_AIC7XXX_DEBUG_ENABLE=y
+CONFIG_AIC7XXX_DEBUG_MASK=0
+CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
+
+##
+## file: drivers/scsi/aic94xx/Kconfig
+##
+CONFIG_SCSI_AIC94XX=m
+# CONFIG_AIC94XX_DEBUG is not set
+
+##
+## file: drivers/scsi/be2iscsi/Kconfig
+##
+CONFIG_BE2ISCSI=m
+
+##
+## file: drivers/scsi/bnx2fc/Kconfig
+##
+CONFIG_SCSI_BNX2X_FCOE=m
+
+##
+## file: drivers/scsi/bnx2i/Kconfig
+##
+CONFIG_SCSI_BNX2_ISCSI=m
+
+##
+## file: drivers/scsi/csiostor/Kconfig
+##
+CONFIG_SCSI_CHELSIO_FCOE=m
+
+##
+## file: drivers/scsi/cxgbi/cxgb3i/Kconfig
+##
+CONFIG_SCSI_CXGB3_ISCSI=m
+
+##
+## file: drivers/scsi/cxgbi/cxgb4i/Kconfig
+##
+CONFIG_SCSI_CXGB4_ISCSI=m
+
+##
+## file: drivers/scsi/device_handler/Kconfig
+##
+CONFIG_SCSI_DH=y
+CONFIG_SCSI_DH_RDAC=m
+CONFIG_SCSI_DH_HP_SW=m
+CONFIG_SCSI_DH_EMC=m
+CONFIG_SCSI_DH_ALUA=m
+
+##
+## file: drivers/scsi/esas2r/Kconfig
+##
+CONFIG_SCSI_ESAS2R=m
+
+##
+## file: drivers/scsi/libsas/Kconfig
+##
+CONFIG_SCSI_SAS_LIBSAS=m
+CONFIG_SCSI_SAS_ATA=y
+CONFIG_SCSI_SAS_HOST_SMP=y
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+CONFIG_MEGARAID_SAS=m
+
+##
+## file: drivers/scsi/mpt3sas/Kconfig
+##
+CONFIG_SCSI_MPT3SAS=m
+CONFIG_SCSI_MPT2SAS_MAX_SGE=128
+CONFIG_SCSI_MPT3SAS_MAX_SGE=128
+CONFIG_SCSI_MPT2SAS=m
+
+##
+## file: drivers/scsi/mvsas/Kconfig
+##
+CONFIG_SCSI_MVSAS=m
+# CONFIG_SCSI_MVSAS_DEBUG is not set
+# CONFIG_SCSI_MVSAS_TASKLET is not set
+
+##
+## file: drivers/scsi/pcmcia/Kconfig
+##
+CONFIG_SCSI_LOWLEVEL_PCMCIA=y
+
+##
+## file: drivers/scsi/qedf/Kconfig
+##
+CONFIG_QEDF=m
+
+##
+## file: drivers/scsi/qedi/Kconfig
+##
+CONFIG_QEDI=m
+
+##
+## file: drivers/scsi/qla2xxx/Kconfig
+##
+CONFIG_SCSI_QLA_FC=m
+CONFIG_TCM_QLA2XXX=m
+# CONFIG_TCM_QLA2XXX_DEBUG is not set
+
+##
+## file: drivers/scsi/qla4xxx/Kconfig
+##
+CONFIG_SCSI_QLA_ISCSI=m
+
+##
+## file: drivers/scsi/smartpqi/Kconfig
+##
+CONFIG_SCSI_SMARTPQI=m
+
+##
+## file: drivers/scsi/ufs/Kconfig
+##
+CONFIG_SCSI_UFSHCD=m
+CONFIG_SCSI_UFSHCD_PCI=m
+# CONFIG_SCSI_UFS_DWC_TC_PCI is not set
+# CONFIG_SCSI_UFSHCD_PLATFORM is not set
+
+##
+## file: drivers/soc/ti/Kconfig
+##
+# CONFIG_SOC_TI is not set
+
+##
+## file: drivers/soundwire/Kconfig
+##
+CONFIG_SOUNDWIRE=m
+CONFIG_SOUNDWIRE_INTEL=m
+CONFIG_SOUNDWIRE_QCOM=m
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI=y
+# CONFIG_SPI_DEBUG is not set
+# CONFIG_SPI_ALTERA is not set
+# CONFIG_SPI_AXI_SPI_ENGINE is not set
+CONFIG_SPI_BITBANG=m
+CONFIG_SPI_BUTTERFLY=m
+# CONFIG_SPI_CADENCE is not set
+# CONFIG_SPI_DESIGNWARE is not set
+# CONFIG_SPI_GPIO is not set
+CONFIG_SPI_LM70_LLP=m
+# CONFIG_SPI_FSL_SPI is not set
+# CONFIG_SPI_FSL_DSPI is not set
+# CONFIG_SPI_MTK_NOR is not set
+# CONFIG_SPI_OC_TINY is not set
+# CONFIG_SPI_PXA2XX is not set
+# CONFIG_SPI_ROCKCHIP is not set
+# CONFIG_SPI_SC18IS602 is not set
+# CONFIG_SPI_TOPCLIFF_PCH is not set
+# CONFIG_SPI_XCOMM is not set
+# CONFIG_SPI_XILINX is not set
+# CONFIG_SPI_ZYNQMP_GQSPI is not set
+CONFIG_SPI_SPIDEV=y
+# CONFIG_SPI_LOOPBACK_TEST is not set
+# CONFIG_SPI_TLE62X0 is not set
+# CONFIG_SPI_SLAVE is not set
+
+##
+## file: drivers/spmi/Kconfig
+##
+# CONFIG_SPMI is not set
+
+##
+## file: drivers/ssb/Kconfig
+##
+CONFIG_SSB=m
+CONFIG_SSB_PCMCIAHOST=y
+# CONFIG_SSB_HOST_SOC is not set
+# CONFIG_SSB_DRIVER_GPIO is not set
+
+##
+## file: drivers/staging/Kconfig
+##
+CONFIG_STAGING=y
+
+##
+## file: drivers/staging/android/Kconfig
+##
+CONFIG_ASHMEM=m
+
+##
+## file: drivers/staging/android/ion/Kconfig
+##
+# CONFIG_ION is not set
+
+##
+## file: drivers/staging/board/Kconfig
+##
+# CONFIG_STAGING_BOARD is not set
+
+##
+## file: drivers/staging/clocking-wizard/Kconfig
+##
+# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
+
+##
+## file: drivers/staging/comedi/Kconfig
+##
+# CONFIG_COMEDI is not set
+
+##
+## file: drivers/staging/fbtft/Kconfig
+##
+# CONFIG_FB_TFT is not set
+
+##
+## file: drivers/staging/gdm724x/Kconfig
+##
+# CONFIG_LTE_GDM724X is not set
+
+##
+## file: drivers/staging/gs_fpgaboot/Kconfig
+##
+# CONFIG_GS_FPGABOOT is not set
+
+##
+## file: drivers/staging/iio/accel/Kconfig
+##
+# CONFIG_ADIS16203 is not set
+# CONFIG_ADIS16240 is not set
+
+##
+## file: drivers/staging/iio/adc/Kconfig
+##
+# CONFIG_AD7816 is not set
+# CONFIG_AD7280 is not set
+
+##
+## file: drivers/staging/iio/addac/Kconfig
+##
+# CONFIG_ADT7316 is not set
+
+##
+## file: drivers/staging/iio/cdc/Kconfig
+##
+# CONFIG_AD7150 is not set
+# CONFIG_AD7746 is not set
+
+##
+## file: drivers/staging/iio/frequency/Kconfig
+##
+# CONFIG_AD9832 is not set
+# CONFIG_AD9834 is not set
+
+##
+## file: drivers/staging/iio/impedance-analyzer/Kconfig
+##
+# CONFIG_AD5933 is not set
+
+##
+## file: drivers/staging/iio/meter/Kconfig
+##
+# CONFIG_ADE7854 is not set
+
+##
+## file: drivers/staging/iio/resolver/Kconfig
+##
+# CONFIG_AD2S1210 is not set
+
+##
+## file: drivers/staging/media/Kconfig
+##
+# CONFIG_STAGING_MEDIA is not set
+
+##
+## file: drivers/staging/qlge/Kconfig
+##
+CONFIG_QLGE=m
+
+##
+## file: drivers/staging/rtl8188eu/Kconfig
+##
+CONFIG_R8188EU=m
+CONFIG_88EU_AP_MODE=y
+
+##
+## file: drivers/staging/rtl8192e/Kconfig
+##
+# CONFIG_RTLLIB is not set
+
+##
+## file: drivers/staging/rtl8192e/rtl8192e/Kconfig
+##
+# CONFIG_RTL8192E is not set
+
+##
+## file: drivers/staging/rtl8192u/Kconfig
+##
+# CONFIG_RTL8192U is not set
+
+##
+## file: drivers/staging/rtl8712/Kconfig
+##
+CONFIG_R8712U=m
+
+##
+## file: drivers/staging/rts5208/Kconfig
+##
+# CONFIG_RTS5208 is not set
+
+##
+## file: drivers/staging/sm750fb/Kconfig
+##
+# CONFIG_FB_SM750 is not set
+
+##
+## file: drivers/staging/vt6655/Kconfig
+##
+# CONFIG_VT6655 is not set
+
+##
+## file: drivers/staging/vt6656/Kconfig
+##
+# CONFIG_VT6656 is not set
+
+##
+## file: drivers/staging/wlan-ng/Kconfig
+##
+# CONFIG_PRISM2_USB is not set
+
+##
+## file: drivers/target/Kconfig
+##
+CONFIG_TARGET_CORE=m
+CONFIG_TCM_IBLOCK=m
+CONFIG_TCM_FILEIO=m
+CONFIG_TCM_PSCSI=m
+CONFIG_TCM_USER2=m
+
+##
+## file: drivers/target/iscsi/Kconfig
+##
+CONFIG_ISCSI_TARGET=m
+
+##
+## file: drivers/target/iscsi/cxgbit/Kconfig
+##
+CONFIG_ISCSI_TARGET_CXGB4=m
+
+##
+## file: drivers/target/loopback/Kconfig
+##
+CONFIG_LOOPBACK_TARGET=m
+
+##
+## file: drivers/target/sbp/Kconfig
+##
+CONFIG_SBP_TARGET=m
+
+##
+## file: drivers/target/tcm_fc/Kconfig
+##
+CONFIG_TCM_FC=m
+
+##
+## file: drivers/thermal/Kconfig
+##
+CONFIG_THERMAL_STATISTICS=y
+CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
+CONFIG_THERMAL_HWMON=y
+## choice: Default Thermal governor
+CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
+# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set
+## end choice
+CONFIG_THERMAL_GOV_FAIR_SHARE=y
+CONFIG_THERMAL_GOV_STEP_WISE=y
+CONFIG_THERMAL_GOV_BANG_BANG=y
+CONFIG_THERMAL_GOV_USER_SPACE=y
+CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
+CONFIG_DEVFREQ_THERMAL=y
+# CONFIG_THERMAL_EMULATION is not set
+# CONFIG_GENERIC_ADC_THERMAL is not set
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_TTY=y
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_UNIX98_PTYS=y
+# CONFIG_LEGACY_PTYS is not set
+CONFIG_MOXA_SMARTIO=m
+CONFIG_SYNCLINK_GT=m
+CONFIG_N_GSM=m
+CONFIG_NOZOMI=m
+# CONFIG_TRACE_SINK is not set
+
+##
+## file: drivers/tty/hvc/Kconfig
+##
+CONFIG_HVC_XEN=y
+CONFIG_HVC_XEN_FRONTEND=y
+
+##
+## file: drivers/tty/serdev/Kconfig
+##
+CONFIG_SERIAL_DEV_BUS=y
+CONFIG_SERIAL_DEV_CTRL_TTYPORT=y
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+# CONFIG_SERIAL_MAX3100 is not set
+# CONFIG_SERIAL_MAX310X is not set
+# CONFIG_SERIAL_UARTLITE is not set
+# CONFIG_SERIAL_SCCNXP is not set
+# CONFIG_SERIAL_SC16IS7XX is not set
+# CONFIG_SERIAL_TIMBERDALE is not set
+# CONFIG_SERIAL_ALTERA_JTAGUART is not set
+# CONFIG_SERIAL_ALTERA_UART is not set
+# CONFIG_SERIAL_IFX6X60 is not set
+# CONFIG_SERIAL_XILINX_PS_UART is not set
+# CONFIG_SERIAL_ARC is not set
+CONFIG_SERIAL_RP2=m
+CONFIG_SERIAL_RP2_NR_UARTS=32
+# CONFIG_SERIAL_FSL_LPUART is not set
+# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
+# CONFIG_SERIAL_ST_ASC is not set
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
+CONFIG_SERIAL_8250_PNP=y
+CONFIG_SERIAL_8250_DMA=y
+CONFIG_SERIAL_8250_PCI=y
+CONFIG_SERIAL_8250_EXAR=m
+CONFIG_SERIAL_8250_FOURPORT=m
+CONFIG_SERIAL_8250_ACCENT=m
+CONFIG_SERIAL_8250_BOCA=m
+CONFIG_SERIAL_8250_HUB6=m
+# CONFIG_SERIAL_8250_DW is not set
+# CONFIG_SERIAL_8250_RT288X is not set
+# CONFIG_SERIAL_8250_MID is not set
+CONFIG_SERIAL_OF_PLATFORM=m
+
+##
+## file: drivers/uio/Kconfig
+##
+CONFIG_UIO=m
+CONFIG_UIO_CIF=m
+# CONFIG_UIO_PDRV_GENIRQ is not set
+# CONFIG_UIO_DMEM_GENIRQ is not set
+CONFIG_UIO_AEC=m
+CONFIG_UIO_SERCOS3=m
+CONFIG_UIO_PCI_GENERIC=m
+CONFIG_UIO_NETX=m
+# CONFIG_UIO_PRUSS is not set
+CONFIG_UIO_MF624=m
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_PCI=y
+
+##
+## file: drivers/usb/atm/Kconfig
+##
+CONFIG_USB_CXACRU=m
+CONFIG_USB_UEAGLEATM=m
+CONFIG_USB_XUSBATM=m
+
+##
+## file: drivers/usb/chipidea/Kconfig
+##
+# CONFIG_USB_CHIPIDEA is not set
+
+##
+## file: drivers/usb/class/Kconfig
+##
+CONFIG_USB_ACM=m
+CONFIG_USB_PRINTER=m
+CONFIG_USB_WDM=m
+CONFIG_USB_TMC=m
+
+##
+## file: drivers/usb/common/Kconfig
+##
+CONFIG_USB_LED_TRIG=y
+# CONFIG_USB_ULPI_BUS is not set
+
+##
+## file: drivers/usb/core/Kconfig
+##
+CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
+CONFIG_USB_DEFAULT_PERSIST=y
+CONFIG_USB_DYNAMIC_MINORS=y
+# CONFIG_USB_OTG is not set
+# CONFIG_USB_OTG_FSM is not set
+CONFIG_USB_LEDS_TRIGGER_USBPORT=m
+
+##
+## file: drivers/usb/dwc2/Kconfig
+##
+# CONFIG_USB_DWC2 is not set
+
+##
+## file: drivers/usb/dwc3/Kconfig
+##
+# CONFIG_USB_DWC3 is not set
+
+##
+## file: drivers/usb/gadget/Kconfig
+##
+# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_DEBUG is not set
+# CONFIG_USB_GADGET_DEBUG_FILES is not set
+# CONFIG_USB_GADGET_DEBUG_FS is not set
+CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
+CONFIG_USB_CONFIGFS=m
+CONFIG_USB_CONFIGFS_SERIAL=y
+CONFIG_USB_CONFIGFS_ACM=y
+CONFIG_USB_CONFIGFS_OBEX=y
+CONFIG_USB_CONFIGFS_NCM=y
+CONFIG_USB_CONFIGFS_ECM=y
+CONFIG_USB_CONFIGFS_ECM_SUBSET=y
+CONFIG_USB_CONFIGFS_RNDIS=y
+CONFIG_USB_CONFIGFS_EEM=y
+CONFIG_USB_CONFIGFS_PHONET=y
+CONFIG_USB_CONFIGFS_MASS_STORAGE=y
+CONFIG_USB_CONFIGFS_F_LB_SS=y
+CONFIG_USB_CONFIGFS_F_FS=y
+CONFIG_USB_CONFIGFS_F_UAC1=y
+CONFIG_USB_CONFIGFS_F_UAC2=y
+CONFIG_USB_CONFIGFS_F_MIDI=y
+CONFIG_USB_CONFIGFS_F_HID=y
+CONFIG_USB_CONFIGFS_F_UVC=y
+CONFIG_USB_CONFIGFS_F_PRINTER=y
+
+##
+## file: drivers/usb/gadget/legacy/Kconfig
+##
+CONFIG_USB_ETH=m
+CONFIG_USB_ETH_RNDIS=y
+CONFIG_USB_GADGETFS=m
+CONFIG_USB_FUNCTIONFS=m
+CONFIG_USB_FUNCTIONFS_ETH=y
+CONFIG_USB_FUNCTIONFS_RNDIS=y
+CONFIG_USB_FUNCTIONFS_GENERIC=y
+CONFIG_USB_G_SERIAL=m
+
+##
+## file: drivers/usb/gadget/udc/Kconfig
+##
+# CONFIG_USB_FUSB300 is not set
+# CONFIG_USB_FOTG210_UDC is not set
+# CONFIG_USB_GR_UDC is not set
+# CONFIG_USB_R8A66597 is not set
+# CONFIG_USB_PXA27X is not set
+# CONFIG_USB_MV_UDC is not set
+# CONFIG_USB_MV_U3D is not set
+# CONFIG_USB_M66592 is not set
+# CONFIG_USB_AMD5536UDC is not set
+# CONFIG_USB_NET2272 is not set
+CONFIG_USB_NET2280=m
+# CONFIG_USB_GOKU is not set
+# CONFIG_USB_GADGET_XILINX is not set
+CONFIG_USB_DUMMY_HCD=m
+
+##
+## file: drivers/usb/gadget/udc/bdc/Kconfig
+##
+# CONFIG_USB_BDC_UDC is not set
+
+##
+## file: drivers/usb/host/Kconfig
+##
+# CONFIG_USB_C67X00_HCD is not set
+CONFIG_USB_XHCI_HCD=m
+# CONFIG_USB_XHCI_DBGCAP is not set
+# CONFIG_USB_XHCI_PLATFORM is not set
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
+CONFIG_USB_EHCI_TT_NEWSCHED=y
+# CONFIG_USB_EHCI_HCD_PLATFORM is not set
+# CONFIG_USB_OXU210HP_HCD is not set
+# CONFIG_USB_ISP116X_HCD is not set
+# CONFIG_USB_ISP1362_HCD is not set
+# CONFIG_USB_FOTG210_HCD is not set
+# CONFIG_USB_MAX3421_HCD is not set
+CONFIG_USB_OHCI_HCD_PCI=y
+# CONFIG_USB_OHCI_HCD_PLATFORM is not set
+CONFIG_USB_U132_HCD=m
+# CONFIG_USB_R8A66597_HCD is not set
+# CONFIG_USB_HCD_BCMA is not set
+# CONFIG_USB_HCD_SSB is not set
+# CONFIG_USB_HCD_TEST_MODE is not set
+
+##
+## file: drivers/usb/image/Kconfig
+##
+CONFIG_USB_MDC800=m
+CONFIG_USB_MICROTEK=m
+
+##
+## file: drivers/usb/isp1760/Kconfig
+##
+# CONFIG_USB_ISP1760 is not set
+
+##
+## file: drivers/usb/misc/Kconfig
+##
+CONFIG_USB_EMI62=m
+CONFIG_USB_EMI26=m
+CONFIG_USB_ADUTUX=m
+CONFIG_USB_SEVSEG=m
+CONFIG_USB_LEGOTOWER=m
+CONFIG_USB_LCD=m
+CONFIG_USB_CYPRESS_CY7C63=m
+CONFIG_USB_CYTHERM=m
+CONFIG_USB_IDMOUSE=m
+CONFIG_USB_FTDI_ELAN=m
+CONFIG_USB_APPLEDISPLAY=m
+CONFIG_APPLE_MFI_FASTCHARGE=m
+CONFIG_USB_LD=m
+CONFIG_USB_TRANCEVIBRATOR=m
+CONFIG_USB_IOWARRIOR=m
+CONFIG_USB_TEST=m
+CONFIG_USB_EHSET_TEST_FIXTURE=m
+CONFIG_USB_ISIGHTFW=m
+CONFIG_USB_YUREX=m
+# CONFIG_USB_HSIC_USB3503 is not set
+# CONFIG_USB_HSIC_USB4604 is not set
+# CONFIG_USB_LINK_LAYER_TEST is not set
+CONFIG_USB_CHAOSKEY=m
+
+##
+## file: drivers/usb/misc/sisusbvga/Kconfig
+##
+CONFIG_USB_SISUSBVGA=m
+CONFIG_USB_SISUSBVGA_CON=y
+
+##
+## file: drivers/usb/mon/Kconfig
+##
+CONFIG_USB_MON=y
+
+##
+## file: drivers/usb/musb/Kconfig
+##
+# CONFIG_USB_MUSB_HDRC is not set
+
+##
+## file: drivers/usb/phy/Kconfig
+##
+# CONFIG_AB8500_USB is not set
+# CONFIG_FSL_USB2_OTG is not set
+# CONFIG_ISP1301_OMAP is not set
+# CONFIG_NOP_USB_XCEIV is not set
+# CONFIG_AM335X_PHY_USB is not set
+# CONFIG_TWL6030_USB is not set
+# CONFIG_USB_GPIO_VBUS is not set
+# CONFIG_USB_ISP1301 is not set
+# CONFIG_USB_MV_OTG is not set
+# CONFIG_USB_MXS_PHY is not set
+# CONFIG_USB_ULPI is not set
+
+##
+## file: drivers/usb/renesas_usbhs/Kconfig
+##
+# CONFIG_USB_RENESAS_USBHS is not set
+
+##
+## file: drivers/usb/serial/Kconfig
+##
+CONFIG_USB_SERIAL=m
+CONFIG_USB_SERIAL_GENERIC=y
+CONFIG_USB_SERIAL_SIMPLE=m
+CONFIG_USB_SERIAL_AIRCABLE=m
+CONFIG_USB_SERIAL_ARK3116=m
+CONFIG_USB_SERIAL_BELKIN=m
+CONFIG_USB_SERIAL_CH341=m
+CONFIG_USB_SERIAL_WHITEHEAT=m
+CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m
+CONFIG_USB_SERIAL_CP210X=m
+CONFIG_USB_SERIAL_CYPRESS_M8=m
+CONFIG_USB_SERIAL_EMPEG=m
+CONFIG_USB_SERIAL_FTDI_SIO=m
+CONFIG_USB_SERIAL_VISOR=m
+CONFIG_USB_SERIAL_IPAQ=m
+CONFIG_USB_SERIAL_IR=m
+CONFIG_USB_SERIAL_EDGEPORT=m
+CONFIG_USB_SERIAL_EDGEPORT_TI=m
+CONFIG_USB_SERIAL_F81232=m
+CONFIG_USB_SERIAL_F8153X=m
+CONFIG_USB_SERIAL_GARMIN=m
+CONFIG_USB_SERIAL_IPW=m
+CONFIG_USB_SERIAL_IUU=m
+CONFIG_USB_SERIAL_KEYSPAN_PDA=m
+CONFIG_USB_SERIAL_KEYSPAN=m
+CONFIG_USB_SERIAL_KLSI=m
+CONFIG_USB_SERIAL_KOBIL_SCT=m
+CONFIG_USB_SERIAL_MCT_U232=m
+CONFIG_USB_SERIAL_METRO=m
+CONFIG_USB_SERIAL_MOS7720=m
+CONFIG_USB_SERIAL_MOS7715_PARPORT=y
+CONFIG_USB_SERIAL_MOS7840=m
+CONFIG_USB_SERIAL_MXUPORT=m
+CONFIG_USB_SERIAL_NAVMAN=m
+CONFIG_USB_SERIAL_PL2303=m
+CONFIG_USB_SERIAL_OTI6858=m
+CONFIG_USB_SERIAL_QCAUX=m
+CONFIG_USB_SERIAL_QUALCOMM=m
+CONFIG_USB_SERIAL_SPCP8X5=m
+CONFIG_USB_SERIAL_SAFE=m
+# CONFIG_USB_SERIAL_SAFE_PADDED is not set
+CONFIG_USB_SERIAL_SIERRAWIRELESS=m
+CONFIG_USB_SERIAL_SYMBOL=m
+CONFIG_USB_SERIAL_TI=m
+CONFIG_USB_SERIAL_CYBERJACK=m
+CONFIG_USB_SERIAL_XIRCOM=m
+CONFIG_USB_SERIAL_OPTION=m
+CONFIG_USB_SERIAL_OMNINET=m
+CONFIG_USB_SERIAL_OPTICON=m
+CONFIG_USB_SERIAL_XSENS_MT=m
+CONFIG_USB_SERIAL_WISHBONE=m
+CONFIG_USB_SERIAL_SSU100=m
+CONFIG_USB_SERIAL_QT2=m
+CONFIG_USB_SERIAL_UPD78F0730=m
+CONFIG_USB_SERIAL_DEBUG=m
+
+##
+## file: drivers/usb/storage/Kconfig
+##
+CONFIG_USB_STORAGE=m
+# CONFIG_USB_STORAGE_DEBUG is not set
+CONFIG_USB_STORAGE_REALTEK=m
+CONFIG_REALTEK_AUTOPM=y
+CONFIG_USB_STORAGE_DATAFAB=m
+CONFIG_USB_STORAGE_FREECOM=m
+CONFIG_USB_STORAGE_ISD200=m
+CONFIG_USB_STORAGE_USBAT=m
+CONFIG_USB_STORAGE_SDDR09=m
+CONFIG_USB_STORAGE_SDDR55=m
+CONFIG_USB_STORAGE_JUMPSHOT=m
+CONFIG_USB_STORAGE_ALAUDA=m
+CONFIG_USB_STORAGE_ONETOUCH=m
+CONFIG_USB_STORAGE_KARMA=m
+CONFIG_USB_STORAGE_CYPRESS_ATACB=m
+CONFIG_USB_STORAGE_ENE_UB6250=m
+CONFIG_USB_UAS=m
+
+##
+## file: drivers/usb/typec/altmodes/Kconfig
+##
+CONFIG_TYPEC_DP_ALTMODE=m
+CONFIG_TYPEC_NVIDIA_ALTMODE=m
+
+##
+## file: drivers/usb/typec/ucsi/Kconfig
+##
+CONFIG_TYPEC_UCSI=m
+CONFIG_UCSI_ACPI=m
+
+##
+## file: drivers/usb/usbip/Kconfig
+##
+CONFIG_USBIP_CORE=m
+CONFIG_USBIP_VHCI_HCD=m
+CONFIG_USBIP_VHCI_HC_PORTS=15
+CONFIG_USBIP_VHCI_NR_HCS=8
+CONFIG_USBIP_HOST=m
+CONFIG_USBIP_VUDC=m
+# CONFIG_USBIP_DEBUG is not set
+
+##
+## file: drivers/vfio/Kconfig
+##
+# CONFIG_VFIO_NOIOMMU is not set
+
+##
+## file: drivers/vhost/Kconfig
+##
+CONFIG_VHOST_NET=m
+CONFIG_VHOST_SCSI=m
+CONFIG_VHOST_VSOCK=m
+# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
+
+##
+## file: drivers/video/backlight/Kconfig
+##
+# CONFIG_LCD_CLASS_DEVICE is not set
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+CONFIG_BACKLIGHT_PWM=m
+CONFIG_BACKLIGHT_APPLE=m
+# CONFIG_BACKLIGHT_QCOM_WLED is not set
+# CONFIG_BACKLIGHT_SAHARA is not set
+CONFIG_BACKLIGHT_WM831X=m
+# CONFIG_BACKLIGHT_ADP8860 is not set
+# CONFIG_BACKLIGHT_ADP8870 is not set
+# CONFIG_BACKLIGHT_LM3630A is not set
+# CONFIG_BACKLIGHT_LM3639 is not set
+# CONFIG_BACKLIGHT_LP855X is not set
+# CONFIG_BACKLIGHT_GPIO is not set
+# CONFIG_BACKLIGHT_LV5207LP is not set
+# CONFIG_BACKLIGHT_BD6107 is not set
+# CONFIG_BACKLIGHT_ARCXCNN is not set
+
+##
+## file: drivers/video/console/Kconfig
+##
+CONFIG_DUMMY_CONSOLE_COLUMNS=80
+CONFIG_DUMMY_CONSOLE_ROWS=25
+CONFIG_FRAMEBUFFER_CONSOLE=y
+# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set
+CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
+#. This won't work nicely unless we also hide the boot menu
+# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB=y
+CONFIG_FIRMWARE_EDID=y
+# CONFIG_FB_FOREIGN_ENDIAN is not set
+CONFIG_FB_ARC=m
+# CONFIG_FB_UVESA is not set
+# CONFIG_FB_OPENCORES is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_I740 is not set
+# CONFIG_FB_INTEL_DEBUG is not set
+# CONFIG_FB_INTEL_I2C is not set
+CONFIG_FB_S3=m
+CONFIG_FB_S3_DDC=y
+CONFIG_FB_VIA=m
+# CONFIG_FB_VIA_DIRECT_PROCFS is not set
+CONFIG_FB_VIA_X_COMPATIBILITY=y
+CONFIG_FB_3DFX=m
+# CONFIG_FB_3DFX_ACCEL is not set
+CONFIG_FB_3DFX_I2C=y
+CONFIG_FB_VT8623=m
+CONFIG_FB_ARK=m
+CONFIG_FB_PM3=m
+# CONFIG_FB_CARMINE is not set
+# CONFIG_FB_TMIO is not set
+CONFIG_FB_SM501=m
+CONFIG_FB_SMSCUFX=m
+CONFIG_FB_UDL=m
+# CONFIG_FB_IBM_GXT4500 is not set
+# CONFIG_FB_GOLDFISH is not set
+CONFIG_XEN_FBDEV_FRONTEND=y
+# CONFIG_FB_METRONOME is not set
+CONFIG_FB_MB862XX=m
+## choice: GDC variant
+CONFIG_FB_MB862XX_PCI_GDC=y
+## end choice
+CONFIG_FB_MB862XX_I2C=y
+# CONFIG_FB_BROADSHEET is not set
+# CONFIG_FB_SSD1307 is not set
+# CONFIG_FB_SM712 is not set
+
+##
+## file: drivers/video/logo/Kconfig
+##
+# CONFIG_LOGO is not set
+
+##
+## file: drivers/virt/Kconfig
+##
+CONFIG_VIRT_DRIVERS=y
+
+##
+## file: drivers/virtio/Kconfig
+##
+CONFIG_VIRTIO_PCI=m
+CONFIG_VIRTIO_PCI_LEGACY=y
+CONFIG_VIRTIO_PMEM=m
+CONFIG_VIRTIO_BALLOON=m
+CONFIG_VIRTIO_INPUT=m
+CONFIG_VIRTIO_MMIO=m
+# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set
+
+##
+## file: drivers/vme/Kconfig
+##
+# CONFIG_VME_BUS is not set
+
+##
+## file: drivers/w1/Kconfig
+##
+CONFIG_W1=m
+CONFIG_W1_CON=y
+
+##
+## file: drivers/w1/masters/Kconfig
+##
+# CONFIG_W1_MASTER_MATROX is not set
+CONFIG_W1_MASTER_DS2490=m
+CONFIG_W1_MASTER_DS2482=m
+# CONFIG_W1_MASTER_DS1WM is not set
+CONFIG_W1_MASTER_GPIO=m
+
+##
+## file: drivers/w1/slaves/Kconfig
+##
+CONFIG_W1_SLAVE_THERM=m
+CONFIG_W1_SLAVE_SMEM=m
+CONFIG_W1_SLAVE_DS2405=m
+CONFIG_W1_SLAVE_DS2408=m
+CONFIG_W1_SLAVE_DS2408_READBACK=y
+CONFIG_W1_SLAVE_DS2413=m
+CONFIG_W1_SLAVE_DS2406=m
+CONFIG_W1_SLAVE_DS2423=m
+CONFIG_W1_SLAVE_DS2805=m
+CONFIG_W1_SLAVE_DS2431=m
+CONFIG_W1_SLAVE_DS2433=m
+# CONFIG_W1_SLAVE_DS2433_CRC is not set
+CONFIG_W1_SLAVE_DS2438=m
+CONFIG_W1_SLAVE_DS2780=m
+CONFIG_W1_SLAVE_DS2781=m
+CONFIG_W1_SLAVE_DS28E04=m
+CONFIG_W1_SLAVE_DS28E17=m
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_WATCHDOG=y
+# CONFIG_WATCHDOG_NOWAYOUT is not set
+CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y
+CONFIG_WATCHDOG_SYSFS=y
+CONFIG_WATCHDOG_PRETIMEOUT_GOV=y
+CONFIG_WATCHDOG_PRETIMEOUT_GOV_NOOP=y
+CONFIG_WATCHDOG_PRETIMEOUT_GOV_PANIC=m
+## choice: Default Watchdog Pretimeout Governor
+CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP=y
+# CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC is not set
+## end choice
+CONFIG_SOFT_WATCHDOG=m
+# CONFIG_GPIO_WATCHDOG is not set
+CONFIG_WDAT_WDT=m
+CONFIG_WM831X_WATCHDOG=m
+CONFIG_WM8350_WATCHDOG=m
+# CONFIG_XILINX_WATCHDOG is not set
+# CONFIG_ZIIRAVE_WATCHDOG is not set
+# CONFIG_CADENCE_WATCHDOG is not set
+# CONFIG_DW_WATCHDOG is not set
+# CONFIG_MAX63XX_WATCHDOG is not set
+# CONFIG_EBC_C384_WDT is not set
+CONFIG_SBC_FITPC2_WATCHDOG=m
+CONFIG_ITCO_WDT=m
+CONFIG_ITCO_VENDOR_SUPPORT=y
+CONFIG_IT87_WDT=m
+CONFIG_PC87413_WDT=m
+CONFIG_SMSC_SCH311X_WDT=m
+CONFIG_SMSC37B787_WDT=m
+CONFIG_SBC_EPX_C3_WATCHDOG=m
+# CONFIG_BCM7038_WDT is not set
+# CONFIG_MEN_A21_WDT is not set
+CONFIG_XEN_WDT=m
+
+##
+## file: drivers/xen/Kconfig
+##
+CONFIG_XEN_BALLOON=y
+CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y
+CONFIG_XEN_SCRUB_PAGES_DEFAULT=y
+CONFIG_XEN_DEV_EVTCHN=m
+CONFIG_XEN_BACKEND=y
+CONFIG_XENFS=m
+CONFIG_XEN_COMPAT_XENFS=y
+CONFIG_XEN_SYS_HYPERVISOR=y
+CONFIG_XEN_GNTDEV=m
+CONFIG_XEN_GRANT_DEV_ALLOC=m
+CONFIG_XEN_PCIDEV_BACKEND=m
+CONFIG_XEN_SCSI_BACKEND=m
+CONFIG_XEN_MCE_LOG=y
+
+##
+## file: fs/Kconfig
+##
+CONFIG_FS_DAX=y
+CONFIG_FILE_LOCKING=y
+CONFIG_MANDATORY_FILE_LOCKING=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_HUGETLBFS=y
+CONFIG_MISC_FILESYSTEMS=y
+CONFIG_NETWORK_FILESYSTEMS=y
+
+##
+## file: fs/9p/Kconfig
+##
+CONFIG_9P_FS=m
+CONFIG_9P_FSCACHE=y
+CONFIG_9P_FS_POSIX_ACL=y
+CONFIG_9P_FS_SECURITY=y
+
+##
+## file: fs/adfs/Kconfig
+##
+CONFIG_ADFS_FS=m
+# CONFIG_ADFS_FS_RW is not set
+
+##
+## file: fs/affs/Kconfig
+##
+CONFIG_AFFS_FS=m
+
+##
+## file: fs/afs/Kconfig
+##
+CONFIG_AFS_FS=m
+# CONFIG_AFS_DEBUG is not set
+CONFIG_AFS_FSCACHE=y
+
+##
+## file: fs/autofs/Kconfig
+##
+CONFIG_AUTOFS_FS=m
+
+##
+## file: fs/befs/Kconfig
+##
+CONFIG_BEFS_FS=m
+# CONFIG_BEFS_DEBUG is not set
+
+##
+## file: fs/bfs/Kconfig
+##
+CONFIG_BFS_FS=m
+
+##
+## file: fs/Kconfig.binfmt
+##
+CONFIG_BINFMT_ELF=y
+CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y
+CONFIG_BINFMT_SCRIPT=y
+# CONFIG_BINFMT_AOUT is not set
+CONFIG_BINFMT_MISC=m
+CONFIG_COREDUMP=y
+
+##
+## file: fs/btrfs/Kconfig
+##
+CONFIG_BTRFS_FS=m
+CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
+# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
+# CONFIG_BTRFS_DEBUG is not set
+# CONFIG_BTRFS_ASSERT is not set
+
+##
+## file: fs/cachefiles/Kconfig
+##
+CONFIG_CACHEFILES=m
+# CONFIG_CACHEFILES_DEBUG is not set
+# CONFIG_CACHEFILES_HISTOGRAM is not set
+
+##
+## file: fs/ceph/Kconfig
+##
+CONFIG_CEPH_FS=m
+CONFIG_CEPH_FSCACHE=y
+CONFIG_CEPH_FS_POSIX_ACL=y
+
+##
+## file: fs/cifs/Kconfig
+##
+CONFIG_CIFS=m
+CONFIG_CIFS_WEAK_PW_HASH=y
+CONFIG_CIFS_UPCALL=y
+CONFIG_CIFS_XATTR=y
+CONFIG_CIFS_POSIX=y
+CONFIG_CIFS_DEBUG=y
+# CONFIG_CIFS_DEBUG2 is not set
+CONFIG_CIFS_DFS_UPCALL=y
+CONFIG_CIFS_NFSD_EXPORT=y
+CONFIG_CIFS_FSCACHE=y
+
+##
+## file: fs/coda/Kconfig
+##
+CONFIG_CODA_FS=m
+
+##
+## file: fs/configfs/Kconfig
+##
+CONFIG_CONFIGFS_FS=m
+
+##
+## file: fs/cramfs/Kconfig
+##
+# CONFIG_CRAMFS is not set
+
+##
+## file: fs/crypto/Kconfig
+##
+CONFIG_FS_ENCRYPTION=y
+
+##
+## file: fs/dlm/Kconfig
+##
+CONFIG_DLM=m
+CONFIG_DLM_DEBUG=y
+
+##
+## file: fs/ecryptfs/Kconfig
+##
+CONFIG_ECRYPT_FS=m
+CONFIG_ECRYPT_FS_MESSAGING=y
+
+##
+## file: fs/efivarfs/Kconfig
+##
+CONFIG_EFIVAR_FS=m
+
+##
+## file: fs/efs/Kconfig
+##
+CONFIG_EFS_FS=m
+
+##
+## file: fs/erofs/Kconfig
+##
+CONFIG_EROFS_FS=m
+# CONFIG_EROFS_FS_DEBUG is not set
+CONFIG_EROFS_FS_XATTR=y
+CONFIG_EROFS_FS_POSIX_ACL=y
+CONFIG_EROFS_FS_SECURITY=y
+CONFIG_EROFS_FS_ZIP=y
+CONFIG_EROFS_FS_CLUSTER_PAGE_LIMIT=1
+
+##
+## file: fs/exfat/Kconfig
+##
+CONFIG_EXFAT_FS=m
+CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
+
+##
+## file: fs/ext2/Kconfig
+##
+# CONFIG_EXT2_FS is not set
+
+##
+## file: fs/ext4/Kconfig
+##
+# CONFIG_EXT3_FS is not set
+CONFIG_EXT4_FS=m
+CONFIG_EXT4_USE_FOR_EXT2=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_EXT4_FS_SECURITY=y
+# CONFIG_EXT4_DEBUG is not set
+
+##
+## file: fs/f2fs/Kconfig
+##
+CONFIG_F2FS_FS=m
+CONFIG_F2FS_STAT_FS=y
+CONFIG_F2FS_FS_XATTR=y
+CONFIG_F2FS_FS_POSIX_ACL=y
+CONFIG_F2FS_FS_SECURITY=y
+# CONFIG_F2FS_IO_TRACE is not set
+# CONFIG_F2FS_FAULT_INJECTION is not set
+CONFIG_F2FS_FS_COMPRESSION=y
+CONFIG_F2FS_FS_LZO=y
+CONFIG_F2FS_FS_LZ4=y
+CONFIG_F2FS_FS_ZSTD=y
+CONFIG_F2FS_FS_LZORLE=y
+
+##
+## file: fs/fat/Kconfig
+##
+CONFIG_MSDOS_FS=m
+CONFIG_VFAT_FS=m
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+#. Mitigate the lack of UTF-8 case-folding which makes FAT name lookup
+#. inconsistent (#833238). This combination enables case-folding the
+#. ASCII subset while still encoding/decoding as UTF-8.
+CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
+CONFIG_FAT_DEFAULT_UTF8=y
+
+##
+## file: fs/freevxfs/Kconfig
+##
+CONFIG_VXFS_FS=m
+
+##
+## file: fs/fscache/Kconfig
+##
+CONFIG_FSCACHE=m
+CONFIG_FSCACHE_STATS=y
+# CONFIG_FSCACHE_HISTOGRAM is not set
+# CONFIG_FSCACHE_DEBUG is not set
+# CONFIG_FSCACHE_OBJECT_LIST is not set
+
+##
+## file: fs/fuse/Kconfig
+##
+CONFIG_FUSE_FS=m
+CONFIG_CUSE=m
+CONFIG_VIRTIO_FS=m
+
+##
+## file: fs/gfs2/Kconfig
+##
+CONFIG_GFS2_FS=m
+CONFIG_GFS2_FS_LOCKING_DLM=y
+
+##
+## file: fs/hfs/Kconfig
+##
+CONFIG_HFS_FS=m
+
+##
+## file: fs/hfsplus/Kconfig
+##
+CONFIG_HFSPLUS_FS=m
+
+##
+## file: fs/hpfs/Kconfig
+##
+CONFIG_HPFS_FS=m
+
+##
+## file: fs/isofs/Kconfig
+##
+CONFIG_ISO9660_FS=m
+CONFIG_JOLIET=y
+CONFIG_ZISOFS=y
+
+##
+## file: fs/jbd2/Kconfig
+##
+# CONFIG_JBD2_DEBUG is not set
+
+##
+## file: fs/jffs2/Kconfig
+##
+CONFIG_JFFS2_FS=m
+CONFIG_JFFS2_FS_DEBUG=0
+CONFIG_JFFS2_FS_WRITEBUFFER=y
+# CONFIG_JFFS2_FS_WBUF_VERIFY is not set
+CONFIG_JFFS2_SUMMARY=y
+CONFIG_JFFS2_FS_XATTR=y
+CONFIG_JFFS2_FS_POSIX_ACL=y
+CONFIG_JFFS2_FS_SECURITY=y
+CONFIG_JFFS2_COMPRESSION_OPTIONS=y
+CONFIG_JFFS2_ZLIB=y
+CONFIG_JFFS2_LZO=y
+CONFIG_JFFS2_RTIME=y
+# CONFIG_JFFS2_RUBIN is not set
+## choice: JFFS2 default compression mode
+# CONFIG_JFFS2_CMODE_NONE is not set
+CONFIG_JFFS2_CMODE_PRIORITY=y
+# CONFIG_JFFS2_CMODE_SIZE is not set
+# CONFIG_JFFS2_CMODE_FAVOURLZO is not set
+## end choice
+
+##
+## file: fs/jfs/Kconfig
+##
+CONFIG_JFS_FS=m
+CONFIG_JFS_POSIX_ACL=y
+CONFIG_JFS_SECURITY=y
+# CONFIG_JFS_DEBUG is not set
+# CONFIG_JFS_STATISTICS is not set
+
+##
+## file: fs/minix/Kconfig
+##
+CONFIG_MINIX_FS=m
+
+##
+## file: fs/nfs/Kconfig
+##
+CONFIG_NFS_FS=m
+CONFIG_NFS_V2=y
+CONFIG_NFS_V3=y
+CONFIG_NFS_V3_ACL=y
+CONFIG_NFS_V4=y
+CONFIG_NFS_SWAP=y
+CONFIG_NFS_V4_1=y
+CONFIG_NFS_V4_2=y
+CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
+# CONFIG_NFS_V4_1_MIGRATION is not set
+CONFIG_NFS_FSCACHE=y
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+
+##
+## file: fs/nfsd/Kconfig
+##
+CONFIG_NFSD=m
+CONFIG_NFSD_V3=y
+CONFIG_NFSD_V3_ACL=y
+CONFIG_NFSD_V4=y
+CONFIG_NFSD_BLOCKLAYOUT=y
+CONFIG_NFSD_V4_SECURITY_LABEL=y
+
+##
+## file: fs/nilfs2/Kconfig
+##
+CONFIG_NILFS2_FS=m
+
+##
+## file: fs/nls/Kconfig
+##
+CONFIG_NLS=y
+CONFIG_NLS_DEFAULT="utf8"
+CONFIG_NLS_CODEPAGE_437=m
+CONFIG_NLS_CODEPAGE_737=m
+CONFIG_NLS_CODEPAGE_775=m
+CONFIG_NLS_CODEPAGE_850=m
+CONFIG_NLS_CODEPAGE_852=m
+CONFIG_NLS_CODEPAGE_855=m
+CONFIG_NLS_CODEPAGE_857=m
+CONFIG_NLS_CODEPAGE_860=m
+CONFIG_NLS_CODEPAGE_861=m
+CONFIG_NLS_CODEPAGE_862=m
+CONFIG_NLS_CODEPAGE_863=m
+CONFIG_NLS_CODEPAGE_864=m
+CONFIG_NLS_CODEPAGE_865=m
+CONFIG_NLS_CODEPAGE_866=m
+CONFIG_NLS_CODEPAGE_869=m
+CONFIG_NLS_CODEPAGE_936=m
+CONFIG_NLS_CODEPAGE_950=m
+CONFIG_NLS_CODEPAGE_932=m
+CONFIG_NLS_CODEPAGE_949=m
+CONFIG_NLS_CODEPAGE_874=m
+CONFIG_NLS_ISO8859_8=m
+CONFIG_NLS_CODEPAGE_1250=m
+CONFIG_NLS_CODEPAGE_1251=m
+CONFIG_NLS_ASCII=m
+CONFIG_NLS_ISO8859_1=m
+CONFIG_NLS_ISO8859_2=m
+CONFIG_NLS_ISO8859_3=m
+CONFIG_NLS_ISO8859_4=m
+CONFIG_NLS_ISO8859_5=m
+CONFIG_NLS_ISO8859_6=m
+CONFIG_NLS_ISO8859_7=m
+CONFIG_NLS_ISO8859_9=m
+CONFIG_NLS_ISO8859_13=m
+CONFIG_NLS_ISO8859_14=m
+CONFIG_NLS_ISO8859_15=m
+CONFIG_NLS_KOI8_R=m
+CONFIG_NLS_KOI8_U=m
+CONFIG_NLS_MAC_ROMAN=m
+CONFIG_NLS_MAC_CELTIC=m
+CONFIG_NLS_MAC_CENTEURO=m
+CONFIG_NLS_MAC_CROATIAN=m
+CONFIG_NLS_MAC_CYRILLIC=m
+CONFIG_NLS_MAC_GAELIC=m
+CONFIG_NLS_MAC_GREEK=m
+CONFIG_NLS_MAC_ICELAND=m
+CONFIG_NLS_MAC_INUIT=m
+CONFIG_NLS_MAC_ROMANIAN=m
+CONFIG_NLS_MAC_TURKISH=m
+CONFIG_NLS_UTF8=m
+
+##
+## file: fs/notify/dnotify/Kconfig
+##
+CONFIG_DNOTIFY=y
+
+##
+## file: fs/notify/fanotify/Kconfig
+##
+CONFIG_FANOTIFY=y
+CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
+
+##
+## file: fs/notify/inotify/Kconfig
+##
+CONFIG_INOTIFY_USER=y
+
+##
+## file: fs/ntfs/Kconfig
+##
+# CONFIG_NTFS_FS is not set
+
+##
+## file: fs/ocfs2/Kconfig
+##
+CONFIG_OCFS2_FS=m
+CONFIG_OCFS2_FS_O2CB=m
+CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
+CONFIG_OCFS2_FS_STATS=y
+CONFIG_OCFS2_DEBUG_MASKLOG=y
+# CONFIG_OCFS2_DEBUG_FS is not set
+
+##
+## file: fs/omfs/Kconfig
+##
+CONFIG_OMFS_FS=m
+
+##
+## file: fs/orangefs/Kconfig
+##
+CONFIG_ORANGEFS_FS=m
+
+##
+## file: fs/overlayfs/Kconfig
+##
+CONFIG_OVERLAY_FS=m
+
+##
+## file: fs/proc/Kconfig
+##
+CONFIG_PROC_FS=y
+CONFIG_PROC_KCORE=y
+CONFIG_PROC_SYSCTL=y
+CONFIG_PROC_PAGE_MONITOR=y
+
+##
+## file: fs/pstore/Kconfig
+##
+# CONFIG_PSTORE_CONSOLE is not set
+# CONFIG_PSTORE_PMSG is not set
+# CONFIG_PSTORE_FTRACE is not set
+CONFIG_PSTORE_RAM=m
+
+##
+## file: fs/qnx4/Kconfig
+##
+CONFIG_QNX4FS_FS=m
+
+##
+## file: fs/qnx6/Kconfig
+##
+CONFIG_QNX6FS_FS=m
+# CONFIG_QNX6FS_DEBUG is not set
+
+##
+## file: fs/quota/Kconfig
+##
+CONFIG_QUOTA=y
+CONFIG_QUOTA_NETLINK_INTERFACE=y
+CONFIG_PRINT_QUOTA_WARNING=y
+# CONFIG_QUOTA_DEBUG is not set
+CONFIG_QFMT_V1=m
+CONFIG_QFMT_V2=m
+
+##
+## file: fs/reiserfs/Kconfig
+##
+CONFIG_REISERFS_FS=m
+# CONFIG_REISERFS_CHECK is not set
+# CONFIG_REISERFS_PROC_INFO is not set
+CONFIG_REISERFS_FS_XATTR=y
+CONFIG_REISERFS_FS_POSIX_ACL=y
+CONFIG_REISERFS_FS_SECURITY=y
+
+##
+## file: fs/romfs/Kconfig
+##
+CONFIG_ROMFS_FS=m
+## choice: RomFS backing stores
+# CONFIG_ROMFS_BACKED_BY_BLOCK is not set
+# CONFIG_ROMFS_BACKED_BY_MTD is not set
+CONFIG_ROMFS_BACKED_BY_BOTH=y
+## end choice
+
+##
+## file: fs/squashfs/Kconfig
+##
+CONFIG_SQUASHFS=m
+## choice: File decompression options
+CONFIG_SQUASHFS_FILE_DIRECT=y
+## end choice
+## choice: Decompressor parallelisation options
+CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y
+## end choice
+CONFIG_SQUASHFS_XATTR=y
+CONFIG_SQUASHFS_ZLIB=y
+CONFIG_SQUASHFS_LZ4=y
+CONFIG_SQUASHFS_LZO=y
+CONFIG_SQUASHFS_XZ=y
+CONFIG_SQUASHFS_ZSTD=y
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+
+##
+## file: fs/sysfs/Kconfig
+##
+CONFIG_SYSFS=y
+
+##
+## file: fs/sysv/Kconfig
+##
+CONFIG_SYSV_FS=m
+
+##
+## file: fs/ubifs/Kconfig
+##
+CONFIG_UBIFS_FS=m
+CONFIG_UBIFS_FS_ADVANCED_COMPR=y
+CONFIG_UBIFS_FS_LZO=y
+CONFIG_UBIFS_FS_ZLIB=y
+
+##
+## file: fs/udf/Kconfig
+##
+CONFIG_UDF_FS=m
+
+##
+## file: fs/ufs/Kconfig
+##
+CONFIG_UFS_FS=m
+# CONFIG_UFS_FS_WRITE is not set
+# CONFIG_UFS_DEBUG is not set
+
+##
+## file: fs/verity/Kconfig
+##
+CONFIG_FS_VERITY=y
+CONFIG_FS_VERITY_BUILTIN_SIGNATURES=y
+
+##
+## file: fs/xfs/Kconfig
+##
+CONFIG_XFS_FS=m
+CONFIG_XFS_QUOTA=y
+CONFIG_XFS_POSIX_ACL=y
+CONFIG_XFS_RT=y
+# CONFIG_XFS_WARN is not set
+# CONFIG_XFS_DEBUG is not set
+
+##
+## file: fs/zonefs/Kconfig
+##
+CONFIG_ZONEFS_FS=m
+
+##
+## file: init/Kconfig
+##
+# CONFIG_COMPILE_TEST is not set
+CONFIG_LOCALVERSION=""
+# CONFIG_LOCALVERSION_AUTO is not set
+## choice: Kernel compression mode
+# CONFIG_KERNEL_GZIP is not set
+# CONFIG_KERNEL_BZIP2 is not set
+# CONFIG_KERNEL_LZMA is not set
+CONFIG_KERNEL_XZ=y
+# CONFIG_KERNEL_LZO is not set
+# CONFIG_KERNEL_LZ4 is not set
+## end choice
+CONFIG_DEFAULT_HOSTNAME="(none)"
+CONFIG_SWAP=y
+CONFIG_SYSVIPC=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_CROSS_MEMORY_ATTACH=y
+# CONFIG_USELIB is not set
+CONFIG_AUDIT=y
+## choice: Cputime accounting
+CONFIG_TICK_CPU_ACCOUNTING=y
+# CONFIG_VIRT_CPU_ACCOUNTING_NATIVE is not set
+# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
+## end choice
+CONFIG_BSD_PROCESS_ACCT=y
+CONFIG_BSD_PROCESS_ACCT_V3=y
+CONFIG_TASKSTATS=y
+CONFIG_TASK_DELAY_ACCT=y
+CONFIG_TASK_XACCT=y
+CONFIG_TASK_IO_ACCOUNTING=y
+CONFIG_PSI=y
+# CONFIG_PSI_DEFAULT_DISABLED is not set
+CONFIG_CPU_ISOLATION=y
+# CONFIG_IKCONFIG is not set
+CONFIG_LOG_BUF_SHIFT=17
+CONFIG_LOG_CPU_MAX_BUF_SHIFT=12
+CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13
+CONFIG_NUMA_BALANCING=y
+CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
+CONFIG_CGROUPS=y
+CONFIG_MEMCG=y
+CONFIG_BLK_CGROUP=y
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
+CONFIG_CFS_BANDWIDTH=y
+# CONFIG_RT_GROUP_SCHED is not set
+CONFIG_CGROUP_PIDS=y
+CONFIG_CGROUP_RDMA=y
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_HUGETLB=y
+CONFIG_CPUSETS=y
+CONFIG_PROC_PID_CPUSET=y
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CGROUP_CPUACCT=y
+CONFIG_CGROUP_PERF=y
+CONFIG_CGROUP_BPF=y
+# CONFIG_CGROUP_DEBUG is not set
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_IPC_NS=y
+CONFIG_USER_NS=y
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
+CONFIG_CHECKPOINT_RESTORE=y
+CONFIG_SCHED_AUTOGROUP=y
+# CONFIG_SYSFS_DEPRECATED is not set
+# CONFIG_SYSFS_DEPRECATED_V2 is not set
+CONFIG_RELAY=y
+CONFIG_BLK_DEV_INITRD=y
+## choice: Compiler optimization level
+CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+## end choice
+#. Unfortunately some useful options are conditional on EXPERT
+CONFIG_EXPERT=y
+CONFIG_UID16=y
+CONFIG_MULTIUSER=y
+# CONFIG_SYSFS_SYSCALL is not set
+CONFIG_FHANDLE=y
+CONFIG_POSIX_TIMERS=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_PCSPKR_PLATFORM=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+CONFIG_ADVISE_SYSCALLS=y
+CONFIG_MEMBARRIER=y
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_ALL is not set
+CONFIG_BPF_LSM=y
+CONFIG_BPF_SYSCALL=y
+# CONFIG_BPF_JIT_ALWAYS_ON is not set
+#. Debian backport of 08389d888287 ("bpf: Add kconfig knob for disabling unpriv
+#. bpf by default") in 5.13-rc4 adds the configuration option to init/Kconfig
+#. and needs to be moved once rebasing to 5.13-rc4 and later.
+CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
+CONFIG_USERFAULTFD=y
+CONFIG_RSEQ=y
+# CONFIG_DEBUG_RSEQ is not set
+# CONFIG_EMBEDDED is not set
+# CONFIG_PC104 is not set
+CONFIG_PERF_EVENTS=y
+# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
+CONFIG_VM_EVENT_COUNTERS=y
+CONFIG_SLUB_DEBUG=y
+# CONFIG_SLUB_MEMCG_SYSFS_ON is not set
+# CONFIG_COMPAT_BRK is not set
+## choice: Choose SLAB allocator
+# CONFIG_SLAB is not set
+CONFIG_SLUB=y
+# CONFIG_SLOB is not set
+## end choice
+CONFIG_SLAB_MERGE_DEFAULT=y
+CONFIG_SLAB_FREELIST_RANDOM=y
+CONFIG_SLAB_FREELIST_HARDENED=y
+CONFIG_SLUB_CPU_PARTIAL=y
+# CONFIG_MMAP_ALLOW_UNINITIALIZED is not set
+CONFIG_PROFILING=y
+CONFIG_MODULES=y
+CONFIG_MODULE_FORCE_LOAD=y
+CONFIG_MODULE_UNLOAD=y
+CONFIG_MODULE_FORCE_UNLOAD=y
+CONFIG_MODVERSIONS=y
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+#. This is overridden if the [build]signed-code setting is enabled
+# CONFIG_MODULE_SIG is not set
+#. Signature validation is a run-time option
+# CONFIG_MODULE_SIG_FORCE is not set
+#. Signatures are added in linux-signed
+# CONFIG_MODULE_SIG_ALL is not set
+## choice: Which hash algorithm should modules be signed with?
+# CONFIG_MODULE_SIG_SHA1 is not set
+# CONFIG_MODULE_SIG_SHA224 is not set
+CONFIG_MODULE_SIG_SHA256=y
+# CONFIG_MODULE_SIG_SHA384 is not set
+# CONFIG_MODULE_SIG_SHA512 is not set
+## end choice
+# CONFIG_MODULE_COMPRESS is not set
+# CONFIG_UNUSED_SYMBOLS is not set
+# CONFIG_TRIM_UNUSED_KSYMS is not set
+
+##
+## file: kernel/dma/Kconfig
+##
+# CONFIG_DMA_API_DEBUG is not set
+
+##
+## file: kernel/gcov/Kconfig
+##
+# CONFIG_GCOV_KERNEL is not set
+
+##
+## file: kernel/Kconfig.hz
+##
+## choice: Timer frequency
+# CONFIG_HZ_100 is not set
+CONFIG_HZ_250=y
+# CONFIG_HZ_300 is not set
+# CONFIG_HZ_1000 is not set
+## end choice
+
+##
+## file: kernel/irq/Kconfig
+##
+# CONFIG_GENERIC_IRQ_DEBUGFS is not set
+
+##
+## file: kernel/power/Kconfig
+##
+CONFIG_SUSPEND=y
+# CONFIG_SUSPEND_SKIP_SYNC is not set
+CONFIG_HIBERNATION=y
+CONFIG_PM_STD_PARTITION=""
+# CONFIG_PM_AUTOSLEEP is not set
+# CONFIG_PM_WAKELOCKS is not set
+CONFIG_PM=y
+CONFIG_PM_DEBUG=y
+CONFIG_PM_ADVANCED_DEBUG=y
+#. Could be enabled if it becomes configurable at run-time
+# CONFIG_DPM_WATCHDOG is not set
+# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set
+CONFIG_ENERGY_MODEL=y
+
+##
+## file: kernel/Kconfig.preempt
+##
+## choice: Preemption Model
+# CONFIG_PREEMPT_NONE is not set
+CONFIG_PREEMPT_VOLUNTARY=y
+# CONFIG_PREEMPT is not set
+## end choice
+
+##
+## file: kernel/rcu/Kconfig
+##
+# CONFIG_RCU_EXPERT is not set
+CONFIG_RCU_FANOUT=32
+CONFIG_RCU_FAST_NO_HZ=y
+
+##
+## file: kernel/rcu/Kconfig.debug
+##
+# CONFIG_RCU_TORTURE_TEST is not set
+CONFIG_RCU_CPU_STALL_TIMEOUT=21
+# CONFIG_RCU_TRACE is not set
+# CONFIG_RCU_EQS_DEBUG is not set
+
+##
+## file: kernel/time/Kconfig
+##
+## choice: Timer tick handling
+# CONFIG_HZ_PERIODIC is not set
+CONFIG_NO_HZ_IDLE=y
+# CONFIG_NO_HZ_FULL is not set
+## end choice
+#. Backward compatibility symbol
+# CONFIG_NO_HZ is not set
+CONFIG_HIGH_RES_TIMERS=y
+
+##
+## file: kernel/trace/Kconfig
+##
+CONFIG_FTRACE=y
+CONFIG_FUNCTION_TRACER=y
+CONFIG_FUNCTION_GRAPH_TRACER=y
+CONFIG_DYNAMIC_FTRACE=y
+# CONFIG_FUNCTION_PROFILER is not set
+CONFIG_STACK_TRACER=y
+# CONFIG_IRQSOFF_TRACER is not set
+# CONFIG_PREEMPT_TRACER is not set
+# CONFIG_SCHED_TRACER is not set
+CONFIG_FTRACE_SYSCALLS=y
+CONFIG_TRACER_SNAPSHOT=y
+# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set
+## choice: Branch Profiling
+CONFIG_BRANCH_PROFILE_NONE=y
+# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
+# CONFIG_PROFILE_ALL_BRANCHES is not set
+## end choice
+CONFIG_BLK_DEV_IO_TRACE=y
+CONFIG_KPROBE_EVENTS=y
+CONFIG_UPROBE_EVENTS=y
+# CONFIG_TRACEPOINT_BENCHMARK is not set
+# CONFIG_RING_BUFFER_BENCHMARK is not set
+# CONFIG_TRACE_EVAL_MAP_FILE is not set
+# CONFIG_FTRACE_STARTUP_TEST is not set
+# CONFIG_RING_BUFFER_STARTUP_TEST is not set
+# CONFIG_MMIOTRACE_TEST is not set
+
+##
+## file: lib/Kconfig
+##
+CONFIG_CRC_CCITT=m
+CONFIG_CRC16=m
+CONFIG_CRC_T10DIF=m
+CONFIG_CRC_ITU_T=m
+CONFIG_CRC32=y
+# CONFIG_CRC32_SELFTEST is not set
+CONFIG_CRC7=m
+CONFIG_LIBCRC32C=m
+# CONFIG_CRC8 is not set
+# CONFIG_RANDOM32_SELFTEST is not set
+# CONFIG_GLOB_SELFTEST is not set
+
+##
+## file: lib/Kconfig.debug
+##
+CONFIG_PRINTK_TIME=y
+CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
+CONFIG_BOOT_PRINTK_DELAY=y
+CONFIG_DYNAMIC_DEBUG=y
+CONFIG_DEBUG_BUGVERBOSE=y
+# CONFIG_DEBUG_INFO is not set
+# CONFIG_DEBUG_INFO_REDUCED is not set
+# CONFIG_DEBUG_INFO_SPLIT is not set
+# CONFIG_GDB_SCRIPTS is not set
+CONFIG_ENABLE_MUST_CHECK=y
+CONFIG_STRIP_ASM_SYMS=y
+# CONFIG_READABLE_ASM is not set
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
+CONFIG_SECTION_MISMATCH_WARN_ONLY=y
+# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
+CONFIG_MAGIC_SYSRQ=y
+CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6
+CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_KERNEL=y
+# CONFIG_DEBUG_OBJECTS is not set
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_SLUB_STATS is not set
+# CONFIG_DEBUG_KMEMLEAK is not set
+CONFIG_SCHED_STACK_END_CHECK=y
+# CONFIG_DEBUG_VM is not set
+# CONFIG_DEBUG_VIRTUAL is not set
+CONFIG_DEBUG_MEMORY_INIT=y
+#. For use by selftests
+CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m
+# CONFIG_DEBUG_HIGHMEM is not set
+# CONFIG_PANIC_ON_OOPS is not set
+CONFIG_PANIC_TIMEOUT=0
+CONFIG_SOFTLOCKUP_DETECTOR=y
+# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
+CONFIG_HARDLOCKUP_DETECTOR=y
+# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
+CONFIG_DETECT_HUNG_TASK=y
+CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120
+# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+CONFIG_SCHED_DEBUG=y
+CONFIG_SCHEDSTATS=y
+# CONFIG_DEBUG_TIMEKEEPING is not set
+# CONFIG_PROVE_LOCKING is not set
+# CONFIG_LOCK_STAT is not set
+# CONFIG_DEBUG_RT_MUTEXES is not set
+# CONFIG_DEBUG_SPINLOCK is not set
+# CONFIG_DEBUG_MUTEXES is not set
+# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
+# CONFIG_DEBUG_LOCK_ALLOC is not set
+# CONFIG_DEBUG_ATOMIC_SLEEP is not set
+# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
+# CONFIG_LOCK_TORTURE_TEST is not set
+# CONFIG_DEBUG_KOBJECT is not set
+CONFIG_DEBUG_LIST=y
+# CONFIG_DEBUG_PLIST is not set
+# CONFIG_DEBUG_SG is not set
+# CONFIG_DEBUG_NOTIFIERS is not set
+CONFIG_BUG_ON_DATA_CORRUPTION=y
+# CONFIG_DEBUG_CREDENTIALS is not set
+# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
+# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
+# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
+# CONFIG_LATENCYTOP is not set
+CONFIG_STRICT_DEVMEM=y
+CONFIG_IO_STRICT_DEVMEM=y
+#. For use by selftests
+CONFIG_NOTIFIER_ERROR_INJECTION=m
+CONFIG_PM_NOTIFIER_ERROR_INJECT=m
+# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set
+# CONFIG_FAULT_INJECTION is not set
+# CONFIG_KCOV is not set
+# CONFIG_LKDTM is not set
+# CONFIG_TEST_LIST_SORT is not set
+# CONFIG_KPROBES_SANITY_TEST is not set
+# CONFIG_BACKTRACE_SELF_TEST is not set
+# CONFIG_RBTREE_TEST is not set
+# CONFIG_INTERVAL_TREE_TEST is not set
+# CONFIG_PERCPU_TEST is not set
+# CONFIG_ATOMIC64_SELFTEST is not set
+#. Self-test
+# CONFIG_ASYNC_RAID6_TEST is not set
+# CONFIG_TEST_HEXDUMP is not set
+# CONFIG_TEST_STRING_HELPERS is not set
+# CONFIG_TEST_KSTRTOX is not set
+# CONFIG_TEST_PRINTF is not set
+# CONFIG_TEST_BITMAP is not set
+# CONFIG_TEST_UUID is not set
+# CONFIG_TEST_RHASHTABLE is not set
+# CONFIG_TEST_HASH is not set
+# CONFIG_TEST_LKM is not set
+#. For use by selftests
+CONFIG_TEST_USER_COPY=m
+CONFIG_TEST_BPF=m
+CONFIG_TEST_FIRMWARE=m
+# CONFIG_TEST_UDELAY is not set
+CONFIG_TEST_STATIC_KEYS=m
+
+##
+## file: lib/fonts/Kconfig
+##
+CONFIG_FONTS=y
+CONFIG_FONT_8x8=y
+CONFIG_FONT_8x16=y
+# CONFIG_FONT_6x11 is not set
+# CONFIG_FONT_7x14 is not set
+# CONFIG_FONT_PEARL_8x8 is not set
+# CONFIG_FONT_ACORN_8x8 is not set
+# CONFIG_FONT_MINI_4x6 is not set
+# CONFIG_FONT_6x10 is not set
+# CONFIG_FONT_10x18 is not set
+# CONFIG_FONT_SUN8x16 is not set
+# CONFIG_FONT_SUN12x22 is not set
+CONFIG_FONT_TER16x32=y
+
+##
+## file: lib/Kconfig.kasan
+##
+# CONFIG_KASAN is not set
+
+##
+## file: lib/Kconfig.kgdb
+##
+# CONFIG_KGDB is not set
+
+##
+## file: lib/math/Kconfig
+##
+CONFIG_CORDIC=m
+
+##
+## file: lib/Kconfig.ubsan
+##
+# CONFIG_UBSAN is not set
+
+##
+## file: lib/xz/Kconfig
+##
+#. These are enabled again by arch config, matching the defaults
+# CONFIG_XZ_DEC_X86 is not set
+# CONFIG_XZ_DEC_POWERPC is not set
+# CONFIG_XZ_DEC_IA64 is not set
+# CONFIG_XZ_DEC_ARM is not set
+# CONFIG_XZ_DEC_ARMTHUMB is not set
+# CONFIG_XZ_DEC_SPARC is not set
+# CONFIG_XZ_DEC_TEST is not set
+
+##
+## file: mm/Kconfig
+##
+CONFIG_MEMORY_HOTPLUG=y
+# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set
+CONFIG_MEMORY_HOTREMOVE=y
+CONFIG_BALLOON_COMPACTION=y
+CONFIG_COMPACTION=y
+CONFIG_MIGRATION=y
+CONFIG_BOUNCE=y
+CONFIG_KSM=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_MEMORY_FAILURE=y
+CONFIG_HWPOISON_INJECT=m
+CONFIG_TRANSPARENT_HUGEPAGE=y
+## choice: Transparent Hugepage Support sysfs defaults
+CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
+# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
+## end choice
+# CONFIG_CLEANCACHE is not set
+CONFIG_FRONTSWAP=y
+# CONFIG_CMA is not set
+CONFIG_MEM_SOFT_DIRTY=y
+CONFIG_ZSWAP=y
+CONFIG_ZBUD=y
+CONFIG_Z3FOLD=m
+CONFIG_ZSMALLOC=m
+# CONFIG_ZSMALLOC_STAT is not set
+CONFIG_DEFERRED_STRUCT_PAGE_INIT=y
+# CONFIG_IDLE_PAGE_TRACKING is not set
+# CONFIG_PERCPU_STATS is not set
+# CONFIG_GUP_BENCHMARK is not set
+
+##
+## file: mm/Kconfig.debug
+##
+CONFIG_PAGE_EXTENSION=y
+# CONFIG_DEBUG_PAGEALLOC is not set
+# CONFIG_PAGE_OWNER is not set
+CONFIG_PAGE_POISONING=y
+CONFIG_PAGE_POISONING_NO_SANITY=y
+# CONFIG_PAGE_POISONING_ZERO is not set
+# CONFIG_DEBUG_PAGE_REF is not set
+# CONFIG_DEBUG_RODATA_TEST is not set
+# CONFIG_PTDUMP_DEBUGFS is not set
+
+##
+## file: net/Kconfig
+##
+CONFIG_NET=y
+CONFIG_INET=y
+CONFIG_NETWORK_SECMARK=y
+# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
+CONFIG_NETFILTER=y
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=y
+CONFIG_CGROUP_NET_PRIO=y
+CONFIG_BPF_JIT=y
+CONFIG_BPF_STREAM_PARSER=y
+CONFIG_NET_PKTGEN=m
+CONFIG_NET_DROP_MONITOR=m
+CONFIG_WIRELESS=y
+CONFIG_LWTUNNEL=y
+CONFIG_LWTUNNEL_BPF=y
+CONFIG_FAILOVER=m
+
+##
+## file: net/6lowpan/Kconfig
+##
+CONFIG_6LOWPAN=m
+# CONFIG_6LOWPAN_DEBUGFS is not set
+CONFIG_6LOWPAN_NHC=m
+CONFIG_6LOWPAN_NHC_DEST=m
+CONFIG_6LOWPAN_NHC_FRAGMENT=m
+CONFIG_6LOWPAN_NHC_HOP=m
+CONFIG_6LOWPAN_NHC_IPV6=m
+CONFIG_6LOWPAN_NHC_MOBILITY=m
+CONFIG_6LOWPAN_NHC_ROUTING=m
+CONFIG_6LOWPAN_NHC_UDP=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_HOP=m
+CONFIG_6LOWPAN_GHC_UDP=m
+CONFIG_6LOWPAN_GHC_ICMPV6=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_DEST=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG=m
+CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE=m
+
+##
+## file: net/8021q/Kconfig
+##
+CONFIG_VLAN_8021Q=m
+CONFIG_VLAN_8021Q_GVRP=y
+CONFIG_VLAN_8021Q_MVRP=y
+
+##
+## file: net/9p/Kconfig
+##
+CONFIG_NET_9P=m
+CONFIG_NET_9P_VIRTIO=m
+CONFIG_NET_9P_XEN=m
+CONFIG_NET_9P_RDMA=m
+# CONFIG_NET_9P_DEBUG is not set
+
+##
+## file: net/atm/Kconfig
+##
+CONFIG_ATM=m
+CONFIG_ATM_CLIP=m
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+CONFIG_ATM_LANE=m
+CONFIG_ATM_MPOA=m
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
+
+##
+## file: net/ax25/Kconfig
+##
+CONFIG_HAMRADIO=y
+CONFIG_AX25=m
+CONFIG_AX25_DAMA_SLAVE=y
+CONFIG_NETROM=m
+CONFIG_ROSE=m
+
+##
+## file: net/batman-adv/Kconfig
+##
+CONFIG_BATMAN_ADV=m
+# CONFIG_BATMAN_ADV_BATMAN_V is not set
+CONFIG_BATMAN_ADV_BLA=y
+CONFIG_BATMAN_ADV_DAT=y
+CONFIG_BATMAN_ADV_NC=y
+CONFIG_BATMAN_ADV_MCAST=y
+CONFIG_BATMAN_ADV_DEBUGFS=y
+# CONFIG_BATMAN_ADV_DEBUG is not set
+
+##
+## file: net/bluetooth/Kconfig
+##
+CONFIG_BT=m
+CONFIG_BT_BREDR=y
+CONFIG_BT_HS=y
+CONFIG_BT_LE=y
+CONFIG_BT_6LOWPAN=m
+CONFIG_BT_LEDS=y
+CONFIG_BT_DEBUGFS=y
+# CONFIG_BT_SELFTEST is not set
+
+##
+## file: net/bluetooth/bnep/Kconfig
+##
+CONFIG_BT_BNEP=m
+CONFIG_BT_BNEP_MC_FILTER=y
+CONFIG_BT_BNEP_PROTO_FILTER=y
+
+##
+## file: net/bluetooth/cmtp/Kconfig
+##
+CONFIG_BT_CMTP=m
+
+##
+## file: net/bluetooth/hidp/Kconfig
+##
+CONFIG_BT_HIDP=m
+
+##
+## file: net/bluetooth/rfcomm/Kconfig
+##
+CONFIG_BT_RFCOMM=m
+CONFIG_BT_RFCOMM_TTY=y
+
+##
+## file: net/bpfilter/Kconfig
+##
+# CONFIG_BPFILTER is not set
+
+##
+## file: net/bridge/Kconfig
+##
+CONFIG_BRIDGE=m
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+CONFIG_BRIDGE_VLAN_FILTERING=y
+
+##
+## file: net/bridge/netfilter/Kconfig
+##
+CONFIG_NF_TABLES_BRIDGE=y
+CONFIG_NFT_BRIDGE_META=m
+CONFIG_NFT_BRIDGE_REJECT=m
+CONFIG_NF_LOG_BRIDGE=m
+CONFIG_NF_CONNTRACK_BRIDGE=m
+CONFIG_BRIDGE_NF_EBTABLES=m
+CONFIG_BRIDGE_EBT_BROUTE=m
+CONFIG_BRIDGE_EBT_T_FILTER=m
+CONFIG_BRIDGE_EBT_T_NAT=m
+CONFIG_BRIDGE_EBT_802_3=m
+CONFIG_BRIDGE_EBT_AMONG=m
+CONFIG_BRIDGE_EBT_ARP=m
+CONFIG_BRIDGE_EBT_IP=m
+CONFIG_BRIDGE_EBT_IP6=m
+CONFIG_BRIDGE_EBT_LIMIT=m
+CONFIG_BRIDGE_EBT_MARK=m
+CONFIG_BRIDGE_EBT_PKTTYPE=m
+CONFIG_BRIDGE_EBT_STP=m
+CONFIG_BRIDGE_EBT_VLAN=m
+CONFIG_BRIDGE_EBT_ARPREPLY=m
+CONFIG_BRIDGE_EBT_DNAT=m
+CONFIG_BRIDGE_EBT_MARK_T=m
+CONFIG_BRIDGE_EBT_REDIRECT=m
+CONFIG_BRIDGE_EBT_SNAT=m
+CONFIG_BRIDGE_EBT_LOG=m
+CONFIG_BRIDGE_EBT_NFLOG=m
+
+##
+## file: net/caif/Kconfig
+##
+# CONFIG_CAIF is not set
+
+##
+## file: net/can/Kconfig
+##
+CONFIG_CAN=m
+CONFIG_CAN_RAW=m
+CONFIG_CAN_BCM=m
+CONFIG_CAN_GW=m
+CONFIG_CAN_ISOTP=m
+
+##
+## file: net/can/j1939/Kconfig
+##
+CONFIG_CAN_J1939=m
+
+##
+## file: net/ceph/Kconfig
+##
+CONFIG_CEPH_LIB=m
+# CONFIG_CEPH_LIB_PRETTYDEBUG is not set
+# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set
+
+##
+## file: net/dcb/Kconfig
+##
+CONFIG_DCB=y
+
+##
+## file: net/dccp/Kconfig
+##
+CONFIG_IP_DCCP=m
+# CONFIG_IP_DCCP_DEBUG is not set
+
+##
+## file: net/dccp/ccids/Kconfig
+##
+# CONFIG_IP_DCCP_CCID2_DEBUG is not set
+CONFIG_IP_DCCP_CCID3=y
+# CONFIG_IP_DCCP_CCID3_DEBUG is not set
+
+##
+## file: net/dns_resolver/Kconfig
+##
+CONFIG_DNS_RESOLVER=m
+
+##
+## file: net/dsa/Kconfig
+##
+# CONFIG_NET_DSA is not set
+
+##
+## file: net/hsr/Kconfig
+##
+# CONFIG_HSR is not set
+
+##
+## file: net/ieee802154/Kconfig
+##
+CONFIG_IEEE802154=m
+# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set
+CONFIG_IEEE802154_SOCKET=m
+
+##
+## file: net/ieee802154/6lowpan/Kconfig
+##
+CONFIG_IEEE802154_6LOWPAN=m
+
+##
+## file: net/ife/Kconfig
+##
+CONFIG_NET_IFE=m
+
+##
+## file: net/ipv4/Kconfig
+##
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+CONFIG_IP_FIB_TRIE_STATS=y
+CONFIG_IP_MULTIPLE_TABLES=y
+CONFIG_IP_ROUTE_MULTIPATH=y
+CONFIG_IP_ROUTE_VERBOSE=y
+# CONFIG_IP_PNP is not set
+CONFIG_NET_IPIP=m
+CONFIG_NET_IPGRE_DEMUX=m
+CONFIG_NET_IPGRE=m
+CONFIG_NET_IPGRE_BROADCAST=y
+CONFIG_IP_MROUTE=y
+CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IP_PIMSM_V1=y
+CONFIG_IP_PIMSM_V2=y
+CONFIG_SYN_COOKIES=y
+CONFIG_NET_IPVTI=m
+CONFIG_NET_FOU=m
+CONFIG_NET_FOU_IP_TUNNELS=y
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+CONFIG_INET_ESP_OFFLOAD=m
+CONFIG_INET_IPCOMP=m
+CONFIG_INET_DIAG=m
+CONFIG_INET_UDP_DIAG=m
+CONFIG_INET_RAW_DIAG=m
+CONFIG_INET_DIAG_DESTROY=y
+CONFIG_TCP_CONG_ADVANCED=y
+CONFIG_TCP_CONG_BIC=m
+CONFIG_TCP_CONG_CUBIC=y
+CONFIG_TCP_CONG_WESTWOOD=m
+CONFIG_TCP_CONG_HTCP=m
+CONFIG_TCP_CONG_HSTCP=m
+CONFIG_TCP_CONG_HYBLA=m
+CONFIG_TCP_CONG_VEGAS=m
+CONFIG_TCP_CONG_NV=m
+CONFIG_TCP_CONG_SCALABLE=m
+CONFIG_TCP_CONG_LP=m
+CONFIG_TCP_CONG_VENO=m
+CONFIG_TCP_CONG_YEAH=m
+CONFIG_TCP_CONG_ILLINOIS=m
+CONFIG_TCP_CONG_DCTCP=m
+CONFIG_TCP_CONG_CDG=m
+CONFIG_TCP_CONG_BBR=m
+## choice: Default TCP congestion control
+# CONFIG_DEFAULT_BIC is not set
+CONFIG_DEFAULT_CUBIC=y
+# CONFIG_DEFAULT_HTCP is not set
+# CONFIG_DEFAULT_VEGAS is not set
+# CONFIG_DEFAULT_WESTWOOD is not set
+# CONFIG_DEFAULT_DCTCP is not set
+# CONFIG_DEFAULT_RENO is not set
+## end choice
+CONFIG_TCP_MD5SIG=y
+
+##
+## file: net/ipv4/netfilter/Kconfig
+##
+CONFIG_NF_SOCKET_IPV4=m
+CONFIG_NF_TPROXY_IPV4=m
+CONFIG_NF_TABLES_IPV4=y
+CONFIG_NFT_DUP_IPV4=m
+CONFIG_NFT_FIB_IPV4=m
+CONFIG_NF_TABLES_ARP=y
+CONFIG_NF_FLOW_TABLE_IPV4=m
+CONFIG_NF_LOG_ARP=m
+CONFIG_NF_LOG_IPV4=m
+CONFIG_NF_REJECT_IPV4=m
+CONFIG_NF_NAT_SNMP_BASIC=m
+CONFIG_IP_NF_IPTABLES=m
+CONFIG_IP_NF_MATCH_AH=m
+CONFIG_IP_NF_MATCH_ECN=m
+CONFIG_IP_NF_MATCH_RPFILTER=m
+CONFIG_IP_NF_MATCH_TTL=m
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+CONFIG_IP_NF_TARGET_SYNPROXY=m
+CONFIG_IP_NF_NAT=m
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+CONFIG_IP_NF_TARGET_NETMAP=m
+CONFIG_IP_NF_TARGET_REDIRECT=m
+CONFIG_IP_NF_MANGLE=m
+CONFIG_IP_NF_TARGET_CLUSTERIP=m
+CONFIG_IP_NF_TARGET_ECN=m
+CONFIG_IP_NF_TARGET_TTL=m
+CONFIG_IP_NF_RAW=m
+CONFIG_IP_NF_SECURITY=m
+CONFIG_IP_NF_ARPTABLES=m
+CONFIG_IP_NF_ARPFILTER=m
+CONFIG_IP_NF_ARP_MANGLE=m
+
+##
+## file: net/ipv6/Kconfig
+##
+CONFIG_IPV6=y
+CONFIG_IPV6_ROUTER_PREF=y
+CONFIG_IPV6_ROUTE_INFO=y
+CONFIG_IPV6_OPTIMISTIC_DAD=y
+CONFIG_INET6_AH=m
+CONFIG_INET6_ESP=m
+CONFIG_INET6_ESP_OFFLOAD=m
+CONFIG_INET6_IPCOMP=m
+CONFIG_IPV6_MIP6=y
+CONFIG_IPV6_ILA=m
+CONFIG_IPV6_VTI=m
+CONFIG_IPV6_SIT=m
+CONFIG_IPV6_SIT_6RD=y
+CONFIG_IPV6_TUNNEL=m
+CONFIG_IPV6_GRE=m
+CONFIG_IPV6_MULTIPLE_TABLES=y
+CONFIG_IPV6_SUBTREES=y
+CONFIG_IPV6_MROUTE=y
+CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y
+CONFIG_IPV6_PIMSM_V2=y
+CONFIG_IPV6_SEG6_LWTUNNEL=y
+CONFIG_IPV6_SEG6_HMAC=y
+
+##
+## file: net/ipv6/netfilter/Kconfig
+##
+CONFIG_NF_SOCKET_IPV6=m
+CONFIG_NF_TPROXY_IPV6=m
+CONFIG_NF_TABLES_IPV6=y
+CONFIG_NFT_DUP_IPV6=m
+CONFIG_NFT_FIB_IPV6=m
+CONFIG_NF_FLOW_TABLE_IPV6=m
+CONFIG_NF_REJECT_IPV6=m
+CONFIG_NF_LOG_IPV6=m
+CONFIG_IP6_NF_IPTABLES=m
+CONFIG_IP6_NF_MATCH_AH=m
+CONFIG_IP6_NF_MATCH_EUI64=m
+CONFIG_IP6_NF_MATCH_FRAG=m
+CONFIG_IP6_NF_MATCH_OPTS=m
+CONFIG_IP6_NF_MATCH_HL=m
+CONFIG_IP6_NF_MATCH_IPV6HEADER=m
+CONFIG_IP6_NF_MATCH_MH=m
+CONFIG_IP6_NF_MATCH_RPFILTER=m
+CONFIG_IP6_NF_MATCH_RT=m
+CONFIG_IP6_NF_MATCH_SRH=m
+CONFIG_IP6_NF_TARGET_HL=m
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+CONFIG_IP6_NF_TARGET_SYNPROXY=m
+CONFIG_IP6_NF_MANGLE=m
+CONFIG_IP6_NF_RAW=m
+CONFIG_IP6_NF_SECURITY=m
+CONFIG_IP6_NF_NAT=m
+CONFIG_IP6_NF_TARGET_MASQUERADE=m
+CONFIG_IP6_NF_TARGET_NPT=m
+
+##
+## file: net/kcm/Kconfig
+##
+# CONFIG_AF_KCM is not set
+
+##
+## file: net/l2tp/Kconfig
+##
+CONFIG_L2TP=m
+CONFIG_L2TP_DEBUGFS=m
+CONFIG_L2TP_V3=y
+CONFIG_L2TP_IP=m
+CONFIG_L2TP_ETH=m
+
+##
+## file: net/l3mdev/Kconfig
+##
+CONFIG_NET_L3_MASTER_DEV=y
+
+##
+## file: net/llc/Kconfig
+##
+CONFIG_LLC2=m
+
+##
+## file: net/mac80211/Kconfig
+##
+CONFIG_MAC80211=m
+CONFIG_MAC80211_RC_MINSTREL=y
+## choice: Default rate control algorithm
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+## end choice
+CONFIG_MAC80211_MESH=y
+CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_DEBUGFS is not set
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
+
+##
+## file: net/mac802154/Kconfig
+##
+CONFIG_MAC802154=m
+
+##
+## file: net/mpls/Kconfig
+##
+#. Can be built as a module, but nothing will trigger loading
+CONFIG_NET_MPLS_GSO=y
+CONFIG_MPLS_ROUTING=m
+CONFIG_MPLS_IPTUNNEL=m
+
+##
+## file: net/ncsi/Kconfig
+##
+# CONFIG_NET_NCSI is not set
+
+##
+## file: net/netfilter/Kconfig
+##
+CONFIG_NETFILTER_INGRESS=y
+CONFIG_NETFILTER_NETLINK_ACCT=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NETFILTER_NETLINK_OSF=m
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_LOG_NETDEV=m
+CONFIG_NF_CONNTRACK_MARK=y
+CONFIG_NF_CONNTRACK_SECMARK=y
+CONFIG_NF_CONNTRACK_ZONES=y
+CONFIG_NF_CONNTRACK_PROCFS=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+CONFIG_NF_CONNTRACK_TIMEOUT=y
+CONFIG_NF_CONNTRACK_TIMESTAMP=y
+CONFIG_NF_CT_PROTO_DCCP=y
+CONFIG_NF_CT_PROTO_SCTP=y
+CONFIG_NF_CT_PROTO_UDPLITE=y
+CONFIG_NF_CONNTRACK_AMANDA=m
+CONFIG_NF_CONNTRACK_FTP=m
+CONFIG_NF_CONNTRACK_H323=m
+CONFIG_NF_CONNTRACK_IRC=m
+CONFIG_NF_CONNTRACK_NETBIOS_NS=m
+CONFIG_NF_CONNTRACK_SNMP=m
+CONFIG_NF_CONNTRACK_PPTP=m
+CONFIG_NF_CONNTRACK_SANE=m
+CONFIG_NF_CONNTRACK_SIP=m
+CONFIG_NF_CONNTRACK_TFTP=m
+CONFIG_NF_CT_NETLINK=m
+CONFIG_NF_CT_NETLINK_TIMEOUT=y
+CONFIG_NF_CT_NETLINK_HELPER=m
+CONFIG_NETFILTER_NETLINK_GLUE_CT=y
+CONFIG_NF_NAT=m
+CONFIG_NF_TABLES=m
+CONFIG_NF_TABLES_INET=y
+CONFIG_NF_TABLES_NETDEV=y
+CONFIG_NFT_NUMGEN=m
+CONFIG_NFT_CT=m
+CONFIG_NFT_FLOW_OFFLOAD=m
+CONFIG_NFT_COUNTER=m
+CONFIG_NFT_CONNLIMIT=m
+CONFIG_NFT_LOG=m
+CONFIG_NFT_LIMIT=m
+CONFIG_NFT_MASQ=m
+CONFIG_NFT_REDIR=m
+CONFIG_NFT_NAT=m
+CONFIG_NFT_TUNNEL=m
+CONFIG_NFT_OBJREF=m
+CONFIG_NFT_QUEUE=m
+CONFIG_NFT_QUOTA=m
+CONFIG_NFT_REJECT=m
+CONFIG_NFT_COMPAT=m
+CONFIG_NFT_HASH=m
+CONFIG_NFT_FIB_INET=m
+CONFIG_NFT_XFRM=m
+CONFIG_NFT_SOCKET=m
+CONFIG_NFT_OSF=m
+CONFIG_NFT_TPROXY=m
+CONFIG_NFT_SYNPROXY=m
+CONFIG_NF_DUP_NETDEV=m
+CONFIG_NFT_DUP_NETDEV=m
+CONFIG_NFT_FWD_NETDEV=m
+CONFIG_NFT_FIB_NETDEV=m
+CONFIG_NF_FLOW_TABLE_INET=m
+CONFIG_NF_FLOW_TABLE=m
+CONFIG_NETFILTER_XTABLES=m
+CONFIG_NETFILTER_XT_SET=m
+CONFIG_NETFILTER_XT_TARGET_AUDIT=m
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
+CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
+CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
+CONFIG_NETFILTER_XT_TARGET_CT=m
+CONFIG_NETFILTER_XT_TARGET_DSCP=m
+CONFIG_NETFILTER_XT_TARGET_HL=m
+CONFIG_NETFILTER_XT_TARGET_HMARK=m
+CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
+CONFIG_NETFILTER_XT_TARGET_LED=m
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+CONFIG_NETFILTER_XT_TARGET_MARK=m
+CONFIG_NETFILTER_XT_TARGET_NETMAP=m
+CONFIG_NETFILTER_XT_TARGET_NFLOG=m
+CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
+# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
+CONFIG_NETFILTER_XT_TARGET_RATEEST=m
+CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
+CONFIG_NETFILTER_XT_TARGET_TEE=m
+CONFIG_NETFILTER_XT_TARGET_TPROXY=m
+CONFIG_NETFILTER_XT_TARGET_TRACE=m
+CONFIG_NETFILTER_XT_TARGET_SECMARK=m
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+CONFIG_NETFILTER_XT_MATCH_BPF=m
+CONFIG_NETFILTER_XT_MATCH_CGROUP=m
+CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
+CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m
+CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+CONFIG_NETFILTER_XT_MATCH_CPU=m
+CONFIG_NETFILTER_XT_MATCH_DCCP=m
+CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
+CONFIG_NETFILTER_XT_MATCH_DSCP=m
+CONFIG_NETFILTER_XT_MATCH_ECN=m
+CONFIG_NETFILTER_XT_MATCH_ESP=m
+CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
+CONFIG_NETFILTER_XT_MATCH_HELPER=m
+CONFIG_NETFILTER_XT_MATCH_HL=m
+CONFIG_NETFILTER_XT_MATCH_IPCOMP=m
+CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
+CONFIG_NETFILTER_XT_MATCH_IPVS=m
+CONFIG_NETFILTER_XT_MATCH_L2TP=m
+CONFIG_NETFILTER_XT_MATCH_LENGTH=m
+CONFIG_NETFILTER_XT_MATCH_LIMIT=m
+CONFIG_NETFILTER_XT_MATCH_MAC=m
+CONFIG_NETFILTER_XT_MATCH_MARK=m
+CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
+CONFIG_NETFILTER_XT_MATCH_NFACCT=m
+CONFIG_NETFILTER_XT_MATCH_OSF=m
+CONFIG_NETFILTER_XT_MATCH_OWNER=m
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
+CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
+CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
+CONFIG_NETFILTER_XT_MATCH_QUOTA=m
+CONFIG_NETFILTER_XT_MATCH_RATEEST=m
+CONFIG_NETFILTER_XT_MATCH_REALM=m
+CONFIG_NETFILTER_XT_MATCH_RECENT=m
+CONFIG_NETFILTER_XT_MATCH_SCTP=m
+CONFIG_NETFILTER_XT_MATCH_SOCKET=m
+CONFIG_NETFILTER_XT_MATCH_STATE=m
+CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
+CONFIG_NETFILTER_XT_MATCH_STRING=m
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+CONFIG_NETFILTER_XT_MATCH_TIME=m
+CONFIG_NETFILTER_XT_MATCH_U32=m
+
+##
+## file: net/netfilter/ipset/Kconfig
+##
+CONFIG_IP_SET=m
+CONFIG_IP_SET_MAX=256
+CONFIG_IP_SET_BITMAP_IP=m
+CONFIG_IP_SET_BITMAP_IPMAC=m
+CONFIG_IP_SET_BITMAP_PORT=m
+CONFIG_IP_SET_HASH_IP=m
+CONFIG_IP_SET_HASH_IPMARK=m
+CONFIG_IP_SET_HASH_IPPORT=m
+CONFIG_IP_SET_HASH_IPPORTIP=m
+CONFIG_IP_SET_HASH_IPPORTNET=m
+CONFIG_IP_SET_HASH_IPMAC=m
+CONFIG_IP_SET_HASH_MAC=m
+CONFIG_IP_SET_HASH_NETPORTNET=m
+CONFIG_IP_SET_HASH_NET=m
+CONFIG_IP_SET_HASH_NETNET=m
+CONFIG_IP_SET_HASH_NETPORT=m
+CONFIG_IP_SET_HASH_NETIFACE=m
+CONFIG_IP_SET_LIST_SET=m
+
+##
+## file: net/netfilter/ipvs/Kconfig
+##
+CONFIG_IP_VS=m
+CONFIG_IP_VS_IPV6=y
+# CONFIG_IP_VS_DEBUG is not set
+CONFIG_IP_VS_TAB_BITS=12
+CONFIG_IP_VS_PROTO_TCP=y
+CONFIG_IP_VS_PROTO_UDP=y
+CONFIG_IP_VS_PROTO_ESP=y
+CONFIG_IP_VS_PROTO_AH=y
+CONFIG_IP_VS_PROTO_SCTP=y
+CONFIG_IP_VS_RR=m
+CONFIG_IP_VS_WRR=m
+CONFIG_IP_VS_LC=m
+CONFIG_IP_VS_WLC=m
+CONFIG_IP_VS_FO=m
+CONFIG_IP_VS_OVF=m
+CONFIG_IP_VS_LBLC=m
+CONFIG_IP_VS_LBLCR=m
+CONFIG_IP_VS_DH=m
+CONFIG_IP_VS_SH=m
+CONFIG_IP_VS_MH=m
+CONFIG_IP_VS_SED=m
+CONFIG_IP_VS_NQ=m
+CONFIG_IP_VS_SH_TAB_BITS=8
+CONFIG_IP_VS_FTP=m
+CONFIG_IP_VS_PE_SIP=m
+
+##
+## file: net/netlabel/Kconfig
+##
+CONFIG_NETLABEL=y
+
+##
+## file: net/netlink/Kconfig
+##
+CONFIG_NETLINK_DIAG=m
+
+##
+## file: net/nfc/Kconfig
+##
+CONFIG_NFC=m
+CONFIG_NFC_DIGITAL=m
+
+##
+## file: net/nfc/hci/Kconfig
+##
+# CONFIG_NFC_HCI is not set
+# CONFIG_NFC_SHDLC is not set
+
+##
+## file: net/nfc/nci/Kconfig
+##
+# CONFIG_NFC_NCI is not set
+
+##
+## file: net/nsh/Kconfig
+##
+CONFIG_NET_NSH=m
+
+##
+## file: net/openvswitch/Kconfig
+##
+CONFIG_OPENVSWITCH=m
+CONFIG_OPENVSWITCH_GRE=y
+CONFIG_OPENVSWITCH_VXLAN=y
+CONFIG_OPENVSWITCH_GENEVE=y
+
+##
+## file: net/packet/Kconfig
+##
+CONFIG_PACKET=y
+CONFIG_PACKET_DIAG=m
+
+##
+## file: net/phonet/Kconfig
+##
+CONFIG_PHONET=m
+
+##
+## file: net/psample/Kconfig
+##
+CONFIG_PSAMPLE=m
+
+##
+## file: net/rds/Kconfig
+##
+CONFIG_RDS=m
+CONFIG_RDS_RDMA=m
+CONFIG_RDS_TCP=m
+# CONFIG_RDS_DEBUG is not set
+
+##
+## file: net/rfkill/Kconfig
+##
+CONFIG_RFKILL=m
+CONFIG_RFKILL_INPUT=y
+# CONFIG_RFKILL_GPIO is not set
+
+##
+## file: net/rxrpc/Kconfig
+##
+CONFIG_AF_RXRPC=m
+CONFIG_AF_RXRPC_IPV6=y
+# CONFIG_AF_RXRPC_INJECT_LOSS is not set
+# CONFIG_AF_RXRPC_DEBUG is not set
+CONFIG_RXKAD=y
+
+##
+## file: net/sched/Kconfig
+##
+CONFIG_NET_SCHED=y
+CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_HTB=m
+CONFIG_NET_SCH_HFSC=m
+CONFIG_NET_SCH_ATM=m
+CONFIG_NET_SCH_PRIO=m
+CONFIG_NET_SCH_MULTIQ=m
+CONFIG_NET_SCH_RED=m
+CONFIG_NET_SCH_SFB=m
+CONFIG_NET_SCH_SFQ=m
+CONFIG_NET_SCH_TEQL=m
+CONFIG_NET_SCH_TBF=m
+CONFIG_NET_SCH_CBS=m
+CONFIG_NET_SCH_ETF=m
+CONFIG_NET_SCH_TAPRIO=m
+CONFIG_NET_SCH_GRED=m
+CONFIG_NET_SCH_DSMARK=m
+CONFIG_NET_SCH_NETEM=m
+CONFIG_NET_SCH_DRR=m
+CONFIG_NET_SCH_MQPRIO=m
+CONFIG_NET_SCH_SKBPRIO=m
+CONFIG_NET_SCH_CHOKE=m
+CONFIG_NET_SCH_QFQ=m
+CONFIG_NET_SCH_CODEL=m
+CONFIG_NET_SCH_FQ_CODEL=m
+CONFIG_NET_SCH_CAKE=m
+CONFIG_NET_SCH_FQ=m
+CONFIG_NET_SCH_HHF=m
+CONFIG_NET_SCH_PIE=m
+CONFIG_NET_SCH_FQ_PIE=m
+CONFIG_NET_SCH_INGRESS=m
+CONFIG_NET_SCH_PLUG=m
+CONFIG_NET_SCH_ETS=m
+# CONFIG_NET_SCH_DEFAULT is not set
+CONFIG_NET_CLS_BASIC=m
+CONFIG_NET_CLS_ROUTE4=m
+CONFIG_NET_CLS_FW=m
+CONFIG_NET_CLS_U32=m
+CONFIG_CLS_U32_PERF=y
+CONFIG_CLS_U32_MARK=y
+CONFIG_NET_CLS_FLOW=m
+CONFIG_NET_CLS_CGROUP=m
+CONFIG_NET_CLS_BPF=m
+CONFIG_NET_CLS_FLOWER=m
+CONFIG_NET_CLS_MATCHALL=m
+CONFIG_NET_EMATCH=y
+CONFIG_NET_EMATCH_STACK=32
+CONFIG_NET_EMATCH_CMP=m
+CONFIG_NET_EMATCH_NBYTE=m
+CONFIG_NET_EMATCH_U32=m
+CONFIG_NET_EMATCH_META=m
+CONFIG_NET_EMATCH_TEXT=m
+CONFIG_NET_EMATCH_CANID=m
+CONFIG_NET_EMATCH_IPSET=m
+CONFIG_NET_EMATCH_IPT=m
+CONFIG_NET_CLS_ACT=y
+CONFIG_NET_ACT_POLICE=m
+CONFIG_NET_ACT_GACT=m
+CONFIG_GACT_PROB=y
+CONFIG_NET_ACT_MIRRED=m
+CONFIG_NET_ACT_SAMPLE=m
+CONFIG_NET_ACT_IPT=m
+CONFIG_NET_ACT_NAT=m
+CONFIG_NET_ACT_PEDIT=m
+CONFIG_NET_ACT_SIMP=m
+CONFIG_NET_ACT_SKBEDIT=m
+CONFIG_NET_ACT_CSUM=m
+CONFIG_NET_ACT_MPLS=m
+CONFIG_NET_ACT_VLAN=m
+CONFIG_NET_ACT_BPF=m
+CONFIG_NET_ACT_CONNMARK=m
+CONFIG_NET_ACT_CTINFO=m
+CONFIG_NET_ACT_SKBMOD=m
+CONFIG_NET_ACT_IFE=m
+CONFIG_NET_ACT_TUNNEL_KEY=m
+CONFIG_NET_ACT_CT=m
+CONFIG_NET_ACT_GATE=m
+CONFIG_NET_IFE_SKBMARK=m
+CONFIG_NET_IFE_SKBPRIO=m
+CONFIG_NET_IFE_SKBTCINDEX=m
+
+##
+## file: net/sctp/Kconfig
+##
+CONFIG_IP_SCTP=m
+# CONFIG_SCTP_DBG_OBJCNT is not set
+## choice: Default SCTP cookie HMAC encoding
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set
+CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y
+# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set
+## end choice
+CONFIG_SCTP_COOKIE_HMAC_MD5=y
+CONFIG_SCTP_COOKIE_HMAC_SHA1=y
+
+##
+## file: net/smc/Kconfig
+##
+CONFIG_SMC=m
+CONFIG_SMC_DIAG=m
+
+##
+## file: net/sunrpc/Kconfig
+##
+CONFIG_RPCSEC_GSS_KRB5=m
+CONFIG_SUNRPC_DEBUG=y
+CONFIG_SUNRPC_XPRT_RDMA=m
+
+##
+## file: net/switchdev/Kconfig
+##
+CONFIG_NET_SWITCHDEV=y
+
+##
+## file: net/tipc/Kconfig
+##
+CONFIG_TIPC=m
+CONFIG_TIPC_MEDIA_IB=y
+CONFIG_TIPC_MEDIA_UDP=y
+CONFIG_TIPC_DIAG=m
+
+##
+## file: net/tls/Kconfig
+##
+# CONFIG_TLS is not set
+
+##
+## file: net/unix/Kconfig
+##
+CONFIG_UNIX=y
+CONFIG_UNIX_DIAG=m
+
+##
+## file: net/vmw_vsock/Kconfig
+##
+CONFIG_VSOCKETS=m
+CONFIG_VSOCKETS_DIAG=m
+# CONFIG_VMWARE_VMCI_VSOCKETS is not set
+CONFIG_VIRTIO_VSOCKETS=m
+
+##
+## file: net/wimax/Kconfig
+##
+CONFIG_WIMAX=m
+CONFIG_WIMAX_DEBUG_LEVEL=8
+
+##
+## file: net/wireless/Kconfig
+##
+CONFIG_CFG80211=m
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+# CONFIG_CFG80211_CERTIFICATION_ONUS is not set
+CONFIG_CFG80211_DEFAULT_PS=y
+# CONFIG_CFG80211_DEBUGFS is not set
+CONFIG_CFG80211_CRDA_SUPPORT=y
+CONFIG_CFG80211_WEXT=y
+# CONFIG_LIB80211_DEBUG is not set
+
+##
+## file: net/x25/Kconfig
+##
+# CONFIG_X25 is not set
+
+##
+## file: net/xdp/Kconfig
+##
+CONFIG_XDP_SOCKETS=y
+
+##
+## file: net/xfrm/Kconfig
+##
+CONFIG_XFRM_USER=m
+CONFIG_XFRM_INTERFACE=m
+CONFIG_XFRM_SUB_POLICY=y
+CONFIG_XFRM_MIGRATE=y
+CONFIG_XFRM_STATISTICS=y
+CONFIG_NET_KEY=m
+CONFIG_NET_KEY_MIGRATE=y
+
+##
+## file: samples/Kconfig
+##
+# CONFIG_SAMPLES is not set
+
+##
+## file: security/Kconfig
+##
+CONFIG_SECURITY_DMESG_RESTRICT=y
+CONFIG_SECURITY_PERF_EVENTS_RESTRICT=y
+CONFIG_SECURITY=y
+CONFIG_SECURITY_NETWORK=y
+CONFIG_SECURITY_NETWORK_XFRM=y
+# CONFIG_SECURITY_PATH is not set
+# CONFIG_INTEL_TXT is not set
+CONFIG_LSM_MMAP_MIN_ADDR=32768
+CONFIG_HARDENED_USERCOPY=y
+# CONFIG_HARDENED_USERCOPY_FALLBACK is not set
+# CONFIG_HARDENED_USERCOPY_PAGESPAN is not set
+CONFIG_FORTIFY_SOURCE=y
+## choice: First legacy 'major LSM' to be initialized
+CONFIG_DEFAULT_SECURITY_APPARMOR=y
+## end choice
+CONFIG_LSM="lockdown,yama,loadpin,safesetid,integrity,apparmor,selinux,smack,tomoyo"
+
+##
+## file: security/apparmor/Kconfig
+##
+CONFIG_SECURITY_APPARMOR=y
+CONFIG_SECURITY_APPARMOR_HASH=y
+CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y
+
+##
+## file: security/Kconfig.hardening
+##
+CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y
+
+##
+## file: security/integrity/Kconfig
+##
+CONFIG_INTEGRITY=y
+CONFIG_INTEGRITY_SIGNATURE=y
+CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
+# CONFIG_INTEGRITY_TRUSTED_KEYRING is not set
+CONFIG_INTEGRITY_PLATFORM_KEYRING=y
+CONFIG_INTEGRITY_AUDIT=y
+
+##
+## file: security/integrity/evm/Kconfig
+##
+# CONFIG_EVM is not set
+
+##
+## file: security/integrity/ima/Kconfig
+##
+#. IMA + MODULE_SIG currently breaks module loading with finit_module()
+# CONFIG_IMA is not set
+## choice: Default integrity hash algorithm
+# CONFIG_IMA_DEFAULT_HASH_SHA1 is not set
+CONFIG_IMA_DEFAULT_HASH_SHA256=y
+# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set
+# CONFIG_IMA_DEFAULT_HASH_WP512 is not set
+## end choice
+# CONFIG_IMA_WRITE_POLICY is not set
+# CONFIG_IMA_READ_POLICY is not set
+CONFIG_IMA_APPRAISE=y
+
+##
+## file: security/keys/Kconfig
+##
+CONFIG_KEYS=y
+CONFIG_PERSISTENT_KEYRINGS=y
+# CONFIG_BIG_KEYS is not set
+# CONFIG_TRUSTED_KEYS is not set
+# CONFIG_ENCRYPTED_KEYS is not set
+CONFIG_KEY_DH_OPERATIONS=y
+
+##
+## file: security/loadpin/Kconfig
+##
+# CONFIG_SECURITY_LOADPIN is not set
+
+##
+## file: security/lockdown/Kconfig
+##
+#. This is overridden if the [build]signed-code setting is enabled
+# CONFIG_SECURITY_LOCKDOWN_LSM is not set
+## choice: Kernel default lockdown mode
+CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y
+## end choice
+CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT=y
+
+##
+## file: security/selinux/Kconfig
+##
+CONFIG_SECURITY_SELINUX=y
+# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set
+# CONFIG_SECURITY_SELINUX_DISABLE is not set
+CONFIG_SECURITY_SELINUX_DEVELOP=y
+CONFIG_SECURITY_SELINUX_AVC_STATS=y
+CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=0
+
+##
+## file: security/smack/Kconfig
+##
+# CONFIG_SECURITY_SMACK is not set
+
+##
+## file: security/tomoyo/Kconfig
+##
+CONFIG_SECURITY_TOMOYO=y
+CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048
+CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024
+# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set
+#. This is so horrible...
+CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init"
+CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init"
+
+##
+## file: security/yama/Kconfig
+##
+CONFIG_SECURITY_YAMA=y
+
+##
+## file: sound/Kconfig
+##
+CONFIG_SOUND=m
+# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set
+CONFIG_SND=m
+
+##
+## file: sound/core/Kconfig
+##
+CONFIG_SND_OSSEMUL=y
+CONFIG_SND_MIXER_OSS=m
+CONFIG_SND_PCM_OSS=m
+CONFIG_SND_PCM_OSS_PLUGINS=y
+CONFIG_SND_PCM_TIMER=y
+CONFIG_SND_HRTIMER=m
+CONFIG_SND_DYNAMIC_MINORS=y
+CONFIG_SND_MAX_CARDS=32
+CONFIG_SND_SUPPORT_OLD_API=y
+CONFIG_SND_PROC_FS=y
+CONFIG_SND_VERBOSE_PROCFS=y
+# CONFIG_SND_VERBOSE_PRINTK is not set
+# CONFIG_SND_DEBUG is not set
+
+##
+## file: sound/core/seq/Kconfig
+##
+CONFIG_SND_SEQUENCER=m
+CONFIG_SND_SEQ_DUMMY=m
+# CONFIG_SND_SEQUENCER_OSS is not set
+CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
+
+##
+## file: sound/drivers/Kconfig
+##
+CONFIG_SND_DRIVERS=y
+CONFIG_SND_PCSP=m
+CONFIG_SND_ALOOP=m
+CONFIG_SND_MTS64=m
+CONFIG_SND_PORTMAN2X4=m
+CONFIG_SND_AC97_POWER_SAVE=y
+CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0
+
+##
+## file: sound/firewire/Kconfig
+##
+CONFIG_SND_FIREWIRE=y
+CONFIG_SND_DICE=m
+CONFIG_SND_OXFW=m
+CONFIG_SND_ISIGHT=m
+CONFIG_SND_FIREWORKS=m
+CONFIG_SND_BEBOB=m
+CONFIG_SND_FIREWIRE_DIGI00X=m
+CONFIG_SND_FIREWIRE_TASCAM=m
+CONFIG_SND_FIREWIRE_MOTU=m
+CONFIG_SND_FIREFACE=m
+
+##
+## file: sound/hda/Kconfig
+##
+CONFIG_SND_HDA_PREALLOC_SIZE=2048
+
+##
+## file: sound/isa/Kconfig
+##
+# CONFIG_SND_CMI8328 is not set
+
+##
+## file: sound/pci/Kconfig
+##
+CONFIG_SND_PCI=y
+CONFIG_SND_AD1889=m
+CONFIG_SND_ALS300=m
+CONFIG_SND_ASIHPI=m
+# CONFIG_SND_AW2 is not set
+CONFIG_SND_OXYGEN=m
+CONFIG_SND_CTXFI=m
+CONFIG_SND_DARLA20=m
+CONFIG_SND_GINA20=m
+CONFIG_SND_LAYLA20=m
+CONFIG_SND_DARLA24=m
+CONFIG_SND_GINA24=m
+CONFIG_SND_LAYLA24=m
+CONFIG_SND_MONA=m
+CONFIG_SND_MIA=m
+CONFIG_SND_ECHO3G=m
+CONFIG_SND_INDIGO=m
+CONFIG_SND_INDIGOIO=m
+CONFIG_SND_INDIGODJ=m
+CONFIG_SND_INDIGOIOX=m
+CONFIG_SND_INDIGODJX=m
+CONFIG_SND_ES1968_INPUT=y
+CONFIG_SND_ES1968_RADIO=y
+CONFIG_SND_HDSPM=m
+CONFIG_SND_LOLA=m
+CONFIG_SND_LX6464ES=m
+CONFIG_SND_MAESTRO3_INPUT=y
+CONFIG_SND_PCXHR=m
+CONFIG_SND_RIPTIDE=m
+CONFIG_SND_VIRTUOSO=m
+
+##
+## file: sound/pci/hda/Kconfig
+##
+CONFIG_SND_HDA_HWDEP=y
+CONFIG_SND_HDA_RECONFIG=y
+CONFIG_SND_HDA_INPUT_BEEP=y
+CONFIG_SND_HDA_INPUT_BEEP_MODE=1
+CONFIG_SND_HDA_PATCH_LOADER=y
+CONFIG_SND_HDA_CODEC_REALTEK=y
+CONFIG_SND_HDA_CODEC_ANALOG=y
+CONFIG_SND_HDA_CODEC_SIGMATEL=y
+CONFIG_SND_HDA_CODEC_VIA=y
+CONFIG_SND_HDA_CODEC_HDMI=y
+CONFIG_SND_HDA_CODEC_CIRRUS=y
+CONFIG_SND_HDA_CODEC_CONEXANT=y
+CONFIG_SND_HDA_CODEC_CA0110=y
+CONFIG_SND_HDA_CODEC_CA0132=y
+CONFIG_SND_HDA_CODEC_CA0132_DSP=y
+CONFIG_SND_HDA_CODEC_CMEDIA=y
+CONFIG_SND_HDA_CODEC_SI3054=y
+CONFIG_SND_HDA_GENERIC=y
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+
+##
+## file: sound/pcmcia/Kconfig
+##
+CONFIG_SND_PCMCIA=y
+CONFIG_SND_VXPOCKET=m
+CONFIG_SND_PDAUDIOCF=m
+
+##
+## file: sound/soc/Kconfig
+##
+# CONFIG_SND_SOC is not set
+
+##
+## file: sound/soc/amd/Kconfig
+##
+# CONFIG_SND_SOC_AMD_ACP is not set
+
+##
+## file: sound/soc/atmel/Kconfig
+##
+# CONFIG_SND_ATMEL_SOC is not set
+
+##
+## file: sound/soc/codecs/Kconfig
+##
+# CONFIG_SND_SOC_AC97_CODEC is not set
+# CONFIG_SND_SOC_ADAU1701 is not set
+# CONFIG_SND_SOC_ADAU1761_I2C is not set
+# CONFIG_SND_SOC_ADAU1761_SPI is not set
+# CONFIG_SND_SOC_ADAU7002 is not set
+# CONFIG_SND_SOC_AK4104 is not set
+# CONFIG_SND_SOC_AK4458 is not set
+# CONFIG_SND_SOC_AK4554 is not set
+# CONFIG_SND_SOC_AK4613 is not set
+# CONFIG_SND_SOC_AK4642 is not set
+# CONFIG_SND_SOC_AK5386 is not set
+# CONFIG_SND_SOC_AK5558 is not set
+# CONFIG_SND_SOC_ALC5623 is not set
+# CONFIG_SND_SOC_BD28623 is not set
+# CONFIG_SND_SOC_BT_SCO is not set
+# CONFIG_SND_SOC_CS35L32 is not set
+# CONFIG_SND_SOC_CS35L33 is not set
+# CONFIG_SND_SOC_CS35L34 is not set
+# CONFIG_SND_SOC_CS35L35 is not set
+# CONFIG_SND_SOC_CS42L42 is not set
+# CONFIG_SND_SOC_CS42L51_I2C is not set
+# CONFIG_SND_SOC_CS42L52 is not set
+# CONFIG_SND_SOC_CS42L56 is not set
+# CONFIG_SND_SOC_CS42L73 is not set
+# CONFIG_SND_SOC_CS4265 is not set
+# CONFIG_SND_SOC_CS4270 is not set
+# CONFIG_SND_SOC_CS4271_I2C is not set
+# CONFIG_SND_SOC_CS4271_SPI is not set
+# CONFIG_SND_SOC_CS42XX8_I2C is not set
+# CONFIG_SND_SOC_CS43130 is not set
+# CONFIG_SND_SOC_CS4349 is not set
+# CONFIG_SND_SOC_CS53L30 is not set
+# CONFIG_SND_SOC_ES7134 is not set
+# CONFIG_SND_SOC_ES7241 is not set
+# CONFIG_SND_SOC_ES8316 is not set
+# CONFIG_SND_SOC_ES8328_I2C is not set
+# CONFIG_SND_SOC_ES8328_SPI is not set
+# CONFIG_SND_SOC_GTM601 is not set
+# CONFIG_SND_SOC_INNO_RK3036 is not set
+# CONFIG_SND_SOC_MAX98504 is not set
+# CONFIG_SND_SOC_MAX9867 is not set
+# CONFIG_SND_SOC_MAX98927 is not set
+CONFIG_SND_SOC_MAX98373_SDW=m
+# CONFIG_SND_SOC_MAX9860 is not set
+# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
+# CONFIG_SND_SOC_PCM1681 is not set
+# CONFIG_SND_SOC_PCM1789_I2C is not set
+# CONFIG_SND_SOC_PCM179X_I2C is not set
+# CONFIG_SND_SOC_PCM179X_SPI is not set
+# CONFIG_SND_SOC_PCM186X_I2C is not set
+# CONFIG_SND_SOC_PCM186X_SPI is not set
+# CONFIG_SND_SOC_PCM3168A_I2C is not set
+# CONFIG_SND_SOC_PCM3168A_SPI is not set
+# CONFIG_SND_SOC_PCM512x_I2C is not set
+# CONFIG_SND_SOC_PCM512x_SPI is not set
+CONFIG_SND_SOC_RT1308_SDW=m
+# CONFIG_SND_SOC_RT5616 is not set
+# CONFIG_SND_SOC_RT5631 is not set
+CONFIG_SND_SOC_RT5682_SDW=m
+CONFIG_SND_SOC_RT700_SDW=m
+CONFIG_SND_SOC_RT711_SDW=m
+CONFIG_SND_SOC_RT715_SDW=m
+# CONFIG_SND_SOC_SGTL5000 is not set
+# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
+# CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set
+# CONFIG_SND_SOC_SPDIF is not set
+# CONFIG_SND_SOC_SSM2305 is not set
+# CONFIG_SND_SOC_SSM2602_SPI is not set
+# CONFIG_SND_SOC_SSM2602_I2C is not set
+# CONFIG_SND_SOC_SSM4567 is not set
+# CONFIG_SND_SOC_STA32X is not set
+# CONFIG_SND_SOC_STA350 is not set
+# CONFIG_SND_SOC_STI_SAS is not set
+# CONFIG_SND_SOC_TAS2552 is not set
+# CONFIG_SND_SOC_TAS5086 is not set
+# CONFIG_SND_SOC_TAS571X is not set
+# CONFIG_SND_SOC_TAS5720 is not set
+# CONFIG_SND_SOC_TAS6424 is not set
+# CONFIG_SND_SOC_TDA7419 is not set
+# CONFIG_SND_SOC_TFA9879 is not set
+# CONFIG_SND_SOC_TLV320AIC23_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC23_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC31XX is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC3X is not set
+# CONFIG_SND_SOC_TS3A227E is not set
+# CONFIG_SND_SOC_TSCS42XX is not set
+# CONFIG_SND_SOC_TSCS454 is not set
+# CONFIG_SND_SOC_WM8510 is not set
+# CONFIG_SND_SOC_WM8523 is not set
+# CONFIG_SND_SOC_WM8524 is not set
+# CONFIG_SND_SOC_WM8580 is not set
+# CONFIG_SND_SOC_WM8711 is not set
+# CONFIG_SND_SOC_WM8728 is not set
+# CONFIG_SND_SOC_WM8731 is not set
+# CONFIG_SND_SOC_WM8737 is not set
+# CONFIG_SND_SOC_WM8741 is not set
+# CONFIG_SND_SOC_WM8750 is not set
+# CONFIG_SND_SOC_WM8753 is not set
+# CONFIG_SND_SOC_WM8770 is not set
+# CONFIG_SND_SOC_WM8776 is not set
+# CONFIG_SND_SOC_WM8782 is not set
+# CONFIG_SND_SOC_WM8804_I2C is not set
+# CONFIG_SND_SOC_WM8804_SPI is not set
+# CONFIG_SND_SOC_WM8903 is not set
+# CONFIG_SND_SOC_WM8960 is not set
+# CONFIG_SND_SOC_WM8962 is not set
+# CONFIG_SND_SOC_WM8974 is not set
+# CONFIG_SND_SOC_WM8978 is not set
+# CONFIG_SND_SOC_WM8985 is not set
+# CONFIG_SND_SOC_ZX_AUD96P22 is not set
+# CONFIG_SND_SOC_MAX9759 is not set
+# CONFIG_SND_SOC_MT6351 is not set
+# CONFIG_SND_SOC_NAU8540 is not set
+# CONFIG_SND_SOC_NAU8810 is not set
+# CONFIG_SND_SOC_NAU8824 is not set
+# CONFIG_SND_SOC_TPA6130A2 is not set
+
+##
+## file: sound/soc/dwc/Kconfig
+##
+# CONFIG_SND_DESIGNWARE_I2S is not set
+
+##
+## file: sound/soc/fsl/Kconfig
+##
+# CONFIG_SND_SOC_FSL_ASRC is not set
+# CONFIG_SND_SOC_FSL_SAI is not set
+# CONFIG_SND_SOC_FSL_SSI is not set
+# CONFIG_SND_SOC_FSL_SPDIF is not set
+# CONFIG_SND_SOC_FSL_ESAI is not set
+# CONFIG_SND_SOC_IMX_AUDMUX is not set
+
+##
+## file: sound/soc/generic/Kconfig
+##
+# CONFIG_SND_SIMPLE_CARD is not set
+
+##
+## file: sound/soc/hisilicon/Kconfig
+##
+# CONFIG_SND_I2S_HI6210_I2S is not set
+
+##
+## file: sound/soc/img/Kconfig
+##
+# CONFIG_SND_SOC_IMG is not set
+
+##
+## file: sound/soc/sunxi/Kconfig
+##
+# CONFIG_SND_SUN4I_CODEC is not set
+
+##
+## file: sound/soc/xtensa/Kconfig
+##
+# CONFIG_SND_SOC_XTFPGA_I2S is not set
+
+##
+## file: sound/soc/zte/Kconfig
+##
+# CONFIG_ZX_TDM is not set
+
+##
+## file: sound/spi/Kconfig
+##
+CONFIG_SND_SPI=y
+
+##
+## file: sound/usb/Kconfig
+##
+CONFIG_SND_USB=y
+CONFIG_SND_USB_AUDIO=m
+CONFIG_SND_USB_UA101=m
+CONFIG_SND_USB_USX2Y=m
+CONFIG_SND_USB_CAIAQ=m
+CONFIG_SND_USB_CAIAQ_INPUT=y
+CONFIG_SND_USB_US122L=m
+CONFIG_SND_USB_6FIRE=m
+CONFIG_SND_USB_HIFACE=m
+CONFIG_SND_BCD2000=m
+
+##
+## file: sound/usb/line6/Kconfig
+##
+CONFIG_SND_USB_POD=m
+CONFIG_SND_USB_PODHD=m
+CONFIG_SND_USB_TONEPORT=m
+CONFIG_SND_USB_VARIAX=m
+
+##
+## file: sound/xen/Kconfig
+##
+CONFIG_SND_XEN_FRONTEND=m
+
+##
+## file: usr/Kconfig
+##
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
+CONFIG_RD_XZ=y
+CONFIG_RD_LZO=y
+CONFIG_RD_LZ4=y
+
diff --git a/debian/config/config.cloud b/debian/config/config.cloud
new file mode 100644
index 000000000..0a68468ae
--- /dev/null
+++ b/debian/config/config.cloud
@@ -0,0 +1,1711 @@
+##
+## file: block/Kconfig.iosched
+##
+CONFIG_MQ_IOSCHED_DEADLINE=m
+
+##
+## file: block/partitions/Kconfig
+##
+# CONFIG_PARTITION_ADVANCED is not set
+
+##
+## file: drivers/accessibility/Kconfig
+##
+# CONFIG_ACCESSIBILITY is not set
+
+##
+## file: drivers/acpi/Kconfig
+##
+# CONFIG_ACPI_AC is not set
+# CONFIG_ACPI_BATTERY is not set
+# CONFIG_ACPI_DOCK is not set
+# CONFIG_ACPI_PROCESSOR is not set
+# CONFIG_ACPI_IPMI is not set
+# CONFIG_ACPI_BGRT is not set
+
+##
+## file: drivers/android/Kconfig
+##
+# CONFIG_ANDROID is not set
+
+##
+## file: drivers/ata/Kconfig
+##
+# CONFIG_ATA_ACPI is not set
+# CONFIG_SATA_ZPODD is not set
+# CONFIG_SATA_PMP is not set
+# CONFIG_SATA_AHCI is not set
+# CONFIG_SATA_ACARD_AHCI is not set
+# CONFIG_SATA_SIL24 is not set
+CONFIG_ATA_SFF=y
+# CONFIG_PDC_ADMA is not set
+# CONFIG_SATA_QSTOR is not set
+# CONFIG_SATA_SX4 is not set
+CONFIG_ATA_BMDMA=y
+CONFIG_ATA_PIIX=m
+# CONFIG_SATA_MV is not set
+# CONFIG_SATA_NV is not set
+# CONFIG_SATA_PROMISE is not set
+# CONFIG_SATA_SIL is not set
+# CONFIG_SATA_SIS is not set
+# CONFIG_SATA_SVW is not set
+# CONFIG_SATA_ULI is not set
+# CONFIG_SATA_VIA is not set
+# CONFIG_SATA_VITESSE is not set
+# CONFIG_PATA_ALI is not set
+# CONFIG_PATA_AMD is not set
+# CONFIG_PATA_ARTOP is not set
+# CONFIG_PATA_ATIIXP is not set
+# CONFIG_PATA_ATP867X is not set
+# CONFIG_PATA_CMD64X is not set
+# CONFIG_PATA_CYPRESS is not set
+# CONFIG_PATA_EFAR is not set
+# CONFIG_PATA_HPT366 is not set
+# CONFIG_PATA_HPT37X is not set
+# CONFIG_PATA_HPT3X2N is not set
+# CONFIG_PATA_HPT3X3 is not set
+# CONFIG_PATA_IT8213 is not set
+# CONFIG_PATA_IT821X is not set
+# CONFIG_PATA_JMICRON is not set
+# CONFIG_PATA_MARVELL is not set
+# CONFIG_PATA_NETCELL is not set
+# CONFIG_PATA_NINJA32 is not set
+# CONFIG_PATA_NS87415 is not set
+# CONFIG_PATA_OLDPIIX is not set
+# CONFIG_PATA_OPTIDMA is not set
+# CONFIG_PATA_PDC2027X is not set
+# CONFIG_PATA_PDC_OLD is not set
+# CONFIG_PATA_RADISYS is not set
+# CONFIG_PATA_RDC is not set
+# CONFIG_PATA_SCH is not set
+# CONFIG_PATA_SERVERWORKS is not set
+# CONFIG_PATA_SIL680 is not set
+# CONFIG_PATA_SIS is not set
+# CONFIG_PATA_TOSHIBA is not set
+# CONFIG_PATA_TRIFLEX is not set
+# CONFIG_PATA_VIA is not set
+# CONFIG_PATA_MPIIX is not set
+# CONFIG_PATA_NS87410 is not set
+# CONFIG_PATA_OPTI is not set
+# CONFIG_PATA_PLATFORM is not set
+# CONFIG_PATA_RZ1000 is not set
+
+##
+## file: drivers/atm/Kconfig
+##
+# CONFIG_ATM_DRIVERS is not set
+
+##
+## file: drivers/auxdisplay/Kconfig
+##
+# CONFIG_AUXDISPLAY is not set
+
+##
+## file: drivers/bcma/Kconfig
+##
+# CONFIG_BCMA is not set
+
+##
+## file: drivers/block/Kconfig
+##
+# CONFIG_BLK_DEV_FD is not set
+# CONFIG_BLK_DEV_UMEM is not set
+# CONFIG_BLK_DEV_SKD is not set
+# CONFIG_CDROM_PKTCDVD is not set
+CONFIG_XEN_BLKDEV_FRONTEND=m
+# CONFIG_BLK_DEV_RSXX is not set
+
+##
+## file: drivers/block/mtip32xx/Kconfig
+##
+# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
+
+##
+## file: drivers/char/Kconfig
+##
+# CONFIG_R3964 is not set
+# CONFIG_APPLICOM is not set
+# CONFIG_MWAVE is not set
+# CONFIG_DEVPORT is not set
+# CONFIG_TELCLOCK is not set
+
+##
+## file: drivers/char/agp/Kconfig
+##
+# CONFIG_AGP is not set
+
+##
+## file: drivers/char/hw_random/Kconfig
+##
+# CONFIG_HW_RANDOM_INTEL is not set
+# CONFIG_HW_RANDOM_AMD is not set
+# CONFIG_HW_RANDOM_GEODE is not set
+# CONFIG_HW_RANDOM_VIA is not set
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+# CONFIG_IPMI_HANDLER is not set
+
+##
+## file: drivers/char/tpm/Kconfig
+##
+CONFIG_TCG_TPM=m
+# CONFIG_HW_RANDOM_TPM is not set
+CONFIG_TCG_TIS=m
+# CONFIG_TCG_TIS_SPI is not set
+# CONFIG_TCG_TIS_I2C_ATMEL is not set
+# CONFIG_TCG_TIS_I2C_INFINEON is not set
+# CONFIG_TCG_TIS_I2C_NUVOTON is not set
+# CONFIG_TCG_NSC is not set
+# CONFIG_TCG_ATMEL is not set
+# CONFIG_TCG_INFINEON is not set
+CONFIG_TCG_XEN=m
+CONFIG_TCG_CRB=m
+CONFIG_TCG_VTPM_PROXY=m
+
+##
+## file: drivers/char/xillybus/Kconfig
+##
+# CONFIG_XILLYBUS is not set
+
+##
+## file: drivers/cpufreq/Kconfig
+##
+# CONFIG_CPU_FREQ is not set
+
+##
+## file: drivers/cpuidle/Kconfig
+##
+# CONFIG_CPU_IDLE is not set
+
+##
+## file: drivers/crypto/Kconfig
+##
+# CONFIG_CRYPTO_HW is not set
+
+##
+## file: drivers/dax/Kconfig
+##
+# CONFIG_DAX is not set
+
+##
+## file: drivers/devfreq/Kconfig
+##
+# CONFIG_PM_DEVFREQ is not set
+
+##
+## file: drivers/dma/Kconfig
+##
+# CONFIG_DMADEVICES is not set
+
+##
+## file: drivers/edac/Kconfig
+##
+# CONFIG_EDAC is not set
+
+##
+## file: drivers/eisa/Kconfig
+##
+# CONFIG_EISA is not set
+
+##
+## file: drivers/extcon/Kconfig
+##
+# CONFIG_EXTCON is not set
+
+##
+## file: drivers/firewire/Kconfig
+##
+# CONFIG_FIREWIRE is not set
+# CONFIG_FIREWIRE_NOSY is not set
+
+##
+## file: drivers/fpga/Kconfig
+##
+# CONFIG_FPGA is not set
+
+##
+## file: drivers/fsi/Kconfig
+##
+# CONFIG_FSI is not set
+
+##
+## file: drivers/gnss/Kconfig
+##
+# CONFIG_GNSS is not set
+
+##
+## file: drivers/gpio/Kconfig
+##
+# CONFIG_GPIOLIB is not set
+# CONFIG_GPIO_KEMPLD is not set
+# CONFIG_GPIO_ML_IOH is not set
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+# CONFIG_DRM is not set
+
+##
+## file: drivers/gpu/vga/Kconfig
+##
+# CONFIG_VGA_SWITCHEROO is not set
+
+##
+## file: drivers/hid/Kconfig
+##
+# CONFIG_HID is not set
+# CONFIG_HID_RMI is not set
+
+##
+## file: drivers/hid/intel-ish-hid/Kconfig
+##
+# CONFIG_INTEL_ISH_HID is not set
+
+##
+## file: drivers/hsi/Kconfig
+##
+# CONFIG_HSI is not set
+
+##
+## file: drivers/hv/Kconfig
+##
+CONFIG_HYPERV=m
+
+##
+## file: drivers/hwmon/Kconfig
+##
+# CONFIG_HWMON is not set
+
+##
+## file: drivers/hwtracing/intel_th/Kconfig
+##
+# CONFIG_INTEL_TH is not set
+
+##
+## file: drivers/i2c/Kconfig
+##
+# CONFIG_I2C is not set
+
+##
+## file: drivers/idle/Kconfig
+##
+# CONFIG_INTEL_IDLE is not set
+
+##
+## file: drivers/iio/Kconfig
+##
+# CONFIG_IIO is not set
+
+##
+## file: drivers/infiniband/Kconfig
+##
+CONFIG_INFINIBAND=m
+CONFIG_INFINIBAND_USER_MAD=m
+CONFIG_INFINIBAND_USER_ACCESS=m
+CONFIG_INFINIBAND_ON_DEMAND_PAGING=y
+CONFIG_INFINIBAND_ADDR_TRANS=y
+
+##
+## file: drivers/infiniband/hw/cxgb4/Kconfig
+##
+# CONFIG_INFINIBAND_CXGB4 is not set
+
+##
+## file: drivers/infiniband/hw/hfi1/Kconfig
+##
+# CONFIG_INFINIBAND_HFI1 is not set
+
+##
+## file: drivers/infiniband/hw/i40iw/Kconfig
+##
+# CONFIG_INFINIBAND_I40IW is not set
+
+##
+## file: drivers/infiniband/hw/mlx4/Kconfig
+##
+CONFIG_MLX4_INFINIBAND=m
+
+##
+## file: drivers/infiniband/hw/mlx5/Kconfig
+##
+CONFIG_MLX5_INFINIBAND=m
+
+##
+## file: drivers/infiniband/hw/mthca/Kconfig
+##
+# CONFIG_INFINIBAND_MTHCA is not set
+# CONFIG_INFINIBAND_MTHCA_DEBUG is not set
+
+##
+## file: drivers/infiniband/hw/ocrdma/Kconfig
+##
+# CONFIG_INFINIBAND_OCRDMA is not set
+
+##
+## file: drivers/infiniband/hw/qedr/Kconfig
+##
+# CONFIG_INFINIBAND_QEDR is not set
+
+##
+## file: drivers/infiniband/hw/qib/Kconfig
+##
+# CONFIG_INFINIBAND_QIB is not set
+# CONFIG_INFINIBAND_QIB_DCA is not set
+
+##
+## file: drivers/infiniband/sw/rdmavt/Kconfig
+##
+# CONFIG_INFINIBAND_RDMAVT is not set
+
+##
+## file: drivers/infiniband/sw/rxe/Kconfig
+##
+# CONFIG_RDMA_RXE is not set
+
+##
+## file: drivers/infiniband/ulp/ipoib/Kconfig
+##
+# CONFIG_INFINIBAND_IPOIB is not set
+# CONFIG_INFINIBAND_IPOIB_CM is not set
+# CONFIG_INFINIBAND_IPOIB_DEBUG is not set
+# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set
+
+##
+## file: drivers/infiniband/ulp/iser/Kconfig
+##
+# CONFIG_INFINIBAND_ISER is not set
+
+##
+## file: drivers/infiniband/ulp/isert/Kconfig
+##
+# CONFIG_INFINIBAND_ISERT is not set
+
+##
+## file: drivers/infiniband/ulp/srp/Kconfig
+##
+# CONFIG_INFINIBAND_SRP is not set
+
+##
+## file: drivers/infiniband/ulp/srpt/Kconfig
+##
+# CONFIG_INFINIBAND_SRPT is not set
+
+##
+## file: drivers/input/Kconfig
+##
+# CONFIG_INPUT_FF_MEMLESS is not set
+# CONFIG_INPUT_SPARSEKMAP is not set
+CONFIG_INPUT_MOUSEDEV=m
+# CONFIG_INPUT_JOYDEV is not set
+
+##
+## file: drivers/input/gameport/Kconfig
+##
+# CONFIG_GAMEPORT is not set
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+# CONFIG_INPUT_JOYSTICK is not set
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+# CONFIG_KEYBOARD_LKKBD is not set
+# CONFIG_KEYBOARD_GPIO is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_SAMSUNG is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+
+##
+## file: drivers/input/misc/Kconfig
+##
+# CONFIG_INPUT_MISC is not set
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+# CONFIG_INPUT_MOUSE is not set
+
+##
+## file: drivers/input/serio/Kconfig
+##
+# CONFIG_SERIO_SERPORT is not set
+# CONFIG_SERIO_CT82C710 is not set
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_RAW=m
+# CONFIG_SERIO_ALTERA_PS2 is not set
+CONFIG_HYPERV_KEYBOARD=m
+
+##
+## file: drivers/input/tablet/Kconfig
+##
+# CONFIG_INPUT_TABLET is not set
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+# CONFIG_INPUT_TOUCHSCREEN is not set
+
+##
+## file: drivers/iommu/amd/Kconfig
+##
+# CONFIG_AMD_IOMMU is not set
+
+##
+## file: drivers/ipack/Kconfig
+##
+# CONFIG_IPACK_BUS is not set
+
+##
+## file: drivers/isdn/Kconfig
+##
+# CONFIG_ISDN is not set
+
+##
+## file: drivers/leds/Kconfig
+##
+# CONFIG_NEW_LEDS is not set
+
+##
+## file: drivers/lightnvm/Kconfig
+##
+# CONFIG_NVM is not set
+
+##
+## file: drivers/macintosh/Kconfig
+##
+# CONFIG_MACINTOSH_DRIVERS is not set
+
+##
+## file: drivers/mailbox/Kconfig
+##
+# CONFIG_MAILBOX is not set
+
+##
+## file: drivers/mcb/Kconfig
+##
+# CONFIG_MCB is not set
+
+##
+## file: drivers/media/Kconfig
+##
+# CONFIG_MEDIA_SUPPORT is not set
+
+##
+## file: drivers/media/rc/Kconfig
+##
+# CONFIG_RC_CORE is not set
+
+##
+## file: drivers/memory/Kconfig
+##
+# CONFIG_MEMORY is not set
+
+##
+## file: drivers/memstick/Kconfig
+##
+# CONFIG_MEMSTICK is not set
+
+##
+## file: drivers/message/fusion/Kconfig
+##
+# CONFIG_FUSION is not set
+
+##
+## file: drivers/mfd/Kconfig
+##
+# CONFIG_LPC_ICH is not set
+# CONFIG_LPC_SCH is not set
+# CONFIG_MFD_INTEL_LPSS_ACPI is not set
+# CONFIG_MFD_INTEL_LPSS_PCI is not set
+# CONFIG_MFD_KEMPLD is not set
+
+##
+## file: drivers/misc/Kconfig
+##
+# CONFIG_IBM_ASM is not set
+# CONFIG_PHANTOM is not set
+# CONFIG_TIFM_CORE is not set
+# CONFIG_TIFM_7XX1 is not set
+# CONFIG_ENCLOSURE_SERVICES is not set
+# CONFIG_HP_ILO is not set
+
+##
+## file: drivers/misc/c2port/Kconfig
+##
+# CONFIG_C2PORT is not set
+
+##
+## file: drivers/misc/cardreader/Kconfig
+##
+# CONFIG_MISC_RTSX_PCI is not set
+
+##
+## file: drivers/misc/cb710/Kconfig
+##
+# CONFIG_CB710_CORE is not set
+
+##
+## file: drivers/misc/eeprom/Kconfig
+##
+# CONFIG_EEPROM_93CX6 is not set
+
+##
+## file: drivers/misc/mei/Kconfig
+##
+# CONFIG_INTEL_MEI is not set
+# CONFIG_INTEL_MEI_ME is not set
+
+##
+## file: drivers/mmc/Kconfig
+##
+# CONFIG_MMC is not set
+
+##
+## file: drivers/mtd/Kconfig
+##
+# CONFIG_MTD is not set
+
+##
+## file: drivers/net/Kconfig
+##
+# CONFIG_GTP is not set
+# CONFIG_NET_SB1000 is not set
+CONFIG_XEN_NETDEV_FRONTEND=m
+# CONFIG_FUJITSU_ES is not set
+
+##
+## file: drivers/net/appletalk/Kconfig
+##
+# CONFIG_ATALK is not set
+
+##
+## file: drivers/net/arcnet/Kconfig
+##
+# CONFIG_ARCNET is not set
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+# CONFIG_JME is not set
+# CONFIG_FEALNX is not set
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+# CONFIG_NET_VENDOR_3COM is not set
+
+##
+## file: drivers/net/ethernet/adaptec/Kconfig
+##
+# CONFIG_NET_VENDOR_ADAPTEC is not set
+
+##
+## file: drivers/net/ethernet/agere/Kconfig
+##
+# CONFIG_NET_VENDOR_AGERE is not set
+
+##
+## file: drivers/net/ethernet/alacritech/Kconfig
+##
+# CONFIG_NET_VENDOR_ALACRITECH is not set
+
+##
+## file: drivers/net/ethernet/alteon/Kconfig
+##
+# CONFIG_NET_VENDOR_ALTEON is not set
+
+##
+## file: drivers/net/ethernet/altera/Kconfig
+##
+# CONFIG_ALTERA_TSE is not set
+
+##
+## file: drivers/net/ethernet/amazon/Kconfig
+##
+CONFIG_NET_VENDOR_AMAZON=y
+#. Amazon EC2 uses Elastic Network Adapter (ENA) support
+CONFIG_ENA_ETHERNET=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+# CONFIG_NET_VENDOR_AMD is not set
+
+##
+## file: drivers/net/ethernet/aquantia/Kconfig
+##
+# CONFIG_NET_VENDOR_AQUANTIA is not set
+
+##
+## file: drivers/net/ethernet/atheros/Kconfig
+##
+# CONFIG_NET_VENDOR_ATHEROS is not set
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+# CONFIG_NET_VENDOR_BROADCOM is not set
+# CONFIG_CNIC is not set
+
+##
+## file: drivers/net/ethernet/brocade/Kconfig
+##
+# CONFIG_NET_VENDOR_BROCADE is not set
+
+##
+## file: drivers/net/ethernet/cadence/Kconfig
+##
+# CONFIG_NET_VENDOR_CADENCE is not set
+
+##
+## file: drivers/net/ethernet/cavium/Kconfig
+##
+# CONFIG_NET_VENDOR_CAVIUM is not set
+
+##
+## file: drivers/net/ethernet/chelsio/Kconfig
+##
+# CONFIG_NET_VENDOR_CHELSIO is not set
+
+##
+## file: drivers/net/ethernet/cisco/Kconfig
+##
+# CONFIG_NET_VENDOR_CISCO is not set
+
+##
+## file: drivers/net/ethernet/dec/Kconfig
+##
+# CONFIG_NET_VENDOR_DEC is not set
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+# CONFIG_NET_VENDOR_DLINK is not set
+
+##
+## file: drivers/net/ethernet/emulex/Kconfig
+##
+# CONFIG_NET_VENDOR_EMULEX is not set
+
+##
+## file: drivers/net/ethernet/ezchip/Kconfig
+##
+# CONFIG_NET_VENDOR_EZCHIP is not set
+
+##
+## file: drivers/net/ethernet/google/Kconfig
+##
+CONFIG_NET_VENDOR_GOOGLE=y
+#. Google Cloud specific device
+CONFIG_GVE=m
+
+##
+## file: drivers/net/ethernet/huawei/Kconfig
+##
+# CONFIG_NET_VENDOR_HUAWEI is not set
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_NET_VENDOR_INTEL=y
+# CONFIG_E100 is not set
+# CONFIG_E1000 is not set
+# CONFIG_E1000E is not set
+# CONFIG_IGB is not set
+# CONFIG_IGBVF is not set
+# CONFIG_IXGB is not set
+# CONFIG_IXGBE is not set
+#. Amazon EC2 uses Intel Corporation 82599 Ethernet Controller Virtual Function
+CONFIG_IXGBEVF=m
+# CONFIG_I40E is not set
+# CONFIG_I40EVF is not set
+# CONFIG_ICE is not set
+# CONFIG_IGC is not set
+
+##
+## file: drivers/net/ethernet/marvell/Kconfig
+##
+# CONFIG_NET_VENDOR_MARVELL is not set
+
+##
+## file: drivers/net/ethernet/mellanox/Kconfig
+##
+#. Microsoft Azure uses Mellanox Technologies MT27500/MT27520 Family [ConnectX-3/ConnectX-3 Pro Virtual Function]
+CONFIG_NET_VENDOR_MELLANOX=y
+
+##
+## file: drivers/net/ethernet/micrel/Kconfig
+##
+# CONFIG_NET_VENDOR_MICREL is not set
+
+##
+## file: drivers/net/ethernet/microchip/Kconfig
+##
+# CONFIG_NET_VENDOR_MICROCHIP is not set
+
+##
+## file: drivers/net/ethernet/myricom/Kconfig
+##
+# CONFIG_NET_VENDOR_MYRI is not set
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+# CONFIG_NET_VENDOR_NATSEMI is not set
+
+##
+## file: drivers/net/ethernet/neterion/Kconfig
+##
+# CONFIG_NET_VENDOR_NETERION is not set
+
+##
+## file: drivers/net/ethernet/netronome/Kconfig
+##
+# CONFIG_NET_VENDOR_NETRONOME is not set
+
+##
+## file: drivers/net/ethernet/nvidia/Kconfig
+##
+# CONFIG_NET_VENDOR_NVIDIA is not set
+
+##
+## file: drivers/net/ethernet/oki-semi/Kconfig
+##
+# CONFIG_NET_VENDOR_OKI is not set
+
+##
+## file: drivers/net/ethernet/packetengines/Kconfig
+##
+# CONFIG_NET_VENDOR_PACKET_ENGINES is not set
+
+##
+## file: drivers/net/ethernet/qlogic/Kconfig
+##
+# CONFIG_NET_VENDOR_QLOGIC is not set
+
+##
+## file: drivers/net/ethernet/qualcomm/Kconfig
+##
+# CONFIG_NET_VENDOR_QUALCOMM is not set
+
+##
+## file: drivers/net/ethernet/rdc/Kconfig
+##
+# CONFIG_NET_VENDOR_RDC is not set
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+# CONFIG_NET_VENDOR_REALTEK is not set
+
+##
+## file: drivers/net/ethernet/renesas/Kconfig
+##
+# CONFIG_NET_VENDOR_RENESAS is not set
+
+##
+## file: drivers/net/ethernet/rocker/Kconfig
+##
+# CONFIG_NET_VENDOR_ROCKER is not set
+
+##
+## file: drivers/net/ethernet/samsung/Kconfig
+##
+# CONFIG_NET_VENDOR_SAMSUNG is not set
+
+##
+## file: drivers/net/ethernet/seeq/Kconfig
+##
+# CONFIG_NET_VENDOR_SEEQ is not set
+
+##
+## file: drivers/net/ethernet/sfc/Kconfig
+##
+# CONFIG_NET_VENDOR_SOLARFLARE is not set
+# CONFIG_SFC is not set
+
+##
+## file: drivers/net/ethernet/silan/Kconfig
+##
+# CONFIG_NET_VENDOR_SILAN is not set
+
+##
+## file: drivers/net/ethernet/sis/Kconfig
+##
+# CONFIG_NET_VENDOR_SIS is not set
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+# CONFIG_NET_VENDOR_SMSC is not set
+
+##
+## file: drivers/net/ethernet/stmicro/Kconfig
+##
+# CONFIG_NET_VENDOR_STMICRO is not set
+
+##
+## file: drivers/net/ethernet/sun/Kconfig
+##
+# CONFIG_NET_VENDOR_SUN is not set
+
+##
+## file: drivers/net/ethernet/synopsys/Kconfig
+##
+# CONFIG_NET_VENDOR_SYNOPSYS is not set
+
+##
+## file: drivers/net/ethernet/tehuti/Kconfig
+##
+# CONFIG_NET_VENDOR_TEHUTI is not set
+
+##
+## file: drivers/net/ethernet/ti/Kconfig
+##
+# CONFIG_NET_VENDOR_TI is not set
+
+##
+## file: drivers/net/ethernet/via/Kconfig
+##
+# CONFIG_NET_VENDOR_VIA is not set
+
+##
+## file: drivers/net/ethernet/wiznet/Kconfig
+##
+# CONFIG_NET_VENDOR_WIZNET is not set
+
+##
+## file: drivers/net/fddi/Kconfig
+##
+# CONFIG_FDDI is not set
+
+##
+## file: drivers/net/hippi/Kconfig
+##
+# CONFIG_HIPPI is not set
+
+##
+## file: drivers/net/hyperv/Kconfig
+##
+CONFIG_HYPERV_NET=m
+
+##
+## file: drivers/net/mdio/Kconfig
+##
+# CONFIG_MDIO_DEVICE is not set
+
+##
+## file: drivers/net/phy/Kconfig
+##
+# CONFIG_PHYLIB is not set
+
+##
+## file: drivers/net/ppp/Kconfig
+##
+# CONFIG_PPP is not set
+
+##
+## file: drivers/net/slip/Kconfig
+##
+# CONFIG_SLIP is not set
+
+##
+## file: drivers/net/wan/Kconfig
+##
+# CONFIG_WAN is not set
+
+##
+## file: drivers/net/wireless/Kconfig
+##
+# CONFIG_WLAN is not set
+
+##
+## file: drivers/ntb/Kconfig
+##
+# CONFIG_NTB is not set
+
+##
+## file: drivers/nvme/host/Kconfig
+##
+CONFIG_BLK_DEV_NVME=y
+CONFIG_NVME_MULTIPATH=y
+
+##
+## file: drivers/nvmem/Kconfig
+##
+# CONFIG_NVMEM is not set
+
+##
+## file: drivers/of/Kconfig
+##
+# CONFIG_OF is not set
+
+##
+## file: drivers/parport/Kconfig
+##
+# CONFIG_PARPORT is not set
+
+##
+## file: drivers/pci/Kconfig
+##
+# CONFIG_PCI_STUB is not set
+# CONFIG_PCI_PRI is not set
+# CONFIG_PCI_PASID is not set
+
+##
+## file: drivers/pci/controller/Kconfig
+##
+# CONFIG_VMD is not set
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+# CONFIG_HOTPLUG_PCI_ACPI_IBM is not set
+# CONFIG_HOTPLUG_PCI_CPCI is not set
+# CONFIG_HOTPLUG_PCI_SHPC is not set
+
+##
+## file: drivers/pcmcia/Kconfig
+##
+# CONFIG_PCCARD is not set
+
+##
+## file: drivers/platform/chrome/Kconfig
+##
+# CONFIG_CHROME_PLATFORMS is not set
+
+##
+## file: drivers/pnp/Kconfig
+##
+# CONFIG_PNP is not set
+
+##
+## file: drivers/power/supply/Kconfig
+##
+# CONFIG_BATTERY_BQ27XXX is not set
+
+##
+## file: drivers/pwm/Kconfig
+##
+# CONFIG_PWM is not set
+
+##
+## file: drivers/regulator/Kconfig
+##
+# CONFIG_REGULATOR is not set
+
+##
+## file: drivers/remoteproc/Kconfig
+##
+# CONFIG_REMOTEPROC is not set
+
+##
+## file: drivers/reset/Kconfig
+##
+# CONFIG_RESET_CONTROLLER is not set
+
+##
+## file: drivers/rtc/Kconfig
+##
+# CONFIG_RTC_NVMEM is not set
+# CONFIG_RTC_DRV_ABB5ZES3 is not set
+# CONFIG_RTC_DRV_ABX80X is not set
+# CONFIG_RTC_DRV_DS1307 is not set
+# CONFIG_RTC_DRV_DS1374 is not set
+# CONFIG_RTC_DRV_DS1672 is not set
+# CONFIG_RTC_DRV_HYM8563 is not set
+# CONFIG_RTC_DRV_MAX6900 is not set
+# CONFIG_RTC_DRV_RS5C372 is not set
+# CONFIG_RTC_DRV_ISL1208 is not set
+# CONFIG_RTC_DRV_ISL12022 is not set
+# CONFIG_RTC_DRV_X1205 is not set
+# CONFIG_RTC_DRV_PCF8523 is not set
+# CONFIG_RTC_DRV_PCF85063 is not set
+# CONFIG_RTC_DRV_PCF8563 is not set
+# CONFIG_RTC_DRV_PCF8583 is not set
+# CONFIG_RTC_DRV_M41T80 is not set
+# CONFIG_RTC_DRV_M41T80_WDT is not set
+# CONFIG_RTC_DRV_BQ32K is not set
+# CONFIG_RTC_DRV_S35390A is not set
+# CONFIG_RTC_DRV_FM3130 is not set
+# CONFIG_RTC_DRV_RX8010 is not set
+# CONFIG_RTC_DRV_RX8581 is not set
+# CONFIG_RTC_DRV_RX8025 is not set
+# CONFIG_RTC_DRV_EM3027 is not set
+# CONFIG_RTC_DRV_RV8803 is not set
+# CONFIG_RTC_DRV_M41T93 is not set
+# CONFIG_RTC_DRV_M41T94 is not set
+# CONFIG_RTC_DRV_DS1302 is not set
+# CONFIG_RTC_DRV_DS1305 is not set
+# CONFIG_RTC_DRV_DS1343 is not set
+# CONFIG_RTC_DRV_DS1347 is not set
+# CONFIG_RTC_DRV_DS1390 is not set
+# CONFIG_RTC_DRV_MAX6916 is not set
+# CONFIG_RTC_DRV_R9701 is not set
+# CONFIG_RTC_DRV_RX4581 is not set
+# CONFIG_RTC_DRV_RX6110 is not set
+# CONFIG_RTC_DRV_RS5C348 is not set
+# CONFIG_RTC_DRV_MAX6902 is not set
+# CONFIG_RTC_DRV_PCF2123 is not set
+# CONFIG_RTC_DRV_MCP795 is not set
+# CONFIG_RTC_DRV_DS3232 is not set
+# CONFIG_RTC_DRV_PCF2127 is not set
+# CONFIG_RTC_DRV_RV3029C2 is not set
+# CONFIG_RTC_DRV_DS1286 is not set
+# CONFIG_RTC_DRV_DS1511 is not set
+# CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_DS1685_FAMILY is not set
+# CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_DS2404 is not set
+# CONFIG_RTC_DRV_STK17TA8 is not set
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T35 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
+# CONFIG_RTC_DRV_MSM6242 is not set
+# CONFIG_RTC_DRV_BQ4802 is not set
+# CONFIG_RTC_DRV_RP5C01 is not set
+# CONFIG_RTC_DRV_V3020 is not set
+# CONFIG_RTC_DRV_WM831X is not set
+# CONFIG_RTC_DRV_WM8350 is not set
+# CONFIG_RTC_DRV_PCF50633 is not set
+# CONFIG_RTC_DRV_AB3100 is not set
+# CONFIG_RTC_DRV_ZYNQMP is not set
+# CONFIG_RTC_DRV_SNVS is not set
+# CONFIG_RTC_DRV_MOXART is not set
+# CONFIG_RTC_DRV_XGENE is not set
+# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI=m
+CONFIG_BLK_DEV_SD=m
+CONFIG_SCSI_FC_ATTRS=m
+# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
+# CONFIG_SCSI_HPSA is not set
+# CONFIG_SCSI_3W_9XXX is not set
+# CONFIG_SCSI_3W_SAS is not set
+# CONFIG_SCSI_ACARD is not set
+# CONFIG_SCSI_AACRAID is not set
+# CONFIG_SCSI_MVUMI is not set
+# CONFIG_SCSI_DPT_I2O is not set
+# CONFIG_SCSI_ADVANSYS is not set
+# CONFIG_SCSI_ARCMSR is not set
+# CONFIG_SCSI_HPTIOP is not set
+# CONFIG_SCSI_MYRB is not set
+# CONFIG_SCSI_MYRS is not set
+CONFIG_HYPERV_STORAGE=m
+# CONFIG_LIBFC is not set
+# CONFIG_SCSI_SNIC is not set
+# CONFIG_SCSI_DMX3191D is not set
+# CONFIG_SCSI_ISCI is not set
+# CONFIG_SCSI_IPS is not set
+# CONFIG_SCSI_INITIO is not set
+# CONFIG_SCSI_INIA100 is not set
+# CONFIG_SCSI_STEX is not set
+# CONFIG_SCSI_SYM53C8XX_2 is not set
+# CONFIG_SCSI_QLOGIC_1280 is not set
+# CONFIG_SCSI_LPFC is not set
+# CONFIG_SCSI_DC395x is not set
+# CONFIG_SCSI_AM53C974 is not set
+# CONFIG_SCSI_WD719X is not set
+# CONFIG_SCSI_PMCRAID is not set
+# CONFIG_SCSI_PM8001 is not set
+# CONFIG_SCSI_BFA_FC is not set
+
+##
+## file: drivers/scsi/aic7xxx/Kconfig.aic79xx
+##
+# CONFIG_SCSI_AIC79XX is not set
+
+##
+## file: drivers/scsi/aic7xxx/Kconfig.aic7xxx
+##
+# CONFIG_SCSI_AIC7XXX is not set
+
+##
+## file: drivers/scsi/aic94xx/Kconfig
+##
+# CONFIG_SCSI_AIC94XX is not set
+
+##
+## file: drivers/scsi/be2iscsi/Kconfig
+##
+# CONFIG_BE2ISCSI is not set
+
+##
+## file: drivers/scsi/bnx2fc/Kconfig
+##
+# CONFIG_SCSI_BNX2X_FCOE is not set
+
+##
+## file: drivers/scsi/bnx2i/Kconfig
+##
+# CONFIG_SCSI_BNX2_ISCSI is not set
+
+##
+## file: drivers/scsi/csiostor/Kconfig
+##
+# CONFIG_SCSI_CHELSIO_FCOE is not set
+
+##
+## file: drivers/scsi/cxgbi/cxgb3i/Kconfig
+##
+# CONFIG_SCSI_CXGB3_ISCSI is not set
+
+##
+## file: drivers/scsi/cxgbi/cxgb4i/Kconfig
+##
+# CONFIG_SCSI_CXGB4_ISCSI is not set
+
+##
+## file: drivers/scsi/device_handler/Kconfig
+##
+# CONFIG_SCSI_DH is not set
+
+##
+## file: drivers/scsi/esas2r/Kconfig
+##
+# CONFIG_SCSI_ESAS2R is not set
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+# CONFIG_MEGARAID_NEWGEN is not set
+# CONFIG_MEGARAID_MM is not set
+# CONFIG_MEGARAID_MAILBOX is not set
+# CONFIG_MEGARAID_LEGACY is not set
+# CONFIG_MEGARAID_SAS is not set
+
+##
+## file: drivers/scsi/mpt3sas/Kconfig
+##
+# CONFIG_SCSI_MPT3SAS is not set
+# CONFIG_SCSI_MPT2SAS is not set
+
+##
+## file: drivers/scsi/mvsas/Kconfig
+##
+# CONFIG_SCSI_MVSAS is not set
+
+##
+## file: drivers/scsi/qla2xxx/Kconfig
+##
+# CONFIG_SCSI_QLA_FC is not set
+
+##
+## file: drivers/scsi/qla4xxx/Kconfig
+##
+# CONFIG_SCSI_QLA_ISCSI is not set
+
+##
+## file: drivers/scsi/smartpqi/Kconfig
+##
+# CONFIG_SCSI_SMARTPQI is not set
+
+##
+## file: drivers/scsi/ufs/Kconfig
+##
+# CONFIG_SCSI_UFSHCD is not set
+
+##
+## file: drivers/sfi/Kconfig
+##
+# CONFIG_SFI is not set
+
+##
+## file: drivers/spi/Kconfig
+##
+# CONFIG_SPI is not set
+
+##
+## file: drivers/spmi/Kconfig
+##
+# CONFIG_SPMI is not set
+
+##
+## file: drivers/ssb/Kconfig
+##
+# CONFIG_SSB is not set
+
+##
+## file: drivers/staging/Kconfig
+##
+# CONFIG_STAGING is not set
+
+##
+## file: drivers/target/iscsi/cxgbit/Kconfig
+##
+# CONFIG_ISCSI_TARGET_CXGB4 is not set
+
+##
+## file: drivers/thermal/Kconfig
+##
+# CONFIG_THERMAL is not set
+
+##
+## file: drivers/thunderbolt/Kconfig
+##
+# CONFIG_USB4 is not set
+
+##
+## file: drivers/tty/Kconfig
+##
+# CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_ISI is not set
+# CONFIG_N_HDLC is not set
+# CONFIG_N_GSM is not set
+# CONFIG_NOZOMI is not set
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+# CONFIG_SERIAL_JSM is not set
+# CONFIG_SERIAL_RP2 is not set
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+# CONFIG_SERIAL_8250_FINTEK is not set
+# CONFIG_SERIAL_8250_EXAR is not set
+# CONFIG_SERIAL_8250_RSA is not set
+# CONFIG_SERIAL_8250_MID is not set
+
+##
+## file: drivers/usb/Kconfig
+##
+# CONFIG_USB_SUPPORT is not set
+
+##
+## file: drivers/vfio/mdev/Kconfig
+##
+# CONFIG_VFIO_MDEV is not set
+
+##
+## file: drivers/vfio/pci/Kconfig
+##
+# CONFIG_VFIO_PCI_VGA is not set
+
+##
+## file: drivers/video/backlight/Kconfig
+##
+# CONFIG_LCD_CLASS_DEVICE is not set
+# CONFIG_BACKLIGHT_CLASS_DEVICE is not set
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ARC is not set
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+# CONFIG_FB_VGA16 is not set
+# CONFIG_FB_UVESA is not set
+# CONFIG_FB_VESA is not set
+CONFIG_FB_EFI=y
+# CONFIG_FB_N411 is not set
+# CONFIG_FB_HGA is not set
+# CONFIG_FB_OPENCORES is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_I740 is not set
+# CONFIG_FB_LE80578 is not set
+# CONFIG_FB_CARILLO_RANCH is not set
+# CONFIG_FB_MATROX is not set
+# CONFIG_FB_RADEON is not set
+# CONFIG_FB_ATY128 is not set
+# CONFIG_FB_ATY is not set
+# CONFIG_FB_S3 is not set
+# CONFIG_FB_SAVAGE is not set
+# CONFIG_FB_SIS is not set
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+# CONFIG_FB_VOODOO1 is not set
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_CARMINE is not set
+# CONFIG_FB_IBM_GXT4500 is not set
+# CONFIG_FB_VIRTUAL is not set
+# CONFIG_FB_MB862XX is not set
+CONFIG_FB_HYPERV=m
+# CONFIG_FB_SIMPLE is not set
+# CONFIG_FB_SM712 is not set
+
+##
+## file: drivers/virt/Kconfig
+##
+# CONFIG_VIRT_DRIVERS is not set
+
+##
+## file: drivers/vme/Kconfig
+##
+# CONFIG_VME_BUS is not set
+
+##
+## file: drivers/w1/Kconfig
+##
+# CONFIG_W1 is not set
+
+##
+## file: drivers/watchdog/Kconfig
+##
+# CONFIG_ACQUIRE_WDT is not set
+# CONFIG_ADVANTECH_WDT is not set
+# CONFIG_ALIM1535_WDT is not set
+# CONFIG_ALIM7101_WDT is not set
+# CONFIG_F71808E_WDT is not set
+# CONFIG_SP5100_TCO is not set
+# CONFIG_SBC_FITPC2_WATCHDOG is not set
+# CONFIG_EUROTECH_WDT is not set
+# CONFIG_IB700_WDT is not set
+# CONFIG_IBMASR is not set
+# CONFIG_WAFER_WDT is not set
+# CONFIG_I6300ESB_WDT is not set
+# CONFIG_IE6XX_WDT is not set
+# CONFIG_ITCO_WDT is not set
+# CONFIG_ITCO_VENDOR_SUPPORT is not set
+# CONFIG_IT8712F_WDT is not set
+# CONFIG_IT87_WDT is not set
+# CONFIG_HP_WATCHDOG is not set
+# CONFIG_HPWDT_NMI_DECODING is not set
+# CONFIG_KEMPLD_WDT is not set
+# CONFIG_SC1200_WDT is not set
+# CONFIG_PC87413_WDT is not set
+# CONFIG_NV_TCO is not set
+# CONFIG_60XX_WDT is not set
+# CONFIG_CPU5_WDT is not set
+# CONFIG_SMSC_SCH311X_WDT is not set
+# CONFIG_SMSC37B787_WDT is not set
+# CONFIG_VIA_WDT is not set
+# CONFIG_W83627HF_WDT is not set
+# CONFIG_W83877F_WDT is not set
+# CONFIG_W83977F_WDT is not set
+# CONFIG_MACHZ_WDT is not set
+# CONFIG_SBC_EPX_C3_WATCHDOG is not set
+
+##
+## file: fs/adfs/Kconfig
+##
+# CONFIG_ADFS_FS is not set
+
+##
+## file: fs/affs/Kconfig
+##
+# CONFIG_AFFS_FS is not set
+
+##
+## file: fs/afs/Kconfig
+##
+# CONFIG_AFS_FS is not set
+
+##
+## file: fs/befs/Kconfig
+##
+# CONFIG_BEFS_FS is not set
+
+##
+## file: fs/bfs/Kconfig
+##
+# CONFIG_BFS_FS is not set
+
+##
+## file: fs/coda/Kconfig
+##
+# CONFIG_CODA_FS is not set
+
+##
+## file: fs/dlm/Kconfig
+##
+# CONFIG_DLM is not set
+
+##
+## file: fs/ecryptfs/Kconfig
+##
+# CONFIG_ECRYPT_FS is not set
+
+##
+## file: fs/efs/Kconfig
+##
+# CONFIG_EFS_FS is not set
+
+##
+## file: fs/ext4/Kconfig
+##
+CONFIG_EXT4_FS=y
+
+##
+## file: fs/f2fs/Kconfig
+##
+# CONFIG_F2FS_FS is not set
+
+##
+## file: fs/freevxfs/Kconfig
+##
+# CONFIG_VXFS_FS is not set
+
+##
+## file: fs/gfs2/Kconfig
+##
+# CONFIG_GFS2_FS is not set
+
+##
+## file: fs/hfs/Kconfig
+##
+# CONFIG_HFS_FS is not set
+
+##
+## file: fs/hfsplus/Kconfig
+##
+# CONFIG_HFSPLUS_FS is not set
+
+##
+## file: fs/hpfs/Kconfig
+##
+# CONFIG_HPFS_FS is not set
+
+##
+## file: fs/jfs/Kconfig
+##
+# CONFIG_JFS_FS is not set
+
+##
+## file: fs/minix/Kconfig
+##
+# CONFIG_MINIX_FS is not set
+
+##
+## file: fs/nilfs2/Kconfig
+##
+# CONFIG_NILFS2_FS is not set
+
+##
+## file: fs/ocfs2/Kconfig
+##
+# CONFIG_OCFS2_FS is not set
+
+##
+## file: fs/omfs/Kconfig
+##
+# CONFIG_OMFS_FS is not set
+
+##
+## file: fs/qnx4/Kconfig
+##
+# CONFIG_QNX4FS_FS is not set
+
+##
+## file: fs/qnx6/Kconfig
+##
+# CONFIG_QNX6FS_FS is not set
+
+##
+## file: fs/reiserfs/Kconfig
+##
+# CONFIG_REISERFS_FS is not set
+
+##
+## file: fs/ufs/Kconfig
+##
+# CONFIG_UFS_FS is not set
+
+##
+## file: init/Kconfig
+##
+## choice: Kernel compression mode
+# CONFIG_KERNEL_XZ is not set
+CONFIG_KERNEL_LZ4=y
+## end choice
+
+##
+## file: kernel/power/Kconfig
+##
+# CONFIG_PM is not set
+# CONFIG_PM_DEBUG is not set
+
+##
+## file: lib/Kconfig.debug
+##
+# CONFIG_DEBUG_MEMORY_INIT is not set
+# CONFIG_TEST_USER_COPY is not set
+# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIRMWARE is not set
+# CONFIG_TEST_STATIC_KEYS is not set
+# CONFIG_MEMTEST is not set
+
+##
+## file: mm/Kconfig
+##
+# CONFIG_ZSWAP is not set
+
+##
+## file: mm/Kconfig.debug
+##
+# CONFIG_PAGE_EXTENSION is not set
+# CONFIG_PAGE_POISONING is not set
+
+##
+## file: net/Kconfig
+##
+# CONFIG_WIRELESS is not set
+
+##
+## file: net/6lowpan/Kconfig
+##
+# CONFIG_6LOWPAN is not set
+
+##
+## file: net/9p/Kconfig
+##
+# CONFIG_NET_9P is not set
+
+##
+## file: net/atm/Kconfig
+##
+# CONFIG_ATM is not set
+
+##
+## file: net/ax25/Kconfig
+##
+# CONFIG_HAMRADIO is not set
+
+##
+## file: net/batman-adv/Kconfig
+##
+# CONFIG_BATMAN_ADV is not set
+
+##
+## file: net/bluetooth/Kconfig
+##
+# CONFIG_BT is not set
+
+##
+## file: net/caif/Kconfig
+##
+# CONFIG_CAIF is not set
+
+##
+## file: net/can/Kconfig
+##
+# CONFIG_CAN is not set
+
+##
+## file: net/dsa/Kconfig
+##
+# CONFIG_NET_DSA is not set
+
+##
+## file: net/hsr/Kconfig
+##
+# CONFIG_HSR is not set
+
+##
+## file: net/ieee802154/Kconfig
+##
+# CONFIG_IEEE802154 is not set
+
+##
+## file: net/ife/Kconfig
+##
+# CONFIG_NET_IFE is not set
+
+##
+## file: net/lapb/Kconfig
+##
+# CONFIG_LAPB is not set
+
+##
+## file: net/llc/Kconfig
+##
+# CONFIG_LLC2 is not set
+
+##
+## file: net/mac80211/Kconfig
+##
+# CONFIG_MAC80211 is not set
+
+##
+## file: net/mac802154/Kconfig
+##
+# CONFIG_MAC802154 is not set
+
+##
+## file: net/mpls/Kconfig
+##
+CONFIG_NET_MPLS_GSO=m
+
+##
+## file: net/ncsi/Kconfig
+##
+# CONFIG_NET_NCSI is not set
+
+##
+## file: net/nfc/Kconfig
+##
+# CONFIG_NFC is not set
+
+##
+## file: net/phonet/Kconfig
+##
+# CONFIG_PHONET is not set
+
+##
+## file: net/psample/Kconfig
+##
+# CONFIG_PSAMPLE is not set
+
+##
+## file: net/rfkill/Kconfig
+##
+# CONFIG_RFKILL is not set
+
+##
+## file: net/rxrpc/Kconfig
+##
+# CONFIG_AF_RXRPC is not set
+
+##
+## file: net/switchdev/Kconfig
+##
+# CONFIG_NET_SWITCHDEV is not set
+
+##
+## file: net/wimax/Kconfig
+##
+# CONFIG_WIMAX is not set
+
+##
+## file: net/wireless/Kconfig
+##
+# CONFIG_CFG80211 is not set
+
+##
+## file: net/x25/Kconfig
+##
+# CONFIG_X25 is not set
+
+##
+## file: security/Kconfig
+##
+CONFIG_SECURITY_INFINIBAND=y
+
+##
+## file: security/integrity/Kconfig
+##
+# CONFIG_INTEGRITY is not set
+
+##
+## file: sound/Kconfig
+##
+# CONFIG_SOUND is not set
+
diff --git a/debian/config/defines b/debian/config/defines
new file mode 100644
index 000000000..112cbe30d
--- /dev/null
+++ b/debian/config/defines
@@ -0,0 +1,175 @@
+[abi]
+abiname: 28
+ignore-changes:
+ __cpuhp_*
+ __udp_gso_segment
+ bpf_analyzer
+ bpf_offload_dev_create
+ bpf_verifier_log_write
+ cxl_*
+ dax_flush
+ ieee80211_nullfunc_get
+ inet_add_protocol
+ inet_del_protocol
+ iommu_device_*
+ mm_iommu_*
+ mv_mbus_*
+ perf_*
+ register_cxl_calls
+ register_key_type
+ unregister_cxl_calls
+ *_hw_breakpoint
+ module:drivers/crypto/ccp/*
+ module:drivers/hv/*
+ module:drivers/gpu/drm/sun4i/*
+ module:drivers/iio/**
+ module:drivers/misc/cxl/*
+ module:drivers/misc/lis3lv02d/*
+ module:drivers/mtd/nand/*
+ module:drivers/net/ethernet/**
+ module:drivers/net/wireless/**
+ module:drivers/nvdimm/*
+ module:drivers/nvme/**
+ module:drivers/power/supply/bq27xxx_battery
+ module:drivers/scsi/cxgbi/*
+ module:drivers/scsi/libiscs*
+ module:drivers/scsi/qla2xxx/qla2xxx
+ module:drivers/scsi/ufs/*
+ module:drivers/target/**
+ module:drivers/usb/chipidea/**
+ module:drivers/usb/gadget/**
+ module:drivers/usb/host/**
+ module:drivers/usb/musb/**
+ module:fs/nfs/**
+ module:net/ceph/libceph
+ module:net/l2tp/**
+ module:net/openvswitch/**
+ module:net/rxrpc/rxrpc
+ module:net/sctp/**
+ module:sound/core/seq/**
+ module:sound/firewire/snd-firewire-lib
+ module:sound/pci/hda/*
+# btree library is only selected by few drivers so not useful OOT
+ btree_*
+ visitor*
+# Exported for related protocols only
+ can_rx_register
+ ip6_xmit
+ module:net/dccp/dccp
+ module:net/rds/rds
+# devfreq is unlikely to be useful for OOT modules
+ devfreq_*
+ devm_devfreq_*
+ update_devfreq
+# Assume IB drivers are added/updated through OFED, which also updates IB core
+ module:drivers/infiniband/**
+# Declared in private header, not usable OOT
+ acpi_ec_add_query_handler
+ acpi_ec_remove_query_handler
+ first_ec
+# Exported for tracefs only
+ debugfs_create_automount
+# ignore changes to inv_mpu6050/*
+ module:drivers/iio/imu/inv_mpu6050/*
+ drm_crtc_accurate_vblank_count
+# ignore acpi_nfit_init, acpi_nfit_desc_init
+ acpi_nfit_desc_init
+ acpi_nfit_init
+# ignore loop_register_transfer (used by cryptoloop, nothing OOT)
+ loop_register_transfer
+# Only used in vmlinux
+ xen_xlate_*
+# Not OOT
+ nf_nat_masquerade_ipv4_register_notifier
+ nf_nat_masquerade_ipv6_register_notifier
+# Not used in OOT (and changed in 5.10.5)
+ dfltcc_*
+# ignore changes to hisi_sas/*
+ module:drivers/scsi/hisi_sas/*
+# KVM internal
+ __gfn_*
+ __kvmhv_*
+ __kvm_*
+ __xive_vm_h_*
+ gfn_*
+ h_ipi_redirect
+ halt_poll_ns*
+ kvm_*
+ kvmhv_*
+ kvmppc_*
+ mark_page_dirty
+ vcpu_*
+ module:arch/powerpc/kvm/*
+ module:arch/s390/kvm/*
+ module:arch/x86/kvm/*
+# used only within arch/s390
+ uv_info
+# Not used in OOT
+ xhci_init_driver
+# Removed in 08a01c11a5bb ("netfilter: nftables: statify nft_parse_register()")
+ nft_parse_register
+
+[base]
+arches:
+ alpha
+ amd64
+ arm64
+ arm64ilp32
+ armel
+ armhf
+ hppa
+ i386
+ ia64
+ m68k
+ mips
+ mips64
+ mips64el
+ mips64r6
+ mips64r6el
+ mipsel
+ mipsn32
+ mipsn32el
+ mipsn32r6
+ mipsn32r6el
+ mipsr6
+ mipsr6el
+ powerpc
+ ppc64
+ ppc64el
+ riscv64
+ s390
+ s390x
+ sh3
+ sh4
+ sparc
+ sparc64
+ x32
+compiler: gcc-10
+featuresets:
+ none
+ rt
+
+[build]
+debug-info: true
+# Disable code signing by default; this can be overridden per-architecture
+signed-code: false
+
+[featureset-rt_base]
+enabled: true
+
+[description]
+part-long-up: This kernel is not suitable for SMP (multi-processor,
+ multi-core or hyper-threaded) systems.
+
+[image]
+initramfs-generators: initramfs-tools initramfs-fallback
+breaks: fwupdate (<< 12-7), wireless-regdb (<< 2019.06.03-1~)
+recommends: apparmor
+
+[relations]
+# compilers
+gcc-10: gcc-10 <!stage1 !cross !pkg.linux.nokernel>, gcc-10-@gnu-type-package@ <!stage1 cross !pkg.linux.nokernel>
+
+# initramfs-generators
+initramfs-fallback: linux-initramfs-tool
+initramfs-tools: initramfs-tools (>= 0.120+deb8u2)
diff --git a/debian/config/featureset-rt/config b/debian/config/featureset-rt/config
new file mode 100644
index 000000000..731d4fcdd
--- /dev/null
+++ b/debian/config/featureset-rt/config
@@ -0,0 +1,32 @@
+##
+## file: certs/Kconfig
+##
+#. Certificate paths are resolved relative to debian/build/source_rt
+CONFIG_SYSTEM_TRUSTED_KEYS="../../certs/debian-uefi-certs.pem"
+
+##
+## file: kernel/Kconfig.preempt
+##
+## choice: Preemption Model
+# CONFIG_PREEMPT_VOLUNTARY is not set
+CONFIG_PREEMPT_RT=y
+## end choice
+
+##
+## file: kernel/rcu/Kconfig
+##
+CONFIG_RCU_EXPERT=y
+
+##
+## file: kernel/trace/Kconfig
+##
+CONFIG_SCHED_TRACER=y
+CONFIG_HWLAT_TRACER=y
+
+##
+## file: unknown
+##
+#. Dropped between 4.9 and 4.11, but might come back
+CONFIG_MISSED_TIMER_OFFSETS_HIST=y
+CONFIG_WAKEUP_LATENCY_HIST=y
+
diff --git a/debian/config/featureset-rt/defines b/debian/config/featureset-rt/defines
new file mode 100644
index 000000000..44e2f2b03
--- /dev/null
+++ b/debian/config/featureset-rt/defines
@@ -0,0 +1,7 @@
+[abi]
+ignore-changes: *
+
+[description]
+part-long-rt: This kernel includes the PREEMPT_RT realtime patch set.
+part-short-rt: PREEMPT_RT
+parts: rt
diff --git a/debian/config/hppa/config b/debian/config/hppa/config
new file mode 100644
index 000000000..2960e7c3e
--- /dev/null
+++ b/debian/config/hppa/config
@@ -0,0 +1,667 @@
+##
+## file: arch/parisc/Kconfig
+##
+## choice: Processor type
+# CONFIG_PA7100LC is not set
+# CONFIG_PA7200 is not set
+# CONFIG_PA7300LC is not set
+## end choice
+CONFIG_MLONGCALLS=y
+## choice: Kernel page size
+CONFIG_PARISC_PAGE_SIZE_4KB=y
+# CONFIG_PARISC_PAGE_SIZE_16KB is not set
+# CONFIG_PARISC_PAGE_SIZE_64KB is not set
+## end choice
+
+##
+## file: block/partitions/Kconfig
+##
+# CONFIG_PARTITION_ADVANCED is not set
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_NS87415=m
+CONFIG_PATA_LEGACY=m
+
+##
+## file: drivers/block/Kconfig
+##
+# CONFIG_BLK_DEV_FD is not set
+# CONFIG_BLK_DEV_UMEM is not set
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+# CONFIG_CDROM_PKTCDVD_WCACHE is not set
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_PRINTER=m
+# CONFIG_LP_CONSOLE is not set
+CONFIG_PPDEV=m
+# CONFIG_DTLK is not set
+# CONFIG_APPLICOM is not set
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+# CONFIG_IPMI_HANDLER is not set
+
+##
+## file: drivers/eisa/Kconfig
+##
+CONFIG_EISA=y
+CONFIG_EISA_NAMES=y
+
+##
+## file: drivers/firewire/Kconfig
+##
+# CONFIG_FIREWIRE is not set
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+# CONFIG_DRM is not set
+
+##
+## file: drivers/hid/usbhid/Kconfig
+##
+CONFIG_USB_HID=m
+
+##
+## file: drivers/hwmon/Kconfig
+##
+# CONFIG_SENSORS_F71805F is not set
+
+##
+## file: drivers/i2c/Kconfig
+##
+# CONFIG_I2C is not set
+
+##
+## file: drivers/input/Kconfig
+##
+# CONFIG_INPUT_JOYDEV is not set
+
+##
+## file: drivers/input/gameport/Kconfig
+##
+# CONFIG_GAMEPORT is not set
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+# CONFIG_INPUT_JOYSTICK is not set
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ATKBD=y
+CONFIG_KEYBOARD_ATKBD_HP_KEYCODES=y
+# CONFIG_KEYBOARD_ATKBD_RDI_KEYCODES is not set
+# CONFIG_KEYBOARD_LKKBD is not set
+CONFIG_KEYBOARD_HIL_OLD=m
+CONFIG_KEYBOARD_HIL=m
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+# CONFIG_HP_SDC_RTC is not set
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+# CONFIG_MOUSE_SERIAL is not set
+# CONFIG_MOUSE_INPORT is not set
+# CONFIG_MOUSE_LOGIBM is not set
+# CONFIG_MOUSE_PC110PAD is not set
+# CONFIG_MOUSE_VSXXXAA is not set
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO=y
+# CONFIG_SERIO_SERPORT is not set
+# CONFIG_SERIO_PARKBD is not set
+CONFIG_SERIO_GSCPS2=y
+CONFIG_HP_SDC=m
+CONFIG_HIL_MLC=m
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=y
+CONFIG_SERIO_RAW=m
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+# CONFIG_INPUT_TOUCHSCREEN is not set
+
+##
+## file: drivers/mfd/Kconfig
+##
+# CONFIG_AB3100_CORE is not set
+
+##
+## file: drivers/mmc/Kconfig
+##
+# CONFIG_MMC is not set
+
+##
+## file: drivers/mtd/Kconfig
+##
+# CONFIG_MTD is not set
+
+##
+## file: drivers/net/arcnet/Kconfig
+##
+# CONFIG_ARCNET is not set
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+CONFIG_FEALNX=m
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_EL3=m
+# CONFIG_3C515 is not set
+CONFIG_PCMCIA_3C574=m
+CONFIG_PCMCIA_3C589=m
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_PCMCIA_AXNET=m
+CONFIG_NE2000=m
+CONFIG_NE2K_PCI=m
+CONFIG_PCMCIA_PCNET=m
+CONFIG_ULTRA=m
+CONFIG_WD80x3=m
+
+##
+## file: drivers/net/ethernet/adaptec/Kconfig
+##
+CONFIG_ADAPTEC_STARFIRE=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+CONFIG_AMD8111_ETH=m
+# CONFIG_LANCE is not set
+CONFIG_PCMCIA_NMCLAN=m
+# CONFIG_NI65 is not set
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+CONFIG_B44=m
+
+##
+## file: drivers/net/ethernet/cirrus/Kconfig
+##
+CONFIG_CS89x0=m
+
+##
+## file: drivers/net/ethernet/dec/tulip/Kconfig
+##
+CONFIG_NET_TULIP=y
+# CONFIG_DE2104X is not set
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+CONFIG_TULIP_MMIO=y
+# CONFIG_WINBOND_840 is not set
+# CONFIG_DM9102 is not set
+CONFIG_PCMCIA_XIRCOM=m
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+CONFIG_SUNDANCE=m
+# CONFIG_SUNDANCE_MMIO is not set
+
+##
+## file: drivers/net/ethernet/fujitsu/Kconfig
+##
+CONFIG_PCMCIA_FMVJ18X=m
+
+##
+## file: drivers/net/ethernet/i825xx/Kconfig
+##
+CONFIG_LASI_82596=m
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_E100=m
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_NATSEMI=m
+
+##
+## file: drivers/net/ethernet/neterion/Kconfig
+##
+# CONFIG_VXGE is not set
+
+##
+## file: drivers/net/ethernet/nvidia/Kconfig
+##
+CONFIG_FORCEDETH=m
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+
+##
+## file: drivers/net/ethernet/sis/Kconfig
+##
+CONFIG_SIS900=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_SMC9194=m
+CONFIG_PCMCIA_SMC91C92=m
+CONFIG_EPIC100=m
+
+##
+## file: drivers/net/ethernet/sun/Kconfig
+##
+CONFIG_HAPPYMEAL=m
+CONFIG_SUNGEM=m
+# CONFIG_NIU is not set
+
+##
+## file: drivers/net/ethernet/via/Kconfig
+##
+CONFIG_VIA_RHINE=m
+# CONFIG_VIA_RHINE_MMIO is not set
+
+##
+## file: drivers/net/ethernet/xircom/Kconfig
+##
+CONFIG_PCMCIA_XIRC2PS=m
+
+##
+## file: drivers/net/fddi/Kconfig
+##
+# CONFIG_FDDI is not set
+
+##
+## file: drivers/net/hippi/Kconfig
+##
+# CONFIG_HIPPI is not set
+
+##
+## file: drivers/net/plip/Kconfig
+##
+CONFIG_PLIP=m
+
+##
+## file: drivers/net/wan/Kconfig
+##
+# CONFIG_WAN is not set
+
+##
+## file: drivers/net/wireless/Kconfig
+##
+CONFIG_PCMCIA_RAYCS=m
+CONFIG_PCMCIA_WL3501=m
+
+##
+## file: drivers/net/wireless/atmel/Kconfig
+##
+# CONFIG_ATMEL is not set
+
+##
+## file: drivers/net/wireless/cisco/Kconfig
+##
+CONFIG_AIRO_CS=m
+
+##
+## file: drivers/net/wireless/intel/ipw2x00/Kconfig
+##
+# CONFIG_IPW2100 is not set
+
+##
+## file: drivers/net/wireless/intersil/orinoco/Kconfig
+##
+CONFIG_HERMES=m
+# CONFIG_PLX_HERMES is not set
+# CONFIG_TMD_HERMES is not set
+# CONFIG_PCI_HERMES is not set
+CONFIG_PCMCIA_HERMES=m
+
+##
+## file: drivers/net/wireless/zydas/Kconfig
+##
+# CONFIG_USB_ZD1201 is not set
+
+##
+## file: drivers/parisc/Kconfig
+##
+CONFIG_GSC=y
+CONFIG_HPPB=y
+CONFIG_IOMMU_CCIO=y
+CONFIG_GSC_LASI=y
+CONFIG_GSC_WAX=y
+CONFIG_ISA=y
+CONFIG_GSC_DINO=y
+CONFIG_PCI_LBA=y
+CONFIG_SUPERIO=y
+CONFIG_CHASSIS_LCD_LED=y
+CONFIG_PDC_CHASSIS=y
+CONFIG_PDC_CHASSIS_WARN=y
+CONFIG_PDC_STABLE=y
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+# CONFIG_HOTPLUG_PCI is not set
+
+##
+## file: drivers/pcmcia/Kconfig
+##
+CONFIG_PCCARD=m
+CONFIG_PCMCIA=m
+CONFIG_CARDBUS=y
+CONFIG_YENTA=m
+CONFIG_PD6729=m
+CONFIG_I82092=m
+CONFIG_I82365=m
+# CONFIG_TCIC is not set
+# CONFIG_PCMCIA_DEBUG is not set
+
+##
+## file: drivers/pnp/Kconfig
+##
+# CONFIG_PNP is not set
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_DRV_GENERIC=y
+
+##
+## file: drivers/scsi/Kconfig
+##
+# CONFIG_SCSI_BUSLOGIC is not set
+# CONFIG_SCSI_MYRB is not set
+# CONFIG_SCSI_MYRS is not set
+# CONFIG_SCSI_DMX3191D is not set
+# CONFIG_SCSI_GDTH is not set
+# CONFIG_SCSI_GENERIC_NCR5380 is not set
+# CONFIG_SCSI_IPS is not set
+CONFIG_SCSI_INITIO=m
+# CONFIG_SCSI_INIA100 is not set
+CONFIG_SCSI_LASI700=m
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+# CONFIG_SCSI_IPR is not set
+CONFIG_SCSI_ZALON=m
+CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=8
+CONFIG_SCSI_NCR53C8XX_MAX_TAGS=32
+CONFIG_SCSI_NCR53C8XX_SYNC=20
+# CONFIG_SCSI_QLOGIC_FAS is not set
+# CONFIG_SCSI_QLOGIC_1280 is not set
+# CONFIG_SCSI_SIM710 is not set
+# CONFIG_SCSI_DC395x is not set
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+# CONFIG_MEGARAID_LEGACY is not set
+
+##
+## file: drivers/scsi/pcmcia/Kconfig
+##
+CONFIG_PCMCIA_QLOGIC=m
+CONFIG_PCMCIA_SYM53C500=m
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+# CONFIG_SERIAL_NONSTANDARD is not set
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_MUX=y
+CONFIG_SERIAL_MUX_CONSOLE=y
+CONFIG_SERIAL_JSM=m
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_CS=m
+CONFIG_SERIAL_8250_NR_UARTS=32
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_MANY_PORTS=y
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+# CONFIG_SERIAL_8250_DETECT_IRQ is not set
+# CONFIG_SERIAL_8250_RSA is not set
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=m
+# CONFIG_USB_USS720 is not set
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_OHCI_HCD=m
+# CONFIG_USB_UHCI_HCD is not set
+# CONFIG_USB_SL811_HCD is not set
+
+##
+## file: drivers/video/console/Kconfig
+##
+CONFIG_DUMMY_CONSOLE_COLUMNS=160
+CONFIG_DUMMY_CONSOLE_ROWS=64
+CONFIG_STI_CONSOLE=y
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_MODE_HELPERS=y
+# CONFIG_FB_TILEBLITTING is not set
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+CONFIG_FB_STI=y
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_MATROX is not set
+# CONFIG_FB_RADEON is not set
+# CONFIG_FB_ATY128 is not set
+# CONFIG_FB_ATY is not set
+# CONFIG_FB_S3 is not set
+# CONFIG_FB_SAVAGE is not set
+# CONFIG_FB_SIS is not set
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+# CONFIG_FB_VOODOO1 is not set
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_VIRTUAL is not set
+
+##
+## file: drivers/w1/Kconfig
+##
+# CONFIG_W1 is not set
+
+##
+## file: fs/nfs/Kconfig
+##
+CONFIG_ROOT_NFS=y
+
+##
+## file: init/Kconfig
+##
+CONFIG_SGETMASK_SYSCALL=y
+CONFIG_SYSFS_SYSCALL=y
+
+##
+## file: lib/Kconfig.debug
+##
+CONFIG_DEBUG_STACKOVERFLOW=y
+# CONFIG_SOFTLOCKUP_DETECTOR is not set
+# CONFIG_HARDLOCKUP_DETECTOR is not set
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+CONFIG_FLATMEM_MANUAL=y
+# CONFIG_DISCONTIGMEM_MANUAL is not set
+# CONFIG_SPARSEMEM_MANUAL is not set
+## end choice
+
+##
+## file: net/ax25/Kconfig
+##
+# CONFIG_HAMRADIO is not set
+
+##
+## file: net/ipv4/Kconfig
+##
+# CONFIG_IP_ADVANCED_ROUTER is not set
+CONFIG_IP_PNP=y
+# CONFIG_IP_PNP_DHCP is not set
+CONFIG_IP_PNP_BOOTP=y
+# CONFIG_IP_PNP_RARP is not set
+
+##
+## file: net/lapb/Kconfig
+##
+# CONFIG_LAPB is not set
+
+##
+## file: net/llc/Kconfig
+##
+# CONFIG_LLC2 is not set
+
+##
+## file: sound/drivers/Kconfig
+##
+CONFIG_SND_DUMMY=m
+# CONFIG_SND_VIRMIDI is not set
+# CONFIG_SND_MTPAV is not set
+# CONFIG_SND_SERIAL_U16550 is not set
+# CONFIG_SND_MPU401 is not set
+
+##
+## file: sound/isa/Kconfig
+##
+# CONFIG_SND_AD1848 is not set
+# CONFIG_SND_CMI8330 is not set
+# CONFIG_SND_CS4231 is not set
+# CONFIG_SND_CS4236 is not set
+# CONFIG_SND_ES1688 is not set
+# CONFIG_SND_ES18XX is not set
+# CONFIG_SND_GUSCLASSIC is not set
+# CONFIG_SND_GUSEXTREME is not set
+# CONFIG_SND_GUSMAX is not set
+# CONFIG_SND_INTERWAVE is not set
+# CONFIG_SND_INTERWAVE_STB is not set
+# CONFIG_SND_OPL3SA2 is not set
+# CONFIG_SND_OPTI92X_AD1848 is not set
+# CONFIG_SND_OPTI92X_CS4231 is not set
+# CONFIG_SND_OPTI93X is not set
+# CONFIG_SND_SB8 is not set
+# CONFIG_SND_SB16 is not set
+# CONFIG_SND_SBAWE is not set
+# CONFIG_SND_SSCAPE is not set
+# CONFIG_SND_WAVEFRONT is not set
+
+##
+## file: sound/parisc/Kconfig
+##
+CONFIG_SND_HARMONY=m
+
+##
+## file: sound/pci/Kconfig
+##
+# CONFIG_SND_ALS4000 is not set
+# CONFIG_SND_ALI5451 is not set
+# CONFIG_SND_ATIIXP is not set
+# CONFIG_SND_ATIIXP_MODEM is not set
+# CONFIG_SND_AU8810 is not set
+# CONFIG_SND_AU8820 is not set
+# CONFIG_SND_AU8830 is not set
+# CONFIG_SND_AZT3328 is not set
+# CONFIG_SND_BT87X is not set
+# CONFIG_SND_CA0106 is not set
+# CONFIG_SND_CMIPCI is not set
+# CONFIG_SND_CS4281 is not set
+# CONFIG_SND_CS46XX is not set
+# CONFIG_SND_EMU10K1 is not set
+# CONFIG_SND_EMU10K1X is not set
+# CONFIG_SND_ENS1370 is not set
+# CONFIG_SND_ENS1371 is not set
+# CONFIG_SND_ES1938 is not set
+# CONFIG_SND_ES1968 is not set
+# CONFIG_SND_FM801 is not set
+# CONFIG_SND_HDSP is not set
+# CONFIG_SND_ICE1712 is not set
+# CONFIG_SND_ICE1724 is not set
+# CONFIG_SND_INTEL8X0 is not set
+# CONFIG_SND_INTEL8X0M is not set
+# CONFIG_SND_KORG1212 is not set
+# CONFIG_SND_MAESTRO3 is not set
+# CONFIG_SND_MIXART is not set
+# CONFIG_SND_NM256 is not set
+# CONFIG_SND_RME32 is not set
+# CONFIG_SND_RME96 is not set
+# CONFIG_SND_RME9652 is not set
+# CONFIG_SND_SONICVIBES is not set
+# CONFIG_SND_TRIDENT is not set
+# CONFIG_SND_VIA82XX is not set
+# CONFIG_SND_VIA82XX_MODEM is not set
+# CONFIG_SND_VX222 is not set
+# CONFIG_SND_YMFPCI is not set
+
+##
+## file: sound/pci/hda/Kconfig
+##
+# CONFIG_SND_HDA_INTEL is not set
+
diff --git a/debian/config/hppa/config.parisc b/debian/config/hppa/config.parisc
new file mode 100644
index 000000000..ec658ba1a
--- /dev/null
+++ b/debian/config/hppa/config.parisc
@@ -0,0 +1,27 @@
+##
+## file: arch/parisc/Kconfig
+##
+## choice: Processor type
+CONFIG_PA7000=y
+# CONFIG_PA8X00 is not set
+## end choice
+CONFIG_SMP=y
+CONFIG_NR_CPUS=4
+
+##
+## file: drivers/net/ethernet/ti/Kconfig
+##
+CONFIG_TLAN=m
+
+##
+## file: drivers/scsi/Kconfig
+##
+# CONFIG_SCSI_DPT_I2O is not set
+# CONFIG_SCSI_NSP32 is not set
+
+##
+## file: drivers/scsi/pcmcia/Kconfig
+##
+CONFIG_PCMCIA_AHA152X=m
+CONFIG_PCMCIA_NINJA_SCSI=m
+
diff --git a/debian/config/hppa/config.parisc64 b/debian/config/hppa/config.parisc64
new file mode 100644
index 000000000..e39d0c934
--- /dev/null
+++ b/debian/config/hppa/config.parisc64
@@ -0,0 +1,58 @@
+##
+## file: arch/parisc/Kconfig
+##
+## choice: Processor type
+# CONFIG_PA7000 is not set
+CONFIG_PA8X00=y
+## end choice
+CONFIG_64BIT=y
+CONFIG_SMP=y
+CONFIG_NR_CPUS=8
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_SIL680=m
+
+##
+## file: drivers/char/agp/Kconfig
+##
+#. for ATI FireGL DRM in C8000 workstation
+CONFIG_AGP=y
+CONFIG_AGP_PARISC=y
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+CONFIG_IPMI_HANDLER=m
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+#. for ATI FireGL DRM in C8000 workstation
+CONFIG_DRM=y
+CONFIG_DRM_RADEON=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=y
+
+##
+## file: drivers/i2c/algos/Kconfig
+##
+CONFIG_I2C_ALGOBIT=y
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+# CONFIG_FLATMEM_MANUAL is not set
+CONFIG_DISCONTIGMEM_MANUAL=y
+# CONFIG_SPARSEMEM_MANUAL is not set
+## end choice
+
diff --git a/debian/config/hppa/defines b/debian/config/hppa/defines
new file mode 100644
index 000000000..2dc7853a3
--- /dev/null
+++ b/debian/config/hppa/defines
@@ -0,0 +1,29 @@
+[base]
+flavours: parisc parisc64
+default-flavour: parisc
+kernel-arch: parisc
+
+[build]
+image-file: arch/parisc/boot/bzImage
+# temporarily disable debug info: Required disk size exceeds our hppa buildd machines.
+debug-info: false
+
+[image]
+suggests: palo
+install-stem: vmlinuz
+
+[parisc_description]
+hardware: 32-bit PA-RISC
+hardware-long: HP PA-RISC 32-bit systems with max 4 GB RAM
+
+[parisc64_base]
+cflags: -fno-cse-follow-jumps
+override-host-type: hppa64-linux-gnu
+
+[parisc64_description]
+hardware: 64-bit PA-RISC
+hardware-long: HP PA-RISC 64-bit systems with support for more than 4 GB RAM
+
+[relations]
+gcc-10: gcc-10 <!stage1 !cross !pkg.linux.nokernel>, gcc-10-hppa-linux-gnu <!stage1 cross !pkg.linux.nokernel>, binutils-hppa64-linux-gnu <!stage1 !pkg.linux.nokernel>, gcc-10-hppa64-linux-gnu <!stage1 !pkg.linux.nokernel>
+
diff --git a/debian/config/i386/config b/debian/config/i386/config
new file mode 100644
index 000000000..2f1edaaca
--- /dev/null
+++ b/debian/config/i386/config
@@ -0,0 +1,514 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_ARCH_MMAP_RND_BITS=8
+
+##
+## file: arch/x86/Kconfig
+##
+# CONFIG_64BIT is not set
+CONFIG_SMP=y
+CONFIG_X86_BIGSMP=y
+CONFIG_NR_CPUS=32
+# CONFIG_X86_LEGACY_VM86 is not set
+CONFIG_TOSHIBA=m
+CONFIG_X86_REBOOTFIXUPS=y
+## choice: High Memory Support
+# CONFIG_NOHIGHMEM is not set
+CONFIG_HIGHMEM4G=y
+# CONFIG_HIGHMEM64G is not set
+## end choice
+## choice: Memory split
+CONFIG_VMSPLIT_3G=y
+# CONFIG_VMSPLIT_3G_OPT is not set
+# CONFIG_VMSPLIT_2G is not set
+# CONFIG_VMSPLIT_2G_OPT is not set
+# CONFIG_VMSPLIT_1G is not set
+## end choice
+# CONFIG_X86_PAE is not set
+# CONFIG_NUMA is not set
+CONFIG_HIGHPTE=y
+CONFIG_PHYSICAL_ALIGN=0x1000000
+CONFIG_APM=m
+# CONFIG_APM_IGNORE_USER_SUSPEND is not set
+# CONFIG_APM_DO_ENABLE is not set
+# CONFIG_APM_CPU_IDLE is not set
+# CONFIG_APM_DISPLAY_BLANK is not set
+# CONFIG_APM_ALLOW_INTS is not set
+## choice: PCI access mode
+# CONFIG_PCI_GOBIOS is not set
+# CONFIG_PCI_GOMMCONFIG is not set
+# CONFIG_PCI_GODIRECT is not set
+# CONFIG_PCI_GOOLPC is not set
+CONFIG_PCI_GOANY=y
+## end choice
+CONFIG_PCI_MMCONFIG=y
+CONFIG_ISA=y
+CONFIG_SCx200=m
+CONFIG_SCx200HR_TIMER=m
+# CONFIG_OLPC is not set
+
+##
+## file: arch/x86/Kconfig.cpu
+##
+CONFIG_X86_GENERIC=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_SERPENT_SSE2_586=m
+CONFIG_CRYPTO_TWOFISH_586=m
+
+##
+## file: drivers/accessibility/speakup/Kconfig
+##
+CONFIG_SPEAKUP_SYNTH_DECPC=m
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_CS5520=m
+CONFIG_PATA_CS5530=m
+CONFIG_PATA_CS5535=m
+CONFIG_PATA_CS5536=m
+CONFIG_PATA_SC1200=m
+CONFIG_PATA_ISAPNP=m
+CONFIG_PATA_OPTI=m
+CONFIG_PATA_LEGACY=m
+
+##
+## file: drivers/atm/Kconfig
+##
+CONFIG_ATM_NICSTAR=m
+# CONFIG_ATM_NICSTAR_USE_SUNI is not set
+# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set
+CONFIG_ATM_IA=m
+# CONFIG_ATM_IA_DEBUG is not set
+
+##
+## file: drivers/auxdisplay/Kconfig
+##
+CONFIG_CFAG12864B=m
+CONFIG_CFAG12864B_RATE=20
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_SONYPI=m
+CONFIG_SCx200_GPIO=m
+
+##
+## file: drivers/char/agp/Kconfig
+##
+#. Workaround
+CONFIG_AGP_ALI=y
+#. Workaround
+CONFIG_AGP_ATI=y
+#. Workaround
+CONFIG_AGP_AMD=y
+#. Workaround
+CONFIG_AGP_NVIDIA=y
+#. Workaround
+CONFIG_AGP_SWORKS=y
+#. Workaround
+CONFIG_AGP_EFFICEON=y
+
+##
+## file: drivers/cpufreq/Kconfig.x86
+##
+CONFIG_X86_POWERNOW_K6=m
+CONFIG_X86_POWERNOW_K7=m
+CONFIG_X86_GX_SUSPMOD=m
+CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=y
+CONFIG_X86_SPEEDSTEP_ICH=m
+CONFIG_X86_SPEEDSTEP_SMI=m
+CONFIG_X86_CPUFREQ_NFORCE2=m
+CONFIG_X86_LONGRUN=m
+CONFIG_X86_LONGHAUL=m
+# CONFIG_X86_E_POWERSAVER is not set
+CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y
+
+##
+## file: drivers/crypto/Kconfig
+##
+CONFIG_CRYPTO_DEV_GEODE=m
+
+##
+## file: drivers/dma/Kconfig
+##
+CONFIG_PCH_DMA=m
+
+##
+## file: drivers/gpio/Kconfig
+##
+CONFIG_GPIO_VX855=m
+CONFIG_GPIO_CS5535=m
+CONFIG_GPIO_PCH=m
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_EG20T=m
+CONFIG_I2C_PXA=m
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_WISTRON_BTNS=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+# CONFIG_MOUSE_PS2_OLPC is not set
+CONFIG_MOUSE_INPORT=m
+# CONFIG_MOUSE_ATIXL is not set
+CONFIG_MOUSE_LOGIBM=m
+CONFIG_MOUSE_PC110PAD=m
+
+##
+## file: drivers/iommu/intel/Kconfig
+##
+# CONFIG_INTEL_IOMMU is not set
+
+##
+## file: drivers/leds/Kconfig
+##
+CONFIG_LEDS_WRAP=m
+
+##
+## file: drivers/macintosh/Kconfig
+##
+# CONFIG_MACINTOSH_DRIVERS is not set
+
+##
+## file: drivers/media/radio/Kconfig
+##
+CONFIG_V4L_RADIO_ISA_DRIVERS=y
+CONFIG_RADIO_CADET=m
+CONFIG_RADIO_RTRACK=m
+CONFIG_RADIO_RTRACK2=m
+CONFIG_RADIO_AZTECH=m
+CONFIG_RADIO_GEMTEK=m
+CONFIG_RADIO_MIROPCM20=m
+CONFIG_RADIO_SF16FMI=m
+CONFIG_RADIO_SF16FMR2=m
+CONFIG_RADIO_TERRATEC=m
+CONFIG_RADIO_TRUST=m
+CONFIG_RADIO_TYPHOON=m
+CONFIG_RADIO_ZOLTRIX=m
+
+##
+## file: drivers/mfd/Kconfig
+##
+CONFIG_MFD_CS5535=m
+CONFIG_MFD_VX855=m
+
+##
+## file: drivers/misc/Kconfig
+##
+CONFIG_CS5535_MFGPT=m
+CONFIG_CS5535_CLOCK_EVENT_SRC=m
+CONFIG_PCH_PHUB=m
+
+##
+## file: drivers/mtd/maps/Kconfig
+##
+CONFIG_MTD_SCx200_DOCFLASH=m
+CONFIG_MTD_PCMCIA=m
+# CONFIG_MTD_PCMCIA_ANONYMOUS is not set
+
+##
+## file: drivers/net/arcnet/Kconfig
+##
+CONFIG_ARCNET_COM20020_ISA=m
+
+##
+## file: drivers/net/can/Kconfig
+##
+CONFIG_PCH_CAN=m
+
+##
+## file: drivers/net/can/cc770/Kconfig
+##
+CONFIG_CAN_CC770=m
+CONFIG_CAN_CC770_ISA=m
+# CONFIG_CAN_CC770_PLATFORM is not set
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_EL3=m
+CONFIG_3C515=m
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_NET_VENDOR_8390=y
+CONFIG_NE2000=m
+CONFIG_ULTRA=m
+CONFIG_WD80x3=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+CONFIG_NET_VENDOR_AMD=y
+CONFIG_LANCE=m
+CONFIG_NI65=m
+
+##
+## file: drivers/net/ethernet/cirrus/Kconfig
+##
+CONFIG_NET_VENDOR_CIRRUS=y
+CONFIG_CS89x0=m
+
+##
+## file: drivers/net/ethernet/dec/Kconfig
+##
+CONFIG_NET_VENDOR_DEC=y
+
+##
+## file: drivers/net/ethernet/fujitsu/Kconfig
+##
+CONFIG_NET_VENDOR_FUJITSU=y
+
+##
+## file: drivers/net/ethernet/oki-semi/pch_gbe/Kconfig
+##
+CONFIG_PCH_GBE=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_NET_VENDOR_SMSC=y
+CONFIG_SMC9194=m
+
+##
+## file: drivers/net/wan/Kconfig
+##
+CONFIG_HOSTESS_SV11=m
+CONFIG_COSA=m
+CONFIG_SEALEVEL_4021=m
+CONFIG_N2=m
+CONFIG_C101=m
+CONFIG_SDLA=m
+
+##
+## file: drivers/net/wireless/intel/ipw2x00/Kconfig
+##
+CONFIG_IPW2100=m
+CONFIG_IPW2100_MONITOR=y
+# CONFIG_IPW2100_DEBUG is not set
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+CONFIG_HOTPLUG_PCI_COMPAQ=m
+CONFIG_HOTPLUG_PCI_IBM=m
+
+##
+## file: drivers/pcmcia/Kconfig
+##
+CONFIG_I82365=m
+
+##
+## file: drivers/platform/x86/Kconfig
+##
+CONFIG_TC1100_WMI=m
+
+##
+## file: drivers/pnp/isapnp/Kconfig
+##
+CONFIG_ISAPNP=y
+
+##
+## file: drivers/pnp/pnpbios/Kconfig
+##
+CONFIG_PNPBIOS=y
+# CONFIG_PNPBIOS_PROC_FS is not set
+
+##
+## file: drivers/scsi/Kconfig
+##
+# CONFIG_SCSI_GENERIC_NCR5380 is not set
+# CONFIG_SCSI_INIA100 is not set
+CONFIG_SCSI_QLOGIC_FAS=m
+CONFIG_SCSI_NSP32=m
+
+##
+## file: drivers/scsi/pcmcia/Kconfig
+##
+CONFIG_PCMCIA_NINJA_SCSI=m
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI_TOPCLIFF_PCH=m
+
+##
+## file: drivers/staging/comedi/Kconfig
+##
+CONFIG_COMEDI_ISA_DRIVERS=y
+CONFIG_COMEDI_PCL711=m
+CONFIG_COMEDI_PCL724=m
+CONFIG_COMEDI_PCL726=m
+CONFIG_COMEDI_PCL730=m
+CONFIG_COMEDI_PCL812=m
+CONFIG_COMEDI_PCL816=m
+CONFIG_COMEDI_PCL818=m
+CONFIG_COMEDI_PCM3724=m
+CONFIG_COMEDI_AMPLC_DIO200_ISA=m
+CONFIG_COMEDI_AMPLC_PC236_ISA=m
+CONFIG_COMEDI_AMPLC_PC263_ISA=m
+CONFIG_COMEDI_RTI800=m
+CONFIG_COMEDI_RTI802=m
+CONFIG_COMEDI_DAC02=m
+CONFIG_COMEDI_DAS16M1=m
+CONFIG_COMEDI_DAS08_ISA=m
+CONFIG_COMEDI_DAS16=m
+CONFIG_COMEDI_DAS800=m
+CONFIG_COMEDI_DAS1800=m
+CONFIG_COMEDI_DAS6402=m
+CONFIG_COMEDI_DT2801=m
+CONFIG_COMEDI_DT2811=m
+CONFIG_COMEDI_DT2814=m
+CONFIG_COMEDI_DT2815=m
+CONFIG_COMEDI_DT2817=m
+CONFIG_COMEDI_DT282X=m
+CONFIG_COMEDI_DMM32AT=m
+CONFIG_COMEDI_FL512=m
+CONFIG_COMEDI_AIO_AIO12_8=m
+CONFIG_COMEDI_AIO_IIRO_16=m
+CONFIG_COMEDI_C6XDIGIO=m
+CONFIG_COMEDI_MPC624=m
+CONFIG_COMEDI_ADQ12B=m
+CONFIG_COMEDI_NI_AT_A2150=m
+CONFIG_COMEDI_NI_AT_AO=m
+CONFIG_COMEDI_NI_ATMIO=m
+CONFIG_COMEDI_NI_ATMIO16D=m
+CONFIG_COMEDI_NI_LABPC_ISA=m
+CONFIG_COMEDI_PCMAD=m
+CONFIG_COMEDI_PCMDA12=m
+CONFIG_COMEDI_PCMMIO=m
+CONFIG_COMEDI_PCMUIO=m
+CONFIG_COMEDI_MULTIQ3=m
+
+##
+## file: drivers/staging/olpc_dcon/Kconfig
+##
+CONFIG_FB_OLPC_DCON=m
+
+##
+## file: drivers/tty/Kconfig
+##
+# CONFIG_ISI is not set
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_PCH_UART=m
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250_EXAR_ST16C554=m
+
+##
+## file: drivers/usb/gadget/udc/Kconfig
+##
+CONFIG_USB_AMD5536UDC=m
+
+##
+## file: drivers/video/console/Kconfig
+##
+CONFIG_MDA_CONSOLE=m
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_I810=m
+CONFIG_FB_I810_GTF=y
+CONFIG_FB_I810_I2C=y
+CONFIG_FB_MATROX_G=y
+CONFIG_FB_MATROX_MAVEN=m
+CONFIG_FB_ATY_GENERIC_LCD=y
+CONFIG_FB_SAVAGE_I2C=y
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_SCx200_WDT=m
+CONFIG_SBC8360_WDT=m
+CONFIG_SBC7240_WDT=m
+CONFIG_PCWATCHDOG=m
+CONFIG_MIXCOMWD=m
+CONFIG_WDT=m
+
+##
+## file: kernel/irq/Kconfig
+##
+# CONFIG_SPARSE_IRQ is not set
+
+##
+## file: lib/Kconfig.debug
+##
+CONFIG_FRAME_WARN=1024
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+CONFIG_FLATMEM_MANUAL=y
+# CONFIG_DISCONTIGMEM_MANUAL is not set
+# CONFIG_SPARSEMEM_MANUAL is not set
+## end choice
+
+##
+## file: security/Kconfig
+##
+CONFIG_LSM_MMAP_MIN_ADDR=0
+
+##
+## file: sound/isa/Kconfig
+##
+CONFIG_SND_ISA=y
+CONFIG_SND_ADLIB=m
+CONFIG_SND_AD1816A=m
+CONFIG_SND_AD1848=m
+CONFIG_SND_ALS100=m
+CONFIG_SND_AZT1605=m
+CONFIG_SND_AZT2316=m
+CONFIG_SND_AZT2320=m
+CONFIG_SND_CMI8330=m
+CONFIG_SND_CS4231=m
+CONFIG_SND_CS4236=m
+CONFIG_SND_ES1688=m
+CONFIG_SND_ES18XX=m
+CONFIG_SND_SC6000=m
+CONFIG_SND_GUSCLASSIC=m
+CONFIG_SND_GUSEXTREME=m
+CONFIG_SND_GUSMAX=m
+CONFIG_SND_INTERWAVE=m
+CONFIG_SND_INTERWAVE_STB=m
+CONFIG_SND_JAZZ16=m
+CONFIG_SND_OPL3SA2=m
+CONFIG_SND_OPTI92X_AD1848=m
+CONFIG_SND_OPTI92X_CS4231=m
+CONFIG_SND_OPTI93X=m
+CONFIG_SND_MIRO=m
+CONFIG_SND_SB8=m
+CONFIG_SND_SB16=m
+CONFIG_SND_SBAWE=m
+CONFIG_SND_SB16_CSP=y
+CONFIG_SND_SSCAPE=m
+CONFIG_SND_WAVEFRONT=m
+CONFIG_SND_MSND_PINNACLE=m
+CONFIG_SND_MSND_CLASSIC=m
+
+##
+## file: sound/pci/Kconfig
+##
+CONFIG_SND_CS5530=m
+CONFIG_SND_CS5535AUDIO=m
+CONFIG_SND_SIS7019=m
+
diff --git a/debian/config/i386/config.686 b/debian/config/i386/config.686
new file mode 100644
index 000000000..80b48b5fe
--- /dev/null
+++ b/debian/config/i386/config.686
@@ -0,0 +1,83 @@
+##
+## file: arch/x86/Kconfig
+##
+CONFIG_X86_32_IRIS=m
+# CONFIG_MATH_EMULATION is not set
+CONFIG_OLPC=y
+CONFIG_OLPC_XO1_PM=y
+CONFIG_OLPC_XO1_RTC=y
+CONFIG_OLPC_XO1_SCI=y
+CONFIG_OLPC_XO15_SCI=y
+CONFIG_ALIX=y
+CONFIG_NET5501=y
+CONFIG_GEOS=y
+
+##
+## file: arch/x86/Kconfig.cpu
+##
+## choice: Processor family
+# CONFIG_M486 is not set
+#. We want to support Geode LX and similar AMD family 5 CPUs as well as
+#. family 6+ CPUs
+CONFIG_MGEODE_LX=y
+## end choice
+
+##
+## file: drivers/eisa/Kconfig
+##
+# CONFIG_EISA is not set
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C_STUB=m
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+# CONFIG_I2C_ELEKTOR is not set
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_KEYBOARD_GPIO_POLLED=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_MOUSE_PS2_OLPC=y
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set
+
+##
+## file: drivers/platform/x86/Kconfig
+##
+CONFIG_XO15_EBOOK=m
+CONFIG_XO1_RFKILL=m
+
+##
+## file: drivers/power/supply/Kconfig
+##
+CONFIG_BATTERY_OLPC=m
+
+##
+## file: drivers/tty/Kconfig
+##
+# CONFIG_MOXA_INTELLIO is not set
+
+##
+## file: drivers/video/fbdev/geode/Kconfig
+##
+CONFIG_FB_GEODE=y
+CONFIG_FB_GEODE_LX=m
+CONFIG_FB_GEODE_GX=m
+CONFIG_FB_GEODE_GX1=m
+
+##
+## file: lib/Kconfig.debug
+##
+# CONFIG_DEBUG_HIGHMEM is not set
+
diff --git a/debian/config/i386/config.686-pae b/debian/config/i386/config.686-pae
new file mode 100644
index 000000000..64db14c27
--- /dev/null
+++ b/debian/config/i386/config.686-pae
@@ -0,0 +1,53 @@
+##
+## file: arch/x86/Kconfig
+##
+# CONFIG_X86_32_IRIS is not set
+## choice: High Memory Support
+# CONFIG_NOHIGHMEM is not set
+# CONFIG_HIGHMEM4G is not set
+CONFIG_HIGHMEM64G=y
+## end choice
+CONFIG_X86_PAE=y
+# CONFIG_MATH_EMULATION is not set
+# CONFIG_ALIX is not set
+# CONFIG_NET5501 is not set
+# CONFIG_GEOS is not set
+
+##
+## file: arch/x86/Kconfig.cpu
+##
+## choice: Processor family
+# CONFIG_M486 is not set
+CONFIG_M686=y
+## end choice
+
+##
+## file: drivers/eisa/Kconfig
+##
+# CONFIG_EISA is not set
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C_STUB=m
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+# CONFIG_I2C_ELEKTOR is not set
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not set
+
+##
+## file: drivers/tty/Kconfig
+##
+# CONFIG_MOXA_INTELLIO is not set
+
+##
+## file: lib/Kconfig.debug
+##
+# CONFIG_DEBUG_HIGHMEM is not set
+
diff --git a/debian/config/i386/defines b/debian/config/i386/defines
new file mode 100644
index 000000000..f86e91d61
--- /dev/null
+++ b/debian/config/i386/defines
@@ -0,0 +1,33 @@
+[base]
+featuresets:
+ none
+ rt
+kernel-arch: x86
+
+[build]
+image-file: arch/x86/boot/bzImage
+signed-code: true
+vdso: true
+
+[description]
+part-long-pae: This kernel requires PAE (Physical Address Extension).
+ This feature is supported by the Intel Pentium Pro/II/III/4/4M/D, Xeon,
+ Core and Atom; AMD Geode NX, Athlon (K7), Duron, Opteron, Sempron,
+ Turion or Phenom; Transmeta Efficeon; VIA C7; and some other processors.
+
+[image]
+bootloaders: grub-pc grub-efi-ia32 extlinux
+install-stem: vmlinuz
+breaks: xserver-xorg-input-vmmouse (<< 1:13.0.99)
+
+[relations]
+headers%gcc-10: linux-compiler-gcc-10-x86
+
+[686_description]
+hardware: older PCs
+hardware-long: PCs with one or more processors not supporting PAE
+
+[686-pae_description]
+hardware: modern PCs
+hardware-long: PCs with one or more processors supporting PAE
+parts: pae
diff --git a/debian/config/i386/none/defines b/debian/config/i386/none/defines
new file mode 100644
index 000000000..2ae340898
--- /dev/null
+++ b/debian/config/i386/none/defines
@@ -0,0 +1,5 @@
+[base]
+flavours:
+ 686
+ 686-pae
+default-flavour: 686-pae
diff --git a/debian/config/i386/rt/defines b/debian/config/i386/rt/defines
new file mode 100644
index 000000000..358e12d55
--- /dev/null
+++ b/debian/config/i386/rt/defines
@@ -0,0 +1,3 @@
+[base]
+flavours:
+ 686-pae
diff --git a/debian/config/ia64/config b/debian/config/ia64/config
new file mode 100644
index 000000000..6313fc24c
--- /dev/null
+++ b/debian/config/ia64/config
@@ -0,0 +1,769 @@
+##
+## file: arch/ia64/Kconfig
+##
+CONFIG_HOTPLUG_CPU=y
+CONFIG_SCHED_SMT=y
+CONFIG_PERMIT_BSP_REMOVE=y
+CONFIG_NODES_SHIFT=8
+CONFIG_IA64_MCA_RECOVERY=m
+CONFIG_IA64_PALINFO=m
+CONFIG_KEXEC=y
+CONFIG_CRASH_DUMP=y
+CONFIG_MSPEC=m
+
+##
+## file: arch/ia64/Kconfig.debug
+##
+## choice: Physical memory granularity
+CONFIG_IA64_GRANULE_16MB=y
+# CONFIG_IA64_GRANULE_64MB is not set
+## end choice
+CONFIG_IA64_PRINT_HAZARDS=y
+# CONFIG_DISABLE_VHPT is not set
+# CONFIG_IA64_DEBUG_CMPXCHG is not set
+# CONFIG_IA64_DEBUG_IRQ is not set
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_ACORN_PARTITION=y
+# CONFIG_ACORN_PARTITION_CUMANA is not set
+CONFIG_ACORN_PARTITION_EESOX=y
+CONFIG_ACORN_PARTITION_ICS=y
+CONFIG_ACORN_PARTITION_ADFS=y
+CONFIG_ACORN_PARTITION_POWERTEC=y
+CONFIG_ACORN_PARTITION_RISCIX=y
+CONFIG_OSF_PARTITION=y
+CONFIG_AMIGA_PARTITION=y
+CONFIG_ATARI_PARTITION=y
+CONFIG_MAC_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+CONFIG_SOLARIS_X86_PARTITION=y
+CONFIG_UNIXWARE_DISKLABEL=y
+CONFIG_LDM_PARTITION=y
+CONFIG_LDM_DEBUG=y
+CONFIG_SGI_PARTITION=y
+CONFIG_ULTRIX_PARTITION=y
+CONFIG_SUN_PARTITION=y
+
+##
+## file: drivers/acpi/Kconfig
+##
+CONFIG_ACPI_DOCK=y
+CONFIG_ACPI_PCI_SLOT=y
+CONFIG_ACPI_CONTAINER=y
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_ALI=m
+CONFIG_PATA_AMD=m
+CONFIG_PATA_CMD64X=m
+CONFIG_PATA_CS5520=m
+CONFIG_PATA_EFAR=m
+CONFIG_PATA_HPT366=m
+CONFIG_PATA_HPT37X=m
+CONFIG_PATA_NETCELL=m
+CONFIG_PATA_NS87415=m
+CONFIG_PATA_OLDPIIX=m
+CONFIG_PATA_PDC2027X=m
+CONFIG_PATA_PDC_OLD=m
+CONFIG_PATA_SC1200=m
+CONFIG_PATA_SERVERWORKS=m
+CONFIG_PATA_SIL680=m
+CONFIG_PATA_TRIFLEX=m
+CONFIG_PATA_VIA=m
+CONFIG_PATA_MPIIX=m
+CONFIG_PATA_NS87410=m
+CONFIG_PATA_OPTI=m
+CONFIG_PATA_LEGACY=m
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV_UMEM=m
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+# CONFIG_CDROM_PKTCDVD_WCACHE is not set
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_PRINTER=m
+# CONFIG_LP_CONSOLE is not set
+CONFIG_PPDEV=m
+CONFIG_DTLK=m
+CONFIG_APPLICOM=m
+CONFIG_RAW_DRIVER=m
+CONFIG_MAX_RAW_DEVS=256
+CONFIG_HPET=y
+# CONFIG_HPET_MMAP is not set
+
+##
+## file: drivers/char/agp/Kconfig
+##
+#. Workaround
+CONFIG_AGP=y
+#. Workaround
+CONFIG_AGP_I460=y
+#. Workaround
+CONFIG_AGP_HP_ZX1=y
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+CONFIG_IPMI_HANDLER=m
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+
+##
+## file: drivers/cpufreq/Kconfig
+##
+CONFIG_IA64_ACPI_CPUFREQ=m
+
+##
+## file: drivers/firmware/Kconfig
+##
+CONFIG_DMIID=y
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=m
+CONFIG_DRM_RADEON=m
+
+##
+## file: drivers/gpu/drm/i2c/Kconfig
+##
+CONFIG_DRM_I2C_CH7006=m
+CONFIG_DRM_I2C_SIL164=m
+
+##
+## file: drivers/gpu/drm/nouveau/Kconfig
+##
+CONFIG_DRM_NOUVEAU=m
+# CONFIG_DRM_NOUVEAU_BACKLIGHT is not set
+
+##
+## file: drivers/hid/usbhid/Kconfig
+##
+CONFIG_USB_HID=m
+# CONFIG_HID_PID is not set
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_SENSORS_ADM1021=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1031=m
+CONFIG_SENSORS_ASB100=m
+CONFIG_SENSORS_DS1621=m
+CONFIG_SENSORS_F71805F=m
+CONFIG_SENSORS_GL518SM=m
+CONFIG_SENSORS_GL520SM=m
+CONFIG_SENSORS_IT87=m
+CONFIG_SENSORS_MAX1619=m
+CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_PC87360=m
+CONFIG_SENSORS_PCF8591=m
+CONFIG_SENSORS_SIS5595=m
+CONFIG_SENSORS_SMSC47M1=m
+CONFIG_SENSORS_SMSC47B397=m
+CONFIG_SENSORS_VIA686A=m
+CONFIG_SENSORS_W83781D=m
+CONFIG_SENSORS_W83L785TS=m
+CONFIG_SENSORS_W83627HF=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=m
+CONFIG_I2C_CHARDEV=m
+CONFIG_I2C_STUB=m
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_ALI1535=m
+CONFIG_I2C_ALI1563=m
+CONFIG_I2C_ALI15X3=m
+CONFIG_I2C_AMD756=m
+CONFIG_I2C_AMD756_S4882=m
+CONFIG_I2C_AMD8111=m
+CONFIG_I2C_I801=m
+CONFIG_I2C_PIIX4=m
+CONFIG_I2C_NFORCE2=m
+CONFIG_I2C_SIS5595=m
+CONFIG_I2C_SIS630=m
+CONFIG_I2C_SIS96X=m
+CONFIG_I2C_VIA=m
+CONFIG_I2C_VIAPRO=m
+CONFIG_I2C_PARPORT=m
+CONFIG_I2C_PCA_ISA=m
+CONFIG_SCx200_ACB=m
+
+##
+## file: drivers/ide/Kconfig
+##
+CONFIG_IDE=m
+CONFIG_IDE_GD=m
+# CONFIG_BLK_DEV_IDECS is not set
+CONFIG_BLK_DEV_IDECD=m
+CONFIG_BLK_DEV_IDETAPE=m
+# CONFIG_IDE_GENERIC is not set
+# CONFIG_BLK_DEV_IDEPNP is not set
+# CONFIG_BLK_DEV_GENERIC is not set
+# CONFIG_BLK_DEV_OPTI621 is not set
+# CONFIG_BLK_DEV_AEC62XX is not set
+# CONFIG_BLK_DEV_ALI15X3 is not set
+# CONFIG_BLK_DEV_AMD74XX is not set
+# CONFIG_BLK_DEV_CMD64X is not set
+# CONFIG_BLK_DEV_TRIFLEX is not set
+# CONFIG_BLK_DEV_CS5520 is not set
+# CONFIG_BLK_DEV_HPT366 is not set
+# CONFIG_BLK_DEV_SC1200 is not set
+# CONFIG_BLK_DEV_PIIX is not set
+# CONFIG_BLK_DEV_NS87415 is not set
+# CONFIG_BLK_DEV_PDC202XX_OLD is not set
+# CONFIG_BLK_DEV_PDC202XX_NEW is not set
+# CONFIG_BLK_DEV_SVWKS is not set
+# CONFIG_BLK_DEV_SIIMAGE is not set
+# CONFIG_BLK_DEV_SLC90E66 is not set
+CONFIG_BLK_DEV_TRM290=m
+# CONFIG_BLK_DEV_VIA82CXXX is not set
+
+##
+## file: drivers/input/gameport/Kconfig
+##
+CONFIG_GAMEPORT=m
+CONFIG_GAMEPORT_NS558=m
+CONFIG_GAMEPORT_L4=m
+CONFIG_GAMEPORT_EMU10K1=m
+CONFIG_GAMEPORT_FM801=m
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+CONFIG_INPUT_JOYSTICK=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ATKBD=y
+CONFIG_KEYBOARD_LKKBD=m
+CONFIG_KEYBOARD_NEWTON=m
+CONFIG_KEYBOARD_SUNKBD=m
+CONFIG_KEYBOARD_XTKBD=m
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_UINPUT=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_SERIAL=m
+CONFIG_MOUSE_VSXXXAA=m
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO=y
+CONFIG_SERIO_I8042=y
+CONFIG_SERIO_SERPORT=m
+CONFIG_SERIO_PARKBD=m
+CONFIG_SERIO_PCIPS2=m
+CONFIG_SERIO_LIBPS2=y
+CONFIG_SERIO_RAW=m
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+# CONFIG_INPUT_TOUCHSCREEN is not set
+
+##
+## file: drivers/isdn/Kconfig
+##
+CONFIG_ISDN=y
+
+##
+## file: drivers/media/radio/Kconfig
+##
+CONFIG_USB_DSBR=m
+CONFIG_RADIO_MAXIRADIO=m
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=m
+
+##
+## file: drivers/mmc/core/Kconfig
+##
+CONFIG_MMC_BLOCK=m
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+# CONFIG_MMC_DEBUG is not set
+
+##
+## file: drivers/net/Kconfig
+##
+CONFIG_NET_FC=y
+CONFIG_NET_SB1000=m
+
+##
+## file: drivers/net/arcnet/Kconfig
+##
+CONFIG_ARCNET=m
+CONFIG_ARCNET_1201=m
+CONFIG_ARCNET_1051=m
+CONFIG_ARCNET_RAW=m
+CONFIG_ARCNET_CAP=m
+CONFIG_ARCNET_COM90xx=m
+CONFIG_ARCNET_COM90xxIO=m
+CONFIG_ARCNET_RIM_I=m
+CONFIG_ARCNET_COM20020=m
+CONFIG_ARCNET_COM20020_PCI=m
+CONFIG_ARCNET_COM20020_CS=m
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+CONFIG_FEALNX=m
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_PCMCIA_3C574=m
+CONFIG_PCMCIA_3C589=m
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_PCMCIA_AXNET=m
+CONFIG_NE2K_PCI=m
+CONFIG_PCMCIA_PCNET=m
+
+##
+## file: drivers/net/ethernet/adaptec/Kconfig
+##
+CONFIG_ADAPTEC_STARFIRE=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+CONFIG_AMD8111_ETH=m
+CONFIG_PCMCIA_NMCLAN=m
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+CONFIG_B44=m
+
+##
+## file: drivers/net/ethernet/dec/tulip/Kconfig
+##
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+CONFIG_PCMCIA_XIRCOM=m
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+CONFIG_SUNDANCE=m
+# CONFIG_SUNDANCE_MMIO is not set
+
+##
+## file: drivers/net/ethernet/fujitsu/Kconfig
+##
+CONFIG_PCMCIA_FMVJ18X=m
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_E100=m
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_NATSEMI=m
+
+##
+## file: drivers/net/ethernet/nvidia/Kconfig
+##
+CONFIG_FORCEDETH=m
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+# CONFIG_8139TOO_PIO is not set
+# CONFIG_8139TOO_TUNE_TWISTER is not set
+# CONFIG_8139TOO_8129 is not set
+# CONFIG_8139_OLD_RX_RESET is not set
+
+##
+## file: drivers/net/ethernet/sis/Kconfig
+##
+CONFIG_SIS900=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_PCMCIA_SMC91C92=m
+CONFIG_EPIC100=m
+
+##
+## file: drivers/net/ethernet/via/Kconfig
+##
+CONFIG_VIA_RHINE=m
+# CONFIG_VIA_RHINE_MMIO is not set
+
+##
+## file: drivers/net/ethernet/xircom/Kconfig
+##
+CONFIG_PCMCIA_XIRC2PS=m
+
+##
+## file: drivers/net/fddi/Kconfig
+##
+CONFIG_FDDI=y
+CONFIG_SKFP=m
+
+##
+## file: drivers/net/hippi/Kconfig
+##
+# CONFIG_HIPPI is not set
+
+##
+## file: drivers/net/plip/Kconfig
+##
+CONFIG_PLIP=m
+
+##
+## file: drivers/net/wan/Kconfig
+##
+CONFIG_WAN=y
+CONFIG_LANMEDIA=m
+CONFIG_PCI200SYN=m
+CONFIG_WANXL=m
+CONFIG_FARSYNC=m
+CONFIG_DLCI=m
+CONFIG_DLCI_MAX=8
+
+##
+## file: drivers/net/wireless/Kconfig
+##
+CONFIG_PCMCIA_RAYCS=m
+CONFIG_PCMCIA_WL3501=m
+
+##
+## file: drivers/net/wireless/atmel/Kconfig
+##
+CONFIG_ATMEL=m
+CONFIG_PCI_ATMEL=m
+CONFIG_PCMCIA_ATMEL=m
+
+##
+## file: drivers/net/wireless/cisco/Kconfig
+##
+CONFIG_AIRO_CS=m
+
+##
+## file: drivers/net/wireless/intel/ipw2x00/Kconfig
+##
+CONFIG_IPW2100=m
+CONFIG_IPW2100_MONITOR=y
+
+##
+## file: drivers/net/wireless/intersil/orinoco/Kconfig
+##
+CONFIG_HERMES=m
+CONFIG_PLX_HERMES=m
+CONFIG_TMD_HERMES=m
+CONFIG_PCI_HERMES=m
+CONFIG_PCMCIA_HERMES=m
+CONFIG_PCMCIA_SPECTRUM=m
+
+##
+## file: drivers/net/wireless/marvell/mwifiex/Kconfig
+##
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+CONFIG_MWIFIEX_PCIE=m
+
+##
+## file: drivers/net/wireless/zydas/Kconfig
+##
+CONFIG_USB_ZD1201=m
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+CONFIG_HOTPLUG_PCI=y
+
+##
+## file: drivers/pcmcia/Kconfig
+##
+CONFIG_PCCARD=m
+CONFIG_PCMCIA=m
+CONFIG_CARDBUS=y
+CONFIG_YENTA=m
+CONFIG_PD6729=m
+CONFIG_I82092=m
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_EFI=y
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI_ARCMSR=m
+CONFIG_SCSI_MYRB=m
+CONFIG_SCSI_MYRS=m
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_IPS=m
+CONFIG_SCSI_INITIO=m
+CONFIG_SCSI_INIA100=m
+CONFIG_SCSI_SYM53C8XX_2=m
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+CONFIG_SCSI_IPR=m
+CONFIG_SCSI_IPR_TRACE=y
+CONFIG_SCSI_IPR_DUMP=y
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_AM53C974=m
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+
+##
+## file: drivers/scsi/pcmcia/Kconfig
+##
+CONFIG_PCMCIA_QLOGIC=m
+CONFIG_PCMCIA_SYM53C500=m
+
+##
+## file: drivers/staging/wlan-ng/Kconfig
+##
+# CONFIG_PRISM2_USB is not set
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+CONFIG_SERIAL_NONSTANDARD=y
+CONFIG_ROCKETPORT=m
+# CONFIG_CYCLADES is not set
+CONFIG_MOXA_INTELLIO=m
+# CONFIG_MOXA_SMARTIO is not set
+CONFIG_SYNCLINKMP=m
+# CONFIG_ISI is not set
+CONFIG_N_HDLC=m
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_JSM=m
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_CS=m
+CONFIG_SERIAL_8250_NR_UARTS=32
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+# CONFIG_SERIAL_8250_DETECT_IRQ is not set
+CONFIG_SERIAL_8250_RSA=y
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=m
+CONFIG_USB_USS720=m
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_UHCI_HCD=m
+CONFIG_USB_SL811_HCD=m
+CONFIG_USB_SL811_CS=m
+
+##
+## file: drivers/video/console/Kconfig
+##
+CONFIG_VGA_CONSOLE=y
+CONFIG_FRAMEBUFFER_CONSOLE=y
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB=y
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+CONFIG_FB_CIRRUS=m
+CONFIG_FB_PM2=m
+# CONFIG_FB_PM2_FIFO_DISCONNECT is not set
+CONFIG_FB_CYBER2000=m
+CONFIG_FB_ASILIANT=y
+# CONFIG_FB_IMSTT is not set
+CONFIG_FB_S1D13XXX=m
+CONFIG_FB_MATROX=m
+CONFIG_FB_MATROX_MILLENIUM=y
+CONFIG_FB_MATROX_MYSTIQUE=y
+CONFIG_FB_MATROX_G=y
+CONFIG_FB_MATROX_I2C=m
+CONFIG_FB_MATROX_MAVEN=m
+CONFIG_FB_RADEON=m
+CONFIG_FB_RADEON_I2C=y
+# CONFIG_FB_RADEON_DEBUG is not set
+CONFIG_FB_ATY128=m
+CONFIG_FB_ATY=m
+CONFIG_FB_ATY_CT=y
+CONFIG_FB_ATY_GENERIC_LCD=y
+CONFIG_FB_ATY_GX=y
+CONFIG_FB_SAVAGE=m
+CONFIG_FB_SAVAGE_I2C=y
+# CONFIG_FB_SAVAGE_ACCEL is not set
+CONFIG_FB_SIS=m
+CONFIG_FB_SIS_300=y
+CONFIG_FB_SIS_315=y
+CONFIG_FB_NEOMAGIC=m
+CONFIG_FB_KYRO=m
+CONFIG_FB_VOODOO1=m
+CONFIG_FB_TRIDENT=m
+# CONFIG_FB_VIRTUAL is not set
+
+##
+## file: fs/pstore/Kconfig
+##
+CONFIG_PSTORE=y
+
+##
+## file: lib/Kconfig.debug
+##
+#. Broken here (#905461)
+# CONFIG_SCHED_STACK_END_CHECK is not set
+
+##
+## file: lib/xz/Kconfig
+##
+CONFIG_XZ_DEC_IA64=y
+
+##
+## file: net/ipv6/Kconfig
+##
+CONFIG_IPV6=y
+
+##
+## file: security/Kconfig
+##
+CONFIG_LSM_MMAP_MIN_ADDR=65536
+
+##
+## file: sound/drivers/Kconfig
+##
+CONFIG_SND_DUMMY=m
+CONFIG_SND_VIRMIDI=m
+CONFIG_SND_MTPAV=m
+CONFIG_SND_SERIAL_U16550=m
+CONFIG_SND_MPU401=m
+
+##
+## file: sound/pci/Kconfig
+##
+CONFIG_SND_ALS4000=m
+CONFIG_SND_ALI5451=m
+CONFIG_SND_ATIIXP=m
+CONFIG_SND_ATIIXP_MODEM=m
+CONFIG_SND_AU8810=m
+CONFIG_SND_AU8820=m
+CONFIG_SND_AU8830=m
+CONFIG_SND_AZT3328=m
+CONFIG_SND_BT87X=m
+# CONFIG_SND_BT87X_OVERCLOCK is not set
+CONFIG_SND_CA0106=m
+CONFIG_SND_CMIPCI=m
+CONFIG_SND_CS4281=m
+CONFIG_SND_CS46XX=m
+CONFIG_SND_CS46XX_NEW_DSP=y
+CONFIG_SND_EMU10K1=m
+CONFIG_SND_EMU10K1X=m
+CONFIG_SND_ENS1370=m
+CONFIG_SND_ENS1371=m
+CONFIG_SND_ES1938=m
+CONFIG_SND_ES1968=m
+CONFIG_SND_FM801=m
+CONFIG_SND_FM801_TEA575X_BOOL=y
+CONFIG_SND_HDSP=m
+CONFIG_SND_ICE1712=m
+CONFIG_SND_ICE1724=m
+CONFIG_SND_INTEL8X0=m
+CONFIG_SND_INTEL8X0M=m
+CONFIG_SND_KORG1212=m
+CONFIG_SND_MAESTRO3=m
+CONFIG_SND_MIXART=m
+CONFIG_SND_NM256=m
+CONFIG_SND_RME32=m
+CONFIG_SND_RME96=m
+CONFIG_SND_RME9652=m
+CONFIG_SND_SONICVIBES=m
+CONFIG_SND_TRIDENT=m
+CONFIG_SND_VIA82XX=m
+CONFIG_SND_VIA82XX_MODEM=m
+CONFIG_SND_VX222=m
+CONFIG_SND_YMFPCI=m
+
+##
+## file: sound/pci/hda/Kconfig
+##
+CONFIG_SND_HDA_INTEL=m
+
diff --git a/debian/config/ia64/config.itanium b/debian/config/ia64/config.itanium
new file mode 100644
index 000000000..e683b846b
--- /dev/null
+++ b/debian/config/ia64/config.itanium
@@ -0,0 +1,11 @@
+##
+## file: arch/ia64/Kconfig
+##
+## choice: Processor type
+CONFIG_ITANIUM=y
+# CONFIG_MCKINLEY is not set
+## end choice
+CONFIG_SMP=y
+CONFIG_NR_CPUS=64
+# CONFIG_SCHED_SMT is not set
+
diff --git a/debian/config/ia64/config.mckinley b/debian/config/ia64/config.mckinley
new file mode 100644
index 000000000..6da85354e
--- /dev/null
+++ b/debian/config/ia64/config.mckinley
@@ -0,0 +1,11 @@
+##
+## file: arch/ia64/Kconfig
+##
+## choice: Processor type
+# CONFIG_ITANIUM is not set
+CONFIG_MCKINLEY=y
+## end choice
+CONFIG_SMP=y
+CONFIG_NR_CPUS=64
+# CONFIG_SCHED_SMT is not set
+
diff --git a/debian/config/ia64/defines b/debian/config/ia64/defines
new file mode 100644
index 000000000..70b1aca25
--- /dev/null
+++ b/debian/config/ia64/defines
@@ -0,0 +1,21 @@
+[base]
+flavours:
+ itanium
+ mckinley
+default-flavour: itanium
+kernel-arch: ia64
+
+[build]
+image-file: vmlinux.gz
+
+[image]
+bootloaders: grub-efi-ia64
+install-stem: vmlinuz
+
+[itanium_description]
+hardware: Itanium (Merced)
+hardware-long: systems with original Itanium (Merced) processors
+
+[mckinley_description]
+hardware: Itanium 2+
+hardware-long: systems with Itanium 2 or 9300/9500/9700-series processors
diff --git a/debian/config/kernelarch-arm/config b/debian/config/kernelarch-arm/config
new file mode 100644
index 000000000..66bcc59a5
--- /dev/null
+++ b/debian/config/kernelarch-arm/config
@@ -0,0 +1,137 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_SECCOMP=y
+
+##
+## file: arch/arm/Kconfig
+##
+CONFIG_MMU=y
+CONFIG_AEABI=y
+# CONFIG_OABI_COMPAT is not set
+CONFIG_CPU_SW_DOMAIN_PAN=y
+CONFIG_KEXEC=y
+CONFIG_CRASH_DUMP=y
+
+##
+## file: arch/arm/crypto/Kconfig
+##
+CONFIG_CRYPTO_SHA1_ARM=m
+CONFIG_CRYPTO_SHA256_ARM=m
+CONFIG_CRYPTO_SHA512_ARM=m
+CONFIG_CRYPTO_AES_ARM=m
+CONFIG_CRYPTO_POLY1305_ARM=m
+
+##
+## file: arch/arm/Kconfig.debug
+##
+CONFIG_DEBUG_WX=y
+CONFIG_DEBUG_LL=y
+CONFIG_EARLY_PRINTK=y
+
+##
+## file: arch/arm/mm/Kconfig
+##
+#. Support Thumb user binaries
+CONFIG_ARM_THUMB=y
+
+##
+## file: drivers/gpu/drm/vc4/Kconfig
+##
+CONFIG_DRM_VC4=m
+CONFIG_DRM_VC4_HDMI_CEC=y
+
+##
+## file: drivers/iio/humidity/Kconfig
+##
+CONFIG_DHT11=m
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_UINPUT=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_APPLETOUCH=m
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+# CONFIG_TOUCHSCREEN_EETI is not set
+
+##
+## file: drivers/mtd/maps/Kconfig
+##
+CONFIG_MTD_PHYSMAP=y
+
+##
+## file: drivers/net/wireless/intel/ipw2x00/Kconfig
+##
+# CONFIG_IPW2100 is not set
+
+##
+## file: drivers/parport/Kconfig
+##
+#. Causes lockups on ARM (see #588164)
+# CONFIG_PARPORT_PC is not set
+
+##
+## file: drivers/pci/Kconfig
+##
+# CONFIG_PCI_IOV is not set
+
+##
+## file: drivers/scsi/Kconfig
+##
+# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
+# CONFIG_SCSI_3W_9XXX is not set
+# CONFIG_SCSI_AACRAID is not set
+# CONFIG_SCSI_HPTIOP is not set
+
+##
+## file: drivers/scsi/aic7xxx/Kconfig.aic79xx
+##
+# CONFIG_SCSI_AIC79XX is not set
+
+##
+## file: drivers/scsi/aic7xxx/Kconfig.aic7xxx
+##
+# CONFIG_SCSI_AIC7XXX is not set
+
+##
+## file: drivers/scsi/aic94xx/Kconfig
+##
+# CONFIG_SCSI_AIC94XX is not set
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+# CONFIG_MEGARAID_SAS is not set
+
+##
+## file: drivers/scsi/qla2xxx/Kconfig
+##
+# CONFIG_SCSI_QLA_FC is not set
+
+##
+## file: drivers/scsi/qla4xxx/Kconfig
+##
+# CONFIG_SCSI_QLA_ISCSI is not set
+
+##
+## file: drivers/thermal/Kconfig
+##
+CONFIG_THERMAL=y
+CONFIG_CPU_THERMAL=y
+
+##
+## file: lib/xz/Kconfig
+##
+CONFIG_XZ_DEC_ARM=y
+CONFIG_XZ_DEC_ARMTHUMB=y
+
diff --git a/debian/config/kernelarch-mips/config b/debian/config/kernelarch-mips/config
new file mode 100644
index 000000000..7bd4666a1
--- /dev/null
+++ b/debian/config/kernelarch-mips/config
@@ -0,0 +1,83 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_SECCOMP=y
+
+##
+## file: arch/mips/Kconfig
+##
+CONFIG_CPU_HAS_MSA=y
+CONFIG_RELOCATABLE=y
+CONFIG_RELOCATION_TABLE_SIZE=0x00180000
+CONFIG_RANDOMIZE_BASE=y
+CONFIG_KEXEC=y
+CONFIG_MIPS_O32_FP64_SUPPORT=y
+#. Ignored in 32-bit configurations
+CONFIG_MIPS32_O32=y
+CONFIG_MIPS32_N32=y
+
+##
+## file: arch/mips/Kconfig.debug
+##
+CONFIG_EARLY_PRINTK=y
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_ATA=y
+
+##
+## file: drivers/net/ethernet/sun/Kconfig
+##
+# CONFIG_NIU is not set
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+
+##
+## file: drivers/power/reset/Kconfig
+##
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_SYSCON=y
+
+##
+## file: drivers/rapidio/Kconfig
+##
+# CONFIG_RAPIDIO is not set
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI=y
+CONFIG_BLK_DEV_SD=y
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=m
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_OHCI_HCD=m
+
+##
+## file: drivers/video/console/Kconfig
+##
+# CONFIG_VGA_CONSOLE is not set
+
+##
+## file: init/Kconfig
+##
+CONFIG_SGETMASK_SYSCALL=y
+CONFIG_SYSFS_SYSCALL=y
+
diff --git a/debian/config/kernelarch-mips/config.boston b/debian/config/kernelarch-mips/config.boston
new file mode 100644
index 000000000..4e860569d
--- /dev/null
+++ b/debian/config/kernelarch-mips/config.boston
@@ -0,0 +1,69 @@
+##
+## file: arch/mips/Kconfig
+##
+CONFIG_MIPS_CPS=y
+CONFIG_HIGHMEM=y
+CONFIG_NR_CPUS=16
+
+##
+## file: arch/mips/generic/Kconfig
+##
+CONFIG_FIT_IMAGE_FDT_BOSTON=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_CRC32_MIPS=y
+
+##
+## file: drivers/auxdisplay/Kconfig
+##
+CONFIG_AUXDISPLAY=y
+CONFIG_IMG_ASCII_LCD=y
+
+##
+## file: drivers/clk/imgtec/Kconfig
+##
+CONFIG_COMMON_CLK_BOSTON=y
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_EG20T=y
+
+##
+## file: drivers/misc/Kconfig
+##
+CONFIG_PCH_PHUB=y
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=y
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_PCI=y
+
+##
+## file: drivers/pci/controller/Kconfig
+##
+CONFIG_PCIE_XILINX=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_M41T80=y
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI_TOPCLIFF_PCH=y
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_OF_PLATFORM=y
+
diff --git a/debian/config/kernelarch-mips/config.loongson-3 b/debian/config/kernelarch-mips/config.loongson-3
new file mode 100644
index 000000000..8f311cbf7
--- /dev/null
+++ b/debian/config/kernelarch-mips/config.loongson-3
@@ -0,0 +1,142 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: System type
+CONFIG_MACH_LOONGSON64=y
+## end choice
+## choice: Kernel code model
+# CONFIG_32BIT is not set
+CONFIG_64BIT=y
+## end choice
+CONFIG_NUMA=y
+CONFIG_SMP=y
+CONFIG_HOTPLUG_CPU=y
+CONFIG_NR_CPUS=16
+
+##
+## file: arch/mips/kvm/Kconfig
+##
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=y
+
+##
+## file: arch/mips/loongson64/Kconfig
+##
+CONFIG_RS780_HPET=y
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_SATA_AHCI=y
+
+##
+## file: drivers/cpuidle/Kconfig
+##
+CONFIG_CPU_IDLE=y
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=m
+CONFIG_DRM_RADEON=m
+CONFIG_DRM_AMDGPU=m
+
+##
+## file: drivers/gpu/drm/ast/Kconfig
+##
+CONFIG_DRM_AST=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=y
+
+##
+## file: drivers/i2c/algos/Kconfig
+##
+CONFIG_I2C_ALGOBIT=y
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_NE2K_PCI=m
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_E100=m
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+
+##
+## file: drivers/of/Kconfig
+##
+CONFIG_OF=y
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+CONFIG_HOTPLUG_PCI=y
+
+##
+## file: drivers/platform/goldfish/Kconfig
+##
+CONFIG_GOLDFISH=y
+
+##
+## file: drivers/regulator/Kconfig
+##
+CONFIG_REGULATOR=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_CMOS=y
+CONFIG_RTC_DRV_GOLDFISH=y
+
+##
+## file: drivers/staging/sm750fb/Kconfig
+##
+CONFIG_FB_SM750=m
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+# CONFIG_SERIAL_8250_EXTENDED is not set
+CONFIG_SERIAL_OF_PLATFORM=y
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_ISP116X_HCD=m
+CONFIG_USB_UHCI_HCD=m
+CONFIG_USB_SL811_HCD=m
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_RADEON=y
+
+##
+## file: kernel/Kconfig.preempt
+##
+## choice: Preemption Model
+# CONFIG_PREEMPT_VOLUNTARY is not set
+CONFIG_PREEMPT=y
+## end choice
+
+##
+## file: mm/Kconfig.debug
+##
+# CONFIG_PAGE_EXTENSION is not set
+# CONFIG_PAGE_POISONING is not set
+
+##
+## file: sound/pci/hda/Kconfig
+##
+CONFIG_SND_HDA_INTEL=m
+
diff --git a/debian/config/kernelarch-mips/config.malta b/debian/config/kernelarch-mips/config.malta
new file mode 100644
index 000000000..943b8b80c
--- /dev/null
+++ b/debian/config/kernelarch-mips/config.malta
@@ -0,0 +1,480 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: System type
+CONFIG_MIPS_MALTA=y
+## end choice
+## choice: Kernel page size
+CONFIG_PAGE_SIZE_4KB=y
+## end choice
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_HPT366=m
+CONFIG_PATA_NETCELL=m
+CONFIG_PATA_OLDPIIX=m
+CONFIG_PATA_PDC2027X=m
+CONFIG_PATA_PDC_OLD=m
+CONFIG_PATA_SIL680=m
+CONFIG_PATA_MPIIX=m
+CONFIG_PATA_NS87410=m
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV_FD=m
+CONFIG_BLK_DEV_UMEM=m
+CONFIG_CDROM_PKTCDVD=m
+
+##
+## file: drivers/bluetooth/Kconfig
+##
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+CONFIG_BT_HCIVHCI=m
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_PRINTER=m
+CONFIG_PPDEV=m
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+CONFIG_IPMI_HANDLER=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=m
+CONFIG_DRM_RADEON=m
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_SENSORS_ADM1021=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1031=m
+CONFIG_SENSORS_DS1621=m
+CONFIG_SENSORS_MAX1619=m
+CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_PCF8591=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=m
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_PIIX4=m
+CONFIG_I2C_PARPORT=m
+
+##
+## file: drivers/input/gameport/Kconfig
+##
+CONFIG_GAMEPORT=m
+CONFIG_GAMEPORT_EMU10K1=m
+CONFIG_GAMEPORT_FM801=m
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+CONFIG_INPUT_JOYSTICK=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_KEYBOARD_NEWTON=m
+CONFIG_KEYBOARD_SUNKBD=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_SERIAL=m
+CONFIG_MOUSE_APPLETOUCH=m
+CONFIG_MOUSE_VSXXXAA=m
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO_I8042=y
+CONFIG_SERIO_SERPORT=m
+CONFIG_SERIO_PARKBD=m
+CONFIG_SERIO_PCIPS2=y
+CONFIG_SERIO_LIBPS2=y
+CONFIG_SERIO_RAW=m
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+CONFIG_INPUT_TOUCHSCREEN=y
+
+##
+## file: drivers/mfd/Kconfig
+##
+CONFIG_MFD_SM501=m
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=m
+
+##
+## file: drivers/mmc/core/Kconfig
+##
+CONFIG_MMC_BLOCK=m
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_FTL=m
+CONFIG_NFTL=m
+CONFIG_NFTL_RW=y
+CONFIG_INFTL=m
+
+##
+## file: drivers/mtd/chips/Kconfig
+##
+CONFIG_MTD_CFI=m
+CONFIG_MTD_JEDECPROBE=m
+CONFIG_MTD_CFI_INTELEXT=m
+CONFIG_MTD_CFI_AMDSTD=m
+CONFIG_MTD_CFI_STAA=m
+CONFIG_MTD_ROM=m
+CONFIG_MTD_ABSENT=m
+
+##
+## file: drivers/mtd/devices/Kconfig
+##
+CONFIG_MTD_PMC551=m
+CONFIG_MTD_SLRAM=m
+CONFIG_MTD_PHRAM=m
+CONFIG_MTD_MTDRAM=m
+CONFIG_MTD_BLOCK2MTD=m
+
+##
+## file: drivers/mtd/maps/Kconfig
+##
+CONFIG_MTD_COMPLEX_MAPPINGS=y
+CONFIG_MTD_PHYSMAP=m
+CONFIG_MTD_PCI=m
+
+##
+## file: drivers/mtd/nand/raw/Kconfig
+##
+CONFIG_MTD_RAW_NAND=m
+CONFIG_MTD_NAND_DISKONCHIP=m
+
+##
+## file: drivers/mtd/parsers/Kconfig
+##
+CONFIG_MTD_REDBOOT_PARTS=y
+
+##
+## file: drivers/net/Kconfig
+##
+CONFIG_NET_FC=y
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+CONFIG_FEALNX=m
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_NE2K_PCI=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+CONFIG_AMD8111_ETH=m
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+CONFIG_B44=m
+
+##
+## file: drivers/net/ethernet/dec/tulip/Kconfig
+##
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_TULIP=m
+CONFIG_DM9102=m
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+CONFIG_SUNDANCE=m
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_E100=m
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_NATSEMI=m
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+
+##
+## file: drivers/net/ethernet/sis/Kconfig
+##
+CONFIG_SIS900=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_EPIC100=m
+
+##
+## file: drivers/net/ethernet/via/Kconfig
+##
+CONFIG_VIA_RHINE=m
+
+##
+## file: drivers/net/wireless/atmel/Kconfig
+##
+CONFIG_ATMEL=m
+CONFIG_PCI_ATMEL=m
+
+##
+## file: drivers/net/wireless/intel/ipw2x00/Kconfig
+##
+CONFIG_IPW2100=m
+CONFIG_IPW2100_MONITOR=y
+
+##
+## file: drivers/net/wireless/intersil/orinoco/Kconfig
+##
+CONFIG_HERMES=m
+CONFIG_PLX_HERMES=m
+CONFIG_TMD_HERMES=m
+CONFIG_PCI_HERMES=m
+
+##
+## file: drivers/net/wireless/marvell/mwifiex/Kconfig
+##
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+
+##
+## file: drivers/net/wireless/zydas/Kconfig
+##
+CONFIG_USB_ZD1201=m
+
+##
+## file: drivers/pci/pcie/Kconfig
+##
+# CONFIG_PCIEPORTBUS is not set
+
+##
+## file: drivers/power/reset/Kconfig
+##
+CONFIG_POWER_RESET_PIIX4_POWEROFF=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_DS1307=m
+CONFIG_RTC_DRV_DS1672=m
+CONFIG_RTC_DRV_MAX6900=m
+CONFIG_RTC_DRV_RS5C372=m
+CONFIG_RTC_DRV_ISL1208=m
+CONFIG_RTC_DRV_X1205=m
+CONFIG_RTC_DRV_PCF8563=m
+CONFIG_RTC_DRV_PCF8583=m
+CONFIG_RTC_DRV_RS5C348=m
+CONFIG_RTC_DRV_MAX6902=m
+CONFIG_RTC_DRV_CMOS=y
+CONFIG_RTC_DRV_M48T86=m
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI_ARCMSR=m
+CONFIG_SCSI_MYRB=m
+CONFIG_SCSI_MYRS=m
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_IPS=m
+CONFIG_SCSI_INITIO=m
+CONFIG_SCSI_INIA100=m
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_AM53C974=m
+CONFIG_SCSI_DEBUG=m
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_JSM=m
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+CONFIG_SERIAL_8250_RSA=y
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB_USS720=m
+
+##
+## file: drivers/usb/atm/Kconfig
+##
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_ISP116X_HCD=m
+CONFIG_USB_UHCI_HCD=m
+CONFIG_USB_SL811_HCD=m
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+CONFIG_FB_CIRRUS=y
+CONFIG_FB_PM2=m
+CONFIG_FB_PM2_FIFO_DISCONNECT=y
+CONFIG_FB_CYBER2000=m
+CONFIG_FB_S1D13XXX=m
+CONFIG_FB_MATROX=m
+CONFIG_FB_MATROX_MILLENIUM=y
+CONFIG_FB_MATROX_MYSTIQUE=y
+CONFIG_FB_MATROX_G=y
+CONFIG_FB_MATROX_I2C=m
+CONFIG_FB_MATROX_MAVEN=m
+CONFIG_FB_RADEON=m
+CONFIG_FB_RADEON_I2C=y
+CONFIG_FB_RADEON_BACKLIGHT=y
+CONFIG_FB_ATY128=m
+CONFIG_FB_ATY128_BACKLIGHT=y
+CONFIG_FB_ATY=m
+CONFIG_FB_ATY_CT=y
+CONFIG_FB_ATY_GX=y
+CONFIG_FB_ATY_BACKLIGHT=y
+CONFIG_FB_SAVAGE=m
+CONFIG_FB_SIS=m
+CONFIG_FB_SIS_300=y
+CONFIG_FB_SIS_315=y
+CONFIG_FB_NEOMAGIC=m
+CONFIG_FB_KYRO=m
+CONFIG_FB_VOODOO1=m
+CONFIG_FB_TRIDENT=m
+CONFIG_FB_VIRTUAL=m
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_PCIPCWATCHDOG=m
+CONFIG_WDTPCI=m
+CONFIG_USBPCWATCHDOG=m
+
+##
+## file: net/lapb/Kconfig
+##
+CONFIG_LAPB=m
+
+##
+## file: sound/drivers/Kconfig
+##
+CONFIG_SND_DUMMY=m
+CONFIG_SND_VIRMIDI=m
+CONFIG_SND_MTPAV=m
+CONFIG_SND_SERIAL_U16550=m
+CONFIG_SND_MPU401=m
+
+##
+## file: sound/pci/Kconfig
+##
+CONFIG_SND_ALI5451=m
+CONFIG_SND_ATIIXP=m
+CONFIG_SND_ATIIXP_MODEM=m
+CONFIG_SND_AU8810=m
+CONFIG_SND_AU8820=m
+CONFIG_SND_AU8830=m
+CONFIG_SND_AZT3328=m
+CONFIG_SND_BT87X=m
+CONFIG_SND_CA0106=m
+CONFIG_SND_CMIPCI=m
+CONFIG_SND_CS4281=m
+CONFIG_SND_CS46XX=m
+CONFIG_SND_CS46XX_NEW_DSP=y
+CONFIG_SND_EMU10K1=m
+CONFIG_SND_EMU10K1X=m
+CONFIG_SND_ENS1370=m
+CONFIG_SND_ENS1371=m
+CONFIG_SND_ES1938=m
+CONFIG_SND_ES1968=m
+CONFIG_SND_FM801=m
+CONFIG_SND_FM801_TEA575X_BOOL=y
+CONFIG_SND_HDSP=m
+CONFIG_SND_ICE1712=m
+CONFIG_SND_ICE1724=m
+CONFIG_SND_INTEL8X0=m
+CONFIG_SND_INTEL8X0M=m
+CONFIG_SND_KORG1212=m
+CONFIG_SND_MAESTRO3=m
+CONFIG_SND_MIXART=m
+CONFIG_SND_NM256=m
+CONFIG_SND_RME32=m
+CONFIG_SND_RME96=m
+CONFIG_SND_RME9652=m
+CONFIG_SND_SONICVIBES=m
+CONFIG_SND_TRIDENT=m
+CONFIG_SND_VIA82XX=m
+CONFIG_SND_VIA82XX_MODEM=m
+CONFIG_SND_VX222=m
+CONFIG_SND_YMFPCI=m
+
diff --git a/debian/config/kernelarch-mips/config.mips32r2 b/debian/config/kernelarch-mips/config.mips32r2
new file mode 100644
index 000000000..88f2c05a9
--- /dev/null
+++ b/debian/config/kernelarch-mips/config.mips32r2
@@ -0,0 +1,10 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: CPU type
+CONFIG_CPU_MIPS32_R2=y
+## end choice
+## choice: Kernel code model
+CONFIG_32BIT=y
+## end choice
+
diff --git a/debian/config/kernelarch-mips/config.mips32r6 b/debian/config/kernelarch-mips/config.mips32r6
new file mode 100644
index 000000000..c95ffabb9
--- /dev/null
+++ b/debian/config/kernelarch-mips/config.mips32r6
@@ -0,0 +1,10 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: CPU type
+CONFIG_CPU_MIPS32_R6=y
+## end choice
+## choice: Kernel code model
+CONFIG_32BIT=y
+## end choice
+
diff --git a/debian/config/kernelarch-mips/config.mips64r2 b/debian/config/kernelarch-mips/config.mips64r2
new file mode 100644
index 000000000..1c1bed181
--- /dev/null
+++ b/debian/config/kernelarch-mips/config.mips64r2
@@ -0,0 +1,10 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: CPU type
+CONFIG_CPU_MIPS64_R2=y
+## end choice
+## choice: Kernel code model
+CONFIG_64BIT=y
+## end choice
+
diff --git a/debian/config/kernelarch-mips/config.mips64r6 b/debian/config/kernelarch-mips/config.mips64r6
new file mode 100644
index 000000000..2cd32b0b5
--- /dev/null
+++ b/debian/config/kernelarch-mips/config.mips64r6
@@ -0,0 +1,10 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: CPU type
+CONFIG_CPU_MIPS64_R6=y
+## end choice
+## choice: Kernel code model
+CONFIG_64BIT=y
+## end choice
+
diff --git a/debian/config/kernelarch-mips/config.octeon b/debian/config/kernelarch-mips/config.octeon
new file mode 100644
index 000000000..d4d9d543b
--- /dev/null
+++ b/debian/config/kernelarch-mips/config.octeon
@@ -0,0 +1,189 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: System type
+CONFIG_CAVIUM_OCTEON_SOC=y
+## end choice
+## choice: Kernel code model
+# CONFIG_32BIT is not set
+CONFIG_64BIT=y
+## end choice
+# CONFIG_CPU_HAS_MSA is not set
+CONFIG_SMP=y
+# CONFIG_HOTPLUG_CPU is not set
+CONFIG_NR_CPUS=64
+
+##
+## file: arch/mips/cavium-octeon/Kconfig
+##
+CONFIG_CAVIUM_CN63XXP1=y
+CONFIG_CAVIUM_OCTEON_CVMSEG_SIZE=1
+CONFIG_CAVIUM_OCTEON_LOCK_L2=y
+CONFIG_CAVIUM_OCTEON_LOCK_L2_TLB=y
+CONFIG_CAVIUM_OCTEON_LOCK_L2_EXCEPTION=y
+CONFIG_CAVIUM_OCTEON_LOCK_L2_LOW_LEVEL_INTERRUPT=y
+CONFIG_CAVIUM_OCTEON_LOCK_L2_INTERRUPT=y
+CONFIG_CAVIUM_OCTEON_LOCK_L2_MEMCPY=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_MD5_OCTEON=m
+CONFIG_CRYPTO_SHA1_OCTEON=m
+CONFIG_CRYPTO_SHA256_OCTEON=m
+CONFIG_CRYPTO_SHA512_OCTEON=m
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_SATA_AHCI_PLATFORM=m
+CONFIG_AHCI_OCTEON=m
+CONFIG_PATA_OCTEON_CF=y
+
+##
+## file: drivers/char/hw_random/Kconfig
+##
+CONFIG_HW_RANDOM_OCTEON=m
+
+##
+## file: drivers/edac/Kconfig
+##
+CONFIG_EDAC=y
+CONFIG_EDAC_OCTEON_PC=m
+CONFIG_EDAC_OCTEON_L2C=m
+CONFIG_EDAC_OCTEON_LMC=m
+CONFIG_EDAC_OCTEON_PCI=m
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_SENSORS_ADM1031=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=y
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_OCTEON=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+# CONFIG_KEYBOARD_ATKBD is not set
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+# CONFIG_MOUSE_PS2 is not set
+
+##
+## file: drivers/input/serio/Kconfig
+##
+# CONFIG_SERIO_I8042 is not set
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+# CONFIG_INPUT_TOUCHSCREEN is not set
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=m
+
+##
+## file: drivers/mmc/core/Kconfig
+##
+CONFIG_MMC_BLOCK=m
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+CONFIG_MMC_CAVIUM_OCTEON=m
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_MTD=y
+CONFIG_MTD_BLOCK=y
+
+##
+## file: drivers/mtd/chips/Kconfig
+##
+CONFIG_MTD_CFI=y
+CONFIG_MTD_CFI_AMDSTD=y
+
+##
+## file: drivers/mtd/maps/Kconfig
+##
+CONFIG_MTD_PHYSMAP=y
+
+##
+## file: drivers/net/ethernet/cavium/Kconfig
+##
+CONFIG_OCTEON_MGMT_ETHERNET=y
+
+##
+## file: drivers/net/mdio/Kconfig
+##
+CONFIG_MDIO_OCTEON=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_DS1307=y
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI_OCTEON=y
+
+##
+## file: drivers/staging/octeon/Kconfig
+##
+CONFIG_OCTEON_ETHERNET=y
+
+##
+## file: drivers/staging/octeon-usb/Kconfig
+##
+CONFIG_OCTEON_USB=y
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250_NR_UARTS=2
+CONFIG_SERIAL_8250_RUNTIME_UARTS=2
+CONFIG_SERIAL_8250_DW=y
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_OCTEON_EHCI=y
+CONFIG_USB_OCTEON_OHCI=y
+
+##
+## file: drivers/video/console/Kconfig
+##
+# CONFIG_FRAMEBUFFER_CONSOLE is not set
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+# CONFIG_FB is not set
+
+##
+## file: kernel/power/Kconfig
+##
+# CONFIG_SUSPEND is not set
+# CONFIG_HIBERNATION is not set
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+CONFIG_SPARSEMEM_MANUAL=y
+## end choice
+
diff --git a/debian/config/kernelarch-powerpc/config b/debian/config/kernelarch-powerpc/config
new file mode 100644
index 000000000..e5409bb84
--- /dev/null
+++ b/debian/config/kernelarch-powerpc/config
@@ -0,0 +1,902 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_SECCOMP=y
+
+##
+## file: arch/powerpc/Kconfig
+##
+# CONFIG_HOTPLUG_CPU is not set
+CONFIG_KEXEC=y
+CONFIG_CMDLINE="console=ttyS0,9600 console=tty0"
+# CONFIG_ADVANCED_OPTIONS is not set
+
+##
+## file: arch/powerpc/Kconfig.debug
+##
+CONFIG_PPC_DISABLE_WERROR=y
+# CONFIG_CODE_PATCHING_SELFTEST is not set
+# CONFIG_FTR_FIXUP_SELFTEST is not set
+# CONFIG_MSI_BITMAP_SELFTEST is not set
+CONFIG_XMON=y
+# CONFIG_XMON_DEFAULT is not set
+CONFIG_XMON_DISASSEMBLY=y
+# CONFIG_BDI_SWITCH is not set
+CONFIG_BOOTX_TEXT=y
+
+##
+## file: arch/powerpc/kvm/Kconfig
+##
+CONFIG_VIRTUALIZATION=y
+
+##
+## file: arch/powerpc/platforms/Kconfig
+##
+CONFIG_KVM_GUEST=y
+CONFIG_RTAS_PROC=y
+CONFIG_TAU=y
+# CONFIG_TAU_INT is not set
+# CONFIG_TAU_AVERAGE is not set
+
+##
+## file: arch/powerpc/platforms/52xx/Kconfig
+##
+# CONFIG_PPC_LITE5200 is not set
+
+##
+## file: arch/powerpc/platforms/82xx/Kconfig
+##
+# CONFIG_PPC_82xx is not set
+
+##
+## file: arch/powerpc/platforms/83xx/Kconfig
+##
+# CONFIG_PPC_83xx is not set
+
+##
+## file: arch/powerpc/platforms/86xx/Kconfig
+##
+# CONFIG_PPC_86xx is not set
+
+##
+## file: arch/powerpc/platforms/Kconfig.cputype
+##
+CONFIG_PPC_KUEP=y
+CONFIG_PPC_KUAP=y
+
+##
+## file: arch/powerpc/platforms/powermac/Kconfig
+##
+CONFIG_PPC_PMAC=y
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_AMIGA_PARTITION=y
+CONFIG_MAC_PARTITION=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_SHA1_PPC=m
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_ATA=y
+CONFIG_PATA_HPT366=m
+CONFIG_PATA_HPT37X=m
+CONFIG_PATA_MACIO=y
+CONFIG_PATA_NETCELL=m
+CONFIG_PATA_NS87415=m
+CONFIG_PATA_PDC2027X=m
+CONFIG_PATA_PDC_OLD=m
+CONFIG_PATA_SC1200=m
+CONFIG_PATA_SIL680=m
+CONFIG_PATA_VIA=m
+CONFIG_PATA_WINBOND=m
+CONFIG_PATA_NS87410=m
+CONFIG_PATA_PCMCIA=m
+
+##
+## file: drivers/atm/Kconfig
+##
+CONFIG_ATM_DRIVERS=y
+CONFIG_ATM_TCP=m
+CONFIG_ATM_LANAI=m
+CONFIG_ATM_ENI=m
+# CONFIG_ATM_ENI_DEBUG is not set
+# CONFIG_ATM_ENI_TUNE_BURST is not set
+CONFIG_ATM_FIRESTREAM=m
+CONFIG_ATM_ZATM=m
+CONFIG_ATM_ZATM_DEBUG=y
+CONFIG_ATM_NICSTAR=m
+CONFIG_ATM_NICSTAR_USE_SUNI=y
+CONFIG_ATM_NICSTAR_USE_IDT77105=y
+CONFIG_ATM_IDT77252=m
+# CONFIG_ATM_IDT77252_DEBUG is not set
+# CONFIG_ATM_IDT77252_RCV_ALL is not set
+CONFIG_ATM_AMBASSADOR=m
+# CONFIG_ATM_AMBASSADOR_DEBUG is not set
+CONFIG_ATM_HORIZON=m
+# CONFIG_ATM_HORIZON_DEBUG is not set
+CONFIG_ATM_IA=m
+# CONFIG_ATM_IA_DEBUG is not set
+CONFIG_ATM_FORE200E_USE_TASKLET=y
+CONFIG_ATM_FORE200E_TX_RETRY=16
+CONFIG_ATM_FORE200E_DEBUG=0
+CONFIG_ATM_HE=m
+# CONFIG_ATM_HE_USE_SUNI is not set
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV_FD=m
+CONFIG_BLK_DEV_UMEM=m
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+# CONFIG_CDROM_PKTCDVD_WCACHE is not set
+
+##
+## file: drivers/bluetooth/Kconfig
+##
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+CONFIG_BT_HCIDTL1=m
+CONFIG_BT_HCIBT3C=m
+CONFIG_BT_HCIBLUECARD=m
+CONFIG_BT_HCIVHCI=m
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_PRINTER=m
+CONFIG_DTLK=m
+CONFIG_APPLICOM=m
+CONFIG_NVRAM=y
+
+##
+## file: drivers/char/agp/Kconfig
+##
+#. Workaround
+CONFIG_AGP=y
+#. Workaround
+CONFIG_AGP_UNINORTH=y
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+CONFIG_IPMI_HANDLER=m
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_POWERNV=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+
+##
+## file: drivers/cpufreq/Kconfig.powerpc
+##
+CONFIG_CPU_FREQ_PMAC=y
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=m
+CONFIG_DRM_RADEON=m
+
+##
+## file: drivers/gpu/drm/i2c/Kconfig
+##
+CONFIG_DRM_I2C_CH7006=m
+CONFIG_DRM_I2C_SIL164=m
+
+##
+## file: drivers/gpu/drm/nouveau/Kconfig
+##
+CONFIG_DRM_NOUVEAU=m
+CONFIG_DRM_NOUVEAU_BACKLIGHT=y
+
+##
+## file: drivers/hid/Kconfig
+##
+CONFIG_HID_APPLEIR=m
+
+##
+## file: drivers/hid/usbhid/Kconfig
+##
+CONFIG_USB_HID=m
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_SENSORS_ADM1021=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1031=m
+CONFIG_SENSORS_ASB100=m
+CONFIG_SENSORS_DS1621=m
+CONFIG_SENSORS_F71805F=m
+CONFIG_SENSORS_GL518SM=m
+CONFIG_SENSORS_GL520SM=m
+CONFIG_SENSORS_IT87=m
+CONFIG_SENSORS_MAX1619=m
+CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_PC87360=m
+CONFIG_SENSORS_PCF8591=m
+CONFIG_SENSORS_SIS5595=m
+CONFIG_SENSORS_SMSC47M1=m
+CONFIG_SENSORS_SMSC47B397=m
+CONFIG_SENSORS_VIA686A=m
+CONFIG_SENSORS_W83781D=m
+CONFIG_SENSORS_W83L785TS=m
+CONFIG_SENSORS_W83627HF=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=y
+# CONFIG_I2C_STUB is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+# CONFIG_I2C_ALI1535 is not set
+# CONFIG_I2C_ALI1563 is not set
+# CONFIG_I2C_ALI15X3 is not set
+# CONFIG_I2C_AMD756 is not set
+# CONFIG_I2C_AMD8111 is not set
+# CONFIG_I2C_I801 is not set
+# CONFIG_I2C_PIIX4 is not set
+# CONFIG_I2C_NFORCE2 is not set
+CONFIG_I2C_SIS5595=m
+CONFIG_I2C_SIS630=m
+CONFIG_I2C_SIS96X=m
+CONFIG_I2C_VIA=m
+CONFIG_I2C_VIAPRO=m
+CONFIG_I2C_HYDRA=m
+#. This isn't auto-loaded (#713943)
+CONFIG_I2C_POWERMAC=y
+CONFIG_I2C_MPC=m
+CONFIG_I2C_PARPORT=m
+CONFIG_I2C_PCA_ISA=m
+CONFIG_SCx200_ACB=m
+
+##
+## file: drivers/input/gameport/Kconfig
+##
+CONFIG_GAMEPORT=m
+CONFIG_GAMEPORT_NS558=m
+CONFIG_GAMEPORT_L4=m
+CONFIG_GAMEPORT_EMU10K1=m
+CONFIG_GAMEPORT_FM801=m
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+CONFIG_INPUT_JOYSTICK=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ATKBD=m
+# CONFIG_KEYBOARD_LKKBD is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_PCSPKR=m
+CONFIG_INPUT_UINPUT=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+# CONFIG_MOUSE_SERIAL is not set
+CONFIG_MOUSE_APPLETOUCH=m
+CONFIG_MOUSE_BCM5974=m
+# CONFIG_MOUSE_VSXXXAA is not set
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO=m
+CONFIG_SERIO_I8042=m
+CONFIG_SERIO_SERPORT=m
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=m
+CONFIG_SERIO_RAW=m
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+CONFIG_INPUT_TOUCHSCREEN=y
+
+##
+## file: drivers/isdn/Kconfig
+##
+CONFIG_ISDN=y
+
+##
+## file: drivers/macintosh/Kconfig
+##
+CONFIG_MACINTOSH_DRIVERS=y
+CONFIG_ADB=y
+CONFIG_ADB_CUDA=y
+CONFIG_ADB_PMU=y
+CONFIG_ADB_PMU_LED=y
+# CONFIG_ADB_PMU_LED_DISK is not set
+CONFIG_PMAC_SMU=y
+# CONFIG_PMAC_APM_EMU is not set
+CONFIG_PMAC_MEDIABAY=y
+CONFIG_PMAC_BACKLIGHT=y
+CONFIG_ADB_MACIO=y
+CONFIG_INPUT_ADBHID=y
+CONFIG_MAC_EMUMOUSEBTN=y
+CONFIG_THERM_WINDTUNNEL=m
+CONFIG_THERM_ADT746X=m
+CONFIG_WINDFARM=m
+CONFIG_ANSLCD=m
+CONFIG_PMAC_RACKMETER=m
+
+##
+## file: drivers/media/radio/Kconfig
+##
+CONFIG_USB_DSBR=m
+CONFIG_RADIO_MAXIRADIO=m
+
+##
+## file: drivers/misc/Kconfig
+##
+CONFIG_PHANTOM=m
+CONFIG_HP_ILO=m
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=m
+
+##
+## file: drivers/mmc/core/Kconfig
+##
+CONFIG_MMC_BLOCK=m
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+# CONFIG_MMC_DEBUG is not set
+
+##
+## file: drivers/mtd/Kconfig
+##
+# CONFIG_MTD is not set
+
+##
+## file: drivers/net/Kconfig
+##
+CONFIG_NET_FC=y
+
+##
+## file: drivers/net/arcnet/Kconfig
+##
+CONFIG_ARCNET=m
+CONFIG_ARCNET_1201=m
+CONFIG_ARCNET_1051=m
+CONFIG_ARCNET_RAW=m
+CONFIG_ARCNET_CAP=m
+# CONFIG_ARCNET_COM90xx is not set
+CONFIG_ARCNET_COM90xxIO=m
+# CONFIG_ARCNET_RIM_I is not set
+CONFIG_ARCNET_COM20020=m
+CONFIG_ARCNET_COM20020_PCI=m
+CONFIG_ARCNET_COM20020_CS=m
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+CONFIG_FEALNX=m
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_PCMCIA_3C574=m
+CONFIG_PCMCIA_3C589=m
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_PCMCIA_AXNET=m
+CONFIG_NE2K_PCI=m
+CONFIG_PCMCIA_PCNET=m
+
+##
+## file: drivers/net/ethernet/adaptec/Kconfig
+##
+CONFIG_ADAPTEC_STARFIRE=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+# CONFIG_AMD8111_ETH is not set
+CONFIG_PCMCIA_NMCLAN=m
+
+##
+## file: drivers/net/ethernet/apple/Kconfig
+##
+CONFIG_MACE=m
+# CONFIG_MACE_AAUI_PORT is not set
+CONFIG_BMAC=m
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+CONFIG_B44=m
+
+##
+## file: drivers/net/ethernet/dec/tulip/Kconfig
+##
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+CONFIG_PCMCIA_XIRCOM=m
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+CONFIG_SUNDANCE=m
+CONFIG_SUNDANCE_MMIO=y
+
+##
+## file: drivers/net/ethernet/fujitsu/Kconfig
+##
+CONFIG_PCMCIA_FMVJ18X=m
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_E100=m
+
+##
+## file: drivers/net/ethernet/marvell/Kconfig
+##
+CONFIG_MV643XX_ETH=m
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_NATSEMI=m
+
+##
+## file: drivers/net/ethernet/nvidia/Kconfig
+##
+# CONFIG_FORCEDETH is not set
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+
+##
+## file: drivers/net/ethernet/sis/Kconfig
+##
+CONFIG_SIS900=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_PCMCIA_SMC91C92=m
+CONFIG_EPIC100=m
+
+##
+## file: drivers/net/ethernet/sun/Kconfig
+##
+CONFIG_HAPPYMEAL=m
+CONFIG_SUNGEM=m
+
+##
+## file: drivers/net/ethernet/ti/Kconfig
+##
+CONFIG_TLAN=m
+
+##
+## file: drivers/net/ethernet/via/Kconfig
+##
+CONFIG_VIA_RHINE=m
+CONFIG_VIA_RHINE_MMIO=y
+
+##
+## file: drivers/net/ethernet/xircom/Kconfig
+##
+CONFIG_PCMCIA_XIRC2PS=m
+
+##
+## file: drivers/net/fddi/Kconfig
+##
+CONFIG_FDDI=y
+CONFIG_SKFP=m
+
+##
+## file: drivers/net/hippi/Kconfig
+##
+CONFIG_HIPPI=y
+# CONFIG_ROADRUNNER is not set
+
+##
+## file: drivers/net/wan/Kconfig
+##
+CONFIG_WAN=y
+CONFIG_LANMEDIA=m
+CONFIG_PCI200SYN=m
+CONFIG_WANXL=m
+CONFIG_FARSYNC=m
+CONFIG_DLCI=m
+CONFIG_DLCI_MAX=8
+
+##
+## file: drivers/net/wireless/Kconfig
+##
+CONFIG_PCMCIA_RAYCS=m
+CONFIG_PCMCIA_WL3501=m
+
+##
+## file: drivers/net/wireless/atmel/Kconfig
+##
+CONFIG_ATMEL=m
+# CONFIG_PCI_ATMEL is not set
+CONFIG_PCMCIA_ATMEL=m
+
+##
+## file: drivers/net/wireless/cisco/Kconfig
+##
+CONFIG_AIRO_CS=m
+
+##
+## file: drivers/net/wireless/intel/ipw2x00/Kconfig
+##
+# CONFIG_IPW2100 is not set
+
+##
+## file: drivers/net/wireless/intersil/orinoco/Kconfig
+##
+CONFIG_HERMES=m
+CONFIG_APPLE_AIRPORT=m
+CONFIG_PLX_HERMES=m
+CONFIG_TMD_HERMES=m
+CONFIG_PCI_HERMES=m
+CONFIG_PCMCIA_HERMES=m
+
+##
+## file: drivers/net/wireless/marvell/mwifiex/Kconfig
+##
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+CONFIG_MWIFIEX_PCIE=m
+
+##
+## file: drivers/net/wireless/zydas/Kconfig
+##
+CONFIG_USB_ZD1201=m
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+# CONFIG_HOTPLUG_PCI is not set
+
+##
+## file: drivers/pcmcia/Kconfig
+##
+CONFIG_PCCARD=m
+CONFIG_PCMCIA=m
+CONFIG_CARDBUS=y
+CONFIG_YENTA=m
+CONFIG_PD6729=m
+CONFIG_I82092=m
+CONFIG_TCIC=m
+# CONFIG_PCMCIA_DEBUG is not set
+
+##
+## file: drivers/power/supply/Kconfig
+##
+CONFIG_BATTERY_PMU=m
+
+##
+## file: drivers/rapidio/Kconfig
+##
+# CONFIG_RAPIDIO is not set
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_GENERIC=y
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI_DPT_I2O=m
+CONFIG_SCSI_ARCMSR=m
+CONFIG_SCSI_BUSLOGIC=m
+CONFIG_SCSI_MYRB=m
+CONFIG_SCSI_MYRS=m
+CONFIG_SCSI_DMX3191D=m
+# CONFIG_SCSI_GDTH is not set
+CONFIG_SCSI_IPS=m
+# CONFIG_SCSI_INITIO is not set
+CONFIG_SCSI_INIA100=m
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+CONFIG_SCSI_IPR=m
+# CONFIG_SCSI_IPR_TRACE is not set
+# CONFIG_SCSI_IPR_DUMP is not set
+# CONFIG_SCSI_QLOGIC_1280 is not set
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_AM53C974=m
+CONFIG_SCSI_NSP32=m
+CONFIG_SCSI_MESH=m
+CONFIG_SCSI_MESH_SYNC_RATE=5
+CONFIG_SCSI_MESH_RESET_DELAY_MS=4000
+CONFIG_SCSI_MAC53C94=m
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+# CONFIG_MEGARAID_LEGACY is not set
+
+##
+## file: drivers/scsi/pcmcia/Kconfig
+##
+CONFIG_PCMCIA_AHA152X=m
+CONFIG_PCMCIA_NINJA_SCSI=m
+CONFIG_PCMCIA_QLOGIC=m
+CONFIG_PCMCIA_SYM53C500=m
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+# CONFIG_SERIAL_NONSTANDARD is not set
+
+##
+## file: drivers/tty/hvc/Kconfig
+##
+CONFIG_HVC_RTAS=y
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_PMACZILOG=y
+CONFIG_SERIAL_PMACZILOG_CONSOLE=y
+CONFIG_SERIAL_JSM=m
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_CS=m
+CONFIG_SERIAL_8250_NR_UARTS=32
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+# CONFIG_SERIAL_8250_EXTENDED is not set
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=m
+
+##
+## file: drivers/usb/atm/Kconfig
+##
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_OHCI_HCD_PPC_OF_BE=y
+CONFIG_USB_OHCI_HCD_PPC_OF_LE=y
+CONFIG_USB_OHCI_HCD_PCI=y
+CONFIG_USB_UHCI_HCD=m
+CONFIG_USB_SL811_HCD=m
+CONFIG_USB_SL811_CS=m
+
+##
+## file: drivers/video/console/Kconfig
+##
+CONFIG_VGA_CONSOLE=y
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+CONFIG_FB_CIRRUS=m
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+CONFIG_FB_OF=y
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_VGA16 is not set
+CONFIG_FB_S1D13XXX=m
+CONFIG_FB_MATROX=m
+CONFIG_FB_MATROX_MILLENIUM=y
+CONFIG_FB_MATROX_MYSTIQUE=y
+CONFIG_FB_MATROX_G=y
+CONFIG_FB_MATROX_I2C=m
+CONFIG_FB_MATROX_MAVEN=m
+CONFIG_FB_RADEON=m
+CONFIG_FB_RADEON_I2C=y
+# CONFIG_FB_RADEON_DEBUG is not set
+CONFIG_FB_ATY=m
+CONFIG_FB_ATY_CT=y
+CONFIG_FB_ATY_GENERIC_LCD=y
+CONFIG_FB_ATY_GX=y
+CONFIG_FB_SAVAGE=m
+CONFIG_FB_SAVAGE_I2C=y
+CONFIG_FB_SAVAGE_ACCEL=y
+CONFIG_FB_SIS=m
+CONFIG_FB_SIS_300=y
+CONFIG_FB_SIS_315=y
+CONFIG_FB_NEOMAGIC=m
+CONFIG_FB_KYRO=m
+CONFIG_FB_VOODOO1=m
+CONFIG_FB_TRIDENT=m
+CONFIG_FB_IBM_GXT4500=m
+# CONFIG_FB_VIRTUAL is not set
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_WATCHDOG_RTAS=m
+CONFIG_PCIPCWATCHDOG=m
+CONFIG_WDTPCI=m
+CONFIG_USBPCWATCHDOG=m
+
+##
+## file: init/Kconfig
+##
+CONFIG_SGETMASK_SYSCALL=y
+
+##
+## file: lib/Kconfig.debug
+##
+# CONFIG_DEBUG_STACK_USAGE is not set
+# CONFIG_DEBUG_STACKOVERFLOW is not set
+
+##
+## file: lib/xz/Kconfig
+##
+CONFIG_XZ_DEC_POWERPC=y
+
+##
+## file: net/lapb/Kconfig
+##
+CONFIG_LAPB=m
+
+##
+## file: sound/aoa/Kconfig
+##
+CONFIG_SND_AOA=m
+
+##
+## file: sound/aoa/codecs/Kconfig
+##
+CONFIG_SND_AOA_ONYX=m
+CONFIG_SND_AOA_TAS=m
+CONFIG_SND_AOA_TOONIE=m
+
+##
+## file: sound/aoa/fabrics/Kconfig
+##
+CONFIG_SND_AOA_FABRIC_LAYOUT=m
+
+##
+## file: sound/aoa/soundbus/Kconfig
+##
+CONFIG_SND_AOA_SOUNDBUS=m
+CONFIG_SND_AOA_SOUNDBUS_I2S=m
+
+##
+## file: sound/drivers/Kconfig
+##
+# CONFIG_SND_DUMMY is not set
+CONFIG_SND_VIRMIDI=m
+# CONFIG_SND_MTPAV is not set
+# CONFIG_SND_SERIAL_U16550 is not set
+# CONFIG_SND_MPU401 is not set
+
+##
+## file: sound/pci/Kconfig
+##
+CONFIG_SND_ALS4000=m
+# CONFIG_SND_ALI5451 is not set
+CONFIG_SND_ATIIXP=m
+CONFIG_SND_ATIIXP_MODEM=m
+CONFIG_SND_AU8810=m
+CONFIG_SND_AU8820=m
+CONFIG_SND_AU8830=m
+CONFIG_SND_AZT3328=m
+CONFIG_SND_BT87X=m
+# CONFIG_SND_BT87X_OVERCLOCK is not set
+CONFIG_SND_CA0106=m
+CONFIG_SND_CMIPCI=m
+CONFIG_SND_CS4281=m
+CONFIG_SND_CS46XX=m
+CONFIG_SND_CS46XX_NEW_DSP=y
+CONFIG_SND_EMU10K1=m
+CONFIG_SND_EMU10K1X=m
+CONFIG_SND_ENS1370=m
+CONFIG_SND_ENS1371=m
+CONFIG_SND_ES1938=m
+CONFIG_SND_ES1968=m
+CONFIG_SND_FM801=m
+CONFIG_SND_FM801_TEA575X_BOOL=y
+CONFIG_SND_HDSP=m
+CONFIG_SND_ICE1712=m
+CONFIG_SND_ICE1724=m
+# CONFIG_SND_INTEL8X0 is not set
+# CONFIG_SND_INTEL8X0M is not set
+CONFIG_SND_KORG1212=m
+CONFIG_SND_MAESTRO3=m
+CONFIG_SND_MIXART=m
+CONFIG_SND_NM256=m
+CONFIG_SND_RME32=m
+CONFIG_SND_RME96=m
+CONFIG_SND_RME9652=m
+CONFIG_SND_SONICVIBES=m
+CONFIG_SND_TRIDENT=m
+CONFIG_SND_VIA82XX=m
+CONFIG_SND_VIA82XX_MODEM=m
+CONFIG_SND_VX222=m
+CONFIG_SND_YMFPCI=m
+
+##
+## file: sound/pci/hda/Kconfig
+##
+CONFIG_SND_HDA_INTEL=m
+
+##
+## file: sound/ppc/Kconfig
+##
+CONFIG_SND_POWERMAC=m
+CONFIG_SND_POWERMAC_AUTO_DRC=y
+
diff --git a/debian/config/kernelarch-powerpc/config-arch-64 b/debian/config/kernelarch-powerpc/config-arch-64
new file mode 100644
index 000000000..d023e5d73
--- /dev/null
+++ b/debian/config/kernelarch-powerpc/config-arch-64
@@ -0,0 +1,209 @@
+##
+## file: arch/powerpc/Kconfig
+##
+#. This feature is broken; see #866122
+# CONFIG_PPC_TRANSACTIONAL_MEM is not set
+CONFIG_CRASH_DUMP=y
+CONFIG_IRQ_ALL_CPUS=y
+CONFIG_NUMA=y
+## choice: Page size
+CONFIG_PPC_64K_PAGES=y
+## end choice
+CONFIG_SCHED_SMT=y
+CONFIG_KERNEL_START=0xc000000000000000
+
+##
+## file: arch/powerpc/kvm/Kconfig
+##
+CONFIG_KVM_BOOK3S_64=m
+CONFIG_KVM_BOOK3S_64_HV=m
+CONFIG_KVM_BOOK3S_64_PR=m
+CONFIG_KVM_XICS=y
+
+##
+## file: arch/powerpc/platforms/Kconfig
+##
+CONFIG_RTAS_PROC=y
+CONFIG_RTAS_FLASH=m
+
+##
+## file: arch/powerpc/platforms/Kconfig.cputype
+##
+CONFIG_PPC64=y
+CONFIG_ALTIVEC=y
+CONFIG_VSX=y
+CONFIG_SMP=y
+CONFIG_NR_CPUS=2048
+
+##
+## file: arch/powerpc/platforms/powernv/Kconfig
+##
+CONFIG_OPAL_PRD=m
+
+##
+## file: arch/powerpc/platforms/pseries/Kconfig
+##
+CONFIG_PPC_PSERIES=y
+CONFIG_PPC_SPLPAR=y
+CONFIG_SCANLOG=m
+# CONFIG_LPARCFG is not set
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_AIX_PARTITION=y
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_AMD=m
+
+##
+## file: drivers/block/Kconfig
+##
+# CONFIG_MAC_FLOPPY is not set
+CONFIG_BLK_DEV_RSXX=m
+
+##
+## file: drivers/crypto/Kconfig
+##
+CONFIG_CRYPTO_DEV_NX=y
+CONFIG_CRYPTO_DEV_VMX=y
+
+##
+## file: drivers/crypto/nx/Kconfig
+##
+CONFIG_CRYPTO_DEV_NX_ENCRYPT=m
+CONFIG_CRYPTO_DEV_NX_COMPRESS=m
+CONFIG_CRYPTO_DEV_NX_COMPRESS_PSERIES=m
+CONFIG_CRYPTO_DEV_NX_COMPRESS_POWERNV=m
+
+##
+## file: drivers/crypto/vmx/Kconfig
+##
+CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM_AMDGPU=m
+
+##
+## file: drivers/gpu/drm/ast/Kconfig
+##
+CONFIG_DRM_AST=m
+
+##
+## file: drivers/iommu/Kconfig
+##
+CONFIG_SPAPR_TCE_IOMMU=y
+
+##
+## file: drivers/misc/genwqe/Kconfig
+##
+CONFIG_GENWQE=m
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_MTD=m
+
+##
+## file: drivers/mtd/devices/Kconfig
+##
+CONFIG_MTD_POWERNV_FLASH=m
+
+##
+## file: drivers/net/ethernet/ibm/Kconfig
+##
+CONFIG_IBMVETH=m
+
+##
+## file: drivers/net/ethernet/ibm/emac/Kconfig
+##
+CONFIG_IBM_EMAC=m
+CONFIG_IBM_EMAC_RXB=128
+CONFIG_IBM_EMAC_TXB=64
+CONFIG_IBM_EMAC_POLL_WEIGHT=32
+CONFIG_IBM_EMAC_RX_COPY_THRESHOLD=256
+# CONFIG_IBM_EMAC_DEBUG is not set
+
+##
+## file: drivers/net/ethernet/marvell/Kconfig
+##
+# CONFIG_MV643XX_ETH is not set
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+CONFIG_HOTPLUG_PCI=y
+CONFIG_HOTPLUG_PCI_RPA=m
+CONFIG_HOTPLUG_PCI_RPA_DLPAR=m
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI_IBMVSCSI=m
+CONFIG_SCSI_IBMVSCSIS=m
+CONFIG_SCSI_IBMVFC=m
+CONFIG_SCSI_QLOGIC_1280=m
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+CONFIG_MEGARAID_LEGACY=m
+
+##
+## file: drivers/tty/hvc/Kconfig
+##
+CONFIG_HVC_CONSOLE=y
+CONFIG_HVCS=m
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+# CONFIG_SERIAL_ICOM is not set
+
+##
+## file: drivers/vfio/Kconfig
+##
+CONFIG_VFIO=m
+
+##
+## file: drivers/vfio/pci/Kconfig
+##
+CONFIG_VFIO_PCI=m
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+# CONFIG_FB_IMSTT is not set
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_WATCHDOG_RTAS=m
+
+##
+## file: init/Kconfig
+##
+## choice: Cputime accounting
+# CONFIG_TICK_CPU_ACCOUNTING is not set
+CONFIG_VIRT_CPU_ACCOUNTING_NATIVE=y
+## end choice
+
+##
+## file: lib/Kconfig
+##
+CONFIG_CPUMASK_OFFSTACK=y
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+# CONFIG_FLATMEM_MANUAL is not set
+# CONFIG_DISCONTIGMEM_MANUAL is not set
+CONFIG_SPARSEMEM_MANUAL=y
+## end choice
+CONFIG_SPARSEMEM_VMEMMAP=y
+
diff --git a/debian/config/kernelarch-powerpc/config-arch-64-be b/debian/config/kernelarch-powerpc/config-arch-64-be
new file mode 100644
index 000000000..20099b2fc
--- /dev/null
+++ b/debian/config/kernelarch-powerpc/config-arch-64-be
@@ -0,0 +1,111 @@
+##
+## file: arch/powerpc/Kconfig
+##
+CONFIG_CMDLINE="console=hvsi0 console=hvc0 console=ttyS0,9600 console=tty0"
+
+##
+## file: arch/powerpc/platforms/cell/Kconfig
+##
+CONFIG_PPC_IBM_CELL_BLADE=y
+CONFIG_SPU_FS=m
+CONFIG_CBE_RAS=y
+CONFIG_CBE_THERM=m
+
+##
+## file: arch/powerpc/platforms/maple/Kconfig
+##
+CONFIG_PPC_MAPLE=y
+
+##
+## file: arch/powerpc/platforms/pasemi/Kconfig
+##
+CONFIG_PPC_PASEMI=y
+CONFIG_PPC_PASEMI_MDIO=m
+
+##
+## file: arch/powerpc/platforms/ps3/Kconfig
+##
+CONFIG_PPC_PS3=y
+CONFIG_PS3_ADVANCED=y
+CONFIG_PS3_HTAB_SIZE=20
+# CONFIG_PS3_DYNAMIC_DMA is not set
+CONFIG_PS3_PS3AV=y
+CONFIG_PS3_SYS_MANAGER=y
+CONFIG_PS3_DISK=m
+CONFIG_PS3_ROM=m
+CONFIG_PS3_FLASH=m
+CONFIG_PS3_VRAM=m
+CONFIG_PS3_LPM=m
+
+##
+## file: arch/powerpc/platforms/pseries/Kconfig
+##
+CONFIG_IBMEBUS=y
+
+##
+## file: drivers/char/hw_random/Kconfig
+##
+CONFIG_HW_RANDOM_PASEMI=m
+
+##
+## file: drivers/cpufreq/Kconfig.powerpc
+##
+CONFIG_CPU_FREQ_CBE=m
+CONFIG_CPU_FREQ_PMAC64=y
+#. It's a bool
+CONFIG_PPC_PASEMI_CPUFREQ=y
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_PASEMI=m
+
+##
+## file: drivers/macintosh/Kconfig
+##
+CONFIG_WINDFARM_PM81=m
+CONFIG_WINDFARM_PM72=m
+CONFIG_WINDFARM_RM31=m
+CONFIG_WINDFARM_PM91=m
+CONFIG_WINDFARM_PM112=m
+CONFIG_WINDFARM_PM121=m
+
+##
+## file: drivers/net/ethernet/ibm/Kconfig
+##
+CONFIG_EHEA=m
+
+##
+## file: drivers/net/ethernet/pasemi/Kconfig
+##
+CONFIG_PASEMI_MAC=m
+
+##
+## file: drivers/net/ethernet/toshiba/Kconfig
+##
+CONFIG_GELIC_NET=m
+CONFIG_GELIC_WIRELESS=y
+CONFIG_SPIDER_NET=m
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_PS3=m
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_PS3=y
+CONFIG_FB_PS3_DEFAULT_SIZE_M=9
+
+##
+## file: init/Kconfig
+##
+CONFIG_SYSFS_SYSCALL=y
+
+##
+## file: sound/ppc/Kconfig
+##
+CONFIG_SND_PS3=m
+CONFIG_SND_PS3_DEFAULT_START_DELAY=2000
+
diff --git a/debian/config/kernelarch-powerpc/config-arch-64-le b/debian/config/kernelarch-powerpc/config-arch-64-le
new file mode 100644
index 000000000..7cb371a69
--- /dev/null
+++ b/debian/config/kernelarch-powerpc/config-arch-64-le
@@ -0,0 +1,36 @@
+##
+## file: arch/powerpc/platforms/Kconfig.cputype
+##
+## choice: Endianness selection
+# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_LITTLE_ENDIAN=y
+## end choice
+
+##
+## file: arch/powerpc/platforms/powermac/Kconfig
+##
+#. This needs to be explicitly disabled currently (3.15)
+# CONFIG_PPC_PMAC is not set
+
+##
+## file: drivers/cpufreq/Kconfig
+##
+## choice: Default CPUFreq governor
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+## end choice
+
+##
+## file: drivers/pcmcia/Kconfig
+##
+# CONFIG_PCMCIA is not set
+
+##
+## file: kernel/power/Kconfig
+##
+#. See #789070
+# CONFIG_HIBERNATION is not set
+
diff --git a/debian/config/kernelarch-sparc/config b/debian/config/kernelarch-sparc/config
new file mode 100644
index 000000000..51fa69326
--- /dev/null
+++ b/debian/config/kernelarch-sparc/config
@@ -0,0 +1,601 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_SECCOMP=y
+
+##
+## file: arch/sparc/Kconfig
+##
+CONFIG_64BIT=y
+# CONFIG_CMDLINE_BOOL is not set
+CONFIG_SUN_LDOMS=y
+CONFIG_SUN_OPENPROMFS=m
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_SUN_PARTITION=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_CRC32C_SPARC64=m
+CONFIG_CRYPTO_MD5_SPARC64=m
+CONFIG_CRYPTO_SHA1_SPARC64=m
+CONFIG_CRYPTO_SHA256_SPARC64=m
+CONFIG_CRYPTO_SHA512_SPARC64=m
+CONFIG_CRYPTO_AES_SPARC64=m
+CONFIG_CRYPTO_CAMELLIA_SPARC64=m
+CONFIG_CRYPTO_DES_SPARC64=m
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_ALI=m
+CONFIG_PATA_CS5520=m
+CONFIG_PATA_NETCELL=m
+CONFIG_PATA_NS87415=m
+CONFIG_PATA_PDC2027X=m
+CONFIG_PATA_PDC_OLD=m
+CONFIG_PATA_SERVERWORKS=m
+CONFIG_PATA_SIL680=m
+CONFIG_PATA_VIA=m
+CONFIG_PATA_NS87410=m
+CONFIG_PATA_LEGACY=m
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV_FD=y
+# CONFIG_BLK_DEV_UMEM is not set
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+# CONFIG_CDROM_PKTCDVD_WCACHE is not set
+CONFIG_SUNVDC=m
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_PRINTER=m
+# CONFIG_LP_CONSOLE is not set
+# CONFIG_PPDEV is not set
+# CONFIG_DTLK is not set
+# CONFIG_R3964 is not set
+# CONFIG_APPLICOM is not set
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+# CONFIG_IPMI_HANDLER is not set
+
+##
+## file: drivers/crypto/Kconfig
+##
+CONFIG_CRYPTO_DEV_NIAGARA2=m
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=m
+CONFIG_DRM_RADEON=m
+
+##
+## file: drivers/gpu/drm/i2c/Kconfig
+##
+CONFIG_DRM_I2C_CH7006=m
+CONFIG_DRM_I2C_SIL164=m
+
+##
+## file: drivers/gpu/drm/nouveau/Kconfig
+##
+CONFIG_DRM_NOUVEAU=m
+# CONFIG_DRM_NOUVEAU_BACKLIGHT is not set
+
+##
+## file: drivers/hid/usbhid/Kconfig
+##
+CONFIG_USB_HID=y
+
+##
+## file: drivers/hwmon/Kconfig
+##
+# CONFIG_SENSORS_ADM1021 is not set
+# CONFIG_SENSORS_ADM1025 is not set
+# CONFIG_SENSORS_ADM1026 is not set
+# CONFIG_SENSORS_ADM1031 is not set
+# CONFIG_SENSORS_ASB100 is not set
+# CONFIG_SENSORS_DS1621 is not set
+# CONFIG_SENSORS_F71805F is not set
+# CONFIG_SENSORS_GL518SM is not set
+# CONFIG_SENSORS_GL520SM is not set
+# CONFIG_SENSORS_MAX1619 is not set
+# CONFIG_SENSORS_LM63 is not set
+# CONFIG_SENSORS_LM75 is not set
+# CONFIG_SENSORS_LM77 is not set
+# CONFIG_SENSORS_LM78 is not set
+# CONFIG_SENSORS_LM80 is not set
+# CONFIG_SENSORS_LM83 is not set
+# CONFIG_SENSORS_LM85 is not set
+# CONFIG_SENSORS_LM87 is not set
+# CONFIG_SENSORS_LM90 is not set
+# CONFIG_SENSORS_LM92 is not set
+# CONFIG_SENSORS_PC87360 is not set
+# CONFIG_SENSORS_PCF8591 is not set
+# CONFIG_SENSORS_SIS5595 is not set
+# CONFIG_SENSORS_SMSC47M1 is not set
+# CONFIG_SENSORS_SMSC47B397 is not set
+# CONFIG_SENSORS_VIA686A is not set
+# CONFIG_SENSORS_W83781D is not set
+# CONFIG_SENSORS_W83L785TS is not set
+# CONFIG_SENSORS_W83627HF is not set
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=m
+# CONFIG_I2C_STUB is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+# CONFIG_I2C_ALI1535 is not set
+# CONFIG_I2C_ALI1563 is not set
+# CONFIG_I2C_ALI15X3 is not set
+# CONFIG_I2C_AMD756 is not set
+# CONFIG_I2C_AMD8111 is not set
+# CONFIG_I2C_I801 is not set
+# CONFIG_I2C_PIIX4 is not set
+# CONFIG_I2C_NFORCE2 is not set
+# CONFIG_I2C_SIS5595 is not set
+# CONFIG_I2C_SIS630 is not set
+# CONFIG_I2C_SIS96X is not set
+# CONFIG_I2C_VIA is not set
+# CONFIG_I2C_VIAPRO is not set
+CONFIG_I2C_PARPORT=m
+# CONFIG_I2C_PCA_ISA is not set
+
+##
+## file: drivers/input/Kconfig
+##
+# CONFIG_INPUT_JOYDEV is not set
+
+##
+## file: drivers/input/gameport/Kconfig
+##
+# CONFIG_GAMEPORT is not set
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+# CONFIG_INPUT_JOYSTICK is not set
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_ATKBD=y
+CONFIG_KEYBOARD_LKKBD=m
+# CONFIG_KEYBOARD_NEWTON is not set
+CONFIG_KEYBOARD_SUNKBD=y
+# CONFIG_KEYBOARD_XTKBD is not set
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_SPARCSPKR=m
+# CONFIG_INPUT_UINPUT is not set
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=y
+CONFIG_MOUSE_SERIAL=y
+# CONFIG_MOUSE_VSXXXAA is not set
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO=y
+CONFIG_SERIO_I8042=y
+# CONFIG_SERIO_SERPORT is not set
+# CONFIG_SERIO_PARKBD is not set
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=y
+# CONFIG_SERIO_RAW is not set
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+# CONFIG_INPUT_TOUCHSCREEN is not set
+
+##
+## file: drivers/media/pci/cx88/Kconfig
+##
+# CONFIG_VIDEO_CX88 is not set
+
+##
+## file: drivers/media/pci/saa7146/Kconfig
+##
+# CONFIG_VIDEO_HEXIUM_GEMINI is not set
+# CONFIG_VIDEO_HEXIUM_ORION is not set
+# CONFIG_VIDEO_MXB is not set
+
+##
+## file: drivers/media/radio/Kconfig
+##
+# CONFIG_USB_DSBR is not set
+# CONFIG_RADIO_MAXIRADIO is not set
+
+##
+## file: drivers/mmc/Kconfig
+##
+# CONFIG_MMC is not set
+
+##
+## file: drivers/mtd/Kconfig
+##
+# CONFIG_MTD is not set
+
+##
+## file: drivers/net/Kconfig
+##
+CONFIG_NET_FC=y
+
+##
+## file: drivers/net/arcnet/Kconfig
+##
+# CONFIG_ARCNET is not set
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+CONFIG_FEALNX=m
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_NE2K_PCI=m
+
+##
+## file: drivers/net/ethernet/adaptec/Kconfig
+##
+CONFIG_ADAPTEC_STARFIRE=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+# CONFIG_AMD8111_ETH is not set
+CONFIG_SUNLANCE=m
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+CONFIG_B44=m
+
+##
+## file: drivers/net/ethernet/dec/tulip/Kconfig
+##
+CONFIG_NET_TULIP=y
+# CONFIG_DE2104X is not set
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+CONFIG_SUNDANCE=m
+CONFIG_SUNDANCE_MMIO=y
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_E100=m
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_NATSEMI=m
+
+##
+## file: drivers/net/ethernet/nvidia/Kconfig
+##
+# CONFIG_FORCEDETH is not set
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+# CONFIG_8139CP is not set
+CONFIG_8139TOO=m
+
+##
+## file: drivers/net/ethernet/sis/Kconfig
+##
+CONFIG_SIS900=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_EPIC100=m
+
+##
+## file: drivers/net/ethernet/sun/Kconfig
+##
+CONFIG_HAPPYMEAL=m
+CONFIG_SUNBMAC=m
+CONFIG_SUNQE=m
+CONFIG_SUNGEM=m
+CONFIG_SUNVNET=m
+
+##
+## file: drivers/net/ethernet/via/Kconfig
+##
+CONFIG_VIA_RHINE=m
+# CONFIG_VIA_RHINE_MMIO is not set
+
+##
+## file: drivers/net/fddi/Kconfig
+##
+CONFIG_FDDI=y
+CONFIG_SKFP=m
+
+##
+## file: drivers/net/hippi/Kconfig
+##
+# CONFIG_HIPPI is not set
+
+##
+## file: drivers/net/plip/Kconfig
+##
+CONFIG_PLIP=m
+
+##
+## file: drivers/net/wan/Kconfig
+##
+# CONFIG_WAN is not set
+
+##
+## file: drivers/net/wireless/marvell/mwifiex/Kconfig
+##
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_PCIE=m
+
+##
+## file: drivers/parport/Kconfig
+##
+CONFIG_PARPORT_SUNBPP=m
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+
+##
+## file: drivers/sbus/char/Kconfig
+##
+CONFIG_SUN_OPENPROMIO=y
+CONFIG_OBP_FLASH=m
+CONFIG_BBC_I2C=m
+CONFIG_ENVCTRL=m
+CONFIG_DISPLAY7SEG=m
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI_ARCMSR=m
+# CONFIG_SCSI_MYRB is not set
+# CONFIG_SCSI_MYRS is not set
+CONFIG_SCSI_DMX3191D=m
+# CONFIG_SCSI_IPS is not set
+CONFIG_SCSI_INITIO=m
+# CONFIG_SCSI_INIA100 is not set
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+CONFIG_SCSI_IPR=m
+# CONFIG_SCSI_IPR_TRACE is not set
+# CONFIG_SCSI_IPR_DUMP is not set
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_QLOGICPTI=m
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_SUNESP=m
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+# CONFIG_SERIAL_NONSTANDARD is not set
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_SUNZILOG=y
+CONFIG_SERIAL_SUNZILOG_CONSOLE=y
+CONFIG_SERIAL_SUNSU=y
+CONFIG_SERIAL_SUNSU_CONSOLE=y
+CONFIG_SERIAL_SUNSAB=y
+CONFIG_SERIAL_SUNSAB_CONSOLE=y
+CONFIG_SERIAL_SUNHV=y
+CONFIG_SERIAL_JSM=m
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=m
+# CONFIG_USB_USS720 is not set
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_UHCI_HCD=m
+# CONFIG_USB_SL811_HCD is not set
+
+##
+## file: drivers/video/backlight/Kconfig
+##
+# CONFIG_LCD_CLASS_DEVICE is not set
+# CONFIG_BACKLIGHT_CLASS_DEVICE is not set
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_MODE_HELPERS=y
+# CONFIG_FB_TILEBLITTING is not set
+# CONFIG_FB_CIRRUS is not set
+CONFIG_FB_PM2=y
+# CONFIG_FB_PM2_FIFO_DISCONNECT is not set
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+CONFIG_FB_SBUS=y
+# CONFIG_FB_BW2 is not set
+# CONFIG_FB_CG3 is not set
+CONFIG_FB_CG6=y
+CONFIG_FB_FFB=y
+# CONFIG_FB_TCX is not set
+# CONFIG_FB_CG14 is not set
+# CONFIG_FB_P9100 is not set
+# CONFIG_FB_LEO is not set
+CONFIG_FB_XVR500=y
+CONFIG_FB_XVR2500=y
+CONFIG_FB_XVR1000=y
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_MATROX is not set
+CONFIG_FB_RADEON=y
+# CONFIG_FB_RADEON_I2C is not set
+# CONFIG_FB_RADEON_DEBUG is not set
+CONFIG_FB_ATY128=y
+CONFIG_FB_ATY=y
+CONFIG_FB_ATY_CT=y
+# CONFIG_FB_ATY_GENERIC_LCD is not set
+CONFIG_FB_ATY_GX=y
+# CONFIG_FB_SAVAGE is not set
+# CONFIG_FB_SIS is not set
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+# CONFIG_FB_VOODOO1 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_VIRTUAL is not set
+
+##
+## file: drivers/w1/Kconfig
+##
+# CONFIG_W1 is not set
+
+##
+## file: init/Kconfig
+##
+CONFIG_SGETMASK_SYSCALL=y
+CONFIG_SYSFS_SYSCALL=y
+
+##
+## file: lib/xz/Kconfig
+##
+CONFIG_XZ_DEC_SPARC=y
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+# CONFIG_FLATMEM_MANUAL is not set
+# CONFIG_DISCONTIGMEM_MANUAL is not set
+CONFIG_SPARSEMEM_MANUAL=y
+## end choice
+
+##
+## file: net/ax25/Kconfig
+##
+# CONFIG_HAMRADIO is not set
+
+##
+## file: net/lapb/Kconfig
+##
+# CONFIG_LAPB is not set
+
+##
+## file: sound/drivers/Kconfig
+##
+# CONFIG_SND_DUMMY is not set
+CONFIG_SND_VIRMIDI=m
+# CONFIG_SND_MTPAV is not set
+# CONFIG_SND_SERIAL_U16550 is not set
+# CONFIG_SND_MPU401 is not set
+
+##
+## file: sound/pci/Kconfig
+##
+CONFIG_SND_ALI5451=m
+# CONFIG_SND_ATIIXP is not set
+# CONFIG_SND_ATIIXP_MODEM is not set
+# CONFIG_SND_AU8810 is not set
+# CONFIG_SND_AU8820 is not set
+# CONFIG_SND_AU8830 is not set
+# CONFIG_SND_AZT3328 is not set
+# CONFIG_SND_BT87X is not set
+# CONFIG_SND_CA0106 is not set
+CONFIG_SND_CMIPCI=m
+# CONFIG_SND_CS4281 is not set
+# CONFIG_SND_CS46XX is not set
+CONFIG_SND_EMU10K1=m
+# CONFIG_SND_EMU10K1X is not set
+CONFIG_SND_ENS1370=m
+CONFIG_SND_ENS1371=m
+# CONFIG_SND_ES1938 is not set
+# CONFIG_SND_ES1968 is not set
+# CONFIG_SND_FM801 is not set
+# CONFIG_SND_HDSP is not set
+# CONFIG_SND_ICE1712 is not set
+# CONFIG_SND_ICE1724 is not set
+# CONFIG_SND_INTEL8X0 is not set
+# CONFIG_SND_INTEL8X0M is not set
+# CONFIG_SND_KORG1212 is not set
+CONFIG_SND_MAESTRO3=m
+# CONFIG_SND_MIXART is not set
+# CONFIG_SND_NM256 is not set
+# CONFIG_SND_RME32 is not set
+# CONFIG_SND_RME96 is not set
+# CONFIG_SND_RME9652 is not set
+# CONFIG_SND_SONICVIBES is not set
+# CONFIG_SND_TRIDENT is not set
+# CONFIG_SND_VIA82XX is not set
+# CONFIG_SND_VIA82XX_MODEM is not set
+# CONFIG_SND_VX222 is not set
+# CONFIG_SND_YMFPCI is not set
+
+##
+## file: sound/pci/hda/Kconfig
+##
+# CONFIG_SND_HDA_INTEL is not set
+
+##
+## file: sound/sparc/Kconfig
+##
+CONFIG_SND_SUN_AMD7930=m
+CONFIG_SND_SUN_CS4231=m
+CONFIG_SND_SUN_DBRI=m
+
diff --git a/debian/config/kernelarch-sparc/config-smp b/debian/config/kernelarch-sparc/config-smp
new file mode 100644
index 000000000..f6412c26e
--- /dev/null
+++ b/debian/config/kernelarch-sparc/config-smp
@@ -0,0 +1,7 @@
+##
+## file: arch/sparc/Kconfig
+##
+CONFIG_SMP=y
+CONFIG_NR_CPUS=256
+CONFIG_SCHED_SMT=y
+
diff --git a/debian/config/kernelarch-sparc/config-up b/debian/config/kernelarch-sparc/config-up
new file mode 100644
index 000000000..758621713
--- /dev/null
+++ b/debian/config/kernelarch-sparc/config-up
@@ -0,0 +1,5 @@
+##
+## file: arch/sparc/Kconfig
+##
+# CONFIG_SMP is not set
+
diff --git a/debian/config/kernelarch-x86/config b/debian/config/kernelarch-x86/config
new file mode 100644
index 000000000..5335873e7
--- /dev/null
+++ b/debian/config/kernelarch-x86/config
@@ -0,0 +1,2118 @@
+##
+## file: arch/Kconfig
+##
+# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set
+CONFIG_SECCOMP=y
+# CONFIG_LOCK_EVENT_COUNTS is not set
+
+##
+## file: arch/x86/Kconfig
+##
+CONFIG_ZONE_DMA=y
+CONFIG_X86_MPPARSE=y
+CONFIG_X86_CPU_RESCTRL=y
+# CONFIG_X86_EXTENDED_PLATFORM is not set
+CONFIG_X86_INTEL_LPSS=y
+CONFIG_X86_AMD_PLATFORM_DEVICE=y
+CONFIG_IOSF_MBI=m
+# CONFIG_IOSF_MBI_DEBUG is not set
+CONFIG_SCHED_OMIT_FRAME_POINTER=y
+CONFIG_HYPERVISOR_GUEST=y
+CONFIG_PARAVIRT=y
+# CONFIG_PARAVIRT_DEBUG is not set
+CONFIG_PARAVIRT_SPINLOCKS=y
+CONFIG_KVM_GUEST=y
+# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
+# CONFIG_JAILHOUSE_GUEST is not set
+CONFIG_HPET_TIMER=y
+CONFIG_DMI=y
+CONFIG_GART_IOMMU=y
+CONFIG_SCHED_MC=y
+CONFIG_SCHED_MC_PRIO=y
+CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y
+CONFIG_X86_MCE=y
+# CONFIG_X86_MCELOG_LEGACY is not set
+CONFIG_X86_MCE_INTEL=y
+CONFIG_X86_MCE_AMD=y
+# CONFIG_X86_ANCIENT_MCE is not set
+CONFIG_X86_MCE_INJECT=m
+CONFIG_X86_16BIT=y
+CONFIG_I8K=m
+CONFIG_MICROCODE=y
+CONFIG_MICROCODE_INTEL=y
+CONFIG_MICROCODE_AMD=y
+CONFIG_X86_MSR=m
+CONFIG_X86_CPUID=m
+CONFIG_AMD_MEM_ENCRYPT=y
+CONFIG_NODES_SHIFT=6
+# CONFIG_ARCH_MEMORY_PROBE is not set
+CONFIG_X86_PMEM_LEGACY=m
+# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set
+CONFIG_X86_RESERVE_LOW=64
+CONFIG_MTRR=y
+CONFIG_MTRR_SANITIZER=y
+CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0
+CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
+CONFIG_X86_PAT=y
+CONFIG_ARCH_RANDOM=y
+CONFIG_X86_SMAP=y
+CONFIG_X86_UMIP=y
+CONFIG_EFI=y
+CONFIG_EFI_STUB=y
+CONFIG_KEXEC=y
+CONFIG_CRASH_DUMP=y
+# CONFIG_KEXEC_JUMP is not set
+CONFIG_RELOCATABLE=y
+CONFIG_RANDOMIZE_BASE=y
+# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
+# CONFIG_DEBUG_HOTPLUG_CPU0 is not set
+# CONFIG_COMPAT_VDSO is not set
+# CONFIG_CMDLINE_BOOL is not set
+CONFIG_MODIFY_LDT_SYSCALL=y
+CONFIG_RETPOLINE=y
+# CONFIG_PCI_CNB20LE_QUIRK is not set
+# CONFIG_ISA_BUS is not set
+#. Doesn't support handover; see #822575
+# CONFIG_X86_SYSFB is not set
+CONFIG_IA32_EMULATION=y
+
+##
+## file: arch/x86/Kconfig.cpu
+##
+# CONFIG_PROCESSOR_SELECT is not set
+
+##
+## file: arch/x86/Kconfig.debug
+##
+# CONFIG_X86_VERBOSE_BOOTUP is not set
+CONFIG_EARLY_PRINTK=y
+# CONFIG_EARLY_PRINTK_DBGP is not set
+# CONFIG_EFI_PGT_DUMP is not set
+# CONFIG_DEBUG_TLBFLUSH is not set
+# CONFIG_IOMMU_DEBUG is not set
+# CONFIG_X86_DECODER_SELFTEST is not set
+## choice: IO delay type
+CONFIG_IO_DELAY_0X80=y
+# CONFIG_IO_DELAY_0XED is not set
+# CONFIG_IO_DELAY_UDELAY is not set
+# CONFIG_IO_DELAY_NONE is not set
+## end choice
+# CONFIG_DEBUG_BOOT_PARAMS is not set
+# CONFIG_CPA_DEBUG is not set
+# CONFIG_DEBUG_ENTRY is not set
+# CONFIG_DEBUG_NMI_SELFTEST is not set
+# CONFIG_PUNIT_ATOM_DEBUG is not set
+
+##
+## file: arch/x86/events/Kconfig
+##
+CONFIG_PERF_EVENTS_INTEL_UNCORE=m
+CONFIG_PERF_EVENTS_INTEL_RAPL=m
+CONFIG_PERF_EVENTS_INTEL_CSTATE=m
+CONFIG_PERF_EVENTS_AMD_POWER=m
+
+##
+## file: arch/x86/kvm/Kconfig
+##
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=m
+CONFIG_KVM_INTEL=m
+CONFIG_KVM_AMD=m
+CONFIG_KVM_AMD_SEV=y
+# CONFIG_KVM_MMU_AUDIT is not set
+
+##
+## file: arch/x86/xen/Kconfig
+##
+CONFIG_XEN=y
+CONFIG_XEN_PV=y
+CONFIG_XEN_DOM0=y
+CONFIG_XEN_PVHVM=y
+# CONFIG_XEN_DEBUG_FS is not set
+CONFIG_XEN_PVH=y
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_ACORN_PARTITION=y
+# CONFIG_ACORN_PARTITION_CUMANA is not set
+# CONFIG_ACORN_PARTITION_EESOX is not set
+CONFIG_ACORN_PARTITION_ICS=y
+# CONFIG_ACORN_PARTITION_ADFS is not set
+# CONFIG_ACORN_PARTITION_POWERTEC is not set
+CONFIG_ACORN_PARTITION_RISCIX=y
+CONFIG_OSF_PARTITION=y
+CONFIG_AMIGA_PARTITION=y
+CONFIG_ATARI_PARTITION=y
+CONFIG_MAC_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+CONFIG_SOLARIS_X86_PARTITION=y
+CONFIG_UNIXWARE_DISKLABEL=y
+CONFIG_LDM_PARTITION=y
+# CONFIG_LDM_DEBUG is not set
+CONFIG_SGI_PARTITION=y
+CONFIG_ULTRIX_PARTITION=y
+CONFIG_SUN_PARTITION=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_CRC32C_INTEL=m
+CONFIG_CRYPTO_CRC32_PCLMUL=m
+CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m
+CONFIG_CRYPTO_AES_NI_INTEL=m
+
+##
+## file: drivers/acpi/Kconfig
+##
+CONFIG_ACPI=y
+CONFIG_ACPI_SPCR_TABLE=y
+CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
+# CONFIG_ACPI_EC_DEBUGFS is not set
+CONFIG_ACPI_AC=m
+CONFIG_ACPI_BATTERY=m
+CONFIG_ACPI_BUTTON=m
+CONFIG_ACPI_VIDEO=m
+CONFIG_ACPI_FAN=m
+CONFIG_ACPI_DOCK=y
+CONFIG_ACPI_PROCESSOR=m
+CONFIG_ACPI_IPMI=m
+CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
+CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_DEBUG is not set
+CONFIG_ACPI_PCI_SLOT=y
+CONFIG_ACPI_CONTAINER=y
+CONFIG_ACPI_HOTPLUG_MEMORY=y
+CONFIG_ACPI_SBS=m
+CONFIG_ACPI_HED=m
+# CONFIG_ACPI_CUSTOM_METHOD is not set
+CONFIG_ACPI_EXTLOG=y
+CONFIG_X86_PM_TIMER=y
+
+##
+## file: drivers/acpi/apei/Kconfig
+##
+CONFIG_ACPI_APEI=y
+CONFIG_ACPI_APEI_GHES=y
+CONFIG_ACPI_APEI_PCIEAER=y
+CONFIG_ACPI_APEI_MEMORY_FAILURE=y
+# CONFIG_ACPI_APEI_EINJ is not set
+# CONFIG_ACPI_APEI_ERST_DEBUG is not set
+
+##
+## file: drivers/acpi/dptf/Kconfig
+##
+CONFIG_DPTF_POWER=m
+
+##
+## file: drivers/acpi/pmic/Kconfig
+##
+CONFIG_PMIC_OPREGION=y
+CONFIG_BYTCRC_PMIC_OPREGION=y
+CONFIG_CHTCRC_PMIC_OPREGION=y
+CONFIG_XPOWER_PMIC_OPREGION=y
+CONFIG_BXT_WC_PMIC_OPREGION=y
+CONFIG_CHT_WC_PMIC_OPREGION=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_ALI=m
+CONFIG_PATA_AMD=m
+CONFIG_PATA_ATIIXP=m
+CONFIG_PATA_CMD64X=m
+CONFIG_PATA_EFAR=m
+CONFIG_PATA_HPT366=m
+CONFIG_PATA_HPT37X=m
+CONFIG_PATA_NETCELL=m
+CONFIG_PATA_NS87415=m
+CONFIG_PATA_OLDPIIX=m
+CONFIG_PATA_PDC2027X=m
+CONFIG_PATA_PDC_OLD=m
+CONFIG_PATA_SERVERWORKS=m
+CONFIG_PATA_SIL680=m
+CONFIG_PATA_TRIFLEX=m
+CONFIG_PATA_VIA=m
+CONFIG_PATA_MPIIX=m
+CONFIG_PATA_NS87410=m
+CONFIG_PATA_PCMCIA=m
+CONFIG_PATA_RZ1000=m
+
+##
+## file: drivers/atm/Kconfig
+##
+CONFIG_ATM_DRIVERS=y
+CONFIG_ATM_TCP=m
+CONFIG_ATM_LANAI=m
+CONFIG_ATM_ENI=m
+# CONFIG_ATM_ENI_DEBUG is not set
+# CONFIG_ATM_ENI_TUNE_BURST is not set
+CONFIG_ATM_FIRESTREAM=m
+CONFIG_ATM_ZATM=m
+# CONFIG_ATM_ZATM_DEBUG is not set
+CONFIG_ATM_IDT77252=m
+# CONFIG_ATM_IDT77252_DEBUG is not set
+# CONFIG_ATM_IDT77252_RCV_ALL is not set
+CONFIG_ATM_AMBASSADOR=m
+# CONFIG_ATM_AMBASSADOR_DEBUG is not set
+CONFIG_ATM_HORIZON=m
+# CONFIG_ATM_HORIZON_DEBUG is not set
+# CONFIG_ATM_FORE200E_USE_TASKLET is not set
+CONFIG_ATM_FORE200E_TX_RETRY=16
+CONFIG_ATM_FORE200E_DEBUG=0
+CONFIG_ATM_HE=m
+CONFIG_ATM_HE_USE_SUNI=y
+
+##
+## file: drivers/auxdisplay/Kconfig
+##
+CONFIG_KS0108=m
+CONFIG_KS0108_PORT=0x378
+CONFIG_KS0108_DELAY=2
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV_FD=m
+CONFIG_BLK_DEV_UMEM=m
+CONFIG_CDROM_PKTCDVD=m
+CONFIG_CDROM_PKTCDVD_BUFFERS=8
+# CONFIG_CDROM_PKTCDVD_WCACHE is not set
+
+##
+## file: drivers/bluetooth/Kconfig
+##
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_H4=y
+CONFIG_BT_HCIUART_BCSP=y
+CONFIG_BT_HCIBCM203X=m
+CONFIG_BT_HCIBPA10X=m
+CONFIG_BT_HCIBFUSB=m
+CONFIG_BT_HCIDTL1=m
+CONFIG_BT_HCIBT3C=m
+CONFIG_BT_HCIBLUECARD=m
+CONFIG_BT_HCIVHCI=m
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_PRINTER=m
+# CONFIG_LP_CONSOLE is not set
+CONFIG_PPDEV=m
+CONFIG_DTLK=m
+# CONFIG_R3964 is not set
+CONFIG_APPLICOM=m
+CONFIG_MWAVE=m
+CONFIG_NVRAM=m
+CONFIG_RAW_DRIVER=m
+CONFIG_MAX_RAW_DEVS=256
+CONFIG_HPET=y
+CONFIG_HPET_MMAP=y
+CONFIG_HPET_MMAP_DEFAULT=y
+
+##
+## file: drivers/char/agp/Kconfig
+##
+#. Workaround
+CONFIG_AGP=y
+#. Workaround
+CONFIG_AGP_AMD64=y
+#. Workaround
+CONFIG_AGP_INTEL=y
+#. Workaround
+CONFIG_AGP_SIS=y
+#. Workaround
+CONFIG_AGP_VIA=y
+
+##
+## file: drivers/char/hw_random/Kconfig
+##
+CONFIG_HW_RANDOM_INTEL=m
+CONFIG_HW_RANDOM_AMD=m
+CONFIG_HW_RANDOM_GEODE=m
+CONFIG_HW_RANDOM_VIA=m
+
+##
+## file: drivers/char/ipmi/Kconfig
+##
+CONFIG_IPMI_HANDLER=m
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+CONFIG_IPMI_WATCHDOG=m
+CONFIG_IPMI_POWEROFF=m
+
+##
+## file: drivers/char/tpm/Kconfig
+##
+CONFIG_TCG_TPM=m
+CONFIG_TCG_TIS=m
+CONFIG_TCG_TIS_I2C_ATMEL=m
+CONFIG_TCG_TIS_I2C_INFINEON=m
+CONFIG_TCG_TIS_I2C_NUVOTON=m
+CONFIG_TCG_NSC=m
+CONFIG_TCG_ATMEL=m
+CONFIG_TCG_INFINEON=m
+CONFIG_TCG_XEN=m
+CONFIG_TCG_CRB=m
+
+##
+## file: drivers/char/tpm/st33zp24/Kconfig
+##
+CONFIG_TCG_TIS_ST33ZP24_I2C=m
+
+##
+## file: drivers/cpufreq/Kconfig
+##
+## choice: Default CPUFreq governor
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
+## end choice
+
+##
+## file: drivers/cpufreq/Kconfig.x86
+##
+CONFIG_X86_INTEL_PSTATE=y
+CONFIG_X86_PCC_CPUFREQ=m
+CONFIG_X86_ACPI_CPUFREQ=m
+CONFIG_X86_ACPI_CPUFREQ_CPB=y
+CONFIG_X86_POWERNOW_K8=m
+CONFIG_X86_AMD_FREQ_SENSITIVITY=m
+CONFIG_X86_SPEEDSTEP_CENTRINO=m
+CONFIG_X86_P4_CLOCKMOD=m
+
+##
+## file: drivers/cpuidle/Kconfig
+##
+CONFIG_CPU_IDLE=y
+
+##
+## file: drivers/crypto/Kconfig
+##
+CONFIG_CRYPTO_DEV_PADLOCK=m
+CONFIG_CRYPTO_DEV_PADLOCK_AES=m
+CONFIG_CRYPTO_DEV_PADLOCK_SHA=m
+CONFIG_CRYPTO_DEV_CCP=y
+
+##
+## file: drivers/crypto/ccp/Kconfig
+##
+CONFIG_CRYPTO_DEV_CCP_DD=m
+CONFIG_CRYPTO_DEV_CCP_CRYPTO=m
+
+##
+## file: drivers/crypto/qat/Kconfig
+##
+CONFIG_CRYPTO_DEV_QAT_DH895xCC=m
+CONFIG_CRYPTO_DEV_QAT_C3XXX=m
+CONFIG_CRYPTO_DEV_QAT_C62X=m
+CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m
+CONFIG_CRYPTO_DEV_QAT_C3XXXVF=m
+CONFIG_CRYPTO_DEV_QAT_C62XVF=m
+
+##
+## file: drivers/dma/Kconfig
+##
+CONFIG_DMADEVICES=y
+CONFIG_INTEL_IDMA64=m
+CONFIG_INTEL_IOATDMA=m
+
+##
+## file: drivers/dma/dw/Kconfig
+##
+CONFIG_DW_DMAC=m
+
+##
+## file: drivers/edac/Kconfig
+##
+CONFIG_EDAC=y
+# CONFIG_EDAC_DEBUG is not set
+CONFIG_EDAC_DECODE_MCE=m
+CONFIG_EDAC_AMD64=m
+# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set
+CONFIG_EDAC_AMD76X=m
+CONFIG_EDAC_E7XXX=m
+CONFIG_EDAC_E752X=m
+CONFIG_EDAC_I82875P=m
+CONFIG_EDAC_I82975X=m
+CONFIG_EDAC_I3000=m
+CONFIG_EDAC_I3200=m
+CONFIG_EDAC_IE31200=m
+CONFIG_EDAC_X38=m
+CONFIG_EDAC_I5400=m
+CONFIG_EDAC_I7CORE=m
+CONFIG_EDAC_I82860=m
+CONFIG_EDAC_R82600=m
+CONFIG_EDAC_I5000=m
+CONFIG_EDAC_I5100=m
+CONFIG_EDAC_I7300=m
+CONFIG_EDAC_SKX=m
+CONFIG_EDAC_I10NM=m
+CONFIG_EDAC_PND2=m
+CONFIG_EDAC_AMD8131=m
+CONFIG_EDAC_AMD8111=m
+
+##
+## file: drivers/extcon/Kconfig
+##
+CONFIG_EXTCON=m
+CONFIG_EXTCON_INTEL_CHT_WC=m
+
+##
+## file: drivers/firmware/Kconfig
+##
+CONFIG_EDD=m
+# CONFIG_EDD_OFF is not set
+CONFIG_FIRMWARE_MEMMAP=y
+CONFIG_DMIID=y
+CONFIG_ISCSI_IBFT_FIND=y
+CONFIG_ISCSI_IBFT=y
+
+##
+## file: drivers/firmware/efi/Kconfig
+##
+CONFIG_EFI_RUNTIME_MAP=y
+# CONFIG_EFI_FAKE_MEMMAP is not set
+CONFIG_APPLE_PROPERTIES=y
+
+##
+## file: drivers/firmware/google/Kconfig
+##
+# CONFIG_GOOGLE_FIRMWARE is not set
+
+##
+## file: drivers/gpio/Kconfig
+##
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_AMDPT=m
+# CONFIG_GPIO_ICH is not set
+# CONFIG_GPIO_F7188X is not set
+# CONFIG_GPIO_SCH is not set
+CONFIG_GPIO_KEMPLD=m
+# CONFIG_GPIO_INTEL_MID is not set
+CONFIG_GPIO_ML_IOH=m
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=m
+CONFIG_DRM_DP_CEC=y
+CONFIG_DRM_RADEON=m
+CONFIG_DRM_AMDGPU=m
+
+##
+## file: drivers/gpu/drm/amd/acp/Kconfig
+##
+CONFIG_DRM_AMD_ACP=y
+
+##
+## file: drivers/gpu/drm/amd/amdkfd/Kconfig
+##
+CONFIG_HSA_AMD=y
+
+##
+## file: drivers/gpu/drm/ast/Kconfig
+##
+CONFIG_DRM_AST=m
+
+##
+## file: drivers/gpu/drm/gma500/Kconfig
+##
+CONFIG_DRM_GMA500=m
+CONFIG_DRM_GMA600=y
+CONFIG_DRM_GMA3600=y
+CONFIG_DRM_MEDFIELD=y
+
+##
+## file: drivers/gpu/drm/i2c/Kconfig
+##
+CONFIG_DRM_I2C_CH7006=m
+CONFIG_DRM_I2C_SIL164=m
+
+##
+## file: drivers/gpu/drm/i915/Kconfig
+##
+CONFIG_DRM_I915=m
+
+##
+## file: drivers/gpu/drm/mgag200/Kconfig
+##
+CONFIG_DRM_MGAG200=m
+
+##
+## file: drivers/gpu/drm/nouveau/Kconfig
+##
+CONFIG_DRM_NOUVEAU=m
+CONFIG_DRM_NOUVEAU_BACKLIGHT=y
+
+##
+## file: drivers/gpu/drm/vboxvideo/Kconfig
+##
+CONFIG_DRM_VBOXVIDEO=m
+
+##
+## file: drivers/gpu/drm/vmwgfx/Kconfig
+##
+CONFIG_DRM_VMWGFX=m
+CONFIG_DRM_VMWGFX_FBCON=y
+
+##
+## file: drivers/gpu/drm/xen/Kconfig
+##
+CONFIG_DRM_XEN=y
+CONFIG_DRM_XEN_FRONTEND=m
+
+##
+## file: drivers/gpu/vga/Kconfig
+##
+CONFIG_VGA_ARB_MAX_GPUS=16
+CONFIG_VGA_SWITCHEROO=y
+
+##
+## file: drivers/hid/Kconfig
+##
+CONFIG_HID_APPLEIR=m
+CONFIG_HID_HYPERV_MOUSE=m
+
+##
+## file: drivers/hid/i2c-hid/Kconfig
+##
+CONFIG_I2C_HID=m
+
+##
+## file: drivers/hid/intel-ish-hid/Kconfig
+##
+CONFIG_INTEL_ISH_HID=m
+
+##
+## file: drivers/hid/usbhid/Kconfig
+##
+CONFIG_USB_HID=m
+
+##
+## file: drivers/hv/Kconfig
+##
+CONFIG_HYPERV=m
+CONFIG_HYPERV_UTILS=m
+CONFIG_HYPERV_BALLOON=m
+
+##
+## file: drivers/hwmon/Kconfig
+##
+CONFIG_SENSORS_ADM1021=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1031=m
+CONFIG_SENSORS_K8TEMP=m
+CONFIG_SENSORS_K10TEMP=m
+CONFIG_SENSORS_FAM15H_POWER=m
+CONFIG_SENSORS_ASB100=m
+CONFIG_SENSORS_DS1621=m
+CONFIG_SENSORS_DELL_SMM=m
+CONFIG_SENSORS_F71805F=m
+CONFIG_SENSORS_GL518SM=m
+CONFIG_SENSORS_GL520SM=m
+CONFIG_SENSORS_I5500=m
+CONFIG_SENSORS_IT87=m
+CONFIG_SENSORS_MAX1619=m
+CONFIG_SENSORS_MENF21BMC_HWMON=m
+CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_PC87360=m
+CONFIG_SENSORS_PCF8591=m
+CONFIG_SENSORS_SIS5595=m
+CONFIG_SENSORS_SMSC47M1=m
+CONFIG_SENSORS_SMSC47B397=m
+CONFIG_SENSORS_SCH5636=m
+CONFIG_SENSORS_VIA686A=m
+CONFIG_SENSORS_W83781D=m
+CONFIG_SENSORS_W83L785TS=m
+CONFIG_SENSORS_W83627HF=m
+CONFIG_SENSORS_ACPI_POWER=m
+
+##
+## file: drivers/hwtracing/intel_th/Kconfig
+##
+CONFIG_INTEL_TH=m
+CONFIG_INTEL_TH_PCI=m
+CONFIG_INTEL_TH_GTH=m
+CONFIG_INTEL_TH_MSU=m
+CONFIG_INTEL_TH_PTI=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=y
+CONFIG_ACPI_I2C_OPREGION=y
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_ALI1535=m
+CONFIG_I2C_ALI1563=m
+CONFIG_I2C_ALI15X3=m
+CONFIG_I2C_AMD756=m
+CONFIG_I2C_AMD756_S4882=m
+CONFIG_I2C_AMD8111=m
+CONFIG_I2C_AMD_MP2=m
+CONFIG_I2C_I801=m
+CONFIG_I2C_ISMT=m
+CONFIG_I2C_PIIX4=m
+CONFIG_I2C_CHT_WC=m
+CONFIG_I2C_NFORCE2=m
+CONFIG_I2C_SIS5595=m
+CONFIG_I2C_SIS630=m
+CONFIG_I2C_SIS96X=m
+CONFIG_I2C_VIA=m
+CONFIG_I2C_VIAPRO=m
+CONFIG_I2C_SCMI=m
+#. Sony Vaio Duo 13".
+CONFIG_I2C_DESIGNWARE_PLATFORM=y
+CONFIG_I2C_DESIGNWARE_BAYTRAIL=y
+CONFIG_I2C_DESIGNWARE_PCI=m
+CONFIG_I2C_KEMPLD=m
+CONFIG_I2C_PARPORT=m
+CONFIG_I2C_PCA_ISA=m
+CONFIG_SCx200_ACB=m
+
+##
+## file: drivers/idle/Kconfig
+##
+CONFIG_INTEL_IDLE=y
+
+##
+## file: drivers/infiniband/hw/usnic/Kconfig
+##
+CONFIG_INFINIBAND_USNIC=m
+
+##
+## file: drivers/input/gameport/Kconfig
+##
+CONFIG_GAMEPORT=m
+CONFIG_GAMEPORT_NS558=m
+CONFIG_GAMEPORT_L4=m
+CONFIG_GAMEPORT_EMU10K1=m
+CONFIG_GAMEPORT_FM801=m
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+CONFIG_INPUT_JOYSTICK=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_KEYBOARD_APPLESPI=m
+CONFIG_KEYBOARD_ATKBD=y
+CONFIG_KEYBOARD_LKKBD=m
+CONFIG_KEYBOARD_GPIO=m
+CONFIG_KEYBOARD_NEWTON=m
+CONFIG_KEYBOARD_SUNKBD=m
+CONFIG_KEYBOARD_XTKBD=m
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_PCSPKR=m
+CONFIG_INPUT_APANEL=m
+CONFIG_INPUT_ATLAS_BTNS=m
+CONFIG_INPUT_UINPUT=m
+CONFIG_INPUT_IDEAPAD_SLIDEBAR=m
+CONFIG_INPUT_SOC_BUTTON_ARRAY=m
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+CONFIG_MOUSE_PS2_VMMOUSE=y
+CONFIG_MOUSE_SERIAL=m
+CONFIG_MOUSE_APPLETOUCH=m
+CONFIG_MOUSE_BCM5974=m
+CONFIG_MOUSE_CYAPA=m
+CONFIG_MOUSE_ELAN_I2C=m
+CONFIG_MOUSE_ELAN_I2C_I2C=y
+CONFIG_MOUSE_ELAN_I2C_SMBUS=y
+CONFIG_MOUSE_VSXXXAA=m
+
+##
+## file: drivers/input/rmi4/Kconfig
+##
+CONFIG_RMI4_CORE=m
+CONFIG_RMI4_SMB=m
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO=y
+CONFIG_SERIO_I8042=y
+CONFIG_SERIO_SERPORT=m
+CONFIG_SERIO_CT82C710=m
+CONFIG_SERIO_PARKBD=m
+CONFIG_SERIO_PCIPS2=m
+CONFIG_SERIO_LIBPS2=y
+CONFIG_SERIO_RAW=m
+CONFIG_HYPERV_KEYBOARD=m
+# CONFIG_SERIO_GPIO_PS2 is not set
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_TSC_SERIO=m
+CONFIG_TOUCHSCREEN_SURFACE3_SPI=m
+
+##
+## file: drivers/iommu/Kconfig
+##
+CONFIG_IRQ_REMAP=y
+
+##
+## file: drivers/iommu/intel/Kconfig
+##
+CONFIG_INTEL_IOMMU=y
+CONFIG_INTEL_IOMMU_SVM=y
+## choice: Default state of Intel DMA Remapping Devices
+CONFIG_INTEL_IOMMU_DEFAULT_ON_INTGPU_OFF=y
+## end choice
+
+##
+## file: drivers/isdn/Kconfig
+##
+CONFIG_ISDN=y
+
+##
+## file: drivers/leds/Kconfig
+##
+CONFIG_LEDS_APU=m
+CONFIG_LEDS_CLEVO_MAIL=m
+CONFIG_LEDS_MENF21BMC=m
+
+##
+## file: drivers/media/cec/Kconfig
+##
+CONFIG_MEDIA_CEC_SUPPORT=y
+
+##
+## file: drivers/media/cec/platform/Kconfig
+##
+CONFIG_CEC_SECO=m
+
+##
+## file: drivers/media/dvb-frontends/Kconfig
+##
+CONFIG_DVB_RTL2832_SDR=m
+
+##
+## file: drivers/media/platform/Kconfig
+##
+CONFIG_VIDEO_VIA_CAMERA=m
+
+##
+## file: drivers/media/radio/Kconfig
+##
+CONFIG_USB_DSBR=m
+CONFIG_RADIO_MAXIRADIO=m
+
+##
+## file: drivers/media/rc/Kconfig
+##
+CONFIG_IR_ITE_CIR=m
+CONFIG_IR_FINTEK=m
+CONFIG_IR_NUVOTON=m
+CONFIG_IR_WINBOND_CIR=m
+CONFIG_IR_SERIAL=m
+CONFIG_IR_SERIAL_TRANSMITTER=y
+CONFIG_IR_SIR=m
+
+##
+## file: drivers/media/tuners/Kconfig
+##
+CONFIG_MEDIA_TUNER_MSI001=m
+
+##
+## file: drivers/media/usb/as102/Kconfig
+##
+CONFIG_DVB_AS102=m
+
+##
+## file: drivers/media/usb/go7007/Kconfig
+##
+# CONFIG_VIDEO_GO7007 is not set
+
+##
+## file: drivers/media/usb/tm6000/Kconfig
+##
+CONFIG_VIDEO_TM6000=m
+CONFIG_VIDEO_TM6000_ALSA=m
+CONFIG_VIDEO_TM6000_DVB=m
+
+##
+## file: drivers/mfd/Kconfig
+##
+CONFIG_MFD_AXP20X_I2C=m
+# CONFIG_MFD_INTEL_QUARK_I2C_GPIO is not set
+CONFIG_LPC_ICH=m
+CONFIG_INTEL_SOC_PMIC=y
+CONFIG_INTEL_SOC_PMIC_BXTWC=m
+CONFIG_INTEL_SOC_PMIC_CHTWC=y
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
+CONFIG_MFD_INTEL_LPSS_ACPI=m
+CONFIG_MFD_INTEL_LPSS_PCI=m
+CONFIG_MFD_INTEL_PMC_BXT=m
+CONFIG_MFD_KEMPLD=m
+CONFIG_MFD_MENF21BMC=m
+
+##
+## file: drivers/misc/Kconfig
+##
+CONFIG_IBM_ASM=m
+CONFIG_PHANTOM=m
+CONFIG_CS5535_MFGPT=m
+CONFIG_HP_ILO=m
+CONFIG_VMWARE_BALLOON=m
+CONFIG_PVPANIC=m
+
+##
+## file: drivers/misc/mei/Kconfig
+##
+CONFIG_INTEL_MEI=m
+CONFIG_INTEL_MEI_ME=m
+CONFIG_INTEL_MEI_TXE=m
+
+##
+## file: drivers/misc/mei/hdcp/Kconfig
+##
+CONFIG_INTEL_MEI_HDCP=m
+
+##
+## file: drivers/misc/vmw_vmci/Kconfig
+##
+CONFIG_VMWARE_VMCI=m
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=m
+
+##
+## file: drivers/mmc/core/Kconfig
+##
+CONFIG_MMC_BLOCK=m
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+# CONFIG_MMC_DEBUG is not set
+CONFIG_MMC_SDHCI_ACPI=m
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_FTL=m
+CONFIG_NFTL=m
+CONFIG_NFTL_RW=y
+CONFIG_INFTL=m
+
+##
+## file: drivers/mtd/chips/Kconfig
+##
+CONFIG_MTD_CFI=m
+CONFIG_MTD_JEDECPROBE=m
+# CONFIG_MTD_CFI_ADV_OPTIONS is not set
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
+# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+# CONFIG_MTD_CFI_I4 is not set
+# CONFIG_MTD_CFI_I8 is not set
+CONFIG_MTD_CFI_INTELEXT=m
+CONFIG_MTD_CFI_AMDSTD=m
+CONFIG_MTD_CFI_STAA=m
+CONFIG_MTD_RAM=m
+CONFIG_MTD_ROM=m
+CONFIG_MTD_ABSENT=m
+
+##
+## file: drivers/mtd/devices/Kconfig
+##
+# CONFIG_MTD_PMC551 is not set
+# CONFIG_MTD_PMC551_BUGFIX is not set
+# CONFIG_MTD_PMC551_DEBUG is not set
+CONFIG_MTD_SLRAM=m
+CONFIG_MTD_PHRAM=m
+CONFIG_MTD_MTDRAM=m
+CONFIG_MTDRAM_TOTAL_SIZE=4096
+CONFIG_MTDRAM_ERASE_SIZE=128
+CONFIG_MTD_BLOCK2MTD=m
+
+##
+## file: drivers/mtd/maps/Kconfig
+##
+CONFIG_MTD_COMPLEX_MAPPINGS=y
+CONFIG_MTD_PHYSMAP=m
+# CONFIG_MTD_PHYSMAP_COMPAT is not set
+CONFIG_MTD_PHYSMAP_START=0x8000000
+CONFIG_MTD_PHYSMAP_LEN=0x4000000
+CONFIG_MTD_PHYSMAP_BANKWIDTH=2
+CONFIG_MTD_SBC_GXX=m
+# CONFIG_MTD_AMD76XROM is not set
+# CONFIG_MTD_ICHXROM is not set
+# CONFIG_MTD_SCB2_FLASH is not set
+CONFIG_MTD_NETtel=m
+# CONFIG_MTD_L440GX is not set
+CONFIG_MTD_PCI=m
+
+##
+## file: drivers/mtd/nand/raw/Kconfig
+##
+CONFIG_MTD_RAW_NAND=m
+CONFIG_MTD_NAND_DISKONCHIP=m
+# CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set
+CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
+# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set
+
+##
+## file: drivers/mtd/parsers/Kconfig
+##
+# CONFIG_MTD_CMDLINE_PARTS is not set
+CONFIG_MTD_REDBOOT_PARTS=y
+CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
+# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
+# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
+
+##
+## file: drivers/mtd/spi-nor/controllers/Kconfig
+##
+# CONFIG_SPI_INTEL_SPI_PCI is not set
+# CONFIG_SPI_INTEL_SPI_PLATFORM is not set
+
+##
+## file: drivers/net/Kconfig
+##
+CONFIG_DUMMY=m
+CONFIG_NET_FC=y
+CONFIG_NET_SB1000=m
+CONFIG_VMXNET3=m
+CONFIG_USB4_NET=m
+
+##
+## file: drivers/net/arcnet/Kconfig
+##
+CONFIG_ARCNET=m
+CONFIG_ARCNET_1201=m
+CONFIG_ARCNET_1051=m
+CONFIG_ARCNET_RAW=m
+CONFIG_ARCNET_CAP=m
+CONFIG_ARCNET_COM90xx=m
+CONFIG_ARCNET_COM90xxIO=m
+CONFIG_ARCNET_RIM_I=m
+CONFIG_ARCNET_COM20020=m
+CONFIG_ARCNET_COM20020_PCI=m
+CONFIG_ARCNET_COM20020_CS=m
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+# CONFIG_CX_ECAT is not set
+CONFIG_FEALNX=m
+
+##
+## file: drivers/net/ethernet/3com/Kconfig
+##
+CONFIG_NET_VENDOR_3COM=y
+CONFIG_PCMCIA_3C574=m
+CONFIG_PCMCIA_3C589=m
+CONFIG_VORTEX=m
+CONFIG_TYPHOON=m
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_NET_VENDOR_8390=y
+CONFIG_PCMCIA_AXNET=m
+CONFIG_NE2K_PCI=m
+CONFIG_PCMCIA_PCNET=m
+
+##
+## file: drivers/net/ethernet/adaptec/Kconfig
+##
+CONFIG_NET_VENDOR_ADAPTEC=y
+CONFIG_ADAPTEC_STARFIRE=m
+
+##
+## file: drivers/net/ethernet/altera/Kconfig
+##
+# CONFIG_ALTERA_TSE is not set
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+CONFIG_NET_VENDOR_AMD=y
+CONFIG_AMD8111_ETH=m
+CONFIG_PCMCIA_NMCLAN=m
+
+##
+## file: drivers/net/ethernet/broadcom/Kconfig
+##
+CONFIG_NET_VENDOR_BROADCOM=y
+CONFIG_B44=m
+
+##
+## file: drivers/net/ethernet/dec/tulip/Kconfig
+##
+CONFIG_NET_TULIP=y
+CONFIG_DE2104X=m
+CONFIG_TULIP=m
+# CONFIG_TULIP_MWI is not set
+# CONFIG_TULIP_MMIO is not set
+CONFIG_WINBOND_840=m
+CONFIG_DM9102=m
+CONFIG_PCMCIA_XIRCOM=m
+
+##
+## file: drivers/net/ethernet/dlink/Kconfig
+##
+CONFIG_NET_VENDOR_DLINK=y
+CONFIG_SUNDANCE=m
+# CONFIG_SUNDANCE_MMIO is not set
+
+##
+## file: drivers/net/ethernet/fujitsu/Kconfig
+##
+CONFIG_NET_VENDOR_FUJITSU=y
+CONFIG_PCMCIA_FMVJ18X=m
+
+##
+## file: drivers/net/ethernet/intel/Kconfig
+##
+CONFIG_NET_VENDOR_INTEL=y
+CONFIG_E100=m
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_NET_VENDOR_NATSEMI=y
+CONFIG_NATSEMI=m
+
+##
+## file: drivers/net/ethernet/nvidia/Kconfig
+##
+CONFIG_NET_VENDOR_NVIDIA=y
+CONFIG_FORCEDETH=m
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_NET_VENDOR_REALTEK=y
+# CONFIG_ATP is not set
+CONFIG_8139CP=m
+CONFIG_8139TOO=m
+
+##
+## file: drivers/net/ethernet/sis/Kconfig
+##
+CONFIG_NET_VENDOR_SIS=y
+CONFIG_SIS900=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_NET_VENDOR_SMSC=y
+CONFIG_PCMCIA_SMC91C92=m
+CONFIG_EPIC100=m
+
+##
+## file: drivers/net/ethernet/stmicro/stmmac/Kconfig
+##
+CONFIG_STMMAC_ETH=m
+CONFIG_DWMAC_INTEL=m
+
+##
+## file: drivers/net/ethernet/sun/Kconfig
+##
+CONFIG_NET_VENDOR_SUN=y
+CONFIG_HAPPYMEAL=m
+CONFIG_SUNGEM=m
+
+##
+## file: drivers/net/ethernet/via/Kconfig
+##
+CONFIG_NET_VENDOR_VIA=y
+CONFIG_VIA_RHINE=m
+# CONFIG_VIA_RHINE_MMIO is not set
+
+##
+## file: drivers/net/ethernet/xircom/Kconfig
+##
+CONFIG_NET_VENDOR_XIRCOM=y
+CONFIG_PCMCIA_XIRC2PS=m
+
+##
+## file: drivers/net/fddi/Kconfig
+##
+CONFIG_FDDI=y
+CONFIG_SKFP=m
+
+##
+## file: drivers/net/hippi/Kconfig
+##
+CONFIG_HIPPI=y
+CONFIG_ROADRUNNER=m
+# CONFIG_ROADRUNNER_LARGE_RINGS is not set
+
+##
+## file: drivers/net/hyperv/Kconfig
+##
+CONFIG_HYPERV_NET=m
+
+##
+## file: drivers/net/plip/Kconfig
+##
+CONFIG_PLIP=m
+
+##
+## file: drivers/net/wan/Kconfig
+##
+CONFIG_WAN=y
+CONFIG_LANMEDIA=m
+CONFIG_PCI200SYN=m
+CONFIG_WANXL=m
+CONFIG_FARSYNC=m
+CONFIG_DLCI=m
+CONFIG_DLCI_MAX=8
+# CONFIG_SBNI is not set
+
+##
+## file: drivers/net/wireless/Kconfig
+##
+CONFIG_PCMCIA_RAYCS=m
+CONFIG_PCMCIA_WL3501=m
+
+##
+## file: drivers/net/wireless/atmel/Kconfig
+##
+CONFIG_ATMEL=m
+CONFIG_PCI_ATMEL=m
+CONFIG_PCMCIA_ATMEL=m
+
+##
+## file: drivers/net/wireless/broadcom/brcm80211/brcmfmac/Kconfig
+##
+#. Sony Vaio laptops
+CONFIG_BRCMFMAC_SDIO=y
+
+##
+## file: drivers/net/wireless/cisco/Kconfig
+##
+CONFIG_AIRO_CS=m
+
+##
+## file: drivers/net/wireless/intersil/orinoco/Kconfig
+##
+CONFIG_HERMES=m
+CONFIG_PLX_HERMES=m
+CONFIG_TMD_HERMES=m
+CONFIG_PCI_HERMES=m
+CONFIG_PCMCIA_HERMES=m
+
+##
+## file: drivers/net/wireless/marvell/mwifiex/Kconfig
+##
+CONFIG_MWIFIEX=m
+CONFIG_MWIFIEX_SDIO=m
+CONFIG_MWIFIEX_PCIE=m
+CONFIG_MWIFIEX_USB=m
+
+##
+## file: drivers/net/wireless/zydas/Kconfig
+##
+CONFIG_USB_ZD1201=m
+
+##
+## file: drivers/nfc/Kconfig
+##
+CONFIG_NFC_MEI_PHY=m
+
+##
+## file: drivers/nfc/pn544/Kconfig
+##
+CONFIG_NFC_PN544_MEI=m
+
+##
+## file: drivers/nvdimm/Kconfig
+##
+CONFIG_LIBNVDIMM=m
+CONFIG_BLK_DEV_PMEM=m
+CONFIG_ND_BLK=m
+CONFIG_BTT=y
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+CONFIG_PCI_PRI=y
+CONFIG_PCI_PASID=y
+
+##
+## file: drivers/pci/controller/Kconfig
+##
+CONFIG_VMD=m
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+CONFIG_HOTPLUG_PCI=y
+CONFIG_HOTPLUG_PCI_ACPI=y
+CONFIG_HOTPLUG_PCI_ACPI_IBM=m
+CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
+CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
+CONFIG_HOTPLUG_PCI_SHPC=y
+
+##
+## file: drivers/pcmcia/Kconfig
+##
+CONFIG_PCCARD=m
+CONFIG_PCMCIA=m
+CONFIG_CARDBUS=y
+CONFIG_YENTA=m
+CONFIG_PD6729=m
+CONFIG_I82092=m
+CONFIG_TCIC=m
+# CONFIG_PCMCIA_DEBUG is not set
+
+##
+## file: drivers/pinctrl/Kconfig
+##
+CONFIG_PINCTRL_AMD=y
+
+##
+## file: drivers/pinctrl/intel/Kconfig
+##
+CONFIG_PINCTRL_BAYTRAIL=y
+CONFIG_PINCTRL_CHERRYVIEW=y
+# CONFIG_PINCTRL_LYNXPOINT is not set
+CONFIG_PINCTRL_BROXTON=y
+CONFIG_PINCTRL_CANNONLAKE=y
+CONFIG_PINCTRL_CEDARFORK=y
+CONFIG_PINCTRL_DENVERTON=y
+CONFIG_PINCTRL_GEMINILAKE=y
+CONFIG_PINCTRL_ICELAKE=y
+CONFIG_PINCTRL_LEWISBURG=y
+CONFIG_PINCTRL_SUNRISEPOINT=y
+CONFIG_PINCTRL_TIGERLAKE=y
+
+##
+## file: drivers/platform/chrome/Kconfig
+##
+CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHROMEOS_LAPTOP=m
+CONFIG_CHROMEOS_PSTORE=m
+CONFIG_CROS_KBD_LED_BACKLIGHT=m
+
+##
+## file: drivers/platform/x86/Kconfig
+##
+CONFIG_X86_PLATFORM_DEVICES=y
+CONFIG_ACPI_WMI=m
+CONFIG_ALIENWARE_WMI=m
+CONFIG_HUAWEI_WMI=m
+CONFIG_INTEL_WMI_THUNDERBOLT=m
+CONFIG_PEAQ_WMI=m
+CONFIG_XIAOMI_WMI=m
+CONFIG_ACERHDF=m
+CONFIG_ACER_WIRELESS=m
+CONFIG_ACER_WMI=m
+CONFIG_APPLE_GMUX=m
+CONFIG_ASUS_LAPTOP=m
+CONFIG_ASUS_WIRELESS=m
+CONFIG_ASUS_WMI=m
+CONFIG_ASUS_NB_WMI=m
+CONFIG_EEEPC_LAPTOP=m
+CONFIG_EEEPC_WMI=m
+CONFIG_DCDBAS=m
+CONFIG_DELL_SMBIOS=m
+CONFIG_DELL_SMBIOS_WMI=y
+CONFIG_DELL_SMBIOS_SMM=y
+CONFIG_DELL_LAPTOP=m
+CONFIG_DELL_RBTN=m
+CONFIG_DELL_RBU=m
+CONFIG_DELL_SMO8800=m
+CONFIG_DELL_WMI=m
+CONFIG_DELL_WMI_AIO=m
+CONFIG_DELL_WMI_LED=m
+CONFIG_AMILO_RFKILL=m
+CONFIG_FUJITSU_LAPTOP=m
+CONFIG_FUJITSU_TABLET=m
+CONFIG_GPD_POCKET_FAN=m
+CONFIG_HP_ACCEL=m
+CONFIG_HP_WIRELESS=m
+CONFIG_HP_WMI=m
+CONFIG_IBM_RTL=m
+CONFIG_IDEAPAD_LAPTOP=m
+CONFIG_SENSORS_HDAPS=m
+CONFIG_THINKPAD_ACPI=m
+CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y
+# CONFIG_THINKPAD_ACPI_DEBUGFACILITIES is not set
+# CONFIG_THINKPAD_ACPI_DEBUG is not set
+# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
+CONFIG_THINKPAD_ACPI_VIDEO=y
+CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
+CONFIG_INTEL_ATOMISP2_PM=m
+CONFIG_INTEL_CHT_INT33FE=m
+CONFIG_INTEL_HID_EVENT=m
+CONFIG_INTEL_INT0002_VGPIO=m
+# CONFIG_INTEL_MENLOW is not set
+CONFIG_INTEL_OAKTRAIL=m
+CONFIG_INTEL_VBTN=m
+CONFIG_SURFACE3_WMI=m
+CONFIG_SURFACE_3_BUTTON=m
+CONFIG_SURFACE_PRO3_BUTTON=m
+CONFIG_MSI_LAPTOP=m
+CONFIG_MSI_WMI=m
+CONFIG_PCENGINES_APU2=m
+CONFIG_SAMSUNG_LAPTOP=m
+CONFIG_SAMSUNG_Q10=m
+CONFIG_ACPI_TOSHIBA=m
+CONFIG_TOSHIBA_BT_RFKILL=m
+CONFIG_TOSHIBA_HAPS=m
+CONFIG_TOSHIBA_WMI=m
+CONFIG_ACPI_CMPC=m
+CONFIG_COMPAL_LAPTOP=m
+CONFIG_LG_LAPTOP=m
+CONFIG_PANASONIC_LAPTOP=m
+CONFIG_SONY_LAPTOP=m
+CONFIG_SONYPI_COMPAT=y
+CONFIG_TOPSTAR_LAPTOP=m
+CONFIG_I2C_MULTI_INSTANTIATE=m
+CONFIG_INTEL_IPS=m
+CONFIG_INTEL_RST=m
+CONFIG_INTEL_SMARTCONNECT=m
+CONFIG_INTEL_TURBO_MAX_3=y
+CONFIG_INTEL_PMC_CORE=m
+
+##
+## file: drivers/pnp/Kconfig
+##
+CONFIG_PNP=y
+
+##
+## file: drivers/power/supply/Kconfig
+##
+CONFIG_BATTERY_SBS=m
+CONFIG_AXP288_FUEL_GAUGE=m
+CONFIG_BATTERY_MAX17042=m
+CONFIG_CHARGER_BQ24190=m
+
+##
+## file: drivers/powercap/Kconfig
+##
+CONFIG_POWERCAP=y
+CONFIG_INTEL_RAPL=m
+
+##
+## file: drivers/ptp/Kconfig
+##
+CONFIG_PTP_1588_CLOCK_PCH=m
+CONFIG_PTP_1588_CLOCK_KVM=m
+
+##
+## file: drivers/pwm/Kconfig
+##
+CONFIG_PWM=y
+CONFIG_PWM_CRC=y
+CONFIG_PWM_LPSS_PLATFORM=m
+
+##
+## file: drivers/rapidio/Kconfig
+##
+# CONFIG_RAPIDIO is not set
+
+##
+## file: drivers/regulator/Kconfig
+##
+CONFIG_REGULATOR=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_CMOS=y
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI_DPT_I2O=m
+CONFIG_SCSI_ARCMSR=m
+CONFIG_SCSI_BUSLOGIC=m
+# CONFIG_SCSI_FLASHPOINT is not set
+CONFIG_SCSI_MYRB=m
+CONFIG_SCSI_MYRS=m
+CONFIG_VMWARE_PVSCSI=m
+CONFIG_HYPERV_STORAGE=m
+CONFIG_SCSI_DMX3191D=m
+CONFIG_SCSI_GDTH=m
+CONFIG_SCSI_ISCI=m
+CONFIG_SCSI_IPS=m
+CONFIG_SCSI_INITIO=m
+CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
+CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
+CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
+CONFIG_SCSI_IPR=m
+# CONFIG_SCSI_IPR_TRACE is not set
+# CONFIG_SCSI_IPR_DUMP is not set
+CONFIG_SCSI_QLOGIC_1280=m
+CONFIG_SCSI_DC395x=m
+CONFIG_SCSI_AM53C974=m
+CONFIG_SCSI_DEBUG=m
+
+##
+## file: drivers/scsi/aic7xxx/Kconfig.aic7xxx
+##
+CONFIG_AIC7XXX_CMDS_PER_DEVICE=8
+
+##
+## file: drivers/scsi/megaraid/Kconfig.megaraid
+##
+CONFIG_MEGARAID_NEWGEN=y
+CONFIG_MEGARAID_MM=m
+CONFIG_MEGARAID_MAILBOX=m
+CONFIG_MEGARAID_LEGACY=m
+
+##
+## file: drivers/scsi/pcmcia/Kconfig
+##
+CONFIG_PCMCIA_AHA152X=m
+CONFIG_PCMCIA_QLOGIC=m
+CONFIG_PCMCIA_SYM53C500=m
+
+##
+## file: drivers/sfi/Kconfig
+##
+CONFIG_SFI=y
+
+##
+## file: drivers/staging/comedi/Kconfig
+##
+CONFIG_COMEDI=m
+# CONFIG_COMEDI_DEBUG is not set
+CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048
+CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480
+CONFIG_COMEDI_MISC_DRIVERS=y
+CONFIG_COMEDI_BOND=m
+CONFIG_COMEDI_TEST=m
+CONFIG_COMEDI_PARPORT=m
+CONFIG_COMEDI_SSV_DNP=m
+# CONFIG_COMEDI_ISA_DRIVERS is not set
+CONFIG_COMEDI_II_PCI20KC=m
+CONFIG_COMEDI_S526=m
+CONFIG_COMEDI_PCI_DRIVERS=y
+CONFIG_COMEDI_8255_PCI=m
+CONFIG_COMEDI_ADDI_APCI_1032=m
+CONFIG_COMEDI_ADDI_APCI_1500=m
+CONFIG_COMEDI_ADDI_APCI_1516=m
+CONFIG_COMEDI_ADDI_APCI_1564=m
+CONFIG_COMEDI_ADDI_APCI_16XX=m
+CONFIG_COMEDI_ADDI_APCI_2032=m
+CONFIG_COMEDI_ADDI_APCI_2200=m
+CONFIG_COMEDI_ADDI_APCI_3120=m
+CONFIG_COMEDI_ADDI_APCI_3501=m
+CONFIG_COMEDI_ADDI_APCI_3XXX=m
+CONFIG_COMEDI_ADL_PCI6208=m
+CONFIG_COMEDI_ADL_PCI7X3X=m
+CONFIG_COMEDI_ADL_PCI8164=m
+CONFIG_COMEDI_ADL_PCI9111=m
+CONFIG_COMEDI_ADL_PCI9118=m
+CONFIG_COMEDI_ADV_PCI1710=m
+CONFIG_COMEDI_ADV_PCI1720=m
+CONFIG_COMEDI_ADV_PCI1723=m
+CONFIG_COMEDI_ADV_PCI1724=m
+CONFIG_COMEDI_ADV_PCI1760=m
+CONFIG_COMEDI_ADV_PCI_DIO=m
+CONFIG_COMEDI_AMPLC_DIO200_PCI=m
+CONFIG_COMEDI_AMPLC_PC236_PCI=m
+CONFIG_COMEDI_AMPLC_PC263_PCI=m
+CONFIG_COMEDI_AMPLC_PCI224=m
+CONFIG_COMEDI_AMPLC_PCI230=m
+CONFIG_COMEDI_CONTEC_PCI_DIO=m
+CONFIG_COMEDI_DAS08_PCI=m
+CONFIG_COMEDI_DT3000=m
+CONFIG_COMEDI_DYNA_PCI10XX=m
+CONFIG_COMEDI_GSC_HPDI=m
+CONFIG_COMEDI_MF6X4=m
+CONFIG_COMEDI_ICP_MULTI=m
+CONFIG_COMEDI_DAQBOARD2000=m
+CONFIG_COMEDI_JR3_PCI=m
+CONFIG_COMEDI_KE_COUNTER=m
+CONFIG_COMEDI_CB_PCIDAS64=m
+CONFIG_COMEDI_CB_PCIDAS=m
+CONFIG_COMEDI_CB_PCIDDA=m
+CONFIG_COMEDI_CB_PCIMDAS=m
+CONFIG_COMEDI_CB_PCIMDDA=m
+CONFIG_COMEDI_ME4000=m
+CONFIG_COMEDI_ME_DAQ=m
+CONFIG_COMEDI_NI_6527=m
+CONFIG_COMEDI_NI_65XX=m
+CONFIG_COMEDI_NI_660X=m
+CONFIG_COMEDI_NI_670X=m
+CONFIG_COMEDI_NI_LABPC_PCI=m
+CONFIG_COMEDI_NI_PCIDIO=m
+CONFIG_COMEDI_NI_PCIMIO=m
+CONFIG_COMEDI_RTD520=m
+CONFIG_COMEDI_S626=m
+CONFIG_COMEDI_PCMCIA_DRIVERS=y
+CONFIG_COMEDI_CB_DAS16_CS=m
+CONFIG_COMEDI_DAS08_CS=m
+CONFIG_COMEDI_NI_DAQ_700_CS=m
+CONFIG_COMEDI_NI_DAQ_DIO24_CS=m
+CONFIG_COMEDI_NI_LABPC_CS=m
+CONFIG_COMEDI_NI_MIO_CS=m
+CONFIG_COMEDI_QUATECH_DAQP_CS=m
+CONFIG_COMEDI_USB_DRIVERS=y
+CONFIG_COMEDI_DT9812=m
+CONFIG_COMEDI_NI_USB6501=m
+CONFIG_COMEDI_USBDUX=m
+CONFIG_COMEDI_USBDUXFAST=m
+CONFIG_COMEDI_USBDUXSIGMA=m
+CONFIG_COMEDI_VMK80XX=m
+CONFIG_COMEDI_8255_SA=m
+CONFIG_COMEDI_KCOMEDILIB=m
+
+##
+## file: drivers/staging/media/Kconfig
+##
+CONFIG_STAGING_MEDIA=y
+
+##
+## file: drivers/staging/rtl8192e/Kconfig
+##
+CONFIG_RTLLIB=m
+CONFIG_RTLLIB_CRYPTO_CCMP=m
+CONFIG_RTLLIB_CRYPTO_TKIP=m
+CONFIG_RTLLIB_CRYPTO_WEP=m
+
+##
+## file: drivers/staging/rtl8192e/rtl8192e/Kconfig
+##
+CONFIG_RTL8192E=m
+
+##
+## file: drivers/staging/rtl8192u/Kconfig
+##
+CONFIG_RTL8192U=m
+
+##
+## file: drivers/staging/rtl8723bs/Kconfig
+##
+CONFIG_RTL8723BS=m
+
+##
+## file: drivers/staging/rts5208/Kconfig
+##
+CONFIG_RTS5208=m
+
+##
+## file: drivers/staging/vt6656/Kconfig
+##
+CONFIG_VT6656=m
+
+##
+## file: drivers/staging/wlan-ng/Kconfig
+##
+CONFIG_PRISM2_USB=m
+
+##
+## file: drivers/thermal/Kconfig
+##
+CONFIG_THERMAL=y
+# CONFIG_THERMAL_OF is not set
+# CONFIG_CPU_THERMAL is not set
+
+##
+## file: drivers/thermal/intel/Kconfig
+##
+CONFIG_INTEL_POWERCLAMP=m
+CONFIG_X86_PKG_TEMP_THERMAL=m
+CONFIG_INTEL_SOC_DTS_THERMAL=m
+CONFIG_INTEL_PCH_THERMAL=m
+
+##
+## file: drivers/thermal/intel/int340x_thermal/Kconfig
+##
+CONFIG_INT340X_THERMAL=m
+CONFIG_INT3406_THERMAL=m
+
+##
+## file: drivers/thunderbolt/Kconfig
+##
+CONFIG_USB4=m
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+CONFIG_SERIAL_NONSTANDARD=y
+CONFIG_ROCKETPORT=m
+CONFIG_CYCLADES=m
+# CONFIG_CYZ_INTR is not set
+CONFIG_SYNCLINK=m
+CONFIG_SYNCLINKMP=m
+CONFIG_N_HDLC=m
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_JSM=m
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_FINTEK=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_8250_CS=m
+CONFIG_SERIAL_8250_NR_UARTS=32
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+CONFIG_SERIAL_8250_EXTENDED=y
+CONFIG_SERIAL_8250_MANY_PORTS=y
+CONFIG_SERIAL_8250_SHARE_IRQ=y
+# CONFIG_SERIAL_8250_DETECT_IRQ is not set
+CONFIG_SERIAL_8250_RSA=y
+CONFIG_SERIAL_8250_DW=y
+CONFIG_SERIAL_8250_LPSS=m
+CONFIG_SERIAL_8250_MID=y
+
+##
+## file: drivers/uio/Kconfig
+##
+CONFIG_UIO_HV_GENERIC=m
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=m
+CONFIG_USB_USS720=m
+
+##
+## file: drivers/usb/atm/Kconfig
+##
+CONFIG_USB_ATM=m
+CONFIG_USB_SPEEDTOUCH=m
+
+##
+## file: drivers/usb/gadget/Kconfig
+##
+CONFIG_USB_GADGET=m
+
+##
+## file: drivers/usb/gadget/udc/Kconfig
+##
+CONFIG_USB_EG20T=m
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_OHCI_HCD=m
+# CONFIG_USB_OHCI_HCD_SSB is not set
+CONFIG_USB_UHCI_HCD=m
+CONFIG_USB_SL811_HCD=m
+# CONFIG_USB_SL811_HCD_ISO is not set
+CONFIG_USB_SL811_CS=m
+
+##
+## file: drivers/usb/roles/Kconfig
+##
+CONFIG_USB_ROLES_INTEL_XHCI=m
+
+##
+## file: drivers/usb/typec/Kconfig
+##
+CONFIG_TYPEC=m
+CONFIG_TYPEC_TPS6598X=m
+
+##
+## file: drivers/usb/typec/mux/Kconfig
+##
+CONFIG_TYPEC_MUX_PI3USB30532=m
+
+##
+## file: drivers/usb/typec/tcpm/Kconfig
+##
+CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_FUSB302=m
+
+##
+## file: drivers/vfio/Kconfig
+##
+CONFIG_VFIO=m
+
+##
+## file: drivers/vfio/pci/Kconfig
+##
+CONFIG_VFIO_PCI=m
+CONFIG_VFIO_PCI_VGA=y
+
+##
+## file: drivers/video/console/Kconfig
+##
+CONFIG_VGA_CONSOLE=y
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_MODE_HELPERS=y
+CONFIG_FB_TILEBLITTING=y
+CONFIG_FB_CIRRUS=m
+CONFIG_FB_PM2=m
+CONFIG_FB_PM2_FIFO_DISCONNECT=y
+CONFIG_FB_CYBER2000=m
+CONFIG_FB_CYBER2000_DDC=y
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+CONFIG_FB_VGA16=m
+CONFIG_FB_UVESA=m
+CONFIG_FB_VESA=y
+CONFIG_FB_EFI=y
+CONFIG_FB_N411=m
+CONFIG_FB_HGA=m
+CONFIG_FB_LE80578=m
+CONFIG_FB_CARILLO_RANCH=m
+# CONFIG_FB_INTEL is not set
+CONFIG_FB_MATROX=m
+CONFIG_FB_MATROX_MILLENIUM=y
+CONFIG_FB_MATROX_MYSTIQUE=y
+CONFIG_FB_MATROX_I2C=m
+CONFIG_FB_RADEON=m
+CONFIG_FB_RADEON_I2C=y
+CONFIG_FB_RADEON_BACKLIGHT=y
+# CONFIG_FB_RADEON_DEBUG is not set
+CONFIG_FB_ATY128=m
+CONFIG_FB_ATY128_BACKLIGHT=y
+CONFIG_FB_ATY=m
+CONFIG_FB_ATY_CT=y
+CONFIG_FB_ATY_GX=y
+CONFIG_FB_ATY_BACKLIGHT=y
+CONFIG_FB_SAVAGE=m
+# CONFIG_FB_SAVAGE_ACCEL is not set
+CONFIG_FB_SIS=m
+CONFIG_FB_SIS_300=y
+CONFIG_FB_SIS_315=y
+CONFIG_FB_NEOMAGIC=m
+CONFIG_FB_KYRO=m
+CONFIG_FB_VOODOO1=m
+CONFIG_FB_TRIDENT=m
+CONFIG_FB_VIRTUAL=m
+CONFIG_FB_HYPERV=m
+#. Doesn't support handover; see #822575
+# CONFIG_FB_SIMPLE is not set
+
+##
+## file: drivers/video/fbdev/geode/Kconfig
+##
+# CONFIG_FB_GEODE is not set
+
+##
+## file: drivers/virt/vboxguest/Kconfig
+##
+CONFIG_VBOXGUEST=m
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_MENF21BMC_WATCHDOG=m
+CONFIG_ACQUIRE_WDT=m
+CONFIG_ADVANTECH_WDT=m
+CONFIG_ALIM1535_WDT=m
+CONFIG_ALIM7101_WDT=m
+CONFIG_F71808E_WDT=m
+CONFIG_SP5100_TCO=m
+CONFIG_GEODE_WDT=m
+CONFIG_EUROTECH_WDT=m
+CONFIG_IB700_WDT=m
+CONFIG_IBMASR=m
+CONFIG_WAFER_WDT=m
+CONFIG_I6300ESB_WDT=m
+CONFIG_IE6XX_WDT=m
+CONFIG_IT8712F_WDT=m
+CONFIG_HP_WATCHDOG=m
+CONFIG_HPWDT_NMI_DECODING=y
+CONFIG_KEMPLD_WDT=m
+CONFIG_SC1200_WDT=m
+CONFIG_NV_TCO=m
+CONFIG_60XX_WDT=m
+CONFIG_CPU5_WDT=m
+CONFIG_VIA_WDT=m
+CONFIG_W83627HF_WDT=m
+CONFIG_W83877F_WDT=m
+CONFIG_W83977F_WDT=m
+CONFIG_MACHZ_WDT=m
+CONFIG_INTEL_MEI_WDT=m
+CONFIG_NI903X_WDT=m
+CONFIG_NIC7018_WDT=m
+CONFIG_PCIPCWATCHDOG=m
+CONFIG_WDTPCI=m
+CONFIG_USBPCWATCHDOG=m
+
+##
+## file: drivers/xen/Kconfig
+##
+CONFIG_XEN_ACPI_PROCESSOR=m
+CONFIG_XEN_SYMS=y
+
+##
+## file: fs/proc/Kconfig
+##
+CONFIG_PROC_VMCORE=y
+
+##
+## file: fs/pstore/Kconfig
+##
+CONFIG_PSTORE=y
+
+##
+## file: fs/vboxsf/Kconfig
+##
+CONFIG_VBOXSF_FS=m
+
+##
+## file: init/Kconfig
+##
+CONFIG_USELIB=y
+# CONFIG_IRQ_TIME_ACCOUNTING is not set
+CONFIG_SGETMASK_SYSCALL=y
+CONFIG_SYSFS_SYSCALL=y
+
+##
+## file: kernel/irq/Kconfig
+##
+CONFIG_SPARSE_IRQ=y
+
+##
+## file: kernel/power/Kconfig
+##
+# CONFIG_PM_TEST_SUSPEND is not set
+# CONFIG_PM_TRACE_RTC is not set
+
+##
+## file: kernel/trace/Kconfig
+##
+CONFIG_MMIOTRACE=y
+
+##
+## file: lib/Kconfig.debug
+##
+# CONFIG_FRAME_POINTER is not set
+# CONFIG_DEBUG_STACK_USAGE is not set
+# CONFIG_DEBUG_PER_CPU_MAPS is not set
+# CONFIG_DEBUG_STACKOVERFLOW is not set
+# CONFIG_DEBUG_SHIRQ is not set
+# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
+CONFIG_MEMTEST=y
+
+##
+## file: lib/xz/Kconfig
+##
+CONFIG_XZ_DEC_X86=y
+
+##
+## file: mm/Kconfig
+##
+CONFIG_DEFAULT_MMAP_MIN_ADDR=65536
+
+##
+## file: mm/Kconfig.debug
+##
+CONFIG_DEBUG_WX=y
+
+##
+## file: net/lapb/Kconfig
+##
+CONFIG_LAPB=m
+
+##
+## file: net/nfc/hci/Kconfig
+##
+CONFIG_NFC_HCI=m
+
+##
+## file: net/vmw_vsock/Kconfig
+##
+CONFIG_VMWARE_VMCI_VSOCKETS=m
+CONFIG_HYPERV_VSOCKETS=m
+
+##
+## file: security/Kconfig
+##
+CONFIG_INTEL_TXT=y
+
+##
+## file: sound/drivers/Kconfig
+##
+CONFIG_SND_DUMMY=m
+CONFIG_SND_VIRMIDI=m
+CONFIG_SND_MTPAV=m
+CONFIG_SND_SERIAL_U16550=m
+CONFIG_SND_MPU401=m
+
+##
+## file: sound/pci/Kconfig
+##
+CONFIG_SND_ALS4000=m
+CONFIG_SND_ALI5451=m
+CONFIG_SND_ATIIXP=m
+CONFIG_SND_ATIIXP_MODEM=m
+CONFIG_SND_AU8810=m
+CONFIG_SND_AU8820=m
+CONFIG_SND_AU8830=m
+CONFIG_SND_AZT3328=m
+CONFIG_SND_BT87X=m
+# CONFIG_SND_BT87X_OVERCLOCK is not set
+CONFIG_SND_CA0106=m
+CONFIG_SND_CMIPCI=m
+CONFIG_SND_CS4281=m
+CONFIG_SND_CS46XX=m
+CONFIG_SND_CS46XX_NEW_DSP=y
+CONFIG_SND_EMU10K1=m
+CONFIG_SND_EMU10K1X=m
+CONFIG_SND_ENS1370=m
+CONFIG_SND_ENS1371=m
+CONFIG_SND_ES1938=m
+CONFIG_SND_ES1968=m
+CONFIG_SND_FM801=m
+CONFIG_SND_FM801_TEA575X_BOOL=y
+CONFIG_SND_HDSP=m
+CONFIG_SND_ICE1712=m
+CONFIG_SND_ICE1724=m
+CONFIG_SND_INTEL8X0=m
+CONFIG_SND_INTEL8X0M=m
+CONFIG_SND_KORG1212=m
+CONFIG_SND_MAESTRO3=m
+CONFIG_SND_MIXART=m
+CONFIG_SND_NM256=m
+CONFIG_SND_RME32=m
+CONFIG_SND_RME96=m
+CONFIG_SND_RME9652=m
+CONFIG_SND_SONICVIBES=m
+CONFIG_SND_TRIDENT=m
+CONFIG_SND_VIA82XX=m
+CONFIG_SND_VIA82XX_MODEM=m
+CONFIG_SND_VX222=m
+CONFIG_SND_YMFPCI=m
+
+##
+## file: sound/pci/hda/Kconfig
+##
+CONFIG_SND_HDA_INTEL=m
+
+##
+## file: sound/soc/Kconfig
+##
+CONFIG_SND_SOC=m
+
+##
+## file: sound/soc/amd/Kconfig
+##
+CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_DA7219MX98357_MACH=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
+
+##
+## file: sound/soc/codecs/Kconfig
+##
+CONFIG_SND_SOC_ES8316=m
+
+##
+## file: sound/soc/intel/Kconfig
+##
+CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=y
+CONFIG_SND_SOC_INTEL_CATPT=m
+# CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI is not set
+CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_ACPI=m
+CONFIG_SND_SOC_INTEL_SKYLAKE=m
+CONFIG_SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC=y
+
+##
+## file: sound/soc/intel/boards/Kconfig
+##
+CONFIG_SND_SOC_INTEL_USER_FRIENDLY_LONG_NAMES=y
+CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
+CONFIG_SND_SOC_INTEL_BDW_RT5650_MACH=m
+CONFIG_SND_SOC_INTEL_BDW_RT5677_MACH=m
+CONFIG_SND_SOC_INTEL_BROADWELL_MACH=m
+CONFIG_SND_SOC_INTEL_BYTCR_RT5640_MACH=m
+CONFIG_SND_SOC_INTEL_BYTCR_RT5651_MACH=m
+CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
+CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
+CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
+CONFIG_SND_SOC_INTEL_CHT_BSW_NAU8824_MACH=m
+CONFIG_SND_SOC_INTEL_BYT_CHT_CX2072X_MACH=m
+CONFIG_SND_SOC_INTEL_BYT_CHT_DA7213_MACH=m
+CONFIG_SND_SOC_INTEL_BYT_CHT_ES8316_MACH=m
+# CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH is not set
+CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m
+CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m
+CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m
+# CONFIG_SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH is not set
+# CONFIG_SND_SOC_INTEL_BXT_RT298_MACH is not set
+CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
+CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
+CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH=m
+CONFIG_SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH=m
+CONFIG_SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH=m
+CONFIG_SND_SOC_INTEL_SOF_RT5682_MACH=m
+CONFIG_SND_SOC_INTEL_SOUNDWIRE_SOF_MACH=m
+
+##
+## file: sound/soc/sof/Kconfig
+##
+CONFIG_SND_SOC_SOF_TOPLEVEL=y
+CONFIG_SND_SOC_SOF_PCI=m
+#. The drivers using this conflict with others (see #945914)
+# CONFIG_SND_SOC_SOF_ACPI is not set
+
+##
+## file: sound/soc/sof/intel/Kconfig
+##
+CONFIG_SND_SOC_SOF_INTEL_TOPLEVEL=y
+CONFIG_SND_SOC_SOF_MERRIFIELD_SUPPORT=y
+CONFIG_SND_SOC_SOF_APOLLOLAKE_SUPPORT=y
+CONFIG_SND_SOC_SOF_GEMINILAKE_SUPPORT=y
+CONFIG_SND_SOC_SOF_CANNONLAKE_SUPPORT=y
+CONFIG_SND_SOC_SOF_COFFEELAKE_SUPPORT=y
+CONFIG_SND_SOC_SOF_ICELAKE_SUPPORT=y
+CONFIG_SND_SOC_SOF_COMETLAKE_LP_SUPPORT=y
+CONFIG_SND_SOC_SOF_TIGERLAKE_SUPPORT=y
+CONFIG_SND_SOC_SOF_ELKHARTLAKE_SUPPORT=y
+CONFIG_SND_SOC_SOF_JASPERLAKE_SUPPORT=y
+CONFIG_SND_SOC_SOF_HDA_LINK=y
+CONFIG_SND_SOC_SOF_HDA_AUDIO_CODEC=y
+CONFIG_SND_SOC_SOF_INTEL_SOUNDWIRE_LINK=y
+
+##
+## file: sound/x86/Kconfig
+##
+CONFIG_SND_X86=y
+CONFIG_HDMI_LPE_AUDIO=m
+
diff --git a/debian/config/m68k/README.build b/debian/config/m68k/README.build
new file mode 100644
index 000000000..8941608ef
--- /dev/null
+++ b/debian/config/m68k/README.build
@@ -0,0 +1,26 @@
+HOWTO cross-build m68k linux-image
+
+Building linux-image packages takes a while, especially on the "slower
+arches", ie m68k. Cross-compiling is an alternative, and it works very well
+for m68k.
+
+You need to set up a cross-compiler. The toolchain-source package has some
+limitations, I prefer using cross-tools, see this page for instructions:
+
+ http://people.debian.org/~cts/debian-m68k/cross-compile/
+
+Now you only have to tell the debian build system, that you do want to build
+packages for m68k. It used to be sufficient to pass an option to debuild,
+since recently you also have to set an environment variable, like this:
+
+ DEB_HOST_ARCH=m68k debuild -B -am68k
+
+If you also want to build source packages, omit the -B.
+
+If you want to build images for just one of the currently nine subarches,
+you can uncomment some lines in the flavours section in:
+ debian/arch/m68k/defines
+
+The first run of debuild will give you an error message that updating the
+configs suceeded, the second run will build the images.
+
diff --git a/debian/config/m68k/config b/debian/config/m68k/config
new file mode 100644
index 000000000..28f0d42f4
--- /dev/null
+++ b/debian/config/m68k/config
@@ -0,0 +1,881 @@
+##
+## file: arch/m68k/Kconfig
+##
+# CONFIG_PM is not set
+
+##
+## file: arch/m68k/Kconfig.bus
+##
+CONFIG_ZORRO=y
+CONFIG_AMIGA_PCMCIA=y
+CONFIG_ATARI_ROM_ISA=y
+
+##
+## file: arch/m68k/Kconfig.cpu
+##
+CONFIG_M68020=y
+CONFIG_M68030=y
+CONFIG_M68040=y
+CONFIG_M68060=y
+CONFIG_M68KFPU_EMU=y
+# CONFIG_ADVANCED is not set
+
+##
+## file: arch/m68k/Kconfig.debug
+##
+CONFIG_EARLY_PRINTK=y
+
+##
+## file: arch/m68k/Kconfig.devices
+##
+CONFIG_HEARTBEAT=y
+CONFIG_PROC_HARDWARE=y
+CONFIG_NATFEAT=y
+CONFIG_NFBLOCK=y
+CONFIG_NFCON=y
+CONFIG_NFETH=y
+CONFIG_ATARI_ETHERNAT=y
+CONFIG_ATARI_ETHERNEC=y
+CONFIG_ATARI_DSP56K=m
+CONFIG_AMIGA_BUILTIN_SERIAL=y
+CONFIG_SERIAL_CONSOLE=y
+
+##
+## file: arch/m68k/Kconfig.machine
+##
+CONFIG_AMIGA=y
+CONFIG_ATARI=y
+CONFIG_MAC=y
+CONFIG_APOLLO=y
+CONFIG_VME=y
+CONFIG_MVME147=y
+CONFIG_MVME16x=y
+CONFIG_BVME6000=y
+# CONFIG_HP300 is not set
+# CONFIG_SUN3X is not set
+CONFIG_Q40=y
+# CONFIG_SUN3 is not set
+
+##
+## file: block/Kconfig
+##
+# CONFIG_BLK_DEV_INTEGRITY is not set
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_PARTITION_ADVANCED=y
+CONFIG_AMIGA_PARTITION=y
+CONFIG_ATARI_PARTITION=y
+CONFIG_MAC_PARTITION=y
+CONFIG_MSDOS_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+CONFIG_MINIX_SUBPARTITION=y
+CONFIG_SOLARIS_X86_PARTITION=y
+CONFIG_UNIXWARE_DISKLABEL=y
+CONFIG_LDM_PARTITION=y
+CONFIG_LDM_DEBUG=y
+CONFIG_SUN_PARTITION=y
+# CONFIG_KARMA_PARTITION is not set
+CONFIG_SYSV68_PARTITION=y
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+
+##
+## file: crypto/asymmetric_keys/Kconfig
+##
+# CONFIG_ASYMMETRIC_KEY_TYPE is not set
+
+##
+## file: drivers/accessibility/Kconfig
+##
+# CONFIG_ACCESSIBILITY is not set
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_FALCON=m
+CONFIG_PATA_GAYLE=m
+CONFIG_PATA_BUDDHA=m
+
+##
+## file: drivers/bcma/Kconfig
+##
+# CONFIG_BCMA is not set
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_BLK_DEV_FD=m
+CONFIG_AMIGA_FLOPPY=m
+CONFIG_ATARI_FLOPPY=m
+CONFIG_BLK_DEV_SWIM=m
+CONFIG_AMIGA_Z2RAM=y
+CONFIG_CDROM_PKTCDVD=m
+# CONFIG_BLK_DEV_RBD is not set
+
+##
+## file: drivers/block/drbd/Kconfig
+##
+# CONFIG_BLK_DEV_DRBD is not set
+
+##
+## file: drivers/block/mtip32xx/Kconfig
+##
+# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
+
+##
+## file: drivers/char/Kconfig
+##
+CONFIG_PRINTER=m
+# CONFIG_LP_CONSOLE is not set
+# CONFIG_PPDEV is not set
+CONFIG_NVRAM=y
+
+##
+## file: drivers/connector/Kconfig
+##
+CONFIG_CONNECTOR=m
+
+##
+## file: drivers/crypto/Kconfig
+##
+# CONFIG_CRYPTO_HW is not set
+
+##
+## file: drivers/firewire/Kconfig
+##
+# CONFIG_FIREWIRE is not set
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+# CONFIG_DRM is not set
+
+##
+## file: drivers/hwmon/Kconfig
+##
+# CONFIG_HWMON is not set
+
+##
+## file: drivers/i2c/Kconfig
+##
+# CONFIG_I2C is not set
+
+##
+## file: drivers/ide/Kconfig
+##
+CONFIG_IDE=m
+# CONFIG_BLK_DEV_IDE_SATA is not set
+CONFIG_BLK_DEV_IDECS=m
+CONFIG_BLK_DEV_IDECD=m
+CONFIG_BLK_DEV_IDETAPE=m
+CONFIG_IDE_GENERIC=m
+CONFIG_BLK_DEV_PLATFORM=m
+CONFIG_BLK_DEV_GAYLE=m
+CONFIG_BLK_DEV_BUDDHA=m
+CONFIG_BLK_DEV_FALCON_IDE=m
+CONFIG_BLK_DEV_MAC_IDE=m
+CONFIG_BLK_DEV_Q40IDE=m
+
+##
+## file: drivers/iio/Kconfig
+##
+# CONFIG_IIO is not set
+
+##
+## file: drivers/infiniband/Kconfig
+##
+# CONFIG_INFINIBAND is not set
+
+##
+## file: drivers/input/Kconfig
+##
+CONFIG_INPUT_MOUSEDEV=y
+
+##
+## file: drivers/input/gameport/Kconfig
+##
+# CONFIG_GAMEPORT is not set
+
+##
+## file: drivers/input/joystick/Kconfig
+##
+CONFIG_INPUT_JOYSTICK=y
+# CONFIG_JOYSTICK_ANALOG is not set
+# CONFIG_JOYSTICK_A3D is not set
+# CONFIG_JOYSTICK_ADI is not set
+# CONFIG_JOYSTICK_COBRA is not set
+# CONFIG_JOYSTICK_GF2K is not set
+# CONFIG_JOYSTICK_GRIP is not set
+# CONFIG_JOYSTICK_GRIP_MP is not set
+# CONFIG_JOYSTICK_GUILLEMOT is not set
+# CONFIG_JOYSTICK_INTERACT is not set
+# CONFIG_JOYSTICK_SIDEWINDER is not set
+# CONFIG_JOYSTICK_TMDC is not set
+# CONFIG_JOYSTICK_WARRIOR is not set
+# CONFIG_JOYSTICK_MAGELLAN is not set
+# CONFIG_JOYSTICK_SPACEORB is not set
+# CONFIG_JOYSTICK_SPACEBALL is not set
+# CONFIG_JOYSTICK_STINGER is not set
+# CONFIG_JOYSTICK_TWIDJOY is not set
+# CONFIG_JOYSTICK_ZHENHUA is not set
+CONFIG_JOYSTICK_DB9=m
+# CONFIG_JOYSTICK_GAMECON is not set
+# CONFIG_JOYSTICK_TURBOGRAFX is not set
+CONFIG_JOYSTICK_AMIGA=m
+# CONFIG_JOYSTICK_JOYDUMP is not set
+
+##
+## file: drivers/input/joystick/iforce/Kconfig
+##
+# CONFIG_JOYSTICK_IFORCE is not set
+# CONFIG_JOYSTICK_IFORCE_232 is not set
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+# CONFIG_KEYBOARD_ADP5588 is not set
+CONFIG_KEYBOARD_AMIGA=y
+CONFIG_KEYBOARD_ATARI=y
+CONFIG_KEYBOARD_ATKBD=y
+# CONFIG_KEYBOARD_QT2160 is not set
+# CONFIG_KEYBOARD_LM8323 is not set
+# CONFIG_KEYBOARD_MAX7359 is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+
+##
+## file: drivers/input/misc/Kconfig
+##
+CONFIG_INPUT_MISC=y
+CONFIG_INPUT_M68K_BEEP=m
+# CONFIG_INPUT_ATI_REMOTE2 is not set
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
+# CONFIG_INPUT_POWERMATE is not set
+# CONFIG_INPUT_YEALINK is not set
+# CONFIG_INPUT_CM109 is not set
+CONFIG_INPUT_UINPUT=m
+# CONFIG_INPUT_PCF50633_PMU is not set
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=m
+# CONFIG_MOUSE_PS2_LIFEBOOK is not set
+# CONFIG_MOUSE_PS2_ELANTECH is not set
+# CONFIG_MOUSE_PS2_SENTELIC is not set
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
+# CONFIG_MOUSE_PS2_OLPC is not set
+CONFIG_MOUSE_SERIAL=m
+# CONFIG_MOUSE_INPORT is not set
+# CONFIG_MOUSE_LOGIBM is not set
+# CONFIG_MOUSE_PC110PAD is not set
+CONFIG_MOUSE_AMIGA=m
+CONFIG_MOUSE_ATARI=m
+# CONFIG_MOUSE_SYNAPTICS_I2C is not set
+# CONFIG_MOUSE_SYNAPTICS_USB is not set
+
+##
+## file: drivers/input/serio/Kconfig
+##
+CONFIG_SERIO=y
+CONFIG_SERIO_SERPORT=y
+CONFIG_SERIO_Q40KBD=y
+CONFIG_SERIO_LIBPS2=y
+# CONFIG_SERIO_ALTERA_PS2 is not set
+
+##
+## file: drivers/input/tablet/Kconfig
+##
+# CONFIG_INPUT_TABLET is not set
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+# CONFIG_INPUT_TOUCHSCREEN is not set
+
+##
+## file: drivers/iommu/Kconfig
+##
+# CONFIG_IOMMU_SUPPORT is not set
+
+##
+## file: drivers/leds/Kconfig
+##
+# CONFIG_NEW_LEDS is not set
+
+##
+## file: drivers/macintosh/Kconfig
+##
+CONFIG_ADB=y
+CONFIG_ADB_MACII=y
+#. switched on for the benefit of IIfx, Q900, Q950
+CONFIG_ADB_IOP=y
+CONFIG_ADB_CUDA=y
+CONFIG_ADB_PMU=y
+CONFIG_INPUT_ADBHID=y
+CONFIG_MAC_EMUMOUSEBTN=m
+
+##
+## file: drivers/media/Kconfig
+##
+# CONFIG_MEDIA_SUPPORT is not set
+
+##
+## file: drivers/memstick/Kconfig
+##
+# CONFIG_MEMSTICK is not set
+
+##
+## file: drivers/mfd/Kconfig
+##
+# CONFIG_HTC_PASIC3 is not set
+# CONFIG_MFD_SM501 is not set
+
+##
+## file: drivers/misc/Kconfig
+##
+# CONFIG_ENCLOSURE_SERVICES is not set
+
+##
+## file: drivers/misc/c2port/Kconfig
+##
+# CONFIG_C2PORT is not set
+
+##
+## file: drivers/misc/eeprom/Kconfig
+##
+# CONFIG_EEPROM_93CX6 is not set
+
+##
+## file: drivers/mmc/Kconfig
+##
+# CONFIG_MMC is not set
+
+##
+## file: drivers/mtd/Kconfig
+##
+# CONFIG_MTD is not set
+
+##
+## file: drivers/net/appletalk/Kconfig
+##
+CONFIG_DEV_APPLETALK=m
+
+##
+## file: drivers/net/arcnet/Kconfig
+##
+# CONFIG_ARCNET is not set
+
+##
+## file: drivers/net/ethernet/Kconfig
+##
+# CONFIG_DNET is not set
+# CONFIG_ETHOC is not set
+
+##
+## file: drivers/net/ethernet/8390/Kconfig
+##
+CONFIG_XSURF100=m
+CONFIG_HYDRA=m
+CONFIG_MAC8390=m
+CONFIG_NE2000=m
+CONFIG_APNE=m
+CONFIG_ZORRO8390=m
+
+##
+## file: drivers/net/ethernet/amd/Kconfig
+##
+CONFIG_A2065=m
+CONFIG_ARIADNE=m
+CONFIG_ATARILANCE=m
+CONFIG_MVME147_NET=m
+
+##
+## file: drivers/net/ethernet/apple/Kconfig
+##
+CONFIG_MACMACE=y
+
+##
+## file: drivers/net/ethernet/cirrus/Kconfig
+##
+CONFIG_MAC89x0=m
+
+##
+## file: drivers/net/ethernet/i825xx/Kconfig
+##
+CONFIG_BVME6000_NET=m
+CONFIG_MVME16x_NET=m
+
+##
+## file: drivers/net/ethernet/micrel/Kconfig
+##
+# CONFIG_KS8851_MLL is not set
+
+##
+## file: drivers/net/ethernet/natsemi/Kconfig
+##
+CONFIG_MACSONIC=m
+
+##
+## file: drivers/net/ethernet/smsc/Kconfig
+##
+CONFIG_SMC91X=m
+
+##
+## file: drivers/net/ethernet/wiznet/Kconfig
+##
+# CONFIG_WIZNET_W5100 is not set
+# CONFIG_WIZNET_W5300 is not set
+
+##
+## file: drivers/net/plip/Kconfig
+##
+CONFIG_PLIP=m
+
+##
+## file: drivers/net/wan/Kconfig
+##
+# CONFIG_WAN is not set
+
+##
+## file: drivers/net/wireless/Kconfig
+##
+# CONFIG_WLAN is not set
+
+##
+## file: drivers/parport/Kconfig
+##
+# CONFIG_PARPORT_PC is not set
+CONFIG_PARPORT_AMIGA=m
+CONFIG_PARPORT_MFC3=m
+CONFIG_PARPORT_ATARI=m
+
+##
+## file: drivers/pnp/Kconfig
+##
+# CONFIG_PNP is not set
+
+##
+## file: drivers/power/supply/Kconfig
+##
+# CONFIG_POWER_SUPPLY is not set
+
+##
+## file: drivers/ptp/Kconfig
+##
+# CONFIG_PTP_1588_CLOCK is not set
+
+##
+## file: drivers/rtc/Kconfig
+##
+# CONFIG_RTC_DRV_DS1286 is not set
+# CONFIG_RTC_DRV_DS1511 is not set
+# CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_STK17TA8 is not set
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T35 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
+# CONFIG_RTC_DRV_MSM6242 is not set
+# CONFIG_RTC_DRV_BQ4802 is not set
+CONFIG_RTC_DRV_RP5C01=y
+# CONFIG_RTC_DRV_V3020 is not set
+# CONFIG_RTC_DRV_WM831X is not set
+# CONFIG_RTC_DRV_WM8350 is not set
+CONFIG_RTC_DRV_GENERIC=y
+
+##
+## file: drivers/scsi/Kconfig
+##
+#. for MVME147_SCSI that is not tristate
+CONFIG_SCSI=y
+CONFIG_SCSI_SPI_ATTRS=m
+# CONFIG_SCSI_FC_ATTRS is not set
+# CONFIG_SCSI_AHA152X is not set
+# CONFIG_SCSI_ADVANSYS is not set
+# CONFIG_LIBFC is not set
+CONFIG_A3000_SCSI=m
+CONFIG_A2091_SCSI=m
+CONFIG_GVP11_SCSI=m
+CONFIG_SCSI_A4000T=m
+CONFIG_SCSI_ZORRO7XX=m
+CONFIG_SCSI_ZORRO_ESP=m
+CONFIG_ATARI_SCSI=m
+CONFIG_MAC_SCSI=m
+CONFIG_SCSI_MAC_ESP=m
+CONFIG_MVME147_SCSI=y
+CONFIG_MVME16x_SCSI=m
+CONFIG_BVME6000_SCSI=m
+
+##
+## file: drivers/scsi/ufs/Kconfig
+##
+# CONFIG_SCSI_UFSHCD is not set
+
+##
+## file: drivers/spi/Kconfig
+##
+# CONFIG_SPI is not set
+
+##
+## file: drivers/ssb/Kconfig
+##
+# CONFIG_SSB is not set
+
+##
+## file: drivers/staging/Kconfig
+##
+# CONFIG_STAGING is not set
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+# CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_N_GSM is not set
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_PMACZILOG=y
+CONFIG_SERIAL_PMACZILOG_TTYS=y
+CONFIG_SERIAL_PMACZILOG_CONSOLE=y
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=m
+CONFIG_SERIAL_8250_CS=m
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
+# CONFIG_SERIAL_8250_EXTENDED is not set
+
+##
+## file: drivers/usb/Kconfig
+##
+# CONFIG_USB_SUPPORT is not set
+
+##
+## file: drivers/video/backlight/Kconfig
+##
+# CONFIG_LCD_CLASS_DEVICE is not set
+# CONFIG_BACKLIGHT_CLASS_DEVICE is not set
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+# CONFIG_FIRMWARE_EDID is not set
+CONFIG_FB_FOREIGN_ENDIAN=y
+## choice: Choice endianness support
+CONFIG_FB_BOTH_ENDIAN=y
+## end choice
+# CONFIG_FB_MODE_HELPERS is not set
+# CONFIG_FB_TILEBLITTING is not set
+CONFIG_FB_CIRRUS=y
+CONFIG_FB_PM2=m
+CONFIG_FB_AMIGA=y
+CONFIG_FB_AMIGA_OCS=y
+CONFIG_FB_AMIGA_ECS=y
+CONFIG_FB_AMIGA_AGA=y
+CONFIG_FB_FM2=y
+CONFIG_FB_ATARI=y
+CONFIG_FB_VALKYRIE=y
+CONFIG_FB_MAC=y
+# CONFIG_FB_UVESA is not set
+# CONFIG_FB_S1D13XXX is not set
+CONFIG_FB_ATY=y
+# CONFIG_FB_ATY_BACKLIGHT is not set
+# CONFIG_FB_VIRTUAL is not set
+# CONFIG_FB_METRONOME is not set
+
+##
+## file: drivers/video/logo/Kconfig
+##
+# CONFIG_LOGO is not set
+
+##
+## file: drivers/w1/Kconfig
+##
+# CONFIG_W1 is not set
+
+##
+## file: drivers/watchdog/Kconfig
+##
+# CONFIG_WATCHDOG is not set
+
+##
+## file: drivers/zorro/Kconfig
+##
+CONFIG_ZORRO_NAMES=y
+
+##
+## file: fs/adfs/Kconfig
+##
+# CONFIG_ADFS_FS is not set
+
+##
+## file: fs/afs/Kconfig
+##
+# CONFIG_AFS_FS is not set
+
+##
+## file: fs/befs/Kconfig
+##
+# CONFIG_BEFS_FS is not set
+
+##
+## file: fs/bfs/Kconfig
+##
+# CONFIG_BFS_FS is not set
+
+##
+## file: fs/Kconfig.binfmt
+##
+CONFIG_BINFMT_ELF=y
+CONFIG_BINFMT_MISC=m
+
+##
+## file: fs/ceph/Kconfig
+##
+# CONFIG_CEPH_FS is not set
+
+##
+## file: fs/dlm/Kconfig
+##
+# CONFIG_DLM is not set
+
+##
+## file: fs/efs/Kconfig
+##
+# CONFIG_EFS_FS is not set
+
+##
+## file: fs/f2fs/Kconfig
+##
+# CONFIG_F2FS_FS is not set
+
+##
+## file: fs/freevxfs/Kconfig
+##
+# CONFIG_VXFS_FS is not set
+
+##
+## file: fs/gfs2/Kconfig
+##
+# CONFIG_GFS2_FS is not set
+
+##
+## file: fs/jfs/Kconfig
+##
+# CONFIG_JFS_FS is not set
+
+##
+## file: fs/ocfs2/Kconfig
+##
+# CONFIG_OCFS2_FS is not set
+
+##
+## file: fs/omfs/Kconfig
+##
+# CONFIG_OMFS_FS is not set
+
+##
+## file: fs/qnx4/Kconfig
+##
+# CONFIG_QNX4FS_FS is not set
+
+##
+## file: fs/reiserfs/Kconfig
+##
+# CONFIG_REISERFS_FS_SECURITY is not set
+
+##
+## file: fs/ubifs/Kconfig
+##
+# CONFIG_UBIFS_FS is not set
+
+##
+## file: init/Kconfig
+##
+CONFIG_USELIB=y
+# CONFIG_AUDIT is not set
+# CONFIG_IKCONFIG is not set
+CONFIG_LOG_BUF_SHIFT=16
+# CONFIG_SCHED_AUTOGROUP is not set
+## choice: Compiler optimization level
+CONFIG_CC_OPTIMIZE_FOR_SIZE=y
+## end choice
+CONFIG_SGETMASK_SYSCALL=y
+CONFIG_SYSFS_SYSCALL=y
+CONFIG_COMPAT_BRK=y
+# CONFIG_MODULE_SIG is not set
+
+##
+## file: kernel/time/Kconfig
+##
+## choice: Timer tick handling
+CONFIG_HZ_PERIODIC=y
+# CONFIG_NO_HZ_IDLE is not set
+# CONFIG_NO_HZ_FULL is not set
+## end choice
+# CONFIG_NO_HZ is not set
+# CONFIG_HIGH_RES_TIMERS is not set
+
+##
+## file: lib/Kconfig.debug
+##
+# CONFIG_FRAME_POINTER is not set
+# CONFIG_DEBUG_FS is not set
+# CONFIG_SCHED_DEBUG is not set
+
+##
+## file: lib/fonts/Kconfig
+##
+CONFIG_FONT_6x11=y
+CONFIG_FONT_PEARL_8x8=y
+# CONFIG_FONT_TER16x32 is not set
+
+##
+## file: mm/Kconfig
+##
+# CONFIG_COMPACTION is not set
+# CONFIG_MIGRATION is not set
+# CONFIG_KSM is not set
+
+##
+## file: net/Kconfig
+##
+# CONFIG_WIRELESS is not set
+
+##
+## file: net/atm/Kconfig
+##
+# CONFIG_ATM is not set
+
+##
+## file: net/ax25/Kconfig
+##
+# CONFIG_HAMRADIO is not set
+
+##
+## file: net/batman-adv/Kconfig
+##
+# CONFIG_BATMAN_ADV is not set
+
+##
+## file: net/can/Kconfig
+##
+# CONFIG_CAN is not set
+
+##
+## file: net/ceph/Kconfig
+##
+# CONFIG_CEPH_LIB is not set
+
+##
+## file: net/dcb/Kconfig
+##
+# CONFIG_DCB is not set
+
+##
+## file: net/ieee802154/Kconfig
+##
+# CONFIG_IEEE802154 is not set
+
+##
+## file: net/ipv4/Kconfig
+##
+# CONFIG_IP_ADVANCED_ROUTER is not set
+# CONFIG_TCP_MD5SIG is not set
+
+##
+## file: net/ipv6/Kconfig
+##
+CONFIG_IPV6=m
+
+##
+## file: net/lapb/Kconfig
+##
+# CONFIG_LAPB is not set
+
+##
+## file: net/llc/Kconfig
+##
+# CONFIG_LLC2 is not set
+
+##
+## file: net/mac80211/Kconfig
+##
+# CONFIG_MAC80211 is not set
+
+##
+## file: net/nfc/Kconfig
+##
+# CONFIG_NFC is not set
+
+##
+## file: net/phonet/Kconfig
+##
+# CONFIG_PHONET is not set
+
+##
+## file: net/rds/Kconfig
+##
+# CONFIG_RDS is not set
+
+##
+## file: net/rfkill/Kconfig
+##
+# CONFIG_RFKILL is not set
+
+##
+## file: net/rxrpc/Kconfig
+##
+# CONFIG_AF_RXRPC is not set
+
+##
+## file: net/sctp/Kconfig
+##
+# CONFIG_IP_SCTP is not set
+
+##
+## file: net/tipc/Kconfig
+##
+# CONFIG_TIPC is not set
+
+##
+## file: net/wimax/Kconfig
+##
+# CONFIG_WIMAX is not set
+
+##
+## file: net/wireless/Kconfig
+##
+# CONFIG_CFG80211 is not set
+
+##
+## file: security/Kconfig
+##
+# CONFIG_SECURITY is not set
+# CONFIG_SECURITYFS is not set
+
+##
+## file: sound/Kconfig
+##
+# CONFIG_SND is not set
+
+##
+## file: sound/oss/dmasound/Kconfig
+##
+CONFIG_DMASOUND_ATARI=m
+CONFIG_DMASOUND_PAULA=m
+CONFIG_DMASOUND_Q40=m
+
diff --git a/debian/config/m68k/defines b/debian/config/m68k/defines
new file mode 100644
index 000000000..2f3289175
--- /dev/null
+++ b/debian/config/m68k/defines
@@ -0,0 +1,16 @@
+[base]
+cflags: -ffreestanding
+flavours:
+ m68k
+default-flavour: m68k
+kernel-arch: m68k
+
+[build]
+image-file: vmlinux
+
+[image]
+suggests: vmelilo, fdutils
+install-stem: vmlinux
+
+[m68k_description]
+hardware: Motorola MC68020+ family
diff --git a/debian/config/mips/config b/debian/config/mips/config
new file mode 100644
index 000000000..5942c9ab9
--- /dev/null
+++ b/debian/config/mips/config
@@ -0,0 +1,8 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: Endianness selection
+CONFIG_CPU_BIG_ENDIAN=y
+# CONFIG_CPU_LITTLE_ENDIAN is not set
+## end choice
+
diff --git a/debian/config/mips/defines b/debian/config/mips/defines
new file mode 100644
index 000000000..20b6bc19b
--- /dev/null
+++ b/debian/config/mips/defines
@@ -0,0 +1,41 @@
+[base]
+flavours:
+ 4kc-malta
+ 5kc-malta
+ octeon
+kernel-arch: mips
+
+[build]
+image-file: vmlinuz
+
+[image]
+install-stem: vmlinuz
+
+[4kc-malta_description]
+hardware: MIPS Malta
+hardware-long: MIPS Malta boards
+
+[4kc-malta_image]
+configs:
+ kernelarch-mips/config.malta
+ kernelarch-mips/config.mips32r2
+
+[5kc-malta_description]
+hardware: MIPS Malta (64-bit)
+hardware-long: MIPS Malta boards (64-bit)
+
+[5kc-malta_image]
+configs:
+ kernelarch-mips/config.malta
+ kernelarch-mips/config.mips64r2
+
+[octeon_description]
+hardware: Octeon
+hardware-long: Cavium Networks Octeon
+
+[octeon_build]
+image-file: vmlinux
+
+[octeon_image]
+install-stem: vmlinux
+configs: kernelarch-mips/config.octeon
diff --git a/debian/config/mips64/config b/debian/config/mips64/config
new file mode 100644
index 000000000..5942c9ab9
--- /dev/null
+++ b/debian/config/mips64/config
@@ -0,0 +1,8 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: Endianness selection
+CONFIG_CPU_BIG_ENDIAN=y
+# CONFIG_CPU_LITTLE_ENDIAN is not set
+## end choice
+
diff --git a/debian/config/mips64/defines b/debian/config/mips64/defines
new file mode 100644
index 000000000..3a99fe9ff
--- /dev/null
+++ b/debian/config/mips64/defines
@@ -0,0 +1,31 @@
+[base]
+flavours:
+ 5kc-malta
+ octeon
+kernel-arch: mips
+
+[build]
+image-file: vmlinuz
+
+[image]
+install-stem: vmlinuz
+
+[5kc-malta_description]
+hardware: MIPS Malta
+hardware-long: MIPS Malta boards
+
+[5kc-malta_image]
+configs:
+ kernelarch-mips/config.malta
+ kernelarch-mips/config.mips64r2
+
+[octeon_description]
+hardware: Octeon
+hardware-long: Cavium Networks Octeon
+
+[octeon_build]
+image-file: vmlinux
+
+[octeon_image]
+install-stem: vmlinux
+configs: kernelarch-mips/config.octeon
diff --git a/debian/config/mips64el/config b/debian/config/mips64el/config
new file mode 100644
index 000000000..4807b611e
--- /dev/null
+++ b/debian/config/mips64el/config
@@ -0,0 +1,12 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: Endianness selection
+# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_LITTLE_ENDIAN=y
+## end choice
+## choice: CPU type
+# CONFIG_CPU_MIPS64_R1 is not set
+CONFIG_CPU_MIPS64_R2=y
+## end choice
+
diff --git a/debian/config/mips64el/defines b/debian/config/mips64el/defines
new file mode 100644
index 000000000..fb25ca9e9
--- /dev/null
+++ b/debian/config/mips64el/defines
@@ -0,0 +1,39 @@
+[base]
+flavours:
+ 5kc-malta
+ loongson-3
+ octeon
+kernel-arch: mips
+
+[build]
+image-file: vmlinuz
+
+[image]
+install-stem: vmlinuz
+
+[5kc-malta_description]
+hardware: MIPS Malta
+hardware-long: MIPS Malta boards
+
+[5kc-malta_image]
+configs:
+ kernelarch-mips/config.malta
+ kernelarch-mips/config.mips64r2
+
+[loongson-3_description]
+hardware: Loongson 3A/3B
+hardware-long: Loongson 3A or 3B based systems (e.g. from Loongson or Lemote)
+
+[loongson-3_image]
+configs: kernelarch-mips/config.loongson-3
+
+[octeon_description]
+hardware: Octeon
+hardware-long: Cavium Networks Octeon
+
+[octeon_build]
+image-file: vmlinux
+
+[octeon_image]
+install-stem: vmlinux
+configs: kernelarch-mips/config.octeon
diff --git a/debian/config/mips64r6/config b/debian/config/mips64r6/config
new file mode 100644
index 000000000..5942c9ab9
--- /dev/null
+++ b/debian/config/mips64r6/config
@@ -0,0 +1,8 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: Endianness selection
+CONFIG_CPU_BIG_ENDIAN=y
+# CONFIG_CPU_LITTLE_ENDIAN is not set
+## end choice
+
diff --git a/debian/config/mips64r6/defines b/debian/config/mips64r6/defines
new file mode 100644
index 000000000..9a34fb3f8
--- /dev/null
+++ b/debian/config/mips64r6/defines
@@ -0,0 +1,21 @@
+[base]
+flavours:
+ mips64r6
+default-flavour: mips64r6
+kernel-arch: mips
+
+[build]
+image-file: vmlinux
+
+[image]
+install-stem: vmlinux
+
+[mips64r6_description]
+hardware: MIPS R6 (64 bit, big endian)
+hardware-long: MIPS R6 (64 bit, big endian)
+
+[mips64r6_image]
+configs:
+ kernelarch-mips/config.boston
+ kernelarch-mips/config.mips64r6
+
diff --git a/debian/config/mips64r6el/config b/debian/config/mips64r6el/config
new file mode 100644
index 000000000..7f124deb6
--- /dev/null
+++ b/debian/config/mips64r6el/config
@@ -0,0 +1,8 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: Endianness selection
+# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_LITTLE_ENDIAN=y
+## end choice
+
diff --git a/debian/config/mips64r6el/defines b/debian/config/mips64r6el/defines
new file mode 100644
index 000000000..80ae637e9
--- /dev/null
+++ b/debian/config/mips64r6el/defines
@@ -0,0 +1,21 @@
+[base]
+flavours:
+ mips64r6el
+default-flavour: mips64r6el
+kernel-arch: mips
+
+[build]
+image-file: vmlinux
+
+[image]
+install-stem: vmlinux
+
+[mips64r6el_description]
+hardware: MIPS R6 (64 bit, little endian)
+hardware-long: MIPS R6 (64 bit, little endian)
+
+[mips64r6el_image]
+configs:
+ kernelarch-mips/config.boston
+ kernelarch-mips/config.mips64r6
+
diff --git a/debian/config/mipsel/config b/debian/config/mipsel/config
new file mode 100644
index 000000000..7f124deb6
--- /dev/null
+++ b/debian/config/mipsel/config
@@ -0,0 +1,8 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: Endianness selection
+# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_LITTLE_ENDIAN=y
+## end choice
+
diff --git a/debian/config/mipsel/defines b/debian/config/mipsel/defines
new file mode 100644
index 000000000..9fcf2d43b
--- /dev/null
+++ b/debian/config/mipsel/defines
@@ -0,0 +1,49 @@
+[base]
+flavours:
+ 4kc-malta
+ 5kc-malta
+ loongson-3
+ octeon
+kernel-arch: mips
+
+[build]
+image-file: vmlinuz
+
+[image]
+install-stem: vmlinuz
+
+[4kc-malta_description]
+hardware: MIPS Malta
+hardware-long: MIPS Malta boards
+
+[4kc-malta_image]
+configs:
+ kernelarch-mips/config.malta
+ kernelarch-mips/config.mips32r2
+
+[5kc-malta_description]
+hardware: MIPS Malta (64-bit)
+hardware-long: MIPS Malta boards (64-bit)
+
+[5kc-malta_image]
+configs:
+ kernelarch-mips/config.malta
+ kernelarch-mips/config.mips64r2
+
+[loongson-3_description]
+hardware: Loongson 3A/3B
+hardware-long: Loongson 3A or 3B based systems (e.g. from Loongson or Lemote)
+
+[loongson-3_image]
+configs: kernelarch-mips/config.loongson-3
+
+[octeon_description]
+hardware: Octeon
+hardware-long: Cavium Networks Octeon
+
+[octeon_build]
+image-file: vmlinux
+
+[octeon_image]
+install-stem: vmlinux
+configs: kernelarch-mips/config.octeon
diff --git a/debian/config/mipsn32/defines b/debian/config/mipsn32/defines
new file mode 100644
index 000000000..fa9b8af89
--- /dev/null
+++ b/debian/config/mipsn32/defines
@@ -0,0 +1,4 @@
+[base]
+kernel-arch: mips
+featuresets:
+# empty; mipsn32 must be part of a multiarch installation with a mips64 kernel
diff --git a/debian/config/mipsn32el/defines b/debian/config/mipsn32el/defines
new file mode 100644
index 000000000..57d6f4922
--- /dev/null
+++ b/debian/config/mipsn32el/defines
@@ -0,0 +1,4 @@
+[base]
+kernel-arch: mips
+featuresets:
+# empty; mipsn32el must be part of a multiarch installation with a mips64el kernel
diff --git a/debian/config/mipsn32r6/defines b/debian/config/mipsn32r6/defines
new file mode 100644
index 000000000..2ba5f42be
--- /dev/null
+++ b/debian/config/mipsn32r6/defines
@@ -0,0 +1,4 @@
+[base]
+kernel-arch: mips
+featuresets:
+# empty; mipsn32r6 must be part of a multiarch installation with a mips64r6 kernel
diff --git a/debian/config/mipsn32r6el/defines b/debian/config/mipsn32r6el/defines
new file mode 100644
index 000000000..f4c8a96d8
--- /dev/null
+++ b/debian/config/mipsn32r6el/defines
@@ -0,0 +1,4 @@
+[base]
+kernel-arch: mips
+featuresets:
+# empty; mipsn32r6el must be part of a multiarch installation with a mips64r6el kernel
diff --git a/debian/config/mipsr6/config b/debian/config/mipsr6/config
new file mode 100644
index 000000000..5942c9ab9
--- /dev/null
+++ b/debian/config/mipsr6/config
@@ -0,0 +1,8 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: Endianness selection
+CONFIG_CPU_BIG_ENDIAN=y
+# CONFIG_CPU_LITTLE_ENDIAN is not set
+## end choice
+
diff --git a/debian/config/mipsr6/defines b/debian/config/mipsr6/defines
new file mode 100644
index 000000000..f899d2338
--- /dev/null
+++ b/debian/config/mipsr6/defines
@@ -0,0 +1,31 @@
+[base]
+flavours:
+ mips32r6
+ mips64r6
+default-flavour: mips32r6
+kernel-arch: mips
+
+[build]
+image-file: vmlinux
+
+[image]
+install-stem: vmlinux
+
+[mips32r6_description]
+hardware: MIPS R6 (32 bit, big endian)
+hardware-long: MIPS R6 (32 bit, big endian)
+
+[mips32r6_image]
+configs:
+ kernelarch-mips/config.boston
+ kernelarch-mips/config.mips32r6
+
+[mips64r6_description]
+hardware: MIPS R6 (64 bit, big endian)
+hardware-long: MIPS R6 (64 bit, big endian)
+
+[mips64r6_image]
+configs:
+ kernelarch-mips/config.boston
+ kernelarch-mips/config.mips64r6
+
diff --git a/debian/config/mipsr6el/config b/debian/config/mipsr6el/config
new file mode 100644
index 000000000..7f124deb6
--- /dev/null
+++ b/debian/config/mipsr6el/config
@@ -0,0 +1,8 @@
+##
+## file: arch/mips/Kconfig
+##
+## choice: Endianness selection
+# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_LITTLE_ENDIAN=y
+## end choice
+
diff --git a/debian/config/mipsr6el/defines b/debian/config/mipsr6el/defines
new file mode 100644
index 000000000..bb9039b3a
--- /dev/null
+++ b/debian/config/mipsr6el/defines
@@ -0,0 +1,31 @@
+[base]
+flavours:
+ mips32r6el
+ mips64r6el
+default-flavour: mips32r6el
+kernel-arch: mips
+
+[build]
+image-file: vmlinux
+
+[image]
+install-stem: vmlinux
+
+[mips32r6el_description]
+hardware: MIPS R6 (32 bit, little endian)
+hardware-long: MIPS R6 (32 bit, little endian)
+
+[mips32r6el_image]
+configs:
+ kernelarch-mips/config.boston
+ kernelarch-mips/config.mips32r6
+
+[mips64r6el_description]
+hardware: MIPS R6 (64 bit, little endian)
+hardware-long: MIPS R6 (64 bit, little endian)
+
+[mips64r6el_image]
+configs:
+ kernelarch-mips/config.boston
+ kernelarch-mips/config.mips64r6
+
diff --git a/debian/config/powerpc/config.powerpc b/debian/config/powerpc/config.powerpc
new file mode 100644
index 000000000..63a07fb2e
--- /dev/null
+++ b/debian/config/powerpc/config.powerpc
@@ -0,0 +1,113 @@
+##
+## file: arch/powerpc/Kconfig
+##
+CONFIG_HIGHMEM=y
+# CONFIG_ISA is not set
+
+##
+## file: arch/powerpc/platforms/512x/Kconfig
+##
+# CONFIG_MPC5121_ADS is not set
+
+##
+## file: arch/powerpc/platforms/52xx/Kconfig
+##
+CONFIG_PPC_MPC52xx=y
+# CONFIG_PPC_MPC5200_SIMPLE is not set
+CONFIG_PPC_EFIKA=y
+# CONFIG_PPC_LITE5200 is not set
+CONFIG_PPC_MPC5200_BUGFIX=y
+
+##
+## file: arch/powerpc/platforms/chrp/Kconfig
+##
+CONFIG_PPC_CHRP=y
+
+##
+## file: arch/powerpc/platforms/Kconfig.cputype
+##
+# CONFIG_PPC64 is not set
+## choice: Processor Type
+# CONFIG_PPC_85xx is not set
+# CONFIG_PPC_8xx is not set
+# CONFIG_40x is not set
+# CONFIG_44x is not set
+# CONFIG_E200 is not set
+## end choice
+CONFIG_ALTIVEC=y
+# CONFIG_SMP is not set
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_PATA_MPC52xx=m
+
+##
+## file: drivers/block/Kconfig
+##
+CONFIG_MAC_FLOPPY=y
+
+##
+## file: drivers/dma/Kconfig
+##
+CONFIG_DMADEVICES=y
+
+##
+## file: drivers/dma/bestcomm/Kconfig
+##
+CONFIG_PPC_BESTCOMM=m
+
+##
+## file: drivers/macintosh/Kconfig
+##
+CONFIG_SENSORS_AMS=m
+CONFIG_SENSORS_AMS_PMU=y
+CONFIG_SENSORS_AMS_I2C=y
+
+##
+## file: drivers/net/ethernet/freescale/Kconfig
+##
+CONFIG_FEC_MPC52xx=m
+CONFIG_FEC_MPC52xx_MDIO=y
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI_MPC52xx_PSC=m
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_MPC52xx=y
+CONFIG_SERIAL_MPC52xx_CONSOLE=y
+CONFIG_SERIAL_MPC52xx_CONSOLE_BAUD=115200
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_CONTROL=y
+CONFIG_FB_PLATINUM=y
+CONFIG_FB_VALKYRIE=y
+CONFIG_FB_CT65550=y
+CONFIG_FB_IMSTT=y
+CONFIG_FB_MATROX=y
+CONFIG_FB_ATY128=y
+CONFIG_FB_ATY=y
+CONFIG_FB_SIS=y
+CONFIG_FB_3DFX=y
+CONFIG_FB_VOODOO1=y
+
+##
+## file: init/Kconfig
+##
+CONFIG_SYSFS_SYSCALL=y
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+CONFIG_FLATMEM_MANUAL=y
+# CONFIG_DISCONTIGMEM_MANUAL is not set
+# CONFIG_SPARSEMEM_MANUAL is not set
+## end choice
+
diff --git a/debian/config/powerpc/config.powerpc-smp b/debian/config/powerpc/config.powerpc-smp
new file mode 100644
index 000000000..dfbaaf6d2
--- /dev/null
+++ b/debian/config/powerpc/config.powerpc-smp
@@ -0,0 +1,6 @@
+##
+## file: arch/powerpc/platforms/Kconfig.cputype
+##
+CONFIG_SMP=y
+CONFIG_NR_CPUS=4
+
diff --git a/debian/config/powerpc/defines b/debian/config/powerpc/defines
new file mode 100644
index 000000000..40d8c70c7
--- /dev/null
+++ b/debian/config/powerpc/defines
@@ -0,0 +1,31 @@
+[base]
+flavours:
+ powerpc
+ powerpc-smp
+ powerpc64
+kernel-arch: powerpc
+
+[build]
+image-file: vmlinux
+vdso: true
+
+[image]
+configs:
+bootloaders: grub-ieee1275
+suggests: mkvmlinuz
+install-stem: vmlinux
+
+[powerpc_description]
+hardware: uniprocessor 32-bit PowerPC
+
+[powerpc-smp_description]
+hardware: multiprocessor 32-bit PowerPC
+
+[powerpc-smp_image]
+configs: powerpc/config.powerpc powerpc/config.powerpc-smp
+
+[powerpc64_description]
+hardware: 64-bit PowerPC
+
+[powerpc64_image]
+configs: kernelarch-powerpc/config-arch-64 kernelarch-powerpc/config-arch-64-be
diff --git a/debian/config/ppc64/defines b/debian/config/ppc64/defines
new file mode 100644
index 000000000..3463bc668
--- /dev/null
+++ b/debian/config/ppc64/defines
@@ -0,0 +1,21 @@
+[base]
+flavours:
+ powerpc64
+default-flavour: powerpc64
+kernel-arch: powerpc
+
+[build]
+image-file: vmlinux
+vdso: true
+
+[image]
+configs:
+bootloaders: grub-ieee1275
+suggests: mkvmlinuz
+install-stem: vmlinux
+
+[powerpc64_description]
+hardware: 64-bit PowerPC
+
+[powerpc64_image]
+configs: kernelarch-powerpc/config-arch-64 kernelarch-powerpc/config-arch-64-be
diff --git a/debian/config/ppc64el/defines b/debian/config/ppc64el/defines
new file mode 100644
index 000000000..e07e73b24
--- /dev/null
+++ b/debian/config/ppc64el/defines
@@ -0,0 +1,21 @@
+[base]
+flavours:
+ powerpc64le
+default-flavour: powerpc64le
+kernel-arch: powerpc
+
+[build]
+image-file: vmlinux
+vdso: true
+
+[image]
+configs:
+bootloaders: grub-ieee1275
+suggests: mkvmlinuz
+install-stem: vmlinux
+
+[powerpc64le_description]
+hardware: Little-endian 64-bit PowerPC
+
+[powerpc64le_image]
+configs: kernelarch-powerpc/config-arch-64 kernelarch-powerpc/config-arch-64-le
diff --git a/debian/config/riscv64/config b/debian/config/riscv64/config
new file mode 100644
index 000000000..b1477a6ac
--- /dev/null
+++ b/debian/config/riscv64/config
@@ -0,0 +1,114 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_SECCOMP=y
+
+##
+## file: arch/riscv/Kconfig
+##
+CONFIG_SMP=y
+
+##
+## file: arch/riscv/Kconfig.socs
+##
+CONFIG_SOC_SIFIVE=y
+CONFIG_SOC_VIRT=y
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_SATA_AHCI_PLATFORM=m
+
+##
+## file: drivers/gpio/Kconfig
+##
+CONFIG_GPIOLIB=y
+CONFIG_GPIO_SIFIVE=y
+
+##
+## file: drivers/gpu/drm/Kconfig
+##
+CONFIG_DRM=m
+CONFIG_DRM_RADEON=m
+
+##
+## file: drivers/mmc/Kconfig
+##
+CONFIG_MMC=m
+
+##
+## file: drivers/mmc/host/Kconfig
+##
+CONFIG_MMC_SPI=m
+
+##
+## file: drivers/net/ethernet/cadence/Kconfig
+##
+CONFIG_MACB=m
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+
+##
+## file: drivers/pci/controller/Kconfig
+##
+CONFIG_PCI_HOST_GENERIC=y
+CONFIG_PCIE_XILINX=y
+
+##
+## file: drivers/power/reset/Kconfig
+##
+CONFIG_POWER_RESET=y
+CONFIG_POWER_RESET_GPIO=y
+CONFIG_POWER_RESET_GPIO_RESTART=y
+CONFIG_POWER_RESET_RESTART=y
+
+##
+## file: drivers/pwm/Kconfig
+##
+CONFIG_PWM=y
+CONFIG_PWM_SIFIVE=m
+
+##
+## file: drivers/soc/sifive/Kconfig
+##
+CONFIG_SIFIVE_L2=y
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI_SIFIVE=m
+
+##
+## file: drivers/tty/hvc/Kconfig
+##
+CONFIG_HVC_RISCV_SBI=y
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_EARLYCON_RISCV_SBI=y
+
+##
+## file: drivers/tty/serial/8250/Kconfig
+##
+CONFIG_SERIAL_8250=y
+CONFIG_SERIAL_8250_CONSOLE=y
+CONFIG_SERIAL_OF_PLATFORM=y
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB=m
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_XHCI_PLATFORM=m
+CONFIG_USB_EHCI_HCD=m
+CONFIG_USB_EHCI_HCD_PLATFORM=m
+CONFIG_USB_OHCI_HCD=m
+CONFIG_USB_OHCI_HCD_PLATFORM=m
+
diff --git a/debian/config/riscv64/defines b/debian/config/riscv64/defines
new file mode 100644
index 000000000..1d5a58b73
--- /dev/null
+++ b/debian/config/riscv64/defines
@@ -0,0 +1,15 @@
+[base]
+kernel-arch: riscv
+featuresets:
+ none
+
+[build]
+image-file: arch/riscv/boot/Image
+vdso: true
+
+[image]
+install-stem: vmlinux
+
+[riscv64_description]
+hardware: 64-bit RISC-V platforms
+hardware-long: 64-bit RISC-V platforms
diff --git a/debian/config/riscv64/none/defines b/debian/config/riscv64/none/defines
new file mode 100644
index 000000000..17393d9e0
--- /dev/null
+++ b/debian/config/riscv64/none/defines
@@ -0,0 +1,4 @@
+[base]
+flavours:
+ riscv64
+default-flavour: riscv64
diff --git a/debian/config/s390/defines b/debian/config/s390/defines
new file mode 100644
index 000000000..5b14fa7a4
--- /dev/null
+++ b/debian/config/s390/defines
@@ -0,0 +1,4 @@
+[base]
+kernel-arch: s390
+featuresets:
+# empty; s390 must be part of a multiarch installation with an s390x kernel
diff --git a/debian/config/s390x/config b/debian/config/s390x/config
new file mode 100644
index 000000000..05c14ac23
--- /dev/null
+++ b/debian/config/s390x/config
@@ -0,0 +1,220 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_SECCOMP=y
+
+##
+## file: arch/s390/Kconfig
+##
+## choice: Processor type
+CONFIG_MARCH_Z900=y
+# CONFIG_MARCH_Z990 is not set
+# CONFIG_MARCH_Z9_109 is not set
+# CONFIG_MARCH_Z10 is not set
+## end choice
+CONFIG_COMPAT=y
+CONFIG_NR_CPUS=256
+CONFIG_SCHED_TOPOLOGY=y
+CONFIG_RELOCATABLE=y
+CONFIG_RANDOMIZE_BASE=y
+CONFIG_PACK_STACK=y
+# CONFIG_CHECK_STACK is not set
+CONFIG_QDIO=y
+CONFIG_PCI_NR_FUNCTIONS=64
+CONFIG_CHSC_SCH=m
+CONFIG_SCM_BUS=y
+CONFIG_EADM_SCH=m
+CONFIG_PFAULT=y
+CONFIG_CMM=y
+CONFIG_CMM_IUCV=y
+CONFIG_APPLDATA_BASE=y
+CONFIG_APPLDATA_MEM=m
+CONFIG_APPLDATA_OS=m
+CONFIG_APPLDATA_NET_SUM=m
+CONFIG_S390_HYPFS_FS=y
+CONFIG_S390_GUEST=y
+
+##
+## file: arch/s390/kvm/Kconfig
+##
+CONFIG_VIRTUALIZATION=y
+CONFIG_KVM=m
+# CONFIG_KVM_S390_UCONTROL is not set
+
+##
+## file: block/partitions/Kconfig
+##
+CONFIG_IBM_PARTITION=y
+CONFIG_BSD_DISKLABEL=y
+
+##
+## file: drivers/block/Kconfig
+##
+# CONFIG_CDROM_PKTCDVD is not set
+
+##
+## file: drivers/crypto/Kconfig
+##
+CONFIG_ZCRYPT=m
+CONFIG_CRYPTO_SHA1_S390=m
+CONFIG_CRYPTO_SHA256_S390=m
+CONFIG_CRYPTO_SHA512_S390=m
+CONFIG_CRYPTO_DES_S390=m
+CONFIG_CRYPTO_AES_S390=m
+CONFIG_S390_PRNG=m
+
+##
+## file: drivers/iio/Kconfig
+##
+# CONFIG_IIO is not set
+
+##
+## file: drivers/input/touchscreen/Kconfig
+##
+# CONFIG_INPUT_TOUCHSCREEN is not set
+
+##
+## file: drivers/memstick/Kconfig
+##
+# CONFIG_MEMSTICK is not set
+
+##
+## file: drivers/net/appletalk/Kconfig
+##
+# CONFIG_ATALK is not set
+
+##
+## file: drivers/net/ppp/Kconfig
+##
+# CONFIG_PPP is not set
+
+##
+## file: drivers/net/slip/Kconfig
+##
+# CONFIG_SLIP is not set
+
+##
+## file: drivers/net/wan/Kconfig
+##
+# CONFIG_WAN is not set
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+# CONFIG_PCI_QUIRKS is not set
+
+##
+## file: drivers/pci/hotplug/Kconfig
+##
+CONFIG_HOTPLUG_PCI=y
+CONFIG_HOTPLUG_PCI_S390=y
+
+##
+## file: drivers/s390/block/Kconfig
+##
+CONFIG_BLK_DEV_XPRAM=m
+CONFIG_DCSSBLK=m
+CONFIG_DASD=m
+# CONFIG_DASD_PROFILE is not set
+CONFIG_DASD_ECKD=m
+CONFIG_DASD_FBA=m
+CONFIG_DASD_DIAG=m
+# CONFIG_DASD_EER is not set
+CONFIG_SCM_BLOCK=m
+
+##
+## file: drivers/s390/char/Kconfig
+##
+CONFIG_TN3270=y
+CONFIG_TN3270_TTY=y
+CONFIG_TN3270_FS=m
+CONFIG_TN3270_CONSOLE=y
+CONFIG_TN3215=y
+CONFIG_TN3215_CONSOLE=y
+CONFIG_SCLP_TTY=y
+CONFIG_SCLP_CONSOLE=y
+CONFIG_SCLP_VT220_TTY=y
+CONFIG_SCLP_VT220_CONSOLE=y
+CONFIG_S390_TAPE=m
+CONFIG_S390_TAPE_34XX=m
+CONFIG_S390_TAPE_3590=m
+CONFIG_VMLOGRDR=m
+CONFIG_VMCP=y
+CONFIG_MONREADER=m
+CONFIG_MONWRITER=m
+CONFIG_S390_VMUR=m
+
+##
+## file: drivers/s390/net/Kconfig
+##
+CONFIG_LCS=m
+CONFIG_CTCM=m
+CONFIG_NETIUCV=m
+CONFIG_SMSGIUCV=y
+CONFIG_QETH=m
+CONFIG_QETH_L2=m
+CONFIG_QETH_L3=m
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_ZFCP=m
+
+##
+## file: drivers/tty/hvc/Kconfig
+##
+CONFIG_HVC_IUCV=y
+
+##
+## file: drivers/video/console/Kconfig
+##
+# CONFIG_FRAMEBUFFER_CONSOLE is not set
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+# CONFIG_FB is not set
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_DIAG288_WATCHDOG=m
+
+##
+## file: init/Kconfig
+##
+## choice: Cputime accounting
+CONFIG_VIRT_CPU_ACCOUNTING_NATIVE=y
+## end choice
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+# CONFIG_FLATMEM_MANUAL is not set
+# CONFIG_DISCONTIGMEM_MANUAL is not set
+CONFIG_SPARSEMEM_MANUAL=y
+## end choice
+
+##
+## file: net/atm/Kconfig
+##
+# CONFIG_ATM is not set
+
+##
+## file: net/iucv/Kconfig
+##
+CONFIG_IUCV=y
+CONFIG_AFIUCV=m
+
+##
+## file: net/lapb/Kconfig
+##
+# CONFIG_LAPB is not set
+
+##
+## file: net/llc/Kconfig
+##
+# CONFIG_LLC2 is not set
+
diff --git a/debian/config/s390x/defines b/debian/config/s390x/defines
new file mode 100644
index 000000000..ec8825526
--- /dev/null
+++ b/debian/config/s390x/defines
@@ -0,0 +1,19 @@
+[base]
+flavours:
+ s390x
+default-flavour: s390x
+kernel-arch: s390
+
+[build]
+image-file: arch/s390/boot/bzImage
+vdso: true
+
+[image]
+bootloaders: s390-tools
+install-stem: vmlinuz
+
+[relations]
+headers%gcc-10: linux-compiler-gcc-10-s390
+
+[s390x_description]
+hardware: IBM zSeries
diff --git a/debian/config/sh3/defines b/debian/config/sh3/defines
new file mode 100644
index 000000000..71cbe648c
--- /dev/null
+++ b/debian/config/sh3/defines
@@ -0,0 +1,4 @@
+[base]
+kernel-arch: sh
+featuresets:
+# empty; just building headers yet
diff --git a/debian/config/sh4/config b/debian/config/sh4/config
new file mode 100644
index 000000000..650fc96fa
--- /dev/null
+++ b/debian/config/sh4/config
@@ -0,0 +1,60 @@
+##
+## file: arch/Kconfig
+##
+CONFIG_SECCOMP=y
+# CONFIG_STACKPROTECTOR_STRONG is not set
+
+##
+## file: arch/sh/Kconfig
+##
+CONFIG_KEXEC=y
+
+##
+## file: arch/sh/Kconfig.cpu
+##
+## choice: Endianness selection
+CONFIG_CPU_LITTLE_ENDIAN=y
+## end choice
+CONFIG_SH_FPU=y
+CONFIG_SH_STORE_QUEUES=y
+
+##
+## file: arch/sh/drivers/Kconfig
+##
+CONFIG_HEARTBEAT=y
+
+##
+## file: arch/sh/mm/Kconfig
+##
+## choice: Cache mode
+CONFIG_CACHE_WRITEBACK=y
+## end choice
+
+##
+## file: crypto/Kconfig
+##
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+
+##
+## file: drivers/cpufreq/Kconfig
+##
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_SH_CPU_FREQ=y
+
+##
+## file: drivers/pci/pcie/Kconfig
+##
+# CONFIG_PCIEPORTBUS is not set
+
+##
+## file: kernel/Kconfig.hz
+##
+## choice: Timer frequency
+CONFIG_HZ_250=y
+## end choice
+
+##
+## file: kernel/irq/Kconfig
+##
+CONFIG_SPARSE_IRQ=y
+
diff --git a/debian/config/sh4/config.sh7751r b/debian/config/sh4/config.sh7751r
new file mode 100644
index 000000000..d5de335e9
--- /dev/null
+++ b/debian/config/sh4/config.sh7751r
@@ -0,0 +1,172 @@
+##
+## file: arch/sh/Kconfig
+##
+## choice: Processor sub-type selection
+CONFIG_CPU_SUBTYPE_SH7751R=y
+## end choice
+CONFIG_SH_PCLK_FREQ=60000000
+
+##
+## file: arch/sh/boards/Kconfig
+##
+CONFIG_SH_RTS7751R2D=y
+
+##
+## file: arch/sh/boards/mach-r2d/Kconfig
+##
+CONFIG_RTS7751R2D_PLUS=y
+
+##
+## file: arch/sh/Kconfig.cpu
+##
+## choice: Endianness selection
+CONFIG_CPU_LITTLE_ENDIAN=y
+## end choice
+CONFIG_SH_FPU=y
+
+##
+## file: arch/sh/mm/Kconfig
+##
+CONFIG_MMU=y
+CONFIG_FORCE_MAX_ZONEORDER=11
+CONFIG_MEMORY_START=0x0c000000
+CONFIG_MEMORY_SIZE=0x04000000
+CONFIG_VSYSCALL=y
+## choice: Kernel page size
+CONFIG_PAGE_SIZE_4KB=y
+## end choice
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_ATA=y
+CONFIG_ATA_VERBOSE_ERROR=y
+CONFIG_SATA_PMP=y
+CONFIG_ATA_SFF=y
+CONFIG_PATA_PLATFORM=y
+
+##
+## file: drivers/clocksource/Kconfig
+##
+CONFIG_SH_TIMER_TMU=y
+
+##
+## file: drivers/hid/Kconfig
+##
+CONFIG_HID=y
+
+##
+## file: drivers/hid/usbhid/Kconfig
+##
+CONFIG_USB_HID=y
+
+##
+## file: drivers/input/Kconfig
+##
+CONFIG_INPUT=y
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+
+##
+## file: drivers/mfd/Kconfig
+##
+CONFIG_MFD_SM501=y
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_MTD=y
+CONFIG_MTD_BLOCK=y
+
+##
+## file: drivers/mtd/chips/Kconfig
+##
+CONFIG_MTD_CFI=y
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+CONFIG_MTD_CFI_AMDSTD=y
+
+##
+## file: drivers/mtd/maps/Kconfig
+##
+CONFIG_MTD_PHYSMAP=y
+
+##
+## file: drivers/net/Kconfig
+##
+CONFIG_NETDEVICES=y
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_8139CP=y
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_R9701=y
+# CONFIG_RTC_DRV_SH is not set
+# CONFIG_RTC_DRV_GENERIC is not set
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI=y
+CONFIG_BLK_DEV_SD=y
+
+##
+## file: drivers/spi/Kconfig
+##
+CONFIG_SPI=y
+CONFIG_SPI_BITBANG=y
+CONFIG_SPI_SH_SCI=y
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_SH_SCI=y
+CONFIG_SERIAL_SH_SCI_NR_UARTS=6
+CONFIG_SERIAL_SH_SCI_CONSOLE=y
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB_SUPPORT=y
+CONFIG_USB=y
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_OHCI_HCD=y
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_SM501=y
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+CONFIG_FLATMEM_MANUAL=y
+## end choice
+
diff --git a/debian/config/sh4/config.sh7785lcr b/debian/config/sh4/config.sh7785lcr
new file mode 100644
index 000000000..0ee3e3f31
--- /dev/null
+++ b/debian/config/sh4/config.sh7785lcr
@@ -0,0 +1,239 @@
+##
+## file: arch/sh/Kconfig
+##
+## choice: Processor sub-type selection
+CONFIG_CPU_SUBTYPE_SH7785=y
+## end choice
+CONFIG_SH_PCLK_FREQ=50000000
+
+##
+## file: arch/sh/boards/Kconfig
+##
+CONFIG_SH_SH7785LCR=y
+
+##
+## file: arch/sh/Kconfig.cpu
+##
+## choice: Endianness selection
+CONFIG_CPU_LITTLE_ENDIAN=y
+## end choice
+CONFIG_SH_FPU=y
+CONFIG_SH_STORE_QUEUES=y
+
+##
+## file: arch/sh/mm/Kconfig
+##
+CONFIG_MMU=y
+CONFIG_FORCE_MAX_ZONEORDER=11
+CONFIG_MEMORY_START=0x48000000
+CONFIG_MEMORY_SIZE=0x18000000
+CONFIG_VSYSCALL=y
+## choice: Kernel page size
+CONFIG_PAGE_SIZE_4KB=y
+## end choice
+## choice: HugeTLB page size
+CONFIG_HUGETLB_PAGE_SIZE_64K=y
+## end choice
+
+##
+## file: drivers/ata/Kconfig
+##
+CONFIG_ATA=y
+CONFIG_ATA_VERBOSE_ERROR=y
+CONFIG_SATA_PMP=y
+CONFIG_ATA_SFF=y
+CONFIG_SATA_SIL=y
+
+##
+## file: drivers/clocksource/Kconfig
+##
+CONFIG_SH_TIMER_TMU=y
+
+##
+## file: drivers/dma/Kconfig
+##
+CONFIG_DMADEVICES=y
+
+##
+## file: drivers/hid/Kconfig
+##
+CONFIG_HID=m
+
+##
+## file: drivers/hid/usbhid/Kconfig
+##
+CONFIG_USB_HID=m
+
+##
+## file: drivers/i2c/Kconfig
+##
+CONFIG_I2C=y
+CONFIG_I2C_COMPAT=y
+CONFIG_I2C_HELPER_AUTO=y
+
+##
+## file: drivers/i2c/algos/Kconfig
+##
+CONFIG_I2C_ALGOPCA=y
+
+##
+## file: drivers/i2c/busses/Kconfig
+##
+CONFIG_I2C_PCA_PLATFORM=y
+
+##
+## file: drivers/input/Kconfig
+##
+CONFIG_INPUT=y
+CONFIG_INPUT_MOUSEDEV=y
+CONFIG_INPUT_MOUSEDEV_PSAUX=y
+CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
+CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
+CONFIG_INPUT_EVDEV=m
+
+##
+## file: drivers/input/keyboard/Kconfig
+##
+CONFIG_INPUT_KEYBOARD=y
+# CONFIG_KEYBOARD_ATKBD is not set
+
+##
+## file: drivers/input/mouse/Kconfig
+##
+CONFIG_INPUT_MOUSE=y
+# CONFIG_MOUSE_PS2 is not set
+# CONFIG_MOUSE_PS2_ALPS is not set
+# CONFIG_MOUSE_PS2_BYD is not set
+# CONFIG_MOUSE_PS2_LOGIPS2PP is not set
+# CONFIG_MOUSE_PS2_SYNAPTICS is not set
+# CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS is not set
+# CONFIG_MOUSE_PS2_CYPRESS is not set
+# CONFIG_MOUSE_PS2_LIFEBOOK is not set
+# CONFIG_MOUSE_PS2_TRACKPOINT is not set
+# CONFIG_MOUSE_PS2_ELANTECH is not set
+# CONFIG_MOUSE_PS2_ELANTECH_SMBUS is not set
+# CONFIG_MOUSE_PS2_SENTELIC is not set
+# CONFIG_MOUSE_PS2_FOCALTECH is not set
+
+##
+## file: drivers/input/serio/Kconfig
+##
+# CONFIG_SERIO is not set
+# CONFIG_SERIO_I8042 is not set
+# CONFIG_SERIO_SERPORT is not set
+# CONFIG_SERIO_LIBPS2 is not set
+
+##
+## file: drivers/mfd/Kconfig
+##
+CONFIG_MFD_SM501=y
+
+##
+## file: drivers/mtd/Kconfig
+##
+CONFIG_MTD=y
+CONFIG_MTD_BLOCK=y
+
+##
+## file: drivers/mtd/chips/Kconfig
+##
+CONFIG_MTD_CFI=y
+CONFIG_MTD_MAP_BANK_WIDTH_1=y
+CONFIG_MTD_MAP_BANK_WIDTH_2=y
+CONFIG_MTD_MAP_BANK_WIDTH_4=y
+CONFIG_MTD_CFI_I1=y
+CONFIG_MTD_CFI_I2=y
+CONFIG_MTD_CFI_AMDSTD=y
+
+##
+## file: drivers/mtd/maps/Kconfig
+##
+CONFIG_MTD_PHYSMAP=y
+
+##
+## file: drivers/net/Kconfig
+##
+CONFIG_NETDEVICES=y
+
+##
+## file: drivers/net/ethernet/realtek/Kconfig
+##
+CONFIG_R8169=m
+
+##
+## file: drivers/parport/Kconfig
+##
+# CONFIG_PARPORT_1284 is not set
+
+##
+## file: drivers/pci/Kconfig
+##
+CONFIG_PCI=y
+
+##
+## file: drivers/rtc/Kconfig
+##
+CONFIG_RTC_DRV_RS5C372=y
+# CONFIG_RTC_DRV_SH is not set
+# CONFIG_RTC_DRV_GENERIC is not set
+
+##
+## file: drivers/scsi/Kconfig
+##
+CONFIG_SCSI=y
+CONFIG_BLK_DEV_SD=y
+
+##
+## file: drivers/tty/Kconfig
+##
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_UNIX98_PTYS=y
+
+##
+## file: drivers/tty/serial/Kconfig
+##
+CONFIG_SERIAL_SH_SCI=y
+CONFIG_SERIAL_SH_SCI_NR_UARTS=6
+CONFIG_SERIAL_SH_SCI_CONSOLE=y
+
+##
+## file: drivers/usb/Kconfig
+##
+CONFIG_USB_SUPPORT=y
+CONFIG_USB=y
+
+##
+## file: drivers/usb/host/Kconfig
+##
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_R8A66597_HCD=y
+
+##
+## file: drivers/usb/storage/Kconfig
+##
+CONFIG_USB_STORAGE=y
+
+##
+## file: drivers/video/fbdev/Kconfig
+##
+CONFIG_FB_SM501=y
+
+##
+## file: drivers/watchdog/Kconfig
+##
+CONFIG_WATCHDOG=y
+CONFIG_SH_WDT=y
+# CONFIG_USBPCWATCHDOG is not set
+
+##
+## file: mm/Kconfig
+##
+## choice: Memory model
+CONFIG_SPARSEMEM_MANUAL=y
+## end choice
+CONFIG_MIGRATION=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+
diff --git a/debian/config/sh4/defines b/debian/config/sh4/defines
new file mode 100644
index 000000000..c38abc821
--- /dev/null
+++ b/debian/config/sh4/defines
@@ -0,0 +1,25 @@
+[base]
+flavours:
+ sh7751r
+ sh7785lcr
+kernel-arch: sh
+
+[build]
+image-file: arch/sh/boot/zImage
+
+[image]
+install-stem: vmlinuz
+
+[sh7751r_description]
+hardware: sh7751r
+hardware-long: Renesas SH7751R R2D plus board
+
+[sh7785lcr_description]
+hardware: sh7785lcr
+hardware-long: Renesas SH7785 reference board
+
+[sh7785lcr_image]
+recommends: u-boot-tools
+# Kernel partition size: 4MB
+check-size: 4194304
+
diff --git a/debian/config/sparc/defines b/debian/config/sparc/defines
new file mode 100644
index 000000000..c7e0119c2
--- /dev/null
+++ b/debian/config/sparc/defines
@@ -0,0 +1,4 @@
+[base]
+kernel-arch: sparc
+featuresets:
+# empty; sparc must be part of a multiarch installation with a sparc64 kernel
diff --git a/debian/config/sparc64/defines b/debian/config/sparc64/defines
new file mode 100644
index 000000000..b3a242e5d
--- /dev/null
+++ b/debian/config/sparc64/defines
@@ -0,0 +1,27 @@
+[base]
+flavours:
+ sparc64
+ sparc64-smp
+default-flavour: sparc64-smp
+kernel-arch: sparc
+
+[build]
+image-file: vmlinux
+
+[image]
+configs:
+bootloaders: grub-ieee1275
+suggests: fdutils
+install-stem: vmlinux
+
+[sparc64_description]
+hardware: uniprocessor 64-bit UltraSPARC
+
+[sparc64_image]
+configs: kernelarch-sparc/config-up
+
+[sparc64-smp_description]
+hardware: multiprocessor 64-bit UltraSPARC
+
+[sparc64-smp_image]
+configs: kernelarch-sparc/config-smp
diff --git a/debian/config/x32/defines b/debian/config/x32/defines
new file mode 100644
index 000000000..0a19846d4
--- /dev/null
+++ b/debian/config/x32/defines
@@ -0,0 +1,4 @@
+[base]
+kernel-arch: x86
+featuresets:
+# empty; x32 must be part of a multiarch installation with an amd64 kernel
diff --git a/debian/control b/debian/control
new file mode 100644
index 000000000..933433996
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,14608 @@
+Source: linux
+Section: kernel
+Priority: optional
+Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
+Uploaders: Bastian Blank <waldi@debian.org>, maximilian attems <maks@debian.org>, Ben Hutchings <benh@debian.org>, Salvatore Bonaccorso <carnil@debian.org>
+Standards-Version: 4.2.0
+Build-Depends: debhelper-compat (= 12), dh-exec, python3:any, quilt, cpio <!stage1>, xz-utils <!stage1>, dh-python <!stage1>, bison <!stage1>, flex (>= 2.6.1-1.1~) <!stage1>
+Build-Depends-Arch: kernel-wedge (>= 2.102~) <!stage1 !pkg.linux.nokernel>, kmod <!stage1 !pkg.linux.nokernel>, bc <!stage1 !pkg.linux.nokernel>, libssl-dev:native <!stage1 !pkg.linux.nokernel>, libssl-dev <!stage1 !pkg.linux.notools>, openssl (>= 1.1.0-1~) <!stage1 !pkg.linux.nokernel>, libelf-dev:native [amd64] <!stage1 !pkg.linux.nokernel>, libelf-dev <!stage1 !pkg.linux.notools>, rsync, lz4 [amd64 arm64] <!stage1 !pkg.linux.nokernel>, dwarves (>= 1.16~) [amd64 arm64] <!stage1 !pkg.linux.nokernel>, gcc-10 [alpha amd64 arm64 armel armhf hppa i386 ia64 m68k mips mips64 mips64el mips64r6 mips64r6el mipsel mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64] <!stage1 !cross !pkg.linux.nokernel>, gcc-10-alpha-linux-gnu [alpha] <!stage1 cross !pkg.linux.nokernel>, gcc-10-x86-64-linux-gnu [amd64] <!stage1 cross !pkg.linux.nokernel>, gcc-10-aarch64-linux-gnu [arm64] <!stage1 cross !pkg.linux.nokernel>, gcc-arm-linux-gnueabihf [arm64] <!stage1 !pkg.linux.nokernel>, gcc-10-arm-linux-gnueabi [armel] <!stage1 cross !pkg.linux.nokernel>, gcc-10-arm-linux-gnueabihf [armhf] <!stage1 cross !pkg.linux.nokernel>, gcc-10-hppa-linux-gnu [hppa] <!stage1 cross !pkg.linux.nokernel>, binutils-hppa64-linux-gnu [hppa] <!stage1 !pkg.linux.nokernel>, gcc-10-hppa64-linux-gnu [hppa] <!stage1 !pkg.linux.nokernel>, gcc-10-i686-linux-gnu [i386] <!stage1 cross !pkg.linux.nokernel>, gcc-10-ia64-linux-gnu [ia64] <!stage1 cross !pkg.linux.nokernel>, gcc-10-m68k-linux-gnu [m68k] <!stage1 cross !pkg.linux.nokernel>, gcc-10-mips-linux-gnu [mips] <!stage1 cross !pkg.linux.nokernel>, gcc-10-mips64-linux-gnuabi64 [mips64] <!stage1 cross !pkg.linux.nokernel>, gcc-10-mips64el-linux-gnuabi64 [mips64el] <!stage1 cross !pkg.linux.nokernel>, gcc-10-mipsisa64r6-linux-gnuabi64 [mips64r6] <!stage1 cross !pkg.linux.nokernel>, gcc-10-mipsisa64r6el-linux-gnuabi64 [mips64r6el] <!stage1 cross !pkg.linux.nokernel>, gcc-10-mipsel-linux-gnu [mipsel] <!stage1 cross !pkg.linux.nokernel>, gcc-10-mipsisa32r6-linux-gnu [mipsr6] <!stage1 cross !pkg.linux.nokernel>, gcc-10-mipsisa32r6el-linux-gnu [mipsr6el] <!stage1 cross !pkg.linux.nokernel>, gcc-10-powerpc-linux-gnu [powerpc] <!stage1 cross !pkg.linux.nokernel>, gcc-10-powerpc64-linux-gnu [ppc64] <!stage1 cross !pkg.linux.nokernel>, gcc-10-powerpc64le-linux-gnu [ppc64el] <!stage1 cross !pkg.linux.nokernel>, gcc-10-riscv64-linux-gnu [riscv64] <!stage1 cross !pkg.linux.nokernel>, gcc-10-s390x-linux-gnu [s390x] <!stage1 cross !pkg.linux.nokernel>, gcc-10-sh4-linux-gnu [sh4] <!stage1 cross !pkg.linux.nokernel>, gcc-10-sparc64-linux-gnu [sparc64] <!stage1 cross !pkg.linux.nokernel>, python3-docutils [linux-any] <!stage1 !nodoc !pkg.linux.notools>, libelf-dev [linux-any] <!stage1 !pkg.linux.notools !pkg.linux.mintools>, zlib1g-dev [linux-any] <!stage1 !pkg.linux.notools !pkg.linux.mintools>, libcap-dev [linux-any] <!stage1 !pkg.linux.notools !pkg.linux.mintools>, libpci-dev [linux-any] <!stage1 !pkg.linux.notools !pkg.linux.mintools>, autoconf [linux-any] <!stage1 !pkg.linux.notools !pkg.linux.mintools>, automake [linux-any] <!stage1 !pkg.linux.notools !pkg.linux.mintools>, libtool [linux-any] <!stage1 !pkg.linux.notools !pkg.linux.mintools>, libglib2.0-dev [linux-any] <!stage1 !pkg.linux.notools !pkg.linux.mintools>, libudev-dev [linux-any] <!stage1 !pkg.linux.notools !pkg.linux.mintools>, libwrap0-dev [linux-any] <!stage1 !pkg.linux.notools !pkg.linux.mintools>, asciidoctor [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !nodoc !pkg.linux.notools !nopython>, gcc-multilib [amd64 mips64 mips64el mips64r6 mips64r6el ppc64 s390x sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, libaudit-dev [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, libbabeltrace-dev (>= 1.5.0) [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, libbabeltrace-dev (>= 1.5.3-2~) [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython> | libbabeltrace-ctf-dev (>= 1.5.0) [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, libdw-dev [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, libiberty-dev [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, libnewt-dev [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, libnuma-dev [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, libperl-dev [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, libunwind-dev [amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mipsel powerpc ppc64 ppc64el sh4] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, libopencsd-dev [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>, python3-dev [alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64] <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>
+Build-Depends-Indep: graphviz <!stage1 !nodoc>, python3-sphinx <!stage1 !nodoc>, python3-sphinx-rtd-theme <!stage1 !nodoc>, texlive-latex-base <!stage1 !nodoc>, texlive-latex-extra <!stage1 !nodoc>, dvipng <!stage1 !nodoc>, patchutils <!stage1 !pkg.linux.nosource>
+Homepage: https://www.kernel.org/
+Rules-Requires-Root: no
+Vcs-Browser: https://salsa.debian.org/kernel-team/linux
+Vcs-Git: https://salsa.debian.org/kernel-team/linux.git
+
+Package: linux-support-5.10.0-28
+Architecture: all
+Section: devel
+Depends: ${python3:Depends}, ${misc:Depends}
+Description: Support files for Linux 5.10
+ This package provides support files for the Linux kernel build, e.g.
+ scripts to handle ABI information and for generation of build system meta
+ data.
+Build-Profiles: <!stage1>
+Multi-Arch: foreign
+
+Package: linux-doc-5.10
+Architecture: all
+Section: doc
+Depends: ${misc:Depends}
+Description: Linux kernel specific documentation for version 5.10
+ This package provides the various README files and HTML documentation for
+ the Linux kernel version 5.10. Plenty of information, including the
+ descriptions of various kernel subsystems, filesystems, driver-specific
+ notes and the like. An index to the documentation is installed as
+ /usr/share/doc/linux-doc-5.10/html/index.html.
+Build-Profiles: <!stage1 !nodoc>
+Multi-Arch: foreign
+
+Package: linux-doc
+Architecture: all
+Section: doc
+Depends: linux-doc-5.10 (= ${binary:Version}), ${misc:Depends}
+Description: Linux kernel specific documentation (meta-package)
+ This package depends on the package containing the documentation for the
+ latest Linux kernel.
+Build-Profiles: <!stage1 !nodoc !pkg.linux.nometa>
+
+Package: bpftool
+Architecture: linux-any
+Section: devel
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Inspection and simple manipulation of BPF programs and maps
+ The bpftool command allows for inspection and simple modification of
+ Berkeley Packet Filter (BPF) objects on the system.
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+
+Package: linux-cpupower
+Architecture: linux-any
+Section: admin
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: CPU power management tools for Linux
+ The cpupower command allows inspection and control of cpufreq and cpuidle
+ tunables for hardware that supports these features. It replaces
+ "cpufreq-info" and "cpufreq-set" in cpufrequtils.
+ .
+ ${cpupower:Arch-Description}
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+
+Package: libcpupower1
+Architecture: linux-any
+Section: libs
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: CPU frequency and voltage scaling tools for Linux (libraries)
+ libcpupower is a library for inspecting and controlling cpufreq and
+ cpuidle tunables.
+ .
+ This package contains the shared library.
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+
+Package: libcpupower-dev
+Architecture: linux-any
+Section: libdevel
+Provides: libcpufreq-dev
+Depends: ${misc:Depends}, libcpupower1 (= ${binary:Version})
+Replaces: libcpufreq-dev
+Conflicts: libcpufreq-dev
+Description: CPU frequency and voltage scaling tools for Linux (development files)
+ libcpupower is a library for inspecting and controlling cpufreq and
+ cpuidle tunables.
+ .
+ This package is needed to compile programs against libcpupower.
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+
+Package: usbip
+Architecture: linux-any
+Section: admin
+Depends: usb.ids, ${shlibs:Depends}, ${misc:Depends}
+Description: USB device sharing system over IP network
+ USB/IP is a system for sharing USB devices over the network.
+ .
+ To share USB devices between computers with their full functionality,
+ USB/IP encapsulates "USB requests" into IP packets and transmits them
+ between computers.
+ .
+ Original USB device drivers and applications can be used for remote USB
+ devices without any modification of them. A computer can use remote USB
+ devices as if they were directly attached.
+ .
+ Currently USB/IP provides no access control or encryption. It should only
+ be used in trusted environments.
+ .
+ This package provides the server component 'usbipd' and the client tool
+ 'usbip'.
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+
+Package: hyperv-daemons
+Architecture: amd64 i386 x32
+Section: admin
+Pre-Depends: ${misc:Pre-Depends}
+Depends: lsb-base, ${shlibs:Depends}, ${misc:Depends}
+Description: Support daemons for Linux running on Hyper-V
+ Suite of daemons for Linux guests running on Hyper-V, consisting of
+ hv_fcopy_daemon, hv_kvp_daemon and hv_vss_daemon.
+ .
+ hv_fcopy_daemon provides the file copy service, allowing the host to copy
+ files into the guest.
+ .
+ hv_kvp_daemon provides the key-value pair (KVP) service, allowing the host
+ to get and set the IP networking configuration of the guest. (This
+ requires helper scripts which are not currently included.)
+ .
+ hv_vss_daemon provides the volume shadow copy service (VSS), allowing the
+ host to freeze the guest filesystems while taking a snapshot.
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+
+Package: linux-kbuild-5.10
+Architecture: linux-any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Kbuild infrastructure for Linux 5.10
+ This package provides the kbuild infrastructure for the headers packages
+ for Linux kernel version 5.10.
+Build-Profiles: <!stage1 !pkg.linux.notools>
+Multi-Arch: foreign
+
+Package: linux-perf-5.10
+Architecture: alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64
+Section: devel
+Provides: linux-tools-5.10
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, ${python3:Depends}
+Recommends: linux-base
+Suggests: linux-doc-5.10
+Replaces: linux-tools-5.10
+Conflicts: linux-tools-5.10
+Description: Performance analysis tools for Linux 5.10
+ This package contains the 'perf' performance analysis tools for Linux
+ kernel version 5.10.
+ .
+ The linux-base package contains a 'perf' command which will invoke the
+ appropriate version for the running kernel.
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>
+
+Package: linux-bootwrapper-5.10.0-28
+Architecture: powerpc ppc64
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Boot wrapper tools for Linux 5.10 on PowerPC
+ This package provides the 'wrapper' script and related tools needed to
+ process the Linux kernel image for use with some PowerPC platforms.
+Build-Profiles: <!stage1 !pkg.linux.notools>
+Multi-Arch: foreign
+
+Package: linux-perf
+Architecture: alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64
+Depends: linux-perf-5.10 (= ${binary:Version}), ${misc:Depends}
+Description: Performance analysis tools for Linux (meta-package)
+ This package depends on the package containing the 'perf' performance
+ analysis tools for the latest Linux kernel.
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython !pkg.linux.nometa>
+
+Package: linux-source-5.10
+Architecture: all
+Section: kernel
+Depends: binutils, xz-utils, ${misc:Depends}
+Recommends: libc6-dev | libc-dev, gcc, make, bc, bison, flex, linux-config-5.10
+Suggests: libncurses-dev | ncurses-dev, qtbase5-dev, pkg-config
+Description: Linux kernel source for version 5.10 with Debian patches
+ This package provides source code for the Linux kernel version 5.10. This
+ source closely tracks official Linux kernel releases. Debian's
+ modifications to that source consist of security fixes, bug fixes, and
+ features that have already been (or are believed to be) accepted by the
+ upstream maintainers.
+Build-Profiles: <!stage1 !pkg.linux.nosource>
+Multi-Arch: foreign
+
+Package: linux-source
+Architecture: all
+Depends: linux-source-5.10 (= ${binary:Version}), ${misc:Depends}
+Description: Linux kernel source (meta-package)
+ This package depends on packages containing the sources of the latest
+ Linux kernel.
+Build-Profiles: <!stage1 !pkg.linux.nosource !pkg.linux.nometa>
+
+Package: linux-headers-5.10.0-28-common
+Architecture: all
+Depends: ${misc:Depends}
+Description: Common header files for Linux 5.10.0-28
+ This package provides the common kernel header files for Linux kernel
+ version 5.10.0-28, generally used for building out-of-tree kernel modules.
+ To obtain a complete set of headers you also need to install the
+ linux-headers-5.10.0-28-(flavour) package, matching the flavour of the
+ kernel you intend the build for.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+Multi-Arch: foreign
+
+Package: linux-headers-5.10.0-28-common-rt
+Architecture: all
+Depends: ${misc:Depends}
+Description: Common header files for Linux 5.10.0-28-rt
+ This package provides the common kernel header files for Linux kernel
+ version 5.10.0-28 with the PREEMPT_RT featureset, generally used for
+ building out-of-tree kernel modules. To obtain a complete set of headers
+ you also need to install the linux-headers-5.10.0-28-(flavour) package,
+ matching the flavour of the kernel you intend the build for.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+Multi-Arch: foreign
+
+Package: linux-libc-dev
+Architecture: alpha amd64 arm64 arm64ilp32 armel armhf hppa i386 ia64 m68k mips mips64 mips64el mips64r6 mips64r6el mipsel mipsn32 mipsn32el mipsn32r6 mipsn32r6el mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390 s390x sh3 sh4 sparc sparc64 x32
+Section: devel
+Depends: ${misc:Depends}
+Description: Linux support headers for userspace development
+ This package provides userspaces headers from the Linux kernel. These
+ headers are used by the installed headers for GNU libc and other system
+ libraries.
+Multi-Arch: same
+
+Package: linux-config-5.10
+Architecture: alpha amd64 arm64 armel armhf hppa i386 ia64 m68k mips mips64 mips64el mips64r6 mips64r6el mipsel mipsr6 mipsr6el powerpc ppc64 ppc64el riscv64 s390x sh4 sparc64
+Depends: ${misc:Depends}
+Recommends: linux-source-5.10
+Description: Debian kernel configurations for Linux 5.10
+ This package contains the configuration files used to build the official
+ Debian kernel files, but without references to Debian's signing
+ certificates.
+ .
+ These can be used as a basis for configuring custom kernels.
+Build-Profiles: <!stage1 !pkg.linux.nosource>
+Multi-Arch: same
+
+Package: kernel-image-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: kernel-image
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, nic-shared-modules-5.10.0-28-alpha-generic-di, i2c-modules-5.10.0-28-alpha-generic-di, crc-modules-5.10.0-28-alpha-generic-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, nic-shared-modules-5.10.0-28-alpha-generic-di, usb-modules-5.10.0-28-alpha-generic-di, pcmcia-modules-5.10.0-28-alpha-generic-di, crc-modules-5.10.0-28-alpha-generic-di, crypto-modules-5.10.0-28-alpha-generic-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: serial-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: serial-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, pcmcia-modules-5.10.0-28-alpha-generic-di
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, usb-modules-5.10.0-28-alpha-generic-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, serial-modules-5.10.0-28-alpha-generic-di, crc-modules-5.10.0-28-alpha-generic-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, ata-modules-5.10.0-28-alpha-generic-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, scsi-core-modules-5.10.0-28-alpha-generic-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, scsi-core-modules-5.10.0-28-alpha-generic-di, cdrom-core-modules-5.10.0-28-alpha-generic-di, ata-modules-5.10.0-28-alpha-generic-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-alpha-generic-di, nic-modules-5.10.0-28-alpha-generic-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, crc-modules-5.10.0-28-alpha-generic-di, md-modules-5.10.0-28-alpha-generic-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, crc-modules-5.10.0-28-alpha-generic-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, cdrom-core-modules-5.10.0-28-alpha-generic-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, crc-modules-5.10.0-28-alpha-generic-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, crc-modules-5.10.0-28-alpha-generic-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, crc-modules-5.10.0-28-alpha-generic-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, md-modules-5.10.0-28-alpha-generic-di, scsi-core-modules-5.10.0-28-alpha-generic-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, scsi-core-modules-5.10.0-28-alpha-generic-di, usb-modules-5.10.0-28-alpha-generic-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, i2c-modules-5.10.0-28-alpha-generic-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, usb-modules-5.10.0-28-alpha-generic-di, i2c-modules-5.10.0-28-alpha-generic-di, crc-modules-5.10.0-28-alpha-generic-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, event-modules-5.10.0-28-alpha-generic-di, input-modules-5.10.0-28-alpha-generic-di, usb-modules-5.10.0-28-alpha-generic-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: nic-pcmcia-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: nic-pcmcia-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, nic-shared-modules-5.10.0-28-alpha-generic-di, nic-wireless-modules-5.10.0-28-alpha-generic-di, pcmcia-modules-5.10.0-28-alpha-generic-di
+Description: Common PCMCIA NIC drivers
+ This package contains common PCMCIA NIC drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: pcmcia-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: Common PCMCIA drivers
+ This package contains common PCMCIA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, nic-shared-modules-5.10.0-28-alpha-generic-di, nic-wireless-modules-5.10.0-28-alpha-generic-di, usb-modules-5.10.0-28-alpha-generic-di, crc-modules-5.10.0-28-alpha-generic-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, scsi-core-modules-5.10.0-28-alpha-generic-di, ata-modules-5.10.0-28-alpha-generic-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, md-modules-5.10.0-28-alpha-generic-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di, scsi-core-modules-5.10.0-28-alpha-generic-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: srm-modules-5.10.0-28-alpha-generic-di
+Architecture: alpha
+Section: debian-installer
+Priority: standard
+Provides: srm-modules
+Depends: kernel-image-5.10.0-28-alpha-generic-di
+Description: SRM modules
+ This package contains the srm_env module which provides access to the SRM
+ environment.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-alpha-generic
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-alpha-generic
+Architecture: alpha
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [alpha] | linux-initramfs-tool [alpha]
+Recommends: firmware-linux-free, apparmor [alpha]
+Suggests: linux-doc-5.10, debian-kernel-handbook, aboot [alpha], fdutils [alpha]
+Breaks: fwupdate (<< 12-7) [alpha], wireless-regdb (<< 2019.06.03-1~) [alpha], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for Alpha
+ The Linux kernel 5.10 and modules for use on DEC Alpha systems with
+ extended kernel start address (Wildfire, Titan, Marvel).
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-alpha-generic
+Architecture: alpha
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-alpha-generic
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-alpha-generic, generally used for building
+ out-of-tree kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-alpha-generic, and can be used for
+ building modules that load into the kernel provided by the
+ linux-image-5.10.0-28-alpha-generic package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-alpha-generic
+Architecture: alpha
+Provides: linux-latest-modules-5.10.0-28-alpha-generic, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-alpha-generic (= ${binary:Version}), ${misc:Depends}
+Description: Linux for Alpha (meta-package)
+ This package depends on the latest Linux kernel and modules for use on DEC
+ Alpha systems with extended kernel start address (Wildfire, Titan,
+ Marvel).
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-alpha-generic
+Architecture: alpha
+Depends: linux-headers-5.10.0-28-alpha-generic (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux alpha-generic configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel alpha-generic configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-alpha-generic-dbg
+Architecture: alpha
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-alpha-generic
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-alpha-generic.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-alpha-generic-dbg
+Architecture: alpha
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-alpha-generic-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux alpha-generic configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel alpha-generic configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-alpha-smp
+Architecture: alpha
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [alpha] | linux-initramfs-tool [alpha]
+Recommends: firmware-linux-free, apparmor [alpha]
+Suggests: linux-doc-5.10, debian-kernel-handbook, aboot [alpha], fdutils [alpha]
+Breaks: fwupdate (<< 12-7) [alpha], wireless-regdb (<< 2019.06.03-1~) [alpha], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for Alpha SMP
+ The Linux kernel 5.10 and modules for use on DEC Alpha SMP systems with
+ extended kernel start address (Wildfire, Titan, Marvel).
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-alpha-smp
+Architecture: alpha
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-alpha-smp
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-alpha-smp, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-alpha-smp, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-alpha-smp package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-alpha-smp
+Architecture: alpha
+Provides: linux-latest-modules-5.10.0-28-alpha-smp, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-alpha-smp (= ${binary:Version}), ${misc:Depends}
+Description: Linux for Alpha SMP (meta-package)
+ This package depends on the latest Linux kernel and modules for use on DEC
+ Alpha SMP systems with extended kernel start address (Wildfire, Titan,
+ Marvel).
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-alpha-smp
+Architecture: alpha
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-alpha-smp (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux alpha-smp configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel alpha-smp configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-alpha-smp-dbg
+Architecture: alpha
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-alpha-smp
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-alpha-smp.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-alpha-smp-dbg
+Architecture: alpha
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-alpha-smp-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux alpha-smp configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel alpha-smp configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: kernel-image
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-amd64-di, nic-shared-modules-5.10.0-28-amd64-di, i2c-modules-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di, mtd-core-modules-5.10.0-28-amd64-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-amd64-di, nic-shared-modules-5.10.0-28-amd64-di, usb-modules-5.10.0-28-amd64-di, mmc-core-modules-5.10.0-28-amd64-di, pcmcia-modules-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di, rfkill-modules-5.10.0-28-amd64-di, crypto-modules-5.10.0-28-amd64-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: serial-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: serial-modules
+Depends: kernel-image-5.10.0-28-amd64-di, pcmcia-modules-5.10.0-28-amd64-di
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-amd64-di, usb-modules-5.10.0-28-amd64-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-amd64-di, serial-modules-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-amd64-di, ata-modules-5.10.0-28-amd64-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-amd64-di, scsi-core-modules-5.10.0-28-amd64-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: firewire-core-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: firewire-core-modules
+Depends: kernel-image-5.10.0-28-amd64-di, scsi-core-modules-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-amd64-di, scsi-core-modules-5.10.0-28-amd64-di, cdrom-core-modules-5.10.0-28-amd64-di, ata-modules-5.10.0-28-amd64-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-amd64-di, nic-modules-5.10.0-28-amd64-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di, md-modules-5.10.0-28-amd64-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-amd64-di, cdrom-core-modules-5.10.0-28-amd64-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di, cdrom-core-modules-5.10.0-28-amd64-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-amd64-di, md-modules-5.10.0-28-amd64-di, scsi-core-modules-5.10.0-28-amd64-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-amd64-di, scsi-core-modules-5.10.0-28-amd64-di, usb-modules-5.10.0-28-amd64-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: pcmcia-storage-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-storage-modules
+Depends: kernel-image-5.10.0-28-amd64-di, cdrom-core-modules-5.10.0-28-amd64-di, pcmcia-modules-5.10.0-28-amd64-di, ata-modules-5.10.0-28-amd64-di
+Description: PCMCIA storage drivers
+ This package contains PCMCIA storage drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-amd64-di, i2c-modules-5.10.0-28-amd64-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-amd64-di, usb-modules-5.10.0-28-amd64-di, i2c-modules-5.10.0-28-amd64-di, rfkill-modules-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-amd64-di, event-modules-5.10.0-28-amd64-di, input-modules-5.10.0-28-amd64-di, usb-modules-5.10.0-28-amd64-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: nic-pcmcia-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: nic-pcmcia-modules
+Depends: kernel-image-5.10.0-28-amd64-di, nic-shared-modules-5.10.0-28-amd64-di, nic-wireless-modules-5.10.0-28-amd64-di, pcmcia-modules-5.10.0-28-amd64-di, mmc-core-modules-5.10.0-28-amd64-di
+Description: Common PCMCIA NIC drivers
+ This package contains common PCMCIA NIC drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: pcmcia-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: Common PCMCIA drivers
+ This package contains common PCMCIA drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-amd64-di, nic-shared-modules-5.10.0-28-amd64-di, nic-wireless-modules-5.10.0-28-amd64-di, usb-modules-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-amd64-di, scsi-core-modules-5.10.0-28-amd64-di, ata-modules-5.10.0-28-amd64-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: acpi-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: acpi-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: ACPI support modules
+ This package contains kernel modules for ACPI.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-amd64-di, md-modules-5.10.0-28-amd64-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: efi-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: efi-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: EFI modules
+ This package contains EFI modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-amd64-di, scsi-core-modules-5.10.0-28-amd64-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: mmc-core-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: mmc-core-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: MMC/SD/SDIO core modules
+ This package contains core modules for MMC/SD/SDIO support.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: mmc-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: mmc-modules
+Depends: kernel-image-5.10.0-28-amd64-di, mmc-core-modules-5.10.0-28-amd64-di, usb-modules-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di
+Description: MMC/SD card modules
+ This package contains modules needed to support MMC (multimedia) and SD
+ cards.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: speakup-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: speakup-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: speakup modules
+ This package contains speakup modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: uinput-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: uinput-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: uinput support
+ This package contains the uinput module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: sound-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: sound-modules
+Depends: kernel-image-5.10.0-28-amd64-di, i2c-modules-5.10.0-28-amd64-di, usb-modules-5.10.0-28-amd64-di, pcmcia-modules-5.10.0-28-amd64-di, firewire-core-modules-5.10.0-28-amd64-di, crc-modules-5.10.0-28-amd64-di
+Description: sound support
+ This package contains sound modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: rfkill-modules-5.10.0-28-amd64-di
+Architecture: amd64
+Section: debian-installer
+Priority: optional
+Provides: rfkill-modules
+Depends: kernel-image-5.10.0-28-amd64-di
+Description: rfkill modules
+ This package contains the rfkill module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-amd64
+Package-Type: udeb
+
+Package: linux-image-amd64-signed-template
+Architecture: amd64
+Depends: dpkg-dev, ${misc:Depends}
+Description: Template for signed linux-image packages for amd64
+ This package is used to control code signing by the Debian signing
+ service.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-amd64-unsigned
+Architecture: amd64
+Depends: kmod, linux-base (>= 4.3~), ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [amd64] | linux-initramfs-tool [amd64]
+Recommends: firmware-linux-free, apparmor [amd64]
+Suggests: linux-doc-5.10, debian-kernel-handbook, grub-pc [amd64] | grub-efi-amd64 [amd64] | extlinux [amd64]
+Replaces: linux-image-5.10.0-28-amd64
+Breaks: xserver-xorg-input-vmmouse (<< 1:13.0.99) [amd64], fwupdate (<< 12-7) [amd64], wireless-regdb (<< 2019.06.03-1~) [amd64], initramfs-tools (<< 0.120+deb8u2)
+Conflicts: linux-image-5.10.0-28-amd64
+Description: Linux 5.10 for 64-bit PCs
+ The Linux kernel 5.10 and modules for use on PCs with AMD64, Intel 64 or
+ VIA Nano processors.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-amd64
+Architecture: amd64
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-x86
+Description: Header files for Linux 5.10.0-28-amd64
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-amd64, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-amd64, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-amd64 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-amd64-dbg
+Architecture: amd64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-amd64
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-amd64.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-amd64-dbg
+Architecture: amd64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-amd64-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux amd64 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel amd64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-cloud-amd64-unsigned
+Architecture: amd64
+Depends: kmod, linux-base (>= 4.3~), ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [amd64] | linux-initramfs-tool [amd64]
+Recommends: firmware-linux-free, apparmor [amd64]
+Suggests: linux-doc-5.10, debian-kernel-handbook, grub-pc [amd64] | grub-efi-amd64 [amd64] | extlinux [amd64]
+Replaces: linux-image-5.10.0-28-cloud-amd64
+Breaks: xserver-xorg-input-vmmouse (<< 1:13.0.99) [amd64], fwupdate (<< 12-7) [amd64], wireless-regdb (<< 2019.06.03-1~) [amd64], initramfs-tools (<< 0.120+deb8u2)
+Conflicts: linux-image-5.10.0-28-cloud-amd64
+Description: Linux 5.10 for x86-64 cloud
+ The Linux kernel 5.10 and modules for use on cloud platforms including
+ Amazon EC2, Microsoft Azure, and Google Compute Engine.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-cloud-amd64
+Architecture: amd64
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-x86
+Description: Header files for Linux 5.10.0-28-cloud-amd64
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-cloud-amd64, generally used for building
+ out-of-tree kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-cloud-amd64, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-cloud-amd64 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-cloud-amd64-dbg
+Architecture: amd64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-cloud-amd64
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-cloud-amd64.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-cloud-amd64-dbg
+Architecture: amd64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-cloud-amd64-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux cloud-amd64 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel cloud-amd64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-rt-amd64-unsigned
+Architecture: amd64
+Depends: kmod, linux-base (>= 4.3~), ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [amd64] | linux-initramfs-tool [amd64]
+Recommends: firmware-linux-free, apparmor [amd64]
+Suggests: linux-doc-5.10, debian-kernel-handbook, grub-pc [amd64] | grub-efi-amd64 [amd64] | extlinux [amd64]
+Replaces: linux-image-5.10.0-28-rt-amd64
+Breaks: xserver-xorg-input-vmmouse (<< 1:13.0.99) [amd64], fwupdate (<< 12-7) [amd64], wireless-regdb (<< 2019.06.03-1~) [amd64], initramfs-tools (<< 0.120+deb8u2)
+Conflicts: linux-image-5.10.0-28-rt-amd64
+Description: Linux 5.10 for 64-bit PCs, PREEMPT_RT
+ The Linux kernel 5.10 and modules for use on PCs with AMD64, Intel 64 or
+ VIA Nano processors.
+ .
+ This kernel includes the PREEMPT_RT realtime patch set.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-rt-amd64
+Architecture: amd64
+Depends: linux-headers-5.10.0-28-common-rt (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-x86
+Description: Header files for Linux 5.10.0-28-rt-amd64
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-rt-amd64, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-rt-amd64, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-rt-amd64 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-rt-amd64-dbg
+Architecture: amd64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-rt-amd64
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-rt-amd64.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-rt-amd64-dbg
+Architecture: amd64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-rt-amd64-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux rt-amd64 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel rt-amd64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, mmc-core-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-arm64-di, nic-shared-modules-5.10.0-28-arm64-di, i2c-modules-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di, mtd-core-modules-5.10.0-28-arm64-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-arm64-di, nic-shared-modules-5.10.0-28-arm64-di, usb-modules-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di, crypto-modules-5.10.0-28-arm64-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-arm64-di, usb-modules-5.10.0-28-arm64-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-arm64-di, scsi-core-modules-5.10.0-28-arm64-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-arm64-di, scsi-core-modules-5.10.0-28-arm64-di, cdrom-core-modules-5.10.0-28-arm64-di, ata-modules-5.10.0-28-arm64-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-arm64-di, nic-modules-5.10.0-28-arm64-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di, md-modules-5.10.0-28-arm64-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-arm64-di, cdrom-core-modules-5.10.0-28-arm64-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di, cdrom-core-modules-5.10.0-28-arm64-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-arm64-di, md-modules-5.10.0-28-arm64-di, scsi-core-modules-5.10.0-28-arm64-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-arm64-di, scsi-core-modules-5.10.0-28-arm64-di, usb-modules-5.10.0-28-arm64-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-arm64-di, i2c-modules-5.10.0-28-arm64-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-arm64-di, usb-modules-5.10.0-28-arm64-di, i2c-modules-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-arm64-di, nic-shared-modules-5.10.0-28-arm64-di, nic-wireless-modules-5.10.0-28-arm64-di, usb-modules-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-arm64-di, scsi-core-modules-5.10.0-28-arm64-di, ata-modules-5.10.0-28-arm64-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-arm64-di, md-modules-5.10.0-28-arm64-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: efi-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: efi-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: EFI modules
+ This package contains EFI modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-arm64-di, scsi-core-modules-5.10.0-28-arm64-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: mmc-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: mmc-modules
+Depends: kernel-image-5.10.0-28-arm64-di, usb-modules-5.10.0-28-arm64-di, crc-modules-5.10.0-28-arm64-di
+Description: MMC/SD card modules
+ This package contains modules needed to support MMC (multimedia) and SD
+ cards.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: uinput-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: uinput-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: uinput support
+ This package contains the uinput module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: leds-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: leds-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: LED modules
+ This package contains LED modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-arm64-di
+Architecture: arm64
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-arm64-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-arm64
+Package-Type: udeb
+
+Package: linux-image-arm64-signed-template
+Architecture: arm64
+Depends: dpkg-dev, ${misc:Depends}
+Description: Template for signed linux-image packages for arm64
+ This package is used to control code signing by the Debian signing
+ service.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-arm64-unsigned
+Architecture: arm64
+Depends: kmod, linux-base (>= 4.3~), ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [arm64] | linux-initramfs-tool [arm64]
+Recommends: firmware-linux-free, apparmor [arm64]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Replaces: linux-image-5.10.0-28-arm64
+Breaks: libmozjs185-1.0 [arm64], libmozjs-24-0 (<< 24.2.0-5.1~) [arm64], fwupdate (<< 12-7) [arm64], wireless-regdb (<< 2019.06.03-1~) [arm64], initramfs-tools (<< 0.120+deb8u2)
+Conflicts: linux-image-5.10.0-28-arm64
+Description: Linux 5.10 for 64-bit ARMv8 machines
+ The Linux kernel 5.10 and modules for use on 64-bit ARMv8 machines.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-arm64
+Architecture: arm64
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-arm64
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-arm64, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-arm64, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-arm64 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-arm64-dbg
+Architecture: arm64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-arm64
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-arm64.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-arm64-dbg
+Architecture: arm64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-arm64-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux arm64 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel arm64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-cloud-arm64-unsigned
+Architecture: arm64
+Depends: kmod, linux-base (>= 4.3~), ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [arm64] | linux-initramfs-tool [arm64]
+Recommends: firmware-linux-free, apparmor [arm64]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Replaces: linux-image-5.10.0-28-cloud-arm64
+Breaks: libmozjs185-1.0 [arm64], libmozjs-24-0 (<< 24.2.0-5.1~) [arm64], fwupdate (<< 12-7) [arm64], wireless-regdb (<< 2019.06.03-1~) [arm64], initramfs-tools (<< 0.120+deb8u2)
+Conflicts: linux-image-5.10.0-28-cloud-arm64
+Description: Linux 5.10 for arm64 cloud
+ The Linux kernel 5.10 and modules for use on cloud platforms supporting
+ arm64 virtual machines.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-cloud-arm64
+Architecture: arm64
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-cloud-arm64
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-cloud-arm64, generally used for building
+ out-of-tree kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-cloud-arm64, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-cloud-arm64 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-cloud-arm64-dbg
+Architecture: arm64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-cloud-arm64
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-cloud-arm64.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-cloud-arm64-dbg
+Architecture: arm64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-cloud-arm64-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux cloud-arm64 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel cloud-arm64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-rt-arm64-unsigned
+Architecture: arm64
+Depends: kmod, linux-base (>= 4.3~), ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [arm64] | linux-initramfs-tool [arm64]
+Recommends: firmware-linux-free, apparmor [arm64]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Replaces: linux-image-5.10.0-28-rt-arm64
+Breaks: libmozjs185-1.0 [arm64], libmozjs-24-0 (<< 24.2.0-5.1~) [arm64], fwupdate (<< 12-7) [arm64], wireless-regdb (<< 2019.06.03-1~) [arm64], initramfs-tools (<< 0.120+deb8u2)
+Conflicts: linux-image-5.10.0-28-rt-arm64
+Description: Linux 5.10 for 64-bit ARMv8 machines, PREEMPT_RT
+ The Linux kernel 5.10 and modules for use on 64-bit ARMv8 machines.
+ .
+ This kernel includes the PREEMPT_RT realtime patch set.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-rt-arm64
+Architecture: arm64
+Depends: linux-headers-5.10.0-28-common-rt (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-rt-arm64
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-rt-arm64, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-rt-arm64, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-rt-arm64 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-rt-arm64-dbg
+Architecture: arm64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-rt-arm64
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-rt-arm64.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-rt-arm64-dbg
+Architecture: arm64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-rt-arm64-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux rt-arm64 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel rt-arm64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-marvell-di, nic-shared-modules-5.10.0-28-marvell-di, crc-modules-5.10.0-28-marvell-di, mtd-core-modules-5.10.0-28-marvell-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-marvell-di, usb-modules-5.10.0-28-marvell-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-marvell-di, crc-modules-5.10.0-28-marvell-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-marvell-di, scsi-core-modules-5.10.0-28-marvell-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: ipv6-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: ipv6-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: IPv6 driver
+ This package contains the IPv6 driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-marvell-di, crc-modules-5.10.0-28-marvell-di, md-modules-5.10.0-28-marvell-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-marvell-di, crc-modules-5.10.0-28-marvell-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-marvell-di, cdrom-core-modules-5.10.0-28-marvell-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: jffs2-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: jffs2-modules
+Depends: kernel-image-5.10.0-28-marvell-di, mtd-modules-5.10.0-28-marvell-di
+Description: JFFS2 filesystem support
+ This package contains the JFFS2 filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: minix-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: minix-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: Minix filesystem support
+ This package contains the Minix filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-marvell-di, crc-modules-5.10.0-28-marvell-di, cdrom-core-modules-5.10.0-28-marvell-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-marvell-di, crc-modules-5.10.0-28-marvell-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-marvell-di, crc-modules-5.10.0-28-marvell-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-marvell-di, md-modules-5.10.0-28-marvell-di, scsi-core-modules-5.10.0-28-marvell-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-marvell-di, scsi-core-modules-5.10.0-28-marvell-di, usb-modules-5.10.0-28-marvell-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-marvell-di, usb-modules-5.10.0-28-marvell-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-marvell-di, usb-modules-5.10.0-28-marvell-di, crc-modules-5.10.0-28-marvell-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-marvell-di, event-modules-5.10.0-28-marvell-di, input-modules-5.10.0-28-marvell-di, usb-modules-5.10.0-28-marvell-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-marvell-di, nic-shared-modules-5.10.0-28-marvell-di, usb-modules-5.10.0-28-marvell-di, crc-modules-5.10.0-28-marvell-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-marvell-di, scsi-core-modules-5.10.0-28-marvell-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-marvell-di, md-modules-5.10.0-28-marvell-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: mmc-core-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: mmc-core-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: MMC/SD/SDIO core modules
+ This package contains core modules for MMC/SD/SDIO support.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: mmc-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: mmc-modules
+Depends: kernel-image-5.10.0-28-marvell-di, mmc-core-modules-5.10.0-28-marvell-di, usb-modules-5.10.0-28-marvell-di, crc-modules-5.10.0-28-marvell-di
+Description: MMC/SD card modules
+ This package contains modules needed to support MMC (multimedia) and SD
+ cards.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: uinput-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: uinput-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: uinput support
+ This package contains the uinput module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: leds-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: leds-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: LED modules
+ This package contains LED modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: mtd-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: mtd-modules
+Depends: kernel-image-5.10.0-28-marvell-di, mtd-core-modules-5.10.0-28-marvell-di
+Description: MTD driver modules
+ This package contains MTD driver modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-marvell-di
+Architecture: armel
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-marvell-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-marvell
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-marvell
+Architecture: armel
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [armel] | linux-initramfs-tool [armel]
+Recommends: firmware-linux-free, u-boot-tools [armel], apparmor [armel]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: flash-kernel (<< 3.57~) [armel], fwupdate (<< 12-7) [armel], wireless-regdb (<< 2019.06.03-1~) [armel], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for Marvell Kirkwood/Orion
+ The Linux kernel 5.10 and modules for use on Marvell Kirkwood and Orion
+ based systems (https://wiki.debian.org/ArmEabiPort#Supported_hardware).
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-marvell
+Architecture: armel
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-arm
+Description: Header files for Linux 5.10.0-28-marvell
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-marvell, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-marvell, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-marvell package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-marvell
+Architecture: armel
+Provides: linux-latest-modules-5.10.0-28-marvell, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-marvell (= ${binary:Version}), ${misc:Depends}
+Description: Linux for Marvell Kirkwood/Orion (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ Marvell Kirkwood and Orion based systems
+ (https://wiki.debian.org/ArmEabiPort#Supported_hardware).
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-marvell
+Architecture: armel
+Depends: linux-headers-5.10.0-28-marvell (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux marvell configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel marvell configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-marvell-dbg
+Architecture: armel
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-marvell
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-marvell.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-marvell-dbg
+Architecture: armel
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-marvell-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux marvell configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel marvell configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-rpi
+Architecture: armel
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [armel] | linux-initramfs-tool [armel]
+Recommends: firmware-linux-free, apparmor [armel]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [armel], wireless-regdb (<< 2019.06.03-1~) [armel], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for Raspberry Pi and Pi Zero
+ The Linux kernel 5.10 and modules for use on Raspberry Pi, Raspberry Pi
+ Zero based systems.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-rpi
+Architecture: armel
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-arm
+Description: Header files for Linux 5.10.0-28-rpi
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-rpi, generally used for building out-of-tree kernel
+ modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-rpi, and can be used for building modules
+ that load into the kernel provided by the linux-image-5.10.0-28-rpi
+ package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-rpi
+Architecture: armel
+Provides: linux-latest-modules-5.10.0-28-rpi, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-rpi (= ${binary:Version}), ${misc:Depends}
+Description: Linux for Raspberry Pi and Pi Zero (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ Raspberry Pi, Raspberry Pi Zero based systems.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-rpi
+Architecture: armel
+Depends: linux-headers-5.10.0-28-rpi (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux rpi configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel rpi configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-rpi-dbg
+Architecture: armel
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-rpi
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-rpi.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-rpi-dbg
+Architecture: armel
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-rpi-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux rpi configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel rpi configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, mmc-core-modules, mtd-core-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-armmp-di, nic-shared-modules-5.10.0-28-armmp-di, i2c-modules-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-armmp-di, nic-shared-modules-5.10.0-28-armmp-di, usb-modules-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di, crypto-modules-5.10.0-28-armmp-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-armmp-di, usb-modules-5.10.0-28-armmp-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-armmp-di, ata-modules-5.10.0-28-armmp-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-armmp-di, scsi-core-modules-5.10.0-28-armmp-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-armmp-di, scsi-core-modules-5.10.0-28-armmp-di, cdrom-core-modules-5.10.0-28-armmp-di, ata-modules-5.10.0-28-armmp-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-armmp-di, nic-modules-5.10.0-28-armmp-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di, md-modules-5.10.0-28-armmp-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-armmp-di, cdrom-core-modules-5.10.0-28-armmp-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di, cdrom-core-modules-5.10.0-28-armmp-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-armmp-di, md-modules-5.10.0-28-armmp-di, scsi-core-modules-5.10.0-28-armmp-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-armmp-di, scsi-core-modules-5.10.0-28-armmp-di, usb-modules-5.10.0-28-armmp-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-armmp-di, i2c-modules-5.10.0-28-armmp-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-armmp-di, usb-modules-5.10.0-28-armmp-di, i2c-modules-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-armmp-di, nic-shared-modules-5.10.0-28-armmp-di, nic-wireless-modules-5.10.0-28-armmp-di, usb-modules-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-armmp-di, scsi-core-modules-5.10.0-28-armmp-di, ata-modules-5.10.0-28-armmp-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-armmp-di, md-modules-5.10.0-28-armmp-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: efi-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: efi-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: EFI modules
+ This package contains EFI modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-armmp-di, scsi-core-modules-5.10.0-28-armmp-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: mmc-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: mmc-modules
+Depends: kernel-image-5.10.0-28-armmp-di, usb-modules-5.10.0-28-armmp-di, crc-modules-5.10.0-28-armmp-di
+Description: MMC/SD card modules
+ This package contains modules needed to support MMC (multimedia) and SD
+ cards.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: uinput-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: uinput-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: uinput support
+ This package contains the uinput module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: leds-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: leds-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: LED modules
+ This package contains LED modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: mtd-modules-5.10.0-28-armmp-di
+Architecture: armhf
+Section: debian-installer
+Priority: optional
+Provides: mtd-modules
+Depends: kernel-image-5.10.0-28-armmp-di
+Description: MTD driver modules
+ This package contains MTD driver modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-armmp
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-armmp
+Architecture: armhf
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [armhf] | linux-initramfs-tool [armhf]
+Recommends: firmware-linux-free, apparmor [armhf]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [armhf], wireless-regdb (<< 2019.06.03-1~) [armhf], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for ARMv7 multiplatform compatible SoCs
+ The Linux kernel 5.10 and modules for use on ARMv7 multiplatform kernel.
+ See https://wiki.debian.org/DebianKernel/ARMMP for details of supported
+ platforms.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-armmp
+Architecture: armhf
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-arm
+Description: Header files for Linux 5.10.0-28-armmp
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-armmp, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-armmp, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-armmp package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-armmp
+Architecture: armhf
+Provides: linux-latest-modules-5.10.0-28-armmp, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-armmp (= ${binary:Version}), ${misc:Depends}
+Description: Linux for ARMv7 multiplatform compatible SoCs (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ ARMv7 multiplatform kernel. See
+ https://wiki.debian.org/DebianKernel/ARMMP for details of supported
+ platforms.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-armmp
+Architecture: armhf
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-armmp (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux armmp configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel armmp configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-armmp-dbg
+Architecture: armhf
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-armmp
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-armmp.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-armmp-dbg
+Architecture: armhf
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-armmp-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux armmp configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel armmp configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-armmp-lpae
+Architecture: armhf
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [armhf] | linux-initramfs-tool [armhf]
+Recommends: firmware-linux-free, apparmor [armhf]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [armhf], wireless-regdb (<< 2019.06.03-1~) [armhf], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for ARMv7 multiplatform compatible SoCs supporting LPAE
+ The Linux kernel 5.10 and modules for use on ARMv7 multiplatform kernel
+ supporting LPAE. See https://wiki.debian.org/DebianKernel/ARMMP for
+ details of supported platforms..
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-armmp-lpae
+Architecture: armhf
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-arm
+Description: Header files for Linux 5.10.0-28-armmp-lpae
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-armmp-lpae, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-armmp-lpae, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-armmp-lpae package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-armmp-lpae
+Architecture: armhf
+Provides: linux-latest-modules-5.10.0-28-armmp-lpae, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-armmp-lpae (= ${binary:Version}), ${misc:Depends}
+Description: Linux for ARMv7 multiplatform compatible SoCs supporting LPAE (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ ARMv7 multiplatform kernel supporting LPAE. See
+ https://wiki.debian.org/DebianKernel/ARMMP for details of supported
+ platforms..
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-armmp-lpae
+Architecture: armhf
+Depends: linux-headers-5.10.0-28-armmp-lpae (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux armmp-lpae configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel armmp-lpae configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-armmp-lpae-dbg
+Architecture: armhf
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-armmp-lpae
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-armmp-lpae.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-armmp-lpae-dbg
+Architecture: armhf
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-armmp-lpae-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux armmp-lpae configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel armmp-lpae configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-rt-armmp
+Architecture: armhf
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [armhf] | linux-initramfs-tool [armhf]
+Recommends: firmware-linux-free, apparmor [armhf]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [armhf], wireless-regdb (<< 2019.06.03-1~) [armhf], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for ARMv7 multiplatform compatible SoCs, PREEMPT_RT
+ The Linux kernel 5.10 and modules for use on ARMv7 multiplatform kernel.
+ See https://wiki.debian.org/DebianKernel/ARMMP for details of supported
+ platforms.
+ .
+ This kernel includes the PREEMPT_RT realtime patch set.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-rt-armmp
+Architecture: armhf
+Depends: linux-headers-5.10.0-28-common-rt (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-arm
+Description: Header files for Linux 5.10.0-28-rt-armmp
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-rt-armmp, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-rt-armmp, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-rt-armmp package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-rt-armmp
+Architecture: armhf
+Provides: linux-latest-modules-5.10.0-28-rt-armmp, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-rt-armmp (= ${binary:Version}), ${misc:Depends}
+Description: Linux for ARMv7 multiplatform compatible SoCs (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ ARMv7 multiplatform kernel. See
+ https://wiki.debian.org/DebianKernel/ARMMP for details of supported
+ platforms.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-rt-armmp
+Architecture: armhf
+Depends: linux-headers-5.10.0-28-rt-armmp (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux rt-armmp configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel rt-armmp configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-rt-armmp-dbg
+Architecture: armhf
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-rt-armmp
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-rt-armmp.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-rt-armmp-dbg
+Architecture: armhf
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-rt-armmp-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux rt-armmp configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel rt-armmp configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: kernel-image
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-parisc-di, nic-shared-modules-5.10.0-28-parisc-di, crc-modules-5.10.0-28-parisc-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: serial-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: serial-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-parisc-di, usb-modules-5.10.0-28-parisc-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-parisc-di, serial-modules-5.10.0-28-parisc-di, crc-modules-5.10.0-28-parisc-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-parisc-di, ata-modules-5.10.0-28-parisc-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-parisc-di, scsi-core-modules-5.10.0-28-parisc-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-parisc-di, scsi-core-modules-5.10.0-28-parisc-di, cdrom-core-modules-5.10.0-28-parisc-di, ata-modules-5.10.0-28-parisc-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-parisc-di, crc-modules-5.10.0-28-parisc-di, md-modules-5.10.0-28-parisc-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-parisc-di, crc-modules-5.10.0-28-parisc-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-parisc-di, cdrom-core-modules-5.10.0-28-parisc-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-parisc-di, crc-modules-5.10.0-28-parisc-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-parisc-di, crc-modules-5.10.0-28-parisc-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-parisc-di, crc-modules-5.10.0-28-parisc-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-parisc-di, md-modules-5.10.0-28-parisc-di, scsi-core-modules-5.10.0-28-parisc-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-parisc-di, scsi-core-modules-5.10.0-28-parisc-di, usb-modules-5.10.0-28-parisc-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-parisc-di, usb-modules-5.10.0-28-parisc-di, crc-modules-5.10.0-28-parisc-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-parisc-di, event-modules-5.10.0-28-parisc-di, input-modules-5.10.0-28-parisc-di, usb-modules-5.10.0-28-parisc-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-parisc-di, nic-shared-modules-5.10.0-28-parisc-di, usb-modules-5.10.0-28-parisc-di, crc-modules-5.10.0-28-parisc-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-parisc-di, scsi-core-modules-5.10.0-28-parisc-di, ata-modules-5.10.0-28-parisc-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-parisc-di, md-modules-5.10.0-28-parisc-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-parisc-di, scsi-core-modules-5.10.0-28-parisc-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-parisc-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-parisc-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc
+Package-Type: udeb
+
+Package: kernel-image-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: kernel-image
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, nic-shared-modules-5.10.0-28-parisc64-di, crc-modules-5.10.0-28-parisc64-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: serial-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: serial-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, usb-modules-5.10.0-28-parisc64-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, serial-modules-5.10.0-28-parisc64-di, crc-modules-5.10.0-28-parisc64-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, ata-modules-5.10.0-28-parisc64-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, scsi-core-modules-5.10.0-28-parisc64-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, scsi-core-modules-5.10.0-28-parisc64-di, cdrom-core-modules-5.10.0-28-parisc64-di, ata-modules-5.10.0-28-parisc64-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, crc-modules-5.10.0-28-parisc64-di, md-modules-5.10.0-28-parisc64-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, crc-modules-5.10.0-28-parisc64-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, cdrom-core-modules-5.10.0-28-parisc64-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, crc-modules-5.10.0-28-parisc64-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, crc-modules-5.10.0-28-parisc64-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, crc-modules-5.10.0-28-parisc64-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, md-modules-5.10.0-28-parisc64-di, scsi-core-modules-5.10.0-28-parisc64-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, scsi-core-modules-5.10.0-28-parisc64-di, usb-modules-5.10.0-28-parisc64-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, usb-modules-5.10.0-28-parisc64-di, crc-modules-5.10.0-28-parisc64-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, event-modules-5.10.0-28-parisc64-di, input-modules-5.10.0-28-parisc64-di, usb-modules-5.10.0-28-parisc64-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, nic-shared-modules-5.10.0-28-parisc64-di, usb-modules-5.10.0-28-parisc64-di, crc-modules-5.10.0-28-parisc64-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, scsi-core-modules-5.10.0-28-parisc64-di, ata-modules-5.10.0-28-parisc64-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, md-modules-5.10.0-28-parisc64-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-parisc64-di, scsi-core-modules-5.10.0-28-parisc64-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-parisc64-di
+Architecture: hppa
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-parisc64-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-parisc64
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-parisc
+Architecture: hppa
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [hppa] | linux-initramfs-tool [hppa]
+Recommends: firmware-linux-free, apparmor [hppa]
+Suggests: linux-doc-5.10, debian-kernel-handbook, palo [hppa]
+Breaks: fwupdate (<< 12-7) [hppa], wireless-regdb (<< 2019.06.03-1~) [hppa], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for 32-bit PA-RISC
+ The Linux kernel 5.10 and modules for use on HP PA-RISC 32-bit systems
+ with max 4 GB RAM.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-parisc
+Architecture: hppa
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10, binutils-hppa64-linux-gnu, gcc-10-hppa64-linux-gnu
+Description: Header files for Linux 5.10.0-28-parisc
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-parisc, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-parisc, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-parisc package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-parisc
+Architecture: hppa
+Provides: linux-latest-modules-5.10.0-28-parisc, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-parisc (= ${binary:Version}), ${misc:Depends}
+Description: Linux for 32-bit PA-RISC (meta-package)
+ This package depends on the latest Linux kernel and modules for use on HP
+ PA-RISC 32-bit systems with max 4 GB RAM.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-parisc
+Architecture: hppa
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-parisc (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux parisc configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel parisc configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-parisc64
+Architecture: hppa
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [hppa] | linux-initramfs-tool [hppa]
+Recommends: firmware-linux-free, apparmor [hppa]
+Suggests: linux-doc-5.10, debian-kernel-handbook, palo [hppa]
+Breaks: fwupdate (<< 12-7) [hppa], wireless-regdb (<< 2019.06.03-1~) [hppa], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for 64-bit PA-RISC
+ The Linux kernel 5.10 and modules for use on HP PA-RISC 64-bit systems
+ with support for more than 4 GB RAM.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-parisc64
+Architecture: hppa
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10, binutils-hppa64-linux-gnu, gcc-10-hppa64-linux-gnu
+Description: Header files for Linux 5.10.0-28-parisc64
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-parisc64, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-parisc64, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-parisc64 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-parisc64
+Architecture: hppa
+Provides: linux-latest-modules-5.10.0-28-parisc64, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-parisc64 (= ${binary:Version}), ${misc:Depends}
+Description: Linux for 64-bit PA-RISC (meta-package)
+ This package depends on the latest Linux kernel and modules for use on HP
+ PA-RISC 64-bit systems with support for more than 4 GB RAM.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-parisc64
+Architecture: hppa
+Depends: linux-headers-5.10.0-28-parisc64 (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux parisc64 configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel parisc64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-686-di, nic-shared-modules-5.10.0-28-686-di, i2c-modules-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di, mtd-core-modules-5.10.0-28-686-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-686-di, nic-shared-modules-5.10.0-28-686-di, usb-modules-5.10.0-28-686-di, mmc-core-modules-5.10.0-28-686-di, pcmcia-modules-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di, rfkill-modules-5.10.0-28-686-di, crypto-modules-5.10.0-28-686-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: serial-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: serial-modules
+Depends: kernel-image-5.10.0-28-686-di, pcmcia-modules-5.10.0-28-686-di
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-686-di, usb-modules-5.10.0-28-686-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-686-di, serial-modules-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-686-di, ata-modules-5.10.0-28-686-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-686-di, scsi-core-modules-5.10.0-28-686-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: firewire-core-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: firewire-core-modules
+Depends: kernel-image-5.10.0-28-686-di, scsi-core-modules-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-686-di, scsi-core-modules-5.10.0-28-686-di, cdrom-core-modules-5.10.0-28-686-di, ata-modules-5.10.0-28-686-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-686-di, nic-modules-5.10.0-28-686-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di, md-modules-5.10.0-28-686-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-686-di, cdrom-core-modules-5.10.0-28-686-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di, cdrom-core-modules-5.10.0-28-686-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-686-di, md-modules-5.10.0-28-686-di, scsi-core-modules-5.10.0-28-686-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-686-di, scsi-core-modules-5.10.0-28-686-di, usb-modules-5.10.0-28-686-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: pcmcia-storage-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-storage-modules
+Depends: kernel-image-5.10.0-28-686-di, cdrom-core-modules-5.10.0-28-686-di, pcmcia-modules-5.10.0-28-686-di, ata-modules-5.10.0-28-686-di
+Description: PCMCIA storage drivers
+ This package contains PCMCIA storage drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-686-di, i2c-modules-5.10.0-28-686-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-686-di, usb-modules-5.10.0-28-686-di, i2c-modules-5.10.0-28-686-di, rfkill-modules-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-686-di, event-modules-5.10.0-28-686-di, input-modules-5.10.0-28-686-di, usb-modules-5.10.0-28-686-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: nic-pcmcia-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: nic-pcmcia-modules
+Depends: kernel-image-5.10.0-28-686-di, nic-shared-modules-5.10.0-28-686-di, nic-wireless-modules-5.10.0-28-686-di, pcmcia-modules-5.10.0-28-686-di, mmc-core-modules-5.10.0-28-686-di
+Description: Common PCMCIA NIC drivers
+ This package contains common PCMCIA NIC drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: pcmcia-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: Common PCMCIA drivers
+ This package contains common PCMCIA drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-686-di, nic-shared-modules-5.10.0-28-686-di, nic-wireless-modules-5.10.0-28-686-di, usb-modules-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-686-di, scsi-core-modules-5.10.0-28-686-di, ata-modules-5.10.0-28-686-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: acpi-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: acpi-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: ACPI support modules
+ This package contains kernel modules for ACPI.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-686-di, md-modules-5.10.0-28-686-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: efi-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: efi-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: EFI modules
+ This package contains EFI modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-686-di, scsi-core-modules-5.10.0-28-686-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: mmc-core-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: mmc-core-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: MMC/SD/SDIO core modules
+ This package contains core modules for MMC/SD/SDIO support.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: mmc-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: mmc-modules
+Depends: kernel-image-5.10.0-28-686-di, mmc-core-modules-5.10.0-28-686-di, usb-modules-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di
+Description: MMC/SD card modules
+ This package contains modules needed to support MMC (multimedia) and SD
+ cards.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: speakup-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: speakup-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: speakup modules
+ This package contains speakup modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: uinput-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: uinput-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: uinput support
+ This package contains the uinput module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: sound-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: sound-modules
+Depends: kernel-image-5.10.0-28-686-di, i2c-modules-5.10.0-28-686-di, usb-modules-5.10.0-28-686-di, pcmcia-modules-5.10.0-28-686-di, firewire-core-modules-5.10.0-28-686-di, crc-modules-5.10.0-28-686-di
+Description: sound support
+ This package contains sound modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: rfkill-modules-5.10.0-28-686-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: rfkill-modules
+Depends: kernel-image-5.10.0-28-686-di
+Description: rfkill modules
+ This package contains the rfkill module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686
+Package-Type: udeb
+
+Package: kernel-image-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, nic-shared-modules-5.10.0-28-686-pae-di, i2c-modules-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di, mtd-core-modules-5.10.0-28-686-pae-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, nic-shared-modules-5.10.0-28-686-pae-di, usb-modules-5.10.0-28-686-pae-di, mmc-core-modules-5.10.0-28-686-pae-di, pcmcia-modules-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di, rfkill-modules-5.10.0-28-686-pae-di, crypto-modules-5.10.0-28-686-pae-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: serial-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: serial-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, pcmcia-modules-5.10.0-28-686-pae-di
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, usb-modules-5.10.0-28-686-pae-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, serial-modules-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, ata-modules-5.10.0-28-686-pae-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, scsi-core-modules-5.10.0-28-686-pae-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: firewire-core-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: firewire-core-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, scsi-core-modules-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, scsi-core-modules-5.10.0-28-686-pae-di, cdrom-core-modules-5.10.0-28-686-pae-di, ata-modules-5.10.0-28-686-pae-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-686-pae-di, nic-modules-5.10.0-28-686-pae-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di, md-modules-5.10.0-28-686-pae-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, cdrom-core-modules-5.10.0-28-686-pae-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di, cdrom-core-modules-5.10.0-28-686-pae-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, md-modules-5.10.0-28-686-pae-di, scsi-core-modules-5.10.0-28-686-pae-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, scsi-core-modules-5.10.0-28-686-pae-di, usb-modules-5.10.0-28-686-pae-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: pcmcia-storage-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-storage-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, cdrom-core-modules-5.10.0-28-686-pae-di, pcmcia-modules-5.10.0-28-686-pae-di, ata-modules-5.10.0-28-686-pae-di
+Description: PCMCIA storage drivers
+ This package contains PCMCIA storage drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, i2c-modules-5.10.0-28-686-pae-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, usb-modules-5.10.0-28-686-pae-di, i2c-modules-5.10.0-28-686-pae-di, rfkill-modules-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, event-modules-5.10.0-28-686-pae-di, input-modules-5.10.0-28-686-pae-di, usb-modules-5.10.0-28-686-pae-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: nic-pcmcia-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: nic-pcmcia-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, nic-shared-modules-5.10.0-28-686-pae-di, nic-wireless-modules-5.10.0-28-686-pae-di, pcmcia-modules-5.10.0-28-686-pae-di, mmc-core-modules-5.10.0-28-686-pae-di
+Description: Common PCMCIA NIC drivers
+ This package contains common PCMCIA NIC drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: pcmcia-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: Common PCMCIA drivers
+ This package contains common PCMCIA drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, nic-shared-modules-5.10.0-28-686-pae-di, nic-wireless-modules-5.10.0-28-686-pae-di, usb-modules-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, scsi-core-modules-5.10.0-28-686-pae-di, ata-modules-5.10.0-28-686-pae-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: acpi-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: acpi-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: ACPI support modules
+ This package contains kernel modules for ACPI.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, md-modules-5.10.0-28-686-pae-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: efi-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: efi-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: EFI modules
+ This package contains EFI modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, scsi-core-modules-5.10.0-28-686-pae-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: mmc-core-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: mmc-core-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: MMC/SD/SDIO core modules
+ This package contains core modules for MMC/SD/SDIO support.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: mmc-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: mmc-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, mmc-core-modules-5.10.0-28-686-pae-di, usb-modules-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di
+Description: MMC/SD card modules
+ This package contains modules needed to support MMC (multimedia) and SD
+ cards.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: speakup-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: speakup-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: speakup modules
+ This package contains speakup modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: uinput-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: uinput-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: uinput support
+ This package contains the uinput module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: sound-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: sound-modules
+Depends: kernel-image-5.10.0-28-686-pae-di, i2c-modules-5.10.0-28-686-pae-di, usb-modules-5.10.0-28-686-pae-di, pcmcia-modules-5.10.0-28-686-pae-di, firewire-core-modules-5.10.0-28-686-pae-di, crc-modules-5.10.0-28-686-pae-di
+Description: sound support
+ This package contains sound modules.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: rfkill-modules-5.10.0-28-686-pae-di
+Architecture: i386
+Section: debian-installer
+Priority: optional
+Provides: rfkill-modules
+Depends: kernel-image-5.10.0-28-686-pae-di
+Description: rfkill modules
+ This package contains the rfkill module.
+Build-Profiles: <pkg.linux.udeb-unsigned-test-build !noudeb>
+Kernel-Version: 5.10.0-28-686-pae
+Package-Type: udeb
+
+Package: linux-image-i386-signed-template
+Architecture: i386
+Depends: dpkg-dev, ${misc:Depends}
+Description: Template for signed linux-image packages for i386
+ This package is used to control code signing by the Debian signing
+ service.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-686-unsigned
+Architecture: i386
+Depends: kmod, linux-base (>= 4.3~), ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [i386] | linux-initramfs-tool [i386]
+Recommends: firmware-linux-free, apparmor [i386]
+Suggests: linux-doc-5.10, debian-kernel-handbook, grub-pc [i386] | grub-efi-ia32 [i386] | extlinux [i386]
+Replaces: linux-image-5.10.0-28-686
+Breaks: xserver-xorg-input-vmmouse (<< 1:13.0.99) [i386], fwupdate (<< 12-7) [i386], wireless-regdb (<< 2019.06.03-1~) [i386], initramfs-tools (<< 0.120+deb8u2)
+Conflicts: linux-image-5.10.0-28-686
+Description: Linux 5.10 for older PCs
+ The Linux kernel 5.10 and modules for use on PCs with one or more
+ processors not supporting PAE.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-686
+Architecture: i386
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-x86
+Description: Header files for Linux 5.10.0-28-686
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-686, generally used for building out-of-tree kernel
+ modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-686, and can be used for building modules
+ that load into the kernel provided by the linux-image-5.10.0-28-686
+ package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-686-dbg
+Architecture: i386
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-686
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-686.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-686-dbg
+Architecture: i386
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-686-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux 686 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel 686 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-686-pae-unsigned
+Architecture: i386
+Depends: kmod, linux-base (>= 4.3~), ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [i386] | linux-initramfs-tool [i386]
+Recommends: firmware-linux-free, apparmor [i386]
+Suggests: linux-doc-5.10, debian-kernel-handbook, grub-pc [i386] | grub-efi-ia32 [i386] | extlinux [i386]
+Replaces: linux-image-5.10.0-28-686-pae
+Breaks: xserver-xorg-input-vmmouse (<< 1:13.0.99) [i386], fwupdate (<< 12-7) [i386], wireless-regdb (<< 2019.06.03-1~) [i386], initramfs-tools (<< 0.120+deb8u2)
+Conflicts: linux-image-5.10.0-28-686-pae
+Description: Linux 5.10 for modern PCs
+ The Linux kernel 5.10 and modules for use on PCs with one or more
+ processors supporting PAE.
+ .
+ This kernel requires PAE (Physical Address Extension). This feature is
+ supported by the Intel Pentium Pro/II/III/4/4M/D, Xeon, Core and Atom; AMD
+ Geode NX, Athlon (K7), Duron, Opteron, Sempron, Turion or Phenom;
+ Transmeta Efficeon; VIA C7; and some other processors.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-686-pae
+Architecture: i386
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-x86
+Description: Header files for Linux 5.10.0-28-686-pae
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-686-pae, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-686-pae, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-686-pae package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-686-pae-dbg
+Architecture: i386
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-686-pae
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-686-pae.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-686-pae-dbg
+Architecture: i386
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-686-pae-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux 686-pae configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel 686-pae configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-rt-686-pae-unsigned
+Architecture: i386
+Depends: kmod, linux-base (>= 4.3~), ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [i386] | linux-initramfs-tool [i386]
+Recommends: firmware-linux-free, apparmor [i386]
+Suggests: linux-doc-5.10, debian-kernel-handbook, grub-pc [i386] | grub-efi-ia32 [i386] | extlinux [i386]
+Replaces: linux-image-5.10.0-28-rt-686-pae
+Breaks: xserver-xorg-input-vmmouse (<< 1:13.0.99) [i386], fwupdate (<< 12-7) [i386], wireless-regdb (<< 2019.06.03-1~) [i386], initramfs-tools (<< 0.120+deb8u2)
+Conflicts: linux-image-5.10.0-28-rt-686-pae
+Description: Linux 5.10 for modern PCs, PREEMPT_RT
+ The Linux kernel 5.10 and modules for use on PCs with one or more
+ processors supporting PAE.
+ .
+ This kernel requires PAE (Physical Address Extension). This feature is
+ supported by the Intel Pentium Pro/II/III/4/4M/D, Xeon, Core and Atom; AMD
+ Geode NX, Athlon (K7), Duron, Opteron, Sempron, Turion or Phenom;
+ Transmeta Efficeon; VIA C7; and some other processors.
+ .
+ This kernel includes the PREEMPT_RT realtime patch set.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-rt-686-pae
+Architecture: i386
+Depends: linux-headers-5.10.0-28-common-rt (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-x86
+Description: Header files for Linux 5.10.0-28-rt-686-pae
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-rt-686-pae, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-rt-686-pae, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-rt-686-pae package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5.10.0-28-rt-686-pae-dbg
+Architecture: i386
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-rt-686-pae
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-rt-686-pae.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-rt-686-pae-dbg
+Architecture: i386
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-rt-686-pae-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux rt-686-pae configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel rt-686-pae configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, efi-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-itanium-di, nic-shared-modules-5.10.0-28-itanium-di, i2c-modules-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di, mtd-core-modules-5.10.0-28-itanium-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: serial-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: serial-modules
+Depends: kernel-image-5.10.0-28-itanium-di, pcmcia-modules-5.10.0-28-itanium-di
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-itanium-di, usb-modules-5.10.0-28-itanium-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-itanium-di, serial-modules-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-itanium-di, ata-modules-5.10.0-28-itanium-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-itanium-di, scsi-core-modules-5.10.0-28-itanium-di, ide-modules-5.10.0-28-itanium-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: firewire-core-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: firewire-core-modules
+Depends: kernel-image-5.10.0-28-itanium-di, scsi-core-modules-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-itanium-di, scsi-core-modules-5.10.0-28-itanium-di, cdrom-core-modules-5.10.0-28-itanium-di, ata-modules-5.10.0-28-itanium-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-itanium-di, nic-modules-5.10.0-28-itanium-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di, md-modules-5.10.0-28-itanium-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-itanium-di, cdrom-core-modules-5.10.0-28-itanium-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di, cdrom-core-modules-5.10.0-28-itanium-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-itanium-di, md-modules-5.10.0-28-itanium-di, scsi-core-modules-5.10.0-28-itanium-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-itanium-di, scsi-core-modules-5.10.0-28-itanium-di, usb-modules-5.10.0-28-itanium-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-itanium-di, i2c-modules-5.10.0-28-itanium-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-itanium-di, usb-modules-5.10.0-28-itanium-di, i2c-modules-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-itanium-di, event-modules-5.10.0-28-itanium-di, input-modules-5.10.0-28-itanium-di, usb-modules-5.10.0-28-itanium-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: pcmcia-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: Common PCMCIA drivers
+ This package contains common PCMCIA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-itanium-di, nic-shared-modules-5.10.0-28-itanium-di, usb-modules-5.10.0-28-itanium-di, crc-modules-5.10.0-28-itanium-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-itanium-di, scsi-core-modules-5.10.0-28-itanium-di, ata-modules-5.10.0-28-itanium-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-itanium-di, md-modules-5.10.0-28-itanium-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-itanium-di, scsi-core-modules-5.10.0-28-itanium-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: uinput-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: uinput-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: uinput support
+ This package contains the uinput module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: ide-core-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: ide-core-modules
+Depends: kernel-image-5.10.0-28-itanium-di
+Description: IDE support
+ This package contains core IDE support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: ide-modules-5.10.0-28-itanium-di
+Architecture: ia64
+Section: debian-installer
+Priority: standard
+Provides: ide-modules
+Depends: kernel-image-5.10.0-28-itanium-di, ide-core-modules-5.10.0-28-itanium-di
+Description: IDE drivers
+ This package contains IDE drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-itanium
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-itanium
+Architecture: ia64
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [ia64] | linux-initramfs-tool [ia64]
+Recommends: firmware-linux-free, apparmor [ia64]
+Suggests: linux-doc-5.10, debian-kernel-handbook, grub-efi-ia64 [ia64]
+Breaks: fwupdate (<< 12-7) [ia64], wireless-regdb (<< 2019.06.03-1~) [ia64], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for Itanium (Merced)
+ The Linux kernel 5.10 and modules for use on systems with original Itanium
+ (Merced) processors.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-itanium
+Architecture: ia64
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-itanium
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-itanium, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-itanium, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-itanium package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-itanium
+Architecture: ia64
+Provides: linux-latest-modules-5.10.0-28-itanium, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-itanium (= ${binary:Version}), ${misc:Depends}
+Description: Linux for Itanium (Merced) (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ systems with original Itanium (Merced) processors.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-itanium
+Architecture: ia64
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-itanium (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux itanium configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel itanium configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-itanium-dbg
+Architecture: ia64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-itanium
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-itanium.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-itanium-dbg
+Architecture: ia64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-itanium-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux itanium configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel itanium configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-mckinley
+Architecture: ia64
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [ia64] | linux-initramfs-tool [ia64]
+Recommends: firmware-linux-free, apparmor [ia64]
+Suggests: linux-doc-5.10, debian-kernel-handbook, grub-efi-ia64 [ia64]
+Breaks: fwupdate (<< 12-7) [ia64], wireless-regdb (<< 2019.06.03-1~) [ia64], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for Itanium 2+
+ The Linux kernel 5.10 and modules for use on systems with Itanium 2 or
+ 9300/9500/9700-series processors.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-mckinley
+Architecture: ia64
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-mckinley
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-mckinley, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-mckinley, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-mckinley package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-mckinley
+Architecture: ia64
+Provides: linux-latest-modules-5.10.0-28-mckinley, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-mckinley (= ${binary:Version}), ${misc:Depends}
+Description: Linux for Itanium 2+ (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ systems with Itanium 2 or 9300/9500/9700-series processors.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-mckinley
+Architecture: ia64
+Depends: linux-headers-5.10.0-28-mckinley (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux mckinley configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel mckinley configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-mckinley-dbg
+Architecture: ia64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-mckinley
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-mckinley.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-mckinley-dbg
+Architecture: ia64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-mckinley-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux mckinley configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel mckinley configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: kernel-image
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-m68k-di, nic-shared-modules-5.10.0-28-m68k-di, crc-modules-5.10.0-28-m68k-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-m68k-di, crc-modules-5.10.0-28-m68k-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-m68k-di, ata-modules-5.10.0-28-m68k-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-m68k-di, scsi-core-modules-5.10.0-28-m68k-di, ide-modules-5.10.0-28-m68k-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-m68k-di, scsi-core-modules-5.10.0-28-m68k-di, cdrom-core-modules-5.10.0-28-m68k-di, ata-modules-5.10.0-28-m68k-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-m68k-di, crc-modules-5.10.0-28-m68k-di, md-modules-5.10.0-28-m68k-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-m68k-di, crc-modules-5.10.0-28-m68k-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-m68k-di, cdrom-core-modules-5.10.0-28-m68k-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: hfs-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: hfs-modules
+Depends: kernel-image-5.10.0-28-m68k-di, cdrom-core-modules-5.10.0-28-m68k-di
+Description: HFS filesystem support
+ This package contains the HFS and HFS+ filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: affs-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: affs-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: Amiga filesystem support
+ This package contains the Amiga filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-m68k-di, crc-modules-5.10.0-28-m68k-di, cdrom-core-modules-5.10.0-28-m68k-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-m68k-di, crc-modules-5.10.0-28-m68k-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-m68k-di, scsi-core-modules-5.10.0-28-m68k-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: ide-core-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: ide-core-modules
+Depends: kernel-image-5.10.0-28-m68k-di
+Description: IDE support
+ This package contains core IDE support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: ide-modules-5.10.0-28-m68k-di
+Architecture: m68k
+Section: debian-installer
+Priority: standard
+Provides: ide-modules
+Depends: kernel-image-5.10.0-28-m68k-di, ide-core-modules-5.10.0-28-m68k-di
+Description: IDE drivers
+ This package contains IDE drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-m68k
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-m68k
+Architecture: m68k
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [m68k] | linux-initramfs-tool [m68k]
+Recommends: firmware-linux-free, apparmor [m68k]
+Suggests: linux-doc-5.10, debian-kernel-handbook, vmelilo [m68k], fdutils [m68k]
+Breaks: fwupdate (<< 12-7) [m68k], wireless-regdb (<< 2019.06.03-1~) [m68k], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for Motorola MC68020+ family
+ The Linux kernel 5.10 and modules for use on Motorola MC68020+ family.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-m68k
+Architecture: m68k
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-m68k
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-m68k, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-m68k, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-m68k package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-m68k
+Architecture: m68k
+Provides: linux-latest-modules-5.10.0-28-m68k, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-m68k (= ${binary:Version}), ${misc:Depends}
+Description: Linux for Motorola MC68020+ family (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ Motorola MC68020+ family.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-m68k
+Architecture: m68k
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-m68k (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux m68k configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel m68k configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-m68k-dbg
+Architecture: m68k
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-m68k
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-m68k.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-m68k-dbg
+Architecture: m68k
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-m68k-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux m68k configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel m68k configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, nic-shared-modules-5.10.0-28-4kc-malta-di, i2c-modules-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di, mtd-core-modules-5.10.0-28-4kc-malta-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, nic-shared-modules-5.10.0-28-4kc-malta-di, usb-modules-5.10.0-28-4kc-malta-di, mmc-core-modules-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di, crypto-modules-5.10.0-28-4kc-malta-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, usb-modules-5.10.0-28-4kc-malta-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, ata-modules-5.10.0-28-4kc-malta-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, scsi-core-modules-5.10.0-28-4kc-malta-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, scsi-core-modules-5.10.0-28-4kc-malta-di, cdrom-core-modules-5.10.0-28-4kc-malta-di, ata-modules-5.10.0-28-4kc-malta-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-4kc-malta-di, nic-modules-5.10.0-28-4kc-malta-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di, md-modules-5.10.0-28-4kc-malta-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, cdrom-core-modules-5.10.0-28-4kc-malta-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: affs-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: affs-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: Amiga filesystem support
+ This package contains the Amiga filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: minix-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: minix-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: Minix filesystem support
+ This package contains the Minix filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di, cdrom-core-modules-5.10.0-28-4kc-malta-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, md-modules-5.10.0-28-4kc-malta-di, scsi-core-modules-5.10.0-28-4kc-malta-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, scsi-core-modules-5.10.0-28-4kc-malta-di, usb-modules-5.10.0-28-4kc-malta-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, i2c-modules-5.10.0-28-4kc-malta-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, usb-modules-5.10.0-28-4kc-malta-di, i2c-modules-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, event-modules-5.10.0-28-4kc-malta-di, input-modules-5.10.0-28-4kc-malta-di, usb-modules-5.10.0-28-4kc-malta-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, nic-shared-modules-5.10.0-28-4kc-malta-di, nic-wireless-modules-5.10.0-28-4kc-malta-di, usb-modules-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, scsi-core-modules-5.10.0-28-4kc-malta-di, ata-modules-5.10.0-28-4kc-malta-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, md-modules-5.10.0-28-4kc-malta-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, scsi-core-modules-5.10.0-28-4kc-malta-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: mmc-core-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: mmc-core-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: MMC/SD/SDIO core modules
+ This package contains core modules for MMC/SD/SDIO support.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: mmc-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: mmc-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, mmc-core-modules-5.10.0-28-4kc-malta-di, usb-modules-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di
+Description: MMC/SD card modules
+ This package contains modules needed to support MMC (multimedia) and SD
+ cards.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: sound-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: sound-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di, i2c-modules-5.10.0-28-4kc-malta-di, usb-modules-5.10.0-28-4kc-malta-di, crc-modules-5.10.0-28-4kc-malta-di
+Description: sound support
+ This package contains sound modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-4kc-malta-di
+Architecture: mips mipsel
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-4kc-malta-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-4kc-malta
+Package-Type: udeb
+
+Package: kernel-image-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-octeon-di, nic-shared-modules-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-octeon-di, nic-shared-modules-5.10.0-28-octeon-di, usb-modules-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di, crypto-modules-5.10.0-28-octeon-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-octeon-di, usb-modules-5.10.0-28-octeon-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-octeon-di, scsi-core-modules-5.10.0-28-octeon-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-octeon-di, scsi-core-modules-5.10.0-28-octeon-di, cdrom-core-modules-5.10.0-28-octeon-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-octeon-di, nic-modules-5.10.0-28-octeon-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di, md-modules-5.10.0-28-octeon-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-octeon-di, cdrom-core-modules-5.10.0-28-octeon-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: affs-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: affs-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: Amiga filesystem support
+ This package contains the Amiga filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: minix-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: minix-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: Minix filesystem support
+ This package contains the Minix filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di, cdrom-core-modules-5.10.0-28-octeon-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-octeon-di, md-modules-5.10.0-28-octeon-di, scsi-core-modules-5.10.0-28-octeon-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-octeon-di, scsi-core-modules-5.10.0-28-octeon-di, usb-modules-5.10.0-28-octeon-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-octeon-di, usb-modules-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-octeon-di, nic-shared-modules-5.10.0-28-octeon-di, nic-wireless-modules-5.10.0-28-octeon-di, usb-modules-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-octeon-di, scsi-core-modules-5.10.0-28-octeon-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-octeon-di, md-modules-5.10.0-28-octeon-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: rtc-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: rtc-modules
+Depends: kernel-image-5.10.0-28-octeon-di
+Description: RTC modules
+ This package contains RTC modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: sound-modules-5.10.0-28-octeon-di
+Architecture: mips mips64 mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: sound-modules
+Depends: kernel-image-5.10.0-28-octeon-di, usb-modules-5.10.0-28-octeon-di, crc-modules-5.10.0-28-octeon-di
+Description: sound support
+ This package contains sound modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-octeon
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-4kc-malta
+Architecture: mips mipsel
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [mips mipsel] | linux-initramfs-tool [mips mipsel]
+Recommends: firmware-linux-free, apparmor [mips mipsel]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [mips], wireless-regdb (<< 2019.06.03-1~) [mips], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for MIPS Malta
+ The Linux kernel 5.10 and modules for use on MIPS Malta boards.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-4kc-malta
+Architecture: mips mipsel
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-4kc-malta
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-4kc-malta, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-4kc-malta, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-4kc-malta package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-4kc-malta
+Architecture: mips mipsel
+Provides: linux-latest-modules-5.10.0-28-4kc-malta, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-4kc-malta (= ${binary:Version}), ${misc:Depends}
+Description: Linux for MIPS Malta (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ MIPS Malta boards.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-4kc-malta
+Architecture: mips mipsel
+Depends: linux-headers-5.10.0-28-4kc-malta (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux 4kc-malta configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel 4kc-malta configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-4kc-malta-dbg
+Architecture: mips mipsel
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-4kc-malta
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-4kc-malta.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-4kc-malta-dbg
+Architecture: mips mipsel
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-4kc-malta-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux 4kc-malta configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel 4kc-malta configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-5kc-malta
+Architecture: mips mips64 mips64el mipsel
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [mips mips64 mips64el mipsel] | linux-initramfs-tool [mips mips64 mips64el mipsel]
+Recommends: firmware-linux-free, apparmor [mips mips64 mips64el mipsel]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [mips], wireless-regdb (<< 2019.06.03-1~) [mips], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for MIPS Malta (64-bit)
+ The Linux kernel 5.10 and modules for use on MIPS Malta boards (64-bit).
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-5kc-malta
+Architecture: mips mips64 mips64el mipsel
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-5kc-malta
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-5kc-malta, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-5kc-malta, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-5kc-malta package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5kc-malta
+Architecture: mips mips64 mips64el mipsel
+Provides: linux-latest-modules-5.10.0-28-5kc-malta, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-5kc-malta (= ${binary:Version}), ${misc:Depends}
+Description: Linux for MIPS Malta (64-bit) (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ MIPS Malta boards (64-bit).
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-5kc-malta
+Architecture: mips mips64 mips64el mipsel
+Depends: linux-headers-5.10.0-28-5kc-malta (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux 5kc-malta configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel 5kc-malta configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-5kc-malta-dbg
+Architecture: mips mips64 mips64el mipsel
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-5kc-malta
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-5kc-malta.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-5kc-malta-dbg
+Architecture: mips mips64 mips64el mipsel
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-5kc-malta-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux 5kc-malta configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel 5kc-malta configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-octeon
+Architecture: mips mips64 mips64el mipsel
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [mips mips64 mips64el mipsel] | linux-initramfs-tool [mips mips64 mips64el mipsel]
+Recommends: firmware-linux-free, apparmor [mips mips64 mips64el mipsel]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [mips], wireless-regdb (<< 2019.06.03-1~) [mips], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for Octeon
+ The Linux kernel 5.10 and modules for use on Cavium Networks Octeon.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-octeon
+Architecture: mips mips64 mips64el mipsel
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-octeon
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-octeon, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-octeon, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-octeon package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-octeon
+Architecture: mips mips64 mips64el mipsel
+Provides: linux-latest-modules-5.10.0-28-octeon, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-octeon (= ${binary:Version}), ${misc:Depends}
+Description: Linux for Octeon (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ Cavium Networks Octeon.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-octeon
+Architecture: mips mips64 mips64el mipsel
+Depends: linux-headers-5.10.0-28-octeon (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux octeon configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel octeon configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-octeon-dbg
+Architecture: mips mips64 mips64el mipsel
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-octeon
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-octeon.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-octeon-dbg
+Architecture: mips mips64 mips64el mipsel
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-octeon-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux octeon configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel octeon configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, nic-shared-modules-5.10.0-28-5kc-malta-di, i2c-modules-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di, mtd-core-modules-5.10.0-28-5kc-malta-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, nic-shared-modules-5.10.0-28-5kc-malta-di, usb-modules-5.10.0-28-5kc-malta-di, mmc-core-modules-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di, crypto-modules-5.10.0-28-5kc-malta-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, usb-modules-5.10.0-28-5kc-malta-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, ata-modules-5.10.0-28-5kc-malta-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, scsi-core-modules-5.10.0-28-5kc-malta-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, scsi-core-modules-5.10.0-28-5kc-malta-di, cdrom-core-modules-5.10.0-28-5kc-malta-di, ata-modules-5.10.0-28-5kc-malta-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-5kc-malta-di, nic-modules-5.10.0-28-5kc-malta-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di, md-modules-5.10.0-28-5kc-malta-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, cdrom-core-modules-5.10.0-28-5kc-malta-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: affs-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: affs-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: Amiga filesystem support
+ This package contains the Amiga filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: minix-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: minix-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: Minix filesystem support
+ This package contains the Minix filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di, cdrom-core-modules-5.10.0-28-5kc-malta-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, md-modules-5.10.0-28-5kc-malta-di, scsi-core-modules-5.10.0-28-5kc-malta-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, scsi-core-modules-5.10.0-28-5kc-malta-di, usb-modules-5.10.0-28-5kc-malta-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, i2c-modules-5.10.0-28-5kc-malta-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, usb-modules-5.10.0-28-5kc-malta-di, i2c-modules-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, event-modules-5.10.0-28-5kc-malta-di, input-modules-5.10.0-28-5kc-malta-di, usb-modules-5.10.0-28-5kc-malta-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, nic-shared-modules-5.10.0-28-5kc-malta-di, nic-wireless-modules-5.10.0-28-5kc-malta-di, usb-modules-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, scsi-core-modules-5.10.0-28-5kc-malta-di, ata-modules-5.10.0-28-5kc-malta-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, md-modules-5.10.0-28-5kc-malta-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, scsi-core-modules-5.10.0-28-5kc-malta-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: mmc-core-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: mmc-core-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: MMC/SD/SDIO core modules
+ This package contains core modules for MMC/SD/SDIO support.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: mmc-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: mmc-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, mmc-core-modules-5.10.0-28-5kc-malta-di, usb-modules-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di
+Description: MMC/SD card modules
+ This package contains modules needed to support MMC (multimedia) and SD
+ cards.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: sound-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: sound-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di, i2c-modules-5.10.0-28-5kc-malta-di, usb-modules-5.10.0-28-5kc-malta-di, crc-modules-5.10.0-28-5kc-malta-di
+Description: sound support
+ This package contains sound modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-5kc-malta-di
+Architecture: mips64 mips64el
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-5kc-malta-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-5kc-malta
+Package-Type: udeb
+
+Package: kernel-image-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, i2c-modules, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, nic-shared-modules-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di, mtd-core-modules-5.10.0-28-loongson-3-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, nic-shared-modules-5.10.0-28-loongson-3-di, usb-modules-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di, crypto-modules-5.10.0-28-loongson-3-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, usb-modules-5.10.0-28-loongson-3-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, ata-modules-5.10.0-28-loongson-3-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, scsi-core-modules-5.10.0-28-loongson-3-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: firewire-core-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: firewire-core-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, scsi-core-modules-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, scsi-core-modules-5.10.0-28-loongson-3-di, cdrom-core-modules-5.10.0-28-loongson-3-di, ata-modules-5.10.0-28-loongson-3-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-loongson-3-di, nic-modules-5.10.0-28-loongson-3-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di, md-modules-5.10.0-28-loongson-3-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, cdrom-core-modules-5.10.0-28-loongson-3-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: affs-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: affs-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: Amiga filesystem support
+ This package contains the Amiga filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: minix-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: minix-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: Minix filesystem support
+ This package contains the Minix filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: nfs-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: nfs-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: NFS filesystem support
+ This package contains the NFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di, cdrom-core-modules-5.10.0-28-loongson-3-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, md-modules-5.10.0-28-loongson-3-di, scsi-core-modules-5.10.0-28-loongson-3-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, scsi-core-modules-5.10.0-28-loongson-3-di, usb-modules-5.10.0-28-loongson-3-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, usb-modules-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, nic-shared-modules-5.10.0-28-loongson-3-di, nic-wireless-modules-5.10.0-28-loongson-3-di, usb-modules-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, scsi-core-modules-5.10.0-28-loongson-3-di, ata-modules-5.10.0-28-loongson-3-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, md-modules-5.10.0-28-loongson-3-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, scsi-core-modules-5.10.0-28-loongson-3-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: speakup-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: speakup-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: speakup modules
+ This package contains speakup modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: sound-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: sound-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di, usb-modules-5.10.0-28-loongson-3-di, firewire-core-modules-5.10.0-28-loongson-3-di, crc-modules-5.10.0-28-loongson-3-di
+Description: sound support
+ This package contains sound modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-loongson-3-di
+Architecture: mips64el mipsel
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-loongson-3-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-loongson-3
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-loongson-3
+Architecture: mips64el mipsel
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [mips64el mipsel] | linux-initramfs-tool [mips64el mipsel]
+Recommends: firmware-linux-free, apparmor [mips64el mipsel]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [mips64el], wireless-regdb (<< 2019.06.03-1~) [mips64el], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for Loongson 3A/3B
+ The Linux kernel 5.10 and modules for use on Loongson 3A or 3B based
+ systems (e.g. from Loongson or Lemote).
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-loongson-3
+Architecture: mips64el mipsel
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-loongson-3
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-loongson-3, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-loongson-3, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-loongson-3 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-loongson-3
+Architecture: mips64el mipsel
+Provides: linux-latest-modules-5.10.0-28-loongson-3, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-loongson-3 (= ${binary:Version}), ${misc:Depends}
+Description: Linux for Loongson 3A/3B (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ Loongson 3A or 3B based systems (e.g. from Loongson or Lemote).
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-loongson-3
+Architecture: mips64el mipsel
+Depends: linux-headers-5.10.0-28-loongson-3 (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux loongson-3 configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel loongson-3 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-loongson-3-dbg
+Architecture: mips64el mipsel
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-loongson-3
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-loongson-3.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-loongson-3-dbg
+Architecture: mips64el mipsel
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-loongson-3-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux loongson-3 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel loongson-3 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di, crc-modules-5.10.0-28-mips64r6-di, md-modules-5.10.0-28-mips64r6-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di, crc-modules-5.10.0-28-mips64r6-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di, crc-modules-5.10.0-28-mips64r6-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di, crc-modules-5.10.0-28-mips64r6-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di, crc-modules-5.10.0-28-mips64r6-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di, crc-modules-5.10.0-28-mips64r6-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di, md-modules-5.10.0-28-mips64r6-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di, md-modules-5.10.0-28-mips64r6-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-mips64r6-di
+Architecture: mips64r6
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-mips64r6-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-mips64r6
+Architecture: mips64r6 mipsr6
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [mips64r6 mipsr6] | linux-initramfs-tool [mips64r6 mipsr6]
+Recommends: firmware-linux-free, apparmor [mips64r6 mipsr6]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [mips64r6], wireless-regdb (<< 2019.06.03-1~) [mips64r6], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for MIPS R6 (64 bit, big endian)
+ The Linux kernel 5.10 and modules for use on MIPS R6 (64 bit, big endian).
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-mips64r6
+Architecture: mips64r6 mipsr6
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-mips64r6
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-mips64r6, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-mips64r6, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-mips64r6 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-mips64r6
+Architecture: mips64r6 mipsr6
+Provides: linux-latest-modules-5.10.0-28-mips64r6, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-mips64r6 (= ${binary:Version}), ${misc:Depends}
+Description: Linux for MIPS R6 (64 bit, big endian) (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ MIPS R6 (64 bit, big endian).
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-mips64r6
+Architecture: mips64r6 mipsr6
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-mips64r6 (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux mips64r6 configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel mips64r6 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-mips64r6-dbg
+Architecture: mips64r6 mipsr6
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-mips64r6
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-mips64r6.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-mips64r6-dbg
+Architecture: mips64r6 mipsr6
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-mips64r6-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux mips64r6 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel mips64r6 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di, crc-modules-5.10.0-28-mips64r6el-di, md-modules-5.10.0-28-mips64r6el-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di, crc-modules-5.10.0-28-mips64r6el-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di, crc-modules-5.10.0-28-mips64r6el-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di, crc-modules-5.10.0-28-mips64r6el-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di, crc-modules-5.10.0-28-mips64r6el-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di, crc-modules-5.10.0-28-mips64r6el-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di, md-modules-5.10.0-28-mips64r6el-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di, md-modules-5.10.0-28-mips64r6el-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-mips64r6el-di
+Architecture: mips64r6el
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-mips64r6el-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips64r6el
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-mips64r6el
+Architecture: mips64r6el mipsr6el
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [mips64r6el mipsr6el] | linux-initramfs-tool [mips64r6el mipsr6el]
+Recommends: firmware-linux-free, apparmor [mips64r6el mipsr6el]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [mips64r6el], wireless-regdb (<< 2019.06.03-1~) [mips64r6el], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for MIPS R6 (64 bit, little endian)
+ The Linux kernel 5.10 and modules for use on MIPS R6 (64 bit, little
+ endian).
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-mips64r6el
+Architecture: mips64r6el mipsr6el
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-mips64r6el
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-mips64r6el, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-mips64r6el, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-mips64r6el package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-mips64r6el
+Architecture: mips64r6el mipsr6el
+Provides: linux-latest-modules-5.10.0-28-mips64r6el, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-mips64r6el (= ${binary:Version}), ${misc:Depends}
+Description: Linux for MIPS R6 (64 bit, little endian) (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ MIPS R6 (64 bit, little endian).
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-mips64r6el
+Architecture: mips64r6el mipsr6el
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-mips64r6el (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux mips64r6el configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel mips64r6el configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-mips64r6el-dbg
+Architecture: mips64r6el mipsr6el
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-mips64r6el
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-mips64r6el.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-mips64r6el-dbg
+Architecture: mips64r6el mipsr6el
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-mips64r6el-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux mips64r6el configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel mips64r6el configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di, crc-modules-5.10.0-28-mips32r6-di, md-modules-5.10.0-28-mips32r6-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di, crc-modules-5.10.0-28-mips32r6-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di, crc-modules-5.10.0-28-mips32r6-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di, crc-modules-5.10.0-28-mips32r6-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di, crc-modules-5.10.0-28-mips32r6-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di, crc-modules-5.10.0-28-mips32r6-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di, md-modules-5.10.0-28-mips32r6-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di, md-modules-5.10.0-28-mips32r6-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-mips32r6-di
+Architecture: mipsr6
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-mips32r6-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-mips32r6
+Architecture: mipsr6
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [mipsr6] | linux-initramfs-tool [mipsr6]
+Recommends: firmware-linux-free, apparmor [mipsr6]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [mipsr6], wireless-regdb (<< 2019.06.03-1~) [mipsr6], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for MIPS R6 (32 bit, big endian)
+ The Linux kernel 5.10 and modules for use on MIPS R6 (32 bit, big endian).
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-mips32r6
+Architecture: mipsr6
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-mips32r6
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-mips32r6, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-mips32r6, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-mips32r6 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-mips32r6
+Architecture: mipsr6
+Provides: linux-latest-modules-5.10.0-28-mips32r6, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-mips32r6 (= ${binary:Version}), ${misc:Depends}
+Description: Linux for MIPS R6 (32 bit, big endian) (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ MIPS R6 (32 bit, big endian).
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-mips32r6
+Architecture: mipsr6
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-mips32r6 (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux mips32r6 configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel mips32r6 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-mips32r6-dbg
+Architecture: mipsr6
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-mips32r6
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-mips32r6.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-mips32r6-dbg
+Architecture: mipsr6
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-mips32r6-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux mips32r6 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel mips32r6 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, rtc-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di, crc-modules-5.10.0-28-mips32r6el-di, md-modules-5.10.0-28-mips32r6el-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di, crc-modules-5.10.0-28-mips32r6el-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di, crc-modules-5.10.0-28-mips32r6el-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di, crc-modules-5.10.0-28-mips32r6el-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di, crc-modules-5.10.0-28-mips32r6el-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di, crc-modules-5.10.0-28-mips32r6el-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di, md-modules-5.10.0-28-mips32r6el-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di, md-modules-5.10.0-28-mips32r6el-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-mips32r6el-di
+Architecture: mipsr6el
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-mips32r6el-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-mips32r6el
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-mips32r6el
+Architecture: mipsr6el
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [mipsr6el] | linux-initramfs-tool [mipsr6el]
+Recommends: firmware-linux-free, apparmor [mipsr6el]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [mipsr6el], wireless-regdb (<< 2019.06.03-1~) [mipsr6el], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for MIPS R6 (32 bit, little endian)
+ The Linux kernel 5.10 and modules for use on MIPS R6 (32 bit, little
+ endian).
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-mips32r6el
+Architecture: mipsr6el
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-mips32r6el
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-mips32r6el, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-mips32r6el, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-mips32r6el package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-mips32r6el
+Architecture: mipsr6el
+Provides: linux-latest-modules-5.10.0-28-mips32r6el, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-mips32r6el (= ${binary:Version}), ${misc:Depends}
+Description: Linux for MIPS R6 (32 bit, little endian) (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ MIPS R6 (32 bit, little endian).
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-mips32r6el
+Architecture: mipsr6el
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-mips32r6el (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux mips32r6el configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel mips32r6el configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-mips32r6el-dbg
+Architecture: mipsr6el
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-mips32r6el
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-mips32r6el.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-mips32r6el-dbg
+Architecture: mipsr6el
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-mips32r6el-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux mips32r6el configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel mips32r6el configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, i2c-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, nic-shared-modules-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, nic-shared-modules-5.10.0-28-powerpc-di, usb-modules-5.10.0-28-powerpc-di, mmc-core-modules-5.10.0-28-powerpc-di, pcmcia-modules-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di, crypto-modules-5.10.0-28-powerpc-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: serial-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: serial-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, pcmcia-modules-5.10.0-28-powerpc-di
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, usb-modules-5.10.0-28-powerpc-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, serial-modules-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, ata-modules-5.10.0-28-powerpc-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, scsi-core-modules-5.10.0-28-powerpc-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: firewire-core-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: firewire-core-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, scsi-core-modules-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, scsi-core-modules-5.10.0-28-powerpc-di, cdrom-core-modules-5.10.0-28-powerpc-di, ata-modules-5.10.0-28-powerpc-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-powerpc-di, nic-modules-5.10.0-28-powerpc-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di, md-modules-5.10.0-28-powerpc-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, cdrom-core-modules-5.10.0-28-powerpc-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: hfs-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: hfs-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, cdrom-core-modules-5.10.0-28-powerpc-di
+Description: HFS filesystem support
+ This package contains the HFS and HFS+ filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: affs-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: affs-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: Amiga filesystem support
+ This package contains the Amiga filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di, cdrom-core-modules-5.10.0-28-powerpc-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, md-modules-5.10.0-28-powerpc-di, scsi-core-modules-5.10.0-28-powerpc-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, scsi-core-modules-5.10.0-28-powerpc-di, usb-modules-5.10.0-28-powerpc-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: pcmcia-storage-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-storage-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, cdrom-core-modules-5.10.0-28-powerpc-di, pcmcia-modules-5.10.0-28-powerpc-di, ata-modules-5.10.0-28-powerpc-di
+Description: PCMCIA storage drivers
+ This package contains PCMCIA storage drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, usb-modules-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, event-modules-5.10.0-28-powerpc-di, input-modules-5.10.0-28-powerpc-di, usb-modules-5.10.0-28-powerpc-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: nic-pcmcia-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: nic-pcmcia-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, nic-shared-modules-5.10.0-28-powerpc-di, nic-wireless-modules-5.10.0-28-powerpc-di, pcmcia-modules-5.10.0-28-powerpc-di, mmc-core-modules-5.10.0-28-powerpc-di
+Description: Common PCMCIA NIC drivers
+ This package contains common PCMCIA NIC drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: pcmcia-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: Common PCMCIA drivers
+ This package contains common PCMCIA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, nic-shared-modules-5.10.0-28-powerpc-di, nic-wireless-modules-5.10.0-28-powerpc-di, usb-modules-5.10.0-28-powerpc-di, crc-modules-5.10.0-28-powerpc-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, scsi-core-modules-5.10.0-28-powerpc-di, ata-modules-5.10.0-28-powerpc-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, md-modules-5.10.0-28-powerpc-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-powerpc-di, scsi-core-modules-5.10.0-28-powerpc-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: mmc-core-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: mmc-core-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: MMC/SD/SDIO core modules
+ This package contains core modules for MMC/SD/SDIO support.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: uinput-modules-5.10.0-28-powerpc-di
+Architecture: powerpc
+Section: debian-installer
+Priority: optional
+Provides: uinput-modules
+Depends: kernel-image-5.10.0-28-powerpc-di
+Description: uinput support
+ This package contains the uinput module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc
+Package-Type: udeb
+
+Package: kernel-image-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: kernel-image
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, nic-shared-modules-5.10.0-28-powerpc64-di, i2c-modules-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di, mtd-core-modules-5.10.0-28-powerpc64-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, nic-shared-modules-5.10.0-28-powerpc64-di, usb-modules-5.10.0-28-powerpc64-di, mmc-core-modules-5.10.0-28-powerpc64-di, pcmcia-modules-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di, crypto-modules-5.10.0-28-powerpc64-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: serial-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: serial-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, pcmcia-modules-5.10.0-28-powerpc64-di
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, usb-modules-5.10.0-28-powerpc64-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, serial-modules-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, ata-modules-5.10.0-28-powerpc64-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, scsi-core-modules-5.10.0-28-powerpc64-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: firewire-core-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: firewire-core-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, scsi-core-modules-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, scsi-core-modules-5.10.0-28-powerpc64-di, cdrom-core-modules-5.10.0-28-powerpc64-di, ata-modules-5.10.0-28-powerpc64-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-powerpc64-di, nic-modules-5.10.0-28-powerpc64-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di, md-modules-5.10.0-28-powerpc64-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, cdrom-core-modules-5.10.0-28-powerpc64-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: hfs-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: hfs-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, cdrom-core-modules-5.10.0-28-powerpc64-di
+Description: HFS filesystem support
+ This package contains the HFS and HFS+ filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: affs-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: affs-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: Amiga filesystem support
+ This package contains the Amiga filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di, cdrom-core-modules-5.10.0-28-powerpc64-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, md-modules-5.10.0-28-powerpc64-di, scsi-core-modules-5.10.0-28-powerpc64-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, scsi-core-modules-5.10.0-28-powerpc64-di, usb-modules-5.10.0-28-powerpc64-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: pcmcia-storage-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-storage-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, cdrom-core-modules-5.10.0-28-powerpc64-di, pcmcia-modules-5.10.0-28-powerpc64-di, ata-modules-5.10.0-28-powerpc64-di
+Description: PCMCIA storage drivers
+ This package contains PCMCIA storage drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, i2c-modules-5.10.0-28-powerpc64-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, usb-modules-5.10.0-28-powerpc64-di, i2c-modules-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, event-modules-5.10.0-28-powerpc64-di, input-modules-5.10.0-28-powerpc64-di, usb-modules-5.10.0-28-powerpc64-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: nic-pcmcia-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: nic-pcmcia-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, nic-shared-modules-5.10.0-28-powerpc64-di, nic-wireless-modules-5.10.0-28-powerpc64-di, pcmcia-modules-5.10.0-28-powerpc64-di, mmc-core-modules-5.10.0-28-powerpc64-di
+Description: Common PCMCIA NIC drivers
+ This package contains common PCMCIA NIC drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: pcmcia-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: pcmcia-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: Common PCMCIA drivers
+ This package contains common PCMCIA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, nic-shared-modules-5.10.0-28-powerpc64-di, nic-wireless-modules-5.10.0-28-powerpc64-di, usb-modules-5.10.0-28-powerpc64-di, crc-modules-5.10.0-28-powerpc64-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, scsi-core-modules-5.10.0-28-powerpc64-di, ata-modules-5.10.0-28-powerpc64-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, md-modules-5.10.0-28-powerpc64-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di, scsi-core-modules-5.10.0-28-powerpc64-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: mmc-core-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: mmc-core-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: MMC/SD/SDIO core modules
+ This package contains core modules for MMC/SD/SDIO support.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: uinput-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: uinput-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: uinput support
+ This package contains the uinput module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: hypervisor-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: hypervisor-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: IBM 64bit hypervisor console modules
+ Contains drivers for the hypervisor console, used as console for linux
+ running in logical partitions of IBM hardware supporting it.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: fancontrol-modules-5.10.0-28-powerpc64-di
+Architecture: powerpc ppc64
+Section: debian-installer
+Priority: standard
+Provides: fancontrol-modules
+Depends: kernel-image-5.10.0-28-powerpc64-di
+Description: Apple powermac fancontrol modules
+ Contains drivers for macintosh i2c bus as well as for the monitoring
+ devices connected to it. This allows to control the fans during
+ installation.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-powerpc
+Architecture: powerpc
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [powerpc] | linux-initramfs-tool [powerpc]
+Recommends: firmware-linux-free, apparmor [powerpc]
+Suggests: linux-doc-5.10, debian-kernel-handbook, mkvmlinuz [powerpc], grub-ieee1275 [powerpc]
+Breaks: fwupdate (<< 12-7) [powerpc], wireless-regdb (<< 2019.06.03-1~) [powerpc], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for uniprocessor 32-bit PowerPC
+ The Linux kernel 5.10 and modules for use on uniprocessor 32-bit PowerPC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-powerpc
+Architecture: powerpc
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-powerpc
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-powerpc, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-powerpc, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-powerpc package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-powerpc
+Architecture: powerpc
+Provides: linux-latest-modules-5.10.0-28-powerpc, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-powerpc (= ${binary:Version}), ${misc:Depends}
+Description: Linux for uniprocessor 32-bit PowerPC (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ uniprocessor 32-bit PowerPC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-powerpc
+Architecture: powerpc
+Depends: linux-headers-5.10.0-28-powerpc (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux powerpc configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel powerpc configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-powerpc-dbg
+Architecture: powerpc
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-powerpc
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-powerpc.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-powerpc-dbg
+Architecture: powerpc
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-powerpc-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux powerpc configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel powerpc configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-powerpc-smp
+Architecture: powerpc
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [powerpc] | linux-initramfs-tool [powerpc]
+Recommends: firmware-linux-free, apparmor [powerpc]
+Suggests: linux-doc-5.10, debian-kernel-handbook, mkvmlinuz [powerpc], grub-ieee1275 [powerpc]
+Breaks: fwupdate (<< 12-7) [powerpc], wireless-regdb (<< 2019.06.03-1~) [powerpc], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for multiprocessor 32-bit PowerPC
+ The Linux kernel 5.10 and modules for use on multiprocessor 32-bit
+ PowerPC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-powerpc-smp
+Architecture: powerpc
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-powerpc-smp
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-powerpc-smp, generally used for building
+ out-of-tree kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-powerpc-smp, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-powerpc-smp package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-powerpc-smp
+Architecture: powerpc
+Provides: linux-latest-modules-5.10.0-28-powerpc-smp, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-powerpc-smp (= ${binary:Version}), ${misc:Depends}
+Description: Linux for multiprocessor 32-bit PowerPC (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ multiprocessor 32-bit PowerPC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-powerpc-smp
+Architecture: powerpc
+Depends: linux-headers-5.10.0-28-powerpc-smp (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux powerpc-smp configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel powerpc-smp configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-powerpc-smp-dbg
+Architecture: powerpc
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-powerpc-smp
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-powerpc-smp.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-powerpc-smp-dbg
+Architecture: powerpc
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-powerpc-smp-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux powerpc-smp configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel powerpc-smp configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-powerpc64
+Architecture: powerpc ppc64
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [powerpc ppc64] | linux-initramfs-tool [powerpc ppc64]
+Recommends: firmware-linux-free, apparmor [powerpc ppc64]
+Suggests: linux-doc-5.10, debian-kernel-handbook, mkvmlinuz [powerpc ppc64], grub-ieee1275 [powerpc ppc64]
+Breaks: fwupdate (<< 12-7) [powerpc], wireless-regdb (<< 2019.06.03-1~) [powerpc], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for 64-bit PowerPC
+ The Linux kernel 5.10 and modules for use on 64-bit PowerPC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-powerpc64
+Architecture: powerpc ppc64
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-powerpc64
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-powerpc64, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-powerpc64, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-powerpc64 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-powerpc64
+Architecture: powerpc ppc64
+Provides: linux-latest-modules-5.10.0-28-powerpc64, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-powerpc64 (= ${binary:Version}), ${misc:Depends}
+Description: Linux for 64-bit PowerPC (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ 64-bit PowerPC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-powerpc64
+Architecture: powerpc ppc64
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-powerpc64 (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux powerpc64 configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel powerpc64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-powerpc64-dbg
+Architecture: powerpc ppc64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-powerpc64
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-powerpc64.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-powerpc64-dbg
+Architecture: powerpc ppc64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-powerpc64-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux powerpc64 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel powerpc64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: kernel-image
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, nic-shared-modules-5.10.0-28-powerpc64le-di, i2c-modules-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di, mtd-core-modules-5.10.0-28-powerpc64le-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, nic-shared-modules-5.10.0-28-powerpc64le-di, usb-modules-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di, crypto-modules-5.10.0-28-powerpc64le-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: serial-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: serial-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, usb-modules-5.10.0-28-powerpc64le-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, serial-modules-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, scsi-core-modules-5.10.0-28-powerpc64le-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: firewire-core-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: firewire-core-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, scsi-core-modules-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, scsi-core-modules-5.10.0-28-powerpc64le-di, cdrom-core-modules-5.10.0-28-powerpc64le-di, ata-modules-5.10.0-28-powerpc64le-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-powerpc64le-di, nic-modules-5.10.0-28-powerpc64le-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di, md-modules-5.10.0-28-powerpc64le-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, cdrom-core-modules-5.10.0-28-powerpc64le-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di, cdrom-core-modules-5.10.0-28-powerpc64le-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, md-modules-5.10.0-28-powerpc64le-di, scsi-core-modules-5.10.0-28-powerpc64le-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, scsi-core-modules-5.10.0-28-powerpc64le-di, usb-modules-5.10.0-28-powerpc64le-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, i2c-modules-5.10.0-28-powerpc64le-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, usb-modules-5.10.0-28-powerpc64le-di, i2c-modules-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: mouse-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: mouse-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, event-modules-5.10.0-28-powerpc64le-di, input-modules-5.10.0-28-powerpc64le-di, usb-modules-5.10.0-28-powerpc64le-di
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, nic-shared-modules-5.10.0-28-powerpc64le-di, nic-wireless-modules-5.10.0-28-powerpc64le-di, usb-modules-5.10.0-28-powerpc64le-di, crc-modules-5.10.0-28-powerpc64le-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, scsi-core-modules-5.10.0-28-powerpc64le-di, ata-modules-5.10.0-28-powerpc64le-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, md-modules-5.10.0-28-powerpc64le-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di, scsi-core-modules-5.10.0-28-powerpc64le-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: uinput-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: uinput-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: uinput support
+ This package contains the uinput module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: hypervisor-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: hypervisor-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: IBM 64bit hypervisor console modules
+ Contains drivers for the hypervisor console, used as console for linux
+ running in logical partitions of IBM hardware supporting it.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: fancontrol-modules-5.10.0-28-powerpc64le-di
+Architecture: ppc64el
+Section: debian-installer
+Priority: standard
+Provides: fancontrol-modules
+Depends: kernel-image-5.10.0-28-powerpc64le-di
+Description: Apple powermac fancontrol modules
+ Contains drivers for macintosh i2c bus as well as for the monitoring
+ devices connected to it. This allows to control the fans during
+ installation.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-powerpc64le
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-powerpc64le
+Architecture: ppc64el
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [ppc64el] | linux-initramfs-tool [ppc64el]
+Recommends: firmware-linux-free, apparmor [ppc64el]
+Suggests: linux-doc-5.10, debian-kernel-handbook, mkvmlinuz [ppc64el], grub-ieee1275 [ppc64el]
+Breaks: fwupdate (<< 12-7) [ppc64el], wireless-regdb (<< 2019.06.03-1~) [ppc64el], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for Little-endian 64-bit PowerPC
+ The Linux kernel 5.10 and modules for use on Little-endian 64-bit PowerPC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-powerpc64le
+Architecture: ppc64el
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-powerpc64le
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-powerpc64le, generally used for building
+ out-of-tree kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-powerpc64le, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-powerpc64le package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-powerpc64le
+Architecture: ppc64el
+Provides: linux-latest-modules-5.10.0-28-powerpc64le, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-powerpc64le (= ${binary:Version}), ${misc:Depends}
+Description: Linux for Little-endian 64-bit PowerPC (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ Little-endian 64-bit PowerPC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-powerpc64le
+Architecture: ppc64el
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-powerpc64le (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux powerpc64le configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel powerpc64le configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-powerpc64le-dbg
+Architecture: ppc64el
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-powerpc64le
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-powerpc64le.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-powerpc64le-dbg
+Architecture: ppc64el
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-powerpc64le-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux powerpc64le configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel powerpc64le configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: kernel-image
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, nic-shared-modules-5.10.0-28-riscv64-di, i2c-modules-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di, mtd-core-modules-5.10.0-28-riscv64-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: nic-wireless-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: nic-wireless-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, nic-shared-modules-5.10.0-28-riscv64-di, usb-modules-5.10.0-28-riscv64-di, mmc-core-modules-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di, crypto-modules-5.10.0-28-riscv64-di
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel. Includes
+ crypto modules only needed for wireless (WEP, WPA).
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, usb-modules-5.10.0-28-riscv64-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, ata-modules-5.10.0-28-riscv64-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, scsi-core-modules-5.10.0-28-riscv64-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, scsi-core-modules-5.10.0-28-riscv64-di, cdrom-core-modules-5.10.0-28-riscv64-di, ata-modules-5.10.0-28-riscv64-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: scsi-nic-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: scsi-nic-modules
+Depends: scsi-modules-5.10.0-28-riscv64-di, nic-modules-5.10.0-28-riscv64-di
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di, md-modules-5.10.0-28-riscv64-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, cdrom-core-modules-5.10.0-28-riscv64-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di, cdrom-core-modules-5.10.0-28-riscv64-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, md-modules-5.10.0-28-riscv64-di, scsi-core-modules-5.10.0-28-riscv64-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, scsi-core-modules-5.10.0-28-riscv64-di, usb-modules-5.10.0-28-riscv64-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, i2c-modules-5.10.0-28-riscv64-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, usb-modules-5.10.0-28-riscv64-di, i2c-modules-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: event-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: event-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: Event support
+ This package contains event drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, nic-shared-modules-5.10.0-28-riscv64-di, nic-wireless-modules-5.10.0-28-riscv64-di, usb-modules-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, scsi-core-modules-5.10.0-28-riscv64-di, ata-modules-5.10.0-28-riscv64-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, md-modules-5.10.0-28-riscv64-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, scsi-core-modules-5.10.0-28-riscv64-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: mmc-core-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: mmc-core-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: MMC/SD/SDIO core modules
+ This package contains core modules for MMC/SD/SDIO support.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: mmc-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: mmc-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, mmc-core-modules-5.10.0-28-riscv64-di, usb-modules-5.10.0-28-riscv64-di, crc-modules-5.10.0-28-riscv64-di
+Description: MMC/SD card modules
+ This package contains modules needed to support MMC (multimedia) and SD
+ cards.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: mtd-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: mtd-modules
+Depends: kernel-image-5.10.0-28-riscv64-di, mtd-core-modules-5.10.0-28-riscv64-di
+Description: MTD driver modules
+ This package contains MTD driver modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-riscv64-di
+Architecture: riscv64
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-riscv64-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-riscv64
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-riscv64
+Architecture: riscv64
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [riscv64] | linux-initramfs-tool [riscv64]
+Recommends: firmware-linux-free, apparmor [riscv64]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [riscv64], wireless-regdb (<< 2019.06.03-1~) [riscv64], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for 64-bit RISC-V platforms
+ The Linux kernel 5.10 and modules for use on 64-bit RISC-V platforms.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-riscv64
+Architecture: riscv64
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-riscv64
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-riscv64, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-riscv64, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-riscv64 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-riscv64
+Architecture: riscv64
+Provides: linux-latest-modules-5.10.0-28-riscv64, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-riscv64 (= ${binary:Version}), ${misc:Depends}
+Description: Linux for 64-bit RISC-V platforms (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ 64-bit RISC-V platforms.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-riscv64
+Architecture: riscv64
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-riscv64 (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux riscv64 configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel riscv64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-riscv64-dbg
+Architecture: riscv64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-riscv64
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-riscv64.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-riscv64-dbg
+Architecture: riscv64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-riscv64-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux riscv64 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel riscv64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: standard
+Provides: kernel-image
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-s390x-di, crc-modules-5.10.0-28-s390x-di, mtd-core-modules-5.10.0-28-s390x-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-s390x-di, scsi-core-modules-5.10.0-28-s390x-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-s390x-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-s390x-di, scsi-core-modules-5.10.0-28-s390x-di, cdrom-core-modules-5.10.0-28-s390x-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-s390x-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-s390x-di, crc-modules-5.10.0-28-s390x-di, md-modules-5.10.0-28-s390x-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-s390x-di, crc-modules-5.10.0-28-s390x-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-s390x-di, cdrom-core-modules-5.10.0-28-s390x-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-s390x-di, crc-modules-5.10.0-28-s390x-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-s390x-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-s390x-di, crc-modules-5.10.0-28-s390x-di, cdrom-core-modules-5.10.0-28-s390x-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-s390x-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-s390x-di, crc-modules-5.10.0-28-s390x-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-s390x-di, crc-modules-5.10.0-28-s390x-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-s390x-di, md-modules-5.10.0-28-s390x-di, scsi-core-modules-5.10.0-28-s390x-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-s390x-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-s390x-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-s390x-di, md-modules-5.10.0-28-s390x-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-s390x-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: mtd-core-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: mtd-core-modules
+Depends: kernel-image-5.10.0-28-s390x-di
+Description: MTD core
+ This package contains the MTD core.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: dasd-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: standard
+Provides: dasd-modules
+Depends: kernel-image-5.10.0-28-s390x-di
+Description: dasd modules
+ This package contains dasd modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: dasd-extra-modules-5.10.0-28-s390x-di
+Architecture: s390x
+Section: debian-installer
+Priority: optional
+Provides: dasd-extra-modules
+Depends: kernel-image-5.10.0-28-s390x-di, dasd-modules-5.10.0-28-s390x-di
+Description: optional dasd DIAG support
+ This package contains the module for dasd DIAG support. The udeb is not
+ loaded by default as the installer does not actually support this. It can
+ however be useful to have available in rescue situations.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-s390x
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-s390x
+Architecture: s390x
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [s390x] | linux-initramfs-tool [s390x]
+Recommends: firmware-linux-free, apparmor [s390x]
+Suggests: linux-doc-5.10, debian-kernel-handbook, s390-tools [s390x]
+Breaks: fwupdate (<< 12-7) [s390x], wireless-regdb (<< 2019.06.03-1~) [s390x], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for IBM zSeries
+ The Linux kernel 5.10 and modules for use on IBM zSeries.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-s390x
+Architecture: s390x
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, linux-compiler-gcc-10-s390
+Description: Header files for Linux 5.10.0-28-s390x
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-s390x, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-s390x, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-s390x package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-s390x
+Architecture: s390x
+Provides: linux-latest-modules-5.10.0-28-s390x, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-s390x (= ${binary:Version}), ${misc:Depends}
+Description: Linux for IBM zSeries (meta-package)
+ This package depends on the latest Linux kernel and modules for use on IBM
+ zSeries.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-s390x
+Architecture: s390x
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-s390x (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux s390x configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel s390x configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-s390x-dbg
+Architecture: s390x
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-s390x
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-s390x.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-s390x-dbg
+Architecture: s390x
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-s390x-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux s390x configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel s390x configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, event-modules, fb-modules, input-modules, mouse-modules, nic-shared-modules, rtc-modules, uinput-modules, usb-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, nic-shared-modules-5.10.0-28-sh7751r-di, i2c-modules-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: firewire-core-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: firewire-core-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di, md-modules-5.10.0-28-sh7751r-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, cdrom-core-modules-5.10.0-28-sh7751r-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: minix-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: minix-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: Minix filesystem support
+ This package contains the Minix filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di, cdrom-core-modules-5.10.0-28-sh7751r-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, md-modules-5.10.0-28-sh7751r-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, nic-shared-modules-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, md-modules-5.10.0-28-sh7751r-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: speakup-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: speakup-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di
+Description: speakup modules
+ This package contains speakup modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: sound-modules-5.10.0-28-sh7751r-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: sound-modules
+Depends: kernel-image-5.10.0-28-sh7751r-di, i2c-modules-5.10.0-28-sh7751r-di, firewire-core-modules-5.10.0-28-sh7751r-di, crc-modules-5.10.0-28-sh7751r-di
+Description: sound support
+ This package contains sound modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7751r
+Package-Type: udeb
+
+Package: kernel-image-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: kernel-image, event-modules, fb-modules, input-modules, mouse-modules, nic-shared-modules, rtc-modules, uinput-modules, usb-modules
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, nic-shared-modules-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: firewire-core-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: firewire-core-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: loop-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: loop-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di, md-modules-5.10.0-28-sh7785lcr-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, cdrom-core-modules-5.10.0-28-sh7785lcr-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: minix-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: minix-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: Minix filesystem support
+ This package contains the Minix filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di, cdrom-core-modules-5.10.0-28-sh7785lcr-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, md-modules-5.10.0-28-sh7785lcr-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, nic-shared-modules-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, md-modules-5.10.0-28-sh7785lcr-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: speakup-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: speakup-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di
+Description: speakup modules
+ This package contains speakup modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: sound-modules-5.10.0-28-sh7785lcr-di
+Architecture: sh4
+Section: debian-installer
+Priority: optional
+Provides: sound-modules
+Depends: kernel-image-5.10.0-28-sh7785lcr-di, firewire-core-modules-5.10.0-28-sh7785lcr-di, crc-modules-5.10.0-28-sh7785lcr-di
+Description: sound support
+ This package contains sound modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sh7785lcr
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-sh7751r
+Architecture: sh4
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [sh4] | linux-initramfs-tool [sh4]
+Recommends: firmware-linux-free, apparmor [sh4]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [sh4], wireless-regdb (<< 2019.06.03-1~) [sh4], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for sh7751r
+ The Linux kernel 5.10 and modules for use on Renesas SH7751R R2D plus
+ board.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-sh7751r
+Architecture: sh4
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-sh7751r
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-sh7751r, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-sh7751r, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-sh7751r package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-sh7751r
+Architecture: sh4
+Provides: linux-latest-modules-5.10.0-28-sh7751r, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-sh7751r (= ${binary:Version}), ${misc:Depends}
+Description: Linux for sh7751r (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ Renesas SH7751R R2D plus board.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-sh7751r
+Architecture: sh4
+Depends: linux-headers-5.10.0-28-sh7751r (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux sh7751r configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel sh7751r configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-sh7751r-dbg
+Architecture: sh4
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-sh7751r
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-sh7751r.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-sh7751r-dbg
+Architecture: sh4
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-sh7751r-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux sh7751r configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel sh7751r configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-sh7785lcr
+Architecture: sh4
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [sh4] | linux-initramfs-tool [sh4]
+Recommends: firmware-linux-free, u-boot-tools [sh4], apparmor [sh4]
+Suggests: linux-doc-5.10, debian-kernel-handbook
+Breaks: fwupdate (<< 12-7) [sh4], wireless-regdb (<< 2019.06.03-1~) [sh4], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for sh7785lcr
+ The Linux kernel 5.10 and modules for use on Renesas SH7785 reference
+ board.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-sh7785lcr
+Architecture: sh4
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-sh7785lcr
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-sh7785lcr, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-sh7785lcr, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-sh7785lcr package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-sh7785lcr
+Architecture: sh4
+Provides: linux-latest-modules-5.10.0-28-sh7785lcr, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-sh7785lcr (= ${binary:Version}), ${misc:Depends}
+Description: Linux for sh7785lcr (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ Renesas SH7785 reference board.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-sh7785lcr
+Architecture: sh4
+Depends: linux-headers-5.10.0-28-sh7785lcr (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux sh7785lcr configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel sh7785lcr configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-sh7785lcr-dbg
+Architecture: sh4
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-sh7785lcr
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-sh7785lcr.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-sh7785lcr-dbg
+Architecture: sh4
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-sh7785lcr-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux sh7785lcr configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel sh7785lcr configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: kernel-image-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: kernel-image
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your
+ full Debian system.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: nic-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: nic-modules, nic-extra-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, nic-shared-modules-5.10.0-28-sparc64-di, i2c-modules-5.10.0-28-sparc64-di, crc-modules-5.10.0-28-sparc64-di
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: nic-shared-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: nic-shared-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: usb-serial-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: usb-serial-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, usb-modules-5.10.0-28-sparc64-di
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: ppp-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: ppp-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, crc-modules-5.10.0-28-sparc64-di
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: pata-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: pata-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, ata-modules-5.10.0-28-sparc64-di
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: cdrom-core-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: cdrom-core-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, scsi-core-modules-5.10.0-28-sparc64-di
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: scsi-core-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: scsi-core-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: scsi-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: scsi-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, scsi-core-modules-5.10.0-28-sparc64-di, cdrom-core-modules-5.10.0-28-sparc64-di, ata-modules-5.10.0-28-sparc64-di
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: btrfs-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: btrfs-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, crc-modules-5.10.0-28-sparc64-di, md-modules-5.10.0-28-sparc64-di
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: ext4-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: ext4-modules, ext2-modules, ext3-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, crc-modules-5.10.0-28-sparc64-di
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: isofs-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: isofs-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, cdrom-core-modules-5.10.0-28-sparc64-di
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: jfs-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: jfs-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: ufs-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: ufs-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: UFS filesystem support
+ This package contains the UFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: xfs-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: xfs-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, crc-modules-5.10.0-28-sparc64-di
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: fat-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: fat-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: squashfs-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: squashfs-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: squashfs modules
+ This package contains squashfs modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: udf-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: udf-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, crc-modules-5.10.0-28-sparc64-di, cdrom-core-modules-5.10.0-28-sparc64-di
+Description: UDF modules
+ This package contains the UDF filesystem module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: fuse-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: fuse-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: f2fs-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: f2fs-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, crc-modules-5.10.0-28-sparc64-di
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: md-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: md-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, crc-modules-5.10.0-28-sparc64-di
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: multipath-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: multipath-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, md-modules-5.10.0-28-sparc64-di, scsi-core-modules-5.10.0-28-sparc64-di
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: usb-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: usb-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: USB support
+ This package contains core USB drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: usb-storage-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: usb-storage-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, scsi-core-modules-5.10.0-28-sparc64-di, usb-modules-5.10.0-28-sparc64-di
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: fb-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: fb-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, i2c-modules-5.10.0-28-sparc64-di
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: input-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: input-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, usb-modules-5.10.0-28-sparc64-di, i2c-modules-5.10.0-28-sparc64-di, crc-modules-5.10.0-28-sparc64-di
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: nic-usb-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: nic-usb-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, nic-shared-modules-5.10.0-28-sparc64-di, usb-modules-5.10.0-28-sparc64-di, crc-modules-5.10.0-28-sparc64-di
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: sata-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: standard
+Provides: sata-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, scsi-core-modules-5.10.0-28-sparc64-di, ata-modules-5.10.0-28-sparc64-di
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: i2c-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: i2c-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: i2c support modules
+ This package contains basic i2c support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: crc-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: crc-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: CRC modules
+ This package contains CRC support modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: crypto-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: crypto-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: crypto modules
+ This package contains crypto modules.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: crypto-dm-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: crypto-dm-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, md-modules-5.10.0-28-sparc64-di
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: ata-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: ata-modules
+Depends: kernel-image-5.10.0-28-sparc64-di, scsi-core-modules-5.10.0-28-sparc64-di
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: nbd-modules-5.10.0-28-sparc64-di
+Architecture: sparc64
+Section: debian-installer
+Priority: optional
+Provides: nbd-modules
+Depends: kernel-image-5.10.0-28-sparc64-di
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network
+ Block Device
+Build-Profiles: <!noudeb !stage1 !pkg.linux.nokernel>
+Kernel-Version: 5.10.0-28-sparc64
+Package-Type: udeb
+
+Package: linux-image-5.10.0-28-sparc64
+Architecture: sparc64
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [sparc64] | linux-initramfs-tool [sparc64]
+Recommends: firmware-linux-free, apparmor [sparc64]
+Suggests: linux-doc-5.10, debian-kernel-handbook, fdutils [sparc64], grub-ieee1275 [sparc64]
+Breaks: fwupdate (<< 12-7) [sparc64], wireless-regdb (<< 2019.06.03-1~) [sparc64], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for uniprocessor 64-bit UltraSPARC
+ The Linux kernel 5.10 and modules for use on uniprocessor 64-bit
+ UltraSPARC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-sparc64
+Architecture: sparc64
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-sparc64
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-sparc64, generally used for building out-of-tree
+ kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-sparc64, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-sparc64 package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-sparc64
+Architecture: sparc64
+Provides: linux-latest-modules-5.10.0-28-sparc64, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Depends: linux-image-5.10.0-28-sparc64 (= ${binary:Version}), ${misc:Depends}
+Description: Linux for uniprocessor 64-bit UltraSPARC (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ uniprocessor 64-bit UltraSPARC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-sparc64
+Architecture: sparc64
+Depends: linux-headers-5.10.0-28-sparc64 (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux sparc64 configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel sparc64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-sparc64-dbg
+Architecture: sparc64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-sparc64
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-sparc64.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-sparc64-dbg
+Architecture: sparc64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-sparc64-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux sparc64 configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel sparc64 configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-sparc64-smp
+Architecture: sparc64
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-5.10.0-28 [powerpc ppc64], ${misc:Depends}, initramfs-tools (>= 0.120+deb8u2) [sparc64] | linux-initramfs-tool [sparc64]
+Recommends: firmware-linux-free, apparmor [sparc64]
+Suggests: linux-doc-5.10, debian-kernel-handbook, fdutils [sparc64], grub-ieee1275 [sparc64]
+Breaks: fwupdate (<< 12-7) [sparc64], wireless-regdb (<< 2019.06.03-1~) [sparc64], initramfs-tools (<< 0.120+deb8u2)
+Description: Linux 5.10 for multiprocessor 64-bit UltraSPARC
+ The Linux kernel 5.10 and modules for use on multiprocessor 64-bit
+ UltraSPARC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-headers-5.10.0-28-sparc64-smp
+Architecture: sparc64
+Depends: linux-headers-5.10.0-28-common (= ${source:Version}), linux-kbuild-5.10 (>= ${source:Version}), ${misc:Depends}, gcc-10
+Description: Header files for Linux 5.10.0-28-sparc64-smp
+ This package provides the architecture-specific kernel header files for
+ Linux kernel 5.10.0-28-sparc64-smp, generally used for building
+ out-of-tree kernel modules. These files are going to be installed into
+ /usr/src/linux-headers-5.10.0-28-sparc64-smp, and can be used for building
+ modules that load into the kernel provided by the
+ linux-image-5.10.0-28-sparc64-smp package.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-sparc64-smp
+Architecture: sparc64
+Provides: linux-latest-modules-5.10.0-28-sparc64-smp, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386], linux-image-generic
+Depends: linux-image-5.10.0-28-sparc64-smp (= ${binary:Version}), ${misc:Depends}
+Description: Linux for multiprocessor 64-bit UltraSPARC (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ multiprocessor 64-bit UltraSPARC.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-headers-sparc64-smp
+Architecture: sparc64
+Provides: linux-headers-generic
+Depends: linux-headers-5.10.0-28-sparc64-smp (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux sparc64-smp configuration (meta-package)
+ This package depends on the architecture-specific header files for the
+ latest Linux kernel sparc64-smp configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-5.10.0-28-sparc64-smp-dbg
+Architecture: sparc64
+Section: debug
+Priority: optional
+Depends: ${misc:Depends}
+Description: Debug symbols for linux-image-5.10.0-28-sparc64-smp
+ This package provides the detached debug symbols for the Linux kernel and
+ modules in linux-image-5.10.0-28-sparc64-smp.
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+
+Package: linux-image-sparc64-smp-dbg
+Architecture: sparc64
+Provides: linux-latest-image-dbg
+Depends: linux-image-5.10.0-28-sparc64-smp-dbg (= ${binary:Version}), ${misc:Depends}
+Description: Debugging symbols for Linux sparc64-smp configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel sparc64-smp configuration.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-compiler-gcc-10-arm
+Architecture: armel armhf
+Depends: gcc-10, ${misc:Depends}
+Description: Compiler for Linux on ARM (meta-package)
+ This package depends on GCC of the appropriate version and architecture
+ for Linux on armel and armhf.
+Build-Profiles: <!stage1>
+Multi-Arch: foreign
+
+Package: linux-compiler-gcc-10-s390
+Architecture: s390 s390x
+Depends: gcc-10, ${misc:Depends}
+Description: Compiler for Linux on IBM zSeries (meta-package)
+ This package depends on GCC of the appropriate version and architecture
+ for Linux on s390 and s390x.
+Build-Profiles: <!stage1>
+Multi-Arch: foreign
+
+Package: linux-compiler-gcc-10-x86
+Architecture: amd64 i386 x32
+Depends: gcc-10, ${misc:Depends}
+Description: Compiler for Linux on x86 (meta-package)
+ This package depends on GCC of the appropriate version and architecture
+ for Linux on amd64, i386 and x32.
+Build-Profiles: <!stage1>
+Multi-Arch: foreign
+
+Package: linux-image-parisc64-smp
+Architecture: hppa
+Section: oldlibs
+Priority: extra
+Depends: linux-image-parisc64, ${misc:Depends}
+Description: Linux for multiprocessor 64-bit PA-RISC (dummy package)
+ This is a dummy transitional package. It can be safely removed.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
+Package: linux-image-parisc-smp
+Architecture: hppa
+Section: oldlibs
+Priority: extra
+Depends: linux-image-parisc, ${misc:Depends}
+Description: Linux for multiprocessor 32-bit PA-RISC (dummy package)
+ This is a dummy transitional package. It can be safely removed.
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+
diff --git a/debian/control.md5sum b/debian/control.md5sum
new file mode 100644
index 000000000..cb497035f
--- /dev/null
+++ b/debian/control.md5sum
@@ -0,0 +1,86 @@
+4910c50c27288d791de01121b7694bea debian/bin/gencontrol.py
+601849584e6fa76a7beed99195e4314b debian/build/version-info
+fe4456d48e3218fb8980c8577d03a7ae debian/templates/control.config.in
+9509e39d8e60906ebd5ee4a8b0355d25 debian/templates/control.docs.in
+358db3af53a223fe60ae89c7a481609f debian/templates/control.docs.meta.in
+7d4e853b855f515068df3355e2bf5865 debian/templates/control.extra.in
+578bb70eb1ed930f2cf8a774666b747f debian/templates/control.headers.featureset.in
+2b3995da9ebe7d2b1a1345241dd90c55 debian/templates/control.headers.in
+ce8590d760adf6efb95181ec626c4aca debian/templates/control.headers.meta.in
+eda4623fb10d5ba1cefa8502ebaeb0fd debian/templates/control.image-dbg.in
+817873a7b9fa61d433b2c39f6b2491de debian/templates/control.image-dbg.meta.in
+d048c1b6a4d834060d0ce8b502aee906 debian/templates/control.image-unsigned.in
+459d2768144a8542116bea0805b24dae debian/templates/control.image.in
+91ddd8e344e4b84b61d02c064e47f7d5 debian/templates/control.image.meta.in
+36387f47e6bacd1e6995a9d41b292e88 debian/templates/control.libc-dev.in
+74b180a87aa1f6377d9bf8a10368c657 debian/templates/control.main.in
+77509b4624f98f87a0b4b1370813935b debian/templates/control.signed-template.in
+85a6d9699cab87feefbb6ff98f3d8182 debian/templates/control.source.in
+9831ce1b8f9e8792b9a85d8761bdc385 debian/templates/control.sourcebin.in
+4124ed9de89fd889d6cf997ee8da76f0 debian/templates/control.sourcebin.meta.in
+753a334f43d5ded16111d32f62c2d567 debian/templates/control.tools-unversioned.in
+88bf8b2a940007b4cd129401d2d4fdf4 debian/templates/control.tools-versioned.in
+f4aea807f3ac10a5d375b3c8cc95afd9 debian/templates/control.tools-versioned.meta.in
+b8efaa8b4c9bbfd89c08514f860e548e debian/templates/docs.meta.maintscript.in
+ed25b8839b8e5cb08adfbfde488dd0cd debian/templates/headers.meta.maintscript.in
+0d7f6ea42f52d0a6013535a80111ee3e debian/templates/headers.postinst.in
+54426b6625c1bbf41ff6e05eebc06f89 debian/templates/image-dbg.lintian-overrides.in
+98d67252f9a33d17a78aa37c29603b83 debian/templates/image-dbg.meta.lintian-overrides.in
+8767f777765b1af15090392c4607a596 debian/templates/image-dbg.meta.maintscript.in
+769a43efb579711359e12554e34d0baa debian/templates/image.meta.bug-presubj.in
+0961d6fa0a85c406d40b83db932807fe debian/templates/image.meta.maintscript.in
+0327750d6696dee915a532aec73a0fd6 debian/templates/image.postinst.in
+a4a60fc48b3240e46bbac6a1ddcaad30 debian/templates/image.postrm.in
+38004750aa03cea41d5d3aeafff16fcc debian/templates/image.preinst.in
+afb508873a44a1f196c2a525fec4b415 debian/templates/image.prerm.in
+51797b6c275eb14e99009e78553904cc debian/templates/perf.lintian-overrides.in
+850cc4fd419adac7d008df061f958895 debian/templates/perf.meta.maintscript.in
+381bc892fd36ef7ea5327f649b99cb98 debian/templates/sourcebin.meta.maintscript.in
+814dda166c7e3ef02e6e259e805ac66a debian/templates/tests-control.image.in
+33d71bfd398d2f9b3bc5c0193b67d17e debian/templates/tests-control.main.in
+2c58f232bf56ec54c477f31a77cdfd63 debian/config/defines
+59a811890d2e7129bec940075850f11f debian/config/alpha/defines
+026ce5cdad7814c28f4fd87589786719 debian/config/amd64/defines
+44bff3917069a99eeb20ceff24609dda debian/config/arm64/defines
+3e673c1434c6132c73c0cfb4bfe38763 debian/config/arm64ilp32/defines
+18c882259e45d65ad257534da6cd18e6 debian/config/armel/defines
+27ed61864d13f791e07f6ad8e688de2a debian/config/armhf/defines
+366b94d652a66b437eabcd165bcc9610 debian/config/featureset-rt/defines
+855af7b688adb78c7d236e15bbf6bf38 debian/config/hppa/defines
+696fe9dde321cbe6691b9ba63a89441c debian/config/i386/defines
+97647ba6bbcc9331b17fef5c192e5a35 debian/config/ia64/defines
+f6eb4abf894006ec7f947d09d32f57b2 debian/config/m68k/defines
+77050c7df77b8cb300155f7e4876a7bb debian/config/mips/defines
+a70015a9c92407a77e1bf32cd88a5f09 debian/config/mips64/defines
+aa0dc1c23ac4dee04d5abc5bca888f72 debian/config/mips64el/defines
+147bd0cc58f0510d7573da6b5da80361 debian/config/mips64r6/defines
+534f8f84d6e68368b0191ad75fc288a3 debian/config/mips64r6el/defines
+6d4413fd2605c197625fc8929fd6eb4d debian/config/mipsel/defines
+e411d2dfe0018a7c40b6bf7efd45cd29 debian/config/mipsn32/defines
+174058e52aced932bf02606d6cb5649c debian/config/mipsn32el/defines
+882fb0fec3cbd0239817994223fa71e5 debian/config/mipsn32r6/defines
+73e2f095b2485f95bc164bf685684a47 debian/config/mipsn32r6el/defines
+f4f988c94f2fc477db801eddfe79c79e debian/config/mipsr6/defines
+85c1ae5e3f2e17492053f7de76474463 debian/config/mipsr6el/defines
+45a4ad93313c2066248987dfa59dd6da debian/config/powerpc/defines
+f9a739a574488a070d4811dd6a94cbbb debian/config/ppc64/defines
+3cffb73a6b8570b2fc03e83a7d0e0772 debian/config/ppc64el/defines
+a50ff431517bddd759d53c0ad2850cb7 debian/config/riscv64/defines
+9462622a41b618007bf9e8343f2fb3ce debian/config/s390/defines
+c687c34582869dfb08f47ec435997514 debian/config/s390x/defines
+8f2e4969633ff660d026f2b7e02e6336 debian/config/sh3/defines
+e0810ddd6e4add2a26c5668773b69d25 debian/config/sh4/defines
+8d317c1872f3bd8da4feae25a7c61df3 debian/config/sparc/defines
+e741332318227dd4646f0d98735271e5 debian/config/sparc64/defines
+f4b2921156e7b1a038862f848fdfe48f debian/config/x32/defines
+5ecc16c27932acb9ff514badae52b51f debian/config/amd64/none/defines
+7dc981827930ed6844a731ed954b9b9d debian/config/amd64/rt/defines
+50ee12dd2cf9fe79bee7141560985f79 debian/config/arm64/none/defines
+d3c04182d8746e4871de922a63f03f97 debian/config/arm64/rt/defines
+b4a45606f37c0d82a63779aa862528d9 debian/config/armhf/none/defines
+1cab87ca080defc647d4ae9adcf9a63a debian/config/armhf/rt/defines
+61cbd68a5172174b0c8261b27ba5cf12 debian/config/i386/none/defines
+7146ff53fc4f9fbb49948225d8589b69 debian/config/i386/rt/defines
+1f2f888a9e94dfb519bb1eab12408d34 debian/config/riscv64/none/defines
+e657478131ce8e645c2d7151586ef24e debian/installer/kernel-versions
+62b67e678eb87227e69d489aefa7ed79 debian/installer/package-list
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 000000000..e93b6f4f9
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,297 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: Linux kernel
+Source: https://www.kernel.org/pub/linux/kernel/
+Files-Excluded: Documentation/netlabel/draft-ietf-cipso-ipsecurity-01.txt
+ arch/powerpc/platforms/8xx/micropatch.c
+ drivers/media/usb/dvb-usb/af9005-script.h
+ drivers/media/i2c/vs6624.c
+ drivers/net/appletalk/cops*
+ drivers/video/fbdev/nvidia
+ drivers/video/fbdev/riva
+Comment:
+ The 'perf' tool is dynamically linked with the Python interpreter,
+ which is itself dynamically linked with OpenSSL, which is not
+ GPL-compatible. However, since perf itself does not link with or use
+ OpenSSL, we believe that this indirect linking does not require
+ additional permissions beyond the GPL.
+
+Files: *
+Copyright: 1991-2012 Linus Torvalds and many others
+License: GPL-2
+
+Files: debian/*
+Copyright: 1996-2006 Manoj Srivastava
+ 2005-2012 Debian kernel team
+ 2006-2009 Bastian Blank <waldi@debian.org>
+License: GPL-2
+
+Files: debian/rules.d/tools/hv/check-hyperv.c
+Copyright: 2011 Lennart Poettering
+License: LGPL-2.1
+
+Files:
+ arch/arm/boot/dts/armada-370.dtsi
+ arch/arm/boot/dts/armada-370-d*.dts*
+ arch/arm/boot/dts/armada-370-mirabox.dts
+ arch/arm/boot/dts/armada-370-netgear*.dts*
+ arch/arm/boot/dts/armada-370-rd.dts
+ arch/arm/boot/dts/armada-370-synology-ds213j.dts
+ arch/arm/boot/dts/armada-375*.dts*
+ arch/arm/boot/dts/armada-38*.dts*
+ arch/arm/boot/dts/armada-39*.dts*
+ arch/arm/boot/dts/armada-xp*.dts*
+ arch/arm/boot/dts/artpec6.dtsi
+ arch/arm/boot/dts/at91sam9260ek.dts
+ arch/arm/boot/dts/at91sam9xe.dtsi
+ arch/arm/boot/dts/axp*.dts*
+ arch/arm/boot/dts/berlin2*.dts*
+ arch/arm/boot/dts/cros-ec-sbs.dtsi
+ arch/arm/boot/dts/cx92755*.dts*
+ arch/arm/boot/dts/imx7*.dts*
+ arch/arm/boot/dts/kirkwood-linkstation*.dts*
+ arch/arm/boot/dts/ls*.dts*
+ arch/arm/boot/dts/meson*.dts*
+ arch/arm/boot/dts/mps2*.dts*
+ arch/arm/boot/dts/mvebu-linkstation-*.dts*
+ arch/arm/boot/dts/orion5x-kuroboxpro.dts
+ arch/arm/boot/dts/orion5x-linkstation*.dts*
+ arch/arm/boot/dts/orion5x-ls*.dts*
+ arch/arm/boot/dts/qcom-mdm9615*.dts*
+ arch/arm/boot/dts/rk*.dts
+ arch/arm/boot/dts/sama5d2.dtsi
+ arch/arm/boot/dts/sama5d4.dtsi
+ arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts
+ arch/arm/boot/dts/stm*.dts*
+ arch/arm/boot/dts/sun*.dts*
+ arch/arm/boot/dts/tegra124-apalis*.dts*
+ arch/arm/boot/dts/uniphier-*.dts*
+ arch/arm/boot/dts/vf610-colibri*.dts*
+ arch/arm/boot/dts/vf610m*.dts*
+ arch/arm64/boot/dts/allwinner/*.dts*
+ arch/arm64/boot/dts/amlogic/*.dts*
+ arch/arm64/boot/dts/cavium/thunder-*.dts*
+ arch/arm64/boot/dts/freescale/fsl-*.dts*
+ arch/arm64/boot/dts/marvell/armada-*.dts*
+ arch/arm64/boot/dts/marvell/berlin4ct-*.dts*
+ arch/arm64/boot/dts/rockchip/rk33*.dts*
+ arch/arm64/boot/dts/socionext/uniphier-ld*.dts*
+ arch/arm64/boot/dts/zte/zx296718*.dts*
+ include/dt-bindings/clock/sun*.h
+ include/dt-bindings/dma/axi-dmac.h
+ include/dt-bindings/dma/sun4i-a10.h
+ include/dt-bindings/pinctrl/sun4i-a10.h
+ include/dt-bindings/reset/sun*.h
+Copyright: 2012-2018 Linus Torvalds and many others
+License: GPL-2+ or X11
+
+Files: drivers/crypto/vmx/*.pl
+Copyright: 2006,2014 Andy Polyakov <appro@openssl.org>
+License: CRYPTOGAMS
+ All rights reserved.
+ .
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+ .
+ * Redistributions of source code must retain copyright notices, this
+ list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the
+ distribution.
+ * Neither the name of the CRYPTOGAMS nor the names of its copyright
+ holder and contributors may be used to endorse or promote products
+ derived from this software without specific prior written
+ permission.
+ .
+ ALTERNATIVELY, provided that this notice is retained in full, this
+ product may be distributed under the terms of the GNU General Public
+ License (GPL), in which case the provisions of the GPL apply INSTEAD
+ OF those given above.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+Files: fs/nls/mac-*
+Copyright: 1991-2012 Unicode, Inc.
+License: Unicode-data
+ All rights reserved. Distributed under the Terms of Use in
+ http://www.unicode.org/copyright.html.
+ .
+ Permission is hereby granted, free of charge, to any person obtaining a
+ copy of the Unicode data files and any associated documentation (the "Data
+ Files") or Unicode software and any associated documentation (the
+ "Software") to deal in the Data Files or Software without restriction,
+ including without limitation the rights to use, copy, modify, merge,
+ publish, distribute, and/or sell copies of the Data Files or Software, and
+ to permit persons to whom the Data Files or Software are furnished to do
+ so, provided that (a) the above copyright notice(s) and this permission
+ notice appear with all copies of the Data Files or Software, (b) both the
+ above copyright notice(s) and this permission notice appear in associated
+ documentation, and (c) there is clear notice in each modified Data File or
+ in the Software as well as in the documentation associated with the Data
+ File(s) or Software that the data or software has been modified.
+ .
+ THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
+ KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
+ THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS
+ INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT
+ OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
+ USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THE DATA FILES OR SOFTWARE.
+ .
+ Except as contained in this notice, the name of a copyright holder shall
+ not be used in advertising or otherwise to promote the sale, use or other
+ dealings in these Data Files or Software without prior written
+ authorization of the copyright holder.
+
+Files: include/xen/interface/*
+Copyright: 2002-2006 Keir Fraser
+ 2004 Tim Deegan
+ 2004 Andrew Warfield
+ 2005 Nguyen Anh Quynh
+ 2005-2006 IBM Corporation
+ 2005 Anthony Liguori
+ 2005 Rusty Russell
+ 2005-2006 XenSource Ltd.
+ 2006 Ian Campbell
+ 2006 Red Hat, Inc.
+ 2010 Ryan Wilson
+License: Xen-interface
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to
+ deal in the Software without restriction, including without limitation the
+ rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+ sell copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+ .
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ DEALINGS IN THE SOFTWARE.
+
+Files: scripts/extract-cert.c scripts/sign-file.c
+Copyright: 2014-2015 Red Hat, Inc.
+ 2015 Intel Corporation
+License: LGPL-2.1
+
+Files: tools/lib/bpf/*
+Copyright: 2015-2020 Linus Torvalds and many others
+License: LGPL-2.1 or BSD-2-clause
+
+Files: tools/bpf/bpftool/*
+Copyright: 2017-2020 Linus Torvalds and many others
+License: GPL-2 or BSD-2-clause
+
+License: BSD-2-clause
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are met:
+ .
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ .
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+ POSSIBILITY OF SUCH DAMAGE.
+
+License: GPL-2
+ This package is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License version 2 as
+ published by the Free Software Foundation.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+ .
+ On Debian systems, the complete text of the GNU General Public License version
+ 2 can be found in `/usr/share/common-licenses/GPL-2'.
+
+License: LGPL-2.1
+ This program is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2.1 of the License, or
+ (at your option) any later version.
+ .
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program; If not, see <http://www.gnu.org/licenses/>.
+ .
+ On Debian systems, the complete text of the GNU Lesser General Public
+ License version 2.1 can be found in `/usr/share/common-licenses/LGPL-2.1'.
+
+License: GPL-2+ or X11
+ This file is dual-licensed: you can use it either under the terms
+ of the GPL or the X11 license, at your option. Note that this dual
+ licensing only applies to this file, and not this project as a
+ whole.
+ .
+ a) This file is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+ .
+ This file is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+ .
+ Or, alternatively,
+ .
+ b) Permission is hereby granted, free of charge, to any person
+ obtaining a copy of this software and associated documentation
+ files (the "Software"), to deal in the Software without
+ restriction, including without limitation the rights to use,
+ copy, modify, merge, publish, distribute, sublicense, and/or
+ sell copies of the Software, and to permit persons to whom the
+ Software is furnished to do so, subject to the following
+ conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+ OTHER DEALINGS IN THE SOFTWARE.
diff --git a/debian/hyperv-daemons.README.Debian b/debian/hyperv-daemons.README.Debian
new file mode 100644
index 000000000..8fff2afd3
--- /dev/null
+++ b/debian/hyperv-daemons.README.Debian
@@ -0,0 +1,14 @@
+hyperv-daemon for Debian
+------------------------
+
+ If you want to change screen resolution on Linux guest,
+ plese update kernel parameter.
+
+ 1. edit /etc/default/grub file
+ - add 'video=hyperv_fb:"horizontal"x"vertical"' to
+ 'GRUB_CMDLINE_LINUX_DEFAULT=' or 'GRUB_CMDLINE_LINUX=' line
+ (e.g. GRUB_CMDLINE_LINUX=video=hyperv_fb:1280x1024)
+ 2. then, exec update-grub
+ 3. reboot Linux guest
+
+ -- Hideki Yamane <henrich@debian.org> Thu, 28 May 2015 10:23:52 +0900
diff --git a/debian/hyperv-daemons.hv-fcopy-daemon.init b/debian/hyperv-daemons.hv-fcopy-daemon.init
new file mode 100755
index 000000000..5866dc60e
--- /dev/null
+++ b/debian/hyperv-daemons.hv-fcopy-daemon.init
@@ -0,0 +1,109 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides: hv-fcopy-daemon
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Hyper-V file copy service (FCOPY) daemon
+### END INIT INFO
+
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+DESC="Hyper-V file copy service (FCOPY) daemon"
+NAME=hv_fcopy_daemon
+DAEMON=/usr/sbin/$NAME
+PIDFILE=/run/$NAME.pid
+SCRIPTNAME=/etc/init.d/hv-fcopy-daemon
+
+# Exit if the package is not installed
+[ -x "$DAEMON" ] || exit 0
+
+# Exit if the kernel device does not exist
+[ -e "/dev/vmbus/hv_fcopy" ] || exit 0
+
+# Load the VERBOSE setting and other rcS variables
+. /lib/init/vars.sh
+
+# Define LSB log_* functions.
+. /lib/lsb/init-functions
+
+#
+# Function that starts the daemon/service
+#
+do_start()
+{
+ # Return
+ # 0 if daemon has been started
+ # 1 if daemon was already running
+ # 2 if daemon could not be started
+ start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
+ || return 1
+ start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --background --make-pidfile -- -n \
+ || return 2
+}
+
+#
+# Function that stops the daemon/service
+#
+do_stop()
+{
+ # Return
+ # 0 if daemon has been stopped
+ # 1 if daemon was already stopped
+ # 2 if daemon could not be stopped
+ # other if a failure occurred
+ start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
+ [ "$?" = 2 ] && return 2
+ start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
+ RETVAL=$?
+ [ "$RETVAL" = 2 ] && return 2
+ # Many daemons don't delete their pidfiles when they exit.
+ rm -f $PIDFILE
+ return "$RETVAL"
+}
+
+case "$1" in
+ start)
+ [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
+ do_start
+ case "$?" in
+ 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
+ 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
+ esac
+ ;;
+ stop)
+ [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
+ do_stop
+ case "$?" in
+ 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
+ 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
+ esac
+ ;;
+ status)
+ status_of_proc -p "$PIDFILE" "$DAEMON" "$NAME"
+ ;;
+ restart|force-reload)
+ log_daemon_msg "Restarting $DESC" "$NAME"
+ do_stop
+ case "$?" in
+ 0|1)
+ do_start
+ case "$?" in
+ 0) log_end_msg 0 ;;
+ 1) log_end_msg 1 ;; # Old process is still running
+ *) log_end_msg 1 ;; # Failed to start
+ esac
+ ;;
+ *)
+ # Failed to stop
+ log_end_msg 1
+ ;;
+ esac
+ ;;
+ *)
+ echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
+ exit 3
+ ;;
+esac
+
+:
diff --git a/debian/hyperv-daemons.hv-fcopy-daemon.service b/debian/hyperv-daemons.hv-fcopy-daemon.service
new file mode 100644
index 000000000..d8e4d3b8a
--- /dev/null
+++ b/debian/hyperv-daemons.hv-fcopy-daemon.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Hyper-V file copy service (FCOPY) daemon
+Conflicts=hyperv-daemons.hv-fcopy-daemon.service
+BindsTo=sys-devices-virtual-misc-vmbus\x21hv_fcopy.device
+
+[Service]
+ExecStart=/usr/sbin/hv_fcopy_daemon -n
+
+[Install]
+WantedBy=multi-user.target
diff --git a/debian/hyperv-daemons.hv-kvp-daemon.init b/debian/hyperv-daemons.hv-kvp-daemon.init
new file mode 100755
index 000000000..6a78f478b
--- /dev/null
+++ b/debian/hyperv-daemons.hv-kvp-daemon.init
@@ -0,0 +1,109 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides: hv-kvp-daemon
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Hyper-V key-value pair (KVP) daemon
+### END INIT INFO
+
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+DESC="Hyper-V key-value pair (KVP) daemon"
+NAME=hv_kvp_daemon
+DAEMON=/usr/sbin/$NAME
+PIDFILE=/run/$NAME.pid
+SCRIPTNAME=/etc/init.d/hv-kvp-daemon
+
+# Exit if the package is not installed
+[ -x "$DAEMON" ] || exit 0
+
+# Exit if the kernel device does not exist
+[ -e "/dev/vmbus/hv_kvp" ] || exit 0
+
+# Load the VERBOSE setting and other rcS variables
+. /lib/init/vars.sh
+
+# Define LSB log_* functions.
+. /lib/lsb/init-functions
+
+#
+# Function that starts the daemon/service
+#
+do_start()
+{
+ # Return
+ # 0 if daemon has been started
+ # 1 if daemon was already running
+ # 2 if daemon could not be started
+ start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
+ || return 1
+ start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --background --make-pidfile -- -n \
+ || return 2
+}
+
+#
+# Function that stops the daemon/service
+#
+do_stop()
+{
+ # Return
+ # 0 if daemon has been stopped
+ # 1 if daemon was already stopped
+ # 2 if daemon could not be stopped
+ # other if a failure occurred
+ start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
+ [ "$?" = 2 ] && return 2
+ start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
+ RETVAL=$?
+ [ "$RETVAL" = 2 ] && return 2
+ # Many daemons don't delete their pidfiles when they exit.
+ rm -f $PIDFILE
+ return "$RETVAL"
+}
+
+case "$1" in
+ start)
+ [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
+ do_start
+ case "$?" in
+ 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
+ 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
+ esac
+ ;;
+ stop)
+ [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
+ do_stop
+ case "$?" in
+ 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
+ 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
+ esac
+ ;;
+ status)
+ status_of_proc -p "$PIDFILE" "$DAEMON" "$NAME"
+ ;;
+ restart|force-reload)
+ log_daemon_msg "Restarting $DESC" "$NAME"
+ do_stop
+ case "$?" in
+ 0|1)
+ do_start
+ case "$?" in
+ 0) log_end_msg 0 ;;
+ 1) log_end_msg 1 ;; # Old process is still running
+ *) log_end_msg 1 ;; # Failed to start
+ esac
+ ;;
+ *)
+ # Failed to stop
+ log_end_msg 1
+ ;;
+ esac
+ ;;
+ *)
+ echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
+ exit 3
+ ;;
+esac
+
+:
diff --git a/debian/hyperv-daemons.hv-kvp-daemon.service b/debian/hyperv-daemons.hv-kvp-daemon.service
new file mode 100644
index 000000000..67496e353
--- /dev/null
+++ b/debian/hyperv-daemons.hv-kvp-daemon.service
@@ -0,0 +1,22 @@
+[Unit]
+Description=Hyper-V key-value pair (KVP) daemon
+DefaultDependencies=no
+Before=sysinit.target shutdown.target
+Conflicts=hyperv-daemons.hv-kvp-daemon.service shutdown.target
+BindsTo=sys-devices-virtual-misc-vmbus\x21hv_kvp.device
+IgnoreOnIsolate=1
+
+[Service]
+ExecStart=/usr/sbin/hv_kvp_daemon -n
+CapabilityBoundingSet=
+DeviceAllow=/dev/vmbus/hv_kvp
+NoNewPrivileges=true
+ProtectControlGroups=true
+ProtectHome=true
+ProtectKernelModules=true
+ProtectKernelTunables=true
+ProtectSystem=full
+StateDirectory=hyperv
+
+[Install]
+WantedBy=multi-user.target
diff --git a/debian/hyperv-daemons.hv-vss-daemon.init b/debian/hyperv-daemons.hv-vss-daemon.init
new file mode 100755
index 000000000..31831aabe
--- /dev/null
+++ b/debian/hyperv-daemons.hv-vss-daemon.init
@@ -0,0 +1,109 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides: hv-vss-daemon
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Hyper-V volume shadow copy service (VSS) daemon
+### END INIT INFO
+
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+DESC="Hyper-V volume shadow copy service (VSS) daemon"
+NAME=hv_vss_daemon
+DAEMON=/usr/sbin/$NAME
+PIDFILE=/run/$NAME.pid
+SCRIPTNAME=/etc/init.d/hv-vss-daemon
+
+# Exit if the package is not installed
+[ -x "$DAEMON" ] || exit 0
+
+# Exit if the kernel device does not exist
+[ -e "/dev/vmbus/hv_vss" ] || exit 0
+
+# Load the VERBOSE setting and other rcS variables
+. /lib/init/vars.sh
+
+# Define LSB log_* functions.
+. /lib/lsb/init-functions
+
+#
+# Function that starts the daemon/service
+#
+do_start()
+{
+ # Return
+ # 0 if daemon has been started
+ # 1 if daemon was already running
+ # 2 if daemon could not be started
+ start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
+ || return 1
+ start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --background --make-pidfile -- -n \
+ || return 2
+}
+
+#
+# Function that stops the daemon/service
+#
+do_stop()
+{
+ # Return
+ # 0 if daemon has been stopped
+ # 1 if daemon was already stopped
+ # 2 if daemon could not be stopped
+ # other if a failure occurred
+ start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
+ [ "$?" = 2 ] && return 2
+ start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
+ RETVAL=$?
+ [ "$RETVAL" = 2 ] && return 2
+ # Many daemons don't delete their pidfiles when they exit.
+ rm -f $PIDFILE
+ return "$RETVAL"
+}
+
+case "$1" in
+ start)
+ [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
+ do_start
+ case "$?" in
+ 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
+ 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
+ esac
+ ;;
+ stop)
+ [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
+ do_stop
+ case "$?" in
+ 0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
+ 2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
+ esac
+ ;;
+ status)
+ status_of_proc -p "$PIDFILE" "$DAEMON" "$NAME"
+ ;;
+ restart|force-reload)
+ log_daemon_msg "Restarting $DESC" "$NAME"
+ do_stop
+ case "$?" in
+ 0|1)
+ do_start
+ case "$?" in
+ 0) log_end_msg 0 ;;
+ 1) log_end_msg 1 ;; # Old process is still running
+ *) log_end_msg 1 ;; # Failed to start
+ esac
+ ;;
+ *)
+ # Failed to stop
+ log_end_msg 1
+ ;;
+ esac
+ ;;
+ *)
+ echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
+ exit 3
+ ;;
+esac
+
+:
diff --git a/debian/hyperv-daemons.hv-vss-daemon.service b/debian/hyperv-daemons.hv-vss-daemon.service
new file mode 100644
index 000000000..fd3fd6dcd
--- /dev/null
+++ b/debian/hyperv-daemons.hv-vss-daemon.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Hyper-V volume shadow copy service (VSS) daemon
+Conflicts=hyperv-daemons.hv-vss-daemon.service
+BindsTo=sys-devices-virtual-misc-vmbus\x21hv_vss.device
+
+[Service]
+ExecStart=/usr/sbin/hv_vss_daemon -n
+
+[Install]
+WantedBy=multi-user.target
diff --git a/debian/hyperv-daemons.maintscript b/debian/hyperv-daemons.maintscript
new file mode 100644
index 000000000..a2f28e467
--- /dev/null
+++ b/debian/hyperv-daemons.maintscript
@@ -0,0 +1,3 @@
+mv_conffile /etc/init.d/hyperv-daemons.hv-fcopy-daemon /etc/init.d/hv-fcopy-daemon 5.8~rc7-1~exp1
+mv_conffile /etc/init.d/hyperv-daemons.hv-kvp-daemon /etc/init.d/hv-kvp-daemon 5.8~rc7-1~exp1
+mv_conffile /etc/init.d/hyperv-daemons.hv-vss-daemon /etc/init.d/hv-vss-daemon 5.8~rc7-1~exp1
diff --git a/debian/hyperv-daemons.postinst b/debian/hyperv-daemons.postinst
new file mode 100755
index 000000000..3573c9c2e
--- /dev/null
+++ b/debian/hyperv-daemons.postinst
@@ -0,0 +1,18 @@
+#!/bin/sh
+set -e
+
+if [ "$1" = "configure" ]; then
+ if [ -d /run/systemd/system ]; then
+ if [ -z "$2" ]; then
+ # On initial install make sure udev notifies systemd
+ udevadm trigger || true
+ else
+ # On upgrade make sure running daemons are restarted
+ systemctl try-restart hv-fcopy-daemon.service hv-kvp-daemon.service hv-vss-daemon.service
+ fi
+ fi
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/hyperv-daemons.preinst b/debian/hyperv-daemons.preinst
new file mode 100755
index 000000000..5810d2946
--- /dev/null
+++ b/debian/hyperv-daemons.preinst
@@ -0,0 +1,17 @@
+#!/bin/sh
+set -e
+
+if [ "$1" = "upgrade" ]; then
+ for i in fcopy kvp vss; do
+ if [ -d /run/systemd/system ]; then
+ systemctl stop hyperv-daemons.hv-$i-daemon.service 2>/dev/null || true
+ fi
+ deb-systemd-helper purge hyperv-daemons.hv-$i-daemon.service || true
+ invoke-rc.d --skip-systemd-native hyperv-daemons.hv-$i-daemon stop || true
+ update-rc.d hyperv-daemons.hv-$i-daemon remove || true
+ done
+fi
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/hyperv-daemons.udev b/debian/hyperv-daemons.udev
new file mode 100644
index 000000000..1daacac69
--- /dev/null
+++ b/debian/hyperv-daemons.udev
@@ -0,0 +1,3 @@
+KERNEL=="vmbus/hv_fcopy", TAG+="systemd", ENV{SYSTEMD_WANTS}+="hv-fcopy-daemon.service"
+KERNEL=="vmbus/hv_kvp", TAG+="systemd", ENV{SYSTEMD_WANTS}+="hv-kvp-daemon.service"
+KERNEL=="vmbus/hv_vss", TAG+="systemd", ENV{SYSTEMD_WANTS}+="hv-vss-daemon.service"
diff --git a/debian/installer/kernel-versions b/debian/installer/kernel-versions
new file mode 100644
index 000000000..62b27f75f
--- /dev/null
+++ b/debian/installer/kernel-versions
@@ -0,0 +1,35 @@
+# arch version flavour installedname suffix build-depends
+alpha - alpha-generic - y -
+amd64 - amd64 - - -
+arm64 - arm64 - - -
+armel - marvell - y -
+armhf - armmp - - -
+hppa - parisc - y -
+hppa - parisc64 - y -
+i386 - 686 - - -
+i386 - 686-pae - - -
+ia64 - itanium - - -
+m68k - m68k - y -
+mips - 4kc-malta - y -
+mips - octeon - y -
+mips64 - 5kc-malta - y -
+mips64 - octeon - y -
+mips64el - 5kc-malta - y -
+mips64el - loongson-3 - y -
+mips64el - octeon - y -
+mips64r6 - mips64r6 - y -
+mips64r6el - mips64r6el - y -
+mipsel - 4kc-malta - y -
+mipsel - loongson-3 - y -
+mipsel - octeon - y -
+mipsr6 - mips32r6 - y -
+mipsr6el - mips32r6el - y -
+powerpc - powerpc - - -
+powerpc - powerpc64 - - -
+ppc64 - powerpc64 - - -
+ppc64el - powerpc64le - - -
+riscv64 - riscv64 - - -
+s390x - s390x - - -
+sh4 - sh7751r - y -
+sh4 - sh7785lcr - y -
+sparc64 - sparc64 - - -
diff --git a/debian/installer/modules/acpi-modules b/debian/installer/modules/acpi-modules
new file mode 100644
index 000000000..d4723a10b
--- /dev/null
+++ b/debian/installer/modules/acpi-modules
@@ -0,0 +1,2 @@
+fan
+thermal
diff --git a/debian/installer/modules/affs-modules b/debian/installer/modules/affs-modules
new file mode 100644
index 000000000..ac2825911
--- /dev/null
+++ b/debian/installer/modules/affs-modules
@@ -0,0 +1 @@
+affs
diff --git a/debian/installer/modules/alpha-generic/ata-modules b/debian/installer/modules/alpha-generic/ata-modules
new file mode 100644
index 000000000..b81c0f38b
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/ata-modules
@@ -0,0 +1 @@
+#include <ata-modules>
diff --git a/debian/installer/modules/alpha-generic/btrfs-modules b/debian/installer/modules/alpha-generic/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/alpha-generic/cdrom-core-modules b/debian/installer/modules/alpha-generic/cdrom-core-modules
new file mode 100644
index 000000000..3ff69b48f
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/cdrom-core-modules
@@ -0,0 +1 @@
+#include <cdrom-core-modules>
diff --git a/debian/installer/modules/alpha-generic/crc-modules b/debian/installer/modules/alpha-generic/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/alpha-generic/crypto-dm-modules b/debian/installer/modules/alpha-generic/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/alpha-generic/crypto-modules b/debian/installer/modules/alpha-generic/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/alpha-generic/event-modules b/debian/installer/modules/alpha-generic/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/alpha-generic/ext4-modules b/debian/installer/modules/alpha-generic/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/alpha-generic/f2fs-modules b/debian/installer/modules/alpha-generic/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/alpha-generic/fat-modules b/debian/installer/modules/alpha-generic/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/alpha-generic/fb-modules b/debian/installer/modules/alpha-generic/fb-modules
new file mode 100644
index 000000000..aba524d90
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/fb-modules
@@ -0,0 +1 @@
+#include <fb-modules>
diff --git a/debian/installer/modules/alpha-generic/fuse-modules b/debian/installer/modules/alpha-generic/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/alpha-generic/i2c-modules b/debian/installer/modules/alpha-generic/i2c-modules
new file mode 100644
index 000000000..203a607e7
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/i2c-modules
@@ -0,0 +1 @@
+#include <i2c-modules>
diff --git a/debian/installer/modules/alpha-generic/input-modules b/debian/installer/modules/alpha-generic/input-modules
new file mode 100644
index 000000000..5ecb595a4
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/input-modules
@@ -0,0 +1 @@
+#include <input-modules>
diff --git a/debian/installer/modules/alpha-generic/isofs-modules b/debian/installer/modules/alpha-generic/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/alpha-generic/jfs-modules b/debian/installer/modules/alpha-generic/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/alpha-generic/kernel-image b/debian/installer/modules/alpha-generic/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/alpha-generic/loop-modules b/debian/installer/modules/alpha-generic/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/alpha-generic/md-modules b/debian/installer/modules/alpha-generic/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/alpha-generic/mouse-modules b/debian/installer/modules/alpha-generic/mouse-modules
new file mode 100644
index 000000000..15fcb00ea
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/mouse-modules
@@ -0,0 +1 @@
+#include <mouse-modules>
diff --git a/debian/installer/modules/alpha-generic/multipath-modules b/debian/installer/modules/alpha-generic/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/alpha-generic/nbd-modules b/debian/installer/modules/alpha-generic/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/alpha-generic/nic-modules b/debian/installer/modules/alpha-generic/nic-modules
new file mode 100644
index 000000000..2512e8395
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/nic-modules
@@ -0,0 +1 @@
+#include <nic-modules>
diff --git a/debian/installer/modules/alpha-generic/nic-pcmcia-modules b/debian/installer/modules/alpha-generic/nic-pcmcia-modules
new file mode 100644
index 000000000..7a0702cd5
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/nic-pcmcia-modules
@@ -0,0 +1 @@
+#include <nic-pcmcia-modules>
diff --git a/debian/installer/modules/alpha-generic/nic-shared-modules b/debian/installer/modules/alpha-generic/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/alpha-generic/nic-usb-modules b/debian/installer/modules/alpha-generic/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/alpha-generic/nic-wireless-modules b/debian/installer/modules/alpha-generic/nic-wireless-modules
new file mode 100644
index 000000000..53fd18d7f
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/nic-wireless-modules
@@ -0,0 +1 @@
+#include <nic-wireless-modules>
diff --git a/debian/installer/modules/alpha-generic/pata-modules b/debian/installer/modules/alpha-generic/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/alpha-generic/pcmcia-modules b/debian/installer/modules/alpha-generic/pcmcia-modules
new file mode 100644
index 000000000..2bb5350fe
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/pcmcia-modules
@@ -0,0 +1 @@
+#include <pcmcia-modules>
diff --git a/debian/installer/modules/alpha-generic/ppp-modules b/debian/installer/modules/alpha-generic/ppp-modules
new file mode 100644
index 000000000..1f26aa1ee
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/alpha-generic/sata-modules b/debian/installer/modules/alpha-generic/sata-modules
new file mode 100644
index 000000000..01318c258
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/sata-modules
@@ -0,0 +1 @@
+#include <sata-modules>
diff --git a/debian/installer/modules/alpha-generic/scsi-core-modules b/debian/installer/modules/alpha-generic/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/alpha-generic/scsi-modules b/debian/installer/modules/alpha-generic/scsi-modules
new file mode 100644
index 000000000..8909dfb79
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/scsi-modules
@@ -0,0 +1 @@
+#include <scsi-modules>
diff --git a/debian/installer/modules/alpha-generic/scsi-nic-modules b/debian/installer/modules/alpha-generic/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/alpha-generic/serial-modules b/debian/installer/modules/alpha-generic/serial-modules
new file mode 100644
index 000000000..6ab8b8c35
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/serial-modules
@@ -0,0 +1 @@
+#include <serial-modules>
diff --git a/debian/installer/modules/alpha-generic/squashfs-modules b/debian/installer/modules/alpha-generic/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/alpha-generic/srm-modules b/debian/installer/modules/alpha-generic/srm-modules
new file mode 100644
index 000000000..016011997
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/srm-modules
@@ -0,0 +1 @@
+srm_env
diff --git a/debian/installer/modules/alpha-generic/usb-modules b/debian/installer/modules/alpha-generic/usb-modules
new file mode 100644
index 000000000..c598dedd8
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/usb-modules
@@ -0,0 +1 @@
+#include <usb-modules>
diff --git a/debian/installer/modules/alpha-generic/usb-serial-modules b/debian/installer/modules/alpha-generic/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/alpha-generic/usb-storage-modules b/debian/installer/modules/alpha-generic/usb-storage-modules
new file mode 100644
index 000000000..8c5e81b55
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/usb-storage-modules
@@ -0,0 +1 @@
+#include <usb-storage-modules>
diff --git a/debian/installer/modules/alpha-generic/xfs-modules b/debian/installer/modules/alpha-generic/xfs-modules
new file mode 100644
index 000000000..98374e2bb
--- /dev/null
+++ b/debian/installer/modules/alpha-generic/xfs-modules
@@ -0,0 +1 @@
+#include <xfs-modules>
diff --git a/debian/installer/modules/amd64/acpi-modules b/debian/installer/modules/amd64/acpi-modules
new file mode 100644
index 000000000..307528fb1
--- /dev/null
+++ b/debian/installer/modules/amd64/acpi-modules
@@ -0,0 +1,2 @@
+#include <acpi-modules>
+
diff --git a/debian/installer/modules/amd64/ata-modules b/debian/installer/modules/amd64/ata-modules
new file mode 100644
index 000000000..9409e7cde
--- /dev/null
+++ b/debian/installer/modules/amd64/ata-modules
@@ -0,0 +1,2 @@
+#include <ata-modules>
+
diff --git a/debian/installer/modules/amd64/btrfs-modules b/debian/installer/modules/amd64/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/amd64/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/amd64/cdrom-core-modules b/debian/installer/modules/amd64/cdrom-core-modules
new file mode 100644
index 000000000..e264d7aa3
--- /dev/null
+++ b/debian/installer/modules/amd64/cdrom-core-modules
@@ -0,0 +1,2 @@
+#include <cdrom-core-modules>
+
diff --git a/debian/installer/modules/amd64/crc-modules b/debian/installer/modules/amd64/crc-modules
new file mode 100644
index 000000000..191b9dfa8
--- /dev/null
+++ b/debian/installer/modules/amd64/crc-modules
@@ -0,0 +1,2 @@
+#include <crc-modules>
+crc32_pclmul
diff --git a/debian/installer/modules/amd64/crypto-dm-modules b/debian/installer/modules/amd64/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/amd64/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/amd64/crypto-modules b/debian/installer/modules/amd64/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/amd64/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/amd64/efi-modules b/debian/installer/modules/amd64/efi-modules
new file mode 100644
index 000000000..e1dc05e8f
--- /dev/null
+++ b/debian/installer/modules/amd64/efi-modules
@@ -0,0 +1 @@
+#include <efi-modules>
diff --git a/debian/installer/modules/amd64/event-modules b/debian/installer/modules/amd64/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/amd64/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/amd64/ext4-modules b/debian/installer/modules/amd64/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/amd64/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/amd64/f2fs-modules b/debian/installer/modules/amd64/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/amd64/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/amd64/fat-modules b/debian/installer/modules/amd64/fat-modules
new file mode 100644
index 000000000..cce8fd30c
--- /dev/null
+++ b/debian/installer/modules/amd64/fat-modules
@@ -0,0 +1,2 @@
+#include <fat-modules>
+
diff --git a/debian/installer/modules/amd64/fb-modules b/debian/installer/modules/amd64/fb-modules
new file mode 100644
index 000000000..8e9892fea
--- /dev/null
+++ b/debian/installer/modules/amd64/fb-modules
@@ -0,0 +1,4 @@
+#include <fb-modules>
+
+vesafb ?
+vga16fb
diff --git a/debian/installer/modules/amd64/firewire-core-modules b/debian/installer/modules/amd64/firewire-core-modules
new file mode 100644
index 000000000..dcac80af9
--- /dev/null
+++ b/debian/installer/modules/amd64/firewire-core-modules
@@ -0,0 +1 @@
+#include <firewire-core-modules>
diff --git a/debian/installer/modules/amd64/fuse-modules b/debian/installer/modules/amd64/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/amd64/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/amd64/i2c-modules b/debian/installer/modules/amd64/i2c-modules
new file mode 100644
index 000000000..203a607e7
--- /dev/null
+++ b/debian/installer/modules/amd64/i2c-modules
@@ -0,0 +1 @@
+#include <i2c-modules>
diff --git a/debian/installer/modules/amd64/input-modules b/debian/installer/modules/amd64/input-modules
new file mode 100644
index 000000000..5ecb595a4
--- /dev/null
+++ b/debian/installer/modules/amd64/input-modules
@@ -0,0 +1 @@
+#include <input-modules>
diff --git a/debian/installer/modules/amd64/isofs-modules b/debian/installer/modules/amd64/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/amd64/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/amd64/jfs-modules b/debian/installer/modules/amd64/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/amd64/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/amd64/kernel-image b/debian/installer/modules/amd64/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/amd64/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/amd64/loop-modules b/debian/installer/modules/amd64/loop-modules
new file mode 100644
index 000000000..164467713
--- /dev/null
+++ b/debian/installer/modules/amd64/loop-modules
@@ -0,0 +1,2 @@
+#include <loop-modules>
+
diff --git a/debian/installer/modules/amd64/md-modules b/debian/installer/modules/amd64/md-modules
new file mode 100644
index 000000000..ade088ddb
--- /dev/null
+++ b/debian/installer/modules/amd64/md-modules
@@ -0,0 +1,2 @@
+#include <md-modules>
+
diff --git a/debian/installer/modules/amd64/mmc-core-modules b/debian/installer/modules/amd64/mmc-core-modules
new file mode 100644
index 000000000..7bf38465c
--- /dev/null
+++ b/debian/installer/modules/amd64/mmc-core-modules
@@ -0,0 +1 @@
+#include <mmc-core-modules>
diff --git a/debian/installer/modules/amd64/mmc-modules b/debian/installer/modules/amd64/mmc-modules
new file mode 100644
index 000000000..dadfd5334
--- /dev/null
+++ b/debian/installer/modules/amd64/mmc-modules
@@ -0,0 +1 @@
+#include <mmc-modules>
diff --git a/debian/installer/modules/amd64/mouse-modules b/debian/installer/modules/amd64/mouse-modules
new file mode 100644
index 000000000..15fcb00ea
--- /dev/null
+++ b/debian/installer/modules/amd64/mouse-modules
@@ -0,0 +1 @@
+#include <mouse-modules>
diff --git a/debian/installer/modules/amd64/mtd-core-modules b/debian/installer/modules/amd64/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/amd64/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/amd64/multipath-modules b/debian/installer/modules/amd64/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/amd64/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/amd64/nbd-modules b/debian/installer/modules/amd64/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/amd64/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/amd64/nic-modules b/debian/installer/modules/amd64/nic-modules
new file mode 100644
index 000000000..2512e8395
--- /dev/null
+++ b/debian/installer/modules/amd64/nic-modules
@@ -0,0 +1 @@
+#include <nic-modules>
diff --git a/debian/installer/modules/amd64/nic-pcmcia-modules b/debian/installer/modules/amd64/nic-pcmcia-modules
new file mode 100644
index 000000000..7a0702cd5
--- /dev/null
+++ b/debian/installer/modules/amd64/nic-pcmcia-modules
@@ -0,0 +1 @@
+#include <nic-pcmcia-modules>
diff --git a/debian/installer/modules/amd64/nic-shared-modules b/debian/installer/modules/amd64/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/amd64/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/amd64/nic-usb-modules b/debian/installer/modules/amd64/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/amd64/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/amd64/nic-wireless-modules b/debian/installer/modules/amd64/nic-wireless-modules
new file mode 100644
index 000000000..53fd18d7f
--- /dev/null
+++ b/debian/installer/modules/amd64/nic-wireless-modules
@@ -0,0 +1 @@
+#include <nic-wireless-modules>
diff --git a/debian/installer/modules/amd64/pata-modules b/debian/installer/modules/amd64/pata-modules
new file mode 100644
index 000000000..8c4e514ae
--- /dev/null
+++ b/debian/installer/modules/amd64/pata-modules
@@ -0,0 +1,2 @@
+#include <pata-modules>
+
diff --git a/debian/installer/modules/amd64/pcmcia-modules b/debian/installer/modules/amd64/pcmcia-modules
new file mode 100644
index 000000000..2bb5350fe
--- /dev/null
+++ b/debian/installer/modules/amd64/pcmcia-modules
@@ -0,0 +1 @@
+#include <pcmcia-modules>
diff --git a/debian/installer/modules/amd64/pcmcia-storage-modules b/debian/installer/modules/amd64/pcmcia-storage-modules
new file mode 100644
index 000000000..f73ae5bb9
--- /dev/null
+++ b/debian/installer/modules/amd64/pcmcia-storage-modules
@@ -0,0 +1 @@
+#include <pcmcia-storage-modules>
diff --git a/debian/installer/modules/amd64/ppp-modules b/debian/installer/modules/amd64/ppp-modules
new file mode 100644
index 000000000..f1ae9b3d1
--- /dev/null
+++ b/debian/installer/modules/amd64/ppp-modules
@@ -0,0 +1,2 @@
+#include <ppp-modules>
+
diff --git a/debian/installer/modules/amd64/rfkill-modules b/debian/installer/modules/amd64/rfkill-modules
new file mode 100644
index 000000000..77a2245ce
--- /dev/null
+++ b/debian/installer/modules/amd64/rfkill-modules
@@ -0,0 +1 @@
+#include <rfkill-modules>
diff --git a/debian/installer/modules/amd64/sata-modules b/debian/installer/modules/amd64/sata-modules
new file mode 100644
index 000000000..01318c258
--- /dev/null
+++ b/debian/installer/modules/amd64/sata-modules
@@ -0,0 +1 @@
+#include <sata-modules>
diff --git a/debian/installer/modules/amd64/scsi-core-modules b/debian/installer/modules/amd64/scsi-core-modules
new file mode 100644
index 000000000..778a022fa
--- /dev/null
+++ b/debian/installer/modules/amd64/scsi-core-modules
@@ -0,0 +1,4 @@
+#include <scsi-core-modules>
+
+# Needed by hv_storvsc in hyperv-modules as well as scsi-modules
+scsi_transport_fc
diff --git a/debian/installer/modules/amd64/scsi-modules b/debian/installer/modules/amd64/scsi-modules
new file mode 100644
index 000000000..9b1fa27b9
--- /dev/null
+++ b/debian/installer/modules/amd64/scsi-modules
@@ -0,0 +1,3 @@
+#include <scsi-modules>
+# To support nvme
+vmd
diff --git a/debian/installer/modules/amd64/scsi-nic-modules b/debian/installer/modules/amd64/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/amd64/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/amd64/serial-modules b/debian/installer/modules/amd64/serial-modules
new file mode 100644
index 000000000..6ab8b8c35
--- /dev/null
+++ b/debian/installer/modules/amd64/serial-modules
@@ -0,0 +1 @@
+#include <serial-modules>
diff --git a/debian/installer/modules/amd64/sound-modules b/debian/installer/modules/amd64/sound-modules
new file mode 100644
index 000000000..68395ab3d
--- /dev/null
+++ b/debian/installer/modules/amd64/sound-modules
@@ -0,0 +1 @@
+#include <sound-modules>
diff --git a/debian/installer/modules/amd64/speakup-modules b/debian/installer/modules/amd64/speakup-modules
new file mode 100644
index 000000000..29592721a
--- /dev/null
+++ b/debian/installer/modules/amd64/speakup-modules
@@ -0,0 +1 @@
+#include <speakup-modules>
diff --git a/debian/installer/modules/amd64/squashfs-modules b/debian/installer/modules/amd64/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/amd64/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/amd64/udf-modules b/debian/installer/modules/amd64/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/amd64/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/amd64/uinput-modules b/debian/installer/modules/amd64/uinput-modules
new file mode 100644
index 000000000..58a833779
--- /dev/null
+++ b/debian/installer/modules/amd64/uinput-modules
@@ -0,0 +1 @@
+#include <uinput-modules>
diff --git a/debian/installer/modules/amd64/usb-modules b/debian/installer/modules/amd64/usb-modules
new file mode 100644
index 000000000..c598dedd8
--- /dev/null
+++ b/debian/installer/modules/amd64/usb-modules
@@ -0,0 +1 @@
+#include <usb-modules>
diff --git a/debian/installer/modules/amd64/usb-serial-modules b/debian/installer/modules/amd64/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/amd64/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/amd64/usb-storage-modules b/debian/installer/modules/amd64/usb-storage-modules
new file mode 100644
index 000000000..272d95e2e
--- /dev/null
+++ b/debian/installer/modules/amd64/usb-storage-modules
@@ -0,0 +1,2 @@
+#include <usb-storage-modules>
+
diff --git a/debian/installer/modules/amd64/xfs-modules b/debian/installer/modules/amd64/xfs-modules
new file mode 100644
index 000000000..c020b5d39
--- /dev/null
+++ b/debian/installer/modules/amd64/xfs-modules
@@ -0,0 +1,2 @@
+#include <xfs-modules>
+
diff --git a/debian/installer/modules/arm64/ata-modules b/debian/installer/modules/arm64/ata-modules
new file mode 100644
index 000000000..9409e7cde
--- /dev/null
+++ b/debian/installer/modules/arm64/ata-modules
@@ -0,0 +1,2 @@
+#include <ata-modules>
+
diff --git a/debian/installer/modules/arm64/btrfs-modules b/debian/installer/modules/arm64/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/arm64/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/arm64/cdrom-core-modules b/debian/installer/modules/arm64/cdrom-core-modules
new file mode 100644
index 000000000..e264d7aa3
--- /dev/null
+++ b/debian/installer/modules/arm64/cdrom-core-modules
@@ -0,0 +1,2 @@
+#include <cdrom-core-modules>
+
diff --git a/debian/installer/modules/arm64/crc-modules b/debian/installer/modules/arm64/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/arm64/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/arm64/crypto-dm-modules b/debian/installer/modules/arm64/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/arm64/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/arm64/crypto-modules b/debian/installer/modules/arm64/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/arm64/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/arm64/efi-modules b/debian/installer/modules/arm64/efi-modules
new file mode 100644
index 000000000..e1dc05e8f
--- /dev/null
+++ b/debian/installer/modules/arm64/efi-modules
@@ -0,0 +1 @@
+#include <efi-modules>
diff --git a/debian/installer/modules/arm64/event-modules b/debian/installer/modules/arm64/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/arm64/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/arm64/ext4-modules b/debian/installer/modules/arm64/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/arm64/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/arm64/f2fs-modules b/debian/installer/modules/arm64/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/arm64/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/arm64/fat-modules b/debian/installer/modules/arm64/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/arm64/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/arm64/fb-modules b/debian/installer/modules/arm64/fb-modules
new file mode 100644
index 000000000..f3a9e165b
--- /dev/null
+++ b/debian/installer/modules/arm64/fb-modules
@@ -0,0 +1,20 @@
+#include <fb-modules>
+
+ast
+tegra-drm
+rockchipdrm
+hibmc-drm
+
+# For panel/backlight on some chromeos devices
+panel-simple
+pwm_bl
+pwm-cros-ec
+
+# For panel/backlight on Pinebook
+analogix-anx6345
+pwm-sun4i
+sun4i-drm
+sun8i-mixer
+
+# For panel/backlight on Pinebook Pro
+pwm-rockchip
diff --git a/debian/installer/modules/arm64/fuse-modules b/debian/installer/modules/arm64/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/arm64/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/arm64/i2c-modules b/debian/installer/modules/arm64/i2c-modules
new file mode 100644
index 000000000..da7c94938
--- /dev/null
+++ b/debian/installer/modules/arm64/i2c-modules
@@ -0,0 +1,4 @@
+#include <i2c-modules>
+i2c-tegra
+i2c-rk3x
+i2c-mv64xxx
diff --git a/debian/installer/modules/arm64/input-modules b/debian/installer/modules/arm64/input-modules
new file mode 100644
index 000000000..5ecb595a4
--- /dev/null
+++ b/debian/installer/modules/arm64/input-modules
@@ -0,0 +1 @@
+#include <input-modules>
diff --git a/debian/installer/modules/arm64/isofs-modules b/debian/installer/modules/arm64/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/arm64/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/arm64/jfs-modules b/debian/installer/modules/arm64/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/arm64/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/arm64/kernel-image b/debian/installer/modules/arm64/kernel-image
new file mode 100644
index 000000000..22ea2ebd3
--- /dev/null
+++ b/debian/installer/modules/arm64/kernel-image
@@ -0,0 +1,37 @@
+#include <kernel-image>
+
+# Multifunction devices
+drivers/mfd/**
+
+# Regulators
+drivers/regulator/**
+
+# NIC,sata, and USB on Armada 8K
+phy-mvebu-cp110-comphy ?
+
+# SoC modules
+drivers/soc/**
+
+# Watchdog needed for reboot
+sunxi_wdt ?
+
+# For Turris MOX (u-boot enables the watchdog)
+armada_37xx_wdt ?
+
+# SPI devices
+drivers/spi/**
+
+# For cros_ec mfd device
+cros_ec_spi ?
+
+# PCIe PHYs
+phy-rockchip-pcie ?
+
+# For spi-rockchip
+pl330 ?
+
+# Regulator-SoC synchronization
+rockchip-io-domain ?
+
+# Pin controllers
+drivers/pinctrl/**
diff --git a/debian/installer/modules/arm64/leds-modules b/debian/installer/modules/arm64/leds-modules
new file mode 100644
index 000000000..85d9f2565
--- /dev/null
+++ b/debian/installer/modules/arm64/leds-modules
@@ -0,0 +1 @@
+#include <leds-modules>
diff --git a/debian/installer/modules/arm64/loop-modules b/debian/installer/modules/arm64/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/arm64/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/arm64/md-modules b/debian/installer/modules/arm64/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/arm64/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/arm64/mmc-modules b/debian/installer/modules/arm64/mmc-modules
new file mode 100644
index 000000000..c9f12f3b9
--- /dev/null
+++ b/debian/installer/modules/arm64/mmc-modules
@@ -0,0 +1,3 @@
+#include <mmc-modules>
+
+phy-rockchip-emmc
diff --git a/debian/installer/modules/arm64/mtd-core-modules b/debian/installer/modules/arm64/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/arm64/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/arm64/multipath-modules b/debian/installer/modules/arm64/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/arm64/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/arm64/nbd-modules b/debian/installer/modules/arm64/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/arm64/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/arm64/nic-modules b/debian/installer/modules/arm64/nic-modules
new file mode 100644
index 000000000..863652ef7
--- /dev/null
+++ b/debian/installer/modules/arm64/nic-modules
@@ -0,0 +1,2 @@
+#include <nic-modules>
+mdio-bcm-unimac
diff --git a/debian/installer/modules/arm64/nic-shared-modules b/debian/installer/modules/arm64/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/arm64/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/arm64/nic-usb-modules b/debian/installer/modules/arm64/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/arm64/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/arm64/nic-wireless-modules b/debian/installer/modules/arm64/nic-wireless-modules
new file mode 100644
index 000000000..53fd18d7f
--- /dev/null
+++ b/debian/installer/modules/arm64/nic-wireless-modules
@@ -0,0 +1 @@
+#include <nic-wireless-modules>
diff --git a/debian/installer/modules/arm64/ppp-modules b/debian/installer/modules/arm64/ppp-modules
new file mode 100644
index 000000000..1f26aa1ee
--- /dev/null
+++ b/debian/installer/modules/arm64/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/arm64/sata-modules b/debian/installer/modules/arm64/sata-modules
new file mode 100644
index 000000000..740a93c36
--- /dev/null
+++ b/debian/installer/modules/arm64/sata-modules
@@ -0,0 +1,4 @@
+#include <sata-modules>
+phy-qcom-apq8064-sata
+phy-qcom-ipq806x-sata
+phy-xgene
diff --git a/debian/installer/modules/arm64/scsi-core-modules b/debian/installer/modules/arm64/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/arm64/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/arm64/scsi-modules b/debian/installer/modules/arm64/scsi-modules
new file mode 100644
index 000000000..8909dfb79
--- /dev/null
+++ b/debian/installer/modules/arm64/scsi-modules
@@ -0,0 +1 @@
+#include <scsi-modules>
diff --git a/debian/installer/modules/arm64/scsi-nic-modules b/debian/installer/modules/arm64/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/arm64/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/arm64/squashfs-modules b/debian/installer/modules/arm64/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/arm64/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/arm64/udf-modules b/debian/installer/modules/arm64/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/arm64/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/arm64/uinput-modules b/debian/installer/modules/arm64/uinput-modules
new file mode 100644
index 000000000..58a833779
--- /dev/null
+++ b/debian/installer/modules/arm64/uinput-modules
@@ -0,0 +1 @@
+#include <uinput-modules>
diff --git a/debian/installer/modules/arm64/usb-modules b/debian/installer/modules/arm64/usb-modules
new file mode 100644
index 000000000..2461e61f3
--- /dev/null
+++ b/debian/installer/modules/arm64/usb-modules
@@ -0,0 +1,11 @@
+#include <usb-modules>
+dwc2
+dwc3
+usb3503
+phy-rockchip-typec
+extcon-usbc-cros-ec
+
+# For USB-C on Pinebook Pro
+fusb302
+tcpm
+typec
diff --git a/debian/installer/modules/arm64/usb-serial-modules b/debian/installer/modules/arm64/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/arm64/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/arm64/usb-storage-modules b/debian/installer/modules/arm64/usb-storage-modules
new file mode 100644
index 000000000..8c5e81b55
--- /dev/null
+++ b/debian/installer/modules/arm64/usb-storage-modules
@@ -0,0 +1 @@
+#include <usb-storage-modules>
diff --git a/debian/installer/modules/arm64/xfs-modules b/debian/installer/modules/arm64/xfs-modules
new file mode 100644
index 000000000..98374e2bb
--- /dev/null
+++ b/debian/installer/modules/arm64/xfs-modules
@@ -0,0 +1 @@
+#include <xfs-modules>
diff --git a/debian/installer/modules/armel-marvell/btrfs-modules b/debian/installer/modules/armel-marvell/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/armel-marvell/cdrom-core-modules b/debian/installer/modules/armel-marvell/cdrom-core-modules
new file mode 100644
index 000000000..e264d7aa3
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/cdrom-core-modules
@@ -0,0 +1,2 @@
+#include <cdrom-core-modules>
+
diff --git a/debian/installer/modules/armel-marvell/crc-modules b/debian/installer/modules/armel-marvell/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/armel-marvell/crypto-dm-modules b/debian/installer/modules/armel-marvell/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/armel-marvell/crypto-modules b/debian/installer/modules/armel-marvell/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/armel-marvell/event-modules b/debian/installer/modules/armel-marvell/event-modules
new file mode 100644
index 000000000..0bc9f776d
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/event-modules
@@ -0,0 +1,2 @@
+#include <event-modules>
+gpio_keys
diff --git a/debian/installer/modules/armel-marvell/ext4-modules b/debian/installer/modules/armel-marvell/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/armel-marvell/f2fs-modules b/debian/installer/modules/armel-marvell/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/armel-marvell/fat-modules b/debian/installer/modules/armel-marvell/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/armel-marvell/fb-modules b/debian/installer/modules/armel-marvell/fb-modules
new file mode 100644
index 000000000..701ee42c5
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/fb-modules
@@ -0,0 +1 @@
+udlfb
diff --git a/debian/installer/modules/armel-marvell/fuse-modules b/debian/installer/modules/armel-marvell/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/armel-marvell/input-modules b/debian/installer/modules/armel-marvell/input-modules
new file mode 100644
index 000000000..34183581c
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/input-modules
@@ -0,0 +1,3 @@
+#include <input-modules>
+# Moved to event-modules for use in network-console builds
+gpio_keys -
diff --git a/debian/installer/modules/armel-marvell/ipv6-modules b/debian/installer/modules/armel-marvell/ipv6-modules
new file mode 100644
index 000000000..1e3fc3388
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/ipv6-modules
@@ -0,0 +1 @@
+#include <ipv6-modules>
diff --git a/debian/installer/modules/armel-marvell/isofs-modules b/debian/installer/modules/armel-marvell/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/armel-marvell/jffs2-modules b/debian/installer/modules/armel-marvell/jffs2-modules
new file mode 100644
index 000000000..245c7d8a5
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/jffs2-modules
@@ -0,0 +1 @@
+#include <jffs2-modules>
diff --git a/debian/installer/modules/armel-marvell/jfs-modules b/debian/installer/modules/armel-marvell/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/armel-marvell/kernel-image b/debian/installer/modules/armel-marvell/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/armel-marvell/leds-modules b/debian/installer/modules/armel-marvell/leds-modules
new file mode 100644
index 000000000..b18bac13f
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/leds-modules
@@ -0,0 +1,2 @@
+leds-ns2
+leds-netxbig
diff --git a/debian/installer/modules/armel-marvell/loop-modules b/debian/installer/modules/armel-marvell/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/armel-marvell/md-modules b/debian/installer/modules/armel-marvell/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/armel-marvell/minix-modules b/debian/installer/modules/armel-marvell/minix-modules
new file mode 100644
index 000000000..82b984372
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/minix-modules
@@ -0,0 +1 @@
+#include <minix-modules>
diff --git a/debian/installer/modules/armel-marvell/mmc-core-modules b/debian/installer/modules/armel-marvell/mmc-core-modules
new file mode 100644
index 000000000..7bf38465c
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/mmc-core-modules
@@ -0,0 +1 @@
+#include <mmc-core-modules>
diff --git a/debian/installer/modules/armel-marvell/mmc-modules b/debian/installer/modules/armel-marvell/mmc-modules
new file mode 100644
index 000000000..e8c7b46f5
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/mmc-modules
@@ -0,0 +1,2 @@
+#include <mmc-modules>
+mvsdio
diff --git a/debian/installer/modules/armel-marvell/mouse-modules b/debian/installer/modules/armel-marvell/mouse-modules
new file mode 100644
index 000000000..15fcb00ea
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/mouse-modules
@@ -0,0 +1 @@
+#include <mouse-modules>
diff --git a/debian/installer/modules/armel-marvell/mtd-core-modules b/debian/installer/modules/armel-marvell/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/armel-marvell/mtd-modules b/debian/installer/modules/armel-marvell/mtd-modules
new file mode 100644
index 000000000..be36016c9
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/mtd-modules
@@ -0,0 +1,12 @@
+#include <mtd-modules>
+spi-nor
+cfi_probe
+gen_probe
+jedec_probe
+nand
+orion_nand
+ofpart
+mtdblock
+physmap
+cmdlinepart
+spi-orion
diff --git a/debian/installer/modules/armel-marvell/multipath-modules b/debian/installer/modules/armel-marvell/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/armel-marvell/nbd-modules b/debian/installer/modules/armel-marvell/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/armel-marvell/nic-modules b/debian/installer/modules/armel-marvell/nic-modules
new file mode 100644
index 000000000..1a2cdb1fc
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/nic-modules
@@ -0,0 +1,2 @@
+mv643xx_eth
+mvmdio
diff --git a/debian/installer/modules/armel-marvell/nic-shared-modules b/debian/installer/modules/armel-marvell/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/armel-marvell/nic-usb-modules b/debian/installer/modules/armel-marvell/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/armel-marvell/ppp-modules b/debian/installer/modules/armel-marvell/ppp-modules
new file mode 100644
index 000000000..f1ae9b3d1
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/ppp-modules
@@ -0,0 +1,2 @@
+#include <ppp-modules>
+
diff --git a/debian/installer/modules/armel-marvell/sata-modules b/debian/installer/modules/armel-marvell/sata-modules
new file mode 100644
index 000000000..3adbfa16d
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/sata-modules
@@ -0,0 +1,2 @@
+ahci
+sata_mv
diff --git a/debian/installer/modules/armel-marvell/scsi-core-modules b/debian/installer/modules/armel-marvell/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/armel-marvell/squashfs-modules b/debian/installer/modules/armel-marvell/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/armel-marvell/udf-modules b/debian/installer/modules/armel-marvell/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/armel-marvell/uinput-modules b/debian/installer/modules/armel-marvell/uinput-modules
new file mode 100644
index 000000000..58a833779
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/uinput-modules
@@ -0,0 +1 @@
+#include <uinput-modules>
diff --git a/debian/installer/modules/armel-marvell/usb-modules b/debian/installer/modules/armel-marvell/usb-modules
new file mode 100644
index 000000000..772c4afee
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/usb-modules
@@ -0,0 +1,2 @@
+#include <usb-modules>
+ehci-orion
diff --git a/debian/installer/modules/armel-marvell/usb-serial-modules b/debian/installer/modules/armel-marvell/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/armel-marvell/usb-storage-modules b/debian/installer/modules/armel-marvell/usb-storage-modules
new file mode 100644
index 000000000..8c5e81b55
--- /dev/null
+++ b/debian/installer/modules/armel-marvell/usb-storage-modules
@@ -0,0 +1 @@
+#include <usb-storage-modules>
diff --git a/debian/installer/modules/armhf-armmp/ata-modules b/debian/installer/modules/armhf-armmp/ata-modules
new file mode 100644
index 000000000..04d9c8841
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/ata-modules
@@ -0,0 +1 @@
+libata
diff --git a/debian/installer/modules/armhf-armmp/btrfs-modules b/debian/installer/modules/armhf-armmp/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/armhf-armmp/cdrom-core-modules b/debian/installer/modules/armhf-armmp/cdrom-core-modules
new file mode 100644
index 000000000..3ff69b48f
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/cdrom-core-modules
@@ -0,0 +1 @@
+#include <cdrom-core-modules>
diff --git a/debian/installer/modules/armhf-armmp/crc-modules b/debian/installer/modules/armhf-armmp/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/armhf-armmp/crypto-dm-modules b/debian/installer/modules/armhf-armmp/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/armhf-armmp/crypto-modules b/debian/installer/modules/armhf-armmp/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/armhf-armmp/efi-modules b/debian/installer/modules/armhf-armmp/efi-modules
new file mode 100644
index 000000000..e1dc05e8f
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/efi-modules
@@ -0,0 +1 @@
+#include <efi-modules>
diff --git a/debian/installer/modules/armhf-armmp/event-modules b/debian/installer/modules/armhf-armmp/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/armhf-armmp/ext4-modules b/debian/installer/modules/armhf-armmp/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/armhf-armmp/f2fs-modules b/debian/installer/modules/armhf-armmp/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/armhf-armmp/fat-modules b/debian/installer/modules/armhf-armmp/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/armhf-armmp/fb-modules b/debian/installer/modules/armhf-armmp/fb-modules
new file mode 100644
index 000000000..f3d4b2a64
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/fb-modules
@@ -0,0 +1,5 @@
+#include <fb-modules>
+
+imxdrm
+dw_hdmi-imx
+tegra-drm
diff --git a/debian/installer/modules/armhf-armmp/fuse-modules b/debian/installer/modules/armhf-armmp/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/armhf-armmp/i2c-modules b/debian/installer/modules/armhf-armmp/i2c-modules
new file mode 100644
index 000000000..5690c2f51
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/i2c-modules
@@ -0,0 +1,5 @@
+#include <i2c-modules>
+i2c-exynos5
+i2c-mv64xxx
+i2c-rk3x
+
diff --git a/debian/installer/modules/armhf-armmp/input-modules b/debian/installer/modules/armhf-armmp/input-modules
new file mode 100644
index 000000000..5ecb595a4
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/input-modules
@@ -0,0 +1 @@
+#include <input-modules>
diff --git a/debian/installer/modules/armhf-armmp/isofs-modules b/debian/installer/modules/armhf-armmp/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/armhf-armmp/jfs-modules b/debian/installer/modules/armhf-armmp/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/armhf-armmp/kernel-image b/debian/installer/modules/armhf-armmp/kernel-image
new file mode 100644
index 000000000..c089d9a23
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/kernel-image
@@ -0,0 +1,27 @@
+#include <kernel-image>
+
+# Clocks
+clk-palmas ?
+clk-s2mps11 ?
+clk-twl6040 ?
+
+# GPIO
+gpio-da9052 ?
+gpio-pca953x ?
+gpio-mxc ?
+
+# PCIe PHYs
+phy-omap-control ?
+phy-ti-pipe3 ?
+
+# Regulators
+drivers/regulator/**
+
+# Powersupply
+axp20x_usb_power ?
+
+# Watchdog needed for reboot
+sunxi_wdt ?
+
+# Regulator-SoC synchronization
+rockchip-io-domain ?
diff --git a/debian/installer/modules/armhf-armmp/leds-modules b/debian/installer/modules/armhf-armmp/leds-modules
new file mode 100644
index 000000000..85d9f2565
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/leds-modules
@@ -0,0 +1 @@
+#include <leds-modules>
diff --git a/debian/installer/modules/armhf-armmp/loop-modules b/debian/installer/modules/armhf-armmp/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/armhf-armmp/md-modules b/debian/installer/modules/armhf-armmp/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/armhf-armmp/mmc-modules b/debian/installer/modules/armhf-armmp/mmc-modules
new file mode 100644
index 000000000..dadfd5334
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/mmc-modules
@@ -0,0 +1 @@
+#include <mmc-modules>
diff --git a/debian/installer/modules/armhf-armmp/mtd-modules b/debian/installer/modules/armhf-armmp/mtd-modules
new file mode 100644
index 000000000..fb81032ea
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/mtd-modules
@@ -0,0 +1,3 @@
+#include <mtd-modules>
+mxc_nand
+marvell_nand
diff --git a/debian/installer/modules/armhf-armmp/multipath-modules b/debian/installer/modules/armhf-armmp/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/armhf-armmp/nbd-modules b/debian/installer/modules/armhf-armmp/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/armhf-armmp/nic-modules b/debian/installer/modules/armhf-armmp/nic-modules
new file mode 100644
index 000000000..2f94f2d83
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/nic-modules
@@ -0,0 +1,14 @@
+#include <nic-modules>
+mvneta
+mvmdio
+smsc911x
+stmmac
+stmmac-platform
+dwmac-generic
+dwmac-altr-socfpga
+dwmac-sunxi
+sun4i-emac
+xgmac
+ti_cpsw
+davinci_mdio
+mdio-aspeed
diff --git a/debian/installer/modules/armhf-armmp/nic-shared-modules b/debian/installer/modules/armhf-armmp/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/armhf-armmp/nic-usb-modules b/debian/installer/modules/armhf-armmp/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/armhf-armmp/nic-wireless-modules b/debian/installer/modules/armhf-armmp/nic-wireless-modules
new file mode 100644
index 000000000..53fd18d7f
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/nic-wireless-modules
@@ -0,0 +1 @@
+#include <nic-wireless-modules>
diff --git a/debian/installer/modules/armhf-armmp/pata-modules b/debian/installer/modules/armhf-armmp/pata-modules
new file mode 100644
index 000000000..2ff7276d4
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/pata-modules
@@ -0,0 +1 @@
+pata_imx
diff --git a/debian/installer/modules/armhf-armmp/ppp-modules b/debian/installer/modules/armhf-armmp/ppp-modules
new file mode 100644
index 000000000..1f26aa1ee
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/armhf-armmp/sata-modules b/debian/installer/modules/armhf-armmp/sata-modules
new file mode 100644
index 000000000..8e7e1ed2c
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/sata-modules
@@ -0,0 +1,5 @@
+#include <sata-modules>
+sata_highbank
+
+# SATA PHYs
+phy-exynos5250-sata
diff --git a/debian/installer/modules/armhf-armmp/scsi-core-modules b/debian/installer/modules/armhf-armmp/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/armhf-armmp/scsi-modules b/debian/installer/modules/armhf-armmp/scsi-modules
new file mode 100644
index 000000000..675462a14
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/scsi-modules
@@ -0,0 +1,2 @@
+#include <scsi-modules>
+
diff --git a/debian/installer/modules/armhf-armmp/scsi-nic-modules b/debian/installer/modules/armhf-armmp/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/armhf-armmp/squashfs-modules b/debian/installer/modules/armhf-armmp/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/armhf-armmp/udf-modules b/debian/installer/modules/armhf-armmp/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/armhf-armmp/uinput-modules b/debian/installer/modules/armhf-armmp/uinput-modules
new file mode 100644
index 000000000..58a833779
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/uinput-modules
@@ -0,0 +1 @@
+#include <uinput-modules>
diff --git a/debian/installer/modules/armhf-armmp/usb-modules b/debian/installer/modules/armhf-armmp/usb-modules
new file mode 100644
index 000000000..5917b7f79
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/usb-modules
@@ -0,0 +1,4 @@
+#include <usb-modules>
+omap-ocp2scp
+extcon-usb-gpio
+usb3503
diff --git a/debian/installer/modules/armhf-armmp/usb-serial-modules b/debian/installer/modules/armhf-armmp/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/armhf-armmp/usb-storage-modules b/debian/installer/modules/armhf-armmp/usb-storage-modules
new file mode 100644
index 000000000..8c5e81b55
--- /dev/null
+++ b/debian/installer/modules/armhf-armmp/usb-storage-modules
@@ -0,0 +1 @@
+#include <usb-storage-modules>
diff --git a/debian/installer/modules/ata-modules b/debian/installer/modules/ata-modules
new file mode 100644
index 000000000..6ca33ce0a
--- /dev/null
+++ b/debian/installer/modules/ata-modules
@@ -0,0 +1,2 @@
+libata
+ata_generic
diff --git a/debian/installer/modules/btrfs-modules b/debian/installer/modules/btrfs-modules
new file mode 100644
index 000000000..00531f654
--- /dev/null
+++ b/debian/installer/modules/btrfs-modules
@@ -0,0 +1 @@
+btrfs
diff --git a/debian/installer/modules/cdrom-core-modules b/debian/installer/modules/cdrom-core-modules
new file mode 100644
index 000000000..62e5e83a3
--- /dev/null
+++ b/debian/installer/modules/cdrom-core-modules
@@ -0,0 +1,2 @@
+cdrom ?
+sr_mod ?
diff --git a/debian/installer/modules/crc-modules b/debian/installer/modules/crc-modules
new file mode 100644
index 000000000..349f0afcb
--- /dev/null
+++ b/debian/installer/modules/crc-modules
@@ -0,0 +1,7 @@
+crc-ccitt
+libcrc32c
+crc32_generic
+crc32c_generic
+crc-itu-t
+crc16
+crc7 ?
diff --git a/debian/installer/modules/crypto-dm-modules b/debian/installer/modules/crypto-dm-modules
new file mode 100644
index 000000000..189131fc1
--- /dev/null
+++ b/debian/installer/modules/crypto-dm-modules
@@ -0,0 +1 @@
+dm-crypt
diff --git a/debian/installer/modules/crypto-modules b/debian/installer/modules/crypto-modules
new file mode 100644
index 000000000..22460e497
--- /dev/null
+++ b/debian/installer/modules/crypto-modules
@@ -0,0 +1,14 @@
+aes_generic
+blowfish_generic
+twofish_generic
+serpent_generic
+sha256_generic
+arc4 ?
+cbc ?
+ccm
+ctr
+ecb
+xts
+
+# For LUKS2 in cryptsetup
+algif_skcipher
diff --git a/debian/installer/modules/efi-modules b/debian/installer/modules/efi-modules
new file mode 100644
index 000000000..f9ec24485
--- /dev/null
+++ b/debian/installer/modules/efi-modules
@@ -0,0 +1 @@
+efivarfs
diff --git a/debian/installer/modules/event-modules b/debian/installer/modules/event-modules
new file mode 100644
index 000000000..97a5e58aa
--- /dev/null
+++ b/debian/installer/modules/event-modules
@@ -0,0 +1 @@
+evdev
diff --git a/debian/installer/modules/ext4-modules b/debian/installer/modules/ext4-modules
new file mode 100644
index 000000000..610034258
--- /dev/null
+++ b/debian/installer/modules/ext4-modules
@@ -0,0 +1,2 @@
+ext4
+jbd2
diff --git a/debian/installer/modules/f2fs-modules b/debian/installer/modules/f2fs-modules
new file mode 100644
index 000000000..08e5e7fa1
--- /dev/null
+++ b/debian/installer/modules/f2fs-modules
@@ -0,0 +1 @@
+f2fs
diff --git a/debian/installer/modules/fat-modules b/debian/installer/modules/fat-modules
new file mode 100644
index 000000000..0498cf834
--- /dev/null
+++ b/debian/installer/modules/fat-modules
@@ -0,0 +1,6 @@
+fat ?
+vfat
+# the default codepage for fat (as of 2.6.8)
+nls_cp437 ?
+# the default i/o character set for fat (as of 4.7.2-1)
+nls_ascii ?
diff --git a/debian/installer/modules/fb-modules b/debian/installer/modules/fb-modules
new file mode 100644
index 000000000..f17b6e6ae
--- /dev/null
+++ b/debian/installer/modules/fb-modules
@@ -0,0 +1,6 @@
+# We don't include all DRM drivers here as on many platforms we can
+# call system firmware to get hold of a simple framebuffer
+
+drm
+drm_kms_helper
+virtio-gpu ?
diff --git a/debian/installer/modules/firewire-core-modules b/debian/installer/modules/firewire-core-modules
new file mode 100644
index 000000000..bcc31d50a
--- /dev/null
+++ b/debian/installer/modules/firewire-core-modules
@@ -0,0 +1,3 @@
+firewire-core
+firewire-ohci
+firewire-sbp2
diff --git a/debian/installer/modules/fuse-modules b/debian/installer/modules/fuse-modules
new file mode 100644
index 000000000..a517c488f
--- /dev/null
+++ b/debian/installer/modules/fuse-modules
@@ -0,0 +1 @@
+fuse
diff --git a/debian/installer/modules/hfs-modules b/debian/installer/modules/hfs-modules
new file mode 100644
index 000000000..4a311558e
--- /dev/null
+++ b/debian/installer/modules/hfs-modules
@@ -0,0 +1,2 @@
+hfs
+hfsplus
diff --git a/debian/installer/modules/hppa-parisc64/ata-modules b/debian/installer/modules/hppa-parisc64/ata-modules
new file mode 100644
index 000000000..08f295ad2
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/ata-modules
@@ -0,0 +1 @@
+#include "../hppa/ata-modules"
diff --git a/debian/installer/modules/hppa-parisc64/btrfs-modules b/debian/installer/modules/hppa-parisc64/btrfs-modules
new file mode 100644
index 000000000..677b351f7
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/btrfs-modules
@@ -0,0 +1 @@
+#include "../hppa/btrfs-modules"
diff --git a/debian/installer/modules/hppa-parisc64/cdrom-core-modules b/debian/installer/modules/hppa-parisc64/cdrom-core-modules
new file mode 100644
index 000000000..9656269be
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/cdrom-core-modules
@@ -0,0 +1 @@
+#include "../hppa/cdrom-core-modules"
diff --git a/debian/installer/modules/hppa-parisc64/crc-modules b/debian/installer/modules/hppa-parisc64/crc-modules
new file mode 100644
index 000000000..f75e86b30
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/crc-modules
@@ -0,0 +1 @@
+#include "../hppa/crc-modules"
diff --git a/debian/installer/modules/hppa-parisc64/crypto-dm-modules b/debian/installer/modules/hppa-parisc64/crypto-dm-modules
new file mode 100644
index 000000000..ed740a551
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/crypto-dm-modules
@@ -0,0 +1 @@
+#include "../hppa/crypto-dm-modules"
diff --git a/debian/installer/modules/hppa-parisc64/crypto-modules b/debian/installer/modules/hppa-parisc64/crypto-modules
new file mode 100644
index 000000000..1c4d2d0cf
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/crypto-modules
@@ -0,0 +1 @@
+#include "../hppa/crypto-modules"
diff --git a/debian/installer/modules/hppa-parisc64/event-modules b/debian/installer/modules/hppa-parisc64/event-modules
new file mode 100644
index 000000000..1a5cbb04a
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/event-modules
@@ -0,0 +1 @@
+#include "../hppa/event-modules"
diff --git a/debian/installer/modules/hppa-parisc64/ext4-modules b/debian/installer/modules/hppa-parisc64/ext4-modules
new file mode 100644
index 000000000..00920ace1
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/ext4-modules
@@ -0,0 +1 @@
+#include "../hppa/ext4-modules"
diff --git a/debian/installer/modules/hppa-parisc64/f2fs-modules b/debian/installer/modules/hppa-parisc64/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/hppa-parisc64/fat-modules b/debian/installer/modules/hppa-parisc64/fat-modules
new file mode 100644
index 000000000..ef6dd33ff
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/fat-modules
@@ -0,0 +1 @@
+#include "../hppa/fat-modules"
diff --git a/debian/installer/modules/hppa-parisc64/fb-modules b/debian/installer/modules/hppa-parisc64/fb-modules
new file mode 100644
index 000000000..d0424dc9f
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/fb-modules
@@ -0,0 +1,4 @@
+#include <fb-modules>
+
+radeon ?
+ttm ?
diff --git a/debian/installer/modules/hppa-parisc64/fuse-modules b/debian/installer/modules/hppa-parisc64/fuse-modules
new file mode 100644
index 000000000..06f8ccf63
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/fuse-modules
@@ -0,0 +1 @@
+#include "../hppa/fuse-modules"
diff --git a/debian/installer/modules/hppa-parisc64/input-modules b/debian/installer/modules/hppa-parisc64/input-modules
new file mode 100644
index 000000000..cdeaa30fe
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/input-modules
@@ -0,0 +1 @@
+#include "../hppa/input-modules"
diff --git a/debian/installer/modules/hppa-parisc64/isofs-modules b/debian/installer/modules/hppa-parisc64/isofs-modules
new file mode 100644
index 000000000..9e8e2dfb1
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/isofs-modules
@@ -0,0 +1 @@
+#include "../hppa/isofs-modules"
diff --git a/debian/installer/modules/hppa-parisc64/jfs-modules b/debian/installer/modules/hppa-parisc64/jfs-modules
new file mode 100644
index 000000000..a3b6beb7d
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/jfs-modules
@@ -0,0 +1 @@
+#include "../hppa/jfs-modules"
diff --git a/debian/installer/modules/hppa-parisc64/kernel-image b/debian/installer/modules/hppa-parisc64/kernel-image
new file mode 100644
index 000000000..93d59f539
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/kernel-image
@@ -0,0 +1 @@
+#include "../hppa/kernel-image"
diff --git a/debian/installer/modules/hppa-parisc64/loop-modules b/debian/installer/modules/hppa-parisc64/loop-modules
new file mode 100644
index 000000000..721ffecf4
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/loop-modules
@@ -0,0 +1 @@
+#include "../hppa/loop-modules"
diff --git a/debian/installer/modules/hppa-parisc64/md-modules b/debian/installer/modules/hppa-parisc64/md-modules
new file mode 100644
index 000000000..d7e972022
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/md-modules
@@ -0,0 +1 @@
+#include "../hppa/md-modules"
diff --git a/debian/installer/modules/hppa-parisc64/mouse-modules b/debian/installer/modules/hppa-parisc64/mouse-modules
new file mode 100644
index 000000000..f9edf83b0
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/mouse-modules
@@ -0,0 +1 @@
+#include "../hppa/mouse-modules"
diff --git a/debian/installer/modules/hppa-parisc64/multipath-modules b/debian/installer/modules/hppa-parisc64/multipath-modules
new file mode 100644
index 000000000..46f68a37a
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/multipath-modules
@@ -0,0 +1 @@
+#include "../hppa/multipath-modules"
diff --git a/debian/installer/modules/hppa-parisc64/nbd-modules b/debian/installer/modules/hppa-parisc64/nbd-modules
new file mode 100644
index 000000000..b4c4622c7
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/nbd-modules
@@ -0,0 +1 @@
+#include "../hppa/nbd-modules"
diff --git a/debian/installer/modules/hppa-parisc64/nic-modules b/debian/installer/modules/hppa-parisc64/nic-modules
new file mode 100644
index 000000000..e15b2d573
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/nic-modules
@@ -0,0 +1 @@
+#include "../hppa/nic-modules"
diff --git a/debian/installer/modules/hppa-parisc64/nic-shared-modules b/debian/installer/modules/hppa-parisc64/nic-shared-modules
new file mode 100644
index 000000000..fd0b19c80
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/nic-shared-modules
@@ -0,0 +1 @@
+#include "../hppa/nic-shared-modules"
diff --git a/debian/installer/modules/hppa-parisc64/nic-usb-modules b/debian/installer/modules/hppa-parisc64/nic-usb-modules
new file mode 100644
index 000000000..261192d2e
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/nic-usb-modules
@@ -0,0 +1 @@
+#include "../hppa/nic-usb-modules"
diff --git a/debian/installer/modules/hppa-parisc64/pata-modules b/debian/installer/modules/hppa-parisc64/pata-modules
new file mode 100644
index 000000000..46bc71900
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/pata-modules
@@ -0,0 +1 @@
+#include "../hppa/pata-modules"
diff --git a/debian/installer/modules/hppa-parisc64/ppp-modules b/debian/installer/modules/hppa-parisc64/ppp-modules
new file mode 100644
index 000000000..b78085c34
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/ppp-modules
@@ -0,0 +1 @@
+#include "../hppa/ppp-modules"
diff --git a/debian/installer/modules/hppa-parisc64/sata-modules b/debian/installer/modules/hppa-parisc64/sata-modules
new file mode 100644
index 000000000..a2ebc2983
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/sata-modules
@@ -0,0 +1 @@
+#include "../hppa/sata-modules"
diff --git a/debian/installer/modules/hppa-parisc64/scsi-core-modules b/debian/installer/modules/hppa-parisc64/scsi-core-modules
new file mode 100644
index 000000000..ff84a7089
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/scsi-core-modules
@@ -0,0 +1 @@
+#include "../hppa/scsi-core-modules"
diff --git a/debian/installer/modules/hppa-parisc64/scsi-modules b/debian/installer/modules/hppa-parisc64/scsi-modules
new file mode 100644
index 000000000..229e060a8
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/scsi-modules
@@ -0,0 +1 @@
+#include "../hppa/scsi-modules"
diff --git a/debian/installer/modules/hppa-parisc64/serial-modules b/debian/installer/modules/hppa-parisc64/serial-modules
new file mode 100644
index 000000000..a84a550e8
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/serial-modules
@@ -0,0 +1 @@
+#include "../hppa/serial-modules"
diff --git a/debian/installer/modules/hppa-parisc64/squashfs-modules b/debian/installer/modules/hppa-parisc64/squashfs-modules
new file mode 100644
index 000000000..f0c79aa4e
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/squashfs-modules
@@ -0,0 +1 @@
+#include "../hppa/squashfs-modules"
diff --git a/debian/installer/modules/hppa-parisc64/usb-modules b/debian/installer/modules/hppa-parisc64/usb-modules
new file mode 100644
index 000000000..df2abbbd9
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/usb-modules
@@ -0,0 +1 @@
+#include "../hppa/usb-modules"
diff --git a/debian/installer/modules/hppa-parisc64/usb-serial-modules b/debian/installer/modules/hppa-parisc64/usb-serial-modules
new file mode 100644
index 000000000..1dd05036f
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/usb-serial-modules
@@ -0,0 +1 @@
+#include "../hppa/usb-serial-modules"
diff --git a/debian/installer/modules/hppa-parisc64/usb-storage-modules b/debian/installer/modules/hppa-parisc64/usb-storage-modules
new file mode 100644
index 000000000..5562ed4c8
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/usb-storage-modules
@@ -0,0 +1 @@
+#include "../hppa/usb-storage-modules"
diff --git a/debian/installer/modules/hppa-parisc64/xfs-modules b/debian/installer/modules/hppa-parisc64/xfs-modules
new file mode 100644
index 000000000..7960e0bb2
--- /dev/null
+++ b/debian/installer/modules/hppa-parisc64/xfs-modules
@@ -0,0 +1 @@
+#include "../hppa/xfs-modules"
diff --git a/debian/installer/modules/hppa/ata-modules b/debian/installer/modules/hppa/ata-modules
new file mode 100644
index 000000000..b81c0f38b
--- /dev/null
+++ b/debian/installer/modules/hppa/ata-modules
@@ -0,0 +1 @@
+#include <ata-modules>
diff --git a/debian/installer/modules/hppa/btrfs-modules b/debian/installer/modules/hppa/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/hppa/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/hppa/cdrom-core-modules b/debian/installer/modules/hppa/cdrom-core-modules
new file mode 100644
index 000000000..e264d7aa3
--- /dev/null
+++ b/debian/installer/modules/hppa/cdrom-core-modules
@@ -0,0 +1,2 @@
+#include <cdrom-core-modules>
+
diff --git a/debian/installer/modules/hppa/crc-modules b/debian/installer/modules/hppa/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/hppa/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/hppa/crypto-dm-modules b/debian/installer/modules/hppa/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/hppa/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/hppa/crypto-modules b/debian/installer/modules/hppa/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/hppa/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/hppa/event-modules b/debian/installer/modules/hppa/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/hppa/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/hppa/ext4-modules b/debian/installer/modules/hppa/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/hppa/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/hppa/f2fs-modules b/debian/installer/modules/hppa/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/hppa/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/hppa/fat-modules b/debian/installer/modules/hppa/fat-modules
new file mode 100644
index 000000000..cce8fd30c
--- /dev/null
+++ b/debian/installer/modules/hppa/fat-modules
@@ -0,0 +1,2 @@
+#include <fat-modules>
+
diff --git a/debian/installer/modules/hppa/fuse-modules b/debian/installer/modules/hppa/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/hppa/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/hppa/input-modules b/debian/installer/modules/hppa/input-modules
new file mode 100644
index 000000000..9d4cbf6fa
--- /dev/null
+++ b/debian/installer/modules/hppa/input-modules
@@ -0,0 +1,6 @@
+#include <input-modules>
+hil_kbd ?
+hilkbd ?
+hp_sdc_mlc ?
+hil_mlc ?
+hp_sdc ?
diff --git a/debian/installer/modules/hppa/isofs-modules b/debian/installer/modules/hppa/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/hppa/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/hppa/jfs-modules b/debian/installer/modules/hppa/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/hppa/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/hppa/kernel-image b/debian/installer/modules/hppa/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/hppa/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/hppa/loop-modules b/debian/installer/modules/hppa/loop-modules
new file mode 100644
index 000000000..164467713
--- /dev/null
+++ b/debian/installer/modules/hppa/loop-modules
@@ -0,0 +1,2 @@
+#include <loop-modules>
+
diff --git a/debian/installer/modules/hppa/md-modules b/debian/installer/modules/hppa/md-modules
new file mode 100644
index 000000000..ade088ddb
--- /dev/null
+++ b/debian/installer/modules/hppa/md-modules
@@ -0,0 +1,2 @@
+#include <md-modules>
+
diff --git a/debian/installer/modules/hppa/mouse-modules b/debian/installer/modules/hppa/mouse-modules
new file mode 100644
index 000000000..15fcb00ea
--- /dev/null
+++ b/debian/installer/modules/hppa/mouse-modules
@@ -0,0 +1 @@
+#include <mouse-modules>
diff --git a/debian/installer/modules/hppa/multipath-modules b/debian/installer/modules/hppa/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/hppa/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/hppa/nbd-modules b/debian/installer/modules/hppa/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/hppa/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/hppa/nic-modules b/debian/installer/modules/hppa/nic-modules
new file mode 100644
index 000000000..8a4b656c9
--- /dev/null
+++ b/debian/installer/modules/hppa/nic-modules
@@ -0,0 +1,4 @@
+lasi_82596
+tg3
+tulip
+e1000
diff --git a/debian/installer/modules/hppa/nic-shared-modules b/debian/installer/modules/hppa/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/hppa/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/hppa/nic-usb-modules b/debian/installer/modules/hppa/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/hppa/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/hppa/pata-modules b/debian/installer/modules/hppa/pata-modules
new file mode 100644
index 000000000..8c4e514ae
--- /dev/null
+++ b/debian/installer/modules/hppa/pata-modules
@@ -0,0 +1,2 @@
+#include <pata-modules>
+
diff --git a/debian/installer/modules/hppa/ppp-modules b/debian/installer/modules/hppa/ppp-modules
new file mode 100644
index 000000000..f1ae9b3d1
--- /dev/null
+++ b/debian/installer/modules/hppa/ppp-modules
@@ -0,0 +1,2 @@
+#include <ppp-modules>
+
diff --git a/debian/installer/modules/hppa/sata-modules b/debian/installer/modules/hppa/sata-modules
new file mode 100644
index 000000000..071cb860b
--- /dev/null
+++ b/debian/installer/modules/hppa/sata-modules
@@ -0,0 +1,2 @@
+#include <sata-modules>
+
diff --git a/debian/installer/modules/hppa/scsi-core-modules b/debian/installer/modules/hppa/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/hppa/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/hppa/scsi-modules b/debian/installer/modules/hppa/scsi-modules
new file mode 100644
index 000000000..8f289efb8
--- /dev/null
+++ b/debian/installer/modules/hppa/scsi-modules
@@ -0,0 +1,18 @@
+aic79xx
+aic7xxx
+BusLogic ?
+sym53c8xx
+sym53c8xx_2 ?
+53c700
+ch
+lasi700
+sg
+st
+zalon7xx
+megaraid ?
+megaraid_mbox ?
+megaraid_mm ?
+megaraid_sas ?
+qlogicfas408
+mptbase
+mptspi
diff --git a/debian/installer/modules/hppa/serial-modules b/debian/installer/modules/hppa/serial-modules
new file mode 100644
index 000000000..6ab8b8c35
--- /dev/null
+++ b/debian/installer/modules/hppa/serial-modules
@@ -0,0 +1 @@
+#include <serial-modules>
diff --git a/debian/installer/modules/hppa/squashfs-modules b/debian/installer/modules/hppa/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/hppa/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/hppa/usb-modules b/debian/installer/modules/hppa/usb-modules
new file mode 100644
index 000000000..c598dedd8
--- /dev/null
+++ b/debian/installer/modules/hppa/usb-modules
@@ -0,0 +1 @@
+#include <usb-modules>
diff --git a/debian/installer/modules/hppa/usb-serial-modules b/debian/installer/modules/hppa/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/hppa/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/hppa/usb-storage-modules b/debian/installer/modules/hppa/usb-storage-modules
new file mode 100644
index 000000000..272d95e2e
--- /dev/null
+++ b/debian/installer/modules/hppa/usb-storage-modules
@@ -0,0 +1,2 @@
+#include <usb-storage-modules>
+
diff --git a/debian/installer/modules/hppa/xfs-modules b/debian/installer/modules/hppa/xfs-modules
new file mode 100644
index 000000000..98374e2bb
--- /dev/null
+++ b/debian/installer/modules/hppa/xfs-modules
@@ -0,0 +1 @@
+#include <xfs-modules>
diff --git a/debian/installer/modules/i2c-modules b/debian/installer/modules/i2c-modules
new file mode 100644
index 000000000..0c4999fa7
--- /dev/null
+++ b/debian/installer/modules/i2c-modules
@@ -0,0 +1,3 @@
+i2c-core
+i2c-algo-bit
+i2c-designware-platform ?
diff --git a/debian/installer/modules/i386/acpi-modules b/debian/installer/modules/i386/acpi-modules
new file mode 100644
index 000000000..307528fb1
--- /dev/null
+++ b/debian/installer/modules/i386/acpi-modules
@@ -0,0 +1,2 @@
+#include <acpi-modules>
+
diff --git a/debian/installer/modules/i386/ata-modules b/debian/installer/modules/i386/ata-modules
new file mode 100644
index 000000000..9409e7cde
--- /dev/null
+++ b/debian/installer/modules/i386/ata-modules
@@ -0,0 +1,2 @@
+#include <ata-modules>
+
diff --git a/debian/installer/modules/i386/btrfs-modules b/debian/installer/modules/i386/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/i386/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/i386/cdrom-core-modules b/debian/installer/modules/i386/cdrom-core-modules
new file mode 100644
index 000000000..e264d7aa3
--- /dev/null
+++ b/debian/installer/modules/i386/cdrom-core-modules
@@ -0,0 +1,2 @@
+#include <cdrom-core-modules>
+
diff --git a/debian/installer/modules/i386/crc-modules b/debian/installer/modules/i386/crc-modules
new file mode 100644
index 000000000..191b9dfa8
--- /dev/null
+++ b/debian/installer/modules/i386/crc-modules
@@ -0,0 +1,2 @@
+#include <crc-modules>
+crc32_pclmul
diff --git a/debian/installer/modules/i386/crypto-dm-modules b/debian/installer/modules/i386/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/i386/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/i386/crypto-modules b/debian/installer/modules/i386/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/i386/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/i386/efi-modules b/debian/installer/modules/i386/efi-modules
new file mode 100644
index 000000000..e1dc05e8f
--- /dev/null
+++ b/debian/installer/modules/i386/efi-modules
@@ -0,0 +1 @@
+#include <efi-modules>
diff --git a/debian/installer/modules/i386/event-modules b/debian/installer/modules/i386/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/i386/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/i386/ext4-modules b/debian/installer/modules/i386/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/i386/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/i386/f2fs-modules b/debian/installer/modules/i386/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/i386/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/i386/fat-modules b/debian/installer/modules/i386/fat-modules
new file mode 100644
index 000000000..cce8fd30c
--- /dev/null
+++ b/debian/installer/modules/i386/fat-modules
@@ -0,0 +1,2 @@
+#include <fat-modules>
+
diff --git a/debian/installer/modules/i386/fb-modules b/debian/installer/modules/i386/fb-modules
new file mode 100644
index 000000000..9602502af
--- /dev/null
+++ b/debian/installer/modules/i386/fb-modules
@@ -0,0 +1,6 @@
+#include <fb-modules>
+
+lxfb ?
+vesafb ?
+vga16fb
+viafb
diff --git a/debian/installer/modules/i386/firewire-core-modules b/debian/installer/modules/i386/firewire-core-modules
new file mode 100644
index 000000000..dcac80af9
--- /dev/null
+++ b/debian/installer/modules/i386/firewire-core-modules
@@ -0,0 +1 @@
+#include <firewire-core-modules>
diff --git a/debian/installer/modules/i386/fuse-modules b/debian/installer/modules/i386/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/i386/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/i386/i2c-modules b/debian/installer/modules/i386/i2c-modules
new file mode 100644
index 000000000..203a607e7
--- /dev/null
+++ b/debian/installer/modules/i386/i2c-modules
@@ -0,0 +1 @@
+#include <i2c-modules>
diff --git a/debian/installer/modules/i386/input-modules b/debian/installer/modules/i386/input-modules
new file mode 100644
index 000000000..cdba2e4a7
--- /dev/null
+++ b/debian/installer/modules/i386/input-modules
@@ -0,0 +1,5 @@
+#include <input-modules>
+# Needed on some Geode LX boards - Alix2/3/6, Soekris net5501, Traverse GEOS
+# so only built for 586 flavour
+gpio_keys_polled ?
+leds-gpio ?
diff --git a/debian/installer/modules/i386/isofs-modules b/debian/installer/modules/i386/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/i386/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/i386/jfs-modules b/debian/installer/modules/i386/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/i386/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/i386/kernel-image b/debian/installer/modules/i386/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/i386/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/i386/loop-modules b/debian/installer/modules/i386/loop-modules
new file mode 100644
index 000000000..164467713
--- /dev/null
+++ b/debian/installer/modules/i386/loop-modules
@@ -0,0 +1,2 @@
+#include <loop-modules>
+
diff --git a/debian/installer/modules/i386/md-modules b/debian/installer/modules/i386/md-modules
new file mode 100644
index 000000000..ade088ddb
--- /dev/null
+++ b/debian/installer/modules/i386/md-modules
@@ -0,0 +1,2 @@
+#include <md-modules>
+
diff --git a/debian/installer/modules/i386/mmc-core-modules b/debian/installer/modules/i386/mmc-core-modules
new file mode 100644
index 000000000..7bf38465c
--- /dev/null
+++ b/debian/installer/modules/i386/mmc-core-modules
@@ -0,0 +1 @@
+#include <mmc-core-modules>
diff --git a/debian/installer/modules/i386/mmc-modules b/debian/installer/modules/i386/mmc-modules
new file mode 100644
index 000000000..dadfd5334
--- /dev/null
+++ b/debian/installer/modules/i386/mmc-modules
@@ -0,0 +1 @@
+#include <mmc-modules>
diff --git a/debian/installer/modules/i386/mouse-modules b/debian/installer/modules/i386/mouse-modules
new file mode 100644
index 000000000..15fcb00ea
--- /dev/null
+++ b/debian/installer/modules/i386/mouse-modules
@@ -0,0 +1 @@
+#include <mouse-modules>
diff --git a/debian/installer/modules/i386/mtd-core-modules b/debian/installer/modules/i386/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/i386/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/i386/multipath-modules b/debian/installer/modules/i386/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/i386/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/i386/nbd-modules b/debian/installer/modules/i386/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/i386/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/i386/nic-modules b/debian/installer/modules/i386/nic-modules
new file mode 100644
index 000000000..2512e8395
--- /dev/null
+++ b/debian/installer/modules/i386/nic-modules
@@ -0,0 +1 @@
+#include <nic-modules>
diff --git a/debian/installer/modules/i386/nic-pcmcia-modules b/debian/installer/modules/i386/nic-pcmcia-modules
new file mode 100644
index 000000000..7a0702cd5
--- /dev/null
+++ b/debian/installer/modules/i386/nic-pcmcia-modules
@@ -0,0 +1 @@
+#include <nic-pcmcia-modules>
diff --git a/debian/installer/modules/i386/nic-shared-modules b/debian/installer/modules/i386/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/i386/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/i386/nic-usb-modules b/debian/installer/modules/i386/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/i386/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/i386/nic-wireless-modules b/debian/installer/modules/i386/nic-wireless-modules
new file mode 100644
index 000000000..53fd18d7f
--- /dev/null
+++ b/debian/installer/modules/i386/nic-wireless-modules
@@ -0,0 +1 @@
+#include <nic-wireless-modules>
diff --git a/debian/installer/modules/i386/pata-modules b/debian/installer/modules/i386/pata-modules
new file mode 100644
index 000000000..8c4e514ae
--- /dev/null
+++ b/debian/installer/modules/i386/pata-modules
@@ -0,0 +1,2 @@
+#include <pata-modules>
+
diff --git a/debian/installer/modules/i386/pcmcia-modules b/debian/installer/modules/i386/pcmcia-modules
new file mode 100644
index 000000000..2bb5350fe
--- /dev/null
+++ b/debian/installer/modules/i386/pcmcia-modules
@@ -0,0 +1 @@
+#include <pcmcia-modules>
diff --git a/debian/installer/modules/i386/pcmcia-storage-modules b/debian/installer/modules/i386/pcmcia-storage-modules
new file mode 100644
index 000000000..f73ae5bb9
--- /dev/null
+++ b/debian/installer/modules/i386/pcmcia-storage-modules
@@ -0,0 +1 @@
+#include <pcmcia-storage-modules>
diff --git a/debian/installer/modules/i386/ppp-modules b/debian/installer/modules/i386/ppp-modules
new file mode 100644
index 000000000..f1ae9b3d1
--- /dev/null
+++ b/debian/installer/modules/i386/ppp-modules
@@ -0,0 +1,2 @@
+#include <ppp-modules>
+
diff --git a/debian/installer/modules/i386/rfkill-modules b/debian/installer/modules/i386/rfkill-modules
new file mode 100644
index 000000000..77a2245ce
--- /dev/null
+++ b/debian/installer/modules/i386/rfkill-modules
@@ -0,0 +1 @@
+#include <rfkill-modules>
diff --git a/debian/installer/modules/i386/sata-modules b/debian/installer/modules/i386/sata-modules
new file mode 100644
index 000000000..071cb860b
--- /dev/null
+++ b/debian/installer/modules/i386/sata-modules
@@ -0,0 +1,2 @@
+#include <sata-modules>
+
diff --git a/debian/installer/modules/i386/scsi-core-modules b/debian/installer/modules/i386/scsi-core-modules
new file mode 100644
index 000000000..778a022fa
--- /dev/null
+++ b/debian/installer/modules/i386/scsi-core-modules
@@ -0,0 +1,4 @@
+#include <scsi-core-modules>
+
+# Needed by hv_storvsc in hyperv-modules as well as scsi-modules
+scsi_transport_fc
diff --git a/debian/installer/modules/i386/scsi-modules b/debian/installer/modules/i386/scsi-modules
new file mode 100644
index 000000000..8909dfb79
--- /dev/null
+++ b/debian/installer/modules/i386/scsi-modules
@@ -0,0 +1 @@
+#include <scsi-modules>
diff --git a/debian/installer/modules/i386/scsi-nic-modules b/debian/installer/modules/i386/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/i386/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/i386/serial-modules b/debian/installer/modules/i386/serial-modules
new file mode 100644
index 000000000..6ab8b8c35
--- /dev/null
+++ b/debian/installer/modules/i386/serial-modules
@@ -0,0 +1 @@
+#include <serial-modules>
diff --git a/debian/installer/modules/i386/sound-modules b/debian/installer/modules/i386/sound-modules
new file mode 100644
index 000000000..68395ab3d
--- /dev/null
+++ b/debian/installer/modules/i386/sound-modules
@@ -0,0 +1 @@
+#include <sound-modules>
diff --git a/debian/installer/modules/i386/speakup-modules b/debian/installer/modules/i386/speakup-modules
new file mode 100644
index 000000000..29592721a
--- /dev/null
+++ b/debian/installer/modules/i386/speakup-modules
@@ -0,0 +1 @@
+#include <speakup-modules>
diff --git a/debian/installer/modules/i386/squashfs-modules b/debian/installer/modules/i386/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/i386/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/i386/udf-modules b/debian/installer/modules/i386/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/i386/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/i386/uinput-modules b/debian/installer/modules/i386/uinput-modules
new file mode 100644
index 000000000..58a833779
--- /dev/null
+++ b/debian/installer/modules/i386/uinput-modules
@@ -0,0 +1 @@
+#include <uinput-modules>
diff --git a/debian/installer/modules/i386/usb-modules b/debian/installer/modules/i386/usb-modules
new file mode 100644
index 000000000..c598dedd8
--- /dev/null
+++ b/debian/installer/modules/i386/usb-modules
@@ -0,0 +1 @@
+#include <usb-modules>
diff --git a/debian/installer/modules/i386/usb-serial-modules b/debian/installer/modules/i386/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/i386/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/i386/usb-storage-modules b/debian/installer/modules/i386/usb-storage-modules
new file mode 100644
index 000000000..272d95e2e
--- /dev/null
+++ b/debian/installer/modules/i386/usb-storage-modules
@@ -0,0 +1,2 @@
+#include <usb-storage-modules>
+
diff --git a/debian/installer/modules/i386/xfs-modules b/debian/installer/modules/i386/xfs-modules
new file mode 100644
index 000000000..c020b5d39
--- /dev/null
+++ b/debian/installer/modules/i386/xfs-modules
@@ -0,0 +1,2 @@
+#include <xfs-modules>
+
diff --git a/debian/installer/modules/ia64/ata-modules b/debian/installer/modules/ia64/ata-modules
new file mode 100644
index 000000000..b81c0f38b
--- /dev/null
+++ b/debian/installer/modules/ia64/ata-modules
@@ -0,0 +1 @@
+#include <ata-modules>
diff --git a/debian/installer/modules/ia64/btrfs-modules b/debian/installer/modules/ia64/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/ia64/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/ia64/cdrom-core-modules b/debian/installer/modules/ia64/cdrom-core-modules
new file mode 100644
index 000000000..2c6b1565d
--- /dev/null
+++ b/debian/installer/modules/ia64/cdrom-core-modules
@@ -0,0 +1,2 @@
+#include <cdrom-core-modules>
+ide-cd_mod
diff --git a/debian/installer/modules/ia64/crc-modules b/debian/installer/modules/ia64/crc-modules
new file mode 100644
index 000000000..a642ead8b
--- /dev/null
+++ b/debian/installer/modules/ia64/crc-modules
@@ -0,0 +1,2 @@
+#include <crc-modules>
+
diff --git a/debian/installer/modules/ia64/crypto-dm-modules b/debian/installer/modules/ia64/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/ia64/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/ia64/crypto-modules b/debian/installer/modules/ia64/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/ia64/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/ia64/event-modules b/debian/installer/modules/ia64/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/ia64/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/ia64/ext4-modules b/debian/installer/modules/ia64/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/ia64/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/ia64/f2fs-modules b/debian/installer/modules/ia64/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/ia64/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/ia64/fat-modules b/debian/installer/modules/ia64/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/ia64/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/ia64/fb-modules b/debian/installer/modules/ia64/fb-modules
new file mode 100644
index 000000000..1442c89f9
--- /dev/null
+++ b/debian/installer/modules/ia64/fb-modules
@@ -0,0 +1,2 @@
+fbcon ?
+vgastate
diff --git a/debian/installer/modules/ia64/firewire-core-modules b/debian/installer/modules/ia64/firewire-core-modules
new file mode 100644
index 000000000..8e5fff165
--- /dev/null
+++ b/debian/installer/modules/ia64/firewire-core-modules
@@ -0,0 +1,2 @@
+#include <firewire-core-modules>
+
diff --git a/debian/installer/modules/ia64/fuse-modules b/debian/installer/modules/ia64/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/ia64/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/ia64/i2c-modules b/debian/installer/modules/ia64/i2c-modules
new file mode 100644
index 000000000..203a607e7
--- /dev/null
+++ b/debian/installer/modules/ia64/i2c-modules
@@ -0,0 +1 @@
+#include <i2c-modules>
diff --git a/debian/installer/modules/ia64/ide-core-modules b/debian/installer/modules/ia64/ide-core-modules
new file mode 100644
index 000000000..96284d155
--- /dev/null
+++ b/debian/installer/modules/ia64/ide-core-modules
@@ -0,0 +1 @@
+ide-core
diff --git a/debian/installer/modules/ia64/ide-modules b/debian/installer/modules/ia64/ide-modules
new file mode 100644
index 000000000..7fe00c50a
--- /dev/null
+++ b/debian/installer/modules/ia64/ide-modules
@@ -0,0 +1,2 @@
+ide-gd_mod
+trm290
diff --git a/debian/installer/modules/ia64/input-modules b/debian/installer/modules/ia64/input-modules
new file mode 100644
index 000000000..5ecb595a4
--- /dev/null
+++ b/debian/installer/modules/ia64/input-modules
@@ -0,0 +1 @@
+#include <input-modules>
diff --git a/debian/installer/modules/ia64/isofs-modules b/debian/installer/modules/ia64/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/ia64/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/ia64/jfs-modules b/debian/installer/modules/ia64/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/ia64/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/ia64/kernel-image b/debian/installer/modules/ia64/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/ia64/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/ia64/loop-modules b/debian/installer/modules/ia64/loop-modules
new file mode 100644
index 000000000..164467713
--- /dev/null
+++ b/debian/installer/modules/ia64/loop-modules
@@ -0,0 +1,2 @@
+#include <loop-modules>
+
diff --git a/debian/installer/modules/ia64/md-modules b/debian/installer/modules/ia64/md-modules
new file mode 100644
index 000000000..ade088ddb
--- /dev/null
+++ b/debian/installer/modules/ia64/md-modules
@@ -0,0 +1,2 @@
+#include <md-modules>
+
diff --git a/debian/installer/modules/ia64/mouse-modules b/debian/installer/modules/ia64/mouse-modules
new file mode 100644
index 000000000..15fcb00ea
--- /dev/null
+++ b/debian/installer/modules/ia64/mouse-modules
@@ -0,0 +1 @@
+#include <mouse-modules>
diff --git a/debian/installer/modules/ia64/mtd-core-modules b/debian/installer/modules/ia64/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/ia64/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/ia64/multipath-modules b/debian/installer/modules/ia64/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/ia64/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/ia64/nbd-modules b/debian/installer/modules/ia64/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/ia64/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/ia64/nic-modules b/debian/installer/modules/ia64/nic-modules
new file mode 100644
index 000000000..2512e8395
--- /dev/null
+++ b/debian/installer/modules/ia64/nic-modules
@@ -0,0 +1 @@
+#include <nic-modules>
diff --git a/debian/installer/modules/ia64/nic-shared-modules b/debian/installer/modules/ia64/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/ia64/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/ia64/nic-usb-modules b/debian/installer/modules/ia64/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/ia64/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/ia64/pata-modules b/debian/installer/modules/ia64/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/ia64/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/ia64/pcmcia-modules b/debian/installer/modules/ia64/pcmcia-modules
new file mode 100644
index 000000000..d7a54f360
--- /dev/null
+++ b/debian/installer/modules/ia64/pcmcia-modules
@@ -0,0 +1,4 @@
+pcmcia
+pcmcia_core
+pd6729
+rsrc_nonstatic ?
diff --git a/debian/installer/modules/ia64/ppp-modules b/debian/installer/modules/ia64/ppp-modules
new file mode 100644
index 000000000..f1ae9b3d1
--- /dev/null
+++ b/debian/installer/modules/ia64/ppp-modules
@@ -0,0 +1,2 @@
+#include <ppp-modules>
+
diff --git a/debian/installer/modules/ia64/sata-modules b/debian/installer/modules/ia64/sata-modules
new file mode 100644
index 000000000..071cb860b
--- /dev/null
+++ b/debian/installer/modules/ia64/sata-modules
@@ -0,0 +1,2 @@
+#include <sata-modules>
+
diff --git a/debian/installer/modules/ia64/scsi-core-modules b/debian/installer/modules/ia64/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/ia64/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/ia64/scsi-modules b/debian/installer/modules/ia64/scsi-modules
new file mode 100644
index 000000000..8909dfb79
--- /dev/null
+++ b/debian/installer/modules/ia64/scsi-modules
@@ -0,0 +1 @@
+#include <scsi-modules>
diff --git a/debian/installer/modules/ia64/scsi-nic-modules b/debian/installer/modules/ia64/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/ia64/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/ia64/serial-modules b/debian/installer/modules/ia64/serial-modules
new file mode 100644
index 000000000..6ab8b8c35
--- /dev/null
+++ b/debian/installer/modules/ia64/serial-modules
@@ -0,0 +1 @@
+#include <serial-modules>
diff --git a/debian/installer/modules/ia64/squashfs-modules b/debian/installer/modules/ia64/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/ia64/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/ia64/udf-modules b/debian/installer/modules/ia64/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/ia64/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/ia64/uinput-modules b/debian/installer/modules/ia64/uinput-modules
new file mode 100644
index 000000000..58a833779
--- /dev/null
+++ b/debian/installer/modules/ia64/uinput-modules
@@ -0,0 +1 @@
+#include <uinput-modules>
diff --git a/debian/installer/modules/ia64/usb-modules b/debian/installer/modules/ia64/usb-modules
new file mode 100644
index 000000000..c598dedd8
--- /dev/null
+++ b/debian/installer/modules/ia64/usb-modules
@@ -0,0 +1 @@
+#include <usb-modules>
diff --git a/debian/installer/modules/ia64/usb-serial-modules b/debian/installer/modules/ia64/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/ia64/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/ia64/usb-storage-modules b/debian/installer/modules/ia64/usb-storage-modules
new file mode 100644
index 000000000..272d95e2e
--- /dev/null
+++ b/debian/installer/modules/ia64/usb-storage-modules
@@ -0,0 +1,2 @@
+#include <usb-storage-modules>
+
diff --git a/debian/installer/modules/ia64/xfs-modules b/debian/installer/modules/ia64/xfs-modules
new file mode 100644
index 000000000..c020b5d39
--- /dev/null
+++ b/debian/installer/modules/ia64/xfs-modules
@@ -0,0 +1,2 @@
+#include <xfs-modules>
+
diff --git a/debian/installer/modules/input-modules b/debian/installer/modules/input-modules
new file mode 100644
index 000000000..754d740e9
--- /dev/null
+++ b/debian/installer/modules/input-modules
@@ -0,0 +1,44 @@
+# Include HID drivers by default
+drivers/hid/**
+
+# Include keyboards
+drivers/input/keyboard/** ?
+
+# Exclude drivers for anything but keyboard and mouse/trackball/touchpad
+drivers/hid/hid-*ff -
+hid-dr -
+hid-elecom -
+hid-gyration -
+hid-icade -
+hid-lcpower -
+hid-ntrig -
+hid-petalynx -
+hid-picolcd -
+hid-pl -
+hid-prodikeys -
+hid-ps3remote -
+hid-quanta -
+drivers/hid/hid-roccat-ko* -
+hid-roccat-pyra -
+hid-saitek -
+hid-sensor-hub -
+hid-sony -
+hid-tivo -
+hid-twinhan -
+hid-uclogic -
+hid-wacom -
+hid-waltop -
+hid-wiimote -
+hid-zydacron -
+wacom -
+
+# Miscellaneous input drivers
+atmel_mxt_ts ?
+synaptics_usb ?
+wistron_btns ?
+gpio_keys ?
+soc_button_array ?
+hyperv-keyboard ?
+virtio_console ?
+virtio_input ?
+olpc_apsp ?
diff --git a/debian/installer/modules/ipv6-modules b/debian/installer/modules/ipv6-modules
new file mode 100644
index 000000000..13ac34b44
--- /dev/null
+++ b/debian/installer/modules/ipv6-modules
@@ -0,0 +1 @@
+ipv6
diff --git a/debian/installer/modules/isofs-modules b/debian/installer/modules/isofs-modules
new file mode 100644
index 000000000..0f41779b7
--- /dev/null
+++ b/debian/installer/modules/isofs-modules
@@ -0,0 +1 @@
+isofs
diff --git a/debian/installer/modules/jffs2-modules b/debian/installer/modules/jffs2-modules
new file mode 100644
index 000000000..19f4e1094
--- /dev/null
+++ b/debian/installer/modules/jffs2-modules
@@ -0,0 +1 @@
+jffs2
diff --git a/debian/installer/modules/jfs-modules b/debian/installer/modules/jfs-modules
new file mode 100644
index 000000000..aa604c468
--- /dev/null
+++ b/debian/installer/modules/jfs-modules
@@ -0,0 +1 @@
+jfs
diff --git a/debian/installer/modules/kernel-image b/debian/installer/modules/kernel-image
new file mode 100644
index 000000000..9085f7116
--- /dev/null
+++ b/debian/installer/modules/kernel-image
@@ -0,0 +1,29 @@
+af_packet
+bitrev ?
+eeprom_93cx6 ?
+firmware_class
+led-class ?
+mbcache
+mfd-core ?
+nls_base
+# Default I/O charset for most filesystems that do character conversion
+nls_utf8
+thermal_sys ?
+
+# In case they become modular again
+lzo_compress
+lzo_decompress
+zlib_deflate
+zstd_decompress
+
+# Basic paravirtual modules
+hv_utils ?
+hv_vmbus ?
+virtio ?
+virtio_balloon ?
+virtio_mmio ?
+virtio_pci ?
+virtio_ring ?
+
+# The installer generally needs good entropy sources
+drivers/char/hw_random/**
diff --git a/debian/installer/modules/leds-modules b/debian/installer/modules/leds-modules
new file mode 100644
index 000000000..fef2e5303
--- /dev/null
+++ b/debian/installer/modules/leds-modules
@@ -0,0 +1 @@
+leds-gpio
diff --git a/debian/installer/modules/loop-modules b/debian/installer/modules/loop-modules
new file mode 100644
index 000000000..1ef2ddf24
--- /dev/null
+++ b/debian/installer/modules/loop-modules
@@ -0,0 +1 @@
+loop
diff --git a/debian/installer/modules/m68k/affs-modules b/debian/installer/modules/m68k/affs-modules
new file mode 100644
index 000000000..21d616a1c
--- /dev/null
+++ b/debian/installer/modules/m68k/affs-modules
@@ -0,0 +1 @@
+#include <affs-modules>
diff --git a/debian/installer/modules/m68k/ata-modules b/debian/installer/modules/m68k/ata-modules
new file mode 100644
index 000000000..04d9c8841
--- /dev/null
+++ b/debian/installer/modules/m68k/ata-modules
@@ -0,0 +1 @@
+libata
diff --git a/debian/installer/modules/m68k/btrfs-modules b/debian/installer/modules/m68k/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/m68k/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/m68k/cdrom-core-modules b/debian/installer/modules/m68k/cdrom-core-modules
new file mode 100644
index 000000000..71cccaeaa
--- /dev/null
+++ b/debian/installer/modules/m68k/cdrom-core-modules
@@ -0,0 +1,3 @@
+#include <cdrom-core-modules>
+
+ide-cd_mod
diff --git a/debian/installer/modules/m68k/crc-modules b/debian/installer/modules/m68k/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/m68k/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/m68k/crypto-modules b/debian/installer/modules/m68k/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/m68k/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/m68k/ext4-modules b/debian/installer/modules/m68k/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/m68k/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/m68k/fat-modules b/debian/installer/modules/m68k/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/m68k/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/m68k/fuse-modules b/debian/installer/modules/m68k/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/m68k/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/m68k/hfs-modules b/debian/installer/modules/m68k/hfs-modules
new file mode 100644
index 000000000..57d12f649
--- /dev/null
+++ b/debian/installer/modules/m68k/hfs-modules
@@ -0,0 +1 @@
+#include <hfs-modules>
diff --git a/debian/installer/modules/m68k/ide-core-modules b/debian/installer/modules/m68k/ide-core-modules
new file mode 100644
index 000000000..96284d155
--- /dev/null
+++ b/debian/installer/modules/m68k/ide-core-modules
@@ -0,0 +1 @@
+ide-core
diff --git a/debian/installer/modules/m68k/ide-modules b/debian/installer/modules/m68k/ide-modules
new file mode 100644
index 000000000..b01a92755
--- /dev/null
+++ b/debian/installer/modules/m68k/ide-modules
@@ -0,0 +1,6 @@
+buddha
+falconide
+gayle
+ide-gd_mod
+macide
+q40ide
diff --git a/debian/installer/modules/m68k/isofs-modules b/debian/installer/modules/m68k/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/m68k/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/m68k/kernel-image b/debian/installer/modules/m68k/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/m68k/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/m68k/loop-modules b/debian/installer/modules/m68k/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/m68k/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/m68k/md-modules b/debian/installer/modules/m68k/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/m68k/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/m68k/nbd-modules b/debian/installer/modules/m68k/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/m68k/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/m68k/nic-modules b/debian/installer/modules/m68k/nic-modules
new file mode 100644
index 000000000..2512e8395
--- /dev/null
+++ b/debian/installer/modules/m68k/nic-modules
@@ -0,0 +1 @@
+#include <nic-modules>
diff --git a/debian/installer/modules/m68k/nic-shared-modules b/debian/installer/modules/m68k/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/m68k/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/m68k/pata-modules b/debian/installer/modules/m68k/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/m68k/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/m68k/ppp-modules b/debian/installer/modules/m68k/ppp-modules
new file mode 100644
index 000000000..1f26aa1ee
--- /dev/null
+++ b/debian/installer/modules/m68k/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/m68k/scsi-core-modules b/debian/installer/modules/m68k/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/m68k/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/m68k/scsi-modules b/debian/installer/modules/m68k/scsi-modules
new file mode 100644
index 000000000..f2956ef95
--- /dev/null
+++ b/debian/installer/modules/m68k/scsi-modules
@@ -0,0 +1,13 @@
+sg
+
+a2091
+a3000
+a4000t
+atari_scsi
+bvme6000_scsi
+gvp11
+mac_esp
+mac_scsi
+mvme16x_scsi
+zorro7xx
+zorro_esp
diff --git a/debian/installer/modules/m68k/squashfs-modules b/debian/installer/modules/m68k/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/m68k/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/m68k/udf-modules b/debian/installer/modules/m68k/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/m68k/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/md-modules b/debian/installer/modules/md-modules
new file mode 100644
index 000000000..d4f710406
--- /dev/null
+++ b/debian/installer/modules/md-modules
@@ -0,0 +1,16 @@
+linear
+md-mod
+dm-mod
+multipath
+raid0
+raid1
+raid456
+raid10
+dm-mirror
+dm-raid
+dm-snapshot
+bcache
+
+# RAID-related libraries, also used by btrfs
+raid6_pq
+xor
diff --git a/debian/installer/modules/minix-modules b/debian/installer/modules/minix-modules
new file mode 100644
index 000000000..aa6ca5db6
--- /dev/null
+++ b/debian/installer/modules/minix-modules
@@ -0,0 +1 @@
+minix
diff --git a/debian/installer/modules/mips-4kc-malta/affs-modules b/debian/installer/modules/mips-4kc-malta/affs-modules
new file mode 100644
index 000000000..21d616a1c
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/affs-modules
@@ -0,0 +1 @@
+#include <affs-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/ata-modules b/debian/installer/modules/mips-4kc-malta/ata-modules
new file mode 100644
index 000000000..b81c0f38b
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/ata-modules
@@ -0,0 +1 @@
+#include <ata-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/btrfs-modules b/debian/installer/modules/mips-4kc-malta/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/cdrom-core-modules b/debian/installer/modules/mips-4kc-malta/cdrom-core-modules
new file mode 100644
index 000000000..3ff69b48f
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/cdrom-core-modules
@@ -0,0 +1 @@
+#include <cdrom-core-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/crc-modules b/debian/installer/modules/mips-4kc-malta/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/crypto-dm-modules b/debian/installer/modules/mips-4kc-malta/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/crypto-modules b/debian/installer/modules/mips-4kc-malta/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/event-modules b/debian/installer/modules/mips-4kc-malta/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/ext4-modules b/debian/installer/modules/mips-4kc-malta/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/f2fs-modules b/debian/installer/modules/mips-4kc-malta/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/fat-modules b/debian/installer/modules/mips-4kc-malta/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/fb-modules b/debian/installer/modules/mips-4kc-malta/fb-modules
new file mode 100644
index 000000000..aba524d90
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/fb-modules
@@ -0,0 +1 @@
+#include <fb-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/fuse-modules b/debian/installer/modules/mips-4kc-malta/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/i2c-modules b/debian/installer/modules/mips-4kc-malta/i2c-modules
new file mode 100644
index 000000000..203a607e7
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/i2c-modules
@@ -0,0 +1 @@
+#include <i2c-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/input-modules b/debian/installer/modules/mips-4kc-malta/input-modules
new file mode 100644
index 000000000..5ecb595a4
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/input-modules
@@ -0,0 +1 @@
+#include <input-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/isofs-modules b/debian/installer/modules/mips-4kc-malta/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/jfs-modules b/debian/installer/modules/mips-4kc-malta/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/kernel-image b/debian/installer/modules/mips-4kc-malta/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/mips-4kc-malta/loop-modules b/debian/installer/modules/mips-4kc-malta/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/md-modules b/debian/installer/modules/mips-4kc-malta/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/minix-modules b/debian/installer/modules/mips-4kc-malta/minix-modules
new file mode 100644
index 000000000..82b984372
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/minix-modules
@@ -0,0 +1 @@
+#include <minix-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/mmc-core-modules b/debian/installer/modules/mips-4kc-malta/mmc-core-modules
new file mode 100644
index 000000000..7bf38465c
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/mmc-core-modules
@@ -0,0 +1 @@
+#include <mmc-core-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/mmc-modules b/debian/installer/modules/mips-4kc-malta/mmc-modules
new file mode 100644
index 000000000..dadfd5334
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/mmc-modules
@@ -0,0 +1 @@
+#include <mmc-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/mouse-modules b/debian/installer/modules/mips-4kc-malta/mouse-modules
new file mode 100644
index 000000000..15fcb00ea
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/mouse-modules
@@ -0,0 +1 @@
+#include <mouse-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/mtd-core-modules b/debian/installer/modules/mips-4kc-malta/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/multipath-modules b/debian/installer/modules/mips-4kc-malta/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/nbd-modules b/debian/installer/modules/mips-4kc-malta/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/nic-modules b/debian/installer/modules/mips-4kc-malta/nic-modules
new file mode 100644
index 000000000..44a607e90
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/nic-modules
@@ -0,0 +1,4 @@
+#include <nic-modules>
+skfp -
+starfire -
+winbond-840 -
diff --git a/debian/installer/modules/mips-4kc-malta/nic-shared-modules b/debian/installer/modules/mips-4kc-malta/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/nic-usb-modules b/debian/installer/modules/mips-4kc-malta/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/nic-wireless-modules b/debian/installer/modules/mips-4kc-malta/nic-wireless-modules
new file mode 100644
index 000000000..53fd18d7f
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/nic-wireless-modules
@@ -0,0 +1 @@
+#include <nic-wireless-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/pata-modules b/debian/installer/modules/mips-4kc-malta/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/ppp-modules b/debian/installer/modules/mips-4kc-malta/ppp-modules
new file mode 100644
index 000000000..1f26aa1ee
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/qnx4-modules b/debian/installer/modules/mips-4kc-malta/qnx4-modules
new file mode 100644
index 000000000..cd0c96d41
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/qnx4-modules
@@ -0,0 +1 @@
+#include <qnx4-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/sata-modules b/debian/installer/modules/mips-4kc-malta/sata-modules
new file mode 100644
index 000000000..01318c258
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/sata-modules
@@ -0,0 +1 @@
+#include <sata-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/scsi-core-modules b/debian/installer/modules/mips-4kc-malta/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/scsi-modules b/debian/installer/modules/mips-4kc-malta/scsi-modules
new file mode 100644
index 000000000..8909dfb79
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/scsi-modules
@@ -0,0 +1 @@
+#include <scsi-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/scsi-nic-modules b/debian/installer/modules/mips-4kc-malta/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/sound-modules b/debian/installer/modules/mips-4kc-malta/sound-modules
new file mode 100644
index 000000000..68395ab3d
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/sound-modules
@@ -0,0 +1 @@
+#include <sound-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/squashfs-modules b/debian/installer/modules/mips-4kc-malta/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/udf-modules b/debian/installer/modules/mips-4kc-malta/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/usb-modules b/debian/installer/modules/mips-4kc-malta/usb-modules
new file mode 100644
index 000000000..c598dedd8
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/usb-modules
@@ -0,0 +1 @@
+#include <usb-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/usb-serial-modules b/debian/installer/modules/mips-4kc-malta/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/usb-storage-modules b/debian/installer/modules/mips-4kc-malta/usb-storage-modules
new file mode 100644
index 000000000..8c5e81b55
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/usb-storage-modules
@@ -0,0 +1 @@
+#include <usb-storage-modules>
diff --git a/debian/installer/modules/mips-4kc-malta/xfs-modules b/debian/installer/modules/mips-4kc-malta/xfs-modules
new file mode 100644
index 000000000..98374e2bb
--- /dev/null
+++ b/debian/installer/modules/mips-4kc-malta/xfs-modules
@@ -0,0 +1 @@
+#include <xfs-modules>
diff --git a/debian/installer/modules/mips-octeon/affs-modules b/debian/installer/modules/mips-octeon/affs-modules
new file mode 100644
index 000000000..21d616a1c
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/affs-modules
@@ -0,0 +1 @@
+#include <affs-modules>
diff --git a/debian/installer/modules/mips-octeon/btrfs-modules b/debian/installer/modules/mips-octeon/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/mips-octeon/cdrom-core-modules b/debian/installer/modules/mips-octeon/cdrom-core-modules
new file mode 100644
index 000000000..3ff69b48f
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/cdrom-core-modules
@@ -0,0 +1 @@
+#include <cdrom-core-modules>
diff --git a/debian/installer/modules/mips-octeon/crc-modules b/debian/installer/modules/mips-octeon/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/mips-octeon/crypto-dm-modules b/debian/installer/modules/mips-octeon/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/mips-octeon/crypto-modules b/debian/installer/modules/mips-octeon/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/mips-octeon/event-modules b/debian/installer/modules/mips-octeon/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/mips-octeon/ext4-modules b/debian/installer/modules/mips-octeon/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/mips-octeon/f2fs-modules b/debian/installer/modules/mips-octeon/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/mips-octeon/fat-modules b/debian/installer/modules/mips-octeon/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/mips-octeon/fuse-modules b/debian/installer/modules/mips-octeon/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/mips-octeon/input-modules b/debian/installer/modules/mips-octeon/input-modules
new file mode 100644
index 000000000..5ecb595a4
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/input-modules
@@ -0,0 +1 @@
+#include <input-modules>
diff --git a/debian/installer/modules/mips-octeon/isofs-modules b/debian/installer/modules/mips-octeon/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/mips-octeon/jfs-modules b/debian/installer/modules/mips-octeon/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/mips-octeon/kernel-image b/debian/installer/modules/mips-octeon/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/mips-octeon/loop-modules b/debian/installer/modules/mips-octeon/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/mips-octeon/md-modules b/debian/installer/modules/mips-octeon/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/mips-octeon/minix-modules b/debian/installer/modules/mips-octeon/minix-modules
new file mode 100644
index 000000000..82b984372
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/minix-modules
@@ -0,0 +1 @@
+#include <minix-modules>
diff --git a/debian/installer/modules/mips-octeon/multipath-modules b/debian/installer/modules/mips-octeon/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/mips-octeon/nbd-modules b/debian/installer/modules/mips-octeon/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/mips-octeon/nic-modules b/debian/installer/modules/mips-octeon/nic-modules
new file mode 100644
index 000000000..3a2814f9e
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/nic-modules
@@ -0,0 +1,15 @@
+#include <nic-modules>
+8139cp -
+8139too -
+dmfe -
+e100 -
+epic100 -
+fealnx -
+natsemi -
+ne2k-pci -
+skfp -
+sundance -
+starfire -
+tulip -
+typhoon -
+winbond-840 -
diff --git a/debian/installer/modules/mips-octeon/nic-shared-modules b/debian/installer/modules/mips-octeon/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/mips-octeon/nic-usb-modules b/debian/installer/modules/mips-octeon/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/mips-octeon/nic-wireless-modules b/debian/installer/modules/mips-octeon/nic-wireless-modules
new file mode 100644
index 000000000..53fd18d7f
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/nic-wireless-modules
@@ -0,0 +1 @@
+#include <nic-wireless-modules>
diff --git a/debian/installer/modules/mips-octeon/pata-modules b/debian/installer/modules/mips-octeon/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/mips-octeon/ppp-modules b/debian/installer/modules/mips-octeon/ppp-modules
new file mode 100644
index 000000000..1f26aa1ee
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/mips-octeon/qnx4-modules b/debian/installer/modules/mips-octeon/qnx4-modules
new file mode 100644
index 000000000..cd0c96d41
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/qnx4-modules
@@ -0,0 +1 @@
+#include <qnx4-modules>
diff --git a/debian/installer/modules/mips-octeon/rtc-modules b/debian/installer/modules/mips-octeon/rtc-modules
new file mode 100644
index 000000000..e20e792f2
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/rtc-modules
@@ -0,0 +1 @@
+#include <rtc-modules>
diff --git a/debian/installer/modules/mips-octeon/sata-modules b/debian/installer/modules/mips-octeon/sata-modules
new file mode 100644
index 000000000..01318c258
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/sata-modules
@@ -0,0 +1 @@
+#include <sata-modules>
diff --git a/debian/installer/modules/mips-octeon/scsi-core-modules b/debian/installer/modules/mips-octeon/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/mips-octeon/scsi-modules b/debian/installer/modules/mips-octeon/scsi-modules
new file mode 100644
index 000000000..bf002062d
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/scsi-modules
@@ -0,0 +1,4 @@
+#include <scsi-modules>
+dmx3191d -
+ips -
+sym53c8xx -
diff --git a/debian/installer/modules/mips-octeon/scsi-nic-modules b/debian/installer/modules/mips-octeon/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/mips-octeon/sound-modules b/debian/installer/modules/mips-octeon/sound-modules
new file mode 100644
index 000000000..68395ab3d
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/sound-modules
@@ -0,0 +1 @@
+#include <sound-modules>
diff --git a/debian/installer/modules/mips-octeon/squashfs-modules b/debian/installer/modules/mips-octeon/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/mips-octeon/udf-modules b/debian/installer/modules/mips-octeon/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/mips-octeon/usb-modules b/debian/installer/modules/mips-octeon/usb-modules
new file mode 100644
index 000000000..6c3464a6c
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/usb-modules
@@ -0,0 +1,2 @@
+#include <usb-modules>
+octeon-hcd
diff --git a/debian/installer/modules/mips-octeon/usb-serial-modules b/debian/installer/modules/mips-octeon/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/mips-octeon/usb-storage-modules b/debian/installer/modules/mips-octeon/usb-storage-modules
new file mode 100644
index 000000000..8c5e81b55
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/usb-storage-modules
@@ -0,0 +1 @@
+#include <usb-storage-modules>
diff --git a/debian/installer/modules/mips-octeon/xfs-modules b/debian/installer/modules/mips-octeon/xfs-modules
new file mode 100644
index 000000000..98374e2bb
--- /dev/null
+++ b/debian/installer/modules/mips-octeon/xfs-modules
@@ -0,0 +1 @@
+#include <xfs-modules>
diff --git a/debian/installer/modules/mips/btrfs-modules b/debian/installer/modules/mips/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/mips/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/mips/crc-modules b/debian/installer/modules/mips/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/mips/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/mips/crypto-dm-modules b/debian/installer/modules/mips/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/mips/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/mips/crypto-modules b/debian/installer/modules/mips/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/mips/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/mips/ext4-modules b/debian/installer/modules/mips/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/mips/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/mips/f2fs-modules b/debian/installer/modules/mips/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/mips/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/mips/fuse-modules b/debian/installer/modules/mips/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/mips/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/mips/isofs-modules b/debian/installer/modules/mips/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/mips/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/mips/jfs-modules b/debian/installer/modules/mips/jfs-modules
new file mode 100644
index 000000000..925a43a9e
--- /dev/null
+++ b/debian/installer/modules/mips/jfs-modules
@@ -0,0 +1,2 @@
+#include <jfs-modules>
+
diff --git a/debian/installer/modules/mips/kernel-image b/debian/installer/modules/mips/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/mips/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/mips/loop-modules b/debian/installer/modules/mips/loop-modules
new file mode 100644
index 000000000..164467713
--- /dev/null
+++ b/debian/installer/modules/mips/loop-modules
@@ -0,0 +1,2 @@
+#include <loop-modules>
+
diff --git a/debian/installer/modules/mips/md-modules b/debian/installer/modules/mips/md-modules
new file mode 100644
index 000000000..ade088ddb
--- /dev/null
+++ b/debian/installer/modules/mips/md-modules
@@ -0,0 +1,2 @@
+#include <md-modules>
+
diff --git a/debian/installer/modules/mips/multipath-modules b/debian/installer/modules/mips/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/mips/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/mips/nbd-modules b/debian/installer/modules/mips/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/mips/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/mips/nic-shared-modules b/debian/installer/modules/mips/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/mips/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/mips/squashfs-modules b/debian/installer/modules/mips/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/mips/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/mips/udf-modules b/debian/installer/modules/mips/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/mips/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/mips/xfs-modules b/debian/installer/modules/mips/xfs-modules
new file mode 100644
index 000000000..c020b5d39
--- /dev/null
+++ b/debian/installer/modules/mips/xfs-modules
@@ -0,0 +1,2 @@
+#include <xfs-modules>
+
diff --git a/debian/installer/modules/mips32r6 b/debian/installer/modules/mips32r6
new file mode 120000
index 000000000..af28acbd9
--- /dev/null
+++ b/debian/installer/modules/mips32r6
@@ -0,0 +1 @@
+mips \ No newline at end of file
diff --git a/debian/installer/modules/mips32r6el b/debian/installer/modules/mips32r6el
new file mode 120000
index 000000000..af28acbd9
--- /dev/null
+++ b/debian/installer/modules/mips32r6el
@@ -0,0 +1 @@
+mips \ No newline at end of file
diff --git a/debian/installer/modules/mips64 b/debian/installer/modules/mips64
new file mode 120000
index 000000000..af28acbd9
--- /dev/null
+++ b/debian/installer/modules/mips64
@@ -0,0 +1 @@
+mips \ No newline at end of file
diff --git a/debian/installer/modules/mips64-5kc-malta b/debian/installer/modules/mips64-5kc-malta
new file mode 120000
index 000000000..6bae6ca28
--- /dev/null
+++ b/debian/installer/modules/mips64-5kc-malta
@@ -0,0 +1 @@
+mips-4kc-malta \ No newline at end of file
diff --git a/debian/installer/modules/mips64-octeon b/debian/installer/modules/mips64-octeon
new file mode 120000
index 000000000..47b1b81ab
--- /dev/null
+++ b/debian/installer/modules/mips64-octeon
@@ -0,0 +1 @@
+mips-octeon \ No newline at end of file
diff --git a/debian/installer/modules/mips64el-5kc-malta b/debian/installer/modules/mips64el-5kc-malta
new file mode 120000
index 000000000..6bae6ca28
--- /dev/null
+++ b/debian/installer/modules/mips64el-5kc-malta
@@ -0,0 +1 @@
+mips-4kc-malta \ No newline at end of file
diff --git a/debian/installer/modules/mips64el-loongson-3 b/debian/installer/modules/mips64el-loongson-3
new file mode 120000
index 000000000..409be8354
--- /dev/null
+++ b/debian/installer/modules/mips64el-loongson-3
@@ -0,0 +1 @@
+mipsel-loongson-3 \ No newline at end of file
diff --git a/debian/installer/modules/mips64el-octeon b/debian/installer/modules/mips64el-octeon
new file mode 120000
index 000000000..47b1b81ab
--- /dev/null
+++ b/debian/installer/modules/mips64el-octeon
@@ -0,0 +1 @@
+mips-octeon \ No newline at end of file
diff --git a/debian/installer/modules/mips64r6 b/debian/installer/modules/mips64r6
new file mode 120000
index 000000000..af28acbd9
--- /dev/null
+++ b/debian/installer/modules/mips64r6
@@ -0,0 +1 @@
+mips \ No newline at end of file
diff --git a/debian/installer/modules/mips64r6el b/debian/installer/modules/mips64r6el
new file mode 120000
index 000000000..af28acbd9
--- /dev/null
+++ b/debian/installer/modules/mips64r6el
@@ -0,0 +1 @@
+mips \ No newline at end of file
diff --git a/debian/installer/modules/mipsel-4kc-malta b/debian/installer/modules/mipsel-4kc-malta
new file mode 120000
index 000000000..6bae6ca28
--- /dev/null
+++ b/debian/installer/modules/mipsel-4kc-malta
@@ -0,0 +1 @@
+mips-4kc-malta \ No newline at end of file
diff --git a/debian/installer/modules/mipsel-loongson-3/affs-modules b/debian/installer/modules/mipsel-loongson-3/affs-modules
new file mode 100644
index 000000000..21d616a1c
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/affs-modules
@@ -0,0 +1 @@
+#include <affs-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/ata-modules b/debian/installer/modules/mipsel-loongson-3/ata-modules
new file mode 100644
index 000000000..b81c0f38b
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/ata-modules
@@ -0,0 +1 @@
+#include <ata-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/btrfs-modules b/debian/installer/modules/mipsel-loongson-3/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/cdrom-core-modules b/debian/installer/modules/mipsel-loongson-3/cdrom-core-modules
new file mode 100644
index 000000000..3ff69b48f
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/cdrom-core-modules
@@ -0,0 +1 @@
+#include <cdrom-core-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/crc-modules b/debian/installer/modules/mipsel-loongson-3/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/crypto-dm-modules b/debian/installer/modules/mipsel-loongson-3/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/crypto-modules b/debian/installer/modules/mipsel-loongson-3/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/event-modules b/debian/installer/modules/mipsel-loongson-3/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/ext4-modules b/debian/installer/modules/mipsel-loongson-3/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/f2fs-modules b/debian/installer/modules/mipsel-loongson-3/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/fat-modules b/debian/installer/modules/mipsel-loongson-3/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/fb-modules b/debian/installer/modules/mipsel-loongson-3/fb-modules
new file mode 100644
index 000000000..18e82ab57
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/fb-modules
@@ -0,0 +1,6 @@
+#include <fb-modules>
+
+amdgpu
+radeon
+ast
+sm750fb
diff --git a/debian/installer/modules/mipsel-loongson-3/firewire-core-modules b/debian/installer/modules/mipsel-loongson-3/firewire-core-modules
new file mode 100644
index 000000000..dcac80af9
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/firewire-core-modules
@@ -0,0 +1 @@
+#include <firewire-core-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/fuse-modules b/debian/installer/modules/mipsel-loongson-3/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/input-modules b/debian/installer/modules/mipsel-loongson-3/input-modules
new file mode 100644
index 000000000..5ecb595a4
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/input-modules
@@ -0,0 +1 @@
+#include <input-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/isofs-modules b/debian/installer/modules/mipsel-loongson-3/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/jfs-modules b/debian/installer/modules/mipsel-loongson-3/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/kernel-image b/debian/installer/modules/mipsel-loongson-3/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/mipsel-loongson-3/loop-modules b/debian/installer/modules/mipsel-loongson-3/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/md-modules b/debian/installer/modules/mipsel-loongson-3/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/minix-modules b/debian/installer/modules/mipsel-loongson-3/minix-modules
new file mode 100644
index 000000000..82b984372
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/minix-modules
@@ -0,0 +1 @@
+#include <minix-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/mtd-core-modules b/debian/installer/modules/mipsel-loongson-3/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/multipath-modules b/debian/installer/modules/mipsel-loongson-3/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/nbd-modules b/debian/installer/modules/mipsel-loongson-3/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/nfs-modules b/debian/installer/modules/mipsel-loongson-3/nfs-modules
new file mode 100644
index 000000000..946fb8e44
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/nfs-modules
@@ -0,0 +1 @@
+#include <nfs-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/nic-modules b/debian/installer/modules/mipsel-loongson-3/nic-modules
new file mode 100644
index 000000000..a2feefcfc
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/nic-modules
@@ -0,0 +1,11 @@
+#include <nic-modules>
+dmfe -
+epic100 -
+fealnx -
+natsemi -
+skfp -
+starfire -
+sundance -
+tulip -
+typhoon -
+winbond-840 -
diff --git a/debian/installer/modules/mipsel-loongson-3/nic-shared-modules b/debian/installer/modules/mipsel-loongson-3/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/nic-usb-modules b/debian/installer/modules/mipsel-loongson-3/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/nic-wireless-modules b/debian/installer/modules/mipsel-loongson-3/nic-wireless-modules
new file mode 100644
index 000000000..53fd18d7f
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/nic-wireless-modules
@@ -0,0 +1 @@
+#include <nic-wireless-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/pata-modules b/debian/installer/modules/mipsel-loongson-3/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/ppp-modules b/debian/installer/modules/mipsel-loongson-3/ppp-modules
new file mode 100644
index 000000000..1f26aa1ee
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/qnx4-modules b/debian/installer/modules/mipsel-loongson-3/qnx4-modules
new file mode 100644
index 000000000..cd0c96d41
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/qnx4-modules
@@ -0,0 +1 @@
+#include <qnx4-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/sata-modules b/debian/installer/modules/mipsel-loongson-3/sata-modules
new file mode 100644
index 000000000..01318c258
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/sata-modules
@@ -0,0 +1 @@
+#include <sata-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/scsi-core-modules b/debian/installer/modules/mipsel-loongson-3/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/scsi-modules b/debian/installer/modules/mipsel-loongson-3/scsi-modules
new file mode 100644
index 000000000..bf002062d
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/scsi-modules
@@ -0,0 +1,4 @@
+#include <scsi-modules>
+dmx3191d -
+ips -
+sym53c8xx -
diff --git a/debian/installer/modules/mipsel-loongson-3/scsi-nic-modules b/debian/installer/modules/mipsel-loongson-3/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/sound-modules b/debian/installer/modules/mipsel-loongson-3/sound-modules
new file mode 100644
index 000000000..68395ab3d
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/sound-modules
@@ -0,0 +1 @@
+#include <sound-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/speakup-modules b/debian/installer/modules/mipsel-loongson-3/speakup-modules
new file mode 100644
index 000000000..29592721a
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/speakup-modules
@@ -0,0 +1 @@
+#include <speakup-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/squashfs-modules b/debian/installer/modules/mipsel-loongson-3/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/udf-modules b/debian/installer/modules/mipsel-loongson-3/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/usb-modules b/debian/installer/modules/mipsel-loongson-3/usb-modules
new file mode 100644
index 000000000..c598dedd8
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/usb-modules
@@ -0,0 +1 @@
+#include <usb-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/usb-serial-modules b/debian/installer/modules/mipsel-loongson-3/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/usb-storage-modules b/debian/installer/modules/mipsel-loongson-3/usb-storage-modules
new file mode 100644
index 000000000..8c5e81b55
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/usb-storage-modules
@@ -0,0 +1 @@
+#include <usb-storage-modules>
diff --git a/debian/installer/modules/mipsel-loongson-3/xfs-modules b/debian/installer/modules/mipsel-loongson-3/xfs-modules
new file mode 100644
index 000000000..98374e2bb
--- /dev/null
+++ b/debian/installer/modules/mipsel-loongson-3/xfs-modules
@@ -0,0 +1 @@
+#include <xfs-modules>
diff --git a/debian/installer/modules/mipsel-octeon b/debian/installer/modules/mipsel-octeon
new file mode 120000
index 000000000..47b1b81ab
--- /dev/null
+++ b/debian/installer/modules/mipsel-octeon
@@ -0,0 +1 @@
+mips-octeon \ No newline at end of file
diff --git a/debian/installer/modules/mmc-core-modules b/debian/installer/modules/mmc-core-modules
new file mode 100644
index 000000000..67128eac0
--- /dev/null
+++ b/debian/installer/modules/mmc-core-modules
@@ -0,0 +1 @@
+mmc_core
diff --git a/debian/installer/modules/mmc-modules b/debian/installer/modules/mmc-modules
new file mode 100644
index 000000000..c7aa372bd
--- /dev/null
+++ b/debian/installer/modules/mmc-modules
@@ -0,0 +1,8 @@
+mmc_block
+drivers/mmc/host/**
+
+# Multifunction card reader driver
+tifm_7xx1 ?
+
+# Adds a dependency on pcmcia-modules
+sdricoh_cs -
diff --git a/debian/installer/modules/mouse-modules b/debian/installer/modules/mouse-modules
new file mode 100644
index 000000000..8d65ba4d8
--- /dev/null
+++ b/debian/installer/modules/mouse-modules
@@ -0,0 +1 @@
+psmouse
diff --git a/debian/installer/modules/mtd-core-modules b/debian/installer/modules/mtd-core-modules
new file mode 100644
index 000000000..96dc6e77f
--- /dev/null
+++ b/debian/installer/modules/mtd-core-modules
@@ -0,0 +1 @@
+mtd
diff --git a/debian/installer/modules/mtd-modules b/debian/installer/modules/mtd-modules
new file mode 100644
index 000000000..90e6b13f6
--- /dev/null
+++ b/debian/installer/modules/mtd-modules
@@ -0,0 +1 @@
+mtdblock
diff --git a/debian/installer/modules/multipath-modules b/debian/installer/modules/multipath-modules
new file mode 100644
index 000000000..3b96ab99c
--- /dev/null
+++ b/debian/installer/modules/multipath-modules
@@ -0,0 +1,3 @@
+dm-multipath
+dm-round-robin
+dm-service-time
diff --git a/debian/installer/modules/nbd-modules b/debian/installer/modules/nbd-modules
new file mode 100644
index 000000000..cb3ca605f
--- /dev/null
+++ b/debian/installer/modules/nbd-modules
@@ -0,0 +1 @@
+nbd
diff --git a/debian/installer/modules/nfs-modules b/debian/installer/modules/nfs-modules
new file mode 100644
index 000000000..a5bfd2ce6
--- /dev/null
+++ b/debian/installer/modules/nfs-modules
@@ -0,0 +1,3 @@
+nfs
+lockd
+sunrpc
diff --git a/debian/installer/modules/nic-modules b/debian/installer/modules/nic-modules
new file mode 100644
index 000000000..722cb6b80
--- /dev/null
+++ b/debian/installer/modules/nic-modules
@@ -0,0 +1,29 @@
+# Include Ethernet switch, controller and PHY drivers by default
+drivers/net/dsa/** ?
+drivers/net/ethernet/**
+drivers/net/phy/*
+
+# Include paravirtual network drivers
+hv_netvsc ?
+virtio_net ?
+vmxnet3 ?
+xen-netfront ?
+
+# Include VLAN driver
+8021q
+
+# Include bonding driver
+bonding
+
+# Exclude drivers packaged in nic-pcmcia-modules
+drivers/net/**_cs -
+b44 -
+xircom_cb -
+
+# Exclude libraries packaged in nic-{common,shared} modules
+8390 -
+fixed_phy -
+libphy -
+
+# Exclude iSCSI drivers packaged in scsi-modules
+cnic -
diff --git a/debian/installer/modules/nic-pcmcia-modules b/debian/installer/modules/nic-pcmcia-modules
new file mode 100644
index 000000000..31c360d5a
--- /dev/null
+++ b/debian/installer/modules/nic-pcmcia-modules
@@ -0,0 +1,10 @@
+# Include PCMCIA Ethernet and wireless drivers by default
+drivers/net/ethernet/**_cs
+drivers/net/wireless/**_cs
+b44 ?
+hostap_plx ?
+xircom_cb
+
+# Exclude drivers packaged in nic-wireless-modules
+libertas_cs -
+spectrum_cs -
diff --git a/debian/installer/modules/nic-shared-modules b/debian/installer/modules/nic-shared-modules
new file mode 100644
index 000000000..b0bce03f7
--- /dev/null
+++ b/debian/installer/modules/nic-shared-modules
@@ -0,0 +1,7 @@
+8390 ?
+fixed_phy ?
+libphy ?
+mii ?
+of_mdio ?
+pps_core ?
+ptp ?
diff --git a/debian/installer/modules/nic-usb-modules b/debian/installer/modules/nic-usb-modules
new file mode 100644
index 000000000..332e01518
--- /dev/null
+++ b/debian/installer/modules/nic-usb-modules
@@ -0,0 +1,15 @@
+# Include USB wired drivers by default
+drivers/net/usb/*
+
+# Include rndis_wlan, which depends on rndis_host
+rndis_wlan
+
+# Exclude wireless modem drivers which need extra configuration
+cdc_mbim -
+cdc-phonet -
+hso -
+huawei_cdc_ncm -
+kalmia -
+lg-vl600 -
+qmi_wwan -
+sierra_net -
diff --git a/debian/installer/modules/nic-wireless-modules b/debian/installer/modules/nic-wireless-modules
new file mode 100644
index 000000000..09a908741
--- /dev/null
+++ b/debian/installer/modules/nic-wireless-modules
@@ -0,0 +1,27 @@
+# Include wireless drivers by default
+drivers/net/wireless/**
+
+# Include staging wireless drivers
+prism2_usb ?
+drivers/staging/rtl8** ?
+vt6656_stage ?
+
+# Exclude drivers packaged in nic-pcmcia-modules
+drivers/net/wireless/**_cs -
+airo -
+hostap_plx -
+
+# Don't separate these from their driver families
+libertas_cs ?
+spectrum_cs ?
+
+# Exclude drivers packaged in nic-usb-modules
+rndis_wlan -
+
+# Exclude debug driver
+mac80211_hwsim -
+
+# lib80211 encryption algorithms
+lib80211_crypt_wep ?
+lib80211_crypt_ccmp ?
+lib80211_crypt_tkip ?
diff --git a/debian/installer/modules/pata-modules b/debian/installer/modules/pata-modules
new file mode 100644
index 000000000..1d963a18e
--- /dev/null
+++ b/debian/installer/modules/pata-modules
@@ -0,0 +1,9 @@
+# Include PATA drivers by default
+drivers/ata/pata_*
+
+# Exclude pata_sis, which goes in sata-modules as a dependency of sata_sis
+pata_sis -
+
+# Exclude drivers packaged in pcmcia-storage-modules
+pata_ninja32 -
+pata_pcmcia -
diff --git a/debian/installer/modules/pcmcia-modules b/debian/installer/modules/pcmcia-modules
new file mode 100644
index 000000000..ab5b4b234
--- /dev/null
+++ b/debian/installer/modules/pcmcia-modules
@@ -0,0 +1,8 @@
+pcmcia
+
+i82092
+i82365 ?
+pcmcia_core
+tcic ?
+yenta_socket
+pd6729 ?
diff --git a/debian/installer/modules/pcmcia-storage-modules b/debian/installer/modules/pcmcia-storage-modules
new file mode 100644
index 000000000..b6b172164
--- /dev/null
+++ b/debian/installer/modules/pcmcia-storage-modules
@@ -0,0 +1,2 @@
+pata_ninja32 ?
+pata_pcmcia ?
diff --git a/debian/installer/modules/powerpc-powerpc64/affs-modules b/debian/installer/modules/powerpc-powerpc64/affs-modules
new file mode 100644
index 000000000..f12f6ace2
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/affs-modules
@@ -0,0 +1 @@
+#include "../powerpc/affs-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/ata-modules b/debian/installer/modules/powerpc-powerpc64/ata-modules
new file mode 100644
index 000000000..39540d4b6
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/ata-modules
@@ -0,0 +1 @@
+#include "../powerpc/ata-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/btrfs-modules b/debian/installer/modules/powerpc-powerpc64/btrfs-modules
new file mode 100644
index 000000000..9eeeb149a
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/btrfs-modules
@@ -0,0 +1 @@
+#include "../powerpc/btrfs-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/cdrom-core-modules b/debian/installer/modules/powerpc-powerpc64/cdrom-core-modules
new file mode 100644
index 000000000..feed89a1a
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/cdrom-core-modules
@@ -0,0 +1 @@
+#include "../powerpc/cdrom-core-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/crc-modules b/debian/installer/modules/powerpc-powerpc64/crc-modules
new file mode 100644
index 000000000..b49dc9eca
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/crc-modules
@@ -0,0 +1 @@
+#include "../powerpc/crc-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/crypto-dm-modules b/debian/installer/modules/powerpc-powerpc64/crypto-dm-modules
new file mode 100644
index 000000000..6613c798f
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/crypto-dm-modules
@@ -0,0 +1 @@
+#include "../powerpc/crypto-dm-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/crypto-modules b/debian/installer/modules/powerpc-powerpc64/crypto-modules
new file mode 100644
index 000000000..8fa818fb8
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/crypto-modules
@@ -0,0 +1 @@
+#include "../powerpc/crypto-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/event-modules b/debian/installer/modules/powerpc-powerpc64/event-modules
new file mode 100644
index 000000000..9e9424c60
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/event-modules
@@ -0,0 +1 @@
+#include "../powerpc/event-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/ext4-modules b/debian/installer/modules/powerpc-powerpc64/ext4-modules
new file mode 100644
index 000000000..664c3118f
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/ext4-modules
@@ -0,0 +1 @@
+#include "../powerpc/ext4-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/f2fs-modules b/debian/installer/modules/powerpc-powerpc64/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/powerpc-powerpc64/fancontrol-modules b/debian/installer/modules/powerpc-powerpc64/fancontrol-modules
new file mode 100644
index 000000000..a3fc55cca
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/fancontrol-modules
@@ -0,0 +1,19 @@
+i2c-powermac ?
+windfarm_core ?
+windfarm_cpufreq_clamp ?
+windfarm_lm75_sensor ?
+windfarm_max6690_sensor ?
+windfarm_pid ?
+windfarm_pm121 ?
+windfarm_pm112 ?
+windfarm_pm81 ?
+windfarm_pm91 ?
+windfarm_pm72 ?
+windfarm_rm31 ?
+windfarm_smu_controls ?
+windfarm_smu_sat ?
+windfarm_smu_sensors ?
+windfarm_ad7417_sensor ?
+windfarm_fcu_controls ?
+windfarm_lm87_sensor ?
+windfarm_pid ?
diff --git a/debian/installer/modules/powerpc-powerpc64/fat-modules b/debian/installer/modules/powerpc-powerpc64/fat-modules
new file mode 100644
index 000000000..043dc5602
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/fat-modules
@@ -0,0 +1 @@
+#include "../powerpc/fat-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/fb-modules b/debian/installer/modules/powerpc-powerpc64/fb-modules
new file mode 100644
index 000000000..98c5ecc31
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/fb-modules
@@ -0,0 +1,2 @@
+# We *don't* want the extra modules listed in powerpc/fb-modules
+#include <fb-modules>
diff --git a/debian/installer/modules/powerpc-powerpc64/firewire-core-modules b/debian/installer/modules/powerpc-powerpc64/firewire-core-modules
new file mode 100644
index 000000000..035ab3162
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/firewire-core-modules
@@ -0,0 +1 @@
+#include "../powerpc/firewire-core-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/fuse-modules b/debian/installer/modules/powerpc-powerpc64/fuse-modules
new file mode 100644
index 000000000..49bdce41b
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/fuse-modules
@@ -0,0 +1 @@
+#include "../powerpc/fuse-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/hfs-modules b/debian/installer/modules/powerpc-powerpc64/hfs-modules
new file mode 100644
index 000000000..a85f69143
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/hfs-modules
@@ -0,0 +1 @@
+#include "../powerpc/hfs-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/hypervisor-modules b/debian/installer/modules/powerpc-powerpc64/hypervisor-modules
new file mode 100644
index 000000000..29ceb6154
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/hypervisor-modules
@@ -0,0 +1,2 @@
+hvcserver
+hvcs
diff --git a/debian/installer/modules/powerpc-powerpc64/i2c-modules b/debian/installer/modules/powerpc-powerpc64/i2c-modules
new file mode 100644
index 000000000..203a607e7
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/i2c-modules
@@ -0,0 +1 @@
+#include <i2c-modules>
diff --git a/debian/installer/modules/powerpc-powerpc64/input-modules b/debian/installer/modules/powerpc-powerpc64/input-modules
new file mode 100644
index 000000000..38a888940
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/input-modules
@@ -0,0 +1 @@
+#include "../powerpc/input-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/isofs-modules b/debian/installer/modules/powerpc-powerpc64/isofs-modules
new file mode 100644
index 000000000..5a0326172
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/isofs-modules
@@ -0,0 +1 @@
+#include "../powerpc/isofs-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/jfs-modules b/debian/installer/modules/powerpc-powerpc64/jfs-modules
new file mode 100644
index 000000000..b71ebd35e
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/jfs-modules
@@ -0,0 +1 @@
+#include "../powerpc/jfs-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/kernel-image b/debian/installer/modules/powerpc-powerpc64/kernel-image
new file mode 100644
index 000000000..a0b7d0cf4
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/kernel-image
@@ -0,0 +1 @@
+#include "../powerpc/kernel-image"
diff --git a/debian/installer/modules/powerpc-powerpc64/loop-modules b/debian/installer/modules/powerpc-powerpc64/loop-modules
new file mode 100644
index 000000000..e2273687f
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/loop-modules
@@ -0,0 +1 @@
+#include "../powerpc/loop-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/md-modules b/debian/installer/modules/powerpc-powerpc64/md-modules
new file mode 100644
index 000000000..93be33f95
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/md-modules
@@ -0,0 +1 @@
+#include "../powerpc/md-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/mmc-core-modules b/debian/installer/modules/powerpc-powerpc64/mmc-core-modules
new file mode 100644
index 000000000..5308bc434
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/mmc-core-modules
@@ -0,0 +1 @@
+#include "../powerpc/mmc-core-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/mouse-modules b/debian/installer/modules/powerpc-powerpc64/mouse-modules
new file mode 100644
index 000000000..22aca9411
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/mouse-modules
@@ -0,0 +1 @@
+#include "../powerpc/mouse-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/mtd-core-modules b/debian/installer/modules/powerpc-powerpc64/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/powerpc-powerpc64/multipath-modules b/debian/installer/modules/powerpc-powerpc64/multipath-modules
new file mode 100644
index 000000000..fcb0045b0
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/multipath-modules
@@ -0,0 +1 @@
+#include "../powerpc/multipath-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/nbd-modules b/debian/installer/modules/powerpc-powerpc64/nbd-modules
new file mode 100644
index 000000000..ff7fc80ea
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/nbd-modules
@@ -0,0 +1 @@
+#include "../powerpc/nbd-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/nic-modules b/debian/installer/modules/powerpc-powerpc64/nic-modules
new file mode 100644
index 000000000..7578f4332
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/nic-modules
@@ -0,0 +1 @@
+#include "../powerpc/nic-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/nic-pcmcia-modules b/debian/installer/modules/powerpc-powerpc64/nic-pcmcia-modules
new file mode 100644
index 000000000..3f521e9db
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/nic-pcmcia-modules
@@ -0,0 +1 @@
+#include "../powerpc/nic-pcmcia-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/nic-shared-modules b/debian/installer/modules/powerpc-powerpc64/nic-shared-modules
new file mode 100644
index 000000000..5b05e0d43
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/nic-shared-modules
@@ -0,0 +1 @@
+#include "../powerpc/nic-shared-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/nic-usb-modules b/debian/installer/modules/powerpc-powerpc64/nic-usb-modules
new file mode 100644
index 000000000..790780afc
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/nic-usb-modules
@@ -0,0 +1 @@
+#include "../powerpc/nic-usb-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/nic-wireless-modules b/debian/installer/modules/powerpc-powerpc64/nic-wireless-modules
new file mode 100644
index 000000000..b25c130da
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/nic-wireless-modules
@@ -0,0 +1 @@
+#include "../powerpc/nic-wireless-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/pata-modules b/debian/installer/modules/powerpc-powerpc64/pata-modules
new file mode 100644
index 000000000..bb9cbe3ab
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/pata-modules
@@ -0,0 +1 @@
+#include "../powerpc/pata-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/pcmcia-modules b/debian/installer/modules/powerpc-powerpc64/pcmcia-modules
new file mode 100644
index 000000000..e508df664
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/pcmcia-modules
@@ -0,0 +1 @@
+#include "../powerpc/pcmcia-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/pcmcia-storage-modules b/debian/installer/modules/powerpc-powerpc64/pcmcia-storage-modules
new file mode 100644
index 000000000..f00f24605
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/pcmcia-storage-modules
@@ -0,0 +1 @@
+#include "../powerpc/pcmcia-storage-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/ppp-modules b/debian/installer/modules/powerpc-powerpc64/ppp-modules
new file mode 100644
index 000000000..eb7ab74a5
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/ppp-modules
@@ -0,0 +1 @@
+#include "../powerpc/ppp-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/sata-modules b/debian/installer/modules/powerpc-powerpc64/sata-modules
new file mode 100644
index 000000000..591ad7410
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/sata-modules
@@ -0,0 +1 @@
+#include "../powerpc/sata-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/scsi-core-modules b/debian/installer/modules/powerpc-powerpc64/scsi-core-modules
new file mode 100644
index 000000000..c972a4717
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/scsi-core-modules
@@ -0,0 +1 @@
+#include "../powerpc/scsi-core-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/scsi-modules b/debian/installer/modules/powerpc-powerpc64/scsi-modules
new file mode 100644
index 000000000..74a817729
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/scsi-modules
@@ -0,0 +1,7 @@
+#include "../powerpc/scsi-modules"
+
+# Really SATA, but keep it with ps3rom as they both depend on ps3stor_lib
+ps3disk ?
+
+# Exclude target driver
+ibmvscsis -
diff --git a/debian/installer/modules/powerpc-powerpc64/scsi-nic-modules b/debian/installer/modules/powerpc-powerpc64/scsi-nic-modules
new file mode 100644
index 000000000..edcfa738e
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/scsi-nic-modules
@@ -0,0 +1 @@
+#include "../powerpc/scsi-nic-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/serial-modules b/debian/installer/modules/powerpc-powerpc64/serial-modules
new file mode 100644
index 000000000..349196e30
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/serial-modules
@@ -0,0 +1 @@
+#include "../powerpc/serial-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/squashfs-modules b/debian/installer/modules/powerpc-powerpc64/squashfs-modules
new file mode 100644
index 000000000..32a1b6ffa
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/squashfs-modules
@@ -0,0 +1 @@
+#include "../powerpc/squashfs-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/udf-modules b/debian/installer/modules/powerpc-powerpc64/udf-modules
new file mode 100644
index 000000000..6c72cbc14
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/udf-modules
@@ -0,0 +1 @@
+#include "../powerpc/udf-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/uinput-modules b/debian/installer/modules/powerpc-powerpc64/uinput-modules
new file mode 100644
index 000000000..5020f7cc3
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/uinput-modules
@@ -0,0 +1 @@
+#include "../powerpc/uinput-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/usb-modules b/debian/installer/modules/powerpc-powerpc64/usb-modules
new file mode 100644
index 000000000..9c5b10a7b
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/usb-modules
@@ -0,0 +1 @@
+#include "../powerpc/usb-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/usb-serial-modules b/debian/installer/modules/powerpc-powerpc64/usb-serial-modules
new file mode 100644
index 000000000..e25b55862
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/usb-serial-modules
@@ -0,0 +1 @@
+#include "../powerpc/usb-serial-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/usb-storage-modules b/debian/installer/modules/powerpc-powerpc64/usb-storage-modules
new file mode 100644
index 000000000..5f278e65f
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/usb-storage-modules
@@ -0,0 +1 @@
+#include "../powerpc/usb-storage-modules"
diff --git a/debian/installer/modules/powerpc-powerpc64/xfs-modules b/debian/installer/modules/powerpc-powerpc64/xfs-modules
new file mode 100644
index 000000000..c850127e9
--- /dev/null
+++ b/debian/installer/modules/powerpc-powerpc64/xfs-modules
@@ -0,0 +1 @@
+#include "../powerpc/xfs-modules"
diff --git a/debian/installer/modules/powerpc/affs-modules b/debian/installer/modules/powerpc/affs-modules
new file mode 100644
index 000000000..3f0e4bb90
--- /dev/null
+++ b/debian/installer/modules/powerpc/affs-modules
@@ -0,0 +1,2 @@
+#include <affs-modules>
+
diff --git a/debian/installer/modules/powerpc/ata-modules b/debian/installer/modules/powerpc/ata-modules
new file mode 100644
index 000000000..b81c0f38b
--- /dev/null
+++ b/debian/installer/modules/powerpc/ata-modules
@@ -0,0 +1 @@
+#include <ata-modules>
diff --git a/debian/installer/modules/powerpc/btrfs-modules b/debian/installer/modules/powerpc/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/powerpc/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/powerpc/cdrom-core-modules b/debian/installer/modules/powerpc/cdrom-core-modules
new file mode 100644
index 000000000..e264d7aa3
--- /dev/null
+++ b/debian/installer/modules/powerpc/cdrom-core-modules
@@ -0,0 +1,2 @@
+#include <cdrom-core-modules>
+
diff --git a/debian/installer/modules/powerpc/crc-modules b/debian/installer/modules/powerpc/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/powerpc/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/powerpc/crypto-dm-modules b/debian/installer/modules/powerpc/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/powerpc/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/powerpc/crypto-modules b/debian/installer/modules/powerpc/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/powerpc/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/powerpc/event-modules b/debian/installer/modules/powerpc/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/powerpc/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/powerpc/ext4-modules b/debian/installer/modules/powerpc/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/powerpc/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/powerpc/f2fs-modules b/debian/installer/modules/powerpc/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/powerpc/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/powerpc/fat-modules b/debian/installer/modules/powerpc/fat-modules
new file mode 100644
index 000000000..cce8fd30c
--- /dev/null
+++ b/debian/installer/modules/powerpc/fat-modules
@@ -0,0 +1,2 @@
+#include <fat-modules>
+
diff --git a/debian/installer/modules/powerpc/fb-modules b/debian/installer/modules/powerpc/fb-modules
new file mode 100644
index 000000000..3a53ab269
--- /dev/null
+++ b/debian/installer/modules/powerpc/fb-modules
@@ -0,0 +1,7 @@
+#include <fb-modules>
+
+# 32-bit PowerMacs mostly have either ATI Rage 128 or Radeon graphics
+# chips for which the offb driver doesn't work properly. aty128fb is
+# currently built-in but that could plausibly change in future.
+aty128fb
+radeonfb
diff --git a/debian/installer/modules/powerpc/firewire-core-modules b/debian/installer/modules/powerpc/firewire-core-modules
new file mode 100644
index 000000000..dcac80af9
--- /dev/null
+++ b/debian/installer/modules/powerpc/firewire-core-modules
@@ -0,0 +1 @@
+#include <firewire-core-modules>
diff --git a/debian/installer/modules/powerpc/fuse-modules b/debian/installer/modules/powerpc/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/powerpc/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/powerpc/hfs-modules b/debian/installer/modules/powerpc/hfs-modules
new file mode 100644
index 000000000..57d12f649
--- /dev/null
+++ b/debian/installer/modules/powerpc/hfs-modules
@@ -0,0 +1 @@
+#include <hfs-modules>
diff --git a/debian/installer/modules/powerpc/input-modules b/debian/installer/modules/powerpc/input-modules
new file mode 100644
index 000000000..51e37ced9
--- /dev/null
+++ b/debian/installer/modules/powerpc/input-modules
@@ -0,0 +1,3 @@
+#include <input-modules>
+atkbd
+i8042
diff --git a/debian/installer/modules/powerpc/isofs-modules b/debian/installer/modules/powerpc/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/powerpc/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/powerpc/jfs-modules b/debian/installer/modules/powerpc/jfs-modules
new file mode 100644
index 000000000..925a43a9e
--- /dev/null
+++ b/debian/installer/modules/powerpc/jfs-modules
@@ -0,0 +1,2 @@
+#include <jfs-modules>
+
diff --git a/debian/installer/modules/powerpc/kernel-image b/debian/installer/modules/powerpc/kernel-image
new file mode 100644
index 000000000..b17bb591a
--- /dev/null
+++ b/debian/installer/modules/powerpc/kernel-image
@@ -0,0 +1,2 @@
+#include <kernel-image>
+bestcomm-core ?
diff --git a/debian/installer/modules/powerpc/loop-modules b/debian/installer/modules/powerpc/loop-modules
new file mode 100644
index 000000000..164467713
--- /dev/null
+++ b/debian/installer/modules/powerpc/loop-modules
@@ -0,0 +1,2 @@
+#include <loop-modules>
+
diff --git a/debian/installer/modules/powerpc/md-modules b/debian/installer/modules/powerpc/md-modules
new file mode 100644
index 000000000..ade088ddb
--- /dev/null
+++ b/debian/installer/modules/powerpc/md-modules
@@ -0,0 +1,2 @@
+#include <md-modules>
+
diff --git a/debian/installer/modules/powerpc/mmc-core-modules b/debian/installer/modules/powerpc/mmc-core-modules
new file mode 100644
index 000000000..7bf38465c
--- /dev/null
+++ b/debian/installer/modules/powerpc/mmc-core-modules
@@ -0,0 +1 @@
+#include <mmc-core-modules>
diff --git a/debian/installer/modules/powerpc/mouse-modules b/debian/installer/modules/powerpc/mouse-modules
new file mode 100644
index 000000000..15fcb00ea
--- /dev/null
+++ b/debian/installer/modules/powerpc/mouse-modules
@@ -0,0 +1 @@
+#include <mouse-modules>
diff --git a/debian/installer/modules/powerpc/multipath-modules b/debian/installer/modules/powerpc/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/powerpc/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/powerpc/nbd-modules b/debian/installer/modules/powerpc/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/powerpc/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/powerpc/nic-modules b/debian/installer/modules/powerpc/nic-modules
new file mode 100644
index 000000000..cdf8960d9
--- /dev/null
+++ b/debian/installer/modules/powerpc/nic-modules
@@ -0,0 +1,4 @@
+#include <nic-modules>
+
+# Include AppleTalk-IP driver
+ipddp
diff --git a/debian/installer/modules/powerpc/nic-pcmcia-modules b/debian/installer/modules/powerpc/nic-pcmcia-modules
new file mode 100644
index 000000000..7a0702cd5
--- /dev/null
+++ b/debian/installer/modules/powerpc/nic-pcmcia-modules
@@ -0,0 +1 @@
+#include <nic-pcmcia-modules>
diff --git a/debian/installer/modules/powerpc/nic-shared-modules b/debian/installer/modules/powerpc/nic-shared-modules
new file mode 100644
index 000000000..a6f274a44
--- /dev/null
+++ b/debian/installer/modules/powerpc/nic-shared-modules
@@ -0,0 +1,2 @@
+#include <nic-shared-modules>
+llc
diff --git a/debian/installer/modules/powerpc/nic-usb-modules b/debian/installer/modules/powerpc/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/powerpc/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/powerpc/nic-wireless-modules b/debian/installer/modules/powerpc/nic-wireless-modules
new file mode 100644
index 000000000..53fd18d7f
--- /dev/null
+++ b/debian/installer/modules/powerpc/nic-wireless-modules
@@ -0,0 +1 @@
+#include <nic-wireless-modules>
diff --git a/debian/installer/modules/powerpc/pata-modules b/debian/installer/modules/powerpc/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/powerpc/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/powerpc/pcmcia-modules b/debian/installer/modules/powerpc/pcmcia-modules
new file mode 100644
index 000000000..2bb5350fe
--- /dev/null
+++ b/debian/installer/modules/powerpc/pcmcia-modules
@@ -0,0 +1 @@
+#include <pcmcia-modules>
diff --git a/debian/installer/modules/powerpc/pcmcia-storage-modules b/debian/installer/modules/powerpc/pcmcia-storage-modules
new file mode 100644
index 000000000..9fbaff306
--- /dev/null
+++ b/debian/installer/modules/powerpc/pcmcia-storage-modules
@@ -0,0 +1,2 @@
+#include <pcmcia-storage-modules>
+
diff --git a/debian/installer/modules/powerpc/ppp-modules b/debian/installer/modules/powerpc/ppp-modules
new file mode 100644
index 000000000..f1ae9b3d1
--- /dev/null
+++ b/debian/installer/modules/powerpc/ppp-modules
@@ -0,0 +1,2 @@
+#include <ppp-modules>
+
diff --git a/debian/installer/modules/powerpc/sata-modules b/debian/installer/modules/powerpc/sata-modules
new file mode 100644
index 000000000..071cb860b
--- /dev/null
+++ b/debian/installer/modules/powerpc/sata-modules
@@ -0,0 +1,2 @@
+#include <sata-modules>
+
diff --git a/debian/installer/modules/powerpc/scsi-core-modules b/debian/installer/modules/powerpc/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/powerpc/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/powerpc/scsi-modules b/debian/installer/modules/powerpc/scsi-modules
new file mode 100644
index 000000000..8909dfb79
--- /dev/null
+++ b/debian/installer/modules/powerpc/scsi-modules
@@ -0,0 +1 @@
+#include <scsi-modules>
diff --git a/debian/installer/modules/powerpc/scsi-nic-modules b/debian/installer/modules/powerpc/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/powerpc/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/powerpc/serial-modules b/debian/installer/modules/powerpc/serial-modules
new file mode 100644
index 000000000..6ab8b8c35
--- /dev/null
+++ b/debian/installer/modules/powerpc/serial-modules
@@ -0,0 +1 @@
+#include <serial-modules>
diff --git a/debian/installer/modules/powerpc/squashfs-modules b/debian/installer/modules/powerpc/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/powerpc/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/powerpc/udf-modules b/debian/installer/modules/powerpc/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/powerpc/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/powerpc/uinput-modules b/debian/installer/modules/powerpc/uinput-modules
new file mode 100644
index 000000000..58a833779
--- /dev/null
+++ b/debian/installer/modules/powerpc/uinput-modules
@@ -0,0 +1 @@
+#include <uinput-modules>
diff --git a/debian/installer/modules/powerpc/usb-modules b/debian/installer/modules/powerpc/usb-modules
new file mode 100644
index 000000000..c598dedd8
--- /dev/null
+++ b/debian/installer/modules/powerpc/usb-modules
@@ -0,0 +1 @@
+#include <usb-modules>
diff --git a/debian/installer/modules/powerpc/usb-serial-modules b/debian/installer/modules/powerpc/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/powerpc/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/powerpc/usb-storage-modules b/debian/installer/modules/powerpc/usb-storage-modules
new file mode 100644
index 000000000..272d95e2e
--- /dev/null
+++ b/debian/installer/modules/powerpc/usb-storage-modules
@@ -0,0 +1,2 @@
+#include <usb-storage-modules>
+
diff --git a/debian/installer/modules/powerpc/xfs-modules b/debian/installer/modules/powerpc/xfs-modules
new file mode 100644
index 000000000..c020b5d39
--- /dev/null
+++ b/debian/installer/modules/powerpc/xfs-modules
@@ -0,0 +1,2 @@
+#include <xfs-modules>
+
diff --git a/debian/installer/modules/ppc64 b/debian/installer/modules/ppc64
new file mode 120000
index 000000000..a3e2a5788
--- /dev/null
+++ b/debian/installer/modules/ppc64
@@ -0,0 +1 @@
+powerpc-powerpc64 \ No newline at end of file
diff --git a/debian/installer/modules/ppc64el/ata-modules b/debian/installer/modules/ppc64el/ata-modules
new file mode 100644
index 000000000..03599667e
--- /dev/null
+++ b/debian/installer/modules/ppc64el/ata-modules
@@ -0,0 +1 @@
+#include "../ppc64/ata-modules"
diff --git a/debian/installer/modules/ppc64el/btrfs-modules b/debian/installer/modules/ppc64el/btrfs-modules
new file mode 100644
index 000000000..1d9d7d86f
--- /dev/null
+++ b/debian/installer/modules/ppc64el/btrfs-modules
@@ -0,0 +1 @@
+#include "../ppc64/btrfs-modules"
diff --git a/debian/installer/modules/ppc64el/cdrom-core-modules b/debian/installer/modules/ppc64el/cdrom-core-modules
new file mode 100644
index 000000000..4e22480aa
--- /dev/null
+++ b/debian/installer/modules/ppc64el/cdrom-core-modules
@@ -0,0 +1 @@
+#include "../ppc64/cdrom-core-modules"
diff --git a/debian/installer/modules/ppc64el/crc-modules b/debian/installer/modules/ppc64el/crc-modules
new file mode 100644
index 000000000..6adf710ee
--- /dev/null
+++ b/debian/installer/modules/ppc64el/crc-modules
@@ -0,0 +1 @@
+#include "../ppc64/crc-modules"
diff --git a/debian/installer/modules/ppc64el/crypto-dm-modules b/debian/installer/modules/ppc64el/crypto-dm-modules
new file mode 100644
index 000000000..f00e29325
--- /dev/null
+++ b/debian/installer/modules/ppc64el/crypto-dm-modules
@@ -0,0 +1 @@
+#include "../ppc64/crypto-dm-modules"
diff --git a/debian/installer/modules/ppc64el/crypto-modules b/debian/installer/modules/ppc64el/crypto-modules
new file mode 100644
index 000000000..1d84b7f90
--- /dev/null
+++ b/debian/installer/modules/ppc64el/crypto-modules
@@ -0,0 +1 @@
+#include "../ppc64/crypto-modules"
diff --git a/debian/installer/modules/ppc64el/event-modules b/debian/installer/modules/ppc64el/event-modules
new file mode 100644
index 000000000..e4a33897e
--- /dev/null
+++ b/debian/installer/modules/ppc64el/event-modules
@@ -0,0 +1 @@
+#include "../ppc64/event-modules"
diff --git a/debian/installer/modules/ppc64el/ext4-modules b/debian/installer/modules/ppc64el/ext4-modules
new file mode 100644
index 000000000..b145b0d96
--- /dev/null
+++ b/debian/installer/modules/ppc64el/ext4-modules
@@ -0,0 +1 @@
+#include "../ppc64/ext4-modules"
diff --git a/debian/installer/modules/ppc64el/f2fs-modules b/debian/installer/modules/ppc64el/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/ppc64el/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/ppc64el/fancontrol-modules b/debian/installer/modules/ppc64el/fancontrol-modules
new file mode 100644
index 000000000..c3ace7562
--- /dev/null
+++ b/debian/installer/modules/ppc64el/fancontrol-modules
@@ -0,0 +1 @@
+#include "../ppc64/fancontrol-modules"
diff --git a/debian/installer/modules/ppc64el/fat-modules b/debian/installer/modules/ppc64el/fat-modules
new file mode 100644
index 000000000..016d97275
--- /dev/null
+++ b/debian/installer/modules/ppc64el/fat-modules
@@ -0,0 +1 @@
+#include "../ppc64/fat-modules"
diff --git a/debian/installer/modules/ppc64el/fb-modules b/debian/installer/modules/ppc64el/fb-modules
new file mode 100644
index 000000000..aba524d90
--- /dev/null
+++ b/debian/installer/modules/ppc64el/fb-modules
@@ -0,0 +1 @@
+#include <fb-modules>
diff --git a/debian/installer/modules/ppc64el/firewire-core-modules b/debian/installer/modules/ppc64el/firewire-core-modules
new file mode 100644
index 000000000..5a7791fe8
--- /dev/null
+++ b/debian/installer/modules/ppc64el/firewire-core-modules
@@ -0,0 +1 @@
+#include "../ppc64/firewire-core-modules"
diff --git a/debian/installer/modules/ppc64el/fuse-modules b/debian/installer/modules/ppc64el/fuse-modules
new file mode 100644
index 000000000..c90a988b2
--- /dev/null
+++ b/debian/installer/modules/ppc64el/fuse-modules
@@ -0,0 +1 @@
+#include "../ppc64/fuse-modules"
diff --git a/debian/installer/modules/ppc64el/hypervisor-modules b/debian/installer/modules/ppc64el/hypervisor-modules
new file mode 100644
index 000000000..2c8e7d824
--- /dev/null
+++ b/debian/installer/modules/ppc64el/hypervisor-modules
@@ -0,0 +1 @@
+#include "../ppc64/hypervisor-modules"
diff --git a/debian/installer/modules/ppc64el/i2c-modules b/debian/installer/modules/ppc64el/i2c-modules
new file mode 100644
index 000000000..1121952ac
--- /dev/null
+++ b/debian/installer/modules/ppc64el/i2c-modules
@@ -0,0 +1 @@
+#include "../ppc64/i2c-modules"
diff --git a/debian/installer/modules/ppc64el/input-modules b/debian/installer/modules/ppc64el/input-modules
new file mode 100644
index 000000000..94d6a1174
--- /dev/null
+++ b/debian/installer/modules/ppc64el/input-modules
@@ -0,0 +1 @@
+#include "../ppc64/input-modules"
diff --git a/debian/installer/modules/ppc64el/isofs-modules b/debian/installer/modules/ppc64el/isofs-modules
new file mode 100644
index 000000000..ff9a9e5cb
--- /dev/null
+++ b/debian/installer/modules/ppc64el/isofs-modules
@@ -0,0 +1 @@
+#include "../ppc64/isofs-modules"
diff --git a/debian/installer/modules/ppc64el/jfs-modules b/debian/installer/modules/ppc64el/jfs-modules
new file mode 100644
index 000000000..86a502bda
--- /dev/null
+++ b/debian/installer/modules/ppc64el/jfs-modules
@@ -0,0 +1 @@
+#include "../ppc64/jfs-modules"
diff --git a/debian/installer/modules/ppc64el/kernel-image b/debian/installer/modules/ppc64el/kernel-image
new file mode 100644
index 000000000..243665337
--- /dev/null
+++ b/debian/installer/modules/ppc64el/kernel-image
@@ -0,0 +1 @@
+#include "../ppc64/kernel-image"
diff --git a/debian/installer/modules/ppc64el/loop-modules b/debian/installer/modules/ppc64el/loop-modules
new file mode 100644
index 000000000..2373df643
--- /dev/null
+++ b/debian/installer/modules/ppc64el/loop-modules
@@ -0,0 +1 @@
+#include "../ppc64/loop-modules"
diff --git a/debian/installer/modules/ppc64el/md-modules b/debian/installer/modules/ppc64el/md-modules
new file mode 100644
index 000000000..be97ac8b0
--- /dev/null
+++ b/debian/installer/modules/ppc64el/md-modules
@@ -0,0 +1 @@
+#include "../ppc64/md-modules"
diff --git a/debian/installer/modules/ppc64el/mouse-modules b/debian/installer/modules/ppc64el/mouse-modules
new file mode 100644
index 000000000..fecdd47a4
--- /dev/null
+++ b/debian/installer/modules/ppc64el/mouse-modules
@@ -0,0 +1 @@
+#include "../ppc64/mouse-modules"
diff --git a/debian/installer/modules/ppc64el/mtd-core-modules b/debian/installer/modules/ppc64el/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/ppc64el/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/ppc64el/multipath-modules b/debian/installer/modules/ppc64el/multipath-modules
new file mode 100644
index 000000000..d6965bdb8
--- /dev/null
+++ b/debian/installer/modules/ppc64el/multipath-modules
@@ -0,0 +1 @@
+#include "../ppc64/multipath-modules"
diff --git a/debian/installer/modules/ppc64el/nbd-modules b/debian/installer/modules/ppc64el/nbd-modules
new file mode 100644
index 000000000..9037d8f63
--- /dev/null
+++ b/debian/installer/modules/ppc64el/nbd-modules
@@ -0,0 +1 @@
+#include "../ppc64/nbd-modules"
diff --git a/debian/installer/modules/ppc64el/nic-modules b/debian/installer/modules/ppc64el/nic-modules
new file mode 100644
index 000000000..f69226417
--- /dev/null
+++ b/debian/installer/modules/ppc64el/nic-modules
@@ -0,0 +1 @@
+#include "../ppc64/nic-modules"
diff --git a/debian/installer/modules/ppc64el/nic-shared-modules b/debian/installer/modules/ppc64el/nic-shared-modules
new file mode 100644
index 000000000..c8ff13b12
--- /dev/null
+++ b/debian/installer/modules/ppc64el/nic-shared-modules
@@ -0,0 +1 @@
+#include "../ppc64/nic-shared-modules"
diff --git a/debian/installer/modules/ppc64el/nic-usb-modules b/debian/installer/modules/ppc64el/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/ppc64el/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/ppc64el/nic-wireless-modules b/debian/installer/modules/ppc64el/nic-wireless-modules
new file mode 100644
index 000000000..68609a32c
--- /dev/null
+++ b/debian/installer/modules/ppc64el/nic-wireless-modules
@@ -0,0 +1 @@
+#include "../ppc64/nic-wireless-modules"
diff --git a/debian/installer/modules/ppc64el/ppp-modules b/debian/installer/modules/ppc64el/ppp-modules
new file mode 100644
index 000000000..212615220
--- /dev/null
+++ b/debian/installer/modules/ppc64el/ppp-modules
@@ -0,0 +1 @@
+#include "../ppc64/ppp-modules"
diff --git a/debian/installer/modules/ppc64el/sata-modules b/debian/installer/modules/ppc64el/sata-modules
new file mode 100644
index 000000000..92f711ac9
--- /dev/null
+++ b/debian/installer/modules/ppc64el/sata-modules
@@ -0,0 +1 @@
+#include "../ppc64/sata-modules"
diff --git a/debian/installer/modules/ppc64el/scsi-core-modules b/debian/installer/modules/ppc64el/scsi-core-modules
new file mode 100644
index 000000000..b764c2b2e
--- /dev/null
+++ b/debian/installer/modules/ppc64el/scsi-core-modules
@@ -0,0 +1 @@
+#include "../ppc64/scsi-core-modules"
diff --git a/debian/installer/modules/ppc64el/scsi-modules b/debian/installer/modules/ppc64el/scsi-modules
new file mode 100644
index 000000000..c3979d673
--- /dev/null
+++ b/debian/installer/modules/ppc64el/scsi-modules
@@ -0,0 +1 @@
+#include "../ppc64/scsi-modules"
diff --git a/debian/installer/modules/ppc64el/scsi-nic-modules b/debian/installer/modules/ppc64el/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/ppc64el/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/ppc64el/serial-modules b/debian/installer/modules/ppc64el/serial-modules
new file mode 100644
index 000000000..111ebcd6d
--- /dev/null
+++ b/debian/installer/modules/ppc64el/serial-modules
@@ -0,0 +1 @@
+#include "../ppc64/serial-modules"
diff --git a/debian/installer/modules/ppc64el/squashfs-modules b/debian/installer/modules/ppc64el/squashfs-modules
new file mode 100644
index 000000000..557d0d204
--- /dev/null
+++ b/debian/installer/modules/ppc64el/squashfs-modules
@@ -0,0 +1 @@
+#include "../ppc64/squashfs-modules"
diff --git a/debian/installer/modules/ppc64el/udf-modules b/debian/installer/modules/ppc64el/udf-modules
new file mode 100644
index 000000000..c7471ab0b
--- /dev/null
+++ b/debian/installer/modules/ppc64el/udf-modules
@@ -0,0 +1 @@
+#include "../ppc64/udf-modules"
diff --git a/debian/installer/modules/ppc64el/uinput-modules b/debian/installer/modules/ppc64el/uinput-modules
new file mode 100644
index 000000000..4a3898f13
--- /dev/null
+++ b/debian/installer/modules/ppc64el/uinput-modules
@@ -0,0 +1 @@
+#include "../ppc64/uinput-modules"
diff --git a/debian/installer/modules/ppc64el/usb-modules b/debian/installer/modules/ppc64el/usb-modules
new file mode 100644
index 000000000..a113185a2
--- /dev/null
+++ b/debian/installer/modules/ppc64el/usb-modules
@@ -0,0 +1 @@
+#include "../ppc64/usb-modules"
diff --git a/debian/installer/modules/ppc64el/usb-serial-modules b/debian/installer/modules/ppc64el/usb-serial-modules
new file mode 100644
index 000000000..c7fe81a40
--- /dev/null
+++ b/debian/installer/modules/ppc64el/usb-serial-modules
@@ -0,0 +1 @@
+#include "../ppc64/usb-serial-modules"
diff --git a/debian/installer/modules/ppc64el/usb-storage-modules b/debian/installer/modules/ppc64el/usb-storage-modules
new file mode 100644
index 000000000..43d2811a9
--- /dev/null
+++ b/debian/installer/modules/ppc64el/usb-storage-modules
@@ -0,0 +1 @@
+#include "../ppc64/usb-storage-modules"
diff --git a/debian/installer/modules/ppc64el/xfs-modules b/debian/installer/modules/ppc64el/xfs-modules
new file mode 100644
index 000000000..3431331e9
--- /dev/null
+++ b/debian/installer/modules/ppc64el/xfs-modules
@@ -0,0 +1 @@
+#include "../ppc64/xfs-modules"
diff --git a/debian/installer/modules/ppp-modules b/debian/installer/modules/ppp-modules
new file mode 100644
index 000000000..0dd77f0b5
--- /dev/null
+++ b/debian/installer/modules/ppp-modules
@@ -0,0 +1,5 @@
+ppp_async ?
+ppp_deflate
+ppp_synctty ?
+pppoe
+pppox
diff --git a/debian/installer/modules/qnx4-modules b/debian/installer/modules/qnx4-modules
new file mode 100644
index 000000000..05d4adc62
--- /dev/null
+++ b/debian/installer/modules/qnx4-modules
@@ -0,0 +1 @@
+qnx4
diff --git a/debian/installer/modules/rfkill-modules b/debian/installer/modules/rfkill-modules
new file mode 100644
index 000000000..c9eff47f9
--- /dev/null
+++ b/debian/installer/modules/rfkill-modules
@@ -0,0 +1 @@
+rfkill
diff --git a/debian/installer/modules/riscv64/ata-modules b/debian/installer/modules/riscv64/ata-modules
new file mode 100644
index 000000000..ab5e7fdf0
--- /dev/null
+++ b/debian/installer/modules/riscv64/ata-modules
@@ -0,0 +1 @@
+libata ?
diff --git a/debian/installer/modules/riscv64/btrfs-modules b/debian/installer/modules/riscv64/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/riscv64/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/riscv64/cdrom-core-modules b/debian/installer/modules/riscv64/cdrom-core-modules
new file mode 100644
index 000000000..3ff69b48f
--- /dev/null
+++ b/debian/installer/modules/riscv64/cdrom-core-modules
@@ -0,0 +1 @@
+#include <cdrom-core-modules>
diff --git a/debian/installer/modules/riscv64/crc-modules b/debian/installer/modules/riscv64/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/riscv64/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/riscv64/crypto-dm-modules b/debian/installer/modules/riscv64/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/riscv64/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/riscv64/crypto-modules b/debian/installer/modules/riscv64/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/riscv64/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/riscv64/event-modules b/debian/installer/modules/riscv64/event-modules
new file mode 100644
index 000000000..f8819afd3
--- /dev/null
+++ b/debian/installer/modules/riscv64/event-modules
@@ -0,0 +1 @@
+#include <event-modules>
diff --git a/debian/installer/modules/riscv64/ext4-modules b/debian/installer/modules/riscv64/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/riscv64/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/riscv64/f2fs-modules b/debian/installer/modules/riscv64/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/riscv64/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/riscv64/fat-modules b/debian/installer/modules/riscv64/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/riscv64/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/riscv64/fb-modules b/debian/installer/modules/riscv64/fb-modules
new file mode 100644
index 000000000..aba524d90
--- /dev/null
+++ b/debian/installer/modules/riscv64/fb-modules
@@ -0,0 +1 @@
+#include <fb-modules>
diff --git a/debian/installer/modules/riscv64/fuse-modules b/debian/installer/modules/riscv64/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/riscv64/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/riscv64/i2c-modules b/debian/installer/modules/riscv64/i2c-modules
new file mode 100644
index 000000000..203a607e7
--- /dev/null
+++ b/debian/installer/modules/riscv64/i2c-modules
@@ -0,0 +1 @@
+#include <i2c-modules>
diff --git a/debian/installer/modules/riscv64/input-modules b/debian/installer/modules/riscv64/input-modules
new file mode 100644
index 000000000..5ecb595a4
--- /dev/null
+++ b/debian/installer/modules/riscv64/input-modules
@@ -0,0 +1 @@
+#include <input-modules>
diff --git a/debian/installer/modules/riscv64/isofs-modules b/debian/installer/modules/riscv64/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/riscv64/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/riscv64/jfs-modules b/debian/installer/modules/riscv64/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/riscv64/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/riscv64/kernel-image b/debian/installer/modules/riscv64/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/riscv64/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/riscv64/loop-modules b/debian/installer/modules/riscv64/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/riscv64/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/riscv64/md-modules b/debian/installer/modules/riscv64/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/riscv64/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/riscv64/mmc-core-modules b/debian/installer/modules/riscv64/mmc-core-modules
new file mode 100644
index 000000000..7bf38465c
--- /dev/null
+++ b/debian/installer/modules/riscv64/mmc-core-modules
@@ -0,0 +1 @@
+#include <mmc-core-modules>
diff --git a/debian/installer/modules/riscv64/mmc-modules b/debian/installer/modules/riscv64/mmc-modules
new file mode 100644
index 000000000..dadfd5334
--- /dev/null
+++ b/debian/installer/modules/riscv64/mmc-modules
@@ -0,0 +1 @@
+#include <mmc-modules>
diff --git a/debian/installer/modules/riscv64/mtd-core-modules b/debian/installer/modules/riscv64/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/riscv64/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/riscv64/mtd-modules b/debian/installer/modules/riscv64/mtd-modules
new file mode 100644
index 000000000..5dd7997b2
--- /dev/null
+++ b/debian/installer/modules/riscv64/mtd-modules
@@ -0,0 +1 @@
+#include <mtd-modules>
diff --git a/debian/installer/modules/riscv64/multipath-modules b/debian/installer/modules/riscv64/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/riscv64/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/riscv64/nbd-modules b/debian/installer/modules/riscv64/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/riscv64/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/riscv64/nic-modules b/debian/installer/modules/riscv64/nic-modules
new file mode 100644
index 000000000..2512e8395
--- /dev/null
+++ b/debian/installer/modules/riscv64/nic-modules
@@ -0,0 +1 @@
+#include <nic-modules>
diff --git a/debian/installer/modules/riscv64/nic-shared-modules b/debian/installer/modules/riscv64/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/riscv64/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/riscv64/nic-usb-modules b/debian/installer/modules/riscv64/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/riscv64/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/riscv64/nic-wireless-modules b/debian/installer/modules/riscv64/nic-wireless-modules
new file mode 100644
index 000000000..53fd18d7f
--- /dev/null
+++ b/debian/installer/modules/riscv64/nic-wireless-modules
@@ -0,0 +1 @@
+#include <nic-wireless-modules>
diff --git a/debian/installer/modules/riscv64/pata-modules b/debian/installer/modules/riscv64/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/riscv64/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/riscv64/ppp-modules b/debian/installer/modules/riscv64/ppp-modules
new file mode 100644
index 000000000..1f26aa1ee
--- /dev/null
+++ b/debian/installer/modules/riscv64/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/riscv64/sata-modules b/debian/installer/modules/riscv64/sata-modules
new file mode 100644
index 000000000..01318c258
--- /dev/null
+++ b/debian/installer/modules/riscv64/sata-modules
@@ -0,0 +1 @@
+#include <sata-modules>
diff --git a/debian/installer/modules/riscv64/scsi-core-modules b/debian/installer/modules/riscv64/scsi-core-modules
new file mode 100644
index 000000000..dd65d6614
--- /dev/null
+++ b/debian/installer/modules/riscv64/scsi-core-modules
@@ -0,0 +1 @@
+#include <scsi-core-modules>
diff --git a/debian/installer/modules/riscv64/scsi-modules b/debian/installer/modules/riscv64/scsi-modules
new file mode 100644
index 000000000..675462a14
--- /dev/null
+++ b/debian/installer/modules/riscv64/scsi-modules
@@ -0,0 +1,2 @@
+#include <scsi-modules>
+
diff --git a/debian/installer/modules/riscv64/scsi-nic-modules b/debian/installer/modules/riscv64/scsi-nic-modules
new file mode 100644
index 000000000..089dd5dc6
--- /dev/null
+++ b/debian/installer/modules/riscv64/scsi-nic-modules
@@ -0,0 +1 @@
+#include <scsi-nic-modules>
diff --git a/debian/installer/modules/riscv64/squashfs-modules b/debian/installer/modules/riscv64/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/riscv64/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/riscv64/udf-modules b/debian/installer/modules/riscv64/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/riscv64/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/riscv64/usb-modules b/debian/installer/modules/riscv64/usb-modules
new file mode 100644
index 000000000..c598dedd8
--- /dev/null
+++ b/debian/installer/modules/riscv64/usb-modules
@@ -0,0 +1 @@
+#include <usb-modules>
diff --git a/debian/installer/modules/riscv64/usb-serial-modules b/debian/installer/modules/riscv64/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/riscv64/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/riscv64/usb-storage-modules b/debian/installer/modules/riscv64/usb-storage-modules
new file mode 100644
index 000000000..8c5e81b55
--- /dev/null
+++ b/debian/installer/modules/riscv64/usb-storage-modules
@@ -0,0 +1 @@
+#include <usb-storage-modules>
diff --git a/debian/installer/modules/rtc-modules b/debian/installer/modules/rtc-modules
new file mode 100644
index 000000000..0a78e7856
--- /dev/null
+++ b/debian/installer/modules/rtc-modules
@@ -0,0 +1,2 @@
+rtc ?
+rtc-cmos
diff --git a/debian/installer/modules/s390x/btrfs-modules b/debian/installer/modules/s390x/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/s390x/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/s390x/cdrom-core-modules b/debian/installer/modules/s390x/cdrom-core-modules
new file mode 100644
index 000000000..3ff69b48f
--- /dev/null
+++ b/debian/installer/modules/s390x/cdrom-core-modules
@@ -0,0 +1 @@
+#include <cdrom-core-modules>
diff --git a/debian/installer/modules/s390x/crc-modules b/debian/installer/modules/s390x/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/s390x/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/s390x/crypto-dm-modules b/debian/installer/modules/s390x/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/s390x/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/s390x/crypto-modules b/debian/installer/modules/s390x/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/s390x/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/s390x/dasd-extra-modules b/debian/installer/modules/s390x/dasd-extra-modules
new file mode 100644
index 000000000..ddd10cdfb
--- /dev/null
+++ b/debian/installer/modules/s390x/dasd-extra-modules
@@ -0,0 +1 @@
+dasd_diag_mod
diff --git a/debian/installer/modules/s390x/dasd-modules b/debian/installer/modules/s390x/dasd-modules
new file mode 100644
index 000000000..d3df219e7
--- /dev/null
+++ b/debian/installer/modules/s390x/dasd-modules
@@ -0,0 +1,2 @@
+dasd_eckd_mod
+dasd_fba_mod
diff --git a/debian/installer/modules/s390x/ext4-modules b/debian/installer/modules/s390x/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/s390x/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/s390x/f2fs-modules b/debian/installer/modules/s390x/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/s390x/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/s390x/fat-modules b/debian/installer/modules/s390x/fat-modules
new file mode 100644
index 000000000..cce8fd30c
--- /dev/null
+++ b/debian/installer/modules/s390x/fat-modules
@@ -0,0 +1,2 @@
+#include <fat-modules>
+
diff --git a/debian/installer/modules/s390x/fuse-modules b/debian/installer/modules/s390x/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/s390x/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/s390x/isofs-modules b/debian/installer/modules/s390x/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/s390x/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/s390x/kernel-image b/debian/installer/modules/s390x/kernel-image
new file mode 100644
index 000000000..fd8c3a772
--- /dev/null
+++ b/debian/installer/modules/s390x/kernel-image
@@ -0,0 +1,2 @@
+#include <kernel-image>
+vmcp ?
diff --git a/debian/installer/modules/s390x/loop-modules b/debian/installer/modules/s390x/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/s390x/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/s390x/md-modules b/debian/installer/modules/s390x/md-modules
new file mode 100644
index 000000000..ade088ddb
--- /dev/null
+++ b/debian/installer/modules/s390x/md-modules
@@ -0,0 +1,2 @@
+#include <md-modules>
+
diff --git a/debian/installer/modules/s390x/mtd-core-modules b/debian/installer/modules/s390x/mtd-core-modules
new file mode 100644
index 000000000..28fdada60
--- /dev/null
+++ b/debian/installer/modules/s390x/mtd-core-modules
@@ -0,0 +1 @@
+#include <mtd-core-modules>
diff --git a/debian/installer/modules/s390x/multipath-modules b/debian/installer/modules/s390x/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/s390x/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/s390x/nbd-modules b/debian/installer/modules/s390x/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/s390x/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/s390x/nic-modules b/debian/installer/modules/s390x/nic-modules
new file mode 100644
index 000000000..5e39d1f5e
--- /dev/null
+++ b/debian/installer/modules/s390x/nic-modules
@@ -0,0 +1,7 @@
+netiucv
+ctcm
+lcs
+qeth
+qeth_l2
+qeth_l3
+virtio_net
diff --git a/debian/installer/modules/s390x/scsi-core-modules b/debian/installer/modules/s390x/scsi-core-modules
new file mode 100644
index 000000000..3537f8234
--- /dev/null
+++ b/debian/installer/modules/s390x/scsi-core-modules
@@ -0,0 +1,2 @@
+#include <scsi-core-modules>
+
diff --git a/debian/installer/modules/s390x/scsi-modules b/debian/installer/modules/s390x/scsi-modules
new file mode 100644
index 000000000..0a64e24fe
--- /dev/null
+++ b/debian/installer/modules/s390x/scsi-modules
@@ -0,0 +1,2 @@
+#include <scsi-modules>
+zfcp
diff --git a/debian/installer/modules/s390x/udf-modules b/debian/installer/modules/s390x/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/s390x/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/s390x/xfs-modules b/debian/installer/modules/s390x/xfs-modules
new file mode 100644
index 000000000..c020b5d39
--- /dev/null
+++ b/debian/installer/modules/s390x/xfs-modules
@@ -0,0 +1,2 @@
+#include <xfs-modules>
+
diff --git a/debian/installer/modules/sata-modules b/debian/installer/modules/sata-modules
new file mode 100644
index 000000000..da038b739
--- /dev/null
+++ b/debian/installer/modules/sata-modules
@@ -0,0 +1,13 @@
+# Include SATA drivers by default
+drivers/ata/ahci* ?
+drivers/ata/sata_*
+
+# sata-sis depends on pata-sis; avoid a dependency
+pata_sis ?
+
+# Include more SATA drivers with unusual names
+acard-ahci ?
+ata_piix ?
+sx8 ?
+pdc_adma ?
+mtip32xx ?
diff --git a/debian/installer/modules/scsi-core-modules b/debian/installer/modules/scsi-core-modules
new file mode 100644
index 000000000..e0d1d8fca
--- /dev/null
+++ b/debian/installer/modules/scsi-core-modules
@@ -0,0 +1,4 @@
+scsi_mod
+sd_mod
+scsi_transport_sas ?
+scsi_transport_spi ?
diff --git a/debian/installer/modules/scsi-modules b/debian/installer/modules/scsi-modules
new file mode 100644
index 000000000..2c5fba05d
--- /dev/null
+++ b/debian/installer/modules/scsi-modules
@@ -0,0 +1,47 @@
+# Include SCSI controller drivers by default
+drivers/scsi/**
+mptfc
+mptsas
+mptspi
+
+# Include iSCSI boot support
+iscsi_ibft ?
+
+# Include Xen block driver even though it's not SCSI
+xen-blkfront ?
+
+# Exclude PCMCIA drivers, which depend on pcmcia-modules (FIXME)
+drivers/scsi/pcmcia/* -
+
+# Exclude drivers for converged NICs, packaged in scsi-nic-modules
+drivers/scsi/cxgbi/* -
+cxgb3i -
+cxgb4i -
+qedf -
+qedi -
+
+# Exclude enclosure driver
+ses -
+
+# Exclude target drivers
+tcm_qla2xxx -
+
+# Exclude common code packaged in {cdrom,scsi}-core-modules
+scsi_mod -
+sd_mod -
+sr_mod -
+scsi_transport_sas -
+scsi_transport_spi -
+
+# Exclude any other common code that isn't pulled in by dependencies
+drivers/scsi/device_handler/* -
+drivers/scsi/lib** -
+drivers/scsi/osd/* -
+drivers/scsi/scsi_transport_* -
+fcoe -
+raid_class -
+scsi_debug -
+
+# XXX not actually SCSI
+nvme ?
+virtio_blk ?
diff --git a/debian/installer/modules/scsi-nic-modules b/debian/installer/modules/scsi-nic-modules
new file mode 100644
index 000000000..b2b8f5e5d
--- /dev/null
+++ b/debian/installer/modules/scsi-nic-modules
@@ -0,0 +1,4 @@
+cxgb3i
+cxgb4i
+qedf
+qedi
diff --git a/debian/installer/modules/serial-modules b/debian/installer/modules/serial-modules
new file mode 100644
index 000000000..738348dd6
--- /dev/null
+++ b/debian/installer/modules/serial-modules
@@ -0,0 +1,3 @@
+rp2 ?
+serial_cs ?
+synclink_cs ?
diff --git a/debian/installer/modules/sh4-sh7751r/btrfs-modules b/debian/installer/modules/sh4-sh7751r/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/cdrom-core-modules b/debian/installer/modules/sh4-sh7751r/cdrom-core-modules
new file mode 100644
index 000000000..e264d7aa3
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/cdrom-core-modules
@@ -0,0 +1,2 @@
+#include <cdrom-core-modules>
+
diff --git a/debian/installer/modules/sh4-sh7751r/crc-modules b/debian/installer/modules/sh4-sh7751r/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/crypto-dm-modules b/debian/installer/modules/sh4-sh7751r/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/crypto-modules b/debian/installer/modules/sh4-sh7751r/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/ext4-modules b/debian/installer/modules/sh4-sh7751r/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/f2fs-modules b/debian/installer/modules/sh4-sh7751r/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/fat-modules b/debian/installer/modules/sh4-sh7751r/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/firewire-core-modules b/debian/installer/modules/sh4-sh7751r/firewire-core-modules
new file mode 100644
index 000000000..dcac80af9
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/firewire-core-modules
@@ -0,0 +1 @@
+#include <firewire-core-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/fuse-modules b/debian/installer/modules/sh4-sh7751r/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/i2c-modules b/debian/installer/modules/sh4-sh7751r/i2c-modules
new file mode 100644
index 000000000..203a607e7
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/i2c-modules
@@ -0,0 +1 @@
+#include <i2c-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/isofs-modules b/debian/installer/modules/sh4-sh7751r/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/jfs-modules b/debian/installer/modules/sh4-sh7751r/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/kernel-image b/debian/installer/modules/sh4-sh7751r/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/sh4-sh7751r/loop-modules b/debian/installer/modules/sh4-sh7751r/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/md-modules b/debian/installer/modules/sh4-sh7751r/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/minix-modules b/debian/installer/modules/sh4-sh7751r/minix-modules
new file mode 100644
index 000000000..82b984372
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/minix-modules
@@ -0,0 +1 @@
+#include <minix-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/multipath-modules b/debian/installer/modules/sh4-sh7751r/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/nbd-modules b/debian/installer/modules/sh4-sh7751r/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/nic-modules b/debian/installer/modules/sh4-sh7751r/nic-modules
new file mode 100644
index 000000000..67761a69c
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/nic-modules
@@ -0,0 +1,6 @@
+3c59x ?
+8139too ?
+e100 ?
+e1000 ?
+ne2k-pci ?
+r8169 ?
diff --git a/debian/installer/modules/sh4-sh7751r/nic-shared-modules b/debian/installer/modules/sh4-sh7751r/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/nic-usb-modules b/debian/installer/modules/sh4-sh7751r/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/pata-modules b/debian/installer/modules/sh4-sh7751r/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/ppp-modules b/debian/installer/modules/sh4-sh7751r/ppp-modules
new file mode 100644
index 000000000..1f26aa1ee
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/sata-modules b/debian/installer/modules/sh4-sh7751r/sata-modules
new file mode 100644
index 000000000..01318c258
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/sata-modules
@@ -0,0 +1 @@
+#include <sata-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/sound-modules b/debian/installer/modules/sh4-sh7751r/sound-modules
new file mode 100644
index 000000000..68395ab3d
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/sound-modules
@@ -0,0 +1 @@
+#include <sound-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/speakup-modules b/debian/installer/modules/sh4-sh7751r/speakup-modules
new file mode 100644
index 000000000..29592721a
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/speakup-modules
@@ -0,0 +1 @@
+#include <speakup-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/squashfs-modules b/debian/installer/modules/sh4-sh7751r/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/udf-modules b/debian/installer/modules/sh4-sh7751r/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/usb-serial-modules b/debian/installer/modules/sh4-sh7751r/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/usb-storage-modules b/debian/installer/modules/sh4-sh7751r/usb-storage-modules
new file mode 100644
index 000000000..8c5e81b55
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/usb-storage-modules
@@ -0,0 +1 @@
+#include <usb-storage-modules>
diff --git a/debian/installer/modules/sh4-sh7751r/xfs-modules b/debian/installer/modules/sh4-sh7751r/xfs-modules
new file mode 100644
index 000000000..98374e2bb
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7751r/xfs-modules
@@ -0,0 +1 @@
+#include <xfs-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/btrfs-modules b/debian/installer/modules/sh4-sh7785lcr/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/cdrom-core-modules b/debian/installer/modules/sh4-sh7785lcr/cdrom-core-modules
new file mode 100644
index 000000000..e264d7aa3
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/cdrom-core-modules
@@ -0,0 +1,2 @@
+#include <cdrom-core-modules>
+
diff --git a/debian/installer/modules/sh4-sh7785lcr/crc-modules b/debian/installer/modules/sh4-sh7785lcr/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/crypto-dm-modules b/debian/installer/modules/sh4-sh7785lcr/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/crypto-modules b/debian/installer/modules/sh4-sh7785lcr/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/ext4-modules b/debian/installer/modules/sh4-sh7785lcr/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/f2fs-modules b/debian/installer/modules/sh4-sh7785lcr/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/fat-modules b/debian/installer/modules/sh4-sh7785lcr/fat-modules
new file mode 100644
index 000000000..274584eb6
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/fat-modules
@@ -0,0 +1 @@
+#include <fat-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/firewire-core-modules b/debian/installer/modules/sh4-sh7785lcr/firewire-core-modules
new file mode 100644
index 000000000..dcac80af9
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/firewire-core-modules
@@ -0,0 +1 @@
+#include <firewire-core-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/fuse-modules b/debian/installer/modules/sh4-sh7785lcr/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/isofs-modules b/debian/installer/modules/sh4-sh7785lcr/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/jfs-modules b/debian/installer/modules/sh4-sh7785lcr/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/kernel-image b/debian/installer/modules/sh4-sh7785lcr/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/sh4-sh7785lcr/loop-modules b/debian/installer/modules/sh4-sh7785lcr/loop-modules
new file mode 100644
index 000000000..c1c948fa3
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/loop-modules
@@ -0,0 +1 @@
+#include <loop-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/md-modules b/debian/installer/modules/sh4-sh7785lcr/md-modules
new file mode 100644
index 000000000..26115e10b
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/md-modules
@@ -0,0 +1 @@
+#include <md-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/minix-modules b/debian/installer/modules/sh4-sh7785lcr/minix-modules
new file mode 100644
index 000000000..82b984372
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/minix-modules
@@ -0,0 +1 @@
+#include <minix-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/multipath-modules b/debian/installer/modules/sh4-sh7785lcr/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/nbd-modules b/debian/installer/modules/sh4-sh7785lcr/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/nic-modules b/debian/installer/modules/sh4-sh7785lcr/nic-modules
new file mode 100644
index 000000000..67761a69c
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/nic-modules
@@ -0,0 +1,6 @@
+3c59x ?
+8139too ?
+e100 ?
+e1000 ?
+ne2k-pci ?
+r8169 ?
diff --git a/debian/installer/modules/sh4-sh7785lcr/nic-shared-modules b/debian/installer/modules/sh4-sh7785lcr/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/nic-usb-modules b/debian/installer/modules/sh4-sh7785lcr/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/pata-modules b/debian/installer/modules/sh4-sh7785lcr/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/ppp-modules b/debian/installer/modules/sh4-sh7785lcr/ppp-modules
new file mode 100644
index 000000000..1f26aa1ee
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/ppp-modules
@@ -0,0 +1 @@
+#include <ppp-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/sata-modules b/debian/installer/modules/sh4-sh7785lcr/sata-modules
new file mode 100644
index 000000000..01318c258
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/sata-modules
@@ -0,0 +1 @@
+#include <sata-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/sound-modules b/debian/installer/modules/sh4-sh7785lcr/sound-modules
new file mode 100644
index 000000000..68395ab3d
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/sound-modules
@@ -0,0 +1 @@
+#include <sound-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/speakup-modules b/debian/installer/modules/sh4-sh7785lcr/speakup-modules
new file mode 100644
index 000000000..29592721a
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/speakup-modules
@@ -0,0 +1 @@
+#include <speakup-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/squashfs-modules b/debian/installer/modules/sh4-sh7785lcr/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/udf-modules b/debian/installer/modules/sh4-sh7785lcr/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/usb-serial-modules b/debian/installer/modules/sh4-sh7785lcr/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/sh4-sh7785lcr/xfs-modules b/debian/installer/modules/sh4-sh7785lcr/xfs-modules
new file mode 100644
index 000000000..98374e2bb
--- /dev/null
+++ b/debian/installer/modules/sh4-sh7785lcr/xfs-modules
@@ -0,0 +1 @@
+#include <xfs-modules>
diff --git a/debian/installer/modules/sound-modules b/debian/installer/modules/sound-modules
new file mode 100644
index 000000000..7bd30ee8e
--- /dev/null
+++ b/debian/installer/modules/sound-modules
@@ -0,0 +1,15 @@
+# Include sound drivers by default
+sound/**
+
+# Exclude any core/shared modules that aren't pulled in by dependencies
+sound/core/** -
+sound/drivers/** -
+sound/i2c/** -
+
+# Exclude synthesiser drivers
+snd-adlib -
+sound/**-synth -
+
+# Exclude soft-modem drivers
+sound/**-modem -
+snd-intel8x0m -
diff --git a/debian/installer/modules/sparc64/ata-modules b/debian/installer/modules/sparc64/ata-modules
new file mode 100644
index 000000000..b81c0f38b
--- /dev/null
+++ b/debian/installer/modules/sparc64/ata-modules
@@ -0,0 +1 @@
+#include <ata-modules>
diff --git a/debian/installer/modules/sparc64/btrfs-modules b/debian/installer/modules/sparc64/btrfs-modules
new file mode 100644
index 000000000..e261e1388
--- /dev/null
+++ b/debian/installer/modules/sparc64/btrfs-modules
@@ -0,0 +1 @@
+#include <btrfs-modules>
diff --git a/debian/installer/modules/sparc64/cdrom-core-modules b/debian/installer/modules/sparc64/cdrom-core-modules
new file mode 100644
index 000000000..e264d7aa3
--- /dev/null
+++ b/debian/installer/modules/sparc64/cdrom-core-modules
@@ -0,0 +1,2 @@
+#include <cdrom-core-modules>
+
diff --git a/debian/installer/modules/sparc64/crc-modules b/debian/installer/modules/sparc64/crc-modules
new file mode 100644
index 000000000..7e00de705
--- /dev/null
+++ b/debian/installer/modules/sparc64/crc-modules
@@ -0,0 +1 @@
+#include <crc-modules>
diff --git a/debian/installer/modules/sparc64/crypto-dm-modules b/debian/installer/modules/sparc64/crypto-dm-modules
new file mode 100644
index 000000000..4c8f2354c
--- /dev/null
+++ b/debian/installer/modules/sparc64/crypto-dm-modules
@@ -0,0 +1 @@
+#include <crypto-dm-modules>
diff --git a/debian/installer/modules/sparc64/crypto-modules b/debian/installer/modules/sparc64/crypto-modules
new file mode 100644
index 000000000..3a1e862b4
--- /dev/null
+++ b/debian/installer/modules/sparc64/crypto-modules
@@ -0,0 +1 @@
+#include <crypto-modules>
diff --git a/debian/installer/modules/sparc64/ext4-modules b/debian/installer/modules/sparc64/ext4-modules
new file mode 100644
index 000000000..394c577ce
--- /dev/null
+++ b/debian/installer/modules/sparc64/ext4-modules
@@ -0,0 +1 @@
+#include <ext4-modules>
diff --git a/debian/installer/modules/sparc64/f2fs-modules b/debian/installer/modules/sparc64/f2fs-modules
new file mode 100644
index 000000000..34359e041
--- /dev/null
+++ b/debian/installer/modules/sparc64/f2fs-modules
@@ -0,0 +1 @@
+#include <f2fs-modules>
diff --git a/debian/installer/modules/sparc64/fat-modules b/debian/installer/modules/sparc64/fat-modules
new file mode 100644
index 000000000..cce8fd30c
--- /dev/null
+++ b/debian/installer/modules/sparc64/fat-modules
@@ -0,0 +1,2 @@
+#include <fat-modules>
+
diff --git a/debian/installer/modules/sparc64/fb-modules b/debian/installer/modules/sparc64/fb-modules
new file mode 100644
index 000000000..aba524d90
--- /dev/null
+++ b/debian/installer/modules/sparc64/fb-modules
@@ -0,0 +1 @@
+#include <fb-modules>
diff --git a/debian/installer/modules/sparc64/fuse-modules b/debian/installer/modules/sparc64/fuse-modules
new file mode 100644
index 000000000..0b6ba0c8c
--- /dev/null
+++ b/debian/installer/modules/sparc64/fuse-modules
@@ -0,0 +1 @@
+#include <fuse-modules>
diff --git a/debian/installer/modules/sparc64/i2c-modules b/debian/installer/modules/sparc64/i2c-modules
new file mode 100644
index 000000000..203a607e7
--- /dev/null
+++ b/debian/installer/modules/sparc64/i2c-modules
@@ -0,0 +1 @@
+#include <i2c-modules>
diff --git a/debian/installer/modules/sparc64/input-modules b/debian/installer/modules/sparc64/input-modules
new file mode 100644
index 000000000..5ecb595a4
--- /dev/null
+++ b/debian/installer/modules/sparc64/input-modules
@@ -0,0 +1 @@
+#include <input-modules>
diff --git a/debian/installer/modules/sparc64/isofs-modules b/debian/installer/modules/sparc64/isofs-modules
new file mode 100644
index 000000000..da4fa9a3c
--- /dev/null
+++ b/debian/installer/modules/sparc64/isofs-modules
@@ -0,0 +1 @@
+#include <isofs-modules>
diff --git a/debian/installer/modules/sparc64/jfs-modules b/debian/installer/modules/sparc64/jfs-modules
new file mode 100644
index 000000000..7e4d912b9
--- /dev/null
+++ b/debian/installer/modules/sparc64/jfs-modules
@@ -0,0 +1 @@
+#include <jfs-modules>
diff --git a/debian/installer/modules/sparc64/kernel-image b/debian/installer/modules/sparc64/kernel-image
new file mode 100644
index 000000000..1d11b1921
--- /dev/null
+++ b/debian/installer/modules/sparc64/kernel-image
@@ -0,0 +1 @@
+#include <kernel-image>
diff --git a/debian/installer/modules/sparc64/md-modules b/debian/installer/modules/sparc64/md-modules
new file mode 100644
index 000000000..ade088ddb
--- /dev/null
+++ b/debian/installer/modules/sparc64/md-modules
@@ -0,0 +1,2 @@
+#include <md-modules>
+
diff --git a/debian/installer/modules/sparc64/multipath-modules b/debian/installer/modules/sparc64/multipath-modules
new file mode 100644
index 000000000..a8b69b253
--- /dev/null
+++ b/debian/installer/modules/sparc64/multipath-modules
@@ -0,0 +1 @@
+#include <multipath-modules>
diff --git a/debian/installer/modules/sparc64/nbd-modules b/debian/installer/modules/sparc64/nbd-modules
new file mode 100644
index 000000000..3c9b3e5d4
--- /dev/null
+++ b/debian/installer/modules/sparc64/nbd-modules
@@ -0,0 +1 @@
+#include <nbd-modules>
diff --git a/debian/installer/modules/sparc64/nic-modules b/debian/installer/modules/sparc64/nic-modules
new file mode 100644
index 000000000..ad212bc8b
--- /dev/null
+++ b/debian/installer/modules/sparc64/nic-modules
@@ -0,0 +1,4 @@
+#include <nic-modules>
+
+eql
+skfp
diff --git a/debian/installer/modules/sparc64/nic-shared-modules b/debian/installer/modules/sparc64/nic-shared-modules
new file mode 100644
index 000000000..cc84b14dc
--- /dev/null
+++ b/debian/installer/modules/sparc64/nic-shared-modules
@@ -0,0 +1 @@
+#include <nic-shared-modules>
diff --git a/debian/installer/modules/sparc64/nic-usb-modules b/debian/installer/modules/sparc64/nic-usb-modules
new file mode 100644
index 000000000..c479669b4
--- /dev/null
+++ b/debian/installer/modules/sparc64/nic-usb-modules
@@ -0,0 +1 @@
+#include <nic-usb-modules>
diff --git a/debian/installer/modules/sparc64/pata-modules b/debian/installer/modules/sparc64/pata-modules
new file mode 100644
index 000000000..b0cd6337a
--- /dev/null
+++ b/debian/installer/modules/sparc64/pata-modules
@@ -0,0 +1 @@
+#include <pata-modules>
diff --git a/debian/installer/modules/sparc64/ppp-modules b/debian/installer/modules/sparc64/ppp-modules
new file mode 100644
index 000000000..f1ae9b3d1
--- /dev/null
+++ b/debian/installer/modules/sparc64/ppp-modules
@@ -0,0 +1,2 @@
+#include <ppp-modules>
+
diff --git a/debian/installer/modules/sparc64/sata-modules b/debian/installer/modules/sparc64/sata-modules
new file mode 100644
index 000000000..01318c258
--- /dev/null
+++ b/debian/installer/modules/sparc64/sata-modules
@@ -0,0 +1 @@
+#include <sata-modules>
diff --git a/debian/installer/modules/sparc64/scsi-core-modules b/debian/installer/modules/sparc64/scsi-core-modules
new file mode 100644
index 000000000..6026fdf46
--- /dev/null
+++ b/debian/installer/modules/sparc64/scsi-core-modules
@@ -0,0 +1,6 @@
+#include <scsi-core-modules>
+
+# Support for virtual disk devices as a client under Sun Logical Domains.
+# Does not really belong here, but it's better than adding a new kernel
+# udeb just for this module.
+sunvdc ?
diff --git a/debian/installer/modules/sparc64/scsi-modules b/debian/installer/modules/sparc64/scsi-modules
new file mode 100644
index 000000000..263dcc9d4
--- /dev/null
+++ b/debian/installer/modules/sparc64/scsi-modules
@@ -0,0 +1,26 @@
+3w-9xxx
+3w-xxxx
+aacraid
+aic79xx
+aic7xxx
+aic94xx
+arcmsr
+atp870u ?
+dc395x
+dmx3191d
+hptiop
+initio
+ipr
+lpfc
+megaraid
+megaraid_sas
+mpt3sas
+mptsas
+mptspi
+qla1280 ?
+qla2xxx ?
+qla4xxx ?
+qlogicpti ?
+stex
+sun_esp
+sym53c8xx
diff --git a/debian/installer/modules/sparc64/squashfs-modules b/debian/installer/modules/sparc64/squashfs-modules
new file mode 100644
index 000000000..42d77887a
--- /dev/null
+++ b/debian/installer/modules/sparc64/squashfs-modules
@@ -0,0 +1 @@
+#include <squashfs-modules>
diff --git a/debian/installer/modules/sparc64/udf-modules b/debian/installer/modules/sparc64/udf-modules
new file mode 100644
index 000000000..b90d7ee9b
--- /dev/null
+++ b/debian/installer/modules/sparc64/udf-modules
@@ -0,0 +1 @@
+#include <udf-modules>
diff --git a/debian/installer/modules/sparc64/ufs-modules b/debian/installer/modules/sparc64/ufs-modules
new file mode 100644
index 000000000..163ead095
--- /dev/null
+++ b/debian/installer/modules/sparc64/ufs-modules
@@ -0,0 +1 @@
+#include <ufs-modules>
diff --git a/debian/installer/modules/sparc64/usb-modules b/debian/installer/modules/sparc64/usb-modules
new file mode 100644
index 000000000..c598dedd8
--- /dev/null
+++ b/debian/installer/modules/sparc64/usb-modules
@@ -0,0 +1 @@
+#include <usb-modules>
diff --git a/debian/installer/modules/sparc64/usb-serial-modules b/debian/installer/modules/sparc64/usb-serial-modules
new file mode 100644
index 000000000..c0a0dc3bd
--- /dev/null
+++ b/debian/installer/modules/sparc64/usb-serial-modules
@@ -0,0 +1 @@
+#include <usb-serial-modules>
diff --git a/debian/installer/modules/sparc64/usb-storage-modules b/debian/installer/modules/sparc64/usb-storage-modules
new file mode 100644
index 000000000..272d95e2e
--- /dev/null
+++ b/debian/installer/modules/sparc64/usb-storage-modules
@@ -0,0 +1,2 @@
+#include <usb-storage-modules>
+
diff --git a/debian/installer/modules/sparc64/xfs-modules b/debian/installer/modules/sparc64/xfs-modules
new file mode 100644
index 000000000..c020b5d39
--- /dev/null
+++ b/debian/installer/modules/sparc64/xfs-modules
@@ -0,0 +1,2 @@
+#include <xfs-modules>
+
diff --git a/debian/installer/modules/speakup-modules b/debian/installer/modules/speakup-modules
new file mode 100644
index 000000000..16822b914
--- /dev/null
+++ b/debian/installer/modules/speakup-modules
@@ -0,0 +1,15 @@
+speakup
+speakup_acntpc ?
+speakup_acntsa
+speakup_apollo
+speakup_audptr
+speakup_bns
+speakup_decext
+speakup_dectlk
+speakup_dtlk ?
+speakup_dummy
+speakup_keypc ?
+speakup_ltlk
+speakup_soft
+speakup_spkout
+speakup_txprt
diff --git a/debian/installer/modules/squashfs-modules b/debian/installer/modules/squashfs-modules
new file mode 100644
index 000000000..7c1157fa3
--- /dev/null
+++ b/debian/installer/modules/squashfs-modules
@@ -0,0 +1 @@
+squashfs
diff --git a/debian/installer/modules/udf-modules b/debian/installer/modules/udf-modules
new file mode 100644
index 000000000..97c604ff2
--- /dev/null
+++ b/debian/installer/modules/udf-modules
@@ -0,0 +1 @@
+udf
diff --git a/debian/installer/modules/ufs-modules b/debian/installer/modules/ufs-modules
new file mode 100644
index 000000000..19173e9aa
--- /dev/null
+++ b/debian/installer/modules/ufs-modules
@@ -0,0 +1 @@
+ufs
diff --git a/debian/installer/modules/uinput-modules b/debian/installer/modules/uinput-modules
new file mode 100644
index 000000000..42bc0053c
--- /dev/null
+++ b/debian/installer/modules/uinput-modules
@@ -0,0 +1 @@
+uinput
diff --git a/debian/installer/modules/usb-modules b/debian/installer/modules/usb-modules
new file mode 100644
index 000000000..68490ca76
--- /dev/null
+++ b/debian/installer/modules/usb-modules
@@ -0,0 +1,21 @@
+# Include USB host and dual-role drivers by default
+drivers/usb/host/**
+drivers/usb/c67x00/* ?
+drivers/usb/chipidea/* ?
+drivers/usb/dwc2/* ?
+drivers/usb/dwc3/* ?
+drivers/usb/isp1760/* ?
+drivers/usb/musb/* ?
+drivers/usb/renesas_usbhs/* ?
+
+# Exclude some obscure host drivers
+hwa-hc -
+sl811_cs -
+sl811-hcd -
+u132-hcd -
+whci-hcd -
+
+# Include USB PHY drivers by default
+drivers/phy/phy-*-usb* ?
+drivers/phy/*/phy-*-usb* ?
+drivers/usb/phy/* ?
diff --git a/debian/installer/modules/usb-serial-modules b/debian/installer/modules/usb-serial-modules
new file mode 100644
index 000000000..28f3aa760
--- /dev/null
+++ b/debian/installer/modules/usb-serial-modules
@@ -0,0 +1,28 @@
+# Include USB serial drivers by default
+drivers/usb/serial/*
+
+# Exclude drivers that are useless for serial consoles
+aircable -
+cyberjack -
+cypress_m8 -
+empeg -
+garmin_gps -
+ipaq -
+ipw -
+ir-usb -
+iuu_phoenix -
+kobil_sct -
+metro-usb -
+navman -
+omninet -
+opticon -
+option -
+qcaux -
+qcserial -
+sierra -
+symbolserial -
+usb_debug -
+usb_wwan -
+visor -
+wishbone-serial -
+xsens_mt -
diff --git a/debian/installer/modules/usb-storage-modules b/debian/installer/modules/usb-storage-modules
new file mode 100644
index 000000000..013c58cfc
--- /dev/null
+++ b/debian/installer/modules/usb-storage-modules
@@ -0,0 +1,2 @@
+# Include USB storage drivers by default
+drivers/usb/storage/*
diff --git a/debian/installer/modules/xfs-modules b/debian/installer/modules/xfs-modules
new file mode 100644
index 000000000..7bd8fb2ac
--- /dev/null
+++ b/debian/installer/modules/xfs-modules
@@ -0,0 +1,2 @@
+# Not available currently on all kernel versions, so marked optional.
+xfs ?
diff --git a/debian/installer/package-list b/debian/installer/package-list
new file mode 100644
index 000000000..3a809d006
--- /dev/null
+++ b/debian/installer/package-list
@@ -0,0 +1,458 @@
+# This file is used to build up the control file. The kernel version and
+# "-di" are appended to the package names. Section can be left out. So can
+# architecture, which is derived from the files in the modules directory.
+#
+Package: kernel-image
+Provides_arm64: mmc-core-modules
+Provides_armel: rtc-modules
+Provides_armmp: mmc-core-modules, mtd-core-modules
+Provides_i386: rtc-modules
+Provides_ia64: efi-modules
+Provides_loongson-3: i2c-modules, rtc-modules
+Provides_mips: rtc-modules
+Provides_mips64: rtc-modules
+Provides_mips64el: rtc-modules
+Provides_mips64r6: rtc-modules
+Provides_mips64r6el: rtc-modules
+Provides_mipsel: rtc-modules
+Provides_mipsr6: rtc-modules
+Provides_mipsr6el: rtc-modules
+Provides_parisc64-smp: i2c-modules
+Provides_powerpc: i2c-modules
+Provides_powerpc64:
+Provides_sh4: event-modules, fb-modules, input-modules, mouse-modules, nic-shared-modules, rtc-modules, uinput-modules, usb-modules
+Priority: standard
+Description: Linux kernel image and core modules for the Debian installer
+ This package contains the kernel image and core modules for the Debian
+ installer boot images. It does _not_ provide a usable kernel for your full
+ Debian system.
+
+Package: nic-modules
+Depends: kernel-image, nic-shared-modules, i2c-modules, crc-modules, mtd-core-modules
+Provides: nic-extra-modules
+Priority: standard
+Description: NIC drivers
+ This package contains Ethernet and some paravirtualised network drivers
+ for the kernel.
+
+Package: nic-wireless-modules
+Depends: kernel-image, nic-shared-modules, usb-modules, mmc-core-modules, pcmcia-modules, crc-modules, rfkill-modules, crypto-modules
+Priority: standard
+Description: Wireless NIC drivers
+ This package contains wireless NIC drivers for the kernel.
+ Includes crypto modules only needed for wireless (WEP, WPA).
+
+Package: nic-shared-modules
+Depends: kernel-image
+Priority: standard
+Description: Shared NIC drivers
+ This package contains NIC drivers needed by combinations of nic-modules,
+ nic-pcmcia-modules, nic-usb-modules and nic-wireless-modules.
+
+Package: serial-modules
+Depends: kernel-image, pcmcia-modules
+Priority: optional
+Description: Serial drivers
+ This package contains serial drivers for the kernel.
+
+Package: usb-serial-modules
+Depends: kernel-image, usb-modules
+Priority: optional
+Description: USB serial drivers
+ This package contains USB serial drivers for the kernel.
+
+Package: ppp-modules
+Depends: kernel-image, serial-modules, crc-modules
+Priority: optional
+Description: PPP drivers
+ This package contains PPP drivers for the kernel.
+
+Package: pata-modules
+Depends: kernel-image, ata-modules
+Priority: standard
+Priority_armhf: optional
+Description: PATA drivers
+ This package contains PATA drivers for the kernel.
+
+Package: cdrom-core-modules
+Depends: kernel-image, scsi-core-modules
+Depends_ia64: kernel-image, scsi-core-modules, ide-modules
+Depends_m68k: kernel-image, scsi-core-modules, ide-modules
+Priority: standard
+Description: CDROM support
+ This package contains core CDROM support for the kernel.
+
+Package: firewire-core-modules
+Depends: kernel-image, scsi-core-modules, crc-modules
+Priority: standard
+Description: Core FireWire drivers
+ This package contains core FireWire drivers for the kernel.
+
+Package: scsi-core-modules
+Depends: kernel-image
+Priority: standard
+Description: Core SCSI subsystem
+ This package contains the core SCSI subsystem for the kernel.
+
+Package: scsi-modules
+Depends: kernel-image, scsi-core-modules, cdrom-core-modules, ata-modules
+Priority: standard
+Description: SCSI drivers
+ This package contains SCSI drivers for the kernel.
+
+Package: scsi-nic-modules
+Depends: scsi-modules, nic-modules
+Priority: optional
+Description: SCSI drivers for converged NICs
+ This package contains SCSI drivers that depend on net drivers.
+
+Package: loop-modules
+Depends: kernel-image
+Priority: standard
+Description: Loopback filesystem support
+ This package contains loopback filesystem support for the kernel.
+
+Package: ipv6-modules
+Depends: kernel-image
+Priority: optional
+Description: IPv6 driver
+ This package contains the IPv6 driver for the kernel.
+
+Package: btrfs-modules
+Depends: kernel-image, crc-modules, md-modules
+Priority: optional
+Description: BTRFS filesystem support
+ This package contains the BTRFS filesystem module for the kernel.
+
+Package: ext4-modules
+Depends: kernel-image, crc-modules
+Provides: ext2-modules, ext3-modules
+Priority: standard
+Description: ext2/ext3/ext4 filesystem support
+ This package contains the ext4 filesystem module for the kernel, which
+ also supports ext2 and ext3.
+
+Package: isofs-modules
+Depends: kernel-image, cdrom-core-modules
+Priority: standard
+Description: ISOFS filesystem support
+ This package contains the ISOFS filesystem module for the kernel.
+
+Package: jffs2-modules
+Depends: kernel-image, mtd-modules
+Priority: optional
+Description: JFFS2 filesystem support
+ This package contains the JFFS2 filesystem module for the kernel.
+
+Package: jfs-modules
+Depends: kernel-image
+Priority: standard
+Description: JFS filesystem support
+ This package contains the JFS filesystem module for the kernel.
+
+Package: ufs-modules
+Depends: kernel-image
+Priority: optional
+Description: UFS filesystem support
+ This package contains the UFS filesystem module for the kernel.
+
+Package: xfs-modules
+Depends: kernel-image, crc-modules
+Priority: standard
+Description: XFS filesystem support
+ This package contains the XFS filesystem module for the kernel.
+
+Package: fat-modules
+Depends: kernel-image
+Priority: optional
+Priority_amd64: standard
+Priority_i386: standard
+Priority_ia64: standard
+Description: FAT filesystem support
+ This package contains the FAT and VFAT filesystem modules for the kernel.
+
+Package: hfs-modules
+Depends: kernel-image, cdrom-core-modules
+Priority: optional
+Description: HFS filesystem support
+ This package contains the HFS and HFS+ filesystem modules for the kernel.
+
+Package: affs-modules
+Depends: kernel-image
+Priority: optional
+Description: Amiga filesystem support
+ This package contains the Amiga filesystem module for the kernel.
+
+Package: minix-modules
+Depends: kernel-image
+Priority: optional
+Description: Minix filesystem support
+ This package contains the Minix filesystem module for the kernel.
+
+Package: nfs-modules
+Depends: kernel-image
+Priority: optional
+Description: NFS filesystem support
+ This package contains the NFS filesystem module for the kernel.
+
+Package: squashfs-modules
+Depends: kernel-image
+Priority: optional
+Description: squashfs modules
+ This package contains squashfs modules.
+
+Package: udf-modules
+Depends: kernel-image, crc-modules, cdrom-core-modules
+Priority: optional
+Description: UDF modules
+ This package contains the UDF filesystem module.
+
+Package: fuse-modules
+Depends: kernel-image
+Priority: optional
+Description: FUSE modules
+ This package contains the Filesystem in Userspace (FUSE) module.
+
+Package: f2fs-modules
+Depends: kernel-image, crc-modules
+Priority: optional
+Description: f2fs filesystem support
+ This package contains the f2fs (Flash-Friendly Filesystem) module.
+
+Package: md-modules
+Depends: kernel-image, crc-modules
+Priority: optional
+Description: RAID and LVM support
+ This package contains RAID and LVM modules for the kernel.
+
+Package: multipath-modules
+Depends: kernel-image, md-modules, scsi-core-modules
+Priority: optional
+Description: Multipath support
+ This package contains DM-Multipath modules for the kernel.
+
+Package: usb-modules
+Depends: kernel-image
+Priority: optional
+Description: USB support
+ This package contains core USB drivers for the kernel.
+
+Package: usb-storage-modules
+Depends: kernel-image, scsi-core-modules, usb-modules
+Priority: standard
+Description: USB storage support
+ This package contains the USB storage driver for the kernel.
+
+Package: pcmcia-storage-modules
+Depends: kernel-image, cdrom-core-modules, pcmcia-modules, ata-modules
+Priority: standard
+Description: PCMCIA storage drivers
+ This package contains PCMCIA storage drivers for the kernel.
+
+Package: fb-modules
+Depends: kernel-image, i2c-modules
+Depends_armel: kernel-image, usb-modules
+Priority: optional
+Priority_hppa: standard
+Description: Frame buffer support
+ This package contains Frame buffer drivers for the kernel.
+
+Package: input-modules
+Depends: kernel-image, usb-modules, i2c-modules, rfkill-modules, crc-modules
+Priority: optional
+Description: Input devices support
+ This package contains input device drivers for the kernel.
+
+Package: event-modules
+Depends: kernel-image
+Priority: optional
+Description: Event support
+ This package contains event drivers for the kernel.
+
+Package: mouse-modules
+Depends: kernel-image, event-modules, input-modules, usb-modules
+Priority: optional
+Description: Mouse support
+ This package contains mouse drivers for the kernel.
+
+Package: nic-pcmcia-modules
+Depends: kernel-image, nic-shared-modules, nic-wireless-modules, pcmcia-modules, mmc-core-modules
+Priority: standard
+Description: Common PCMCIA NIC drivers
+ This package contains common PCMCIA NIC drivers for the kernel.
+
+Package: pcmcia-modules
+Depends: kernel-image
+Priority: standard
+Description: Common PCMCIA drivers
+ This package contains common PCMCIA drivers for the kernel.
+
+Package: nic-usb-modules
+Depends: kernel-image, nic-shared-modules, nic-wireless-modules, usb-modules, crc-modules
+Priority: standard
+Description: USB NIC drivers
+ This package contains USB network adapter drivers for the kernel.
+
+Package: sata-modules
+Depends: kernel-image, scsi-core-modules, ata-modules
+Priority: standard
+Description: SATA drivers
+ This package contains SATA drivers for the kernel.
+
+Package: acpi-modules
+Depends: kernel-image
+Priority: optional
+Description: ACPI support modules
+ This package contains kernel modules for ACPI.
+
+Package: i2c-modules
+Depends: kernel-image
+Priority: optional
+Description: i2c support modules
+ This package contains basic i2c support modules.
+
+Package: crc-modules
+Depends: kernel-image
+Priority: optional
+Description: CRC modules
+ This package contains CRC support modules.
+
+Package: crypto-modules
+Depends: kernel-image
+Priority: optional
+Description: crypto modules
+ This package contains crypto modules.
+
+Package: crypto-dm-modules
+Depends: kernel-image, md-modules
+Priority: optional
+Description: devicemapper crypto module
+ This package contains the devicemapper crypto (dm-crypt) module.
+
+Package: efi-modules
+Depends: kernel-image
+Priority: optional
+Description: EFI modules
+ This package contains EFI modules.
+
+Package: ata-modules
+Depends: kernel-image, scsi-core-modules
+Priority: optional
+Description: ATA disk modules
+ This package contains core ATA disk modules used by both PATA and SATA
+ disk drivers.
+
+Package: mmc-core-modules
+Depends: kernel-image
+Priority: optional
+Description: MMC/SD/SDIO core modules
+ This package contains core modules for MMC/SD/SDIO support.
+
+Package: mmc-modules
+Depends: kernel-image, mmc-core-modules, usb-modules, crc-modules
+Priority: optional
+Description: MMC/SD card modules
+ This package contains modules needed to support MMC (multimedia) and
+ SD cards.
+
+Package: nbd-modules
+Depends: kernel-image
+Priority: optional
+Description: Network Block Device modules
+ This package contains the modules required for support of the Network Block
+ Device
+
+Package: speakup-modules
+Depends: kernel-image
+Priority: optional
+Description: speakup modules
+ This package contains speakup modules.
+
+Package: rtc-modules
+Depends: kernel-image
+Priority: optional
+Description: RTC modules
+ This package contains RTC modules.
+
+Package: uinput-modules
+Depends: kernel-image
+Priority: optional
+Description: uinput support
+ This package contains the uinput module.
+
+Package: sound-modules
+Depends: kernel-image, i2c-modules, usb-modules, pcmcia-modules, firewire-core-modules, crc-modules
+Priority: optional
+Description: sound support
+ This package contains sound modules.
+
+Package: leds-modules
+Depends: kernel-image
+Priority: optional
+Description: LED modules
+ This package contains LED modules.
+
+Package: mtd-modules
+Depends: kernel-image, mtd-core-modules
+Priority: optional
+Description: MTD driver modules
+ This package contains MTD driver modules.
+
+Package: mtd-core-modules
+Depends: kernel-image
+Priority: optional
+Description: MTD core
+ This package contains the MTD core.
+
+Package: rfkill-modules
+Depends: kernel-image
+Priority: optional
+Description: rfkill modules
+ This package contains the rfkill module.
+
+Package: srm-modules
+Depends: kernel-image
+Priority: standard
+Description: SRM modules
+ This package contains the srm_env module which provides access to the SRM
+ environment.
+
+Package: ide-core-modules
+Depends: kernel-image
+Priority: standard
+Description: IDE support
+ This package contains core IDE support for the kernel.
+
+Package: ide-modules
+Depends: kernel-image, ide-core-modules
+Priority: standard
+Description: IDE drivers
+ This package contains IDE drivers for the kernel.
+
+Package: hypervisor-modules
+Depends: kernel-image
+Priority: standard
+Description: IBM 64bit hypervisor console modules
+ Contains drivers for the hypervisor console, used as console for linux
+ running in logical partitions of IBM hardware supporting it.
+
+Package: fancontrol-modules
+Depends: kernel-image
+Priority: standard
+Description: Apple powermac fancontrol modules
+ Contains drivers for macintosh i2c bus as well as for the monitoring devices
+ connected to it. This allows to control the fans during installation.
+
+Package: dasd-modules
+Depends: kernel-image
+Priority: standard
+Description: dasd modules
+ This package contains dasd modules.
+
+Package: dasd-extra-modules
+Depends: kernel-image, dasd-modules
+Priority: optional
+Description: optional dasd DIAG support
+ This package contains the module for dasd DIAG support. The udeb is
+ not loaded by default as the installer does not actually support this.
+ It can however be useful to have available in rescue situations.
diff --git a/debian/lib/python/debian_linux/__init__.py b/debian/lib/python/debian_linux/__init__.py
new file mode 100644
index 000000000..b785cebf7
--- /dev/null
+++ b/debian/lib/python/debian_linux/__init__.py
@@ -0,0 +1 @@
+# Module
diff --git a/debian/lib/python/debian_linux/abi.py b/debian/lib/python/debian_linux/abi.py
new file mode 100644
index 000000000..abaaeeaa9
--- /dev/null
+++ b/debian/lib/python/debian_linux/abi.py
@@ -0,0 +1,45 @@
+class Symbol(object):
+ def __init__(self, name, namespace, module, version, export):
+ self.name, self.namespace, self.module = name, namespace, module
+ self.version, self.export = version, export
+
+ def __eq__(self, other):
+ if not isinstance(other, Symbol):
+ return NotImplemented
+
+ # Symbols are resolved to modules by depmod at installation/
+ # upgrade time, not compile time, so moving a symbol between
+ # modules is not an ABI change. Compare everything else.
+ if self.name != other.name:
+ return False
+ if self.namespace != other.namespace:
+ return False
+ if self.version != other.version:
+ return False
+ if self.export != other.export:
+ return False
+
+ return True
+
+ def __ne__(self, other):
+ ret = self.__eq__(other)
+ if ret is NotImplemented:
+ return ret
+ return not ret
+
+
+class Symbols(dict):
+ def __init__(self, file=None):
+ if file:
+ self.read(file)
+
+ def read(self, file):
+ for line in file:
+ version, name, module, export, namespace = \
+ line.strip('\r\n').split('\t')
+ self[name] = Symbol(name, namespace, module, version, export)
+
+ def write(self, file):
+ for s in sorted(self.values(), key=lambda i: i.name):
+ file.write("%s\t%s\t%s\t%s\t%s\n" %
+ (s.version, s.name, s.module, s.export, s.namespace))
diff --git a/debian/lib/python/debian_linux/config.py b/debian/lib/python/debian_linux/config.py
new file mode 100644
index 000000000..37e3764ab
--- /dev/null
+++ b/debian/lib/python/debian_linux/config.py
@@ -0,0 +1,256 @@
+import collections
+import os
+import os.path
+import pickle
+import re
+import sys
+
+from configparser import RawConfigParser
+
+__all__ = [
+ 'ConfigCoreDump',
+ 'ConfigCoreHierarchy',
+ 'ConfigParser',
+]
+
+
+class SchemaItemBoolean(object):
+ def __call__(self, i):
+ i = i.strip().lower()
+ if i in ("true", "1"):
+ return True
+ if i in ("false", "0"):
+ return False
+ raise ValueError
+
+
+class SchemaItemInteger(object):
+ def __call__(self, i):
+ return int(i.strip(), 0)
+
+
+class SchemaItemList(object):
+ def __init__(self, type=r"\s+"):
+ self.type = type
+
+ def __call__(self, i):
+ i = i.strip()
+ if not i:
+ return []
+ return [j.strip() for j in re.split(self.type, i)]
+
+
+# Using OrderedDict instead of dict makes the pickled config reproducible
+class ConfigCore(collections.OrderedDict):
+ def get_merge(self, section, arch, featureset, flavour, key, default=None):
+ temp = []
+
+ if arch and featureset and flavour:
+ temp.append(self.get((section, arch, featureset, flavour), {})
+ .get(key))
+ temp.append(self.get((section, arch, None, flavour), {}).get(key))
+ if arch and featureset:
+ temp.append(self.get((section, arch, featureset), {}).get(key))
+ if arch:
+ temp.append(self.get((section, arch), {}).get(key))
+ if featureset:
+ temp.append(self.get((section, None, featureset), {}).get(key))
+ temp.append(self.get((section,), {}).get(key))
+
+ ret = []
+
+ for i in temp:
+ if i is None:
+ continue
+ elif isinstance(i, (list, tuple)):
+ ret.extend(i)
+ elif ret:
+ # TODO
+ return ret
+ else:
+ return i
+
+ return ret or default
+
+ def merge(self, section, arch=None, featureset=None, flavour=None):
+ ret = {}
+ ret.update(self.get((section,), {}))
+ if featureset:
+ ret.update(self.get((section, None, featureset), {}))
+ if arch:
+ ret.update(self.get((section, arch), {}))
+ if arch and featureset:
+ ret.update(self.get((section, arch, featureset), {}))
+ if arch and featureset and flavour:
+ ret.update(self.get((section, arch, None, flavour), {}))
+ ret.update(self.get((section, arch, featureset, flavour), {}))
+ return ret
+
+ def dump(self, fp):
+ pickle.dump(self, fp, 0)
+
+
+class ConfigCoreDump(object):
+ def __new__(self, fp):
+ return pickle.load(fp)
+
+
+class ConfigCoreHierarchy(object):
+ schema_base = {
+ 'base': {
+ 'arches': SchemaItemList(),
+ 'enabled': SchemaItemBoolean(),
+ 'featuresets': SchemaItemList(),
+ 'flavours': SchemaItemList(),
+ },
+ }
+
+ def __new__(cls, schema, dirs=[]):
+ schema_complete = cls.schema_base.copy()
+ for key, value in schema.items():
+ schema_complete.setdefault(key, {}).update(value)
+ return cls.Reader(dirs, schema_complete)()
+
+ class Reader(object):
+ config_name = "defines"
+
+ def __init__(self, dirs, schema):
+ self.dirs, self.schema = dirs, schema
+
+ def __call__(self):
+ ret = ConfigCore()
+ self.read(ret)
+ return ret
+
+ def get_files(self, *dirs):
+ dirs = list(dirs)
+ dirs.append(self.config_name)
+ return (os.path.join(i, *dirs) for i in self.dirs if i)
+
+ def read_arch(self, ret, arch):
+ config = ConfigParser(self.schema)
+ config.read(self.get_files(arch))
+
+ featuresets = config['base', ].get('featuresets', [])
+ flavours = config['base', ].get('flavours', [])
+
+ for section in iter(config):
+ if section[0] in featuresets:
+ real = (section[-1], arch, section[0])
+ elif len(section) > 1:
+ real = (section[-1], arch, None) + section[:-1]
+ else:
+ real = (section[-1], arch) + section[:-1]
+ s = ret.get(real, {})
+ s.update(config[section])
+ ret[tuple(real)] = s
+
+ for featureset in featuresets:
+ self.read_arch_featureset(ret, arch, featureset)
+
+ if flavours:
+ base = ret['base', arch]
+ featuresets.insert(0, 'none')
+ base['featuresets'] = featuresets
+ del base['flavours']
+ ret['base', arch] = base
+ ret['base', arch, 'none'] = {'flavours': flavours,
+ 'implicit-flavour': True}
+
+ def read_arch_featureset(self, ret, arch, featureset):
+ config = ConfigParser(self.schema)
+ config.read(self.get_files(arch, featureset))
+
+ for section in iter(config):
+ real = (section[-1], arch, featureset) + section[:-1]
+ s = ret.get(real, {})
+ s.update(config[section])
+ ret[tuple(real)] = s
+
+ def read(self, ret):
+ config = ConfigParser(self.schema)
+ config.read(self.get_files())
+
+ arches = config['base', ]['arches']
+ featuresets = config['base', ].get('featuresets', [])
+
+ for section in iter(config):
+ if section[0].startswith('featureset-'):
+ real = (section[-1], None, section[0][11:])
+ else:
+ real = (section[-1],) + section[1:]
+ ret[real] = config[section]
+
+ for arch in arches:
+ self.read_arch(ret, arch)
+ for featureset in featuresets:
+ self.read_featureset(ret, featureset)
+
+ def read_featureset(self, ret, featureset):
+ config = ConfigParser(self.schema)
+ config.read(self.get_files('featureset-%s' % featureset))
+
+ for section in iter(config):
+ real = (section[-1], None, featureset)
+ s = ret.get(real, {})
+ s.update(config[section])
+ ret[real] = s
+
+
+class ConfigParser(object):
+ __slots__ = '_config', 'schemas'
+
+ def __init__(self, schemas):
+ self.schemas = schemas
+
+ self._config = RawConfigParser()
+
+ def __getitem__(self, key):
+ return self._convert()[key]
+
+ def __iter__(self):
+ return iter(self._convert())
+
+ def __str__(self):
+ return '<%s(%s)>' % (self.__class__.__name__, self._convert())
+
+ def _convert(self):
+ ret = {}
+ for section in self._config.sections():
+ data = {}
+ for key, value in self._config.items(section):
+ data[key] = value
+ section_list = section.split('_')
+ section_base = section_list[-1]
+ if section_base in self.schemas:
+ section_ret = tuple(section_list)
+ data = self._convert_one(self.schemas[section_base], data)
+ else:
+ section_ret = (section, )
+ ret[section_ret] = data
+ return ret
+
+ def _convert_one(self, schema, data):
+ ret = {}
+ for key, value in data.items():
+ if key in schema:
+ value = schema[key](value)
+ ret[key] = value
+ return ret
+
+ def keys(self):
+ return self._convert().keys()
+
+ def read(self, data):
+ return self._config.read(data)
+
+
+if __name__ == '__main__':
+ sys.path.append('debian/lib/python')
+ config = ConfigCoreDump(open('debian/config.defines.dump', 'rb'))
+ for section, items in sorted(config.items(),
+ key=(lambda a: tuple(i or '' for i in a[0]))):
+ print(u"[%s]" % (section,))
+ for item, value in sorted(items.items()):
+ print(u"%s: %s" % (item, value))
+ print()
diff --git a/debian/lib/python/debian_linux/debian.py b/debian/lib/python/debian_linux/debian.py
new file mode 100644
index 000000000..6fb26185d
--- /dev/null
+++ b/debian/lib/python/debian_linux/debian.py
@@ -0,0 +1,700 @@
+import collections
+import collections.abc
+import os.path
+import re
+import unittest
+
+from . import utils
+
+
+class Changelog(list):
+ _top_rules = r"""
+^
+(?P<source>
+ \w[-+0-9a-z.]+
+)
+\
+\(
+(?P<version>
+ [^\(\)\ \t]+
+)
+\)
+\s+
+(?P<distribution>
+ [-+0-9a-zA-Z.]+
+)
+\;\s+urgency=
+(?P<urgency>
+ \w+
+)
+(?:,|\n)
+"""
+ _top_re = re.compile(_top_rules, re.X)
+ _bottom_rules = r"""
+^
+\ --\
+(?P<maintainer>
+ \S(?:\ ?\S)*
+)
+\ \
+(?P<date>
+ (.*)
+)
+\n
+"""
+ _bottom_re = re.compile(_bottom_rules, re.X)
+ _ignore_re = re.compile(r'^(?: |\s*\n)')
+
+ class Entry(object):
+ __slot__ = ('distribution', 'source', 'version', 'urgency',
+ 'maintainer', 'date')
+
+ def __init__(self, **kwargs):
+ for key, value in kwargs.items():
+ setattr(self, key, value)
+
+ def __init__(self, dir='', version=None, file=None):
+ if version is None:
+ version = Version
+ if file:
+ self._parse(version, file)
+ else:
+ with open(os.path.join(dir, "debian/changelog"),
+ encoding="UTF-8") as f:
+ self._parse(version, f)
+
+ def _parse(self, version, f):
+ top_match = None
+ line_no = 0
+
+ for line in f:
+ line_no += 1
+
+ if self._ignore_re.match(line):
+ pass
+ elif top_match is None:
+ top_match = self._top_re.match(line)
+ if not top_match:
+ raise Exception('invalid top line %d in changelog' %
+ line_no)
+ try:
+ v = version(top_match.group('version'))
+ except Exception:
+ if not len(self):
+ raise
+ v = Version(top_match.group('version'))
+ else:
+ bottom_match = self._bottom_re.match(line)
+ if not bottom_match:
+ raise Exception('invalid bottom line %d in changelog' %
+ line_no)
+
+ self.append(self.Entry(
+ distribution=top_match.group('distribution'),
+ source=top_match.group('source'),
+ version=v,
+ urgency=top_match.group('urgency'),
+ maintainer=bottom_match.group('maintainer'),
+ date=bottom_match.group('date')))
+ top_match = bottom_match = None
+
+
+class Version(object):
+ _epoch_re = re.compile(r'\d+$')
+ _upstream_re = re.compile(r'[0-9][A-Za-z0-9.+\-:~]*$')
+ _revision_re = re.compile(r'[A-Za-z0-9+.~]+$')
+
+ def __init__(self, version):
+ try:
+ split = version.index(':')
+ except ValueError:
+ epoch, rest = None, version
+ else:
+ epoch, rest = version[0:split], version[split+1:]
+ try:
+ split = rest.rindex('-')
+ except ValueError:
+ upstream, revision = rest, None
+ else:
+ upstream, revision = rest[0:split], rest[split+1:]
+ if (epoch is not None and not self._epoch_re.match(epoch)) or \
+ not self._upstream_re.match(upstream) or \
+ (revision is not None and not self._revision_re.match(revision)):
+ raise RuntimeError(u"Invalid debian version")
+ self.epoch = epoch and int(epoch)
+ self.upstream = upstream
+ self.revision = revision
+
+ def __str__(self):
+ return self.complete
+
+ @property
+ def complete(self):
+ if self.epoch is not None:
+ return u"%d:%s" % (self.epoch, self.complete_noepoch)
+ return self.complete_noepoch
+
+ @property
+ def complete_noepoch(self):
+ if self.revision is not None:
+ return u"%s-%s" % (self.upstream, self.revision)
+ return self.upstream
+
+ @property
+ def debian(self):
+ from warnings import warn
+ warn(u"debian argument was replaced by revision", DeprecationWarning,
+ stacklevel=2)
+ return self.revision
+
+
+class _VersionTest(unittest.TestCase):
+ def test_native(self):
+ v = Version('1.2+c~4')
+ self.assertEqual(v.epoch, None)
+ self.assertEqual(v.upstream, '1.2+c~4')
+ self.assertEqual(v.revision, None)
+ self.assertEqual(v.complete, '1.2+c~4')
+ self.assertEqual(v.complete_noepoch, '1.2+c~4')
+
+ def test_nonnative(self):
+ v = Version('1-2+d~3')
+ self.assertEqual(v.epoch, None)
+ self.assertEqual(v.upstream, '1')
+ self.assertEqual(v.revision, '2+d~3')
+ self.assertEqual(v.complete, '1-2+d~3')
+ self.assertEqual(v.complete_noepoch, '1-2+d~3')
+
+ def test_native_epoch(self):
+ v = Version('5:1.2.3')
+ self.assertEqual(v.epoch, 5)
+ self.assertEqual(v.upstream, '1.2.3')
+ self.assertEqual(v.revision, None)
+ self.assertEqual(v.complete, '5:1.2.3')
+ self.assertEqual(v.complete_noepoch, '1.2.3')
+
+ def test_nonnative_epoch(self):
+ v = Version('5:1.2.3-4')
+ self.assertEqual(v.epoch, 5)
+ self.assertEqual(v.upstream, '1.2.3')
+ self.assertEqual(v.revision, '4')
+ self.assertEqual(v.complete, '5:1.2.3-4')
+ self.assertEqual(v.complete_noepoch, '1.2.3-4')
+
+ def test_multi_hyphen(self):
+ v = Version('1-2-3')
+ self.assertEqual(v.epoch, None)
+ self.assertEqual(v.upstream, '1-2')
+ self.assertEqual(v.revision, '3')
+ self.assertEqual(v.complete, '1-2-3')
+
+ def test_multi_colon(self):
+ v = Version('1:2:3')
+ self.assertEqual(v.epoch, 1)
+ self.assertEqual(v.upstream, '2:3')
+ self.assertEqual(v.revision, None)
+
+ def test_invalid_epoch(self):
+ with self.assertRaises(RuntimeError):
+ Version('a:1')
+ with self.assertRaises(RuntimeError):
+ Version('-1:1')
+ with self.assertRaises(RuntimeError):
+ Version('1a:1')
+
+ def test_invalid_upstream(self):
+ with self.assertRaises(RuntimeError):
+ Version('1_2')
+ with self.assertRaises(RuntimeError):
+ Version('1/2')
+ with self.assertRaises(RuntimeError):
+ Version('a1')
+ with self.assertRaises(RuntimeError):
+ Version('1 2')
+
+ def test_invalid_revision(self):
+ with self.assertRaises(RuntimeError):
+ Version('1-2_3')
+ with self.assertRaises(RuntimeError):
+ Version('1-2/3')
+ with self.assertRaises(RuntimeError):
+ Version('1-2:3')
+
+
+class VersionLinux(Version):
+ _upstream_re = re.compile(r"""
+(?P<version>
+ \d+\.\d+
+)
+(?P<update>
+ (?:\.\d+)?
+ (?:-[a-z]+\d+)?
+)
+(?:
+ ~
+ (?P<modifier>
+ .+?
+ )
+)?
+(?:
+ \.dfsg\.
+ (?P<dfsg>
+ \d+
+ )
+)?
+$
+ """, re.X)
+ _revision_re = re.compile(r"""
+\d+
+(\.\d+)?
+(?:
+ (?P<revision_experimental>
+ ~exp\d+
+ )
+ |
+ (?P<revision_security>
+ (?:[~+]deb\d+u\d+)+
+ )?
+ (?P<revision_backports>
+ ~bpo\d+\+\d+
+ )?
+ |
+ (?P<revision_other>
+ .+?
+ )
+)
+(?:\+b\d+)?
+$
+ """, re.X)
+
+ def __init__(self, version):
+ super(VersionLinux, self).__init__(version)
+ up_match = self._upstream_re.match(self.upstream)
+ rev_match = self._revision_re.match(self.revision)
+ if up_match is None or rev_match is None:
+ raise RuntimeError(u"Invalid debian linux version")
+ d = up_match.groupdict()
+ self.linux_modifier = d['modifier']
+ self.linux_version = d['version']
+ if d['modifier'] is not None:
+ assert not d['update']
+ self.linux_upstream = '-'.join((d['version'], d['modifier']))
+ else:
+ self.linux_upstream = d['version']
+ self.linux_upstream_full = self.linux_upstream + d['update']
+ self.linux_dfsg = d['dfsg']
+ d = rev_match.groupdict()
+ self.linux_revision_experimental = d['revision_experimental'] and True
+ self.linux_revision_security = d['revision_security'] and True
+ self.linux_revision_backports = d['revision_backports'] and True
+ self.linux_revision_other = d['revision_other'] and True
+
+
+class _VersionLinuxTest(unittest.TestCase):
+ def test_stable(self):
+ v = VersionLinux('1.2.3-4')
+ self.assertEqual(v.linux_version, '1.2')
+ self.assertEqual(v.linux_upstream, '1.2')
+ self.assertEqual(v.linux_upstream_full, '1.2.3')
+ self.assertEqual(v.linux_modifier, None)
+ self.assertEqual(v.linux_dfsg, None)
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertFalse(v.linux_revision_security)
+ self.assertFalse(v.linux_revision_backports)
+ self.assertFalse(v.linux_revision_other)
+
+ def test_rc(self):
+ v = VersionLinux('1.2~rc3-4')
+ self.assertEqual(v.linux_version, '1.2')
+ self.assertEqual(v.linux_upstream, '1.2-rc3')
+ self.assertEqual(v.linux_upstream_full, '1.2-rc3')
+ self.assertEqual(v.linux_modifier, 'rc3')
+ self.assertEqual(v.linux_dfsg, None)
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertFalse(v.linux_revision_security)
+ self.assertFalse(v.linux_revision_backports)
+ self.assertFalse(v.linux_revision_other)
+
+ def test_dfsg(self):
+ v = VersionLinux('1.2~rc3.dfsg.1-4')
+ self.assertEqual(v.linux_version, '1.2')
+ self.assertEqual(v.linux_upstream, '1.2-rc3')
+ self.assertEqual(v.linux_upstream_full, '1.2-rc3')
+ self.assertEqual(v.linux_modifier, 'rc3')
+ self.assertEqual(v.linux_dfsg, '1')
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertFalse(v.linux_revision_security)
+ self.assertFalse(v.linux_revision_backports)
+ self.assertFalse(v.linux_revision_other)
+
+ def test_experimental(self):
+ v = VersionLinux('1.2~rc3-4~exp5')
+ self.assertEqual(v.linux_upstream_full, '1.2-rc3')
+ self.assertTrue(v.linux_revision_experimental)
+ self.assertFalse(v.linux_revision_security)
+ self.assertFalse(v.linux_revision_backports)
+ self.assertFalse(v.linux_revision_other)
+
+ def test_security(self):
+ v = VersionLinux('1.2.3-4+deb10u1')
+ self.assertEqual(v.linux_upstream_full, '1.2.3')
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertTrue(v.linux_revision_security)
+ self.assertFalse(v.linux_revision_backports)
+ self.assertFalse(v.linux_revision_other)
+
+ def test_backports(self):
+ v = VersionLinux('1.2.3-4~bpo9+10')
+ self.assertEqual(v.linux_upstream_full, '1.2.3')
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertFalse(v.linux_revision_security)
+ self.assertTrue(v.linux_revision_backports)
+ self.assertFalse(v.linux_revision_other)
+
+ def test_security_backports(self):
+ v = VersionLinux('1.2.3-4+deb10u1~bpo9+10')
+ self.assertEqual(v.linux_upstream_full, '1.2.3')
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertTrue(v.linux_revision_security)
+ self.assertTrue(v.linux_revision_backports)
+ self.assertFalse(v.linux_revision_other)
+
+ def test_lts_backports(self):
+ # Backport during LTS, as an extra package in the -security
+ # suite. Since this is not part of a -backports suite it
+ # shouldn't get the linux_revision_backports flag.
+ v = VersionLinux('1.2.3-4~deb9u10')
+ self.assertEqual(v.linux_upstream_full, '1.2.3')
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertTrue(v.linux_revision_security)
+ self.assertFalse(v.linux_revision_backports)
+ self.assertFalse(v.linux_revision_other)
+
+ def test_lts_backports_2(self):
+ # Same but with two security extensions in the revision.
+ v = VersionLinux('1.2.3-4+deb10u1~deb9u10')
+ self.assertEqual(v.linux_upstream_full, '1.2.3')
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertTrue(v.linux_revision_security)
+ self.assertFalse(v.linux_revision_backports)
+ self.assertFalse(v.linux_revision_other)
+
+ def test_binnmu(self):
+ v = VersionLinux('1.2.3-4+b1')
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertFalse(v.linux_revision_security)
+ self.assertFalse(v.linux_revision_backports)
+ self.assertFalse(v.linux_revision_other)
+
+ def test_other_revision(self):
+ v = VersionLinux('4.16.5-1+revert+crng+ready') # from #898087
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertFalse(v.linux_revision_security)
+ self.assertFalse(v.linux_revision_backports)
+ self.assertTrue(v.linux_revision_other)
+
+ def test_other_revision_binnmu(self):
+ v = VersionLinux('4.16.5-1+revert+crng+ready+b1')
+ self.assertFalse(v.linux_revision_experimental)
+ self.assertFalse(v.linux_revision_security)
+ self.assertFalse(v.linux_revision_backports)
+ self.assertTrue(v.linux_revision_other)
+
+
+class PackageArchitecture(collections.abc.MutableSet):
+ __slots__ = '_data'
+
+ def __init__(self, value=None):
+ self._data = set()
+ if value:
+ self.extend(value)
+
+ def __contains__(self, value):
+ return self._data.__contains__(value)
+
+ def __iter__(self):
+ return self._data.__iter__()
+
+ def __len__(self):
+ return self._data.__len__()
+
+ def __str__(self):
+ return ' '.join(sorted(self))
+
+ def add(self, value):
+ self._data.add(value)
+
+ def discard(self, value):
+ self._data.discard(value)
+
+ def extend(self, value):
+ if isinstance(value, str):
+ for i in re.split(r'\s', value.strip()):
+ self.add(i)
+ else:
+ raise RuntimeError
+
+
+class PackageDescription(object):
+ __slots__ = "short", "long"
+
+ def __init__(self, value=None):
+ self.short = []
+ self.long = []
+ if value is not None:
+ desc_split = value.split("\n", 1)
+ self.append_short(desc_split[0])
+ if len(desc_split) == 2:
+ self.append(desc_split[1])
+
+ def __str__(self):
+ wrap = utils.TextWrapper(width=74, fix_sentence_endings=True).wrap
+ short = ', '.join(self.short)
+ long_pars = []
+ for i in self.long:
+ long_pars.append(wrap(i))
+ long = '\n .\n '.join(['\n '.join(i) for i in long_pars])
+ return short + '\n ' + long if long else short
+
+ def append(self, str):
+ str = str.strip()
+ if str:
+ self.long.extend(str.split(u"\n.\n"))
+
+ def append_short(self, str):
+ for i in [i.strip() for i in str.split(u",")]:
+ if i:
+ self.short.append(i)
+
+ def extend(self, desc):
+ if isinstance(desc, PackageDescription):
+ self.short.extend(desc.short)
+ self.long.extend(desc.long)
+ else:
+ raise TypeError
+
+
+class PackageRelation(list):
+ def __init__(self, value=None, override_arches=None):
+ if value:
+ self.extend(value, override_arches)
+
+ def __str__(self):
+ return ', '.join(str(i) for i in self)
+
+ def _search_value(self, value):
+ for i in self:
+ if i._search_value(value):
+ return i
+ return None
+
+ def append(self, value, override_arches=None):
+ if isinstance(value, str):
+ value = PackageRelationGroup(value, override_arches)
+ elif not isinstance(value, PackageRelationGroup):
+ raise ValueError(u"got %s" % type(value))
+ j = self._search_value(value)
+ if j:
+ j._update_arches(value)
+ else:
+ super(PackageRelation, self).append(value)
+
+ def extend(self, value, override_arches=None):
+ if isinstance(value, str):
+ value = (j.strip() for j in re.split(r',', value.strip()))
+ for i in value:
+ self.append(i, override_arches)
+
+
+class PackageRelationGroup(list):
+ def __init__(self, value=None, override_arches=None):
+ if value:
+ self.extend(value, override_arches)
+
+ def __str__(self):
+ return ' | '.join(str(i) for i in self)
+
+ def _search_value(self, value):
+ for i, j in zip(self, value):
+ if i.name != j.name or i.operator != j.operator or \
+ i.version != j.version or i.restrictions != j.restrictions:
+ return None
+ return self
+
+ def _update_arches(self, value):
+ for i, j in zip(self, value):
+ if i.arches:
+ for arch in j.arches:
+ if arch not in i.arches:
+ i.arches.append(arch)
+
+ def append(self, value, override_arches=None):
+ if isinstance(value, str):
+ value = PackageRelationEntry(value, override_arches)
+ elif not isinstance(value, PackageRelationEntry):
+ raise ValueError
+ super(PackageRelationGroup, self).append(value)
+
+ def extend(self, value, override_arches=None):
+ if isinstance(value, str):
+ value = (j.strip() for j in re.split(r'\|', value.strip()))
+ for i in value:
+ self.append(i, override_arches)
+
+
+class PackageRelationEntry(object):
+ __slots__ = "name", "operator", "version", "arches", "restrictions"
+
+ _re = re.compile(r'^(\S+)(?: \((<<|<=|=|!=|>=|>>)\s*([^)]+)\))?'
+ r'(?: \[([^]]+)\])?(?: <([^>]+)>)?$')
+
+ class _operator(object):
+ OP_LT = 1
+ OP_LE = 2
+ OP_EQ = 3
+ OP_NE = 4
+ OP_GE = 5
+ OP_GT = 6
+
+ operators = {
+ '<<': OP_LT,
+ '<=': OP_LE,
+ '=': OP_EQ,
+ '!=': OP_NE,
+ '>=': OP_GE,
+ '>>': OP_GT,
+ }
+
+ operators_neg = {
+ OP_LT: OP_GE,
+ OP_LE: OP_GT,
+ OP_EQ: OP_NE,
+ OP_NE: OP_EQ,
+ OP_GE: OP_LT,
+ OP_GT: OP_LE,
+ }
+
+ operators_text = dict((b, a) for a, b in operators.items())
+
+ __slots__ = '_op',
+
+ def __init__(self, value):
+ self._op = self.operators[value]
+
+ def __neg__(self):
+ return self.__class__(
+ self.operators_text[self.operators_neg[self._op]])
+
+ def __str__(self):
+ return self.operators_text[self._op]
+
+ def __eq__(self, other):
+ return type(other) == type(self) and self._op == other._op
+
+ def __init__(self, value=None, override_arches=None):
+ if not isinstance(value, str):
+ raise ValueError
+
+ self.parse(value)
+
+ if override_arches:
+ self.arches = list(override_arches)
+
+ def __str__(self):
+ ret = [self.name]
+ if self.operator is not None and self.version is not None:
+ ret.extend((' (', str(self.operator), ' ', self.version, ')'))
+ if self.arches:
+ ret.extend((' [', ' '.join(self.arches), ']'))
+ if self.restrictions:
+ ret.extend((' <', ' '.join(self.restrictions), '>'))
+ return ''.join(ret)
+
+ def parse(self, value):
+ match = self._re.match(value)
+ if match is None:
+ raise RuntimeError(u"Can't parse dependency %s" % value)
+ match = match.groups()
+ self.name = match[0]
+ if match[1] is not None:
+ self.operator = self._operator(match[1])
+ else:
+ self.operator = None
+ self.version = match[2]
+ if match[3] is not None:
+ self.arches = re.split(r'\s+', match[3])
+ else:
+ self.arches = []
+ if match[4] is not None:
+ self.restrictions = re.split(r'\s+', match[4])
+ else:
+ self.restrictions = []
+
+
+class _ControlFileDict(dict):
+ def __setitem__(self, key, value):
+ try:
+ cls = self._fields[key]
+ if not isinstance(value, cls):
+ value = cls(value)
+ except KeyError:
+ pass
+ super(_ControlFileDict, self).__setitem__(key, value)
+
+ def keys(self):
+ keys = set(super(_ControlFileDict, self).keys())
+ for i in self._fields.keys():
+ if i in self:
+ keys.remove(i)
+ yield i
+ for i in sorted(list(keys)):
+ yield i
+
+ def items(self):
+ for i in self.keys():
+ yield (i, self[i])
+
+ def values(self):
+ for i in self.keys():
+ yield self[i]
+
+
+class Package(_ControlFileDict):
+ _fields = collections.OrderedDict((
+ ('Package', str),
+ ('Source', str),
+ ('Architecture', PackageArchitecture),
+ ('Section', str),
+ ('Priority', str),
+ ('Maintainer', str),
+ ('Uploaders', str),
+ ('Standards-Version', str),
+ ('Build-Depends', PackageRelation),
+ ('Build-Depends-Arch', PackageRelation),
+ ('Build-Depends-Indep', PackageRelation),
+ ('Provides', PackageRelation),
+ ('Pre-Depends', PackageRelation),
+ ('Depends', PackageRelation),
+ ('Recommends', PackageRelation),
+ ('Suggests', PackageRelation),
+ ('Replaces', PackageRelation),
+ ('Breaks', PackageRelation),
+ ('Conflicts', PackageRelation),
+ ('Description', PackageDescription),
+ ))
+
+
+class TestsControl(_ControlFileDict):
+ _fields = collections.OrderedDict((
+ ('Tests', str),
+ ('Test-Command', str),
+ ('Restrictions', str),
+ ('Features', str),
+ ('Depends', PackageRelation),
+ ('Tests-Directory', str),
+ ('Classes', str),
+ ))
+
+
+if __name__ == '__main__':
+ unittest.main()
diff --git a/debian/lib/python/debian_linux/firmware.py b/debian/lib/python/debian_linux/firmware.py
new file mode 100644
index 000000000..592a66a45
--- /dev/null
+++ b/debian/lib/python/debian_linux/firmware.py
@@ -0,0 +1,90 @@
+import re
+
+
+class FirmwareFile(object):
+ def __init__(self, binary, desc=None, source=None, version=None):
+ self.binary = binary
+ self.desc = desc
+ self.source = source
+ self.version = version
+
+
+class FirmwareSection(object):
+ def __init__(self, driver, files, licence):
+ self.driver = driver
+ self.files = files
+ self.licence = licence
+
+
+class FirmwareWhence(list):
+ def __init__(self, file):
+ self.read(file)
+
+ def read(self, file):
+ in_header = True
+ driver = None
+ files = {}
+ licence = None
+ binary = []
+ desc = None
+ source = []
+ version = None
+
+ for line in file:
+ if line.startswith('----------'):
+ if in_header:
+ in_header = False
+ else:
+ # Finish old section
+ if driver:
+ self.append(FirmwareSection(driver, files, licence))
+ driver = None
+ files = {}
+ licence = None
+ continue
+
+ if in_header:
+ continue
+
+ if line == '\n':
+ # End of field; end of file fields
+ for b in binary:
+ # XXX The WHENCE file isn't yet consistent in its
+ # association of binaries and their sources and
+ # metadata. This associates all sources and
+ # metadata in a group with each binary.
+ files[b] = FirmwareFile(b, desc, source, version)
+ binary = []
+ desc = None
+ source = []
+ version = None
+ continue
+
+ match = re.match(
+ r'(Driver|File|Info|Licen[cs]e|Source|Version'
+ r'|Original licen[cs]e info(?:rmation)?):\s*(.*)\n',
+ line)
+ if match:
+ keyword, value = match.group(1, 2)
+ if keyword == 'Driver':
+ driver = value.split(' ')[0].lower()
+ elif keyword == 'File':
+ match = re.match(r'(\S+)(?:\s+--\s+(.*))?', value)
+ binary.append(match.group(1))
+ desc = match.group(2)
+ elif keyword in ['Info', 'Version']:
+ version = value
+ elif keyword == 'Source':
+ source.append(value)
+ else:
+ licence = value
+ elif licence is not None:
+ licence = (licence + '\n'
+ + re.sub(r'^(?:[/ ]\*| \*/)?\s*(.*?)\s*$', r'\1',
+ line))
+
+ # Finish last section if non-empty
+ for b in binary:
+ files[b] = FirmwareFile(b, desc, source, version)
+ if driver:
+ self.append(FirmwareSection(driver, files, licence))
diff --git a/debian/lib/python/debian_linux/gencontrol.py b/debian/lib/python/debian_linux/gencontrol.py
new file mode 100644
index 000000000..388fc33f6
--- /dev/null
+++ b/debian/lib/python/debian_linux/gencontrol.py
@@ -0,0 +1,437 @@
+import codecs
+import os
+import re
+from collections import OrderedDict
+
+from .debian import Changelog, PackageArchitecture, PackageDescription, \
+ PackageRelation, Version
+
+
+class PackagesList(OrderedDict):
+ def append(self, package):
+ self[package['Package']] = package
+
+ def extend(self, packages):
+ for package in packages:
+ self[package['Package']] = package
+
+
+class Makefile(object):
+ def __init__(self):
+ self.rules = {}
+ self.add('.NOTPARALLEL')
+
+ def add(self, name, deps=None, cmds=None):
+ if name in self.rules:
+ self.rules[name].add(deps, cmds)
+ else:
+ self.rules[name] = self.Rule(name, deps, cmds)
+ if deps is not None:
+ for i in deps:
+ if i not in self.rules:
+ self.rules[i] = self.Rule(i)
+
+ def write(self, out):
+ for i in sorted(self.rules.keys()):
+ self.rules[i].write(out)
+
+ class Rule(object):
+ def __init__(self, name, deps=None, cmds=None):
+ self.name = name
+ self.deps, self.cmds = set(), []
+ self.add(deps, cmds)
+
+ def add(self, deps=None, cmds=None):
+ if deps is not None:
+ self.deps.update(deps)
+ if cmds is not None:
+ self.cmds.append(cmds)
+
+ def write(self, out):
+ deps_string = ''
+ if self.deps:
+ deps = list(self.deps)
+ deps.sort()
+ deps_string = ' ' + ' '.join(deps)
+
+ if self.cmds:
+ if deps_string:
+ out.write('%s::%s\n' % (self.name, deps_string))
+ for c in self.cmds:
+ out.write('%s::\n' % self.name)
+ for i in c:
+ out.write('\t%s\n' % i)
+ else:
+ out.write('%s:%s\n' % (self.name, deps_string))
+
+
+class MakeFlags(dict):
+ def __str__(self):
+ return ' '.join("%s='%s'" % i for i in sorted(self.items()))
+
+ def copy(self):
+ return self.__class__(super(MakeFlags, self).copy())
+
+
+def iter_featuresets(config):
+ for featureset in config['base', ]['featuresets']:
+ if config.merge('base', None, featureset).get('enabled', True):
+ yield featureset
+
+
+def iter_arches(config):
+ return iter(config['base', ]['arches'])
+
+
+def iter_arch_featuresets(config, arch):
+ for featureset in config['base', arch].get('featuresets', []):
+ if config.merge('base', arch, featureset).get('enabled', True):
+ yield featureset
+
+
+def iter_flavours(config, arch, featureset):
+ return iter(config['base', arch, featureset]['flavours'])
+
+
+class Gencontrol(object):
+ makefile_targets = ('binary-arch', 'build-arch', 'setup')
+ makefile_targets_indep = ('binary-indep', 'build-indep', 'setup')
+
+ def __init__(self, config, templates, version=Version):
+ self.config, self.templates = config, templates
+ self.changelog = Changelog(version=version)
+ self.vars = {}
+
+ def __call__(self):
+ packages = PackagesList()
+ makefile = Makefile()
+
+ self.do_source(packages)
+ self.do_main(packages, makefile)
+ self.do_extra(packages, makefile)
+
+ self.merge_build_depends(packages)
+ self.write(packages, makefile)
+
+ def do_source(self, packages):
+ source = self.templates["control.source"][0]
+ if not source.get('Source'):
+ source['Source'] = self.changelog[0].source
+ packages['source'] = self.process_package(source, self.vars)
+
+ def do_main(self, packages, makefile):
+ vars = self.vars.copy()
+
+ makeflags = MakeFlags()
+ extra = {}
+
+ self.do_main_setup(vars, makeflags, extra)
+ self.do_main_makefile(makefile, makeflags, extra)
+ self.do_main_packages(packages, vars, makeflags, extra)
+ self.do_main_recurse(packages, makefile, vars, makeflags, extra)
+
+ def do_main_setup(self, vars, makeflags, extra):
+ pass
+
+ def do_main_makefile(self, makefile, makeflags, extra):
+ makefile.add('build-indep',
+ cmds=["$(MAKE) -f debian/rules.real build-indep %s" %
+ makeflags])
+ makefile.add('binary-indep',
+ cmds=["$(MAKE) -f debian/rules.real binary-indep %s" %
+ makeflags])
+
+ def do_main_packages(self, packages, vars, makeflags, extra):
+ pass
+
+ def do_main_recurse(self, packages, makefile, vars, makeflags, extra):
+ for featureset in iter_featuresets(self.config):
+ self.do_indep_featureset(packages, makefile, featureset,
+ vars.copy(), makeflags.copy(), extra)
+ for arch in iter_arches(self.config):
+ self.do_arch(packages, makefile, arch, vars.copy(),
+ makeflags.copy(), extra)
+
+ def do_extra(self, packages, makefile):
+ templates_extra = self.templates.get("control.extra", None)
+ if templates_extra is None:
+ return
+
+ packages_extra = self.process_packages(templates_extra, self.vars)
+ packages.extend(packages_extra)
+ extra_arches = {}
+ for package in packages_extra:
+ arches = package['Architecture']
+ for arch in arches:
+ i = extra_arches.get(arch, [])
+ i.append(package)
+ extra_arches[arch] = i
+ for arch in sorted(extra_arches.keys()):
+ cmds = []
+ for i in extra_arches[arch]:
+ cmds.append("$(MAKE) -f debian/rules.real install-dummy "
+ "ARCH='%s' DH_OPTIONS='-p%s'" %
+ (arch, i['Package']))
+ makefile.add('binary-arch_%s' % arch,
+ ['binary-arch_%s_extra' % arch])
+ makefile.add("binary-arch_%s_extra" % arch, cmds=cmds)
+
+ def do_indep_featureset(self, packages, makefile, featureset, vars,
+ makeflags, extra):
+ vars['localversion'] = ''
+ if featureset != 'none':
+ vars['localversion'] = '-' + featureset
+
+ self.do_indep_featureset_setup(vars, makeflags, featureset, extra)
+ self.do_indep_featureset_makefile(makefile, featureset, makeflags,
+ extra)
+ self.do_indep_featureset_packages(packages, makefile, featureset,
+ vars, makeflags, extra)
+
+ def do_indep_featureset_setup(self, vars, makeflags, featureset, extra):
+ pass
+
+ def do_indep_featureset_makefile(self, makefile, featureset, makeflags,
+ extra):
+ makeflags['FEATURESET'] = featureset
+
+ for i in self.makefile_targets_indep:
+ target1 = i
+ target2 = '_'.join((target1, featureset))
+ target3 = '_'.join((target2, 'real'))
+ makefile.add(target1, [target2])
+ makefile.add(target2, [target3])
+
+ def do_indep_featureset_packages(self, packages, makefile, featureset,
+ vars, makeflags, extra):
+ pass
+
+ def do_arch(self, packages, makefile, arch, vars, makeflags, extra):
+ vars['arch'] = arch
+
+ self.do_arch_setup(vars, makeflags, arch, extra)
+ self.do_arch_makefile(makefile, arch, makeflags, extra)
+ self.do_arch_packages(packages, makefile, arch, vars, makeflags, extra)
+ self.do_arch_recurse(packages, makefile, arch, vars, makeflags, extra)
+
+ def do_arch_setup(self, vars, makeflags, arch, extra):
+ pass
+
+ def do_arch_makefile(self, makefile, arch, makeflags, extra):
+ makeflags['ARCH'] = arch
+
+ for i in self.makefile_targets:
+ target1 = i
+ target2 = '_'.join((target1, arch))
+ target3 = '_'.join((target2, 'real'))
+ makefile.add(target1, [target2])
+ makefile.add(target2, [target3])
+
+ def do_arch_packages(self, packages, makefile, arch, vars, makeflags,
+ extra):
+ pass
+
+ def do_arch_recurse(self, packages, makefile, arch, vars, makeflags,
+ extra):
+ for featureset in iter_arch_featuresets(self.config, arch):
+ self.do_featureset(packages, makefile, arch, featureset,
+ vars.copy(), makeflags.copy(), extra)
+
+ def do_featureset(self, packages, makefile, arch, featureset, vars,
+ makeflags, extra):
+ vars['localversion'] = ''
+ if featureset != 'none':
+ vars['localversion'] = '-' + featureset
+
+ self.do_featureset_setup(vars, makeflags, arch, featureset, extra)
+ self.do_featureset_makefile(makefile, arch, featureset, makeflags,
+ extra)
+ self.do_featureset_packages(packages, makefile, arch, featureset, vars,
+ makeflags, extra)
+ self.do_featureset_recurse(packages, makefile, arch, featureset, vars,
+ makeflags, extra)
+
+ def do_featureset_setup(self, vars, makeflags, arch, featureset, extra):
+ pass
+
+ def do_featureset_makefile(self, makefile, arch, featureset, makeflags,
+ extra):
+ makeflags['FEATURESET'] = featureset
+
+ for i in self.makefile_targets:
+ target1 = '_'.join((i, arch))
+ target2 = '_'.join((target1, featureset))
+ target3 = '_'.join((target2, 'real'))
+ makefile.add(target1, [target2])
+ makefile.add(target2, [target3])
+
+ def do_featureset_packages(self, packages, makefile, arch, featureset,
+ vars, makeflags, extra):
+ pass
+
+ def do_featureset_recurse(self, packages, makefile, arch, featureset, vars,
+ makeflags, extra):
+ for flavour in iter_flavours(self.config, arch, featureset):
+ self.do_flavour(packages, makefile, arch, featureset, flavour,
+ vars.copy(), makeflags.copy(), extra)
+
+ def do_flavour(self, packages, makefile, arch, featureset, flavour, vars,
+ makeflags, extra):
+ vars['localversion'] += '-' + flavour
+
+ self.do_flavour_setup(vars, makeflags, arch, featureset, flavour,
+ extra)
+ self.do_flavour_makefile(makefile, arch, featureset, flavour,
+ makeflags, extra)
+ self.do_flavour_packages(packages, makefile, arch, featureset, flavour,
+ vars, makeflags, extra)
+
+ def do_flavour_setup(self, vars, makeflags, arch, featureset, flavour,
+ extra):
+ for i in (
+ ('kernel-arch', 'KERNEL_ARCH'),
+ ('localversion', 'LOCALVERSION'),
+ ):
+ if i[0] in vars:
+ makeflags[i[1]] = vars[i[0]]
+
+ def do_flavour_makefile(self, makefile, arch, featureset, flavour,
+ makeflags, extra):
+ makeflags['FLAVOUR'] = flavour
+
+ for i in self.makefile_targets:
+ target1 = '_'.join((i, arch, featureset))
+ target2 = '_'.join((target1, flavour))
+ target3 = '_'.join((target2, 'real'))
+ makefile.add(target1, [target2])
+ makefile.add(target2, [target3])
+
+ def do_flavour_packages(self, packages, makefile, arch, featureset,
+ flavour, vars, makeflags, extra):
+ pass
+
+ def process_relation(self, dep, vars):
+ import copy
+ dep = copy.deepcopy(dep)
+ for groups in dep:
+ for item in groups:
+ item.name = self.substitute(item.name, vars)
+ if item.version:
+ item.version = self.substitute(item.version, vars)
+ return dep
+
+ def process_description(self, in_desc, vars):
+ desc = in_desc.__class__()
+ desc.short = self.substitute(in_desc.short, vars)
+ for i in in_desc.long:
+ desc.append(self.substitute(i, vars))
+ return desc
+
+ def process_package(self, in_entry, vars={}):
+ entry = in_entry.__class__()
+ for key, value in in_entry.items():
+ if isinstance(value, PackageRelation):
+ value = self.process_relation(value, vars)
+ elif isinstance(value, PackageDescription):
+ value = self.process_description(value, vars)
+ else:
+ value = self.substitute(value, vars)
+ entry[key] = value
+ return entry
+
+ def process_packages(self, entries, vars):
+ return [self.process_package(i, vars) for i in entries]
+
+ def substitute(self, s, vars):
+ if isinstance(s, (list, tuple)):
+ return [self.substitute(i, vars) for i in s]
+
+ def subst(match):
+ return vars[match.group(1)]
+
+ return re.sub(r'@([-_a-z0-9]+)@', subst, str(s))
+
+ # Substitute kernel version etc. into maintainer scripts,
+ # bug presubj message and lintian overrides
+ def substitute_debhelper_config(self, prefix, vars, package_name,
+ output_dir='debian'):
+ for id in ['bug-presubj', 'lintian-overrides', 'maintscript',
+ 'postinst', 'postrm', 'preinst', 'prerm']:
+ name = '%s.%s' % (prefix, id)
+ try:
+ template = self.templates[name]
+ except KeyError:
+ continue
+ else:
+ target = '%s/%s.%s' % (output_dir, package_name, id)
+ with open(target, 'w') as f:
+ f.write(self.substitute(template, vars))
+ os.chmod(f.fileno(),
+ self.templates.get_mode(name) & 0o777)
+
+ def merge_build_depends(self, packages):
+ # Merge Build-Depends pseudo-fields from binary packages into the
+ # source package
+ source = packages["source"]
+ arch_all = PackageArchitecture("all")
+ for name, package in packages.items():
+ if name == "source":
+ continue
+ dep = package.get("Build-Depends")
+ if not dep:
+ continue
+ del package["Build-Depends"]
+ for group in dep:
+ for item in group:
+ if package["Architecture"] != arch_all and not item.arches:
+ item.arches = sorted(package["Architecture"])
+ if package.get("Build-Profiles") and not item.restrictions:
+ profiles = package["Build-Profiles"]
+ assert profiles[0] == "<" and profiles[-1] == ">"
+ item.restrictions = re.split(r"\s+", profiles[1:-1])
+ if package["Architecture"] == arch_all:
+ dep_type = "Build-Depends-Indep"
+ else:
+ dep_type = "Build-Depends-Arch"
+ if dep_type not in source:
+ source[dep_type] = PackageRelation()
+ source[dep_type].extend(dep)
+
+ def write(self, packages, makefile):
+ self.write_control(packages.values())
+ self.write_makefile(makefile)
+
+ def write_control(self, list, name='debian/control'):
+ self.write_rfc822(codecs.open(name, 'w', 'utf-8'), list)
+
+ def write_makefile(self, makefile, name='debian/rules.gen'):
+ f = open(name, 'w')
+ makefile.write(f)
+ f.close()
+
+ def write_rfc822(self, f, list):
+ for entry in list:
+ for key, value in entry.items():
+ f.write(u"%s: %s\n" % (key, value))
+ f.write('\n')
+
+
+def merge_packages(packages, new, arch):
+ for new_package in new:
+ name = new_package['Package']
+ if name in packages:
+ package = packages.get(name)
+ package['Architecture'].add(arch)
+
+ for field in ('Depends', 'Provides', 'Suggests', 'Recommends',
+ 'Conflicts'):
+ if field in new_package:
+ if field in package:
+ v = package[field]
+ v.extend(new_package[field])
+ else:
+ package[field] = new_package[field]
+
+ else:
+ new_package['Architecture'] = arch
+ packages.append(new_package)
diff --git a/debian/lib/python/debian_linux/kconfig.py b/debian/lib/python/debian_linux/kconfig.py
new file mode 100644
index 000000000..73d491d7f
--- /dev/null
+++ b/debian/lib/python/debian_linux/kconfig.py
@@ -0,0 +1,93 @@
+from collections import OrderedDict
+
+__all__ = (
+ "KconfigFile",
+)
+
+
+class KConfigEntry(object):
+ __slots__ = 'name', 'value', 'comments'
+
+ def __init__(self, name, value, comments=None):
+ self.name, self.value = name, value
+ self.comments = comments or []
+
+ def __eq__(self, other):
+ return self.name == other.name and self.value == other.value
+
+ def __hash__(self):
+ return hash(self.name) | hash(self.value)
+
+ def __repr__(self):
+ return ('<{}({!r}, {!r}, {!r})>'
+ .format(self.__class__.__name__, self.name, self.value,
+ self.comments))
+
+ def __str__(self):
+ return 'CONFIG_{}={}'.format(self.name, self.value)
+
+ def write(self):
+ for comment in self.comments:
+ yield '#. ' + comment
+ yield str(self)
+
+
+class KConfigEntryTristate(KConfigEntry):
+ __slots__ = ()
+
+ VALUE_NO = False
+ VALUE_YES = True
+ VALUE_MOD = object()
+
+ def __init__(self, name, value, comments=None):
+ if value == 'n' or value is None:
+ value = self.VALUE_NO
+ elif value == 'y':
+ value = self.VALUE_YES
+ elif value == 'm':
+ value = self.VALUE_MOD
+ else:
+ raise NotImplementedError
+ super(KConfigEntryTristate, self).__init__(name, value, comments)
+
+ def __str__(self):
+ if self.value is self.VALUE_MOD:
+ return 'CONFIG_{}=m'.format(self.name)
+ if self.value:
+ return 'CONFIG_{}=y'.format(self.name)
+ return '# CONFIG_{} is not set'.format(self.name)
+
+
+class KconfigFile(OrderedDict):
+ def __str__(self):
+ ret = []
+ for i in self.str_iter():
+ ret.append(i)
+ return '\n'.join(ret) + '\n'
+
+ def read(self, f):
+ for line in iter(f.readlines()):
+ line = line.strip()
+ if line.startswith("CONFIG_"):
+ i = line.find('=')
+ option = line[7:i]
+ value = line[i + 1:]
+ self.set(option, value)
+ elif line.startswith("# CONFIG_"):
+ option = line[9:-11]
+ self.set(option, 'n')
+ elif line.startswith("#") or not line:
+ pass
+ else:
+ raise RuntimeError("Can't recognize %s" % line)
+
+ def set(self, key, value):
+ if value in ('y', 'm', 'n'):
+ entry = KConfigEntryTristate(key, value)
+ else:
+ entry = KConfigEntry(key, value)
+ self[key] = entry
+
+ def str_iter(self):
+ for key, value in self.items():
+ yield str(value)
diff --git a/debian/lib/python/debian_linux/utils.py b/debian/lib/python/debian_linux/utils.py
new file mode 100644
index 000000000..a43e98698
--- /dev/null
+++ b/debian/lib/python/debian_linux/utils.py
@@ -0,0 +1,108 @@
+import codecs
+import os
+import re
+import textwrap
+
+
+class Templates(object):
+ def __init__(self, dirs=["debian/templates"]):
+ self.dirs = dirs
+
+ self._cache = {}
+
+ def __getitem__(self, key):
+ ret = self.get(key)
+ if ret is not None:
+ return ret
+ raise KeyError(key)
+
+ def _read(self, name):
+ prefix, id = name.split('.', 1)
+
+ for suffix in ['.in', '']:
+ for dir in self.dirs:
+ filename = "%s/%s%s" % (dir, name, suffix)
+ if os.path.exists(filename):
+ with codecs.open(filename, 'r', 'utf-8') as f:
+ mode = os.stat(f.fileno()).st_mode
+ if prefix == 'control':
+ return (read_control(f), mode)
+ if prefix == 'tests-control':
+ return (read_tests_control(f), mode)
+ return (f.read(), mode)
+
+ def _get(self, key):
+ try:
+ return self._cache[key]
+ except KeyError:
+ self._cache[key] = value = self._read(key)
+ return value
+
+ def get(self, key, default=None):
+ value = self._get(key)
+ if value is None:
+ return default
+ return value[0]
+
+ def get_mode(self, key):
+ value = self._get(key)
+ if value is None:
+ return None
+ return value[1]
+
+
+def read_control(f):
+ from .debian import Package
+ return _read_rfc822(f, Package)
+
+
+def read_tests_control(f):
+ from .debian import TestsControl
+ return _read_rfc822(f, TestsControl)
+
+
+def _read_rfc822(f, cls):
+ entries = []
+ eof = False
+
+ while not eof:
+ e = cls()
+ last = None
+ lines = []
+ while True:
+ line = f.readline()
+ if not line:
+ eof = True
+ break
+ # Strip comments rather than trying to preserve them
+ if line[0] == '#':
+ continue
+ line = line.strip('\n')
+ if not line:
+ break
+ if line[0] in ' \t':
+ if not last:
+ raise ValueError(
+ 'Continuation line seen before first header')
+ lines.append(line.lstrip())
+ continue
+ if last:
+ e[last] = '\n'.join(lines)
+ i = line.find(':')
+ if i < 0:
+ raise ValueError(u"Not a header, not a continuation: ``%s''" %
+ line)
+ last = line[:i]
+ lines = [line[i + 1:].lstrip()]
+ if last:
+ e[last] = '\n'.join(lines)
+ if e:
+ entries.append(e)
+
+ return entries
+
+
+class TextWrapper(textwrap.TextWrapper):
+ wordsep_re = re.compile(
+ r'(\s+|' # any whitespace
+ r'(?<=[\w\!\"\'\&\.\,\?])-{2,}(?=\w))') # em-dash
diff --git a/debian/libcpupower-dev.install b/debian/libcpupower-dev.install
new file mode 100644
index 000000000..f3800aad5
--- /dev/null
+++ b/debian/libcpupower-dev.install
@@ -0,0 +1,2 @@
+usr/include/*
+usr/lib/*/lib*.so
diff --git a/debian/libcpupower1.install b/debian/libcpupower1.install
new file mode 100644
index 000000000..3ddde5841
--- /dev/null
+++ b/debian/libcpupower1.install
@@ -0,0 +1 @@
+usr/lib/*/lib*.so.*
diff --git a/debian/libcpupower1.symbols b/debian/libcpupower1.symbols
new file mode 100644
index 000000000..5639cbe8a
--- /dev/null
+++ b/debian/libcpupower1.symbols
@@ -0,0 +1,40 @@
+libcpupower.so.1 libcpupower1 #MINVER#
+ cpu_topology_release@Base 4.7~rc2-1~exp1
+ cpufreq_get_affected_cpus@Base 4.7~rc2-1~exp1
+ cpufreq_get_available_frequencies@Base 4.7~rc2-1~exp1
+ cpufreq_get_available_governors@Base 4.7~rc2-1~exp1
+ cpufreq_get_boost_frequencies@Base 5.5.8-1~exp1
+ cpufreq_get_driver@Base 4.7~rc2-1~exp1
+ cpufreq_get_freq_hardware@Base 4.7~rc2-1~exp1
+ cpufreq_get_freq_kernel@Base 4.7~rc2-1~exp1
+ cpufreq_get_hardware_limits@Base 4.7~rc2-1~exp1
+ cpufreq_get_policy@Base 4.7~rc2-1~exp1
+ cpufreq_get_related_cpus@Base 4.7~rc2-1~exp1
+ cpufreq_get_stats@Base 4.7~rc2-1~exp1
+ cpufreq_get_transition_latency@Base 4.7~rc2-1~exp1
+ cpufreq_get_transitions@Base 4.7~rc2-1~exp1
+ cpufreq_modify_policy_governor@Base 4.7~rc2-1~exp1
+ cpufreq_modify_policy_max@Base 4.7~rc2-1~exp1
+ cpufreq_modify_policy_min@Base 4.7~rc2-1~exp1
+ cpufreq_put_affected_cpus@Base 4.7~rc2-1~exp1
+ cpufreq_put_available_frequencies@Base 4.7~rc2-1~exp1
+ cpufreq_put_available_governors@Base 4.7~rc2-1~exp1
+ cpufreq_put_boost_frequencies@Base 5.5.8-1~exp1
+ cpufreq_put_driver@Base 4.7~rc2-1~exp1
+ cpufreq_put_policy@Base 4.7~rc2-1~exp1
+ cpufreq_put_related_cpus@Base 4.7~rc2-1~exp1
+ cpufreq_put_stats@Base 4.7~rc2-1~exp1
+ cpufreq_set_frequency@Base 4.7~rc2-1~exp1
+ cpufreq_set_policy@Base 4.7~rc2-1~exp1
+ cpuidle_get_driver@Base 4.7~rc2-1~exp1
+ cpuidle_get_governor@Base 4.7~rc2-1~exp1
+ cpuidle_is_state_disabled@Base 4.7~rc2-1~exp1
+ cpuidle_state_count@Base 4.7~rc2-1~exp1
+ cpuidle_state_desc@Base 4.7~rc2-1~exp1
+ cpuidle_state_disable@Base 4.7~rc2-1~exp1
+ cpuidle_state_latency@Base 4.7~rc2-1~exp1
+ cpuidle_state_name@Base 4.7~rc2-1~exp1
+ cpuidle_state_time@Base 4.7~rc2-1~exp1
+ cpuidle_state_usage@Base 4.7~rc2-1~exp1
+ cpupower_is_cpu_online@Base 4.7~rc2-1~exp1
+ get_cpu_topology@Base 4.7~rc2-1~exp1
diff --git a/debian/liblockdep-dev.README.Debian b/debian/liblockdep-dev.README.Debian
new file mode 100644
index 000000000..a0673a170
--- /dev/null
+++ b/debian/liblockdep-dev.README.Debian
@@ -0,0 +1,13 @@
+liblockdep for Debian
+---------------------
+
+liblockdep does not have proper documentation, but these articles
+provide an introduction:
+
+ https://lwn.net/Articles/536363/
+ http://www.vctlabs.com/posts/2014/Jul/09/liblockdep/
+
+'lockdep-design.txt' explains some more detail about what lockdep
+does, both in the kernel and as liblockdep.
+
+ -- Ben Hutchings <ben@decadent.org.uk>, Fri, 14 Aug 2015 14:22:55 +0200
diff --git a/debian/liblockdep-dev.docs b/debian/liblockdep-dev.docs
new file mode 100644
index 000000000..15b2bbe12
--- /dev/null
+++ b/debian/liblockdep-dev.docs
@@ -0,0 +1 @@
+Documentation/locking/lockdep-design.txt
diff --git a/debian/liblockdep-dev.install b/debian/liblockdep-dev.install
new file mode 100644
index 000000000..bd857244b
--- /dev/null
+++ b/debian/liblockdep-dev.install
@@ -0,0 +1,3 @@
+usr/include/liblockdep
+usr/lib/*/liblockdep.a
+usr/lib/*/liblockdep.so
diff --git a/debian/linux-cpupower.install b/debian/linux-cpupower.install
new file mode 100755
index 000000000..cbed747b9
--- /dev/null
+++ b/debian/linux-cpupower.install
@@ -0,0 +1,4 @@
+#!/usr/bin/dh-exec
+usr/bin
+[i386 amd64 x32] usr/sbin
+usr/share/
diff --git a/debian/linux-cpupower.manpages b/debian/linux-cpupower.manpages
new file mode 100755
index 000000000..96f9593ef
--- /dev/null
+++ b/debian/linux-cpupower.manpages
@@ -0,0 +1,3 @@
+#!/usr/bin/dh-exec
+[i386 amd64 x32] tools/power/x86/turbostat/turbostat.8
+[i386 amd64 x32] tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy.8
diff --git a/debian/linux-doc.maintscript b/debian/linux-doc.maintscript
new file mode 100644
index 000000000..f8c1224bf
--- /dev/null
+++ b/debian/linux-doc.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-doc linux-doc-5.10 5.7~rc5-1~exp1 linux-doc
diff --git a/debian/linux-headers-4kc-malta.maintscript b/debian/linux-headers-4kc-malta.maintscript
new file mode 100644
index 000000000..313ad21f4
--- /dev/null
+++ b/debian/linux-headers-4kc-malta.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-4kc-malta linux-headers-5.10.0-28-4kc-malta 5.7~rc5-1~exp1 linux-headers-4kc-malta
diff --git a/debian/linux-headers-5.10.0-28-4kc-malta.postinst b/debian/linux-headers-5.10.0-28-4kc-malta.postinst
new file mode 100755
index 000000000..c41d185f0
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-4kc-malta.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-4kc-malta";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-5kc-malta.postinst b/debian/linux-headers-5.10.0-28-5kc-malta.postinst
new file mode 100755
index 000000000..d50c60de7
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-5kc-malta.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-5kc-malta";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-686-pae.postinst b/debian/linux-headers-5.10.0-28-686-pae.postinst
new file mode 100755
index 000000000..e279d37a3
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-686-pae.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-686-pae";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-686.postinst b/debian/linux-headers-5.10.0-28-686.postinst
new file mode 100755
index 000000000..43cf4b868
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-686.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-686";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-alpha-generic.postinst b/debian/linux-headers-5.10.0-28-alpha-generic.postinst
new file mode 100755
index 000000000..aab24dc1b
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-alpha-generic.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-alpha-generic";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-alpha-smp.postinst b/debian/linux-headers-5.10.0-28-alpha-smp.postinst
new file mode 100755
index 000000000..9aa5c4431
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-alpha-smp.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-alpha-smp";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-amd64.postinst b/debian/linux-headers-5.10.0-28-amd64.postinst
new file mode 100755
index 000000000..048bb5d7f
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-amd64.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-amd64";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-arm64.postinst b/debian/linux-headers-5.10.0-28-arm64.postinst
new file mode 100755
index 000000000..20a6f3920
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-arm64.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-arm64";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-armmp-lpae.postinst b/debian/linux-headers-5.10.0-28-armmp-lpae.postinst
new file mode 100755
index 000000000..5d9ecac9d
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-armmp-lpae.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-armmp-lpae";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-armmp.postinst b/debian/linux-headers-5.10.0-28-armmp.postinst
new file mode 100755
index 000000000..97da71c15
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-armmp.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-armmp";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-cloud-amd64.postinst b/debian/linux-headers-5.10.0-28-cloud-amd64.postinst
new file mode 100755
index 000000000..e2b24b75e
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-cloud-amd64.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-cloud-amd64";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-cloud-arm64.postinst b/debian/linux-headers-5.10.0-28-cloud-arm64.postinst
new file mode 100755
index 000000000..702b3e397
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-cloud-arm64.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-cloud-arm64";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-itanium.postinst b/debian/linux-headers-5.10.0-28-itanium.postinst
new file mode 100755
index 000000000..d8af58a1c
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-itanium.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-itanium";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-loongson-3.postinst b/debian/linux-headers-5.10.0-28-loongson-3.postinst
new file mode 100755
index 000000000..99b6593b0
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-loongson-3.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-loongson-3";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-m68k.postinst b/debian/linux-headers-5.10.0-28-m68k.postinst
new file mode 100755
index 000000000..301381db6
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-m68k.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-m68k";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-marvell.postinst b/debian/linux-headers-5.10.0-28-marvell.postinst
new file mode 100755
index 000000000..06d7c95cd
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-marvell.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-marvell";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-mckinley.postinst b/debian/linux-headers-5.10.0-28-mckinley.postinst
new file mode 100755
index 000000000..70169f084
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-mckinley.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-mckinley";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-mips32r6.postinst b/debian/linux-headers-5.10.0-28-mips32r6.postinst
new file mode 100755
index 000000000..886154d32
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-mips32r6.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-mips32r6";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-mips32r6el.postinst b/debian/linux-headers-5.10.0-28-mips32r6el.postinst
new file mode 100755
index 000000000..74930b8e7
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-mips32r6el.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-mips32r6el";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-mips64r6.postinst b/debian/linux-headers-5.10.0-28-mips64r6.postinst
new file mode 100755
index 000000000..0cb5fe486
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-mips64r6.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-mips64r6";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-mips64r6el.postinst b/debian/linux-headers-5.10.0-28-mips64r6el.postinst
new file mode 100755
index 000000000..9627aa959
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-mips64r6el.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-mips64r6el";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-octeon.postinst b/debian/linux-headers-5.10.0-28-octeon.postinst
new file mode 100755
index 000000000..8ff572dc9
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-octeon.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-octeon";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-parisc.postinst b/debian/linux-headers-5.10.0-28-parisc.postinst
new file mode 100755
index 000000000..3c81afbd8
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-parisc.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-parisc";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-parisc64.postinst b/debian/linux-headers-5.10.0-28-parisc64.postinst
new file mode 100755
index 000000000..bcdf91312
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-parisc64.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-parisc64";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-powerpc-smp.postinst b/debian/linux-headers-5.10.0-28-powerpc-smp.postinst
new file mode 100755
index 000000000..4a07ef182
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-powerpc-smp.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-powerpc-smp";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-powerpc.postinst b/debian/linux-headers-5.10.0-28-powerpc.postinst
new file mode 100755
index 000000000..5da51661e
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-powerpc.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-powerpc";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-powerpc64.postinst b/debian/linux-headers-5.10.0-28-powerpc64.postinst
new file mode 100755
index 000000000..c58c94a07
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-powerpc64.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-powerpc64";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-powerpc64le.postinst b/debian/linux-headers-5.10.0-28-powerpc64le.postinst
new file mode 100755
index 000000000..5106c15d4
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-powerpc64le.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-powerpc64le";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-riscv64.postinst b/debian/linux-headers-5.10.0-28-riscv64.postinst
new file mode 100755
index 000000000..a3f2b517b
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-riscv64.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-riscv64";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-rpi.postinst b/debian/linux-headers-5.10.0-28-rpi.postinst
new file mode 100755
index 000000000..4f7fa0e9a
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-rpi.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-rpi";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-rt-686-pae.postinst b/debian/linux-headers-5.10.0-28-rt-686-pae.postinst
new file mode 100755
index 000000000..36ade5654
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-rt-686-pae.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-rt-686-pae";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-rt-amd64.postinst b/debian/linux-headers-5.10.0-28-rt-amd64.postinst
new file mode 100755
index 000000000..3289ec726
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-rt-amd64.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-rt-amd64";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-rt-arm64.postinst b/debian/linux-headers-5.10.0-28-rt-arm64.postinst
new file mode 100755
index 000000000..05d0df1c3
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-rt-arm64.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-rt-arm64";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-rt-armmp.postinst b/debian/linux-headers-5.10.0-28-rt-armmp.postinst
new file mode 100755
index 000000000..f06916d81
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-rt-armmp.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-rt-armmp";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-s390x.postinst b/debian/linux-headers-5.10.0-28-s390x.postinst
new file mode 100755
index 000000000..1cb9ebad9
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-s390x.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-s390x";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-sh7751r.postinst b/debian/linux-headers-5.10.0-28-sh7751r.postinst
new file mode 100755
index 000000000..62cde5b9d
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-sh7751r.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-sh7751r";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-sh7785lcr.postinst b/debian/linux-headers-5.10.0-28-sh7785lcr.postinst
new file mode 100755
index 000000000..276ab10fd
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-sh7785lcr.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-sh7785lcr";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-sparc64-smp.postinst b/debian/linux-headers-5.10.0-28-sparc64-smp.postinst
new file mode 100755
index 000000000..2ff3cedc3
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-sparc64-smp.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-sparc64-smp";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5.10.0-28-sparc64.postinst b/debian/linux-headers-5.10.0-28-sparc64.postinst
new file mode 100755
index 000000000..1cc73e5ba
--- /dev/null
+++ b/debian/linux-headers-5.10.0-28-sparc64.postinst
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "5.10.0-28-sparc64";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/linux-headers-5kc-malta.maintscript b/debian/linux-headers-5kc-malta.maintscript
new file mode 100644
index 000000000..25aec2ac8
--- /dev/null
+++ b/debian/linux-headers-5kc-malta.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-5kc-malta linux-headers-5.10.0-28-5kc-malta 5.7~rc5-1~exp1 linux-headers-5kc-malta
diff --git a/debian/linux-headers-alpha-generic.maintscript b/debian/linux-headers-alpha-generic.maintscript
new file mode 100644
index 000000000..5cd7ef9c6
--- /dev/null
+++ b/debian/linux-headers-alpha-generic.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-alpha-generic linux-headers-5.10.0-28-alpha-generic 5.7~rc5-1~exp1 linux-headers-alpha-generic
diff --git a/debian/linux-headers-alpha-smp.maintscript b/debian/linux-headers-alpha-smp.maintscript
new file mode 100644
index 000000000..0b2c46069
--- /dev/null
+++ b/debian/linux-headers-alpha-smp.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-alpha-smp linux-headers-5.10.0-28-alpha-smp 5.7~rc5-1~exp1 linux-headers-alpha-smp
diff --git a/debian/linux-headers-armmp-lpae.maintscript b/debian/linux-headers-armmp-lpae.maintscript
new file mode 100644
index 000000000..15ff11694
--- /dev/null
+++ b/debian/linux-headers-armmp-lpae.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-armmp-lpae linux-headers-5.10.0-28-armmp-lpae 5.7~rc5-1~exp1 linux-headers-armmp-lpae
diff --git a/debian/linux-headers-armmp.maintscript b/debian/linux-headers-armmp.maintscript
new file mode 100644
index 000000000..0d65f80ca
--- /dev/null
+++ b/debian/linux-headers-armmp.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-armmp linux-headers-5.10.0-28-armmp 5.7~rc5-1~exp1 linux-headers-armmp
diff --git a/debian/linux-headers-itanium.maintscript b/debian/linux-headers-itanium.maintscript
new file mode 100644
index 000000000..aae58f8b6
--- /dev/null
+++ b/debian/linux-headers-itanium.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-itanium linux-headers-5.10.0-28-itanium 5.7~rc5-1~exp1 linux-headers-itanium
diff --git a/debian/linux-headers-loongson-3.maintscript b/debian/linux-headers-loongson-3.maintscript
new file mode 100644
index 000000000..8fa96511f
--- /dev/null
+++ b/debian/linux-headers-loongson-3.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-loongson-3 linux-headers-5.10.0-28-loongson-3 5.7~rc5-1~exp1 linux-headers-loongson-3
diff --git a/debian/linux-headers-m68k.maintscript b/debian/linux-headers-m68k.maintscript
new file mode 100644
index 000000000..dc8b6c3d6
--- /dev/null
+++ b/debian/linux-headers-m68k.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-m68k linux-headers-5.10.0-28-m68k 5.7~rc5-1~exp1 linux-headers-m68k
diff --git a/debian/linux-headers-marvell.maintscript b/debian/linux-headers-marvell.maintscript
new file mode 100644
index 000000000..16872ddf9
--- /dev/null
+++ b/debian/linux-headers-marvell.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-marvell linux-headers-5.10.0-28-marvell 5.7~rc5-1~exp1 linux-headers-marvell
diff --git a/debian/linux-headers-mckinley.maintscript b/debian/linux-headers-mckinley.maintscript
new file mode 100644
index 000000000..190ae372f
--- /dev/null
+++ b/debian/linux-headers-mckinley.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-mckinley linux-headers-5.10.0-28-mckinley 5.7~rc5-1~exp1 linux-headers-mckinley
diff --git a/debian/linux-headers-mips32r6.maintscript b/debian/linux-headers-mips32r6.maintscript
new file mode 100644
index 000000000..a40b3f09f
--- /dev/null
+++ b/debian/linux-headers-mips32r6.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-mips32r6 linux-headers-5.10.0-28-mips32r6 5.7~rc5-1~exp1 linux-headers-mips32r6
diff --git a/debian/linux-headers-mips32r6el.maintscript b/debian/linux-headers-mips32r6el.maintscript
new file mode 100644
index 000000000..5c23b7ce4
--- /dev/null
+++ b/debian/linux-headers-mips32r6el.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-mips32r6el linux-headers-5.10.0-28-mips32r6el 5.7~rc5-1~exp1 linux-headers-mips32r6el
diff --git a/debian/linux-headers-mips64r6.maintscript b/debian/linux-headers-mips64r6.maintscript
new file mode 100644
index 000000000..6d8a92e75
--- /dev/null
+++ b/debian/linux-headers-mips64r6.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-mips64r6 linux-headers-5.10.0-28-mips64r6 5.7~rc5-1~exp1 linux-headers-mips64r6
diff --git a/debian/linux-headers-mips64r6el.maintscript b/debian/linux-headers-mips64r6el.maintscript
new file mode 100644
index 000000000..e91b91e33
--- /dev/null
+++ b/debian/linux-headers-mips64r6el.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-mips64r6el linux-headers-5.10.0-28-mips64r6el 5.7~rc5-1~exp1 linux-headers-mips64r6el
diff --git a/debian/linux-headers-octeon.maintscript b/debian/linux-headers-octeon.maintscript
new file mode 100644
index 000000000..c316fd3ef
--- /dev/null
+++ b/debian/linux-headers-octeon.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-octeon linux-headers-5.10.0-28-octeon 5.7~rc5-1~exp1 linux-headers-octeon
diff --git a/debian/linux-headers-parisc.maintscript b/debian/linux-headers-parisc.maintscript
new file mode 100644
index 000000000..88453ddfc
--- /dev/null
+++ b/debian/linux-headers-parisc.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-parisc linux-headers-5.10.0-28-parisc 5.7~rc5-1~exp1 linux-headers-parisc
diff --git a/debian/linux-headers-parisc64.maintscript b/debian/linux-headers-parisc64.maintscript
new file mode 100644
index 000000000..5206c5417
--- /dev/null
+++ b/debian/linux-headers-parisc64.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-parisc64 linux-headers-5.10.0-28-parisc64 5.7~rc5-1~exp1 linux-headers-parisc64
diff --git a/debian/linux-headers-powerpc-smp.maintscript b/debian/linux-headers-powerpc-smp.maintscript
new file mode 100644
index 000000000..6f68f0b05
--- /dev/null
+++ b/debian/linux-headers-powerpc-smp.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-powerpc-smp linux-headers-5.10.0-28-powerpc-smp 5.7~rc5-1~exp1 linux-headers-powerpc-smp
diff --git a/debian/linux-headers-powerpc.maintscript b/debian/linux-headers-powerpc.maintscript
new file mode 100644
index 000000000..4ed9b7308
--- /dev/null
+++ b/debian/linux-headers-powerpc.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-powerpc linux-headers-5.10.0-28-powerpc 5.7~rc5-1~exp1 linux-headers-powerpc
diff --git a/debian/linux-headers-powerpc64.maintscript b/debian/linux-headers-powerpc64.maintscript
new file mode 100644
index 000000000..df6094545
--- /dev/null
+++ b/debian/linux-headers-powerpc64.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-powerpc64 linux-headers-5.10.0-28-powerpc64 5.7~rc5-1~exp1 linux-headers-powerpc64
diff --git a/debian/linux-headers-powerpc64le.maintscript b/debian/linux-headers-powerpc64le.maintscript
new file mode 100644
index 000000000..4ab1faadb
--- /dev/null
+++ b/debian/linux-headers-powerpc64le.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-powerpc64le linux-headers-5.10.0-28-powerpc64le 5.7~rc5-1~exp1 linux-headers-powerpc64le
diff --git a/debian/linux-headers-riscv64.maintscript b/debian/linux-headers-riscv64.maintscript
new file mode 100644
index 000000000..43e42f1d0
--- /dev/null
+++ b/debian/linux-headers-riscv64.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-riscv64 linux-headers-5.10.0-28-riscv64 5.7~rc5-1~exp1 linux-headers-riscv64
diff --git a/debian/linux-headers-rpi.maintscript b/debian/linux-headers-rpi.maintscript
new file mode 100644
index 000000000..683648706
--- /dev/null
+++ b/debian/linux-headers-rpi.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-rpi linux-headers-5.10.0-28-rpi 5.7~rc5-1~exp1 linux-headers-rpi
diff --git a/debian/linux-headers-rt-armmp.maintscript b/debian/linux-headers-rt-armmp.maintscript
new file mode 100644
index 000000000..d19adcf50
--- /dev/null
+++ b/debian/linux-headers-rt-armmp.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-rt-armmp linux-headers-5.10.0-28-rt-armmp 5.7~rc5-1~exp1 linux-headers-rt-armmp
diff --git a/debian/linux-headers-s390x.maintscript b/debian/linux-headers-s390x.maintscript
new file mode 100644
index 000000000..0907f6739
--- /dev/null
+++ b/debian/linux-headers-s390x.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-s390x linux-headers-5.10.0-28-s390x 5.7~rc5-1~exp1 linux-headers-s390x
diff --git a/debian/linux-headers-sh7751r.maintscript b/debian/linux-headers-sh7751r.maintscript
new file mode 100644
index 000000000..054171e54
--- /dev/null
+++ b/debian/linux-headers-sh7751r.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-sh7751r linux-headers-5.10.0-28-sh7751r 5.7~rc5-1~exp1 linux-headers-sh7751r
diff --git a/debian/linux-headers-sh7785lcr.maintscript b/debian/linux-headers-sh7785lcr.maintscript
new file mode 100644
index 000000000..1c9cbd81c
--- /dev/null
+++ b/debian/linux-headers-sh7785lcr.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-sh7785lcr linux-headers-5.10.0-28-sh7785lcr 5.7~rc5-1~exp1 linux-headers-sh7785lcr
diff --git a/debian/linux-headers-sparc64-smp.maintscript b/debian/linux-headers-sparc64-smp.maintscript
new file mode 100644
index 000000000..001412d86
--- /dev/null
+++ b/debian/linux-headers-sparc64-smp.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-sparc64-smp linux-headers-5.10.0-28-sparc64-smp 5.7~rc5-1~exp1 linux-headers-sparc64-smp
diff --git a/debian/linux-headers-sparc64.maintscript b/debian/linux-headers-sparc64.maintscript
new file mode 100644
index 000000000..65b4383dc
--- /dev/null
+++ b/debian/linux-headers-sparc64.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers-sparc64 linux-headers-5.10.0-28-sparc64 5.7~rc5-1~exp1 linux-headers-sparc64
diff --git a/debian/linux-image-4kc-malta-dbg.lintian-overrides b/debian/linux-image-4kc-malta-dbg.lintian-overrides
new file mode 100644
index 000000000..b68cb7a7b
--- /dev/null
+++ b/debian/linux-image-4kc-malta-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-4kc-malta-dbg: wrong-section-according-to-package-name linux-image-4kc-malta-dbg => debug
+linux-image-4kc-malta-dbg: debug-package-should-be-priority-extra linux-image-4kc-malta-dbg
diff --git a/debian/linux-image-4kc-malta-dbg.maintscript b/debian/linux-image-4kc-malta-dbg.maintscript
new file mode 100644
index 000000000..a298604ba
--- /dev/null
+++ b/debian/linux-image-4kc-malta-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-4kc-malta-dbg linux-image-5.10.0-28-4kc-malta-dbg 5.7~rc5-1~exp1 linux-image-4kc-malta-dbg
diff --git a/debian/linux-image-4kc-malta.bug-presubj b/debian/linux-image-4kc-malta.bug-presubj
new file mode 100644
index 000000000..28b84c77f
--- /dev/null
+++ b/debian/linux-image-4kc-malta.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-4kc-malta instead.
diff --git a/debian/linux-image-4kc-malta.maintscript b/debian/linux-image-4kc-malta.maintscript
new file mode 100644
index 000000000..0bd9393cd
--- /dev/null
+++ b/debian/linux-image-4kc-malta.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-4kc-malta linux-image-5.10.0-28-4kc-malta 5.7~rc5-1~exp1 linux-image-4kc-malta
diff --git a/debian/linux-image-5.10.0-28-4kc-malta-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-4kc-malta-dbg.lintian-overrides
new file mode 100755
index 000000000..727fd0c9d
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-4kc-malta-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-4kc-malta-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-4kc-malta-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-4kc-malta/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-4kc-malta-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-4kc-malta/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-4kc-malta-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-4kc-malta/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-4kc-malta-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-4kc-malta/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-4kc-malta-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-4kc-malta/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-4kc-malta-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-4kc-malta/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-4kc-malta.postinst b/debian/linux-image-5.10.0-28-4kc-malta.postinst
new file mode 100755
index 000000000..a611434b7
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-4kc-malta.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-4kc-malta
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-4kc-malta.postrm b/debian/linux-image-5.10.0-28-4kc-malta.postrm
new file mode 100755
index 000000000..cfd657d6c
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-4kc-malta.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-4kc-malta
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-4kc-malta.preinst b/debian/linux-image-5.10.0-28-4kc-malta.preinst
new file mode 100755
index 000000000..b90a4c9f1
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-4kc-malta.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-4kc-malta
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-4kc-malta.prerm b/debian/linux-image-5.10.0-28-4kc-malta.prerm
new file mode 100755
index 000000000..c8fc3a155
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-4kc-malta.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-4kc-malta
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-5kc-malta-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-5kc-malta-dbg.lintian-overrides
new file mode 100755
index 000000000..7177824be
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-5kc-malta-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-5kc-malta-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-5kc-malta-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-5kc-malta/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-5kc-malta-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-5kc-malta/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-5kc-malta-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-5kc-malta/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-5kc-malta-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-5kc-malta/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-5kc-malta-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-5kc-malta/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-5kc-malta-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-5kc-malta/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-5kc-malta.postinst b/debian/linux-image-5.10.0-28-5kc-malta.postinst
new file mode 100755
index 000000000..cdb37dbfa
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-5kc-malta.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-5kc-malta
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-5kc-malta.postrm b/debian/linux-image-5.10.0-28-5kc-malta.postrm
new file mode 100755
index 000000000..ef34c0cd7
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-5kc-malta.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-5kc-malta
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-5kc-malta.preinst b/debian/linux-image-5.10.0-28-5kc-malta.preinst
new file mode 100755
index 000000000..8154f0ba5
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-5kc-malta.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-5kc-malta
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-5kc-malta.prerm b/debian/linux-image-5.10.0-28-5kc-malta.prerm
new file mode 100755
index 000000000..7471d5e45
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-5kc-malta.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-5kc-malta
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-686-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-686-dbg.lintian-overrides
new file mode 100755
index 000000000..2940c7ff3
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-686-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-686-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-686-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-686/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-686-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-686/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-686-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-686/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-686-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-686/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-686-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-686/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-686-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-686/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-686-pae-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-686-pae-dbg.lintian-overrides
new file mode 100755
index 000000000..cc286be89
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-686-pae-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-686-pae-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-686-pae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-686-pae/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-686-pae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-686-pae/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-686-pae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-686-pae/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-686-pae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-686-pae/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-686-pae-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-686-pae/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-686-pae-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-686-pae/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-686-pae-unsigned.postinst b/debian/linux-image-5.10.0-28-686-pae-unsigned.postinst
new file mode 100755
index 000000000..6536ad362
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-686-pae-unsigned.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-686-pae
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-686-pae-unsigned.postrm b/debian/linux-image-5.10.0-28-686-pae-unsigned.postrm
new file mode 100755
index 000000000..b489c7773
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-686-pae-unsigned.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-686-pae
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-686-pae-unsigned.preinst b/debian/linux-image-5.10.0-28-686-pae-unsigned.preinst
new file mode 100755
index 000000000..8356c72e0
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-686-pae-unsigned.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-686-pae
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-686-pae-unsigned.prerm b/debian/linux-image-5.10.0-28-686-pae-unsigned.prerm
new file mode 100755
index 000000000..3d4799679
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-686-pae-unsigned.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-686-pae
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-686-unsigned.postinst b/debian/linux-image-5.10.0-28-686-unsigned.postinst
new file mode 100755
index 000000000..df2aff9b0
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-686-unsigned.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-686
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-686-unsigned.postrm b/debian/linux-image-5.10.0-28-686-unsigned.postrm
new file mode 100755
index 000000000..f15b37269
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-686-unsigned.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-686
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-686-unsigned.preinst b/debian/linux-image-5.10.0-28-686-unsigned.preinst
new file mode 100755
index 000000000..a981f2c15
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-686-unsigned.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-686
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-686-unsigned.prerm b/debian/linux-image-5.10.0-28-686-unsigned.prerm
new file mode 100755
index 000000000..75aa9ba25
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-686-unsigned.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-686
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-alpha-generic-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-alpha-generic-dbg.lintian-overrides
new file mode 100755
index 000000000..718789c1b
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-alpha-generic-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-alpha-generic-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-alpha-generic-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-alpha-generic/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-alpha-generic-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-alpha-generic/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-alpha-generic-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-alpha-generic/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-alpha-generic-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-alpha-generic/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-alpha-generic-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-alpha-generic/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-alpha-generic-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-alpha-generic/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-alpha-generic.postinst b/debian/linux-image-5.10.0-28-alpha-generic.postinst
new file mode 100755
index 000000000..92529e2bf
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-alpha-generic.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-alpha-generic
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-alpha-generic.postrm b/debian/linux-image-5.10.0-28-alpha-generic.postrm
new file mode 100755
index 000000000..00e6ca441
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-alpha-generic.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-alpha-generic
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-alpha-generic.preinst b/debian/linux-image-5.10.0-28-alpha-generic.preinst
new file mode 100755
index 000000000..b28ccd8ed
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-alpha-generic.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-alpha-generic
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-alpha-generic.prerm b/debian/linux-image-5.10.0-28-alpha-generic.prerm
new file mode 100755
index 000000000..057b6e8c2
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-alpha-generic.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-alpha-generic
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-alpha-smp-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-alpha-smp-dbg.lintian-overrides
new file mode 100755
index 000000000..323a7dbb8
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-alpha-smp-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-alpha-smp-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-alpha-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-alpha-smp/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-alpha-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-alpha-smp/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-alpha-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-alpha-smp/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-alpha-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-alpha-smp/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-alpha-smp-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-alpha-smp/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-alpha-smp-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-alpha-smp/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-alpha-smp.postinst b/debian/linux-image-5.10.0-28-alpha-smp.postinst
new file mode 100755
index 000000000..ca3fdf12a
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-alpha-smp.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-alpha-smp
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-alpha-smp.postrm b/debian/linux-image-5.10.0-28-alpha-smp.postrm
new file mode 100755
index 000000000..8e543634c
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-alpha-smp.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-alpha-smp
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-alpha-smp.preinst b/debian/linux-image-5.10.0-28-alpha-smp.preinst
new file mode 100755
index 000000000..8b4f09e32
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-alpha-smp.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-alpha-smp
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-alpha-smp.prerm b/debian/linux-image-5.10.0-28-alpha-smp.prerm
new file mode 100755
index 000000000..1cb058969
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-alpha-smp.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-alpha-smp
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-amd64-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-amd64-dbg.lintian-overrides
new file mode 100755
index 000000000..002006420
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-amd64-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-amd64-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-amd64/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-amd64/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-amd64/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-amd64/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-amd64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-amd64/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-amd64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-amd64/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-amd64-unsigned.postinst b/debian/linux-image-5.10.0-28-amd64-unsigned.postinst
new file mode 100755
index 000000000..fe775d6c2
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-amd64-unsigned.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-amd64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-amd64-unsigned.postrm b/debian/linux-image-5.10.0-28-amd64-unsigned.postrm
new file mode 100755
index 000000000..fd9b0cfc3
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-amd64-unsigned.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-amd64
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-amd64-unsigned.preinst b/debian/linux-image-5.10.0-28-amd64-unsigned.preinst
new file mode 100755
index 000000000..ef7179cde
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-amd64-unsigned.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-amd64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-amd64-unsigned.prerm b/debian/linux-image-5.10.0-28-amd64-unsigned.prerm
new file mode 100755
index 000000000..c0c59bc6f
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-amd64-unsigned.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-amd64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-arm64-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-arm64-dbg.lintian-overrides
new file mode 100755
index 000000000..cb77e7675
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-arm64-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-arm64-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-arm64/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-arm64/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-arm64/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-arm64/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-arm64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-arm64/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-arm64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-arm64/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-arm64-unsigned.postinst b/debian/linux-image-5.10.0-28-arm64-unsigned.postinst
new file mode 100755
index 000000000..19d804666
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-arm64-unsigned.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-arm64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-arm64-unsigned.postrm b/debian/linux-image-5.10.0-28-arm64-unsigned.postrm
new file mode 100755
index 000000000..c4439a76a
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-arm64-unsigned.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-arm64
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-arm64-unsigned.preinst b/debian/linux-image-5.10.0-28-arm64-unsigned.preinst
new file mode 100755
index 000000000..13c1c2b6b
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-arm64-unsigned.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-arm64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-arm64-unsigned.prerm b/debian/linux-image-5.10.0-28-arm64-unsigned.prerm
new file mode 100755
index 000000000..4773e2723
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-arm64-unsigned.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-arm64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-armmp-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-armmp-dbg.lintian-overrides
new file mode 100755
index 000000000..ea54f19e2
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-armmp-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-armmp-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-armmp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-armmp/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-armmp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-armmp/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-armmp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-armmp/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-armmp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-armmp/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-armmp-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-armmp/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-armmp-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-armmp/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-armmp-lpae-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-armmp-lpae-dbg.lintian-overrides
new file mode 100755
index 000000000..52dfa3882
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-armmp-lpae-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-armmp-lpae-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-armmp-lpae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-armmp-lpae/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-armmp-lpae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-armmp-lpae/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-armmp-lpae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-armmp-lpae/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-armmp-lpae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-armmp-lpae/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-armmp-lpae-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-armmp-lpae/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-armmp-lpae-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-armmp-lpae/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-armmp-lpae.postinst b/debian/linux-image-5.10.0-28-armmp-lpae.postinst
new file mode 100755
index 000000000..9c3915fbc
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-armmp-lpae.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-armmp-lpae
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-armmp-lpae.postrm b/debian/linux-image-5.10.0-28-armmp-lpae.postrm
new file mode 100755
index 000000000..41b219d72
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-armmp-lpae.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-armmp-lpae
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-armmp-lpae.preinst b/debian/linux-image-5.10.0-28-armmp-lpae.preinst
new file mode 100755
index 000000000..40af83e2b
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-armmp-lpae.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-armmp-lpae
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-armmp-lpae.prerm b/debian/linux-image-5.10.0-28-armmp-lpae.prerm
new file mode 100755
index 000000000..3153da322
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-armmp-lpae.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-armmp-lpae
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-armmp.postinst b/debian/linux-image-5.10.0-28-armmp.postinst
new file mode 100755
index 000000000..2e99dfd77
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-armmp.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-armmp
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-armmp.postrm b/debian/linux-image-5.10.0-28-armmp.postrm
new file mode 100755
index 000000000..74a1a4460
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-armmp.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-armmp
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-armmp.preinst b/debian/linux-image-5.10.0-28-armmp.preinst
new file mode 100755
index 000000000..35735a446
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-armmp.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-armmp
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-armmp.prerm b/debian/linux-image-5.10.0-28-armmp.prerm
new file mode 100755
index 000000000..2b76cc692
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-armmp.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-armmp
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-cloud-amd64-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-cloud-amd64-dbg.lintian-overrides
new file mode 100755
index 000000000..30d44ed78
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-cloud-amd64-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-cloud-amd64-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-cloud-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-cloud-amd64/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-cloud-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-cloud-amd64/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-cloud-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-cloud-amd64/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-cloud-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-cloud-amd64/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-cloud-amd64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-cloud-amd64/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-cloud-amd64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-cloud-amd64/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.postinst b/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.postinst
new file mode 100755
index 000000000..069da61a2
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-cloud-amd64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.postrm b/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.postrm
new file mode 100755
index 000000000..2ae6d1570
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-cloud-amd64
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.preinst b/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.preinst
new file mode 100755
index 000000000..4a5a3072f
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-cloud-amd64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.prerm b/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.prerm
new file mode 100755
index 000000000..985dcdfd4
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-cloud-amd64-unsigned.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-cloud-amd64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-cloud-arm64-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-cloud-arm64-dbg.lintian-overrides
new file mode 100755
index 000000000..fad871278
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-cloud-arm64-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-cloud-arm64-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-cloud-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-cloud-arm64/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-cloud-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-cloud-arm64/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-cloud-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-cloud-arm64/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-cloud-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-cloud-arm64/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-cloud-arm64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-cloud-arm64/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-cloud-arm64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-cloud-arm64/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.postinst b/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.postinst
new file mode 100755
index 000000000..5161150e3
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-cloud-arm64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.postrm b/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.postrm
new file mode 100755
index 000000000..38a14e9ab
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-cloud-arm64
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.preinst b/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.preinst
new file mode 100755
index 000000000..eff01030e
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-cloud-arm64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.prerm b/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.prerm
new file mode 100755
index 000000000..c1d47360c
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-cloud-arm64-unsigned.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-cloud-arm64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-itanium-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-itanium-dbg.lintian-overrides
new file mode 100755
index 000000000..82c7459ab
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-itanium-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-itanium-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-itanium-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-itanium/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-itanium-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-itanium/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-itanium-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-itanium/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-itanium-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-itanium/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-itanium-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-itanium/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-itanium-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-itanium/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-itanium.postinst b/debian/linux-image-5.10.0-28-itanium.postinst
new file mode 100755
index 000000000..8b36fa824
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-itanium.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-itanium
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-itanium.postrm b/debian/linux-image-5.10.0-28-itanium.postrm
new file mode 100755
index 000000000..ea6b7097c
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-itanium.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-itanium
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-itanium.preinst b/debian/linux-image-5.10.0-28-itanium.preinst
new file mode 100755
index 000000000..b35dd3d4a
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-itanium.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-itanium
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-itanium.prerm b/debian/linux-image-5.10.0-28-itanium.prerm
new file mode 100755
index 000000000..d5719c8b1
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-itanium.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-itanium
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-loongson-3-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-loongson-3-dbg.lintian-overrides
new file mode 100755
index 000000000..a1ab57048
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-loongson-3-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-loongson-3-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-loongson-3-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-loongson-3/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-loongson-3-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-loongson-3/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-loongson-3-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-loongson-3/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-loongson-3-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-loongson-3/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-loongson-3-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-loongson-3/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-loongson-3-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-loongson-3/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-loongson-3.postinst b/debian/linux-image-5.10.0-28-loongson-3.postinst
new file mode 100755
index 000000000..efc244d2c
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-loongson-3.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-loongson-3
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-loongson-3.postrm b/debian/linux-image-5.10.0-28-loongson-3.postrm
new file mode 100755
index 000000000..38c1c7cb9
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-loongson-3.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-loongson-3
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-loongson-3.preinst b/debian/linux-image-5.10.0-28-loongson-3.preinst
new file mode 100755
index 000000000..f56ac5ae6
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-loongson-3.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-loongson-3
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-loongson-3.prerm b/debian/linux-image-5.10.0-28-loongson-3.prerm
new file mode 100755
index 000000000..b60c6a8dd
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-loongson-3.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-loongson-3
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-m68k-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-m68k-dbg.lintian-overrides
new file mode 100755
index 000000000..ef01acd93
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-m68k-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-m68k-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-m68k-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-m68k/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-m68k-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-m68k/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-m68k-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-m68k/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-m68k-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-m68k/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-m68k-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-m68k/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-m68k-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-m68k/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-m68k.postinst b/debian/linux-image-5.10.0-28-m68k.postinst
new file mode 100755
index 000000000..0563bd2ff
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-m68k.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-m68k
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-m68k.postrm b/debian/linux-image-5.10.0-28-m68k.postrm
new file mode 100755
index 000000000..a337d5045
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-m68k.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-m68k
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-m68k.preinst b/debian/linux-image-5.10.0-28-m68k.preinst
new file mode 100755
index 000000000..802de0f9b
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-m68k.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-m68k
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-m68k.prerm b/debian/linux-image-5.10.0-28-m68k.prerm
new file mode 100755
index 000000000..9a74c652b
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-m68k.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-m68k
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-marvell-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-marvell-dbg.lintian-overrides
new file mode 100755
index 000000000..2d1172d85
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-marvell-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-marvell-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-marvell-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-marvell/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-marvell-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-marvell/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-marvell-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-marvell/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-marvell-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-marvell/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-marvell-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-marvell/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-marvell-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-marvell/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-marvell.postinst b/debian/linux-image-5.10.0-28-marvell.postinst
new file mode 100755
index 000000000..8f6d9e627
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-marvell.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-marvell
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-marvell.postrm b/debian/linux-image-5.10.0-28-marvell.postrm
new file mode 100755
index 000000000..351a3ec31
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-marvell.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-marvell
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-marvell.preinst b/debian/linux-image-5.10.0-28-marvell.preinst
new file mode 100755
index 000000000..da2af6d8f
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-marvell.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-marvell
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-marvell.prerm b/debian/linux-image-5.10.0-28-marvell.prerm
new file mode 100755
index 000000000..c4badd971
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-marvell.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-marvell
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mckinley-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-mckinley-dbg.lintian-overrides
new file mode 100755
index 000000000..b6916356e
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mckinley-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-mckinley-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-mckinley-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mckinley/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-mckinley-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mckinley/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-mckinley-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mckinley/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-mckinley-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mckinley/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-mckinley-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-mckinley/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-mckinley-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-mckinley/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-mckinley.postinst b/debian/linux-image-5.10.0-28-mckinley.postinst
new file mode 100755
index 000000000..36e60a95e
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mckinley.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mckinley
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mckinley.postrm b/debian/linux-image-5.10.0-28-mckinley.postrm
new file mode 100755
index 000000000..f47db5ce2
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mckinley.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mckinley
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mckinley.preinst b/debian/linux-image-5.10.0-28-mckinley.preinst
new file mode 100755
index 000000000..691ae14c0
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mckinley.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mckinley
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mckinley.prerm b/debian/linux-image-5.10.0-28-mckinley.prerm
new file mode 100755
index 000000000..58090a00c
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mckinley.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mckinley
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips32r6-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-mips32r6-dbg.lintian-overrides
new file mode 100755
index 000000000..ee2eea5da
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips32r6-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-mips32r6-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-mips32r6-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips32r6/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-mips32r6-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips32r6/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-mips32r6-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips32r6/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-mips32r6-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips32r6/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-mips32r6-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-mips32r6/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-mips32r6-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-mips32r6/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-mips32r6.postinst b/debian/linux-image-5.10.0-28-mips32r6.postinst
new file mode 100755
index 000000000..bcc51a1b0
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips32r6.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips32r6
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips32r6.postrm b/debian/linux-image-5.10.0-28-mips32r6.postrm
new file mode 100755
index 000000000..20e3d5676
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips32r6.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips32r6
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips32r6.preinst b/debian/linux-image-5.10.0-28-mips32r6.preinst
new file mode 100755
index 000000000..92d5d1431
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips32r6.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips32r6
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips32r6.prerm b/debian/linux-image-5.10.0-28-mips32r6.prerm
new file mode 100755
index 000000000..a9f913ecb
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips32r6.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips32r6
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips32r6el-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-mips32r6el-dbg.lintian-overrides
new file mode 100755
index 000000000..f86dc88b5
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips32r6el-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-mips32r6el-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-mips32r6el-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips32r6el/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-mips32r6el-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips32r6el/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-mips32r6el-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips32r6el/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-mips32r6el-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips32r6el/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-mips32r6el-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-mips32r6el/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-mips32r6el-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-mips32r6el/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-mips32r6el.postinst b/debian/linux-image-5.10.0-28-mips32r6el.postinst
new file mode 100755
index 000000000..d6e620c15
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips32r6el.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips32r6el
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips32r6el.postrm b/debian/linux-image-5.10.0-28-mips32r6el.postrm
new file mode 100755
index 000000000..bd7e5d39d
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips32r6el.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips32r6el
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips32r6el.preinst b/debian/linux-image-5.10.0-28-mips32r6el.preinst
new file mode 100755
index 000000000..0540dc31b
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips32r6el.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips32r6el
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips32r6el.prerm b/debian/linux-image-5.10.0-28-mips32r6el.prerm
new file mode 100755
index 000000000..ec5f2eaf2
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips32r6el.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips32r6el
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips64r6-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-mips64r6-dbg.lintian-overrides
new file mode 100755
index 000000000..f1bc98672
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips64r6-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-mips64r6-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-mips64r6-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips64r6/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-mips64r6-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips64r6/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-mips64r6-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips64r6/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-mips64r6-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips64r6/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-mips64r6-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-mips64r6/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-mips64r6-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-mips64r6/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-mips64r6.postinst b/debian/linux-image-5.10.0-28-mips64r6.postinst
new file mode 100755
index 000000000..8088355b3
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips64r6.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips64r6
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips64r6.postrm b/debian/linux-image-5.10.0-28-mips64r6.postrm
new file mode 100755
index 000000000..9816e6b95
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips64r6.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips64r6
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips64r6.preinst b/debian/linux-image-5.10.0-28-mips64r6.preinst
new file mode 100755
index 000000000..88f1b88b6
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips64r6.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips64r6
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips64r6.prerm b/debian/linux-image-5.10.0-28-mips64r6.prerm
new file mode 100755
index 000000000..80ffce0e0
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips64r6.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips64r6
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips64r6el-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-mips64r6el-dbg.lintian-overrides
new file mode 100755
index 000000000..4073aeb4d
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips64r6el-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-mips64r6el-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-mips64r6el-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips64r6el/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-mips64r6el-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips64r6el/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-mips64r6el-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips64r6el/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-mips64r6el-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-mips64r6el/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-mips64r6el-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-mips64r6el/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-mips64r6el-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-mips64r6el/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-mips64r6el.postinst b/debian/linux-image-5.10.0-28-mips64r6el.postinst
new file mode 100755
index 000000000..9657ad8c5
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips64r6el.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips64r6el
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips64r6el.postrm b/debian/linux-image-5.10.0-28-mips64r6el.postrm
new file mode 100755
index 000000000..cc6ff045a
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips64r6el.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips64r6el
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips64r6el.preinst b/debian/linux-image-5.10.0-28-mips64r6el.preinst
new file mode 100755
index 000000000..53052c954
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips64r6el.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips64r6el
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-mips64r6el.prerm b/debian/linux-image-5.10.0-28-mips64r6el.prerm
new file mode 100755
index 000000000..84161170d
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-mips64r6el.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-mips64r6el
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-octeon-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-octeon-dbg.lintian-overrides
new file mode 100755
index 000000000..0c5cfe296
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-octeon-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-octeon-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-octeon-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-octeon/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-octeon-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-octeon/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-octeon-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-octeon/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-octeon-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-octeon/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-octeon-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-octeon/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-octeon-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-octeon/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-octeon.postinst b/debian/linux-image-5.10.0-28-octeon.postinst
new file mode 100755
index 000000000..7b4c3a243
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-octeon.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-octeon
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-octeon.postrm b/debian/linux-image-5.10.0-28-octeon.postrm
new file mode 100755
index 000000000..9bbeab9a8
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-octeon.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-octeon
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-octeon.preinst b/debian/linux-image-5.10.0-28-octeon.preinst
new file mode 100755
index 000000000..501a5e176
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-octeon.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-octeon
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-octeon.prerm b/debian/linux-image-5.10.0-28-octeon.prerm
new file mode 100755
index 000000000..a880e4b98
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-octeon.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-octeon
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-parisc.postinst b/debian/linux-image-5.10.0-28-parisc.postinst
new file mode 100755
index 000000000..2f4a84937
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-parisc.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-parisc
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-parisc.postrm b/debian/linux-image-5.10.0-28-parisc.postrm
new file mode 100755
index 000000000..49cb5cde8
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-parisc.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-parisc
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-parisc.preinst b/debian/linux-image-5.10.0-28-parisc.preinst
new file mode 100755
index 000000000..f07b5fe0c
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-parisc.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-parisc
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-parisc.prerm b/debian/linux-image-5.10.0-28-parisc.prerm
new file mode 100755
index 000000000..9c77ba526
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-parisc.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-parisc
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-parisc64.postinst b/debian/linux-image-5.10.0-28-parisc64.postinst
new file mode 100755
index 000000000..271b9713a
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-parisc64.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-parisc64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-parisc64.postrm b/debian/linux-image-5.10.0-28-parisc64.postrm
new file mode 100755
index 000000000..e3d601254
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-parisc64.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-parisc64
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-parisc64.preinst b/debian/linux-image-5.10.0-28-parisc64.preinst
new file mode 100755
index 000000000..08a4f3f53
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-parisc64.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-parisc64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-parisc64.prerm b/debian/linux-image-5.10.0-28-parisc64.prerm
new file mode 100755
index 000000000..aa3dc324c
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-parisc64.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-parisc64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-powerpc-dbg.lintian-overrides
new file mode 100755
index 000000000..34d57da7a
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-powerpc-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-powerpc-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-powerpc-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-powerpc-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-powerpc-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-powerpc-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-powerpc/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-powerpc-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-powerpc/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-powerpc-smp-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-powerpc-smp-dbg.lintian-overrides
new file mode 100755
index 000000000..6dbe5e245
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc-smp-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-powerpc-smp-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-powerpc-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc-smp/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-powerpc-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc-smp/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-powerpc-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc-smp/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-powerpc-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc-smp/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-powerpc-smp-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-powerpc-smp/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-powerpc-smp-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-powerpc-smp/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-powerpc-smp.postinst b/debian/linux-image-5.10.0-28-powerpc-smp.postinst
new file mode 100755
index 000000000..65d8aba00
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc-smp.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc-smp
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc-smp.postrm b/debian/linux-image-5.10.0-28-powerpc-smp.postrm
new file mode 100755
index 000000000..fef03d163
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc-smp.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc-smp
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc-smp.preinst b/debian/linux-image-5.10.0-28-powerpc-smp.preinst
new file mode 100755
index 000000000..9f2380798
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc-smp.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc-smp
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc-smp.prerm b/debian/linux-image-5.10.0-28-powerpc-smp.prerm
new file mode 100755
index 000000000..049446b31
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc-smp.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc-smp
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc.postinst b/debian/linux-image-5.10.0-28-powerpc.postinst
new file mode 100755
index 000000000..7e0f8e93a
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc.postrm b/debian/linux-image-5.10.0-28-powerpc.postrm
new file mode 100755
index 000000000..ec5cedf83
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc.preinst b/debian/linux-image-5.10.0-28-powerpc.preinst
new file mode 100755
index 000000000..b128a0c69
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc.prerm b/debian/linux-image-5.10.0-28-powerpc.prerm
new file mode 100755
index 000000000..109a6b94d
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc64-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-powerpc64-dbg.lintian-overrides
new file mode 100755
index 000000000..0b60407ab
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc64-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-powerpc64-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-powerpc64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc64/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-powerpc64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc64/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-powerpc64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc64/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-powerpc64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc64/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-powerpc64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-powerpc64/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-powerpc64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-powerpc64/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-powerpc64.postinst b/debian/linux-image-5.10.0-28-powerpc64.postinst
new file mode 100755
index 000000000..c18de3967
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc64.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc64
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc64.postrm b/debian/linux-image-5.10.0-28-powerpc64.postrm
new file mode 100755
index 000000000..332802d18
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc64.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc64
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc64.preinst b/debian/linux-image-5.10.0-28-powerpc64.preinst
new file mode 100755
index 000000000..5fcd7e2d1
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc64.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc64
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc64.prerm b/debian/linux-image-5.10.0-28-powerpc64.prerm
new file mode 100755
index 000000000..f314d51fb
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc64.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc64
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc64le-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-powerpc64le-dbg.lintian-overrides
new file mode 100755
index 000000000..8ae2a564c
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc64le-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-powerpc64le-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-powerpc64le-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc64le/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-powerpc64le-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc64le/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-powerpc64le-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc64le/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-powerpc64le-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-powerpc64le/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-powerpc64le-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-powerpc64le/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-powerpc64le-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-powerpc64le/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-powerpc64le.postinst b/debian/linux-image-5.10.0-28-powerpc64le.postinst
new file mode 100755
index 000000000..7a47026f7
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc64le.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc64le
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc64le.postrm b/debian/linux-image-5.10.0-28-powerpc64le.postrm
new file mode 100755
index 000000000..ceb866747
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc64le.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc64le
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc64le.preinst b/debian/linux-image-5.10.0-28-powerpc64le.preinst
new file mode 100755
index 000000000..f1854b507
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc64le.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc64le
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-powerpc64le.prerm b/debian/linux-image-5.10.0-28-powerpc64le.prerm
new file mode 100755
index 000000000..adabeb6a9
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-powerpc64le.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-powerpc64le
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-riscv64-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-riscv64-dbg.lintian-overrides
new file mode 100755
index 000000000..49f31e515
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-riscv64-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-riscv64-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-riscv64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-riscv64/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-riscv64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-riscv64/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-riscv64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-riscv64/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-riscv64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-riscv64/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-riscv64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-riscv64/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-riscv64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-riscv64/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-riscv64.postinst b/debian/linux-image-5.10.0-28-riscv64.postinst
new file mode 100755
index 000000000..7b76bcad3
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-riscv64.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-riscv64
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-riscv64.postrm b/debian/linux-image-5.10.0-28-riscv64.postrm
new file mode 100755
index 000000000..85cc33711
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-riscv64.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-riscv64
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-riscv64.preinst b/debian/linux-image-5.10.0-28-riscv64.preinst
new file mode 100755
index 000000000..bbb34ce63
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-riscv64.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-riscv64
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-riscv64.prerm b/debian/linux-image-5.10.0-28-riscv64.prerm
new file mode 100755
index 000000000..0dce808a7
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-riscv64.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-riscv64
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rpi-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-rpi-dbg.lintian-overrides
new file mode 100755
index 000000000..5486c84f1
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rpi-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-rpi-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-rpi-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rpi/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-rpi-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rpi/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-rpi-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rpi/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-rpi-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rpi/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-rpi-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-rpi/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-rpi-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-rpi/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-rpi.postinst b/debian/linux-image-5.10.0-28-rpi.postinst
new file mode 100755
index 000000000..1ae118b57
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rpi.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rpi
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rpi.postrm b/debian/linux-image-5.10.0-28-rpi.postrm
new file mode 100755
index 000000000..2a4f980c9
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rpi.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rpi
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rpi.preinst b/debian/linux-image-5.10.0-28-rpi.preinst
new file mode 100755
index 000000000..f737772c7
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rpi.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rpi
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rpi.prerm b/debian/linux-image-5.10.0-28-rpi.prerm
new file mode 100755
index 000000000..44ddc50de
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rpi.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rpi
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-686-pae-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-rt-686-pae-dbg.lintian-overrides
new file mode 100755
index 000000000..8d4c9b3e7
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-686-pae-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-rt-686-pae-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-rt-686-pae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-686-pae/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-rt-686-pae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-686-pae/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-rt-686-pae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-686-pae/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-rt-686-pae-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-686-pae/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-rt-686-pae-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-rt-686-pae/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-rt-686-pae-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-rt-686-pae/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.postinst b/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.postinst
new file mode 100755
index 000000000..7e4548562
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-686-pae
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.postrm b/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.postrm
new file mode 100755
index 000000000..a9b8125a1
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-686-pae
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.preinst b/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.preinst
new file mode 100755
index 000000000..b083e3743
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-686-pae
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.prerm b/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.prerm
new file mode 100755
index 000000000..0f253f3b5
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-686-pae-unsigned.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-686-pae
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-amd64-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-rt-amd64-dbg.lintian-overrides
new file mode 100755
index 000000000..e73e1de06
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-amd64-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-rt-amd64-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-rt-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-amd64/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-rt-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-amd64/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-rt-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-amd64/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-rt-amd64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-amd64/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-rt-amd64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-rt-amd64/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-rt-amd64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-rt-amd64/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-rt-amd64-unsigned.postinst b/debian/linux-image-5.10.0-28-rt-amd64-unsigned.postinst
new file mode 100755
index 000000000..eea315b7d
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-amd64-unsigned.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-amd64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-amd64-unsigned.postrm b/debian/linux-image-5.10.0-28-rt-amd64-unsigned.postrm
new file mode 100755
index 000000000..ac012721c
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-amd64-unsigned.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-amd64
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-amd64-unsigned.preinst b/debian/linux-image-5.10.0-28-rt-amd64-unsigned.preinst
new file mode 100755
index 000000000..b35f5d2a5
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-amd64-unsigned.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-amd64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-amd64-unsigned.prerm b/debian/linux-image-5.10.0-28-rt-amd64-unsigned.prerm
new file mode 100755
index 000000000..964eaa025
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-amd64-unsigned.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-amd64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-arm64-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-rt-arm64-dbg.lintian-overrides
new file mode 100755
index 000000000..c91a5d724
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-arm64-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-rt-arm64-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-rt-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-arm64/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-rt-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-arm64/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-rt-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-arm64/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-rt-arm64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-arm64/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-rt-arm64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-rt-arm64/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-rt-arm64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-rt-arm64/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-rt-arm64-unsigned.postinst b/debian/linux-image-5.10.0-28-rt-arm64-unsigned.postinst
new file mode 100755
index 000000000..a0fb1436f
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-arm64-unsigned.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-arm64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-arm64-unsigned.postrm b/debian/linux-image-5.10.0-28-rt-arm64-unsigned.postrm
new file mode 100755
index 000000000..67a6c269e
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-arm64-unsigned.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-arm64
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-arm64-unsigned.preinst b/debian/linux-image-5.10.0-28-rt-arm64-unsigned.preinst
new file mode 100755
index 000000000..eb445b4d1
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-arm64-unsigned.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-arm64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-arm64-unsigned.prerm b/debian/linux-image-5.10.0-28-rt-arm64-unsigned.prerm
new file mode 100755
index 000000000..1ea9e15a9
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-arm64-unsigned.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-arm64
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-armmp-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-rt-armmp-dbg.lintian-overrides
new file mode 100755
index 000000000..0672b8276
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-armmp-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-rt-armmp-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-rt-armmp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-armmp/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-rt-armmp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-armmp/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-rt-armmp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-armmp/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-rt-armmp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-rt-armmp/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-rt-armmp-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-rt-armmp/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-rt-armmp-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-rt-armmp/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-rt-armmp.postinst b/debian/linux-image-5.10.0-28-rt-armmp.postinst
new file mode 100755
index 000000000..a42b54335
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-armmp.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-armmp
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-armmp.postrm b/debian/linux-image-5.10.0-28-rt-armmp.postrm
new file mode 100755
index 000000000..00aee3845
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-armmp.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-armmp
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-armmp.preinst b/debian/linux-image-5.10.0-28-rt-armmp.preinst
new file mode 100755
index 000000000..8175938c0
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-armmp.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-armmp
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-rt-armmp.prerm b/debian/linux-image-5.10.0-28-rt-armmp.prerm
new file mode 100755
index 000000000..51eb37333
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-rt-armmp.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-rt-armmp
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-s390x-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-s390x-dbg.lintian-overrides
new file mode 100755
index 000000000..bce8f6047
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-s390x-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-s390x-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-s390x-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-s390x/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-s390x-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-s390x/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-s390x-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-s390x/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-s390x-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-s390x/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-s390x-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-s390x/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-s390x-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-s390x/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-s390x.postinst b/debian/linux-image-5.10.0-28-s390x.postinst
new file mode 100755
index 000000000..5e0d2fc82
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-s390x.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-s390x
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-s390x.postrm b/debian/linux-image-5.10.0-28-s390x.postrm
new file mode 100755
index 000000000..96ff0fa0e
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-s390x.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-s390x
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-s390x.preinst b/debian/linux-image-5.10.0-28-s390x.preinst
new file mode 100755
index 000000000..04cd5cff8
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-s390x.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-s390x
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-s390x.prerm b/debian/linux-image-5.10.0-28-s390x.prerm
new file mode 100755
index 000000000..50f622f30
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-s390x.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-s390x
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sh7751r-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-sh7751r-dbg.lintian-overrides
new file mode 100755
index 000000000..518298658
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sh7751r-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-sh7751r-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-sh7751r-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sh7751r/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-sh7751r-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sh7751r/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-sh7751r-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sh7751r/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-sh7751r-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sh7751r/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-sh7751r-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-sh7751r/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-sh7751r-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-sh7751r/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-sh7751r.postinst b/debian/linux-image-5.10.0-28-sh7751r.postinst
new file mode 100755
index 000000000..f107c364d
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sh7751r.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sh7751r
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sh7751r.postrm b/debian/linux-image-5.10.0-28-sh7751r.postrm
new file mode 100755
index 000000000..1028697fd
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sh7751r.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sh7751r
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sh7751r.preinst b/debian/linux-image-5.10.0-28-sh7751r.preinst
new file mode 100755
index 000000000..87b59ce9e
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sh7751r.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sh7751r
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sh7751r.prerm b/debian/linux-image-5.10.0-28-sh7751r.prerm
new file mode 100755
index 000000000..7e55649a6
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sh7751r.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sh7751r
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sh7785lcr-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-sh7785lcr-dbg.lintian-overrides
new file mode 100755
index 000000000..e38d5f93f
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sh7785lcr-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-sh7785lcr-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-sh7785lcr-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sh7785lcr/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-sh7785lcr-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sh7785lcr/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-sh7785lcr-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sh7785lcr/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-sh7785lcr-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sh7785lcr/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-sh7785lcr-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-sh7785lcr/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-sh7785lcr-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-sh7785lcr/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-sh7785lcr.postinst b/debian/linux-image-5.10.0-28-sh7785lcr.postinst
new file mode 100755
index 000000000..058a238bb
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sh7785lcr.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sh7785lcr
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sh7785lcr.postrm b/debian/linux-image-5.10.0-28-sh7785lcr.postrm
new file mode 100755
index 000000000..3cfd1c25a
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sh7785lcr.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sh7785lcr
+image_path=/boot/vmlinuz-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sh7785lcr.preinst b/debian/linux-image-5.10.0-28-sh7785lcr.preinst
new file mode 100755
index 000000000..2c662afd6
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sh7785lcr.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sh7785lcr
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sh7785lcr.prerm b/debian/linux-image-5.10.0-28-sh7785lcr.prerm
new file mode 100755
index 000000000..52e88bc6f
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sh7785lcr.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sh7785lcr
+image_path=/boot/vmlinuz-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sparc64-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-sparc64-dbg.lintian-overrides
new file mode 100755
index 000000000..c1227777b
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sparc64-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-sparc64-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-sparc64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sparc64/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-sparc64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sparc64/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-sparc64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sparc64/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-sparc64-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sparc64/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-sparc64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-sparc64/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-sparc64-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-sparc64/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-sparc64-smp-dbg.lintian-overrides b/debian/linux-image-5.10.0-28-sparc64-smp-dbg.lintian-overrides
new file mode 100755
index 000000000..b3f2f178e
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sparc64-smp-dbg.lintian-overrides
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-5.10.0-28-sparc64-smp-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-5.10.0-28-sparc64-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sparc64-smp/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-5.10.0-28-sparc64-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sparc64-smp/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-5.10.0-28-sparc64-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sparc64-smp/vdso/vdso64.so
+[amd64] linux-image-5.10.0-28-sparc64-smp-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/5.10.0-28-sparc64-smp/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-5.10.0-28-sparc64-smp-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-sparc64-smp/vdso/vdso32.so
+[amd64] linux-image-5.10.0-28-sparc64-smp-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/5.10.0-28-sparc64-smp/vdso/vdsox32.so
diff --git a/debian/linux-image-5.10.0-28-sparc64-smp.postinst b/debian/linux-image-5.10.0-28-sparc64-smp.postinst
new file mode 100755
index 000000000..42a7e81be
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sparc64-smp.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sparc64-smp
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sparc64-smp.postrm b/debian/linux-image-5.10.0-28-sparc64-smp.postrm
new file mode 100755
index 000000000..79a738bd2
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sparc64-smp.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sparc64-smp
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sparc64-smp.preinst b/debian/linux-image-5.10.0-28-sparc64-smp.preinst
new file mode 100755
index 000000000..6f49e2920
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sparc64-smp.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sparc64-smp
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sparc64-smp.prerm b/debian/linux-image-5.10.0-28-sparc64-smp.prerm
new file mode 100755
index 000000000..4cf0898ae
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sparc64-smp.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sparc64-smp
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sparc64.postinst b/debian/linux-image-5.10.0-28-sparc64.postinst
new file mode 100755
index 000000000..0900c0a29
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sparc64.postinst
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sparc64
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sparc64.postrm b/debian/linux-image-5.10.0-28-sparc64.postrm
new file mode 100755
index 000000000..2eb647f75
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sparc64.postrm
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sparc64
+image_path=/boot/vmlinux-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sparc64.preinst b/debian/linux-image-5.10.0-28-sparc64.preinst
new file mode 100755
index 000000000..e77c1e2d3
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sparc64.preinst
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sparc64
+image_path=/boot/vmlinux-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5.10.0-28-sparc64.prerm b/debian/linux-image-5.10.0-28-sparc64.prerm
new file mode 100755
index 000000000..5973bd707
--- /dev/null
+++ b/debian/linux-image-5.10.0-28-sparc64.prerm
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=5.10.0-28-sparc64
+image_path=/boot/vmlinux-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/linux-image-5kc-malta-dbg.lintian-overrides b/debian/linux-image-5kc-malta-dbg.lintian-overrides
new file mode 100644
index 000000000..203e11ee9
--- /dev/null
+++ b/debian/linux-image-5kc-malta-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-5kc-malta-dbg: wrong-section-according-to-package-name linux-image-5kc-malta-dbg => debug
+linux-image-5kc-malta-dbg: debug-package-should-be-priority-extra linux-image-5kc-malta-dbg
diff --git a/debian/linux-image-5kc-malta-dbg.maintscript b/debian/linux-image-5kc-malta-dbg.maintscript
new file mode 100644
index 000000000..9cf3ea3b9
--- /dev/null
+++ b/debian/linux-image-5kc-malta-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-5kc-malta-dbg linux-image-5.10.0-28-5kc-malta-dbg 5.7~rc5-1~exp1 linux-image-5kc-malta-dbg
diff --git a/debian/linux-image-5kc-malta.bug-presubj b/debian/linux-image-5kc-malta.bug-presubj
new file mode 100644
index 000000000..47c020bc1
--- /dev/null
+++ b/debian/linux-image-5kc-malta.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-5kc-malta instead.
diff --git a/debian/linux-image-5kc-malta.maintscript b/debian/linux-image-5kc-malta.maintscript
new file mode 100644
index 000000000..eeb602450
--- /dev/null
+++ b/debian/linux-image-5kc-malta.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-5kc-malta linux-image-5.10.0-28-5kc-malta 5.7~rc5-1~exp1 linux-image-5kc-malta
diff --git a/debian/linux-image-686-dbg.lintian-overrides b/debian/linux-image-686-dbg.lintian-overrides
new file mode 100644
index 000000000..0525eebc4
--- /dev/null
+++ b/debian/linux-image-686-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-686-dbg: wrong-section-according-to-package-name linux-image-686-dbg => debug
+linux-image-686-dbg: debug-package-should-be-priority-extra linux-image-686-dbg
diff --git a/debian/linux-image-686-dbg.maintscript b/debian/linux-image-686-dbg.maintscript
new file mode 100644
index 000000000..4127d61d0
--- /dev/null
+++ b/debian/linux-image-686-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-686-dbg linux-image-5.10.0-28-686-dbg 5.7~rc5-1~exp1 linux-image-686-dbg
diff --git a/debian/linux-image-686-pae-dbg.lintian-overrides b/debian/linux-image-686-pae-dbg.lintian-overrides
new file mode 100644
index 000000000..af80c8244
--- /dev/null
+++ b/debian/linux-image-686-pae-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-686-pae-dbg: wrong-section-according-to-package-name linux-image-686-pae-dbg => debug
+linux-image-686-pae-dbg: debug-package-should-be-priority-extra linux-image-686-pae-dbg
diff --git a/debian/linux-image-686-pae-dbg.maintscript b/debian/linux-image-686-pae-dbg.maintscript
new file mode 100644
index 000000000..15a60d2a4
--- /dev/null
+++ b/debian/linux-image-686-pae-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-686-pae-dbg linux-image-5.10.0-28-686-pae-dbg 5.7~rc5-1~exp1 linux-image-686-pae-dbg
diff --git a/debian/linux-image-alpha-generic-dbg.lintian-overrides b/debian/linux-image-alpha-generic-dbg.lintian-overrides
new file mode 100644
index 000000000..378bbd789
--- /dev/null
+++ b/debian/linux-image-alpha-generic-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-alpha-generic-dbg: wrong-section-according-to-package-name linux-image-alpha-generic-dbg => debug
+linux-image-alpha-generic-dbg: debug-package-should-be-priority-extra linux-image-alpha-generic-dbg
diff --git a/debian/linux-image-alpha-generic-dbg.maintscript b/debian/linux-image-alpha-generic-dbg.maintscript
new file mode 100644
index 000000000..d58a25015
--- /dev/null
+++ b/debian/linux-image-alpha-generic-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-alpha-generic-dbg linux-image-5.10.0-28-alpha-generic-dbg 5.7~rc5-1~exp1 linux-image-alpha-generic-dbg
diff --git a/debian/linux-image-alpha-generic.bug-presubj b/debian/linux-image-alpha-generic.bug-presubj
new file mode 100644
index 000000000..e1192b18f
--- /dev/null
+++ b/debian/linux-image-alpha-generic.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-alpha-generic instead.
diff --git a/debian/linux-image-alpha-generic.maintscript b/debian/linux-image-alpha-generic.maintscript
new file mode 100644
index 000000000..a289285d2
--- /dev/null
+++ b/debian/linux-image-alpha-generic.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-alpha-generic linux-image-5.10.0-28-alpha-generic 5.7~rc5-1~exp1 linux-image-alpha-generic
diff --git a/debian/linux-image-alpha-smp-dbg.lintian-overrides b/debian/linux-image-alpha-smp-dbg.lintian-overrides
new file mode 100644
index 000000000..c4ad3f250
--- /dev/null
+++ b/debian/linux-image-alpha-smp-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-alpha-smp-dbg: wrong-section-according-to-package-name linux-image-alpha-smp-dbg => debug
+linux-image-alpha-smp-dbg: debug-package-should-be-priority-extra linux-image-alpha-smp-dbg
diff --git a/debian/linux-image-alpha-smp-dbg.maintscript b/debian/linux-image-alpha-smp-dbg.maintscript
new file mode 100644
index 000000000..56489e6bc
--- /dev/null
+++ b/debian/linux-image-alpha-smp-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-alpha-smp-dbg linux-image-5.10.0-28-alpha-smp-dbg 5.7~rc5-1~exp1 linux-image-alpha-smp-dbg
diff --git a/debian/linux-image-alpha-smp.bug-presubj b/debian/linux-image-alpha-smp.bug-presubj
new file mode 100644
index 000000000..2c2cc72cf
--- /dev/null
+++ b/debian/linux-image-alpha-smp.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-alpha-smp instead.
diff --git a/debian/linux-image-alpha-smp.maintscript b/debian/linux-image-alpha-smp.maintscript
new file mode 100644
index 000000000..6fe9e670c
--- /dev/null
+++ b/debian/linux-image-alpha-smp.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-alpha-smp linux-image-5.10.0-28-alpha-smp 5.7~rc5-1~exp1 linux-image-alpha-smp
diff --git a/debian/linux-image-amd64-dbg.lintian-overrides b/debian/linux-image-amd64-dbg.lintian-overrides
new file mode 100644
index 000000000..403c494cc
--- /dev/null
+++ b/debian/linux-image-amd64-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-amd64-dbg: wrong-section-according-to-package-name linux-image-amd64-dbg => debug
+linux-image-amd64-dbg: debug-package-should-be-priority-extra linux-image-amd64-dbg
diff --git a/debian/linux-image-amd64-dbg.maintscript b/debian/linux-image-amd64-dbg.maintscript
new file mode 100644
index 000000000..e917a38ad
--- /dev/null
+++ b/debian/linux-image-amd64-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-amd64-dbg linux-image-5.10.0-28-amd64-dbg 5.7~rc5-1~exp1 linux-image-amd64-dbg
diff --git a/debian/linux-image-arm64-dbg.lintian-overrides b/debian/linux-image-arm64-dbg.lintian-overrides
new file mode 100644
index 000000000..36fa31e44
--- /dev/null
+++ b/debian/linux-image-arm64-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-arm64-dbg: wrong-section-according-to-package-name linux-image-arm64-dbg => debug
+linux-image-arm64-dbg: debug-package-should-be-priority-extra linux-image-arm64-dbg
diff --git a/debian/linux-image-arm64-dbg.maintscript b/debian/linux-image-arm64-dbg.maintscript
new file mode 100644
index 000000000..4745644e2
--- /dev/null
+++ b/debian/linux-image-arm64-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-arm64-dbg linux-image-5.10.0-28-arm64-dbg 5.7~rc5-1~exp1 linux-image-arm64-dbg
diff --git a/debian/linux-image-armmp-dbg.lintian-overrides b/debian/linux-image-armmp-dbg.lintian-overrides
new file mode 100644
index 000000000..ebd89d447
--- /dev/null
+++ b/debian/linux-image-armmp-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-armmp-dbg: wrong-section-according-to-package-name linux-image-armmp-dbg => debug
+linux-image-armmp-dbg: debug-package-should-be-priority-extra linux-image-armmp-dbg
diff --git a/debian/linux-image-armmp-dbg.maintscript b/debian/linux-image-armmp-dbg.maintscript
new file mode 100644
index 000000000..16abbbefd
--- /dev/null
+++ b/debian/linux-image-armmp-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-armmp-dbg linux-image-5.10.0-28-armmp-dbg 5.7~rc5-1~exp1 linux-image-armmp-dbg
diff --git a/debian/linux-image-armmp-lpae-dbg.lintian-overrides b/debian/linux-image-armmp-lpae-dbg.lintian-overrides
new file mode 100644
index 000000000..f9730605b
--- /dev/null
+++ b/debian/linux-image-armmp-lpae-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-armmp-lpae-dbg: wrong-section-according-to-package-name linux-image-armmp-lpae-dbg => debug
+linux-image-armmp-lpae-dbg: debug-package-should-be-priority-extra linux-image-armmp-lpae-dbg
diff --git a/debian/linux-image-armmp-lpae-dbg.maintscript b/debian/linux-image-armmp-lpae-dbg.maintscript
new file mode 100644
index 000000000..e498a2b05
--- /dev/null
+++ b/debian/linux-image-armmp-lpae-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-armmp-lpae-dbg linux-image-5.10.0-28-armmp-lpae-dbg 5.7~rc5-1~exp1 linux-image-armmp-lpae-dbg
diff --git a/debian/linux-image-armmp-lpae.bug-presubj b/debian/linux-image-armmp-lpae.bug-presubj
new file mode 100644
index 000000000..010ff7406
--- /dev/null
+++ b/debian/linux-image-armmp-lpae.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-armmp-lpae instead.
diff --git a/debian/linux-image-armmp-lpae.maintscript b/debian/linux-image-armmp-lpae.maintscript
new file mode 100644
index 000000000..5257db271
--- /dev/null
+++ b/debian/linux-image-armmp-lpae.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-armmp-lpae linux-image-5.10.0-28-armmp-lpae 5.7~rc5-1~exp1 linux-image-armmp-lpae
diff --git a/debian/linux-image-armmp.bug-presubj b/debian/linux-image-armmp.bug-presubj
new file mode 100644
index 000000000..5e3c9f091
--- /dev/null
+++ b/debian/linux-image-armmp.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-armmp instead.
diff --git a/debian/linux-image-armmp.maintscript b/debian/linux-image-armmp.maintscript
new file mode 100644
index 000000000..a0274f58f
--- /dev/null
+++ b/debian/linux-image-armmp.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-armmp linux-image-5.10.0-28-armmp 5.7~rc5-1~exp1 linux-image-armmp
diff --git a/debian/linux-image-cloud-amd64-dbg.lintian-overrides b/debian/linux-image-cloud-amd64-dbg.lintian-overrides
new file mode 100644
index 000000000..ed8e8e081
--- /dev/null
+++ b/debian/linux-image-cloud-amd64-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-cloud-amd64-dbg: wrong-section-according-to-package-name linux-image-cloud-amd64-dbg => debug
+linux-image-cloud-amd64-dbg: debug-package-should-be-priority-extra linux-image-cloud-amd64-dbg
diff --git a/debian/linux-image-cloud-amd64-dbg.maintscript b/debian/linux-image-cloud-amd64-dbg.maintscript
new file mode 100644
index 000000000..eae103aad
--- /dev/null
+++ b/debian/linux-image-cloud-amd64-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-cloud-amd64-dbg linux-image-5.10.0-28-cloud-amd64-dbg 5.7~rc5-1~exp1 linux-image-cloud-amd64-dbg
diff --git a/debian/linux-image-cloud-arm64-dbg.lintian-overrides b/debian/linux-image-cloud-arm64-dbg.lintian-overrides
new file mode 100644
index 000000000..9d451e502
--- /dev/null
+++ b/debian/linux-image-cloud-arm64-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-cloud-arm64-dbg: wrong-section-according-to-package-name linux-image-cloud-arm64-dbg => debug
+linux-image-cloud-arm64-dbg: debug-package-should-be-priority-extra linux-image-cloud-arm64-dbg
diff --git a/debian/linux-image-cloud-arm64-dbg.maintscript b/debian/linux-image-cloud-arm64-dbg.maintscript
new file mode 100644
index 000000000..dc18122d6
--- /dev/null
+++ b/debian/linux-image-cloud-arm64-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-cloud-arm64-dbg linux-image-5.10.0-28-cloud-arm64-dbg 5.7~rc5-1~exp1 linux-image-cloud-arm64-dbg
diff --git a/debian/linux-image-itanium-dbg.lintian-overrides b/debian/linux-image-itanium-dbg.lintian-overrides
new file mode 100644
index 000000000..6c7447846
--- /dev/null
+++ b/debian/linux-image-itanium-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-itanium-dbg: wrong-section-according-to-package-name linux-image-itanium-dbg => debug
+linux-image-itanium-dbg: debug-package-should-be-priority-extra linux-image-itanium-dbg
diff --git a/debian/linux-image-itanium-dbg.maintscript b/debian/linux-image-itanium-dbg.maintscript
new file mode 100644
index 000000000..cec02348d
--- /dev/null
+++ b/debian/linux-image-itanium-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-itanium-dbg linux-image-5.10.0-28-itanium-dbg 5.7~rc5-1~exp1 linux-image-itanium-dbg
diff --git a/debian/linux-image-itanium.bug-presubj b/debian/linux-image-itanium.bug-presubj
new file mode 100644
index 000000000..8529fc8fc
--- /dev/null
+++ b/debian/linux-image-itanium.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-itanium instead.
diff --git a/debian/linux-image-itanium.maintscript b/debian/linux-image-itanium.maintscript
new file mode 100644
index 000000000..9807850f2
--- /dev/null
+++ b/debian/linux-image-itanium.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-itanium linux-image-5.10.0-28-itanium 5.7~rc5-1~exp1 linux-image-itanium
diff --git a/debian/linux-image-loongson-3-dbg.lintian-overrides b/debian/linux-image-loongson-3-dbg.lintian-overrides
new file mode 100644
index 000000000..6485258e1
--- /dev/null
+++ b/debian/linux-image-loongson-3-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-loongson-3-dbg: wrong-section-according-to-package-name linux-image-loongson-3-dbg => debug
+linux-image-loongson-3-dbg: debug-package-should-be-priority-extra linux-image-loongson-3-dbg
diff --git a/debian/linux-image-loongson-3-dbg.maintscript b/debian/linux-image-loongson-3-dbg.maintscript
new file mode 100644
index 000000000..830c6b6b5
--- /dev/null
+++ b/debian/linux-image-loongson-3-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-loongson-3-dbg linux-image-5.10.0-28-loongson-3-dbg 5.7~rc5-1~exp1 linux-image-loongson-3-dbg
diff --git a/debian/linux-image-loongson-3.bug-presubj b/debian/linux-image-loongson-3.bug-presubj
new file mode 100644
index 000000000..66de0b93a
--- /dev/null
+++ b/debian/linux-image-loongson-3.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-loongson-3 instead.
diff --git a/debian/linux-image-loongson-3.maintscript b/debian/linux-image-loongson-3.maintscript
new file mode 100644
index 000000000..6466ef669
--- /dev/null
+++ b/debian/linux-image-loongson-3.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-loongson-3 linux-image-5.10.0-28-loongson-3 5.7~rc5-1~exp1 linux-image-loongson-3
diff --git a/debian/linux-image-m68k-dbg.lintian-overrides b/debian/linux-image-m68k-dbg.lintian-overrides
new file mode 100644
index 000000000..13fb1f580
--- /dev/null
+++ b/debian/linux-image-m68k-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-m68k-dbg: wrong-section-according-to-package-name linux-image-m68k-dbg => debug
+linux-image-m68k-dbg: debug-package-should-be-priority-extra linux-image-m68k-dbg
diff --git a/debian/linux-image-m68k-dbg.maintscript b/debian/linux-image-m68k-dbg.maintscript
new file mode 100644
index 000000000..09de37d2b
--- /dev/null
+++ b/debian/linux-image-m68k-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-m68k-dbg linux-image-5.10.0-28-m68k-dbg 5.7~rc5-1~exp1 linux-image-m68k-dbg
diff --git a/debian/linux-image-m68k.bug-presubj b/debian/linux-image-m68k.bug-presubj
new file mode 100644
index 000000000..ff8026312
--- /dev/null
+++ b/debian/linux-image-m68k.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-m68k instead.
diff --git a/debian/linux-image-m68k.maintscript b/debian/linux-image-m68k.maintscript
new file mode 100644
index 000000000..8a2a2167a
--- /dev/null
+++ b/debian/linux-image-m68k.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-m68k linux-image-5.10.0-28-m68k 5.7~rc5-1~exp1 linux-image-m68k
diff --git a/debian/linux-image-marvell-dbg.lintian-overrides b/debian/linux-image-marvell-dbg.lintian-overrides
new file mode 100644
index 000000000..e09053461
--- /dev/null
+++ b/debian/linux-image-marvell-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-marvell-dbg: wrong-section-according-to-package-name linux-image-marvell-dbg => debug
+linux-image-marvell-dbg: debug-package-should-be-priority-extra linux-image-marvell-dbg
diff --git a/debian/linux-image-marvell-dbg.maintscript b/debian/linux-image-marvell-dbg.maintscript
new file mode 100644
index 000000000..b80ae8377
--- /dev/null
+++ b/debian/linux-image-marvell-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-marvell-dbg linux-image-5.10.0-28-marvell-dbg 5.7~rc5-1~exp1 linux-image-marvell-dbg
diff --git a/debian/linux-image-marvell.bug-presubj b/debian/linux-image-marvell.bug-presubj
new file mode 100644
index 000000000..69a27bd3e
--- /dev/null
+++ b/debian/linux-image-marvell.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-marvell instead.
diff --git a/debian/linux-image-marvell.maintscript b/debian/linux-image-marvell.maintscript
new file mode 100644
index 000000000..0e839e432
--- /dev/null
+++ b/debian/linux-image-marvell.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-marvell linux-image-5.10.0-28-marvell 5.7~rc5-1~exp1 linux-image-marvell
diff --git a/debian/linux-image-mckinley-dbg.lintian-overrides b/debian/linux-image-mckinley-dbg.lintian-overrides
new file mode 100644
index 000000000..dca80f4ed
--- /dev/null
+++ b/debian/linux-image-mckinley-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-mckinley-dbg: wrong-section-according-to-package-name linux-image-mckinley-dbg => debug
+linux-image-mckinley-dbg: debug-package-should-be-priority-extra linux-image-mckinley-dbg
diff --git a/debian/linux-image-mckinley-dbg.maintscript b/debian/linux-image-mckinley-dbg.maintscript
new file mode 100644
index 000000000..aaba6cbc0
--- /dev/null
+++ b/debian/linux-image-mckinley-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-mckinley-dbg linux-image-5.10.0-28-mckinley-dbg 5.7~rc5-1~exp1 linux-image-mckinley-dbg
diff --git a/debian/linux-image-mckinley.bug-presubj b/debian/linux-image-mckinley.bug-presubj
new file mode 100644
index 000000000..62565dd23
--- /dev/null
+++ b/debian/linux-image-mckinley.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-mckinley instead.
diff --git a/debian/linux-image-mckinley.maintscript b/debian/linux-image-mckinley.maintscript
new file mode 100644
index 000000000..429f5e5c4
--- /dev/null
+++ b/debian/linux-image-mckinley.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-mckinley linux-image-5.10.0-28-mckinley 5.7~rc5-1~exp1 linux-image-mckinley
diff --git a/debian/linux-image-mips32r6-dbg.lintian-overrides b/debian/linux-image-mips32r6-dbg.lintian-overrides
new file mode 100644
index 000000000..8968d1b4e
--- /dev/null
+++ b/debian/linux-image-mips32r6-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-mips32r6-dbg: wrong-section-according-to-package-name linux-image-mips32r6-dbg => debug
+linux-image-mips32r6-dbg: debug-package-should-be-priority-extra linux-image-mips32r6-dbg
diff --git a/debian/linux-image-mips32r6-dbg.maintscript b/debian/linux-image-mips32r6-dbg.maintscript
new file mode 100644
index 000000000..fce0d5515
--- /dev/null
+++ b/debian/linux-image-mips32r6-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-mips32r6-dbg linux-image-5.10.0-28-mips32r6-dbg 5.7~rc5-1~exp1 linux-image-mips32r6-dbg
diff --git a/debian/linux-image-mips32r6.bug-presubj b/debian/linux-image-mips32r6.bug-presubj
new file mode 100644
index 000000000..7ebfce1c4
--- /dev/null
+++ b/debian/linux-image-mips32r6.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-mips32r6 instead.
diff --git a/debian/linux-image-mips32r6.maintscript b/debian/linux-image-mips32r6.maintscript
new file mode 100644
index 000000000..c79509de4
--- /dev/null
+++ b/debian/linux-image-mips32r6.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-mips32r6 linux-image-5.10.0-28-mips32r6 5.7~rc5-1~exp1 linux-image-mips32r6
diff --git a/debian/linux-image-mips32r6el-dbg.lintian-overrides b/debian/linux-image-mips32r6el-dbg.lintian-overrides
new file mode 100644
index 000000000..ee46ae279
--- /dev/null
+++ b/debian/linux-image-mips32r6el-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-mips32r6el-dbg: wrong-section-according-to-package-name linux-image-mips32r6el-dbg => debug
+linux-image-mips32r6el-dbg: debug-package-should-be-priority-extra linux-image-mips32r6el-dbg
diff --git a/debian/linux-image-mips32r6el-dbg.maintscript b/debian/linux-image-mips32r6el-dbg.maintscript
new file mode 100644
index 000000000..a38b008a5
--- /dev/null
+++ b/debian/linux-image-mips32r6el-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-mips32r6el-dbg linux-image-5.10.0-28-mips32r6el-dbg 5.7~rc5-1~exp1 linux-image-mips32r6el-dbg
diff --git a/debian/linux-image-mips32r6el.bug-presubj b/debian/linux-image-mips32r6el.bug-presubj
new file mode 100644
index 000000000..6b338710b
--- /dev/null
+++ b/debian/linux-image-mips32r6el.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-mips32r6el instead.
diff --git a/debian/linux-image-mips32r6el.maintscript b/debian/linux-image-mips32r6el.maintscript
new file mode 100644
index 000000000..aa786102b
--- /dev/null
+++ b/debian/linux-image-mips32r6el.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-mips32r6el linux-image-5.10.0-28-mips32r6el 5.7~rc5-1~exp1 linux-image-mips32r6el
diff --git a/debian/linux-image-mips64r6-dbg.lintian-overrides b/debian/linux-image-mips64r6-dbg.lintian-overrides
new file mode 100644
index 000000000..1c470c4d9
--- /dev/null
+++ b/debian/linux-image-mips64r6-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-mips64r6-dbg: wrong-section-according-to-package-name linux-image-mips64r6-dbg => debug
+linux-image-mips64r6-dbg: debug-package-should-be-priority-extra linux-image-mips64r6-dbg
diff --git a/debian/linux-image-mips64r6-dbg.maintscript b/debian/linux-image-mips64r6-dbg.maintscript
new file mode 100644
index 000000000..2ba0d0757
--- /dev/null
+++ b/debian/linux-image-mips64r6-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-mips64r6-dbg linux-image-5.10.0-28-mips64r6-dbg 5.7~rc5-1~exp1 linux-image-mips64r6-dbg
diff --git a/debian/linux-image-mips64r6.bug-presubj b/debian/linux-image-mips64r6.bug-presubj
new file mode 100644
index 000000000..3a0673b23
--- /dev/null
+++ b/debian/linux-image-mips64r6.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-mips64r6 instead.
diff --git a/debian/linux-image-mips64r6.maintscript b/debian/linux-image-mips64r6.maintscript
new file mode 100644
index 000000000..1544c10aa
--- /dev/null
+++ b/debian/linux-image-mips64r6.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-mips64r6 linux-image-5.10.0-28-mips64r6 5.7~rc5-1~exp1 linux-image-mips64r6
diff --git a/debian/linux-image-mips64r6el-dbg.lintian-overrides b/debian/linux-image-mips64r6el-dbg.lintian-overrides
new file mode 100644
index 000000000..d8088ae58
--- /dev/null
+++ b/debian/linux-image-mips64r6el-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-mips64r6el-dbg: wrong-section-according-to-package-name linux-image-mips64r6el-dbg => debug
+linux-image-mips64r6el-dbg: debug-package-should-be-priority-extra linux-image-mips64r6el-dbg
diff --git a/debian/linux-image-mips64r6el-dbg.maintscript b/debian/linux-image-mips64r6el-dbg.maintscript
new file mode 100644
index 000000000..e43c50090
--- /dev/null
+++ b/debian/linux-image-mips64r6el-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-mips64r6el-dbg linux-image-5.10.0-28-mips64r6el-dbg 5.7~rc5-1~exp1 linux-image-mips64r6el-dbg
diff --git a/debian/linux-image-mips64r6el.bug-presubj b/debian/linux-image-mips64r6el.bug-presubj
new file mode 100644
index 000000000..352576c38
--- /dev/null
+++ b/debian/linux-image-mips64r6el.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-mips64r6el instead.
diff --git a/debian/linux-image-mips64r6el.maintscript b/debian/linux-image-mips64r6el.maintscript
new file mode 100644
index 000000000..067e8d59e
--- /dev/null
+++ b/debian/linux-image-mips64r6el.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-mips64r6el linux-image-5.10.0-28-mips64r6el 5.7~rc5-1~exp1 linux-image-mips64r6el
diff --git a/debian/linux-image-octeon-dbg.lintian-overrides b/debian/linux-image-octeon-dbg.lintian-overrides
new file mode 100644
index 000000000..15a8f650b
--- /dev/null
+++ b/debian/linux-image-octeon-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-octeon-dbg: wrong-section-according-to-package-name linux-image-octeon-dbg => debug
+linux-image-octeon-dbg: debug-package-should-be-priority-extra linux-image-octeon-dbg
diff --git a/debian/linux-image-octeon-dbg.maintscript b/debian/linux-image-octeon-dbg.maintscript
new file mode 100644
index 000000000..4acd10a14
--- /dev/null
+++ b/debian/linux-image-octeon-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-octeon-dbg linux-image-5.10.0-28-octeon-dbg 5.7~rc5-1~exp1 linux-image-octeon-dbg
diff --git a/debian/linux-image-octeon.bug-presubj b/debian/linux-image-octeon.bug-presubj
new file mode 100644
index 000000000..c3e3ead7e
--- /dev/null
+++ b/debian/linux-image-octeon.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-octeon instead.
diff --git a/debian/linux-image-octeon.maintscript b/debian/linux-image-octeon.maintscript
new file mode 100644
index 000000000..6d8b4b7f7
--- /dev/null
+++ b/debian/linux-image-octeon.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-octeon linux-image-5.10.0-28-octeon 5.7~rc5-1~exp1 linux-image-octeon
diff --git a/debian/linux-image-parisc.bug-presubj b/debian/linux-image-parisc.bug-presubj
new file mode 100644
index 000000000..da695f0fd
--- /dev/null
+++ b/debian/linux-image-parisc.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-parisc instead.
diff --git a/debian/linux-image-parisc.maintscript b/debian/linux-image-parisc.maintscript
new file mode 100644
index 000000000..293c8eaaa
--- /dev/null
+++ b/debian/linux-image-parisc.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-parisc linux-image-5.10.0-28-parisc 5.7~rc5-1~exp1 linux-image-parisc
diff --git a/debian/linux-image-parisc64.bug-presubj b/debian/linux-image-parisc64.bug-presubj
new file mode 100644
index 000000000..db7708d7a
--- /dev/null
+++ b/debian/linux-image-parisc64.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-parisc64 instead.
diff --git a/debian/linux-image-parisc64.maintscript b/debian/linux-image-parisc64.maintscript
new file mode 100644
index 000000000..be9180858
--- /dev/null
+++ b/debian/linux-image-parisc64.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-parisc64 linux-image-5.10.0-28-parisc64 5.7~rc5-1~exp1 linux-image-parisc64
diff --git a/debian/linux-image-powerpc-dbg.lintian-overrides b/debian/linux-image-powerpc-dbg.lintian-overrides
new file mode 100644
index 000000000..15045418e
--- /dev/null
+++ b/debian/linux-image-powerpc-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-powerpc-dbg: wrong-section-according-to-package-name linux-image-powerpc-dbg => debug
+linux-image-powerpc-dbg: debug-package-should-be-priority-extra linux-image-powerpc-dbg
diff --git a/debian/linux-image-powerpc-dbg.maintscript b/debian/linux-image-powerpc-dbg.maintscript
new file mode 100644
index 000000000..663c40d88
--- /dev/null
+++ b/debian/linux-image-powerpc-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-powerpc-dbg linux-image-5.10.0-28-powerpc-dbg 5.7~rc5-1~exp1 linux-image-powerpc-dbg
diff --git a/debian/linux-image-powerpc-smp-dbg.lintian-overrides b/debian/linux-image-powerpc-smp-dbg.lintian-overrides
new file mode 100644
index 000000000..28d2ba610
--- /dev/null
+++ b/debian/linux-image-powerpc-smp-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-powerpc-smp-dbg: wrong-section-according-to-package-name linux-image-powerpc-smp-dbg => debug
+linux-image-powerpc-smp-dbg: debug-package-should-be-priority-extra linux-image-powerpc-smp-dbg
diff --git a/debian/linux-image-powerpc-smp-dbg.maintscript b/debian/linux-image-powerpc-smp-dbg.maintscript
new file mode 100644
index 000000000..20c54a432
--- /dev/null
+++ b/debian/linux-image-powerpc-smp-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-powerpc-smp-dbg linux-image-5.10.0-28-powerpc-smp-dbg 5.7~rc5-1~exp1 linux-image-powerpc-smp-dbg
diff --git a/debian/linux-image-powerpc-smp.bug-presubj b/debian/linux-image-powerpc-smp.bug-presubj
new file mode 100644
index 000000000..47d1fae14
--- /dev/null
+++ b/debian/linux-image-powerpc-smp.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-powerpc-smp instead.
diff --git a/debian/linux-image-powerpc-smp.maintscript b/debian/linux-image-powerpc-smp.maintscript
new file mode 100644
index 000000000..73171b680
--- /dev/null
+++ b/debian/linux-image-powerpc-smp.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-powerpc-smp linux-image-5.10.0-28-powerpc-smp 5.7~rc5-1~exp1 linux-image-powerpc-smp
diff --git a/debian/linux-image-powerpc.bug-presubj b/debian/linux-image-powerpc.bug-presubj
new file mode 100644
index 000000000..89d898656
--- /dev/null
+++ b/debian/linux-image-powerpc.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-powerpc instead.
diff --git a/debian/linux-image-powerpc.maintscript b/debian/linux-image-powerpc.maintscript
new file mode 100644
index 000000000..21dc875ed
--- /dev/null
+++ b/debian/linux-image-powerpc.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-powerpc linux-image-5.10.0-28-powerpc 5.7~rc5-1~exp1 linux-image-powerpc
diff --git a/debian/linux-image-powerpc64-dbg.lintian-overrides b/debian/linux-image-powerpc64-dbg.lintian-overrides
new file mode 100644
index 000000000..318cfa80e
--- /dev/null
+++ b/debian/linux-image-powerpc64-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-powerpc64-dbg: wrong-section-according-to-package-name linux-image-powerpc64-dbg => debug
+linux-image-powerpc64-dbg: debug-package-should-be-priority-extra linux-image-powerpc64-dbg
diff --git a/debian/linux-image-powerpc64-dbg.maintscript b/debian/linux-image-powerpc64-dbg.maintscript
new file mode 100644
index 000000000..66daa9f57
--- /dev/null
+++ b/debian/linux-image-powerpc64-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-powerpc64-dbg linux-image-5.10.0-28-powerpc64-dbg 5.7~rc5-1~exp1 linux-image-powerpc64-dbg
diff --git a/debian/linux-image-powerpc64.bug-presubj b/debian/linux-image-powerpc64.bug-presubj
new file mode 100644
index 000000000..6daeb9070
--- /dev/null
+++ b/debian/linux-image-powerpc64.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-powerpc64 instead.
diff --git a/debian/linux-image-powerpc64.maintscript b/debian/linux-image-powerpc64.maintscript
new file mode 100644
index 000000000..e091661e0
--- /dev/null
+++ b/debian/linux-image-powerpc64.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-powerpc64 linux-image-5.10.0-28-powerpc64 5.7~rc5-1~exp1 linux-image-powerpc64
diff --git a/debian/linux-image-powerpc64le-dbg.lintian-overrides b/debian/linux-image-powerpc64le-dbg.lintian-overrides
new file mode 100644
index 000000000..6a24e1627
--- /dev/null
+++ b/debian/linux-image-powerpc64le-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-powerpc64le-dbg: wrong-section-according-to-package-name linux-image-powerpc64le-dbg => debug
+linux-image-powerpc64le-dbg: debug-package-should-be-priority-extra linux-image-powerpc64le-dbg
diff --git a/debian/linux-image-powerpc64le-dbg.maintscript b/debian/linux-image-powerpc64le-dbg.maintscript
new file mode 100644
index 000000000..1f982580e
--- /dev/null
+++ b/debian/linux-image-powerpc64le-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-powerpc64le-dbg linux-image-5.10.0-28-powerpc64le-dbg 5.7~rc5-1~exp1 linux-image-powerpc64le-dbg
diff --git a/debian/linux-image-powerpc64le.bug-presubj b/debian/linux-image-powerpc64le.bug-presubj
new file mode 100644
index 000000000..ee5b3f3a7
--- /dev/null
+++ b/debian/linux-image-powerpc64le.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-powerpc64le instead.
diff --git a/debian/linux-image-powerpc64le.maintscript b/debian/linux-image-powerpc64le.maintscript
new file mode 100644
index 000000000..b1e9828c5
--- /dev/null
+++ b/debian/linux-image-powerpc64le.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-powerpc64le linux-image-5.10.0-28-powerpc64le 5.7~rc5-1~exp1 linux-image-powerpc64le
diff --git a/debian/linux-image-riscv64-dbg.lintian-overrides b/debian/linux-image-riscv64-dbg.lintian-overrides
new file mode 100644
index 000000000..e425ac9a5
--- /dev/null
+++ b/debian/linux-image-riscv64-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-riscv64-dbg: wrong-section-according-to-package-name linux-image-riscv64-dbg => debug
+linux-image-riscv64-dbg: debug-package-should-be-priority-extra linux-image-riscv64-dbg
diff --git a/debian/linux-image-riscv64-dbg.maintscript b/debian/linux-image-riscv64-dbg.maintscript
new file mode 100644
index 000000000..374d0cfaf
--- /dev/null
+++ b/debian/linux-image-riscv64-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-riscv64-dbg linux-image-5.10.0-28-riscv64-dbg 5.7~rc5-1~exp1 linux-image-riscv64-dbg
diff --git a/debian/linux-image-riscv64.bug-presubj b/debian/linux-image-riscv64.bug-presubj
new file mode 100644
index 000000000..2add8bb6b
--- /dev/null
+++ b/debian/linux-image-riscv64.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-riscv64 instead.
diff --git a/debian/linux-image-riscv64.maintscript b/debian/linux-image-riscv64.maintscript
new file mode 100644
index 000000000..1959e3201
--- /dev/null
+++ b/debian/linux-image-riscv64.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-riscv64 linux-image-5.10.0-28-riscv64 5.7~rc5-1~exp1 linux-image-riscv64
diff --git a/debian/linux-image-rpi-dbg.lintian-overrides b/debian/linux-image-rpi-dbg.lintian-overrides
new file mode 100644
index 000000000..ca5b46fcb
--- /dev/null
+++ b/debian/linux-image-rpi-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-rpi-dbg: wrong-section-according-to-package-name linux-image-rpi-dbg => debug
+linux-image-rpi-dbg: debug-package-should-be-priority-extra linux-image-rpi-dbg
diff --git a/debian/linux-image-rpi-dbg.maintscript b/debian/linux-image-rpi-dbg.maintscript
new file mode 100644
index 000000000..45af0396d
--- /dev/null
+++ b/debian/linux-image-rpi-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-rpi-dbg linux-image-5.10.0-28-rpi-dbg 5.7~rc5-1~exp1 linux-image-rpi-dbg
diff --git a/debian/linux-image-rpi.bug-presubj b/debian/linux-image-rpi.bug-presubj
new file mode 100644
index 000000000..9dfae361b
--- /dev/null
+++ b/debian/linux-image-rpi.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-rpi instead.
diff --git a/debian/linux-image-rpi.maintscript b/debian/linux-image-rpi.maintscript
new file mode 100644
index 000000000..52e5080dc
--- /dev/null
+++ b/debian/linux-image-rpi.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-rpi linux-image-5.10.0-28-rpi 5.7~rc5-1~exp1 linux-image-rpi
diff --git a/debian/linux-image-rt-686-pae-dbg.lintian-overrides b/debian/linux-image-rt-686-pae-dbg.lintian-overrides
new file mode 100644
index 000000000..9f1807622
--- /dev/null
+++ b/debian/linux-image-rt-686-pae-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-rt-686-pae-dbg: wrong-section-according-to-package-name linux-image-rt-686-pae-dbg => debug
+linux-image-rt-686-pae-dbg: debug-package-should-be-priority-extra linux-image-rt-686-pae-dbg
diff --git a/debian/linux-image-rt-686-pae-dbg.maintscript b/debian/linux-image-rt-686-pae-dbg.maintscript
new file mode 100644
index 000000000..cd7439a3b
--- /dev/null
+++ b/debian/linux-image-rt-686-pae-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-rt-686-pae-dbg linux-image-5.10.0-28-rt-686-pae-dbg 5.7~rc5-1~exp1 linux-image-rt-686-pae-dbg
diff --git a/debian/linux-image-rt-amd64-dbg.lintian-overrides b/debian/linux-image-rt-amd64-dbg.lintian-overrides
new file mode 100644
index 000000000..b059f7fbe
--- /dev/null
+++ b/debian/linux-image-rt-amd64-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-rt-amd64-dbg: wrong-section-according-to-package-name linux-image-rt-amd64-dbg => debug
+linux-image-rt-amd64-dbg: debug-package-should-be-priority-extra linux-image-rt-amd64-dbg
diff --git a/debian/linux-image-rt-amd64-dbg.maintscript b/debian/linux-image-rt-amd64-dbg.maintscript
new file mode 100644
index 000000000..b3fc8d787
--- /dev/null
+++ b/debian/linux-image-rt-amd64-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-rt-amd64-dbg linux-image-5.10.0-28-rt-amd64-dbg 5.7~rc5-1~exp1 linux-image-rt-amd64-dbg
diff --git a/debian/linux-image-rt-arm64-dbg.lintian-overrides b/debian/linux-image-rt-arm64-dbg.lintian-overrides
new file mode 100644
index 000000000..eacbc08d1
--- /dev/null
+++ b/debian/linux-image-rt-arm64-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-rt-arm64-dbg: wrong-section-according-to-package-name linux-image-rt-arm64-dbg => debug
+linux-image-rt-arm64-dbg: debug-package-should-be-priority-extra linux-image-rt-arm64-dbg
diff --git a/debian/linux-image-rt-arm64-dbg.maintscript b/debian/linux-image-rt-arm64-dbg.maintscript
new file mode 100644
index 000000000..6597e7fda
--- /dev/null
+++ b/debian/linux-image-rt-arm64-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-rt-arm64-dbg linux-image-5.10.0-28-rt-arm64-dbg 5.7~rc5-1~exp1 linux-image-rt-arm64-dbg
diff --git a/debian/linux-image-rt-armmp-dbg.lintian-overrides b/debian/linux-image-rt-armmp-dbg.lintian-overrides
new file mode 100644
index 000000000..d8e3922fc
--- /dev/null
+++ b/debian/linux-image-rt-armmp-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-rt-armmp-dbg: wrong-section-according-to-package-name linux-image-rt-armmp-dbg => debug
+linux-image-rt-armmp-dbg: debug-package-should-be-priority-extra linux-image-rt-armmp-dbg
diff --git a/debian/linux-image-rt-armmp-dbg.maintscript b/debian/linux-image-rt-armmp-dbg.maintscript
new file mode 100644
index 000000000..5c43bd915
--- /dev/null
+++ b/debian/linux-image-rt-armmp-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-rt-armmp-dbg linux-image-5.10.0-28-rt-armmp-dbg 5.7~rc5-1~exp1 linux-image-rt-armmp-dbg
diff --git a/debian/linux-image-rt-armmp.bug-presubj b/debian/linux-image-rt-armmp.bug-presubj
new file mode 100644
index 000000000..92fbdc86c
--- /dev/null
+++ b/debian/linux-image-rt-armmp.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-rt-armmp instead.
diff --git a/debian/linux-image-rt-armmp.maintscript b/debian/linux-image-rt-armmp.maintscript
new file mode 100644
index 000000000..3307972fd
--- /dev/null
+++ b/debian/linux-image-rt-armmp.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-rt-armmp linux-image-5.10.0-28-rt-armmp 5.7~rc5-1~exp1 linux-image-rt-armmp
diff --git a/debian/linux-image-s390x-dbg.lintian-overrides b/debian/linux-image-s390x-dbg.lintian-overrides
new file mode 100644
index 000000000..f449b5fbd
--- /dev/null
+++ b/debian/linux-image-s390x-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-s390x-dbg: wrong-section-according-to-package-name linux-image-s390x-dbg => debug
+linux-image-s390x-dbg: debug-package-should-be-priority-extra linux-image-s390x-dbg
diff --git a/debian/linux-image-s390x-dbg.maintscript b/debian/linux-image-s390x-dbg.maintscript
new file mode 100644
index 000000000..f5bfbd735
--- /dev/null
+++ b/debian/linux-image-s390x-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-s390x-dbg linux-image-5.10.0-28-s390x-dbg 5.7~rc5-1~exp1 linux-image-s390x-dbg
diff --git a/debian/linux-image-s390x.bug-presubj b/debian/linux-image-s390x.bug-presubj
new file mode 100644
index 000000000..450175875
--- /dev/null
+++ b/debian/linux-image-s390x.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-s390x instead.
diff --git a/debian/linux-image-s390x.maintscript b/debian/linux-image-s390x.maintscript
new file mode 100644
index 000000000..d387c3f84
--- /dev/null
+++ b/debian/linux-image-s390x.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-s390x linux-image-5.10.0-28-s390x 5.7~rc5-1~exp1 linux-image-s390x
diff --git a/debian/linux-image-sh7751r-dbg.lintian-overrides b/debian/linux-image-sh7751r-dbg.lintian-overrides
new file mode 100644
index 000000000..4abe83776
--- /dev/null
+++ b/debian/linux-image-sh7751r-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-sh7751r-dbg: wrong-section-according-to-package-name linux-image-sh7751r-dbg => debug
+linux-image-sh7751r-dbg: debug-package-should-be-priority-extra linux-image-sh7751r-dbg
diff --git a/debian/linux-image-sh7751r-dbg.maintscript b/debian/linux-image-sh7751r-dbg.maintscript
new file mode 100644
index 000000000..386ddcf74
--- /dev/null
+++ b/debian/linux-image-sh7751r-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-sh7751r-dbg linux-image-5.10.0-28-sh7751r-dbg 5.7~rc5-1~exp1 linux-image-sh7751r-dbg
diff --git a/debian/linux-image-sh7751r.bug-presubj b/debian/linux-image-sh7751r.bug-presubj
new file mode 100644
index 000000000..adab66990
--- /dev/null
+++ b/debian/linux-image-sh7751r.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-sh7751r instead.
diff --git a/debian/linux-image-sh7751r.maintscript b/debian/linux-image-sh7751r.maintscript
new file mode 100644
index 000000000..55727ab05
--- /dev/null
+++ b/debian/linux-image-sh7751r.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-sh7751r linux-image-5.10.0-28-sh7751r 5.7~rc5-1~exp1 linux-image-sh7751r
diff --git a/debian/linux-image-sh7785lcr-dbg.lintian-overrides b/debian/linux-image-sh7785lcr-dbg.lintian-overrides
new file mode 100644
index 000000000..c80853854
--- /dev/null
+++ b/debian/linux-image-sh7785lcr-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-sh7785lcr-dbg: wrong-section-according-to-package-name linux-image-sh7785lcr-dbg => debug
+linux-image-sh7785lcr-dbg: debug-package-should-be-priority-extra linux-image-sh7785lcr-dbg
diff --git a/debian/linux-image-sh7785lcr-dbg.maintscript b/debian/linux-image-sh7785lcr-dbg.maintscript
new file mode 100644
index 000000000..378b6e39d
--- /dev/null
+++ b/debian/linux-image-sh7785lcr-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-sh7785lcr-dbg linux-image-5.10.0-28-sh7785lcr-dbg 5.7~rc5-1~exp1 linux-image-sh7785lcr-dbg
diff --git a/debian/linux-image-sh7785lcr.bug-presubj b/debian/linux-image-sh7785lcr.bug-presubj
new file mode 100644
index 000000000..79f7cb44e
--- /dev/null
+++ b/debian/linux-image-sh7785lcr.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-sh7785lcr instead.
diff --git a/debian/linux-image-sh7785lcr.maintscript b/debian/linux-image-sh7785lcr.maintscript
new file mode 100644
index 000000000..5f818fa24
--- /dev/null
+++ b/debian/linux-image-sh7785lcr.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-sh7785lcr linux-image-5.10.0-28-sh7785lcr 5.7~rc5-1~exp1 linux-image-sh7785lcr
diff --git a/debian/linux-image-sparc64-dbg.lintian-overrides b/debian/linux-image-sparc64-dbg.lintian-overrides
new file mode 100644
index 000000000..d275a7196
--- /dev/null
+++ b/debian/linux-image-sparc64-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-sparc64-dbg: wrong-section-according-to-package-name linux-image-sparc64-dbg => debug
+linux-image-sparc64-dbg: debug-package-should-be-priority-extra linux-image-sparc64-dbg
diff --git a/debian/linux-image-sparc64-dbg.maintscript b/debian/linux-image-sparc64-dbg.maintscript
new file mode 100644
index 000000000..3dbd2bc4e
--- /dev/null
+++ b/debian/linux-image-sparc64-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-sparc64-dbg linux-image-5.10.0-28-sparc64-dbg 5.7~rc5-1~exp1 linux-image-sparc64-dbg
diff --git a/debian/linux-image-sparc64-smp-dbg.lintian-overrides b/debian/linux-image-sparc64-smp-dbg.lintian-overrides
new file mode 100644
index 000000000..a19b9102c
--- /dev/null
+++ b/debian/linux-image-sparc64-smp-dbg.lintian-overrides
@@ -0,0 +1,2 @@
+linux-image-sparc64-smp-dbg: wrong-section-according-to-package-name linux-image-sparc64-smp-dbg => debug
+linux-image-sparc64-smp-dbg: debug-package-should-be-priority-extra linux-image-sparc64-smp-dbg
diff --git a/debian/linux-image-sparc64-smp-dbg.maintscript b/debian/linux-image-sparc64-smp-dbg.maintscript
new file mode 100644
index 000000000..73a99b4d5
--- /dev/null
+++ b/debian/linux-image-sparc64-smp-dbg.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-sparc64-smp-dbg linux-image-5.10.0-28-sparc64-smp-dbg 5.7~rc5-1~exp1 linux-image-sparc64-smp-dbg
diff --git a/debian/linux-image-sparc64-smp.bug-presubj b/debian/linux-image-sparc64-smp.bug-presubj
new file mode 100644
index 000000000..ed956cbf7
--- /dev/null
+++ b/debian/linux-image-sparc64-smp.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-sparc64-smp instead.
diff --git a/debian/linux-image-sparc64-smp.maintscript b/debian/linux-image-sparc64-smp.maintscript
new file mode 100644
index 000000000..c778a332f
--- /dev/null
+++ b/debian/linux-image-sparc64-smp.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-sparc64-smp linux-image-5.10.0-28-sparc64-smp 5.7~rc5-1~exp1 linux-image-sparc64-smp
diff --git a/debian/linux-image-sparc64.bug-presubj b/debian/linux-image-sparc64.bug-presubj
new file mode 100644
index 000000000..f226a84ec
--- /dev/null
+++ b/debian/linux-image-sparc64.bug-presubj
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-5.10.0-28-sparc64 instead.
diff --git a/debian/linux-image-sparc64.maintscript b/debian/linux-image-sparc64.maintscript
new file mode 100644
index 000000000..d481cba39
--- /dev/null
+++ b/debian/linux-image-sparc64.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image-sparc64 linux-image-5.10.0-28-sparc64 5.7~rc5-1~exp1 linux-image-sparc64
diff --git a/debian/linux-image.NEWS b/debian/linux-image.NEWS
new file mode 100644
index 000000000..f8e1fc022
--- /dev/null
+++ b/debian/linux-image.NEWS
@@ -0,0 +1,83 @@
+linux (5.10.46-4) unstable; urgency=medium
+
+ * From Linux 5.10.46-4, unprivileged calls to bpf() are disabled by
+ default, mitigating several security issues. However, an admin can
+ still change this setting later on, if needed, by writing 0 or 1 to
+ the kernel.unprivileged_bpf_disabled sysctl.
+
+ If you prefer to keep unprivileged calls to bpf() enabled, set the
+ sysctl:
+
+ kernel.unprivileged_bpf_disabled = 0
+
+ which is the upstream default.
+
+ -- Salvatore Bonaccorso <carnil@debian.org> Mon, 02 Aug 2021 22:59:24 +0200
+
+linux (5.10~rc7-1~exp2) unstable; urgency=medium
+
+ * From Linux 5.10, all users are allowed to create user namespaces by
+ default. This will allow programs such as web browsers and container
+ managers to create more restricted sandboxes for untrusted or
+ less-trusted code, without the need to run as root or to use a
+ setuid-root helper.
+
+ The previous Debian default was to restrict this feature to processes
+ running as root, because it exposed more security issues in the
+ kernel. However, the security benefits of more widespread sandboxing
+ probably now outweigh this risk.
+
+ If you prefer to keep this feature restricted, set the sysctl:
+
+ kernel.unprivileged_userns_clone = 0
+
+ -- Ben Hutchings <benh@debian.org> Sun, 13 Dec 2020 17:11:36 +0100
+
+linux-latest (86) unstable; urgency=medium
+
+ * From Linux 4.13.10-1, AppArmor is enabled by default. This allows
+ defining a "profile" for each installed program that can mitigate
+ security vulnerabilities in it. However, an incorrect profile might
+ disable some functionality of the program.
+
+ In case you suspect that an AppArmor profile is incorrect, see
+ <https://lists.debian.org/debian-devel/2017/11/msg00178.html> and
+ consider reporting a bug in the package providing the profile. The
+ profile may be part of the program's package or apparmor-profiles.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Thu, 30 Nov 2017 20:08:25 +0000
+
+linux-latest (81) unstable; urgency=medium
+
+ * From Linux 4.10, the old 'virtual syscall' interface on 64-bit PCs
+ (amd64) is disabled. This breaks chroot environments and containers
+ that use (e)glibc 2.13 and earlier, including those based on Debian 7
+ or RHEL/CentOS 6. To re-enable it, set the kernel parameter:
+ vsyscall=emulate
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 30 Jun 2017 23:50:03 +0100
+
+linux-latest (76) unstable; urgency=medium
+
+ * From Linux 4.8, several changes have been made in the kernel
+ configuration to 'harden' the system, i.e. to mitigate security bugs.
+ Some changes may cause legitimate applications to fail, and can be
+ reverted by run-time configuration:
+ - On most architectures, the /dev/mem device can no longer be used to
+ access devices that also have a kernel driver. This breaks dosemu
+ and some old user-space graphics drivers. To allow this, set the
+ kernel parameter: iomem=relaxed
+ - The kernel log is no longer readable by unprivileged users. To
+ allow this, set the sysctl: kernel.dmesg_restrict=0
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 29 Oct 2016 02:05:32 +0100
+
+linux-latest (75) unstable; urgency=medium
+
+ * From Linux 4.7, the iptables connection tracking system will no longer
+ automatically load helper modules. If your firewall configuration
+ depends on connection tracking helpers, you should explicitly load the
+ required modules. For more information, see
+ <https://home.regit.org/netfilter-en/secure-use-of-helpers/>.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Sat, 29 Oct 2016 01:53:18 +0100
diff --git a/debian/linux-perf-5.10.lintian-overrides b/debian/linux-perf-5.10.lintian-overrides
new file mode 100644
index 000000000..b47559dfd
--- /dev/null
+++ b/debian/linux-perf-5.10.lintian-overrides
@@ -0,0 +1,3 @@
+# These executables are needed to handle processes running in compat mode
+linux-perf-5.10: binary-from-other-architecture usr/lib/perf_5.10-core/perf-read-vdso32
+linux-perf-5.10: binary-from-other-architecture usr/lib/perf_5.10-core/perf-read-vdsox32
diff --git a/debian/linux-perf.maintscript b/debian/linux-perf.maintscript
new file mode 100644
index 000000000..50ee40173
--- /dev/null
+++ b/debian/linux-perf.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-perf linux-perf-5.10 5.7~rc5-1~exp1 linux-perf
diff --git a/debian/linux-source.maintscript b/debian/linux-source.maintscript
new file mode 100644
index 000000000..ee1b1b0ce
--- /dev/null
+++ b/debian/linux-source.maintscript
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-source linux-source-5.10 5.7~rc5-1~exp1 linux-source
diff --git a/debian/lockdep.dirs b/debian/lockdep.dirs
new file mode 100644
index 000000000..e77248175
--- /dev/null
+++ b/debian/lockdep.dirs
@@ -0,0 +1 @@
+usr/bin
diff --git a/debian/patches-rt/0001-z3fold-remove-preempt-disabled-sections-for-RT.patch b/debian/patches-rt/0001-z3fold-remove-preempt-disabled-sections-for-RT.patch
new file mode 100644
index 000000000..c161007b7
--- /dev/null
+++ b/debian/patches-rt/0001-z3fold-remove-preempt-disabled-sections-for-RT.patch
@@ -0,0 +1,86 @@
+From 373cc1c1427a46b4bf77f0d782d8bd8b2d00bc54 Mon Sep 17 00:00:00 2001
+From: Vitaly Wool <vitaly.wool@konsulko.com>
+Date: Mon, 14 Dec 2020 19:12:36 -0800
+Subject: [PATCH 001/323] z3fold: remove preempt disabled sections for RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Replace get_cpu_ptr() with migrate_disable()+this_cpu_ptr() so RT can take
+spinlocks that become sleeping locks.
+
+Signed-off-by Mike Galbraith <efault@gmx.de>
+
+Link: https://lkml.kernel.org/r/20201209145151.18994-3-vitaly.wool@konsulko.com
+Signed-off-by: Vitaly Wool <vitaly.wool@konsulko.com>
+Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/z3fold.c | 17 ++++++++++-------
+ 1 file changed, 10 insertions(+), 7 deletions(-)
+
+diff --git a/mm/z3fold.c b/mm/z3fold.c
+index 912ac9a64a15..f3d875fcaeb7 100644
+--- a/mm/z3fold.c
++++ b/mm/z3fold.c
+@@ -623,14 +623,16 @@ static inline void add_to_unbuddied(struct z3fold_pool *pool,
+ {
+ if (zhdr->first_chunks == 0 || zhdr->last_chunks == 0 ||
+ zhdr->middle_chunks == 0) {
+- struct list_head *unbuddied = get_cpu_ptr(pool->unbuddied);
+-
++ struct list_head *unbuddied;
+ int freechunks = num_free_chunks(zhdr);
++
++ migrate_disable();
++ unbuddied = this_cpu_ptr(pool->unbuddied);
+ spin_lock(&pool->lock);
+ list_add(&zhdr->buddy, &unbuddied[freechunks]);
+ spin_unlock(&pool->lock);
+ zhdr->cpu = smp_processor_id();
+- put_cpu_ptr(pool->unbuddied);
++ migrate_enable();
+ }
+ }
+
+@@ -880,8 +882,9 @@ static inline struct z3fold_header *__z3fold_alloc(struct z3fold_pool *pool,
+ int chunks = size_to_chunks(size), i;
+
+ lookup:
++ migrate_disable();
+ /* First, try to find an unbuddied z3fold page. */
+- unbuddied = get_cpu_ptr(pool->unbuddied);
++ unbuddied = this_cpu_ptr(pool->unbuddied);
+ for_each_unbuddied_list(i, chunks) {
+ struct list_head *l = &unbuddied[i];
+
+@@ -899,7 +902,7 @@ static inline struct z3fold_header *__z3fold_alloc(struct z3fold_pool *pool,
+ !z3fold_page_trylock(zhdr)) {
+ spin_unlock(&pool->lock);
+ zhdr = NULL;
+- put_cpu_ptr(pool->unbuddied);
++ migrate_enable();
+ if (can_sleep)
+ cond_resched();
+ goto lookup;
+@@ -913,7 +916,7 @@ static inline struct z3fold_header *__z3fold_alloc(struct z3fold_pool *pool,
+ test_bit(PAGE_CLAIMED, &page->private)) {
+ z3fold_page_unlock(zhdr);
+ zhdr = NULL;
+- put_cpu_ptr(pool->unbuddied);
++ migrate_enable();
+ if (can_sleep)
+ cond_resched();
+ goto lookup;
+@@ -928,7 +931,7 @@ static inline struct z3fold_header *__z3fold_alloc(struct z3fold_pool *pool,
+ kref_get(&zhdr->refcount);
+ break;
+ }
+- put_cpu_ptr(pool->unbuddied);
++ migrate_enable();
+
+ if (!zhdr) {
+ int cpu;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0002-stop_machine-Add-function-and-caller-debug-info.patch b/debian/patches-rt/0002-stop_machine-Add-function-and-caller-debug-info.patch
new file mode 100644
index 000000000..f68789cd5
--- /dev/null
+++ b/debian/patches-rt/0002-stop_machine-Add-function-and-caller-debug-info.patch
@@ -0,0 +1,135 @@
+From 863bc087d69814dc4113ca9ec91ce1895b53480e Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:11:59 +0200
+Subject: [PATCH 002/323] stop_machine: Add function and caller debug info
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Crashes in stop-machine are hard to connect to the calling code, add a
+little something to help with that.
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/stop_machine.h | 5 +++++
+ kernel/stop_machine.c | 23 ++++++++++++++++++++---
+ lib/dump_stack.c | 2 ++
+ 3 files changed, 27 insertions(+), 3 deletions(-)
+
+--- a/include/linux/stop_machine.h
++++ b/include/linux/stop_machine.h
+@@ -24,6 +24,7 @@
+ struct cpu_stop_work {
+ struct list_head list; /* cpu_stopper->works */
+ cpu_stop_fn_t fn;
++ unsigned long caller;
+ void *arg;
+ struct cpu_stop_done *done;
+ };
+@@ -36,6 +37,8 @@
+ void stop_machine_unpark(int cpu);
+ void stop_machine_yield(const struct cpumask *cpumask);
+
++extern void print_stop_info(const char *log_lvl, struct task_struct *task);
++
+ #else /* CONFIG_SMP */
+
+ #include <linux/workqueue.h>
+@@ -80,6 +83,8 @@
+ return false;
+ }
+
++static inline void print_stop_info(const char *log_lvl, struct task_struct *task) { }
++
+ #endif /* CONFIG_SMP */
+
+ /*
+--- a/kernel/stop_machine.c
++++ b/kernel/stop_machine.c
+@@ -42,11 +42,23 @@
+ struct list_head works; /* list of pending works */
+
+ struct cpu_stop_work stop_work; /* for stop_cpus */
++ unsigned long caller;
++ cpu_stop_fn_t fn;
+ };
+
+ static DEFINE_PER_CPU(struct cpu_stopper, cpu_stopper);
+ static bool stop_machine_initialized = false;
+
++void print_stop_info(const char *log_lvl, struct task_struct *task)
++{
++ struct cpu_stopper *stopper = this_cpu_ptr(&cpu_stopper);
++
++ if (task != stopper->thread)
++ return;
++
++ printk("%sStopper: %pS <- %pS\n", log_lvl, stopper->fn, (void *)stopper->caller);
++}
++
+ /* static data for stop_cpus */
+ static DEFINE_MUTEX(stop_cpus_mutex);
+ static bool stop_cpus_in_progress;
+@@ -123,7 +135,7 @@
+ int stop_one_cpu(unsigned int cpu, cpu_stop_fn_t fn, void *arg)
+ {
+ struct cpu_stop_done done;
+- struct cpu_stop_work work = { .fn = fn, .arg = arg, .done = &done };
++ struct cpu_stop_work work = { .fn = fn, .arg = arg, .done = &done, .caller = _RET_IP_ };
+
+ cpu_stop_init_done(&done, 1);
+ if (!cpu_stop_queue_work(cpu, &work))
+@@ -331,7 +343,8 @@
+ work1 = work2 = (struct cpu_stop_work){
+ .fn = multi_cpu_stop,
+ .arg = &msdata,
+- .done = &done
++ .done = &done,
++ .caller = _RET_IP_,
+ };
+
+ cpu_stop_init_done(&done, 2);
+@@ -367,7 +380,7 @@
+ bool stop_one_cpu_nowait(unsigned int cpu, cpu_stop_fn_t fn, void *arg,
+ struct cpu_stop_work *work_buf)
+ {
+- *work_buf = (struct cpu_stop_work){ .fn = fn, .arg = arg, };
++ *work_buf = (struct cpu_stop_work){ .fn = fn, .arg = arg, .caller = _RET_IP_, };
+ return cpu_stop_queue_work(cpu, work_buf);
+ }
+
+@@ -487,6 +500,8 @@
+ int ret;
+
+ /* cpu stop callbacks must not sleep, make in_atomic() == T */
++ stopper->caller = work->caller;
++ stopper->fn = fn;
+ preempt_count_inc();
+ ret = fn(arg);
+ if (done) {
+@@ -495,6 +510,8 @@
+ cpu_stop_signal_done(done);
+ }
+ preempt_count_dec();
++ stopper->fn = NULL;
++ stopper->caller = 0;
+ WARN_ONCE(preempt_count(),
+ "cpu_stop: %ps(%p) leaked preempt count\n", fn, arg);
+ goto repeat;
+--- a/lib/dump_stack.c
++++ b/lib/dump_stack.c
+@@ -12,6 +12,7 @@
+ #include <linux/atomic.h>
+ #include <linux/kexec.h>
+ #include <linux/utsname.h>
++#include <linux/stop_machine.h>
+ #include <generated/package.h>
+
+ static char dump_stack_arch_desc_str[128];
+@@ -59,6 +60,7 @@
+ log_lvl, dump_stack_arch_desc_str);
+
+ print_worker_info(log_lvl, current);
++ print_stop_info(log_lvl, current);
+ }
+
+ /**
diff --git a/debian/patches-rt/0003-sched-Fix-balance_callback.patch b/debian/patches-rt/0003-sched-Fix-balance_callback.patch
new file mode 100644
index 000000000..265608440
--- /dev/null
+++ b/debian/patches-rt/0003-sched-Fix-balance_callback.patch
@@ -0,0 +1,235 @@
+From db31f287a66b122733214b4a2bac9d59a564b77d Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:00 +0200
+Subject: [PATCH 003/323] sched: Fix balance_callback()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The intent of balance_callback() has always been to delay executing
+balancing operations until the end of the current rq->lock section.
+This is because balance operations must often drop rq->lock, and that
+isn't safe in general.
+
+However, as noted by Scott, there were a few holes in that scheme;
+balance_callback() was called after rq->lock was dropped, which means
+another CPU can interleave and touch the callback list.
+
+Rework code to call the balance callbacks before dropping rq->lock
+where possible, and otherwise splice the balance list onto a local
+stack.
+
+This guarantees that the balance list must be empty when we take
+rq->lock. IOW, we'll only ever run our own balance callbacks.
+
+Reported-by: Scott Wood <swood@redhat.com>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 119 +++++++++++++++++++++++++++----------------
+ kernel/sched/sched.h | 3 ++
+ 2 files changed, 78 insertions(+), 44 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 40f40f359c5d..ab8b7fd46334 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -3511,6 +3511,69 @@ static inline void finish_task(struct task_struct *prev)
+ #endif
+ }
+
++#ifdef CONFIG_SMP
++
++static void do_balance_callbacks(struct rq *rq, struct callback_head *head)
++{
++ void (*func)(struct rq *rq);
++ struct callback_head *next;
++
++ lockdep_assert_held(&rq->lock);
++
++ while (head) {
++ func = (void (*)(struct rq *))head->func;
++ next = head->next;
++ head->next = NULL;
++ head = next;
++
++ func(rq);
++ }
++}
++
++static inline struct callback_head *splice_balance_callbacks(struct rq *rq)
++{
++ struct callback_head *head = rq->balance_callback;
++
++ lockdep_assert_held(&rq->lock);
++ if (head)
++ rq->balance_callback = NULL;
++
++ return head;
++}
++
++static void __balance_callbacks(struct rq *rq)
++{
++ do_balance_callbacks(rq, splice_balance_callbacks(rq));
++}
++
++static inline void balance_callbacks(struct rq *rq, struct callback_head *head)
++{
++ unsigned long flags;
++
++ if (unlikely(head)) {
++ raw_spin_lock_irqsave(&rq->lock, flags);
++ do_balance_callbacks(rq, head);
++ raw_spin_unlock_irqrestore(&rq->lock, flags);
++ }
++}
++
++#else
++
++static inline void __balance_callbacks(struct rq *rq)
++{
++}
++
++static inline struct callback_head *splice_balance_callbacks(struct rq *rq)
++{
++ return NULL;
++}
++
++static inline void balance_callbacks(struct rq *rq, struct callback_head *head)
++{
++}
++
++#endif
++
+ static inline void
+ prepare_lock_switch(struct rq *rq, struct task_struct *next, struct rq_flags *rf)
+ {
+@@ -3536,6 +3599,7 @@ static inline void finish_lock_switch(struct rq *rq)
+ * prev into current:
+ */
+ spin_acquire(&rq->lock.dep_map, 0, 0, _THIS_IP_);
++ __balance_callbacks(rq);
+ raw_spin_unlock_irq(&rq->lock);
+ }
+
+@@ -3677,43 +3741,6 @@ static struct rq *finish_task_switch(struct task_struct *prev)
+ return rq;
+ }
+
+-#ifdef CONFIG_SMP
+-
+-/* rq->lock is NOT held, but preemption is disabled */
+-static void __balance_callback(struct rq *rq)
+-{
+- struct callback_head *head, *next;
+- void (*func)(struct rq *rq);
+- unsigned long flags;
+-
+- raw_spin_lock_irqsave(&rq->lock, flags);
+- head = rq->balance_callback;
+- rq->balance_callback = NULL;
+- while (head) {
+- func = (void (*)(struct rq *))head->func;
+- next = head->next;
+- head->next = NULL;
+- head = next;
+-
+- func(rq);
+- }
+- raw_spin_unlock_irqrestore(&rq->lock, flags);
+-}
+-
+-static inline void balance_callback(struct rq *rq)
+-{
+- if (unlikely(rq->balance_callback))
+- __balance_callback(rq);
+-}
+-
+-#else
+-
+-static inline void balance_callback(struct rq *rq)
+-{
+-}
+-
+-#endif
+-
+ /**
+ * schedule_tail - first thing a freshly forked thread must call.
+ * @prev: the thread we just switched away from.
+@@ -3733,7 +3760,6 @@ asmlinkage __visible void schedule_tail(struct task_struct *prev)
+ */
+
+ rq = finish_task_switch(prev);
+- balance_callback(rq);
+ preempt_enable();
+
+ if (current->set_child_tid)
+@@ -4548,10 +4574,11 @@ static void __sched notrace __schedule(bool preempt)
+ rq = context_switch(rq, prev, next, &rf);
+ } else {
+ rq->clock_update_flags &= ~(RQCF_ACT_SKIP|RQCF_REQ_SKIP);
+- rq_unlock_irq(rq, &rf);
+- }
+
+- balance_callback(rq);
++ rq_unpin_lock(rq, &rf);
++ __balance_callbacks(rq);
++ raw_spin_unlock_irq(&rq->lock);
++ }
+ }
+
+ void __noreturn do_task_dead(void)
+@@ -4972,9 +4999,11 @@ void rt_mutex_setprio(struct task_struct *p, struct task_struct *pi_task)
+ out_unlock:
+ /* Avoid rq from going away on us: */
+ preempt_disable();
+- __task_rq_unlock(rq, &rf);
+
+- balance_callback(rq);
++ rq_unpin_lock(rq, &rf);
++ __balance_callbacks(rq);
++ raw_spin_unlock(&rq->lock);
++
+ preempt_enable();
+ }
+ #else
+@@ -5217,6 +5246,7 @@ static int __sched_setscheduler(struct task_struct *p,
+ int oldpolicy = -1, policy = attr->sched_policy;
+ int retval, oldprio, newprio, queued, running;
+ const struct sched_class *prev_class;
++ struct callback_head *head;
+ struct rq_flags rf;
+ int reset_on_fork;
+ int queue_flags = DEQUEUE_SAVE | DEQUEUE_MOVE | DEQUEUE_NOCLOCK;
+@@ -5466,6 +5496,7 @@ static int __sched_setscheduler(struct task_struct *p,
+
+ /* Avoid rq from going away on us: */
+ preempt_disable();
++ head = splice_balance_callbacks(rq);
+ task_rq_unlock(rq, p, &rf);
+
+ if (pi) {
+@@ -5475,7 +5506,7 @@ static int __sched_setscheduler(struct task_struct *p,
+ }
+
+ /* Run balance callbacks after we've adjusted the PI chain: */
+- balance_callback(rq);
++ balance_callbacks(rq, head);
+ preempt_enable();
+
+ return 0;
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index 8de07aba8bdd..fd71da3a4f0f 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -1225,6 +1225,9 @@ static inline void rq_pin_lock(struct rq *rq, struct rq_flags *rf)
+ rq->clock_update_flags &= (RQCF_REQ_SKIP|RQCF_ACT_SKIP);
+ rf->clock_update_flags = 0;
+ #endif
++#ifdef CONFIG_SMP
++ SCHED_WARN_ON(rq->balance_callback);
++#endif
+ }
+
+ static inline void rq_unpin_lock(struct rq *rq, struct rq_flags *rf)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0004-sched-hotplug-Ensure-only-per-cpu-kthreads-run-durin.patch b/debian/patches-rt/0004-sched-hotplug-Ensure-only-per-cpu-kthreads-run-durin.patch
new file mode 100644
index 000000000..6cb47e482
--- /dev/null
+++ b/debian/patches-rt/0004-sched-hotplug-Ensure-only-per-cpu-kthreads-run-durin.patch
@@ -0,0 +1,244 @@
+From bc9c6ea411da55a929b5bc3663c0a89449613d47 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:01 +0200
+Subject: [PATCH 004/323] sched/hotplug: Ensure only per-cpu kthreads run
+ during hotplug
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+In preparation for migrate_disable(), make sure only per-cpu kthreads
+are allowed to run on !active CPUs.
+
+This is ran (as one of the very first steps) from the cpu-hotplug
+task which is a per-cpu kthread and completion of the hotplug
+operation only requires such tasks.
+
+This constraint enables the migrate_disable() implementation to wait
+for completion of all migrate_disable regions on this CPU at hotplug
+time without fear of any new ones starting.
+
+This replaces the unlikely(rq->balance_callbacks) test at the tail of
+context_switch with an unlikely(rq->balance_work), the fast path is
+not affected.
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 114 ++++++++++++++++++++++++++++++++++++++++++-
+ kernel/sched/sched.h | 7 ++-
+ 2 files changed, 118 insertions(+), 3 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index ab8b7fd46334..32c3acef5781 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -3535,8 +3535,10 @@ static inline struct callback_head *splice_balance_callbacks(struct rq *rq)
+ struct callback_head *head = rq->balance_callback;
+
+ lockdep_assert_held(&rq->lock);
+- if (head)
++ if (head) {
+ rq->balance_callback = NULL;
++ rq->balance_flags &= ~BALANCE_WORK;
++ }
+
+ return head;
+ }
+@@ -3557,6 +3559,21 @@ static inline void balance_callbacks(struct rq *rq, struct callback_head *head)
+ }
+ }
+
++static void balance_push(struct rq *rq);
++
++static inline void balance_switch(struct rq *rq)
++{
++ if (likely(!rq->balance_flags))
++ return;
++
++ if (rq->balance_flags & BALANCE_PUSH) {
++ balance_push(rq);
++ return;
++ }
++
++ __balance_callbacks(rq);
++}
++
+ #else
+
+ static inline void __balance_callbacks(struct rq *rq)
+@@ -3572,6 +3589,10 @@ static inline void balance_callbacks(struct rq *rq, struct callback_head *head)
+ {
+ }
+
++static inline void balance_switch(struct rq *rq)
++{
++}
++
+ #endif
+
+ static inline void
+@@ -3599,7 +3620,7 @@ static inline void finish_lock_switch(struct rq *rq)
+ * prev into current:
+ */
+ spin_acquire(&rq->lock.dep_map, 0, 0, _THIS_IP_);
+- __balance_callbacks(rq);
++ balance_switch(rq);
+ raw_spin_unlock_irq(&rq->lock);
+ }
+
+@@ -6833,6 +6854,90 @@ static void migrate_tasks(struct rq *dead_rq, struct rq_flags *rf)
+
+ rq->stop = stop;
+ }
++
++static int __balance_push_cpu_stop(void *arg)
++{
++ struct task_struct *p = arg;
++ struct rq *rq = this_rq();
++ struct rq_flags rf;
++ int cpu;
++
++ raw_spin_lock_irq(&p->pi_lock);
++ rq_lock(rq, &rf);
++
++ update_rq_clock(rq);
++
++ if (task_rq(p) == rq && task_on_rq_queued(p)) {
++ cpu = select_fallback_rq(rq->cpu, p);
++ rq = __migrate_task(rq, &rf, p, cpu);
++ }
++
++ rq_unlock(rq, &rf);
++ raw_spin_unlock_irq(&p->pi_lock);
++
++ put_task_struct(p);
++
++ return 0;
++}
++
++static DEFINE_PER_CPU(struct cpu_stop_work, push_work);
++
++/*
++ * Ensure we only run per-cpu kthreads once the CPU goes !active.
++ */
++static void balance_push(struct rq *rq)
++{
++ struct task_struct *push_task = rq->curr;
++
++ lockdep_assert_held(&rq->lock);
++ SCHED_WARN_ON(rq->cpu != smp_processor_id());
++
++ /*
++ * Both the cpu-hotplug and stop task are in this case and are
++ * required to complete the hotplug process.
++ */
++ if (is_per_cpu_kthread(push_task))
++ return;
++
++ get_task_struct(push_task);
++ /*
++ * Temporarily drop rq->lock such that we can wake-up the stop task.
++ * Both preemption and IRQs are still disabled.
++ */
++ raw_spin_unlock(&rq->lock);
++ stop_one_cpu_nowait(rq->cpu, __balance_push_cpu_stop, push_task,
++ this_cpu_ptr(&push_work));
++ /*
++ * At this point need_resched() is true and we'll take the loop in
++ * schedule(). The next pick is obviously going to be the stop task
++ * which is_per_cpu_kthread() and will push this task away.
++ */
++ raw_spin_lock(&rq->lock);
++}
++
++static void balance_push_set(int cpu, bool on)
++{
++ struct rq *rq = cpu_rq(cpu);
++ struct rq_flags rf;
++
++ rq_lock_irqsave(rq, &rf);
++ if (on)
++ rq->balance_flags |= BALANCE_PUSH;
++ else
++ rq->balance_flags &= ~BALANCE_PUSH;
++ rq_unlock_irqrestore(rq, &rf);
++}
++
++#else
++
++static inline void balance_push(struct rq *rq)
++{
++}
++
++static inline void balance_push_set(int cpu, bool on)
++{
++}
++
+ #endif /* CONFIG_HOTPLUG_CPU */
+
+ void set_rq_online(struct rq *rq)
+@@ -6920,6 +7025,8 @@ int sched_cpu_activate(unsigned int cpu)
+ struct rq *rq = cpu_rq(cpu);
+ struct rq_flags rf;
+
++ balance_push_set(cpu, false);
++
+ #ifdef CONFIG_SCHED_SMT
+ /*
+ * When going up, increment the number of cores with SMT present.
+@@ -6967,6 +7074,8 @@ int sched_cpu_deactivate(unsigned int cpu)
+ */
+ synchronize_rcu();
+
++ balance_push_set(cpu, true);
++
+ #ifdef CONFIG_SCHED_SMT
+ /*
+ * When going down, decrement the number of cores with SMT present.
+@@ -6980,6 +7089,7 @@ int sched_cpu_deactivate(unsigned int cpu)
+
+ ret = cpuset_cpu_inactive(cpu);
+ if (ret) {
++ balance_push_set(cpu, false);
+ set_cpu_active(cpu, true);
+ return ret;
+ }
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index fd71da3a4f0f..81dc4212423a 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -976,6 +976,7 @@ struct rq {
+ unsigned long cpu_capacity_inverted;
+
+ struct callback_head *balance_callback;
++ unsigned char balance_flags;
+
+ unsigned char nohz_idle_balance;
+ unsigned char idle_balance;
+@@ -1389,6 +1390,9 @@ init_numa_balancing(unsigned long clone_flags, struct task_struct *p)
+
+ #ifdef CONFIG_SMP
+
++#define BALANCE_WORK 0x01
++#define BALANCE_PUSH 0x02
++
+ static inline void
+ queue_balance_callback(struct rq *rq,
+ struct callback_head *head,
+@@ -1396,12 +1400,13 @@ queue_balance_callback(struct rq *rq,
+ {
+ lockdep_assert_held(&rq->lock);
+
+- if (unlikely(head->next))
++ if (unlikely(head->next || (rq->balance_flags & BALANCE_PUSH)))
+ return;
+
+ head->func = (void (*)(struct callback_head *))func;
+ head->next = rq->balance_callback;
+ rq->balance_callback = head;
++ rq->balance_flags |= BALANCE_WORK;
+ }
+
+ #define rcu_dereference_check_sched_domain(p) \
+--
+2.43.0
+
diff --git a/debian/patches-rt/0005-sched-core-Wait-for-tasks-being-pushed-away-on-hotpl.patch b/debian/patches-rt/0005-sched-core-Wait-for-tasks-being-pushed-away-on-hotpl.patch
new file mode 100644
index 000000000..abd6b3875
--- /dev/null
+++ b/debian/patches-rt/0005-sched-core-Wait-for-tasks-being-pushed-away-on-hotpl.patch
@@ -0,0 +1,124 @@
+From 94b59ab31222fc252603987e1ee316264426a015 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 23 Oct 2020 12:12:02 +0200
+Subject: [PATCH 005/323] sched/core: Wait for tasks being pushed away on
+ hotplug
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+RT kernels need to ensure that all tasks which are not per CPU kthreads
+have left the outgoing CPU to guarantee that no tasks are force migrated
+within a migrate disabled section.
+
+There is also some desire to (ab)use fine grained CPU hotplug control to
+clear a CPU from active state to force migrate tasks which are not per CPU
+kthreads away for power control purposes.
+
+Add a mechanism which waits until all tasks which should leave the CPU
+after the CPU active flag is cleared have moved to a different online CPU.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 40 +++++++++++++++++++++++++++++++++++++++-
+ kernel/sched/sched.h | 4 ++++
+ 2 files changed, 43 insertions(+), 1 deletion(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 32c3acef5781..b902755615d7 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -6896,8 +6896,21 @@ static void balance_push(struct rq *rq)
+ * Both the cpu-hotplug and stop task are in this case and are
+ * required to complete the hotplug process.
+ */
+- if (is_per_cpu_kthread(push_task))
++ if (is_per_cpu_kthread(push_task)) {
++ /*
++ * If this is the idle task on the outgoing CPU try to wake
++ * up the hotplug control thread which might wait for the
++ * last task to vanish. The rcuwait_active() check is
++ * accurate here because the waiter is pinned on this CPU
++ * and can't obviously be running in parallel.
++ */
++ if (!rq->nr_running && rcuwait_active(&rq->hotplug_wait)) {
++ raw_spin_unlock(&rq->lock);
++ rcuwait_wake_up(&rq->hotplug_wait);
++ raw_spin_lock(&rq->lock);
++ }
+ return;
++ }
+
+ get_task_struct(push_task);
+ /*
+@@ -6928,6 +6941,20 @@ static void balance_push_set(int cpu, bool on)
+ rq_unlock_irqrestore(rq, &rf);
+ }
+
++/*
++ * Invoked from a CPUs hotplug control thread after the CPU has been marked
++ * inactive. All tasks which are not per CPU kernel threads are either
++ * pushed off this CPU now via balance_push() or placed on a different CPU
++ * during wakeup. Wait until the CPU is quiescent.
++ */
++static void balance_hotplug_wait(void)
++{
++ struct rq *rq = this_rq();
++
++ rcuwait_wait_event(&rq->hotplug_wait, rq->nr_running == 1,
++ TASK_UNINTERRUPTIBLE);
++}
++
+ #else
+
+ static inline void balance_push(struct rq *rq)
+@@ -6938,6 +6965,10 @@ static inline void balance_push_set(int cpu, bool on)
+ {
+ }
+
++static inline void balance_hotplug_wait(void)
++{
++}
++
+ #endif /* CONFIG_HOTPLUG_CPU */
+
+ void set_rq_online(struct rq *rq)
+@@ -7094,6 +7125,10 @@ int sched_cpu_deactivate(unsigned int cpu)
+ return ret;
+ }
+ sched_domains_numa_masks_clear(cpu);
++
++ /* Wait for all non per CPU kernel threads to vanish. */
++ balance_hotplug_wait();
++
+ return 0;
+ }
+
+@@ -7334,6 +7369,9 @@ void __init sched_init(void)
+
+ rq_csd_init(rq, &rq->nohz_csd, nohz_csd_func);
+ #endif
++#ifdef CONFIG_HOTPLUG_CPU
++ rcuwait_init(&rq->hotplug_wait);
++#endif
+ #endif /* CONFIG_SMP */
+ hrtick_rq_init(rq);
+ atomic_set(&rq->nr_iowait, 0);
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index 81dc4212423a..a72464d370cd 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -1007,6 +1007,10 @@ struct rq {
+
+ /* This is used to determine avg_idle's max value */
+ u64 max_idle_balance_cost;
++
++#ifdef CONFIG_HOTPLUG_CPU
++ struct rcuwait hotplug_wait;
++#endif
+ #endif /* CONFIG_SMP */
+
+ #ifdef CONFIG_IRQ_TIME_ACCOUNTING
+--
+2.43.0
+
diff --git a/debian/patches-rt/0006-workqueue-Manually-break-affinity-on-hotplug.patch b/debian/patches-rt/0006-workqueue-Manually-break-affinity-on-hotplug.patch
new file mode 100644
index 000000000..7eb185ce2
--- /dev/null
+++ b/debian/patches-rt/0006-workqueue-Manually-break-affinity-on-hotplug.patch
@@ -0,0 +1,34 @@
+From e3372f0d43a35f1070d1689e6aa1f84d6cd9784b Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:03 +0200
+Subject: [PATCH 006/323] workqueue: Manually break affinity on hotplug
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Don't rely on the scheduler to force break affinity for us -- it will
+stop doing that for per-cpu-kthreads.
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Acked-by: Tejun Heo <tj@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/workqueue.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/kernel/workqueue.c b/kernel/workqueue.c
+index 63140e4dd5df..7c14773dc4c4 100644
+--- a/kernel/workqueue.c
++++ b/kernel/workqueue.c
+@@ -4941,6 +4941,10 @@ static void unbind_workers(int cpu)
+ pool->flags |= POOL_DISASSOCIATED;
+
+ raw_spin_unlock_irq(&pool->lock);
++
++ for_each_pool_worker(worker, pool)
++ WARN_ON_ONCE(set_cpus_allowed_ptr(worker->task, cpu_active_mask) < 0);
++
+ mutex_unlock(&wq_pool_attach_mutex);
+
+ /*
+--
+2.43.0
+
diff --git a/debian/patches-rt/0007-sched-hotplug-Consolidate-task-migration-on-CPU-unpl.patch b/debian/patches-rt/0007-sched-hotplug-Consolidate-task-migration-on-CPU-unpl.patch
new file mode 100644
index 000000000..606e32fa1
--- /dev/null
+++ b/debian/patches-rt/0007-sched-hotplug-Consolidate-task-migration-on-CPU-unpl.patch
@@ -0,0 +1,283 @@
+From 61ebefbbf2500f6ade2182806061526bbde76a28 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 23 Oct 2020 12:12:04 +0200
+Subject: [PATCH 007/323] sched/hotplug: Consolidate task migration on CPU
+ unplug
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+With the new mechanism which kicks tasks off the outgoing CPU at the end of
+schedule() the situation on an outgoing CPU right before the stopper thread
+brings it down completely is:
+
+ - All user tasks and all unbound kernel threads have either been migrated
+ away or are not running and the next wakeup will move them to a online CPU.
+
+ - All per CPU kernel threads, except cpu hotplug thread and the stopper
+ thread have either been unbound or parked by the responsible CPU hotplug
+ callback.
+
+That means that at the last step before the stopper thread is invoked the
+cpu hotplug thread is the last legitimate running task on the outgoing
+CPU.
+
+Add a final wait step right before the stopper thread is kicked which
+ensures that any still running tasks on the way to park or on the way to
+kick themself of the CPU are either sleeping or gone.
+
+This allows to remove the migrate_tasks() crutch in sched_cpu_dying(). If
+sched_cpu_dying() detects that there is still another running task aside of
+the stopper thread then it will explode with the appropriate fireworks.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/cpuhotplug.h | 1 +
+ include/linux/sched/hotplug.h | 2 +
+ kernel/cpu.c | 9 +-
+ kernel/sched/core.c | 154 ++++++++--------------------------
+ 4 files changed, 46 insertions(+), 120 deletions(-)
+
+diff --git a/include/linux/cpuhotplug.h b/include/linux/cpuhotplug.h
+index f5a5df3a8cfd..daf39c04a552 100644
+--- a/include/linux/cpuhotplug.h
++++ b/include/linux/cpuhotplug.h
+@@ -155,6 +155,7 @@ enum cpuhp_state {
+ CPUHP_AP_ONLINE,
+ CPUHP_TEARDOWN_CPU,
+ CPUHP_AP_ONLINE_IDLE,
++ CPUHP_AP_SCHED_WAIT_EMPTY,
+ CPUHP_AP_SMPBOOT_THREADS,
+ CPUHP_AP_X86_VDSO_VMA_ONLINE,
+ CPUHP_AP_IRQ_AFFINITY_ONLINE,
+diff --git a/include/linux/sched/hotplug.h b/include/linux/sched/hotplug.h
+index 9a62ffdd296f..412cdaba33eb 100644
+--- a/include/linux/sched/hotplug.h
++++ b/include/linux/sched/hotplug.h
+@@ -11,8 +11,10 @@ extern int sched_cpu_activate(unsigned int cpu);
+ extern int sched_cpu_deactivate(unsigned int cpu);
+
+ #ifdef CONFIG_HOTPLUG_CPU
++extern int sched_cpu_wait_empty(unsigned int cpu);
+ extern int sched_cpu_dying(unsigned int cpu);
+ #else
++# define sched_cpu_wait_empty NULL
+ # define sched_cpu_dying NULL
+ #endif
+
+diff --git a/kernel/cpu.c b/kernel/cpu.c
+index abf717c4f57c..f8280edb679f 100644
+--- a/kernel/cpu.c
++++ b/kernel/cpu.c
+@@ -1674,7 +1674,7 @@ static struct cpuhp_step cpuhp_hp_states[] = {
+ .name = "ap:online",
+ },
+ /*
+- * Handled on controll processor until the plugged processor manages
++ * Handled on control processor until the plugged processor manages
+ * this itself.
+ */
+ [CPUHP_TEARDOWN_CPU] = {
+@@ -1683,6 +1683,13 @@ static struct cpuhp_step cpuhp_hp_states[] = {
+ .teardown.single = takedown_cpu,
+ .cant_stop = true,
+ },
++
++ [CPUHP_AP_SCHED_WAIT_EMPTY] = {
++ .name = "sched:waitempty",
++ .startup.single = NULL,
++ .teardown.single = sched_cpu_wait_empty,
++ },
++
+ /* Handle smpboot threads park/unpark */
+ [CPUHP_AP_SMPBOOT_THREADS] = {
+ .name = "smpboot/threads:online",
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index b902755615d7..a26a82c3e939 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -6741,120 +6741,6 @@ void idle_task_exit(void)
+ /* finish_cpu(), as ran on the BP, will clean up the active_mm state */
+ }
+
+-/*
+- * Since this CPU is going 'away' for a while, fold any nr_active delta
+- * we might have. Assumes we're called after migrate_tasks() so that the
+- * nr_active count is stable. We need to take the teardown thread which
+- * is calling this into account, so we hand in adjust = 1 to the load
+- * calculation.
+- *
+- * Also see the comment "Global load-average calculations".
+- */
+-static void calc_load_migrate(struct rq *rq)
+-{
+- long delta = calc_load_fold_active(rq, 1);
+- if (delta)
+- atomic_long_add(delta, &calc_load_tasks);
+-}
+-
+-static struct task_struct *__pick_migrate_task(struct rq *rq)
+-{
+- const struct sched_class *class;
+- struct task_struct *next;
+-
+- for_each_class(class) {
+- next = class->pick_next_task(rq);
+- if (next) {
+- next->sched_class->put_prev_task(rq, next);
+- return next;
+- }
+- }
+-
+- /* The idle class should always have a runnable task */
+- BUG();
+-}
+-
+-/*
+- * Migrate all tasks from the rq, sleeping tasks will be migrated by
+- * try_to_wake_up()->select_task_rq().
+- *
+- * Called with rq->lock held even though we'er in stop_machine() and
+- * there's no concurrency possible, we hold the required locks anyway
+- * because of lock validation efforts.
+- */
+-static void migrate_tasks(struct rq *dead_rq, struct rq_flags *rf)
+-{
+- struct rq *rq = dead_rq;
+- struct task_struct *next, *stop = rq->stop;
+- struct rq_flags orf = *rf;
+- int dest_cpu;
+-
+- /*
+- * Fudge the rq selection such that the below task selection loop
+- * doesn't get stuck on the currently eligible stop task.
+- *
+- * We're currently inside stop_machine() and the rq is either stuck
+- * in the stop_machine_cpu_stop() loop, or we're executing this code,
+- * either way we should never end up calling schedule() until we're
+- * done here.
+- */
+- rq->stop = NULL;
+-
+- /*
+- * put_prev_task() and pick_next_task() sched
+- * class method both need to have an up-to-date
+- * value of rq->clock[_task]
+- */
+- update_rq_clock(rq);
+-
+- for (;;) {
+- /*
+- * There's this thread running, bail when that's the only
+- * remaining thread:
+- */
+- if (rq->nr_running == 1)
+- break;
+-
+- next = __pick_migrate_task(rq);
+-
+- /*
+- * Rules for changing task_struct::cpus_mask are holding
+- * both pi_lock and rq->lock, such that holding either
+- * stabilizes the mask.
+- *
+- * Drop rq->lock is not quite as disastrous as it usually is
+- * because !cpu_active at this point, which means load-balance
+- * will not interfere. Also, stop-machine.
+- */
+- rq_unlock(rq, rf);
+- raw_spin_lock(&next->pi_lock);
+- rq_relock(rq, rf);
+-
+- /*
+- * Since we're inside stop-machine, _nothing_ should have
+- * changed the task, WARN if weird stuff happened, because in
+- * that case the above rq->lock drop is a fail too.
+- */
+- if (WARN_ON(task_rq(next) != rq || !task_on_rq_queued(next))) {
+- raw_spin_unlock(&next->pi_lock);
+- continue;
+- }
+-
+- /* Find suitable destination for @next, with force if needed. */
+- dest_cpu = select_fallback_rq(dead_rq->cpu, next);
+- rq = __migrate_task(rq, rf, next, dest_cpu);
+- if (rq != dead_rq) {
+- rq_unlock(rq, rf);
+- rq = dead_rq;
+- *rf = orf;
+- rq_relock(rq, rf);
+- }
+- raw_spin_unlock(&next->pi_lock);
+- }
+-
+- rq->stop = stop;
+-}
+-
+ static int __balance_push_cpu_stop(void *arg)
+ {
+ struct task_struct *p = arg;
+@@ -7125,10 +7011,6 @@ int sched_cpu_deactivate(unsigned int cpu)
+ return ret;
+ }
+ sched_domains_numa_masks_clear(cpu);
+-
+- /* Wait for all non per CPU kernel threads to vanish. */
+- balance_hotplug_wait();
+-
+ return 0;
+ }
+
+@@ -7148,6 +7030,41 @@ int sched_cpu_starting(unsigned int cpu)
+ }
+
+ #ifdef CONFIG_HOTPLUG_CPU
++
++/*
++ * Invoked immediately before the stopper thread is invoked to bring the
++ * CPU down completely. At this point all per CPU kthreads except the
++ * hotplug thread (current) and the stopper thread (inactive) have been
++ * either parked or have been unbound from the outgoing CPU. Ensure that
++ * any of those which might be on the way out are gone.
++ *
++ * If after this point a bound task is being woken on this CPU then the
++ * responsible hotplug callback has failed to do it's job.
++ * sched_cpu_dying() will catch it with the appropriate fireworks.
++ */
++int sched_cpu_wait_empty(unsigned int cpu)
++{
++ balance_hotplug_wait();
++ return 0;
++}
++
++/*
++ * Since this CPU is going 'away' for a while, fold any nr_active delta we
++ * might have. Called from the CPU stopper task after ensuring that the
++ * stopper is the last running task on the CPU, so nr_active count is
++ * stable. We need to take the teardown thread which is calling this into
++ * account, so we hand in adjust = 1 to the load calculation.
++ *
++ * Also see the comment "Global load-average calculations".
++ */
++static void calc_load_migrate(struct rq *rq)
++{
++ long delta = calc_load_fold_active(rq, 1);
++
++ if (delta)
++ atomic_long_add(delta, &calc_load_tasks);
++}
++
+ int sched_cpu_dying(unsigned int cpu)
+ {
+ struct rq *rq = cpu_rq(cpu);
+@@ -7161,7 +7078,6 @@ int sched_cpu_dying(unsigned int cpu)
+ BUG_ON(!cpumask_test_cpu(cpu, rq->rd->span));
+ set_rq_offline(rq);
+ }
+- migrate_tasks(rq, &rf);
+ BUG_ON(rq->nr_running != 1);
+ rq_unlock_irqrestore(rq, &rf);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0008-sched-Fix-hotplug-vs-CPU-bandwidth-control.patch b/debian/patches-rt/0008-sched-Fix-hotplug-vs-CPU-bandwidth-control.patch
new file mode 100644
index 000000000..6c09cbe86
--- /dev/null
+++ b/debian/patches-rt/0008-sched-Fix-hotplug-vs-CPU-bandwidth-control.patch
@@ -0,0 +1,94 @@
+From 36d2d778f786cb7fd55c549911a6055d6b6f40ef Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:05 +0200
+Subject: [PATCH 008/323] sched: Fix hotplug vs CPU bandwidth control
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Since we now migrate tasks away before DYING, we should also move
+bandwidth unthrottle, otherwise we can gain tasks from unthrottle
+after we expect all tasks to be gone already.
+
+Also; it looks like the RT balancers don't respect cpu_active() and
+instead rely on rq->online in part, complete this. This too requires
+we do set_rq_offline() earlier to match the cpu_active() semantics.
+(The bigger patch is to convert RT to cpu_active() entirely)
+
+Since set_rq_online() is called from sched_cpu_activate(), place
+set_rq_offline() in sched_cpu_deactivate().
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 14 ++++++++++----
+ kernel/sched/deadline.c | 2 +-
+ kernel/sched/rt.c | 2 +-
+ 3 files changed, 12 insertions(+), 6 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index a26a82c3e939..c5d5576c67fb 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -6979,6 +6979,8 @@ int sched_cpu_activate(unsigned int cpu)
+
+ int sched_cpu_deactivate(unsigned int cpu)
+ {
++ struct rq *rq = cpu_rq(cpu);
++ struct rq_flags rf;
+ int ret;
+
+ set_cpu_active(cpu, false);
+@@ -6993,6 +6995,14 @@ int sched_cpu_deactivate(unsigned int cpu)
+
+ balance_push_set(cpu, true);
+
++ rq_lock_irqsave(rq, &rf);
++ if (rq->rd) {
++ update_rq_clock(rq);
++ BUG_ON(!cpumask_test_cpu(cpu, rq->rd->span));
++ set_rq_offline(rq);
++ }
++ rq_unlock_irqrestore(rq, &rf);
++
+ #ifdef CONFIG_SCHED_SMT
+ /*
+ * When going down, decrement the number of cores with SMT present.
+@@ -7074,10 +7084,6 @@ int sched_cpu_dying(unsigned int cpu)
+ sched_tick_stop(cpu);
+
+ rq_lock_irqsave(rq, &rf);
+- if (rq->rd) {
+- BUG_ON(!cpumask_test_cpu(cpu, rq->rd->span));
+- set_rq_offline(rq);
+- }
+ BUG_ON(rq->nr_running != 1);
+ rq_unlock_irqrestore(rq, &rf);
+
+diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
+index d91295d3059f..af8569dbdc9c 100644
+--- a/kernel/sched/deadline.c
++++ b/kernel/sched/deadline.c
+@@ -566,7 +566,7 @@ static int push_dl_task(struct rq *rq);
+
+ static inline bool need_pull_dl_task(struct rq *rq, struct task_struct *prev)
+ {
+- return dl_task(prev);
++ return rq->online && dl_task(prev);
+ }
+
+ static DEFINE_PER_CPU(struct callback_head, dl_push_head);
+diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c
+index f690f901b6cc..fdcce04913db 100644
+--- a/kernel/sched/rt.c
++++ b/kernel/sched/rt.c
+@@ -270,7 +270,7 @@ static void pull_rt_task(struct rq *this_rq);
+ static inline bool need_pull_rt_task(struct rq *rq, struct task_struct *prev)
+ {
+ /* Try to pull RT tasks here if we lower this rq's prio */
+- return rq->rt.highest_prio.curr > prev->prio;
++ return rq->online && rq->rt.highest_prio.curr > prev->prio;
+ }
+
+ static inline int rt_overloaded(struct rq *rq)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0009-sched-Massage-set_cpus_allowed.patch b/debian/patches-rt/0009-sched-Massage-set_cpus_allowed.patch
new file mode 100644
index 000000000..24fc3200e
--- /dev/null
+++ b/debian/patches-rt/0009-sched-Massage-set_cpus_allowed.patch
@@ -0,0 +1,175 @@
+From 1125b34b63aa303af592b0ea5be730dc92ce6d53 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:06 +0200
+Subject: [PATCH 009/323] sched: Massage set_cpus_allowed()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Thread a u32 flags word through the *set_cpus_allowed*() callchain.
+This will allow adding behavioural tweaks for future users.
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 28 ++++++++++++++++++----------
+ kernel/sched/deadline.c | 5 +++--
+ kernel/sched/sched.h | 7 +++++--
+ 3 files changed, 26 insertions(+), 14 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index c5d5576c67fb..569cc5e48e68 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1838,13 +1838,14 @@ static int migration_cpu_stop(void *data)
+ * sched_class::set_cpus_allowed must do the below, but is not required to
+ * actually call this function.
+ */
+-void set_cpus_allowed_common(struct task_struct *p, const struct cpumask *new_mask)
++void set_cpus_allowed_common(struct task_struct *p, const struct cpumask *new_mask, u32 flags)
+ {
+ cpumask_copy(&p->cpus_mask, new_mask);
+ p->nr_cpus_allowed = cpumask_weight(new_mask);
+ }
+
+-void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
++static void
++__do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask, u32 flags)
+ {
+ struct rq *rq = task_rq(p);
+ bool queued, running;
+@@ -1865,7 +1866,7 @@ void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
+ if (running)
+ put_prev_task(rq, p);
+
+- p->sched_class->set_cpus_allowed(p, new_mask);
++ p->sched_class->set_cpus_allowed(p, new_mask, flags);
+
+ if (queued)
+ enqueue_task(rq, p, ENQUEUE_RESTORE | ENQUEUE_NOCLOCK);
+@@ -1873,6 +1874,11 @@ void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
+ set_next_task(rq, p);
+ }
+
++void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
++{
++ __do_set_cpus_allowed(p, new_mask, 0);
++}
++
+ /*
+ * Change a given task's CPU affinity. Migrate the thread to a
+ * proper CPU and schedule it away if the CPU it's executing on
+@@ -1883,7 +1889,8 @@ void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
+ * call is not atomic; no spinlocks may be held.
+ */
+ static int __set_cpus_allowed_ptr(struct task_struct *p,
+- const struct cpumask *new_mask, bool check)
++ const struct cpumask *new_mask,
++ u32 flags)
+ {
+ const struct cpumask *cpu_valid_mask = cpu_active_mask;
+ unsigned int dest_cpu;
+@@ -1905,7 +1912,7 @@ static int __set_cpus_allowed_ptr(struct task_struct *p,
+ * Must re-check here, to close a race against __kthread_bind(),
+ * sched_setaffinity() is not guaranteed to observe the flag.
+ */
+- if (check && (p->flags & PF_NO_SETAFFINITY)) {
++ if ((flags & SCA_CHECK) && (p->flags & PF_NO_SETAFFINITY)) {
+ ret = -EINVAL;
+ goto out;
+ }
+@@ -1924,7 +1931,7 @@ static int __set_cpus_allowed_ptr(struct task_struct *p,
+ goto out;
+ }
+
+- do_set_cpus_allowed(p, new_mask);
++ __do_set_cpus_allowed(p, new_mask, flags);
+
+ if (p->flags & PF_KTHREAD) {
+ /*
+@@ -1961,7 +1968,7 @@ static int __set_cpus_allowed_ptr(struct task_struct *p,
+
+ int set_cpus_allowed_ptr(struct task_struct *p, const struct cpumask *new_mask)
+ {
+- return __set_cpus_allowed_ptr(p, new_mask, false);
++ return __set_cpus_allowed_ptr(p, new_mask, 0);
+ }
+ EXPORT_SYMBOL_GPL(set_cpus_allowed_ptr);
+
+@@ -2420,7 +2427,8 @@ void sched_set_stop_task(int cpu, struct task_struct *stop)
+ #else
+
+ static inline int __set_cpus_allowed_ptr(struct task_struct *p,
+- const struct cpumask *new_mask, bool check)
++ const struct cpumask *new_mask,
++ u32 flags)
+ {
+ return set_cpus_allowed_ptr(p, new_mask);
+ }
+@@ -6022,7 +6030,7 @@ long sched_setaffinity(pid_t pid, const struct cpumask *in_mask)
+ }
+ #endif
+ again:
+- retval = __set_cpus_allowed_ptr(p, new_mask, true);
++ retval = __set_cpus_allowed_ptr(p, new_mask, SCA_CHECK);
+
+ if (!retval) {
+ cpuset_cpus_allowed(p, cpus_allowed);
+@@ -6598,7 +6606,7 @@ void __init init_idle(struct task_struct *idle, int cpu)
+ *
+ * And since this is boot we can forgo the serialization.
+ */
+- set_cpus_allowed_common(idle, cpumask_of(cpu));
++ set_cpus_allowed_common(idle, cpumask_of(cpu), 0);
+ #endif
+ /*
+ * We're having a chicken and egg problem, even though we are
+diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
+index af8569dbdc9c..5566f157640b 100644
+--- a/kernel/sched/deadline.c
++++ b/kernel/sched/deadline.c
+@@ -2311,7 +2311,8 @@ static void task_woken_dl(struct rq *rq, struct task_struct *p)
+ }
+
+ static void set_cpus_allowed_dl(struct task_struct *p,
+- const struct cpumask *new_mask)
++ const struct cpumask *new_mask,
++ u32 flags)
+ {
+ struct root_domain *src_rd;
+ struct rq *rq;
+@@ -2340,7 +2341,7 @@ static void set_cpus_allowed_dl(struct task_struct *p,
+ raw_spin_unlock(&src_dl_b->lock);
+ }
+
+- set_cpus_allowed_common(p, new_mask);
++ set_cpus_allowed_common(p, new_mask, flags);
+ }
+
+ /* Assumes rq->lock is held */
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index a72464d370cd..f0f396cc1bee 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -1818,7 +1818,8 @@ struct sched_class {
+ void (*task_woken)(struct rq *this_rq, struct task_struct *task);
+
+ void (*set_cpus_allowed)(struct task_struct *p,
+- const struct cpumask *newmask);
++ const struct cpumask *newmask,
++ u32 flags);
+
+ void (*rq_online)(struct rq *rq);
+ void (*rq_offline)(struct rq *rq);
+@@ -1911,7 +1912,9 @@ extern void update_group_capacity(struct sched_domain *sd, int cpu);
+
+ extern void trigger_load_balance(struct rq *rq);
+
+-extern void set_cpus_allowed_common(struct task_struct *p, const struct cpumask *new_mask);
++#define SCA_CHECK 0x01
++
++extern void set_cpus_allowed_common(struct task_struct *p, const struct cpumask *new_mask, u32 flags);
+
+ #endif
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0010-sched-Add-migrate_disable.patch b/debian/patches-rt/0010-sched-Add-migrate_disable.patch
new file mode 100644
index 000000000..d0ea31279
--- /dev/null
+++ b/debian/patches-rt/0010-sched-Add-migrate_disable.patch
@@ -0,0 +1,356 @@
+From e9f7c2225ee3e1ce9317762393618c1c81a8febe Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:07 +0200
+Subject: [PATCH 010/323] sched: Add migrate_disable()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Add the base migrate_disable() support (under protest).
+
+While migrate_disable() is (currently) required for PREEMPT_RT, it is
+also one of the biggest flaws in the system.
+
+Notably this is just the base implementation, it is broken vs
+sched_setaffinity() and hotplug, both solved in additional patches for
+ease of review.
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/preempt.h | 65 +++++++++++++++++++++++
+ include/linux/sched.h | 3 ++
+ kernel/sched/core.c | 112 +++++++++++++++++++++++++++++++++++++---
+ kernel/sched/sched.h | 6 ++-
+ lib/smp_processor_id.c | 5 ++
+ 5 files changed, 183 insertions(+), 8 deletions(-)
+
+diff --git a/include/linux/preempt.h b/include/linux/preempt.h
+index 7d9c1c0e149c..97ba7c920653 100644
+--- a/include/linux/preempt.h
++++ b/include/linux/preempt.h
+@@ -322,6 +322,69 @@ static inline void preempt_notifier_init(struct preempt_notifier *notifier,
+
+ #endif
+
++#if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
++
++/*
++ * Migrate-Disable and why it is (strongly) undesired.
++ *
++ * The premise of the Real-Time schedulers we have on Linux
++ * (SCHED_FIFO/SCHED_DEADLINE) is that M CPUs can/will run M tasks
++ * concurrently, provided there are sufficient runnable tasks, also known as
++ * work-conserving. For instance SCHED_DEADLINE tries to schedule the M
++ * earliest deadline threads, and SCHED_FIFO the M highest priority threads.
++ *
++ * The correctness of various scheduling models depends on this, but is it
++ * broken by migrate_disable() that doesn't imply preempt_disable(). Where
++ * preempt_disable() implies an immediate priority ceiling, preemptible
++ * migrate_disable() allows nesting.
++ *
++ * The worst case is that all tasks preempt one another in a migrate_disable()
++ * region and stack on a single CPU. This then reduces the available bandwidth
++ * to a single CPU. And since Real-Time schedulability theory considers the
++ * Worst-Case only, all Real-Time analysis shall revert to single-CPU
++ * (instantly solving the SMP analysis problem).
++ *
++ *
++ * The reason we have it anyway.
++ *
++ * PREEMPT_RT breaks a number of assumptions traditionally held. By forcing a
++ * number of primitives into becoming preemptible, they would also allow
++ * migration. This turns out to break a bunch of per-cpu usage. To this end,
++ * all these primitives employ migirate_disable() to restore this implicit
++ * assumption.
++ *
++ * This is a 'temporary' work-around at best. The correct solution is getting
++ * rid of the above assumptions and reworking the code to employ explicit
++ * per-cpu locking or short preempt-disable regions.
++ *
++ * The end goal must be to get rid of migrate_disable(), alternatively we need
++ * a schedulability theory that does not depend on abritrary migration.
++ *
++ *
++ * Notes on the implementation.
++ *
++ * The implementation is particularly tricky since existing code patterns
++ * dictate neither migrate_disable() nor migrate_enable() is allowed to block.
++ * This means that it cannot use cpus_read_lock() to serialize against hotplug,
++ * nor can it easily migrate itself into a pending affinity mask change on
++ * migrate_enable().
++ *
++ *
++ * Note: even non-work-conserving schedulers like semi-partitioned depends on
++ * migration, so migrate_disable() is not only a problem for
++ * work-conserving schedulers.
++ *
++ */
++extern void migrate_disable(void);
++extern void migrate_enable(void);
++
++#elif defined(CONFIG_PREEMPT_RT)
++
++static inline void migrate_disable(void) { }
++static inline void migrate_enable(void) { }
++
++#else /* !CONFIG_PREEMPT_RT */
++
+ /**
+ * migrate_disable - Prevent migration of the current task
+ *
+@@ -352,4 +415,6 @@ static __always_inline void migrate_enable(void)
+ preempt_enable();
+ }
+
++#endif /* CONFIG_SMP && CONFIG_PREEMPT_RT */
++
+ #endif /* __LINUX_PREEMPT_H */
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index aa015416c569..76907e9876d5 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -726,6 +726,9 @@ struct task_struct {
+ int nr_cpus_allowed;
+ const cpumask_t *cpus_ptr;
+ cpumask_t cpus_mask;
++#if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
++ int migration_disabled;
++#endif
+
+ #ifdef CONFIG_PREEMPT_RCU
+ int rcu_read_lock_nesting;
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 569cc5e48e68..5c9db4b2b6ec 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1710,6 +1710,61 @@ void check_preempt_curr(struct rq *rq, struct task_struct *p, int flags)
+
+ #ifdef CONFIG_SMP
+
++#ifdef CONFIG_PREEMPT_RT
++
++static void
++__do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask, u32 flags);
++
++static int __set_cpus_allowed_ptr(struct task_struct *p,
++ const struct cpumask *new_mask,
++ u32 flags);
++
++static void migrate_disable_switch(struct rq *rq, struct task_struct *p)
++{
++ if (likely(!p->migration_disabled))
++ return;
++
++ if (p->cpus_ptr != &p->cpus_mask)
++ return;
++
++ /*
++ * Violates locking rules! see comment in __do_set_cpus_allowed().
++ */
++ __do_set_cpus_allowed(p, cpumask_of(rq->cpu), SCA_MIGRATE_DISABLE);
++}
++
++void migrate_disable(void)
++{
++ if (current->migration_disabled++)
++ return;
++
++ barrier();
++}
++EXPORT_SYMBOL_GPL(migrate_disable);
++
++void migrate_enable(void)
++{
++ struct task_struct *p = current;
++
++ if (--p->migration_disabled)
++ return;
++
++ barrier();
++
++ if (p->cpus_ptr == &p->cpus_mask)
++ return;
++
++ __set_cpus_allowed_ptr(p, &p->cpus_mask, SCA_MIGRATE_ENABLE);
++}
++EXPORT_SYMBOL_GPL(migrate_enable);
++
++static inline bool is_migration_disabled(struct task_struct *p)
++{
++ return p->migration_disabled;
++}
++
++#endif
++
+ /*
+ * Per-CPU kthreads are allowed to run on !active && online CPUs, see
+ * __set_cpus_allowed_ptr() and select_fallback_rq().
+@@ -1719,7 +1774,7 @@ static inline bool is_cpu_allowed(struct task_struct *p, int cpu)
+ if (!cpumask_test_cpu(cpu, p->cpus_ptr))
+ return false;
+
+- if (is_per_cpu_kthread(p))
++ if (is_per_cpu_kthread(p) || is_migration_disabled(p))
+ return cpu_online(cpu);
+
+ return cpu_active(cpu);
+@@ -1840,6 +1895,11 @@ static int migration_cpu_stop(void *data)
+ */
+ void set_cpus_allowed_common(struct task_struct *p, const struct cpumask *new_mask, u32 flags)
+ {
++ if (flags & (SCA_MIGRATE_ENABLE | SCA_MIGRATE_DISABLE)) {
++ p->cpus_ptr = new_mask;
++ return;
++ }
++
+ cpumask_copy(&p->cpus_mask, new_mask);
+ p->nr_cpus_allowed = cpumask_weight(new_mask);
+ }
+@@ -1850,7 +1910,22 @@ __do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask, u32
+ struct rq *rq = task_rq(p);
+ bool queued, running;
+
+- lockdep_assert_held(&p->pi_lock);
++ /*
++ * This here violates the locking rules for affinity, since we're only
++ * supposed to change these variables while holding both rq->lock and
++ * p->pi_lock.
++ *
++ * HOWEVER, it magically works, because ttwu() is the only code that
++ * accesses these variables under p->pi_lock and only does so after
++ * smp_cond_load_acquire(&p->on_cpu, !VAL), and we're in __schedule()
++ * before finish_task().
++ *
++ * XXX do further audits, this smells like something putrid.
++ */
++ if (flags & SCA_MIGRATE_DISABLE)
++ SCHED_WARN_ON(!p->on_cpu);
++ else
++ lockdep_assert_held(&p->pi_lock);
+
+ queued = task_on_rq_queued(p);
+ running = task_current(rq, p);
+@@ -1901,9 +1976,14 @@ static int __set_cpus_allowed_ptr(struct task_struct *p,
+ rq = task_rq_lock(p, &rf);
+ update_rq_clock(rq);
+
+- if (p->flags & PF_KTHREAD) {
++ if (p->flags & PF_KTHREAD || is_migration_disabled(p)) {
+ /*
+- * Kernel threads are allowed on online && !active CPUs
++ * Kernel threads are allowed on online && !active CPUs.
++ *
++ * Specifically, migration_disabled() tasks must not fail the
++ * cpumask_any_and_distribute() pick below, esp. so on
++ * SCA_MIGRATE_ENABLE, otherwise we'll not call
++ * set_cpus_allowed_common() and actually reset p->cpus_ptr.
+ */
+ cpu_valid_mask = cpu_online_mask;
+ }
+@@ -1917,7 +1997,7 @@ static int __set_cpus_allowed_ptr(struct task_struct *p,
+ goto out;
+ }
+
+- if (cpumask_equal(&p->cpus_mask, new_mask))
++ if (!(flags & SCA_MIGRATE_ENABLE) && cpumask_equal(&p->cpus_mask, new_mask))
+ goto out;
+
+ /*
+@@ -2009,6 +2089,8 @@ void set_task_cpu(struct task_struct *p, unsigned int new_cpu)
+ * Clearly, migrating tasks to offline CPUs is a fairly daft thing.
+ */
+ WARN_ON_ONCE(!cpu_online(new_cpu));
++
++ WARN_ON_ONCE(is_migration_disabled(p));
+ #endif
+
+ trace_sched_migrate_task(p, new_cpu);
+@@ -2339,6 +2421,12 @@ static int select_fallback_rq(int cpu, struct task_struct *p)
+ }
+ fallthrough;
+ case possible:
++ /*
++ * XXX When called from select_task_rq() we only
++ * hold p->pi_lock and again violate locking order.
++ *
++ * More yuck to audit.
++ */
+ do_set_cpus_allowed(p, cpu_possible_mask);
+ state = fail;
+ break;
+@@ -2373,7 +2461,7 @@ int select_task_rq(struct task_struct *p, int cpu, int sd_flags, int wake_flags)
+ {
+ lockdep_assert_held(&p->pi_lock);
+
+- if (p->nr_cpus_allowed > 1)
++ if (p->nr_cpus_allowed > 1 && !is_migration_disabled(p))
+ cpu = p->sched_class->select_task_rq(p, cpu, sd_flags, wake_flags);
+ else
+ cpu = cpumask_any(p->cpus_ptr);
+@@ -2435,6 +2523,17 @@ static inline int __set_cpus_allowed_ptr(struct task_struct *p,
+
+ #endif /* CONFIG_SMP */
+
++#if !defined(CONFIG_SMP) || !defined(CONFIG_PREEMPT_RT)
++
++static inline void migrate_disable_switch(struct rq *rq, struct task_struct *p) { }
++
++static inline bool is_migration_disabled(struct task_struct *p)
++{
++ return false;
++}
++
++#endif
++
+ static void
+ ttwu_stat(struct task_struct *p, int cpu, int wake_flags)
+ {
+@@ -4595,6 +4694,7 @@ static void __sched notrace __schedule(bool preempt)
+ */
+ ++*switch_count;
+
++ migrate_disable_switch(rq, prev);
+ psi_sched_switch(prev, next, !task_on_rq_queued(prev));
+
+ trace_sched_switch(preempt, prev, next);
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index f0f396cc1bee..f3109adda484 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -1906,14 +1906,16 @@ static inline bool sched_fair_runnable(struct rq *rq)
+ extern struct task_struct *pick_next_task_fair(struct rq *rq, struct task_struct *prev, struct rq_flags *rf);
+ extern struct task_struct *pick_next_task_idle(struct rq *rq);
+
++#define SCA_CHECK 0x01
++#define SCA_MIGRATE_DISABLE 0x02
++#define SCA_MIGRATE_ENABLE 0x04
++
+ #ifdef CONFIG_SMP
+
+ extern void update_group_capacity(struct sched_domain *sd, int cpu);
+
+ extern void trigger_load_balance(struct rq *rq);
+
+-#define SCA_CHECK 0x01
+-
+ extern void set_cpus_allowed_common(struct task_struct *p, const struct cpumask *new_mask, u32 flags);
+
+ #endif
+diff --git a/lib/smp_processor_id.c b/lib/smp_processor_id.c
+index 2916606a9333..dbb96ebf661f 100644
+--- a/lib/smp_processor_id.c
++++ b/lib/smp_processor_id.c
+@@ -26,6 +26,11 @@ unsigned int check_preemption_disabled(const char *what1, const char *what2)
+ if (current->nr_cpus_allowed == 1)
+ goto out;
+
++#if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
++ if (current->migration_disabled)
++ goto out;
++#endif
++
+ /*
+ * It is valid to assume CPU-locality during early bootup:
+ */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0011-sched-Fix-migrate_disable-vs-set_cpus_allowed_ptr.patch b/debian/patches-rt/0011-sched-Fix-migrate_disable-vs-set_cpus_allowed_ptr.patch
new file mode 100644
index 000000000..d89f86138
--- /dev/null
+++ b/debian/patches-rt/0011-sched-Fix-migrate_disable-vs-set_cpus_allowed_ptr.patch
@@ -0,0 +1,370 @@
+From f6fcadc60ec427b9eeb4b734b77b7b110c050b83 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:08 +0200
+Subject: [PATCH 011/323] sched: Fix migrate_disable() vs
+ set_cpus_allowed_ptr()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Concurrent migrate_disable() and set_cpus_allowed_ptr() has
+interesting features. We rely on set_cpus_allowed_ptr() to not return
+until the task runs inside the provided mask. This expectation is
+exported to userspace.
+
+This means that any set_cpus_allowed_ptr() caller must wait until
+migrate_enable() allows migrations.
+
+At the same time, we don't want migrate_enable() to schedule, due to
+patterns like:
+
+ preempt_disable();
+ migrate_disable();
+ ...
+ migrate_enable();
+ preempt_enable();
+
+And:
+
+ raw_spin_lock(&B);
+ spin_unlock(&A);
+
+this means that when migrate_enable() must restore the affinity
+mask, it cannot wait for completion thereof. Luck will have it that
+that is exactly the case where there is a pending
+set_cpus_allowed_ptr(), so let that provide storage for the async stop
+machine.
+
+Much thanks to Valentin who used TLA+ most effective and found lots of
+'interesting' cases.
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/sched.h | 1 +
+ kernel/sched/core.c | 234 ++++++++++++++++++++++++++++++++++++------
+ 2 files changed, 205 insertions(+), 30 deletions(-)
+
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index 76907e9876d5..5b5c194f5a62 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -726,6 +726,7 @@ struct task_struct {
+ int nr_cpus_allowed;
+ const cpumask_t *cpus_ptr;
+ cpumask_t cpus_mask;
++ void *migration_pending;
+ #if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
+ int migration_disabled;
+ #endif
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 5c9db4b2b6ec..3af7c42896c9 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1746,15 +1746,26 @@ void migrate_enable(void)
+ {
+ struct task_struct *p = current;
+
+- if (--p->migration_disabled)
++ if (p->migration_disabled > 1) {
++ p->migration_disabled--;
+ return;
++ }
+
++ /*
++ * Ensure stop_task runs either before or after this, and that
++ * __set_cpus_allowed_ptr(SCA_MIGRATE_ENABLE) doesn't schedule().
++ */
++ preempt_disable();
++ if (p->cpus_ptr != &p->cpus_mask)
++ __set_cpus_allowed_ptr(p, &p->cpus_mask, SCA_MIGRATE_ENABLE);
++ /*
++ * Mustn't clear migration_disabled() until cpus_ptr points back at the
++ * regular cpus_mask, otherwise things that race (eg.
++ * select_fallback_rq) get confused.
++ */
+ barrier();
+-
+- if (p->cpus_ptr == &p->cpus_mask)
+- return;
+-
+- __set_cpus_allowed_ptr(p, &p->cpus_mask, SCA_MIGRATE_ENABLE);
++ p->migration_disabled = 0;
++ preempt_enable();
+ }
+ EXPORT_SYMBOL_GPL(migrate_enable);
+
+@@ -1819,8 +1830,16 @@ static struct rq *move_queued_task(struct rq *rq, struct rq_flags *rf,
+ }
+
+ struct migration_arg {
+- struct task_struct *task;
+- int dest_cpu;
++ struct task_struct *task;
++ int dest_cpu;
++ struct set_affinity_pending *pending;
++};
++
++struct set_affinity_pending {
++ refcount_t refs;
++ struct completion done;
++ struct cpu_stop_work stop_work;
++ struct migration_arg arg;
+ };
+
+ /*
+@@ -1852,16 +1871,19 @@ static struct rq *__migrate_task(struct rq *rq, struct rq_flags *rf,
+ */
+ static int migration_cpu_stop(void *data)
+ {
++ struct set_affinity_pending *pending;
+ struct migration_arg *arg = data;
+ struct task_struct *p = arg->task;
++ int dest_cpu = arg->dest_cpu;
+ struct rq *rq = this_rq();
++ bool complete = false;
+ struct rq_flags rf;
+
+ /*
+ * The original target CPU might have gone down and we might
+ * be on another CPU but it doesn't matter.
+ */
+- local_irq_disable();
++ local_irq_save(rf.flags);
+ /*
+ * We need to explicitly wake pending tasks before running
+ * __migrate_task() such that we will not miss enforcing cpus_ptr
+@@ -1871,21 +1893,83 @@ static int migration_cpu_stop(void *data)
+
+ raw_spin_lock(&p->pi_lock);
+ rq_lock(rq, &rf);
++
++ pending = p->migration_pending;
+ /*
+ * If task_rq(p) != rq, it cannot be migrated here, because we're
+ * holding rq->lock, if p->on_rq == 0 it cannot get enqueued because
+ * we're holding p->pi_lock.
+ */
+ if (task_rq(p) == rq) {
++ if (is_migration_disabled(p))
++ goto out;
++
++ if (pending) {
++ p->migration_pending = NULL;
++ complete = true;
++ }
++
++ /* migrate_enable() -- we must not race against SCA */
++ if (dest_cpu < 0) {
++ /*
++ * When this was migrate_enable() but we no longer
++ * have a @pending, a concurrent SCA 'fixed' things
++ * and we should be valid again. Nothing to do.
++ */
++ if (!pending) {
++ WARN_ON_ONCE(!is_cpu_allowed(p, cpu_of(rq)));
++ goto out;
++ }
++
++ dest_cpu = cpumask_any_distribute(&p->cpus_mask);
++ }
++
+ if (task_on_rq_queued(p))
+- rq = __migrate_task(rq, &rf, p, arg->dest_cpu);
++ rq = __migrate_task(rq, &rf, p, dest_cpu);
+ else
+- p->wake_cpu = arg->dest_cpu;
++ p->wake_cpu = dest_cpu;
++
++ } else if (dest_cpu < 0) {
++ /*
++ * This happens when we get migrated between migrate_enable()'s
++ * preempt_enable() and scheduling the stopper task. At that
++ * point we're a regular task again and not current anymore.
++ *
++ * A !PREEMPT kernel has a giant hole here, which makes it far
++ * more likely.
++ */
++
++ /*
++ * When this was migrate_enable() but we no longer have an
++ * @pending, a concurrent SCA 'fixed' things and we should be
++ * valid again. Nothing to do.
++ */
++ if (!pending) {
++ WARN_ON_ONCE(!is_cpu_allowed(p, cpu_of(rq)));
++ goto out;
++ }
++
++ /*
++ * When migrate_enable() hits a rq mis-match we can't reliably
++ * determine is_migration_disabled() and so have to chase after
++ * it.
++ */
++ task_rq_unlock(rq, p, &rf);
++ stop_one_cpu_nowait(task_cpu(p), migration_cpu_stop,
++ &pending->arg, &pending->stop_work);
++ return 0;
+ }
+- rq_unlock(rq, &rf);
+- raw_spin_unlock(&p->pi_lock);
++out:
++ task_rq_unlock(rq, p, &rf);
++
++ if (complete)
++ complete_all(&pending->done);
++
++ /* For pending->{arg,stop_work} */
++ pending = arg->pending;
++ if (pending && refcount_dec_and_test(&pending->refs))
++ wake_up_var(&pending->refs);
+
+- local_irq_enable();
+ return 0;
+ }
+
+@@ -1954,6 +2038,110 @@ void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
+ __do_set_cpus_allowed(p, new_mask, 0);
+ }
+
++/*
++ * This function is wildly self concurrent, consider at least 3 times.
++ */
++static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flags *rf,
++ int dest_cpu, unsigned int flags)
++{
++ struct set_affinity_pending my_pending = { }, *pending = NULL;
++ struct migration_arg arg = {
++ .task = p,
++ .dest_cpu = dest_cpu,
++ };
++ bool complete = false;
++
++ /* Can the task run on the task's current CPU? If so, we're done */
++ if (cpumask_test_cpu(task_cpu(p), &p->cpus_mask)) {
++ pending = p->migration_pending;
++ if (pending) {
++ refcount_inc(&pending->refs);
++ p->migration_pending = NULL;
++ complete = true;
++ }
++ task_rq_unlock(rq, p, rf);
++
++ if (complete)
++ goto do_complete;
++
++ return 0;
++ }
++
++ if (!(flags & SCA_MIGRATE_ENABLE)) {
++ /* serialized by p->pi_lock */
++ if (!p->migration_pending) {
++ refcount_set(&my_pending.refs, 1);
++ init_completion(&my_pending.done);
++ p->migration_pending = &my_pending;
++ } else {
++ pending = p->migration_pending;
++ refcount_inc(&pending->refs);
++ }
++ }
++ pending = p->migration_pending;
++ /*
++ * - !MIGRATE_ENABLE:
++ * we'll have installed a pending if there wasn't one already.
++ *
++ * - MIGRATE_ENABLE:
++ * we're here because the current CPU isn't matching anymore,
++ * the only way that can happen is because of a concurrent
++ * set_cpus_allowed_ptr() call, which should then still be
++ * pending completion.
++ *
++ * Either way, we really should have a @pending here.
++ */
++ if (WARN_ON_ONCE(!pending))
++ return -EINVAL;
++
++ if (flags & SCA_MIGRATE_ENABLE) {
++
++ refcount_inc(&pending->refs); /* pending->{arg,stop_work} */
++ task_rq_unlock(rq, p, rf);
++
++ pending->arg = (struct migration_arg) {
++ .task = p,
++ .dest_cpu = -1,
++ .pending = pending,
++ };
++
++ stop_one_cpu_nowait(cpu_of(rq), migration_cpu_stop,
++ &pending->arg, &pending->stop_work);
++
++ return 0;
++ }
++
++ if (task_running(rq, p) || p->state == TASK_WAKING) {
++
++ task_rq_unlock(rq, p, rf);
++ stop_one_cpu(cpu_of(rq), migration_cpu_stop, &arg);
++
++ } else {
++
++ if (!is_migration_disabled(p)) {
++ if (task_on_rq_queued(p))
++ rq = move_queued_task(rq, rf, p, dest_cpu);
++
++ p->migration_pending = NULL;
++ complete = true;
++ }
++ task_rq_unlock(rq, p, rf);
++
++do_complete:
++ if (complete)
++ complete_all(&pending->done);
++ }
++
++ wait_for_completion(&pending->done);
++
++ if (refcount_dec_and_test(&pending->refs))
++ wake_up_var(&pending->refs);
++
++ wait_var_event(&my_pending.refs, !refcount_read(&my_pending.refs));
++
++ return 0;
++}
++
+ /*
+ * Change a given task's CPU affinity. Migrate the thread to a
+ * proper CPU and schedule it away if the CPU it's executing on
+@@ -2023,23 +2211,8 @@ static int __set_cpus_allowed_ptr(struct task_struct *p,
+ p->nr_cpus_allowed != 1);
+ }
+
+- /* Can the task run on the task's current CPU? If so, we're done */
+- if (cpumask_test_cpu(task_cpu(p), new_mask))
+- goto out;
++ return affine_move_task(rq, p, &rf, dest_cpu, flags);
+
+- if (task_running(rq, p) || p->state == TASK_WAKING) {
+- struct migration_arg arg = { p, dest_cpu };
+- /* Need help from migration thread: drop lock and wait. */
+- task_rq_unlock(rq, p, &rf);
+- stop_one_cpu(cpu_of(rq), migration_cpu_stop, &arg);
+- return 0;
+- } else if (task_on_rq_queued(p)) {
+- /*
+- * OK, since we're going to drop the lock immediately
+- * afterwards anyway.
+- */
+- rq = move_queued_task(rq, &rf, p, dest_cpu);
+- }
+ out:
+ task_rq_unlock(rq, p, &rf);
+
+@@ -3230,6 +3403,7 @@ static void __sched_fork(unsigned long clone_flags, struct task_struct *p)
+ init_numa_balancing(clone_flags, p);
+ #ifdef CONFIG_SMP
+ p->wake_entry.u_flags = CSD_TYPE_TTWU;
++ p->migration_pending = NULL;
+ #endif
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0012-sched-core-Make-migrate-disable-and-CPU-hotplug-coop.patch b/debian/patches-rt/0012-sched-core-Make-migrate-disable-and-CPU-hotplug-coop.patch
new file mode 100644
index 000000000..e89668431
--- /dev/null
+++ b/debian/patches-rt/0012-sched-core-Make-migrate-disable-and-CPU-hotplug-coop.patch
@@ -0,0 +1,137 @@
+From 02829fffd43c5fe3e617d07e0a94d5164324449b Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 23 Oct 2020 12:12:09 +0200
+Subject: [PATCH 012/323] sched/core: Make migrate disable and CPU hotplug
+ cooperative
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+On CPU unplug tasks which are in a migrate disabled region cannot be pushed
+to a different CPU until they returned to migrateable state.
+
+Account the number of tasks on a runqueue which are in a migrate disabled
+section and make the hotplug wait mechanism respect that.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 36 ++++++++++++++++++++++++++++++------
+ kernel/sched/sched.h | 4 ++++
+ 2 files changed, 34 insertions(+), 6 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 3af7c42896c9..2517a003295b 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1735,10 +1735,17 @@ static void migrate_disable_switch(struct rq *rq, struct task_struct *p)
+
+ void migrate_disable(void)
+ {
+- if (current->migration_disabled++)
++ struct task_struct *p = current;
++
++ if (p->migration_disabled) {
++ p->migration_disabled++;
+ return;
++ }
+
+- barrier();
++ preempt_disable();
++ this_rq()->nr_pinned++;
++ p->migration_disabled = 1;
++ preempt_enable();
+ }
+ EXPORT_SYMBOL_GPL(migrate_disable);
+
+@@ -1765,6 +1772,7 @@ void migrate_enable(void)
+ */
+ barrier();
+ p->migration_disabled = 0;
++ this_rq()->nr_pinned--;
+ preempt_enable();
+ }
+ EXPORT_SYMBOL_GPL(migrate_enable);
+@@ -1774,6 +1782,11 @@ static inline bool is_migration_disabled(struct task_struct *p)
+ return p->migration_disabled;
+ }
+
++static inline bool rq_has_pinned_tasks(struct rq *rq)
++{
++ return rq->nr_pinned;
++}
++
+ #endif
+
+ /*
+@@ -2705,6 +2718,11 @@ static inline bool is_migration_disabled(struct task_struct *p)
+ return false;
+ }
+
++static inline bool rq_has_pinned_tasks(struct rq *rq)
++{
++ return false;
++}
++
+ #endif
+
+ static void
+@@ -7064,15 +7082,20 @@ static void balance_push(struct rq *rq)
+ * Both the cpu-hotplug and stop task are in this case and are
+ * required to complete the hotplug process.
+ */
+- if (is_per_cpu_kthread(push_task)) {
++ if (is_per_cpu_kthread(push_task) || is_migration_disabled(push_task)) {
+ /*
+ * If this is the idle task on the outgoing CPU try to wake
+ * up the hotplug control thread which might wait for the
+ * last task to vanish. The rcuwait_active() check is
+ * accurate here because the waiter is pinned on this CPU
+ * and can't obviously be running in parallel.
++ *
++ * On RT kernels this also has to check whether there are
++ * pinned and scheduled out tasks on the runqueue. They
++ * need to leave the migrate disabled section first.
+ */
+- if (!rq->nr_running && rcuwait_active(&rq->hotplug_wait)) {
++ if (!rq->nr_running && !rq_has_pinned_tasks(rq) &&
++ rcuwait_active(&rq->hotplug_wait)) {
+ raw_spin_unlock(&rq->lock);
+ rcuwait_wake_up(&rq->hotplug_wait);
+ raw_spin_lock(&rq->lock);
+@@ -7119,7 +7142,8 @@ static void balance_hotplug_wait(void)
+ {
+ struct rq *rq = this_rq();
+
+- rcuwait_wait_event(&rq->hotplug_wait, rq->nr_running == 1,
++ rcuwait_wait_event(&rq->hotplug_wait,
++ rq->nr_running == 1 && !rq_has_pinned_tasks(rq),
+ TASK_UNINTERRUPTIBLE);
+ }
+
+@@ -7366,7 +7390,7 @@ int sched_cpu_dying(unsigned int cpu)
+ sched_tick_stop(cpu);
+
+ rq_lock_irqsave(rq, &rf);
+- BUG_ON(rq->nr_running != 1);
++ BUG_ON(rq->nr_running != 1 || rq_has_pinned_tasks(rq));
+ rq_unlock_irqrestore(rq, &rf);
+
+ calc_load_migrate(rq);
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index f3109adda484..8237c9ab2bb8 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -1057,6 +1057,10 @@ struct rq {
+ /* Must be inspected within a rcu lock section */
+ struct cpuidle_state *idle_state;
+ #endif
++
++#if defined(CONFIG_PREEMPT_RT) && defined(CONFIG_SMP)
++ unsigned int nr_pinned;
++#endif
+ };
+
+ #ifdef CONFIG_FAIR_GROUP_SCHED
+--
+2.43.0
+
diff --git a/debian/patches-rt/0013-sched-rt-Use-cpumask_any-_distribute.patch b/debian/patches-rt/0013-sched-rt-Use-cpumask_any-_distribute.patch
new file mode 100644
index 000000000..b190e58d4
--- /dev/null
+++ b/debian/patches-rt/0013-sched-rt-Use-cpumask_any-_distribute.patch
@@ -0,0 +1,121 @@
+From 0d3b4a8d9391d1eb1efb998bfcaff013a01466bf Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:10 +0200
+Subject: [PATCH 013/323] sched,rt: Use cpumask_any*_distribute()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Replace a bunch of cpumask_any*() instances with
+cpumask_any*_distribute(), by injecting this little bit of random in
+cpu selection, we reduce the chance two competing balance operations
+working off the same lowest_mask pick the same CPU.
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/cpumask.h | 6 ++++++
+ kernel/sched/deadline.c | 6 +++---
+ kernel/sched/rt.c | 6 +++---
+ lib/cpumask.c | 18 ++++++++++++++++++
+ 4 files changed, 30 insertions(+), 6 deletions(-)
+
+diff --git a/include/linux/cpumask.h b/include/linux/cpumask.h
+index f0d895d6ac39..383684e30f12 100644
+--- a/include/linux/cpumask.h
++++ b/include/linux/cpumask.h
+@@ -199,6 +199,11 @@ static inline int cpumask_any_and_distribute(const struct cpumask *src1p,
+ return cpumask_next_and(-1, src1p, src2p);
+ }
+
++static inline int cpumask_any_distribute(const struct cpumask *srcp)
++{
++ return cpumask_first(srcp);
++}
++
+ #define for_each_cpu(cpu, mask) \
+ for ((cpu) = 0; (cpu) < 1; (cpu)++, (void)mask)
+ #define for_each_cpu_not(cpu, mask) \
+@@ -252,6 +257,7 @@ int cpumask_any_but(const struct cpumask *mask, unsigned int cpu);
+ unsigned int cpumask_local_spread(unsigned int i, int node);
+ int cpumask_any_and_distribute(const struct cpumask *src1p,
+ const struct cpumask *src2p);
++int cpumask_any_distribute(const struct cpumask *srcp);
+
+ /**
+ * for_each_cpu - iterate over every cpu in a mask
+diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
+index 5566f157640b..e64d378e4e87 100644
+--- a/kernel/sched/deadline.c
++++ b/kernel/sched/deadline.c
+@@ -2012,8 +2012,8 @@ static int find_later_rq(struct task_struct *task)
+ return this_cpu;
+ }
+
+- best_cpu = cpumask_first_and(later_mask,
+- sched_domain_span(sd));
++ best_cpu = cpumask_any_and_distribute(later_mask,
++ sched_domain_span(sd));
+ /*
+ * Last chance: if a CPU being in both later_mask
+ * and current sd span is valid, that becomes our
+@@ -2035,7 +2035,7 @@ static int find_later_rq(struct task_struct *task)
+ if (this_cpu != -1)
+ return this_cpu;
+
+- cpu = cpumask_any(later_mask);
++ cpu = cpumask_any_distribute(later_mask);
+ if (cpu < nr_cpu_ids)
+ return cpu;
+
+diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c
+index fdcce04913db..695526a54a89 100644
+--- a/kernel/sched/rt.c
++++ b/kernel/sched/rt.c
+@@ -1766,8 +1766,8 @@ static int find_lowest_rq(struct task_struct *task)
+ return this_cpu;
+ }
+
+- best_cpu = cpumask_first_and(lowest_mask,
+- sched_domain_span(sd));
++ best_cpu = cpumask_any_and_distribute(lowest_mask,
++ sched_domain_span(sd));
+ if (best_cpu < nr_cpu_ids) {
+ rcu_read_unlock();
+ return best_cpu;
+@@ -1784,7 +1784,7 @@ static int find_lowest_rq(struct task_struct *task)
+ if (this_cpu != -1)
+ return this_cpu;
+
+- cpu = cpumask_any(lowest_mask);
++ cpu = cpumask_any_distribute(lowest_mask);
+ if (cpu < nr_cpu_ids)
+ return cpu;
+
+diff --git a/lib/cpumask.c b/lib/cpumask.c
+index fb22fb266f93..c3c76b833384 100644
+--- a/lib/cpumask.c
++++ b/lib/cpumask.c
+@@ -261,3 +261,21 @@ int cpumask_any_and_distribute(const struct cpumask *src1p,
+ return next;
+ }
+ EXPORT_SYMBOL(cpumask_any_and_distribute);
++
++int cpumask_any_distribute(const struct cpumask *srcp)
++{
++ int next, prev;
++
++ /* NOTE: our first selection will skip 0. */
++ prev = __this_cpu_read(distribute_cpu_mask_prev);
++
++ next = cpumask_next(prev, srcp);
++ if (next >= nr_cpu_ids)
++ next = cpumask_first(srcp);
++
++ if (next < nr_cpu_ids)
++ __this_cpu_write(distribute_cpu_mask_prev, next);
++
++ return next;
++}
++EXPORT_SYMBOL(cpumask_any_distribute);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0014-sched-rt-Use-the-full-cpumask-for-balancing.patch b/debian/patches-rt/0014-sched-rt-Use-the-full-cpumask-for-balancing.patch
new file mode 100644
index 000000000..c2817a0b7
--- /dev/null
+++ b/debian/patches-rt/0014-sched-rt-Use-the-full-cpumask-for-balancing.patch
@@ -0,0 +1,105 @@
+From 75c028b5537f7205cfe5aecf8cf6bb61ef1428f6 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:11 +0200
+Subject: [PATCH 014/323] sched,rt: Use the full cpumask for balancing
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+We want migrate_disable() tasks to get PULLs in order for them to PUSH
+away the higher priority task.
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/cpudeadline.c | 4 ++--
+ kernel/sched/cpupri.c | 4 ++--
+ kernel/sched/deadline.c | 4 ++--
+ kernel/sched/rt.c | 4 ++--
+ 4 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/kernel/sched/cpudeadline.c b/kernel/sched/cpudeadline.c
+index 8cb06c8c7eb1..ceb03d76c0cc 100644
+--- a/kernel/sched/cpudeadline.c
++++ b/kernel/sched/cpudeadline.c
+@@ -120,7 +120,7 @@ int cpudl_find(struct cpudl *cp, struct task_struct *p,
+ const struct sched_dl_entity *dl_se = &p->dl;
+
+ if (later_mask &&
+- cpumask_and(later_mask, cp->free_cpus, p->cpus_ptr)) {
++ cpumask_and(later_mask, cp->free_cpus, &p->cpus_mask)) {
+ unsigned long cap, max_cap = 0;
+ int cpu, max_cpu = -1;
+
+@@ -151,7 +151,7 @@ int cpudl_find(struct cpudl *cp, struct task_struct *p,
+
+ WARN_ON(best_cpu != -1 && !cpu_present(best_cpu));
+
+- if (cpumask_test_cpu(best_cpu, p->cpus_ptr) &&
++ if (cpumask_test_cpu(best_cpu, &p->cpus_mask) &&
+ dl_time_before(dl_se->deadline, cp->elements[0].dl)) {
+ if (later_mask)
+ cpumask_set_cpu(best_cpu, later_mask);
+diff --git a/kernel/sched/cpupri.c b/kernel/sched/cpupri.c
+index 0033731a0797..11c4df2010de 100644
+--- a/kernel/sched/cpupri.c
++++ b/kernel/sched/cpupri.c
+@@ -73,11 +73,11 @@ static inline int __cpupri_find(struct cpupri *cp, struct task_struct *p,
+ if (skip)
+ return 0;
+
+- if (cpumask_any_and(p->cpus_ptr, vec->mask) >= nr_cpu_ids)
++ if (cpumask_any_and(&p->cpus_mask, vec->mask) >= nr_cpu_ids)
+ return 0;
+
+ if (lowest_mask) {
+- cpumask_and(lowest_mask, p->cpus_ptr, vec->mask);
++ cpumask_and(lowest_mask, &p->cpus_mask, vec->mask);
+
+ /*
+ * We have to ensure that we have at least one bit
+diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
+index e64d378e4e87..94977a6ced8b 100644
+--- a/kernel/sched/deadline.c
++++ b/kernel/sched/deadline.c
+@@ -1922,7 +1922,7 @@ static void task_fork_dl(struct task_struct *p)
+ static int pick_dl_task(struct rq *rq, struct task_struct *p, int cpu)
+ {
+ if (!task_running(rq, p) &&
+- cpumask_test_cpu(cpu, p->cpus_ptr))
++ cpumask_test_cpu(cpu, &p->cpus_mask))
+ return 1;
+ return 0;
+ }
+@@ -2072,7 +2072,7 @@ static struct rq *find_lock_later_rq(struct task_struct *task, struct rq *rq)
+ /* Retry if something changed. */
+ if (double_lock_balance(rq, later_rq)) {
+ if (unlikely(task_rq(task) != rq ||
+- !cpumask_test_cpu(later_rq->cpu, task->cpus_ptr) ||
++ !cpumask_test_cpu(later_rq->cpu, &task->cpus_mask) ||
+ task_running(rq, task) ||
+ !dl_task(task) ||
+ !task_on_rq_queued(task))) {
+diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c
+index 695526a54a89..f91339c0dee8 100644
+--- a/kernel/sched/rt.c
++++ b/kernel/sched/rt.c
+@@ -1672,7 +1672,7 @@ static void put_prev_task_rt(struct rq *rq, struct task_struct *p)
+ static int pick_rt_task(struct rq *rq, struct task_struct *p, int cpu)
+ {
+ if (!task_running(rq, p) &&
+- cpumask_test_cpu(cpu, p->cpus_ptr))
++ cpumask_test_cpu(cpu, &p->cpus_mask))
+ return 1;
+
+ return 0;
+@@ -1825,7 +1825,7 @@ static struct rq *find_lock_lowest_rq(struct task_struct *task, struct rq *rq)
+ * Also make sure that it wasn't scheduled on its rq.
+ */
+ if (unlikely(task_rq(task) != rq ||
+- !cpumask_test_cpu(lowest_rq->cpu, task->cpus_ptr) ||
++ !cpumask_test_cpu(lowest_rq->cpu, &task->cpus_mask) ||
+ task_running(rq, task) ||
+ !rt_task(task) ||
+ !task_on_rq_queued(task))) {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0015-sched-lockdep-Annotate-pi_lock-recursion.patch b/debian/patches-rt/0015-sched-lockdep-Annotate-pi_lock-recursion.patch
new file mode 100644
index 000000000..05030516b
--- /dev/null
+++ b/debian/patches-rt/0015-sched-lockdep-Annotate-pi_lock-recursion.patch
@@ -0,0 +1,52 @@
+From c0e34a5ef4e854220a216e934ab90f04d4432bdd Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:12 +0200
+Subject: [PATCH 015/323] sched, lockdep: Annotate ->pi_lock recursion
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+There's a valid ->pi_lock recursion issue where the actual PI code
+tries to wake up the stop task. Make lockdep aware so it doesn't
+complain about this.
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 15 +++++++++++++++
+ 1 file changed, 15 insertions(+)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 2517a003295b..abbf01f77a76 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -2670,6 +2670,7 @@ int select_task_rq(struct task_struct *p, int cpu, int sd_flags, int wake_flags)
+
+ void sched_set_stop_task(int cpu, struct task_struct *stop)
+ {
++ static struct lock_class_key stop_pi_lock;
+ struct sched_param param = { .sched_priority = MAX_RT_PRIO - 1 };
+ struct task_struct *old_stop = cpu_rq(cpu)->stop;
+
+@@ -2685,6 +2686,20 @@ void sched_set_stop_task(int cpu, struct task_struct *stop)
+ sched_setscheduler_nocheck(stop, SCHED_FIFO, &param);
+
+ stop->sched_class = &stop_sched_class;
++
++ /*
++ * The PI code calls rt_mutex_setprio() with ->pi_lock held to
++ * adjust the effective priority of a task. As a result,
++ * rt_mutex_setprio() can trigger (RT) balancing operations,
++ * which can then trigger wakeups of the stop thread to push
++ * around the current task.
++ *
++ * The stop task itself will never be part of the PI-chain, it
++ * never blocks, therefore that ->pi_lock recursion is safe.
++ * Tell lockdep about this by placing the stop->pi_lock in its
++ * own class.
++ */
++ lockdep_set_class(&stop->pi_lock, &stop_pi_lock);
+ }
+
+ cpu_rq(cpu)->stop = stop;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0016-sched-Fix-migrate_disable-vs-rt-dl-balancing.patch b/debian/patches-rt/0016-sched-Fix-migrate_disable-vs-rt-dl-balancing.patch
new file mode 100644
index 000000000..b665e6d22
--- /dev/null
+++ b/debian/patches-rt/0016-sched-Fix-migrate_disable-vs-rt-dl-balancing.patch
@@ -0,0 +1,495 @@
+From 8121011ded919f172bbbc7f5c095ca29d83a5aed Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:13 +0200
+Subject: [PATCH 016/323] sched: Fix migrate_disable() vs rt/dl balancing
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+In order to minimize the interference of migrate_disable() on lower
+priority tasks, which can be deprived of runtime due to being stuck
+below a higher priority task. Teach the RT/DL balancers to push away
+these higher priority tasks when a lower priority task gets selected
+to run on a freshly demoted CPU (pull).
+
+This adds migration interference to the higher priority task, but
+restores bandwidth to system that would otherwise be irrevocably lost.
+Without this it would be possible to have all tasks on the system
+stuck on a single CPU, each task preempted in a migrate_disable()
+section with a single high priority task running.
+
+This way we can still approximate running the M highest priority tasks
+on the system.
+
+Migrating the top task away is (ofcourse) still subject to
+migrate_disable() too, which means the lower task is subject to an
+interference equivalent to the worst case migrate_disable() section.
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/preempt.h | 40 +++++++++++++-----------
+ include/linux/sched.h | 3 +-
+ kernel/sched/core.c | 67 +++++++++++++++++++++++++++++++++++------
+ kernel/sched/deadline.c | 29 +++++++++++++-----
+ kernel/sched/rt.c | 63 ++++++++++++++++++++++++++++++--------
+ kernel/sched/sched.h | 32 ++++++++++++++++++++
+ 6 files changed, 186 insertions(+), 48 deletions(-)
+
+diff --git a/include/linux/preempt.h b/include/linux/preempt.h
+index 97ba7c920653..8b43922e65df 100644
+--- a/include/linux/preempt.h
++++ b/include/linux/preempt.h
+@@ -325,24 +325,28 @@ static inline void preempt_notifier_init(struct preempt_notifier *notifier,
+ #if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
+
+ /*
+- * Migrate-Disable and why it is (strongly) undesired.
+- *
+- * The premise of the Real-Time schedulers we have on Linux
+- * (SCHED_FIFO/SCHED_DEADLINE) is that M CPUs can/will run M tasks
+- * concurrently, provided there are sufficient runnable tasks, also known as
+- * work-conserving. For instance SCHED_DEADLINE tries to schedule the M
+- * earliest deadline threads, and SCHED_FIFO the M highest priority threads.
+- *
+- * The correctness of various scheduling models depends on this, but is it
+- * broken by migrate_disable() that doesn't imply preempt_disable(). Where
+- * preempt_disable() implies an immediate priority ceiling, preemptible
+- * migrate_disable() allows nesting.
+- *
+- * The worst case is that all tasks preempt one another in a migrate_disable()
+- * region and stack on a single CPU. This then reduces the available bandwidth
+- * to a single CPU. And since Real-Time schedulability theory considers the
+- * Worst-Case only, all Real-Time analysis shall revert to single-CPU
+- * (instantly solving the SMP analysis problem).
++ * Migrate-Disable and why it is undesired.
++ *
++ * When a preempted task becomes elegible to run under the ideal model (IOW it
++ * becomes one of the M highest priority tasks), it might still have to wait
++ * for the preemptee's migrate_disable() section to complete. Thereby suffering
++ * a reduction in bandwidth in the exact duration of the migrate_disable()
++ * section.
++ *
++ * Per this argument, the change from preempt_disable() to migrate_disable()
++ * gets us:
++ *
++ * - a higher priority tasks gains reduced wake-up latency; with preempt_disable()
++ * it would have had to wait for the lower priority task.
++ *
++ * - a lower priority tasks; which under preempt_disable() could've instantly
++ * migrated away when another CPU becomes available, is now constrained
++ * by the ability to push the higher priority task away, which might itself be
++ * in a migrate_disable() section, reducing it's available bandwidth.
++ *
++ * IOW it trades latency / moves the interference term, but it stays in the
++ * system, and as long as it remains unbounded, the system is not fully
++ * deterministic.
+ *
+ *
+ * The reason we have it anyway.
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index 5b5c194f5a62..7ca1f3e740dd 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -728,8 +728,9 @@ struct task_struct {
+ cpumask_t cpus_mask;
+ void *migration_pending;
+ #if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
+- int migration_disabled;
++ unsigned short migration_disabled;
+ #endif
++ unsigned short migration_flags;
+
+ #ifdef CONFIG_PREEMPT_RCU
+ int rcu_read_lock_nesting;
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index abbf01f77a76..452fc1dfb143 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1777,11 +1777,6 @@ void migrate_enable(void)
+ }
+ EXPORT_SYMBOL_GPL(migrate_enable);
+
+-static inline bool is_migration_disabled(struct task_struct *p)
+-{
+- return p->migration_disabled;
+-}
+-
+ static inline bool rq_has_pinned_tasks(struct rq *rq)
+ {
+ return rq->nr_pinned;
+@@ -1986,6 +1981,49 @@ static int migration_cpu_stop(void *data)
+ return 0;
+ }
+
++int push_cpu_stop(void *arg)
++{
++ struct rq *lowest_rq = NULL, *rq = this_rq();
++ struct task_struct *p = arg;
++
++ raw_spin_lock_irq(&p->pi_lock);
++ raw_spin_lock(&rq->lock);
++
++ if (task_rq(p) != rq)
++ goto out_unlock;
++
++ if (is_migration_disabled(p)) {
++ p->migration_flags |= MDF_PUSH;
++ goto out_unlock;
++ }
++
++ p->migration_flags &= ~MDF_PUSH;
++
++ if (p->sched_class->find_lock_rq)
++ lowest_rq = p->sched_class->find_lock_rq(p, rq);
++
++ if (!lowest_rq)
++ goto out_unlock;
++
++ // XXX validate p is still the highest prio task
++ if (task_rq(p) == rq) {
++ deactivate_task(rq, p, 0);
++ set_task_cpu(p, lowest_rq->cpu);
++ activate_task(lowest_rq, p, 0);
++ resched_curr(lowest_rq);
++ }
++
++ double_unlock_balance(rq, lowest_rq);
++
++out_unlock:
++ rq->push_busy = false;
++ raw_spin_unlock(&rq->lock);
++ raw_spin_unlock_irq(&p->pi_lock);
++
++ put_task_struct(p);
++ return 0;
++}
++
+ /*
+ * sched_class::set_cpus_allowed must do the below, but is not required to
+ * actually call this function.
+@@ -2066,6 +2104,14 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+
+ /* Can the task run on the task's current CPU? If so, we're done */
+ if (cpumask_test_cpu(task_cpu(p), &p->cpus_mask)) {
++ struct task_struct *push_task = NULL;
++
++ if ((flags & SCA_MIGRATE_ENABLE) &&
++ (p->migration_flags & MDF_PUSH) && !rq->push_busy) {
++ rq->push_busy = true;
++ push_task = get_task_struct(p);
++ }
++
+ pending = p->migration_pending;
+ if (pending) {
+ refcount_inc(&pending->refs);
+@@ -2074,6 +2120,11 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ }
+ task_rq_unlock(rq, p, rf);
+
++ if (push_task) {
++ stop_one_cpu_nowait(rq->cpu, push_cpu_stop,
++ p, &rq->push_work);
++ }
++
+ if (complete)
+ goto do_complete;
+
+@@ -2110,6 +2161,7 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ if (flags & SCA_MIGRATE_ENABLE) {
+
+ refcount_inc(&pending->refs); /* pending->{arg,stop_work} */
++ p->migration_flags &= ~MDF_PUSH;
+ task_rq_unlock(rq, p, rf);
+
+ pending->arg = (struct migration_arg) {
+@@ -2728,11 +2780,6 @@ static inline int __set_cpus_allowed_ptr(struct task_struct *p,
+
+ static inline void migrate_disable_switch(struct rq *rq, struct task_struct *p) { }
+
+-static inline bool is_migration_disabled(struct task_struct *p)
+-{
+- return false;
+-}
+-
+ static inline bool rq_has_pinned_tasks(struct rq *rq)
+ {
+ return false;
+diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
+index 94977a6ced8b..7cf3248894a9 100644
+--- a/kernel/sched/deadline.c
++++ b/kernel/sched/deadline.c
+@@ -2139,6 +2139,9 @@ static int push_dl_task(struct rq *rq)
+ return 0;
+
+ retry:
++ if (is_migration_disabled(next_task))
++ return 0;
++
+ if (WARN_ON(next_task == rq->curr))
+ return 0;
+
+@@ -2216,7 +2219,7 @@ static void push_dl_tasks(struct rq *rq)
+ static void pull_dl_task(struct rq *this_rq)
+ {
+ int this_cpu = this_rq->cpu, cpu;
+- struct task_struct *p;
++ struct task_struct *p, *push_task;
+ bool resched = false;
+ struct rq *src_rq;
+ u64 dmin = LONG_MAX;
+@@ -2246,6 +2249,7 @@ static void pull_dl_task(struct rq *this_rq)
+ continue;
+
+ /* Might drop this_rq->lock */
++ push_task = NULL;
+ double_lock_balance(this_rq, src_rq);
+
+ /*
+@@ -2277,17 +2281,27 @@ static void pull_dl_task(struct rq *this_rq)
+ src_rq->curr->dl.deadline))
+ goto skip;
+
+- resched = true;
+-
+- deactivate_task(src_rq, p, 0);
+- set_task_cpu(p, this_cpu);
+- activate_task(this_rq, p, 0);
+- dmin = p->dl.deadline;
++ if (is_migration_disabled(p)) {
++ push_task = get_push_task(src_rq);
++ } else {
++ deactivate_task(src_rq, p, 0);
++ set_task_cpu(p, this_cpu);
++ activate_task(this_rq, p, 0);
++ dmin = p->dl.deadline;
++ resched = true;
++ }
+
+ /* Is there any other task even earlier? */
+ }
+ skip:
+ double_unlock_balance(this_rq, src_rq);
++
++ if (push_task) {
++ raw_spin_unlock(&this_rq->lock);
++ stop_one_cpu_nowait(src_rq->cpu, push_cpu_stop,
++ push_task, &src_rq->push_work);
++ raw_spin_lock(&this_rq->lock);
++ }
+ }
+
+ if (resched)
+@@ -2548,6 +2562,7 @@ const struct sched_class dl_sched_class
+ .rq_online = rq_online_dl,
+ .rq_offline = rq_offline_dl,
+ .task_woken = task_woken_dl,
++ .find_lock_rq = find_lock_later_rq,
+ #endif
+
+ .task_tick = task_tick_dl,
+diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c
+index f91339c0dee8..c25e35f41555 100644
+--- a/kernel/sched/rt.c
++++ b/kernel/sched/rt.c
+@@ -1873,7 +1873,7 @@ static struct task_struct *pick_next_pushable_task(struct rq *rq)
+ * running task can migrate over to a CPU that is running a task
+ * of lesser priority.
+ */
+-static int push_rt_task(struct rq *rq)
++static int push_rt_task(struct rq *rq, bool pull)
+ {
+ struct task_struct *next_task;
+ struct rq *lowest_rq;
+@@ -1887,6 +1887,34 @@ static int push_rt_task(struct rq *rq)
+ return 0;
+
+ retry:
++ if (is_migration_disabled(next_task)) {
++ struct task_struct *push_task = NULL;
++ int cpu;
++
++ if (!pull || rq->push_busy)
++ return 0;
++
++ cpu = find_lowest_rq(rq->curr);
++ if (cpu == -1 || cpu == rq->cpu)
++ return 0;
++
++ /*
++ * Given we found a CPU with lower priority than @next_task,
++ * therefore it should be running. However we cannot migrate it
++ * to this other CPU, instead attempt to push the current
++ * running task on this CPU away.
++ */
++ push_task = get_push_task(rq);
++ if (push_task) {
++ raw_spin_unlock(&rq->lock);
++ stop_one_cpu_nowait(rq->cpu, push_cpu_stop,
++ push_task, &rq->push_work);
++ raw_spin_lock(&rq->lock);
++ }
++
++ return 0;
++ }
++
+ if (WARN_ON(next_task == rq->curr))
+ return 0;
+
+@@ -1941,12 +1969,10 @@ static int push_rt_task(struct rq *rq)
+ deactivate_task(rq, next_task, 0);
+ set_task_cpu(next_task, lowest_rq->cpu);
+ activate_task(lowest_rq, next_task, 0);
+- ret = 1;
+-
+ resched_curr(lowest_rq);
++ ret = 1;
+
+ double_unlock_balance(rq, lowest_rq);
+-
+ out:
+ put_task_struct(next_task);
+
+@@ -1956,7 +1982,7 @@ static int push_rt_task(struct rq *rq)
+ static void push_rt_tasks(struct rq *rq)
+ {
+ /* push_rt_task will return true if it moved an RT */
+- while (push_rt_task(rq))
++ while (push_rt_task(rq, false))
+ ;
+ }
+
+@@ -2109,7 +2135,8 @@ void rto_push_irq_work_func(struct irq_work *work)
+ */
+ if (has_pushable_tasks(rq)) {
+ raw_spin_lock(&rq->lock);
+- push_rt_tasks(rq);
++ while (push_rt_task(rq, true))
++ ;
+ raw_spin_unlock(&rq->lock);
+ }
+
+@@ -2134,7 +2161,7 @@ static void pull_rt_task(struct rq *this_rq)
+ {
+ int this_cpu = this_rq->cpu, cpu;
+ bool resched = false;
+- struct task_struct *p;
++ struct task_struct *p, *push_task;
+ struct rq *src_rq;
+ int rt_overload_count = rt_overloaded(this_rq);
+
+@@ -2181,6 +2208,7 @@ static void pull_rt_task(struct rq *this_rq)
+ * double_lock_balance, and another CPU could
+ * alter this_rq
+ */
++ push_task = NULL;
+ double_lock_balance(this_rq, src_rq);
+
+ /*
+@@ -2208,11 +2236,14 @@ static void pull_rt_task(struct rq *this_rq)
+ if (p->prio < src_rq->curr->prio)
+ goto skip;
+
+- resched = true;
+-
+- deactivate_task(src_rq, p, 0);
+- set_task_cpu(p, this_cpu);
+- activate_task(this_rq, p, 0);
++ if (is_migration_disabled(p)) {
++ push_task = get_push_task(src_rq);
++ } else {
++ deactivate_task(src_rq, p, 0);
++ set_task_cpu(p, this_cpu);
++ activate_task(this_rq, p, 0);
++ resched = true;
++ }
+ /*
+ * We continue with the search, just in
+ * case there's an even higher prio task
+@@ -2222,6 +2253,13 @@ static void pull_rt_task(struct rq *this_rq)
+ }
+ skip:
+ double_unlock_balance(this_rq, src_rq);
++
++ if (push_task) {
++ raw_spin_unlock(&this_rq->lock);
++ stop_one_cpu_nowait(src_rq->cpu, push_cpu_stop,
++ push_task, &src_rq->push_work);
++ raw_spin_lock(&this_rq->lock);
++ }
+ }
+
+ if (resched)
+@@ -2470,6 +2508,7 @@ const struct sched_class rt_sched_class
+ .rq_offline = rq_offline_rt,
+ .task_woken = task_woken_rt,
+ .switched_from = switched_from_rt,
++ .find_lock_rq = find_lock_lowest_rq,
+ #endif
+
+ .task_tick = task_tick_rt,
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index 8237c9ab2bb8..69ef7cac3d29 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -1061,6 +1061,8 @@ struct rq {
+ #if defined(CONFIG_PREEMPT_RT) && defined(CONFIG_SMP)
+ unsigned int nr_pinned;
+ #endif
++ unsigned int push_busy;
++ struct cpu_stop_work push_work;
+ };
+
+ #ifdef CONFIG_FAIR_GROUP_SCHED
+@@ -1088,6 +1090,16 @@ static inline int cpu_of(struct rq *rq)
+ #endif
+ }
+
++#define MDF_PUSH 0x01
++
++static inline bool is_migration_disabled(struct task_struct *p)
++{
++#if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
++ return p->migration_disabled;
++#else
++ return false;
++#endif
++}
+
+ #ifdef CONFIG_SCHED_SMT
+ extern void __update_idle_core(struct rq *rq);
+@@ -1827,6 +1839,8 @@ struct sched_class {
+
+ void (*rq_online)(struct rq *rq);
+ void (*rq_offline)(struct rq *rq);
++
++ struct rq *(*find_lock_rq)(struct task_struct *p, struct rq *rq);
+ #endif
+
+ void (*task_tick)(struct rq *rq, struct task_struct *p, int queued);
+@@ -1922,6 +1936,24 @@ extern void trigger_load_balance(struct rq *rq);
+
+ extern void set_cpus_allowed_common(struct task_struct *p, const struct cpumask *new_mask, u32 flags);
+
++static inline struct task_struct *get_push_task(struct rq *rq)
++{
++ struct task_struct *p = rq->curr;
++
++ lockdep_assert_held(&rq->lock);
++
++ if (rq->push_busy)
++ return NULL;
++
++ if (p->nr_cpus_allowed == 1)
++ return NULL;
++
++ rq->push_busy = true;
++ return get_task_struct(p);
++}
++
++extern int push_cpu_stop(void *arg);
++
+ #endif
+
+ #ifdef CONFIG_CPU_IDLE
+--
+2.43.0
+
diff --git a/debian/patches-rt/0017-sched-proc-Print-accurate-cpumask-vs-migrate_disable.patch b/debian/patches-rt/0017-sched-proc-Print-accurate-cpumask-vs-migrate_disable.patch
new file mode 100644
index 000000000..44d87463d
--- /dev/null
+++ b/debian/patches-rt/0017-sched-proc-Print-accurate-cpumask-vs-migrate_disable.patch
@@ -0,0 +1,35 @@
+From e8ed7f739c2f8113927b0b3489bc357c36e27040 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:14 +0200
+Subject: [PATCH 017/323] sched/proc: Print accurate cpumask vs
+ migrate_disable()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Ensure /proc/*/status doesn't print 'random' cpumasks due to
+migrate_disable().
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ fs/proc/array.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/fs/proc/array.c b/fs/proc/array.c
+index 18a4588c35be..decaa7768044 100644
+--- a/fs/proc/array.c
++++ b/fs/proc/array.c
+@@ -384,9 +384,9 @@ static inline void task_context_switch_counts(struct seq_file *m,
+ static void task_cpus_allowed(struct seq_file *m, struct task_struct *task)
+ {
+ seq_printf(m, "Cpus_allowed:\t%*pb\n",
+- cpumask_pr_args(task->cpus_ptr));
++ cpumask_pr_args(&task->cpus_mask));
+ seq_printf(m, "Cpus_allowed_list:\t%*pbl\n",
+- cpumask_pr_args(task->cpus_ptr));
++ cpumask_pr_args(&task->cpus_mask));
+ }
+
+ static inline void task_core_dumping(struct seq_file *m, struct mm_struct *mm)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0018-sched-Add-migrate_disable-tracepoints.patch b/debian/patches-rt/0018-sched-Add-migrate_disable-tracepoints.patch
new file mode 100644
index 000000000..0f315ce9d
--- /dev/null
+++ b/debian/patches-rt/0018-sched-Add-migrate_disable-tracepoints.patch
@@ -0,0 +1,110 @@
+From 8b4906578ce683b9bce7df984b4179519152345f Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Fri, 23 Oct 2020 12:12:15 +0200
+Subject: [PATCH 018/323] sched: Add migrate_disable() tracepoints
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+XXX write a tracer:
+
+ - 'migirate_disable() -> migrate_enable()' time in task_sched_runtime()
+ - 'migrate_pull -> sched-in' time in task_sched_runtime()
+
+The first will give worst case for the second, which is the actual
+interference experienced by the task to due migration constraints of
+migrate_disable().
+
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/trace/events/sched.h | 12 ++++++++++++
+ kernel/sched/core.c | 4 ++++
+ kernel/sched/deadline.c | 1 +
+ kernel/sched/rt.c | 8 +++++++-
+ 4 files changed, 24 insertions(+), 1 deletion(-)
+
+diff --git a/include/trace/events/sched.h b/include/trace/events/sched.h
+index c96a4337afe6..e48f584abf5f 100644
+--- a/include/trace/events/sched.h
++++ b/include/trace/events/sched.h
+@@ -650,6 +650,18 @@ DECLARE_TRACE(sched_update_nr_running_tp,
+ TP_PROTO(struct rq *rq, int change),
+ TP_ARGS(rq, change));
+
++DECLARE_TRACE(sched_migrate_disable_tp,
++ TP_PROTO(struct task_struct *p),
++ TP_ARGS(p));
++
++DECLARE_TRACE(sched_migrate_enable_tp,
++ TP_PROTO(struct task_struct *p),
++ TP_ARGS(p));
++
++DECLARE_TRACE(sched_migrate_pull_tp,
++ TP_PROTO(struct task_struct *p),
++ TP_ARGS(p));
++
+ #endif /* _TRACE_SCHED_H */
+
+ /* This part must be outside protection */
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 452fc1dfb143..b5f35b512577 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1742,6 +1742,8 @@ void migrate_disable(void)
+ return;
+ }
+
++ trace_sched_migrate_disable_tp(p);
++
+ preempt_disable();
+ this_rq()->nr_pinned++;
+ p->migration_disabled = 1;
+@@ -1774,6 +1776,8 @@ void migrate_enable(void)
+ p->migration_disabled = 0;
+ this_rq()->nr_pinned--;
+ preempt_enable();
++
++ trace_sched_migrate_enable_tp(p);
+ }
+ EXPORT_SYMBOL_GPL(migrate_enable);
+
+diff --git a/kernel/sched/deadline.c b/kernel/sched/deadline.c
+index 7cf3248894a9..fcf546cd2eac 100644
+--- a/kernel/sched/deadline.c
++++ b/kernel/sched/deadline.c
+@@ -2282,6 +2282,7 @@ static void pull_dl_task(struct rq *this_rq)
+ goto skip;
+
+ if (is_migration_disabled(p)) {
++ trace_sched_migrate_pull_tp(p);
+ push_task = get_push_task(src_rq);
+ } else {
+ deactivate_task(src_rq, p, 0);
+diff --git a/kernel/sched/rt.c b/kernel/sched/rt.c
+index c25e35f41555..c5038d680c2c 100644
+--- a/kernel/sched/rt.c
++++ b/kernel/sched/rt.c
+@@ -1891,7 +1891,12 @@ static int push_rt_task(struct rq *rq, bool pull)
+ struct task_struct *push_task = NULL;
+ int cpu;
+
+- if (!pull || rq->push_busy)
++ if (!pull)
++ return 0;
++
++ trace_sched_migrate_pull_tp(next_task);
++
++ if (rq->push_busy)
+ return 0;
+
+ cpu = find_lowest_rq(rq->curr);
+@@ -2237,6 +2242,7 @@ static void pull_rt_task(struct rq *this_rq)
+ goto skip;
+
+ if (is_migration_disabled(p)) {
++ trace_sched_migrate_pull_tp(p);
+ push_task = get_push_task(src_rq);
+ } else {
+ deactivate_task(src_rq, p, 0);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0019-sched-Deny-self-issued-__set_cpus_allowed_ptr-when-m.patch b/debian/patches-rt/0019-sched-Deny-self-issued-__set_cpus_allowed_ptr-when-m.patch
new file mode 100644
index 000000000..ca7d5923b
--- /dev/null
+++ b/debian/patches-rt/0019-sched-Deny-self-issued-__set_cpus_allowed_ptr-when-m.patch
@@ -0,0 +1,46 @@
+From 5857482efa6b272402feb4b063c4273e70dd67fb Mon Sep 17 00:00:00 2001
+From: Valentin Schneider <valentin.schneider@arm.com>
+Date: Fri, 23 Oct 2020 12:12:16 +0200
+Subject: [PATCH 019/323] sched: Deny self-issued __set_cpus_allowed_ptr() when
+ migrate_disable()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+ migrate_disable();
+ set_cpus_allowed_ptr(current, {something excluding task_cpu(current)});
+ affine_move_task(); <-- never returns
+
+Signed-off-by: Valentin Schneider <valentin.schneider@arm.com>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Link: https://lkml.kernel.org/r/20201013140116.26651-1-valentin.schneider@arm.com
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 13 +++++++++++--
+ 1 file changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index b5f35b512577..3b7bb01eecc0 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -2254,8 +2254,17 @@ static int __set_cpus_allowed_ptr(struct task_struct *p,
+ goto out;
+ }
+
+- if (!(flags & SCA_MIGRATE_ENABLE) && cpumask_equal(&p->cpus_mask, new_mask))
+- goto out;
++ if (!(flags & SCA_MIGRATE_ENABLE)) {
++ if (cpumask_equal(&p->cpus_mask, new_mask))
++ goto out;
++
++ if (WARN_ON_ONCE(p == current &&
++ is_migration_disabled(p) &&
++ !cpumask_test_cpu(task_cpu(p), new_mask))) {
++ ret = -EBUSY;
++ goto out;
++ }
++ }
+
+ /*
+ * Picking a ~random cpu helps in cases where we are changing affinity
+--
+2.43.0
+
diff --git a/debian/patches-rt/0020-sched-Comment-affine_move_task.patch b/debian/patches-rt/0020-sched-Comment-affine_move_task.patch
new file mode 100644
index 000000000..ce16fe3bc
--- /dev/null
+++ b/debian/patches-rt/0020-sched-Comment-affine_move_task.patch
@@ -0,0 +1,130 @@
+From ef79ed54f47d3ce342809e4914f4d9cf400f1ae0 Mon Sep 17 00:00:00 2001
+From: Valentin Schneider <valentin.schneider@arm.com>
+Date: Fri, 23 Oct 2020 12:12:17 +0200
+Subject: [PATCH 020/323] sched: Comment affine_move_task()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Valentin Schneider <valentin.schneider@arm.com>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Link: https://lkml.kernel.org/r/20201013140116.26651-2-valentin.schneider@arm.com
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 81 +++++++++++++++++++++++++++++++++++++++++++--
+ 1 file changed, 79 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 3b7bb01eecc0..565d8011c832 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -2094,7 +2094,75 @@ void do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask)
+ }
+
+ /*
+- * This function is wildly self concurrent, consider at least 3 times.
++ * This function is wildly self concurrent; here be dragons.
++ *
++ *
++ * When given a valid mask, __set_cpus_allowed_ptr() must block until the
++ * designated task is enqueued on an allowed CPU. If that task is currently
++ * running, we have to kick it out using the CPU stopper.
++ *
++ * Migrate-Disable comes along and tramples all over our nice sandcastle.
++ * Consider:
++ *
++ * Initial conditions: P0->cpus_mask = [0, 1]
++ *
++ * P0@CPU0 P1
++ *
++ * migrate_disable();
++ * <preempted>
++ * set_cpus_allowed_ptr(P0, [1]);
++ *
++ * P1 *cannot* return from this set_cpus_allowed_ptr() call until P0 executes
++ * its outermost migrate_enable() (i.e. it exits its Migrate-Disable region).
++ * This means we need the following scheme:
++ *
++ * P0@CPU0 P1
++ *
++ * migrate_disable();
++ * <preempted>
++ * set_cpus_allowed_ptr(P0, [1]);
++ * <blocks>
++ * <resumes>
++ * migrate_enable();
++ * __set_cpus_allowed_ptr();
++ * <wakes local stopper>
++ * `--> <woken on migration completion>
++ *
++ * Now the fun stuff: there may be several P1-like tasks, i.e. multiple
++ * concurrent set_cpus_allowed_ptr(P0, [*]) calls. CPU affinity changes of any
++ * task p are serialized by p->pi_lock, which we can leverage: the one that
++ * should come into effect at the end of the Migrate-Disable region is the last
++ * one. This means we only need to track a single cpumask (i.e. p->cpus_mask),
++ * but we still need to properly signal those waiting tasks at the appropriate
++ * moment.
++ *
++ * This is implemented using struct set_affinity_pending. The first
++ * __set_cpus_allowed_ptr() caller within a given Migrate-Disable region will
++ * setup an instance of that struct and install it on the targeted task_struct.
++ * Any and all further callers will reuse that instance. Those then wait for
++ * a completion signaled at the tail of the CPU stopper callback (1), triggered
++ * on the end of the Migrate-Disable region (i.e. outermost migrate_enable()).
++ *
++ *
++ * (1) In the cases covered above. There is one more where the completion is
++ * signaled within affine_move_task() itself: when a subsequent affinity request
++ * cancels the need for an active migration. Consider:
++ *
++ * Initial conditions: P0->cpus_mask = [0, 1]
++ *
++ * P0@CPU0 P1 P2
++ *
++ * migrate_disable();
++ * <preempted>
++ * set_cpus_allowed_ptr(P0, [1]);
++ * <blocks>
++ * set_cpus_allowed_ptr(P0, [0, 1]);
++ * <signal completion>
++ * <awakes>
++ *
++ * Note that the above is safe vs a concurrent migrate_enable(), as any
++ * pending affinity completion is preceded an uninstallion of
++ * p->migration_pending done with p->pi_lock held.
+ */
+ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flags *rf,
+ int dest_cpu, unsigned int flags)
+@@ -2138,6 +2206,7 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ if (!(flags & SCA_MIGRATE_ENABLE)) {
+ /* serialized by p->pi_lock */
+ if (!p->migration_pending) {
++ /* Install the request */
+ refcount_set(&my_pending.refs, 1);
+ init_completion(&my_pending.done);
+ p->migration_pending = &my_pending;
+@@ -2181,7 +2250,11 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ }
+
+ if (task_running(rq, p) || p->state == TASK_WAKING) {
+-
++ /*
++ * Lessen races (and headaches) by delegating
++ * is_migration_disabled(p) checks to the stopper, which will
++ * run on the same CPU as said p.
++ */
+ task_rq_unlock(rq, p, rf);
+ stop_one_cpu(cpu_of(rq), migration_cpu_stop, &arg);
+
+@@ -2206,6 +2279,10 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ if (refcount_dec_and_test(&pending->refs))
+ wake_up_var(&pending->refs);
+
++ /*
++ * Block the original owner of &pending until all subsequent callers
++ * have seen the completion and decremented the refcount
++ */
+ wait_var_event(&my_pending.refs, !refcount_read(&my_pending.refs));
+
+ return 0;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0021-sched-Unlock-the-rq-in-affine_move_task-error-path.patch b/debian/patches-rt/0021-sched-Unlock-the-rq-in-affine_move_task-error-path.patch
new file mode 100644
index 000000000..bc78d7729
--- /dev/null
+++ b/debian/patches-rt/0021-sched-Unlock-the-rq-in-affine_move_task-error-path.patch
@@ -0,0 +1,34 @@
+From 9a34ae4ec3b4af5cc98c8405ea590096a1380af9 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Mon, 9 Nov 2020 15:54:03 +0100
+Subject: [PATCH 021/323] sched: Unlock the rq in affine_move_task() error path
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Unlock the rq if returned early in the error path.
+
+Reported-by: Joe Korty <joe.korty@concurrent-rt.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Link: https://lkml.kernel.org/r/20201106203921.GA48461@zipoli.concurrent-rt.com
+---
+ kernel/sched/core.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 565d8011c832..d12d91510789 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -2228,8 +2228,10 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ *
+ * Either way, we really should have a @pending here.
+ */
+- if (WARN_ON_ONCE(!pending))
++ if (WARN_ON_ONCE(!pending)) {
++ task_rq_unlock(rq, p, rf);
+ return -EINVAL;
++ }
+
+ if (flags & SCA_MIGRATE_ENABLE) {
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0022-sched-Fix-migration_cpu_stop-WARN.patch b/debian/patches-rt/0022-sched-Fix-migration_cpu_stop-WARN.patch
new file mode 100644
index 000000000..6f1a0cb21
--- /dev/null
+++ b/debian/patches-rt/0022-sched-Fix-migration_cpu_stop-WARN.patch
@@ -0,0 +1,47 @@
+From 09d09da2b8c97fd09f50deb278f9d4a25b99ad55 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Tue, 17 Nov 2020 12:14:51 +0100
+Subject: [PATCH 022/323] sched: Fix migration_cpu_stop() WARN
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Oleksandr reported hitting the WARN in the 'task_rq(p) != rq' branch
+of migration_cpu_stop(). Valentin noted that using cpu_of(rq) in that
+case is just plain wrong to begin with, since per the earlier branch
+that isn't the actual CPU of the task.
+
+Replace both instances of is_cpu_allowed() by a direct p->cpus_mask
+test using task_cpu().
+
+Reported-by: Oleksandr Natalenko <oleksandr@natalenko.name>
+Debugged-by: Valentin Schneider <valentin.schneider@arm.com>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index d12d91510789..7d67a0e03f9a 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1929,7 +1929,7 @@ static int migration_cpu_stop(void *data)
+ * and we should be valid again. Nothing to do.
+ */
+ if (!pending) {
+- WARN_ON_ONCE(!is_cpu_allowed(p, cpu_of(rq)));
++ WARN_ON_ONCE(!cpumask_test_cpu(task_cpu(p), &p->cpus_mask));
+ goto out;
+ }
+
+@@ -1957,7 +1957,7 @@ static int migration_cpu_stop(void *data)
+ * valid again. Nothing to do.
+ */
+ if (!pending) {
+- WARN_ON_ONCE(!is_cpu_allowed(p, cpu_of(rq)));
++ WARN_ON_ONCE(!cpumask_test_cpu(task_cpu(p), &p->cpus_mask));
+ goto out;
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0023-sched-core-Add-missing-completion-for-affine_move_ta.patch b/debian/patches-rt/0023-sched-core-Add-missing-completion-for-affine_move_ta.patch
new file mode 100644
index 000000000..19fcddc66
--- /dev/null
+++ b/debian/patches-rt/0023-sched-core-Add-missing-completion-for-affine_move_ta.patch
@@ -0,0 +1,79 @@
+From 5188e4c01f37c8c179cf88261297d546f5d2502e Mon Sep 17 00:00:00 2001
+From: Valentin Schneider <valentin.schneider@arm.com>
+Date: Fri, 13 Nov 2020 11:24:14 +0000
+Subject: [PATCH 023/323] sched/core: Add missing completion for
+ affine_move_task() waiters
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Qian reported that some fuzzer issuing sched_setaffinity() ends up stuck on
+a wait_for_completion(). The problematic pattern seems to be:
+
+ affine_move_task()
+ // task_running() case
+ stop_one_cpu();
+ wait_for_completion(&pending->done);
+
+Combined with, on the stopper side:
+
+ migration_cpu_stop()
+ // Task moved between unlocks and scheduling the stopper
+ task_rq(p) != rq &&
+ // task_running() case
+ dest_cpu >= 0
+
+ => no complete_all()
+
+This can happen with both PREEMPT and !PREEMPT, although !PREEMPT should
+be more likely to see this given the targeted task has a much bigger window
+to block and be woken up elsewhere before the stopper runs.
+
+Make migration_cpu_stop() always look at pending affinity requests; signal
+their completion if the stopper hits a rq mismatch but the task is
+still within its allowed mask. When Migrate-Disable isn't involved, this
+matches the previous set_cpus_allowed_ptr() vs migration_cpu_stop()
+behaviour.
+
+Fixes: 6d337eab041d ("sched: Fix migrate_disable() vs set_cpus_allowed_ptr()")
+Reported-by: Qian Cai <cai@redhat.com>
+Signed-off-by: Valentin Schneider <valentin.schneider@arm.com>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Link: https://lore.kernel.org/lkml/8b62fd1ad1b18def27f18e2ee2df3ff5b36d0762.camel@redhat.com
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/core.c | 13 ++++++++++++-
+ 1 file changed, 12 insertions(+), 1 deletion(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 7d67a0e03f9a..c1e52319669d 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1941,7 +1941,7 @@ static int migration_cpu_stop(void *data)
+ else
+ p->wake_cpu = dest_cpu;
+
+- } else if (dest_cpu < 0) {
++ } else if (dest_cpu < 0 || pending) {
+ /*
+ * This happens when we get migrated between migrate_enable()'s
+ * preempt_enable() and scheduling the stopper task. At that
+@@ -1951,6 +1951,17 @@ static int migration_cpu_stop(void *data)
+ * more likely.
+ */
+
++ /*
++ * The task moved before the stopper got to run. We're holding
++ * ->pi_lock, so the allowed mask is stable - if it got
++ * somewhere allowed, we're done.
++ */
++ if (pending && cpumask_test_cpu(task_cpu(p), p->cpus_ptr)) {
++ p->migration_pending = NULL;
++ complete = true;
++ goto out;
++ }
++
+ /*
+ * When this was migrate_enable() but we no longer have an
+ * @pending, a concurrent SCA 'fixed' things and we should be
+--
+2.43.0
+
diff --git a/debian/patches-rt/0024-mm-highmem-Un-EXPORT-__kmap_atomic_idx.patch b/debian/patches-rt/0024-mm-highmem-Un-EXPORT-__kmap_atomic_idx.patch
new file mode 100644
index 000000000..ba252d03e
--- /dev/null
+++ b/debian/patches-rt/0024-mm-highmem-Un-EXPORT-__kmap_atomic_idx.patch
@@ -0,0 +1,33 @@
+From 44027cc10df8025d820ea864076dae75fb26626d Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:13 +0100
+Subject: [PATCH 024/323] mm/highmem: Un-EXPORT __kmap_atomic_idx()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Nothing in modules can use that.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Christoph Hellwig <hch@lst.de>
+Cc: Andrew Morton <akpm@linux-foundation.org>
+Cc: linux-mm@kvack.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/highmem.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/mm/highmem.c b/mm/highmem.c
+index 1352a27951e3..6abfd762eee7 100644
+--- a/mm/highmem.c
++++ b/mm/highmem.c
+@@ -108,8 +108,6 @@ static inline wait_queue_head_t *get_pkmap_wait_queue_head(unsigned int color)
+ atomic_long_t _totalhigh_pages __read_mostly;
+ EXPORT_SYMBOL(_totalhigh_pages);
+
+-EXPORT_PER_CPU_SYMBOL(__kmap_atomic_idx);
+-
+ unsigned int nr_free_highpages (void)
+ {
+ struct zone *zone;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0025-highmem-Remove-unused-functions.patch b/debian/patches-rt/0025-highmem-Remove-unused-functions.patch
new file mode 100644
index 000000000..55deed269
--- /dev/null
+++ b/debian/patches-rt/0025-highmem-Remove-unused-functions.patch
@@ -0,0 +1,43 @@
+From 2060c9ea726ebd649d8d2e596fa2acebef644cd8 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:14 +0100
+Subject: [PATCH 025/323] highmem: Remove unused functions
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Nothing uses totalhigh_pages_dec() and totalhigh_pages_set().
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/highmem.h | 10 ----------
+ 1 file changed, 10 deletions(-)
+
+diff --git a/include/linux/highmem.h b/include/linux/highmem.h
+index b25df1f8d48d..3297bfca78ed 100644
+--- a/include/linux/highmem.h
++++ b/include/linux/highmem.h
+@@ -104,21 +104,11 @@ static inline void totalhigh_pages_inc(void)
+ atomic_long_inc(&_totalhigh_pages);
+ }
+
+-static inline void totalhigh_pages_dec(void)
+-{
+- atomic_long_dec(&_totalhigh_pages);
+-}
+-
+ static inline void totalhigh_pages_add(long count)
+ {
+ atomic_long_add(count, &_totalhigh_pages);
+ }
+
+-static inline void totalhigh_pages_set(long val)
+-{
+- atomic_long_set(&_totalhigh_pages, val);
+-}
+-
+ void kmap_flush_unused(void);
+
+ struct page *kmap_to_page(void *addr);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0026-fs-Remove-asm-kmap_types.h-includes.patch b/debian/patches-rt/0026-fs-Remove-asm-kmap_types.h-includes.patch
new file mode 100644
index 000000000..3cbd4847e
--- /dev/null
+++ b/debian/patches-rt/0026-fs-Remove-asm-kmap_types.h-includes.patch
@@ -0,0 +1,50 @@
+From 280d9322736bea3870ae507592e1d2880bff8bd9 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:15 +0100
+Subject: [PATCH 026/323] fs: Remove asm/kmap_types.h includes
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Historical leftovers from the time where kmap() had fixed slots.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Alexander Viro <viro@zeniv.linux.org.uk>
+Cc: Benjamin LaHaise <bcrl@kvack.org>
+Cc: linux-fsdevel@vger.kernel.org
+Cc: linux-aio@kvack.org
+Cc: Chris Mason <clm@fb.com>
+Cc: Josef Bacik <josef@toxicpanda.com>
+Cc: David Sterba <dsterba@suse.com>
+Cc: linux-btrfs@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ fs/aio.c | 1 -
+ fs/btrfs/ctree.h | 1 -
+ 2 files changed, 2 deletions(-)
+
+diff --git a/fs/aio.c b/fs/aio.c
+index 5934ea84b499..c90e045a37bc 100644
+--- a/fs/aio.c
++++ b/fs/aio.c
+@@ -43,7 +43,6 @@
+ #include <linux/mount.h>
+ #include <linux/pseudo_fs.h>
+
+-#include <asm/kmap_types.h>
+ #include <linux/uaccess.h>
+ #include <linux/nospec.h>
+
+diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
+index 67831868ef0d..17c920aa6bc2 100644
+--- a/fs/btrfs/ctree.h
++++ b/fs/btrfs/ctree.h
+@@ -17,7 +17,6 @@
+ #include <linux/wait.h>
+ #include <linux/slab.h>
+ #include <trace/events/btrfs.h>
+-#include <asm/kmap_types.h>
+ #include <asm/unaligned.h>
+ #include <linux/pagemap.h>
+ #include <linux/btrfs.h>
+--
+2.43.0
+
diff --git a/debian/patches-rt/0027-sh-highmem-Remove-all-traces-of-unused-cruft.patch b/debian/patches-rt/0027-sh-highmem-Remove-all-traces-of-unused-cruft.patch
new file mode 100644
index 000000000..bcf3a9b1f
--- /dev/null
+++ b/debian/patches-rt/0027-sh-highmem-Remove-all-traces-of-unused-cruft.patch
@@ -0,0 +1,94 @@
+From 61e1ac8c3bd29dec41ae2f631bb142e26b790de2 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:16 +0100
+Subject: [PATCH 027/323] sh/highmem: Remove all traces of unused cruft
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+For whatever reasons SH has highmem bits all over the place but does
+not enable it via Kconfig. Remove the bitrot.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/sh/include/asm/fixmap.h | 8 --------
+ arch/sh/include/asm/kmap_types.h | 15 ---------------
+ arch/sh/mm/init.c | 8 --------
+ 3 files changed, 31 deletions(-)
+ delete mode 100644 arch/sh/include/asm/kmap_types.h
+
+diff --git a/arch/sh/include/asm/fixmap.h b/arch/sh/include/asm/fixmap.h
+index f38adc189b83..b07fbc7f7bc6 100644
+--- a/arch/sh/include/asm/fixmap.h
++++ b/arch/sh/include/asm/fixmap.h
+@@ -13,9 +13,6 @@
+ #include <linux/kernel.h>
+ #include <linux/threads.h>
+ #include <asm/page.h>
+-#ifdef CONFIG_HIGHMEM
+-#include <asm/kmap_types.h>
+-#endif
+
+ /*
+ * Here we define all the compile-time 'special' virtual
+@@ -53,11 +50,6 @@ enum fixed_addresses {
+ FIX_CMAP_BEGIN,
+ FIX_CMAP_END = FIX_CMAP_BEGIN + (FIX_N_COLOURS * NR_CPUS) - 1,
+
+-#ifdef CONFIG_HIGHMEM
+- FIX_KMAP_BEGIN, /* reserved pte's for temporary kernel mappings */
+- FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_TYPE_NR * NR_CPUS) - 1,
+-#endif
+-
+ #ifdef CONFIG_IOREMAP_FIXED
+ /*
+ * FIX_IOREMAP entries are useful for mapping physical address
+diff --git a/arch/sh/include/asm/kmap_types.h b/arch/sh/include/asm/kmap_types.h
+deleted file mode 100644
+index b78107f923dd..000000000000
+--- a/arch/sh/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,15 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-#ifndef __SH_KMAP_TYPES_H
+-#define __SH_KMAP_TYPES_H
+-
+-/* Dummy header just to define km_type. */
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+-#define __WITH_KM_FENCE
+-#endif
+-
+-#include <asm-generic/kmap_types.h>
+-
+-#undef __WITH_KM_FENCE
+-
+-#endif
+diff --git a/arch/sh/mm/init.c b/arch/sh/mm/init.c
+index 3348e0c4d769..0db6919af8d3 100644
+--- a/arch/sh/mm/init.c
++++ b/arch/sh/mm/init.c
+@@ -362,9 +362,6 @@ void __init mem_init(void)
+ mem_init_print_info(NULL);
+ pr_info("virtual kernel memory layout:\n"
+ " fixmap : 0x%08lx - 0x%08lx (%4ld kB)\n"
+-#ifdef CONFIG_HIGHMEM
+- " pkmap : 0x%08lx - 0x%08lx (%4ld kB)\n"
+-#endif
+ " vmalloc : 0x%08lx - 0x%08lx (%4ld MB)\n"
+ " lowmem : 0x%08lx - 0x%08lx (%4ld MB) (cached)\n"
+ #ifdef CONFIG_UNCACHED_MAPPING
+@@ -376,11 +373,6 @@ void __init mem_init(void)
+ FIXADDR_START, FIXADDR_TOP,
+ (FIXADDR_TOP - FIXADDR_START) >> 10,
+
+-#ifdef CONFIG_HIGHMEM
+- PKMAP_BASE, PKMAP_BASE+LAST_PKMAP*PAGE_SIZE,
+- (LAST_PKMAP*PAGE_SIZE) >> 10,
+-#endif
+-
+ (unsigned long)VMALLOC_START, VMALLOC_END,
+ (VMALLOC_END - VMALLOC_START) >> 20,
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0028-asm-generic-Provide-kmap_size.h.patch b/debian/patches-rt/0028-asm-generic-Provide-kmap_size.h.patch
new file mode 100644
index 000000000..bb5d5f717
--- /dev/null
+++ b/debian/patches-rt/0028-asm-generic-Provide-kmap_size.h.patch
@@ -0,0 +1,70 @@
+From 5ed7d8c8905e639e711f1a21e5f978fc21585f8c Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:17 +0100
+Subject: [PATCH 028/323] asm-generic: Provide kmap_size.h
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+kmap_types.h is a misnomer because the old atomic MAP based array does not
+exist anymore and the whole indirection of architectures including
+kmap_types.h is inconinstent and does not allow to provide guard page
+debugging for this misfeature.
+
+Add a common header file which defines the mapping stack size for all
+architectures. Will be used when converting architectures over to a
+generic kmap_local/atomic implementation.
+
+The array size is chosen with the following constraints in mind:
+
+ - The deepest nest level in one context is 3 according to code
+ inspection.
+
+ - The worst case nesting for the upcoming reemptible version would be:
+
+ 2 maps in task context and a fault inside
+ 2 maps in the fault handler
+ 3 maps in softirq
+ 2 maps in interrupt
+
+So a total of 16 is sufficient and probably overestimated.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/asm-generic/Kbuild | 1 +
+ include/asm-generic/kmap_size.h | 12 ++++++++++++
+ 2 files changed, 13 insertions(+)
+ create mode 100644 include/asm-generic/kmap_size.h
+
+diff --git a/include/asm-generic/Kbuild b/include/asm-generic/Kbuild
+index d1300c6e0a47..3114a6da7e56 100644
+--- a/include/asm-generic/Kbuild
++++ b/include/asm-generic/Kbuild
+@@ -31,6 +31,7 @@ mandatory-y += irq_regs.h
+ mandatory-y += irq_work.h
+ mandatory-y += kdebug.h
+ mandatory-y += kmap_types.h
++mandatory-y += kmap_size.h
+ mandatory-y += kprobes.h
+ mandatory-y += linkage.h
+ mandatory-y += local.h
+diff --git a/include/asm-generic/kmap_size.h b/include/asm-generic/kmap_size.h
+new file mode 100644
+index 000000000000..9d6c7786a645
+--- /dev/null
++++ b/include/asm-generic/kmap_size.h
+@@ -0,0 +1,12 @@
++/* SPDX-License-Identifier: GPL-2.0 */
++#ifndef _ASM_GENERIC_KMAP_SIZE_H
++#define _ASM_GENERIC_KMAP_SIZE_H
++
++/* For debug this provides guard pages between the maps */
++#ifdef CONFIG_DEBUG_HIGHMEM
++# define KM_MAX_IDX 33
++#else
++# define KM_MAX_IDX 16
++#endif
++
++#endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0029-highmem-Provide-generic-variant-of-kmap_atomic.patch b/debian/patches-rt/0029-highmem-Provide-generic-variant-of-kmap_atomic.patch
new file mode 100644
index 000000000..828708904
--- /dev/null
+++ b/debian/patches-rt/0029-highmem-Provide-generic-variant-of-kmap_atomic.patch
@@ -0,0 +1,346 @@
+From 4e1b14787f7a2c71a9347db23c402f5dbe2da206 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:18 +0100
+Subject: [PATCH 029/323] highmem: Provide generic variant of kmap_atomic*
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The kmap_atomic* interfaces in all architectures are pretty much the same
+except for post map operations (flush) and pre- and post unmap operations.
+
+Provide a generic variant for that.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Andrew Morton <akpm@linux-foundation.org>
+Cc: linux-mm@kvack.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/highmem.h | 82 ++++++++++++++++++-----
+ mm/Kconfig | 3 +
+ mm/highmem.c | 144 +++++++++++++++++++++++++++++++++++++++-
+ 3 files changed, 211 insertions(+), 18 deletions(-)
+
+diff --git a/include/linux/highmem.h b/include/linux/highmem.h
+index 3297bfca78ed..14d5b4020c8c 100644
+--- a/include/linux/highmem.h
++++ b/include/linux/highmem.h
+@@ -31,9 +31,16 @@ static inline void invalidate_kernel_vmap_range(void *vaddr, int size)
+
+ #include <asm/kmap_types.h>
+
++/*
++ * Outside of CONFIG_HIGHMEM to support X86 32bit iomap_atomic() cruft.
++ */
++#ifdef CONFIG_KMAP_LOCAL
++void *__kmap_local_pfn_prot(unsigned long pfn, pgprot_t prot);
++void *__kmap_local_page_prot(struct page *page, pgprot_t prot);
++void kunmap_local_indexed(void *vaddr);
++#endif
++
+ #ifdef CONFIG_HIGHMEM
+-extern void *kmap_atomic_high_prot(struct page *page, pgprot_t prot);
+-extern void kunmap_atomic_high(void *kvaddr);
+ #include <asm/highmem.h>
+
+ #ifndef ARCH_HAS_KMAP_FLUSH_TLB
+@@ -81,6 +88,11 @@ static inline void kunmap(struct page *page)
+ * be used in IRQ contexts, so in some (very limited) cases we need
+ * it.
+ */
++
++#ifndef CONFIG_KMAP_LOCAL
++void *kmap_atomic_high_prot(struct page *page, pgprot_t prot);
++void kunmap_atomic_high(void *kvaddr);
++
+ static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
+ {
+ preempt_disable();
+@@ -89,7 +101,38 @@ static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
+ return page_address(page);
+ return kmap_atomic_high_prot(page, prot);
+ }
+-#define kmap_atomic(page) kmap_atomic_prot(page, kmap_prot)
++
++static inline void __kunmap_atomic(void *vaddr)
++{
++ kunmap_atomic_high(vaddr);
++}
++#else /* !CONFIG_KMAP_LOCAL */
++
++static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
++{
++ preempt_disable();
++ pagefault_disable();
++ return __kmap_local_page_prot(page, prot);
++}
++
++static inline void *kmap_atomic_pfn(unsigned long pfn)
++{
++ preempt_disable();
++ pagefault_disable();
++ return __kmap_local_pfn_prot(pfn, kmap_prot);
++}
++
++static inline void __kunmap_atomic(void *addr)
++{
++ kunmap_local_indexed(addr);
++}
++
++#endif /* CONFIG_KMAP_LOCAL */
++
++static inline void *kmap_atomic(struct page *page)
++{
++ return kmap_atomic_prot(page, kmap_prot);
++}
+
+ /* declarations for linux/mm/highmem.c */
+ unsigned int nr_free_highpages(void);
+@@ -147,25 +190,33 @@ static inline void *kmap_atomic(struct page *page)
+ pagefault_disable();
+ return page_address(page);
+ }
+-#define kmap_atomic_prot(page, prot) kmap_atomic(page)
+
+-static inline void kunmap_atomic_high(void *addr)
++static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
++{
++ return kmap_atomic(page);
++}
++
++static inline void *kmap_atomic_pfn(unsigned long pfn)
++{
++ return kmap_atomic(pfn_to_page(pfn));
++}
++
++static inline void __kunmap_atomic(void *addr)
+ {
+ /*
+ * Mostly nothing to do in the CONFIG_HIGHMEM=n case as kunmap_atomic()
+- * handles re-enabling faults + preemption
++ * handles re-enabling faults and preemption
+ */
+ #ifdef ARCH_HAS_FLUSH_ON_KUNMAP
+ kunmap_flush_on_unmap(addr);
+ #endif
+ }
+
+-#define kmap_atomic_pfn(pfn) kmap_atomic(pfn_to_page(pfn))
+-
+ #define kmap_flush_unused() do {} while(0)
+
+ #endif /* CONFIG_HIGHMEM */
+
++#if !defined(CONFIG_KMAP_LOCAL)
+ #if defined(CONFIG_HIGHMEM) || defined(CONFIG_X86_32)
+
+ DECLARE_PER_CPU(int, __kmap_atomic_idx);
+@@ -196,22 +247,21 @@ static inline void kmap_atomic_idx_pop(void)
+ __this_cpu_dec(__kmap_atomic_idx);
+ #endif
+ }
+-
++#endif
+ #endif
+
+ /*
+ * Prevent people trying to call kunmap_atomic() as if it were kunmap()
+ * kunmap_atomic() should get the return value of kmap_atomic, not the page.
+ */
+-#define kunmap_atomic(addr) \
+-do { \
+- BUILD_BUG_ON(__same_type((addr), struct page *)); \
+- kunmap_atomic_high(addr); \
+- pagefault_enable(); \
+- preempt_enable(); \
++#define kunmap_atomic(__addr) \
++do { \
++ BUILD_BUG_ON(__same_type((__addr), struct page *)); \
++ __kunmap_atomic(__addr); \
++ pagefault_enable(); \
++ preempt_enable(); \
+ } while (0)
+
+-
+ /* when CONFIG_HIGHMEM is not set these will be plain clear/copy_page */
+ #ifndef clear_user_highpage
+ static inline void clear_user_highpage(struct page *page, unsigned long vaddr)
+diff --git a/mm/Kconfig b/mm/Kconfig
+index 390165ffbb0f..8c49d09da214 100644
+--- a/mm/Kconfig
++++ b/mm/Kconfig
+@@ -859,4 +859,7 @@ config ARCH_HAS_HUGEPD
+ config MAPPING_DIRTY_HELPERS
+ bool
+
++config KMAP_LOCAL
++ bool
++
+ endmenu
+diff --git a/mm/highmem.c b/mm/highmem.c
+index 6abfd762eee7..bb4ce13ee7e7 100644
+--- a/mm/highmem.c
++++ b/mm/highmem.c
+@@ -31,9 +31,11 @@
+ #include <asm/tlbflush.h>
+ #include <linux/vmalloc.h>
+
++#ifndef CONFIG_KMAP_LOCAL
+ #if defined(CONFIG_HIGHMEM) || defined(CONFIG_X86_32)
+ DEFINE_PER_CPU(int, __kmap_atomic_idx);
+ #endif
++#endif
+
+ /*
+ * Virtual_count is not a pure "count".
+@@ -365,9 +367,147 @@ void kunmap_high(struct page *page)
+ if (need_wakeup)
+ wake_up(pkmap_map_wait);
+ }
+-
+ EXPORT_SYMBOL(kunmap_high);
+-#endif /* CONFIG_HIGHMEM */
++#endif /* CONFIG_HIGHMEM */
++
++#ifdef CONFIG_KMAP_LOCAL
++
++#include <asm/kmap_size.h>
++
++static DEFINE_PER_CPU(int, __kmap_local_idx);
++
++static inline int kmap_local_idx_push(void)
++{
++ int idx = __this_cpu_inc_return(__kmap_local_idx) - 1;
++
++ WARN_ON_ONCE(in_irq() && !irqs_disabled());
++ BUG_ON(idx >= KM_MAX_IDX);
++ return idx;
++}
++
++static inline int kmap_local_idx(void)
++{
++ return __this_cpu_read(__kmap_local_idx) - 1;
++}
++
++static inline void kmap_local_idx_pop(void)
++{
++ int idx = __this_cpu_dec_return(__kmap_local_idx);
++
++ BUG_ON(idx < 0);
++}
++
++#ifndef arch_kmap_local_post_map
++# define arch_kmap_local_post_map(vaddr, pteval) do { } while (0)
++#endif
++#ifndef arch_kmap_local_pre_unmap
++# define arch_kmap_local_pre_unmap(vaddr) do { } while (0)
++#endif
++
++#ifndef arch_kmap_local_post_unmap
++# define arch_kmap_local_post_unmap(vaddr) do { } while (0)
++#endif
++
++#ifndef arch_kmap_local_map_idx
++#define arch_kmap_local_map_idx(idx, pfn) kmap_local_calc_idx(idx)
++#endif
++
++#ifndef arch_kmap_local_unmap_idx
++#define arch_kmap_local_unmap_idx(idx, vaddr) kmap_local_calc_idx(idx)
++#endif
++
++#ifndef arch_kmap_local_high_get
++static inline void *arch_kmap_local_high_get(struct page *page)
++{
++ return NULL;
++}
++#endif
++
++/* Unmap a local mapping which was obtained by kmap_high_get() */
++static inline void kmap_high_unmap_local(unsigned long vaddr)
++{
++#ifdef ARCH_NEEDS_KMAP_HIGH_GET
++ if (vaddr >= PKMAP_ADDR(0) && vaddr < PKMAP_ADDR(LAST_PKMAP))
++ kunmap_high(pte_page(pkmap_page_table[PKMAP_NR(vaddr)]));
++#endif
++}
++
++static inline int kmap_local_calc_idx(int idx)
++{
++ return idx + KM_MAX_IDX * smp_processor_id();
++}
++
++static pte_t *__kmap_pte;
++
++static pte_t *kmap_get_pte(void)
++{
++ if (!__kmap_pte)
++ __kmap_pte = virt_to_kpte(__fix_to_virt(FIX_KMAP_BEGIN));
++ return __kmap_pte;
++}
++
++void *__kmap_local_pfn_prot(unsigned long pfn, pgprot_t prot)
++{
++ pte_t pteval, *kmap_pte = kmap_get_pte();
++ unsigned long vaddr;
++ int idx;
++
++ preempt_disable();
++ idx = arch_kmap_local_map_idx(kmap_local_idx_push(), pfn);
++ vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
++ BUG_ON(!pte_none(*(kmap_pte - idx)));
++ pteval = pfn_pte(pfn, prot);
++ set_pte_at(&init_mm, vaddr, kmap_pte - idx, pteval);
++ arch_kmap_local_post_map(vaddr, pteval);
++ preempt_enable();
++
++ return (void *)vaddr;
++}
++EXPORT_SYMBOL_GPL(__kmap_local_pfn_prot);
++
++void *__kmap_local_page_prot(struct page *page, pgprot_t prot)
++{
++ void *kmap;
++
++ if (!PageHighMem(page))
++ return page_address(page);
++
++ /* Try kmap_high_get() if architecture has it enabled */
++ kmap = arch_kmap_local_high_get(page);
++ if (kmap)
++ return kmap;
++
++ return __kmap_local_pfn_prot(page_to_pfn(page), prot);
++}
++EXPORT_SYMBOL(__kmap_local_page_prot);
++
++void kunmap_local_indexed(void *vaddr)
++{
++ unsigned long addr = (unsigned long) vaddr & PAGE_MASK;
++ pte_t *kmap_pte = kmap_get_pte();
++ int idx;
++
++ if (addr < __fix_to_virt(FIX_KMAP_END) ||
++ addr > __fix_to_virt(FIX_KMAP_BEGIN)) {
++ WARN_ON_ONCE(addr < PAGE_OFFSET);
++
++ /* Handle mappings which were obtained by kmap_high_get() */
++ kmap_high_unmap_local(addr);
++ return;
++ }
++
++ preempt_disable();
++ idx = arch_kmap_local_unmap_idx(kmap_local_idx(), addr);
++ WARN_ON_ONCE(addr != __fix_to_virt(FIX_KMAP_BEGIN + idx));
++
++ arch_kmap_local_pre_unmap(addr);
++ pte_clear(&init_mm, addr, kmap_pte - idx);
++ arch_kmap_local_post_unmap(addr);
++ kmap_local_idx_pop();
++ preempt_enable();
++}
++EXPORT_SYMBOL(kunmap_local_indexed);
++#endif
+
+ #if defined(HASHED_PAGE_VIRTUAL)
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0030-highmem-Make-DEBUG_HIGHMEM-functional.patch b/debian/patches-rt/0030-highmem-Make-DEBUG_HIGHMEM-functional.patch
new file mode 100644
index 000000000..139157832
--- /dev/null
+++ b/debian/patches-rt/0030-highmem-Make-DEBUG_HIGHMEM-functional.patch
@@ -0,0 +1,61 @@
+From 4c9348bc5b225c2de1552b059787335345d30d2c Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:19 +0100
+Subject: [PATCH 030/323] highmem: Make DEBUG_HIGHMEM functional
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+For some obscure reason when CONFIG_DEBUG_HIGHMEM is enabled the stack
+depth is increased from 20 to 41. But the only thing DEBUG_HIGHMEM does is
+to enable a few BUG_ON()'s in the mapping code.
+
+That's a leftover from the historical mapping code which had fixed entries
+for various purposes. DEBUG_HIGHMEM inserted guard mappings between the map
+types. But that got all ditched when kmap_atomic() switched to a stack
+based map management. Though the WITH_KM_FENCE magic survived without being
+functional. All the thing does today is to increase the stack depth.
+
+Add a working implementation to the generic kmap_local* implementation.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/highmem.c | 14 ++++++++++++--
+ 1 file changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/mm/highmem.c b/mm/highmem.c
+index bb4ce13ee7e7..67d2d5983cb0 100644
+--- a/mm/highmem.c
++++ b/mm/highmem.c
+@@ -376,9 +376,19 @@ EXPORT_SYMBOL(kunmap_high);
+
+ static DEFINE_PER_CPU(int, __kmap_local_idx);
+
++/*
++ * With DEBUG_HIGHMEM the stack depth is doubled and every second
++ * slot is unused which acts as a guard page
++ */
++#ifdef CONFIG_DEBUG_HIGHMEM
++# define KM_INCR 2
++#else
++# define KM_INCR 1
++#endif
++
+ static inline int kmap_local_idx_push(void)
+ {
+- int idx = __this_cpu_inc_return(__kmap_local_idx) - 1;
++ int idx = __this_cpu_add_return(__kmap_local_idx, KM_INCR) - 1;
+
+ WARN_ON_ONCE(in_irq() && !irqs_disabled());
+ BUG_ON(idx >= KM_MAX_IDX);
+@@ -392,7 +402,7 @@ static inline int kmap_local_idx(void)
+
+ static inline void kmap_local_idx_pop(void)
+ {
+- int idx = __this_cpu_dec_return(__kmap_local_idx);
++ int idx = __this_cpu_sub_return(__kmap_local_idx, KM_INCR);
+
+ BUG_ON(idx < 0);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0031-x86-mm-highmem-Use-generic-kmap-atomic-implementatio.patch b/debian/patches-rt/0031-x86-mm-highmem-Use-generic-kmap-atomic-implementatio.patch
new file mode 100644
index 000000000..d381e36e5
--- /dev/null
+++ b/debian/patches-rt/0031-x86-mm-highmem-Use-generic-kmap-atomic-implementatio.patch
@@ -0,0 +1,389 @@
+From a6456b1e46c0a3b8ad0a9dd3afaeb69c037ad289 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:20 +0100
+Subject: [PATCH 031/323] x86/mm/highmem: Use generic kmap atomic
+ implementation
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Convert X86 to the generic kmap atomic implementation and make the
+iomap_atomic() naming convention consistent while at it.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: x86@kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/x86/Kconfig | 1 +
+ arch/x86/include/asm/fixmap.h | 5 +--
+ arch/x86/include/asm/highmem.h | 13 ++++--
+ arch/x86/include/asm/iomap.h | 18 ++++----
+ arch/x86/include/asm/kmap_types.h | 13 ------
+ arch/x86/include/asm/paravirt_types.h | 1 -
+ arch/x86/mm/highmem_32.c | 59 ---------------------------
+ arch/x86/mm/init_32.c | 15 -------
+ arch/x86/mm/iomap_32.c | 59 +++------------------------
+ include/linux/highmem.h | 2 +-
+ include/linux/io-mapping.h | 2 +-
+ mm/highmem.c | 2 +-
+ 12 files changed, 30 insertions(+), 160 deletions(-)
+ delete mode 100644 arch/x86/include/asm/kmap_types.h
+
+diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
+index 6dc670e36393..54e5284a6ae1 100644
+--- a/arch/x86/Kconfig
++++ b/arch/x86/Kconfig
+@@ -15,6 +15,7 @@ config X86_32
+ select CLKSRC_I8253
+ select CLONE_BACKWARDS
+ select HAVE_DEBUG_STACKOVERFLOW
++ select KMAP_LOCAL
+ select MODULES_USE_ELF_REL
+ select OLD_SIGACTION
+ select GENERIC_VDSO_32
+diff --git a/arch/x86/include/asm/fixmap.h b/arch/x86/include/asm/fixmap.h
+index 77217bd292bd..8eba66a33e39 100644
+--- a/arch/x86/include/asm/fixmap.h
++++ b/arch/x86/include/asm/fixmap.h
+@@ -31,7 +31,7 @@
+ #include <asm/pgtable_types.h>
+ #ifdef CONFIG_X86_32
+ #include <linux/threads.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+ #else
+ #include <uapi/asm/vsyscall.h>
+ #endif
+@@ -94,7 +94,7 @@ enum fixed_addresses {
+ #endif
+ #ifdef CONFIG_X86_32
+ FIX_KMAP_BEGIN, /* reserved pte's for temporary kernel mappings */
+- FIX_KMAP_END = FIX_KMAP_BEGIN+(KM_TYPE_NR*NR_CPUS)-1,
++ FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_MAX_IDX * NR_CPUS) - 1,
+ #ifdef CONFIG_PCI_MMCONFIG
+ FIX_PCIE_MCFG,
+ #endif
+@@ -151,7 +151,6 @@ extern void reserve_top_address(unsigned long reserve);
+
+ extern int fixmaps_set;
+
+-extern pte_t *kmap_pte;
+ extern pte_t *pkmap_page_table;
+
+ void __native_set_fixmap(enum fixed_addresses idx, pte_t pte);
+diff --git a/arch/x86/include/asm/highmem.h b/arch/x86/include/asm/highmem.h
+index 0f420b24e0fc..032e020853aa 100644
+--- a/arch/x86/include/asm/highmem.h
++++ b/arch/x86/include/asm/highmem.h
+@@ -23,7 +23,6 @@
+
+ #include <linux/interrupt.h>
+ #include <linux/threads.h>
+-#include <asm/kmap_types.h>
+ #include <asm/tlbflush.h>
+ #include <asm/paravirt.h>
+ #include <asm/fixmap.h>
+@@ -58,11 +57,17 @@ extern unsigned long highstart_pfn, highend_pfn;
+ #define PKMAP_NR(virt) ((virt-PKMAP_BASE) >> PAGE_SHIFT)
+ #define PKMAP_ADDR(nr) (PKMAP_BASE + ((nr) << PAGE_SHIFT))
+
+-void *kmap_atomic_pfn(unsigned long pfn);
+-void *kmap_atomic_prot_pfn(unsigned long pfn, pgprot_t prot);
+-
+ #define flush_cache_kmaps() do { } while (0)
+
++#define arch_kmap_local_post_map(vaddr, pteval) \
++ arch_flush_lazy_mmu_mode()
++
++#define arch_kmap_local_post_unmap(vaddr) \
++ do { \
++ flush_tlb_one_kernel((vaddr)); \
++ arch_flush_lazy_mmu_mode(); \
++ } while (0)
++
+ extern void add_highpages_with_active_regions(int nid, unsigned long start_pfn,
+ unsigned long end_pfn);
+
+diff --git a/arch/x86/include/asm/iomap.h b/arch/x86/include/asm/iomap.h
+index bacf68c4d70e..0be7a30fd6bc 100644
+--- a/arch/x86/include/asm/iomap.h
++++ b/arch/x86/include/asm/iomap.h
+@@ -9,19 +9,21 @@
+ #include <linux/fs.h>
+ #include <linux/mm.h>
+ #include <linux/uaccess.h>
++#include <linux/highmem.h>
+ #include <asm/cacheflush.h>
+ #include <asm/tlbflush.h>
+
+-void __iomem *
+-iomap_atomic_prot_pfn(unsigned long pfn, pgprot_t prot);
++void __iomem *iomap_atomic_pfn_prot(unsigned long pfn, pgprot_t prot);
+
+-void
+-iounmap_atomic(void __iomem *kvaddr);
++static inline void iounmap_atomic(void __iomem *vaddr)
++{
++ kunmap_local_indexed((void __force *)vaddr);
++ pagefault_enable();
++ preempt_enable();
++}
+
+-int
+-iomap_create_wc(resource_size_t base, unsigned long size, pgprot_t *prot);
++int iomap_create_wc(resource_size_t base, unsigned long size, pgprot_t *prot);
+
+-void
+-iomap_free(resource_size_t base, unsigned long size);
++void iomap_free(resource_size_t base, unsigned long size);
+
+ #endif /* _ASM_X86_IOMAP_H */
+diff --git a/arch/x86/include/asm/kmap_types.h b/arch/x86/include/asm/kmap_types.h
+deleted file mode 100644
+index 04ab8266e347..000000000000
+--- a/arch/x86/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,13 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-#ifndef _ASM_X86_KMAP_TYPES_H
+-#define _ASM_X86_KMAP_TYPES_H
+-
+-#if defined(CONFIG_X86_32) && defined(CONFIG_DEBUG_HIGHMEM)
+-#define __WITH_KM_FENCE
+-#endif
+-
+-#include <asm-generic/kmap_types.h>
+-
+-#undef __WITH_KM_FENCE
+-
+-#endif /* _ASM_X86_KMAP_TYPES_H */
+diff --git a/arch/x86/include/asm/paravirt_types.h b/arch/x86/include/asm/paravirt_types.h
+index 903d71884fa2..130f428b0cc8 100644
+--- a/arch/x86/include/asm/paravirt_types.h
++++ b/arch/x86/include/asm/paravirt_types.h
+@@ -41,7 +41,6 @@
+ #ifndef __ASSEMBLY__
+
+ #include <asm/desc_defs.h>
+-#include <asm/kmap_types.h>
+ #include <asm/pgtable_types.h>
+ #include <asm/nospec-branch.h>
+
+diff --git a/arch/x86/mm/highmem_32.c b/arch/x86/mm/highmem_32.c
+index 075fe51317b0..2c54b76d8f84 100644
+--- a/arch/x86/mm/highmem_32.c
++++ b/arch/x86/mm/highmem_32.c
+@@ -4,65 +4,6 @@
+ #include <linux/swap.h> /* for totalram_pages */
+ #include <linux/memblock.h>
+
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
+-{
+- unsigned long vaddr;
+- int idx, type;
+-
+- type = kmap_atomic_idx_push();
+- idx = type + KM_TYPE_NR*smp_processor_id();
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+- BUG_ON(!pte_none(*(kmap_pte-idx)));
+- set_pte(kmap_pte-idx, mk_pte(page, prot));
+- arch_flush_lazy_mmu_mode();
+-
+- return (void *)vaddr;
+-}
+-EXPORT_SYMBOL(kmap_atomic_high_prot);
+-
+-/*
+- * This is the same as kmap_atomic() but can map memory that doesn't
+- * have a struct page associated with it.
+- */
+-void *kmap_atomic_pfn(unsigned long pfn)
+-{
+- return kmap_atomic_prot_pfn(pfn, kmap_prot);
+-}
+-EXPORT_SYMBOL_GPL(kmap_atomic_pfn);
+-
+-void kunmap_atomic_high(void *kvaddr)
+-{
+- unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
+-
+- if (vaddr >= __fix_to_virt(FIX_KMAP_END) &&
+- vaddr <= __fix_to_virt(FIX_KMAP_BEGIN)) {
+- int idx, type;
+-
+- type = kmap_atomic_idx();
+- idx = type + KM_TYPE_NR * smp_processor_id();
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- WARN_ON_ONCE(vaddr != __fix_to_virt(FIX_KMAP_BEGIN + idx));
+-#endif
+- /*
+- * Force other mappings to Oops if they'll try to access this
+- * pte without first remap it. Keeping stale mappings around
+- * is a bad idea also, in case the page changes cacheability
+- * attributes or becomes a protected page in a hypervisor.
+- */
+- kpte_clear_flush(kmap_pte-idx, vaddr);
+- kmap_atomic_idx_pop();
+- arch_flush_lazy_mmu_mode();
+- }
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- else {
+- BUG_ON(vaddr < PAGE_OFFSET);
+- BUG_ON(vaddr >= (unsigned long)high_memory);
+- }
+-#endif
+-}
+-EXPORT_SYMBOL(kunmap_atomic_high);
+-
+ void __init set_highmem_pages_init(void)
+ {
+ struct zone *zone;
+diff --git a/arch/x86/mm/init_32.c b/arch/x86/mm/init_32.c
+index 7c055259de3a..da31c2635ee4 100644
+--- a/arch/x86/mm/init_32.c
++++ b/arch/x86/mm/init_32.c
+@@ -394,19 +394,6 @@ kernel_physical_mapping_init(unsigned long start,
+ return last_map_addr;
+ }
+
+-pte_t *kmap_pte;
+-
+-static void __init kmap_init(void)
+-{
+- unsigned long kmap_vstart;
+-
+- /*
+- * Cache the first kmap pte:
+- */
+- kmap_vstart = __fix_to_virt(FIX_KMAP_BEGIN);
+- kmap_pte = virt_to_kpte(kmap_vstart);
+-}
+-
+ #ifdef CONFIG_HIGHMEM
+ static void __init permanent_kmaps_init(pgd_t *pgd_base)
+ {
+@@ -712,8 +699,6 @@ void __init paging_init(void)
+
+ __flush_tlb_all();
+
+- kmap_init();
+-
+ /*
+ * NOTE: at this point the bootmem allocator is fully available.
+ */
+diff --git a/arch/x86/mm/iomap_32.c b/arch/x86/mm/iomap_32.c
+index f60398aeb644..e0a40d7cc66c 100644
+--- a/arch/x86/mm/iomap_32.c
++++ b/arch/x86/mm/iomap_32.c
+@@ -44,28 +44,7 @@ void iomap_free(resource_size_t base, unsigned long size)
+ }
+ EXPORT_SYMBOL_GPL(iomap_free);
+
+-void *kmap_atomic_prot_pfn(unsigned long pfn, pgprot_t prot)
+-{
+- unsigned long vaddr;
+- int idx, type;
+-
+- preempt_disable();
+- pagefault_disable();
+-
+- type = kmap_atomic_idx_push();
+- idx = type + KM_TYPE_NR * smp_processor_id();
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+- set_pte(kmap_pte - idx, pfn_pte(pfn, prot));
+- arch_flush_lazy_mmu_mode();
+-
+- return (void *)vaddr;
+-}
+-
+-/*
+- * Map 'pfn' using protections 'prot'
+- */
+-void __iomem *
+-iomap_atomic_prot_pfn(unsigned long pfn, pgprot_t prot)
++void __iomem *iomap_atomic_pfn_prot(unsigned long pfn, pgprot_t prot)
+ {
+ /*
+ * For non-PAT systems, translate non-WB request to UC- just in
+@@ -81,36 +60,8 @@ iomap_atomic_prot_pfn(unsigned long pfn, pgprot_t prot)
+ /* Filter out unsupported __PAGE_KERNEL* bits: */
+ pgprot_val(prot) &= __default_kernel_pte_mask;
+
+- return (void __force __iomem *) kmap_atomic_prot_pfn(pfn, prot);
+-}
+-EXPORT_SYMBOL_GPL(iomap_atomic_prot_pfn);
+-
+-void
+-iounmap_atomic(void __iomem *kvaddr)
+-{
+- unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
+-
+- if (vaddr >= __fix_to_virt(FIX_KMAP_END) &&
+- vaddr <= __fix_to_virt(FIX_KMAP_BEGIN)) {
+- int idx, type;
+-
+- type = kmap_atomic_idx();
+- idx = type + KM_TYPE_NR * smp_processor_id();
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- WARN_ON_ONCE(vaddr != __fix_to_virt(FIX_KMAP_BEGIN + idx));
+-#endif
+- /*
+- * Force other mappings to Oops if they'll try to access this
+- * pte without first remap it. Keeping stale mappings around
+- * is a bad idea also, in case the page changes cacheability
+- * attributes or becomes a protected page in a hypervisor.
+- */
+- kpte_clear_flush(kmap_pte-idx, vaddr);
+- kmap_atomic_idx_pop();
+- }
+-
+- pagefault_enable();
+- preempt_enable();
++ preempt_disable();
++ pagefault_disable();
++ return (void __force __iomem *)__kmap_local_pfn_prot(pfn, prot);
+ }
+-EXPORT_SYMBOL_GPL(iounmap_atomic);
++EXPORT_SYMBOL_GPL(iomap_atomic_pfn_prot);
+diff --git a/include/linux/highmem.h b/include/linux/highmem.h
+index 14d5b4020c8c..fbede783dc34 100644
+--- a/include/linux/highmem.h
++++ b/include/linux/highmem.h
+@@ -217,7 +217,7 @@ static inline void __kunmap_atomic(void *addr)
+ #endif /* CONFIG_HIGHMEM */
+
+ #if !defined(CONFIG_KMAP_LOCAL)
+-#if defined(CONFIG_HIGHMEM) || defined(CONFIG_X86_32)
++#if defined(CONFIG_HIGHMEM)
+
+ DECLARE_PER_CPU(int, __kmap_atomic_idx);
+
+diff --git a/include/linux/io-mapping.h b/include/linux/io-mapping.h
+index c75e4d3d8833..3b0940be72e9 100644
+--- a/include/linux/io-mapping.h
++++ b/include/linux/io-mapping.h
+@@ -69,7 +69,7 @@ io_mapping_map_atomic_wc(struct io_mapping *mapping,
+
+ BUG_ON(offset >= mapping->size);
+ phys_addr = mapping->base + offset;
+- return iomap_atomic_prot_pfn(PHYS_PFN(phys_addr), mapping->prot);
++ return iomap_atomic_pfn_prot(PHYS_PFN(phys_addr), mapping->prot);
+ }
+
+ static inline void
+diff --git a/mm/highmem.c b/mm/highmem.c
+index 67d2d5983cb0..77677c6844f7 100644
+--- a/mm/highmem.c
++++ b/mm/highmem.c
+@@ -32,7 +32,7 @@
+ #include <linux/vmalloc.h>
+
+ #ifndef CONFIG_KMAP_LOCAL
+-#if defined(CONFIG_HIGHMEM) || defined(CONFIG_X86_32)
++#ifdef CONFIG_HIGHMEM
+ DEFINE_PER_CPU(int, __kmap_atomic_idx);
+ #endif
+ #endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0032-arc-mm-highmem-Use-generic-kmap-atomic-implementatio.patch b/debian/patches-rt/0032-arc-mm-highmem-Use-generic-kmap-atomic-implementatio.patch
new file mode 100644
index 000000000..581f1da69
--- /dev/null
+++ b/debian/patches-rt/0032-arc-mm-highmem-Use-generic-kmap-atomic-implementatio.patch
@@ -0,0 +1,212 @@
+From 7eeaddc0ba0792dd0d8a1f5f167ff44230b77855 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:21 +0100
+Subject: [PATCH 032/323] arc/mm/highmem: Use generic kmap atomic
+ implementation
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Adopt the map ordering to match the other architectures and the generic
+code. Also make the maximum entries limited and not dependend on the number
+of CPUs. With the original implementation did the following calculation:
+
+ nr_slots = mapsize >> PAGE_SHIFT;
+
+The results in either 512 or 1024 total slots depending on
+configuration. The total slots have to be divided by the number of CPUs to
+get the number of slots per CPU (former KM_TYPE_NR). ARC supports up to 4k
+CPUs, so this just falls apart in random ways depending on the number of
+CPUs and the actual kmap (atomic) nesting. The comment in highmem.c:
+
+ * - fixmap anyhow needs a limited number of mappings. So 2M kvaddr == 256 PTE
+ * slots across NR_CPUS would be more than sufficient (generic code defines
+ * KM_TYPE_NR as 20).
+
+is just wrong. KM_TYPE_NR (now KM_MAX_IDX) is the number of slots per CPU
+because kmap_local/atomic() needs to support nested mappings (thread,
+softirq, interrupt). While KM_MAX_IDX might be overestimated, the above
+reasoning is just wrong and clearly the highmem code was never tested with
+any system with more than a few CPUs.
+
+Use the default number of slots and fail the build when it does not
+fit. Randomly failing at runtime is not a really good option.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Vineet Gupta <vgupta@synopsys.com>
+Cc: linux-snps-arc@lists.infradead.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arc/Kconfig | 1 +
+ arch/arc/include/asm/highmem.h | 26 +++++++++++----
+ arch/arc/include/asm/kmap_types.h | 14 --------
+ arch/arc/mm/highmem.c | 54 +++----------------------------
+ 4 files changed, 26 insertions(+), 69 deletions(-)
+ delete mode 100644 arch/arc/include/asm/kmap_types.h
+
+diff --git a/arch/arc/Kconfig b/arch/arc/Kconfig
+index 0a89cc9def65..d8804001d550 100644
+--- a/arch/arc/Kconfig
++++ b/arch/arc/Kconfig
+@@ -507,6 +507,7 @@ config LINUX_RAM_BASE
+ config HIGHMEM
+ bool "High Memory Support"
+ select ARCH_DISCONTIGMEM_ENABLE
++ select KMAP_LOCAL
+ help
+ With ARC 2G:2G address split, only upper 2G is directly addressable by
+ kernel. Enable this to potentially allow access to rest of 2G and PAE
+diff --git a/arch/arc/include/asm/highmem.h b/arch/arc/include/asm/highmem.h
+index 6e5eafb3afdd..a6b8e2c352c4 100644
+--- a/arch/arc/include/asm/highmem.h
++++ b/arch/arc/include/asm/highmem.h
+@@ -9,17 +9,29 @@
+ #ifdef CONFIG_HIGHMEM
+
+ #include <uapi/asm/page.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
++
++#define FIXMAP_SIZE PGDIR_SIZE
++#define PKMAP_SIZE PGDIR_SIZE
+
+ /* start after vmalloc area */
+ #define FIXMAP_BASE (PAGE_OFFSET - FIXMAP_SIZE - PKMAP_SIZE)
+-#define FIXMAP_SIZE PGDIR_SIZE /* only 1 PGD worth */
+-#define KM_TYPE_NR ((FIXMAP_SIZE >> PAGE_SHIFT)/NR_CPUS)
+-#define FIXMAP_ADDR(nr) (FIXMAP_BASE + ((nr) << PAGE_SHIFT))
++
++#define FIX_KMAP_SLOTS (KM_MAX_IDX * NR_CPUS)
++#define FIX_KMAP_BEGIN (0UL)
++#define FIX_KMAP_END ((FIX_KMAP_BEGIN + FIX_KMAP_SLOTS) - 1)
++
++#define FIXADDR_TOP (FIXMAP_BASE + (FIX_KMAP_END << PAGE_SHIFT))
++
++/*
++ * This should be converted to the asm-generic version, but of course this
++ * is needlessly different from all other architectures. Sigh - tglx
++ */
++#define __fix_to_virt(x) (FIXADDR_TOP - ((x) << PAGE_SHIFT))
++#define __virt_to_fix(x) (((FIXADDR_TOP - ((x) & PAGE_MASK))) >> PAGE_SHIFT)
+
+ /* start after fixmap area */
+ #define PKMAP_BASE (FIXMAP_BASE + FIXMAP_SIZE)
+-#define PKMAP_SIZE PGDIR_SIZE
+ #define LAST_PKMAP (PKMAP_SIZE >> PAGE_SHIFT)
+ #define LAST_PKMAP_MASK (LAST_PKMAP - 1)
+ #define PKMAP_ADDR(nr) (PKMAP_BASE + ((nr) << PAGE_SHIFT))
+@@ -29,11 +41,13 @@
+
+ extern void kmap_init(void);
+
++#define arch_kmap_local_post_unmap(vaddr) \
++ local_flush_tlb_kernel_range(vaddr, vaddr + PAGE_SIZE)
++
+ static inline void flush_cache_kmaps(void)
+ {
+ flush_cache_all();
+ }
+-
+ #endif
+
+ #endif
+diff --git a/arch/arc/include/asm/kmap_types.h b/arch/arc/include/asm/kmap_types.h
+deleted file mode 100644
+index fecf7851ec32..000000000000
+--- a/arch/arc/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,14 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0-only */
+-/*
+- * Copyright (C) 2015 Synopsys, Inc. (www.synopsys.com)
+- */
+-
+-#ifndef _ASM_KMAP_TYPES_H
+-#define _ASM_KMAP_TYPES_H
+-
+-/*
+- * We primarily need to define KM_TYPE_NR here but that in turn
+- * is a function of PGDIR_SIZE etc.
+- * To avoid circular deps issue, put everything in asm/highmem.h
+- */
+-#endif
+diff --git a/arch/arc/mm/highmem.c b/arch/arc/mm/highmem.c
+index 1b9f473c6369..c79912a6b196 100644
+--- a/arch/arc/mm/highmem.c
++++ b/arch/arc/mm/highmem.c
+@@ -36,9 +36,8 @@
+ * This means each only has 1 PGDIR_SIZE worth of kvaddr mappings, which means
+ * 2M of kvaddr space for typical config (8K page and 11:8:13 traversal split)
+ *
+- * - fixmap anyhow needs a limited number of mappings. So 2M kvaddr == 256 PTE
+- * slots across NR_CPUS would be more than sufficient (generic code defines
+- * KM_TYPE_NR as 20).
++ * - The fixed KMAP slots for kmap_local/atomic() require KM_MAX_IDX slots per
++ * CPU. So the number of CPUs sharing a single PTE page is limited.
+ *
+ * - pkmap being preemptible, in theory could do with more than 256 concurrent
+ * mappings. However, generic pkmap code: map_new_virtual(), doesn't traverse
+@@ -47,48 +46,6 @@
+ */
+
+ extern pte_t * pkmap_page_table;
+-static pte_t * fixmap_page_table;
+-
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
+-{
+- int idx, cpu_idx;
+- unsigned long vaddr;
+-
+- cpu_idx = kmap_atomic_idx_push();
+- idx = cpu_idx + KM_TYPE_NR * smp_processor_id();
+- vaddr = FIXMAP_ADDR(idx);
+-
+- set_pte_at(&init_mm, vaddr, fixmap_page_table + idx,
+- mk_pte(page, prot));
+-
+- return (void *)vaddr;
+-}
+-EXPORT_SYMBOL(kmap_atomic_high_prot);
+-
+-void kunmap_atomic_high(void *kv)
+-{
+- unsigned long kvaddr = (unsigned long)kv;
+-
+- if (kvaddr >= FIXMAP_BASE && kvaddr < (FIXMAP_BASE + FIXMAP_SIZE)) {
+-
+- /*
+- * Because preemption is disabled, this vaddr can be associated
+- * with the current allocated index.
+- * But in case of multiple live kmap_atomic(), it still relies on
+- * callers to unmap in right order.
+- */
+- int cpu_idx = kmap_atomic_idx();
+- int idx = cpu_idx + KM_TYPE_NR * smp_processor_id();
+-
+- WARN_ON(kvaddr != FIXMAP_ADDR(idx));
+-
+- pte_clear(&init_mm, kvaddr, fixmap_page_table + idx);
+- local_flush_tlb_kernel_range(kvaddr, kvaddr + PAGE_SIZE);
+-
+- kmap_atomic_idx_pop();
+- }
+-}
+-EXPORT_SYMBOL(kunmap_atomic_high);
+
+ static noinline pte_t * __init alloc_kmap_pgtable(unsigned long kvaddr)
+ {
+@@ -108,10 +65,9 @@ void __init kmap_init(void)
+ {
+ /* Due to recursive include hell, we can't do this in processor.h */
+ BUILD_BUG_ON(PAGE_OFFSET < (VMALLOC_END + FIXMAP_SIZE + PKMAP_SIZE));
++ BUILD_BUG_ON(LAST_PKMAP > PTRS_PER_PTE);
++ BUILD_BUG_ON(FIX_KMAP_SLOTS > PTRS_PER_PTE);
+
+- BUILD_BUG_ON(KM_TYPE_NR > PTRS_PER_PTE);
+ pkmap_page_table = alloc_kmap_pgtable(PKMAP_BASE);
+-
+- BUILD_BUG_ON(LAST_PKMAP > PTRS_PER_PTE);
+- fixmap_page_table = alloc_kmap_pgtable(FIXMAP_BASE);
++ alloc_kmap_pgtable(FIXMAP_BASE);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0033-ARM-highmem-Switch-to-generic-kmap-atomic.patch b/debian/patches-rt/0033-ARM-highmem-Switch-to-generic-kmap-atomic.patch
new file mode 100644
index 000000000..7f4d188e7
--- /dev/null
+++ b/debian/patches-rt/0033-ARM-highmem-Switch-to-generic-kmap-atomic.patch
@@ -0,0 +1,271 @@
+From 007968641a299ffd9fd631d7f67fc119aaf9ac5d Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:22 +0100
+Subject: [PATCH 033/323] ARM: highmem: Switch to generic kmap atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+No reason having the same code in every architecture.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Russell King <linux@armlinux.org.uk>
+Cc: Arnd Bergmann <arnd@arndb.de>
+Cc: linux-arm-kernel@lists.infradead.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm/Kconfig | 1 +
+ arch/arm/include/asm/fixmap.h | 4 +-
+ arch/arm/include/asm/highmem.h | 34 ++++++---
+ arch/arm/include/asm/kmap_types.h | 10 ---
+ arch/arm/mm/Makefile | 1 -
+ arch/arm/mm/highmem.c | 121 ------------------------------
+ 6 files changed, 27 insertions(+), 144 deletions(-)
+ delete mode 100644 arch/arm/include/asm/kmap_types.h
+ delete mode 100644 arch/arm/mm/highmem.c
+
+diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
+index 335308aff6ce..c01251683018 100644
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -1497,6 +1497,7 @@ config HAVE_ARCH_PFN_VALID
+ config HIGHMEM
+ bool "High Memory Support"
+ depends on MMU
++ select KMAP_LOCAL
+ help
+ The address space of ARM processors is only 4 Gigabytes large
+ and it has to accommodate user address space, kernel address
+diff --git a/arch/arm/include/asm/fixmap.h b/arch/arm/include/asm/fixmap.h
+index 9575b404019c..707068f852c2 100644
+--- a/arch/arm/include/asm/fixmap.h
++++ b/arch/arm/include/asm/fixmap.h
+@@ -7,14 +7,14 @@
+ #define FIXADDR_TOP (FIXADDR_END - PAGE_SIZE)
+
+ #include <linux/pgtable.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+
+ enum fixed_addresses {
+ FIX_EARLYCON_MEM_BASE,
+ __end_of_permanent_fixed_addresses,
+
+ FIX_KMAP_BEGIN = __end_of_permanent_fixed_addresses,
+- FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_TYPE_NR * NR_CPUS) - 1,
++ FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_MAX_IDX * NR_CPUS) - 1,
+
+ /* Support writing RO kernel text via kprobes, jump labels, etc. */
+ FIX_TEXT_POKE0,
+diff --git a/arch/arm/include/asm/highmem.h b/arch/arm/include/asm/highmem.h
+index 31811be38d78..b22dffa8c7eb 100644
+--- a/arch/arm/include/asm/highmem.h
++++ b/arch/arm/include/asm/highmem.h
+@@ -2,7 +2,8 @@
+ #ifndef _ASM_HIGHMEM_H
+ #define _ASM_HIGHMEM_H
+
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
++#include <asm/fixmap.h>
+
+ #define PKMAP_BASE (PAGE_OFFSET - PMD_SIZE)
+ #define LAST_PKMAP PTRS_PER_PTE
+@@ -46,19 +47,32 @@ extern pte_t *pkmap_page_table;
+
+ #ifdef ARCH_NEEDS_KMAP_HIGH_GET
+ extern void *kmap_high_get(struct page *page);
+-#else
++
++static inline void *arch_kmap_local_high_get(struct page *page)
++{
++ if (IS_ENABLED(CONFIG_DEBUG_HIGHMEM) && !cache_is_vivt())
++ return NULL;
++ return kmap_high_get(page);
++}
++#define arch_kmap_local_high_get arch_kmap_local_high_get
++
++#else /* ARCH_NEEDS_KMAP_HIGH_GET */
+ static inline void *kmap_high_get(struct page *page)
+ {
+ return NULL;
+ }
+-#endif
++#endif /* !ARCH_NEEDS_KMAP_HIGH_GET */
+
+-/*
+- * The following functions are already defined by <linux/highmem.h>
+- * when CONFIG_HIGHMEM is not set.
+- */
+-#ifdef CONFIG_HIGHMEM
+-extern void *kmap_atomic_pfn(unsigned long pfn);
+-#endif
++#define arch_kmap_local_post_map(vaddr, pteval) \
++ local_flush_tlb_kernel_page(vaddr)
++
++#define arch_kmap_local_pre_unmap(vaddr) \
++do { \
++ if (cache_is_vivt()) \
++ __cpuc_flush_dcache_area((void *)vaddr, PAGE_SIZE); \
++} while (0)
++
++#define arch_kmap_local_post_unmap(vaddr) \
++ local_flush_tlb_kernel_page(vaddr)
+
+ #endif
+diff --git a/arch/arm/include/asm/kmap_types.h b/arch/arm/include/asm/kmap_types.h
+deleted file mode 100644
+index 5590940ee43d..000000000000
+--- a/arch/arm/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,10 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-#ifndef __ARM_KMAP_TYPES_H
+-#define __ARM_KMAP_TYPES_H
+-
+-/*
+- * This is the "bare minimum". AIO seems to require this.
+- */
+-#define KM_TYPE_NR 16
+-
+-#endif
+diff --git a/arch/arm/mm/Makefile b/arch/arm/mm/Makefile
+index 7cb1699fbfc4..c4ce477c5261 100644
+--- a/arch/arm/mm/Makefile
++++ b/arch/arm/mm/Makefile
+@@ -19,7 +19,6 @@ obj-$(CONFIG_MODULES) += proc-syms.o
+ obj-$(CONFIG_DEBUG_VIRTUAL) += physaddr.o
+
+ obj-$(CONFIG_ALIGNMENT_TRAP) += alignment.o
+-obj-$(CONFIG_HIGHMEM) += highmem.o
+ obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o
+ obj-$(CONFIG_ARM_PV_FIXUP) += pv-fixup-asm.o
+
+diff --git a/arch/arm/mm/highmem.c b/arch/arm/mm/highmem.c
+deleted file mode 100644
+index 187fab227b50..000000000000
+--- a/arch/arm/mm/highmem.c
++++ /dev/null
+@@ -1,121 +0,0 @@
+-// SPDX-License-Identifier: GPL-2.0-only
+-/*
+- * arch/arm/mm/highmem.c -- ARM highmem support
+- *
+- * Author: Nicolas Pitre
+- * Created: september 8, 2008
+- * Copyright: Marvell Semiconductors Inc.
+- */
+-
+-#include <linux/module.h>
+-#include <linux/highmem.h>
+-#include <linux/interrupt.h>
+-#include <asm/fixmap.h>
+-#include <asm/cacheflush.h>
+-#include <asm/tlbflush.h>
+-#include "mm.h"
+-
+-static inline void set_fixmap_pte(int idx, pte_t pte)
+-{
+- unsigned long vaddr = __fix_to_virt(idx);
+- pte_t *ptep = virt_to_kpte(vaddr);
+-
+- set_pte_ext(ptep, pte, 0);
+- local_flush_tlb_kernel_page(vaddr);
+-}
+-
+-static inline pte_t get_fixmap_pte(unsigned long vaddr)
+-{
+- pte_t *ptep = virt_to_kpte(vaddr);
+-
+- return *ptep;
+-}
+-
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
+-{
+- unsigned int idx;
+- unsigned long vaddr;
+- void *kmap;
+- int type;
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- /*
+- * There is no cache coherency issue when non VIVT, so force the
+- * dedicated kmap usage for better debugging purposes in that case.
+- */
+- if (!cache_is_vivt())
+- kmap = NULL;
+- else
+-#endif
+- kmap = kmap_high_get(page);
+- if (kmap)
+- return kmap;
+-
+- type = kmap_atomic_idx_push();
+-
+- idx = FIX_KMAP_BEGIN + type + KM_TYPE_NR * smp_processor_id();
+- vaddr = __fix_to_virt(idx);
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- /*
+- * With debugging enabled, kunmap_atomic forces that entry to 0.
+- * Make sure it was indeed properly unmapped.
+- */
+- BUG_ON(!pte_none(get_fixmap_pte(vaddr)));
+-#endif
+- /*
+- * When debugging is off, kunmap_atomic leaves the previous mapping
+- * in place, so the contained TLB flush ensures the TLB is updated
+- * with the new mapping.
+- */
+- set_fixmap_pte(idx, mk_pte(page, prot));
+-
+- return (void *)vaddr;
+-}
+-EXPORT_SYMBOL(kmap_atomic_high_prot);
+-
+-void kunmap_atomic_high(void *kvaddr)
+-{
+- unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
+- int idx, type;
+-
+- if (kvaddr >= (void *)FIXADDR_START) {
+- type = kmap_atomic_idx();
+- idx = FIX_KMAP_BEGIN + type + KM_TYPE_NR * smp_processor_id();
+-
+- if (cache_is_vivt())
+- __cpuc_flush_dcache_area((void *)vaddr, PAGE_SIZE);
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- BUG_ON(vaddr != __fix_to_virt(idx));
+- set_fixmap_pte(idx, __pte(0));
+-#else
+- (void) idx; /* to kill a warning */
+-#endif
+- kmap_atomic_idx_pop();
+- } else if (vaddr >= PKMAP_ADDR(0) && vaddr < PKMAP_ADDR(LAST_PKMAP)) {
+- /* this address was obtained through kmap_high_get() */
+- kunmap_high(pte_page(pkmap_page_table[PKMAP_NR(vaddr)]));
+- }
+-}
+-EXPORT_SYMBOL(kunmap_atomic_high);
+-
+-void *kmap_atomic_pfn(unsigned long pfn)
+-{
+- unsigned long vaddr;
+- int idx, type;
+- struct page *page = pfn_to_page(pfn);
+-
+- preempt_disable();
+- pagefault_disable();
+- if (!PageHighMem(page))
+- return page_address(page);
+-
+- type = kmap_atomic_idx_push();
+- idx = FIX_KMAP_BEGIN + type + KM_TYPE_NR * smp_processor_id();
+- vaddr = __fix_to_virt(idx);
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- BUG_ON(!pte_none(get_fixmap_pte(vaddr)));
+-#endif
+- set_fixmap_pte(idx, pfn_pte(pfn, kmap_prot));
+-
+- return (void *)vaddr;
+-}
+--
+2.43.0
+
diff --git a/debian/patches-rt/0034-csky-mm-highmem-Switch-to-generic-kmap-atomic.patch b/debian/patches-rt/0034-csky-mm-highmem-Switch-to-generic-kmap-atomic.patch
new file mode 100644
index 000000000..667836a1e
--- /dev/null
+++ b/debian/patches-rt/0034-csky-mm-highmem-Switch-to-generic-kmap-atomic.patch
@@ -0,0 +1,179 @@
+From 3af9ca89d4398239a71471cffb488e3104990e23 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:23 +0100
+Subject: [PATCH 034/323] csky/mm/highmem: Switch to generic kmap atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+No reason having the same code in every architecture.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: linux-csky@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/csky/Kconfig | 1 +
+ arch/csky/include/asm/fixmap.h | 4 +-
+ arch/csky/include/asm/highmem.h | 6 ++-
+ arch/csky/mm/highmem.c | 75 +--------------------------------
+ 4 files changed, 8 insertions(+), 78 deletions(-)
+
+diff --git a/arch/csky/Kconfig b/arch/csky/Kconfig
+index 7bf0a617e94c..c9f2533cc53d 100644
+--- a/arch/csky/Kconfig
++++ b/arch/csky/Kconfig
+@@ -286,6 +286,7 @@ config NR_CPUS
+ config HIGHMEM
+ bool "High Memory Support"
+ depends on !CPU_CK610
++ select KMAP_LOCAL
+ default y
+
+ config FORCE_MAX_ZONEORDER
+diff --git a/arch/csky/include/asm/fixmap.h b/arch/csky/include/asm/fixmap.h
+index 81f9477d5330..4b589cc20900 100644
+--- a/arch/csky/include/asm/fixmap.h
++++ b/arch/csky/include/asm/fixmap.h
+@@ -8,7 +8,7 @@
+ #include <asm/memory.h>
+ #ifdef CONFIG_HIGHMEM
+ #include <linux/threads.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+ #endif
+
+ enum fixed_addresses {
+@@ -17,7 +17,7 @@ enum fixed_addresses {
+ #endif
+ #ifdef CONFIG_HIGHMEM
+ FIX_KMAP_BEGIN,
+- FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_TYPE_NR * NR_CPUS) - 1,
++ FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_MAX_IDX * NR_CPUS) - 1,
+ #endif
+ __end_of_fixed_addresses
+ };
+diff --git a/arch/csky/include/asm/highmem.h b/arch/csky/include/asm/highmem.h
+index 14645e3d5cd5..1f4ed3f4c0d9 100644
+--- a/arch/csky/include/asm/highmem.h
++++ b/arch/csky/include/asm/highmem.h
+@@ -9,7 +9,7 @@
+ #include <linux/init.h>
+ #include <linux/interrupt.h>
+ #include <linux/uaccess.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+ #include <asm/cache.h>
+
+ /* undef for production */
+@@ -32,10 +32,12 @@ extern pte_t *pkmap_page_table;
+
+ #define ARCH_HAS_KMAP_FLUSH_TLB
+ extern void kmap_flush_tlb(unsigned long addr);
+-extern void *kmap_atomic_pfn(unsigned long pfn);
+
+ #define flush_cache_kmaps() do {} while (0)
+
++#define arch_kmap_local_post_map(vaddr, pteval) kmap_flush_tlb(vaddr)
++#define arch_kmap_local_post_unmap(vaddr) kmap_flush_tlb(vaddr)
++
+ extern void kmap_init(void);
+
+ #endif /* __KERNEL__ */
+diff --git a/arch/csky/mm/highmem.c b/arch/csky/mm/highmem.c
+index 89c10800a002..4161df3c6c15 100644
+--- a/arch/csky/mm/highmem.c
++++ b/arch/csky/mm/highmem.c
+@@ -9,8 +9,6 @@
+ #include <asm/tlbflush.h>
+ #include <asm/cacheflush.h>
+
+-static pte_t *kmap_pte;
+-
+ unsigned long highstart_pfn, highend_pfn;
+
+ void kmap_flush_tlb(unsigned long addr)
+@@ -19,67 +17,7 @@ void kmap_flush_tlb(unsigned long addr)
+ }
+ EXPORT_SYMBOL(kmap_flush_tlb);
+
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
+-{
+- unsigned long vaddr;
+- int idx, type;
+-
+- type = kmap_atomic_idx_push();
+- idx = type + KM_TYPE_NR*smp_processor_id();
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- BUG_ON(!pte_none(*(kmap_pte - idx)));
+-#endif
+- set_pte(kmap_pte-idx, mk_pte(page, prot));
+- flush_tlb_one((unsigned long)vaddr);
+-
+- return (void *)vaddr;
+-}
+-EXPORT_SYMBOL(kmap_atomic_high_prot);
+-
+-void kunmap_atomic_high(void *kvaddr)
+-{
+- unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
+- int idx;
+-
+- if (vaddr < FIXADDR_START)
+- return;
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- idx = KM_TYPE_NR*smp_processor_id() + kmap_atomic_idx();
+-
+- BUG_ON(vaddr != __fix_to_virt(FIX_KMAP_BEGIN + idx));
+-
+- pte_clear(&init_mm, vaddr, kmap_pte - idx);
+- flush_tlb_one(vaddr);
+-#else
+- (void) idx; /* to kill a warning */
+-#endif
+- kmap_atomic_idx_pop();
+-}
+-EXPORT_SYMBOL(kunmap_atomic_high);
+-
+-/*
+- * This is the same as kmap_atomic() but can map memory that doesn't
+- * have a struct page associated with it.
+- */
+-void *kmap_atomic_pfn(unsigned long pfn)
+-{
+- unsigned long vaddr;
+- int idx, type;
+-
+- pagefault_disable();
+-
+- type = kmap_atomic_idx_push();
+- idx = type + KM_TYPE_NR*smp_processor_id();
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+- set_pte(kmap_pte-idx, pfn_pte(pfn, PAGE_KERNEL));
+- flush_tlb_one(vaddr);
+-
+- return (void *) vaddr;
+-}
+-
+-static void __init kmap_pages_init(void)
++void __init kmap_init(void)
+ {
+ unsigned long vaddr;
+ pgd_t *pgd;
+@@ -96,14 +34,3 @@ static void __init kmap_pages_init(void)
+ pte = pte_offset_kernel(pmd, vaddr);
+ pkmap_page_table = pte;
+ }
+-
+-void __init kmap_init(void)
+-{
+- unsigned long vaddr;
+-
+- kmap_pages_init();
+-
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN);
+-
+- kmap_pte = pte_offset_kernel((pmd_t *)pgd_offset_k(vaddr), vaddr);
+-}
+--
+2.43.0
+
diff --git a/debian/patches-rt/0035-microblaze-mm-highmem-Switch-to-generic-kmap-atomic.patch b/debian/patches-rt/0035-microblaze-mm-highmem-Switch-to-generic-kmap-atomic.patch
new file mode 100644
index 000000000..80bd103c5
--- /dev/null
+++ b/debian/patches-rt/0035-microblaze-mm-highmem-Switch-to-generic-kmap-atomic.patch
@@ -0,0 +1,197 @@
+From bfdad55346f7206cf980bbd6cbc264082c54ae0c Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:24 +0100
+Subject: [PATCH 035/323] microblaze/mm/highmem: Switch to generic kmap atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+No reason having the same code in every architecture.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Michal Simek <monstr@monstr.eu>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/microblaze/Kconfig | 1 +
+ arch/microblaze/include/asm/fixmap.h | 4 +-
+ arch/microblaze/include/asm/highmem.h | 6 ++-
+ arch/microblaze/mm/Makefile | 1 -
+ arch/microblaze/mm/highmem.c | 78 ---------------------------
+ arch/microblaze/mm/init.c | 6 ---
+ 6 files changed, 8 insertions(+), 88 deletions(-)
+ delete mode 100644 arch/microblaze/mm/highmem.c
+
+diff --git a/arch/microblaze/Kconfig b/arch/microblaze/Kconfig
+index 33925ffed68f..7f6ca0ab4f81 100644
+--- a/arch/microblaze/Kconfig
++++ b/arch/microblaze/Kconfig
+@@ -155,6 +155,7 @@ config XILINX_UNCACHED_SHADOW
+ config HIGHMEM
+ bool "High memory support"
+ depends on MMU
++ select KMAP_LOCAL
+ help
+ The address space of Microblaze processors is only 4 Gigabytes large
+ and it has to accommodate user address space, kernel address
+diff --git a/arch/microblaze/include/asm/fixmap.h b/arch/microblaze/include/asm/fixmap.h
+index 0379ce5229e3..e6e9288bff76 100644
+--- a/arch/microblaze/include/asm/fixmap.h
++++ b/arch/microblaze/include/asm/fixmap.h
+@@ -20,7 +20,7 @@
+ #include <asm/page.h>
+ #ifdef CONFIG_HIGHMEM
+ #include <linux/threads.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+ #endif
+
+ #define FIXADDR_TOP ((unsigned long)(-PAGE_SIZE))
+@@ -47,7 +47,7 @@ enum fixed_addresses {
+ FIX_HOLE,
+ #ifdef CONFIG_HIGHMEM
+ FIX_KMAP_BEGIN, /* reserved pte's for temporary kernel mappings */
+- FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_TYPE_NR * num_possible_cpus()) - 1,
++ FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_MAX_IDX * num_possible_cpus()) - 1,
+ #endif
+ __end_of_fixed_addresses
+ };
+diff --git a/arch/microblaze/include/asm/highmem.h b/arch/microblaze/include/asm/highmem.h
+index 284ca8fb54c1..4418633fb163 100644
+--- a/arch/microblaze/include/asm/highmem.h
++++ b/arch/microblaze/include/asm/highmem.h
+@@ -25,7 +25,6 @@
+ #include <linux/uaccess.h>
+ #include <asm/fixmap.h>
+
+-extern pte_t *kmap_pte;
+ extern pte_t *pkmap_page_table;
+
+ /*
+@@ -52,6 +51,11 @@ extern pte_t *pkmap_page_table;
+
+ #define flush_cache_kmaps() { flush_icache(); flush_dcache(); }
+
++#define arch_kmap_local_post_map(vaddr, pteval) \
++ local_flush_tlb_page(NULL, vaddr);
++#define arch_kmap_local_post_unmap(vaddr) \
++ local_flush_tlb_page(NULL, vaddr);
++
+ #endif /* __KERNEL__ */
+
+ #endif /* _ASM_HIGHMEM_H */
+diff --git a/arch/microblaze/mm/Makefile b/arch/microblaze/mm/Makefile
+index 1b16875cea70..8ced71100047 100644
+--- a/arch/microblaze/mm/Makefile
++++ b/arch/microblaze/mm/Makefile
+@@ -6,4 +6,3 @@
+ obj-y := consistent.o init.o
+
+ obj-$(CONFIG_MMU) += pgtable.o mmu_context.o fault.o
+-obj-$(CONFIG_HIGHMEM) += highmem.o
+diff --git a/arch/microblaze/mm/highmem.c b/arch/microblaze/mm/highmem.c
+deleted file mode 100644
+index 92e0890416c9..000000000000
+--- a/arch/microblaze/mm/highmem.c
++++ /dev/null
+@@ -1,78 +0,0 @@
+-// SPDX-License-Identifier: GPL-2.0
+-/*
+- * highmem.c: virtual kernel memory mappings for high memory
+- *
+- * PowerPC version, stolen from the i386 version.
+- *
+- * Used in CONFIG_HIGHMEM systems for memory pages which
+- * are not addressable by direct kernel virtual addresses.
+- *
+- * Copyright (C) 1999 Gerhard Wichert, Siemens AG
+- * Gerhard.Wichert@pdb.siemens.de
+- *
+- *
+- * Redesigned the x86 32-bit VM architecture to deal with
+- * up to 16 Terrabyte physical memory. With current x86 CPUs
+- * we now support up to 64 Gigabytes physical RAM.
+- *
+- * Copyright (C) 1999 Ingo Molnar <mingo@redhat.com>
+- *
+- * Reworked for PowerPC by various contributors. Moved from
+- * highmem.h by Benjamin Herrenschmidt (c) 2009 IBM Corp.
+- */
+-
+-#include <linux/export.h>
+-#include <linux/highmem.h>
+-
+-/*
+- * The use of kmap_atomic/kunmap_atomic is discouraged - kmap/kunmap
+- * gives a more generic (and caching) interface. But kmap_atomic can
+- * be used in IRQ contexts, so in some (very limited) cases we need
+- * it.
+- */
+-#include <asm/tlbflush.h>
+-
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
+-{
+-
+- unsigned long vaddr;
+- int idx, type;
+-
+- type = kmap_atomic_idx_push();
+- idx = type + KM_TYPE_NR*smp_processor_id();
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- BUG_ON(!pte_none(*(kmap_pte-idx)));
+-#endif
+- set_pte_at(&init_mm, vaddr, kmap_pte-idx, mk_pte(page, prot));
+- local_flush_tlb_page(NULL, vaddr);
+-
+- return (void *) vaddr;
+-}
+-EXPORT_SYMBOL(kmap_atomic_high_prot);
+-
+-void kunmap_atomic_high(void *kvaddr)
+-{
+- unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
+- int type;
+- unsigned int idx;
+-
+- if (vaddr < __fix_to_virt(FIX_KMAP_END))
+- return;
+-
+- type = kmap_atomic_idx();
+-
+- idx = type + KM_TYPE_NR * smp_processor_id();
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- BUG_ON(vaddr != __fix_to_virt(FIX_KMAP_BEGIN + idx));
+-#endif
+- /*
+- * force other mappings to Oops if they'll try to access
+- * this pte without first remap it
+- */
+- pte_clear(&init_mm, vaddr, kmap_pte-idx);
+- local_flush_tlb_page(NULL, vaddr);
+-
+- kmap_atomic_idx_pop();
+-}
+-EXPORT_SYMBOL(kunmap_atomic_high);
+diff --git a/arch/microblaze/mm/init.c b/arch/microblaze/mm/init.c
+index 45da639bd22c..1f4b5b34e600 100644
+--- a/arch/microblaze/mm/init.c
++++ b/arch/microblaze/mm/init.c
+@@ -49,17 +49,11 @@ unsigned long lowmem_size;
+ EXPORT_SYMBOL(min_low_pfn);
+ EXPORT_SYMBOL(max_low_pfn);
+
+-#ifdef CONFIG_HIGHMEM
+-pte_t *kmap_pte;
+-EXPORT_SYMBOL(kmap_pte);
+-
+ static void __init highmem_init(void)
+ {
+ pr_debug("%x\n", (u32)PKMAP_BASE);
+ map_page(PKMAP_BASE, 0, 0); /* XXX gross */
+ pkmap_page_table = virt_to_kpte(PKMAP_BASE);
+-
+- kmap_pte = virt_to_kpte(__fix_to_virt(FIX_KMAP_BEGIN));
+ }
+
+ static void highmem_setup(void)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0036-mips-mm-highmem-Switch-to-generic-kmap-atomic.patch b/debian/patches-rt/0036-mips-mm-highmem-Switch-to-generic-kmap-atomic.patch
new file mode 100644
index 000000000..998662451
--- /dev/null
+++ b/debian/patches-rt/0036-mips-mm-highmem-Switch-to-generic-kmap-atomic.patch
@@ -0,0 +1,219 @@
+From 5ff7160041ca1461c70a70237f3c6a4b09d54472 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:25 +0100
+Subject: [PATCH 036/323] mips/mm/highmem: Switch to generic kmap atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+No reason having the same code in every architecture
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
+Cc: linux-mips@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/mips/Kconfig | 1 +
+ arch/mips/include/asm/fixmap.h | 4 +-
+ arch/mips/include/asm/highmem.h | 6 +--
+ arch/mips/include/asm/kmap_types.h | 13 -----
+ arch/mips/mm/highmem.c | 77 ------------------------------
+ arch/mips/mm/init.c | 4 --
+ 6 files changed, 6 insertions(+), 99 deletions(-)
+ delete mode 100644 arch/mips/include/asm/kmap_types.h
+
+diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig
+index 18ebacf29889..0e02b2e6ee06 100644
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -2733,6 +2733,7 @@ config WAR_MIPS34K_MISSED_ITLB
+ config HIGHMEM
+ bool "High Memory Support"
+ depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM && !CPU_MIPS32_3_5_EVA
++ select KMAP_LOCAL
+
+ config CPU_SUPPORTS_HIGHMEM
+ bool
+diff --git a/arch/mips/include/asm/fixmap.h b/arch/mips/include/asm/fixmap.h
+index 743535be7528..beea14761cef 100644
+--- a/arch/mips/include/asm/fixmap.h
++++ b/arch/mips/include/asm/fixmap.h
+@@ -17,7 +17,7 @@
+ #include <spaces.h>
+ #ifdef CONFIG_HIGHMEM
+ #include <linux/threads.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+ #endif
+
+ /*
+@@ -52,7 +52,7 @@ enum fixed_addresses {
+ #ifdef CONFIG_HIGHMEM
+ /* reserved pte's for temporary kernel mappings */
+ FIX_KMAP_BEGIN = FIX_CMAP_END + 1,
+- FIX_KMAP_END = FIX_KMAP_BEGIN+(KM_TYPE_NR*NR_CPUS)-1,
++ FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_MAX_IDX * NR_CPUS) - 1,
+ #endif
+ __end_of_fixed_addresses
+ };
+diff --git a/arch/mips/include/asm/highmem.h b/arch/mips/include/asm/highmem.h
+index 9f021cf51aa7..1716181ea66d 100644
+--- a/arch/mips/include/asm/highmem.h
++++ b/arch/mips/include/asm/highmem.h
+@@ -24,7 +24,7 @@
+ #include <linux/interrupt.h>
+ #include <linux/uaccess.h>
+ #include <asm/cpu-features.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+
+ /* declarations for highmem.c */
+ extern unsigned long highstart_pfn, highend_pfn;
+@@ -48,11 +48,11 @@ extern pte_t *pkmap_page_table;
+
+ #define ARCH_HAS_KMAP_FLUSH_TLB
+ extern void kmap_flush_tlb(unsigned long addr);
+-extern void *kmap_atomic_pfn(unsigned long pfn);
+
+ #define flush_cache_kmaps() BUG_ON(cpu_has_dc_aliases)
+
+-extern void kmap_init(void);
++#define arch_kmap_local_post_map(vaddr, pteval) local_flush_tlb_one(vaddr)
++#define arch_kmap_local_post_unmap(vaddr) local_flush_tlb_one(vaddr)
+
+ #endif /* __KERNEL__ */
+
+diff --git a/arch/mips/include/asm/kmap_types.h b/arch/mips/include/asm/kmap_types.h
+deleted file mode 100644
+index 16665dc2431b..000000000000
+--- a/arch/mips/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,13 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-#ifndef _ASM_KMAP_TYPES_H
+-#define _ASM_KMAP_TYPES_H
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+-#define __WITH_KM_FENCE
+-#endif
+-
+-#include <asm-generic/kmap_types.h>
+-
+-#undef __WITH_KM_FENCE
+-
+-#endif
+diff --git a/arch/mips/mm/highmem.c b/arch/mips/mm/highmem.c
+index 5fec7f45d79a..57e2f08f00d0 100644
+--- a/arch/mips/mm/highmem.c
++++ b/arch/mips/mm/highmem.c
+@@ -8,8 +8,6 @@
+ #include <asm/fixmap.h>
+ #include <asm/tlbflush.h>
+
+-static pte_t *kmap_pte;
+-
+ unsigned long highstart_pfn, highend_pfn;
+
+ void kmap_flush_tlb(unsigned long addr)
+@@ -17,78 +15,3 @@ void kmap_flush_tlb(unsigned long addr)
+ flush_tlb_one(addr);
+ }
+ EXPORT_SYMBOL(kmap_flush_tlb);
+-
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
+-{
+- unsigned long vaddr;
+- int idx, type;
+-
+- type = kmap_atomic_idx_push();
+- idx = type + KM_TYPE_NR*smp_processor_id();
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- BUG_ON(!pte_none(*(kmap_pte - idx)));
+-#endif
+- set_pte(kmap_pte-idx, mk_pte(page, prot));
+- local_flush_tlb_one((unsigned long)vaddr);
+-
+- return (void*) vaddr;
+-}
+-EXPORT_SYMBOL(kmap_atomic_high_prot);
+-
+-void kunmap_atomic_high(void *kvaddr)
+-{
+- unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
+- int type __maybe_unused;
+-
+- if (vaddr < FIXADDR_START)
+- return;
+-
+- type = kmap_atomic_idx();
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- {
+- int idx = type + KM_TYPE_NR * smp_processor_id();
+-
+- BUG_ON(vaddr != __fix_to_virt(FIX_KMAP_BEGIN + idx));
+-
+- /*
+- * force other mappings to Oops if they'll try to access
+- * this pte without first remap it
+- */
+- pte_clear(&init_mm, vaddr, kmap_pte-idx);
+- local_flush_tlb_one(vaddr);
+- }
+-#endif
+- kmap_atomic_idx_pop();
+-}
+-EXPORT_SYMBOL(kunmap_atomic_high);
+-
+-/*
+- * This is the same as kmap_atomic() but can map memory that doesn't
+- * have a struct page associated with it.
+- */
+-void *kmap_atomic_pfn(unsigned long pfn)
+-{
+- unsigned long vaddr;
+- int idx, type;
+-
+- preempt_disable();
+- pagefault_disable();
+-
+- type = kmap_atomic_idx_push();
+- idx = type + KM_TYPE_NR*smp_processor_id();
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+- set_pte(kmap_pte-idx, pfn_pte(pfn, PAGE_KERNEL));
+- flush_tlb_one(vaddr);
+-
+- return (void*) vaddr;
+-}
+-
+-void __init kmap_init(void)
+-{
+- unsigned long kmap_vstart;
+-
+- /* cache the first kmap pte */
+- kmap_vstart = __fix_to_virt(FIX_KMAP_BEGIN);
+- kmap_pte = virt_to_kpte(kmap_vstart);
+-}
+diff --git a/arch/mips/mm/init.c b/arch/mips/mm/init.c
+index 07e84a774938..bc80893e5c0f 100644
+--- a/arch/mips/mm/init.c
++++ b/arch/mips/mm/init.c
+@@ -36,7 +36,6 @@
+ #include <asm/cachectl.h>
+ #include <asm/cpu.h>
+ #include <asm/dma.h>
+-#include <asm/kmap_types.h>
+ #include <asm/maar.h>
+ #include <asm/mmu_context.h>
+ #include <asm/sections.h>
+@@ -402,9 +401,6 @@ void __init paging_init(void)
+
+ pagetable_init();
+
+-#ifdef CONFIG_HIGHMEM
+- kmap_init();
+-#endif
+ #ifdef CONFIG_ZONE_DMA
+ max_zone_pfns[ZONE_DMA] = MAX_DMA_PFN;
+ #endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0037-nds32-mm-highmem-Switch-to-generic-kmap-atomic.patch b/debian/patches-rt/0037-nds32-mm-highmem-Switch-to-generic-kmap-atomic.patch
new file mode 100644
index 000000000..08d1dc198
--- /dev/null
+++ b/debian/patches-rt/0037-nds32-mm-highmem-Switch-to-generic-kmap-atomic.patch
@@ -0,0 +1,167 @@
+From bc36ab505c69bbf7d37b57cb983ca97b198c44df Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:26 +0100
+Subject: [PATCH 037/323] nds32/mm/highmem: Switch to generic kmap atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The mapping code is odd and looks broken. See FIXME in the comment.
+
+Also fix the harmless off by one in the FIX_KMAP_END define.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Nick Hu <nickhu@andestech.com>
+Cc: Greentime Hu <green.hu@gmail.com>
+Cc: Vincent Chen <deanbo422@gmail.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/nds32/Kconfig.cpu | 1 +
+ arch/nds32/include/asm/fixmap.h | 4 +--
+ arch/nds32/include/asm/highmem.h | 22 +++++++++++----
+ arch/nds32/mm/Makefile | 1 -
+ arch/nds32/mm/highmem.c | 48 --------------------------------
+ 5 files changed, 19 insertions(+), 57 deletions(-)
+ delete mode 100644 arch/nds32/mm/highmem.c
+
+diff --git a/arch/nds32/Kconfig.cpu b/arch/nds32/Kconfig.cpu
+index f88a12fdf0f3..c10759952485 100644
+--- a/arch/nds32/Kconfig.cpu
++++ b/arch/nds32/Kconfig.cpu
+@@ -157,6 +157,7 @@ config HW_SUPPORT_UNALIGNMENT_ACCESS
+ config HIGHMEM
+ bool "High Memory Support"
+ depends on MMU && !CPU_CACHE_ALIASING
++ select KMAP_LOCAL
+ help
+ The address space of Andes processors is only 4 Gigabytes large
+ and it has to accommodate user address space, kernel address
+diff --git a/arch/nds32/include/asm/fixmap.h b/arch/nds32/include/asm/fixmap.h
+index 5a4bf11e5800..2fa09a2de428 100644
+--- a/arch/nds32/include/asm/fixmap.h
++++ b/arch/nds32/include/asm/fixmap.h
+@@ -6,7 +6,7 @@
+
+ #ifdef CONFIG_HIGHMEM
+ #include <linux/threads.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+ #endif
+
+ enum fixed_addresses {
+@@ -14,7 +14,7 @@ enum fixed_addresses {
+ FIX_KMAP_RESERVED,
+ FIX_KMAP_BEGIN,
+ #ifdef CONFIG_HIGHMEM
+- FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_TYPE_NR * NR_CPUS),
++ FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_MAX_IDX * NR_CPUS) - 1,
+ #endif
+ FIX_EARLYCON_MEM_BASE,
+ __end_of_fixed_addresses
+diff --git a/arch/nds32/include/asm/highmem.h b/arch/nds32/include/asm/highmem.h
+index fe986d0e6e3f..16159a8716f2 100644
+--- a/arch/nds32/include/asm/highmem.h
++++ b/arch/nds32/include/asm/highmem.h
+@@ -5,7 +5,6 @@
+ #define _ASM_HIGHMEM_H
+
+ #include <asm/proc-fns.h>
+-#include <asm/kmap_types.h>
+ #include <asm/fixmap.h>
+
+ /*
+@@ -45,11 +44,22 @@ extern pte_t *pkmap_page_table;
+ extern void kmap_init(void);
+
+ /*
+- * The following functions are already defined by <linux/highmem.h>
+- * when CONFIG_HIGHMEM is not set.
++ * FIXME: The below looks broken vs. a kmap_atomic() in task context which
++ * is interupted and another kmap_atomic() happens in interrupt context.
++ * But what do I know about nds32. -- tglx
+ */
+-#ifdef CONFIG_HIGHMEM
+-extern void *kmap_atomic_pfn(unsigned long pfn);
+-#endif
++#define arch_kmap_local_post_map(vaddr, pteval) \
++ do { \
++ __nds32__tlbop_inv(vaddr); \
++ __nds32__mtsr_dsb(vaddr, NDS32_SR_TLB_VPN); \
++ __nds32__tlbop_rwr(pteval); \
++ __nds32__isb(); \
++ } while (0)
++
++#define arch_kmap_local_pre_unmap(vaddr) \
++ do { \
++ __nds32__tlbop_inv(vaddr); \
++ __nds32__isb(); \
++ } while (0)
+
+ #endif
+diff --git a/arch/nds32/mm/Makefile b/arch/nds32/mm/Makefile
+index 897ecaf5cf54..14fb2e8eb036 100644
+--- a/arch/nds32/mm/Makefile
++++ b/arch/nds32/mm/Makefile
+@@ -3,7 +3,6 @@ obj-y := extable.o tlb.o fault.o init.o mmap.o \
+ mm-nds32.o cacheflush.o proc.o
+
+ obj-$(CONFIG_ALIGNMENT_TRAP) += alignment.o
+-obj-$(CONFIG_HIGHMEM) += highmem.o
+
+ ifdef CONFIG_FUNCTION_TRACER
+ CFLAGS_REMOVE_proc.o = $(CC_FLAGS_FTRACE)
+diff --git a/arch/nds32/mm/highmem.c b/arch/nds32/mm/highmem.c
+deleted file mode 100644
+index 4284cd59e21a..000000000000
+--- a/arch/nds32/mm/highmem.c
++++ /dev/null
+@@ -1,48 +0,0 @@
+-// SPDX-License-Identifier: GPL-2.0
+-// Copyright (C) 2005-2017 Andes Technology Corporation
+-
+-#include <linux/export.h>
+-#include <linux/highmem.h>
+-#include <linux/sched.h>
+-#include <linux/smp.h>
+-#include <linux/interrupt.h>
+-#include <linux/memblock.h>
+-#include <asm/fixmap.h>
+-#include <asm/tlbflush.h>
+-
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
+-{
+- unsigned int idx;
+- unsigned long vaddr, pte;
+- int type;
+- pte_t *ptep;
+-
+- type = kmap_atomic_idx_push();
+-
+- idx = type + KM_TYPE_NR * smp_processor_id();
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+- pte = (page_to_pfn(page) << PAGE_SHIFT) | prot;
+- ptep = pte_offset_kernel(pmd_off_k(vaddr), vaddr);
+- set_pte(ptep, pte);
+-
+- __nds32__tlbop_inv(vaddr);
+- __nds32__mtsr_dsb(vaddr, NDS32_SR_TLB_VPN);
+- __nds32__tlbop_rwr(pte);
+- __nds32__isb();
+- return (void *)vaddr;
+-}
+-EXPORT_SYMBOL(kmap_atomic_high_prot);
+-
+-void kunmap_atomic_high(void *kvaddr)
+-{
+- if (kvaddr >= (void *)FIXADDR_START) {
+- unsigned long vaddr = (unsigned long)kvaddr;
+- pte_t *ptep;
+- kmap_atomic_idx_pop();
+- __nds32__tlbop_inv(vaddr);
+- __nds32__isb();
+- ptep = pte_offset_kernel(pmd_off_k(vaddr), vaddr);
+- set_pte(ptep, 0);
+- }
+-}
+-EXPORT_SYMBOL(kunmap_atomic_high);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0038-powerpc-mm-highmem-Switch-to-generic-kmap-atomic.patch b/debian/patches-rt/0038-powerpc-mm-highmem-Switch-to-generic-kmap-atomic.patch
new file mode 100644
index 000000000..92e962c1f
--- /dev/null
+++ b/debian/patches-rt/0038-powerpc-mm-highmem-Switch-to-generic-kmap-atomic.patch
@@ -0,0 +1,221 @@
+From 6d7d749a6b27ada63e8be5d1903d336538b40702 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:27 +0100
+Subject: [PATCH 038/323] powerpc/mm/highmem: Switch to generic kmap atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+No reason having the same code in every architecture
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Michael Ellerman <mpe@ellerman.id.au>
+Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
+Cc: Paul Mackerras <paulus@samba.org>
+Cc: linuxppc-dev@lists.ozlabs.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/powerpc/Kconfig | 1 +
+ arch/powerpc/include/asm/fixmap.h | 4 +-
+ arch/powerpc/include/asm/highmem.h | 7 ++-
+ arch/powerpc/include/asm/kmap_types.h | 13 ------
+ arch/powerpc/mm/Makefile | 1 -
+ arch/powerpc/mm/highmem.c | 67 ---------------------------
+ arch/powerpc/mm/mem.c | 7 ---
+ 7 files changed, 8 insertions(+), 92 deletions(-)
+ delete mode 100644 arch/powerpc/include/asm/kmap_types.h
+ delete mode 100644 arch/powerpc/mm/highmem.c
+
+diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
+index 78dd6be8b31d..b3ab6c2d9f66 100644
+--- a/arch/powerpc/Kconfig
++++ b/arch/powerpc/Kconfig
+@@ -410,6 +410,7 @@ menu "Kernel options"
+ config HIGHMEM
+ bool "High memory support"
+ depends on PPC32
++ select KMAP_LOCAL
+
+ source "kernel/Kconfig.hz"
+
+diff --git a/arch/powerpc/include/asm/fixmap.h b/arch/powerpc/include/asm/fixmap.h
+index 897cc68758d4..a832aeafe560 100644
+--- a/arch/powerpc/include/asm/fixmap.h
++++ b/arch/powerpc/include/asm/fixmap.h
+@@ -20,7 +20,7 @@
+ #include <asm/page.h>
+ #ifdef CONFIG_HIGHMEM
+ #include <linux/threads.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+ #endif
+
+ #ifdef CONFIG_PPC64
+@@ -61,7 +61,7 @@ enum fixed_addresses {
+ FIX_EARLY_DEBUG_BASE = FIX_EARLY_DEBUG_TOP+(ALIGN(SZ_128K, PAGE_SIZE)/PAGE_SIZE)-1,
+ #ifdef CONFIG_HIGHMEM
+ FIX_KMAP_BEGIN, /* reserved pte's for temporary kernel mappings */
+- FIX_KMAP_END = FIX_KMAP_BEGIN+(KM_TYPE_NR*NR_CPUS)-1,
++ FIX_KMAP_END = FIX_KMAP_BEGIN + (KM_MAX_IDX * NR_CPUS) - 1,
+ #endif
+ #ifdef CONFIG_PPC_8xx
+ /* For IMMR we need an aligned 512K area */
+diff --git a/arch/powerpc/include/asm/highmem.h b/arch/powerpc/include/asm/highmem.h
+index 104026f7d6bc..80a5ae771c65 100644
+--- a/arch/powerpc/include/asm/highmem.h
++++ b/arch/powerpc/include/asm/highmem.h
+@@ -24,12 +24,10 @@
+ #ifdef __KERNEL__
+
+ #include <linux/interrupt.h>
+-#include <asm/kmap_types.h>
+ #include <asm/cacheflush.h>
+ #include <asm/page.h>
+ #include <asm/fixmap.h>
+
+-extern pte_t *kmap_pte;
+ extern pte_t *pkmap_page_table;
+
+ /*
+@@ -60,6 +58,11 @@ extern pte_t *pkmap_page_table;
+
+ #define flush_cache_kmaps() flush_cache_all()
+
++#define arch_kmap_local_post_map(vaddr, pteval) \
++ local_flush_tlb_page(NULL, vaddr)
++#define arch_kmap_local_post_unmap(vaddr) \
++ local_flush_tlb_page(NULL, vaddr)
++
+ #endif /* __KERNEL__ */
+
+ #endif /* _ASM_HIGHMEM_H */
+diff --git a/arch/powerpc/include/asm/kmap_types.h b/arch/powerpc/include/asm/kmap_types.h
+deleted file mode 100644
+index c8fa182d48c8..000000000000
+--- a/arch/powerpc/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,13 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0-or-later */
+-#ifndef _ASM_POWERPC_KMAP_TYPES_H
+-#define _ASM_POWERPC_KMAP_TYPES_H
+-
+-#ifdef __KERNEL__
+-
+-/*
+- */
+-
+-#define KM_TYPE_NR 16
+-
+-#endif /* __KERNEL__ */
+-#endif /* _ASM_POWERPC_KMAP_TYPES_H */
+diff --git a/arch/powerpc/mm/Makefile b/arch/powerpc/mm/Makefile
+index 55b4a8bd408a..3b4e9e4e25ea 100644
+--- a/arch/powerpc/mm/Makefile
++++ b/arch/powerpc/mm/Makefile
+@@ -16,7 +16,6 @@ obj-$(CONFIG_NEED_MULTIPLE_NODES) += numa.o
+ obj-$(CONFIG_PPC_MM_SLICES) += slice.o
+ obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o
+ obj-$(CONFIG_NOT_COHERENT_CACHE) += dma-noncoherent.o
+-obj-$(CONFIG_HIGHMEM) += highmem.o
+ obj-$(CONFIG_PPC_COPRO_BASE) += copro_fault.o
+ obj-$(CONFIG_PPC_PTDUMP) += ptdump/
+ obj-$(CONFIG_KASAN) += kasan/
+diff --git a/arch/powerpc/mm/highmem.c b/arch/powerpc/mm/highmem.c
+deleted file mode 100644
+index 624b4438aff9..000000000000
+--- a/arch/powerpc/mm/highmem.c
++++ /dev/null
+@@ -1,67 +0,0 @@
+-// SPDX-License-Identifier: GPL-2.0
+-/*
+- * highmem.c: virtual kernel memory mappings for high memory
+- *
+- * PowerPC version, stolen from the i386 version.
+- *
+- * Used in CONFIG_HIGHMEM systems for memory pages which
+- * are not addressable by direct kernel virtual addresses.
+- *
+- * Copyright (C) 1999 Gerhard Wichert, Siemens AG
+- * Gerhard.Wichert@pdb.siemens.de
+- *
+- *
+- * Redesigned the x86 32-bit VM architecture to deal with
+- * up to 16 Terrabyte physical memory. With current x86 CPUs
+- * we now support up to 64 Gigabytes physical RAM.
+- *
+- * Copyright (C) 1999 Ingo Molnar <mingo@redhat.com>
+- *
+- * Reworked for PowerPC by various contributors. Moved from
+- * highmem.h by Benjamin Herrenschmidt (c) 2009 IBM Corp.
+- */
+-
+-#include <linux/highmem.h>
+-#include <linux/module.h>
+-
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
+-{
+- unsigned long vaddr;
+- int idx, type;
+-
+- type = kmap_atomic_idx_push();
+- idx = type + KM_TYPE_NR*smp_processor_id();
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+- WARN_ON(IS_ENABLED(CONFIG_DEBUG_HIGHMEM) && !pte_none(*(kmap_pte - idx)));
+- __set_pte_at(&init_mm, vaddr, kmap_pte-idx, mk_pte(page, prot), 1);
+- local_flush_tlb_page(NULL, vaddr);
+-
+- return (void*) vaddr;
+-}
+-EXPORT_SYMBOL(kmap_atomic_high_prot);
+-
+-void kunmap_atomic_high(void *kvaddr)
+-{
+- unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
+-
+- if (vaddr < __fix_to_virt(FIX_KMAP_END))
+- return;
+-
+- if (IS_ENABLED(CONFIG_DEBUG_HIGHMEM)) {
+- int type = kmap_atomic_idx();
+- unsigned int idx;
+-
+- idx = type + KM_TYPE_NR * smp_processor_id();
+- WARN_ON(vaddr != __fix_to_virt(FIX_KMAP_BEGIN + idx));
+-
+- /*
+- * force other mappings to Oops if they'll try to access
+- * this pte without first remap it
+- */
+- pte_clear(&init_mm, vaddr, kmap_pte-idx);
+- local_flush_tlb_page(NULL, vaddr);
+- }
+-
+- kmap_atomic_idx_pop();
+-}
+-EXPORT_SYMBOL(kunmap_atomic_high);
+diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c
+index 08e3422eb792..1faa0789871d 100644
+--- a/arch/powerpc/mm/mem.c
++++ b/arch/powerpc/mm/mem.c
+@@ -63,11 +63,6 @@
+ unsigned long long memory_limit;
+ bool init_mem_is_free;
+
+-#ifdef CONFIG_HIGHMEM
+-pte_t *kmap_pte;
+-EXPORT_SYMBOL(kmap_pte);
+-#endif
+-
+ pgprot_t phys_mem_access_prot(struct file *file, unsigned long pfn,
+ unsigned long size, pgprot_t vma_prot)
+ {
+@@ -237,8 +232,6 @@ void __init paging_init(void)
+
+ map_kernel_page(PKMAP_BASE, 0, __pgprot(0)); /* XXX gross */
+ pkmap_page_table = virt_to_kpte(PKMAP_BASE);
+-
+- kmap_pte = virt_to_kpte(__fix_to_virt(FIX_KMAP_BEGIN));
+ #endif /* CONFIG_HIGHMEM */
+
+ printk(KERN_DEBUG "Top of RAM: 0x%llx, Total RAM: 0x%llx\n",
+--
+2.43.0
+
diff --git a/debian/patches-rt/0039-sparc-mm-highmem-Switch-to-generic-kmap-atomic.patch b/debian/patches-rt/0039-sparc-mm-highmem-Switch-to-generic-kmap-atomic.patch
new file mode 100644
index 000000000..5ac60d218
--- /dev/null
+++ b/debian/patches-rt/0039-sparc-mm-highmem-Switch-to-generic-kmap-atomic.patch
@@ -0,0 +1,254 @@
+From 859a29e0206dcd137ea0db376a846246f1071bfb Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:28 +0100
+Subject: [PATCH 039/323] sparc/mm/highmem: Switch to generic kmap atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+No reason having the same code in every architecture
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: "David S. Miller" <davem@davemloft.net>
+Cc: sparclinux@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/sparc/Kconfig | 1 +
+ arch/sparc/include/asm/highmem.h | 8 +-
+ arch/sparc/include/asm/kmap_types.h | 11 ---
+ arch/sparc/include/asm/vaddrs.h | 4 +-
+ arch/sparc/mm/Makefile | 3 -
+ arch/sparc/mm/highmem.c | 115 ----------------------------
+ arch/sparc/mm/srmmu.c | 2 -
+ 7 files changed, 8 insertions(+), 136 deletions(-)
+ delete mode 100644 arch/sparc/include/asm/kmap_types.h
+ delete mode 100644 arch/sparc/mm/highmem.c
+
+diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig
+index 7e2ce4c8d657..1a6e4b187861 100644
+--- a/arch/sparc/Kconfig
++++ b/arch/sparc/Kconfig
+@@ -140,6 +140,7 @@ config MMU
+ config HIGHMEM
+ bool
+ default y if SPARC32
++ select KMAP_LOCAL
+
+ config ZONE_DMA
+ bool
+diff --git a/arch/sparc/include/asm/highmem.h b/arch/sparc/include/asm/highmem.h
+index 6c35f0d27ee1..875116209ec1 100644
+--- a/arch/sparc/include/asm/highmem.h
++++ b/arch/sparc/include/asm/highmem.h
+@@ -24,7 +24,6 @@
+ #include <linux/interrupt.h>
+ #include <linux/pgtable.h>
+ #include <asm/vaddrs.h>
+-#include <asm/kmap_types.h>
+ #include <asm/pgtsrmmu.h>
+
+ /* declarations for highmem.c */
+@@ -33,8 +32,6 @@ extern unsigned long highstart_pfn, highend_pfn;
+ #define kmap_prot __pgprot(SRMMU_ET_PTE | SRMMU_PRIV | SRMMU_CACHE)
+ extern pte_t *pkmap_page_table;
+
+-void kmap_init(void) __init;
+-
+ /*
+ * Right now we initialize only a single pte table. It can be extended
+ * easily, subsequent pte tables have to be allocated in one physical
+@@ -53,6 +50,11 @@ void kmap_init(void) __init;
+
+ #define flush_cache_kmaps() flush_cache_all()
+
++/* FIXME: Use __flush_tlb_one(vaddr) instead of flush_cache_all() -- Anton */
++#define arch_kmap_local_post_map(vaddr, pteval) flush_cache_all()
++#define arch_kmap_local_post_unmap(vaddr) flush_cache_all()
++
++
+ #endif /* __KERNEL__ */
+
+ #endif /* _ASM_HIGHMEM_H */
+diff --git a/arch/sparc/include/asm/kmap_types.h b/arch/sparc/include/asm/kmap_types.h
+deleted file mode 100644
+index 55a99b6bd91e..000000000000
+--- a/arch/sparc/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,11 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-#ifndef _ASM_KMAP_TYPES_H
+-#define _ASM_KMAP_TYPES_H
+-
+-/* Dummy header just to define km_type. None of this
+- * is actually used on sparc. -DaveM
+- */
+-
+-#include <asm-generic/kmap_types.h>
+-
+-#endif
+diff --git a/arch/sparc/include/asm/vaddrs.h b/arch/sparc/include/asm/vaddrs.h
+index 84d054b07a6f..4fec0341e2a8 100644
+--- a/arch/sparc/include/asm/vaddrs.h
++++ b/arch/sparc/include/asm/vaddrs.h
+@@ -32,13 +32,13 @@
+ #define SRMMU_NOCACHE_ALCRATIO 64 /* 256 pages per 64MB of system RAM */
+
+ #ifndef __ASSEMBLY__
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+
+ enum fixed_addresses {
+ FIX_HOLE,
+ #ifdef CONFIG_HIGHMEM
+ FIX_KMAP_BEGIN,
+- FIX_KMAP_END = (KM_TYPE_NR * NR_CPUS),
++ FIX_KMAP_END = (KM_MAX_IDX * NR_CPUS),
+ #endif
+ __end_of_fixed_addresses
+ };
+diff --git a/arch/sparc/mm/Makefile b/arch/sparc/mm/Makefile
+index b078205b70e0..68db1f859b02 100644
+--- a/arch/sparc/mm/Makefile
++++ b/arch/sparc/mm/Makefile
+@@ -15,6 +15,3 @@ obj-$(CONFIG_SPARC32) += leon_mm.o
+
+ # Only used by sparc64
+ obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o
+-
+-# Only used by sparc32
+-obj-$(CONFIG_HIGHMEM) += highmem.o
+diff --git a/arch/sparc/mm/highmem.c b/arch/sparc/mm/highmem.c
+deleted file mode 100644
+index 8f2a2afb048a..000000000000
+--- a/arch/sparc/mm/highmem.c
++++ /dev/null
+@@ -1,115 +0,0 @@
+-// SPDX-License-Identifier: GPL-2.0
+-/*
+- * highmem.c: virtual kernel memory mappings for high memory
+- *
+- * Provides kernel-static versions of atomic kmap functions originally
+- * found as inlines in include/asm-sparc/highmem.h. These became
+- * needed as kmap_atomic() and kunmap_atomic() started getting
+- * called from within modules.
+- * -- Tomas Szepe <szepe@pinerecords.com>, September 2002
+- *
+- * But kmap_atomic() and kunmap_atomic() cannot be inlined in
+- * modules because they are loaded with btfixup-ped functions.
+- */
+-
+-/*
+- * The use of kmap_atomic/kunmap_atomic is discouraged - kmap/kunmap
+- * gives a more generic (and caching) interface. But kmap_atomic can
+- * be used in IRQ contexts, so in some (very limited) cases we need it.
+- *
+- * XXX This is an old text. Actually, it's good to use atomic kmaps,
+- * provided you remember that they are atomic and not try to sleep
+- * with a kmap taken, much like a spinlock. Non-atomic kmaps are
+- * shared by CPUs, and so precious, and establishing them requires IPI.
+- * Atomic kmaps are lightweight and we may have NCPUS more of them.
+- */
+-#include <linux/highmem.h>
+-#include <linux/export.h>
+-#include <linux/mm.h>
+-
+-#include <asm/cacheflush.h>
+-#include <asm/tlbflush.h>
+-#include <asm/vaddrs.h>
+-
+-static pte_t *kmap_pte;
+-
+-void __init kmap_init(void)
+-{
+- unsigned long address = __fix_to_virt(FIX_KMAP_BEGIN);
+-
+- /* cache the first kmap pte */
+- kmap_pte = virt_to_kpte(address);
+-}
+-
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
+-{
+- unsigned long vaddr;
+- long idx, type;
+-
+- type = kmap_atomic_idx_push();
+- idx = type + KM_TYPE_NR*smp_processor_id();
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+-
+-/* XXX Fix - Anton */
+-#if 0
+- __flush_cache_one(vaddr);
+-#else
+- flush_cache_all();
+-#endif
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- BUG_ON(!pte_none(*(kmap_pte-idx)));
+-#endif
+- set_pte(kmap_pte-idx, mk_pte(page, prot));
+-/* XXX Fix - Anton */
+-#if 0
+- __flush_tlb_one(vaddr);
+-#else
+- flush_tlb_all();
+-#endif
+-
+- return (void*) vaddr;
+-}
+-EXPORT_SYMBOL(kmap_atomic_high_prot);
+-
+-void kunmap_atomic_high(void *kvaddr)
+-{
+- unsigned long vaddr = (unsigned long) kvaddr & PAGE_MASK;
+- int type;
+-
+- if (vaddr < FIXADDR_START)
+- return;
+-
+- type = kmap_atomic_idx();
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- {
+- unsigned long idx;
+-
+- idx = type + KM_TYPE_NR * smp_processor_id();
+- BUG_ON(vaddr != __fix_to_virt(FIX_KMAP_BEGIN+idx));
+-
+- /* XXX Fix - Anton */
+-#if 0
+- __flush_cache_one(vaddr);
+-#else
+- flush_cache_all();
+-#endif
+-
+- /*
+- * force other mappings to Oops if they'll try to access
+- * this pte without first remap it
+- */
+- pte_clear(&init_mm, vaddr, kmap_pte-idx);
+- /* XXX Fix - Anton */
+-#if 0
+- __flush_tlb_one(vaddr);
+-#else
+- flush_tlb_all();
+-#endif
+- }
+-#endif
+-
+- kmap_atomic_idx_pop();
+-}
+-EXPORT_SYMBOL(kunmap_atomic_high);
+diff --git a/arch/sparc/mm/srmmu.c b/arch/sparc/mm/srmmu.c
+index 0070f8b9a753..a03caa5f6628 100644
+--- a/arch/sparc/mm/srmmu.c
++++ b/arch/sparc/mm/srmmu.c
+@@ -971,8 +971,6 @@ void __init srmmu_paging_init(void)
+
+ sparc_context_init(num_contexts);
+
+- kmap_init();
+-
+ {
+ unsigned long max_zone_pfn[MAX_NR_ZONES] = { 0 };
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0040-xtensa-mm-highmem-Switch-to-generic-kmap-atomic.patch b/debian/patches-rt/0040-xtensa-mm-highmem-Switch-to-generic-kmap-atomic.patch
new file mode 100644
index 000000000..c17ef447f
--- /dev/null
+++ b/debian/patches-rt/0040-xtensa-mm-highmem-Switch-to-generic-kmap-atomic.patch
@@ -0,0 +1,166 @@
+From 716b526a73eff1c6b44a898c5e66ee2569f7280d Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:29 +0100
+Subject: [PATCH 040/323] xtensa/mm/highmem: Switch to generic kmap atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+No reason having the same code in every architecture
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Chris Zankel <chris@zankel.net>
+Cc: Max Filippov <jcmvbkbc@gmail.com>
+Cc: linux-xtensa@linux-xtensa.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/xtensa/Kconfig | 1 +
+ arch/xtensa/include/asm/fixmap.h | 4 +--
+ arch/xtensa/include/asm/highmem.h | 12 ++++++--
+ arch/xtensa/mm/highmem.c | 46 ++++---------------------------
+ 4 files changed, 18 insertions(+), 45 deletions(-)
+
+diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig
+index 87e08ad38ea7..03cbf6b53622 100644
+--- a/arch/xtensa/Kconfig
++++ b/arch/xtensa/Kconfig
+@@ -666,6 +666,7 @@ endchoice
+ config HIGHMEM
+ bool "High Memory Support"
+ depends on MMU
++ select KMAP_LOCAL
+ help
+ Linux can use the full amount of RAM in the system by
+ default. However, the default MMUv2 setup only maps the
+diff --git a/arch/xtensa/include/asm/fixmap.h b/arch/xtensa/include/asm/fixmap.h
+index a06ffb0c61c7..92049b61c351 100644
+--- a/arch/xtensa/include/asm/fixmap.h
++++ b/arch/xtensa/include/asm/fixmap.h
+@@ -16,7 +16,7 @@
+ #ifdef CONFIG_HIGHMEM
+ #include <linux/threads.h>
+ #include <linux/pgtable.h>
+-#include <asm/kmap_types.h>
++#include <asm/kmap_size.h>
+ #endif
+
+ /*
+@@ -39,7 +39,7 @@ enum fixed_addresses {
+ /* reserved pte's for temporary kernel mappings */
+ FIX_KMAP_BEGIN,
+ FIX_KMAP_END = FIX_KMAP_BEGIN +
+- (KM_TYPE_NR * NR_CPUS * DCACHE_N_COLORS) - 1,
++ (KM_MAX_IDX * NR_CPUS * DCACHE_N_COLORS) - 1,
+ #endif
+ __end_of_fixed_addresses
+ };
+diff --git a/arch/xtensa/include/asm/highmem.h b/arch/xtensa/include/asm/highmem.h
+index eac503215f17..0fc3b1cebc56 100644
+--- a/arch/xtensa/include/asm/highmem.h
++++ b/arch/xtensa/include/asm/highmem.h
+@@ -16,9 +16,8 @@
+ #include <linux/pgtable.h>
+ #include <asm/cacheflush.h>
+ #include <asm/fixmap.h>
+-#include <asm/kmap_types.h>
+
+-#define PKMAP_BASE ((FIXADDR_START - \
++#define PKMAP_BASE ((FIXADDR_START - \
+ (LAST_PKMAP + 1) * PAGE_SIZE) & PMD_MASK)
+ #define LAST_PKMAP (PTRS_PER_PTE * DCACHE_N_COLORS)
+ #define LAST_PKMAP_MASK (LAST_PKMAP - 1)
+@@ -68,6 +67,15 @@ static inline void flush_cache_kmaps(void)
+ flush_cache_all();
+ }
+
++enum fixed_addresses kmap_local_map_idx(int type, unsigned long pfn);
++#define arch_kmap_local_map_idx kmap_local_map_idx
++
++enum fixed_addresses kmap_local_unmap_idx(int type, unsigned long addr);
++#define arch_kmap_local_unmap_idx kmap_local_unmap_idx
++
++#define arch_kmap_local_post_unmap(vaddr) \
++ local_flush_tlb_kernel_range(vaddr, vaddr + PAGE_SIZE)
++
+ void kmap_init(void);
+
+ #endif
+diff --git a/arch/xtensa/mm/highmem.c b/arch/xtensa/mm/highmem.c
+index 673196fe862e..0735ca5e8f86 100644
+--- a/arch/xtensa/mm/highmem.c
++++ b/arch/xtensa/mm/highmem.c
+@@ -12,8 +12,6 @@
+ #include <linux/highmem.h>
+ #include <asm/tlbflush.h>
+
+-static pte_t *kmap_pte;
+-
+ #if DCACHE_WAY_SIZE > PAGE_SIZE
+ unsigned int last_pkmap_nr_arr[DCACHE_N_COLORS];
+ wait_queue_head_t pkmap_map_wait_arr[DCACHE_N_COLORS];
+@@ -33,59 +31,25 @@ static inline void kmap_waitqueues_init(void)
+
+ static inline enum fixed_addresses kmap_idx(int type, unsigned long color)
+ {
+- return (type + KM_TYPE_NR * smp_processor_id()) * DCACHE_N_COLORS +
++ return (type + KM_MAX_IDX * smp_processor_id()) * DCACHE_N_COLORS +
+ color;
+ }
+
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot)
++enum fixed_addresses kmap_local_map_idx(int type, unsigned long pfn)
+ {
+- enum fixed_addresses idx;
+- unsigned long vaddr;
+-
+- idx = kmap_idx(kmap_atomic_idx_push(),
+- DCACHE_ALIAS(page_to_phys(page)));
+- vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- BUG_ON(!pte_none(*(kmap_pte + idx)));
+-#endif
+- set_pte(kmap_pte + idx, mk_pte(page, prot));
+-
+- return (void *)vaddr;
++ return kmap_idx(type, DCACHE_ALIAS(pfn << PAGE_SHIFT));
+ }
+-EXPORT_SYMBOL(kmap_atomic_high_prot);
+
+-void kunmap_atomic_high(void *kvaddr)
++enum fixed_addresses kmap_local_unmap_idx(int type, unsigned long addr)
+ {
+- if (kvaddr >= (void *)FIXADDR_START &&
+- kvaddr < (void *)FIXADDR_TOP) {
+- int idx = kmap_idx(kmap_atomic_idx(),
+- DCACHE_ALIAS((unsigned long)kvaddr));
+-
+- /*
+- * Force other mappings to Oops if they'll try to access this
+- * pte without first remap it. Keeping stale mappings around
+- * is a bad idea also, in case the page changes cacheability
+- * attributes or becomes a protected page in a hypervisor.
+- */
+- pte_clear(&init_mm, kvaddr, kmap_pte + idx);
+- local_flush_tlb_kernel_range((unsigned long)kvaddr,
+- (unsigned long)kvaddr + PAGE_SIZE);
+-
+- kmap_atomic_idx_pop();
+- }
++ return kmap_idx(type, DCACHE_ALIAS(addr));
+ }
+-EXPORT_SYMBOL(kunmap_atomic_high);
+
+ void __init kmap_init(void)
+ {
+- unsigned long kmap_vstart;
+-
+ /* Check if this memory layout is broken because PKMAP overlaps
+ * page table.
+ */
+ BUILD_BUG_ON(PKMAP_BASE < TLBTEMP_BASE_1 + TLBTEMP_SIZE);
+- /* cache the first kmap pte */
+- kmap_vstart = __fix_to_virt(FIX_KMAP_BEGIN);
+- kmap_pte = virt_to_kpte(kmap_vstart);
+ kmap_waitqueues_init();
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0041-highmem-Get-rid-of-kmap_types.h.patch b/debian/patches-rt/0041-highmem-Get-rid-of-kmap_types.h.patch
new file mode 100644
index 000000000..d492fb27f
--- /dev/null
+++ b/debian/patches-rt/0041-highmem-Get-rid-of-kmap_types.h.patch
@@ -0,0 +1,189 @@
+From 78d1ee2f2f990b4876ce2e64c637a660911a903d Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:30 +0100
+Subject: [PATCH 041/323] highmem: Get rid of kmap_types.h
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The header is not longer used and on alpha, ia64, openrisc, parisc and um
+it was completely unused anyway as these architectures have no highmem
+support.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/alpha/include/asm/kmap_types.h | 15 ---------------
+ arch/ia64/include/asm/kmap_types.h | 13 -------------
+ arch/openrisc/mm/init.c | 1 -
+ arch/openrisc/mm/ioremap.c | 1 -
+ arch/parisc/include/asm/kmap_types.h | 13 -------------
+ arch/um/include/asm/fixmap.h | 1 -
+ arch/um/include/asm/kmap_types.h | 13 -------------
+ include/asm-generic/Kbuild | 1 -
+ include/asm-generic/kmap_types.h | 11 -----------
+ include/linux/highmem.h | 2 --
+ 10 files changed, 71 deletions(-)
+ delete mode 100644 arch/alpha/include/asm/kmap_types.h
+ delete mode 100644 arch/ia64/include/asm/kmap_types.h
+ delete mode 100644 arch/parisc/include/asm/kmap_types.h
+ delete mode 100644 arch/um/include/asm/kmap_types.h
+ delete mode 100644 include/asm-generic/kmap_types.h
+
+diff --git a/arch/alpha/include/asm/kmap_types.h b/arch/alpha/include/asm/kmap_types.h
+deleted file mode 100644
+index 651714b45729..000000000000
+--- a/arch/alpha/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,15 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-#ifndef _ASM_KMAP_TYPES_H
+-#define _ASM_KMAP_TYPES_H
+-
+-/* Dummy header just to define km_type. */
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+-#define __WITH_KM_FENCE
+-#endif
+-
+-#include <asm-generic/kmap_types.h>
+-
+-#undef __WITH_KM_FENCE
+-
+-#endif
+diff --git a/arch/ia64/include/asm/kmap_types.h b/arch/ia64/include/asm/kmap_types.h
+deleted file mode 100644
+index 5c268cf7c2bd..000000000000
+--- a/arch/ia64/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,13 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-#ifndef _ASM_IA64_KMAP_TYPES_H
+-#define _ASM_IA64_KMAP_TYPES_H
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+-#define __WITH_KM_FENCE
+-#endif
+-
+-#include <asm-generic/kmap_types.h>
+-
+-#undef __WITH_KM_FENCE
+-
+-#endif /* _ASM_IA64_KMAP_TYPES_H */
+diff --git a/arch/openrisc/mm/init.c b/arch/openrisc/mm/init.c
+index 5e88c351e6a4..f3fa02b8838a 100644
+--- a/arch/openrisc/mm/init.c
++++ b/arch/openrisc/mm/init.c
+@@ -33,7 +33,6 @@
+ #include <asm/io.h>
+ #include <asm/tlb.h>
+ #include <asm/mmu_context.h>
+-#include <asm/kmap_types.h>
+ #include <asm/fixmap.h>
+ #include <asm/tlbflush.h>
+ #include <asm/sections.h>
+diff --git a/arch/openrisc/mm/ioremap.c b/arch/openrisc/mm/ioremap.c
+index a978590d802d..5aed97a18bac 100644
+--- a/arch/openrisc/mm/ioremap.c
++++ b/arch/openrisc/mm/ioremap.c
+@@ -15,7 +15,6 @@
+ #include <linux/io.h>
+ #include <linux/pgtable.h>
+ #include <asm/pgalloc.h>
+-#include <asm/kmap_types.h>
+ #include <asm/fixmap.h>
+ #include <asm/bug.h>
+ #include <linux/sched.h>
+diff --git a/arch/parisc/include/asm/kmap_types.h b/arch/parisc/include/asm/kmap_types.h
+deleted file mode 100644
+index 3e70b5cd1123..000000000000
+--- a/arch/parisc/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,13 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-#ifndef _ASM_KMAP_TYPES_H
+-#define _ASM_KMAP_TYPES_H
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+-#define __WITH_KM_FENCE
+-#endif
+-
+-#include <asm-generic/kmap_types.h>
+-
+-#undef __WITH_KM_FENCE
+-
+-#endif
+diff --git a/arch/um/include/asm/fixmap.h b/arch/um/include/asm/fixmap.h
+index 2c697a145ac1..2efac5827188 100644
+--- a/arch/um/include/asm/fixmap.h
++++ b/arch/um/include/asm/fixmap.h
+@@ -3,7 +3,6 @@
+ #define __UM_FIXMAP_H
+
+ #include <asm/processor.h>
+-#include <asm/kmap_types.h>
+ #include <asm/archparam.h>
+ #include <asm/page.h>
+ #include <linux/threads.h>
+diff --git a/arch/um/include/asm/kmap_types.h b/arch/um/include/asm/kmap_types.h
+deleted file mode 100644
+index b0bd12de1d23..000000000000
+--- a/arch/um/include/asm/kmap_types.h
++++ /dev/null
+@@ -1,13 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-/*
+- * Copyright (C) 2002 Jeff Dike (jdike@karaya.com)
+- */
+-
+-#ifndef __UM_KMAP_TYPES_H
+-#define __UM_KMAP_TYPES_H
+-
+-/* No more #include "asm/arch/kmap_types.h" ! */
+-
+-#define KM_TYPE_NR 14
+-
+-#endif
+diff --git a/include/asm-generic/Kbuild b/include/asm-generic/Kbuild
+index 3114a6da7e56..267f6dfb8960 100644
+--- a/include/asm-generic/Kbuild
++++ b/include/asm-generic/Kbuild
+@@ -30,7 +30,6 @@ mandatory-y += irq.h
+ mandatory-y += irq_regs.h
+ mandatory-y += irq_work.h
+ mandatory-y += kdebug.h
+-mandatory-y += kmap_types.h
+ mandatory-y += kmap_size.h
+ mandatory-y += kprobes.h
+ mandatory-y += linkage.h
+diff --git a/include/asm-generic/kmap_types.h b/include/asm-generic/kmap_types.h
+deleted file mode 100644
+index 9f95b7b63d19..000000000000
+--- a/include/asm-generic/kmap_types.h
++++ /dev/null
+@@ -1,11 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-#ifndef _ASM_GENERIC_KMAP_TYPES_H
+-#define _ASM_GENERIC_KMAP_TYPES_H
+-
+-#ifdef __WITH_KM_FENCE
+-# define KM_TYPE_NR 41
+-#else
+-# define KM_TYPE_NR 20
+-#endif
+-
+-#endif
+diff --git a/include/linux/highmem.h b/include/linux/highmem.h
+index fbede783dc34..a5ce45dceae0 100644
+--- a/include/linux/highmem.h
++++ b/include/linux/highmem.h
+@@ -29,8 +29,6 @@ static inline void invalidate_kernel_vmap_range(void *vaddr, int size)
+ }
+ #endif
+
+-#include <asm/kmap_types.h>
+-
+ /*
+ * Outside of CONFIG_HIGHMEM to support X86 32bit iomap_atomic() cruft.
+ */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0042-mm-highmem-Remove-the-old-kmap_atomic-cruft.patch b/debian/patches-rt/0042-mm-highmem-Remove-the-old-kmap_atomic-cruft.patch
new file mode 100644
index 000000000..112ed0a87
--- /dev/null
+++ b/debian/patches-rt/0042-mm-highmem-Remove-the-old-kmap_atomic-cruft.patch
@@ -0,0 +1,139 @@
+From 2840eec439f3e1788047259d10994b555020de40 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:31 +0100
+Subject: [PATCH 042/323] mm/highmem: Remove the old kmap_atomic cruft
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+All users gone.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/highmem.h | 63 +++--------------------------------------
+ mm/highmem.c | 7 +----
+ 2 files changed, 5 insertions(+), 65 deletions(-)
+
+diff --git a/include/linux/highmem.h b/include/linux/highmem.h
+index a5ce45dceae0..e632774cce87 100644
+--- a/include/linux/highmem.h
++++ b/include/linux/highmem.h
+@@ -86,31 +86,16 @@ static inline void kunmap(struct page *page)
+ * be used in IRQ contexts, so in some (very limited) cases we need
+ * it.
+ */
+-
+-#ifndef CONFIG_KMAP_LOCAL
+-void *kmap_atomic_high_prot(struct page *page, pgprot_t prot);
+-void kunmap_atomic_high(void *kvaddr);
+-
+ static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
+ {
+ preempt_disable();
+ pagefault_disable();
+- if (!PageHighMem(page))
+- return page_address(page);
+- return kmap_atomic_high_prot(page, prot);
+-}
+-
+-static inline void __kunmap_atomic(void *vaddr)
+-{
+- kunmap_atomic_high(vaddr);
++ return __kmap_local_page_prot(page, prot);
+ }
+-#else /* !CONFIG_KMAP_LOCAL */
+
+-static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
++static inline void *kmap_atomic(struct page *page)
+ {
+- preempt_disable();
+- pagefault_disable();
+- return __kmap_local_page_prot(page, prot);
++ return kmap_atomic_prot(page, kmap_prot);
+ }
+
+ static inline void *kmap_atomic_pfn(unsigned long pfn)
+@@ -125,13 +110,6 @@ static inline void __kunmap_atomic(void *addr)
+ kunmap_local_indexed(addr);
+ }
+
+-#endif /* CONFIG_KMAP_LOCAL */
+-
+-static inline void *kmap_atomic(struct page *page)
+-{
+- return kmap_atomic_prot(page, kmap_prot);
+-}
+-
+ /* declarations for linux/mm/highmem.c */
+ unsigned int nr_free_highpages(void);
+ extern atomic_long_t _totalhigh_pages;
+@@ -212,41 +190,8 @@ static inline void __kunmap_atomic(void *addr)
+
+ #define kmap_flush_unused() do {} while(0)
+
+-#endif /* CONFIG_HIGHMEM */
+-
+-#if !defined(CONFIG_KMAP_LOCAL)
+-#if defined(CONFIG_HIGHMEM)
+-
+-DECLARE_PER_CPU(int, __kmap_atomic_idx);
+-
+-static inline int kmap_atomic_idx_push(void)
+-{
+- int idx = __this_cpu_inc_return(__kmap_atomic_idx) - 1;
+-
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- WARN_ON_ONCE(in_irq() && !irqs_disabled());
+- BUG_ON(idx >= KM_TYPE_NR);
+-#endif
+- return idx;
+-}
+-
+-static inline int kmap_atomic_idx(void)
+-{
+- return __this_cpu_read(__kmap_atomic_idx) - 1;
+-}
+
+-static inline void kmap_atomic_idx_pop(void)
+-{
+-#ifdef CONFIG_DEBUG_HIGHMEM
+- int idx = __this_cpu_dec_return(__kmap_atomic_idx);
+-
+- BUG_ON(idx < 0);
+-#else
+- __this_cpu_dec(__kmap_atomic_idx);
+-#endif
+-}
+-#endif
+-#endif
++#endif /* CONFIG_HIGHMEM */
+
+ /*
+ * Prevent people trying to call kunmap_atomic() as if it were kunmap()
+diff --git a/mm/highmem.c b/mm/highmem.c
+index 77677c6844f7..499dfafd36b7 100644
+--- a/mm/highmem.c
++++ b/mm/highmem.c
+@@ -31,12 +31,6 @@
+ #include <asm/tlbflush.h>
+ #include <linux/vmalloc.h>
+
+-#ifndef CONFIG_KMAP_LOCAL
+-#ifdef CONFIG_HIGHMEM
+-DEFINE_PER_CPU(int, __kmap_atomic_idx);
+-#endif
+-#endif
+-
+ /*
+ * Virtual_count is not a pure "count".
+ * 0 means that it is not mapped, and has not been mapped
+@@ -410,6 +404,7 @@ static inline void kmap_local_idx_pop(void)
+ #ifndef arch_kmap_local_post_map
+ # define arch_kmap_local_post_map(vaddr, pteval) do { } while (0)
+ #endif
++
+ #ifndef arch_kmap_local_pre_unmap
+ # define arch_kmap_local_pre_unmap(vaddr) do { } while (0)
+ #endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0043-io-mapping-Cleanup-atomic-iomap.patch b/debian/patches-rt/0043-io-mapping-Cleanup-atomic-iomap.patch
new file mode 100644
index 000000000..08ec0b108
--- /dev/null
+++ b/debian/patches-rt/0043-io-mapping-Cleanup-atomic-iomap.patch
@@ -0,0 +1,90 @@
+From d1b454a9410a5cb2d9dcd0ef4bc330d04847f302 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:32 +0100
+Subject: [PATCH 043/323] io-mapping: Cleanup atomic iomap
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Switch the atomic iomap implementation over to kmap_local and stick the
+preempt/pagefault mechanics into the generic code similar to the
+kmap_atomic variants.
+
+Rename the x86 map function in preparation for a non-atomic variant.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/x86/include/asm/iomap.h | 9 +--------
+ arch/x86/mm/iomap_32.c | 6 ++----
+ include/linux/io-mapping.h | 8 ++++++--
+ 3 files changed, 9 insertions(+), 14 deletions(-)
+
+diff --git a/arch/x86/include/asm/iomap.h b/arch/x86/include/asm/iomap.h
+index 0be7a30fd6bc..e2de092fc38c 100644
+--- a/arch/x86/include/asm/iomap.h
++++ b/arch/x86/include/asm/iomap.h
+@@ -13,14 +13,7 @@
+ #include <asm/cacheflush.h>
+ #include <asm/tlbflush.h>
+
+-void __iomem *iomap_atomic_pfn_prot(unsigned long pfn, pgprot_t prot);
+-
+-static inline void iounmap_atomic(void __iomem *vaddr)
+-{
+- kunmap_local_indexed((void __force *)vaddr);
+- pagefault_enable();
+- preempt_enable();
+-}
++void __iomem *__iomap_local_pfn_prot(unsigned long pfn, pgprot_t prot);
+
+ int iomap_create_wc(resource_size_t base, unsigned long size, pgprot_t *prot);
+
+diff --git a/arch/x86/mm/iomap_32.c b/arch/x86/mm/iomap_32.c
+index e0a40d7cc66c..9aaa756ddf21 100644
+--- a/arch/x86/mm/iomap_32.c
++++ b/arch/x86/mm/iomap_32.c
+@@ -44,7 +44,7 @@ void iomap_free(resource_size_t base, unsigned long size)
+ }
+ EXPORT_SYMBOL_GPL(iomap_free);
+
+-void __iomem *iomap_atomic_pfn_prot(unsigned long pfn, pgprot_t prot)
++void __iomem *__iomap_local_pfn_prot(unsigned long pfn, pgprot_t prot)
+ {
+ /*
+ * For non-PAT systems, translate non-WB request to UC- just in
+@@ -60,8 +60,6 @@ void __iomem *iomap_atomic_pfn_prot(unsigned long pfn, pgprot_t prot)
+ /* Filter out unsupported __PAGE_KERNEL* bits: */
+ pgprot_val(prot) &= __default_kernel_pte_mask;
+
+- preempt_disable();
+- pagefault_disable();
+ return (void __force __iomem *)__kmap_local_pfn_prot(pfn, prot);
+ }
+-EXPORT_SYMBOL_GPL(iomap_atomic_pfn_prot);
++EXPORT_SYMBOL_GPL(__iomap_local_pfn_prot);
+diff --git a/include/linux/io-mapping.h b/include/linux/io-mapping.h
+index 3b0940be72e9..60e7c83e4904 100644
+--- a/include/linux/io-mapping.h
++++ b/include/linux/io-mapping.h
+@@ -69,13 +69,17 @@ io_mapping_map_atomic_wc(struct io_mapping *mapping,
+
+ BUG_ON(offset >= mapping->size);
+ phys_addr = mapping->base + offset;
+- return iomap_atomic_pfn_prot(PHYS_PFN(phys_addr), mapping->prot);
++ preempt_disable();
++ pagefault_disable();
++ return __iomap_local_pfn_prot(PHYS_PFN(phys_addr), mapping->prot);
+ }
+
+ static inline void
+ io_mapping_unmap_atomic(void __iomem *vaddr)
+ {
+- iounmap_atomic(vaddr);
++ kunmap_local_indexed((void __force *)vaddr);
++ pagefault_enable();
++ preempt_enable();
+ }
+
+ static inline void __iomem *
+--
+2.43.0
+
diff --git a/debian/patches-rt/0044-Documentation-io-mapping-Remove-outdated-blurb.patch b/debian/patches-rt/0044-Documentation-io-mapping-Remove-outdated-blurb.patch
new file mode 100644
index 000000000..4ea660fff
--- /dev/null
+++ b/debian/patches-rt/0044-Documentation-io-mapping-Remove-outdated-blurb.patch
@@ -0,0 +1,48 @@
+From edd5c644d78fbd912f6386c97ed2b4eaf2b58b47 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:33 +0100
+Subject: [PATCH 044/323] Documentation/io-mapping: Remove outdated blurb
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The implementation details in the documentation are outdated and not really
+helpful. Remove them.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ Documentation/driver-api/io-mapping.rst | 22 ----------------------
+ 1 file changed, 22 deletions(-)
+
+diff --git a/Documentation/driver-api/io-mapping.rst b/Documentation/driver-api/io-mapping.rst
+index a966239f04e4..e33b88268554 100644
+--- a/Documentation/driver-api/io-mapping.rst
++++ b/Documentation/driver-api/io-mapping.rst
+@@ -73,25 +73,3 @@ for pages mapped with io_mapping_map_wc.
+ At driver close time, the io_mapping object must be freed::
+
+ void io_mapping_free(struct io_mapping *mapping)
+-
+-Current Implementation
+-======================
+-
+-The initial implementation of these functions uses existing mapping
+-mechanisms and so provides only an abstraction layer and no new
+-functionality.
+-
+-On 64-bit processors, io_mapping_create_wc calls ioremap_wc for the whole
+-range, creating a permanent kernel-visible mapping to the resource. The
+-map_atomic and map functions add the requested offset to the base of the
+-virtual address returned by ioremap_wc.
+-
+-On 32-bit processors with HIGHMEM defined, io_mapping_map_atomic_wc uses
+-kmap_atomic_pfn to map the specified page in an atomic fashion;
+-kmap_atomic_pfn isn't really supposed to be used with device pages, but it
+-provides an efficient mapping for this usage.
+-
+-On 32-bit processors without HIGHMEM defined, io_mapping_map_atomic_wc and
+-io_mapping_map_wc both use ioremap_wc, a terribly inefficient function which
+-performs an IPI to inform all processors about the new mapping. This results
+-in a significant performance penalty.
+--
+2.43.0
+
diff --git a/debian/patches-rt/0045-highmem-High-implementation-details-and-document-API.patch b/debian/patches-rt/0045-highmem-High-implementation-details-and-document-API.patch
new file mode 100644
index 000000000..723dd45e7
--- /dev/null
+++ b/debian/patches-rt/0045-highmem-High-implementation-details-and-document-API.patch
@@ -0,0 +1,544 @@
+From e9f16e3d48ba9b1d37ae050de3e84e147133b84c Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:34 +0100
+Subject: [PATCH 045/323] highmem: High implementation details and document API
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Move the gory details of kmap & al into a private header and only document
+the interfaces which are usable by drivers.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/highmem-internal.h | 174 ++++++++++++++++++++
+ include/linux/highmem.h | 266 +++++++++++--------------------
+ mm/highmem.c | 11 +-
+ 3 files changed, 274 insertions(+), 177 deletions(-)
+ create mode 100644 include/linux/highmem-internal.h
+
+diff --git a/include/linux/highmem-internal.h b/include/linux/highmem-internal.h
+new file mode 100644
+index 000000000000..6ceed907b14e
+--- /dev/null
++++ b/include/linux/highmem-internal.h
+@@ -0,0 +1,174 @@
++/* SPDX-License-Identifier: GPL-2.0 */
++#ifndef _LINUX_HIGHMEM_INTERNAL_H
++#define _LINUX_HIGHMEM_INTERNAL_H
++
++/*
++ * Outside of CONFIG_HIGHMEM to support X86 32bit iomap_atomic() cruft.
++ */
++#ifdef CONFIG_KMAP_LOCAL
++void *__kmap_local_pfn_prot(unsigned long pfn, pgprot_t prot);
++void *__kmap_local_page_prot(struct page *page, pgprot_t prot);
++void kunmap_local_indexed(void *vaddr);
++#endif
++
++#ifdef CONFIG_HIGHMEM
++#include <asm/highmem.h>
++
++#ifndef ARCH_HAS_KMAP_FLUSH_TLB
++static inline void kmap_flush_tlb(unsigned long addr) { }
++#endif
++
++#ifndef kmap_prot
++#define kmap_prot PAGE_KERNEL
++#endif
++
++void *kmap_high(struct page *page);
++void kunmap_high(struct page *page);
++void __kmap_flush_unused(void);
++struct page *__kmap_to_page(void *addr);
++
++static inline void *kmap(struct page *page)
++{
++ void *addr;
++
++ might_sleep();
++ if (!PageHighMem(page))
++ addr = page_address(page);
++ else
++ addr = kmap_high(page);
++ kmap_flush_tlb((unsigned long)addr);
++ return addr;
++}
++
++static inline void kunmap(struct page *page)
++{
++ might_sleep();
++ if (!PageHighMem(page))
++ return;
++ kunmap_high(page);
++}
++
++static inline struct page *kmap_to_page(void *addr)
++{
++ return __kmap_to_page(addr);
++}
++
++static inline void kmap_flush_unused(void)
++{
++ __kmap_flush_unused();
++}
++
++static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
++{
++ preempt_disable();
++ pagefault_disable();
++ return __kmap_local_page_prot(page, prot);
++}
++
++static inline void *kmap_atomic(struct page *page)
++{
++ return kmap_atomic_prot(page, kmap_prot);
++}
++
++static inline void *kmap_atomic_pfn(unsigned long pfn)
++{
++ preempt_disable();
++ pagefault_disable();
++ return __kmap_local_pfn_prot(pfn, kmap_prot);
++}
++
++static inline void __kunmap_atomic(void *addr)
++{
++ kunmap_local_indexed(addr);
++ pagefault_enable();
++ preempt_enable();
++}
++
++unsigned int __nr_free_highpages(void);
++extern atomic_long_t _totalhigh_pages;
++
++static inline unsigned int nr_free_highpages(void)
++{
++ return __nr_free_highpages();
++}
++
++static inline unsigned long totalhigh_pages(void)
++{
++ return (unsigned long)atomic_long_read(&_totalhigh_pages);
++}
++
++static inline void totalhigh_pages_inc(void)
++{
++ atomic_long_inc(&_totalhigh_pages);
++}
++
++static inline void totalhigh_pages_add(long count)
++{
++ atomic_long_add(count, &_totalhigh_pages);
++}
++
++#else /* CONFIG_HIGHMEM */
++
++static inline struct page *kmap_to_page(void *addr)
++{
++ return virt_to_page(addr);
++}
++
++static inline void *kmap(struct page *page)
++{
++ might_sleep();
++ return page_address(page);
++}
++
++static inline void kunmap_high(struct page *page) { }
++static inline void kmap_flush_unused(void) { }
++
++static inline void kunmap(struct page *page)
++{
++#ifdef ARCH_HAS_FLUSH_ON_KUNMAP
++ kunmap_flush_on_unmap(page_address(page));
++#endif
++}
++
++static inline void *kmap_atomic(struct page *page)
++{
++ preempt_disable();
++ pagefault_disable();
++ return page_address(page);
++}
++
++static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
++{
++ return kmap_atomic(page);
++}
++
++static inline void *kmap_atomic_pfn(unsigned long pfn)
++{
++ return kmap_atomic(pfn_to_page(pfn));
++}
++
++static inline void __kunmap_atomic(void *addr)
++{
++#ifdef ARCH_HAS_FLUSH_ON_KUNMAP
++ kunmap_flush_on_unmap(addr);
++#endif
++ pagefault_enable();
++ preempt_enable();
++}
++
++static inline unsigned int nr_free_highpages(void) { return 0; }
++static inline unsigned long totalhigh_pages(void) { return 0UL; }
++
++#endif /* CONFIG_HIGHMEM */
++
++/*
++ * Prevent people trying to call kunmap_atomic() as if it were kunmap()
++ * kunmap_atomic() should get the return value of kmap_atomic, not the page.
++ */
++#define kunmap_atomic(__addr) \
++do { \
++ BUILD_BUG_ON(__same_type((__addr), struct page *)); \
++ __kunmap_atomic(__addr); \
++} while (0)
++
++#endif
+diff --git a/include/linux/highmem.h b/include/linux/highmem.h
+index e632774cce87..5c888525b4c5 100644
+--- a/include/linux/highmem.h
++++ b/include/linux/highmem.h
+@@ -11,199 +11,125 @@
+
+ #include <asm/cacheflush.h>
+
+-#ifndef ARCH_HAS_FLUSH_ANON_PAGE
+-static inline void flush_anon_page(struct vm_area_struct *vma, struct page *page, unsigned long vmaddr)
+-{
+-}
+-#endif
+-
+-#ifndef ARCH_HAS_FLUSH_KERNEL_DCACHE_PAGE
+-static inline void flush_kernel_dcache_page(struct page *page)
+-{
+-}
+-static inline void flush_kernel_vmap_range(void *vaddr, int size)
+-{
+-}
+-static inline void invalidate_kernel_vmap_range(void *vaddr, int size)
+-{
+-}
+-#endif
++#include "highmem-internal.h"
+
+-/*
+- * Outside of CONFIG_HIGHMEM to support X86 32bit iomap_atomic() cruft.
++/**
++ * kmap - Map a page for long term usage
++ * @page: Pointer to the page to be mapped
++ *
++ * Returns: The virtual address of the mapping
++ *
++ * Can only be invoked from preemptible task context because on 32bit
++ * systems with CONFIG_HIGHMEM enabled this function might sleep.
++ *
++ * For systems with CONFIG_HIGHMEM=n and for pages in the low memory area
++ * this returns the virtual address of the direct kernel mapping.
++ *
++ * The returned virtual address is globally visible and valid up to the
++ * point where it is unmapped via kunmap(). The pointer can be handed to
++ * other contexts.
++ *
++ * For highmem pages on 32bit systems this can be slow as the mapping space
++ * is limited and protected by a global lock. In case that there is no
++ * mapping slot available the function blocks until a slot is released via
++ * kunmap().
+ */
+-#ifdef CONFIG_KMAP_LOCAL
+-void *__kmap_local_pfn_prot(unsigned long pfn, pgprot_t prot);
+-void *__kmap_local_page_prot(struct page *page, pgprot_t prot);
+-void kunmap_local_indexed(void *vaddr);
+-#endif
+-
+-#ifdef CONFIG_HIGHMEM
+-#include <asm/highmem.h>
++static inline void *kmap(struct page *page);
+
+-#ifndef ARCH_HAS_KMAP_FLUSH_TLB
+-static inline void kmap_flush_tlb(unsigned long addr) { }
+-#endif
+-
+-#ifndef kmap_prot
+-#define kmap_prot PAGE_KERNEL
+-#endif
+-
+-void *kmap_high(struct page *page);
+-static inline void *kmap(struct page *page)
+-{
+- void *addr;
+-
+- might_sleep();
+- if (!PageHighMem(page))
+- addr = page_address(page);
+- else
+- addr = kmap_high(page);
+- kmap_flush_tlb((unsigned long)addr);
+- return addr;
+-}
++/**
++ * kunmap - Unmap the virtual address mapped by kmap()
++ * @addr: Virtual address to be unmapped
++ *
++ * Counterpart to kmap(). A NOOP for CONFIG_HIGHMEM=n and for mappings of
++ * pages in the low memory area.
++ */
++static inline void kunmap(struct page *page);
+
+-void kunmap_high(struct page *page);
++/**
++ * kmap_to_page - Get the page for a kmap'ed address
++ * @addr: The address to look up
++ *
++ * Returns: The page which is mapped to @addr.
++ */
++static inline struct page *kmap_to_page(void *addr);
+
+-static inline void kunmap(struct page *page)
+-{
+- might_sleep();
+- if (!PageHighMem(page))
+- return;
+- kunmap_high(page);
+-}
++/**
++ * kmap_flush_unused - Flush all unused kmap mappings in order to
++ * remove stray mappings
++ */
++static inline void kmap_flush_unused(void);
+
+-/*
+- * kmap_atomic/kunmap_atomic is significantly faster than kmap/kunmap because
+- * no global lock is needed and because the kmap code must perform a global TLB
+- * invalidation when the kmap pool wraps.
++/**
++ * kmap_atomic - Atomically map a page for temporary usage
++ * @page: Pointer to the page to be mapped
++ *
++ * Returns: The virtual address of the mapping
++ *
++ * Side effect: On return pagefaults and preemption are disabled.
++ *
++ * Can be invoked from any context.
+ *
+- * However when holding an atomic kmap it is not legal to sleep, so atomic
+- * kmaps are appropriate for short, tight code paths only.
++ * Requires careful handling when nesting multiple mappings because the map
++ * management is stack based. The unmap has to be in the reverse order of
++ * the map operation:
+ *
+- * The use of kmap_atomic/kunmap_atomic is discouraged - kmap/kunmap
+- * gives a more generic (and caching) interface. But kmap_atomic can
+- * be used in IRQ contexts, so in some (very limited) cases we need
+- * it.
++ * addr1 = kmap_atomic(page1);
++ * addr2 = kmap_atomic(page2);
++ * ...
++ * kunmap_atomic(addr2);
++ * kunmap_atomic(addr1);
++ *
++ * Unmapping addr1 before addr2 is invalid and causes malfunction.
++ *
++ * Contrary to kmap() mappings the mapping is only valid in the context of
++ * the caller and cannot be handed to other contexts.
++ *
++ * On CONFIG_HIGHMEM=n kernels and for low memory pages this returns the
++ * virtual address of the direct mapping. Only real highmem pages are
++ * temporarily mapped.
++ *
++ * While it is significantly faster than kmap() it comes with restrictions
++ * about the pointer validity and the side effects of disabling page faults
++ * and preemption. Use it only when absolutely necessary, e.g. from non
++ * preemptible contexts.
+ */
+-static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
+-{
+- preempt_disable();
+- pagefault_disable();
+- return __kmap_local_page_prot(page, prot);
+-}
++static inline void *kmap_atomic(struct page *page);
+
+-static inline void *kmap_atomic(struct page *page)
+-{
+- return kmap_atomic_prot(page, kmap_prot);
+-}
+-
+-static inline void *kmap_atomic_pfn(unsigned long pfn)
+-{
+- preempt_disable();
+- pagefault_disable();
+- return __kmap_local_pfn_prot(pfn, kmap_prot);
+-}
+-
+-static inline void __kunmap_atomic(void *addr)
+-{
+- kunmap_local_indexed(addr);
+-}
+-
+-/* declarations for linux/mm/highmem.c */
+-unsigned int nr_free_highpages(void);
+-extern atomic_long_t _totalhigh_pages;
+-static inline unsigned long totalhigh_pages(void)
+-{
+- return (unsigned long)atomic_long_read(&_totalhigh_pages);
+-}
+-
+-static inline void totalhigh_pages_inc(void)
+-{
+- atomic_long_inc(&_totalhigh_pages);
+-}
+-
+-static inline void totalhigh_pages_add(long count)
+-{
+- atomic_long_add(count, &_totalhigh_pages);
+-}
+-
+-void kmap_flush_unused(void);
+-
+-struct page *kmap_to_page(void *addr);
+-
+-#else /* CONFIG_HIGHMEM */
+-
+-static inline unsigned int nr_free_highpages(void) { return 0; }
+-
+-static inline struct page *kmap_to_page(void *addr)
+-{
+- return virt_to_page(addr);
+-}
+-
+-static inline unsigned long totalhigh_pages(void) { return 0UL; }
++/**
++ * kunmap_atomic - Unmap the virtual address mapped by kmap_atomic()
++ * @addr: Virtual address to be unmapped
++ *
++ * Counterpart to kmap_atomic().
++ *
++ * Undoes the side effects of kmap_atomic(), i.e. reenabling pagefaults and
++ * preemption.
++ *
++ * Other than that a NOOP for CONFIG_HIGHMEM=n and for mappings of pages
++ * in the low memory area. For real highmen pages the mapping which was
++ * established with kmap_atomic() is destroyed.
++ */
+
+-static inline void *kmap(struct page *page)
+-{
+- might_sleep();
+- return page_address(page);
+-}
++/* Highmem related interfaces for management code */
++static inline unsigned int nr_free_highpages(void);
++static inline unsigned long totalhigh_pages(void);
+
+-static inline void kunmap_high(struct page *page)
++#ifndef ARCH_HAS_FLUSH_ANON_PAGE
++static inline void flush_anon_page(struct vm_area_struct *vma, struct page *page, unsigned long vmaddr)
+ {
+ }
+-
+-static inline void kunmap(struct page *page)
+-{
+-#ifdef ARCH_HAS_FLUSH_ON_KUNMAP
+- kunmap_flush_on_unmap(page_address(page));
+ #endif
+-}
+
+-static inline void *kmap_atomic(struct page *page)
++#ifndef ARCH_HAS_FLUSH_KERNEL_DCACHE_PAGE
++static inline void flush_kernel_dcache_page(struct page *page)
+ {
+- preempt_disable();
+- pagefault_disable();
+- return page_address(page);
+ }
+-
+-static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
++static inline void flush_kernel_vmap_range(void *vaddr, int size)
+ {
+- return kmap_atomic(page);
+ }
+-
+-static inline void *kmap_atomic_pfn(unsigned long pfn)
++static inline void invalidate_kernel_vmap_range(void *vaddr, int size)
+ {
+- return kmap_atomic(pfn_to_page(pfn));
+ }
+-
+-static inline void __kunmap_atomic(void *addr)
+-{
+- /*
+- * Mostly nothing to do in the CONFIG_HIGHMEM=n case as kunmap_atomic()
+- * handles re-enabling faults and preemption
+- */
+-#ifdef ARCH_HAS_FLUSH_ON_KUNMAP
+- kunmap_flush_on_unmap(addr);
+ #endif
+-}
+-
+-#define kmap_flush_unused() do {} while(0)
+-
+-
+-#endif /* CONFIG_HIGHMEM */
+-
+-/*
+- * Prevent people trying to call kunmap_atomic() as if it were kunmap()
+- * kunmap_atomic() should get the return value of kmap_atomic, not the page.
+- */
+-#define kunmap_atomic(__addr) \
+-do { \
+- BUILD_BUG_ON(__same_type((__addr), struct page *)); \
+- __kunmap_atomic(__addr); \
+- pagefault_enable(); \
+- preempt_enable(); \
+-} while (0)
+
+ /* when CONFIG_HIGHMEM is not set these will be plain clear/copy_page */
+ #ifndef clear_user_highpage
+diff --git a/mm/highmem.c b/mm/highmem.c
+index 499dfafd36b7..54bd233846c9 100644
+--- a/mm/highmem.c
++++ b/mm/highmem.c
+@@ -104,7 +104,7 @@ static inline wait_queue_head_t *get_pkmap_wait_queue_head(unsigned int color)
+ atomic_long_t _totalhigh_pages __read_mostly;
+ EXPORT_SYMBOL(_totalhigh_pages);
+
+-unsigned int nr_free_highpages (void)
++unsigned int __nr_free_highpages (void)
+ {
+ struct zone *zone;
+ unsigned int pages = 0;
+@@ -141,7 +141,7 @@ pte_t * pkmap_page_table;
+ do { spin_unlock(&kmap_lock); (void)(flags); } while (0)
+ #endif
+
+-struct page *kmap_to_page(void *vaddr)
++struct page *__kmap_to_page(void *vaddr)
+ {
+ unsigned long addr = (unsigned long)vaddr;
+
+@@ -152,7 +152,7 @@ struct page *kmap_to_page(void *vaddr)
+
+ return virt_to_page(addr);
+ }
+-EXPORT_SYMBOL(kmap_to_page);
++EXPORT_SYMBOL(__kmap_to_page);
+
+ static void flush_all_zero_pkmaps(void)
+ {
+@@ -194,10 +194,7 @@ static void flush_all_zero_pkmaps(void)
+ flush_tlb_kernel_range(PKMAP_ADDR(0), PKMAP_ADDR(LAST_PKMAP));
+ }
+
+-/**
+- * kmap_flush_unused - flush all unused kmap mappings in order to remove stray mappings
+- */
+-void kmap_flush_unused(void)
++void __kmap_flush_unused(void)
+ {
+ lock_kmap();
+ flush_all_zero_pkmaps();
+--
+2.43.0
+
diff --git a/debian/patches-rt/0046-sched-Make-migrate_disable-enable-independent-of-RT.patch b/debian/patches-rt/0046-sched-Make-migrate_disable-enable-independent-of-RT.patch
new file mode 100644
index 000000000..ed3660a63
--- /dev/null
+++ b/debian/patches-rt/0046-sched-Make-migrate_disable-enable-independent-of-RT.patch
@@ -0,0 +1,293 @@
+From 2a81a49976b336ce93ef823a5db96ce960096478 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:35 +0100
+Subject: [PATCH 046/323] sched: Make migrate_disable/enable() independent of
+ RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Now that the scheduler can deal with migrate disable properly, there is no
+real compelling reason to make it only available for RT.
+
+There are quite some code pathes which needlessly disable preemption in
+order to prevent migration and some constructs like kmap_atomic() enforce
+it implicitly.
+
+Making it available independent of RT allows to provide a preemptible
+variant of kmap_atomic() and makes the code more consistent in general.
+
+FIXME: Rework the comment in preempt.h
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Cc: Ingo Molnar <mingo@kernel.org>
+Cc: Juri Lelli <juri.lelli@redhat.com>
+Cc: Vincent Guittot <vincent.guittot@linaro.org>
+Cc: Dietmar Eggemann <dietmar.eggemann@arm.com>
+Cc: Steven Rostedt <rostedt@goodmis.org>
+Cc: Ben Segall <bsegall@google.com>
+Cc: Mel Gorman <mgorman@suse.de>
+Cc: Daniel Bristot de Oliveira <bristot@redhat.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/kernel.h | 21 ++++++++++++-------
+ include/linux/preempt.h | 38 +++-------------------------------
+ include/linux/sched.h | 2 +-
+ kernel/sched/core.c | 45 ++++++++++++++++++++++++++++++++---------
+ kernel/sched/sched.h | 4 ++--
+ lib/smp_processor_id.c | 2 +-
+ 6 files changed, 56 insertions(+), 56 deletions(-)
+
+diff --git a/include/linux/kernel.h b/include/linux/kernel.h
+index cdd6ed5bbcf2..55d48d5627c7 100644
+--- a/include/linux/kernel.h
++++ b/include/linux/kernel.h
+@@ -207,6 +207,7 @@ extern int _cond_resched(void);
+ extern void ___might_sleep(const char *file, int line, int preempt_offset);
+ extern void __might_sleep(const char *file, int line, int preempt_offset);
+ extern void __cant_sleep(const char *file, int line, int preempt_offset);
++extern void __cant_migrate(const char *file, int line);
+
+ /**
+ * might_sleep - annotation for functions that can sleep
+@@ -230,6 +231,18 @@ extern void __cant_sleep(const char *file, int line, int preempt_offset);
+ # define cant_sleep() \
+ do { __cant_sleep(__FILE__, __LINE__, 0); } while (0)
+ # define sched_annotate_sleep() (current->task_state_change = 0)
++
++/**
++ * cant_migrate - annotation for functions that cannot migrate
++ *
++ * Will print a stack trace if executed in code which is migratable
++ */
++# define cant_migrate() \
++ do { \
++ if (IS_ENABLED(CONFIG_SMP)) \
++ __cant_migrate(__FILE__, __LINE__); \
++ } while (0)
++
+ /**
+ * non_block_start - annotate the start of section where sleeping is prohibited
+ *
+@@ -254,6 +267,7 @@ extern void __cant_sleep(const char *file, int line, int preempt_offset);
+ int preempt_offset) { }
+ # define might_sleep() do { might_resched(); } while (0)
+ # define cant_sleep() do { } while (0)
++# define cant_migrate() do { } while (0)
+ # define sched_annotate_sleep() do { } while (0)
+ # define non_block_start() do { } while (0)
+ # define non_block_end() do { } while (0)
+@@ -261,13 +275,6 @@ extern void __cant_sleep(const char *file, int line, int preempt_offset);
+
+ #define might_sleep_if(cond) do { if (cond) might_sleep(); } while (0)
+
+-#ifndef CONFIG_PREEMPT_RT
+-# define cant_migrate() cant_sleep()
+-#else
+- /* Placeholder for now */
+-# define cant_migrate() do { } while (0)
+-#endif
+-
+ /**
+ * abs - return absolute value of an argument
+ * @x: the value. If it is unsigned type, it is converted to signed type first.
+diff --git a/include/linux/preempt.h b/include/linux/preempt.h
+index 8b43922e65df..6df63cbe8bb0 100644
+--- a/include/linux/preempt.h
++++ b/include/linux/preempt.h
+@@ -322,7 +322,7 @@ static inline void preempt_notifier_init(struct preempt_notifier *notifier,
+
+ #endif
+
+-#if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
++#ifdef CONFIG_SMP
+
+ /*
+ * Migrate-Disable and why it is undesired.
+@@ -382,43 +382,11 @@ static inline void preempt_notifier_init(struct preempt_notifier *notifier,
+ extern void migrate_disable(void);
+ extern void migrate_enable(void);
+
+-#elif defined(CONFIG_PREEMPT_RT)
++#else
+
+ static inline void migrate_disable(void) { }
+ static inline void migrate_enable(void) { }
+
+-#else /* !CONFIG_PREEMPT_RT */
+-
+-/**
+- * migrate_disable - Prevent migration of the current task
+- *
+- * Maps to preempt_disable() which also disables preemption. Use
+- * migrate_disable() to annotate that the intent is to prevent migration,
+- * but not necessarily preemption.
+- *
+- * Can be invoked nested like preempt_disable() and needs the corresponding
+- * number of migrate_enable() invocations.
+- */
+-static __always_inline void migrate_disable(void)
+-{
+- preempt_disable();
+-}
+-
+-/**
+- * migrate_enable - Allow migration of the current task
+- *
+- * Counterpart to migrate_disable().
+- *
+- * As migrate_disable() can be invoked nested, only the outermost invocation
+- * reenables migration.
+- *
+- * Currently mapped to preempt_enable().
+- */
+-static __always_inline void migrate_enable(void)
+-{
+- preempt_enable();
+-}
+-
+-#endif /* CONFIG_SMP && CONFIG_PREEMPT_RT */
++#endif /* CONFIG_SMP */
+
+ #endif /* __LINUX_PREEMPT_H */
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index 7ca1f3e740dd..bff48e9f32db 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -727,7 +727,7 @@ struct task_struct {
+ const cpumask_t *cpus_ptr;
+ cpumask_t cpus_mask;
+ void *migration_pending;
+-#if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
++#ifdef CONFIG_SMP
+ unsigned short migration_disabled;
+ #endif
+ unsigned short migration_flags;
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index c1e52319669d..8a6135a0b2ee 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1710,8 +1710,6 @@ void check_preempt_curr(struct rq *rq, struct task_struct *p, int flags)
+
+ #ifdef CONFIG_SMP
+
+-#ifdef CONFIG_PREEMPT_RT
+-
+ static void
+ __do_set_cpus_allowed(struct task_struct *p, const struct cpumask *new_mask, u32 flags);
+
+@@ -1786,8 +1784,6 @@ static inline bool rq_has_pinned_tasks(struct rq *rq)
+ return rq->nr_pinned;
+ }
+
+-#endif
+-
+ /*
+ * Per-CPU kthreads are allowed to run on !active && online CPUs, see
+ * __set_cpus_allowed_ptr() and select_fallback_rq().
+@@ -2868,7 +2864,7 @@ void sched_set_stop_task(int cpu, struct task_struct *stop)
+ }
+ }
+
+-#else
++#else /* CONFIG_SMP */
+
+ static inline int __set_cpus_allowed_ptr(struct task_struct *p,
+ const struct cpumask *new_mask,
+@@ -2877,10 +2873,6 @@ static inline int __set_cpus_allowed_ptr(struct task_struct *p,
+ return set_cpus_allowed_ptr(p, new_mask);
+ }
+
+-#endif /* CONFIG_SMP */
+-
+-#if !defined(CONFIG_SMP) || !defined(CONFIG_PREEMPT_RT)
+-
+ static inline void migrate_disable_switch(struct rq *rq, struct task_struct *p) { }
+
+ static inline bool rq_has_pinned_tasks(struct rq *rq)
+@@ -2888,7 +2880,7 @@ static inline bool rq_has_pinned_tasks(struct rq *rq)
+ return false;
+ }
+
+-#endif
++#endif /* !CONFIG_SMP */
+
+ static void
+ ttwu_stat(struct task_struct *p, int cpu, int wake_flags)
+@@ -7902,6 +7894,39 @@ void __cant_sleep(const char *file, int line, int preempt_offset)
+ add_taint(TAINT_WARN, LOCKDEP_STILL_OK);
+ }
+ EXPORT_SYMBOL_GPL(__cant_sleep);
++
++#ifdef CONFIG_SMP
++void __cant_migrate(const char *file, int line)
++{
++ static unsigned long prev_jiffy;
++
++ if (irqs_disabled())
++ return;
++
++ if (is_migration_disabled(current))
++ return;
++
++ if (!IS_ENABLED(CONFIG_PREEMPT_COUNT))
++ return;
++
++ if (preempt_count() > 0)
++ return;
++
++ if (time_before(jiffies, prev_jiffy + HZ) && prev_jiffy)
++ return;
++ prev_jiffy = jiffies;
++
++ pr_err("BUG: assuming non migratable context at %s:%d\n", file, line);
++ pr_err("in_atomic(): %d, irqs_disabled(): %d, migration_disabled() %u pid: %d, name: %s\n",
++ in_atomic(), irqs_disabled(), is_migration_disabled(current),
++ current->pid, current->comm);
++
++ debug_show_held_locks(current);
++ dump_stack();
++ add_taint(TAINT_WARN, LOCKDEP_STILL_OK);
++}
++EXPORT_SYMBOL_GPL(__cant_migrate);
++#endif
+ #endif
+
+ #ifdef CONFIG_MAGIC_SYSRQ
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index 69ef7cac3d29..c26b1c7009f4 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -1058,7 +1058,7 @@ struct rq {
+ struct cpuidle_state *idle_state;
+ #endif
+
+-#if defined(CONFIG_PREEMPT_RT) && defined(CONFIG_SMP)
++#ifdef CONFIG_SMP
+ unsigned int nr_pinned;
+ #endif
+ unsigned int push_busy;
+@@ -1094,7 +1094,7 @@ static inline int cpu_of(struct rq *rq)
+
+ static inline bool is_migration_disabled(struct task_struct *p)
+ {
+-#if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
++#ifdef CONFIG_SMP
+ return p->migration_disabled;
+ #else
+ return false;
+diff --git a/lib/smp_processor_id.c b/lib/smp_processor_id.c
+index dbb96ebf661f..0c0c42b14370 100644
+--- a/lib/smp_processor_id.c
++++ b/lib/smp_processor_id.c
+@@ -26,7 +26,7 @@ unsigned int check_preemption_disabled(const char *what1, const char *what2)
+ if (current->nr_cpus_allowed == 1)
+ goto out;
+
+-#if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
++#ifdef CONFIG_SMP
+ if (current->migration_disabled)
+ goto out;
+ #endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0047-sched-highmem-Store-local-kmaps-in-task-struct.patch b/debian/patches-rt/0047-sched-highmem-Store-local-kmaps-in-task-struct.patch
new file mode 100644
index 000000000..ecd08de62
--- /dev/null
+++ b/debian/patches-rt/0047-sched-highmem-Store-local-kmaps-in-task-struct.patch
@@ -0,0 +1,309 @@
+From 7aa261f53a405c0862f4857b46ef3344bbe6385f Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:36 +0100
+Subject: [PATCH 047/323] sched: highmem: Store local kmaps in task struct
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Instead of storing the map per CPU provide and use per task storage. That
+prepares for local kmaps which are preemptible.
+
+The context switch code is preparatory and not yet in use because
+kmap_atomic() runs with preemption disabled. Will be made usable in the
+next step.
+
+The context switch logic is safe even when an interrupt happens after
+clearing or before restoring the kmaps. The kmap index in task struct is
+not modified so any nesting kmap in an interrupt will use unused indices
+and on return the counter is the same as before.
+
+Also add an assert into the return to user space code. Going back to user
+space with an active kmap local is a nono.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/highmem-internal.h | 10 ++++
+ include/linux/sched.h | 9 +++
+ kernel/entry/common.c | 2 +
+ kernel/fork.c | 1 +
+ kernel/sched/core.c | 18 ++++++
+ mm/highmem.c | 99 ++++++++++++++++++++++++++++----
+ 6 files changed, 129 insertions(+), 10 deletions(-)
+
+diff --git a/include/linux/highmem-internal.h b/include/linux/highmem-internal.h
+index 6ceed907b14e..c5a22177db85 100644
+--- a/include/linux/highmem-internal.h
++++ b/include/linux/highmem-internal.h
+@@ -9,6 +9,16 @@
+ void *__kmap_local_pfn_prot(unsigned long pfn, pgprot_t prot);
+ void *__kmap_local_page_prot(struct page *page, pgprot_t prot);
+ void kunmap_local_indexed(void *vaddr);
++void kmap_local_fork(struct task_struct *tsk);
++void __kmap_local_sched_out(void);
++void __kmap_local_sched_in(void);
++static inline void kmap_assert_nomap(void)
++{
++ DEBUG_LOCKS_WARN_ON(current->kmap_ctrl.idx);
++}
++#else
++static inline void kmap_local_fork(struct task_struct *tsk) { }
++static inline void kmap_assert_nomap(void) { }
+ #endif
+
+ #ifdef CONFIG_HIGHMEM
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index bff48e9f32db..82de1ab42497 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -34,6 +34,7 @@
+ #include <linux/rseq.h>
+ #include <linux/seqlock.h>
+ #include <linux/kcsan.h>
++#include <asm/kmap_size.h>
+
+ /* task_struct member predeclarations (sorted alphabetically): */
+ struct audit_context;
+@@ -641,6 +642,13 @@ struct wake_q_node {
+ struct wake_q_node *next;
+ };
+
++struct kmap_ctrl {
++#ifdef CONFIG_KMAP_LOCAL
++ int idx;
++ pte_t pteval[KM_MAX_IDX];
++#endif
++};
++
+ struct task_struct {
+ #ifdef CONFIG_THREAD_INFO_IN_TASK
+ /*
+@@ -1323,6 +1331,7 @@ struct task_struct {
+ unsigned int sequential_io;
+ unsigned int sequential_io_avg;
+ #endif
++ struct kmap_ctrl kmap_ctrl;
+ #ifdef CONFIG_DEBUG_ATOMIC_SLEEP
+ unsigned long task_state_change;
+ #endif
+diff --git a/kernel/entry/common.c b/kernel/entry/common.c
+index 09f58853f692..e6a66de1202a 100644
+--- a/kernel/entry/common.c
++++ b/kernel/entry/common.c
+@@ -2,6 +2,7 @@
+
+ #include <linux/context_tracking.h>
+ #include <linux/entry-common.h>
++#include <linux/highmem.h>
+ #include <linux/livepatch.h>
+ #include <linux/audit.h>
+
+@@ -202,6 +203,7 @@ static void exit_to_user_mode_prepare(struct pt_regs *regs)
+
+ /* Ensure that the address limit is intact and no locks are held */
+ addr_limit_user_check();
++ kmap_assert_nomap();
+ lockdep_assert_irqs_disabled();
+ lockdep_sys_exit();
+ }
+diff --git a/kernel/fork.c b/kernel/fork.c
+index 633b0af1d1a7..32b9d7205ac1 100644
+--- a/kernel/fork.c
++++ b/kernel/fork.c
+@@ -942,6 +942,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
+ account_kernel_stack(tsk, 1);
+
+ kcov_task_init(tsk);
++ kmap_local_fork(tsk);
+
+ #ifdef CONFIG_FAULT_INJECTION
+ tsk->fail_nth = 0;
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 8a6135a0b2ee..390b51366f5e 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -4092,6 +4092,22 @@ static inline void finish_lock_switch(struct rq *rq)
+ # define finish_arch_post_lock_switch() do { } while (0)
+ #endif
+
++static inline void kmap_local_sched_out(void)
++{
++#ifdef CONFIG_KMAP_LOCAL
++ if (unlikely(current->kmap_ctrl.idx))
++ __kmap_local_sched_out();
++#endif
++}
++
++static inline void kmap_local_sched_in(void)
++{
++#ifdef CONFIG_KMAP_LOCAL
++ if (unlikely(current->kmap_ctrl.idx))
++ __kmap_local_sched_in();
++#endif
++}
++
+ /**
+ * prepare_task_switch - prepare to switch tasks
+ * @rq: the runqueue preparing to switch
+@@ -4114,6 +4130,7 @@ prepare_task_switch(struct rq *rq, struct task_struct *prev,
+ perf_event_task_sched_out(prev, next);
+ rseq_preempt(prev);
+ fire_sched_out_preempt_notifiers(prev, next);
++ kmap_local_sched_out();
+ prepare_task(next);
+ prepare_arch_switch(next);
+ }
+@@ -4180,6 +4197,7 @@ static struct rq *finish_task_switch(struct task_struct *prev)
+ finish_lock_switch(rq);
+ finish_arch_post_lock_switch();
+ kcov_finish_switch(current);
++ kmap_local_sched_in();
+
+ fire_sched_in_preempt_notifiers(current);
+ /*
+diff --git a/mm/highmem.c b/mm/highmem.c
+index 54bd233846c9..d7a1c80001d0 100644
+--- a/mm/highmem.c
++++ b/mm/highmem.c
+@@ -365,8 +365,6 @@ EXPORT_SYMBOL(kunmap_high);
+
+ #include <asm/kmap_size.h>
+
+-static DEFINE_PER_CPU(int, __kmap_local_idx);
+-
+ /*
+ * With DEBUG_HIGHMEM the stack depth is doubled and every second
+ * slot is unused which acts as a guard page
+@@ -379,23 +377,21 @@ static DEFINE_PER_CPU(int, __kmap_local_idx);
+
+ static inline int kmap_local_idx_push(void)
+ {
+- int idx = __this_cpu_add_return(__kmap_local_idx, KM_INCR) - 1;
+-
+ WARN_ON_ONCE(in_irq() && !irqs_disabled());
+- BUG_ON(idx >= KM_MAX_IDX);
+- return idx;
++ current->kmap_ctrl.idx += KM_INCR;
++ BUG_ON(current->kmap_ctrl.idx >= KM_MAX_IDX);
++ return current->kmap_ctrl.idx - 1;
+ }
+
+ static inline int kmap_local_idx(void)
+ {
+- return __this_cpu_read(__kmap_local_idx) - 1;
++ return current->kmap_ctrl.idx - 1;
+ }
+
+ static inline void kmap_local_idx_pop(void)
+ {
+- int idx = __this_cpu_sub_return(__kmap_local_idx, KM_INCR);
+-
+- BUG_ON(idx < 0);
++ current->kmap_ctrl.idx -= KM_INCR;
++ BUG_ON(current->kmap_ctrl.idx < 0);
+ }
+
+ #ifndef arch_kmap_local_post_map
+@@ -461,6 +457,7 @@ void *__kmap_local_pfn_prot(unsigned long pfn, pgprot_t prot)
+ pteval = pfn_pte(pfn, prot);
+ set_pte_at(&init_mm, vaddr, kmap_pte - idx, pteval);
+ arch_kmap_local_post_map(vaddr, pteval);
++ current->kmap_ctrl.pteval[kmap_local_idx()] = pteval;
+ preempt_enable();
+
+ return (void *)vaddr;
+@@ -505,10 +502,92 @@ void kunmap_local_indexed(void *vaddr)
+ arch_kmap_local_pre_unmap(addr);
+ pte_clear(&init_mm, addr, kmap_pte - idx);
+ arch_kmap_local_post_unmap(addr);
++ current->kmap_ctrl.pteval[kmap_local_idx()] = __pte(0);
+ kmap_local_idx_pop();
+ preempt_enable();
+ }
+ EXPORT_SYMBOL(kunmap_local_indexed);
++
++/*
++ * Invoked before switch_to(). This is safe even when during or after
++ * clearing the maps an interrupt which needs a kmap_local happens because
++ * the task::kmap_ctrl.idx is not modified by the unmapping code so a
++ * nested kmap_local will use the next unused index and restore the index
++ * on unmap. The already cleared kmaps of the outgoing task are irrelevant
++ * because the interrupt context does not know about them. The same applies
++ * when scheduling back in for an interrupt which happens before the
++ * restore is complete.
++ */
++void __kmap_local_sched_out(void)
++{
++ struct task_struct *tsk = current;
++ pte_t *kmap_pte = kmap_get_pte();
++ int i;
++
++ /* Clear kmaps */
++ for (i = 0; i < tsk->kmap_ctrl.idx; i++) {
++ pte_t pteval = tsk->kmap_ctrl.pteval[i];
++ unsigned long addr;
++ int idx;
++
++ /* With debug all even slots are unmapped and act as guard */
++ if (IS_ENABLED(CONFIG_DEBUG_HIGHMEM) && !(i & 0x01)) {
++ WARN_ON_ONCE(!pte_none(pteval));
++ continue;
++ }
++ if (WARN_ON_ONCE(pte_none(pteval)))
++ continue;
++
++ /*
++ * This is a horrible hack for XTENSA to calculate the
++ * coloured PTE index. Uses the PFN encoded into the pteval
++ * and the map index calculation because the actual mapped
++ * virtual address is not stored in task::kmap_ctrl.
++ * For any sane architecture this is optimized out.
++ */
++ idx = arch_kmap_local_map_idx(i, pte_pfn(pteval));
++
++ addr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
++ arch_kmap_local_pre_unmap(addr);
++ pte_clear(&init_mm, addr, kmap_pte - idx);
++ arch_kmap_local_post_unmap(addr);
++ }
++}
++
++void __kmap_local_sched_in(void)
++{
++ struct task_struct *tsk = current;
++ pte_t *kmap_pte = kmap_get_pte();
++ int i;
++
++ /* Restore kmaps */
++ for (i = 0; i < tsk->kmap_ctrl.idx; i++) {
++ pte_t pteval = tsk->kmap_ctrl.pteval[i];
++ unsigned long addr;
++ int idx;
++
++ /* With debug all even slots are unmapped and act as guard */
++ if (IS_ENABLED(CONFIG_DEBUG_HIGHMEM) && !(i & 0x01)) {
++ WARN_ON_ONCE(!pte_none(pteval));
++ continue;
++ }
++ if (WARN_ON_ONCE(pte_none(pteval)))
++ continue;
++
++ /* See comment in __kmap_local_sched_out() */
++ idx = arch_kmap_local_map_idx(i, pte_pfn(pteval));
++ addr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
++ set_pte_at(&init_mm, addr, kmap_pte - idx, pteval);
++ arch_kmap_local_post_map(addr, pteval);
++ }
++}
++
++void kmap_local_fork(struct task_struct *tsk)
++{
++ if (WARN_ON_ONCE(tsk->kmap_ctrl.idx))
++ memset(&tsk->kmap_ctrl, 0, sizeof(tsk->kmap_ctrl));
++}
++
+ #endif
+
+ #if defined(HASHED_PAGE_VIRTUAL)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0048-mm-highmem-Provide-kmap_local.patch b/debian/patches-rt/0048-mm-highmem-Provide-kmap_local.patch
new file mode 100644
index 000000000..aa15ab4ec
--- /dev/null
+++ b/debian/patches-rt/0048-mm-highmem-Provide-kmap_local.patch
@@ -0,0 +1,207 @@
+From 452c4c8536ea017ed0f82287834e7cfa2f751488 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:37 +0100
+Subject: [PATCH 048/323] mm/highmem: Provide kmap_local*
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Now that the kmap atomic index is stored in task struct provide a
+preemptible variant. On context switch the maps of an outgoing task are
+removed and the map of the incoming task are restored. That's obviously
+slow, but highmem is slow anyway.
+
+The kmap_local.*() functions can be invoked from both preemptible and
+atomic context. kmap local sections disable migration to keep the resulting
+virtual mapping address correct, but disable neither pagefaults nor
+preemption.
+
+A wholesale conversion of kmap_atomic to be fully preemptible is not
+possible because some of the usage sites might rely on the preemption
+disable for serialization or on the implicit pagefault disable. Needs to be
+done on a case by case basis.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/highmem-internal.h | 48 ++++++++++++++++++++++++++++++++
+ include/linux/highmem.h | 43 +++++++++++++++++-----------
+ mm/highmem.c | 6 ++++
+ 3 files changed, 81 insertions(+), 16 deletions(-)
+
+diff --git a/include/linux/highmem-internal.h b/include/linux/highmem-internal.h
+index c5a22177db85..1bbe96dc8be6 100644
+--- a/include/linux/highmem-internal.h
++++ b/include/linux/highmem-internal.h
+@@ -68,6 +68,26 @@ static inline void kmap_flush_unused(void)
+ __kmap_flush_unused();
+ }
+
++static inline void *kmap_local_page(struct page *page)
++{
++ return __kmap_local_page_prot(page, kmap_prot);
++}
++
++static inline void *kmap_local_page_prot(struct page *page, pgprot_t prot)
++{
++ return __kmap_local_page_prot(page, prot);
++}
++
++static inline void *kmap_local_pfn(unsigned long pfn)
++{
++ return __kmap_local_pfn_prot(pfn, kmap_prot);
++}
++
++static inline void __kunmap_local(void *vaddr)
++{
++ kunmap_local_indexed(vaddr);
++}
++
+ static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
+ {
+ preempt_disable();
+@@ -140,6 +160,28 @@ static inline void kunmap(struct page *page)
+ #endif
+ }
+
++static inline void *kmap_local_page(struct page *page)
++{
++ return page_address(page);
++}
++
++static inline void *kmap_local_page_prot(struct page *page, pgprot_t prot)
++{
++ return kmap_local_page(page);
++}
++
++static inline void *kmap_local_pfn(unsigned long pfn)
++{
++ return kmap_local_page(pfn_to_page(pfn));
++}
++
++static inline void __kunmap_local(void *addr)
++{
++#ifdef ARCH_HAS_FLUSH_ON_KUNMAP
++ kunmap_flush_on_unmap(addr);
++#endif
++}
++
+ static inline void *kmap_atomic(struct page *page)
+ {
+ preempt_disable();
+@@ -181,4 +223,10 @@ do { \
+ __kunmap_atomic(__addr); \
+ } while (0)
+
++#define kunmap_local(__addr) \
++do { \
++ BUILD_BUG_ON(__same_type((__addr), struct page *)); \
++ __kunmap_local(__addr); \
++} while (0)
++
+ #endif
+diff --git a/include/linux/highmem.h b/include/linux/highmem.h
+index 5c888525b4c5..7a3c6d4b79d8 100644
+--- a/include/linux/highmem.h
++++ b/include/linux/highmem.h
+@@ -60,24 +60,22 @@ static inline struct page *kmap_to_page(void *addr);
+ static inline void kmap_flush_unused(void);
+
+ /**
+- * kmap_atomic - Atomically map a page for temporary usage
++ * kmap_local_page - Map a page for temporary usage
+ * @page: Pointer to the page to be mapped
+ *
+ * Returns: The virtual address of the mapping
+ *
+- * Side effect: On return pagefaults and preemption are disabled.
+- *
+ * Can be invoked from any context.
+ *
+ * Requires careful handling when nesting multiple mappings because the map
+ * management is stack based. The unmap has to be in the reverse order of
+ * the map operation:
+ *
+- * addr1 = kmap_atomic(page1);
+- * addr2 = kmap_atomic(page2);
++ * addr1 = kmap_local_page(page1);
++ * addr2 = kmap_local_page(page2);
+ * ...
+- * kunmap_atomic(addr2);
+- * kunmap_atomic(addr1);
++ * kunmap_local(addr2);
++ * kunmap_local(addr1);
+ *
+ * Unmapping addr1 before addr2 is invalid and causes malfunction.
+ *
+@@ -88,10 +86,26 @@ static inline void kmap_flush_unused(void);
+ * virtual address of the direct mapping. Only real highmem pages are
+ * temporarily mapped.
+ *
+- * While it is significantly faster than kmap() it comes with restrictions
+- * about the pointer validity and the side effects of disabling page faults
+- * and preemption. Use it only when absolutely necessary, e.g. from non
+- * preemptible contexts.
++ * While it is significantly faster than kmap() for the higmem case it
++ * comes with restrictions about the pointer validity. Only use when really
++ * necessary.
++ *
++ * On HIGHMEM enabled systems mapping a highmem page has the side effect of
++ * disabling migration in order to keep the virtual address stable across
++ * preemption. No caller of kmap_local_page() can rely on this side effect.
++ */
++static inline void *kmap_local_page(struct page *page);
++
++/**
++ * kmap_atomic - Atomically map a page for temporary usage - Deprecated!
++ * @page: Pointer to the page to be mapped
++ *
++ * Returns: The virtual address of the mapping
++ *
++ * Effectively a wrapper around kmap_local_page() which disables pagefaults
++ * and preemption.
++ *
++ * Do not use in new code. Use kmap_local_page() instead.
+ */
+ static inline void *kmap_atomic(struct page *page);
+
+@@ -101,12 +115,9 @@ static inline void *kmap_atomic(struct page *page);
+ *
+ * Counterpart to kmap_atomic().
+ *
+- * Undoes the side effects of kmap_atomic(), i.e. reenabling pagefaults and
++ * Effectively a wrapper around kunmap_local() which additionally undoes
++ * the side effects of kmap_atomic(), i.e. reenabling pagefaults and
+ * preemption.
+- *
+- * Other than that a NOOP for CONFIG_HIGHMEM=n and for mappings of pages
+- * in the low memory area. For real highmen pages the mapping which was
+- * established with kmap_atomic() is destroyed.
+ */
+
+ /* Highmem related interfaces for management code */
+diff --git a/mm/highmem.c b/mm/highmem.c
+index d7a1c80001d0..8db577e5290c 100644
+--- a/mm/highmem.c
++++ b/mm/highmem.c
+@@ -450,6 +450,11 @@ void *__kmap_local_pfn_prot(unsigned long pfn, pgprot_t prot)
+ unsigned long vaddr;
+ int idx;
+
++ /*
++ * Disable migration so resulting virtual address is stable
++ * accross preemption.
++ */
++ migrate_disable();
+ preempt_disable();
+ idx = arch_kmap_local_map_idx(kmap_local_idx_push(), pfn);
+ vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
+@@ -505,6 +510,7 @@ void kunmap_local_indexed(void *vaddr)
+ current->kmap_ctrl.pteval[kmap_local_idx()] = __pte(0);
+ kmap_local_idx_pop();
+ preempt_enable();
++ migrate_enable();
+ }
+ EXPORT_SYMBOL(kunmap_local_indexed);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0049-io-mapping-Provide-iomap_local-variant.patch b/debian/patches-rt/0049-io-mapping-Provide-iomap_local-variant.patch
new file mode 100644
index 000000000..1419b16fb
--- /dev/null
+++ b/debian/patches-rt/0049-io-mapping-Provide-iomap_local-variant.patch
@@ -0,0 +1,179 @@
+From 223ef1707ad3b008f96df3f4d263d2cdeed3ef65 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:38 +0100
+Subject: [PATCH 049/323] io-mapping: Provide iomap_local variant
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Similar to kmap local provide a iomap local variant which only disables
+migration, but neither disables pagefaults nor preemption.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ Documentation/driver-api/io-mapping.rst | 74 +++++++++++++++----------
+ include/linux/io-mapping.h | 30 +++++++++-
+ 2 files changed, 73 insertions(+), 31 deletions(-)
+
+diff --git a/Documentation/driver-api/io-mapping.rst b/Documentation/driver-api/io-mapping.rst
+index e33b88268554..a0cfb15988df 100644
+--- a/Documentation/driver-api/io-mapping.rst
++++ b/Documentation/driver-api/io-mapping.rst
+@@ -20,55 +20,71 @@ A mapping object is created during driver initialization using::
+ mappable, while 'size' indicates how large a mapping region to
+ enable. Both are in bytes.
+
+-This _wc variant provides a mapping which may only be used
+-with the io_mapping_map_atomic_wc or io_mapping_map_wc.
++This _wc variant provides a mapping which may only be used with
++io_mapping_map_atomic_wc(), io_mapping_map_local_wc() or
++io_mapping_map_wc().
+
+-With this mapping object, individual pages can be mapped either atomically
+-or not, depending on the necessary scheduling environment. Of course, atomic
+-maps are more efficient::
++With this mapping object, individual pages can be mapped either temporarily
++or long term, depending on the requirements. Of course, temporary maps are
++more efficient. They come in two flavours::
++
++ void *io_mapping_map_local_wc(struct io_mapping *mapping,
++ unsigned long offset)
+
+ void *io_mapping_map_atomic_wc(struct io_mapping *mapping,
+ unsigned long offset)
+
+-'offset' is the offset within the defined mapping region.
+-Accessing addresses beyond the region specified in the
+-creation function yields undefined results. Using an offset
+-which is not page aligned yields an undefined result. The
+-return value points to a single page in CPU address space.
++'offset' is the offset within the defined mapping region. Accessing
++addresses beyond the region specified in the creation function yields
++undefined results. Using an offset which is not page aligned yields an
++undefined result. The return value points to a single page in CPU address
++space.
+
+-This _wc variant returns a write-combining map to the
+-page and may only be used with mappings created by
+-io_mapping_create_wc
++This _wc variant returns a write-combining map to the page and may only be
++used with mappings created by io_mapping_create_wc()
+
+-Note that the task may not sleep while holding this page
+-mapped.
++Temporary mappings are only valid in the context of the caller. The mapping
++is not guaranteed to be globaly visible.
+
+-::
++io_mapping_map_local_wc() has a side effect on X86 32bit as it disables
++migration to make the mapping code work. No caller can rely on this side
++effect.
+
+- void io_mapping_unmap_atomic(void *vaddr)
++io_mapping_map_atomic_wc() has the side effect of disabling preemption and
++pagefaults. Don't use in new code. Use io_mapping_map_local_wc() instead.
+
+-'vaddr' must be the value returned by the last
+-io_mapping_map_atomic_wc call. This unmaps the specified
+-page and allows the task to sleep once again.
++Nested mappings need to be undone in reverse order because the mapping
++code uses a stack for keeping track of them::
+
+-If you need to sleep while holding the lock, you can use the non-atomic
+-variant, although they may be significantly slower.
++ addr1 = io_mapping_map_local_wc(map1, offset1);
++ addr2 = io_mapping_map_local_wc(map2, offset2);
++ ...
++ io_mapping_unmap_local(addr2);
++ io_mapping_unmap_local(addr1);
+
+-::
++The mappings are released with::
++
++ void io_mapping_unmap_local(void *vaddr)
++ void io_mapping_unmap_atomic(void *vaddr)
++
++'vaddr' must be the value returned by the last io_mapping_map_local_wc() or
++io_mapping_map_atomic_wc() call. This unmaps the specified mapping and
++undoes the side effects of the mapping functions.
++
++If you need to sleep while holding a mapping, you can use the regular
++variant, although this may be significantly slower::
+
+ void *io_mapping_map_wc(struct io_mapping *mapping,
+ unsigned long offset)
+
+-This works like io_mapping_map_atomic_wc except it allows
+-the task to sleep while holding the page mapped.
+-
++This works like io_mapping_map_atomic/local_wc() except it has no side
++effects and the pointer is globaly visible.
+
+-::
++The mappings are released with::
+
+ void io_mapping_unmap(void *vaddr)
+
+-This works like io_mapping_unmap_atomic, except it is used
+-for pages mapped with io_mapping_map_wc.
++Use for pages mapped with io_mapping_map_wc().
+
+ At driver close time, the io_mapping object must be freed::
+
+diff --git a/include/linux/io-mapping.h b/include/linux/io-mapping.h
+index 60e7c83e4904..c093e81310a9 100644
+--- a/include/linux/io-mapping.h
++++ b/include/linux/io-mapping.h
+@@ -82,6 +82,21 @@ io_mapping_unmap_atomic(void __iomem *vaddr)
+ preempt_enable();
+ }
+
++static inline void __iomem *
++io_mapping_map_local_wc(struct io_mapping *mapping, unsigned long offset)
++{
++ resource_size_t phys_addr;
++
++ BUG_ON(offset >= mapping->size);
++ phys_addr = mapping->base + offset;
++ return __iomap_local_pfn_prot(PHYS_PFN(phys_addr), mapping->prot);
++}
++
++static inline void io_mapping_unmap_local(void __iomem *vaddr)
++{
++ kunmap_local_indexed((void __force *)vaddr);
++}
++
+ static inline void __iomem *
+ io_mapping_map_wc(struct io_mapping *mapping,
+ unsigned long offset,
+@@ -101,7 +116,7 @@ io_mapping_unmap(void __iomem *vaddr)
+ iounmap(vaddr);
+ }
+
+-#else
++#else /* HAVE_ATOMIC_IOMAP */
+
+ #include <linux/uaccess.h>
+
+@@ -166,7 +181,18 @@ io_mapping_unmap_atomic(void __iomem *vaddr)
+ preempt_enable();
+ }
+
+-#endif /* HAVE_ATOMIC_IOMAP */
++static inline void __iomem *
++io_mapping_map_local_wc(struct io_mapping *mapping, unsigned long offset)
++{
++ return io_mapping_map_wc(mapping, offset, PAGE_SIZE);
++}
++
++static inline void io_mapping_unmap_local(void __iomem *vaddr)
++{
++ io_mapping_unmap(vaddr);
++}
++
++#endif /* !HAVE_ATOMIC_IOMAP */
+
+ static inline struct io_mapping *
+ io_mapping_create_wc(resource_size_t base,
+--
+2.43.0
+
diff --git a/debian/patches-rt/0050-x86-crashdump-32-Simplify-copy_oldmem_page.patch b/debian/patches-rt/0050-x86-crashdump-32-Simplify-copy_oldmem_page.patch
new file mode 100644
index 000000000..6f57ef059
--- /dev/null
+++ b/debian/patches-rt/0050-x86-crashdump-32-Simplify-copy_oldmem_page.patch
@@ -0,0 +1,99 @@
+From 9d9dd47b77d859a1261ac0dc98d94018bb5bb6a0 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:39 +0100
+Subject: [PATCH 050/323] x86/crashdump/32: Simplify copy_oldmem_page()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Replace kmap_atomic_pfn() with kmap_local_pfn() which is preemptible and
+can take page faults.
+
+Remove the indirection of the dump page and the related cruft which is not
+longer required.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/x86/kernel/crash_dump_32.c | 48 +++++++--------------------------
+ 1 file changed, 10 insertions(+), 38 deletions(-)
+
+diff --git a/arch/x86/kernel/crash_dump_32.c b/arch/x86/kernel/crash_dump_32.c
+index 33ee47670b99..5fcac46aaf6b 100644
+--- a/arch/x86/kernel/crash_dump_32.c
++++ b/arch/x86/kernel/crash_dump_32.c
+@@ -13,8 +13,6 @@
+
+ #include <linux/uaccess.h>
+
+-static void *kdump_buf_page;
+-
+ static inline bool is_crashed_pfn_valid(unsigned long pfn)
+ {
+ #ifndef CONFIG_X86_PAE
+@@ -41,15 +39,11 @@ static inline bool is_crashed_pfn_valid(unsigned long pfn)
+ * @userbuf: if set, @buf is in user address space, use copy_to_user(),
+ * otherwise @buf is in kernel address space, use memcpy().
+ *
+- * Copy a page from "oldmem". For this page, there is no pte mapped
+- * in the current kernel. We stitch up a pte, similar to kmap_atomic.
+- *
+- * Calling copy_to_user() in atomic context is not desirable. Hence first
+- * copying the data to a pre-allocated kernel page and then copying to user
+- * space in non-atomic context.
++ * Copy a page from "oldmem". For this page, there might be no pte mapped
++ * in the current kernel.
+ */
+-ssize_t copy_oldmem_page(unsigned long pfn, char *buf,
+- size_t csize, unsigned long offset, int userbuf)
++ssize_t copy_oldmem_page(unsigned long pfn, char *buf, size_t csize,
++ unsigned long offset, int userbuf)
+ {
+ void *vaddr;
+
+@@ -59,38 +53,16 @@ ssize_t copy_oldmem_page(unsigned long pfn, char *buf,
+ if (!is_crashed_pfn_valid(pfn))
+ return -EFAULT;
+
+- vaddr = kmap_atomic_pfn(pfn);
++ vaddr = kmap_local_pfn(pfn);
+
+ if (!userbuf) {
+- memcpy(buf, (vaddr + offset), csize);
+- kunmap_atomic(vaddr);
++ memcpy(buf, vaddr + offset, csize);
+ } else {
+- if (!kdump_buf_page) {
+- printk(KERN_WARNING "Kdump: Kdump buffer page not"
+- " allocated\n");
+- kunmap_atomic(vaddr);
+- return -EFAULT;
+- }
+- copy_page(kdump_buf_page, vaddr);
+- kunmap_atomic(vaddr);
+- if (copy_to_user(buf, (kdump_buf_page + offset), csize))
+- return -EFAULT;
++ if (copy_to_user(buf, vaddr + offset, csize))
++ csize = -EFAULT;
+ }
+
+- return csize;
+-}
++ kunmap_local(vaddr);
+
+-static int __init kdump_buf_page_init(void)
+-{
+- int ret = 0;
+-
+- kdump_buf_page = kmalloc(PAGE_SIZE, GFP_KERNEL);
+- if (!kdump_buf_page) {
+- printk(KERN_WARNING "Kdump: Failed to allocate kdump buffer"
+- " page\n");
+- ret = -ENOMEM;
+- }
+-
+- return ret;
++ return csize;
+ }
+-arch_initcall(kdump_buf_page_init);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0051-mips-crashdump-Simplify-copy_oldmem_page.patch b/debian/patches-rt/0051-mips-crashdump-Simplify-copy_oldmem_page.patch
new file mode 100644
index 000000000..837a4a04e
--- /dev/null
+++ b/debian/patches-rt/0051-mips-crashdump-Simplify-copy_oldmem_page.patch
@@ -0,0 +1,95 @@
+From 1aeac707162ce43fc0ae9c45df5a8a4535de2332 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:40 +0100
+Subject: [PATCH 051/323] mips/crashdump: Simplify copy_oldmem_page()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Replace kmap_atomic_pfn() with kmap_local_pfn() which is preemptible and
+can take page faults.
+
+Remove the indirection of the dump page and the related cruft which is not
+longer required.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
+Cc: linux-mips@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/mips/kernel/crash_dump.c | 42 ++++++-----------------------------
+ 1 file changed, 7 insertions(+), 35 deletions(-)
+
+diff --git a/arch/mips/kernel/crash_dump.c b/arch/mips/kernel/crash_dump.c
+index 01b2bd95ba1f..9aba83e1eeb4 100644
+--- a/arch/mips/kernel/crash_dump.c
++++ b/arch/mips/kernel/crash_dump.c
+@@ -5,8 +5,6 @@
+ #include <linux/uaccess.h>
+ #include <linux/slab.h>
+
+-static void *kdump_buf_page;
+-
+ /**
+ * copy_oldmem_page - copy one page from "oldmem"
+ * @pfn: page frame number to be copied
+@@ -17,51 +15,25 @@ static void *kdump_buf_page;
+ * @userbuf: if set, @buf is in user address space, use copy_to_user(),
+ * otherwise @buf is in kernel address space, use memcpy().
+ *
+- * Copy a page from "oldmem". For this page, there is no pte mapped
++ * Copy a page from "oldmem". For this page, there might be no pte mapped
+ * in the current kernel.
+- *
+- * Calling copy_to_user() in atomic context is not desirable. Hence first
+- * copying the data to a pre-allocated kernel page and then copying to user
+- * space in non-atomic context.
+ */
+-ssize_t copy_oldmem_page(unsigned long pfn, char *buf,
+- size_t csize, unsigned long offset, int userbuf)
++ssize_t copy_oldmem_page(unsigned long pfn, char *buf, size_t csize,
++ unsigned long offset, int userbuf)
+ {
+ void *vaddr;
+
+ if (!csize)
+ return 0;
+
+- vaddr = kmap_atomic_pfn(pfn);
++ vaddr = kmap_local_pfn(pfn);
+
+ if (!userbuf) {
+- memcpy(buf, (vaddr + offset), csize);
+- kunmap_atomic(vaddr);
++ memcpy(buf, vaddr + offset, csize);
+ } else {
+- if (!kdump_buf_page) {
+- pr_warn("Kdump: Kdump buffer page not allocated\n");
+-
+- return -EFAULT;
+- }
+- copy_page(kdump_buf_page, vaddr);
+- kunmap_atomic(vaddr);
+- if (copy_to_user(buf, (kdump_buf_page + offset), csize))
+- return -EFAULT;
++ if (copy_to_user(buf, vaddr + offset, csize))
++ csize = -EFAULT;
+ }
+
+ return csize;
+ }
+-
+-static int __init kdump_buf_page_init(void)
+-{
+- int ret = 0;
+-
+- kdump_buf_page = kmalloc(PAGE_SIZE, GFP_KERNEL);
+- if (!kdump_buf_page) {
+- pr_warn("Kdump: Failed to allocate kdump buffer page\n");
+- ret = -ENOMEM;
+- }
+-
+- return ret;
+-}
+-arch_initcall(kdump_buf_page_init);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0052-ARM-mm-Replace-kmap_atomic_pfn.patch b/debian/patches-rt/0052-ARM-mm-Replace-kmap_atomic_pfn.patch
new file mode 100644
index 000000000..ba46ccc69
--- /dev/null
+++ b/debian/patches-rt/0052-ARM-mm-Replace-kmap_atomic_pfn.patch
@@ -0,0 +1,71 @@
+From d74735ac58543c778598c75bccd45aa527acf03c Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:41 +0100
+Subject: [PATCH 052/323] ARM: mm: Replace kmap_atomic_pfn()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+There is no requirement to disable pagefaults and preemption for these
+cache management mappings.
+
+Replace kmap_atomic_pfn() with kmap_local_pfn(). This allows to remove
+kmap_atomic_pfn() in the next step.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Russell King <linux@armlinux.org.uk>
+Cc: linux-arm-kernel@lists.infradead.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm/mm/cache-feroceon-l2.c | 6 +++---
+ arch/arm/mm/cache-xsc3l2.c | 4 ++--
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/arch/arm/mm/cache-feroceon-l2.c b/arch/arm/mm/cache-feroceon-l2.c
+index 5c1b7a7b9af6..87328766e910 100644
+--- a/arch/arm/mm/cache-feroceon-l2.c
++++ b/arch/arm/mm/cache-feroceon-l2.c
+@@ -49,9 +49,9 @@ static inline unsigned long l2_get_va(unsigned long paddr)
+ * we simply install a virtual mapping for it only for the
+ * TLB lookup to occur, hence no need to flush the untouched
+ * memory mapping afterwards (note: a cache flush may happen
+- * in some circumstances depending on the path taken in kunmap_atomic).
++ * in some circumstances depending on the path taken in kunmap_local).
+ */
+- void *vaddr = kmap_atomic_pfn(paddr >> PAGE_SHIFT);
++ void *vaddr = kmap_local_pfn(paddr >> PAGE_SHIFT);
+ return (unsigned long)vaddr + (paddr & ~PAGE_MASK);
+ #else
+ return __phys_to_virt(paddr);
+@@ -61,7 +61,7 @@ static inline unsigned long l2_get_va(unsigned long paddr)
+ static inline void l2_put_va(unsigned long vaddr)
+ {
+ #ifdef CONFIG_HIGHMEM
+- kunmap_atomic((void *)vaddr);
++ kunmap_local((void *)vaddr);
+ #endif
+ }
+
+diff --git a/arch/arm/mm/cache-xsc3l2.c b/arch/arm/mm/cache-xsc3l2.c
+index d20d7af02d10..0e0a3abd8174 100644
+--- a/arch/arm/mm/cache-xsc3l2.c
++++ b/arch/arm/mm/cache-xsc3l2.c
+@@ -59,7 +59,7 @@ static inline void l2_unmap_va(unsigned long va)
+ {
+ #ifdef CONFIG_HIGHMEM
+ if (va != -1)
+- kunmap_atomic((void *)va);
++ kunmap_local((void *)va);
+ #endif
+ }
+
+@@ -75,7 +75,7 @@ static inline unsigned long l2_map_va(unsigned long pa, unsigned long prev_va)
+ * in place for it.
+ */
+ l2_unmap_va(prev_va);
+- va = (unsigned long)kmap_atomic_pfn(pa >> PAGE_SHIFT);
++ va = (unsigned long)kmap_local_pfn(pa >> PAGE_SHIFT);
+ }
+ return va + (pa_offset >> (32 - PAGE_SHIFT));
+ #else
+--
+2.43.0
+
diff --git a/debian/patches-rt/0053-highmem-Remove-kmap_atomic_pfn.patch b/debian/patches-rt/0053-highmem-Remove-kmap_atomic_pfn.patch
new file mode 100644
index 000000000..a43566a1c
--- /dev/null
+++ b/debian/patches-rt/0053-highmem-Remove-kmap_atomic_pfn.patch
@@ -0,0 +1,47 @@
+From 766aabba108ec5697bed86d6ec633151b7f3618e Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:42 +0100
+Subject: [PATCH 053/323] highmem: Remove kmap_atomic_pfn()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+No more users.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/highmem-internal.h | 12 ------------
+ 1 file changed, 12 deletions(-)
+
+diff --git a/include/linux/highmem-internal.h b/include/linux/highmem-internal.h
+index 1bbe96dc8be6..3590af5aad96 100644
+--- a/include/linux/highmem-internal.h
++++ b/include/linux/highmem-internal.h
+@@ -100,13 +100,6 @@ static inline void *kmap_atomic(struct page *page)
+ return kmap_atomic_prot(page, kmap_prot);
+ }
+
+-static inline void *kmap_atomic_pfn(unsigned long pfn)
+-{
+- preempt_disable();
+- pagefault_disable();
+- return __kmap_local_pfn_prot(pfn, kmap_prot);
+-}
+-
+ static inline void __kunmap_atomic(void *addr)
+ {
+ kunmap_local_indexed(addr);
+@@ -194,11 +187,6 @@ static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
+ return kmap_atomic(page);
+ }
+
+-static inline void *kmap_atomic_pfn(unsigned long pfn)
+-{
+- return kmap_atomic(pfn_to_page(pfn));
+-}
+-
+ static inline void __kunmap_atomic(void *addr)
+ {
+ #ifdef ARCH_HAS_FLUSH_ON_KUNMAP
+--
+2.43.0
+
diff --git a/debian/patches-rt/0054-drm-ttm-Replace-kmap_atomic-usage.patch b/debian/patches-rt/0054-drm-ttm-Replace-kmap_atomic-usage.patch
new file mode 100644
index 000000000..3043aa642
--- /dev/null
+++ b/debian/patches-rt/0054-drm-ttm-Replace-kmap_atomic-usage.patch
@@ -0,0 +1,74 @@
+From 818c332a89ac4310c59f7ad122bdb4a6e0aac518 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:43 +0100
+Subject: [PATCH 054/323] drm/ttm: Replace kmap_atomic() usage
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+There is no reason to disable pagefaults and preemption as a side effect of
+kmap_atomic_prot().
+
+Use kmap_local_page_prot() instead and document the reasoning for the
+mapping usage with the given pgprot.
+
+Remove the NULL pointer check for the map. These functions return a valid
+address for valid pages and the return was bogus anyway as it would have
+left preemption and pagefaults disabled.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Christian Koenig <christian.koenig@amd.com>
+Cc: Huang Rui <ray.huang@amd.com>
+Cc: David Airlie <airlied@linux.ie>
+Cc: Daniel Vetter <daniel@ffwll.ch>
+Cc: dri-devel@lists.freedesktop.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/gpu/drm/ttm/ttm_bo_util.c | 20 ++++++++++++--------
+ 1 file changed, 12 insertions(+), 8 deletions(-)
+
+diff --git a/drivers/gpu/drm/ttm/ttm_bo_util.c b/drivers/gpu/drm/ttm/ttm_bo_util.c
+index 1968df9743fc..79b9c883431a 100644
+--- a/drivers/gpu/drm/ttm/ttm_bo_util.c
++++ b/drivers/gpu/drm/ttm/ttm_bo_util.c
+@@ -181,13 +181,15 @@ static int ttm_copy_io_ttm_page(struct ttm_tt *ttm, void *src,
+ return -ENOMEM;
+
+ src = (void *)((unsigned long)src + (page << PAGE_SHIFT));
+- dst = kmap_atomic_prot(d, prot);
+- if (!dst)
+- return -ENOMEM;
++ /*
++ * Ensure that a highmem page is mapped with the correct
++ * pgprot. For non highmem the mapping is already there.
++ */
++ dst = kmap_local_page_prot(d, prot);
+
+ memcpy_fromio(dst, src, PAGE_SIZE);
+
+- kunmap_atomic(dst);
++ kunmap_local(dst);
+
+ return 0;
+ }
+@@ -203,13 +205,15 @@ static int ttm_copy_ttm_io_page(struct ttm_tt *ttm, void *dst,
+ return -ENOMEM;
+
+ dst = (void *)((unsigned long)dst + (page << PAGE_SHIFT));
+- src = kmap_atomic_prot(s, prot);
+- if (!src)
+- return -ENOMEM;
++ /*
++ * Ensure that a highmem page is mapped with the correct
++ * pgprot. For non highmem the mapping is already there.
++ */
++ src = kmap_local_page_prot(s, prot);
+
+ memcpy_toio(dst, src, PAGE_SIZE);
+
+- kunmap_atomic(src);
++ kunmap_local(src);
+
+ return 0;
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0055-drm-vmgfx-Replace-kmap_atomic.patch b/debian/patches-rt/0055-drm-vmgfx-Replace-kmap_atomic.patch
new file mode 100644
index 000000000..613e94a91
--- /dev/null
+++ b/debian/patches-rt/0055-drm-vmgfx-Replace-kmap_atomic.patch
@@ -0,0 +1,104 @@
+From 3c21a2a16d681c2be78f257f660f1c8c1b50f7c3 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:44 +0100
+Subject: [PATCH 055/323] drm/vmgfx: Replace kmap_atomic()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+There is no reason to disable pagefaults and preemption as a side effect of
+kmap_atomic_prot().
+
+Use kmap_local_page_prot() instead and document the reasoning for the
+mapping usage with the given pgprot.
+
+Remove the NULL pointer check for the map. These functions return a valid
+address for valid pages and the return was bogus anyway as it would have
+left preemption and pagefaults disabled.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
+Cc: Roland Scheidegger <sroland@vmware.com>
+Cc: David Airlie <airlied@linux.ie>
+Cc: Daniel Vetter <daniel@ffwll.ch>
+Cc: dri-devel@lists.freedesktop.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/gpu/drm/vmwgfx/vmwgfx_blit.c | 30 +++++++++++-----------------
+ 1 file changed, 12 insertions(+), 18 deletions(-)
+
+diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c b/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
+index e8d66182cd7b..71dba228f68e 100644
+--- a/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
++++ b/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
+@@ -375,12 +375,12 @@ static int vmw_bo_cpu_blit_line(struct vmw_bo_blit_line_data *d,
+ copy_size = min_t(u32, copy_size, PAGE_SIZE - src_page_offset);
+
+ if (unmap_src) {
+- kunmap_atomic(d->src_addr);
++ kunmap_local(d->src_addr);
+ d->src_addr = NULL;
+ }
+
+ if (unmap_dst) {
+- kunmap_atomic(d->dst_addr);
++ kunmap_local(d->dst_addr);
+ d->dst_addr = NULL;
+ }
+
+@@ -388,12 +388,8 @@ static int vmw_bo_cpu_blit_line(struct vmw_bo_blit_line_data *d,
+ if (WARN_ON_ONCE(dst_page >= d->dst_num_pages))
+ return -EINVAL;
+
+- d->dst_addr =
+- kmap_atomic_prot(d->dst_pages[dst_page],
+- d->dst_prot);
+- if (!d->dst_addr)
+- return -ENOMEM;
+-
++ d->dst_addr = kmap_local_page_prot(d->dst_pages[dst_page],
++ d->dst_prot);
+ d->mapped_dst = dst_page;
+ }
+
+@@ -401,12 +397,8 @@ static int vmw_bo_cpu_blit_line(struct vmw_bo_blit_line_data *d,
+ if (WARN_ON_ONCE(src_page >= d->src_num_pages))
+ return -EINVAL;
+
+- d->src_addr =
+- kmap_atomic_prot(d->src_pages[src_page],
+- d->src_prot);
+- if (!d->src_addr)
+- return -ENOMEM;
+-
++ d->src_addr = kmap_local_page_prot(d->src_pages[src_page],
++ d->src_prot);
+ d->mapped_src = src_page;
+ }
+ diff->do_cpy(diff, d->dst_addr + dst_page_offset,
+@@ -436,8 +428,10 @@ static int vmw_bo_cpu_blit_line(struct vmw_bo_blit_line_data *d,
+ *
+ * Performs a CPU blit from one buffer object to another avoiding a full
+ * bo vmap which may exhaust- or fragment vmalloc space.
+- * On supported architectures (x86), we're using kmap_atomic which avoids
+- * cross-processor TLB- and cache flushes and may, on non-HIGHMEM systems
++ *
++ * On supported architectures (x86), we're using kmap_local_prot() which
++ * avoids cross-processor TLB- and cache flushes. kmap_local_prot() will
++ * either map a highmem page with the proper pgprot on HIGHMEM=y systems or
+ * reference already set-up mappings.
+ *
+ * Neither of the buffer objects may be placed in PCI memory
+@@ -500,9 +494,9 @@ int vmw_bo_cpu_blit(struct ttm_buffer_object *dst,
+ }
+ out:
+ if (d.src_addr)
+- kunmap_atomic(d.src_addr);
++ kunmap_local(d.src_addr);
+ if (d.dst_addr)
+- kunmap_atomic(d.dst_addr);
++ kunmap_local(d.dst_addr);
+
+ return ret;
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0056-highmem-Remove-kmap_atomic_prot.patch b/debian/patches-rt/0056-highmem-Remove-kmap_atomic_prot.patch
new file mode 100644
index 000000000..f9038b30b
--- /dev/null
+++ b/debian/patches-rt/0056-highmem-Remove-kmap_atomic_prot.patch
@@ -0,0 +1,52 @@
+From acac3af33fa7522e3be0f030ec1d80cca2cf215d Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:45 +0100
+Subject: [PATCH 056/323] highmem: Remove kmap_atomic_prot()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+No more users.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/highmem-internal.h | 14 ++------------
+ 1 file changed, 2 insertions(+), 12 deletions(-)
+
+diff --git a/include/linux/highmem-internal.h b/include/linux/highmem-internal.h
+index 3590af5aad96..bd15bf9164c2 100644
+--- a/include/linux/highmem-internal.h
++++ b/include/linux/highmem-internal.h
+@@ -88,16 +88,11 @@ static inline void __kunmap_local(void *vaddr)
+ kunmap_local_indexed(vaddr);
+ }
+
+-static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
++static inline void *kmap_atomic(struct page *page)
+ {
+ preempt_disable();
+ pagefault_disable();
+- return __kmap_local_page_prot(page, prot);
+-}
+-
+-static inline void *kmap_atomic(struct page *page)
+-{
+- return kmap_atomic_prot(page, kmap_prot);
++ return __kmap_local_page_prot(page, kmap_prot);
+ }
+
+ static inline void __kunmap_atomic(void *addr)
+@@ -182,11 +177,6 @@ static inline void *kmap_atomic(struct page *page)
+ return page_address(page);
+ }
+
+-static inline void *kmap_atomic_prot(struct page *page, pgprot_t prot)
+-{
+- return kmap_atomic(page);
+-}
+-
+ static inline void __kunmap_atomic(void *addr)
+ {
+ #ifdef ARCH_HAS_FLUSH_ON_KUNMAP
+--
+2.43.0
+
diff --git a/debian/patches-rt/0057-drm-qxl-Replace-io_mapping_map_atomic_wc.patch b/debian/patches-rt/0057-drm-qxl-Replace-io_mapping_map_atomic_wc.patch
new file mode 100644
index 000000000..3d78f15fd
--- /dev/null
+++ b/debian/patches-rt/0057-drm-qxl-Replace-io_mapping_map_atomic_wc.patch
@@ -0,0 +1,257 @@
+From 2c90fccccea4cffb6ab5cd779da693cfe82194b8 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:46 +0100
+Subject: [PATCH 057/323] drm/qxl: Replace io_mapping_map_atomic_wc()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+None of these mapping requires the side effect of disabling pagefaults and
+preemption.
+
+Use io_mapping_map_local_wc() instead, rename the related functions
+accordingly and clean up qxl_process_single_command() to use a plain
+copy_from_user() as the local maps are not disabling pagefaults.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Dave Airlie <airlied@redhat.com>
+Cc: Gerd Hoffmann <kraxel@redhat.com>
+Cc: David Airlie <airlied@linux.ie>
+Cc: Daniel Vetter <daniel@ffwll.ch>
+Cc: virtualization@lists.linux-foundation.org
+Cc: spice-devel@lists.freedesktop.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/gpu/drm/qxl/qxl_image.c | 18 +++++++++---------
+ drivers/gpu/drm/qxl/qxl_ioctl.c | 27 +++++++++++++--------------
+ drivers/gpu/drm/qxl/qxl_object.c | 12 ++++++------
+ drivers/gpu/drm/qxl/qxl_object.h | 4 ++--
+ drivers/gpu/drm/qxl/qxl_release.c | 4 ++--
+ 5 files changed, 32 insertions(+), 33 deletions(-)
+
+diff --git a/drivers/gpu/drm/qxl/qxl_image.c b/drivers/gpu/drm/qxl/qxl_image.c
+index 60ab7151b84d..93f92ccd42e5 100644
+--- a/drivers/gpu/drm/qxl/qxl_image.c
++++ b/drivers/gpu/drm/qxl/qxl_image.c
+@@ -124,12 +124,12 @@ qxl_image_init_helper(struct qxl_device *qdev,
+ wrong (check the bitmaps are sent correctly
+ first) */
+
+- ptr = qxl_bo_kmap_atomic_page(qdev, chunk_bo, 0);
++ ptr = qxl_bo_kmap_local_page(qdev, chunk_bo, 0);
+ chunk = ptr;
+ chunk->data_size = height * chunk_stride;
+ chunk->prev_chunk = 0;
+ chunk->next_chunk = 0;
+- qxl_bo_kunmap_atomic_page(qdev, chunk_bo, ptr);
++ qxl_bo_kunmap_local_page(qdev, chunk_bo, ptr);
+
+ {
+ void *k_data, *i_data;
+@@ -143,7 +143,7 @@ qxl_image_init_helper(struct qxl_device *qdev,
+ i_data = (void *)data;
+
+ while (remain > 0) {
+- ptr = qxl_bo_kmap_atomic_page(qdev, chunk_bo, page << PAGE_SHIFT);
++ ptr = qxl_bo_kmap_local_page(qdev, chunk_bo, page << PAGE_SHIFT);
+
+ if (page == 0) {
+ chunk = ptr;
+@@ -157,7 +157,7 @@ qxl_image_init_helper(struct qxl_device *qdev,
+
+ memcpy(k_data, i_data, size);
+
+- qxl_bo_kunmap_atomic_page(qdev, chunk_bo, ptr);
++ qxl_bo_kunmap_local_page(qdev, chunk_bo, ptr);
+ i_data += size;
+ remain -= size;
+ page++;
+@@ -175,10 +175,10 @@ qxl_image_init_helper(struct qxl_device *qdev,
+ page_offset = offset_in_page(out_offset);
+ size = min((int)(PAGE_SIZE - page_offset), remain);
+
+- ptr = qxl_bo_kmap_atomic_page(qdev, chunk_bo, page_base);
++ ptr = qxl_bo_kmap_local_page(qdev, chunk_bo, page_base);
+ k_data = ptr + page_offset;
+ memcpy(k_data, i_data, size);
+- qxl_bo_kunmap_atomic_page(qdev, chunk_bo, ptr);
++ qxl_bo_kunmap_local_page(qdev, chunk_bo, ptr);
+ remain -= size;
+ i_data += size;
+ out_offset += size;
+@@ -189,7 +189,7 @@ qxl_image_init_helper(struct qxl_device *qdev,
+ qxl_bo_kunmap(chunk_bo);
+
+ image_bo = dimage->bo;
+- ptr = qxl_bo_kmap_atomic_page(qdev, image_bo, 0);
++ ptr = qxl_bo_kmap_local_page(qdev, image_bo, 0);
+ image = ptr;
+
+ image->descriptor.id = 0;
+@@ -212,7 +212,7 @@ qxl_image_init_helper(struct qxl_device *qdev,
+ break;
+ default:
+ DRM_ERROR("unsupported image bit depth\n");
+- qxl_bo_kunmap_atomic_page(qdev, image_bo, ptr);
++ qxl_bo_kunmap_local_page(qdev, image_bo, ptr);
+ return -EINVAL;
+ }
+ image->u.bitmap.flags = QXL_BITMAP_TOP_DOWN;
+@@ -222,7 +222,7 @@ qxl_image_init_helper(struct qxl_device *qdev,
+ image->u.bitmap.palette = 0;
+ image->u.bitmap.data = qxl_bo_physical_address(qdev, chunk_bo, 0);
+
+- qxl_bo_kunmap_atomic_page(qdev, image_bo, ptr);
++ qxl_bo_kunmap_local_page(qdev, image_bo, ptr);
+
+ return 0;
+ }
+diff --git a/drivers/gpu/drm/qxl/qxl_ioctl.c b/drivers/gpu/drm/qxl/qxl_ioctl.c
+index 5cea6eea72ab..785023081b79 100644
+--- a/drivers/gpu/drm/qxl/qxl_ioctl.c
++++ b/drivers/gpu/drm/qxl/qxl_ioctl.c
+@@ -89,11 +89,11 @@ apply_reloc(struct qxl_device *qdev, struct qxl_reloc_info *info)
+ {
+ void *reloc_page;
+
+- reloc_page = qxl_bo_kmap_atomic_page(qdev, info->dst_bo, info->dst_offset & PAGE_MASK);
++ reloc_page = qxl_bo_kmap_local_page(qdev, info->dst_bo, info->dst_offset & PAGE_MASK);
+ *(uint64_t *)(reloc_page + (info->dst_offset & ~PAGE_MASK)) = qxl_bo_physical_address(qdev,
+ info->src_bo,
+ info->src_offset);
+- qxl_bo_kunmap_atomic_page(qdev, info->dst_bo, reloc_page);
++ qxl_bo_kunmap_local_page(qdev, info->dst_bo, reloc_page);
+ }
+
+ static void
+@@ -105,9 +105,9 @@ apply_surf_reloc(struct qxl_device *qdev, struct qxl_reloc_info *info)
+ if (info->src_bo && !info->src_bo->is_primary)
+ id = info->src_bo->surface_id;
+
+- reloc_page = qxl_bo_kmap_atomic_page(qdev, info->dst_bo, info->dst_offset & PAGE_MASK);
++ reloc_page = qxl_bo_kmap_local_page(qdev, info->dst_bo, info->dst_offset & PAGE_MASK);
+ *(uint32_t *)(reloc_page + (info->dst_offset & ~PAGE_MASK)) = id;
+- qxl_bo_kunmap_atomic_page(qdev, info->dst_bo, reloc_page);
++ qxl_bo_kunmap_local_page(qdev, info->dst_bo, reloc_page);
+ }
+
+ /* return holding the reference to this object */
+@@ -149,7 +149,6 @@ static int qxl_process_single_command(struct qxl_device *qdev,
+ struct qxl_bo *cmd_bo;
+ void *fb_cmd;
+ int i, ret, num_relocs;
+- int unwritten;
+
+ switch (cmd->type) {
+ case QXL_CMD_DRAW:
+@@ -185,21 +184,21 @@ static int qxl_process_single_command(struct qxl_device *qdev,
+ goto out_free_reloc;
+
+ /* TODO copy slow path code from i915 */
+- fb_cmd = qxl_bo_kmap_atomic_page(qdev, cmd_bo, (release->release_offset & PAGE_MASK));
+- unwritten = __copy_from_user_inatomic_nocache
+- (fb_cmd + sizeof(union qxl_release_info) + (release->release_offset & ~PAGE_MASK),
+- u64_to_user_ptr(cmd->command), cmd->command_size);
++ fb_cmd = qxl_bo_kmap_local_page(qdev, cmd_bo, (release->release_offset & PAGE_MASK));
+
+- {
++ if (copy_from_user(fb_cmd + sizeof(union qxl_release_info) +
++ (release->release_offset & ~PAGE_MASK),
++ u64_to_user_ptr(cmd->command), cmd->command_size)) {
++ ret = -EFAULT;
++ } else {
+ struct qxl_drawable *draw = fb_cmd;
+
+ draw->mm_time = qdev->rom->mm_clock;
+ }
+
+- qxl_bo_kunmap_atomic_page(qdev, cmd_bo, fb_cmd);
+- if (unwritten) {
+- DRM_ERROR("got unwritten %d\n", unwritten);
+- ret = -EFAULT;
++ qxl_bo_kunmap_local_page(qdev, cmd_bo, fb_cmd);
++ if (ret) {
++ DRM_ERROR("copy from user failed %d\n", ret);
+ goto out_free_release;
+ }
+
+diff --git a/drivers/gpu/drm/qxl/qxl_object.c b/drivers/gpu/drm/qxl/qxl_object.c
+index 544a9e4df2a8..5ee5171d46ef 100644
+--- a/drivers/gpu/drm/qxl/qxl_object.c
++++ b/drivers/gpu/drm/qxl/qxl_object.c
+@@ -173,8 +173,8 @@ int qxl_bo_kmap(struct qxl_bo *bo, void **ptr)
+ return 0;
+ }
+
+-void *qxl_bo_kmap_atomic_page(struct qxl_device *qdev,
+- struct qxl_bo *bo, int page_offset)
++void *qxl_bo_kmap_local_page(struct qxl_device *qdev,
++ struct qxl_bo *bo, int page_offset)
+ {
+ unsigned long offset;
+ void *rptr;
+@@ -189,7 +189,7 @@ void *qxl_bo_kmap_atomic_page(struct qxl_device *qdev,
+ goto fallback;
+
+ offset = bo->tbo.mem.start << PAGE_SHIFT;
+- return io_mapping_map_atomic_wc(map, offset + page_offset);
++ return io_mapping_map_local_wc(map, offset + page_offset);
+ fallback:
+ if (bo->kptr) {
+ rptr = bo->kptr + (page_offset * PAGE_SIZE);
+@@ -215,14 +215,14 @@ void qxl_bo_kunmap(struct qxl_bo *bo)
+ ttm_bo_kunmap(&bo->kmap);
+ }
+
+-void qxl_bo_kunmap_atomic_page(struct qxl_device *qdev,
+- struct qxl_bo *bo, void *pmap)
++void qxl_bo_kunmap_local_page(struct qxl_device *qdev,
++ struct qxl_bo *bo, void *pmap)
+ {
+ if ((bo->tbo.mem.mem_type != TTM_PL_VRAM) &&
+ (bo->tbo.mem.mem_type != TTM_PL_PRIV))
+ goto fallback;
+
+- io_mapping_unmap_atomic(pmap);
++ io_mapping_unmap_local(pmap);
+ return;
+ fallback:
+ qxl_bo_kunmap(bo);
+diff --git a/drivers/gpu/drm/qxl/qxl_object.h b/drivers/gpu/drm/qxl/qxl_object.h
+index 5762ea40d047..6ae89b1b36f4 100644
+--- a/drivers/gpu/drm/qxl/qxl_object.h
++++ b/drivers/gpu/drm/qxl/qxl_object.h
+@@ -89,8 +89,8 @@ extern int qxl_bo_create(struct qxl_device *qdev,
+ struct qxl_bo **bo_ptr);
+ extern int qxl_bo_kmap(struct qxl_bo *bo, void **ptr);
+ extern void qxl_bo_kunmap(struct qxl_bo *bo);
+-void *qxl_bo_kmap_atomic_page(struct qxl_device *qdev, struct qxl_bo *bo, int page_offset);
+-void qxl_bo_kunmap_atomic_page(struct qxl_device *qdev, struct qxl_bo *bo, void *map);
++void *qxl_bo_kmap_local_page(struct qxl_device *qdev, struct qxl_bo *bo, int page_offset);
++void qxl_bo_kunmap_local_page(struct qxl_device *qdev, struct qxl_bo *bo, void *map);
+ extern struct qxl_bo *qxl_bo_ref(struct qxl_bo *bo);
+ extern void qxl_bo_unref(struct qxl_bo **bo);
+ extern int qxl_bo_pin(struct qxl_bo *bo);
+diff --git a/drivers/gpu/drm/qxl/qxl_release.c b/drivers/gpu/drm/qxl/qxl_release.c
+index b2a475a0ca4a..b665a33b449b 100644
+--- a/drivers/gpu/drm/qxl/qxl_release.c
++++ b/drivers/gpu/drm/qxl/qxl_release.c
+@@ -414,7 +414,7 @@ union qxl_release_info *qxl_release_map(struct qxl_device *qdev,
+ union qxl_release_info *info;
+ struct qxl_bo *bo = release->release_bo;
+
+- ptr = qxl_bo_kmap_atomic_page(qdev, bo, release->release_offset & PAGE_MASK);
++ ptr = qxl_bo_kmap_local_page(qdev, bo, release->release_offset & PAGE_MASK);
+ if (!ptr)
+ return NULL;
+ info = ptr + (release->release_offset & ~PAGE_MASK);
+@@ -429,7 +429,7 @@ void qxl_release_unmap(struct qxl_device *qdev,
+ void *ptr;
+
+ ptr = ((void *)info) - (release->release_offset & ~PAGE_MASK);
+- qxl_bo_kunmap_atomic_page(qdev, bo, ptr);
++ qxl_bo_kunmap_local_page(qdev, bo, ptr);
+ }
+
+ void qxl_release_fence_buffer_objects(struct qxl_release *release)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0058-drm-nouveau-device-Replace-io_mapping_map_atomic_wc.patch b/debian/patches-rt/0058-drm-nouveau-device-Replace-io_mapping_map_atomic_wc.patch
new file mode 100644
index 000000000..1fbd4e19c
--- /dev/null
+++ b/debian/patches-rt/0058-drm-nouveau-device-Replace-io_mapping_map_atomic_wc.patch
@@ -0,0 +1,54 @@
+From fa246d15bcd167ad99886a776912530c0ca8d6a7 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:47 +0100
+Subject: [PATCH 058/323] drm/nouveau/device: Replace
+ io_mapping_map_atomic_wc()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Neither fbmem_peek() nor fbmem_poke() require to disable pagefaults and
+preemption as a side effect of io_mapping_map_atomic_wc().
+
+Use io_mapping_map_local_wc() instead.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Ben Skeggs <bskeggs@redhat.com>
+Cc: David Airlie <airlied@linux.ie>
+Cc: Daniel Vetter <daniel@ffwll.ch>
+Cc: dri-devel@lists.freedesktop.org
+Cc: nouveau@lists.freedesktop.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/gpu/drm/nouveau/nvkm/subdev/devinit/fbmem.h | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/devinit/fbmem.h b/drivers/gpu/drm/nouveau/nvkm/subdev/devinit/fbmem.h
+index 6c5bbff12eb4..411f91ee20fa 100644
+--- a/drivers/gpu/drm/nouveau/nvkm/subdev/devinit/fbmem.h
++++ b/drivers/gpu/drm/nouveau/nvkm/subdev/devinit/fbmem.h
+@@ -60,19 +60,19 @@ fbmem_fini(struct io_mapping *fb)
+ static inline u32
+ fbmem_peek(struct io_mapping *fb, u32 off)
+ {
+- u8 __iomem *p = io_mapping_map_atomic_wc(fb, off & PAGE_MASK);
++ u8 __iomem *p = io_mapping_map_local_wc(fb, off & PAGE_MASK);
+ u32 val = ioread32(p + (off & ~PAGE_MASK));
+- io_mapping_unmap_atomic(p);
++ io_mapping_unmap_local(p);
+ return val;
+ }
+
+ static inline void
+ fbmem_poke(struct io_mapping *fb, u32 off, u32 val)
+ {
+- u8 __iomem *p = io_mapping_map_atomic_wc(fb, off & PAGE_MASK);
++ u8 __iomem *p = io_mapping_map_local_wc(fb, off & PAGE_MASK);
+ iowrite32(val, p + (off & ~PAGE_MASK));
+ wmb();
+- io_mapping_unmap_atomic(p);
++ io_mapping_unmap_local(p);
+ }
+
+ static inline bool
+--
+2.43.0
+
diff --git a/debian/patches-rt/0059-drm-i915-Replace-io_mapping_map_atomic_wc.patch b/debian/patches-rt/0059-drm-i915-Replace-io_mapping_map_atomic_wc.patch
new file mode 100644
index 000000000..91fbfdde2
--- /dev/null
+++ b/debian/patches-rt/0059-drm-i915-Replace-io_mapping_map_atomic_wc.patch
@@ -0,0 +1,173 @@
+From 012c96110910f68af41e3914aabb92283a885215 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:48 +0100
+Subject: [PATCH 059/323] drm/i915: Replace io_mapping_map_atomic_wc()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+None of these mapping requires the side effect of disabling pagefaults and
+preemption.
+
+Use io_mapping_map_local_wc() instead, and clean up gtt_user_read() and
+gtt_user_write() to use a plain copy_from_user() as the local maps are not
+disabling pagefaults.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Jani Nikula <jani.nikula@linux.intel.com>
+Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
+Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
+Cc: David Airlie <airlied@linux.ie>
+Cc: Daniel Vetter <daniel@ffwll.ch>
+Cc: intel-gfx@lists.freedesktop.org
+Cc: dri-devel@lists.freedesktop.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ .../gpu/drm/i915/gem/i915_gem_execbuffer.c | 7 ++--
+ drivers/gpu/drm/i915/i915_gem.c | 40 ++++++-------------
+ drivers/gpu/drm/i915/selftests/i915_gem.c | 4 +-
+ drivers/gpu/drm/i915/selftests/i915_gem_gtt.c | 8 ++--
+ 4 files changed, 22 insertions(+), 37 deletions(-)
+
+diff --git a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+index 0c083af5a59d..2abf043d3d9d 100644
+--- a/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
++++ b/drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c
+@@ -1080,7 +1080,7 @@ static void reloc_cache_reset(struct reloc_cache *cache, struct i915_execbuffer
+ struct i915_ggtt *ggtt = cache_to_ggtt(cache);
+
+ intel_gt_flush_ggtt_writes(ggtt->vm.gt);
+- io_mapping_unmap_atomic((void __iomem *)vaddr);
++ io_mapping_unmap_local((void __iomem *)vaddr);
+
+ if (drm_mm_node_allocated(&cache->node)) {
+ ggtt->vm.clear_range(&ggtt->vm,
+@@ -1146,7 +1146,7 @@ static void *reloc_iomap(struct drm_i915_gem_object *obj,
+
+ if (cache->vaddr) {
+ intel_gt_flush_ggtt_writes(ggtt->vm.gt);
+- io_mapping_unmap_atomic((void __force __iomem *) unmask_page(cache->vaddr));
++ io_mapping_unmap_local((void __force __iomem *) unmask_page(cache->vaddr));
+ } else {
+ struct i915_vma *vma;
+ int err;
+@@ -1194,8 +1194,7 @@ static void *reloc_iomap(struct drm_i915_gem_object *obj,
+ offset += page << PAGE_SHIFT;
+ }
+
+- vaddr = (void __force *)io_mapping_map_atomic_wc(&ggtt->iomap,
+- offset);
++ vaddr = (void __force *)io_mapping_map_local_wc(&ggtt->iomap, offset);
+ cache->page = page;
+ cache->vaddr = (unsigned long)vaddr;
+
+diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
+index 58276694c848..88944c3b1bc8 100644
+--- a/drivers/gpu/drm/i915/i915_gem.c
++++ b/drivers/gpu/drm/i915/i915_gem.c
+@@ -355,22 +355,15 @@ gtt_user_read(struct io_mapping *mapping,
+ char __user *user_data, int length)
+ {
+ void __iomem *vaddr;
+- unsigned long unwritten;
++ bool fail = false;
+
+ /* We can use the cpu mem copy function because this is X86. */
+- vaddr = io_mapping_map_atomic_wc(mapping, base);
+- unwritten = __copy_to_user_inatomic(user_data,
+- (void __force *)vaddr + offset,
+- length);
+- io_mapping_unmap_atomic(vaddr);
+- if (unwritten) {
+- vaddr = io_mapping_map_wc(mapping, base, PAGE_SIZE);
+- unwritten = copy_to_user(user_data,
+- (void __force *)vaddr + offset,
+- length);
+- io_mapping_unmap(vaddr);
+- }
+- return unwritten;
++ vaddr = io_mapping_map_local_wc(mapping, base);
++ if (copy_to_user(user_data, (void __force *)vaddr + offset, length))
++ fail = true;
++ io_mapping_unmap_local(vaddr);
++
++ return fail;
+ }
+
+ static int
+@@ -539,21 +532,14 @@ ggtt_write(struct io_mapping *mapping,
+ char __user *user_data, int length)
+ {
+ void __iomem *vaddr;
+- unsigned long unwritten;
++ bool fail = false;
+
+ /* We can use the cpu mem copy function because this is X86. */
+- vaddr = io_mapping_map_atomic_wc(mapping, base);
+- unwritten = __copy_from_user_inatomic_nocache((void __force *)vaddr + offset,
+- user_data, length);
+- io_mapping_unmap_atomic(vaddr);
+- if (unwritten) {
+- vaddr = io_mapping_map_wc(mapping, base, PAGE_SIZE);
+- unwritten = copy_from_user((void __force *)vaddr + offset,
+- user_data, length);
+- io_mapping_unmap(vaddr);
+- }
+-
+- return unwritten;
++ vaddr = io_mapping_map_local_wc(mapping, base);
++ if (copy_from_user((void __force *)vaddr + offset, user_data, length))
++ fail = true;
++ io_mapping_unmap_local(vaddr);
++ return fail;
+ }
+
+ /**
+diff --git a/drivers/gpu/drm/i915/selftests/i915_gem.c b/drivers/gpu/drm/i915/selftests/i915_gem.c
+index 412e21604a05..432493183d20 100644
+--- a/drivers/gpu/drm/i915/selftests/i915_gem.c
++++ b/drivers/gpu/drm/i915/selftests/i915_gem.c
+@@ -57,12 +57,12 @@ static void trash_stolen(struct drm_i915_private *i915)
+
+ ggtt->vm.insert_page(&ggtt->vm, dma, slot, I915_CACHE_NONE, 0);
+
+- s = io_mapping_map_atomic_wc(&ggtt->iomap, slot);
++ s = io_mapping_map_local_wc(&ggtt->iomap, slot);
+ for (x = 0; x < PAGE_SIZE / sizeof(u32); x++) {
+ prng = next_pseudo_random32(prng);
+ iowrite32(prng, &s[x]);
+ }
+- io_mapping_unmap_atomic(s);
++ io_mapping_unmap_local(s);
+ }
+
+ ggtt->vm.clear_range(&ggtt->vm, slot, PAGE_SIZE);
+diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
+index 65e28c4cd4ce..ca483285f267 100644
+--- a/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
++++ b/drivers/gpu/drm/i915/selftests/i915_gem_gtt.c
+@@ -1201,9 +1201,9 @@ static int igt_ggtt_page(void *arg)
+ u64 offset = tmp.start + order[n] * PAGE_SIZE;
+ u32 __iomem *vaddr;
+
+- vaddr = io_mapping_map_atomic_wc(&ggtt->iomap, offset);
++ vaddr = io_mapping_map_local_wc(&ggtt->iomap, offset);
+ iowrite32(n, vaddr + n);
+- io_mapping_unmap_atomic(vaddr);
++ io_mapping_unmap_local(vaddr);
+ }
+ intel_gt_flush_ggtt_writes(ggtt->vm.gt);
+
+@@ -1213,9 +1213,9 @@ static int igt_ggtt_page(void *arg)
+ u32 __iomem *vaddr;
+ u32 val;
+
+- vaddr = io_mapping_map_atomic_wc(&ggtt->iomap, offset);
++ vaddr = io_mapping_map_local_wc(&ggtt->iomap, offset);
+ val = ioread32(vaddr + n);
+- io_mapping_unmap_atomic(vaddr);
++ io_mapping_unmap_local(vaddr);
+
+ if (val != n) {
+ pr_err("insert page failed: found %d, expected %d\n",
+--
+2.43.0
+
diff --git a/debian/patches-rt/0060-io-mapping-Remove-io_mapping_map_atomic_wc.patch b/debian/patches-rt/0060-io-mapping-Remove-io_mapping_map_atomic_wc.patch
new file mode 100644
index 000000000..f8374350f
--- /dev/null
+++ b/debian/patches-rt/0060-io-mapping-Remove-io_mapping_map_atomic_wc.patch
@@ -0,0 +1,140 @@
+From 925f92c53f78436e9242942d1a31a1ecc61ba740 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 3 Nov 2020 10:27:49 +0100
+Subject: [PATCH 060/323] io-mapping: Remove io_mapping_map_atomic_wc()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+No more users. Get rid of it and remove the traces in documentation.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ Documentation/driver-api/io-mapping.rst | 22 +++++--------
+ include/linux/io-mapping.h | 42 ++-----------------------
+ 2 files changed, 9 insertions(+), 55 deletions(-)
+
+diff --git a/Documentation/driver-api/io-mapping.rst b/Documentation/driver-api/io-mapping.rst
+index a0cfb15988df..a7830c59481f 100644
+--- a/Documentation/driver-api/io-mapping.rst
++++ b/Documentation/driver-api/io-mapping.rst
+@@ -21,19 +21,15 @@ mappable, while 'size' indicates how large a mapping region to
+ enable. Both are in bytes.
+
+ This _wc variant provides a mapping which may only be used with
+-io_mapping_map_atomic_wc(), io_mapping_map_local_wc() or
+-io_mapping_map_wc().
++io_mapping_map_local_wc() or io_mapping_map_wc().
+
+ With this mapping object, individual pages can be mapped either temporarily
+ or long term, depending on the requirements. Of course, temporary maps are
+-more efficient. They come in two flavours::
++more efficient.
+
+ void *io_mapping_map_local_wc(struct io_mapping *mapping,
+ unsigned long offset)
+
+- void *io_mapping_map_atomic_wc(struct io_mapping *mapping,
+- unsigned long offset)
+-
+ 'offset' is the offset within the defined mapping region. Accessing
+ addresses beyond the region specified in the creation function yields
+ undefined results. Using an offset which is not page aligned yields an
+@@ -50,9 +46,6 @@ io_mapping_map_local_wc() has a side effect on X86 32bit as it disables
+ migration to make the mapping code work. No caller can rely on this side
+ effect.
+
+-io_mapping_map_atomic_wc() has the side effect of disabling preemption and
+-pagefaults. Don't use in new code. Use io_mapping_map_local_wc() instead.
+-
+ Nested mappings need to be undone in reverse order because the mapping
+ code uses a stack for keeping track of them::
+
+@@ -65,11 +58,10 @@ code uses a stack for keeping track of them::
+ The mappings are released with::
+
+ void io_mapping_unmap_local(void *vaddr)
+- void io_mapping_unmap_atomic(void *vaddr)
+
+-'vaddr' must be the value returned by the last io_mapping_map_local_wc() or
+-io_mapping_map_atomic_wc() call. This unmaps the specified mapping and
+-undoes the side effects of the mapping functions.
++'vaddr' must be the value returned by the last io_mapping_map_local_wc()
++call. This unmaps the specified mapping and undoes eventual side effects of
++the mapping function.
+
+ If you need to sleep while holding a mapping, you can use the regular
+ variant, although this may be significantly slower::
+@@ -77,8 +69,8 @@ variant, although this may be significantly slower::
+ void *io_mapping_map_wc(struct io_mapping *mapping,
+ unsigned long offset)
+
+-This works like io_mapping_map_atomic/local_wc() except it has no side
+-effects and the pointer is globaly visible.
++This works like io_mapping_map_local_wc() except it has no side effects and
++the pointer is globaly visible.
+
+ The mappings are released with::
+
+diff --git a/include/linux/io-mapping.h b/include/linux/io-mapping.h
+index c093e81310a9..4bb8223f2f82 100644
+--- a/include/linux/io-mapping.h
++++ b/include/linux/io-mapping.h
+@@ -60,28 +60,7 @@ io_mapping_fini(struct io_mapping *mapping)
+ iomap_free(mapping->base, mapping->size);
+ }
+
+-/* Atomic map/unmap */
+-static inline void __iomem *
+-io_mapping_map_atomic_wc(struct io_mapping *mapping,
+- unsigned long offset)
+-{
+- resource_size_t phys_addr;
+-
+- BUG_ON(offset >= mapping->size);
+- phys_addr = mapping->base + offset;
+- preempt_disable();
+- pagefault_disable();
+- return __iomap_local_pfn_prot(PHYS_PFN(phys_addr), mapping->prot);
+-}
+-
+-static inline void
+-io_mapping_unmap_atomic(void __iomem *vaddr)
+-{
+- kunmap_local_indexed((void __force *)vaddr);
+- pagefault_enable();
+- preempt_enable();
+-}
+-
++/* Temporary mappings which are only valid in the current context */
+ static inline void __iomem *
+ io_mapping_map_local_wc(struct io_mapping *mapping, unsigned long offset)
+ {
+@@ -163,24 +142,7 @@ io_mapping_unmap(void __iomem *vaddr)
+ {
+ }
+
+-/* Atomic map/unmap */
+-static inline void __iomem *
+-io_mapping_map_atomic_wc(struct io_mapping *mapping,
+- unsigned long offset)
+-{
+- preempt_disable();
+- pagefault_disable();
+- return io_mapping_map_wc(mapping, offset, PAGE_SIZE);
+-}
+-
+-static inline void
+-io_mapping_unmap_atomic(void __iomem *vaddr)
+-{
+- io_mapping_unmap(vaddr);
+- pagefault_enable();
+- preempt_enable();
+-}
+-
++/* Temporary mappings which are only valid in the current context */
+ static inline void __iomem *
+ io_mapping_map_local_wc(struct io_mapping *mapping, unsigned long offset)
+ {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0061-mm-highmem-Take-kmap_high_get-properly-into-account.patch b/debian/patches-rt/0061-mm-highmem-Take-kmap_high_get-properly-into-account.patch
new file mode 100644
index 000000000..5970ff263
--- /dev/null
+++ b/debian/patches-rt/0061-mm-highmem-Take-kmap_high_get-properly-into-account.patch
@@ -0,0 +1,72 @@
+From 3df53841fc978eae47eb80dbb4ccaefa880589a7 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 12 Nov 2020 11:59:32 +0100
+Subject: [PATCH 061/323] mm/highmem: Take kmap_high_get() properly into
+ account
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+kunmap_local() warns when the virtual address to unmap is below
+PAGE_OFFSET. This is correct except for the case that the mapping was
+obtained via kmap_high_get() because the PKMAP addresses are right below
+PAGE_OFFSET.
+
+Cure it by skipping the WARN_ON() when the unmap was handled by
+kunmap_high().
+
+Fixes: 298fa1ad5571 ("highmem: Provide generic variant of kmap_atomic*")
+Reported-by: vtolkm@googlemail.com
+Reported-by: Marek Szyprowski <m.szyprowski@samsung.com>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
+Tested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Cc: Andrew Morton <akpm@linux-foundation.org>
+Link: https://lore.kernel.org/r/87y2j6n8mj.fsf@nanos.tec.linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/highmem.c | 19 +++++++++++++------
+ 1 file changed, 13 insertions(+), 6 deletions(-)
+
+diff --git a/mm/highmem.c b/mm/highmem.c
+index 8db577e5290c..72b9a2d95c72 100644
+--- a/mm/highmem.c
++++ b/mm/highmem.c
+@@ -422,12 +422,15 @@ static inline void *arch_kmap_local_high_get(struct page *page)
+ #endif
+
+ /* Unmap a local mapping which was obtained by kmap_high_get() */
+-static inline void kmap_high_unmap_local(unsigned long vaddr)
++static inline bool kmap_high_unmap_local(unsigned long vaddr)
+ {
+ #ifdef ARCH_NEEDS_KMAP_HIGH_GET
+- if (vaddr >= PKMAP_ADDR(0) && vaddr < PKMAP_ADDR(LAST_PKMAP))
++ if (vaddr >= PKMAP_ADDR(0) && vaddr < PKMAP_ADDR(LAST_PKMAP)) {
+ kunmap_high(pte_page(pkmap_page_table[PKMAP_NR(vaddr)]));
++ return true;
++ }
+ #endif
++ return false;
+ }
+
+ static inline int kmap_local_calc_idx(int idx)
+@@ -493,10 +496,14 @@ void kunmap_local_indexed(void *vaddr)
+
+ if (addr < __fix_to_virt(FIX_KMAP_END) ||
+ addr > __fix_to_virt(FIX_KMAP_BEGIN)) {
+- WARN_ON_ONCE(addr < PAGE_OFFSET);
+-
+- /* Handle mappings which were obtained by kmap_high_get() */
+- kmap_high_unmap_local(addr);
++ /*
++ * Handle mappings which were obtained by kmap_high_get()
++ * first as the virtual address of such mappings is below
++ * PAGE_OFFSET. Warn for all other addresses which are in
++ * the user space part of the virtual address space.
++ */
++ if (!kmap_high_unmap_local(addr))
++ WARN_ON_ONCE(addr < PAGE_OFFSET);
+ return;
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0062-highmem-Don-t-disable-preemption-on-RT-in-kmap_atomi.patch b/debian/patches-rt/0062-highmem-Don-t-disable-preemption-on-RT-in-kmap_atomi.patch
new file mode 100644
index 000000000..cecb34498
--- /dev/null
+++ b/debian/patches-rt/0062-highmem-Don-t-disable-preemption-on-RT-in-kmap_atomi.patch
@@ -0,0 +1,71 @@
+From 09d7bcb6eee1e7c9351535a20f60929daca8632d Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 30 Oct 2020 13:59:06 +0100
+Subject: [PATCH 062/323] highmem: Don't disable preemption on RT in
+ kmap_atomic()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Disabling preemption makes it impossible to acquire sleeping locks within
+kmap_atomic() section.
+For PREEMPT_RT it is sufficient to disable migration.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/highmem-internal.h | 20 ++++++++++++++++----
+ 1 file changed, 16 insertions(+), 4 deletions(-)
+
+diff --git a/include/linux/highmem-internal.h b/include/linux/highmem-internal.h
+index bd15bf9164c2..f9bc6acd3679 100644
+--- a/include/linux/highmem-internal.h
++++ b/include/linux/highmem-internal.h
+@@ -90,7 +90,10 @@ static inline void __kunmap_local(void *vaddr)
+
+ static inline void *kmap_atomic(struct page *page)
+ {
+- preempt_disable();
++ if (IS_ENABLED(CONFIG_PREEMPT_RT))
++ migrate_disable();
++ else
++ preempt_disable();
+ pagefault_disable();
+ return __kmap_local_page_prot(page, kmap_prot);
+ }
+@@ -99,7 +102,10 @@ static inline void __kunmap_atomic(void *addr)
+ {
+ kunmap_local_indexed(addr);
+ pagefault_enable();
+- preempt_enable();
++ if (IS_ENABLED(CONFIG_PREEMPT_RT))
++ migrate_enable();
++ else
++ preempt_enable();
+ }
+
+ unsigned int __nr_free_highpages(void);
+@@ -172,7 +178,10 @@ static inline void __kunmap_local(void *addr)
+
+ static inline void *kmap_atomic(struct page *page)
+ {
+- preempt_disable();
++ if (IS_ENABLED(CONFIG_PREEMPT_RT))
++ migrate_disable();
++ else
++ preempt_disable();
+ pagefault_disable();
+ return page_address(page);
+ }
+@@ -183,7 +192,10 @@ static inline void __kunmap_atomic(void *addr)
+ kunmap_flush_on_unmap(addr);
+ #endif
+ pagefault_enable();
+- preempt_enable();
++ if (IS_ENABLED(CONFIG_PREEMPT_RT))
++ migrate_enable();
++ else
++ preempt_enable();
+ }
+
+ static inline unsigned int nr_free_highpages(void) { return 0; }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0063-blk-mq-Don-t-complete-on-a-remote-CPU-in-force-threa.patch b/debian/patches-rt/0063-blk-mq-Don-t-complete-on-a-remote-CPU-in-force-threa.patch
new file mode 100644
index 000000000..8623209ab
--- /dev/null
+++ b/debian/patches-rt/0063-blk-mq-Don-t-complete-on-a-remote-CPU-in-force-threa.patch
@@ -0,0 +1,48 @@
+From f7d87d26b4c9bfd083484542889f392867c1c85b Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 4 Dec 2020 20:13:54 +0100
+Subject: [PATCH 063/323] blk-mq: Don't complete on a remote CPU in force
+ threaded mode
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+With force threaded interrupts enabled, raising softirq from an SMP
+function call will always result in waking the ksoftirqd thread. This is
+not optimal given that the thread runs at SCHED_OTHER priority.
+
+Completing the request in hard IRQ-context on PREEMPT_RT (which enforces
+the force threaded mode) is bad because the completion handler may
+acquire sleeping locks which violate the locking context.
+
+Disable request completing on a remote CPU in force threaded mode.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Reviewed-by: Christoph Hellwig <hch@lst.de>
+Reviewed-by: Daniel Wagner <dwagner@suse.de>
+Signed-off-by: Jens Axboe <axboe@kernel.dk>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ block/blk-mq.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/block/blk-mq.c b/block/blk-mq.c
+index e153a36c9ba3..cc41373cf346 100644
+--- a/block/blk-mq.c
++++ b/block/blk-mq.c
+@@ -652,6 +652,14 @@ static inline bool blk_mq_complete_need_ipi(struct request *rq)
+ if (!IS_ENABLED(CONFIG_SMP) ||
+ !test_bit(QUEUE_FLAG_SAME_COMP, &rq->q->queue_flags))
+ return false;
++ /*
++ * With force threaded interrupts enabled, raising softirq from an SMP
++ * function call will always result in waking the ksoftirqd thread.
++ * This is probably worse than completing the request on a different
++ * cache domain.
++ */
++ if (force_irqthreads)
++ return false;
+
+ /* same CPU or cache domain? Complete locally */
+ if (cpu == rq->mq_ctx->cpu ||
+--
+2.43.0
+
diff --git a/debian/patches-rt/0064-blk-mq-Always-complete-remote-completions-requests-i.patch b/debian/patches-rt/0064-blk-mq-Always-complete-remote-completions-requests-i.patch
new file mode 100644
index 000000000..92574e87b
--- /dev/null
+++ b/debian/patches-rt/0064-blk-mq-Always-complete-remote-completions-requests-i.patch
@@ -0,0 +1,49 @@
+From 4397e4a75ac6456a0dd8cf0a99c8250845b022d6 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Sat, 23 Jan 2021 21:10:26 +0100
+Subject: [PATCH 064/323] blk-mq: Always complete remote completions requests
+ in softirq
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Controllers with multiple queues have their IRQ-handelers pinned to a
+CPU. The core shouldn't need to complete the request on a remote CPU.
+
+Remove this case and always raise the softirq to complete the request.
+
+Reviewed-by: Christoph Hellwig <hch@lst.de>
+Reviewed-by: Daniel Wagner <dwagner@suse.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Jens Axboe <axboe@kernel.dk>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ block/blk-mq.c | 14 +-------------
+ 1 file changed, 1 insertion(+), 13 deletions(-)
+
+diff --git a/block/blk-mq.c b/block/blk-mq.c
+index cc41373cf346..87b8377a74fc 100644
+--- a/block/blk-mq.c
++++ b/block/blk-mq.c
+@@ -630,19 +630,7 @@ static void __blk_mq_complete_request_remote(void *data)
+ {
+ struct request *rq = data;
+
+- /*
+- * For most of single queue controllers, there is only one irq vector
+- * for handling I/O completion, and the only irq's affinity is set
+- * to all possible CPUs. On most of ARCHs, this affinity means the irq
+- * is handled on one specific CPU.
+- *
+- * So complete I/O requests in softirq context in case of single queue
+- * devices to avoid degrading I/O performance due to irqsoff latency.
+- */
+- if (rq->q->nr_hw_queues == 1)
+- blk_mq_trigger_softirq(rq);
+- else
+- rq->q->mq_ops->complete(rq);
++ blk_mq_trigger_softirq(rq);
+ }
+
+ static inline bool blk_mq_complete_need_ipi(struct request *rq)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0065-blk-mq-Use-llist_head-for-blk_cpu_done.patch b/debian/patches-rt/0065-blk-mq-Use-llist_head-for-blk_cpu_done.patch
new file mode 100644
index 000000000..b7faea536
--- /dev/null
+++ b/debian/patches-rt/0065-blk-mq-Use-llist_head-for-blk_cpu_done.patch
@@ -0,0 +1,201 @@
+From a958b1b96b5419f3d9372de0c7851daae941bf47 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Sat, 23 Jan 2021 21:10:27 +0100
+Subject: [PATCH 065/323] blk-mq: Use llist_head for blk_cpu_done
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+With llist_head it is possible to avoid the locking (the irq-off region)
+when items are added. This makes it possible to add items on a remote
+CPU without additional locking.
+llist_add() returns true if the list was previously empty. This can be
+used to invoke the SMP function call / raise sofirq only if the first
+item was added (otherwise it is already pending).
+This simplifies the code a little and reduces the IRQ-off regions.
+
+blk_mq_raise_softirq() needs a preempt-disable section to ensure the
+request is enqueued on the same CPU as the softirq is raised.
+Some callers (USB-storage) invoke this path in preemptible context.
+
+Reviewed-by: Christoph Hellwig <hch@lst.de>
+Reviewed-by: Daniel Wagner <dwagner@suse.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Jens Axboe <axboe@kernel.dk>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ block/blk-mq.c | 101 ++++++++++++++++++-----------------------
+ include/linux/blkdev.h | 2 +-
+ 2 files changed, 44 insertions(+), 59 deletions(-)
+
+diff --git a/block/blk-mq.c b/block/blk-mq.c
+index 87b8377a74fc..a6618bf45992 100644
+--- a/block/blk-mq.c
++++ b/block/blk-mq.c
+@@ -41,7 +41,7 @@
+ #include "blk-mq-sched.h"
+ #include "blk-rq-qos.h"
+
+-static DEFINE_PER_CPU(struct list_head, blk_cpu_done);
++static DEFINE_PER_CPU(struct llist_head, blk_cpu_done);
+
+ static void blk_mq_poll_stats_start(struct request_queue *q);
+ static void blk_mq_poll_stats_fn(struct blk_stat_callback *cb);
+@@ -569,68 +569,29 @@ void blk_mq_end_request(struct request *rq, blk_status_t error)
+ }
+ EXPORT_SYMBOL(blk_mq_end_request);
+
+-/*
+- * Softirq action handler - move entries to local list and loop over them
+- * while passing them to the queue registered handler.
+- */
+-static __latent_entropy void blk_done_softirq(struct softirq_action *h)
++static void blk_complete_reqs(struct llist_head *list)
+ {
+- struct list_head *cpu_list, local_list;
+-
+- local_irq_disable();
+- cpu_list = this_cpu_ptr(&blk_cpu_done);
+- list_replace_init(cpu_list, &local_list);
+- local_irq_enable();
+-
+- while (!list_empty(&local_list)) {
+- struct request *rq;
++ struct llist_node *entry = llist_reverse_order(llist_del_all(list));
++ struct request *rq, *next;
+
+- rq = list_entry(local_list.next, struct request, ipi_list);
+- list_del_init(&rq->ipi_list);
++ llist_for_each_entry_safe(rq, next, entry, ipi_list)
+ rq->q->mq_ops->complete(rq);
+- }
+ }
+
+-static void blk_mq_trigger_softirq(struct request *rq)
++static __latent_entropy void blk_done_softirq(struct softirq_action *h)
+ {
+- struct list_head *list;
+- unsigned long flags;
+-
+- local_irq_save(flags);
+- list = this_cpu_ptr(&blk_cpu_done);
+- list_add_tail(&rq->ipi_list, list);
+-
+- /*
+- * If the list only contains our just added request, signal a raise of
+- * the softirq. If there are already entries there, someone already
+- * raised the irq but it hasn't run yet.
+- */
+- if (list->next == &rq->ipi_list)
+- raise_softirq_irqoff(BLOCK_SOFTIRQ);
+- local_irq_restore(flags);
++ blk_complete_reqs(this_cpu_ptr(&blk_cpu_done));
+ }
+
+ static int blk_softirq_cpu_dead(unsigned int cpu)
+ {
+- /*
+- * If a CPU goes away, splice its entries to the current CPU
+- * and trigger a run of the softirq
+- */
+- local_irq_disable();
+- list_splice_init(&per_cpu(blk_cpu_done, cpu),
+- this_cpu_ptr(&blk_cpu_done));
+- raise_softirq_irqoff(BLOCK_SOFTIRQ);
+- local_irq_enable();
+-
++ blk_complete_reqs(&per_cpu(blk_cpu_done, cpu));
+ return 0;
+ }
+
+-
+ static void __blk_mq_complete_request_remote(void *data)
+ {
+- struct request *rq = data;
+-
+- blk_mq_trigger_softirq(rq);
++ __raise_softirq_irqoff(BLOCK_SOFTIRQ);
+ }
+
+ static inline bool blk_mq_complete_need_ipi(struct request *rq)
+@@ -659,6 +620,32 @@ static inline bool blk_mq_complete_need_ipi(struct request *rq)
+ return cpu_online(rq->mq_ctx->cpu);
+ }
+
++static void blk_mq_complete_send_ipi(struct request *rq)
++{
++ struct llist_head *list;
++ unsigned int cpu;
++
++ cpu = rq->mq_ctx->cpu;
++ list = &per_cpu(blk_cpu_done, cpu);
++ if (llist_add(&rq->ipi_list, list)) {
++ rq->csd.func = __blk_mq_complete_request_remote;
++ rq->csd.info = rq;
++ rq->csd.flags = 0;
++ smp_call_function_single_async(cpu, &rq->csd);
++ }
++}
++
++static void blk_mq_raise_softirq(struct request *rq)
++{
++ struct llist_head *list;
++
++ preempt_disable();
++ list = this_cpu_ptr(&blk_cpu_done);
++ if (llist_add(&rq->ipi_list, list))
++ raise_softirq(BLOCK_SOFTIRQ);
++ preempt_enable();
++}
++
+ bool blk_mq_complete_request_remote(struct request *rq)
+ {
+ WRITE_ONCE(rq->state, MQ_RQ_COMPLETE);
+@@ -671,17 +658,15 @@ bool blk_mq_complete_request_remote(struct request *rq)
+ return false;
+
+ if (blk_mq_complete_need_ipi(rq)) {
+- rq->csd.func = __blk_mq_complete_request_remote;
+- rq->csd.info = rq;
+- rq->csd.flags = 0;
+- smp_call_function_single_async(rq->mq_ctx->cpu, &rq->csd);
+- } else {
+- if (rq->q->nr_hw_queues > 1)
+- return false;
+- blk_mq_trigger_softirq(rq);
++ blk_mq_complete_send_ipi(rq);
++ return true;
+ }
+
+- return true;
++ if (rq->q->nr_hw_queues == 1) {
++ blk_mq_raise_softirq(rq);
++ return true;
++ }
++ return false;
+ }
+ EXPORT_SYMBOL_GPL(blk_mq_complete_request_remote);
+
+@@ -3980,7 +3965,7 @@ static int __init blk_mq_init(void)
+ int i;
+
+ for_each_possible_cpu(i)
+- INIT_LIST_HEAD(&per_cpu(blk_cpu_done, i));
++ init_llist_head(&per_cpu(blk_cpu_done, i));
+ open_softirq(BLOCK_SOFTIRQ, blk_done_softirq);
+
+ cpuhp_setup_state_nocalls(CPUHP_BLOCK_SOFTIRQ_DEAD,
+diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
+index 98fdf5a31fd6..b35193aec5e3 100644
+--- a/include/linux/blkdev.h
++++ b/include/linux/blkdev.h
+@@ -161,7 +161,7 @@ struct request {
+ */
+ union {
+ struct hlist_node hash; /* merge hash */
+- struct list_head ipi_list;
++ struct llist_node ipi_list;
+ };
+
+ /*
+--
+2.43.0
+
diff --git a/debian/patches-rt/0066-lib-test_lockup-Minimum-fix-to-get-it-compiled-on-PR.patch b/debian/patches-rt/0066-lib-test_lockup-Minimum-fix-to-get-it-compiled-on-PR.patch
new file mode 100644
index 000000000..e52831303
--- /dev/null
+++ b/debian/patches-rt/0066-lib-test_lockup-Minimum-fix-to-get-it-compiled-on-PR.patch
@@ -0,0 +1,65 @@
+From 11e632bdd63b66d70c365424a1ceb502cb0c02ef Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 28 Oct 2020 18:55:27 +0100
+Subject: [PATCH 066/323] lib/test_lockup: Minimum fix to get it compiled on
+ PREEMPT_RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+On PREEMPT_RT the locks are quite different so they can't be tested as
+it is done below. The alternative is test for the waitlock within
+rtmutex.
+
+This is the bare minim to get it compiled. Problems which exists on
+PREEMP_RT:
+- none of the locks (spinlock_t, rwlock_t, mutex_t, rw_semaphore) may be
+ acquired with disabled preemption or interrupts.
+ If I read the code correct the it is possible to acquire a mutex with
+ disabled interrupts.
+ I don't know how to obtain a lock pointer. Technically they are not
+ exported to userland.
+
+- memory can not be allocated with disabled premption or interrupts even
+ with GFP_ATOMIC.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ lib/test_lockup.c | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git a/lib/test_lockup.c b/lib/test_lockup.c
+index 78a630bbd03d..d27a80502204 100644
+--- a/lib/test_lockup.c
++++ b/lib/test_lockup.c
+@@ -485,6 +485,21 @@ static int __init test_lockup_init(void)
+ return -EINVAL;
+
+ #ifdef CONFIG_DEBUG_SPINLOCK
++#ifdef CONFIG_PREEMPT_RT
++ if (test_magic(lock_spinlock_ptr,
++ offsetof(spinlock_t, lock.wait_lock.magic),
++ SPINLOCK_MAGIC) ||
++ test_magic(lock_rwlock_ptr,
++ offsetof(rwlock_t, rtmutex.wait_lock.magic),
++ SPINLOCK_MAGIC) ||
++ test_magic(lock_mutex_ptr,
++ offsetof(struct mutex, lock.wait_lock.magic),
++ SPINLOCK_MAGIC) ||
++ test_magic(lock_rwsem_ptr,
++ offsetof(struct rw_semaphore, rtmutex.wait_lock.magic),
++ SPINLOCK_MAGIC))
++ return -EINVAL;
++#else
+ if (test_magic(lock_spinlock_ptr,
+ offsetof(spinlock_t, rlock.magic),
+ SPINLOCK_MAGIC) ||
+@@ -498,6 +513,7 @@ static int __init test_lockup_init(void)
+ offsetof(struct rw_semaphore, wait_lock.magic),
+ SPINLOCK_MAGIC))
+ return -EINVAL;
++#endif
+ #endif
+
+ if ((wait_state != TASK_RUNNING ||
+--
+2.43.0
+
diff --git a/debian/patches-rt/0067-timers-Don-t-block-on-expiry_lock-for-TIMER_IRQSAFE.patch b/debian/patches-rt/0067-timers-Don-t-block-on-expiry_lock-for-TIMER_IRQSAFE.patch
new file mode 100644
index 000000000..01c62e677
--- /dev/null
+++ b/debian/patches-rt/0067-timers-Don-t-block-on-expiry_lock-for-TIMER_IRQSAFE.patch
@@ -0,0 +1,60 @@
+From a7d720657001cb31fc09699861f12726418a4bf8 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Mon, 2 Nov 2020 14:14:24 +0100
+Subject: [PATCH 067/323] timers: Don't block on ->expiry_lock for
+ TIMER_IRQSAFE
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+PREEMPT_RT does not spin and wait until a running timer completes its
+callback but instead it blocks on a sleeping lock to prevent a deadlock.
+
+This blocking can not be done for workqueue's IRQ_SAFE timer which will
+be canceled in an IRQ-off region. It has to happen to in IRQ-off region
+because changing the PENDING bit and clearing the timer must not be
+interrupted to avoid a busy-loop.
+
+The callback invocation of IRQSAFE timer is not preempted on PREEMPT_RT
+so there is no need to synchronize on timer_base::expiry_lock.
+
+Don't acquire the timer_base::expiry_lock for TIMER_IRQSAFE flagged
+timer.
+Add a lockdep annotation to ensure that this function is always invoked
+in preemptible context on PREEMPT_RT.
+
+Reported-by: Mike Galbraith <efault@gmx.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Cc: stable-rt@vger.kernel.org
+---
+ kernel/time/timer.c | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/kernel/time/timer.c b/kernel/time/timer.c
+index e87e638c31bd..a4fdc7cfb723 100644
+--- a/kernel/time/timer.c
++++ b/kernel/time/timer.c
+@@ -1287,7 +1287,7 @@ static void del_timer_wait_running(struct timer_list *timer)
+ u32 tf;
+
+ tf = READ_ONCE(timer->flags);
+- if (!(tf & TIMER_MIGRATING)) {
++ if (!(tf & (TIMER_MIGRATING | TIMER_IRQSAFE))) {
+ struct timer_base *base = get_timer_base(tf);
+
+ /*
+@@ -1371,6 +1371,13 @@ int del_timer_sync(struct timer_list *timer)
+ */
+ WARN_ON(in_irq() && !(timer->flags & TIMER_IRQSAFE));
+
++ /*
++ * Must be able to sleep on PREEMPT_RT because of the slowpath in
++ * del_timer_wait_running().
++ */
++ if (IS_ENABLED(CONFIG_PREEMPT_RT) && !(timer->flags & TIMER_IRQSAFE))
++ lockdep_assert_preemption_enabled();
++
+ do {
+ ret = try_to_del_timer_sync(timer);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0068-kthread-Move-prio-affinite-change-into-the-newly-cre.patch b/debian/patches-rt/0068-kthread-Move-prio-affinite-change-into-the-newly-cre.patch
new file mode 100644
index 000000000..ee2883f8e
--- /dev/null
+++ b/debian/patches-rt/0068-kthread-Move-prio-affinite-change-into-the-newly-cre.patch
@@ -0,0 +1,86 @@
+From b0fd4a90cb328b61c6fe14df3a7fc4a79745fd2f Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Mon, 9 Nov 2020 21:30:41 +0100
+Subject: [PATCH 068/323] kthread: Move prio/affinite change into the newly
+ created thread
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+With enabled threaded interrupts the nouveau driver reported the
+following:
+| Chain exists of:
+| &mm->mmap_lock#2 --> &device->mutex --> &cpuset_rwsem
+|
+| Possible unsafe locking scenario:
+|
+| CPU0 CPU1
+| ---- ----
+| lock(&cpuset_rwsem);
+| lock(&device->mutex);
+| lock(&cpuset_rwsem);
+| lock(&mm->mmap_lock#2);
+
+The device->mutex is nvkm_device::mutex.
+
+Unblocking the lockchain at `cpuset_rwsem' is probably the easiest thing
+to do.
+Move the priority reset to the start of the newly created thread.
+
+Fixes: 710da3c8ea7df ("sched/core: Prevent race condition between cpuset and __sched_setscheduler()")
+Reported-by: Mike Galbraith <efault@gmx.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Link: https://lkml.kernel.org/r/a23a826af7c108ea5651e73b8fbae5e653f16e86.camel@gmx.de
+---
+ kernel/kthread.c | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/kernel/kthread.c b/kernel/kthread.c
+index 508fe5278285..3ce6a31db7b4 100644
+--- a/kernel/kthread.c
++++ b/kernel/kthread.c
+@@ -264,6 +264,7 @@ EXPORT_SYMBOL_GPL(kthread_parkme);
+
+ static int kthread(void *_create)
+ {
++ static const struct sched_param param = { .sched_priority = 0 };
+ /* Copy data: it's on kthread's stack */
+ struct kthread_create_info *create = _create;
+ int (*threadfn)(void *data) = create->threadfn;
+@@ -294,6 +295,13 @@ static int kthread(void *_create)
+ init_completion(&self->parked);
+ current->vfork_done = &self->exited;
+
++ /*
++ * The new thread inherited kthreadd's priority and CPU mask. Reset
++ * back to default in case they have been changed.
++ */
++ sched_setscheduler_nocheck(current, SCHED_NORMAL, &param);
++ set_cpus_allowed_ptr(current, housekeeping_cpumask(HK_FLAG_KTHREAD));
++
+ /* OK, tell user we're spawned, wait for stop or wakeup */
+ __set_current_state(TASK_UNINTERRUPTIBLE);
+ create->result = current;
+@@ -391,7 +399,6 @@ struct task_struct *__kthread_create_on_node(int (*threadfn)(void *data),
+ }
+ task = create->result;
+ if (!IS_ERR(task)) {
+- static const struct sched_param param = { .sched_priority = 0 };
+ char name[TASK_COMM_LEN];
+
+ /*
+@@ -400,13 +407,6 @@ struct task_struct *__kthread_create_on_node(int (*threadfn)(void *data),
+ */
+ vsnprintf(name, sizeof(name), namefmt, args);
+ set_task_comm(task, name);
+- /*
+- * root may have changed our (kthreadd's) priority or CPU mask.
+- * The kernel thread should not inherit these properties.
+- */
+- sched_setscheduler_nocheck(task, SCHED_NORMAL, &param);
+- set_cpus_allowed_ptr(task,
+- housekeeping_cpumask(HK_FLAG_KTHREAD));
+ }
+ kfree(create);
+ return task;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0069-genirq-Move-prio-assignment-into-the-newly-created-t.patch b/debian/patches-rt/0069-genirq-Move-prio-assignment-into-the-newly-created-t.patch
new file mode 100644
index 000000000..f09b701ab
--- /dev/null
+++ b/debian/patches-rt/0069-genirq-Move-prio-assignment-into-the-newly-created-t.patch
@@ -0,0 +1,63 @@
+From 617294b2f33cec584f48c12d914fcc982f317be5 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Mon, 9 Nov 2020 23:32:39 +0100
+Subject: [PATCH 069/323] genirq: Move prio assignment into the newly created
+ thread
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+With enabled threaded interrupts the nouveau driver reported the
+following:
+| Chain exists of:
+| &mm->mmap_lock#2 --> &device->mutex --> &cpuset_rwsem
+|
+| Possible unsafe locking scenario:
+|
+| CPU0 CPU1
+| ---- ----
+| lock(&cpuset_rwsem);
+| lock(&device->mutex);
+| lock(&cpuset_rwsem);
+| lock(&mm->mmap_lock#2);
+
+The device->mutex is nvkm_device::mutex.
+
+Unblocking the lockchain at `cpuset_rwsem' is probably the easiest thing
+to do.
+Move the priority assignment to the start of the newly created thread.
+
+Fixes: 710da3c8ea7df ("sched/core: Prevent race condition between cpuset and __sched_setscheduler()")
+Reported-by: Mike Galbraith <efault@gmx.de>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+[bigeasy: Patch description]
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Link: https://lkml.kernel.org/r/a23a826af7c108ea5651e73b8fbae5e653f16e86.camel@gmx.de
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ kernel/irq/manage.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
+index 0159925054fa..5ec167fb77b9 100644
+--- a/kernel/irq/manage.c
++++ b/kernel/irq/manage.c
+@@ -1201,6 +1201,8 @@ static int irq_thread(void *data)
+
+ irq_thread_set_ready(desc, action);
+
++ sched_set_fifo(current);
++
+ if (force_irqthreads && test_bit(IRQTF_FORCED_THREAD,
+ &action->thread_flags))
+ handler_fn = irq_forced_thread_fn;
+@@ -1366,8 +1368,6 @@ setup_irq_thread(struct irqaction *new, unsigned int irq, bool secondary)
+ if (IS_ERR(t))
+ return PTR_ERR(t);
+
+- sched_set_fifo(t);
+-
+ /*
+ * We keep the reference to the task struct even if
+ * the thread dies to avoid that the interrupt code
+--
+2.43.0
+
diff --git a/debian/patches-rt/0070-notifier-Make-atomic_notifiers-use-raw_spinlock.patch b/debian/patches-rt/0070-notifier-Make-atomic_notifiers-use-raw_spinlock.patch
new file mode 100644
index 000000000..74ee5109b
--- /dev/null
+++ b/debian/patches-rt/0070-notifier-Make-atomic_notifiers-use-raw_spinlock.patch
@@ -0,0 +1,132 @@
+From f603fbc6eaf37d836e3498b47cef43965730bcda Mon Sep 17 00:00:00 2001
+From: Valentin Schneider <valentin.schneider@arm.com>
+Date: Sun, 22 Nov 2020 20:19:04 +0000
+Subject: [PATCH 070/323] notifier: Make atomic_notifiers use raw_spinlock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Booting a recent PREEMPT_RT kernel (v5.10-rc3-rt7-rebase) on my arm64 Juno
+leads to the idle task blocking on an RT sleeping spinlock down some
+notifier path:
+
+ [ 1.809101] BUG: scheduling while atomic: swapper/5/0/0x00000002
+ [ 1.809116] Modules linked in:
+ [ 1.809123] Preemption disabled at:
+ [ 1.809125] secondary_start_kernel (arch/arm64/kernel/smp.c:227)
+ [ 1.809146] CPU: 5 PID: 0 Comm: swapper/5 Tainted: G W 5.10.0-rc3-rt7 #168
+ [ 1.809153] Hardware name: ARM Juno development board (r0) (DT)
+ [ 1.809158] Call trace:
+ [ 1.809160] dump_backtrace (arch/arm64/kernel/stacktrace.c:100 (discriminator 1))
+ [ 1.809170] show_stack (arch/arm64/kernel/stacktrace.c:198)
+ [ 1.809178] dump_stack (lib/dump_stack.c:122)
+ [ 1.809188] __schedule_bug (kernel/sched/core.c:4886)
+ [ 1.809197] __schedule (./arch/arm64/include/asm/preempt.h:18 kernel/sched/core.c:4913 kernel/sched/core.c:5040)
+ [ 1.809204] preempt_schedule_lock (kernel/sched/core.c:5365 (discriminator 1))
+ [ 1.809210] rt_spin_lock_slowlock_locked (kernel/locking/rtmutex.c:1072)
+ [ 1.809217] rt_spin_lock_slowlock (kernel/locking/rtmutex.c:1110)
+ [ 1.809224] rt_spin_lock (./include/linux/rcupdate.h:647 kernel/locking/rtmutex.c:1139)
+ [ 1.809231] atomic_notifier_call_chain_robust (kernel/notifier.c:71 kernel/notifier.c:118 kernel/notifier.c:186)
+ [ 1.809240] cpu_pm_enter (kernel/cpu_pm.c:39 kernel/cpu_pm.c:93)
+ [ 1.809249] psci_enter_idle_state (drivers/cpuidle/cpuidle-psci.c:52 drivers/cpuidle/cpuidle-psci.c:129)
+ [ 1.809258] cpuidle_enter_state (drivers/cpuidle/cpuidle.c:238)
+ [ 1.809267] cpuidle_enter (drivers/cpuidle/cpuidle.c:353)
+ [ 1.809275] do_idle (kernel/sched/idle.c:132 kernel/sched/idle.c:213 kernel/sched/idle.c:273)
+ [ 1.809282] cpu_startup_entry (kernel/sched/idle.c:368 (discriminator 1))
+ [ 1.809288] secondary_start_kernel (arch/arm64/kernel/smp.c:273)
+
+Two points worth noting:
+
+1) That this is conceptually the same issue as pointed out in:
+ 313c8c16ee62 ("PM / CPU: replace raw_notifier with atomic_notifier")
+2) Only the _robust() variant of atomic_notifier callchains suffer from
+ this
+
+AFAICT only the cpu_pm_notifier_chain really needs to be changed, but
+singling it out would mean introducing a new (truly) non-blocking API. At
+the same time, callers that are fine with any blocking within the call
+chain should use blocking notifiers, so patching up all atomic_notifier's
+doesn't seem *too* crazy to me.
+
+Fixes: 70d932985757 ("notifier: Fix broken error handling pattern")
+Signed-off-by: Valentin Schneider <valentin.schneider@arm.com>
+Reviewed-by: Daniel Bristot de Oliveira <bristot@redhat.com>
+Link: https://lkml.kernel.org/r/20201122201904.30940-1-valentin.schneider@arm.com
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/notifier.h | 6 +++---
+ kernel/notifier.c | 12 ++++++------
+ 2 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/include/linux/notifier.h b/include/linux/notifier.h
+index 2fb373a5c1ed..723bc2df6388 100644
+--- a/include/linux/notifier.h
++++ b/include/linux/notifier.h
+@@ -58,7 +58,7 @@ struct notifier_block {
+ };
+
+ struct atomic_notifier_head {
+- spinlock_t lock;
++ raw_spinlock_t lock;
+ struct notifier_block __rcu *head;
+ };
+
+@@ -78,7 +78,7 @@ struct srcu_notifier_head {
+ };
+
+ #define ATOMIC_INIT_NOTIFIER_HEAD(name) do { \
+- spin_lock_init(&(name)->lock); \
++ raw_spin_lock_init(&(name)->lock); \
+ (name)->head = NULL; \
+ } while (0)
+ #define BLOCKING_INIT_NOTIFIER_HEAD(name) do { \
+@@ -95,7 +95,7 @@ extern void srcu_init_notifier_head(struct srcu_notifier_head *nh);
+ cleanup_srcu_struct(&(name)->srcu);
+
+ #define ATOMIC_NOTIFIER_INIT(name) { \
+- .lock = __SPIN_LOCK_UNLOCKED(name.lock), \
++ .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
+ .head = NULL }
+ #define BLOCKING_NOTIFIER_INIT(name) { \
+ .rwsem = __RWSEM_INITIALIZER((name).rwsem), \
+diff --git a/kernel/notifier.c b/kernel/notifier.c
+index 1b019cbca594..c20782f07643 100644
+--- a/kernel/notifier.c
++++ b/kernel/notifier.c
+@@ -142,9 +142,9 @@ int atomic_notifier_chain_register(struct atomic_notifier_head *nh,
+ unsigned long flags;
+ int ret;
+
+- spin_lock_irqsave(&nh->lock, flags);
++ raw_spin_lock_irqsave(&nh->lock, flags);
+ ret = notifier_chain_register(&nh->head, n);
+- spin_unlock_irqrestore(&nh->lock, flags);
++ raw_spin_unlock_irqrestore(&nh->lock, flags);
+ return ret;
+ }
+ EXPORT_SYMBOL_GPL(atomic_notifier_chain_register);
+@@ -164,9 +164,9 @@ int atomic_notifier_chain_unregister(struct atomic_notifier_head *nh,
+ unsigned long flags;
+ int ret;
+
+- spin_lock_irqsave(&nh->lock, flags);
++ raw_spin_lock_irqsave(&nh->lock, flags);
+ ret = notifier_chain_unregister(&nh->head, n);
+- spin_unlock_irqrestore(&nh->lock, flags);
++ raw_spin_unlock_irqrestore(&nh->lock, flags);
+ synchronize_rcu();
+ return ret;
+ }
+@@ -182,9 +182,9 @@ int atomic_notifier_call_chain_robust(struct atomic_notifier_head *nh,
+ * Musn't use RCU; because then the notifier list can
+ * change between the up and down traversal.
+ */
+- spin_lock_irqsave(&nh->lock, flags);
++ raw_spin_lock_irqsave(&nh->lock, flags);
+ ret = notifier_call_chain_robust(&nh->head, val_up, val_down, v);
+- spin_unlock_irqrestore(&nh->lock, flags);
++ raw_spin_unlock_irqrestore(&nh->lock, flags);
+
+ return ret;
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0071-rcu-Make-RCU_BOOST-default-on-CONFIG_PREEMPT_RT.patch b/debian/patches-rt/0071-rcu-Make-RCU_BOOST-default-on-CONFIG_PREEMPT_RT.patch
new file mode 100644
index 000000000..c6be2d81c
--- /dev/null
+++ b/debian/patches-rt/0071-rcu-Make-RCU_BOOST-default-on-CONFIG_PREEMPT_RT.patch
@@ -0,0 +1,41 @@
+From b9c110646f281f521cc06039710f979b363478b9 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 15 Dec 2020 15:16:45 +0100
+Subject: [PATCH 071/323] rcu: Make RCU_BOOST default on CONFIG_PREEMPT_RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+On PREEMPT_RT kernels, RCU callbacks are deferred to the `rcuc' kthread.
+This can stall RCU grace periods due to lengthy preemption not only of RCU
+readers but also of 'rcuc' kthreads, either of which prevent grace periods
+from completing, which can in turn result in OOM. Because PREEMPT_RT
+kernels have more kthreads that can block grace periods, it is more
+important for such kernels to enable RCU_BOOST.
+
+This commit therefore makes RCU_BOOST the default on PREEMPT_RT.
+RCU_BOOST can still be manually disabled if need be.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/rcu/Kconfig | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/rcu/Kconfig b/kernel/rcu/Kconfig
+index cd6e11403f1b..0c71197857f6 100644
+--- a/kernel/rcu/Kconfig
++++ b/kernel/rcu/Kconfig
+@@ -189,8 +189,8 @@ config RCU_FAST_NO_HZ
+
+ config RCU_BOOST
+ bool "Enable RCU priority boosting"
+- depends on RT_MUTEXES && PREEMPT_RCU && RCU_EXPERT
+- default n
++ depends on (RT_MUTEXES && PREEMPT_RCU && RCU_EXPERT) || PREEMPT_RT
++ default y if PREEMPT_RT
+ help
+ This option boosts the priority of preempted RCU readers that
+ block the current preemptible RCU grace period for too long.
+--
+2.43.0
+
diff --git a/debian/patches-rt/0072-rcu-Unconditionally-use-rcuc-threads-on-PREEMPT_RT.patch b/debian/patches-rt/0072-rcu-Unconditionally-use-rcuc-threads-on-PREEMPT_RT.patch
new file mode 100644
index 000000000..2c85d9dd0
--- /dev/null
+++ b/debian/patches-rt/0072-rcu-Unconditionally-use-rcuc-threads-on-PREEMPT_RT.patch
@@ -0,0 +1,66 @@
+From 8cc685c333f0deef6d724211a7f0ff37648d24c7 Mon Sep 17 00:00:00 2001
+From: Scott Wood <swood@redhat.com>
+Date: Tue, 15 Dec 2020 15:16:46 +0100
+Subject: [PATCH 072/323] rcu: Unconditionally use rcuc threads on PREEMPT_RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+PREEMPT_RT systems have long used the rcutree.use_softirq kernel
+boot parameter to avoid use of RCU_SOFTIRQ handlers, which can disrupt
+real-time applications by invoking callbacks during return from interrupts
+that arrived while executing time-critical code. This kernel boot
+parameter instead runs RCU core processing in an 'rcuc' kthread, thus
+allowing the scheduler to do its job of avoiding disrupting time-critical
+code.
+
+This commit therefore disables the rcutree.use_softirq kernel boot
+parameter on PREEMPT_RT systems, thus forcing such systems to do RCU
+core processing in 'rcuc' kthreads. This approach has long been in
+use by users of the -rt patchset, and there have been no complaints.
+There is therefore no way for the system administrator to override this
+choice, at least without modifying and rebuilding the kernel.
+
+Signed-off-by: Scott Wood <swood@redhat.com>
+[bigeasy: Reword commit message]
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+[ paulmck: Update kernel-parameters.txt accordingly. ]
+Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ Documentation/admin-guide/kernel-parameters.txt | 4 ++++
+ kernel/rcu/tree.c | 4 +++-
+ 2 files changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
+index f1f7c068cf65..c2afb3304825 100644
+--- a/Documentation/admin-guide/kernel-parameters.txt
++++ b/Documentation/admin-guide/kernel-parameters.txt
+@@ -4191,6 +4191,10 @@
+ value, meaning that RCU_SOFTIRQ is used by default.
+ Specify rcutree.use_softirq=0 to use rcuc kthreads.
+
++ But note that CONFIG_PREEMPT_RT=y kernels disable
++ this kernel boot parameter, forcibly setting it
++ to zero.
++
+ rcutree.rcu_fanout_exact= [KNL]
+ Disable autobalancing of the rcu_node combining
+ tree. This is used by rcutorture, and might
+diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
+index 06bfe61d3cd3..39b3b56ad92d 100644
+--- a/kernel/rcu/tree.c
++++ b/kernel/rcu/tree.c
+@@ -101,8 +101,10 @@ static struct rcu_state rcu_state = {
+ static bool dump_tree;
+ module_param(dump_tree, bool, 0444);
+ /* By default, use RCU_SOFTIRQ instead of rcuc kthreads. */
+-static bool use_softirq = true;
++static bool use_softirq = !IS_ENABLED(CONFIG_PREEMPT_RT);
++#ifndef CONFIG_PREEMPT_RT
+ module_param(use_softirq, bool, 0444);
++#endif
+ /* Control rcu_node-tree auto-balancing at boot time. */
+ static bool rcu_fanout_exact;
+ module_param(rcu_fanout_exact, bool, 0444);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0073-rcu-Enable-rcu_normal_after_boot-unconditionally-for.patch b/debian/patches-rt/0073-rcu-Enable-rcu_normal_after_boot-unconditionally-for.patch
new file mode 100644
index 000000000..ec9afba35
--- /dev/null
+++ b/debian/patches-rt/0073-rcu-Enable-rcu_normal_after_boot-unconditionally-for.patch
@@ -0,0 +1,72 @@
+From be1e6f72a91c1c6b65594bba32401b029c7699b8 Mon Sep 17 00:00:00 2001
+From: Julia Cartwright <julia@ni.com>
+Date: Tue, 15 Dec 2020 15:16:47 +0100
+Subject: [PATCH 073/323] rcu: Enable rcu_normal_after_boot unconditionally for
+ RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Expedited RCU grace periods send IPIs to all non-idle CPUs, and thus can
+disrupt time-critical code in real-time applications. However, there
+is a portion of boot-time processing (presumably before any real-time
+applications have started) where expedited RCU grace periods are the only
+option. And so it is that experience with the -rt patchset indicates that
+PREEMPT_RT systems should always set the rcupdate.rcu_normal_after_boot
+kernel boot parameter.
+
+This commit therefore makes the post-boot application environment safe
+for real-time applications by making PREEMPT_RT systems disable the
+rcupdate.rcu_normal_after_boot kernel boot parameter and acting as
+if this parameter had been set. This means that post-boot calls to
+synchronize_rcu_expedited() will be treated as if they were instead
+calls to synchronize_rcu(), thus preventing the IPIs, and thus avoiding
+disrupting real-time applications.
+
+Suggested-by: Luiz Capitulino <lcapitulino@redhat.com>
+Acked-by: Paul E. McKenney <paulmck@linux.ibm.com>
+Signed-off-by: Julia Cartwright <julia@ni.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+[ paulmck: Update kernel-parameters.txt accordingly. ]
+Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ Documentation/admin-guide/kernel-parameters.txt | 7 +++++++
+ kernel/rcu/update.c | 4 +++-
+ 2 files changed, 10 insertions(+), 1 deletion(-)
+
+diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
+index c2afb3304825..23fd09f5351d 100644
+--- a/Documentation/admin-guide/kernel-parameters.txt
++++ b/Documentation/admin-guide/kernel-parameters.txt
+@@ -4573,6 +4573,13 @@
+ only normal grace-period primitives. No effect
+ on CONFIG_TINY_RCU kernels.
+
++ But note that CONFIG_PREEMPT_RT=y kernels enables
++ this kernel boot parameter, forcibly setting
++ it to the value one, that is, converting any
++ post-boot attempt at an expedited RCU grace
++ period to instead use normal non-expedited
++ grace-period processing.
++
+ rcupdate.rcu_task_ipi_delay= [KNL]
+ Set time in jiffies during which RCU tasks will
+ avoid sending IPIs, starting with the beginning
+diff --git a/kernel/rcu/update.c b/kernel/rcu/update.c
+index 849f0aa99333..dd94a602a6d2 100644
+--- a/kernel/rcu/update.c
++++ b/kernel/rcu/update.c
+@@ -56,8 +56,10 @@
+ #ifndef CONFIG_TINY_RCU
+ module_param(rcu_expedited, int, 0);
+ module_param(rcu_normal, int, 0);
+-static int rcu_normal_after_boot;
++static int rcu_normal_after_boot = IS_ENABLED(CONFIG_PREEMPT_RT);
++#ifndef CONFIG_PREEMPT_RT
+ module_param(rcu_normal_after_boot, int, 0);
++#endif
+ #endif /* #ifndef CONFIG_TINY_RCU */
+
+ #ifdef CONFIG_DEBUG_LOCK_ALLOC
+--
+2.43.0
+
diff --git a/debian/patches-rt/0074-doc-Update-RCU-s-requirements-page-about-the-PREEMPT.patch b/debian/patches-rt/0074-doc-Update-RCU-s-requirements-page-about-the-PREEMPT.patch
new file mode 100644
index 000000000..81d863443
--- /dev/null
+++ b/debian/patches-rt/0074-doc-Update-RCU-s-requirements-page-about-the-PREEMPT.patch
@@ -0,0 +1,35 @@
+From 98e9f8e6202660f2965bc68d54447861280e81b9 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 15 Dec 2020 15:16:48 +0100
+Subject: [PATCH 074/323] doc: Update RCU's requirements page about the
+ PREEMPT_RT wiki.
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The PREEMPT_RT wiki moved from kernel.org to the Linux Foundation wiki.
+The kernel.org wiki is read only.
+
+This commit therefore updates the URL of the active PREEMPT_RT wiki.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ Documentation/RCU/Design/Requirements/Requirements.rst | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Documentation/RCU/Design/Requirements/Requirements.rst b/Documentation/RCU/Design/Requirements/Requirements.rst
+index 1ae79a10a8de..0f7e0237ea14 100644
+--- a/Documentation/RCU/Design/Requirements/Requirements.rst
++++ b/Documentation/RCU/Design/Requirements/Requirements.rst
+@@ -2289,7 +2289,7 @@ decides to throw at it.
+
+ The Linux kernel is used for real-time workloads, especially in
+ conjunction with the `-rt
+-patchset <https://rt.wiki.kernel.org/index.php/Main_Page>`__. The
++patchset <https://wiki.linuxfoundation.org/realtime/>`__. The
+ real-time-latency response requirements are such that the traditional
+ approach of disabling preemption across RCU read-side critical sections
+ is inappropriate. Kernels built with ``CONFIG_PREEMPT=y`` therefore use
+--
+2.43.0
+
diff --git a/debian/patches-rt/0075-doc-Use-CONFIG_PREEMPTION.patch b/debian/patches-rt/0075-doc-Use-CONFIG_PREEMPTION.patch
new file mode 100644
index 000000000..3ddcf14fa
--- /dev/null
+++ b/debian/patches-rt/0075-doc-Use-CONFIG_PREEMPTION.patch
@@ -0,0 +1,250 @@
+From d9780d88d268b12562427ef709de6ab2b8c85188 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 15 Dec 2020 15:16:49 +0100
+Subject: [PATCH 075/323] doc: Use CONFIG_PREEMPTION
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+CONFIG_PREEMPTION is selected by CONFIG_PREEMPT and by CONFIG_PREEMPT_RT.
+Both PREEMPT and PREEMPT_RT require the same functionality which today
+depends on CONFIG_PREEMPT.
+
+Update the documents and mention CONFIG_PREEMPTION. Spell out
+CONFIG_PREEMPT_RT (instead PREEMPT_RT) since it is an option now.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ .../Expedited-Grace-Periods.rst | 4 ++--
+ .../RCU/Design/Requirements/Requirements.rst | 24 +++++++++----------
+ Documentation/RCU/checklist.rst | 2 +-
+ Documentation/RCU/rcubarrier.rst | 6 ++---
+ Documentation/RCU/stallwarn.rst | 4 ++--
+ Documentation/RCU/whatisRCU.rst | 10 ++++----
+ 6 files changed, 25 insertions(+), 25 deletions(-)
+
+diff --git a/Documentation/RCU/Design/Expedited-Grace-Periods/Expedited-Grace-Periods.rst b/Documentation/RCU/Design/Expedited-Grace-Periods/Expedited-Grace-Periods.rst
+index 72f0f6fbd53c..6f89cf1e567d 100644
+--- a/Documentation/RCU/Design/Expedited-Grace-Periods/Expedited-Grace-Periods.rst
++++ b/Documentation/RCU/Design/Expedited-Grace-Periods/Expedited-Grace-Periods.rst
+@@ -38,7 +38,7 @@ sections.
+ RCU-preempt Expedited Grace Periods
+ ===================================
+
+-``CONFIG_PREEMPT=y`` kernels implement RCU-preempt.
++``CONFIG_PREEMPTION=y`` kernels implement RCU-preempt.
+ The overall flow of the handling of a given CPU by an RCU-preempt
+ expedited grace period is shown in the following diagram:
+
+@@ -112,7 +112,7 @@ things.
+ RCU-sched Expedited Grace Periods
+ ---------------------------------
+
+-``CONFIG_PREEMPT=n`` kernels implement RCU-sched. The overall flow of
++``CONFIG_PREEMPTION=n`` kernels implement RCU-sched. The overall flow of
+ the handling of a given CPU by an RCU-sched expedited grace period is
+ shown in the following diagram:
+
+diff --git a/Documentation/RCU/Design/Requirements/Requirements.rst b/Documentation/RCU/Design/Requirements/Requirements.rst
+index 0f7e0237ea14..17d38480ef5c 100644
+--- a/Documentation/RCU/Design/Requirements/Requirements.rst
++++ b/Documentation/RCU/Design/Requirements/Requirements.rst
+@@ -78,7 +78,7 @@ RCU treats a nested set as one big RCU read-side critical section.
+ Production-quality implementations of ``rcu_read_lock()`` and
+ ``rcu_read_unlock()`` are extremely lightweight, and in fact have
+ exactly zero overhead in Linux kernels built for production use with
+-``CONFIG_PREEMPT=n``.
++``CONFIG_PREEMPTION=n``.
+
+ This guarantee allows ordering to be enforced with extremely low
+ overhead to readers, for example:
+@@ -1182,7 +1182,7 @@ and has become decreasingly so as memory sizes have expanded and memory
+ costs have plummeted. However, as I learned from Matt Mackall's
+ `bloatwatch <http://elinux.org/Linux_Tiny-FAQ>`__ efforts, memory
+ footprint is critically important on single-CPU systems with
+-non-preemptible (``CONFIG_PREEMPT=n``) kernels, and thus `tiny
++non-preemptible (``CONFIG_PREEMPTION=n``) kernels, and thus `tiny
+ RCU <https://lkml.kernel.org/g/20090113221724.GA15307@linux.vnet.ibm.com>`__
+ was born. Josh Triplett has since taken over the small-memory banner
+ with his `Linux kernel tinification <https://tiny.wiki.kernel.org/>`__
+@@ -1498,7 +1498,7 @@ limitations.
+
+ Implementations of RCU for which ``rcu_read_lock()`` and
+ ``rcu_read_unlock()`` generate no code, such as Linux-kernel RCU when
+-``CONFIG_PREEMPT=n``, can be nested arbitrarily deeply. After all, there
++``CONFIG_PREEMPTION=n``, can be nested arbitrarily deeply. After all, there
+ is no overhead. Except that if all these instances of
+ ``rcu_read_lock()`` and ``rcu_read_unlock()`` are visible to the
+ compiler, compilation will eventually fail due to exhausting memory,
+@@ -1771,7 +1771,7 @@ implementation can be a no-op.
+
+ However, once the scheduler has spawned its first kthread, this early
+ boot trick fails for ``synchronize_rcu()`` (as well as for
+-``synchronize_rcu_expedited()``) in ``CONFIG_PREEMPT=y`` kernels. The
++``synchronize_rcu_expedited()``) in ``CONFIG_PREEMPTION=y`` kernels. The
+ reason is that an RCU read-side critical section might be preempted,
+ which means that a subsequent ``synchronize_rcu()`` really does have to
+ wait for something, as opposed to simply returning immediately.
+@@ -2010,7 +2010,7 @@ the following:
+ 5 rcu_read_unlock();
+ 6 do_something_with(v, user_v);
+
+-If the compiler did make this transformation in a ``CONFIG_PREEMPT=n`` kernel
++If the compiler did make this transformation in a ``CONFIG_PREEMPTION=n`` kernel
+ build, and if ``get_user()`` did page fault, the result would be a quiescent
+ state in the middle of an RCU read-side critical section. This misplaced
+ quiescent state could result in line 4 being a use-after-free access,
+@@ -2292,7 +2292,7 @@ conjunction with the `-rt
+ patchset <https://wiki.linuxfoundation.org/realtime/>`__. The
+ real-time-latency response requirements are such that the traditional
+ approach of disabling preemption across RCU read-side critical sections
+-is inappropriate. Kernels built with ``CONFIG_PREEMPT=y`` therefore use
++is inappropriate. Kernels built with ``CONFIG_PREEMPTION=y`` therefore use
+ an RCU implementation that allows RCU read-side critical sections to be
+ preempted. This requirement made its presence known after users made it
+ clear that an earlier `real-time
+@@ -2414,7 +2414,7 @@ includes ``rcu_read_lock_bh()``, ``rcu_read_unlock_bh()``,
+ ``call_rcu_bh()``, ``rcu_barrier_bh()``, and
+ ``rcu_read_lock_bh_held()``. However, the update-side APIs are now
+ simple wrappers for other RCU flavors, namely RCU-sched in
+-CONFIG_PREEMPT=n kernels and RCU-preempt otherwise.
++CONFIG_PREEMPTION=n kernels and RCU-preempt otherwise.
+
+ Sched Flavor (Historical)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
+@@ -2432,11 +2432,11 @@ not have this property, given that any point in the code outside of an
+ RCU read-side critical section can be a quiescent state. Therefore,
+ *RCU-sched* was created, which follows “classic” RCU in that an
+ RCU-sched grace period waits for pre-existing interrupt and NMI
+-handlers. In kernels built with ``CONFIG_PREEMPT=n``, the RCU and
++handlers. In kernels built with ``CONFIG_PREEMPTION=n``, the RCU and
+ RCU-sched APIs have identical implementations, while kernels built with
+-``CONFIG_PREEMPT=y`` provide a separate implementation for each.
++``CONFIG_PREEMPTION=y`` provide a separate implementation for each.
+
+-Note well that in ``CONFIG_PREEMPT=y`` kernels,
++Note well that in ``CONFIG_PREEMPTION=y`` kernels,
+ ``rcu_read_lock_sched()`` and ``rcu_read_unlock_sched()`` disable and
+ re-enable preemption, respectively. This means that if there was a
+ preemption attempt during the RCU-sched read-side critical section,
+@@ -2599,10 +2599,10 @@ userspace execution also delimit tasks-RCU read-side critical sections.
+
+ The tasks-RCU API is quite compact, consisting only of
+ ``call_rcu_tasks()``, ``synchronize_rcu_tasks()``, and
+-``rcu_barrier_tasks()``. In ``CONFIG_PREEMPT=n`` kernels, trampolines
++``rcu_barrier_tasks()``. In ``CONFIG_PREEMPTION=n`` kernels, trampolines
+ cannot be preempted, so these APIs map to ``call_rcu()``,
+ ``synchronize_rcu()``, and ``rcu_barrier()``, respectively. In
+-``CONFIG_PREEMPT=y`` kernels, trampolines can be preempted, and these
++``CONFIG_PREEMPTION=y`` kernels, trampolines can be preempted, and these
+ three APIs are therefore implemented by separate functions that check
+ for voluntary context switches.
+
+diff --git a/Documentation/RCU/checklist.rst b/Documentation/RCU/checklist.rst
+index 2efed9926c3f..7ed4956043bd 100644
+--- a/Documentation/RCU/checklist.rst
++++ b/Documentation/RCU/checklist.rst
+@@ -214,7 +214,7 @@ over a rather long period of time, but improvements are always welcome!
+ the rest of the system.
+
+ 7. As of v4.20, a given kernel implements only one RCU flavor,
+- which is RCU-sched for PREEMPT=n and RCU-preempt for PREEMPT=y.
++ which is RCU-sched for PREEMPTION=n and RCU-preempt for PREEMPTION=y.
+ If the updater uses call_rcu() or synchronize_rcu(),
+ then the corresponding readers my use rcu_read_lock() and
+ rcu_read_unlock(), rcu_read_lock_bh() and rcu_read_unlock_bh(),
+diff --git a/Documentation/RCU/rcubarrier.rst b/Documentation/RCU/rcubarrier.rst
+index f64f4413a47c..3b4a24877496 100644
+--- a/Documentation/RCU/rcubarrier.rst
++++ b/Documentation/RCU/rcubarrier.rst
+@@ -9,7 +9,7 @@ RCU (read-copy update) is a synchronization mechanism that can be thought
+ of as a replacement for read-writer locking (among other things), but with
+ very low-overhead readers that are immune to deadlock, priority inversion,
+ and unbounded latency. RCU read-side critical sections are delimited
+-by rcu_read_lock() and rcu_read_unlock(), which, in non-CONFIG_PREEMPT
++by rcu_read_lock() and rcu_read_unlock(), which, in non-CONFIG_PREEMPTION
+ kernels, generate no code whatsoever.
+
+ This means that RCU writers are unaware of the presence of concurrent
+@@ -329,10 +329,10 @@ Answer: This cannot happen. The reason is that on_each_cpu() has its last
+ to smp_call_function() and further to smp_call_function_on_cpu(),
+ causing this latter to spin until the cross-CPU invocation of
+ rcu_barrier_func() has completed. This by itself would prevent
+- a grace period from completing on non-CONFIG_PREEMPT kernels,
++ a grace period from completing on non-CONFIG_PREEMPTION kernels,
+ since each CPU must undergo a context switch (or other quiescent
+ state) before the grace period can complete. However, this is
+- of no use in CONFIG_PREEMPT kernels.
++ of no use in CONFIG_PREEMPTION kernels.
+
+ Therefore, on_each_cpu() disables preemption across its call
+ to smp_call_function() and also across the local call to
+diff --git a/Documentation/RCU/stallwarn.rst b/Documentation/RCU/stallwarn.rst
+index c9ab6af4d3be..e97d1b4876ef 100644
+--- a/Documentation/RCU/stallwarn.rst
++++ b/Documentation/RCU/stallwarn.rst
+@@ -25,7 +25,7 @@ warnings:
+
+ - A CPU looping with bottom halves disabled.
+
+-- For !CONFIG_PREEMPT kernels, a CPU looping anywhere in the kernel
++- For !CONFIG_PREEMPTION kernels, a CPU looping anywhere in the kernel
+ without invoking schedule(). If the looping in the kernel is
+ really expected and desirable behavior, you might need to add
+ some calls to cond_resched().
+@@ -44,7 +44,7 @@ warnings:
+ result in the ``rcu_.*kthread starved for`` console-log message,
+ which will include additional debugging information.
+
+-- A CPU-bound real-time task in a CONFIG_PREEMPT kernel, which might
++- A CPU-bound real-time task in a CONFIG_PREEMPTION kernel, which might
+ happen to preempt a low-priority task in the middle of an RCU
+ read-side critical section. This is especially damaging if
+ that low-priority task is not permitted to run on any other CPU,
+diff --git a/Documentation/RCU/whatisRCU.rst b/Documentation/RCU/whatisRCU.rst
+index fb3ff76c3e73..3b2b1479fd0f 100644
+--- a/Documentation/RCU/whatisRCU.rst
++++ b/Documentation/RCU/whatisRCU.rst
+@@ -684,7 +684,7 @@ Quick Quiz #1:
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+ This section presents a "toy" RCU implementation that is based on
+ "classic RCU". It is also short on performance (but only for updates) and
+-on features such as hotplug CPU and the ability to run in CONFIG_PREEMPT
++on features such as hotplug CPU and the ability to run in CONFIG_PREEMPTION
+ kernels. The definitions of rcu_dereference() and rcu_assign_pointer()
+ are the same as those shown in the preceding section, so they are omitted.
+ ::
+@@ -740,7 +740,7 @@ Quick Quiz #2:
+ Quick Quiz #3:
+ If it is illegal to block in an RCU read-side
+ critical section, what the heck do you do in
+- PREEMPT_RT, where normal spinlocks can block???
++ CONFIG_PREEMPT_RT, where normal spinlocks can block???
+
+ :ref:`Answers to Quick Quiz <8_whatisRCU>`
+
+@@ -1094,7 +1094,7 @@ Quick Quiz #2:
+ overhead is **negative**.
+
+ Answer:
+- Imagine a single-CPU system with a non-CONFIG_PREEMPT
++ Imagine a single-CPU system with a non-CONFIG_PREEMPTION
+ kernel where a routing table is used by process-context
+ code, but can be updated by irq-context code (for example,
+ by an "ICMP REDIRECT" packet). The usual way of handling
+@@ -1121,10 +1121,10 @@ Answer:
+ Quick Quiz #3:
+ If it is illegal to block in an RCU read-side
+ critical section, what the heck do you do in
+- PREEMPT_RT, where normal spinlocks can block???
++ CONFIG_PREEMPT_RT, where normal spinlocks can block???
+
+ Answer:
+- Just as PREEMPT_RT permits preemption of spinlock
++ Just as CONFIG_PREEMPT_RT permits preemption of spinlock
+ critical sections, it permits preemption of RCU
+ read-side critical sections. It also permits
+ spinlocks blocking while in RCU read-side critical
+--
+2.43.0
+
diff --git a/debian/patches-rt/0076-tracing-Merge-irqflags-preempt-counter.patch b/debian/patches-rt/0076-tracing-Merge-irqflags-preempt-counter.patch
new file mode 100644
index 000000000..8cd083750
--- /dev/null
+++ b/debian/patches-rt/0076-tracing-Merge-irqflags-preempt-counter.patch
@@ -0,0 +1,1900 @@
+From 1ab76ef52a7db4158a5d86604c2a318cfe847e9d Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 3 Feb 2021 11:05:23 -0500
+Subject: [PATCH 076/323] tracing: Merge irqflags + preempt counter.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The state of the interrupts (irqflags) and the preemption counter are
+both passed down to tracing_generic_entry_update(). Only one bit of
+irqflags is actually required: The on/off state. The complete 32bit
+of the preemption counter isn't needed. Just whether of the upper bits
+(softirq, hardirq and NMI) are set and the preemption depth is needed.
+
+The irqflags and the preemption counter could be evaluated early and the
+information stored in an integer `trace_ctx'.
+tracing_generic_entry_update() would use the upper bits as the
+TRACE_FLAG_* and the lower 8bit as the disabled-preemption depth
+(considering that one must be substracted from the counter in one
+special cases).
+
+The actual preemption value is not used except for the tracing record.
+The `irqflags' variable is mostly used only for the tracing record. An
+exception here is for instance wakeup_tracer_call() or
+probe_wakeup_sched_switch() which explicilty disable interrupts and use
+that `irqflags' to save (and restore) the IRQ state and to record the
+state.
+
+Struct trace_event_buffer has also the `pc' and flags' members which can
+be replaced with `trace_ctx' since their actual value is not used
+outside of trace recording.
+
+This will reduce tracing_generic_entry_update() to simply assign values
+to struct trace_entry. The evaluation of the TRACE_FLAG_* bits is moved
+to _tracing_gen_ctx_flags() which replaces preempt_count() and
+local_save_flags() invocations.
+
+As an example, ftrace_syscall_enter() may invoke:
+- trace_buffer_lock_reserve() -> … -> tracing_generic_entry_update()
+- event_trigger_unlock_commit()
+ -> ftrace_trace_stack() -> … -> tracing_generic_entry_update()
+ -> ftrace_trace_userstack() -> … -> tracing_generic_entry_update()
+
+In this case the TRACE_FLAG_* bits were evaluated three times. By using
+the `trace_ctx' they are evaluated once and assigned three times.
+
+A build with all tracers enabled on x86-64 with and without the patch:
+
+ text data bss dec hex filename
+21970669 17084168 7639260 46694097 2c87ed1 vmlinux.old
+21970293 17084168 7639260 46693721 2c87d59 vmlinux.new
+
+text shrank by 379 bytes, data remained constant.
+
+Link: https://lkml.kernel.org/r/20210125194511.3924915-2-bigeasy@linutronix.de
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/trace_events.h | 25 +++-
+ kernel/trace/blktrace.c | 17 +--
+ kernel/trace/trace.c | 206 +++++++++++++++------------
+ kernel/trace/trace.h | 38 +++--
+ kernel/trace/trace_branch.c | 6 +-
+ kernel/trace/trace_event_perf.c | 5 +-
+ kernel/trace/trace_events.c | 18 +--
+ kernel/trace/trace_events_inject.c | 6 +-
+ kernel/trace/trace_functions.c | 28 ++--
+ kernel/trace/trace_functions_graph.c | 32 ++---
+ kernel/trace/trace_hwlat.c | 7 +-
+ kernel/trace/trace_irqsoff.c | 86 +++++------
+ kernel/trace/trace_kprobe.c | 10 +-
+ kernel/trace/trace_mmiotrace.c | 14 +-
+ kernel/trace/trace_sched_wakeup.c | 71 +++++----
+ kernel/trace/trace_syscalls.c | 20 ++-
+ kernel/trace/trace_uprobe.c | 4 +-
+ 17 files changed, 286 insertions(+), 307 deletions(-)
+
+diff --git a/include/linux/trace_events.h b/include/linux/trace_events.h
+index f7ed0471d5a8..2a98c40526a0 100644
+--- a/include/linux/trace_events.h
++++ b/include/linux/trace_events.h
+@@ -152,17 +152,29 @@ enum print_line_t {
+
+ enum print_line_t trace_handle_return(struct trace_seq *s);
+
+-void tracing_generic_entry_update(struct trace_entry *entry,
+- unsigned short type,
+- unsigned long flags,
+- int pc);
++static inline void tracing_generic_entry_update(struct trace_entry *entry,
++ unsigned short type,
++ unsigned int trace_ctx)
++{
++ struct task_struct *tsk = current;
++
++ entry->preempt_count = trace_ctx & 0xff;
++ entry->pid = (tsk) ? tsk->pid : 0;
++ entry->type = type;
++ entry->flags = trace_ctx >> 16;
++}
++
++unsigned int tracing_gen_ctx_flags(unsigned long irqflags);
++unsigned int tracing_gen_ctx(void);
++unsigned int tracing_gen_ctx_dec(void);
++
+ struct trace_event_file;
+
+ struct ring_buffer_event *
+ trace_event_buffer_lock_reserve(struct trace_buffer **current_buffer,
+ struct trace_event_file *trace_file,
+ int type, unsigned long len,
+- unsigned long flags, int pc);
++ unsigned int trace_ctx);
+
+ #define TRACE_RECORD_CMDLINE BIT(0)
+ #define TRACE_RECORD_TGID BIT(1)
+@@ -236,8 +248,7 @@ struct trace_event_buffer {
+ struct ring_buffer_event *event;
+ struct trace_event_file *trace_file;
+ void *entry;
+- unsigned long flags;
+- int pc;
++ unsigned int trace_ctx;
+ struct pt_regs *regs;
+ };
+
+diff --git a/kernel/trace/blktrace.c b/kernel/trace/blktrace.c
+index ab912cc60760..a95a2027eefd 100644
+--- a/kernel/trace/blktrace.c
++++ b/kernel/trace/blktrace.c
+@@ -72,17 +72,17 @@ static void trace_note(struct blk_trace *bt, pid_t pid, int action,
+ struct blk_io_trace *t;
+ struct ring_buffer_event *event = NULL;
+ struct trace_buffer *buffer = NULL;
+- int pc = 0;
++ unsigned int trace_ctx = 0;
+ int cpu = smp_processor_id();
+ bool blk_tracer = blk_tracer_enabled;
+ ssize_t cgid_len = cgid ? sizeof(cgid) : 0;
+
+ if (blk_tracer) {
+ buffer = blk_tr->array_buffer.buffer;
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx_flags(0);
+ event = trace_buffer_lock_reserve(buffer, TRACE_BLK,
+ sizeof(*t) + len + cgid_len,
+- 0, pc);
++ trace_ctx);
+ if (!event)
+ return;
+ t = ring_buffer_event_data(event);
+@@ -107,7 +107,7 @@ static void trace_note(struct blk_trace *bt, pid_t pid, int action,
+ memcpy((void *) t + sizeof(*t) + cgid_len, data, len);
+
+ if (blk_tracer)
+- trace_buffer_unlock_commit(blk_tr, buffer, event, 0, pc);
++ trace_buffer_unlock_commit(blk_tr, buffer, event, trace_ctx);
+ }
+ }
+
+@@ -222,8 +222,9 @@ static void __blk_add_trace(struct blk_trace *bt, sector_t sector, int bytes,
+ struct blk_io_trace *t;
+ unsigned long flags = 0;
+ unsigned long *sequence;
++ unsigned int trace_ctx = 0;
+ pid_t pid;
+- int cpu, pc = 0;
++ int cpu;
+ bool blk_tracer = blk_tracer_enabled;
+ ssize_t cgid_len = cgid ? sizeof(cgid) : 0;
+
+@@ -252,10 +253,10 @@ static void __blk_add_trace(struct blk_trace *bt, sector_t sector, int bytes,
+ tracing_record_cmdline(current);
+
+ buffer = blk_tr->array_buffer.buffer;
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx_flags(0);
+ event = trace_buffer_lock_reserve(buffer, TRACE_BLK,
+ sizeof(*t) + pdu_len + cgid_len,
+- 0, pc);
++ trace_ctx);
+ if (!event)
+ return;
+ t = ring_buffer_event_data(event);
+@@ -301,7 +302,7 @@ static void __blk_add_trace(struct blk_trace *bt, sector_t sector, int bytes,
+ memcpy((void *)t + sizeof(*t) + cgid_len, pdu_data, pdu_len);
+
+ if (blk_tracer) {
+- trace_buffer_unlock_commit(blk_tr, buffer, event, 0, pc);
++ trace_buffer_unlock_commit(blk_tr, buffer, event, trace_ctx);
+ return;
+ }
+ }
+diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
+index 4e0411b19ef9..376eb8a1c913 100644
+--- a/kernel/trace/trace.c
++++ b/kernel/trace/trace.c
+@@ -176,7 +176,7 @@ static union trace_eval_map_item *trace_eval_maps;
+ int tracing_set_tracer(struct trace_array *tr, const char *buf);
+ static void ftrace_trace_userstack(struct trace_array *tr,
+ struct trace_buffer *buffer,
+- unsigned long flags, int pc);
++ unsigned int trace_ctx);
+
+ #define MAX_TRACER_SIZE 100
+ static char bootup_tracer_buf[MAX_TRACER_SIZE] __initdata;
+@@ -909,23 +909,23 @@ static inline void trace_access_lock_init(void)
+
+ #ifdef CONFIG_STACKTRACE
+ static void __ftrace_trace_stack(struct trace_buffer *buffer,
+- unsigned long flags,
+- int skip, int pc, struct pt_regs *regs);
++ unsigned int trace_ctx,
++ int skip, struct pt_regs *regs);
+ static inline void ftrace_trace_stack(struct trace_array *tr,
+ struct trace_buffer *buffer,
+- unsigned long flags,
+- int skip, int pc, struct pt_regs *regs);
++ unsigned int trace_ctx,
++ int skip, struct pt_regs *regs);
+
+ #else
+ static inline void __ftrace_trace_stack(struct trace_buffer *buffer,
+- unsigned long flags,
+- int skip, int pc, struct pt_regs *regs)
++ unsigned int trace_ctx,
++ int skip, struct pt_regs *regs)
+ {
+ }
+ static inline void ftrace_trace_stack(struct trace_array *tr,
+ struct trace_buffer *buffer,
+- unsigned long flags,
+- int skip, int pc, struct pt_regs *regs)
++ unsigned long trace_ctx,
++ int skip, struct pt_regs *regs)
+ {
+ }
+
+@@ -933,24 +933,24 @@ static inline void ftrace_trace_stack(struct trace_array *tr,
+
+ static __always_inline void
+ trace_event_setup(struct ring_buffer_event *event,
+- int type, unsigned long flags, int pc)
++ int type, unsigned int trace_ctx)
+ {
+ struct trace_entry *ent = ring_buffer_event_data(event);
+
+- tracing_generic_entry_update(ent, type, flags, pc);
++ tracing_generic_entry_update(ent, type, trace_ctx);
+ }
+
+ static __always_inline struct ring_buffer_event *
+ __trace_buffer_lock_reserve(struct trace_buffer *buffer,
+ int type,
+ unsigned long len,
+- unsigned long flags, int pc)
++ unsigned int trace_ctx)
+ {
+ struct ring_buffer_event *event;
+
+ event = ring_buffer_lock_reserve(buffer, len);
+ if (event != NULL)
+- trace_event_setup(event, type, flags, pc);
++ trace_event_setup(event, type, trace_ctx);
+
+ return event;
+ }
+@@ -1011,25 +1011,22 @@ int __trace_puts(unsigned long ip, const char *str, int size)
+ struct ring_buffer_event *event;
+ struct trace_buffer *buffer;
+ struct print_entry *entry;
+- unsigned long irq_flags;
++ unsigned int trace_ctx;
+ int alloc;
+- int pc;
+
+ if (!(global_trace.trace_flags & TRACE_ITER_PRINTK))
+ return 0;
+
+- pc = preempt_count();
+-
+ if (unlikely(tracing_selftest_running || tracing_disabled))
+ return 0;
+
+ alloc = sizeof(*entry) + size + 2; /* possible \n added */
+
+- local_save_flags(irq_flags);
++ trace_ctx = tracing_gen_ctx();
+ buffer = global_trace.array_buffer.buffer;
+ ring_buffer_nest_start(buffer);
+- event = __trace_buffer_lock_reserve(buffer, TRACE_PRINT, alloc,
+- irq_flags, pc);
++ event = __trace_buffer_lock_reserve(buffer, TRACE_PRINT, alloc,
++ trace_ctx);
+ if (!event) {
+ size = 0;
+ goto out;
+@@ -1048,7 +1045,7 @@ int __trace_puts(unsigned long ip, const char *str, int size)
+ entry->buf[size] = '\0';
+
+ __buffer_unlock_commit(buffer, event);
+- ftrace_trace_stack(&global_trace, buffer, irq_flags, 4, pc, NULL);
++ ftrace_trace_stack(&global_trace, buffer, trace_ctx, 4, NULL);
+ out:
+ ring_buffer_nest_end(buffer);
+ return size;
+@@ -1065,25 +1062,22 @@ int __trace_bputs(unsigned long ip, const char *str)
+ struct ring_buffer_event *event;
+ struct trace_buffer *buffer;
+ struct bputs_entry *entry;
+- unsigned long irq_flags;
++ unsigned int trace_ctx;
+ int size = sizeof(struct bputs_entry);
+ int ret = 0;
+- int pc;
+
+ if (!(global_trace.trace_flags & TRACE_ITER_PRINTK))
+ return 0;
+
+- pc = preempt_count();
+-
+ if (unlikely(tracing_selftest_running || tracing_disabled))
+ return 0;
+
+- local_save_flags(irq_flags);
++ trace_ctx = tracing_gen_ctx();
+ buffer = global_trace.array_buffer.buffer;
+
+ ring_buffer_nest_start(buffer);
+ event = __trace_buffer_lock_reserve(buffer, TRACE_BPUTS, size,
+- irq_flags, pc);
++ trace_ctx);
+ if (!event)
+ goto out;
+
+@@ -1092,7 +1086,7 @@ int __trace_bputs(unsigned long ip, const char *str)
+ entry->str = str;
+
+ __buffer_unlock_commit(buffer, event);
+- ftrace_trace_stack(&global_trace, buffer, irq_flags, 4, pc, NULL);
++ ftrace_trace_stack(&global_trace, buffer, trace_ctx, 4, NULL);
+
+ ret = 1;
+ out:
+@@ -2581,36 +2575,69 @@ enum print_line_t trace_handle_return(struct trace_seq *s)
+ }
+ EXPORT_SYMBOL_GPL(trace_handle_return);
+
+-void
+-tracing_generic_entry_update(struct trace_entry *entry, unsigned short type,
+- unsigned long flags, int pc)
++unsigned int tracing_gen_ctx_flags(unsigned long irqflags)
+ {
+- struct task_struct *tsk = current;
++ unsigned int trace_flags = 0;
++ unsigned int pc;
++
++ pc = preempt_count();
+
+- entry->preempt_count = pc & 0xff;
+- entry->pid = (tsk) ? tsk->pid : 0;
+- entry->type = type;
+- entry->flags =
+ #ifdef CONFIG_TRACE_IRQFLAGS_SUPPORT
+- (irqs_disabled_flags(flags) ? TRACE_FLAG_IRQS_OFF : 0) |
++ if (irqs_disabled_flags(irqflags))
++ trace_flags |= TRACE_FLAG_IRQS_OFF;
+ #else
+- TRACE_FLAG_IRQS_NOSUPPORT |
++ trace_flags |= TRACE_FLAG_IRQS_NOSUPPORT;
+ #endif
+- ((pc & NMI_MASK ) ? TRACE_FLAG_NMI : 0) |
+- ((pc & HARDIRQ_MASK) ? TRACE_FLAG_HARDIRQ : 0) |
+- ((pc & SOFTIRQ_OFFSET) ? TRACE_FLAG_SOFTIRQ : 0) |
+- (tif_need_resched() ? TRACE_FLAG_NEED_RESCHED : 0) |
+- (test_preempt_need_resched() ? TRACE_FLAG_PREEMPT_RESCHED : 0);
++
++ if (pc & NMI_MASK)
++ trace_flags |= TRACE_FLAG_NMI;
++ if (pc & HARDIRQ_MASK)
++ trace_flags |= TRACE_FLAG_HARDIRQ;
++
++ if (pc & SOFTIRQ_OFFSET)
++ trace_flags |= TRACE_FLAG_SOFTIRQ;
++
++ if (tif_need_resched())
++ trace_flags |= TRACE_FLAG_NEED_RESCHED;
++ if (test_preempt_need_resched())
++ trace_flags |= TRACE_FLAG_PREEMPT_RESCHED;
++ return (trace_flags << 16) | (pc & 0xff);
++}
++
++unsigned int tracing_gen_ctx(void)
++{
++ unsigned long irqflags;
++
++#ifdef CONFIG_TRACE_IRQFLAGS_SUPPORT
++ local_save_flags(irqflags);
++#else
++ irqflags = 0;
++#endif
++ return tracing_gen_ctx_flags(irqflags);
++}
++
++unsigned int tracing_gen_ctx_dec(void)
++{
++ unsigned int trace_ctx;
++
++ trace_ctx = tracing_gen_ctx();
++
++ /*
++ * Subtract one from the preeption counter if preemption is enabled,
++ * see trace_event_buffer_reserve()for details.
++ */
++ if (IS_ENABLED(CONFIG_PREEMPTION))
++ trace_ctx--;
++ return trace_ctx;
+ }
+-EXPORT_SYMBOL_GPL(tracing_generic_entry_update);
+
+ struct ring_buffer_event *
+ trace_buffer_lock_reserve(struct trace_buffer *buffer,
+ int type,
+ unsigned long len,
+- unsigned long flags, int pc)
++ unsigned int trace_ctx)
+ {
+- return __trace_buffer_lock_reserve(buffer, type, len, flags, pc);
++ return __trace_buffer_lock_reserve(buffer, type, len, trace_ctx);
+ }
+
+ DEFINE_PER_CPU(struct ring_buffer_event *, trace_buffered_event);
+@@ -2729,7 +2756,7 @@ struct ring_buffer_event *
+ trace_event_buffer_lock_reserve(struct trace_buffer **current_rb,
+ struct trace_event_file *trace_file,
+ int type, unsigned long len,
+- unsigned long flags, int pc)
++ unsigned int trace_ctx)
+ {
+ struct ring_buffer_event *entry;
+ int val;
+@@ -2742,7 +2769,7 @@ trace_event_buffer_lock_reserve(struct trace_buffer **current_rb,
+ /* Try to use the per cpu buffer first */
+ val = this_cpu_inc_return(trace_buffered_event_cnt);
+ if ((len < (PAGE_SIZE - sizeof(*entry) - sizeof(entry->array[0]))) && val == 1) {
+- trace_event_setup(entry, type, flags, pc);
++ trace_event_setup(entry, type, trace_ctx);
+ entry->array[0] = len;
+ return entry;
+ }
+@@ -2750,7 +2777,7 @@ trace_event_buffer_lock_reserve(struct trace_buffer **current_rb,
+ }
+
+ entry = __trace_buffer_lock_reserve(*current_rb,
+- type, len, flags, pc);
++ type, len, trace_ctx);
+ /*
+ * If tracing is off, but we have triggers enabled
+ * we still need to look at the event data. Use the temp_buffer
+@@ -2759,8 +2786,8 @@ trace_event_buffer_lock_reserve(struct trace_buffer **current_rb,
+ */
+ if (!entry && trace_file->flags & EVENT_FILE_FL_TRIGGER_COND) {
+ *current_rb = temp_buffer;
+- entry = __trace_buffer_lock_reserve(*current_rb,
+- type, len, flags, pc);
++ entry = __trace_buffer_lock_reserve(*current_rb, type, len,
++ trace_ctx);
+ }
+ return entry;
+ }
+@@ -2846,7 +2873,7 @@ void trace_event_buffer_commit(struct trace_event_buffer *fbuffer)
+ ftrace_exports(fbuffer->event, TRACE_EXPORT_EVENT);
+ event_trigger_unlock_commit_regs(fbuffer->trace_file, fbuffer->buffer,
+ fbuffer->event, fbuffer->entry,
+- fbuffer->flags, fbuffer->pc, fbuffer->regs);
++ fbuffer->trace_ctx, fbuffer->regs);
+ }
+ EXPORT_SYMBOL_GPL(trace_event_buffer_commit);
+
+@@ -2862,7 +2889,7 @@ EXPORT_SYMBOL_GPL(trace_event_buffer_commit);
+ void trace_buffer_unlock_commit_regs(struct trace_array *tr,
+ struct trace_buffer *buffer,
+ struct ring_buffer_event *event,
+- unsigned long flags, int pc,
++ unsigned int trace_ctx,
+ struct pt_regs *regs)
+ {
+ __buffer_unlock_commit(buffer, event);
+@@ -2873,8 +2900,8 @@ void trace_buffer_unlock_commit_regs(struct trace_array *tr,
+ * and mmiotrace, but that's ok if they lose a function or
+ * two. They are not that meaningful.
+ */
+- ftrace_trace_stack(tr, buffer, flags, regs ? 0 : STACK_SKIP, pc, regs);
+- ftrace_trace_userstack(tr, buffer, flags, pc);
++ ftrace_trace_stack(tr, buffer, trace_ctx, regs ? 0 : STACK_SKIP, regs);
++ ftrace_trace_userstack(tr, buffer, trace_ctx);
+ }
+
+ /*
+@@ -2888,9 +2915,8 @@ trace_buffer_unlock_commit_nostack(struct trace_buffer *buffer,
+ }
+
+ void
+-trace_function(struct trace_array *tr,
+- unsigned long ip, unsigned long parent_ip, unsigned long flags,
+- int pc)
++trace_function(struct trace_array *tr, unsigned long ip, unsigned long
++ parent_ip, unsigned int trace_ctx)
+ {
+ struct trace_event_call *call = &event_function;
+ struct trace_buffer *buffer = tr->array_buffer.buffer;
+@@ -2898,7 +2924,7 @@ trace_function(struct trace_array *tr,
+ struct ftrace_entry *entry;
+
+ event = __trace_buffer_lock_reserve(buffer, TRACE_FN, sizeof(*entry),
+- flags, pc);
++ trace_ctx);
+ if (!event)
+ return;
+ entry = ring_buffer_event_data(event);
+@@ -2932,8 +2958,8 @@ static DEFINE_PER_CPU(struct ftrace_stacks, ftrace_stacks);
+ static DEFINE_PER_CPU(int, ftrace_stack_reserve);
+
+ static void __ftrace_trace_stack(struct trace_buffer *buffer,
+- unsigned long flags,
+- int skip, int pc, struct pt_regs *regs)
++ unsigned int trace_ctx,
++ int skip, struct pt_regs *regs)
+ {
+ struct trace_event_call *call = &event_kernel_stack;
+ struct ring_buffer_event *event;
+@@ -2981,7 +3007,7 @@ static void __ftrace_trace_stack(struct trace_buffer *buffer,
+ size = nr_entries * sizeof(unsigned long);
+ event = __trace_buffer_lock_reserve(buffer, TRACE_STACK,
+ (sizeof(*entry) - sizeof(entry->caller)) + size,
+- flags, pc);
++ trace_ctx);
+ if (!event)
+ goto out;
+ entry = ring_buffer_event_data(event);
+@@ -3002,22 +3028,22 @@ static void __ftrace_trace_stack(struct trace_buffer *buffer,
+
+ static inline void ftrace_trace_stack(struct trace_array *tr,
+ struct trace_buffer *buffer,
+- unsigned long flags,
+- int skip, int pc, struct pt_regs *regs)
++ unsigned int trace_ctx,
++ int skip, struct pt_regs *regs)
+ {
+ if (!(tr->trace_flags & TRACE_ITER_STACKTRACE))
+ return;
+
+- __ftrace_trace_stack(buffer, flags, skip, pc, regs);
++ __ftrace_trace_stack(buffer, trace_ctx, skip, regs);
+ }
+
+-void __trace_stack(struct trace_array *tr, unsigned long flags, int skip,
+- int pc)
++void __trace_stack(struct trace_array *tr, unsigned int trace_ctx,
++ int skip)
+ {
+ struct trace_buffer *buffer = tr->array_buffer.buffer;
+
+ if (rcu_is_watching()) {
+- __ftrace_trace_stack(buffer, flags, skip, pc, NULL);
++ __ftrace_trace_stack(buffer, trace_ctx, skip, NULL);
+ return;
+ }
+
+@@ -3031,7 +3057,7 @@ void __trace_stack(struct trace_array *tr, unsigned long flags, int skip,
+ return;
+
+ rcu_irq_enter_irqson();
+- __ftrace_trace_stack(buffer, flags, skip, pc, NULL);
++ __ftrace_trace_stack(buffer, trace_ctx, skip, NULL);
+ rcu_irq_exit_irqson();
+ }
+
+@@ -3041,19 +3067,15 @@ void __trace_stack(struct trace_array *tr, unsigned long flags, int skip,
+ */
+ void trace_dump_stack(int skip)
+ {
+- unsigned long flags;
+-
+ if (tracing_disabled || tracing_selftest_running)
+ return;
+
+- local_save_flags(flags);
+-
+ #ifndef CONFIG_UNWINDER_ORC
+ /* Skip 1 to skip this function. */
+ skip++;
+ #endif
+ __ftrace_trace_stack(global_trace.array_buffer.buffer,
+- flags, skip, preempt_count(), NULL);
++ tracing_gen_ctx(), skip, NULL);
+ }
+ EXPORT_SYMBOL_GPL(trace_dump_stack);
+
+@@ -3062,7 +3084,7 @@ static DEFINE_PER_CPU(int, user_stack_count);
+
+ static void
+ ftrace_trace_userstack(struct trace_array *tr,
+- struct trace_buffer *buffer, unsigned long flags, int pc)
++ struct trace_buffer *buffer, unsigned int trace_ctx)
+ {
+ struct trace_event_call *call = &event_user_stack;
+ struct ring_buffer_event *event;
+@@ -3089,7 +3111,7 @@ ftrace_trace_userstack(struct trace_array *tr,
+ __this_cpu_inc(user_stack_count);
+
+ event = __trace_buffer_lock_reserve(buffer, TRACE_USER_STACK,
+- sizeof(*entry), flags, pc);
++ sizeof(*entry), trace_ctx);
+ if (!event)
+ goto out_drop_count;
+ entry = ring_buffer_event_data(event);
+@@ -3109,7 +3131,7 @@ ftrace_trace_userstack(struct trace_array *tr,
+ #else /* CONFIG_USER_STACKTRACE_SUPPORT */
+ static void ftrace_trace_userstack(struct trace_array *tr,
+ struct trace_buffer *buffer,
+- unsigned long flags, int pc)
++ unsigned int trace_ctx)
+ {
+ }
+ #endif /* !CONFIG_USER_STACKTRACE_SUPPORT */
+@@ -3239,9 +3261,9 @@ int trace_vbprintk(unsigned long ip, const char *fmt, va_list args)
+ struct trace_buffer *buffer;
+ struct trace_array *tr = &global_trace;
+ struct bprint_entry *entry;
+- unsigned long flags;
++ unsigned int trace_ctx;
+ char *tbuffer;
+- int len = 0, size, pc;
++ int len = 0, size;
+
+ if (unlikely(tracing_selftest_running || tracing_disabled))
+ return 0;
+@@ -3249,7 +3271,7 @@ int trace_vbprintk(unsigned long ip, const char *fmt, va_list args)
+ /* Don't pollute graph traces with trace_vprintk internals */
+ pause_graph_tracing();
+
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx();
+ preempt_disable_notrace();
+
+ tbuffer = get_trace_buf();
+@@ -3263,12 +3285,11 @@ int trace_vbprintk(unsigned long ip, const char *fmt, va_list args)
+ if (len > TRACE_BUF_SIZE/sizeof(int) || len < 0)
+ goto out_put;
+
+- local_save_flags(flags);
+ size = sizeof(*entry) + sizeof(u32) * len;
+ buffer = tr->array_buffer.buffer;
+ ring_buffer_nest_start(buffer);
+ event = __trace_buffer_lock_reserve(buffer, TRACE_BPRINT, size,
+- flags, pc);
++ trace_ctx);
+ if (!event)
+ goto out;
+ entry = ring_buffer_event_data(event);
+@@ -3278,7 +3299,7 @@ int trace_vbprintk(unsigned long ip, const char *fmt, va_list args)
+ memcpy(entry->buf, tbuffer, sizeof(u32) * len);
+ if (!call_filter_check_discard(call, entry, buffer, event)) {
+ __buffer_unlock_commit(buffer, event);
+- ftrace_trace_stack(tr, buffer, flags, 6, pc, NULL);
++ ftrace_trace_stack(tr, buffer, trace_ctx, 6, NULL);
+ }
+
+ out:
+@@ -3301,9 +3322,9 @@ __trace_array_vprintk(struct trace_buffer *buffer,
+ {
+ struct trace_event_call *call = &event_print;
+ struct ring_buffer_event *event;
+- int len = 0, size, pc;
++ int len = 0, size;
+ struct print_entry *entry;
+- unsigned long flags;
++ unsigned int trace_ctx;
+ char *tbuffer;
+
+ if (tracing_disabled || tracing_selftest_running)
+@@ -3312,7 +3333,7 @@ __trace_array_vprintk(struct trace_buffer *buffer,
+ /* Don't pollute graph traces with trace_vprintk internals */
+ pause_graph_tracing();
+
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx();
+ preempt_disable_notrace();
+
+
+@@ -3324,11 +3345,10 @@ __trace_array_vprintk(struct trace_buffer *buffer,
+
+ len = vscnprintf(tbuffer, TRACE_BUF_SIZE, fmt, args);
+
+- local_save_flags(flags);
+ size = sizeof(*entry) + len + 1;
+ ring_buffer_nest_start(buffer);
+ event = __trace_buffer_lock_reserve(buffer, TRACE_PRINT, size,
+- flags, pc);
++ trace_ctx);
+ if (!event)
+ goto out;
+ entry = ring_buffer_event_data(event);
+@@ -3337,7 +3357,7 @@ __trace_array_vprintk(struct trace_buffer *buffer,
+ memcpy(&entry->buf, tbuffer, len + 1);
+ if (!call_filter_check_discard(call, entry, buffer, event)) {
+ __buffer_unlock_commit(buffer, event);
+- ftrace_trace_stack(&global_trace, buffer, flags, 6, pc, NULL);
++ ftrace_trace_stack(&global_trace, buffer, trace_ctx, 6, NULL);
+ }
+
+ out:
+@@ -6831,7 +6851,6 @@ tracing_mark_write(struct file *filp, const char __user *ubuf,
+ enum event_trigger_type tt = ETT_NONE;
+ struct trace_buffer *buffer;
+ struct print_entry *entry;
+- unsigned long irq_flags;
+ ssize_t written;
+ int size;
+ int len;
+@@ -6851,7 +6870,6 @@ tracing_mark_write(struct file *filp, const char __user *ubuf,
+
+ BUILD_BUG_ON(TRACE_BUF_SIZE >= PAGE_SIZE);
+
+- local_save_flags(irq_flags);
+ size = sizeof(*entry) + cnt + 2; /* add '\0' and possible '\n' */
+
+ /* If less than "<faulted>", then make sure we can still add that */
+@@ -6860,7 +6878,7 @@ tracing_mark_write(struct file *filp, const char __user *ubuf,
+
+ buffer = tr->array_buffer.buffer;
+ event = __trace_buffer_lock_reserve(buffer, TRACE_PRINT, size,
+- irq_flags, preempt_count());
++ tracing_gen_ctx());
+ if (unlikely(!event))
+ /* Ring buffer disabled, return as if not open for write */
+ return -EBADF;
+@@ -6912,7 +6930,6 @@ tracing_mark_raw_write(struct file *filp, const char __user *ubuf,
+ struct ring_buffer_event *event;
+ struct trace_buffer *buffer;
+ struct raw_data_entry *entry;
+- unsigned long irq_flags;
+ ssize_t written;
+ int size;
+ int len;
+@@ -6934,14 +6951,13 @@ tracing_mark_raw_write(struct file *filp, const char __user *ubuf,
+
+ BUILD_BUG_ON(TRACE_BUF_SIZE >= PAGE_SIZE);
+
+- local_save_flags(irq_flags);
+ size = sizeof(*entry) + cnt;
+ if (cnt < FAULT_SIZE_ID)
+ size += FAULT_SIZE_ID - cnt;
+
+ buffer = tr->array_buffer.buffer;
+ event = __trace_buffer_lock_reserve(buffer, TRACE_RAW_DATA, size,
+- irq_flags, preempt_count());
++ tracing_gen_ctx());
+ if (!event)
+ /* Ring buffer disabled, return as if not open for write */
+ return -EBADF;
+diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
+index 7c90872f2435..27ed42bccd7f 100644
+--- a/kernel/trace/trace.h
++++ b/kernel/trace/trace.h
+@@ -750,8 +750,7 @@ struct ring_buffer_event *
+ trace_buffer_lock_reserve(struct trace_buffer *buffer,
+ int type,
+ unsigned long len,
+- unsigned long flags,
+- int pc);
++ unsigned int trace_ctx);
+
+ struct trace_entry *tracing_get_trace_entry(struct trace_array *tr,
+ struct trace_array_cpu *data);
+@@ -778,11 +777,11 @@ unsigned long trace_total_entries(struct trace_array *tr);
+ void trace_function(struct trace_array *tr,
+ unsigned long ip,
+ unsigned long parent_ip,
+- unsigned long flags, int pc);
++ unsigned int trace_ctx);
+ void trace_graph_function(struct trace_array *tr,
+ unsigned long ip,
+ unsigned long parent_ip,
+- unsigned long flags, int pc);
++ unsigned int trace_ctx);
+ void trace_latency_header(struct seq_file *m);
+ void trace_default_header(struct seq_file *m);
+ void print_trace_header(struct seq_file *m, struct trace_iterator *iter);
+@@ -850,11 +849,10 @@ static inline void latency_fsnotify(struct trace_array *tr) { }
+ #endif
+
+ #ifdef CONFIG_STACKTRACE
+-void __trace_stack(struct trace_array *tr, unsigned long flags, int skip,
+- int pc);
++void __trace_stack(struct trace_array *tr, unsigned int trace_ctx, int skip);
+ #else
+-static inline void __trace_stack(struct trace_array *tr, unsigned long flags,
+- int skip, int pc)
++static inline void __trace_stack(struct trace_array *tr, unsigned int trace_ctx,
++ int skip)
+ {
+ }
+ #endif /* CONFIG_STACKTRACE */
+@@ -994,10 +992,10 @@ extern void graph_trace_open(struct trace_iterator *iter);
+ extern void graph_trace_close(struct trace_iterator *iter);
+ extern int __trace_graph_entry(struct trace_array *tr,
+ struct ftrace_graph_ent *trace,
+- unsigned long flags, int pc);
++ unsigned int trace_ctx);
+ extern void __trace_graph_return(struct trace_array *tr,
+ struct ftrace_graph_ret *trace,
+- unsigned long flags, int pc);
++ unsigned int trace_ctx);
+
+ #ifdef CONFIG_DYNAMIC_FTRACE
+ extern struct ftrace_hash __rcu *ftrace_graph_hash;
+@@ -1460,15 +1458,15 @@ extern int call_filter_check_discard(struct trace_event_call *call, void *rec,
+ void trace_buffer_unlock_commit_regs(struct trace_array *tr,
+ struct trace_buffer *buffer,
+ struct ring_buffer_event *event,
+- unsigned long flags, int pc,
++ unsigned int trcace_ctx,
+ struct pt_regs *regs);
+
+ static inline void trace_buffer_unlock_commit(struct trace_array *tr,
+ struct trace_buffer *buffer,
+ struct ring_buffer_event *event,
+- unsigned long flags, int pc)
++ unsigned int trace_ctx)
+ {
+- trace_buffer_unlock_commit_regs(tr, buffer, event, flags, pc, NULL);
++ trace_buffer_unlock_commit_regs(tr, buffer, event, trace_ctx, NULL);
+ }
+
+ DECLARE_PER_CPU(struct ring_buffer_event *, trace_buffered_event);
+@@ -1541,8 +1539,7 @@ __event_trigger_test_discard(struct trace_event_file *file,
+ * @buffer: The ring buffer that the event is being written to
+ * @event: The event meta data in the ring buffer
+ * @entry: The event itself
+- * @irq_flags: The state of the interrupts at the start of the event
+- * @pc: The state of the preempt count at the start of the event.
++ * @trace_ctx: The tracing context flags.
+ *
+ * This is a helper function to handle triggers that require data
+ * from the event itself. It also tests the event against filters and
+@@ -1552,12 +1549,12 @@ static inline void
+ event_trigger_unlock_commit(struct trace_event_file *file,
+ struct trace_buffer *buffer,
+ struct ring_buffer_event *event,
+- void *entry, unsigned long irq_flags, int pc)
++ void *entry, unsigned int trace_ctx)
+ {
+ enum event_trigger_type tt = ETT_NONE;
+
+ if (!__event_trigger_test_discard(file, buffer, event, entry, &tt))
+- trace_buffer_unlock_commit(file->tr, buffer, event, irq_flags, pc);
++ trace_buffer_unlock_commit(file->tr, buffer, event, trace_ctx);
+
+ if (tt)
+ event_triggers_post_call(file, tt);
+@@ -1569,8 +1566,7 @@ event_trigger_unlock_commit(struct trace_event_file *file,
+ * @buffer: The ring buffer that the event is being written to
+ * @event: The event meta data in the ring buffer
+ * @entry: The event itself
+- * @irq_flags: The state of the interrupts at the start of the event
+- * @pc: The state of the preempt count at the start of the event.
++ * @trace_ctx: The tracing context flags.
+ *
+ * This is a helper function to handle triggers that require data
+ * from the event itself. It also tests the event against filters and
+@@ -1583,14 +1579,14 @@ static inline void
+ event_trigger_unlock_commit_regs(struct trace_event_file *file,
+ struct trace_buffer *buffer,
+ struct ring_buffer_event *event,
+- void *entry, unsigned long irq_flags, int pc,
++ void *entry, unsigned int trace_ctx,
+ struct pt_regs *regs)
+ {
+ enum event_trigger_type tt = ETT_NONE;
+
+ if (!__event_trigger_test_discard(file, buffer, event, entry, &tt))
+ trace_buffer_unlock_commit_regs(file->tr, buffer, event,
+- irq_flags, pc, regs);
++ trace_ctx, regs);
+
+ if (tt)
+ event_triggers_post_call(file, tt);
+diff --git a/kernel/trace/trace_branch.c b/kernel/trace/trace_branch.c
+index eff099123aa2..e47fdb4c92fb 100644
+--- a/kernel/trace/trace_branch.c
++++ b/kernel/trace/trace_branch.c
+@@ -37,7 +37,7 @@ probe_likely_condition(struct ftrace_likely_data *f, int val, int expect)
+ struct ring_buffer_event *event;
+ struct trace_branch *entry;
+ unsigned long flags;
+- int pc;
++ unsigned int trace_ctx;
+ const char *p;
+
+ if (current->trace_recursion & TRACE_BRANCH_BIT)
+@@ -59,10 +59,10 @@ probe_likely_condition(struct ftrace_likely_data *f, int val, int expect)
+ if (atomic_read(&data->disabled))
+ goto out;
+
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx_flags(flags);
+ buffer = tr->array_buffer.buffer;
+ event = trace_buffer_lock_reserve(buffer, TRACE_BRANCH,
+- sizeof(*entry), flags, pc);
++ sizeof(*entry), trace_ctx);
+ if (!event)
+ goto out;
+
+diff --git a/kernel/trace/trace_event_perf.c b/kernel/trace/trace_event_perf.c
+index 643e0b19920d..0443dd61667b 100644
+--- a/kernel/trace/trace_event_perf.c
++++ b/kernel/trace/trace_event_perf.c
+@@ -421,11 +421,8 @@ NOKPROBE_SYMBOL(perf_trace_buf_alloc);
+ void perf_trace_buf_update(void *record, u16 type)
+ {
+ struct trace_entry *entry = record;
+- int pc = preempt_count();
+- unsigned long flags;
+
+- local_save_flags(flags);
+- tracing_generic_entry_update(entry, type, flags, pc);
++ tracing_generic_entry_update(entry, type, tracing_gen_ctx());
+ }
+ NOKPROBE_SYMBOL(perf_trace_buf_update);
+
+diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
+index 4b5a8d7275be..df64b92c5edc 100644
+--- a/kernel/trace/trace_events.c
++++ b/kernel/trace/trace_events.c
+@@ -259,22 +259,19 @@ void *trace_event_buffer_reserve(struct trace_event_buffer *fbuffer,
+ trace_event_ignore_this_pid(trace_file))
+ return NULL;
+
+- local_save_flags(fbuffer->flags);
+- fbuffer->pc = preempt_count();
+ /*
+ * If CONFIG_PREEMPTION is enabled, then the tracepoint itself disables
+ * preemption (adding one to the preempt_count). Since we are
+ * interested in the preempt_count at the time the tracepoint was
+ * hit, we need to subtract one to offset the increment.
+ */
+- if (IS_ENABLED(CONFIG_PREEMPTION))
+- fbuffer->pc--;
++ fbuffer->trace_ctx = tracing_gen_ctx_dec();
+ fbuffer->trace_file = trace_file;
+
+ fbuffer->event =
+ trace_event_buffer_lock_reserve(&fbuffer->buffer, trace_file,
+ event_call->event.type, len,
+- fbuffer->flags, fbuffer->pc);
++ fbuffer->trace_ctx);
+ if (!fbuffer->event)
+ return NULL;
+
+@@ -3709,12 +3706,11 @@ function_test_events_call(unsigned long ip, unsigned long parent_ip,
+ struct trace_buffer *buffer;
+ struct ring_buffer_event *event;
+ struct ftrace_entry *entry;
+- unsigned long flags;
++ unsigned int trace_ctx;
+ long disabled;
+ int cpu;
+- int pc;
+
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx();
+ preempt_disable_notrace();
+ cpu = raw_smp_processor_id();
+ disabled = atomic_inc_return(&per_cpu(ftrace_test_event_disable, cpu));
+@@ -3722,11 +3718,9 @@ function_test_events_call(unsigned long ip, unsigned long parent_ip,
+ if (disabled != 1)
+ goto out;
+
+- local_save_flags(flags);
+-
+ event = trace_event_buffer_lock_reserve(&buffer, &event_trace_file,
+ TRACE_FN, sizeof(*entry),
+- flags, pc);
++ trace_ctx);
+ if (!event)
+ goto out;
+ entry = ring_buffer_event_data(event);
+@@ -3734,7 +3728,7 @@ function_test_events_call(unsigned long ip, unsigned long parent_ip,
+ entry->parent_ip = parent_ip;
+
+ event_trigger_unlock_commit(&event_trace_file, buffer, event,
+- entry, flags, pc);
++ entry, trace_ctx);
+ out:
+ atomic_dec(&per_cpu(ftrace_test_event_disable, cpu));
+ preempt_enable_notrace();
+diff --git a/kernel/trace/trace_events_inject.c b/kernel/trace/trace_events_inject.c
+index 149c7dc6a447..b1fce64e126c 100644
+--- a/kernel/trace/trace_events_inject.c
++++ b/kernel/trace/trace_events_inject.c
+@@ -192,7 +192,6 @@ static void *trace_alloc_entry(struct trace_event_call *call, int *size)
+ static int parse_entry(char *str, struct trace_event_call *call, void **pentry)
+ {
+ struct ftrace_event_field *field;
+- unsigned long irq_flags;
+ void *entry = NULL;
+ int entry_size;
+ u64 val = 0;
+@@ -203,9 +202,8 @@ static int parse_entry(char *str, struct trace_event_call *call, void **pentry)
+ if (!entry)
+ return -ENOMEM;
+
+- local_save_flags(irq_flags);
+- tracing_generic_entry_update(entry, call->event.type, irq_flags,
+- preempt_count());
++ tracing_generic_entry_update(entry, call->event.type,
++ tracing_gen_ctx());
+
+ while ((len = parse_field(str, call, &field, &val)) > 0) {
+ if (is_function_field(field))
+diff --git a/kernel/trace/trace_functions.c b/kernel/trace/trace_functions.c
+index 93e20ed642e5..8606cb73341e 100644
+--- a/kernel/trace/trace_functions.c
++++ b/kernel/trace/trace_functions.c
+@@ -133,15 +133,14 @@ function_trace_call(unsigned long ip, unsigned long parent_ip,
+ {
+ struct trace_array *tr = op->private;
+ struct trace_array_cpu *data;
+- unsigned long flags;
++ unsigned int trace_ctx;
+ int bit;
+ int cpu;
+- int pc;
+
+ if (unlikely(!tr->function_enabled))
+ return;
+
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx();
+ preempt_disable_notrace();
+
+ bit = trace_test_and_set_recursion(TRACE_FTRACE_START);
+@@ -150,10 +149,9 @@ function_trace_call(unsigned long ip, unsigned long parent_ip,
+
+ cpu = smp_processor_id();
+ data = per_cpu_ptr(tr->array_buffer.data, cpu);
+- if (!atomic_read(&data->disabled)) {
+- local_save_flags(flags);
+- trace_function(tr, ip, parent_ip, flags, pc);
+- }
++ if (!atomic_read(&data->disabled))
++ trace_function(tr, ip, parent_ip, trace_ctx);
++
+ trace_clear_recursion(bit);
+
+ out:
+@@ -187,7 +185,7 @@ function_stack_trace_call(unsigned long ip, unsigned long parent_ip,
+ unsigned long flags;
+ long disabled;
+ int cpu;
+- int pc;
++ unsigned int trace_ctx;
+
+ if (unlikely(!tr->function_enabled))
+ return;
+@@ -202,9 +200,9 @@ function_stack_trace_call(unsigned long ip, unsigned long parent_ip,
+ disabled = atomic_inc_return(&data->disabled);
+
+ if (likely(disabled == 1)) {
+- pc = preempt_count();
+- trace_function(tr, ip, parent_ip, flags, pc);
+- __trace_stack(tr, flags, STACK_SKIP, pc);
++ trace_ctx = tracing_gen_ctx_flags(flags);
++ trace_function(tr, ip, parent_ip, trace_ctx);
++ __trace_stack(tr, trace_ctx, STACK_SKIP);
+ }
+
+ atomic_dec(&data->disabled);
+@@ -407,13 +405,11 @@ ftrace_traceoff(unsigned long ip, unsigned long parent_ip,
+
+ static __always_inline void trace_stack(struct trace_array *tr)
+ {
+- unsigned long flags;
+- int pc;
++ unsigned int trace_ctx;
+
+- local_save_flags(flags);
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx();
+
+- __trace_stack(tr, flags, FTRACE_STACK_SKIP, pc);
++ __trace_stack(tr, trace_ctx, FTRACE_STACK_SKIP);
+ }
+
+ static void
+diff --git a/kernel/trace/trace_functions_graph.c b/kernel/trace/trace_functions_graph.c
+index 60d66278aa0d..b086ba8bb3d6 100644
+--- a/kernel/trace/trace_functions_graph.c
++++ b/kernel/trace/trace_functions_graph.c
+@@ -96,8 +96,7 @@ print_graph_duration(struct trace_array *tr, unsigned long long duration,
+
+ int __trace_graph_entry(struct trace_array *tr,
+ struct ftrace_graph_ent *trace,
+- unsigned long flags,
+- int pc)
++ unsigned int trace_ctx)
+ {
+ struct trace_event_call *call = &event_funcgraph_entry;
+ struct ring_buffer_event *event;
+@@ -105,7 +104,7 @@ int __trace_graph_entry(struct trace_array *tr,
+ struct ftrace_graph_ent_entry *entry;
+
+ event = trace_buffer_lock_reserve(buffer, TRACE_GRAPH_ENT,
+- sizeof(*entry), flags, pc);
++ sizeof(*entry), trace_ctx);
+ if (!event)
+ return 0;
+ entry = ring_buffer_event_data(event);
+@@ -129,10 +128,10 @@ int trace_graph_entry(struct ftrace_graph_ent *trace)
+ struct trace_array *tr = graph_array;
+ struct trace_array_cpu *data;
+ unsigned long flags;
++ unsigned int trace_ctx;
+ long disabled;
+ int ret;
+ int cpu;
+- int pc;
+
+ if (trace_recursion_test(TRACE_GRAPH_NOTRACE_BIT))
+ return 0;
+@@ -174,8 +173,8 @@ int trace_graph_entry(struct ftrace_graph_ent *trace)
+ data = per_cpu_ptr(tr->array_buffer.data, cpu);
+ disabled = atomic_inc_return(&data->disabled);
+ if (likely(disabled == 1)) {
+- pc = preempt_count();
+- ret = __trace_graph_entry(tr, trace, flags, pc);
++ trace_ctx = tracing_gen_ctx_flags(flags);
++ ret = __trace_graph_entry(tr, trace, trace_ctx);
+ } else {
+ ret = 0;
+ }
+@@ -188,7 +187,7 @@ int trace_graph_entry(struct ftrace_graph_ent *trace)
+
+ static void
+ __trace_graph_function(struct trace_array *tr,
+- unsigned long ip, unsigned long flags, int pc)
++ unsigned long ip, unsigned int trace_ctx)
+ {
+ u64 time = trace_clock_local();
+ struct ftrace_graph_ent ent = {
+@@ -202,22 +201,21 @@ __trace_graph_function(struct trace_array *tr,
+ .rettime = time,
+ };
+
+- __trace_graph_entry(tr, &ent, flags, pc);
+- __trace_graph_return(tr, &ret, flags, pc);
++ __trace_graph_entry(tr, &ent, trace_ctx);
++ __trace_graph_return(tr, &ret, trace_ctx);
+ }
+
+ void
+ trace_graph_function(struct trace_array *tr,
+ unsigned long ip, unsigned long parent_ip,
+- unsigned long flags, int pc)
++ unsigned int trace_ctx)
+ {
+- __trace_graph_function(tr, ip, flags, pc);
++ __trace_graph_function(tr, ip, trace_ctx);
+ }
+
+ void __trace_graph_return(struct trace_array *tr,
+ struct ftrace_graph_ret *trace,
+- unsigned long flags,
+- int pc)
++ unsigned int trace_ctx)
+ {
+ struct trace_event_call *call = &event_funcgraph_exit;
+ struct ring_buffer_event *event;
+@@ -225,7 +223,7 @@ void __trace_graph_return(struct trace_array *tr,
+ struct ftrace_graph_ret_entry *entry;
+
+ event = trace_buffer_lock_reserve(buffer, TRACE_GRAPH_RET,
+- sizeof(*entry), flags, pc);
++ sizeof(*entry), trace_ctx);
+ if (!event)
+ return;
+ entry = ring_buffer_event_data(event);
+@@ -239,9 +237,9 @@ void trace_graph_return(struct ftrace_graph_ret *trace)
+ struct trace_array *tr = graph_array;
+ struct trace_array_cpu *data;
+ unsigned long flags;
++ unsigned int trace_ctx;
+ long disabled;
+ int cpu;
+- int pc;
+
+ ftrace_graph_addr_finish(trace);
+
+@@ -255,8 +253,8 @@ void trace_graph_return(struct ftrace_graph_ret *trace)
+ data = per_cpu_ptr(tr->array_buffer.data, cpu);
+ disabled = atomic_inc_return(&data->disabled);
+ if (likely(disabled == 1)) {
+- pc = preempt_count();
+- __trace_graph_return(tr, trace, flags, pc);
++ trace_ctx = tracing_gen_ctx_flags(flags);
++ __trace_graph_return(tr, trace, trace_ctx);
+ }
+ atomic_dec(&data->disabled);
+ local_irq_restore(flags);
+diff --git a/kernel/trace/trace_hwlat.c b/kernel/trace/trace_hwlat.c
+index d071fc271eef..4c01c5d8b9a7 100644
+--- a/kernel/trace/trace_hwlat.c
++++ b/kernel/trace/trace_hwlat.c
+@@ -108,14 +108,9 @@ static void trace_hwlat_sample(struct hwlat_sample *sample)
+ struct trace_buffer *buffer = tr->array_buffer.buffer;
+ struct ring_buffer_event *event;
+ struct hwlat_entry *entry;
+- unsigned long flags;
+- int pc;
+-
+- pc = preempt_count();
+- local_save_flags(flags);
+
+ event = trace_buffer_lock_reserve(buffer, TRACE_HWLAT, sizeof(*entry),
+- flags, pc);
++ tracing_gen_ctx());
+ if (!event)
+ return;
+ entry = ring_buffer_event_data(event);
+diff --git a/kernel/trace/trace_irqsoff.c b/kernel/trace/trace_irqsoff.c
+index 619a60944bb6..4a11967c8daa 100644
+--- a/kernel/trace/trace_irqsoff.c
++++ b/kernel/trace/trace_irqsoff.c
+@@ -143,11 +143,14 @@ irqsoff_tracer_call(unsigned long ip, unsigned long parent_ip,
+ struct trace_array *tr = irqsoff_trace;
+ struct trace_array_cpu *data;
+ unsigned long flags;
++ unsigned int trace_ctx;
+
+ if (!func_prolog_dec(tr, &data, &flags))
+ return;
+
+- trace_function(tr, ip, parent_ip, flags, preempt_count());
++ trace_ctx = tracing_gen_ctx_flags(flags);
++
++ trace_function(tr, ip, parent_ip, trace_ctx);
+
+ atomic_dec(&data->disabled);
+ }
+@@ -177,8 +180,8 @@ static int irqsoff_graph_entry(struct ftrace_graph_ent *trace)
+ struct trace_array *tr = irqsoff_trace;
+ struct trace_array_cpu *data;
+ unsigned long flags;
++ unsigned int trace_ctx;
+ int ret;
+- int pc;
+
+ if (ftrace_graph_ignore_func(trace))
+ return 0;
+@@ -195,8 +198,8 @@ static int irqsoff_graph_entry(struct ftrace_graph_ent *trace)
+ if (!func_prolog_dec(tr, &data, &flags))
+ return 0;
+
+- pc = preempt_count();
+- ret = __trace_graph_entry(tr, trace, flags, pc);
++ trace_ctx = tracing_gen_ctx_flags(flags);
++ ret = __trace_graph_entry(tr, trace, trace_ctx);
+ atomic_dec(&data->disabled);
+
+ return ret;
+@@ -207,15 +210,15 @@ static void irqsoff_graph_return(struct ftrace_graph_ret *trace)
+ struct trace_array *tr = irqsoff_trace;
+ struct trace_array_cpu *data;
+ unsigned long flags;
+- int pc;
++ unsigned int trace_ctx;
+
+ ftrace_graph_addr_finish(trace);
+
+ if (!func_prolog_dec(tr, &data, &flags))
+ return;
+
+- pc = preempt_count();
+- __trace_graph_return(tr, trace, flags, pc);
++ trace_ctx = tracing_gen_ctx_flags(flags);
++ __trace_graph_return(tr, trace, trace_ctx);
+ atomic_dec(&data->disabled);
+ }
+
+@@ -268,12 +271,12 @@ static void irqsoff_print_header(struct seq_file *s)
+ static void
+ __trace_function(struct trace_array *tr,
+ unsigned long ip, unsigned long parent_ip,
+- unsigned long flags, int pc)
++ unsigned int trace_ctx)
+ {
+ if (is_graph(tr))
+- trace_graph_function(tr, ip, parent_ip, flags, pc);
++ trace_graph_function(tr, ip, parent_ip, trace_ctx);
+ else
+- trace_function(tr, ip, parent_ip, flags, pc);
++ trace_function(tr, ip, parent_ip, trace_ctx);
+ }
+
+ #else
+@@ -323,15 +326,13 @@ check_critical_timing(struct trace_array *tr,
+ {
+ u64 T0, T1, delta;
+ unsigned long flags;
+- int pc;
++ unsigned int trace_ctx;
+
+ T0 = data->preempt_timestamp;
+ T1 = ftrace_now(cpu);
+ delta = T1-T0;
+
+- local_save_flags(flags);
+-
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx();
+
+ if (!report_latency(tr, delta))
+ goto out;
+@@ -342,9 +343,9 @@ check_critical_timing(struct trace_array *tr,
+ if (!report_latency(tr, delta))
+ goto out_unlock;
+
+- __trace_function(tr, CALLER_ADDR0, parent_ip, flags, pc);
++ __trace_function(tr, CALLER_ADDR0, parent_ip, trace_ctx);
+ /* Skip 5 functions to get to the irq/preempt enable function */
+- __trace_stack(tr, flags, 5, pc);
++ __trace_stack(tr, trace_ctx, 5);
+
+ if (data->critical_sequence != max_sequence)
+ goto out_unlock;
+@@ -364,16 +365,15 @@ check_critical_timing(struct trace_array *tr,
+ out:
+ data->critical_sequence = max_sequence;
+ data->preempt_timestamp = ftrace_now(cpu);
+- __trace_function(tr, CALLER_ADDR0, parent_ip, flags, pc);
++ __trace_function(tr, CALLER_ADDR0, parent_ip, trace_ctx);
+ }
+
+ static nokprobe_inline void
+-start_critical_timing(unsigned long ip, unsigned long parent_ip, int pc)
++start_critical_timing(unsigned long ip, unsigned long parent_ip)
+ {
+ int cpu;
+ struct trace_array *tr = irqsoff_trace;
+ struct trace_array_cpu *data;
+- unsigned long flags;
+
+ if (!tracer_enabled || !tracing_is_enabled())
+ return;
+@@ -394,9 +394,7 @@ start_critical_timing(unsigned long ip, unsigned long parent_ip, int pc)
+ data->preempt_timestamp = ftrace_now(cpu);
+ data->critical_start = parent_ip ? : ip;
+
+- local_save_flags(flags);
+-
+- __trace_function(tr, ip, parent_ip, flags, pc);
++ __trace_function(tr, ip, parent_ip, tracing_gen_ctx());
+
+ per_cpu(tracing_cpu, cpu) = 1;
+
+@@ -404,12 +402,12 @@ start_critical_timing(unsigned long ip, unsigned long parent_ip, int pc)
+ }
+
+ static nokprobe_inline void
+-stop_critical_timing(unsigned long ip, unsigned long parent_ip, int pc)
++stop_critical_timing(unsigned long ip, unsigned long parent_ip)
+ {
+ int cpu;
+ struct trace_array *tr = irqsoff_trace;
+ struct trace_array_cpu *data;
+- unsigned long flags;
++ unsigned int trace_ctx;
+
+ cpu = raw_smp_processor_id();
+ /* Always clear the tracing cpu on stopping the trace */
+@@ -429,8 +427,8 @@ stop_critical_timing(unsigned long ip, unsigned long parent_ip, int pc)
+
+ atomic_inc(&data->disabled);
+
+- local_save_flags(flags);
+- __trace_function(tr, ip, parent_ip, flags, pc);
++ trace_ctx = tracing_gen_ctx();
++ __trace_function(tr, ip, parent_ip, trace_ctx);
+ check_critical_timing(tr, data, parent_ip ? : ip, cpu);
+ data->critical_start = 0;
+ atomic_dec(&data->disabled);
+@@ -439,20 +437,16 @@ stop_critical_timing(unsigned long ip, unsigned long parent_ip, int pc)
+ /* start and stop critical timings used to for stoppage (in idle) */
+ void start_critical_timings(void)
+ {
+- int pc = preempt_count();
+-
+- if (preempt_trace(pc) || irq_trace())
+- start_critical_timing(CALLER_ADDR0, CALLER_ADDR1, pc);
++ if (preempt_trace(preempt_count()) || irq_trace())
++ start_critical_timing(CALLER_ADDR0, CALLER_ADDR1);
+ }
+ EXPORT_SYMBOL_GPL(start_critical_timings);
+ NOKPROBE_SYMBOL(start_critical_timings);
+
+ void stop_critical_timings(void)
+ {
+- int pc = preempt_count();
+-
+- if (preempt_trace(pc) || irq_trace())
+- stop_critical_timing(CALLER_ADDR0, CALLER_ADDR1, pc);
++ if (preempt_trace(preempt_count()) || irq_trace())
++ stop_critical_timing(CALLER_ADDR0, CALLER_ADDR1);
+ }
+ EXPORT_SYMBOL_GPL(stop_critical_timings);
+ NOKPROBE_SYMBOL(stop_critical_timings);
+@@ -614,19 +608,15 @@ static void irqsoff_tracer_stop(struct trace_array *tr)
+ */
+ void tracer_hardirqs_on(unsigned long a0, unsigned long a1)
+ {
+- unsigned int pc = preempt_count();
+-
+- if (!preempt_trace(pc) && irq_trace())
+- stop_critical_timing(a0, a1, pc);
++ if (!preempt_trace(preempt_count()) && irq_trace())
++ stop_critical_timing(a0, a1);
+ }
+ NOKPROBE_SYMBOL(tracer_hardirqs_on);
+
+ void tracer_hardirqs_off(unsigned long a0, unsigned long a1)
+ {
+- unsigned int pc = preempt_count();
+-
+- if (!preempt_trace(pc) && irq_trace())
+- start_critical_timing(a0, a1, pc);
++ if (!preempt_trace(preempt_count()) && irq_trace())
++ start_critical_timing(a0, a1);
+ }
+ NOKPROBE_SYMBOL(tracer_hardirqs_off);
+
+@@ -666,18 +656,14 @@ static struct tracer irqsoff_tracer __read_mostly =
+ #ifdef CONFIG_PREEMPT_TRACER
+ void tracer_preempt_on(unsigned long a0, unsigned long a1)
+ {
+- int pc = preempt_count();
+-
+- if (preempt_trace(pc) && !irq_trace())
+- stop_critical_timing(a0, a1, pc);
++ if (preempt_trace(preempt_count()) && !irq_trace())
++ stop_critical_timing(a0, a1);
+ }
+
+ void tracer_preempt_off(unsigned long a0, unsigned long a1)
+ {
+- int pc = preempt_count();
+-
+- if (preempt_trace(pc) && !irq_trace())
+- start_critical_timing(a0, a1, pc);
++ if (preempt_trace(preempt_count()) && !irq_trace())
++ start_critical_timing(a0, a1);
+ }
+
+ static int preemptoff_tracer_init(struct trace_array *tr)
+diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
+index 718357289899..a2478605e761 100644
+--- a/kernel/trace/trace_kprobe.c
++++ b/kernel/trace/trace_kprobe.c
+@@ -1394,8 +1394,7 @@ __kprobe_trace_func(struct trace_kprobe *tk, struct pt_regs *regs,
+ if (trace_trigger_soft_disabled(trace_file))
+ return;
+
+- local_save_flags(fbuffer.flags);
+- fbuffer.pc = preempt_count();
++ fbuffer.trace_ctx = tracing_gen_ctx();
+ fbuffer.trace_file = trace_file;
+
+ dsize = __get_data_size(&tk->tp, regs);
+@@ -1404,7 +1403,7 @@ __kprobe_trace_func(struct trace_kprobe *tk, struct pt_regs *regs,
+ trace_event_buffer_lock_reserve(&fbuffer.buffer, trace_file,
+ call->event.type,
+ sizeof(*entry) + tk->tp.size + dsize,
+- fbuffer.flags, fbuffer.pc);
++ fbuffer.trace_ctx);
+ if (!fbuffer.event)
+ return;
+
+@@ -1442,8 +1441,7 @@ __kretprobe_trace_func(struct trace_kprobe *tk, struct kretprobe_instance *ri,
+ if (trace_trigger_soft_disabled(trace_file))
+ return;
+
+- local_save_flags(fbuffer.flags);
+- fbuffer.pc = preempt_count();
++ fbuffer.trace_ctx = tracing_gen_ctx();
+ fbuffer.trace_file = trace_file;
+
+ dsize = __get_data_size(&tk->tp, regs);
+@@ -1451,7 +1449,7 @@ __kretprobe_trace_func(struct trace_kprobe *tk, struct kretprobe_instance *ri,
+ trace_event_buffer_lock_reserve(&fbuffer.buffer, trace_file,
+ call->event.type,
+ sizeof(*entry) + tk->tp.size + dsize,
+- fbuffer.flags, fbuffer.pc);
++ fbuffer.trace_ctx);
+ if (!fbuffer.event)
+ return;
+
+diff --git a/kernel/trace/trace_mmiotrace.c b/kernel/trace/trace_mmiotrace.c
+index 84582bf1ed5f..7221ae0b4c47 100644
+--- a/kernel/trace/trace_mmiotrace.c
++++ b/kernel/trace/trace_mmiotrace.c
+@@ -300,10 +300,11 @@ static void __trace_mmiotrace_rw(struct trace_array *tr,
+ struct trace_buffer *buffer = tr->array_buffer.buffer;
+ struct ring_buffer_event *event;
+ struct trace_mmiotrace_rw *entry;
+- int pc = preempt_count();
++ unsigned int trace_ctx;
+
++ trace_ctx = tracing_gen_ctx_flags(0);
+ event = trace_buffer_lock_reserve(buffer, TRACE_MMIO_RW,
+- sizeof(*entry), 0, pc);
++ sizeof(*entry), trace_ctx);
+ if (!event) {
+ atomic_inc(&dropped_count);
+ return;
+@@ -312,7 +313,7 @@ static void __trace_mmiotrace_rw(struct trace_array *tr,
+ entry->rw = *rw;
+
+ if (!call_filter_check_discard(call, entry, buffer, event))
+- trace_buffer_unlock_commit(tr, buffer, event, 0, pc);
++ trace_buffer_unlock_commit(tr, buffer, event, trace_ctx);
+ }
+
+ void mmio_trace_rw(struct mmiotrace_rw *rw)
+@@ -330,10 +331,11 @@ static void __trace_mmiotrace_map(struct trace_array *tr,
+ struct trace_buffer *buffer = tr->array_buffer.buffer;
+ struct ring_buffer_event *event;
+ struct trace_mmiotrace_map *entry;
+- int pc = preempt_count();
++ unsigned int trace_ctx;
+
++ trace_ctx = tracing_gen_ctx_flags(0);
+ event = trace_buffer_lock_reserve(buffer, TRACE_MMIO_MAP,
+- sizeof(*entry), 0, pc);
++ sizeof(*entry), trace_ctx);
+ if (!event) {
+ atomic_inc(&dropped_count);
+ return;
+@@ -342,7 +344,7 @@ static void __trace_mmiotrace_map(struct trace_array *tr,
+ entry->map = *map;
+
+ if (!call_filter_check_discard(call, entry, buffer, event))
+- trace_buffer_unlock_commit(tr, buffer, event, 0, pc);
++ trace_buffer_unlock_commit(tr, buffer, event, trace_ctx);
+ }
+
+ void mmio_trace_mapping(struct mmiotrace_map *map)
+diff --git a/kernel/trace/trace_sched_wakeup.c b/kernel/trace/trace_sched_wakeup.c
+index 037e1e863b17..c1f582e0e97f 100644
+--- a/kernel/trace/trace_sched_wakeup.c
++++ b/kernel/trace/trace_sched_wakeup.c
+@@ -67,7 +67,7 @@ static bool function_enabled;
+ static int
+ func_prolog_preempt_disable(struct trace_array *tr,
+ struct trace_array_cpu **data,
+- int *pc)
++ unsigned int *trace_ctx)
+ {
+ long disabled;
+ int cpu;
+@@ -75,7 +75,7 @@ func_prolog_preempt_disable(struct trace_array *tr,
+ if (likely(!wakeup_task))
+ return 0;
+
+- *pc = preempt_count();
++ *trace_ctx = tracing_gen_ctx();
+ preempt_disable_notrace();
+
+ cpu = raw_smp_processor_id();
+@@ -116,8 +116,8 @@ static int wakeup_graph_entry(struct ftrace_graph_ent *trace)
+ {
+ struct trace_array *tr = wakeup_trace;
+ struct trace_array_cpu *data;
+- unsigned long flags;
+- int pc, ret = 0;
++ unsigned int trace_ctx;
++ int ret = 0;
+
+ if (ftrace_graph_ignore_func(trace))
+ return 0;
+@@ -131,11 +131,10 @@ static int wakeup_graph_entry(struct ftrace_graph_ent *trace)
+ if (ftrace_graph_notrace_addr(trace->func))
+ return 1;
+
+- if (!func_prolog_preempt_disable(tr, &data, &pc))
++ if (!func_prolog_preempt_disable(tr, &data, &trace_ctx))
+ return 0;
+
+- local_save_flags(flags);
+- ret = __trace_graph_entry(tr, trace, flags, pc);
++ ret = __trace_graph_entry(tr, trace, trace_ctx);
+ atomic_dec(&data->disabled);
+ preempt_enable_notrace();
+
+@@ -146,16 +145,14 @@ static void wakeup_graph_return(struct ftrace_graph_ret *trace)
+ {
+ struct trace_array *tr = wakeup_trace;
+ struct trace_array_cpu *data;
+- unsigned long flags;
+- int pc;
++ unsigned int trace_ctx;
+
+ ftrace_graph_addr_finish(trace);
+
+- if (!func_prolog_preempt_disable(tr, &data, &pc))
++ if (!func_prolog_preempt_disable(tr, &data, &trace_ctx))
+ return;
+
+- local_save_flags(flags);
+- __trace_graph_return(tr, trace, flags, pc);
++ __trace_graph_return(tr, trace, trace_ctx);
+ atomic_dec(&data->disabled);
+
+ preempt_enable_notrace();
+@@ -219,13 +216,13 @@ wakeup_tracer_call(unsigned long ip, unsigned long parent_ip,
+ struct trace_array *tr = wakeup_trace;
+ struct trace_array_cpu *data;
+ unsigned long flags;
+- int pc;
++ unsigned int trace_ctx;
+
+- if (!func_prolog_preempt_disable(tr, &data, &pc))
++ if (!func_prolog_preempt_disable(tr, &data, &trace_ctx))
+ return;
+
+ local_irq_save(flags);
+- trace_function(tr, ip, parent_ip, flags, pc);
++ trace_function(tr, ip, parent_ip, trace_ctx);
+ local_irq_restore(flags);
+
+ atomic_dec(&data->disabled);
+@@ -305,12 +302,12 @@ static void wakeup_print_header(struct seq_file *s)
+ static void
+ __trace_function(struct trace_array *tr,
+ unsigned long ip, unsigned long parent_ip,
+- unsigned long flags, int pc)
++ unsigned int trace_ctx)
+ {
+ if (is_graph(tr))
+- trace_graph_function(tr, ip, parent_ip, flags, pc);
++ trace_graph_function(tr, ip, parent_ip, trace_ctx);
+ else
+- trace_function(tr, ip, parent_ip, flags, pc);
++ trace_function(tr, ip, parent_ip, trace_ctx);
+ }
+
+ static int wakeup_flag_changed(struct trace_array *tr, u32 mask, int set)
+@@ -377,7 +374,7 @@ static void
+ tracing_sched_switch_trace(struct trace_array *tr,
+ struct task_struct *prev,
+ struct task_struct *next,
+- unsigned long flags, int pc)
++ unsigned int trace_ctx)
+ {
+ struct trace_event_call *call = &event_context_switch;
+ struct trace_buffer *buffer = tr->array_buffer.buffer;
+@@ -385,7 +382,7 @@ tracing_sched_switch_trace(struct trace_array *tr,
+ struct ctx_switch_entry *entry;
+
+ event = trace_buffer_lock_reserve(buffer, TRACE_CTX,
+- sizeof(*entry), flags, pc);
++ sizeof(*entry), trace_ctx);
+ if (!event)
+ return;
+ entry = ring_buffer_event_data(event);
+@@ -398,14 +395,14 @@ tracing_sched_switch_trace(struct trace_array *tr,
+ entry->next_cpu = task_cpu(next);
+
+ if (!call_filter_check_discard(call, entry, buffer, event))
+- trace_buffer_unlock_commit(tr, buffer, event, flags, pc);
++ trace_buffer_unlock_commit(tr, buffer, event, trace_ctx);
+ }
+
+ static void
+ tracing_sched_wakeup_trace(struct trace_array *tr,
+ struct task_struct *wakee,
+ struct task_struct *curr,
+- unsigned long flags, int pc)
++ unsigned int trace_ctx)
+ {
+ struct trace_event_call *call = &event_wakeup;
+ struct ring_buffer_event *event;
+@@ -413,7 +410,7 @@ tracing_sched_wakeup_trace(struct trace_array *tr,
+ struct trace_buffer *buffer = tr->array_buffer.buffer;
+
+ event = trace_buffer_lock_reserve(buffer, TRACE_WAKE,
+- sizeof(*entry), flags, pc);
++ sizeof(*entry), trace_ctx);
+ if (!event)
+ return;
+ entry = ring_buffer_event_data(event);
+@@ -426,7 +423,7 @@ tracing_sched_wakeup_trace(struct trace_array *tr,
+ entry->next_cpu = task_cpu(wakee);
+
+ if (!call_filter_check_discard(call, entry, buffer, event))
+- trace_buffer_unlock_commit(tr, buffer, event, flags, pc);
++ trace_buffer_unlock_commit(tr, buffer, event, trace_ctx);
+ }
+
+ static void notrace
+@@ -438,7 +435,7 @@ probe_wakeup_sched_switch(void *ignore, bool preempt,
+ unsigned long flags;
+ long disabled;
+ int cpu;
+- int pc;
++ unsigned int trace_ctx;
+
+ tracing_record_cmdline(prev);
+
+@@ -457,8 +454,6 @@ probe_wakeup_sched_switch(void *ignore, bool preempt,
+ if (next != wakeup_task)
+ return;
+
+- pc = preempt_count();
+-
+ /* disable local data, not wakeup_cpu data */
+ cpu = raw_smp_processor_id();
+ disabled = atomic_inc_return(&per_cpu_ptr(wakeup_trace->array_buffer.data, cpu)->disabled);
+@@ -466,6 +461,8 @@ probe_wakeup_sched_switch(void *ignore, bool preempt,
+ goto out;
+
+ local_irq_save(flags);
++ trace_ctx = tracing_gen_ctx_flags(flags);
++
+ arch_spin_lock(&wakeup_lock);
+
+ /* We could race with grabbing wakeup_lock */
+@@ -475,9 +472,9 @@ probe_wakeup_sched_switch(void *ignore, bool preempt,
+ /* The task we are waiting for is waking up */
+ data = per_cpu_ptr(wakeup_trace->array_buffer.data, wakeup_cpu);
+
+- __trace_function(wakeup_trace, CALLER_ADDR0, CALLER_ADDR1, flags, pc);
+- tracing_sched_switch_trace(wakeup_trace, prev, next, flags, pc);
+- __trace_stack(wakeup_trace, flags, 0, pc);
++ __trace_function(wakeup_trace, CALLER_ADDR0, CALLER_ADDR1, trace_ctx);
++ tracing_sched_switch_trace(wakeup_trace, prev, next, trace_ctx);
++ __trace_stack(wakeup_trace, trace_ctx, 0);
+
+ T0 = data->preempt_timestamp;
+ T1 = ftrace_now(cpu);
+@@ -529,9 +526,8 @@ probe_wakeup(void *ignore, struct task_struct *p)
+ {
+ struct trace_array_cpu *data;
+ int cpu = smp_processor_id();
+- unsigned long flags;
+ long disabled;
+- int pc;
++ unsigned int trace_ctx;
+
+ if (likely(!tracer_enabled))
+ return;
+@@ -552,11 +548,12 @@ probe_wakeup(void *ignore, struct task_struct *p)
+ (!dl_task(p) && (p->prio >= wakeup_prio || p->prio >= current->prio)))
+ return;
+
+- pc = preempt_count();
+ disabled = atomic_inc_return(&per_cpu_ptr(wakeup_trace->array_buffer.data, cpu)->disabled);
+ if (unlikely(disabled != 1))
+ goto out;
+
++ trace_ctx = tracing_gen_ctx();
++
+ /* interrupts should be off from try_to_wake_up */
+ arch_spin_lock(&wakeup_lock);
+
+@@ -583,19 +580,17 @@ probe_wakeup(void *ignore, struct task_struct *p)
+
+ wakeup_task = get_task_struct(p);
+
+- local_save_flags(flags);
+-
+ data = per_cpu_ptr(wakeup_trace->array_buffer.data, wakeup_cpu);
+ data->preempt_timestamp = ftrace_now(cpu);
+- tracing_sched_wakeup_trace(wakeup_trace, p, current, flags, pc);
+- __trace_stack(wakeup_trace, flags, 0, pc);
++ tracing_sched_wakeup_trace(wakeup_trace, p, current, trace_ctx);
++ __trace_stack(wakeup_trace, trace_ctx, 0);
+
+ /*
+ * We must be careful in using CALLER_ADDR2. But since wake_up
+ * is not called by an assembly function (where as schedule is)
+ * it should be safe to use it here.
+ */
+- __trace_function(wakeup_trace, CALLER_ADDR1, CALLER_ADDR2, flags, pc);
++ __trace_function(wakeup_trace, CALLER_ADDR1, CALLER_ADDR2, trace_ctx);
+
+ out_locked:
+ arch_spin_unlock(&wakeup_lock);
+diff --git a/kernel/trace/trace_syscalls.c b/kernel/trace/trace_syscalls.c
+index d85a2f0f316b..8bfcd3b09422 100644
+--- a/kernel/trace/trace_syscalls.c
++++ b/kernel/trace/trace_syscalls.c
+@@ -298,9 +298,8 @@ static void ftrace_syscall_enter(void *data, struct pt_regs *regs, long id)
+ struct syscall_metadata *sys_data;
+ struct ring_buffer_event *event;
+ struct trace_buffer *buffer;
+- unsigned long irq_flags;
++ unsigned int trace_ctx;
+ unsigned long args[6];
+- int pc;
+ int syscall_nr;
+ int size;
+
+@@ -322,12 +321,11 @@ static void ftrace_syscall_enter(void *data, struct pt_regs *regs, long id)
+
+ size = sizeof(*entry) + sizeof(unsigned long) * sys_data->nb_args;
+
+- local_save_flags(irq_flags);
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx();
+
+ buffer = tr->array_buffer.buffer;
+ event = trace_buffer_lock_reserve(buffer,
+- sys_data->enter_event->event.type, size, irq_flags, pc);
++ sys_data->enter_event->event.type, size, trace_ctx);
+ if (!event)
+ return;
+
+@@ -337,7 +335,7 @@ static void ftrace_syscall_enter(void *data, struct pt_regs *regs, long id)
+ memcpy(entry->args, args, sizeof(unsigned long) * sys_data->nb_args);
+
+ event_trigger_unlock_commit(trace_file, buffer, event, entry,
+- irq_flags, pc);
++ trace_ctx);
+ }
+
+ static void ftrace_syscall_exit(void *data, struct pt_regs *regs, long ret)
+@@ -348,8 +346,7 @@ static void ftrace_syscall_exit(void *data, struct pt_regs *regs, long ret)
+ struct syscall_metadata *sys_data;
+ struct ring_buffer_event *event;
+ struct trace_buffer *buffer;
+- unsigned long irq_flags;
+- int pc;
++ unsigned int trace_ctx;
+ int syscall_nr;
+
+ syscall_nr = trace_get_syscall_nr(current, regs);
+@@ -368,13 +365,12 @@ static void ftrace_syscall_exit(void *data, struct pt_regs *regs, long ret)
+ if (!sys_data)
+ return;
+
+- local_save_flags(irq_flags);
+- pc = preempt_count();
++ trace_ctx = tracing_gen_ctx();
+
+ buffer = tr->array_buffer.buffer;
+ event = trace_buffer_lock_reserve(buffer,
+ sys_data->exit_event->event.type, sizeof(*entry),
+- irq_flags, pc);
++ trace_ctx);
+ if (!event)
+ return;
+
+@@ -383,7 +379,7 @@ static void ftrace_syscall_exit(void *data, struct pt_regs *regs, long ret)
+ entry->ret = syscall_get_return_value(current, regs);
+
+ event_trigger_unlock_commit(trace_file, buffer, event, entry,
+- irq_flags, pc);
++ trace_ctx);
+ }
+
+ static int reg_event_syscall_enter(struct trace_event_file *file,
+diff --git a/kernel/trace/trace_uprobe.c b/kernel/trace/trace_uprobe.c
+index 60ff36f5d7f9..0b07bb07127d 100644
+--- a/kernel/trace/trace_uprobe.c
++++ b/kernel/trace/trace_uprobe.c
+@@ -966,7 +966,7 @@ static void __uprobe_trace_func(struct trace_uprobe *tu,
+ esize = SIZEOF_TRACE_ENTRY(is_ret_probe(tu));
+ size = esize + tu->tp.size + dsize;
+ event = trace_event_buffer_lock_reserve(&buffer, trace_file,
+- call->event.type, size, 0, 0);
++ call->event.type, size, 0);
+ if (!event)
+ return;
+
+@@ -982,7 +982,7 @@ static void __uprobe_trace_func(struct trace_uprobe *tu,
+
+ memcpy(data, ucb->buf, tu->tp.size + dsize);
+
+- event_trigger_unlock_commit(trace_file, buffer, event, entry, 0, 0);
++ event_trigger_unlock_commit(trace_file, buffer, event, entry, 0);
+ }
+
+ /* uprobe handler */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0077-tracing-Inline-tracing_gen_ctx_flags.patch b/debian/patches-rt/0077-tracing-Inline-tracing_gen_ctx_flags.patch
new file mode 100644
index 000000000..38993b6b8
--- /dev/null
+++ b/debian/patches-rt/0077-tracing-Inline-tracing_gen_ctx_flags.patch
@@ -0,0 +1,184 @@
+From 49d76ea7e195eb08b5c73a3a11dba066afd40070 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 3 Feb 2021 11:05:24 -0500
+Subject: [PATCH 077/323] tracing: Inline tracing_gen_ctx_flags()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Inline tracing_gen_ctx_flags(). This allows to have one ifdef
+CONFIG_TRACE_IRQFLAGS_SUPPORT.
+
+This requires to move `trace_flag_type' so tracing_gen_ctx_flags() can
+use it.
+
+Link: https://lkml.kernel.org/r/20210125194511.3924915-3-bigeasy@linutronix.de
+
+Suggested-by: Steven Rostedt <rostedt@goodmis.org>
+Link: https://lkml.kernel.org/r/20210125140323.6b1ff20c@gandalf.local.home
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/trace_events.h | 54 ++++++++++++++++++++++++++++++++++--
+ kernel/trace/trace.c | 38 ++-----------------------
+ kernel/trace/trace.h | 19 -------------
+ 3 files changed, 53 insertions(+), 58 deletions(-)
+
+diff --git a/include/linux/trace_events.h b/include/linux/trace_events.h
+index 2a98c40526a0..c4b0524582d8 100644
+--- a/include/linux/trace_events.h
++++ b/include/linux/trace_events.h
+@@ -164,9 +164,57 @@ static inline void tracing_generic_entry_update(struct trace_entry *entry,
+ entry->flags = trace_ctx >> 16;
+ }
+
+-unsigned int tracing_gen_ctx_flags(unsigned long irqflags);
+-unsigned int tracing_gen_ctx(void);
+-unsigned int tracing_gen_ctx_dec(void);
++unsigned int tracing_gen_ctx_irq_test(unsigned int irqs_status);
++
++enum trace_flag_type {
++ TRACE_FLAG_IRQS_OFF = 0x01,
++ TRACE_FLAG_IRQS_NOSUPPORT = 0x02,
++ TRACE_FLAG_NEED_RESCHED = 0x04,
++ TRACE_FLAG_HARDIRQ = 0x08,
++ TRACE_FLAG_SOFTIRQ = 0x10,
++ TRACE_FLAG_PREEMPT_RESCHED = 0x20,
++ TRACE_FLAG_NMI = 0x40,
++};
++
++#ifdef CONFIG_TRACE_IRQFLAGS_SUPPORT
++static inline unsigned int tracing_gen_ctx_flags(unsigned long irqflags)
++{
++ unsigned int irq_status = irqs_disabled_flags(irqflags) ?
++ TRACE_FLAG_IRQS_OFF : 0;
++ return tracing_gen_ctx_irq_test(irq_status);
++}
++static inline unsigned int tracing_gen_ctx(void)
++{
++ unsigned long irqflags;
++
++ local_save_flags(irqflags);
++ return tracing_gen_ctx_flags(irqflags);
++}
++#else
++
++static inline unsigned int tracing_gen_ctx_flags(unsigned long irqflags)
++{
++ return tracing_gen_ctx_irq_test(TRACE_FLAG_IRQS_NOSUPPORT);
++}
++static inline unsigned int tracing_gen_ctx(void)
++{
++ return tracing_gen_ctx_irq_test(TRACE_FLAG_IRQS_NOSUPPORT);
++}
++#endif
++
++static inline unsigned int tracing_gen_ctx_dec(void)
++{
++ unsigned int trace_ctx;
++
++ trace_ctx = tracing_gen_ctx();
++ /*
++ * Subtract one from the preeption counter if preemption is enabled,
++ * see trace_event_buffer_reserve()for details.
++ */
++ if (IS_ENABLED(CONFIG_PREEMPTION))
++ trace_ctx--;
++ return trace_ctx;
++}
+
+ struct trace_event_file;
+
+diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
+index 376eb8a1c913..733ef9230c73 100644
+--- a/kernel/trace/trace.c
++++ b/kernel/trace/trace.c
+@@ -2575,20 +2575,13 @@ enum print_line_t trace_handle_return(struct trace_seq *s)
+ }
+ EXPORT_SYMBOL_GPL(trace_handle_return);
+
+-unsigned int tracing_gen_ctx_flags(unsigned long irqflags)
++unsigned int tracing_gen_ctx_irq_test(unsigned int irqs_status)
+ {
+- unsigned int trace_flags = 0;
++ unsigned int trace_flags = irqs_status;
+ unsigned int pc;
+
+ pc = preempt_count();
+
+-#ifdef CONFIG_TRACE_IRQFLAGS_SUPPORT
+- if (irqs_disabled_flags(irqflags))
+- trace_flags |= TRACE_FLAG_IRQS_OFF;
+-#else
+- trace_flags |= TRACE_FLAG_IRQS_NOSUPPORT;
+-#endif
+-
+ if (pc & NMI_MASK)
+ trace_flags |= TRACE_FLAG_NMI;
+ if (pc & HARDIRQ_MASK)
+@@ -2604,33 +2597,6 @@ unsigned int tracing_gen_ctx_flags(unsigned long irqflags)
+ return (trace_flags << 16) | (pc & 0xff);
+ }
+
+-unsigned int tracing_gen_ctx(void)
+-{
+- unsigned long irqflags;
+-
+-#ifdef CONFIG_TRACE_IRQFLAGS_SUPPORT
+- local_save_flags(irqflags);
+-#else
+- irqflags = 0;
+-#endif
+- return tracing_gen_ctx_flags(irqflags);
+-}
+-
+-unsigned int tracing_gen_ctx_dec(void)
+-{
+- unsigned int trace_ctx;
+-
+- trace_ctx = tracing_gen_ctx();
+-
+- /*
+- * Subtract one from the preeption counter if preemption is enabled,
+- * see trace_event_buffer_reserve()for details.
+- */
+- if (IS_ENABLED(CONFIG_PREEMPTION))
+- trace_ctx--;
+- return trace_ctx;
+-}
+-
+ struct ring_buffer_event *
+ trace_buffer_lock_reserve(struct trace_buffer *buffer,
+ int type,
+diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h
+index 27ed42bccd7f..40e5ee987578 100644
+--- a/kernel/trace/trace.h
++++ b/kernel/trace/trace.h
+@@ -136,25 +136,6 @@ struct kretprobe_trace_entry_head {
+ unsigned long ret_ip;
+ };
+
+-/*
+- * trace_flag_type is an enumeration that holds different
+- * states when a trace occurs. These are:
+- * IRQS_OFF - interrupts were disabled
+- * IRQS_NOSUPPORT - arch does not support irqs_disabled_flags
+- * NEED_RESCHED - reschedule is requested
+- * HARDIRQ - inside an interrupt handler
+- * SOFTIRQ - inside a softirq handler
+- */
+-enum trace_flag_type {
+- TRACE_FLAG_IRQS_OFF = 0x01,
+- TRACE_FLAG_IRQS_NOSUPPORT = 0x02,
+- TRACE_FLAG_NEED_RESCHED = 0x04,
+- TRACE_FLAG_HARDIRQ = 0x08,
+- TRACE_FLAG_SOFTIRQ = 0x10,
+- TRACE_FLAG_PREEMPT_RESCHED = 0x20,
+- TRACE_FLAG_NMI = 0x40,
+-};
+-
+ #define TRACE_BUF_SIZE 1024
+
+ struct trace_array;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0078-tracing-Use-in_serving_softirq-to-deduct-softirq-sta.patch b/debian/patches-rt/0078-tracing-Use-in_serving_softirq-to-deduct-softirq-sta.patch
new file mode 100644
index 000000000..32411e1ff
--- /dev/null
+++ b/debian/patches-rt/0078-tracing-Use-in_serving_softirq-to-deduct-softirq-sta.patch
@@ -0,0 +1,48 @@
+From 1a49f21b61e919dbef7c948009870a1f1ba31270 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 3 Feb 2021 11:05:25 -0500
+Subject: [PATCH 078/323] tracing: Use in_serving_softirq() to deduct softirq
+ status.
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+PREEMPT_RT does not report "serving softirq" because the tracing core
+looks at the preemption counter while PREEMPT_RT does not update it
+while processing softirqs in order to remain preemptible. The
+information is stored somewhere else.
+The in_serving_softirq() macro and the SOFTIRQ_OFFSET define are still
+working but not on the preempt-counter.
+
+Use in_serving_softirq() macro which works on PREEMPT_RT. On !PREEMPT_RT
+the compiler (gcc-10 / clang-11) is smart enough to optimize the
+in_serving_softirq() related read of the preemption counter away.
+The only difference I noticed by using in_serving_softirq() on
+!PREEMPT_RT is that gcc-10 implemented tracing_gen_ctx_flags() as
+reading FLAG, jmp _tracing_gen_ctx_flags(). Without in_serving_softirq()
+it inlined _tracing_gen_ctx_flags() into tracing_gen_ctx_flags().
+
+Link: https://lkml.kernel.org/r/20210125194511.3924915-4-bigeasy@linutronix.de
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/trace/trace.c | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
+index 733ef9230c73..70ab6b46ef8f 100644
+--- a/kernel/trace/trace.c
++++ b/kernel/trace/trace.c
+@@ -2586,8 +2586,7 @@ unsigned int tracing_gen_ctx_irq_test(unsigned int irqs_status)
+ trace_flags |= TRACE_FLAG_NMI;
+ if (pc & HARDIRQ_MASK)
+ trace_flags |= TRACE_FLAG_HARDIRQ;
+-
+- if (pc & SOFTIRQ_OFFSET)
++ if (in_serving_softirq())
+ trace_flags |= TRACE_FLAG_SOFTIRQ;
+
+ if (tif_need_resched())
+--
+2.43.0
+
diff --git a/debian/patches-rt/0079-tracing-Remove-NULL-check-from-current-in-tracing_ge.patch b/debian/patches-rt/0079-tracing-Remove-NULL-check-from-current-in-tracing_ge.patch
new file mode 100644
index 000000000..5853f5af4
--- /dev/null
+++ b/debian/patches-rt/0079-tracing-Remove-NULL-check-from-current-in-tracing_ge.patch
@@ -0,0 +1,43 @@
+From 76993b5cd21ad0898e6d940ea5fe0449dec94465 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 3 Feb 2021 11:05:26 -0500
+Subject: [PATCH 079/323] tracing: Remove NULL check from current in
+ tracing_generic_entry_update().
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+I can't imagine when or why `current' would return a NULL pointer. This
+check was added in commit
+ 72829bc3d63cd ("ftrace: move enums to ftrace.h and make helper function global")
+
+but it doesn't give me hint why it was needed.
+
+Assume `current' never returns a NULL pointer and remove the check.
+
+Link: https://lkml.kernel.org/r/20210125194511.3924915-5-bigeasy@linutronix.de
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/trace_events.h | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/include/linux/trace_events.h b/include/linux/trace_events.h
+index c4b0524582d8..2fea9fcd4d4e 100644
+--- a/include/linux/trace_events.h
++++ b/include/linux/trace_events.h
+@@ -156,10 +156,8 @@ static inline void tracing_generic_entry_update(struct trace_entry *entry,
+ unsigned short type,
+ unsigned int trace_ctx)
+ {
+- struct task_struct *tsk = current;
+-
+ entry->preempt_count = trace_ctx & 0xff;
+- entry->pid = (tsk) ? tsk->pid : 0;
++ entry->pid = current->pid;
+ entry->type = type;
+ entry->flags = trace_ctx >> 16;
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0080-printk-inline-log_output-log_store-in-vprintk_store.patch b/debian/patches-rt/0080-printk-inline-log_output-log_store-in-vprintk_store.patch
new file mode 100644
index 000000000..3a67cf2f5
--- /dev/null
+++ b/debian/patches-rt/0080-printk-inline-log_output-log_store-in-vprintk_store.patch
@@ -0,0 +1,201 @@
+From fe124333809d2e0a0926d5609f78bafffc62f539 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Wed, 9 Dec 2020 01:50:52 +0106
+Subject: [PATCH 080/323] printk: inline log_output(),log_store() in
+ vprintk_store()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+In preparation for removing logbuf_lock, inline log_output()
+and log_store() into vprintk_store(). This will simplify dealing
+with the various code branches and fallbacks that are possible.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Reviewed-by: Petr Mladek <pmladek@suse.com>
+Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
+Signed-off-by: Petr Mladek <pmladek@suse.com>
+Link: https://lore.kernel.org/r/20201209004453.17720-2-john.ogness@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/printk.c | 145 +++++++++++++++++++----------------------
+ 1 file changed, 67 insertions(+), 78 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 17a310dcb6d9..9a7c2b561e6d 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -493,52 +493,6 @@ static void truncate_msg(u16 *text_len, u16 *trunc_msg_len)
+ *trunc_msg_len = 0;
+ }
+
+-/* insert record into the buffer, discard old ones, update heads */
+-static int log_store(u32 caller_id, int facility, int level,
+- enum log_flags flags, u64 ts_nsec,
+- const struct dev_printk_info *dev_info,
+- const char *text, u16 text_len)
+-{
+- struct prb_reserved_entry e;
+- struct printk_record r;
+- u16 trunc_msg_len = 0;
+-
+- prb_rec_init_wr(&r, text_len);
+-
+- if (!prb_reserve(&e, prb, &r)) {
+- /* truncate the message if it is too long for empty buffer */
+- truncate_msg(&text_len, &trunc_msg_len);
+- prb_rec_init_wr(&r, text_len + trunc_msg_len);
+- /* survive when the log buffer is too small for trunc_msg */
+- if (!prb_reserve(&e, prb, &r))
+- return 0;
+- }
+-
+- /* fill message */
+- memcpy(&r.text_buf[0], text, text_len);
+- if (trunc_msg_len)
+- memcpy(&r.text_buf[text_len], trunc_msg, trunc_msg_len);
+- r.info->text_len = text_len + trunc_msg_len;
+- r.info->facility = facility;
+- r.info->level = level & 7;
+- r.info->flags = flags & 0x1f;
+- if (ts_nsec > 0)
+- r.info->ts_nsec = ts_nsec;
+- else
+- r.info->ts_nsec = local_clock();
+- r.info->caller_id = caller_id;
+- if (dev_info)
+- memcpy(&r.info->dev_info, dev_info, sizeof(r.info->dev_info));
+-
+- /* A message without a trailing newline can be continued. */
+- if (!(flags & LOG_NEWLINE))
+- prb_commit(&e);
+- else
+- prb_final_commit(&e);
+-
+- return (text_len + trunc_msg_len);
+-}
+-
+ int dmesg_restrict = IS_ENABLED(CONFIG_SECURITY_DMESG_RESTRICT);
+
+ static int syslog_action_restricted(int type)
+@@ -1933,44 +1887,28 @@ static inline u32 printk_caller_id(void)
+ 0x80000000 + raw_smp_processor_id();
+ }
+
+-static size_t log_output(int facility, int level, enum log_flags lflags,
+- const struct dev_printk_info *dev_info,
+- char *text, size_t text_len)
+-{
+- const u32 caller_id = printk_caller_id();
+-
+- if (lflags & LOG_CONT) {
+- struct prb_reserved_entry e;
+- struct printk_record r;
+-
+- prb_rec_init_wr(&r, text_len);
+- if (prb_reserve_in_last(&e, prb, &r, caller_id, LOG_LINE_MAX)) {
+- memcpy(&r.text_buf[r.info->text_len], text, text_len);
+- r.info->text_len += text_len;
+- if (lflags & LOG_NEWLINE) {
+- r.info->flags |= LOG_NEWLINE;
+- prb_final_commit(&e);
+- } else {
+- prb_commit(&e);
+- }
+- return text_len;
+- }
+- }
+-
+- /* Store it in the record log */
+- return log_store(caller_id, facility, level, lflags, 0,
+- dev_info, text, text_len);
+-}
+-
+ /* Must be called under logbuf_lock. */
+ int vprintk_store(int facility, int level,
+ const struct dev_printk_info *dev_info,
+ const char *fmt, va_list args)
+ {
++ const u32 caller_id = printk_caller_id();
+ static char textbuf[LOG_LINE_MAX];
+- char *text = textbuf;
+- size_t text_len;
++ struct prb_reserved_entry e;
+ enum log_flags lflags = 0;
++ struct printk_record r;
++ u16 trunc_msg_len = 0;
++ char *text = textbuf;
++ u16 text_len;
++ u64 ts_nsec;
++
++ /*
++ * Since the duration of printk() can vary depending on the message
++ * and state of the ringbuffer, grab the timestamp now so that it is
++ * close to the call of printk(). This provides a more deterministic
++ * timestamp with respect to the caller.
++ */
++ ts_nsec = local_clock();
+
+ /*
+ * The printf needs to come first; we need the syslog
+@@ -2009,7 +1947,58 @@ int vprintk_store(int facility, int level,
+ if (dev_info)
+ lflags |= LOG_NEWLINE;
+
+- return log_output(facility, level, lflags, dev_info, text, text_len);
++ if (lflags & LOG_CONT) {
++ prb_rec_init_wr(&r, text_len);
++ if (prb_reserve_in_last(&e, prb, &r, caller_id, LOG_LINE_MAX)) {
++ memcpy(&r.text_buf[r.info->text_len], text, text_len);
++ r.info->text_len += text_len;
++
++ if (lflags & LOG_NEWLINE) {
++ r.info->flags |= LOG_NEWLINE;
++ prb_final_commit(&e);
++ } else {
++ prb_commit(&e);
++ }
++
++ return text_len;
++ }
++ }
++
++ /*
++ * Explicitly initialize the record before every prb_reserve() call.
++ * prb_reserve_in_last() and prb_reserve() purposely invalidate the
++ * structure when they fail.
++ */
++ prb_rec_init_wr(&r, text_len);
++ if (!prb_reserve(&e, prb, &r)) {
++ /* truncate the message if it is too long for empty buffer */
++ truncate_msg(&text_len, &trunc_msg_len);
++
++ prb_rec_init_wr(&r, text_len + trunc_msg_len);
++ if (!prb_reserve(&e, prb, &r))
++ return 0;
++ }
++
++ /* fill message */
++ memcpy(&r.text_buf[0], text, text_len);
++ if (trunc_msg_len)
++ memcpy(&r.text_buf[text_len], trunc_msg, trunc_msg_len);
++ r.info->text_len = text_len + trunc_msg_len;
++ r.info->facility = facility;
++ r.info->level = level & 7;
++ r.info->flags = lflags & 0x1f;
++ r.info->ts_nsec = ts_nsec;
++ r.info->caller_id = caller_id;
++ if (dev_info)
++ memcpy(&r.info->dev_info, dev_info, sizeof(r.info->dev_info));
++
++ /* A message without a trailing newline can be continued. */
++ if (!(lflags & LOG_NEWLINE))
++ prb_commit(&e);
++ else
++ prb_final_commit(&e);
++
++ return (text_len + trunc_msg_len);
+ }
+
+ asmlinkage int vprintk_emit(int facility, int level,
+--
+2.43.0
+
diff --git a/debian/patches-rt/0081-printk-remove-logbuf_lock-writer-protection-of-ringb.patch b/debian/patches-rt/0081-printk-remove-logbuf_lock-writer-protection-of-ringb.patch
new file mode 100644
index 000000000..15ea7d1b6
--- /dev/null
+++ b/debian/patches-rt/0081-printk-remove-logbuf_lock-writer-protection-of-ringb.patch
@@ -0,0 +1,251 @@
+From c2d6c379547a29aa25202641659917ecd9ae7712 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Wed, 9 Dec 2020 01:50:53 +0106
+Subject: [PATCH 081/323] printk: remove logbuf_lock writer-protection of
+ ringbuffer
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Since the ringbuffer is lockless, there is no need for it to be
+protected by @logbuf_lock. Remove @logbuf_lock writer-protection of
+the ringbuffer. The reader-protection is not removed because some
+variables, used by readers, are using @logbuf_lock for synchronization:
+@syslog_seq, @syslog_time, @syslog_partial, @console_seq,
+struct kmsg_dumper.
+
+For PRINTK_NMI_DIRECT_CONTEXT_MASK, @logbuf_lock usage is not removed
+because it may be used for dumper synchronization.
+
+Without @logbuf_lock synchronization of vprintk_store() it is no
+longer possible to use the single static buffer for temporarily
+sprint'ing the message. Instead, use vsnprintf() to determine the
+length and perform the real vscnprintf() using the area reserved from
+the ringbuffer. This leads to suboptimal packing of the message data,
+but will result in less wasted storage than multiple per-cpu buffers
+to support lockless temporary sprint'ing.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
+Reviewed-by: Petr Mladek <pmladek@suse.com>
+Signed-off-by: Petr Mladek <pmladek@suse.com>
+Link: https://lore.kernel.org/r/20201209004453.17720-3-john.ogness@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/printk.c | 138 +++++++++++++++++++++++++++++------------
+ 1 file changed, 98 insertions(+), 40 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 9a7c2b561e6d..b0a3f7827819 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -1129,7 +1129,7 @@ void __init setup_log_buf(int early)
+ new_descs, ilog2(new_descs_count),
+ new_infos);
+
+- logbuf_lock_irqsave(flags);
++ printk_safe_enter_irqsave(flags);
+
+ log_buf_len = new_log_buf_len;
+ log_buf = new_log_buf;
+@@ -1146,7 +1146,7 @@ void __init setup_log_buf(int early)
+ */
+ prb = &printk_rb_dynamic;
+
+- logbuf_unlock_irqrestore(flags);
++ printk_safe_exit_irqrestore(flags);
+
+ if (seq != prb_next_seq(&printk_rb_static)) {
+ pr_err("dropped %llu messages\n",
+@@ -1887,18 +1887,90 @@ static inline u32 printk_caller_id(void)
+ 0x80000000 + raw_smp_processor_id();
+ }
+
+-/* Must be called under logbuf_lock. */
++/**
++ * parse_prefix - Parse level and control flags.
++ *
++ * @text: The terminated text message.
++ * @level: A pointer to the current level value, will be updated.
++ * @lflags: A pointer to the current log flags, will be updated.
++ *
++ * @level may be NULL if the caller is not interested in the parsed value.
++ * Otherwise the variable pointed to by @level must be set to
++ * LOGLEVEL_DEFAULT in order to be updated with the parsed value.
++ *
++ * @lflags may be NULL if the caller is not interested in the parsed value.
++ * Otherwise the variable pointed to by @lflags will be OR'd with the parsed
++ * value.
++ *
++ * Return: The length of the parsed level and control flags.
++ */
++static u16 parse_prefix(char *text, int *level, enum log_flags *lflags)
++{
++ u16 prefix_len = 0;
++ int kern_level;
++
++ while (*text) {
++ kern_level = printk_get_level(text);
++ if (!kern_level)
++ break;
++
++ switch (kern_level) {
++ case '0' ... '7':
++ if (level && *level == LOGLEVEL_DEFAULT)
++ *level = kern_level - '0';
++ break;
++ case 'c': /* KERN_CONT */
++ if (lflags)
++ *lflags |= LOG_CONT;
++ }
++
++ prefix_len += 2;
++ text += 2;
++ }
++
++ return prefix_len;
++}
++
++static u16 printk_sprint(char *text, u16 size, int facility, enum log_flags *lflags,
++ const char *fmt, va_list args)
++{
++ u16 text_len;
++
++ text_len = vscnprintf(text, size, fmt, args);
++
++ /* Mark and strip a trailing newline. */
++ if (text_len && text[text_len - 1] == '\n') {
++ text_len--;
++ *lflags |= LOG_NEWLINE;
++ }
++
++ /* Strip log level and control flags. */
++ if (facility == 0) {
++ u16 prefix_len;
++
++ prefix_len = parse_prefix(text, NULL, NULL);
++ if (prefix_len) {
++ text_len -= prefix_len;
++ memmove(text, text + prefix_len, text_len);
++ }
++ }
++
++ return text_len;
++}
++
++__printf(4, 0)
+ int vprintk_store(int facility, int level,
+ const struct dev_printk_info *dev_info,
+ const char *fmt, va_list args)
+ {
+ const u32 caller_id = printk_caller_id();
+- static char textbuf[LOG_LINE_MAX];
+ struct prb_reserved_entry e;
+ enum log_flags lflags = 0;
+ struct printk_record r;
+ u16 trunc_msg_len = 0;
+- char *text = textbuf;
++ char prefix_buf[8];
++ u16 reserve_size;
++ va_list args2;
+ u16 text_len;
+ u64 ts_nsec;
+
+@@ -1911,35 +1983,21 @@ int vprintk_store(int facility, int level,
+ ts_nsec = local_clock();
+
+ /*
+- * The printf needs to come first; we need the syslog
+- * prefix which might be passed-in as a parameter.
++ * The sprintf needs to come first since the syslog prefix might be
++ * passed in as a parameter. An extra byte must be reserved so that
++ * later the vscnprintf() into the reserved buffer has room for the
++ * terminating '\0', which is not counted by vsnprintf().
+ */
+- text_len = vscnprintf(text, sizeof(textbuf), fmt, args);
+-
+- /* mark and strip a trailing newline */
+- if (text_len && text[text_len-1] == '\n') {
+- text_len--;
+- lflags |= LOG_NEWLINE;
+- }
+-
+- /* strip kernel syslog prefix and extract log level or control flags */
+- if (facility == 0) {
+- int kern_level;
++ va_copy(args2, args);
++ reserve_size = vsnprintf(&prefix_buf[0], sizeof(prefix_buf), fmt, args2) + 1;
++ va_end(args2);
+
+- while ((kern_level = printk_get_level(text)) != 0) {
+- switch (kern_level) {
+- case '0' ... '7':
+- if (level == LOGLEVEL_DEFAULT)
+- level = kern_level - '0';
+- break;
+- case 'c': /* KERN_CONT */
+- lflags |= LOG_CONT;
+- }
++ if (reserve_size > LOG_LINE_MAX)
++ reserve_size = LOG_LINE_MAX;
+
+- text_len -= 2;
+- text += 2;
+- }
+- }
++ /* Extract log level or control flags. */
++ if (facility == 0)
++ parse_prefix(&prefix_buf[0], &level, &lflags);
+
+ if (level == LOGLEVEL_DEFAULT)
+ level = default_message_loglevel;
+@@ -1948,9 +2006,10 @@ int vprintk_store(int facility, int level,
+ lflags |= LOG_NEWLINE;
+
+ if (lflags & LOG_CONT) {
+- prb_rec_init_wr(&r, text_len);
++ prb_rec_init_wr(&r, reserve_size);
+ if (prb_reserve_in_last(&e, prb, &r, caller_id, LOG_LINE_MAX)) {
+- memcpy(&r.text_buf[r.info->text_len], text, text_len);
++ text_len = printk_sprint(&r.text_buf[r.info->text_len], reserve_size,
++ facility, &lflags, fmt, args);
+ r.info->text_len += text_len;
+
+ if (lflags & LOG_NEWLINE) {
+@@ -1969,18 +2028,18 @@ int vprintk_store(int facility, int level,
+ * prb_reserve_in_last() and prb_reserve() purposely invalidate the
+ * structure when they fail.
+ */
+- prb_rec_init_wr(&r, text_len);
++ prb_rec_init_wr(&r, reserve_size);
+ if (!prb_reserve(&e, prb, &r)) {
+ /* truncate the message if it is too long for empty buffer */
+- truncate_msg(&text_len, &trunc_msg_len);
++ truncate_msg(&reserve_size, &trunc_msg_len);
+
+- prb_rec_init_wr(&r, text_len + trunc_msg_len);
++ prb_rec_init_wr(&r, reserve_size + trunc_msg_len);
+ if (!prb_reserve(&e, prb, &r))
+ return 0;
+ }
+
+ /* fill message */
+- memcpy(&r.text_buf[0], text, text_len);
++ text_len = printk_sprint(&r.text_buf[0], reserve_size, facility, &lflags, fmt, args);
+ if (trunc_msg_len)
+ memcpy(&r.text_buf[text_len], trunc_msg, trunc_msg_len);
+ r.info->text_len = text_len + trunc_msg_len;
+@@ -2021,10 +2080,9 @@ asmlinkage int vprintk_emit(int facility, int level,
+ boot_delay_msec(level);
+ printk_delay();
+
+- /* This stops the holder of console_sem just where we want him */
+- logbuf_lock_irqsave(flags);
++ printk_safe_enter_irqsave(flags);
+ printed_len = vprintk_store(facility, level, dev_info, fmt, args);
+- logbuf_unlock_irqrestore(flags);
++ printk_safe_exit_irqrestore(flags);
+
+ /* If called from the scheduler, we can not call up(). */
+ if (!in_sched) {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0082-printk-limit-second-loop-of-syslog_print_all.patch b/debian/patches-rt/0082-printk-limit-second-loop-of-syslog_print_all.patch
new file mode 100644
index 000000000..41d143e99
--- /dev/null
+++ b/debian/patches-rt/0082-printk-limit-second-loop-of-syslog_print_all.patch
@@ -0,0 +1,56 @@
+From 6769883ba30e543644f62ababe6910c6774f1885 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Wed, 17 Feb 2021 16:15:31 +0100
+Subject: [PATCH 082/323] printk: limit second loop of syslog_print_all
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The second loop of syslog_print_all() subtracts lengths that were
+added in the first loop. With commit b031a684bfd0 ("printk: remove
+logbuf_lock writer-protection of ringbuffer") it is possible that
+records are (over)written during syslog_print_all(). This allows the
+possibility of the second loop subtracting lengths that were never
+added in the first loop.
+
+This situation can result in syslog_print_all() filling the buffer
+starting from a later record, even though there may have been room
+to fit the earlier record(s) as well.
+
+Fixes: b031a684bfd0 ("printk: remove logbuf_lock writer-protection of ringbuffer")
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Reviewed-by: Petr Mladek <pmladek@suse.com>
+---
+ kernel/printk/printk.c | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index b0a3f7827819..044bb3791896 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -1497,6 +1497,7 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ struct printk_info info;
+ unsigned int line_count;
+ struct printk_record r;
++ u64 max_seq;
+ char *text;
+ int len = 0;
+ u64 seq;
+@@ -1515,9 +1516,15 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ prb_for_each_info(clear_seq, prb, seq, &info, &line_count)
+ len += get_record_print_text_size(&info, line_count, true, time);
+
++ /*
++ * Set an upper bound for the next loop to avoid subtracting lengths
++ * that were never added.
++ */
++ max_seq = seq;
++
+ /* move first record forward until length fits into the buffer */
+ prb_for_each_info(clear_seq, prb, seq, &info, &line_count) {
+- if (len <= size)
++ if (len <= size || info.seq >= max_seq)
+ break;
+ len -= get_record_print_text_size(&info, line_count, true, time);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0083-printk-kmsg_dump-remove-unused-fields.patch b/debian/patches-rt/0083-printk-kmsg_dump-remove-unused-fields.patch
new file mode 100644
index 000000000..8b219b627
--- /dev/null
+++ b/debian/patches-rt/0083-printk-kmsg_dump-remove-unused-fields.patch
@@ -0,0 +1,43 @@
+From dabfa71dd963396a46aee0066bb3eff206de08f7 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 21 Dec 2020 11:19:39 +0106
+Subject: [PATCH 083/323] printk: kmsg_dump: remove unused fields
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+struct kmsg_dumper still contains some fields that were used to
+iterate the old ringbuffer. They are no longer used. Remove them
+and update the struct documentation.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Reviewed-by: Petr Mladek <pmladek@suse.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/kmsg_dump.h | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/include/linux/kmsg_dump.h b/include/linux/kmsg_dump.h
+index 3378bcbe585e..235c50982c2d 100644
+--- a/include/linux/kmsg_dump.h
++++ b/include/linux/kmsg_dump.h
+@@ -36,6 +36,9 @@ enum kmsg_dump_reason {
+ * through the record iterator
+ * @max_reason: filter for highest reason number that should be dumped
+ * @registered: Flag that specifies if this is already registered
++ * @active: Flag that specifies if this is currently dumping
++ * @cur_seq: Points to the oldest message to dump (private)
++ * @next_seq: Points after the newest message to dump (private)
+ */
+ struct kmsg_dumper {
+ struct list_head list;
+@@ -45,8 +48,6 @@ struct kmsg_dumper {
+ bool registered;
+
+ /* private state of the kmsg iterator */
+- u32 cur_idx;
+- u32 next_idx;
+ u64 cur_seq;
+ u64 next_seq;
+ };
+--
+2.43.0
+
diff --git a/debian/patches-rt/0084-printk-refactor-kmsg_dump_get_buffer.patch b/debian/patches-rt/0084-printk-refactor-kmsg_dump_get_buffer.patch
new file mode 100644
index 000000000..dd1390103
--- /dev/null
+++ b/debian/patches-rt/0084-printk-refactor-kmsg_dump_get_buffer.patch
@@ -0,0 +1,145 @@
+From b6e17f3557ef5e32212483ca92910ea28eb21eeb Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:41:56 +0106
+Subject: [PATCH 084/323] printk: refactor kmsg_dump_get_buffer()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+kmsg_dump_get_buffer() requires nearly the same logic as
+syslog_print_all(), but uses different variable names and
+does not make use of the ringbuffer loop macros. Modify
+kmsg_dump_get_buffer() so that the implementation is as similar
+to syslog_print_all() as possible.
+
+A follow-up commit will move this common logic into a
+separate helper function.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Reviewed-by: Petr Mladek <pmladek@suse.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/kmsg_dump.h | 2 +-
+ kernel/printk/printk.c | 60 +++++++++++++++++++++------------------
+ 2 files changed, 33 insertions(+), 29 deletions(-)
+
+diff --git a/include/linux/kmsg_dump.h b/include/linux/kmsg_dump.h
+index 235c50982c2d..4095a34db0fa 100644
+--- a/include/linux/kmsg_dump.h
++++ b/include/linux/kmsg_dump.h
+@@ -62,7 +62,7 @@ bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog,
+ char *line, size_t size, size_t *len);
+
+ bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
+- char *buf, size_t size, size_t *len);
++ char *buf, size_t size, size_t *len_out);
+
+ void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper);
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 044bb3791896..ad7edcb693d4 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -3429,7 +3429,7 @@ EXPORT_SYMBOL_GPL(kmsg_dump_get_line);
+ * read.
+ */
+ bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
+- char *buf, size_t size, size_t *len)
++ char *buf, size_t size, size_t *len_out)
+ {
+ struct printk_info info;
+ unsigned int line_count;
+@@ -3437,12 +3437,10 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
+ unsigned long flags;
+ u64 seq;
+ u64 next_seq;
+- size_t l = 0;
++ size_t len = 0;
+ bool ret = false;
+ bool time = printk_time;
+
+- prb_rec_init_rd(&r, &info, buf, size);
+-
+ if (!dumper->active || !buf || !size)
+ goto out;
+
+@@ -3460,48 +3458,54 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
+ goto out;
+ }
+
+- /* calculate length of entire buffer */
+- seq = dumper->cur_seq;
+- while (prb_read_valid_info(prb, seq, &info, &line_count)) {
+- if (r.info->seq >= dumper->next_seq)
++ /*
++ * Find first record that fits, including all following records,
++ * into the user-provided buffer for this dump.
++ */
++
++ prb_for_each_info(dumper->cur_seq, prb, seq, &info, &line_count) {
++ if (info.seq >= dumper->next_seq)
+ break;
+- l += get_record_print_text_size(&info, line_count, syslog, time);
+- seq = r.info->seq + 1;
++ len += get_record_print_text_size(&info, line_count, syslog, time);
+ }
+
+- /* move first record forward until length fits into the buffer */
+- seq = dumper->cur_seq;
+- while (l >= size && prb_read_valid_info(prb, seq,
+- &info, &line_count)) {
+- if (r.info->seq >= dumper->next_seq)
++ /*
++ * Move first record forward until length fits into the buffer. Ignore
++ * newest messages that were not counted in the above cycle. Messages
++ * might appear and get lost in the meantime. This is the best effort
++ * that prevents an infinite loop.
++ */
++ prb_for_each_info(dumper->cur_seq, prb, seq, &info, &line_count) {
++ if (len < size || info.seq >= dumper->next_seq)
+ break;
+- l -= get_record_print_text_size(&info, line_count, syslog, time);
+- seq = r.info->seq + 1;
++ len -= get_record_print_text_size(&info, line_count, syslog, time);
+ }
+
+- /* last message in next interation */
++ /*
++ * Next kmsg_dump_get_buffer() invocation will dump block of
++ * older records stored right before this one.
++ */
+ next_seq = seq;
+
+- /* actually read text into the buffer now */
+- l = 0;
+- while (prb_read_valid(prb, seq, &r)) {
++ prb_rec_init_rd(&r, &info, buf, size);
++
++ len = 0;
++ prb_for_each_record(seq, prb, seq, &r) {
+ if (r.info->seq >= dumper->next_seq)
+ break;
+
+- l += record_print_text(&r, syslog, time);
+-
+- /* adjust record to store to remaining buffer space */
+- prb_rec_init_rd(&r, &info, buf + l, size - l);
++ len += record_print_text(&r, syslog, time);
+
+- seq = r.info->seq + 1;
++ /* Adjust record to store to remaining buffer space. */
++ prb_rec_init_rd(&r, &info, buf + len, size - len);
+ }
+
+ dumper->next_seq = next_seq;
+ ret = true;
+ logbuf_unlock_irqrestore(flags);
+ out:
+- if (len)
+- *len = l;
++ if (len_out)
++ *len_out = len;
+ return ret;
+ }
+ EXPORT_SYMBOL_GPL(kmsg_dump_get_buffer);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0085-printk-consolidate-kmsg_dump_get_buffer-syslog_print.patch b/debian/patches-rt/0085-printk-consolidate-kmsg_dump_get_buffer-syslog_print.patch
new file mode 100644
index 000000000..acc8de768
--- /dev/null
+++ b/debian/patches-rt/0085-printk-consolidate-kmsg_dump_get_buffer-syslog_print.patch
@@ -0,0 +1,147 @@
+From 922cda1ee8d183c2e98429cdabf907a92df72465 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Wed, 13 Jan 2021 11:29:53 +0106
+Subject: [PATCH 085/323] printk: consolidate
+ kmsg_dump_get_buffer/syslog_print_all code
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The logic for finding records to fit into a buffer is the same for
+kmsg_dump_get_buffer() and syslog_print_all(). Introduce a helper
+function find_first_fitting_seq() to handle this logic.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+---
+ kernel/printk/printk.c | 87 ++++++++++++++++++++++++------------------
+ 1 file changed, 50 insertions(+), 37 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index ad7edcb693d4..1f710a2a40b6 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -1424,6 +1424,50 @@ static size_t get_record_print_text_size(struct printk_info *info,
+ return ((prefix_len * line_count) + info->text_len + 1);
+ }
+
++/*
++ * Beginning with @start_seq, find the first record where it and all following
++ * records up to (but not including) @max_seq fit into @size.
++ *
++ * @max_seq is simply an upper bound and does not need to exist. If the caller
++ * does not require an upper bound, -1 can be used for @max_seq.
++ */
++static u64 find_first_fitting_seq(u64 start_seq, u64 max_seq, size_t size,
++ bool syslog, bool time)
++{
++ struct printk_info info;
++ unsigned int line_count;
++ size_t len = 0;
++ u64 seq;
++
++ /* Determine the size of the records up to @max_seq. */
++ prb_for_each_info(start_seq, prb, seq, &info, &line_count) {
++ if (info.seq >= max_seq)
++ break;
++ len += get_record_print_text_size(&info, line_count, syslog, time);
++ }
++
++ /*
++ * Adjust the upper bound for the next loop to avoid subtracting
++ * lengths that were never added.
++ */
++ if (seq < max_seq)
++ max_seq = seq;
++
++ /*
++ * Move first record forward until length fits into the buffer. Ignore
++ * newest messages that were not counted in the above cycle. Messages
++ * might appear and get lost in the meantime. This is a best effort
++ * that prevents an infinite loop that could occur with a retry.
++ */
++ prb_for_each_info(start_seq, prb, seq, &info, &line_count) {
++ if (len <= size || info.seq >= max_seq)
++ break;
++ len -= get_record_print_text_size(&info, line_count, syslog, time);
++ }
++
++ return seq;
++}
++
+ static int syslog_print(char __user *buf, int size)
+ {
+ struct printk_info info;
+@@ -1495,9 +1539,7 @@ static int syslog_print(char __user *buf, int size)
+ static int syslog_print_all(char __user *buf, int size, bool clear)
+ {
+ struct printk_info info;
+- unsigned int line_count;
+ struct printk_record r;
+- u64 max_seq;
+ char *text;
+ int len = 0;
+ u64 seq;
+@@ -1513,21 +1555,7 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ * Find first record that fits, including all following records,
+ * into the user-provided buffer for this dump.
+ */
+- prb_for_each_info(clear_seq, prb, seq, &info, &line_count)
+- len += get_record_print_text_size(&info, line_count, true, time);
+-
+- /*
+- * Set an upper bound for the next loop to avoid subtracting lengths
+- * that were never added.
+- */
+- max_seq = seq;
+-
+- /* move first record forward until length fits into the buffer */
+- prb_for_each_info(clear_seq, prb, seq, &info, &line_count) {
+- if (len <= size || info.seq >= max_seq)
+- break;
+- len -= get_record_print_text_size(&info, line_count, true, time);
+- }
++ seq = find_first_fitting_seq(clear_seq, -1, size, true, time);
+
+ prb_rec_init_rd(&r, &info, text, LOG_LINE_MAX + PREFIX_MAX);
+
+@@ -3432,7 +3460,6 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
+ char *buf, size_t size, size_t *len_out)
+ {
+ struct printk_info info;
+- unsigned int line_count;
+ struct printk_record r;
+ unsigned long flags;
+ u64 seq;
+@@ -3460,26 +3487,12 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
+
+ /*
+ * Find first record that fits, including all following records,
+- * into the user-provided buffer for this dump.
++ * into the user-provided buffer for this dump. Pass in size-1
++ * because this function (by way of record_print_text()) will
++ * not write more than size-1 bytes of text into @buf.
+ */
+-
+- prb_for_each_info(dumper->cur_seq, prb, seq, &info, &line_count) {
+- if (info.seq >= dumper->next_seq)
+- break;
+- len += get_record_print_text_size(&info, line_count, syslog, time);
+- }
+-
+- /*
+- * Move first record forward until length fits into the buffer. Ignore
+- * newest messages that were not counted in the above cycle. Messages
+- * might appear and get lost in the meantime. This is the best effort
+- * that prevents an infinite loop.
+- */
+- prb_for_each_info(dumper->cur_seq, prb, seq, &info, &line_count) {
+- if (len < size || info.seq >= dumper->next_seq)
+- break;
+- len -= get_record_print_text_size(&info, line_count, syslog, time);
+- }
++ seq = find_first_fitting_seq(dumper->cur_seq, dumper->next_seq,
++ size - 1, syslog, time);
+
+ /*
+ * Next kmsg_dump_get_buffer() invocation will dump block of
+--
+2.43.0
+
diff --git a/debian/patches-rt/0086-printk-introduce-CONSOLE_LOG_MAX-for-improved-multi-.patch b/debian/patches-rt/0086-printk-introduce-CONSOLE_LOG_MAX-for-improved-multi-.patch
new file mode 100644
index 000000000..876f0920e
--- /dev/null
+++ b/debian/patches-rt/0086-printk-introduce-CONSOLE_LOG_MAX-for-improved-multi-.patch
@@ -0,0 +1,95 @@
+From 2b148f755fdd9d276d191e982d525f330cffad0b Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Thu, 10 Dec 2020 12:48:01 +0106
+Subject: [PATCH 086/323] printk: introduce CONSOLE_LOG_MAX for improved
+ multi-line support
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Instead of using "LOG_LINE_MAX + PREFIX_MAX" for temporary buffer
+sizes, introduce CONSOLE_LOG_MAX. This represents the maximum size
+that is allowed to be printed to the console for a single record.
+
+Rather than setting CONSOLE_LOG_MAX to "LOG_LINE_MAX + PREFIX_MAX"
+(1024), increase it to 4096. With a larger buffer size, multi-line
+records that are nearly LOG_LINE_MAX in length will have a better
+chance of being fully printed. (When formatting a record for the
+console, each line of a multi-line record is prepended with a copy
+of the prefix.)
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+---
+ kernel/printk/printk.c | 18 +++++++++++-------
+ 1 file changed, 11 insertions(+), 7 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 1f710a2a40b6..1bc4ff19c0d2 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -412,8 +412,13 @@ static u64 clear_seq;
+ #else
+ #define PREFIX_MAX 32
+ #endif
++
++/* the maximum size allowed to be reserved for a record */
+ #define LOG_LINE_MAX (1024 - PREFIX_MAX)
+
++/* the maximum size of a formatted record (i.e. with prefix added per line) */
++#define CONSOLE_LOG_MAX 4096
++
+ #define LOG_LEVEL(v) ((v) & 0x07)
+ #define LOG_FACILITY(v) ((v) >> 3 & 0xff)
+
+@@ -1475,11 +1480,11 @@ static int syslog_print(char __user *buf, int size)
+ char *text;
+ int len = 0;
+
+- text = kmalloc(LOG_LINE_MAX + PREFIX_MAX, GFP_KERNEL);
++ text = kmalloc(CONSOLE_LOG_MAX, GFP_KERNEL);
+ if (!text)
+ return -ENOMEM;
+
+- prb_rec_init_rd(&r, &info, text, LOG_LINE_MAX + PREFIX_MAX);
++ prb_rec_init_rd(&r, &info, text, CONSOLE_LOG_MAX);
+
+ while (size > 0) {
+ size_t n;
+@@ -1545,7 +1550,7 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ u64 seq;
+ bool time;
+
+- text = kmalloc(LOG_LINE_MAX + PREFIX_MAX, GFP_KERNEL);
++ text = kmalloc(CONSOLE_LOG_MAX, GFP_KERNEL);
+ if (!text)
+ return -ENOMEM;
+
+@@ -1557,7 +1562,7 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ */
+ seq = find_first_fitting_seq(clear_seq, -1, size, true, time);
+
+- prb_rec_init_rd(&r, &info, text, LOG_LINE_MAX + PREFIX_MAX);
++ prb_rec_init_rd(&r, &info, text, CONSOLE_LOG_MAX);
+
+ len = 0;
+ prb_for_each_record(seq, prb, seq, &r) {
+@@ -2190,8 +2195,7 @@ EXPORT_SYMBOL(printk);
+
+ #else /* CONFIG_PRINTK */
+
+-#define LOG_LINE_MAX 0
+-#define PREFIX_MAX 0
++#define CONSOLE_LOG_MAX 0
+ #define printk_time false
+
+ #define prb_read_valid(rb, seq, r) false
+@@ -2509,7 +2513,7 @@ static inline int can_use_console(void)
+ void console_unlock(void)
+ {
+ static char ext_text[CONSOLE_EXT_LOG_MAX];
+- static char text[LOG_LINE_MAX + PREFIX_MAX];
++ static char text[CONSOLE_LOG_MAX];
+ unsigned long flags;
+ bool do_cond_resched, retry;
+ struct printk_info info;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0087-printk-use-seqcount_latch-for-clear_seq.patch b/debian/patches-rt/0087-printk-use-seqcount_latch-for-clear_seq.patch
new file mode 100644
index 000000000..f34000021
--- /dev/null
+++ b/debian/patches-rt/0087-printk-use-seqcount_latch-for-clear_seq.patch
@@ -0,0 +1,147 @@
+From 0b877c3f36fc909dc2aec9f70e2e80ad0c69a60b Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:41:58 +0106
+Subject: [PATCH 087/323] printk: use seqcount_latch for clear_seq
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+kmsg_dump_rewind_nolock() locklessly reads @clear_seq. However,
+this is not done atomically. Since @clear_seq is 64-bit, this
+cannot be an atomic operation for all platforms. Therefore, use
+a seqcount_latch to allow readers to always read a consistent
+value.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Reviewed-by: Petr Mladek <pmladek@suse.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/printk.c | 58 ++++++++++++++++++++++++++++++++++++------
+ 1 file changed, 50 insertions(+), 8 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 1bc4ff19c0d2..4444b3e292d5 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -404,8 +404,21 @@ static u64 console_seq;
+ static u64 exclusive_console_stop_seq;
+ static unsigned long console_dropped;
+
+-/* the next printk record to read after the last 'clear' command */
+-static u64 clear_seq;
++struct latched_seq {
++ seqcount_latch_t latch;
++ u64 val[2];
++};
++
++/*
++ * The next printk record to read after the last 'clear' command. There are
++ * two copies (updated with seqcount_latch) so that reads can locklessly
++ * access a valid value. Writers are synchronized by @logbuf_lock.
++ */
++static struct latched_seq clear_seq = {
++ .latch = SEQCNT_LATCH_ZERO(clear_seq.latch),
++ .val[0] = 0,
++ .val[1] = 0,
++};
+
+ #ifdef CONFIG_PRINTK_CALLER
+ #define PREFIX_MAX 48
+@@ -459,6 +472,31 @@ bool printk_percpu_data_ready(void)
+ return __printk_percpu_data_ready;
+ }
+
++/* Must be called under logbuf_lock. */
++static void latched_seq_write(struct latched_seq *ls, u64 val)
++{
++ raw_write_seqcount_latch(&ls->latch);
++ ls->val[0] = val;
++ raw_write_seqcount_latch(&ls->latch);
++ ls->val[1] = val;
++}
++
++/* Can be called from any context. */
++static u64 latched_seq_read_nolock(struct latched_seq *ls)
++{
++ unsigned int seq;
++ unsigned int idx;
++ u64 val;
++
++ do {
++ seq = raw_read_seqcount_latch(&ls->latch);
++ idx = seq & 0x1;
++ val = ls->val[idx];
++ } while (read_seqcount_latch_retry(&ls->latch, seq));
++
++ return val;
++}
++
+ /* Return log buffer address */
+ char *log_buf_addr_get(void)
+ {
+@@ -804,7 +842,7 @@ static loff_t devkmsg_llseek(struct file *file, loff_t offset, int whence)
+ * like issued by 'dmesg -c'. Reading /dev/kmsg itself
+ * changes no global state, and does not clear anything.
+ */
+- user->seq = clear_seq;
++ user->seq = latched_seq_read_nolock(&clear_seq);
+ break;
+ case SEEK_END:
+ /* after the last record */
+@@ -963,6 +1001,9 @@ void log_buf_vmcoreinfo_setup(void)
+
+ VMCOREINFO_SIZE(atomic_long_t);
+ VMCOREINFO_TYPE_OFFSET(atomic_long_t, counter);
++
++ VMCOREINFO_STRUCT_SIZE(latched_seq);
++ VMCOREINFO_OFFSET(latched_seq, val);
+ }
+ #endif
+
+@@ -1560,7 +1601,8 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ * Find first record that fits, including all following records,
+ * into the user-provided buffer for this dump.
+ */
+- seq = find_first_fitting_seq(clear_seq, -1, size, true, time);
++ seq = find_first_fitting_seq(latched_seq_read_nolock(&clear_seq), -1,
++ size, true, time);
+
+ prb_rec_init_rd(&r, &info, text, CONSOLE_LOG_MAX);
+
+@@ -1587,7 +1629,7 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ }
+
+ if (clear)
+- clear_seq = seq;
++ latched_seq_write(&clear_seq, seq);
+ logbuf_unlock_irq();
+
+ kfree(text);
+@@ -1597,7 +1639,7 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ static void syslog_clear(void)
+ {
+ logbuf_lock_irq();
+- clear_seq = prb_next_seq(prb);
++ latched_seq_write(&clear_seq, prb_next_seq(prb));
+ logbuf_unlock_irq();
+ }
+
+@@ -3341,7 +3383,7 @@ void kmsg_dump(enum kmsg_dump_reason reason)
+ dumper->active = true;
+
+ logbuf_lock_irqsave(flags);
+- dumper->cur_seq = clear_seq;
++ dumper->cur_seq = latched_seq_read_nolock(&clear_seq);
+ dumper->next_seq = prb_next_seq(prb);
+ logbuf_unlock_irqrestore(flags);
+
+@@ -3539,7 +3581,7 @@ EXPORT_SYMBOL_GPL(kmsg_dump_get_buffer);
+ */
+ void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper)
+ {
+- dumper->cur_seq = clear_seq;
++ dumper->cur_seq = latched_seq_read_nolock(&clear_seq);
+ dumper->next_seq = prb_next_seq(prb);
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0088-printk-use-atomic64_t-for-devkmsg_user.seq.patch b/debian/patches-rt/0088-printk-use-atomic64_t-for-devkmsg_user.seq.patch
new file mode 100644
index 000000000..d5c3de71c
--- /dev/null
+++ b/debian/patches-rt/0088-printk-use-atomic64_t-for-devkmsg_user.seq.patch
@@ -0,0 +1,112 @@
+From ccc444abbce9df5f0747db8dd10bd39388d58836 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Thu, 10 Dec 2020 15:33:40 +0106
+Subject: [PATCH 088/323] printk: use atomic64_t for devkmsg_user.seq
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+@user->seq is indirectly protected by @logbuf_lock. Once @logbuf_lock
+is removed, @user->seq will be no longer safe from an atomicity point
+of view.
+
+In preparation for the removal of @logbuf_lock, change it to
+atomic64_t to provide this safety.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+---
+ kernel/printk/printk.c | 22 +++++++++++-----------
+ 1 file changed, 11 insertions(+), 11 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 4444b3e292d5..a351ed400c04 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -664,7 +664,7 @@ static ssize_t msg_print_ext_body(char *buf, size_t size,
+
+ /* /dev/kmsg - userspace message inject/listen interface */
+ struct devkmsg_user {
+- u64 seq;
++ atomic64_t seq;
+ struct ratelimit_state rs;
+ struct mutex lock;
+ char buf[CONSOLE_EXT_LOG_MAX];
+@@ -766,7 +766,7 @@ static ssize_t devkmsg_read(struct file *file, char __user *buf,
+ return ret;
+
+ logbuf_lock_irq();
+- if (!prb_read_valid(prb, user->seq, r)) {
++ if (!prb_read_valid(prb, atomic64_read(&user->seq), r)) {
+ if (file->f_flags & O_NONBLOCK) {
+ ret = -EAGAIN;
+ logbuf_unlock_irq();
+@@ -775,15 +775,15 @@ static ssize_t devkmsg_read(struct file *file, char __user *buf,
+
+ logbuf_unlock_irq();
+ ret = wait_event_interruptible(log_wait,
+- prb_read_valid(prb, user->seq, r));
++ prb_read_valid(prb, atomic64_read(&user->seq), r));
+ if (ret)
+ goto out;
+ logbuf_lock_irq();
+ }
+
+- if (r->info->seq != user->seq) {
++ if (r->info->seq != atomic64_read(&user->seq)) {
+ /* our last seen message is gone, return error and reset */
+- user->seq = r->info->seq;
++ atomic64_set(&user->seq, r->info->seq);
+ ret = -EPIPE;
+ logbuf_unlock_irq();
+ goto out;
+@@ -794,7 +794,7 @@ static ssize_t devkmsg_read(struct file *file, char __user *buf,
+ &r->text_buf[0], r->info->text_len,
+ &r->info->dev_info);
+
+- user->seq = r->info->seq + 1;
++ atomic64_set(&user->seq, r->info->seq + 1);
+ logbuf_unlock_irq();
+
+ if (len > count) {
+@@ -834,7 +834,7 @@ static loff_t devkmsg_llseek(struct file *file, loff_t offset, int whence)
+ switch (whence) {
+ case SEEK_SET:
+ /* the first record */
+- user->seq = prb_first_valid_seq(prb);
++ atomic64_set(&user->seq, prb_first_valid_seq(prb));
+ break;
+ case SEEK_DATA:
+ /*
+@@ -842,11 +842,11 @@ static loff_t devkmsg_llseek(struct file *file, loff_t offset, int whence)
+ * like issued by 'dmesg -c'. Reading /dev/kmsg itself
+ * changes no global state, and does not clear anything.
+ */
+- user->seq = latched_seq_read_nolock(&clear_seq);
++ atomic64_set(&user->seq, latched_seq_read_nolock(&clear_seq));
+ break;
+ case SEEK_END:
+ /* after the last record */
+- user->seq = prb_next_seq(prb);
++ atomic64_set(&user->seq, prb_next_seq(prb));
+ break;
+ default:
+ ret = -EINVAL;
+@@ -869,7 +869,7 @@ static __poll_t devkmsg_poll(struct file *file, poll_table *wait)
+ logbuf_lock_irq();
+ if (prb_read_valid_info(prb, user->seq, &info, NULL)) {
+ /* return error when data has vanished underneath us */
+- if (info.seq != user->seq)
++ if (info.seq != atomic64_read(&user->seq))
+ ret = EPOLLIN|EPOLLRDNORM|EPOLLERR|EPOLLPRI;
+ else
+ ret = EPOLLIN|EPOLLRDNORM;
+@@ -908,7 +908,7 @@ static int devkmsg_open(struct inode *inode, struct file *file)
+ &user->text_buf[0], sizeof(user->text_buf));
+
+ logbuf_lock_irq();
+- user->seq = prb_first_valid_seq(prb);
++ atomic64_set(&user->seq, prb_first_valid_seq(prb));
+ logbuf_unlock_irq();
+
+ file->private_data = user;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0089-printk-add-syslog_lock.patch b/debian/patches-rt/0089-printk-add-syslog_lock.patch
new file mode 100644
index 000000000..42e77e5ab
--- /dev/null
+++ b/debian/patches-rt/0089-printk-add-syslog_lock.patch
@@ -0,0 +1,159 @@
+From 5521ed0e06ffc572d9f0ebf5421ab23288899804 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Thu, 10 Dec 2020 16:58:02 +0106
+Subject: [PATCH 089/323] printk: add syslog_lock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The global variables @syslog_seq, @syslog_partial, @syslog_time
+and write access to @clear_seq are protected by @logbuf_lock.
+Once @logbuf_lock is removed, these variables will need their
+own synchronization method. Introduce @syslog_lock for this
+purpose.
+
+@syslog_lock is a raw_spin_lock for now. This simplifies the
+transition to removing @logbuf_lock. Once @logbuf_lock and the
+safe buffers are removed, @syslog_lock can change to spin_lock.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/printk.c | 41 +++++++++++++++++++++++++++++++++++++----
+ 1 file changed, 37 insertions(+), 4 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index a351ed400c04..986fc9fad210 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -392,8 +392,12 @@ DEFINE_RAW_SPINLOCK(logbuf_lock);
+ printk_safe_exit_irqrestore(flags); \
+ } while (0)
+
++/* syslog_lock protects syslog_* variables and write access to clear_seq. */
++static DEFINE_RAW_SPINLOCK(syslog_lock);
++
+ #ifdef CONFIG_PRINTK
+ DECLARE_WAIT_QUEUE_HEAD(log_wait);
++/* All 3 protected by @syslog_lock. */
+ /* the next printk record to read by syslog(READ) or /proc/kmsg */
+ static u64 syslog_seq;
+ static size_t syslog_partial;
+@@ -412,7 +416,7 @@ struct latched_seq {
+ /*
+ * The next printk record to read after the last 'clear' command. There are
+ * two copies (updated with seqcount_latch) so that reads can locklessly
+- * access a valid value. Writers are synchronized by @logbuf_lock.
++ * access a valid value. Writers are synchronized by @syslog_lock.
+ */
+ static struct latched_seq clear_seq = {
+ .latch = SEQCNT_LATCH_ZERO(clear_seq.latch),
+@@ -472,7 +476,7 @@ bool printk_percpu_data_ready(void)
+ return __printk_percpu_data_ready;
+ }
+
+-/* Must be called under logbuf_lock. */
++/* Must be called under syslog_lock. */
+ static void latched_seq_write(struct latched_seq *ls, u64 val)
+ {
+ raw_write_seqcount_latch(&ls->latch);
+@@ -1532,7 +1536,9 @@ static int syslog_print(char __user *buf, int size)
+ size_t skip;
+
+ logbuf_lock_irq();
++ raw_spin_lock(&syslog_lock);
+ if (!prb_read_valid(prb, syslog_seq, &r)) {
++ raw_spin_unlock(&syslog_lock);
+ logbuf_unlock_irq();
+ break;
+ }
+@@ -1562,6 +1568,7 @@ static int syslog_print(char __user *buf, int size)
+ syslog_partial += n;
+ } else
+ n = 0;
++ raw_spin_unlock(&syslog_lock);
+ logbuf_unlock_irq();
+
+ if (!n)
+@@ -1628,8 +1635,11 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ break;
+ }
+
+- if (clear)
++ if (clear) {
++ raw_spin_lock(&syslog_lock);
+ latched_seq_write(&clear_seq, seq);
++ raw_spin_unlock(&syslog_lock);
++ }
+ logbuf_unlock_irq();
+
+ kfree(text);
+@@ -1639,10 +1649,24 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ static void syslog_clear(void)
+ {
+ logbuf_lock_irq();
++ raw_spin_lock(&syslog_lock);
+ latched_seq_write(&clear_seq, prb_next_seq(prb));
++ raw_spin_unlock(&syslog_lock);
+ logbuf_unlock_irq();
+ }
+
++/* Return a consistent copy of @syslog_seq. */
++static u64 read_syslog_seq_irq(void)
++{
++ u64 seq;
++
++ raw_spin_lock_irq(&syslog_lock);
++ seq = syslog_seq;
++ raw_spin_unlock_irq(&syslog_lock);
++
++ return seq;
++}
++
+ int do_syslog(int type, char __user *buf, int len, int source)
+ {
+ struct printk_info info;
+@@ -1666,8 +1690,9 @@ int do_syslog(int type, char __user *buf, int len, int source)
+ return 0;
+ if (!access_ok(buf, len))
+ return -EFAULT;
++
+ error = wait_event_interruptible(log_wait,
+- prb_read_valid(prb, syslog_seq, NULL));
++ prb_read_valid(prb, read_syslog_seq_irq(), NULL));
+ if (error)
+ return error;
+ error = syslog_print(buf, len);
+@@ -1716,8 +1741,10 @@ int do_syslog(int type, char __user *buf, int len, int source)
+ /* Number of chars in the log buffer */
+ case SYSLOG_ACTION_SIZE_UNREAD:
+ logbuf_lock_irq();
++ raw_spin_lock(&syslog_lock);
+ if (!prb_read_valid_info(prb, syslog_seq, &info, NULL)) {
+ /* No unread messages. */
++ raw_spin_unlock(&syslog_lock);
+ logbuf_unlock_irq();
+ return 0;
+ }
+@@ -1746,6 +1773,7 @@ int do_syslog(int type, char __user *buf, int len, int source)
+ }
+ error -= syslog_partial;
+ }
++ raw_spin_unlock(&syslog_lock);
+ logbuf_unlock_irq();
+ break;
+ /* Size of the log buffer */
+@@ -2995,7 +3023,12 @@ void register_console(struct console *newcon)
+ */
+ exclusive_console = newcon;
+ exclusive_console_stop_seq = console_seq;
++
++ /* Get a consistent copy of @syslog_seq. */
++ raw_spin_lock(&syslog_lock);
+ console_seq = syslog_seq;
++ raw_spin_unlock(&syslog_lock);
++
+ logbuf_unlock_irqrestore(flags);
+ }
+ console_unlock();
+--
+2.43.0
+
diff --git a/debian/patches-rt/0090-printk-introduce-a-kmsg_dump-iterator.patch b/debian/patches-rt/0090-printk-introduce-a-kmsg_dump-iterator.patch
new file mode 100644
index 000000000..018c1949d
--- /dev/null
+++ b/debian/patches-rt/0090-printk-introduce-a-kmsg_dump-iterator.patch
@@ -0,0 +1,561 @@
+From 5bb123ebb8e508baa987e9bc17029e2eaa64575b Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Fri, 18 Dec 2020 11:40:08 +0000
+Subject: [PATCH 090/323] printk: introduce a kmsg_dump iterator
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Rather than store the iterator information into the registered
+kmsg_dump structure, create a separate iterator structure. The
+kmsg_dump_iter structure can reside on the stack of the caller,
+thus allowing lockless use of the kmsg_dump functions.
+
+This is in preparation for removal of @logbuf_lock.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/powerpc/kernel/nvram_64.c | 12 ++--
+ arch/powerpc/platforms/powernv/opal-kmsg.c | 3 +-
+ arch/powerpc/xmon/xmon.c | 6 +-
+ arch/um/kernel/kmsg_dump.c | 5 +-
+ drivers/hv/vmbus_drv.c | 5 +-
+ drivers/mtd/mtdoops.c | 5 +-
+ fs/pstore/platform.c | 5 +-
+ include/linux/kmsg_dump.h | 43 +++++++-------
+ kernel/debug/kdb/kdb_main.c | 10 ++--
+ kernel/printk/printk.c | 65 +++++++++++-----------
+ 10 files changed, 84 insertions(+), 75 deletions(-)
+
+diff --git a/arch/powerpc/kernel/nvram_64.c b/arch/powerpc/kernel/nvram_64.c
+index 532f22637783..1ef55f4b389a 100644
+--- a/arch/powerpc/kernel/nvram_64.c
++++ b/arch/powerpc/kernel/nvram_64.c
+@@ -73,7 +73,8 @@ static const char *nvram_os_partitions[] = {
+ };
+
+ static void oops_to_nvram(struct kmsg_dumper *dumper,
+- enum kmsg_dump_reason reason);
++ enum kmsg_dump_reason reason,
++ struct kmsg_dumper_iter *iter);
+
+ static struct kmsg_dumper nvram_kmsg_dumper = {
+ .dump = oops_to_nvram
+@@ -643,7 +644,8 @@ void __init nvram_init_oops_partition(int rtas_partition_exists)
+ * partition. If that's too much, go back and capture uncompressed text.
+ */
+ static void oops_to_nvram(struct kmsg_dumper *dumper,
+- enum kmsg_dump_reason reason)
++ enum kmsg_dump_reason reason,
++ struct kmsg_dumper_iter *iter)
+ {
+ struct oops_log_info *oops_hdr = (struct oops_log_info *)oops_buf;
+ static unsigned int oops_count = 0;
+@@ -681,13 +683,13 @@ static void oops_to_nvram(struct kmsg_dumper *dumper,
+ return;
+
+ if (big_oops_buf) {
+- kmsg_dump_get_buffer(dumper, false,
++ kmsg_dump_get_buffer(iter, false,
+ big_oops_buf, big_oops_buf_sz, &text_len);
+ rc = zip_oops(text_len);
+ }
+ if (rc != 0) {
+- kmsg_dump_rewind(dumper);
+- kmsg_dump_get_buffer(dumper, false,
++ kmsg_dump_rewind(iter);
++ kmsg_dump_get_buffer(iter, false,
+ oops_data, oops_data_sz, &text_len);
+ err_type = ERR_TYPE_KERNEL_PANIC;
+ oops_hdr->version = cpu_to_be16(OOPS_HDR_VERSION);
+diff --git a/arch/powerpc/platforms/powernv/opal-kmsg.c b/arch/powerpc/platforms/powernv/opal-kmsg.c
+index 6c3bc4b4da98..ec862846bc82 100644
+--- a/arch/powerpc/platforms/powernv/opal-kmsg.c
++++ b/arch/powerpc/platforms/powernv/opal-kmsg.c
+@@ -20,7 +20,8 @@
+ * message, it just ensures that OPAL completely flushes the console buffer.
+ */
+ static void kmsg_dump_opal_console_flush(struct kmsg_dumper *dumper,
+- enum kmsg_dump_reason reason)
++ enum kmsg_dump_reason reason,
++ struct kmsg_dumper_iter *iter)
+ {
+ /*
+ * Outside of a panic context the pollers will continue to run,
+diff --git a/arch/powerpc/xmon/xmon.c b/arch/powerpc/xmon/xmon.c
+index 3de2adc0a807..9f62cca6c594 100644
+--- a/arch/powerpc/xmon/xmon.c
++++ b/arch/powerpc/xmon/xmon.c
+@@ -3003,7 +3003,7 @@ print_address(unsigned long addr)
+ static void
+ dump_log_buf(void)
+ {
+- struct kmsg_dumper dumper = { .active = 1 };
++ struct kmsg_dumper_iter iter = { .active = 1 };
+ unsigned char buf[128];
+ size_t len;
+
+@@ -3015,9 +3015,9 @@ dump_log_buf(void)
+ catch_memory_errors = 1;
+ sync();
+
+- kmsg_dump_rewind_nolock(&dumper);
++ kmsg_dump_rewind_nolock(&iter);
+ xmon_start_pagination();
+- while (kmsg_dump_get_line_nolock(&dumper, false, buf, sizeof(buf), &len)) {
++ while (kmsg_dump_get_line_nolock(&iter, false, buf, sizeof(buf), &len)) {
+ buf[len] = '\0';
+ printf("%s", buf);
+ }
+diff --git a/arch/um/kernel/kmsg_dump.c b/arch/um/kernel/kmsg_dump.c
+index e4abac6c9727..f38349ad00ea 100644
+--- a/arch/um/kernel/kmsg_dump.c
++++ b/arch/um/kernel/kmsg_dump.c
+@@ -6,7 +6,8 @@
+ #include <os.h>
+
+ static void kmsg_dumper_stdout(struct kmsg_dumper *dumper,
+- enum kmsg_dump_reason reason)
++ enum kmsg_dump_reason reason,
++ struct kmsg_dumper_iter *iter)
+ {
+ static char line[1024];
+ struct console *con;
+@@ -25,7 +26,7 @@ static void kmsg_dumper_stdout(struct kmsg_dumper *dumper,
+ return;
+
+ printf("kmsg_dump:\n");
+- while (kmsg_dump_get_line(dumper, true, line, sizeof(line), &len)) {
++ while (kmsg_dump_get_line(iter, true, line, sizeof(line), &len)) {
+ line[len] = '\0';
+ printf("%s", line);
+ }
+diff --git a/drivers/hv/vmbus_drv.c b/drivers/hv/vmbus_drv.c
+index e99400f3ae1d..db39c96bbf43 100644
+--- a/drivers/hv/vmbus_drv.c
++++ b/drivers/hv/vmbus_drv.c
+@@ -1359,7 +1359,8 @@ static void vmbus_isr(void)
+ * buffer and call into Hyper-V to transfer the data.
+ */
+ static void hv_kmsg_dump(struct kmsg_dumper *dumper,
+- enum kmsg_dump_reason reason)
++ enum kmsg_dump_reason reason,
++ struct kmsg_dumper_iter *iter)
+ {
+ size_t bytes_written;
+ phys_addr_t panic_pa;
+@@ -1374,7 +1375,7 @@ static void hv_kmsg_dump(struct kmsg_dumper *dumper,
+ * Write dump contents to the page. No need to synchronize; panic should
+ * be single-threaded.
+ */
+- kmsg_dump_get_buffer(dumper, false, hv_panic_page, HV_HYP_PAGE_SIZE,
++ kmsg_dump_get_buffer(iter, false, hv_panic_page, HV_HYP_PAGE_SIZE,
+ &bytes_written);
+ if (bytes_written)
+ hyperv_report_panic_msg(panic_pa, bytes_written);
+diff --git a/drivers/mtd/mtdoops.c b/drivers/mtd/mtdoops.c
+index 774970bfcf85..6bc2c728adb7 100644
+--- a/drivers/mtd/mtdoops.c
++++ b/drivers/mtd/mtdoops.c
+@@ -267,7 +267,8 @@ static void find_next_position(struct mtdoops_context *cxt)
+ }
+
+ static void mtdoops_do_dump(struct kmsg_dumper *dumper,
+- enum kmsg_dump_reason reason)
++ enum kmsg_dump_reason reason,
++ struct kmsg_dumper_iter *iter)
+ {
+ struct mtdoops_context *cxt = container_of(dumper,
+ struct mtdoops_context, dump);
+@@ -276,7 +277,7 @@ static void mtdoops_do_dump(struct kmsg_dumper *dumper,
+ if (reason == KMSG_DUMP_OOPS && !dump_oops)
+ return;
+
+- kmsg_dump_get_buffer(dumper, true, cxt->oops_buf + MTDOOPS_HEADER_SIZE,
++ kmsg_dump_get_buffer(iter, true, cxt->oops_buf + MTDOOPS_HEADER_SIZE,
+ record_size - MTDOOPS_HEADER_SIZE, NULL);
+
+ if (reason != KMSG_DUMP_OOPS) {
+diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c
+index d59f13b1fb96..64f3f85d2a5d 100644
+--- a/fs/pstore/platform.c
++++ b/fs/pstore/platform.c
+@@ -384,7 +384,8 @@ void pstore_record_init(struct pstore_record *record,
+ * end of the buffer.
+ */
+ static void pstore_dump(struct kmsg_dumper *dumper,
+- enum kmsg_dump_reason reason)
++ enum kmsg_dump_reason reason,
++ struct kmsg_dumper_iter *iter)
+ {
+ unsigned long total = 0;
+ const char *why;
+@@ -434,7 +435,7 @@ static void pstore_dump(struct kmsg_dumper *dumper,
+ dst_size -= header_size;
+
+ /* Write dump contents. */
+- if (!kmsg_dump_get_buffer(dumper, true, dst + header_size,
++ if (!kmsg_dump_get_buffer(iter, true, dst + header_size,
+ dst_size, &dump_size))
+ break;
+
+diff --git a/include/linux/kmsg_dump.h b/include/linux/kmsg_dump.h
+index 4095a34db0fa..2fdb10ab1799 100644
+--- a/include/linux/kmsg_dump.h
++++ b/include/linux/kmsg_dump.h
+@@ -29,6 +29,18 @@ enum kmsg_dump_reason {
+ KMSG_DUMP_MAX
+ };
+
++/**
++ * struct kmsg_dumper_iter - iterator for kernel crash message dumper
++ * @active: Flag that specifies if this is currently dumping
++ * @cur_seq: Points to the oldest message to dump (private)
++ * @next_seq: Points after the newest message to dump (private)
++ */
++struct kmsg_dumper_iter {
++ bool active;
++ u64 cur_seq;
++ u64 next_seq;
++};
++
+ /**
+ * struct kmsg_dumper - kernel crash message dumper structure
+ * @list: Entry in the dumper list (private)
+@@ -36,37 +48,30 @@ enum kmsg_dump_reason {
+ * through the record iterator
+ * @max_reason: filter for highest reason number that should be dumped
+ * @registered: Flag that specifies if this is already registered
+- * @active: Flag that specifies if this is currently dumping
+- * @cur_seq: Points to the oldest message to dump (private)
+- * @next_seq: Points after the newest message to dump (private)
+ */
+ struct kmsg_dumper {
+ struct list_head list;
+- void (*dump)(struct kmsg_dumper *dumper, enum kmsg_dump_reason reason);
++ void (*dump)(struct kmsg_dumper *dumper, enum kmsg_dump_reason reason,
++ struct kmsg_dumper_iter *iter);
+ enum kmsg_dump_reason max_reason;
+- bool active;
+ bool registered;
+-
+- /* private state of the kmsg iterator */
+- u64 cur_seq;
+- u64 next_seq;
+ };
+
+ #ifdef CONFIG_PRINTK
+ void kmsg_dump(enum kmsg_dump_reason reason);
+
+-bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, bool syslog,
++bool kmsg_dump_get_line_nolock(struct kmsg_dumper_iter *iter, bool syslog,
+ char *line, size_t size, size_t *len);
+
+-bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog,
++bool kmsg_dump_get_line(struct kmsg_dumper_iter *iter, bool syslog,
+ char *line, size_t size, size_t *len);
+
+-bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
++bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+ char *buf, size_t size, size_t *len_out);
+
+-void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper);
++void kmsg_dump_rewind_nolock(struct kmsg_dumper_iter *iter);
+
+-void kmsg_dump_rewind(struct kmsg_dumper *dumper);
++void kmsg_dump_rewind(struct kmsg_dumper_iter *dumper_iter);
+
+ int kmsg_dump_register(struct kmsg_dumper *dumper);
+
+@@ -78,30 +83,30 @@ static inline void kmsg_dump(enum kmsg_dump_reason reason)
+ {
+ }
+
+-static inline bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper,
++static inline bool kmsg_dump_get_line_nolock(struct kmsg_dumper_iter *iter,
+ bool syslog, const char *line,
+ size_t size, size_t *len)
+ {
+ return false;
+ }
+
+-static inline bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog,
++static inline bool kmsg_dump_get_line(struct kmsg_dumper_iter *iter, bool syslog,
+ const char *line, size_t size, size_t *len)
+ {
+ return false;
+ }
+
+-static inline bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
++static inline bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+ char *buf, size_t size, size_t *len)
+ {
+ return false;
+ }
+
+-static inline void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper)
++static inline void kmsg_dump_rewind_nolock(struct kmsg_dumper_iter *iter)
+ {
+ }
+
+-static inline void kmsg_dump_rewind(struct kmsg_dumper *dumper)
++static inline void kmsg_dump_rewind(struct kmsg_dumper_iter *iter)
+ {
+ }
+
+diff --git a/kernel/debug/kdb/kdb_main.c b/kernel/debug/kdb/kdb_main.c
+index 4e09fab52faf..048baadd7a41 100644
+--- a/kernel/debug/kdb/kdb_main.c
++++ b/kernel/debug/kdb/kdb_main.c
+@@ -2157,7 +2157,7 @@ static int kdb_dmesg(int argc, const char **argv)
+ int adjust = 0;
+ int n = 0;
+ int skip = 0;
+- struct kmsg_dumper dumper = { .active = 1 };
++ struct kmsg_dumper_iter iter = { .active = 1 };
+ size_t len;
+ char buf[201];
+
+@@ -2182,8 +2182,8 @@ static int kdb_dmesg(int argc, const char **argv)
+ kdb_set(2, setargs);
+ }
+
+- kmsg_dump_rewind_nolock(&dumper);
+- while (kmsg_dump_get_line_nolock(&dumper, 1, NULL, 0, NULL))
++ kmsg_dump_rewind_nolock(&iter);
++ while (kmsg_dump_get_line_nolock(&iter, 1, NULL, 0, NULL))
+ n++;
+
+ if (lines < 0) {
+@@ -2215,8 +2215,8 @@ static int kdb_dmesg(int argc, const char **argv)
+ if (skip >= n || skip < 0)
+ return 0;
+
+- kmsg_dump_rewind_nolock(&dumper);
+- while (kmsg_dump_get_line_nolock(&dumper, 1, buf, sizeof(buf), &len)) {
++ kmsg_dump_rewind_nolock(&iter);
++ while (kmsg_dump_get_line_nolock(&iter, 1, buf, sizeof(buf), &len)) {
+ if (skip) {
+ skip--;
+ continue;
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 986fc9fad210..b992be31824f 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -3394,6 +3394,7 @@ EXPORT_SYMBOL_GPL(kmsg_dump_reason_str);
+ */
+ void kmsg_dump(enum kmsg_dump_reason reason)
+ {
++ struct kmsg_dumper_iter iter;
+ struct kmsg_dumper *dumper;
+ unsigned long flags;
+
+@@ -3413,25 +3414,21 @@ void kmsg_dump(enum kmsg_dump_reason reason)
+ continue;
+
+ /* initialize iterator with data about the stored records */
+- dumper->active = true;
+-
++ iter.active = true;
+ logbuf_lock_irqsave(flags);
+- dumper->cur_seq = latched_seq_read_nolock(&clear_seq);
+- dumper->next_seq = prb_next_seq(prb);
++ iter.cur_seq = latched_seq_read_nolock(&clear_seq);
++ iter.next_seq = prb_next_seq(prb);
+ logbuf_unlock_irqrestore(flags);
+
+ /* invoke dumper which will iterate over records */
+- dumper->dump(dumper, reason);
+-
+- /* reset iterator */
+- dumper->active = false;
++ dumper->dump(dumper, reason, &iter);
+ }
+ rcu_read_unlock();
+ }
+
+ /**
+ * kmsg_dump_get_line_nolock - retrieve one kmsg log line (unlocked version)
+- * @dumper: registered kmsg dumper
++ * @iter: kmsg dumper iterator
+ * @syslog: include the "<4>" prefixes
+ * @line: buffer to copy the line to
+ * @size: maximum size of the buffer
+@@ -3448,7 +3445,7 @@ void kmsg_dump(enum kmsg_dump_reason reason)
+ *
+ * The function is similar to kmsg_dump_get_line(), but grabs no locks.
+ */
+-bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, bool syslog,
++bool kmsg_dump_get_line_nolock(struct kmsg_dumper_iter *iter, bool syslog,
+ char *line, size_t size, size_t *len)
+ {
+ struct printk_info info;
+@@ -3459,16 +3456,16 @@ bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, bool syslog,
+
+ prb_rec_init_rd(&r, &info, line, size);
+
+- if (!dumper->active)
++ if (!iter->active)
+ goto out;
+
+ /* Read text or count text lines? */
+ if (line) {
+- if (!prb_read_valid(prb, dumper->cur_seq, &r))
++ if (!prb_read_valid(prb, iter->cur_seq, &r))
+ goto out;
+ l = record_print_text(&r, syslog, printk_time);
+ } else {
+- if (!prb_read_valid_info(prb, dumper->cur_seq,
++ if (!prb_read_valid_info(prb, iter->cur_seq,
+ &info, &line_count)) {
+ goto out;
+ }
+@@ -3477,7 +3474,7 @@ bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, bool syslog,
+
+ }
+
+- dumper->cur_seq = r.info->seq + 1;
++ iter->cur_seq = r.info->seq + 1;
+ ret = true;
+ out:
+ if (len)
+@@ -3487,7 +3484,7 @@ bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, bool syslog,
+
+ /**
+ * kmsg_dump_get_line - retrieve one kmsg log line
+- * @dumper: registered kmsg dumper
++ * @iter: kmsg dumper iterator
+ * @syslog: include the "<4>" prefixes
+ * @line: buffer to copy the line to
+ * @size: maximum size of the buffer
+@@ -3502,14 +3499,14 @@ bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, bool syslog,
+ * A return value of FALSE indicates that there are no more records to
+ * read.
+ */
+-bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog,
++bool kmsg_dump_get_line(struct kmsg_dumper_iter *iter, bool syslog,
+ char *line, size_t size, size_t *len)
+ {
+ unsigned long flags;
+ bool ret;
+
+ logbuf_lock_irqsave(flags);
+- ret = kmsg_dump_get_line_nolock(dumper, syslog, line, size, len);
++ ret = kmsg_dump_get_line_nolock(iter, syslog, line, size, len);
+ logbuf_unlock_irqrestore(flags);
+
+ return ret;
+@@ -3518,7 +3515,7 @@ EXPORT_SYMBOL_GPL(kmsg_dump_get_line);
+
+ /**
+ * kmsg_dump_get_buffer - copy kmsg log lines
+- * @dumper: registered kmsg dumper
++ * @iter: kmsg dumper iterator
+ * @syslog: include the "<4>" prefixes
+ * @buf: buffer to copy the line to
+ * @size: maximum size of the buffer
+@@ -3535,7 +3532,7 @@ EXPORT_SYMBOL_GPL(kmsg_dump_get_line);
+ * A return value of FALSE indicates that there are no more records to
+ * read.
+ */
+-bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
++bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+ char *buf, size_t size, size_t *len_out)
+ {
+ struct printk_info info;
+@@ -3547,19 +3544,19 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
+ bool ret = false;
+ bool time = printk_time;
+
+- if (!dumper->active || !buf || !size)
++ if (!iter->active || !buf || !size)
+ goto out;
+
+ logbuf_lock_irqsave(flags);
+- if (prb_read_valid_info(prb, dumper->cur_seq, &info, NULL)) {
+- if (info.seq != dumper->cur_seq) {
++ if (prb_read_valid_info(prb, iter->cur_seq, &info, NULL)) {
++ if (info.seq != iter->cur_seq) {
+ /* messages are gone, move to first available one */
+- dumper->cur_seq = info.seq;
++ iter->cur_seq = info.seq;
+ }
+ }
+
+ /* last entry */
+- if (dumper->cur_seq >= dumper->next_seq) {
++ if (iter->cur_seq >= iter->next_seq) {
+ logbuf_unlock_irqrestore(flags);
+ goto out;
+ }
+@@ -3570,7 +3567,7 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
+ * because this function (by way of record_print_text()) will
+ * not write more than size-1 bytes of text into @buf.
+ */
+- seq = find_first_fitting_seq(dumper->cur_seq, dumper->next_seq,
++ seq = find_first_fitting_seq(iter->cur_seq, iter->next_seq,
+ size - 1, syslog, time);
+
+ /*
+@@ -3583,7 +3580,7 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
+
+ len = 0;
+ prb_for_each_record(seq, prb, seq, &r) {
+- if (r.info->seq >= dumper->next_seq)
++ if (r.info->seq >= iter->next_seq)
+ break;
+
+ len += record_print_text(&r, syslog, time);
+@@ -3592,7 +3589,7 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
+ prb_rec_init_rd(&r, &info, buf + len, size - len);
+ }
+
+- dumper->next_seq = next_seq;
++ iter->next_seq = next_seq;
+ ret = true;
+ logbuf_unlock_irqrestore(flags);
+ out:
+@@ -3604,7 +3601,7 @@ EXPORT_SYMBOL_GPL(kmsg_dump_get_buffer);
+
+ /**
+ * kmsg_dump_rewind_nolock - reset the iterator (unlocked version)
+- * @dumper: registered kmsg dumper
++ * @iter: kmsg dumper iterator
+ *
+ * Reset the dumper's iterator so that kmsg_dump_get_line() and
+ * kmsg_dump_get_buffer() can be called again and used multiple
+@@ -3612,26 +3609,26 @@ EXPORT_SYMBOL_GPL(kmsg_dump_get_buffer);
+ *
+ * The function is similar to kmsg_dump_rewind(), but grabs no locks.
+ */
+-void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper)
++void kmsg_dump_rewind_nolock(struct kmsg_dumper_iter *iter)
+ {
+- dumper->cur_seq = latched_seq_read_nolock(&clear_seq);
+- dumper->next_seq = prb_next_seq(prb);
++ iter->cur_seq = latched_seq_read_nolock(&clear_seq);
++ iter->next_seq = prb_next_seq(prb);
+ }
+
+ /**
+ * kmsg_dump_rewind - reset the iterator
+- * @dumper: registered kmsg dumper
++ * @iter: kmsg dumper iterator
+ *
+ * Reset the dumper's iterator so that kmsg_dump_get_line() and
+ * kmsg_dump_get_buffer() can be called again and used multiple
+ * times within the same dumper.dump() callback.
+ */
+-void kmsg_dump_rewind(struct kmsg_dumper *dumper)
++void kmsg_dump_rewind(struct kmsg_dumper_iter *iter)
+ {
+ unsigned long flags;
+
+ logbuf_lock_irqsave(flags);
+- kmsg_dump_rewind_nolock(dumper);
++ kmsg_dump_rewind_nolock(iter);
+ logbuf_unlock_irqrestore(flags);
+ }
+ EXPORT_SYMBOL_GPL(kmsg_dump_rewind);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0091-um-synchronize-kmsg_dumper.patch b/debian/patches-rt/0091-um-synchronize-kmsg_dumper.patch
new file mode 100644
index 000000000..88b6f08ca
--- /dev/null
+++ b/debian/patches-rt/0091-um-synchronize-kmsg_dumper.patch
@@ -0,0 +1,61 @@
+From 7790fa6baa700a285007a6e8ddf99393ba72acc2 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 21 Dec 2020 11:10:03 +0106
+Subject: [PATCH 091/323] um: synchronize kmsg_dumper
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The kmsg_dumper can be called from any context and CPU, possibly
+from multiple CPUs simultaneously. Since a static buffer is used
+to retrieve the kernel logs, this buffer must be protected against
+simultaneous dumping.
+
+Cc: Richard Weinberger <richard@nod.at>
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Reviewed-by: Petr Mladek <pmladek@suse.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/um/kernel/kmsg_dump.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/arch/um/kernel/kmsg_dump.c b/arch/um/kernel/kmsg_dump.c
+index f38349ad00ea..173999422ed8 100644
+--- a/arch/um/kernel/kmsg_dump.c
++++ b/arch/um/kernel/kmsg_dump.c
+@@ -1,5 +1,6 @@
+ // SPDX-License-Identifier: GPL-2.0
+ #include <linux/kmsg_dump.h>
++#include <linux/spinlock.h>
+ #include <linux/console.h>
+ #include <shared/init.h>
+ #include <shared/kern.h>
+@@ -9,8 +10,10 @@ static void kmsg_dumper_stdout(struct kmsg_dumper *dumper,
+ enum kmsg_dump_reason reason,
+ struct kmsg_dumper_iter *iter)
+ {
++ static DEFINE_SPINLOCK(lock);
+ static char line[1024];
+ struct console *con;
++ unsigned long flags;
+ size_t len = 0;
+
+ /* only dump kmsg when no console is available */
+@@ -25,11 +28,16 @@ static void kmsg_dumper_stdout(struct kmsg_dumper *dumper,
+ if (con)
+ return;
+
++ if (!spin_trylock_irqsave(&lock, flags))
++ return;
++
+ printf("kmsg_dump:\n");
+ while (kmsg_dump_get_line(iter, true, line, sizeof(line), &len)) {
+ line[len] = '\0';
+ printf("%s", line);
+ }
++
++ spin_unlock_irqrestore(&lock, flags);
+ }
+
+ static struct kmsg_dumper kmsg_dumper = {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0092-printk-remove-logbuf_lock.patch b/debian/patches-rt/0092-printk-remove-logbuf_lock.patch
new file mode 100644
index 000000000..6f45ee8b3
--- /dev/null
+++ b/debian/patches-rt/0092-printk-remove-logbuf_lock.patch
@@ -0,0 +1,486 @@
+From 74a8c8a0d6b64df822c5946a582ca3adeec24e63 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Tue, 26 Jan 2021 17:43:19 +0106
+Subject: [PATCH 092/323] printk: remove logbuf_lock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Since the ringbuffer is lockless, there is no need for it to be
+protected by @logbuf_lock. Remove @logbuf_lock.
+
+This means that printk_nmi_direct and printk_safe_flush_on_panic()
+no longer need to acquire any lock to run.
+
+@console_seq, @exclusive_console_stop_seq, @console_dropped are
+protected by @console_lock.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/internal.h | 4 +-
+ kernel/printk/printk.c | 118 ++++++++++++------------------------
+ kernel/printk/printk_safe.c | 29 +++------
+ 3 files changed, 48 insertions(+), 103 deletions(-)
+
+diff --git a/kernel/printk/internal.h b/kernel/printk/internal.h
+index 3a8fd491758c..e7acc2888c8e 100644
+--- a/kernel/printk/internal.h
++++ b/kernel/printk/internal.h
+@@ -12,8 +12,6 @@
+
+ #define PRINTK_NMI_CONTEXT_OFFSET 0x010000000
+
+-extern raw_spinlock_t logbuf_lock;
+-
+ __printf(4, 0)
+ int vprintk_store(int facility, int level,
+ const struct dev_printk_info *dev_info,
+@@ -59,7 +57,7 @@ void defer_console_output(void);
+ __printf(1, 0) int vprintk_func(const char *fmt, va_list args) { return 0; }
+
+ /*
+- * In !PRINTK builds we still export logbuf_lock spin_lock, console_sem
++ * In !PRINTK builds we still export console_sem
+ * semaphore and some of console functions (console_unlock()/etc.), so
+ * printk-safe must preserve the existing local IRQ guarantees.
+ */
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index b992be31824f..dde1696d7564 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -357,41 +357,6 @@ enum log_flags {
+ LOG_CONT = 8, /* text is a fragment of a continuation line */
+ };
+
+-/*
+- * The logbuf_lock protects kmsg buffer, indices, counters. This can be taken
+- * within the scheduler's rq lock. It must be released before calling
+- * console_unlock() or anything else that might wake up a process.
+- */
+-DEFINE_RAW_SPINLOCK(logbuf_lock);
+-
+-/*
+- * Helper macros to lock/unlock logbuf_lock and switch between
+- * printk-safe/unsafe modes.
+- */
+-#define logbuf_lock_irq() \
+- do { \
+- printk_safe_enter_irq(); \
+- raw_spin_lock(&logbuf_lock); \
+- } while (0)
+-
+-#define logbuf_unlock_irq() \
+- do { \
+- raw_spin_unlock(&logbuf_lock); \
+- printk_safe_exit_irq(); \
+- } while (0)
+-
+-#define logbuf_lock_irqsave(flags) \
+- do { \
+- printk_safe_enter_irqsave(flags); \
+- raw_spin_lock(&logbuf_lock); \
+- } while (0)
+-
+-#define logbuf_unlock_irqrestore(flags) \
+- do { \
+- raw_spin_unlock(&logbuf_lock); \
+- printk_safe_exit_irqrestore(flags); \
+- } while (0)
+-
+ /* syslog_lock protects syslog_* variables and write access to clear_seq. */
+ static DEFINE_RAW_SPINLOCK(syslog_lock);
+
+@@ -403,6 +368,7 @@ static u64 syslog_seq;
+ static size_t syslog_partial;
+ static bool syslog_time;
+
++/* All 3 protected by @console_sem. */
+ /* the next printk record to write to the console */
+ static u64 console_seq;
+ static u64 exclusive_console_stop_seq;
+@@ -769,27 +735,27 @@ static ssize_t devkmsg_read(struct file *file, char __user *buf,
+ if (ret)
+ return ret;
+
+- logbuf_lock_irq();
++ printk_safe_enter_irq();
+ if (!prb_read_valid(prb, atomic64_read(&user->seq), r)) {
+ if (file->f_flags & O_NONBLOCK) {
+ ret = -EAGAIN;
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+ goto out;
+ }
+
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+ ret = wait_event_interruptible(log_wait,
+ prb_read_valid(prb, atomic64_read(&user->seq), r));
+ if (ret)
+ goto out;
+- logbuf_lock_irq();
++ printk_safe_enter_irq();
+ }
+
+ if (r->info->seq != atomic64_read(&user->seq)) {
+ /* our last seen message is gone, return error and reset */
+ atomic64_set(&user->seq, r->info->seq);
+ ret = -EPIPE;
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+ goto out;
+ }
+
+@@ -799,7 +765,7 @@ static ssize_t devkmsg_read(struct file *file, char __user *buf,
+ &r->info->dev_info);
+
+ atomic64_set(&user->seq, r->info->seq + 1);
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+
+ if (len > count) {
+ ret = -EINVAL;
+@@ -834,7 +800,7 @@ static loff_t devkmsg_llseek(struct file *file, loff_t offset, int whence)
+ if (offset)
+ return -ESPIPE;
+
+- logbuf_lock_irq();
++ printk_safe_enter_irq();
+ switch (whence) {
+ case SEEK_SET:
+ /* the first record */
+@@ -855,7 +821,7 @@ static loff_t devkmsg_llseek(struct file *file, loff_t offset, int whence)
+ default:
+ ret = -EINVAL;
+ }
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+ return ret;
+ }
+
+@@ -870,15 +836,15 @@ static __poll_t devkmsg_poll(struct file *file, poll_table *wait)
+
+ poll_wait(file, &log_wait, wait);
+
+- logbuf_lock_irq();
+- if (prb_read_valid_info(prb, user->seq, &info, NULL)) {
++ printk_safe_enter_irq();
++ if (prb_read_valid_info(prb, atomic64_read(&user->seq), &info, NULL)) {
+ /* return error when data has vanished underneath us */
+ if (info.seq != atomic64_read(&user->seq))
+ ret = EPOLLIN|EPOLLRDNORM|EPOLLERR|EPOLLPRI;
+ else
+ ret = EPOLLIN|EPOLLRDNORM;
+ }
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+
+ return ret;
+ }
+@@ -911,9 +877,9 @@ static int devkmsg_open(struct inode *inode, struct file *file)
+ prb_rec_init_rd(&user->record, &user->info,
+ &user->text_buf[0], sizeof(user->text_buf));
+
+- logbuf_lock_irq();
++ printk_safe_enter_irq();
+ atomic64_set(&user->seq, prb_first_valid_seq(prb));
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+
+ file->private_data = user;
+ return 0;
+@@ -1535,11 +1501,11 @@ static int syslog_print(char __user *buf, int size)
+ size_t n;
+ size_t skip;
+
+- logbuf_lock_irq();
++ printk_safe_enter_irq();
+ raw_spin_lock(&syslog_lock);
+ if (!prb_read_valid(prb, syslog_seq, &r)) {
+ raw_spin_unlock(&syslog_lock);
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+ break;
+ }
+ if (r.info->seq != syslog_seq) {
+@@ -1569,7 +1535,7 @@ static int syslog_print(char __user *buf, int size)
+ } else
+ n = 0;
+ raw_spin_unlock(&syslog_lock);
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+
+ if (!n)
+ break;
+@@ -1603,7 +1569,7 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ return -ENOMEM;
+
+ time = printk_time;
+- logbuf_lock_irq();
++ printk_safe_enter_irq();
+ /*
+ * Find first record that fits, including all following records,
+ * into the user-provided buffer for this dump.
+@@ -1624,12 +1590,12 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ break;
+ }
+
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+ if (copy_to_user(buf + len, text, textlen))
+ len = -EFAULT;
+ else
+ len += textlen;
+- logbuf_lock_irq();
++ printk_safe_enter_irq();
+
+ if (len < 0)
+ break;
+@@ -1640,7 +1606,7 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ latched_seq_write(&clear_seq, seq);
+ raw_spin_unlock(&syslog_lock);
+ }
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+
+ kfree(text);
+ return len;
+@@ -1648,11 +1614,11 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+
+ static void syslog_clear(void)
+ {
+- logbuf_lock_irq();
++ printk_safe_enter_irq();
+ raw_spin_lock(&syslog_lock);
+ latched_seq_write(&clear_seq, prb_next_seq(prb));
+ raw_spin_unlock(&syslog_lock);
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+ }
+
+ /* Return a consistent copy of @syslog_seq. */
+@@ -1740,12 +1706,12 @@ int do_syslog(int type, char __user *buf, int len, int source)
+ break;
+ /* Number of chars in the log buffer */
+ case SYSLOG_ACTION_SIZE_UNREAD:
+- logbuf_lock_irq();
++ printk_safe_enter_irq();
+ raw_spin_lock(&syslog_lock);
+ if (!prb_read_valid_info(prb, syslog_seq, &info, NULL)) {
+ /* No unread messages. */
+ raw_spin_unlock(&syslog_lock);
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+ return 0;
+ }
+ if (info.seq != syslog_seq) {
+@@ -1774,7 +1740,7 @@ int do_syslog(int type, char __user *buf, int len, int source)
+ error -= syslog_partial;
+ }
+ raw_spin_unlock(&syslog_lock);
+- logbuf_unlock_irq();
++ printk_safe_exit_irq();
+ break;
+ /* Size of the log buffer */
+ case SYSLOG_ACTION_SIZE_BUFFER:
+@@ -2630,7 +2596,6 @@ void console_unlock(void)
+ size_t len;
+
+ printk_safe_enter_irqsave(flags);
+- raw_spin_lock(&logbuf_lock);
+ skip:
+ if (!prb_read_valid(prb, console_seq, &r))
+ break;
+@@ -2674,7 +2639,6 @@ void console_unlock(void)
+ console_msg_format & MSG_FORMAT_SYSLOG,
+ printk_time);
+ console_seq++;
+- raw_spin_unlock(&logbuf_lock);
+
+ /*
+ * While actively printing out messages, if another printk()
+@@ -2701,8 +2665,6 @@ void console_unlock(void)
+
+ console_locked = 0;
+
+- raw_spin_unlock(&logbuf_lock);
+-
+ up_console_sem();
+
+ /*
+@@ -2711,9 +2673,7 @@ void console_unlock(void)
+ * there's a new owner and the console_unlock() from them will do the
+ * flush, no worries.
+ */
+- raw_spin_lock(&logbuf_lock);
+ retry = prb_read_valid(prb, console_seq, NULL);
+- raw_spin_unlock(&logbuf_lock);
+ printk_safe_exit_irqrestore(flags);
+
+ if (retry && console_trylock())
+@@ -2780,9 +2740,9 @@ void console_flush_on_panic(enum con_flush_mode mode)
+ if (mode == CONSOLE_REPLAY_ALL) {
+ unsigned long flags;
+
+- logbuf_lock_irqsave(flags);
++ printk_safe_enter_irqsave(flags);
+ console_seq = prb_first_valid_seq(prb);
+- logbuf_unlock_irqrestore(flags);
++ printk_safe_exit_irqrestore(flags);
+ }
+ console_unlock();
+ }
+@@ -3011,7 +2971,7 @@ void register_console(struct console *newcon)
+ * console_unlock(); will print out the buffered messages
+ * for us.
+ */
+- logbuf_lock_irqsave(flags);
++ printk_safe_enter_irqsave(flags);
+ /*
+ * We're about to replay the log buffer. Only do this to the
+ * just-registered console to avoid excessive message spam to
+@@ -3029,7 +2989,7 @@ void register_console(struct console *newcon)
+ console_seq = syslog_seq;
+ raw_spin_unlock(&syslog_lock);
+
+- logbuf_unlock_irqrestore(flags);
++ printk_safe_exit_irqrestore(flags);
+ }
+ console_unlock();
+ console_sysfs_notify();
+@@ -3415,10 +3375,10 @@ void kmsg_dump(enum kmsg_dump_reason reason)
+
+ /* initialize iterator with data about the stored records */
+ iter.active = true;
+- logbuf_lock_irqsave(flags);
++ printk_safe_enter_irqsave(flags);
+ iter.cur_seq = latched_seq_read_nolock(&clear_seq);
+ iter.next_seq = prb_next_seq(prb);
+- logbuf_unlock_irqrestore(flags);
++ printk_safe_exit_irqrestore(flags);
+
+ /* invoke dumper which will iterate over records */
+ dumper->dump(dumper, reason, &iter);
+@@ -3505,9 +3465,9 @@ bool kmsg_dump_get_line(struct kmsg_dumper_iter *iter, bool syslog,
+ unsigned long flags;
+ bool ret;
+
+- logbuf_lock_irqsave(flags);
++ printk_safe_enter_irqsave(flags);
+ ret = kmsg_dump_get_line_nolock(iter, syslog, line, size, len);
+- logbuf_unlock_irqrestore(flags);
++ printk_safe_exit_irqrestore(flags);
+
+ return ret;
+ }
+@@ -3547,7 +3507,7 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+ if (!iter->active || !buf || !size)
+ goto out;
+
+- logbuf_lock_irqsave(flags);
++ printk_safe_enter_irqsave(flags);
+ if (prb_read_valid_info(prb, iter->cur_seq, &info, NULL)) {
+ if (info.seq != iter->cur_seq) {
+ /* messages are gone, move to first available one */
+@@ -3557,7 +3517,7 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+
+ /* last entry */
+ if (iter->cur_seq >= iter->next_seq) {
+- logbuf_unlock_irqrestore(flags);
++ printk_safe_exit_irqrestore(flags);
+ goto out;
+ }
+
+@@ -3591,7 +3551,7 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+
+ iter->next_seq = next_seq;
+ ret = true;
+- logbuf_unlock_irqrestore(flags);
++ printk_safe_exit_irqrestore(flags);
+ out:
+ if (len_out)
+ *len_out = len;
+@@ -3627,9 +3587,9 @@ void kmsg_dump_rewind(struct kmsg_dumper_iter *iter)
+ {
+ unsigned long flags;
+
+- logbuf_lock_irqsave(flags);
++ printk_safe_enter_irqsave(flags);
+ kmsg_dump_rewind_nolock(iter);
+- logbuf_unlock_irqrestore(flags);
++ printk_safe_exit_irqrestore(flags);
+ }
+ EXPORT_SYMBOL_GPL(kmsg_dump_rewind);
+
+diff --git a/kernel/printk/printk_safe.c b/kernel/printk/printk_safe.c
+index 2e9e3ed7d63e..7df8a88d4115 100644
+--- a/kernel/printk/printk_safe.c
++++ b/kernel/printk/printk_safe.c
+@@ -16,7 +16,7 @@
+ #include "internal.h"
+
+ /*
+- * printk() could not take logbuf_lock in NMI context. Instead,
++ * In NMI and safe mode, printk() avoids taking locks. Instead,
+ * it uses an alternative implementation that temporary stores
+ * the strings into a per-CPU buffer. The content of the buffer
+ * is later flushed into the main ring buffer via IRQ work.
+@@ -266,18 +266,6 @@ void printk_safe_flush(void)
+ */
+ void printk_safe_flush_on_panic(void)
+ {
+- /*
+- * Make sure that we could access the main ring buffer.
+- * Do not risk a double release when more CPUs are up.
+- */
+- if (raw_spin_is_locked(&logbuf_lock)) {
+- if (num_online_cpus() > 1)
+- return;
+-
+- debug_locks_off();
+- raw_spin_lock_init(&logbuf_lock);
+- }
+-
+ if (raw_spin_is_locked(&safe_read_lock)) {
+ if (num_online_cpus() > 1)
+ return;
+@@ -319,9 +307,7 @@ void noinstr printk_nmi_exit(void)
+ * reordering.
+ *
+ * It has effect only when called in NMI context. Then printk()
+- * will try to store the messages into the main logbuf directly
+- * and use the per-CPU buffers only as a fallback when the lock
+- * is not available.
++ * will store the messages into the main logbuf directly.
+ */
+ void printk_nmi_direct_enter(void)
+ {
+@@ -376,20 +362,21 @@ __printf(1, 0) int vprintk_func(const char *fmt, va_list args)
+ #endif
+
+ /*
+- * Try to use the main logbuf even in NMI. But avoid calling console
++ * Use the main logbuf even in NMI. But avoid calling console
+ * drivers that might have their own locks.
+ */
+- if ((this_cpu_read(printk_context) & PRINTK_NMI_DIRECT_CONTEXT_MASK) &&
+- raw_spin_trylock(&logbuf_lock)) {
++ if ((this_cpu_read(printk_context) & PRINTK_NMI_DIRECT_CONTEXT_MASK)) {
++ unsigned long flags;
+ int len;
+
++ printk_safe_enter_irqsave(flags);
+ len = vprintk_store(0, LOGLEVEL_DEFAULT, NULL, fmt, args);
+- raw_spin_unlock(&logbuf_lock);
++ printk_safe_exit_irqrestore(flags);
+ defer_console_output();
+ return len;
+ }
+
+- /* Use extra buffer in NMI when logbuf_lock is taken or in safe mode. */
++ /* Use extra buffer in NMI. */
+ if (this_cpu_read(printk_context) & PRINTK_NMI_CONTEXT_MASK)
+ return vprintk_nmi(fmt, args);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0093-printk-kmsg_dump-remove-_nolock-variants.patch b/debian/patches-rt/0093-printk-kmsg_dump-remove-_nolock-variants.patch
new file mode 100644
index 000000000..6ad034c1a
--- /dev/null
+++ b/debian/patches-rt/0093-printk-kmsg_dump-remove-_nolock-variants.patch
@@ -0,0 +1,226 @@
+From 171ee108014d67150846f1b8f978921cefc7b1e3 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 21 Dec 2020 10:27:58 +0106
+Subject: [PATCH 093/323] printk: kmsg_dump: remove _nolock() variants
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+kmsg_dump_rewind() and kmsg_dump_get_line() are lockless, so there is
+no need for _nolock() variants. Remove these functions and switch all
+callers of the _nolock() variants.
+
+The functions without _nolock() were chosen because they are already
+exported to kernel modules.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+---
+ arch/powerpc/xmon/xmon.c | 4 +--
+ include/linux/kmsg_dump.h | 18 +----------
+ kernel/debug/kdb/kdb_main.c | 8 ++---
+ kernel/printk/printk.c | 60 +++++--------------------------------
+ 4 files changed, 15 insertions(+), 75 deletions(-)
+
+diff --git a/arch/powerpc/xmon/xmon.c b/arch/powerpc/xmon/xmon.c
+index 9f62cca6c594..2eef587bf51d 100644
+--- a/arch/powerpc/xmon/xmon.c
++++ b/arch/powerpc/xmon/xmon.c
+@@ -3015,9 +3015,9 @@ dump_log_buf(void)
+ catch_memory_errors = 1;
+ sync();
+
+- kmsg_dump_rewind_nolock(&iter);
++ kmsg_dump_rewind(&iter);
+ xmon_start_pagination();
+- while (kmsg_dump_get_line_nolock(&iter, false, buf, sizeof(buf), &len)) {
++ while (kmsg_dump_get_line(&iter, false, buf, sizeof(buf), &len)) {
+ buf[len] = '\0';
+ printf("%s", buf);
+ }
+diff --git a/include/linux/kmsg_dump.h b/include/linux/kmsg_dump.h
+index 2fdb10ab1799..86673930c8ea 100644
+--- a/include/linux/kmsg_dump.h
++++ b/include/linux/kmsg_dump.h
+@@ -60,18 +60,13 @@ struct kmsg_dumper {
+ #ifdef CONFIG_PRINTK
+ void kmsg_dump(enum kmsg_dump_reason reason);
+
+-bool kmsg_dump_get_line_nolock(struct kmsg_dumper_iter *iter, bool syslog,
+- char *line, size_t size, size_t *len);
+-
+ bool kmsg_dump_get_line(struct kmsg_dumper_iter *iter, bool syslog,
+ char *line, size_t size, size_t *len);
+
+ bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+ char *buf, size_t size, size_t *len_out);
+
+-void kmsg_dump_rewind_nolock(struct kmsg_dumper_iter *iter);
+-
+-void kmsg_dump_rewind(struct kmsg_dumper_iter *dumper_iter);
++void kmsg_dump_rewind(struct kmsg_dumper_iter *iter);
+
+ int kmsg_dump_register(struct kmsg_dumper *dumper);
+
+@@ -83,13 +78,6 @@ static inline void kmsg_dump(enum kmsg_dump_reason reason)
+ {
+ }
+
+-static inline bool kmsg_dump_get_line_nolock(struct kmsg_dumper_iter *iter,
+- bool syslog, const char *line,
+- size_t size, size_t *len)
+-{
+- return false;
+-}
+-
+ static inline bool kmsg_dump_get_line(struct kmsg_dumper_iter *iter, bool syslog,
+ const char *line, size_t size, size_t *len)
+ {
+@@ -102,10 +90,6 @@ static inline bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool sysl
+ return false;
+ }
+
+-static inline void kmsg_dump_rewind_nolock(struct kmsg_dumper_iter *iter)
+-{
+-}
+-
+ static inline void kmsg_dump_rewind(struct kmsg_dumper_iter *iter)
+ {
+ }
+diff --git a/kernel/debug/kdb/kdb_main.c b/kernel/debug/kdb/kdb_main.c
+index 048baadd7a41..1f5c577b926e 100644
+--- a/kernel/debug/kdb/kdb_main.c
++++ b/kernel/debug/kdb/kdb_main.c
+@@ -2182,8 +2182,8 @@ static int kdb_dmesg(int argc, const char **argv)
+ kdb_set(2, setargs);
+ }
+
+- kmsg_dump_rewind_nolock(&iter);
+- while (kmsg_dump_get_line_nolock(&iter, 1, NULL, 0, NULL))
++ kmsg_dump_rewind(&iter);
++ while (kmsg_dump_get_line(&iter, 1, NULL, 0, NULL))
+ n++;
+
+ if (lines < 0) {
+@@ -2215,8 +2215,8 @@ static int kdb_dmesg(int argc, const char **argv)
+ if (skip >= n || skip < 0)
+ return 0;
+
+- kmsg_dump_rewind_nolock(&iter);
+- while (kmsg_dump_get_line_nolock(&iter, 1, buf, sizeof(buf), &len)) {
++ kmsg_dump_rewind(&iter);
++ while (kmsg_dump_get_line(&iter, 1, buf, sizeof(buf), &len)) {
+ if (skip) {
+ skip--;
+ continue;
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index dde1696d7564..031ce3f00141 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -3387,7 +3387,7 @@ void kmsg_dump(enum kmsg_dump_reason reason)
+ }
+
+ /**
+- * kmsg_dump_get_line_nolock - retrieve one kmsg log line (unlocked version)
++ * kmsg_dump_get_line - retrieve one kmsg log line
+ * @iter: kmsg dumper iterator
+ * @syslog: include the "<4>" prefixes
+ * @line: buffer to copy the line to
+@@ -3402,18 +3402,18 @@ void kmsg_dump(enum kmsg_dump_reason reason)
+ *
+ * A return value of FALSE indicates that there are no more records to
+ * read.
+- *
+- * The function is similar to kmsg_dump_get_line(), but grabs no locks.
+ */
+-bool kmsg_dump_get_line_nolock(struct kmsg_dumper_iter *iter, bool syslog,
+- char *line, size_t size, size_t *len)
++bool kmsg_dump_get_line(struct kmsg_dumper_iter *iter, bool syslog,
++ char *line, size_t size, size_t *len)
+ {
+ struct printk_info info;
+ unsigned int line_count;
+ struct printk_record r;
++ unsigned long flags;
+ size_t l = 0;
+ bool ret = false;
+
++ printk_safe_enter_irqsave(flags);
+ prb_rec_init_rd(&r, &info, line, size);
+
+ if (!iter->active)
+@@ -3437,40 +3437,11 @@ bool kmsg_dump_get_line_nolock(struct kmsg_dumper_iter *iter, bool syslog,
+ iter->cur_seq = r.info->seq + 1;
+ ret = true;
+ out:
++ printk_safe_exit_irqrestore(flags);
+ if (len)
+ *len = l;
+ return ret;
+ }
+-
+-/**
+- * kmsg_dump_get_line - retrieve one kmsg log line
+- * @iter: kmsg dumper iterator
+- * @syslog: include the "<4>" prefixes
+- * @line: buffer to copy the line to
+- * @size: maximum size of the buffer
+- * @len: length of line placed into buffer
+- *
+- * Start at the beginning of the kmsg buffer, with the oldest kmsg
+- * record, and copy one record into the provided buffer.
+- *
+- * Consecutive calls will return the next available record moving
+- * towards the end of the buffer with the youngest messages.
+- *
+- * A return value of FALSE indicates that there are no more records to
+- * read.
+- */
+-bool kmsg_dump_get_line(struct kmsg_dumper_iter *iter, bool syslog,
+- char *line, size_t size, size_t *len)
+-{
+- unsigned long flags;
+- bool ret;
+-
+- printk_safe_enter_irqsave(flags);
+- ret = kmsg_dump_get_line_nolock(iter, syslog, line, size, len);
+- printk_safe_exit_irqrestore(flags);
+-
+- return ret;
+-}
+ EXPORT_SYMBOL_GPL(kmsg_dump_get_line);
+
+ /**
+@@ -3559,22 +3530,6 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+ }
+ EXPORT_SYMBOL_GPL(kmsg_dump_get_buffer);
+
+-/**
+- * kmsg_dump_rewind_nolock - reset the iterator (unlocked version)
+- * @iter: kmsg dumper iterator
+- *
+- * Reset the dumper's iterator so that kmsg_dump_get_line() and
+- * kmsg_dump_get_buffer() can be called again and used multiple
+- * times within the same dumper.dump() callback.
+- *
+- * The function is similar to kmsg_dump_rewind(), but grabs no locks.
+- */
+-void kmsg_dump_rewind_nolock(struct kmsg_dumper_iter *iter)
+-{
+- iter->cur_seq = latched_seq_read_nolock(&clear_seq);
+- iter->next_seq = prb_next_seq(prb);
+-}
+-
+ /**
+ * kmsg_dump_rewind - reset the iterator
+ * @iter: kmsg dumper iterator
+@@ -3588,7 +3543,8 @@ void kmsg_dump_rewind(struct kmsg_dumper_iter *iter)
+ unsigned long flags;
+
+ printk_safe_enter_irqsave(flags);
+- kmsg_dump_rewind_nolock(iter);
++ iter->cur_seq = latched_seq_read_nolock(&clear_seq);
++ iter->next_seq = prb_next_seq(prb);
+ printk_safe_exit_irqrestore(flags);
+ }
+ EXPORT_SYMBOL_GPL(kmsg_dump_rewind);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0094-printk-kmsg_dump-use-kmsg_dump_rewind.patch b/debian/patches-rt/0094-printk-kmsg_dump-use-kmsg_dump_rewind.patch
new file mode 100644
index 000000000..7ff974d08
--- /dev/null
+++ b/debian/patches-rt/0094-printk-kmsg_dump-use-kmsg_dump_rewind.patch
@@ -0,0 +1,42 @@
+From 66a45e662dc7ecb7e9b519d3475c7893c0c1dc60 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Wed, 17 Feb 2021 18:23:16 +0100
+Subject: [PATCH 094/323] printk: kmsg_dump: use kmsg_dump_rewind
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+kmsg_dump() is open coding the kmsg_dump_rewind(). Call
+kmsg_dump_rewind() instead.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/printk.c | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 031ce3f00141..c553b235d068 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -3356,7 +3356,6 @@ void kmsg_dump(enum kmsg_dump_reason reason)
+ {
+ struct kmsg_dumper_iter iter;
+ struct kmsg_dumper *dumper;
+- unsigned long flags;
+
+ rcu_read_lock();
+ list_for_each_entry_rcu(dumper, &dump_list, list) {
+@@ -3375,10 +3374,7 @@ void kmsg_dump(enum kmsg_dump_reason reason)
+
+ /* initialize iterator with data about the stored records */
+ iter.active = true;
+- printk_safe_enter_irqsave(flags);
+- iter.cur_seq = latched_seq_read_nolock(&clear_seq);
+- iter.next_seq = prb_next_seq(prb);
+- printk_safe_exit_irqrestore(flags);
++ kmsg_dump_rewind(&iter);
+
+ /* invoke dumper which will iterate over records */
+ dumper->dump(dumper, reason, &iter);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0095-printk-console-remove-unnecessary-safe-buffer-usage.patch b/debian/patches-rt/0095-printk-console-remove-unnecessary-safe-buffer-usage.patch
new file mode 100644
index 000000000..2b93c47dd
--- /dev/null
+++ b/debian/patches-rt/0095-printk-console-remove-unnecessary-safe-buffer-usage.patch
@@ -0,0 +1,48 @@
+From 259c5c359d06d8bbbddebc6cc12fc2abc6bb2783 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Wed, 17 Feb 2021 18:28:05 +0100
+Subject: [PATCH 095/323] printk: console: remove unnecessary safe buffer usage
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Upon registering a console, safe buffers are activated when setting
+up the sequence number to replay the log. However, these are already
+protected by @console_sem and @syslog_lock. Remove the unnecessary
+safe buffer usage.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+---
+ kernel/printk/printk.c | 10 +++-------
+ 1 file changed, 3 insertions(+), 7 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index c553b235d068..aebc9e31b36a 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -2970,9 +2970,7 @@ void register_console(struct console *newcon)
+ /*
+ * console_unlock(); will print out the buffered messages
+ * for us.
+- */
+- printk_safe_enter_irqsave(flags);
+- /*
++ *
+ * We're about to replay the log buffer. Only do this to the
+ * just-registered console to avoid excessive message spam to
+ * the already-registered consoles.
+@@ -2985,11 +2983,9 @@ void register_console(struct console *newcon)
+ exclusive_console_stop_seq = console_seq;
+
+ /* Get a consistent copy of @syslog_seq. */
+- raw_spin_lock(&syslog_lock);
++ raw_spin_lock_irqsave(&syslog_lock, flags);
+ console_seq = syslog_seq;
+- raw_spin_unlock(&syslog_lock);
+-
+- printk_safe_exit_irqrestore(flags);
++ raw_spin_unlock_irqrestore(&syslog_lock, flags);
+ }
+ console_unlock();
+ console_sysfs_notify();
+--
+2.43.0
+
diff --git a/debian/patches-rt/0096-printk-track-limit-recursion.patch b/debian/patches-rt/0096-printk-track-limit-recursion.patch
new file mode 100644
index 000000000..ee26831be
--- /dev/null
+++ b/debian/patches-rt/0096-printk-track-limit-recursion.patch
@@ -0,0 +1,143 @@
+From 05db2b7a33a6aed0cb1ce99370c436dc2b72b521 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Fri, 11 Dec 2020 00:55:25 +0106
+Subject: [PATCH 096/323] printk: track/limit recursion
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Limit printk() recursion to 1 level. This is enough to print a
+stacktrace for the printk call, should a WARN or BUG occur.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/printk.c | 74 ++++++++++++++++++++++++++++++++++++++++--
+ 1 file changed, 71 insertions(+), 3 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index aebc9e31b36a..31a2b7a116a7 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -1943,6 +1943,65 @@ static void call_console_drivers(const char *ext_text, size_t ext_len,
+ }
+ }
+
++#ifdef CONFIG_PRINTK_NMI
++#define NUM_RECURSION_CTX 2
++#else
++#define NUM_RECURSION_CTX 1
++#endif
++
++struct printk_recursion {
++ char count[NUM_RECURSION_CTX];
++};
++
++static DEFINE_PER_CPU(struct printk_recursion, percpu_printk_recursion);
++static char printk_recursion_count[NUM_RECURSION_CTX];
++
++static char *printk_recursion_counter(void)
++{
++ struct printk_recursion *rec;
++ char *count;
++
++ if (!printk_percpu_data_ready()) {
++ count = &printk_recursion_count[0];
++ } else {
++ rec = this_cpu_ptr(&percpu_printk_recursion);
++
++ count = &rec->count[0];
++ }
++
++#ifdef CONFIG_PRINTK_NMI
++ if (in_nmi())
++ count++;
++#endif
++
++ return count;
++}
++
++static bool printk_enter_irqsave(unsigned long *flags)
++{
++ char *count;
++
++ local_irq_save(*flags);
++ count = printk_recursion_counter();
++ /* Only 1 level of recursion allowed. */
++ if (*count > 1) {
++ local_irq_restore(*flags);
++ return false;
++ }
++ (*count)++;
++
++ return true;
++}
++
++static void printk_exit_irqrestore(unsigned long flags)
++{
++ char *count;
++
++ count = printk_recursion_counter();
++ (*count)--;
++ local_irq_restore(flags);
++}
++
+ int printk_delay_msec __read_mostly;
+
+ static inline void printk_delay(void)
+@@ -2043,11 +2102,13 @@ int vprintk_store(int facility, int level,
+ struct prb_reserved_entry e;
+ enum log_flags lflags = 0;
+ struct printk_record r;
++ unsigned long irqflags;
+ u16 trunc_msg_len = 0;
+ char prefix_buf[8];
+ u16 reserve_size;
+ va_list args2;
+ u16 text_len;
++ int ret = 0;
+ u64 ts_nsec;
+
+ /*
+@@ -2058,6 +2119,9 @@ int vprintk_store(int facility, int level,
+ */
+ ts_nsec = local_clock();
+
++ if (!printk_enter_irqsave(&irqflags))
++ return 0;
++
+ /*
+ * The sprintf needs to come first since the syslog prefix might be
+ * passed in as a parameter. An extra byte must be reserved so that
+@@ -2095,7 +2159,8 @@ int vprintk_store(int facility, int level,
+ prb_commit(&e);
+ }
+
+- return text_len;
++ ret = text_len;
++ goto out;
+ }
+ }
+
+@@ -2111,7 +2176,7 @@ int vprintk_store(int facility, int level,
+
+ prb_rec_init_wr(&r, reserve_size + trunc_msg_len);
+ if (!prb_reserve(&e, prb, &r))
+- return 0;
++ goto out;
+ }
+
+ /* fill message */
+@@ -2133,7 +2198,10 @@ int vprintk_store(int facility, int level,
+ else
+ prb_final_commit(&e);
+
+- return (text_len + trunc_msg_len);
++ ret = text_len + trunc_msg_len;
++out:
++ printk_exit_irqrestore(irqflags);
++ return ret;
+ }
+
+ asmlinkage int vprintk_emit(int facility, int level,
+--
+2.43.0
+
diff --git a/debian/patches-rt/0097-printk-remove-safe-buffers.patch b/debian/patches-rt/0097-printk-remove-safe-buffers.patch
new file mode 100644
index 000000000..df3318972
--- /dev/null
+++ b/debian/patches-rt/0097-printk-remove-safe-buffers.patch
@@ -0,0 +1,877 @@
+From c0ee407b7db3b7ac5c24337a9d365a35450c233b Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:00 +0106
+Subject: [PATCH 097/323] printk: remove safe buffers
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+With @logbuf_lock removed, the high level printk functions for
+storing messages are lockless. Messages can be stored from any
+context, so there is no need for the NMI and safe buffers anymore.
+
+Remove the NMI and safe buffers. In NMI or safe contexts, store
+the message immediately but still use irq_work to defer the console
+printing.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/powerpc/kernel/traps.c | 1 -
+ arch/powerpc/kernel/watchdog.c | 5 -
+ include/linux/printk.h | 10 -
+ kernel/kexec_core.c | 1 -
+ kernel/panic.c | 3 -
+ kernel/printk/internal.h | 2 -
+ kernel/printk/printk.c | 85 ++-------
+ kernel/printk/printk_safe.c | 329 +--------------------------------
+ lib/nmi_backtrace.c | 6 -
+ 9 files changed, 17 insertions(+), 425 deletions(-)
+
+diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
+index 5e5a2448ae79..d39a4a6b4ddf 100644
+--- a/arch/powerpc/kernel/traps.c
++++ b/arch/powerpc/kernel/traps.c
+@@ -170,7 +170,6 @@ extern void panic_flush_kmsg_start(void)
+
+ extern void panic_flush_kmsg_end(void)
+ {
+- printk_safe_flush_on_panic();
+ kmsg_dump(KMSG_DUMP_PANIC);
+ bust_spinlocks(0);
+ debug_locks_off();
+diff --git a/arch/powerpc/kernel/watchdog.c b/arch/powerpc/kernel/watchdog.c
+index 75b2a6c4db5a..db40e20d0c54 100644
+--- a/arch/powerpc/kernel/watchdog.c
++++ b/arch/powerpc/kernel/watchdog.c
+@@ -185,11 +185,6 @@ static void watchdog_smp_panic(int cpu, u64 tb)
+
+ wd_smp_unlock(&flags);
+
+- printk_safe_flush();
+- /*
+- * printk_safe_flush() seems to require another print
+- * before anything actually goes out to console.
+- */
+ if (sysctl_hardlockup_all_cpu_backtrace)
+ trigger_allbutself_cpu_backtrace();
+
+diff --git a/include/linux/printk.h b/include/linux/printk.h
+index 344f6da3d4c3..c6bb48f0134c 100644
+--- a/include/linux/printk.h
++++ b/include/linux/printk.h
+@@ -207,8 +207,6 @@ __printf(1, 2) void dump_stack_set_arch_desc(const char *fmt, ...);
+ void dump_stack_print_info(const char *log_lvl);
+ void show_regs_print_info(const char *log_lvl);
+ extern asmlinkage void dump_stack(void) __cold;
+-extern void printk_safe_flush(void);
+-extern void printk_safe_flush_on_panic(void);
+ #else
+ static inline __printf(1, 0)
+ int vprintk(const char *s, va_list args)
+@@ -272,14 +270,6 @@ static inline void show_regs_print_info(const char *log_lvl)
+ static inline void dump_stack(void)
+ {
+ }
+-
+-static inline void printk_safe_flush(void)
+-{
+-}
+-
+-static inline void printk_safe_flush_on_panic(void)
+-{
+-}
+ #endif
+
+ extern int kptr_restrict;
+diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c
+index 3a37fc62dc95..78a1fd9c3c8a 100644
+--- a/kernel/kexec_core.c
++++ b/kernel/kexec_core.c
+@@ -978,7 +978,6 @@ void crash_kexec(struct pt_regs *regs)
+ old_cpu = atomic_cmpxchg(&panic_cpu, PANIC_CPU_INVALID, this_cpu);
+ if (old_cpu == PANIC_CPU_INVALID) {
+ /* This is the 1st CPU which comes here, so go ahead. */
+- printk_safe_flush_on_panic();
+ __crash_kexec(regs);
+
+ /*
+diff --git a/kernel/panic.c b/kernel/panic.c
+index bc39e2b27d31..7965f1e31224 100644
+--- a/kernel/panic.c
++++ b/kernel/panic.c
+@@ -324,7 +324,6 @@ void panic(const char *fmt, ...)
+ * Bypass the panic_cpu check and call __crash_kexec directly.
+ */
+ if (!_crash_kexec_post_notifiers) {
+- printk_safe_flush_on_panic();
+ __crash_kexec(NULL);
+
+ /*
+@@ -348,8 +347,6 @@ void panic(const char *fmt, ...)
+ */
+ atomic_notifier_call_chain(&panic_notifier_list, 0, buf);
+
+- /* Call flush even twice. It tries harder with a single online CPU */
+- printk_safe_flush_on_panic();
+ kmsg_dump(KMSG_DUMP_PANIC);
+
+ /*
+diff --git a/kernel/printk/internal.h b/kernel/printk/internal.h
+index e7acc2888c8e..e108b2ece8c7 100644
+--- a/kernel/printk/internal.h
++++ b/kernel/printk/internal.h
+@@ -23,7 +23,6 @@ __printf(1, 0) int vprintk_func(const char *fmt, va_list args);
+ void __printk_safe_enter(void);
+ void __printk_safe_exit(void);
+
+-void printk_safe_init(void);
+ bool printk_percpu_data_ready(void);
+
+ #define printk_safe_enter_irqsave(flags) \
+@@ -67,6 +66,5 @@ __printf(1, 0) int vprintk_func(const char *fmt, va_list args) { return 0; }
+ #define printk_safe_enter_irq() local_irq_disable()
+ #define printk_safe_exit_irq() local_irq_enable()
+
+-static inline void printk_safe_init(void) { }
+ static inline bool printk_percpu_data_ready(void) { return false; }
+ #endif /* CONFIG_PRINTK */
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 31a2b7a116a7..90a4cf4c23a4 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -735,27 +735,22 @@ static ssize_t devkmsg_read(struct file *file, char __user *buf,
+ if (ret)
+ return ret;
+
+- printk_safe_enter_irq();
+ if (!prb_read_valid(prb, atomic64_read(&user->seq), r)) {
+ if (file->f_flags & O_NONBLOCK) {
+ ret = -EAGAIN;
+- printk_safe_exit_irq();
+ goto out;
+ }
+
+- printk_safe_exit_irq();
+ ret = wait_event_interruptible(log_wait,
+ prb_read_valid(prb, atomic64_read(&user->seq), r));
+ if (ret)
+ goto out;
+- printk_safe_enter_irq();
+ }
+
+ if (r->info->seq != atomic64_read(&user->seq)) {
+ /* our last seen message is gone, return error and reset */
+ atomic64_set(&user->seq, r->info->seq);
+ ret = -EPIPE;
+- printk_safe_exit_irq();
+ goto out;
+ }
+
+@@ -765,7 +760,6 @@ static ssize_t devkmsg_read(struct file *file, char __user *buf,
+ &r->info->dev_info);
+
+ atomic64_set(&user->seq, r->info->seq + 1);
+- printk_safe_exit_irq();
+
+ if (len > count) {
+ ret = -EINVAL;
+@@ -800,7 +794,6 @@ static loff_t devkmsg_llseek(struct file *file, loff_t offset, int whence)
+ if (offset)
+ return -ESPIPE;
+
+- printk_safe_enter_irq();
+ switch (whence) {
+ case SEEK_SET:
+ /* the first record */
+@@ -821,7 +814,6 @@ static loff_t devkmsg_llseek(struct file *file, loff_t offset, int whence)
+ default:
+ ret = -EINVAL;
+ }
+- printk_safe_exit_irq();
+ return ret;
+ }
+
+@@ -836,7 +828,6 @@ static __poll_t devkmsg_poll(struct file *file, poll_table *wait)
+
+ poll_wait(file, &log_wait, wait);
+
+- printk_safe_enter_irq();
+ if (prb_read_valid_info(prb, atomic64_read(&user->seq), &info, NULL)) {
+ /* return error when data has vanished underneath us */
+ if (info.seq != atomic64_read(&user->seq))
+@@ -844,7 +835,6 @@ static __poll_t devkmsg_poll(struct file *file, poll_table *wait)
+ else
+ ret = EPOLLIN|EPOLLRDNORM;
+ }
+- printk_safe_exit_irq();
+
+ return ret;
+ }
+@@ -877,9 +867,7 @@ static int devkmsg_open(struct inode *inode, struct file *file)
+ prb_rec_init_rd(&user->record, &user->info,
+ &user->text_buf[0], sizeof(user->text_buf));
+
+- printk_safe_enter_irq();
+ atomic64_set(&user->seq, prb_first_valid_seq(prb));
+- printk_safe_exit_irq();
+
+ file->private_data = user;
+ return 0;
+@@ -1045,9 +1033,6 @@ static inline void log_buf_add_cpu(void) {}
+
+ static void __init set_percpu_data_ready(void)
+ {
+- printk_safe_init();
+- /* Make sure we set this flag only after printk_safe() init is done */
+- barrier();
+ __printk_percpu_data_ready = true;
+ }
+
+@@ -1145,8 +1130,6 @@ void __init setup_log_buf(int early)
+ new_descs, ilog2(new_descs_count),
+ new_infos);
+
+- printk_safe_enter_irqsave(flags);
+-
+ log_buf_len = new_log_buf_len;
+ log_buf = new_log_buf;
+ new_log_buf_len = 0;
+@@ -1162,8 +1145,6 @@ void __init setup_log_buf(int early)
+ */
+ prb = &printk_rb_dynamic;
+
+- printk_safe_exit_irqrestore(flags);
+-
+ if (seq != prb_next_seq(&printk_rb_static)) {
+ pr_err("dropped %llu messages\n",
+ prb_next_seq(&printk_rb_static) - seq);
+@@ -1501,11 +1482,9 @@ static int syslog_print(char __user *buf, int size)
+ size_t n;
+ size_t skip;
+
+- printk_safe_enter_irq();
+- raw_spin_lock(&syslog_lock);
++ raw_spin_lock_irq(&syslog_lock);
+ if (!prb_read_valid(prb, syslog_seq, &r)) {
+- raw_spin_unlock(&syslog_lock);
+- printk_safe_exit_irq();
++ raw_spin_unlock_irq(&syslog_lock);
+ break;
+ }
+ if (r.info->seq != syslog_seq) {
+@@ -1534,8 +1513,7 @@ static int syslog_print(char __user *buf, int size)
+ syslog_partial += n;
+ } else
+ n = 0;
+- raw_spin_unlock(&syslog_lock);
+- printk_safe_exit_irq();
++ raw_spin_unlock_irq(&syslog_lock);
+
+ if (!n)
+ break;
+@@ -1569,7 +1547,6 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ return -ENOMEM;
+
+ time = printk_time;
+- printk_safe_enter_irq();
+ /*
+ * Find first record that fits, including all following records,
+ * into the user-provided buffer for this dump.
+@@ -1590,23 +1567,20 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ break;
+ }
+
+- printk_safe_exit_irq();
+ if (copy_to_user(buf + len, text, textlen))
+ len = -EFAULT;
+ else
+ len += textlen;
+- printk_safe_enter_irq();
+
+ if (len < 0)
+ break;
+ }
+
+ if (clear) {
+- raw_spin_lock(&syslog_lock);
++ raw_spin_lock_irq(&syslog_lock);
+ latched_seq_write(&clear_seq, seq);
+- raw_spin_unlock(&syslog_lock);
++ raw_spin_unlock_irq(&syslog_lock);
+ }
+- printk_safe_exit_irq();
+
+ kfree(text);
+ return len;
+@@ -1614,11 +1588,9 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+
+ static void syslog_clear(void)
+ {
+- printk_safe_enter_irq();
+- raw_spin_lock(&syslog_lock);
++ raw_spin_lock_irq(&syslog_lock);
+ latched_seq_write(&clear_seq, prb_next_seq(prb));
+- raw_spin_unlock(&syslog_lock);
+- printk_safe_exit_irq();
++ raw_spin_unlock_irq(&syslog_lock);
+ }
+
+ /* Return a consistent copy of @syslog_seq. */
+@@ -1706,12 +1678,10 @@ int do_syslog(int type, char __user *buf, int len, int source)
+ break;
+ /* Number of chars in the log buffer */
+ case SYSLOG_ACTION_SIZE_UNREAD:
+- printk_safe_enter_irq();
+- raw_spin_lock(&syslog_lock);
++ raw_spin_lock_irq(&syslog_lock);
+ if (!prb_read_valid_info(prb, syslog_seq, &info, NULL)) {
+ /* No unread messages. */
+- raw_spin_unlock(&syslog_lock);
+- printk_safe_exit_irq();
++ raw_spin_unlock_irq(&syslog_lock);
+ return 0;
+ }
+ if (info.seq != syslog_seq) {
+@@ -1739,8 +1709,7 @@ int do_syslog(int type, char __user *buf, int len, int source)
+ }
+ error -= syslog_partial;
+ }
+- raw_spin_unlock(&syslog_lock);
+- printk_safe_exit_irq();
++ raw_spin_unlock_irq(&syslog_lock);
+ break;
+ /* Size of the log buffer */
+ case SYSLOG_ACTION_SIZE_BUFFER:
+@@ -2210,7 +2179,6 @@ asmlinkage int vprintk_emit(int facility, int level,
+ {
+ int printed_len;
+ bool in_sched = false;
+- unsigned long flags;
+
+ /* Suppress unimportant messages after panic happens */
+ if (unlikely(suppress_printk))
+@@ -2224,9 +2192,7 @@ asmlinkage int vprintk_emit(int facility, int level,
+ boot_delay_msec(level);
+ printk_delay();
+
+- printk_safe_enter_irqsave(flags);
+ printed_len = vprintk_store(facility, level, dev_info, fmt, args);
+- printk_safe_exit_irqrestore(flags);
+
+ /* If called from the scheduler, we can not call up(). */
+ if (!in_sched) {
+@@ -2618,7 +2584,6 @@ void console_unlock(void)
+ {
+ static char ext_text[CONSOLE_EXT_LOG_MAX];
+ static char text[CONSOLE_LOG_MAX];
+- unsigned long flags;
+ bool do_cond_resched, retry;
+ struct printk_info info;
+ struct printk_record r;
+@@ -2663,7 +2628,6 @@ void console_unlock(void)
+ size_t ext_len = 0;
+ size_t len;
+
+- printk_safe_enter_irqsave(flags);
+ skip:
+ if (!prb_read_valid(prb, console_seq, &r))
+ break;
+@@ -2720,12 +2684,8 @@ void console_unlock(void)
+ call_console_drivers(ext_text, ext_len, text, len);
+ start_critical_timings();
+
+- if (console_lock_spinning_disable_and_check()) {
+- printk_safe_exit_irqrestore(flags);
++ if (console_lock_spinning_disable_and_check())
+ return;
+- }
+-
+- printk_safe_exit_irqrestore(flags);
+
+ if (do_cond_resched)
+ cond_resched();
+@@ -2742,8 +2702,6 @@ void console_unlock(void)
+ * flush, no worries.
+ */
+ retry = prb_read_valid(prb, console_seq, NULL);
+- printk_safe_exit_irqrestore(flags);
+-
+ if (retry && console_trylock())
+ goto again;
+ }
+@@ -2805,13 +2763,8 @@ void console_flush_on_panic(enum con_flush_mode mode)
+ console_trylock();
+ console_may_schedule = 0;
+
+- if (mode == CONSOLE_REPLAY_ALL) {
+- unsigned long flags;
+-
+- printk_safe_enter_irqsave(flags);
++ if (mode == CONSOLE_REPLAY_ALL)
+ console_seq = prb_first_valid_seq(prb);
+- printk_safe_exit_irqrestore(flags);
+- }
+ console_unlock();
+ }
+
+@@ -3469,11 +3422,9 @@ bool kmsg_dump_get_line(struct kmsg_dumper_iter *iter, bool syslog,
+ struct printk_info info;
+ unsigned int line_count;
+ struct printk_record r;
+- unsigned long flags;
+ size_t l = 0;
+ bool ret = false;
+
+- printk_safe_enter_irqsave(flags);
+ prb_rec_init_rd(&r, &info, line, size);
+
+ if (!iter->active)
+@@ -3497,7 +3448,6 @@ bool kmsg_dump_get_line(struct kmsg_dumper_iter *iter, bool syslog,
+ iter->cur_seq = r.info->seq + 1;
+ ret = true;
+ out:
+- printk_safe_exit_irqrestore(flags);
+ if (len)
+ *len = l;
+ return ret;
+@@ -3528,7 +3478,6 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+ {
+ struct printk_info info;
+ struct printk_record r;
+- unsigned long flags;
+ u64 seq;
+ u64 next_seq;
+ size_t len = 0;
+@@ -3538,7 +3487,6 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+ if (!iter->active || !buf || !size)
+ goto out;
+
+- printk_safe_enter_irqsave(flags);
+ if (prb_read_valid_info(prb, iter->cur_seq, &info, NULL)) {
+ if (info.seq != iter->cur_seq) {
+ /* messages are gone, move to first available one */
+@@ -3547,10 +3495,8 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+ }
+
+ /* last entry */
+- if (iter->cur_seq >= iter->next_seq) {
+- printk_safe_exit_irqrestore(flags);
++ if (iter->cur_seq >= iter->next_seq)
+ goto out;
+- }
+
+ /*
+ * Find first record that fits, including all following records,
+@@ -3582,7 +3528,6 @@ bool kmsg_dump_get_buffer(struct kmsg_dumper_iter *iter, bool syslog,
+
+ iter->next_seq = next_seq;
+ ret = true;
+- printk_safe_exit_irqrestore(flags);
+ out:
+ if (len_out)
+ *len_out = len;
+@@ -3600,12 +3545,8 @@ EXPORT_SYMBOL_GPL(kmsg_dump_get_buffer);
+ */
+ void kmsg_dump_rewind(struct kmsg_dumper_iter *iter)
+ {
+- unsigned long flags;
+-
+- printk_safe_enter_irqsave(flags);
+ iter->cur_seq = latched_seq_read_nolock(&clear_seq);
+ iter->next_seq = prb_next_seq(prb);
+- printk_safe_exit_irqrestore(flags);
+ }
+ EXPORT_SYMBOL_GPL(kmsg_dump_rewind);
+
+diff --git a/kernel/printk/printk_safe.c b/kernel/printk/printk_safe.c
+index 7df8a88d4115..c23b127a6545 100644
+--- a/kernel/printk/printk_safe.c
++++ b/kernel/printk/printk_safe.c
+@@ -15,282 +15,9 @@
+
+ #include "internal.h"
+
+-/*
+- * In NMI and safe mode, printk() avoids taking locks. Instead,
+- * it uses an alternative implementation that temporary stores
+- * the strings into a per-CPU buffer. The content of the buffer
+- * is later flushed into the main ring buffer via IRQ work.
+- *
+- * The alternative implementation is chosen transparently
+- * by examining current printk() context mask stored in @printk_context
+- * per-CPU variable.
+- *
+- * The implementation allows to flush the strings also from another CPU.
+- * There are situations when we want to make sure that all buffers
+- * were handled or when IRQs are blocked.
+- */
+-
+-#define SAFE_LOG_BUF_LEN ((1 << CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT) - \
+- sizeof(atomic_t) - \
+- sizeof(atomic_t) - \
+- sizeof(struct irq_work))
+-
+-struct printk_safe_seq_buf {
+- atomic_t len; /* length of written data */
+- atomic_t message_lost;
+- struct irq_work work; /* IRQ work that flushes the buffer */
+- unsigned char buffer[SAFE_LOG_BUF_LEN];
+-};
+-
+-static DEFINE_PER_CPU(struct printk_safe_seq_buf, safe_print_seq);
+ static DEFINE_PER_CPU(int, printk_context);
+
+-static DEFINE_RAW_SPINLOCK(safe_read_lock);
+-
+-#ifdef CONFIG_PRINTK_NMI
+-static DEFINE_PER_CPU(struct printk_safe_seq_buf, nmi_print_seq);
+-#endif
+-
+-/* Get flushed in a more safe context. */
+-static void queue_flush_work(struct printk_safe_seq_buf *s)
+-{
+- if (printk_percpu_data_ready())
+- irq_work_queue(&s->work);
+-}
+-
+-/*
+- * Add a message to per-CPU context-dependent buffer. NMI and printk-safe
+- * have dedicated buffers, because otherwise printk-safe preempted by
+- * NMI-printk would have overwritten the NMI messages.
+- *
+- * The messages are flushed from irq work (or from panic()), possibly,
+- * from other CPU, concurrently with printk_safe_log_store(). Should this
+- * happen, printk_safe_log_store() will notice the buffer->len mismatch
+- * and repeat the write.
+- */
+-static __printf(2, 0) int printk_safe_log_store(struct printk_safe_seq_buf *s,
+- const char *fmt, va_list args)
+-{
+- int add;
+- size_t len;
+- va_list ap;
+-
+-again:
+- len = atomic_read(&s->len);
+-
+- /* The trailing '\0' is not counted into len. */
+- if (len >= sizeof(s->buffer) - 1) {
+- atomic_inc(&s->message_lost);
+- queue_flush_work(s);
+- return 0;
+- }
+-
+- /*
+- * Make sure that all old data have been read before the buffer
+- * was reset. This is not needed when we just append data.
+- */
+- if (!len)
+- smp_rmb();
+-
+- va_copy(ap, args);
+- add = vscnprintf(s->buffer + len, sizeof(s->buffer) - len, fmt, ap);
+- va_end(ap);
+- if (!add)
+- return 0;
+-
+- /*
+- * Do it once again if the buffer has been flushed in the meantime.
+- * Note that atomic_cmpxchg() is an implicit memory barrier that
+- * makes sure that the data were written before updating s->len.
+- */
+- if (atomic_cmpxchg(&s->len, len, len + add) != len)
+- goto again;
+-
+- queue_flush_work(s);
+- return add;
+-}
+-
+-static inline void printk_safe_flush_line(const char *text, int len)
+-{
+- /*
+- * Avoid any console drivers calls from here, because we may be
+- * in NMI or printk_safe context (when in panic). The messages
+- * must go only into the ring buffer at this stage. Consoles will
+- * get explicitly called later when a crashdump is not generated.
+- */
+- printk_deferred("%.*s", len, text);
+-}
+-
+-/* printk part of the temporary buffer line by line */
+-static int printk_safe_flush_buffer(const char *start, size_t len)
+-{
+- const char *c, *end;
+- bool header;
+-
+- c = start;
+- end = start + len;
+- header = true;
+-
+- /* Print line by line. */
+- while (c < end) {
+- if (*c == '\n') {
+- printk_safe_flush_line(start, c - start + 1);
+- start = ++c;
+- header = true;
+- continue;
+- }
+-
+- /* Handle continuous lines or missing new line. */
+- if ((c + 1 < end) && printk_get_level(c)) {
+- if (header) {
+- c = printk_skip_level(c);
+- continue;
+- }
+-
+- printk_safe_flush_line(start, c - start);
+- start = c++;
+- header = true;
+- continue;
+- }
+-
+- header = false;
+- c++;
+- }
+-
+- /* Check if there was a partial line. Ignore pure header. */
+- if (start < end && !header) {
+- static const char newline[] = KERN_CONT "\n";
+-
+- printk_safe_flush_line(start, end - start);
+- printk_safe_flush_line(newline, strlen(newline));
+- }
+-
+- return len;
+-}
+-
+-static void report_message_lost(struct printk_safe_seq_buf *s)
+-{
+- int lost = atomic_xchg(&s->message_lost, 0);
+-
+- if (lost)
+- printk_deferred("Lost %d message(s)!\n", lost);
+-}
+-
+-/*
+- * Flush data from the associated per-CPU buffer. The function
+- * can be called either via IRQ work or independently.
+- */
+-static void __printk_safe_flush(struct irq_work *work)
+-{
+- struct printk_safe_seq_buf *s =
+- container_of(work, struct printk_safe_seq_buf, work);
+- unsigned long flags;
+- size_t len;
+- int i;
+-
+- /*
+- * The lock has two functions. First, one reader has to flush all
+- * available message to make the lockless synchronization with
+- * writers easier. Second, we do not want to mix messages from
+- * different CPUs. This is especially important when printing
+- * a backtrace.
+- */
+- raw_spin_lock_irqsave(&safe_read_lock, flags);
+-
+- i = 0;
+-more:
+- len = atomic_read(&s->len);
+-
+- /*
+- * This is just a paranoid check that nobody has manipulated
+- * the buffer an unexpected way. If we printed something then
+- * @len must only increase. Also it should never overflow the
+- * buffer size.
+- */
+- if ((i && i >= len) || len > sizeof(s->buffer)) {
+- const char *msg = "printk_safe_flush: internal error\n";
+-
+- printk_safe_flush_line(msg, strlen(msg));
+- len = 0;
+- }
+-
+- if (!len)
+- goto out; /* Someone else has already flushed the buffer. */
+-
+- /* Make sure that data has been written up to the @len */
+- smp_rmb();
+- i += printk_safe_flush_buffer(s->buffer + i, len - i);
+-
+- /*
+- * Check that nothing has got added in the meantime and truncate
+- * the buffer. Note that atomic_cmpxchg() is an implicit memory
+- * barrier that makes sure that the data were copied before
+- * updating s->len.
+- */
+- if (atomic_cmpxchg(&s->len, len, 0) != len)
+- goto more;
+-
+-out:
+- report_message_lost(s);
+- raw_spin_unlock_irqrestore(&safe_read_lock, flags);
+-}
+-
+-/**
+- * printk_safe_flush - flush all per-cpu nmi buffers.
+- *
+- * The buffers are flushed automatically via IRQ work. This function
+- * is useful only when someone wants to be sure that all buffers have
+- * been flushed at some point.
+- */
+-void printk_safe_flush(void)
+-{
+- int cpu;
+-
+- for_each_possible_cpu(cpu) {
+-#ifdef CONFIG_PRINTK_NMI
+- __printk_safe_flush(&per_cpu(nmi_print_seq, cpu).work);
+-#endif
+- __printk_safe_flush(&per_cpu(safe_print_seq, cpu).work);
+- }
+-}
+-
+-/**
+- * printk_safe_flush_on_panic - flush all per-cpu nmi buffers when the system
+- * goes down.
+- *
+- * Similar to printk_safe_flush() but it can be called even in NMI context when
+- * the system goes down. It does the best effort to get NMI messages into
+- * the main ring buffer.
+- *
+- * Note that it could try harder when there is only one CPU online.
+- */
+-void printk_safe_flush_on_panic(void)
+-{
+- if (raw_spin_is_locked(&safe_read_lock)) {
+- if (num_online_cpus() > 1)
+- return;
+-
+- debug_locks_off();
+- raw_spin_lock_init(&safe_read_lock);
+- }
+-
+- printk_safe_flush();
+-}
+-
+ #ifdef CONFIG_PRINTK_NMI
+-/*
+- * Safe printk() for NMI context. It uses a per-CPU buffer to
+- * store the message. NMIs are not nested, so there is always only
+- * one writer running. But the buffer might get flushed from another
+- * CPU, so we need to be careful.
+- */
+-static __printf(1, 0) int vprintk_nmi(const char *fmt, va_list args)
+-{
+- struct printk_safe_seq_buf *s = this_cpu_ptr(&nmi_print_seq);
+-
+- return printk_safe_log_store(s, fmt, args);
+-}
+-
+ void noinstr printk_nmi_enter(void)
+ {
+ this_cpu_add(printk_context, PRINTK_NMI_CONTEXT_OFFSET);
+@@ -305,9 +32,6 @@ void noinstr printk_nmi_exit(void)
+ * Marks a code that might produce many messages in NMI context
+ * and the risk of losing them is more critical than eventual
+ * reordering.
+- *
+- * It has effect only when called in NMI context. Then printk()
+- * will store the messages into the main logbuf directly.
+ */
+ void printk_nmi_direct_enter(void)
+ {
+@@ -320,27 +44,8 @@ void printk_nmi_direct_exit(void)
+ this_cpu_and(printk_context, ~PRINTK_NMI_DIRECT_CONTEXT_MASK);
+ }
+
+-#else
+-
+-static __printf(1, 0) int vprintk_nmi(const char *fmt, va_list args)
+-{
+- return 0;
+-}
+-
+ #endif /* CONFIG_PRINTK_NMI */
+
+-/*
+- * Lock-less printk(), to avoid deadlocks should the printk() recurse
+- * into itself. It uses a per-CPU buffer to store the message, just like
+- * NMI.
+- */
+-static __printf(1, 0) int vprintk_safe(const char *fmt, va_list args)
+-{
+- struct printk_safe_seq_buf *s = this_cpu_ptr(&safe_print_seq);
+-
+- return printk_safe_log_store(s, fmt, args);
+-}
+-
+ /* Can be preempted by NMI. */
+ void __printk_safe_enter(void)
+ {
+@@ -365,8 +70,10 @@ __printf(1, 0) int vprintk_func(const char *fmt, va_list args)
+ * Use the main logbuf even in NMI. But avoid calling console
+ * drivers that might have their own locks.
+ */
+- if ((this_cpu_read(printk_context) & PRINTK_NMI_DIRECT_CONTEXT_MASK)) {
+- unsigned long flags;
++ if (this_cpu_read(printk_context) &
++ (PRINTK_NMI_DIRECT_CONTEXT_MASK |
++ PRINTK_NMI_CONTEXT_MASK |
++ PRINTK_SAFE_CONTEXT_MASK)) {
+ int len;
+
+ printk_safe_enter_irqsave(flags);
+@@ -376,34 +83,6 @@ __printf(1, 0) int vprintk_func(const char *fmt, va_list args)
+ return len;
+ }
+
+- /* Use extra buffer in NMI. */
+- if (this_cpu_read(printk_context) & PRINTK_NMI_CONTEXT_MASK)
+- return vprintk_nmi(fmt, args);
+-
+- /* Use extra buffer to prevent a recursion deadlock in safe mode. */
+- if (this_cpu_read(printk_context) & PRINTK_SAFE_CONTEXT_MASK)
+- return vprintk_safe(fmt, args);
+-
+ /* No obstacles. */
+ return vprintk_default(fmt, args);
+ }
+-
+-void __init printk_safe_init(void)
+-{
+- int cpu;
+-
+- for_each_possible_cpu(cpu) {
+- struct printk_safe_seq_buf *s;
+-
+- s = &per_cpu(safe_print_seq, cpu);
+- init_irq_work(&s->work, __printk_safe_flush);
+-
+-#ifdef CONFIG_PRINTK_NMI
+- s = &per_cpu(nmi_print_seq, cpu);
+- init_irq_work(&s->work, __printk_safe_flush);
+-#endif
+- }
+-
+- /* Flush pending messages that did not have scheduled IRQ works. */
+- printk_safe_flush();
+-}
+diff --git a/lib/nmi_backtrace.c b/lib/nmi_backtrace.c
+index 8abe1870dba4..b09a490f5f70 100644
+--- a/lib/nmi_backtrace.c
++++ b/lib/nmi_backtrace.c
+@@ -75,12 +75,6 @@ void nmi_trigger_cpumask_backtrace(const cpumask_t *mask,
+ touch_softlockup_watchdog();
+ }
+
+- /*
+- * Force flush any remote buffers that might be stuck in IRQ context
+- * and therefore could not run their irq_work.
+- */
+- printk_safe_flush();
+-
+ clear_bit_unlock(0, &backtrace_flag);
+ put_cpu();
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0098-printk-convert-syslog_lock-to-spin_lock.patch b/debian/patches-rt/0098-printk-convert-syslog_lock-to-spin_lock.patch
new file mode 100644
index 000000000..639c0cf84
--- /dev/null
+++ b/debian/patches-rt/0098-printk-convert-syslog_lock-to-spin_lock.patch
@@ -0,0 +1,119 @@
+From 8e6eb9e51cf4c4efeeb61910c35b01dcce2ec502 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Thu, 18 Feb 2021 17:37:41 +0100
+Subject: [PATCH 098/323] printk: convert @syslog_lock to spin_lock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/printk.c | 30 +++++++++++++++---------------
+ 1 file changed, 15 insertions(+), 15 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 90a4cf4c23a4..57f3b8d7f35c 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -358,7 +358,7 @@ enum log_flags {
+ };
+
+ /* syslog_lock protects syslog_* variables and write access to clear_seq. */
+-static DEFINE_RAW_SPINLOCK(syslog_lock);
++static DEFINE_SPINLOCK(syslog_lock);
+
+ #ifdef CONFIG_PRINTK
+ DECLARE_WAIT_QUEUE_HEAD(log_wait);
+@@ -1482,9 +1482,9 @@ static int syslog_print(char __user *buf, int size)
+ size_t n;
+ size_t skip;
+
+- raw_spin_lock_irq(&syslog_lock);
++ spin_lock_irq(&syslog_lock);
+ if (!prb_read_valid(prb, syslog_seq, &r)) {
+- raw_spin_unlock_irq(&syslog_lock);
++ spin_unlock_irq(&syslog_lock);
+ break;
+ }
+ if (r.info->seq != syslog_seq) {
+@@ -1513,7 +1513,7 @@ static int syslog_print(char __user *buf, int size)
+ syslog_partial += n;
+ } else
+ n = 0;
+- raw_spin_unlock_irq(&syslog_lock);
++ spin_unlock_irq(&syslog_lock);
+
+ if (!n)
+ break;
+@@ -1577,9 +1577,9 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+ }
+
+ if (clear) {
+- raw_spin_lock_irq(&syslog_lock);
++ spin_lock_irq(&syslog_lock);
+ latched_seq_write(&clear_seq, seq);
+- raw_spin_unlock_irq(&syslog_lock);
++ spin_unlock_irq(&syslog_lock);
+ }
+
+ kfree(text);
+@@ -1588,9 +1588,9 @@ static int syslog_print_all(char __user *buf, int size, bool clear)
+
+ static void syslog_clear(void)
+ {
+- raw_spin_lock_irq(&syslog_lock);
++ spin_lock_irq(&syslog_lock);
+ latched_seq_write(&clear_seq, prb_next_seq(prb));
+- raw_spin_unlock_irq(&syslog_lock);
++ spin_unlock_irq(&syslog_lock);
+ }
+
+ /* Return a consistent copy of @syslog_seq. */
+@@ -1598,9 +1598,9 @@ static u64 read_syslog_seq_irq(void)
+ {
+ u64 seq;
+
+- raw_spin_lock_irq(&syslog_lock);
++ spin_lock_irq(&syslog_lock);
+ seq = syslog_seq;
+- raw_spin_unlock_irq(&syslog_lock);
++ spin_unlock_irq(&syslog_lock);
+
+ return seq;
+ }
+@@ -1678,10 +1678,10 @@ int do_syslog(int type, char __user *buf, int len, int source)
+ break;
+ /* Number of chars in the log buffer */
+ case SYSLOG_ACTION_SIZE_UNREAD:
+- raw_spin_lock_irq(&syslog_lock);
++ spin_lock_irq(&syslog_lock);
+ if (!prb_read_valid_info(prb, syslog_seq, &info, NULL)) {
+ /* No unread messages. */
+- raw_spin_unlock_irq(&syslog_lock);
++ spin_unlock_irq(&syslog_lock);
+ return 0;
+ }
+ if (info.seq != syslog_seq) {
+@@ -1709,7 +1709,7 @@ int do_syslog(int type, char __user *buf, int len, int source)
+ }
+ error -= syslog_partial;
+ }
+- raw_spin_unlock_irq(&syslog_lock);
++ spin_unlock_irq(&syslog_lock);
+ break;
+ /* Size of the log buffer */
+ case SYSLOG_ACTION_SIZE_BUFFER:
+@@ -3004,9 +3004,9 @@ void register_console(struct console *newcon)
+ exclusive_console_stop_seq = console_seq;
+
+ /* Get a consistent copy of @syslog_seq. */
+- raw_spin_lock_irqsave(&syslog_lock, flags);
++ spin_lock_irqsave(&syslog_lock, flags);
+ console_seq = syslog_seq;
+- raw_spin_unlock_irqrestore(&syslog_lock, flags);
++ spin_unlock_irqrestore(&syslog_lock, flags);
+ }
+ console_unlock();
+ console_sysfs_notify();
+--
+2.43.0
+
diff --git a/debian/patches-rt/0099-console-add-write_atomic-interface.patch b/debian/patches-rt/0099-console-add-write_atomic-interface.patch
new file mode 100644
index 000000000..86f553013
--- /dev/null
+++ b/debian/patches-rt/0099-console-add-write_atomic-interface.patch
@@ -0,0 +1,163 @@
+From a021f069828ba9181d19f5ee9a977cf305ddaf19 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:01 +0106
+Subject: [PATCH 099/323] console: add write_atomic interface
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Add a write_atomic() callback to the console. This is an optional
+function for console drivers. The function must be atomic (including
+NMI safe) for writing to the console.
+
+Console drivers must still implement the write() callback. The
+write_atomic() callback will only be used in special situations,
+such as when the kernel panics.
+
+Creating an NMI safe write_atomic() that must synchronize with
+write() requires a careful implementation of the console driver. To
+aid with the implementation, a set of console_atomic_*() functions
+are provided:
+
+ void console_atomic_lock(unsigned int *flags);
+ void console_atomic_unlock(unsigned int flags);
+
+These functions synchronize using a processor-reentrant spinlock
+(called a cpulock).
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/console.h | 4 ++
+ kernel/printk/printk.c | 100 ++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 104 insertions(+)
+
+diff --git a/include/linux/console.h b/include/linux/console.h
+index bc2a749e6f0d..613df76903f5 100644
+--- a/include/linux/console.h
++++ b/include/linux/console.h
+@@ -141,6 +141,7 @@ static inline int con_debug_leave(void)
+ struct console {
+ char name[16];
+ void (*write)(struct console *, const char *, unsigned);
++ void (*write_atomic)(struct console *co, const char *s, unsigned int count);
+ int (*read)(struct console *, char *, unsigned);
+ struct tty_driver *(*device)(struct console *, int *);
+ void (*unblank)(void);
+@@ -232,4 +233,7 @@ extern void console_init(void);
+ void dummycon_register_output_notifier(struct notifier_block *nb);
+ void dummycon_unregister_output_notifier(struct notifier_block *nb);
+
++extern void console_atomic_lock(unsigned int *flags);
++extern void console_atomic_unlock(unsigned int flags);
++
+ #endif /* _LINUX_CONSOLE_H */
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 57f3b8d7f35c..8768473712b2 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -3551,3 +3551,103 @@ void kmsg_dump_rewind(struct kmsg_dumper_iter *iter)
+ EXPORT_SYMBOL_GPL(kmsg_dump_rewind);
+
+ #endif
++
++struct prb_cpulock {
++ atomic_t owner;
++ unsigned long __percpu *irqflags;
++};
++
++#define DECLARE_STATIC_PRINTKRB_CPULOCK(name) \
++static DEFINE_PER_CPU(unsigned long, _##name##_percpu_irqflags); \
++static struct prb_cpulock name = { \
++ .owner = ATOMIC_INIT(-1), \
++ .irqflags = &_##name##_percpu_irqflags, \
++}
++
++static bool __prb_trylock(struct prb_cpulock *cpu_lock,
++ unsigned int *cpu_store)
++{
++ unsigned long *flags;
++ unsigned int cpu;
++
++ cpu = get_cpu();
++
++ *cpu_store = atomic_read(&cpu_lock->owner);
++ /* memory barrier to ensure the current lock owner is visible */
++ smp_rmb();
++ if (*cpu_store == -1) {
++ flags = per_cpu_ptr(cpu_lock->irqflags, cpu);
++ local_irq_save(*flags);
++ if (atomic_try_cmpxchg_acquire(&cpu_lock->owner,
++ cpu_store, cpu)) {
++ return true;
++ }
++ local_irq_restore(*flags);
++ } else if (*cpu_store == cpu) {
++ return true;
++ }
++
++ put_cpu();
++ return false;
++}
++
++/*
++ * prb_lock: Perform a processor-reentrant spin lock.
++ * @cpu_lock: A pointer to the lock object.
++ * @cpu_store: A "flags" pointer to store lock status information.
++ *
++ * If no processor has the lock, the calling processor takes the lock and
++ * becomes the owner. If the calling processor is already the owner of the
++ * lock, this function succeeds immediately. If lock is locked by another
++ * processor, this function spins until the calling processor becomes the
++ * owner.
++ *
++ * It is safe to call this function from any context and state.
++ */
++static void prb_lock(struct prb_cpulock *cpu_lock, unsigned int *cpu_store)
++{
++ for (;;) {
++ if (__prb_trylock(cpu_lock, cpu_store))
++ break;
++ cpu_relax();
++ }
++}
++
++/*
++ * prb_unlock: Perform a processor-reentrant spin unlock.
++ * @cpu_lock: A pointer to the lock object.
++ * @cpu_store: A "flags" object storing lock status information.
++ *
++ * Release the lock. The calling processor must be the owner of the lock.
++ *
++ * It is safe to call this function from any context and state.
++ */
++static void prb_unlock(struct prb_cpulock *cpu_lock, unsigned int cpu_store)
++{
++ unsigned long *flags;
++ unsigned int cpu;
++
++ cpu = atomic_read(&cpu_lock->owner);
++ atomic_set_release(&cpu_lock->owner, cpu_store);
++
++ if (cpu_store == -1) {
++ flags = per_cpu_ptr(cpu_lock->irqflags, cpu);
++ local_irq_restore(*flags);
++ }
++
++ put_cpu();
++}
++
++DECLARE_STATIC_PRINTKRB_CPULOCK(printk_cpulock);
++
++void console_atomic_lock(unsigned int *flags)
++{
++ prb_lock(&printk_cpulock, flags);
++}
++EXPORT_SYMBOL(console_atomic_lock);
++
++void console_atomic_unlock(unsigned int flags)
++{
++ prb_unlock(&printk_cpulock, flags);
++}
++EXPORT_SYMBOL(console_atomic_unlock);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0100-serial-8250-implement-write_atomic.patch b/debian/patches-rt/0100-serial-8250-implement-write_atomic.patch
new file mode 100644
index 000000000..ad692ff78
--- /dev/null
+++ b/debian/patches-rt/0100-serial-8250-implement-write_atomic.patch
@@ -0,0 +1,500 @@
+From 713182575337acb0891fcfaef75c3a36408d1766 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:02 +0106
+Subject: [PATCH 100/323] serial: 8250: implement write_atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Implement a non-sleeping NMI-safe write_atomic() console function in
+order to support emergency console printing.
+
+Since interrupts need to be disabled during transmit, all usage of
+the IER register is wrapped with access functions that use the
+console_atomic_lock() function to synchronize register access while
+tracking the state of the interrupts. This is necessary because
+write_atomic() can be called from an NMI context that has preempted
+write_atomic().
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/tty/serial/8250/8250.h | 47 ++++++++++++-
+ drivers/tty/serial/8250/8250_core.c | 17 +++--
+ drivers/tty/serial/8250/8250_fsl.c | 9 +++
+ drivers/tty/serial/8250/8250_ingenic.c | 7 ++
+ drivers/tty/serial/8250/8250_mtk.c | 29 +++++++-
+ drivers/tty/serial/8250/8250_port.c | 92 ++++++++++++++++----------
+ include/linux/serial_8250.h | 5 ++
+ 7 files changed, 162 insertions(+), 44 deletions(-)
+
+diff --git a/drivers/tty/serial/8250/8250.h b/drivers/tty/serial/8250/8250.h
+index 61b11490ae5b..32c534b87397 100644
+--- a/drivers/tty/serial/8250/8250.h
++++ b/drivers/tty/serial/8250/8250.h
+@@ -152,12 +152,55 @@ static inline void serial_dl_write(struct uart_8250_port *up, int value)
+ up->dl_write(up, value);
+ }
+
++static inline void serial8250_set_IER(struct uart_8250_port *up,
++ unsigned char ier)
++{
++ struct uart_port *port = &up->port;
++ unsigned int flags;
++ bool is_console;
++
++ is_console = uart_console(port);
++
++ if (is_console)
++ console_atomic_lock(&flags);
++
++ serial_out(up, UART_IER, ier);
++
++ if (is_console)
++ console_atomic_unlock(flags);
++}
++
++static inline unsigned char serial8250_clear_IER(struct uart_8250_port *up)
++{
++ struct uart_port *port = &up->port;
++ unsigned int clearval = 0;
++ unsigned int prior;
++ unsigned int flags;
++ bool is_console;
++
++ is_console = uart_console(port);
++
++ if (up->capabilities & UART_CAP_UUE)
++ clearval = UART_IER_UUE;
++
++ if (is_console)
++ console_atomic_lock(&flags);
++
++ prior = serial_port_in(port, UART_IER);
++ serial_port_out(port, UART_IER, clearval);
++
++ if (is_console)
++ console_atomic_unlock(flags);
++
++ return prior;
++}
++
+ static inline bool serial8250_set_THRI(struct uart_8250_port *up)
+ {
+ if (up->ier & UART_IER_THRI)
+ return false;
+ up->ier |= UART_IER_THRI;
+- serial_out(up, UART_IER, up->ier);
++ serial8250_set_IER(up, up->ier);
+ return true;
+ }
+
+@@ -166,7 +209,7 @@ static inline bool serial8250_clear_THRI(struct uart_8250_port *up)
+ if (!(up->ier & UART_IER_THRI))
+ return false;
+ up->ier &= ~UART_IER_THRI;
+- serial_out(up, UART_IER, up->ier);
++ serial8250_set_IER(up, up->ier);
+ return true;
+ }
+
+diff --git a/drivers/tty/serial/8250/8250_core.c b/drivers/tty/serial/8250/8250_core.c
+index 43f2eed6df78..687119fe2f8c 100644
+--- a/drivers/tty/serial/8250/8250_core.c
++++ b/drivers/tty/serial/8250/8250_core.c
+@@ -275,10 +275,8 @@ static void serial8250_backup_timeout(struct timer_list *t)
+ * Must disable interrupts or else we risk racing with the interrupt
+ * based handler.
+ */
+- if (up->port.irq) {
+- ier = serial_in(up, UART_IER);
+- serial_out(up, UART_IER, 0);
+- }
++ if (up->port.irq)
++ ier = serial8250_clear_IER(up);
+
+ iir = serial_in(up, UART_IIR);
+
+@@ -301,7 +299,7 @@ static void serial8250_backup_timeout(struct timer_list *t)
+ serial8250_tx_chars(up);
+
+ if (up->port.irq)
+- serial_out(up, UART_IER, ier);
++ serial8250_set_IER(up, ier);
+
+ spin_unlock_irqrestore(&up->port.lock, flags);
+
+@@ -588,6 +586,14 @@ serial8250_register_ports(struct uart_driver *drv, struct device *dev)
+
+ #ifdef CONFIG_SERIAL_8250_CONSOLE
+
++static void univ8250_console_write_atomic(struct console *co, const char *s,
++ unsigned int count)
++{
++ struct uart_8250_port *up = &serial8250_ports[co->index];
++
++ serial8250_console_write_atomic(up, s, count);
++}
++
+ static void univ8250_console_write(struct console *co, const char *s,
+ unsigned int count)
+ {
+@@ -681,6 +687,7 @@ static int univ8250_console_match(struct console *co, char *name, int idx,
+
+ static struct console univ8250_console = {
+ .name = "ttyS",
++ .write_atomic = univ8250_console_write_atomic,
+ .write = univ8250_console_write,
+ .device = uart_console_device,
+ .setup = univ8250_console_setup,
+diff --git a/drivers/tty/serial/8250/8250_fsl.c b/drivers/tty/serial/8250/8250_fsl.c
+index fbcc90c31ca1..b33cb454ce03 100644
+--- a/drivers/tty/serial/8250/8250_fsl.c
++++ b/drivers/tty/serial/8250/8250_fsl.c
+@@ -60,9 +60,18 @@ int fsl8250_handle_irq(struct uart_port *port)
+
+ /* Stop processing interrupts on input overrun */
+ if ((orig_lsr & UART_LSR_OE) && (up->overrun_backoff_time_ms > 0)) {
++ unsigned int ca_flags;
+ unsigned long delay;
++ bool is_console;
+
++ is_console = uart_console(port);
++
++ if (is_console)
++ console_atomic_lock(&ca_flags);
+ up->ier = port->serial_in(port, UART_IER);
++ if (is_console)
++ console_atomic_unlock(ca_flags);
++
+ if (up->ier & (UART_IER_RLSI | UART_IER_RDI)) {
+ port->ops->stop_rx(port);
+ } else {
+diff --git a/drivers/tty/serial/8250/8250_ingenic.c b/drivers/tty/serial/8250/8250_ingenic.c
+index 988bf6bcce42..bcd26d672539 100644
+--- a/drivers/tty/serial/8250/8250_ingenic.c
++++ b/drivers/tty/serial/8250/8250_ingenic.c
+@@ -146,6 +146,8 @@ OF_EARLYCON_DECLARE(x1000_uart, "ingenic,x1000-uart",
+
+ static void ingenic_uart_serial_out(struct uart_port *p, int offset, int value)
+ {
++ unsigned int flags;
++ bool is_console;
+ int ier;
+
+ switch (offset) {
+@@ -167,7 +169,12 @@ static void ingenic_uart_serial_out(struct uart_port *p, int offset, int value)
+ * If we have enabled modem status IRQs we should enable
+ * modem mode.
+ */
++ is_console = uart_console(p);
++ if (is_console)
++ console_atomic_lock(&flags);
+ ier = p->serial_in(p, UART_IER);
++ if (is_console)
++ console_atomic_unlock(flags);
+
+ if (ier & UART_IER_MSI)
+ value |= UART_MCR_MDCE | UART_MCR_FCM;
+diff --git a/drivers/tty/serial/8250/8250_mtk.c b/drivers/tty/serial/8250/8250_mtk.c
+index de48a58460f4..d246f2755fed 100644
+--- a/drivers/tty/serial/8250/8250_mtk.c
++++ b/drivers/tty/serial/8250/8250_mtk.c
+@@ -222,12 +222,37 @@ static void mtk8250_shutdown(struct uart_port *port)
+
+ static void mtk8250_disable_intrs(struct uart_8250_port *up, int mask)
+ {
+- serial_out(up, UART_IER, serial_in(up, UART_IER) & (~mask));
++ struct uart_port *port = &up->port;
++ unsigned int flags;
++ unsigned int ier;
++ bool is_console;
++
++ is_console = uart_console(port);
++
++ if (is_console)
++ console_atomic_lock(&flags);
++
++ ier = serial_in(up, UART_IER);
++ serial_out(up, UART_IER, ier & (~mask));
++
++ if (is_console)
++ console_atomic_unlock(flags);
+ }
+
+ static void mtk8250_enable_intrs(struct uart_8250_port *up, int mask)
+ {
+- serial_out(up, UART_IER, serial_in(up, UART_IER) | mask);
++ struct uart_port *port = &up->port;
++ unsigned int flags;
++ unsigned int ier;
++
++ if (uart_console(port))
++ console_atomic_lock(&flags);
++
++ ier = serial_in(up, UART_IER);
++ serial_out(up, UART_IER, ier | mask);
++
++ if (uart_console(port))
++ console_atomic_unlock(flags);
+ }
+
+ static void mtk8250_set_flow_ctrl(struct uart_8250_port *up, int mode)
+diff --git a/drivers/tty/serial/8250/8250_port.c b/drivers/tty/serial/8250/8250_port.c
+index 8b49ac4856d2..947737d0e46b 100644
+--- a/drivers/tty/serial/8250/8250_port.c
++++ b/drivers/tty/serial/8250/8250_port.c
+@@ -730,7 +730,7 @@ static void serial8250_set_sleep(struct uart_8250_port *p, int sleep)
+ serial_out(p, UART_EFR, UART_EFR_ECB);
+ serial_out(p, UART_LCR, 0);
+ }
+- serial_out(p, UART_IER, sleep ? UART_IERX_SLEEP : 0);
++ serial8250_set_IER(p, sleep ? UART_IERX_SLEEP : 0);
+ if (p->capabilities & UART_CAP_EFR) {
+ serial_out(p, UART_LCR, UART_LCR_CONF_MODE_B);
+ serial_out(p, UART_EFR, efr);
+@@ -1405,7 +1405,7 @@ static void serial8250_stop_rx(struct uart_port *port)
+
+ up->ier &= ~(UART_IER_RLSI | UART_IER_RDI);
+ up->port.read_status_mask &= ~UART_LSR_DR;
+- serial_port_out(port, UART_IER, up->ier);
++ serial8250_set_IER(up, up->ier);
+
+ serial8250_rpm_put(up);
+ }
+@@ -1435,7 +1435,7 @@ void serial8250_em485_stop_tx(struct uart_8250_port *p)
+ serial8250_clear_and_reinit_fifos(p);
+
+ p->ier |= UART_IER_RLSI | UART_IER_RDI;
+- serial_port_out(&p->port, UART_IER, p->ier);
++ serial8250_set_IER(p, p->ier);
+ }
+ }
+ EXPORT_SYMBOL_GPL(serial8250_em485_stop_tx);
+@@ -1677,7 +1677,7 @@ static void serial8250_disable_ms(struct uart_port *port)
+ mctrl_gpio_disable_ms(up->gpios);
+
+ up->ier &= ~UART_IER_MSI;
+- serial_port_out(port, UART_IER, up->ier);
++ serial8250_set_IER(up, up->ier);
+ }
+
+ static void serial8250_enable_ms(struct uart_port *port)
+@@ -1693,7 +1693,7 @@ static void serial8250_enable_ms(struct uart_port *port)
+ up->ier |= UART_IER_MSI;
+
+ serial8250_rpm_get(up);
+- serial_port_out(port, UART_IER, up->ier);
++ serial8250_set_IER(up, up->ier);
+ serial8250_rpm_put(up);
+ }
+
+@@ -2129,14 +2129,7 @@ static void serial8250_put_poll_char(struct uart_port *port,
+ struct uart_8250_port *up = up_to_u8250p(port);
+
+ serial8250_rpm_get(up);
+- /*
+- * First save the IER then disable the interrupts
+- */
+- ier = serial_port_in(port, UART_IER);
+- if (up->capabilities & UART_CAP_UUE)
+- serial_port_out(port, UART_IER, UART_IER_UUE);
+- else
+- serial_port_out(port, UART_IER, 0);
++ ier = serial8250_clear_IER(up);
+
+ wait_for_xmitr(up, BOTH_EMPTY);
+ /*
+@@ -2149,7 +2142,7 @@ static void serial8250_put_poll_char(struct uart_port *port,
+ * and restore the IER
+ */
+ wait_for_xmitr(up, BOTH_EMPTY);
+- serial_port_out(port, UART_IER, ier);
++ serial8250_set_IER(up, ier);
+ serial8250_rpm_put(up);
+ }
+
+@@ -2454,7 +2447,7 @@ void serial8250_do_shutdown(struct uart_port *port)
+ */
+ spin_lock_irqsave(&port->lock, flags);
+ up->ier = 0;
+- serial_port_out(port, UART_IER, 0);
++ serial8250_set_IER(up, 0);
+ spin_unlock_irqrestore(&port->lock, flags);
+
+ synchronize_irq(port->irq);
+@@ -2806,7 +2799,7 @@ serial8250_do_set_termios(struct uart_port *port, struct ktermios *termios,
+ if (up->capabilities & UART_CAP_RTOIE)
+ up->ier |= UART_IER_RTOIE;
+
+- serial_port_out(port, UART_IER, up->ier);
++ serial8250_set_IER(up, up->ier);
+
+ if (up->capabilities & UART_CAP_EFR) {
+ unsigned char efr = 0;
+@@ -3271,7 +3264,7 @@ EXPORT_SYMBOL_GPL(serial8250_set_defaults);
+
+ #ifdef CONFIG_SERIAL_8250_CONSOLE
+
+-static void serial8250_console_putchar(struct uart_port *port, int ch)
++static void serial8250_console_putchar_locked(struct uart_port *port, int ch)
+ {
+ struct uart_8250_port *up = up_to_u8250p(port);
+
+@@ -3279,6 +3272,18 @@ static void serial8250_console_putchar(struct uart_port *port, int ch)
+ serial_port_out(port, UART_TX, ch);
+ }
+
++static void serial8250_console_putchar(struct uart_port *port, int ch)
++{
++ struct uart_8250_port *up = up_to_u8250p(port);
++ unsigned int flags;
++
++ wait_for_xmitr(up, UART_LSR_THRE);
++
++ console_atomic_lock(&flags);
++ serial8250_console_putchar_locked(port, ch);
++ console_atomic_unlock(flags);
++}
++
+ /*
+ * Restore serial console when h/w power-off detected
+ */
+@@ -3305,6 +3310,32 @@ static void serial8250_console_restore(struct uart_8250_port *up)
+ serial8250_out_MCR(up, up->mcr | UART_MCR_DTR | UART_MCR_RTS);
+ }
+
++void serial8250_console_write_atomic(struct uart_8250_port *up,
++ const char *s, unsigned int count)
++{
++ struct uart_port *port = &up->port;
++ unsigned int flags;
++ unsigned int ier;
++
++ console_atomic_lock(&flags);
++
++ touch_nmi_watchdog();
++
++ ier = serial8250_clear_IER(up);
++
++ if (atomic_fetch_inc(&up->console_printing)) {
++ uart_console_write(port, "\n", 1,
++ serial8250_console_putchar_locked);
++ }
++ uart_console_write(port, s, count, serial8250_console_putchar_locked);
++ atomic_dec(&up->console_printing);
++
++ wait_for_xmitr(up, BOTH_EMPTY);
++ serial8250_set_IER(up, ier);
++
++ console_atomic_unlock(flags);
++}
++
+ /*
+ * Print a string to the serial port trying not to disturb
+ * any possible real use of the port...
+@@ -3321,24 +3352,12 @@ void serial8250_console_write(struct uart_8250_port *up, const char *s,
+ struct uart_port *port = &up->port;
+ unsigned long flags;
+ unsigned int ier;
+- int locked = 1;
+
+ touch_nmi_watchdog();
+
+- if (oops_in_progress)
+- locked = spin_trylock_irqsave(&port->lock, flags);
+- else
+- spin_lock_irqsave(&port->lock, flags);
+-
+- /*
+- * First save the IER then disable the interrupts
+- */
+- ier = serial_port_in(port, UART_IER);
++ spin_lock_irqsave(&port->lock, flags);
+
+- if (up->capabilities & UART_CAP_UUE)
+- serial_port_out(port, UART_IER, UART_IER_UUE);
+- else
+- serial_port_out(port, UART_IER, 0);
++ ier = serial8250_clear_IER(up);
+
+ /* check scratch reg to see if port powered off during system sleep */
+ if (up->canary && (up->canary != serial_port_in(port, UART_SCR))) {
+@@ -3352,7 +3371,9 @@ void serial8250_console_write(struct uart_8250_port *up, const char *s,
+ mdelay(port->rs485.delay_rts_before_send);
+ }
+
++ atomic_inc(&up->console_printing);
+ uart_console_write(port, s, count, serial8250_console_putchar);
++ atomic_dec(&up->console_printing);
+
+ /*
+ * Finally, wait for transmitter to become empty
+@@ -3365,8 +3386,7 @@ void serial8250_console_write(struct uart_8250_port *up, const char *s,
+ if (em485->tx_stopped)
+ up->rs485_stop_tx(up);
+ }
+-
+- serial_port_out(port, UART_IER, ier);
++ serial8250_set_IER(up, ier);
+
+ /*
+ * The receive handling will happen properly because the
+@@ -3378,8 +3398,7 @@ void serial8250_console_write(struct uart_8250_port *up, const char *s,
+ if (up->msr_saved_flags)
+ serial8250_modem_status(up);
+
+- if (locked)
+- spin_unlock_irqrestore(&port->lock, flags);
++ spin_unlock_irqrestore(&port->lock, flags);
+ }
+
+ static unsigned int probe_baud(struct uart_port *port)
+@@ -3399,6 +3418,7 @@ static unsigned int probe_baud(struct uart_port *port)
+
+ int serial8250_console_setup(struct uart_port *port, char *options, bool probe)
+ {
++ struct uart_8250_port *up = up_to_u8250p(port);
+ int baud = 9600;
+ int bits = 8;
+ int parity = 'n';
+@@ -3408,6 +3428,8 @@ int serial8250_console_setup(struct uart_port *port, char *options, bool probe)
+ if (!port->iobase && !port->membase)
+ return -ENODEV;
+
++ atomic_set(&up->console_printing, 0);
++
+ if (options)
+ uart_parse_options(options, &baud, &parity, &bits, &flow);
+ else if (probe)
+diff --git a/include/linux/serial_8250.h b/include/linux/serial_8250.h
+index abb928361270..77de68ed2d60 100644
+--- a/include/linux/serial_8250.h
++++ b/include/linux/serial_8250.h
+@@ -7,6 +7,7 @@
+ #ifndef _LINUX_SERIAL_8250_H
+ #define _LINUX_SERIAL_8250_H
+
++#include <linux/atomic.h>
+ #include <linux/serial_core.h>
+ #include <linux/serial_reg.h>
+ #include <linux/platform_device.h>
+@@ -125,6 +126,8 @@ struct uart_8250_port {
+ #define MSR_SAVE_FLAGS UART_MSR_ANY_DELTA
+ unsigned char msr_saved_flags;
+
++ atomic_t console_printing;
++
+ struct uart_8250_dma *dma;
+ const struct uart_8250_ops *ops;
+
+@@ -180,6 +183,8 @@ void serial8250_init_port(struct uart_8250_port *up);
+ void serial8250_set_defaults(struct uart_8250_port *up);
+ void serial8250_console_write(struct uart_8250_port *up, const char *s,
+ unsigned int count);
++void serial8250_console_write_atomic(struct uart_8250_port *up, const char *s,
++ unsigned int count);
+ int serial8250_console_setup(struct uart_port *port, char *options, bool probe);
+ int serial8250_console_exit(struct uart_port *port);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0101-printk-relocate-printk_delay-and-vprintk_default.patch b/debian/patches-rt/0101-printk-relocate-printk_delay-and-vprintk_default.patch
new file mode 100644
index 000000000..27a3bd9d4
--- /dev/null
+++ b/debian/patches-rt/0101-printk-relocate-printk_delay-and-vprintk_default.patch
@@ -0,0 +1,89 @@
+From 598543b96b715ed360718ca3597ad4a2eda53241 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:03 +0106
+Subject: [PATCH 101/323] printk: relocate printk_delay() and vprintk_default()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Move printk_delay() and vprintk_default() "as is" further up so that
+they can be used by new functions in an upcoming commit.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/printk.c | 40 ++++++++++++++++++++--------------------
+ 1 file changed, 20 insertions(+), 20 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 8768473712b2..c3fc6706a118 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -1728,6 +1728,20 @@ SYSCALL_DEFINE3(syslog, int, type, char __user *, buf, int, len)
+ return do_syslog(type, buf, len, SYSLOG_FROM_READER);
+ }
+
++int printk_delay_msec __read_mostly;
++
++static inline void printk_delay(void)
++{
++ if (unlikely(printk_delay_msec)) {
++ int m = printk_delay_msec;
++
++ while (m--) {
++ mdelay(1);
++ touch_nmi_watchdog();
++ }
++ }
++}
++
+ /*
+ * Special console_lock variants that help to reduce the risk of soft-lockups.
+ * They allow to pass console_lock to another printk() call using a busy wait.
+@@ -1971,20 +1985,6 @@ static void printk_exit_irqrestore(unsigned long flags)
+ local_irq_restore(flags);
+ }
+
+-int printk_delay_msec __read_mostly;
+-
+-static inline void printk_delay(void)
+-{
+- if (unlikely(printk_delay_msec)) {
+- int m = printk_delay_msec;
+-
+- while (m--) {
+- mdelay(1);
+- touch_nmi_watchdog();
+- }
+- }
+-}
+-
+ static inline u32 printk_caller_id(void)
+ {
+ return in_task() ? task_pid_nr(current) :
+@@ -2217,18 +2217,18 @@ asmlinkage int vprintk_emit(int facility, int level,
+ }
+ EXPORT_SYMBOL(vprintk_emit);
+
+-asmlinkage int vprintk(const char *fmt, va_list args)
+-{
+- return vprintk_func(fmt, args);
+-}
+-EXPORT_SYMBOL(vprintk);
+-
+ int vprintk_default(const char *fmt, va_list args)
+ {
+ return vprintk_emit(0, LOGLEVEL_DEFAULT, NULL, fmt, args);
+ }
+ EXPORT_SYMBOL_GPL(vprintk_default);
+
++asmlinkage int vprintk(const char *fmt, va_list args)
++{
++ return vprintk_func(fmt, args);
++}
++EXPORT_SYMBOL(vprintk);
++
+ /**
+ * printk - print a kernel message
+ * @fmt: format string
+--
+2.43.0
+
diff --git a/debian/patches-rt/0102-printk-combine-boot_delay_msec-into-printk_delay.patch b/debian/patches-rt/0102-printk-combine-boot_delay_msec-into-printk_delay.patch
new file mode 100644
index 000000000..64dda79fa
--- /dev/null
+++ b/debian/patches-rt/0102-printk-combine-boot_delay_msec-into-printk_delay.patch
@@ -0,0 +1,44 @@
+From 17a9ff9877863dc267a2b0ead2ab3f792b5e405c Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:04 +0106
+Subject: [PATCH 102/323] printk: combine boot_delay_msec() into printk_delay()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+boot_delay_msec() is always called immediately before printk_delay()
+so just combine the two.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/printk.c | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index c3fc6706a118..0ae184675e86 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -1730,8 +1730,10 @@ SYSCALL_DEFINE3(syslog, int, type, char __user *, buf, int, len)
+
+ int printk_delay_msec __read_mostly;
+
+-static inline void printk_delay(void)
++static inline void printk_delay(int level)
+ {
++ boot_delay_msec(level);
++
+ if (unlikely(printk_delay_msec)) {
+ int m = printk_delay_msec;
+
+@@ -2189,8 +2191,7 @@ asmlinkage int vprintk_emit(int facility, int level,
+ in_sched = true;
+ }
+
+- boot_delay_msec(level);
+- printk_delay();
++ printk_delay(level);
+
+ printed_len = vprintk_store(facility, level, dev_info, fmt, args);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0103-printk-change-console_seq-to-atomic64_t.patch b/debian/patches-rt/0103-printk-change-console_seq-to-atomic64_t.patch
new file mode 100644
index 000000000..6647ecd6c
--- /dev/null
+++ b/debian/patches-rt/0103-printk-change-console_seq-to-atomic64_t.patch
@@ -0,0 +1,132 @@
+From ebdec06c58c4330925d5603649542827bf7bff25 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:05 +0106
+Subject: [PATCH 103/323] printk: change @console_seq to atomic64_t
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+In preparation for atomic printing, change @console_seq to atomic
+so that it can be accessed without requiring @console_sem.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/printk/printk.c | 34 +++++++++++++++++++---------------
+ 1 file changed, 19 insertions(+), 15 deletions(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 0ae184675e86..2bc9904fd8ab 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -368,12 +368,13 @@ static u64 syslog_seq;
+ static size_t syslog_partial;
+ static bool syslog_time;
+
+-/* All 3 protected by @console_sem. */
+-/* the next printk record to write to the console */
+-static u64 console_seq;
++/* Both protected by @console_sem. */
+ static u64 exclusive_console_stop_seq;
+ static unsigned long console_dropped;
+
++/* the next printk record to write to the console */
++static atomic64_t console_seq = ATOMIC64_INIT(0);
++
+ struct latched_seq {
+ seqcount_latch_t latch;
+ u64 val[2];
+@@ -2273,7 +2274,7 @@ EXPORT_SYMBOL(printk);
+ #define prb_first_valid_seq(rb) 0
+
+ static u64 syslog_seq;
+-static u64 console_seq;
++static atomic64_t console_seq = ATOMIC64_INIT(0);
+ static u64 exclusive_console_stop_seq;
+ static unsigned long console_dropped;
+
+@@ -2588,6 +2589,7 @@ void console_unlock(void)
+ bool do_cond_resched, retry;
+ struct printk_info info;
+ struct printk_record r;
++ u64 seq;
+
+ if (console_suspended) {
+ up_console_sem();
+@@ -2630,12 +2632,14 @@ void console_unlock(void)
+ size_t len;
+
+ skip:
+- if (!prb_read_valid(prb, console_seq, &r))
++ seq = atomic64_read(&console_seq);
++ if (!prb_read_valid(prb, seq, &r))
+ break;
+
+- if (console_seq != r.info->seq) {
+- console_dropped += r.info->seq - console_seq;
+- console_seq = r.info->seq;
++ if (seq != r.info->seq) {
++ console_dropped += r.info->seq - seq;
++ atomic64_set(&console_seq, r.info->seq);
++ seq = r.info->seq;
+ }
+
+ if (suppress_message_printing(r.info->level)) {
+@@ -2644,13 +2648,13 @@ void console_unlock(void)
+ * directly to the console when we received it, and
+ * record that has level above the console loglevel.
+ */
+- console_seq++;
++ atomic64_set(&console_seq, seq + 1);
+ goto skip;
+ }
+
+ /* Output to all consoles once old messages replayed. */
+ if (unlikely(exclusive_console &&
+- console_seq >= exclusive_console_stop_seq)) {
++ seq >= exclusive_console_stop_seq)) {
+ exclusive_console = NULL;
+ }
+
+@@ -2671,7 +2675,7 @@ void console_unlock(void)
+ len = record_print_text(&r,
+ console_msg_format & MSG_FORMAT_SYSLOG,
+ printk_time);
+- console_seq++;
++ atomic64_set(&console_seq, seq + 1);
+
+ /*
+ * While actively printing out messages, if another printk()
+@@ -2702,7 +2706,7 @@ void console_unlock(void)
+ * there's a new owner and the console_unlock() from them will do the
+ * flush, no worries.
+ */
+- retry = prb_read_valid(prb, console_seq, NULL);
++ retry = prb_read_valid(prb, atomic64_read(&console_seq), NULL);
+ if (retry && console_trylock())
+ goto again;
+ }
+@@ -2765,7 +2769,7 @@ void console_flush_on_panic(enum con_flush_mode mode)
+ console_may_schedule = 0;
+
+ if (mode == CONSOLE_REPLAY_ALL)
+- console_seq = prb_first_valid_seq(prb);
++ atomic64_set(&console_seq, prb_first_valid_seq(prb));
+ console_unlock();
+ }
+
+@@ -3002,11 +3006,11 @@ void register_console(struct console *newcon)
+ * ignores console_lock.
+ */
+ exclusive_console = newcon;
+- exclusive_console_stop_seq = console_seq;
++ exclusive_console_stop_seq = atomic64_read(&console_seq);
+
+ /* Get a consistent copy of @syslog_seq. */
+ spin_lock_irqsave(&syslog_lock, flags);
+- console_seq = syslog_seq;
++ atomic64_set(&console_seq, syslog_seq);
+ spin_unlock_irqrestore(&syslog_lock, flags);
+ }
+ console_unlock();
+--
+2.43.0
+
diff --git a/debian/patches-rt/0104-printk-introduce-kernel-sync-mode.patch b/debian/patches-rt/0104-printk-introduce-kernel-sync-mode.patch
new file mode 100644
index 000000000..3dfd1b707
--- /dev/null
+++ b/debian/patches-rt/0104-printk-introduce-kernel-sync-mode.patch
@@ -0,0 +1,310 @@
+From fcf68eb3d589c57f73e4a79b7df2f6ec8080b1ce Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:06 +0106
+Subject: [PATCH 104/323] printk: introduce kernel sync mode
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+When the kernel performs an OOPS, enter into "sync mode":
+
+- only atomic consoles (write_atomic() callback) will print
+- printing occurs within vprintk_store() instead of console_unlock()
+
+CONSOLE_LOG_MAX is moved to printk.h to support the per-console
+buffer used in sync mode.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ include/linux/console.h | 4 ++
+ include/linux/printk.h | 6 ++
+ kernel/printk/printk.c | 133 ++++++++++++++++++++++++++++++++++++++--
+ 3 files changed, 137 insertions(+), 6 deletions(-)
+
+diff --git a/include/linux/console.h b/include/linux/console.h
+index 613df76903f5..fcc98354f733 100644
+--- a/include/linux/console.h
++++ b/include/linux/console.h
+@@ -16,6 +16,7 @@
+
+ #include <linux/atomic.h>
+ #include <linux/types.h>
++#include <linux/printk.h>
+
+ struct vc_data;
+ struct console_font_op;
+@@ -151,6 +152,9 @@ struct console {
+ short flags;
+ short index;
+ int cflag;
++#ifdef CONFIG_PRINTK
++ char sync_buf[CONSOLE_LOG_MAX];
++#endif
+ uint ispeed;
+ uint ospeed;
+ void *data;
+diff --git a/include/linux/printk.h b/include/linux/printk.h
+index c6bb48f0134c..3738374e2b3b 100644
+--- a/include/linux/printk.h
++++ b/include/linux/printk.h
+@@ -46,6 +46,12 @@ static inline const char *printk_skip_headers(const char *buffer)
+
+ #define CONSOLE_EXT_LOG_MAX 8192
+
++/*
++ * The maximum size of a record formatted for console printing
++ * (i.e. with the prefix prepended to every line).
++ */
++#define CONSOLE_LOG_MAX 4096
++
+ /* printk's without a loglevel use this.. */
+ #define MESSAGE_LOGLEVEL_DEFAULT CONFIG_MESSAGE_LOGLEVEL_DEFAULT
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 2bc9904fd8ab..8a0af76b6f69 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -44,6 +44,7 @@
+ #include <linux/irq_work.h>
+ #include <linux/ctype.h>
+ #include <linux/uio.h>
++#include <linux/clocksource.h>
+ #include <linux/sched/clock.h>
+ #include <linux/sched/debug.h>
+ #include <linux/sched/task_stack.h>
+@@ -361,6 +362,9 @@ enum log_flags {
+ static DEFINE_SPINLOCK(syslog_lock);
+
+ #ifdef CONFIG_PRINTK
++/* Set to enable sync mode. Once set, it is never cleared. */
++static bool sync_mode;
++
+ DECLARE_WAIT_QUEUE_HEAD(log_wait);
+ /* All 3 protected by @syslog_lock. */
+ /* the next printk record to read by syslog(READ) or /proc/kmsg */
+@@ -400,9 +404,6 @@ static struct latched_seq clear_seq = {
+ /* the maximum size allowed to be reserved for a record */
+ #define LOG_LINE_MAX (1024 - PREFIX_MAX)
+
+-/* the maximum size of a formatted record (i.e. with prefix added per line) */
+-#define CONSOLE_LOG_MAX 4096
+-
+ #define LOG_LEVEL(v) ((v) & 0x07)
+ #define LOG_FACILITY(v) ((v) >> 3 & 0xff)
+
+@@ -1745,6 +1746,91 @@ static inline void printk_delay(int level)
+ }
+ }
+
++static bool kernel_sync_mode(void)
++{
++ return (oops_in_progress || sync_mode);
++}
++
++static bool console_can_sync(struct console *con)
++{
++ if (!(con->flags & CON_ENABLED))
++ return false;
++ if (con->write_atomic && kernel_sync_mode())
++ return true;
++ return false;
++}
++
++static bool call_sync_console_driver(struct console *con, const char *text, size_t text_len)
++{
++ if (!(con->flags & CON_ENABLED))
++ return false;
++ if (con->write_atomic && kernel_sync_mode())
++ con->write_atomic(con, text, text_len);
++ else
++ return false;
++
++ return true;
++}
++
++static bool have_atomic_console(void)
++{
++ struct console *con;
++
++ for_each_console(con) {
++ if (!(con->flags & CON_ENABLED))
++ continue;
++ if (con->write_atomic)
++ return true;
++ }
++ return false;
++}
++
++static bool print_sync(struct console *con, u64 *seq)
++{
++ struct printk_info info;
++ struct printk_record r;
++ size_t text_len;
++
++ prb_rec_init_rd(&r, &info, &con->sync_buf[0], sizeof(con->sync_buf));
++
++ if (!prb_read_valid(prb, *seq, &r))
++ return false;
++
++ text_len = record_print_text(&r, console_msg_format & MSG_FORMAT_SYSLOG, printk_time);
++
++ if (!call_sync_console_driver(con, &con->sync_buf[0], text_len))
++ return false;
++
++ *seq = r.info->seq;
++
++ touch_softlockup_watchdog_sync();
++ clocksource_touch_watchdog();
++ rcu_cpu_stall_reset();
++ touch_nmi_watchdog();
++
++ if (text_len)
++ printk_delay(r.info->level);
++
++ return true;
++}
++
++static void print_sync_until(struct console *con, u64 seq)
++{
++ unsigned int flags;
++ u64 printk_seq;
++
++ console_atomic_lock(&flags);
++ for (;;) {
++ printk_seq = atomic64_read(&console_seq);
++ if (printk_seq >= seq)
++ break;
++ if (!print_sync(con, &printk_seq))
++ break;
++ atomic64_set(&console_seq, printk_seq + 1);
++ }
++ console_atomic_unlock(flags);
++}
++
+ /*
+ * Special console_lock variants that help to reduce the risk of soft-lockups.
+ * They allow to pass console_lock to another printk() call using a busy wait.
+@@ -1919,6 +2005,8 @@ static void call_console_drivers(const char *ext_text, size_t ext_len,
+ if (!cpu_online(smp_processor_id()) &&
+ !(con->flags & CON_ANYTIME))
+ continue;
++ if (kernel_sync_mode())
++ continue;
+ if (con->flags & CON_EXTENDED)
+ con->write(con, ext_text, ext_len);
+ else {
+@@ -2073,6 +2161,7 @@ int vprintk_store(int facility, int level,
+ const u32 caller_id = printk_caller_id();
+ struct prb_reserved_entry e;
+ enum log_flags lflags = 0;
++ bool final_commit = false;
+ struct printk_record r;
+ unsigned long irqflags;
+ u16 trunc_msg_len = 0;
+@@ -2082,6 +2171,7 @@ int vprintk_store(int facility, int level,
+ u16 text_len;
+ int ret = 0;
+ u64 ts_nsec;
++ u64 seq;
+
+ /*
+ * Since the duration of printk() can vary depending on the message
+@@ -2120,6 +2210,7 @@ int vprintk_store(int facility, int level,
+ if (lflags & LOG_CONT) {
+ prb_rec_init_wr(&r, reserve_size);
+ if (prb_reserve_in_last(&e, prb, &r, caller_id, LOG_LINE_MAX)) {
++ seq = r.info->seq;
+ text_len = printk_sprint(&r.text_buf[r.info->text_len], reserve_size,
+ facility, &lflags, fmt, args);
+ r.info->text_len += text_len;
+@@ -2127,6 +2218,7 @@ int vprintk_store(int facility, int level,
+ if (lflags & LOG_NEWLINE) {
+ r.info->flags |= LOG_NEWLINE;
+ prb_final_commit(&e);
++ final_commit = true;
+ } else {
+ prb_commit(&e);
+ }
+@@ -2151,6 +2243,8 @@ int vprintk_store(int facility, int level,
+ goto out;
+ }
+
++ seq = r.info->seq;
++
+ /* fill message */
+ text_len = printk_sprint(&r.text_buf[0], reserve_size, facility, &lflags, fmt, args);
+ if (trunc_msg_len)
+@@ -2165,13 +2259,25 @@ int vprintk_store(int facility, int level,
+ memcpy(&r.info->dev_info, dev_info, sizeof(r.info->dev_info));
+
+ /* A message without a trailing newline can be continued. */
+- if (!(lflags & LOG_NEWLINE))
++ if (!(lflags & LOG_NEWLINE)) {
+ prb_commit(&e);
+- else
++ } else {
+ prb_final_commit(&e);
++ final_commit = true;
++ }
+
+ ret = text_len + trunc_msg_len;
+ out:
++ /* only the kernel may perform synchronous printing */
++ if (facility == 0 && final_commit) {
++ struct console *con;
++
++ for_each_console(con) {
++ if (console_can_sync(con))
++ print_sync_until(con, seq + 1);
++ }
++ }
++
+ printk_exit_irqrestore(irqflags);
+ return ret;
+ }
+@@ -2267,12 +2373,13 @@ EXPORT_SYMBOL(printk);
+
+ #else /* CONFIG_PRINTK */
+
+-#define CONSOLE_LOG_MAX 0
+ #define printk_time false
+
+ #define prb_read_valid(rb, seq, r) false
+ #define prb_first_valid_seq(rb) 0
+
++#define kernel_sync_mode() false
++
+ static u64 syslog_seq;
+ static atomic64_t console_seq = ATOMIC64_INIT(0);
+ static u64 exclusive_console_stop_seq;
+@@ -2565,6 +2672,8 @@ static int have_callable_console(void)
+ */
+ static inline int can_use_console(void)
+ {
++ if (kernel_sync_mode())
++ return false;
+ return cpu_online(raw_smp_processor_id()) || have_callable_console();
+ }
+
+@@ -3379,6 +3488,18 @@ void kmsg_dump(enum kmsg_dump_reason reason)
+ struct kmsg_dumper_iter iter;
+ struct kmsg_dumper *dumper;
+
++ if (!oops_in_progress) {
++ /*
++ * If atomic consoles are available, activate kernel sync mode
++ * to make sure any final messages are visible. The trailing
++ * printk message is important to flush any pending messages.
++ */
++ if (have_atomic_console()) {
++ sync_mode = true;
++ pr_info("enabled sync mode\n");
++ }
++ }
++
+ rcu_read_lock();
+ list_for_each_entry_rcu(dumper, &dump_list, list) {
+ enum kmsg_dump_reason max_reason = dumper->max_reason;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0105-printk-move-console-printing-to-kthreads.patch b/debian/patches-rt/0105-printk-move-console-printing-to-kthreads.patch
new file mode 100644
index 000000000..5f6075baf
--- /dev/null
+++ b/debian/patches-rt/0105-printk-move-console-printing-to-kthreads.patch
@@ -0,0 +1,848 @@
+From 24c419661c9c605b6f1ddccf1683c2c0f8c5dcf4 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:07 +0106
+Subject: [PATCH 105/323] printk: move console printing to kthreads
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Create a kthread for each console to perform console printing. Now
+all console printing is fully asynchronous except for the boot
+console and when the kernel enters sync mode (and there are atomic
+consoles available).
+
+The console_lock() and console_unlock() functions now only do what
+their name says... locking and unlocking of the console.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ include/linux/console.h | 2 +
+ kernel/printk/printk.c | 625 ++++++++++++----------------------------
+ 2 files changed, 186 insertions(+), 441 deletions(-)
+
+diff --git a/include/linux/console.h b/include/linux/console.h
+index fcc98354f733..3e99359e0660 100644
+--- a/include/linux/console.h
++++ b/include/linux/console.h
+@@ -155,6 +155,8 @@ struct console {
+ #ifdef CONFIG_PRINTK
+ char sync_buf[CONSOLE_LOG_MAX];
+ #endif
++ atomic64_t printk_seq;
++ struct task_struct *thread;
+ uint ispeed;
+ uint ospeed;
+ void *data;
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 8a0af76b6f69..232ce58e94c2 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -44,6 +44,7 @@
+ #include <linux/irq_work.h>
+ #include <linux/ctype.h>
+ #include <linux/uio.h>
++#include <linux/kthread.h>
+ #include <linux/clocksource.h>
+ #include <linux/sched/clock.h>
+ #include <linux/sched/debug.h>
+@@ -269,11 +270,6 @@ static void __up_console_sem(unsigned long ip)
+ */
+ static int console_locked, console_suspended;
+
+-/*
+- * If exclusive_console is non-NULL then only this console is to be printed to.
+- */
+-static struct console *exclusive_console;
+-
+ /*
+ * Array of consoles built from command line options (console=)
+ */
+@@ -358,10 +354,10 @@ enum log_flags {
+ LOG_CONT = 8, /* text is a fragment of a continuation line */
+ };
+
++#ifdef CONFIG_PRINTK
+ /* syslog_lock protects syslog_* variables and write access to clear_seq. */
+ static DEFINE_SPINLOCK(syslog_lock);
+
+-#ifdef CONFIG_PRINTK
+ /* Set to enable sync mode. Once set, it is never cleared. */
+ static bool sync_mode;
+
+@@ -372,13 +368,6 @@ static u64 syslog_seq;
+ static size_t syslog_partial;
+ static bool syslog_time;
+
+-/* Both protected by @console_sem. */
+-static u64 exclusive_console_stop_seq;
+-static unsigned long console_dropped;
+-
+-/* the next printk record to write to the console */
+-static atomic64_t console_seq = ATOMIC64_INIT(0);
+-
+ struct latched_seq {
+ seqcount_latch_t latch;
+ u64 val[2];
+@@ -1757,6 +1746,8 @@ static bool console_can_sync(struct console *con)
+ return false;
+ if (con->write_atomic && kernel_sync_mode())
+ return true;
++ if (con->write && (con->flags & CON_BOOT) && !con->thread)
++ return true;
+ return false;
+ }
+
+@@ -1766,6 +1757,8 @@ static bool call_sync_console_driver(struct console *con, const char *text, size
+ return false;
+ if (con->write_atomic && kernel_sync_mode())
+ con->write_atomic(con, text, text_len);
++ else if (con->write && (con->flags & CON_BOOT) && !con->thread)
++ con->write(con, text, text_len);
+ else
+ return false;
+
+@@ -1821,202 +1814,16 @@ static void print_sync_until(struct console *con, u64 seq)
+
+ console_atomic_lock(&flags);
+ for (;;) {
+- printk_seq = atomic64_read(&console_seq);
++ printk_seq = atomic64_read(&con->printk_seq);
+ if (printk_seq >= seq)
+ break;
+ if (!print_sync(con, &printk_seq))
+ break;
+- atomic64_set(&console_seq, printk_seq + 1);
++ atomic64_set(&con->printk_seq, printk_seq + 1);
+ }
+ console_atomic_unlock(flags);
+ }
+
+-/*
+- * Special console_lock variants that help to reduce the risk of soft-lockups.
+- * They allow to pass console_lock to another printk() call using a busy wait.
+- */
+-
+-#ifdef CONFIG_LOCKDEP
+-static struct lockdep_map console_owner_dep_map = {
+- .name = "console_owner"
+-};
+-#endif
+-
+-static DEFINE_RAW_SPINLOCK(console_owner_lock);
+-static struct task_struct *console_owner;
+-static bool console_waiter;
+-
+-/**
+- * console_lock_spinning_enable - mark beginning of code where another
+- * thread might safely busy wait
+- *
+- * This basically converts console_lock into a spinlock. This marks
+- * the section where the console_lock owner can not sleep, because
+- * there may be a waiter spinning (like a spinlock). Also it must be
+- * ready to hand over the lock at the end of the section.
+- */
+-static void console_lock_spinning_enable(void)
+-{
+- raw_spin_lock(&console_owner_lock);
+- console_owner = current;
+- raw_spin_unlock(&console_owner_lock);
+-
+- /* The waiter may spin on us after setting console_owner */
+- spin_acquire(&console_owner_dep_map, 0, 0, _THIS_IP_);
+-}
+-
+-/**
+- * console_lock_spinning_disable_and_check - mark end of code where another
+- * thread was able to busy wait and check if there is a waiter
+- *
+- * This is called at the end of the section where spinning is allowed.
+- * It has two functions. First, it is a signal that it is no longer
+- * safe to start busy waiting for the lock. Second, it checks if
+- * there is a busy waiter and passes the lock rights to her.
+- *
+- * Important: Callers lose the lock if there was a busy waiter.
+- * They must not touch items synchronized by console_lock
+- * in this case.
+- *
+- * Return: 1 if the lock rights were passed, 0 otherwise.
+- */
+-static int console_lock_spinning_disable_and_check(void)
+-{
+- int waiter;
+-
+- raw_spin_lock(&console_owner_lock);
+- waiter = READ_ONCE(console_waiter);
+- console_owner = NULL;
+- raw_spin_unlock(&console_owner_lock);
+-
+- if (!waiter) {
+- spin_release(&console_owner_dep_map, _THIS_IP_);
+- return 0;
+- }
+-
+- /* The waiter is now free to continue */
+- WRITE_ONCE(console_waiter, false);
+-
+- spin_release(&console_owner_dep_map, _THIS_IP_);
+-
+- /*
+- * Hand off console_lock to waiter. The waiter will perform
+- * the up(). After this, the waiter is the console_lock owner.
+- */
+- mutex_release(&console_lock_dep_map, _THIS_IP_);
+- return 1;
+-}
+-
+-/**
+- * console_trylock_spinning - try to get console_lock by busy waiting
+- *
+- * This allows to busy wait for the console_lock when the current
+- * owner is running in specially marked sections. It means that
+- * the current owner is running and cannot reschedule until it
+- * is ready to lose the lock.
+- *
+- * Return: 1 if we got the lock, 0 othrewise
+- */
+-static int console_trylock_spinning(void)
+-{
+- struct task_struct *owner = NULL;
+- bool waiter;
+- bool spin = false;
+- unsigned long flags;
+-
+- if (console_trylock())
+- return 1;
+-
+- printk_safe_enter_irqsave(flags);
+-
+- raw_spin_lock(&console_owner_lock);
+- owner = READ_ONCE(console_owner);
+- waiter = READ_ONCE(console_waiter);
+- if (!waiter && owner && owner != current) {
+- WRITE_ONCE(console_waiter, true);
+- spin = true;
+- }
+- raw_spin_unlock(&console_owner_lock);
+-
+- /*
+- * If there is an active printk() writing to the
+- * consoles, instead of having it write our data too,
+- * see if we can offload that load from the active
+- * printer, and do some printing ourselves.
+- * Go into a spin only if there isn't already a waiter
+- * spinning, and there is an active printer, and
+- * that active printer isn't us (recursive printk?).
+- */
+- if (!spin) {
+- printk_safe_exit_irqrestore(flags);
+- return 0;
+- }
+-
+- /* We spin waiting for the owner to release us */
+- spin_acquire(&console_owner_dep_map, 0, 0, _THIS_IP_);
+- /* Owner will clear console_waiter on hand off */
+- while (READ_ONCE(console_waiter))
+- cpu_relax();
+- spin_release(&console_owner_dep_map, _THIS_IP_);
+-
+- printk_safe_exit_irqrestore(flags);
+- /*
+- * The owner passed the console lock to us.
+- * Since we did not spin on console lock, annotate
+- * this as a trylock. Otherwise lockdep will
+- * complain.
+- */
+- mutex_acquire(&console_lock_dep_map, 0, 1, _THIS_IP_);
+-
+- return 1;
+-}
+-
+-/*
+- * Call the console drivers, asking them to write out
+- * log_buf[start] to log_buf[end - 1].
+- * The console_lock must be held.
+- */
+-static void call_console_drivers(const char *ext_text, size_t ext_len,
+- const char *text, size_t len)
+-{
+- static char dropped_text[64];
+- size_t dropped_len = 0;
+- struct console *con;
+-
+- trace_console_rcuidle(text, len);
+-
+- if (!console_drivers)
+- return;
+-
+- if (console_dropped) {
+- dropped_len = snprintf(dropped_text, sizeof(dropped_text),
+- "** %lu printk messages dropped **\n",
+- console_dropped);
+- console_dropped = 0;
+- }
+-
+- for_each_console(con) {
+- if (exclusive_console && con != exclusive_console)
+- continue;
+- if (!(con->flags & CON_ENABLED))
+- continue;
+- if (!con->write)
+- continue;
+- if (!cpu_online(smp_processor_id()) &&
+- !(con->flags & CON_ANYTIME))
+- continue;
+- if (kernel_sync_mode())
+- continue;
+- if (con->flags & CON_EXTENDED)
+- con->write(con, ext_text, ext_len);
+- else {
+- if (dropped_len)
+- con->write(con, dropped_text, dropped_len);
+- con->write(con, text, len);
+- }
+- }
+-}
+-
+ #ifdef CONFIG_PRINTK_NMI
+ #define NUM_RECURSION_CTX 2
+ #else
+@@ -2287,39 +2094,16 @@ asmlinkage int vprintk_emit(int facility, int level,
+ const char *fmt, va_list args)
+ {
+ int printed_len;
+- bool in_sched = false;
+
+ /* Suppress unimportant messages after panic happens */
+ if (unlikely(suppress_printk))
+ return 0;
+
+- if (level == LOGLEVEL_SCHED) {
++ if (level == LOGLEVEL_SCHED)
+ level = LOGLEVEL_DEFAULT;
+- in_sched = true;
+- }
+-
+- printk_delay(level);
+
+ printed_len = vprintk_store(facility, level, dev_info, fmt, args);
+
+- /* If called from the scheduler, we can not call up(). */
+- if (!in_sched) {
+- /*
+- * Disable preemption to avoid being preempted while holding
+- * console_sem which would prevent anyone from printing to
+- * console
+- */
+- preempt_disable();
+- /*
+- * Try to acquire and then immediately release the console
+- * semaphore. The release will print out buffers and wake up
+- * /dev/kmsg and syslog() users.
+- */
+- if (console_trylock_spinning())
+- console_unlock();
+- preempt_enable();
+- }
+-
+ wake_up_klogd();
+ return printed_len;
+ }
+@@ -2371,38 +2155,158 @@ asmlinkage __visible int printk(const char *fmt, ...)
+ }
+ EXPORT_SYMBOL(printk);
+
+-#else /* CONFIG_PRINTK */
++static int printk_kthread_func(void *data)
++{
++ struct console *con = data;
++ unsigned long dropped = 0;
++ char *dropped_text = NULL;
++ struct printk_info info;
++ struct printk_record r;
++ char *ext_text = NULL;
++ size_t dropped_len;
++ int ret = -ENOMEM;
++ char *text = NULL;
++ char *write_text;
++ u64 printk_seq;
++ size_t len;
++ int error;
++ u64 seq;
+
+-#define printk_time false
++ if (con->flags & CON_EXTENDED) {
++ ext_text = kmalloc(CONSOLE_EXT_LOG_MAX, GFP_KERNEL);
++ if (!ext_text)
++ goto out;
++ }
++ text = kmalloc(LOG_LINE_MAX + PREFIX_MAX, GFP_KERNEL);
++ dropped_text = kmalloc(64, GFP_KERNEL);
++ if (!text || !dropped_text)
++ goto out;
+
+-#define prb_read_valid(rb, seq, r) false
+-#define prb_first_valid_seq(rb) 0
++ if (con->flags & CON_EXTENDED)
++ write_text = ext_text;
++ else
++ write_text = text;
+
+-#define kernel_sync_mode() false
++ seq = atomic64_read(&con->printk_seq);
+
+-static u64 syslog_seq;
+-static atomic64_t console_seq = ATOMIC64_INIT(0);
+-static u64 exclusive_console_stop_seq;
+-static unsigned long console_dropped;
++ prb_rec_init_rd(&r, &info, text, LOG_LINE_MAX + PREFIX_MAX);
++
++ for (;;) {
++ error = wait_event_interruptible(log_wait,
++ prb_read_valid(prb, seq, &r) || kthread_should_stop());
++
++ if (kthread_should_stop())
++ break;
++
++ if (error)
++ continue;
++
++ if (seq != r.info->seq) {
++ dropped += r.info->seq - seq;
++ seq = r.info->seq;
++ }
++
++ seq++;
++
++ if (!(con->flags & CON_ENABLED))
++ continue;
++
++ if (suppress_message_printing(r.info->level))
++ continue;
++
++ if (con->flags & CON_EXTENDED) {
++ len = info_print_ext_header(ext_text,
++ CONSOLE_EXT_LOG_MAX,
++ r.info);
++ len += msg_print_ext_body(ext_text + len,
++ CONSOLE_EXT_LOG_MAX - len,
++ &r.text_buf[0], r.info->text_len,
++ &r.info->dev_info);
++ } else {
++ len = record_print_text(&r,
++ console_msg_format & MSG_FORMAT_SYSLOG,
++ printk_time);
++ }
++
++ printk_seq = atomic64_read(&con->printk_seq);
+
+-static size_t record_print_text(const struct printk_record *r,
+- bool syslog, bool time)
++ console_lock();
++ console_may_schedule = 0;
++
++ if (kernel_sync_mode() && con->write_atomic) {
++ console_unlock();
++ break;
++ }
++
++ if (!(con->flags & CON_EXTENDED) && dropped) {
++ dropped_len = snprintf(dropped_text, 64,
++ "** %lu printk messages dropped **\n",
++ dropped);
++ dropped = 0;
++
++ con->write(con, dropped_text, dropped_len);
++ printk_delay(r.info->level);
++ }
++
++ con->write(con, write_text, len);
++ if (len)
++ printk_delay(r.info->level);
++
++ atomic64_cmpxchg_relaxed(&con->printk_seq, printk_seq, seq);
++
++ console_unlock();
++ }
++out:
++ kfree(dropped_text);
++ kfree(text);
++ kfree(ext_text);
++ pr_info("%sconsole [%s%d]: printing thread stopped\n",
++ (con->flags & CON_BOOT) ? "boot" : "",
++ con->name, con->index);
++ return ret;
++}
++
++/* Must be called within console_lock(). */
++static void start_printk_kthread(struct console *con)
+ {
+- return 0;
++ con->thread = kthread_run(printk_kthread_func, con,
++ "pr/%s%d", con->name, con->index);
++ if (IS_ERR(con->thread)) {
++ pr_err("%sconsole [%s%d]: unable to start printing thread\n",
++ (con->flags & CON_BOOT) ? "boot" : "",
++ con->name, con->index);
++ return;
++ }
++ pr_info("%sconsole [%s%d]: printing thread started\n",
++ (con->flags & CON_BOOT) ? "boot" : "",
++ con->name, con->index);
+ }
+-static ssize_t info_print_ext_header(char *buf, size_t size,
+- struct printk_info *info)
++
++/* protected by console_lock */
++static bool kthreads_started;
++
++/* Must be called within console_lock(). */
++static void console_try_thread(struct console *con)
+ {
+- return 0;
++ if (kthreads_started) {
++ start_printk_kthread(con);
++ return;
++ }
++
++ /*
++ * The printing threads have not been started yet. If this console
++ * can print synchronously, print all unprinted messages.
++ */
++ if (console_can_sync(con))
++ print_sync_until(con, prb_next_seq(prb));
+ }
+-static ssize_t msg_print_ext_body(char *buf, size_t size,
+- char *text, size_t text_len,
+- struct dev_printk_info *dev_info) { return 0; }
+-static void console_lock_spinning_enable(void) { }
+-static int console_lock_spinning_disable_and_check(void) { return 0; }
+-static void call_console_drivers(const char *ext_text, size_t ext_len,
+- const char *text, size_t len) {}
+-static bool suppress_message_printing(int level) { return false; }
++
++#else /* CONFIG_PRINTK */
++
++#define prb_first_valid_seq(rb) 0
++#define prb_next_seq(rb) 0
++
++#define console_try_thread(con)
+
+ #endif /* CONFIG_PRINTK */
+
+@@ -2647,36 +2551,6 @@ int is_console_locked(void)
+ }
+ EXPORT_SYMBOL(is_console_locked);
+
+-/*
+- * Check if we have any console that is capable of printing while cpu is
+- * booting or shutting down. Requires console_sem.
+- */
+-static int have_callable_console(void)
+-{
+- struct console *con;
+-
+- for_each_console(con)
+- if ((con->flags & CON_ENABLED) &&
+- (con->flags & CON_ANYTIME))
+- return 1;
+-
+- return 0;
+-}
+-
+-/*
+- * Can we actually use the console at this time on this cpu?
+- *
+- * Console drivers may assume that per-cpu resources have been allocated. So
+- * unless they're explicitly marked as being able to cope (CON_ANYTIME) don't
+- * call them until this CPU is officially up.
+- */
+-static inline int can_use_console(void)
+-{
+- if (kernel_sync_mode())
+- return false;
+- return cpu_online(raw_smp_processor_id()) || have_callable_console();
+-}
+-
+ /**
+ * console_unlock - unlock the console system
+ *
+@@ -2693,131 +2567,14 @@ static inline int can_use_console(void)
+ */
+ void console_unlock(void)
+ {
+- static char ext_text[CONSOLE_EXT_LOG_MAX];
+- static char text[CONSOLE_LOG_MAX];
+- bool do_cond_resched, retry;
+- struct printk_info info;
+- struct printk_record r;
+- u64 seq;
+-
+ if (console_suspended) {
+ up_console_sem();
+ return;
+ }
+
+- prb_rec_init_rd(&r, &info, text, sizeof(text));
+-
+- /*
+- * Console drivers are called with interrupts disabled, so
+- * @console_may_schedule should be cleared before; however, we may
+- * end up dumping a lot of lines, for example, if called from
+- * console registration path, and should invoke cond_resched()
+- * between lines if allowable. Not doing so can cause a very long
+- * scheduling stall on a slow console leading to RCU stall and
+- * softlockup warnings which exacerbate the issue with more
+- * messages practically incapacitating the system.
+- *
+- * console_trylock() is not able to detect the preemptive
+- * context reliably. Therefore the value must be stored before
+- * and cleared after the "again" goto label.
+- */
+- do_cond_resched = console_may_schedule;
+-again:
+- console_may_schedule = 0;
+-
+- /*
+- * We released the console_sem lock, so we need to recheck if
+- * cpu is online and (if not) is there at least one CON_ANYTIME
+- * console.
+- */
+- if (!can_use_console()) {
+- console_locked = 0;
+- up_console_sem();
+- return;
+- }
+-
+- for (;;) {
+- size_t ext_len = 0;
+- size_t len;
+-
+-skip:
+- seq = atomic64_read(&console_seq);
+- if (!prb_read_valid(prb, seq, &r))
+- break;
+-
+- if (seq != r.info->seq) {
+- console_dropped += r.info->seq - seq;
+- atomic64_set(&console_seq, r.info->seq);
+- seq = r.info->seq;
+- }
+-
+- if (suppress_message_printing(r.info->level)) {
+- /*
+- * Skip record we have buffered and already printed
+- * directly to the console when we received it, and
+- * record that has level above the console loglevel.
+- */
+- atomic64_set(&console_seq, seq + 1);
+- goto skip;
+- }
+-
+- /* Output to all consoles once old messages replayed. */
+- if (unlikely(exclusive_console &&
+- seq >= exclusive_console_stop_seq)) {
+- exclusive_console = NULL;
+- }
+-
+- /*
+- * Handle extended console text first because later
+- * record_print_text() will modify the record buffer in-place.
+- */
+- if (nr_ext_console_drivers) {
+- ext_len = info_print_ext_header(ext_text,
+- sizeof(ext_text),
+- r.info);
+- ext_len += msg_print_ext_body(ext_text + ext_len,
+- sizeof(ext_text) - ext_len,
+- &r.text_buf[0],
+- r.info->text_len,
+- &r.info->dev_info);
+- }
+- len = record_print_text(&r,
+- console_msg_format & MSG_FORMAT_SYSLOG,
+- printk_time);
+- atomic64_set(&console_seq, seq + 1);
+-
+- /*
+- * While actively printing out messages, if another printk()
+- * were to occur on another CPU, it may wait for this one to
+- * finish. This task can not be preempted if there is a
+- * waiter waiting to take over.
+- */
+- console_lock_spinning_enable();
+-
+- stop_critical_timings(); /* don't trace print latency */
+- call_console_drivers(ext_text, ext_len, text, len);
+- start_critical_timings();
+-
+- if (console_lock_spinning_disable_and_check())
+- return;
+-
+- if (do_cond_resched)
+- cond_resched();
+- }
+-
+ console_locked = 0;
+
+ up_console_sem();
+-
+- /*
+- * Someone could have filled up the buffer again, so re-check if there's
+- * something to flush. In case we cannot trylock the console_sem again,
+- * there's a new owner and the console_unlock() from them will do the
+- * flush, no worries.
+- */
+- retry = prb_read_valid(prb, atomic64_read(&console_seq), NULL);
+- if (retry && console_trylock())
+- goto again;
+ }
+ EXPORT_SYMBOL(console_unlock);
+
+@@ -2867,18 +2624,20 @@ void console_unblank(void)
+ */
+ void console_flush_on_panic(enum con_flush_mode mode)
+ {
+- /*
+- * If someone else is holding the console lock, trylock will fail
+- * and may_schedule may be set. Ignore and proceed to unlock so
+- * that messages are flushed out. As this can be called from any
+- * context and we don't want to get preempted while flushing,
+- * ensure may_schedule is cleared.
+- */
+- console_trylock();
++ struct console *c;
++ u64 seq;
++
++ if (!console_trylock())
++ return;
++
+ console_may_schedule = 0;
+
+- if (mode == CONSOLE_REPLAY_ALL)
+- atomic64_set(&console_seq, prb_first_valid_seq(prb));
++ if (mode == CONSOLE_REPLAY_ALL) {
++ seq = prb_first_valid_seq(prb);
++ for_each_console(c)
++ atomic64_set(&c->printk_seq, seq);
++ }
++
+ console_unlock();
+ }
+
+@@ -3013,7 +2772,6 @@ static int try_enable_new_console(struct console *newcon, bool user_specified)
+ */
+ void register_console(struct console *newcon)
+ {
+- unsigned long flags;
+ struct console *bcon = NULL;
+ int err;
+
+@@ -3037,6 +2795,8 @@ void register_console(struct console *newcon)
+ }
+ }
+
++ newcon->thread = NULL;
++
+ if (console_drivers && console_drivers->flags & CON_BOOT)
+ bcon = console_drivers;
+
+@@ -3101,27 +2861,12 @@ void register_console(struct console *newcon)
+ if (newcon->flags & CON_EXTENDED)
+ nr_ext_console_drivers++;
+
+- if (newcon->flags & CON_PRINTBUFFER) {
+- /*
+- * console_unlock(); will print out the buffered messages
+- * for us.
+- *
+- * We're about to replay the log buffer. Only do this to the
+- * just-registered console to avoid excessive message spam to
+- * the already-registered consoles.
+- *
+- * Set exclusive_console with disabled interrupts to reduce
+- * race window with eventual console_flush_on_panic() that
+- * ignores console_lock.
+- */
+- exclusive_console = newcon;
+- exclusive_console_stop_seq = atomic64_read(&console_seq);
++ if (newcon->flags & CON_PRINTBUFFER)
++ atomic64_set(&newcon->printk_seq, 0);
++ else
++ atomic64_set(&newcon->printk_seq, prb_next_seq(prb));
+
+- /* Get a consistent copy of @syslog_seq. */
+- spin_lock_irqsave(&syslog_lock, flags);
+- atomic64_set(&console_seq, syslog_seq);
+- spin_unlock_irqrestore(&syslog_lock, flags);
+- }
++ console_try_thread(newcon);
+ console_unlock();
+ console_sysfs_notify();
+
+@@ -3195,6 +2940,9 @@ int unregister_console(struct console *console)
+ console_unlock();
+ console_sysfs_notify();
+
++ if (console->thread && !IS_ERR(console->thread))
++ kthread_stop(console->thread);
++
+ if (console->exit)
+ res = console->exit(console);
+
+@@ -3277,6 +3025,15 @@ static int __init printk_late_init(void)
+ unregister_console(con);
+ }
+ }
++
++#ifdef CONFIG_PRINTK
++ console_lock();
++ for_each_console(con)
++ start_printk_kthread(con);
++ kthreads_started = true;
++ console_unlock();
++#endif
++
+ ret = cpuhp_setup_state_nocalls(CPUHP_PRINTK_DEAD, "printk:dead", NULL,
+ console_cpu_notify);
+ WARN_ON(ret < 0);
+@@ -3292,7 +3049,6 @@ late_initcall(printk_late_init);
+ * Delayed printk version, for scheduler-internal messages:
+ */
+ #define PRINTK_PENDING_WAKEUP 0x01
+-#define PRINTK_PENDING_OUTPUT 0x02
+
+ static DEFINE_PER_CPU(int, printk_pending);
+
+@@ -3300,14 +3056,8 @@ static void wake_up_klogd_work_func(struct irq_work *irq_work)
+ {
+ int pending = __this_cpu_xchg(printk_pending, 0);
+
+- if (pending & PRINTK_PENDING_OUTPUT) {
+- /* If trylock fails, someone else is doing the printing */
+- if (console_trylock())
+- console_unlock();
+- }
+-
+ if (pending & PRINTK_PENDING_WAKEUP)
+- wake_up_interruptible(&log_wait);
++ wake_up_interruptible_all(&log_wait);
+ }
+
+ static DEFINE_PER_CPU(struct irq_work, wake_up_klogd_work) = {
+@@ -3330,13 +3080,6 @@ void wake_up_klogd(void)
+
+ void defer_console_output(void)
+ {
+- if (!printk_percpu_data_ready())
+- return;
+-
+- preempt_disable();
+- __this_cpu_or(printk_pending, PRINTK_PENDING_OUTPUT);
+- irq_work_queue(this_cpu_ptr(&wake_up_klogd_work));
+- preempt_enable();
+ }
+
+ int vprintk_deferred(const char *fmt, va_list args)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0106-printk-remove-deferred-printing.patch b/debian/patches-rt/0106-printk-remove-deferred-printing.patch
new file mode 100644
index 000000000..b65397f57
--- /dev/null
+++ b/debian/patches-rt/0106-printk-remove-deferred-printing.patch
@@ -0,0 +1,432 @@
+From f1e8f72e9d5c1df1ddaac09999645f7255219d77 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:08 +0106
+Subject: [PATCH 106/323] printk: remove deferred printing
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Since printing occurs either atomically or from the printing
+kthread, there is no need for any deferring or tracking possible
+recursion paths. Remove all printk context tracking.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm/kernel/smp.c | 2 -
+ arch/powerpc/kexec/crash.c | 3 --
+ include/linux/hardirq.h | 2 -
+ include/linux/printk.h | 12 -----
+ kernel/printk/Makefile | 1 -
+ kernel/printk/internal.h | 70 -----------------------------
+ kernel/printk/printk.c | 58 ++++++++++--------------
+ kernel/printk/printk_safe.c | 88 -------------------------------------
+ kernel/trace/trace.c | 2 -
+ 9 files changed, 22 insertions(+), 216 deletions(-)
+ delete mode 100644 kernel/printk/internal.h
+ delete mode 100644 kernel/printk/printk_safe.c
+
+diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c
+index 8aa7fa949c23..3693706ba0a1 100644
+--- a/arch/arm/kernel/smp.c
++++ b/arch/arm/kernel/smp.c
+@@ -671,9 +671,7 @@ static void do_handle_IPI(int ipinr)
+ break;
+
+ case IPI_CPU_BACKTRACE:
+- printk_nmi_enter();
+ nmi_cpu_backtrace(get_irq_regs());
+- printk_nmi_exit();
+ break;
+
+ default:
+diff --git a/arch/powerpc/kexec/crash.c b/arch/powerpc/kexec/crash.c
+index c9a889880214..d488311efab1 100644
+--- a/arch/powerpc/kexec/crash.c
++++ b/arch/powerpc/kexec/crash.c
+@@ -311,9 +311,6 @@ void default_machine_crash_shutdown(struct pt_regs *regs)
+ unsigned int i;
+ int (*old_handler)(struct pt_regs *regs);
+
+- /* Avoid hardlocking with irresponsive CPU holding logbuf_lock */
+- printk_nmi_enter();
+-
+ /*
+ * This function is only called after the system
+ * has panicked or is otherwise in a critical state.
+diff --git a/include/linux/hardirq.h b/include/linux/hardirq.h
+index 754f67ac4326..c35b71f8644a 100644
+--- a/include/linux/hardirq.h
++++ b/include/linux/hardirq.h
+@@ -115,7 +115,6 @@ extern void rcu_nmi_exit(void);
+ do { \
+ lockdep_off(); \
+ arch_nmi_enter(); \
+- printk_nmi_enter(); \
+ BUG_ON(in_nmi() == NMI_MASK); \
+ __preempt_count_add(NMI_OFFSET + HARDIRQ_OFFSET); \
+ } while (0)
+@@ -134,7 +133,6 @@ extern void rcu_nmi_exit(void);
+ do { \
+ BUG_ON(!in_nmi()); \
+ __preempt_count_sub(NMI_OFFSET + HARDIRQ_OFFSET); \
+- printk_nmi_exit(); \
+ arch_nmi_exit(); \
+ lockdep_on(); \
+ } while (0)
+diff --git a/include/linux/printk.h b/include/linux/printk.h
+index 3738374e2b3b..410435ac15ea 100644
+--- a/include/linux/printk.h
++++ b/include/linux/printk.h
+@@ -155,18 +155,6 @@ static inline __printf(1, 2) __cold
+ void early_printk(const char *s, ...) { }
+ #endif
+
+-#ifdef CONFIG_PRINTK_NMI
+-extern void printk_nmi_enter(void);
+-extern void printk_nmi_exit(void);
+-extern void printk_nmi_direct_enter(void);
+-extern void printk_nmi_direct_exit(void);
+-#else
+-static inline void printk_nmi_enter(void) { }
+-static inline void printk_nmi_exit(void) { }
+-static inline void printk_nmi_direct_enter(void) { }
+-static inline void printk_nmi_direct_exit(void) { }
+-#endif /* PRINTK_NMI */
+-
+ struct dev_printk_info;
+
+ #ifdef CONFIG_PRINTK
+diff --git a/kernel/printk/Makefile b/kernel/printk/Makefile
+index eee3dc9b60a9..59cb24e25f00 100644
+--- a/kernel/printk/Makefile
++++ b/kernel/printk/Makefile
+@@ -1,5 +1,4 @@
+ # SPDX-License-Identifier: GPL-2.0-only
+ obj-y = printk.o
+-obj-$(CONFIG_PRINTK) += printk_safe.o
+ obj-$(CONFIG_A11Y_BRAILLE_CONSOLE) += braille.o
+ obj-$(CONFIG_PRINTK) += printk_ringbuffer.o
+diff --git a/kernel/printk/internal.h b/kernel/printk/internal.h
+deleted file mode 100644
+index e108b2ece8c7..000000000000
+--- a/kernel/printk/internal.h
++++ /dev/null
+@@ -1,70 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0-or-later */
+-/*
+- * internal.h - printk internal definitions
+- */
+-#include <linux/percpu.h>
+-
+-#ifdef CONFIG_PRINTK
+-
+-#define PRINTK_SAFE_CONTEXT_MASK 0x007ffffff
+-#define PRINTK_NMI_DIRECT_CONTEXT_MASK 0x008000000
+-#define PRINTK_NMI_CONTEXT_MASK 0xff0000000
+-
+-#define PRINTK_NMI_CONTEXT_OFFSET 0x010000000
+-
+-__printf(4, 0)
+-int vprintk_store(int facility, int level,
+- const struct dev_printk_info *dev_info,
+- const char *fmt, va_list args);
+-
+-__printf(1, 0) int vprintk_default(const char *fmt, va_list args);
+-__printf(1, 0) int vprintk_deferred(const char *fmt, va_list args);
+-__printf(1, 0) int vprintk_func(const char *fmt, va_list args);
+-void __printk_safe_enter(void);
+-void __printk_safe_exit(void);
+-
+-bool printk_percpu_data_ready(void);
+-
+-#define printk_safe_enter_irqsave(flags) \
+- do { \
+- local_irq_save(flags); \
+- __printk_safe_enter(); \
+- } while (0)
+-
+-#define printk_safe_exit_irqrestore(flags) \
+- do { \
+- __printk_safe_exit(); \
+- local_irq_restore(flags); \
+- } while (0)
+-
+-#define printk_safe_enter_irq() \
+- do { \
+- local_irq_disable(); \
+- __printk_safe_enter(); \
+- } while (0)
+-
+-#define printk_safe_exit_irq() \
+- do { \
+- __printk_safe_exit(); \
+- local_irq_enable(); \
+- } while (0)
+-
+-void defer_console_output(void);
+-
+-#else
+-
+-__printf(1, 0) int vprintk_func(const char *fmt, va_list args) { return 0; }
+-
+-/*
+- * In !PRINTK builds we still export console_sem
+- * semaphore and some of console functions (console_unlock()/etc.), so
+- * printk-safe must preserve the existing local IRQ guarantees.
+- */
+-#define printk_safe_enter_irqsave(flags) local_irq_save(flags)
+-#define printk_safe_exit_irqrestore(flags) local_irq_restore(flags)
+-
+-#define printk_safe_enter_irq() local_irq_disable()
+-#define printk_safe_exit_irq() local_irq_enable()
+-
+-static inline bool printk_percpu_data_ready(void) { return false; }
+-#endif /* CONFIG_PRINTK */
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 232ce58e94c2..2b110b9ae34a 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -45,6 +45,7 @@
+ #include <linux/ctype.h>
+ #include <linux/uio.h>
+ #include <linux/kthread.h>
++#include <linux/kdb.h>
+ #include <linux/clocksource.h>
+ #include <linux/sched/clock.h>
+ #include <linux/sched/debug.h>
+@@ -60,7 +61,6 @@
+ #include "printk_ringbuffer.h"
+ #include "console_cmdline.h"
+ #include "braille.h"
+-#include "internal.h"
+
+ int console_printk[4] = {
+ CONSOLE_LOGLEVEL_DEFAULT, /* console_loglevel */
+@@ -229,19 +229,7 @@ static int nr_ext_console_drivers;
+
+ static int __down_trylock_console_sem(unsigned long ip)
+ {
+- int lock_failed;
+- unsigned long flags;
+-
+- /*
+- * Here and in __up_console_sem() we need to be in safe mode,
+- * because spindump/WARN/etc from under console ->lock will
+- * deadlock in printk()->down_trylock_console_sem() otherwise.
+- */
+- printk_safe_enter_irqsave(flags);
+- lock_failed = down_trylock(&console_sem);
+- printk_safe_exit_irqrestore(flags);
+-
+- if (lock_failed)
++ if (down_trylock(&console_sem))
+ return 1;
+ mutex_acquire(&console_lock_dep_map, 0, 1, ip);
+ return 0;
+@@ -250,13 +238,9 @@ static int __down_trylock_console_sem(unsigned long ip)
+
+ static void __up_console_sem(unsigned long ip)
+ {
+- unsigned long flags;
+-
+ mutex_release(&console_lock_dep_map, ip);
+
+- printk_safe_enter_irqsave(flags);
+ up(&console_sem);
+- printk_safe_exit_irqrestore(flags);
+ }
+ #define up_console_sem() __up_console_sem(_RET_IP_)
+
+@@ -428,7 +412,7 @@ static struct printk_ringbuffer *prb = &printk_rb_static;
+ */
+ static bool __printk_percpu_data_ready __read_mostly;
+
+-bool printk_percpu_data_ready(void)
++static bool printk_percpu_data_ready(void)
+ {
+ return __printk_percpu_data_ready;
+ }
+@@ -1063,7 +1047,6 @@ void __init setup_log_buf(int early)
+ struct printk_record r;
+ size_t new_descs_size;
+ size_t new_infos_size;
+- unsigned long flags;
+ char *new_log_buf;
+ unsigned int free;
+ u64 seq;
+@@ -1961,9 +1944,9 @@ static u16 printk_sprint(char *text, u16 size, int facility, enum log_flags *lfl
+ }
+
+ __printf(4, 0)
+-int vprintk_store(int facility, int level,
+- const struct dev_printk_info *dev_info,
+- const char *fmt, va_list args)
++static int vprintk_store(int facility, int level,
++ const struct dev_printk_info *dev_info,
++ const char *fmt, va_list args)
+ {
+ const u32 caller_id = printk_caller_id();
+ struct prb_reserved_entry e;
+@@ -2109,11 +2092,22 @@ asmlinkage int vprintk_emit(int facility, int level,
+ }
+ EXPORT_SYMBOL(vprintk_emit);
+
+-int vprintk_default(const char *fmt, va_list args)
++__printf(1, 0)
++static int vprintk_default(const char *fmt, va_list args)
+ {
+ return vprintk_emit(0, LOGLEVEL_DEFAULT, NULL, fmt, args);
+ }
+-EXPORT_SYMBOL_GPL(vprintk_default);
++
++__printf(1, 0)
++static int vprintk_func(const char *fmt, va_list args)
++{
++#ifdef CONFIG_KGDB_KDB
++ /* Allow to pass printk() to kdb but avoid a recursion. */
++ if (unlikely(kdb_trap_printk && kdb_printf_cpu < 0))
++ return vkdb_printf(KDB_MSGSRC_PRINTK, fmt, args);
++#endif
++ return vprintk_default(fmt, args);
++}
+
+ asmlinkage int vprintk(const char *fmt, va_list args)
+ {
+@@ -3078,18 +3072,10 @@ void wake_up_klogd(void)
+ preempt_enable();
+ }
+
+-void defer_console_output(void)
+-{
+-}
+-
+-int vprintk_deferred(const char *fmt, va_list args)
++__printf(1, 0)
++static int vprintk_deferred(const char *fmt, va_list args)
+ {
+- int r;
+-
+- r = vprintk_emit(0, LOGLEVEL_SCHED, NULL, fmt, args);
+- defer_console_output();
+-
+- return r;
++ return vprintk_emit(0, LOGLEVEL_DEFAULT, NULL, fmt, args);
+ }
+
+ int printk_deferred(const char *fmt, ...)
+diff --git a/kernel/printk/printk_safe.c b/kernel/printk/printk_safe.c
+deleted file mode 100644
+index c23b127a6545..000000000000
+--- a/kernel/printk/printk_safe.c
++++ /dev/null
+@@ -1,88 +0,0 @@
+-// SPDX-License-Identifier: GPL-2.0-or-later
+-/*
+- * printk_safe.c - Safe printk for printk-deadlock-prone contexts
+- */
+-
+-#include <linux/preempt.h>
+-#include <linux/spinlock.h>
+-#include <linux/debug_locks.h>
+-#include <linux/kdb.h>
+-#include <linux/smp.h>
+-#include <linux/cpumask.h>
+-#include <linux/irq_work.h>
+-#include <linux/printk.h>
+-#include <linux/kprobes.h>
+-
+-#include "internal.h"
+-
+-static DEFINE_PER_CPU(int, printk_context);
+-
+-#ifdef CONFIG_PRINTK_NMI
+-void noinstr printk_nmi_enter(void)
+-{
+- this_cpu_add(printk_context, PRINTK_NMI_CONTEXT_OFFSET);
+-}
+-
+-void noinstr printk_nmi_exit(void)
+-{
+- this_cpu_sub(printk_context, PRINTK_NMI_CONTEXT_OFFSET);
+-}
+-
+-/*
+- * Marks a code that might produce many messages in NMI context
+- * and the risk of losing them is more critical than eventual
+- * reordering.
+- */
+-void printk_nmi_direct_enter(void)
+-{
+- if (this_cpu_read(printk_context) & PRINTK_NMI_CONTEXT_MASK)
+- this_cpu_or(printk_context, PRINTK_NMI_DIRECT_CONTEXT_MASK);
+-}
+-
+-void printk_nmi_direct_exit(void)
+-{
+- this_cpu_and(printk_context, ~PRINTK_NMI_DIRECT_CONTEXT_MASK);
+-}
+-
+-#endif /* CONFIG_PRINTK_NMI */
+-
+-/* Can be preempted by NMI. */
+-void __printk_safe_enter(void)
+-{
+- this_cpu_inc(printk_context);
+-}
+-
+-/* Can be preempted by NMI. */
+-void __printk_safe_exit(void)
+-{
+- this_cpu_dec(printk_context);
+-}
+-
+-__printf(1, 0) int vprintk_func(const char *fmt, va_list args)
+-{
+-#ifdef CONFIG_KGDB_KDB
+- /* Allow to pass printk() to kdb but avoid a recursion. */
+- if (unlikely(kdb_trap_printk && kdb_printf_cpu < 0))
+- return vkdb_printf(KDB_MSGSRC_PRINTK, fmt, args);
+-#endif
+-
+- /*
+- * Use the main logbuf even in NMI. But avoid calling console
+- * drivers that might have their own locks.
+- */
+- if (this_cpu_read(printk_context) &
+- (PRINTK_NMI_DIRECT_CONTEXT_MASK |
+- PRINTK_NMI_CONTEXT_MASK |
+- PRINTK_SAFE_CONTEXT_MASK)) {
+- int len;
+-
+- printk_safe_enter_irqsave(flags);
+- len = vprintk_store(0, LOGLEVEL_DEFAULT, NULL, fmt, args);
+- printk_safe_exit_irqrestore(flags);
+- defer_console_output();
+- return len;
+- }
+-
+- /* No obstacles. */
+- return vprintk_default(fmt, args);
+-}
+diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
+index 70ab6b46ef8f..5d6730589823 100644
+--- a/kernel/trace/trace.c
++++ b/kernel/trace/trace.c
+@@ -9517,7 +9517,6 @@ void ftrace_dump(enum ftrace_dump_mode oops_dump_mode)
+ tracing_off();
+
+ local_irq_save(flags);
+- printk_nmi_direct_enter();
+
+ /* Simulate the iterator */
+ trace_init_global_iter(&iter);
+@@ -9594,7 +9593,6 @@ void ftrace_dump(enum ftrace_dump_mode oops_dump_mode)
+ atomic_dec(&per_cpu_ptr(iter.array_buffer->data, cpu)->disabled);
+ }
+ atomic_dec(&dump_running);
+- printk_nmi_direct_exit();
+ local_irq_restore(flags);
+ }
+ EXPORT_SYMBOL_GPL(ftrace_dump);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0107-printk-add-console-handover.patch b/debian/patches-rt/0107-printk-add-console-handover.patch
new file mode 100644
index 000000000..9abc4efd5
--- /dev/null
+++ b/debian/patches-rt/0107-printk-add-console-handover.patch
@@ -0,0 +1,76 @@
+From ead093d95a7917fa12f9d4653032eac383d21c1d Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:09 +0106
+Subject: [PATCH 107/323] printk: add console handover
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+If earlyprintk is used, a boot console will print directly to the
+console immediately. The boot console will unregister itself as soon
+as a non-boot console registers. However, the non-boot console does
+not begin printing until its kthread has started. Since this happens
+much later, there is a long pause in the console output. If the
+ringbuffer is small, messages could even be dropped during the
+pause.
+
+Add a new CON_HANDOVER console flag to be used internally by printk
+in order to track which non-boot console took over from a boot
+console. If handover consoles have implemented write_atomic(), they
+are allowed to print directly to the console until their kthread can
+take over.
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/console.h | 1 +
+ kernel/printk/printk.c | 8 +++++++-
+ 2 files changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/console.h b/include/linux/console.h
+index 3e99359e0660..027278792eea 100644
+--- a/include/linux/console.h
++++ b/include/linux/console.h
+@@ -138,6 +138,7 @@ static inline int con_debug_leave(void)
+ #define CON_ANYTIME (16) /* Safe to call when cpu is offline */
+ #define CON_BRL (32) /* Used for a braille device */
+ #define CON_EXTENDED (64) /* Use the extended output format a la /dev/kmsg */
++#define CON_HANDOVER (128) /* Device was previously a boot console. */
+
+ struct console {
+ char name[16];
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 2b110b9ae34a..58da007d7c99 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -1729,6 +1729,8 @@ static bool console_can_sync(struct console *con)
+ return false;
+ if (con->write_atomic && kernel_sync_mode())
+ return true;
++ if (con->write_atomic && (con->flags & CON_HANDOVER) && !con->thread)
++ return true;
+ if (con->write && (con->flags & CON_BOOT) && !con->thread)
+ return true;
+ return false;
+@@ -1740,6 +1742,8 @@ static bool call_sync_console_driver(struct console *con, const char *text, size
+ return false;
+ if (con->write_atomic && kernel_sync_mode())
+ con->write_atomic(con, text, text_len);
++ else if (con->write_atomic && (con->flags & CON_HANDOVER) && !con->thread)
++ con->write_atomic(con, text, text_len);
+ else if (con->write && (con->flags & CON_BOOT) && !con->thread)
+ con->write(con, text, text_len);
+ else
+@@ -2832,8 +2836,10 @@ void register_console(struct console *newcon)
+ * the real console are the same physical device, it's annoying to
+ * see the beginning boot messages twice
+ */
+- if (bcon && ((newcon->flags & (CON_CONSDEV | CON_BOOT)) == CON_CONSDEV))
++ if (bcon && ((newcon->flags & (CON_CONSDEV | CON_BOOT)) == CON_CONSDEV)) {
+ newcon->flags &= ~CON_PRINTBUFFER;
++ newcon->flags |= CON_HANDOVER;
++ }
+
+ /*
+ * Put this console in the list - keep the
+--
+2.43.0
+
diff --git a/debian/patches-rt/0108-printk-add-pr_flush.patch b/debian/patches-rt/0108-printk-add-pr_flush.patch
new file mode 100644
index 000000000..013525f54
--- /dev/null
+++ b/debian/patches-rt/0108-printk-add-pr_flush.patch
@@ -0,0 +1,213 @@
+From cf83f550753a28a3f2a5a7ddd45456fb3ccd03ed Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Mon, 30 Nov 2020 01:42:10 +0106
+Subject: [PATCH 108/323] printk: add pr_flush()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Provide a function to allow waiting for console printers to catch
+up to the latest logged message.
+
+Use pr_flush() to give console printers a chance to finish in
+critical situations if no atomic console is available. For now
+pr_flush() is only used in the most common error paths:
+panic(), print_oops_end_marker(), report_bug(), kmsg_dump().
+
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ include/linux/printk.h | 2 ++
+ kernel/panic.c | 28 +++++++++------
+ kernel/printk/printk.c | 79 ++++++++++++++++++++++++++++++++++++++++++
+ lib/bug.c | 1 +
+ 4 files changed, 99 insertions(+), 11 deletions(-)
+
+diff --git a/include/linux/printk.h b/include/linux/printk.h
+index 410435ac15ea..83c7734e9802 100644
+--- a/include/linux/printk.h
++++ b/include/linux/printk.h
+@@ -481,6 +481,8 @@ extern int kptr_restrict;
+ no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
+ #endif
+
++bool pr_flush(int timeout_ms, bool reset_on_progress);
++
+ /*
+ * ratelimited messages with local ratelimit_state,
+ * no local ratelimit_state used in the !PRINTK case
+diff --git a/kernel/panic.c b/kernel/panic.c
+index 7965f1e31224..5a1a4bf2feb3 100644
+--- a/kernel/panic.c
++++ b/kernel/panic.c
+@@ -244,6 +244,7 @@ void check_panic_on_warn(const char *origin)
+ void panic(const char *fmt, ...)
+ {
+ static char buf[1024];
++ va_list args2;
+ va_list args;
+ long i, i_next = 0, len;
+ int state = 0;
+@@ -260,6 +261,21 @@ void panic(const char *fmt, ...)
+ panic_on_warn = 0;
+ }
+
++ console_verbose();
++ pr_emerg("Kernel panic - not syncing:\n");
++ va_start(args2, fmt);
++ va_copy(args, args2);
++ vprintk(fmt, args2);
++ va_end(args2);
++#ifdef CONFIG_DEBUG_BUGVERBOSE
++ /*
++ * Avoid nested stack-dumping if a panic occurs during oops processing
++ */
++ if (!test_taint(TAINT_DIE) && oops_in_progress <= 1)
++ dump_stack();
++#endif
++ pr_flush(1000, true);
++
+ /*
+ * Disable local interrupts. This will prevent panic_smp_self_stop
+ * from deadlocking the first cpu that invokes the panic, since
+@@ -290,24 +306,13 @@ void panic(const char *fmt, ...)
+ if (old_cpu != PANIC_CPU_INVALID && old_cpu != this_cpu)
+ panic_smp_self_stop();
+
+- console_verbose();
+ bust_spinlocks(1);
+- va_start(args, fmt);
+ len = vscnprintf(buf, sizeof(buf), fmt, args);
+ va_end(args);
+
+ if (len && buf[len - 1] == '\n')
+ buf[len - 1] = '\0';
+
+- pr_emerg("Kernel panic - not syncing: %s\n", buf);
+-#ifdef CONFIG_DEBUG_BUGVERBOSE
+- /*
+- * Avoid nested stack-dumping if a panic occurs during oops processing
+- */
+- if (!test_taint(TAINT_DIE) && oops_in_progress <= 1)
+- dump_stack();
+-#endif
+-
+ /*
+ * If kgdb is enabled, give it a chance to run before we stop all
+ * the other CPUs or else we won't be able to debug processes left
+@@ -629,6 +634,7 @@ static void print_oops_end_marker(void)
+ {
+ init_oops_id();
+ pr_warn("---[ end trace %016llx ]---\n", (unsigned long long)oops_id);
++ pr_flush(1000, true);
+ }
+
+ /*
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 58da007d7c99..14cb111fe9f0 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -3233,6 +3233,12 @@ void kmsg_dump(enum kmsg_dump_reason reason)
+ sync_mode = true;
+ pr_info("enabled sync mode\n");
+ }
++
++ /*
++ * Give the printing threads time to flush, allowing up to
++ * 1s of no printing forward progress before giving up.
++ */
++ pr_flush(1000, true);
+ }
+
+ rcu_read_lock();
+@@ -3512,3 +3518,76 @@ void console_atomic_unlock(unsigned int flags)
+ prb_unlock(&printk_cpulock, flags);
+ }
+ EXPORT_SYMBOL(console_atomic_unlock);
++
++static void pr_msleep(bool may_sleep, int ms)
++{
++ if (may_sleep) {
++ msleep(ms);
++ } else {
++ while (ms--)
++ udelay(1000);
++ }
++}
++
++/**
++ * pr_flush() - Wait for printing threads to catch up.
++ *
++ * @timeout_ms: The maximum time (in ms) to wait.
++ * @reset_on_progress: Reset the timeout if forward progress is seen.
++ *
++ * A value of 0 for @timeout_ms means no waiting will occur. A value of -1
++ * represents infinite waiting.
++ *
++ * If @reset_on_progress is true, the timeout will be reset whenever any
++ * printer has been seen to make some forward progress.
++ *
++ * Context: Any context.
++ * Return: true if all enabled printers are caught up.
++ */
++bool pr_flush(int timeout_ms, bool reset_on_progress)
++{
++ int remaining = timeout_ms;
++ struct console *con;
++ u64 last_diff = 0;
++ bool may_sleep;
++ u64 printk_seq;
++ u64 diff;
++ u64 seq;
++
++ may_sleep = (preemptible() && !in_softirq());
++
++ seq = prb_next_seq(prb);
++
++ for (;;) {
++ diff = 0;
++
++ for_each_console(con) {
++ if (!(con->flags & CON_ENABLED))
++ continue;
++ printk_seq = atomic64_read(&con->printk_seq);
++ if (printk_seq < seq)
++ diff += seq - printk_seq;
++ }
++
++ if (diff != last_diff && reset_on_progress)
++ remaining = timeout_ms;
++
++ if (!diff || remaining == 0)
++ break;
++
++ if (remaining < 0) {
++ pr_msleep(may_sleep, 100);
++ } else if (remaining < 100) {
++ pr_msleep(may_sleep, remaining);
++ remaining = 0;
++ } else {
++ pr_msleep(may_sleep, 100);
++ remaining -= 100;
++ }
++
++ last_diff = diff;
++ }
++
++ return (diff == 0);
++}
++EXPORT_SYMBOL(pr_flush);
+diff --git a/lib/bug.c b/lib/bug.c
+index 4ab398a2de93..9c681f29e61e 100644
+--- a/lib/bug.c
++++ b/lib/bug.c
+@@ -202,6 +202,7 @@ enum bug_trap_type report_bug(unsigned long bugaddr, struct pt_regs *regs)
+ else
+ pr_crit("Kernel BUG at %pB [verbose debug info unavailable]\n",
+ (void *)bugaddr);
++ pr_flush(1000, true);
+
+ return BUG_TRAP_TYPE_BUG;
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0109-cgroup-use-irqsave-in-cgroup_rstat_flush_locked.patch b/debian/patches-rt/0109-cgroup-use-irqsave-in-cgroup_rstat_flush_locked.patch
new file mode 100644
index 000000000..3fad12a67
--- /dev/null
+++ b/debian/patches-rt/0109-cgroup-use-irqsave-in-cgroup_rstat_flush_locked.patch
@@ -0,0 +1,50 @@
+From 5c99ffb2025e5ae87404c3b9641b9dafaec9336e Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 3 Jul 2018 18:19:48 +0200
+Subject: [PATCH 109/323] cgroup: use irqsave in cgroup_rstat_flush_locked()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+All callers of cgroup_rstat_flush_locked() acquire cgroup_rstat_lock
+either with spin_lock_irq() or spin_lock_irqsave().
+cgroup_rstat_flush_locked() itself acquires cgroup_rstat_cpu_lock which
+is a raw_spin_lock. This lock is also acquired in cgroup_rstat_updated()
+in IRQ context and therefore requires _irqsave() locking suffix in
+cgroup_rstat_flush_locked().
+Since there is no difference between spin_lock_t and raw_spin_lock_t
+on !RT lockdep does not complain here. On RT lockdep complains because
+the interrupts were not disabled here and a deadlock is possible.
+
+Acquire the raw_spin_lock_t with disabled interrupts.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/cgroup/rstat.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/cgroup/rstat.c b/kernel/cgroup/rstat.c
+index 89ca9b61aa0d..753dc346520a 100644
+--- a/kernel/cgroup/rstat.c
++++ b/kernel/cgroup/rstat.c
+@@ -149,8 +149,9 @@ static void cgroup_rstat_flush_locked(struct cgroup *cgrp, bool may_sleep)
+ raw_spinlock_t *cpu_lock = per_cpu_ptr(&cgroup_rstat_cpu_lock,
+ cpu);
+ struct cgroup *pos = NULL;
++ unsigned long flags;
+
+- raw_spin_lock(cpu_lock);
++ raw_spin_lock_irqsave(cpu_lock, flags);
+ while ((pos = cgroup_rstat_cpu_pop_updated(pos, cgrp, cpu))) {
+ struct cgroup_subsys_state *css;
+
+@@ -162,7 +163,7 @@ static void cgroup_rstat_flush_locked(struct cgroup *cgrp, bool may_sleep)
+ css->ss->css_rstat_flush(css, cpu);
+ rcu_read_unlock();
+ }
+- raw_spin_unlock(cpu_lock);
++ raw_spin_unlock_irqrestore(cpu_lock, flags);
+
+ /* if @may_sleep, play nice and yield if necessary */
+ if (may_sleep && (need_resched() ||
+--
+2.43.0
+
diff --git a/debian/patches-rt/0110-mm-workingset-replace-IRQ-off-check-with-a-lockdep-a.patch b/debian/patches-rt/0110-mm-workingset-replace-IRQ-off-check-with-a-lockdep-a.patch
new file mode 100644
index 000000000..e9c3583b7
--- /dev/null
+++ b/debian/patches-rt/0110-mm-workingset-replace-IRQ-off-check-with-a-lockdep-a.patch
@@ -0,0 +1,49 @@
+From e215644e77fc149727b2ed1c3412c2e7668ff5aa Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Mon, 11 Feb 2019 10:40:46 +0100
+Subject: [PATCH 110/323] mm: workingset: replace IRQ-off check with a lockdep
+ assert.
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Commit
+
+ 68d48e6a2df57 ("mm: workingset: add vmstat counter for shadow nodes")
+
+introduced an IRQ-off check to ensure that a lock is held which also
+disabled interrupts. This does not work the same way on -RT because none
+of the locks, that are held, disable interrupts.
+Replace this check with a lockdep assert which ensures that the lock is
+held.
+
+Cc: Peter Zijlstra <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/workingset.c | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/mm/workingset.c b/mm/workingset.c
+index 975a4d2dd02e..c3d098c01052 100644
+--- a/mm/workingset.c
++++ b/mm/workingset.c
+@@ -432,6 +432,8 @@ static struct list_lru shadow_nodes;
+
+ void workingset_update_node(struct xa_node *node)
+ {
++ struct address_space *mapping;
++
+ /*
+ * Track non-empty nodes that contain only shadow entries;
+ * unlink those that contain pages or are being freed.
+@@ -440,7 +442,8 @@ void workingset_update_node(struct xa_node *node)
+ * already where they should be. The list_empty() test is safe
+ * as node->private_list is protected by the i_pages lock.
+ */
+- VM_WARN_ON_ONCE(!irqs_disabled()); /* For __inc_lruvec_page_state */
++ mapping = container_of(node->array, struct address_space, i_pages);
++ lockdep_assert_held(&mapping->i_pages.xa_lock);
+
+ if (node->count && node->count == node->nr_values) {
+ if (list_empty(&node->private_list)) {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0111-tpm-remove-tpm_dev_wq_lock.patch b/debian/patches-rt/0111-tpm-remove-tpm_dev_wq_lock.patch
new file mode 100644
index 000000000..f69a126e3
--- /dev/null
+++ b/debian/patches-rt/0111-tpm-remove-tpm_dev_wq_lock.patch
@@ -0,0 +1,35 @@
+From 74373c599ec7fa9991304d680c34ec5b591d4cad Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Mon, 11 Feb 2019 11:33:11 +0100
+Subject: [PATCH 111/323] tpm: remove tpm_dev_wq_lock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Added in commit
+
+ 9e1b74a63f776 ("tpm: add support for nonblocking operation")
+
+but never actually used it.
+
+Cc: Philip Tricca <philip.b.tricca@intel.com>
+Cc: Tadeusz Struk <tadeusz.struk@intel.com>
+Cc: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/char/tpm/tpm-dev-common.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/drivers/char/tpm/tpm-dev-common.c b/drivers/char/tpm/tpm-dev-common.c
+index b99e1941c52c..dc4c0a0a5129 100644
+--- a/drivers/char/tpm/tpm-dev-common.c
++++ b/drivers/char/tpm/tpm-dev-common.c
+@@ -20,7 +20,6 @@
+ #include "tpm-dev.h"
+
+ static struct workqueue_struct *tpm_dev_wq;
+-static DEFINE_MUTEX(tpm_dev_wq_lock);
+
+ static ssize_t tpm_dev_transmit(struct tpm_chip *chip, struct tpm_space *space,
+ u8 *buf, size_t bufsiz)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0112-shmem-Use-raw_spinlock_t-for-stat_lock.patch b/debian/patches-rt/0112-shmem-Use-raw_spinlock_t-for-stat_lock.patch
new file mode 100644
index 000000000..41738b8a2
--- /dev/null
+++ b/debian/patches-rt/0112-shmem-Use-raw_spinlock_t-for-stat_lock.patch
@@ -0,0 +1,147 @@
+From 35616363024adeffc42af4d2ca91e4550d6db59c Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 14 Aug 2020 18:53:34 +0200
+Subject: [PATCH 112/323] shmem: Use raw_spinlock_t for ->stat_lock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Each CPU has SHMEM_INO_BATCH inodes available in `->ino_batch' which is
+per-CPU. Access here is serialized by disabling preemption. If the pool is
+empty, it gets reloaded from `->next_ino'. Access here is serialized by
+->stat_lock which is a spinlock_t and can not be acquired with disabled
+preemption.
+One way around it would make per-CPU ino_batch struct containing the inode
+number a local_lock_t.
+Another sollution is to promote ->stat_lock to a raw_spinlock_t. The critical
+sections are short. The mpol_put() should be moved outside of the critical
+section to avoid invoking the destrutor with disabled preemption.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/shmem_fs.h | 2 +-
+ mm/shmem.c | 31 +++++++++++++++++--------------
+ 2 files changed, 18 insertions(+), 15 deletions(-)
+
+diff --git a/include/linux/shmem_fs.h b/include/linux/shmem_fs.h
+index a5a5d1d4d7b1..0470d1582b09 100644
+--- a/include/linux/shmem_fs.h
++++ b/include/linux/shmem_fs.h
+@@ -31,7 +31,7 @@ struct shmem_sb_info {
+ struct percpu_counter used_blocks; /* How many are allocated */
+ unsigned long max_inodes; /* How many inodes are allowed */
+ unsigned long free_inodes; /* How many are left for allocation */
+- spinlock_t stat_lock; /* Serialize shmem_sb_info changes */
++ raw_spinlock_t stat_lock; /* Serialize shmem_sb_info changes */
+ umode_t mode; /* Mount mode for root directory */
+ unsigned char huge; /* Whether to try for hugepages */
+ kuid_t uid; /* Mount uid for root directory */
+diff --git a/mm/shmem.c b/mm/shmem.c
+index e173d83b4448..94c0964f0d1f 100644
+--- a/mm/shmem.c
++++ b/mm/shmem.c
+@@ -278,10 +278,10 @@ static int shmem_reserve_inode(struct super_block *sb, ino_t *inop)
+ ino_t ino;
+
+ if (!(sb->s_flags & SB_KERNMOUNT)) {
+- spin_lock(&sbinfo->stat_lock);
++ raw_spin_lock(&sbinfo->stat_lock);
+ if (sbinfo->max_inodes) {
+ if (!sbinfo->free_inodes) {
+- spin_unlock(&sbinfo->stat_lock);
++ raw_spin_unlock(&sbinfo->stat_lock);
+ return -ENOSPC;
+ }
+ sbinfo->free_inodes--;
+@@ -304,7 +304,7 @@ static int shmem_reserve_inode(struct super_block *sb, ino_t *inop)
+ }
+ *inop = ino;
+ }
+- spin_unlock(&sbinfo->stat_lock);
++ raw_spin_unlock(&sbinfo->stat_lock);
+ } else if (inop) {
+ /*
+ * __shmem_file_setup, one of our callers, is lock-free: it
+@@ -319,13 +319,14 @@ static int shmem_reserve_inode(struct super_block *sb, ino_t *inop)
+ * to worry about things like glibc compatibility.
+ */
+ ino_t *next_ino;
++
+ next_ino = per_cpu_ptr(sbinfo->ino_batch, get_cpu());
+ ino = *next_ino;
+ if (unlikely(ino % SHMEM_INO_BATCH == 0)) {
+- spin_lock(&sbinfo->stat_lock);
++ raw_spin_lock(&sbinfo->stat_lock);
+ ino = sbinfo->next_ino;
+ sbinfo->next_ino += SHMEM_INO_BATCH;
+- spin_unlock(&sbinfo->stat_lock);
++ raw_spin_unlock(&sbinfo->stat_lock);
+ if (unlikely(is_zero_ino(ino)))
+ ino++;
+ }
+@@ -341,9 +342,9 @@ static void shmem_free_inode(struct super_block *sb)
+ {
+ struct shmem_sb_info *sbinfo = SHMEM_SB(sb);
+ if (sbinfo->max_inodes) {
+- spin_lock(&sbinfo->stat_lock);
++ raw_spin_lock(&sbinfo->stat_lock);
+ sbinfo->free_inodes++;
+- spin_unlock(&sbinfo->stat_lock);
++ raw_spin_unlock(&sbinfo->stat_lock);
+ }
+ }
+
+@@ -1484,10 +1485,10 @@ static struct mempolicy *shmem_get_sbmpol(struct shmem_sb_info *sbinfo)
+ {
+ struct mempolicy *mpol = NULL;
+ if (sbinfo->mpol) {
+- spin_lock(&sbinfo->stat_lock); /* prevent replace/use races */
++ raw_spin_lock(&sbinfo->stat_lock); /* prevent replace/use races */
+ mpol = sbinfo->mpol;
+ mpol_get(mpol);
+- spin_unlock(&sbinfo->stat_lock);
++ raw_spin_unlock(&sbinfo->stat_lock);
+ }
+ return mpol;
+ }
+@@ -3613,9 +3614,10 @@ static int shmem_reconfigure(struct fs_context *fc)
+ struct shmem_options *ctx = fc->fs_private;
+ struct shmem_sb_info *sbinfo = SHMEM_SB(fc->root->d_sb);
+ unsigned long inodes;
++ struct mempolicy *mpol = NULL;
+ const char *err;
+
+- spin_lock(&sbinfo->stat_lock);
++ raw_spin_lock(&sbinfo->stat_lock);
+ inodes = sbinfo->max_inodes - sbinfo->free_inodes;
+ if ((ctx->seen & SHMEM_SEEN_BLOCKS) && ctx->blocks) {
+ if (!sbinfo->max_blocks) {
+@@ -3660,14 +3662,15 @@ static int shmem_reconfigure(struct fs_context *fc)
+ * Preserve previous mempolicy unless mpol remount option was specified.
+ */
+ if (ctx->mpol) {
+- mpol_put(sbinfo->mpol);
++ mpol = sbinfo->mpol;
+ sbinfo->mpol = ctx->mpol; /* transfers initial ref */
+ ctx->mpol = NULL;
+ }
+- spin_unlock(&sbinfo->stat_lock);
++ raw_spin_unlock(&sbinfo->stat_lock);
++ mpol_put(mpol);
+ return 0;
+ out:
+- spin_unlock(&sbinfo->stat_lock);
++ raw_spin_unlock(&sbinfo->stat_lock);
+ return invalfc(fc, "%s", err);
+ }
+
+@@ -3784,7 +3787,7 @@ static int shmem_fill_super(struct super_block *sb, struct fs_context *fc)
+ sbinfo->mpol = ctx->mpol;
+ ctx->mpol = NULL;
+
+- spin_lock_init(&sbinfo->stat_lock);
++ raw_spin_lock_init(&sbinfo->stat_lock);
+ if (percpu_counter_init(&sbinfo->used_blocks, 0, GFP_KERNEL))
+ goto failed;
+ spin_lock_init(&sbinfo->shrinklist_lock);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0113-net-Move-lockdep-where-it-belongs.patch b/debian/patches-rt/0113-net-Move-lockdep-where-it-belongs.patch
new file mode 100644
index 000000000..b7b6765b1
--- /dev/null
+++ b/debian/patches-rt/0113-net-Move-lockdep-where-it-belongs.patch
@@ -0,0 +1,46 @@
+From b3ad938c1be05a261ce70af8888271d0b85cd955 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 8 Sep 2020 07:32:20 +0200
+Subject: [PATCH 113/323] net: Move lockdep where it belongs
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ net/core/sock.c | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/net/core/sock.c b/net/core/sock.c
+index a069b5476df4..8839cfea108a 100644
+--- a/net/core/sock.c
++++ b/net/core/sock.c
+@@ -3082,12 +3082,11 @@ void lock_sock_nested(struct sock *sk, int subclass)
+ if (sk->sk_lock.owned)
+ __lock_sock(sk);
+ sk->sk_lock.owned = 1;
+- spin_unlock(&sk->sk_lock.slock);
++ spin_unlock_bh(&sk->sk_lock.slock);
+ /*
+ * The sk_lock has mutex_lock() semantics here:
+ */
+ mutex_acquire(&sk->sk_lock.dep_map, subclass, 0, _RET_IP_);
+- local_bh_enable();
+ }
+ EXPORT_SYMBOL(lock_sock_nested);
+
+@@ -3136,12 +3135,11 @@ bool lock_sock_fast(struct sock *sk)
+
+ __lock_sock(sk);
+ sk->sk_lock.owned = 1;
+- spin_unlock(&sk->sk_lock.slock);
++ spin_unlock_bh(&sk->sk_lock.slock);
+ /*
+ * The sk_lock has mutex_lock() semantics here:
+ */
+ mutex_acquire(&sk->sk_lock.dep_map, 0, 0, _RET_IP_);
+- local_bh_enable();
+ return true;
+ }
+ EXPORT_SYMBOL(lock_sock_fast);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0114-parisc-Remove-bogus-__IRQ_STAT-macro.patch b/debian/patches-rt/0114-parisc-Remove-bogus-__IRQ_STAT-macro.patch
new file mode 100644
index 000000000..29bae354a
--- /dev/null
+++ b/debian/patches-rt/0114-parisc-Remove-bogus-__IRQ_STAT-macro.patch
@@ -0,0 +1,31 @@
+From a73391bb3950b16f44dda9989980e77e07febe01 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:08 +0100
+Subject: [PATCH 114/323] parisc: Remove bogus __IRQ_STAT macro
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+This is a leftover from a historical array based implementation and unused.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Link: https://lore.kernel.org/r/20201113141732.680780121@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/parisc/include/asm/hardirq.h | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/arch/parisc/include/asm/hardirq.h b/arch/parisc/include/asm/hardirq.h
+index 7f7039516e53..fad29aa6f45f 100644
+--- a/arch/parisc/include/asm/hardirq.h
++++ b/arch/parisc/include/asm/hardirq.h
+@@ -32,7 +32,6 @@ typedef struct {
+ DECLARE_PER_CPU_SHARED_ALIGNED(irq_cpustat_t, irq_stat);
+
+ #define __ARCH_IRQ_STAT
+-#define __IRQ_STAT(cpu, member) (irq_stat[cpu].member)
+ #define inc_irq_stat(member) this_cpu_inc(irq_stat.member)
+ #define __inc_irq_stat(member) __this_cpu_inc(irq_stat.member)
+ #define ack_bad_irq(irq) WARN(1, "unexpected IRQ trap at vector %02x\n", irq)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0115-sh-Get-rid-of-nmi_count.patch b/debian/patches-rt/0115-sh-Get-rid-of-nmi_count.patch
new file mode 100644
index 000000000..59cbda0e0
--- /dev/null
+++ b/debian/patches-rt/0115-sh-Get-rid-of-nmi_count.patch
@@ -0,0 +1,47 @@
+From 4d4b0ae9c82f34e6cc445f9b04248ae49346a73e Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:09 +0100
+Subject: [PATCH 115/323] sh: Get rid of nmi_count()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+nmi_count() is a historical leftover and SH is the only user. Replace it
+with regular per cpu accessors.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Link: https://lore.kernel.org/r/20201113141732.844232404@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/sh/kernel/irq.c | 2 +-
+ arch/sh/kernel/traps.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c
+index 5717c7cbdd97..5addcb2c2da0 100644
+--- a/arch/sh/kernel/irq.c
++++ b/arch/sh/kernel/irq.c
+@@ -44,7 +44,7 @@ int arch_show_interrupts(struct seq_file *p, int prec)
+
+ seq_printf(p, "%*s: ", prec, "NMI");
+ for_each_online_cpu(j)
+- seq_printf(p, "%10u ", nmi_count(j));
++ seq_printf(p, "%10u ", per_cpu(irq_stat.__nmi_count, j);
+ seq_printf(p, " Non-maskable interrupts\n");
+
+ seq_printf(p, "%*s: %10u\n", prec, "ERR", atomic_read(&irq_err_count));
+diff --git a/arch/sh/kernel/traps.c b/arch/sh/kernel/traps.c
+index 4efffc18c851..be15e41489b2 100644
+--- a/arch/sh/kernel/traps.c
++++ b/arch/sh/kernel/traps.c
+@@ -186,7 +186,7 @@ BUILD_TRAP_HANDLER(nmi)
+ arch_ftrace_nmi_enter();
+
+ nmi_enter();
+- nmi_count(cpu)++;
++ this_cpu_inc(irq_stat.__nmi_count);
+
+ switch (notify_die(DIE_NMI, "NMI", regs, 0, vec & 0xff, SIGINT)) {
+ case NOTIFY_OK:
+--
+2.43.0
+
diff --git a/debian/patches-rt/0116-irqstat-Get-rid-of-nmi_count-and-__IRQ_STAT.patch b/debian/patches-rt/0116-irqstat-Get-rid-of-nmi_count-and-__IRQ_STAT.patch
new file mode 100644
index 000000000..870e1af5f
--- /dev/null
+++ b/debian/patches-rt/0116-irqstat-Get-rid-of-nmi_count-and-__IRQ_STAT.patch
@@ -0,0 +1,34 @@
+From c190c29cf4e02d1cfa67a9744ef94c2037ed071e Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:10 +0100
+Subject: [PATCH 116/323] irqstat: Get rid of nmi_count() and __IRQ_STAT()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Nothing uses this anymore.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Link: https://lore.kernel.org/r/20201113141733.005212732@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/irq_cpustat.h | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/include/linux/irq_cpustat.h b/include/linux/irq_cpustat.h
+index 6e8895cd4d92..78fb2de3ea4d 100644
+--- a/include/linux/irq_cpustat.h
++++ b/include/linux/irq_cpustat.h
+@@ -19,10 +19,6 @@
+
+ #ifndef __ARCH_IRQ_STAT
+ DECLARE_PER_CPU_ALIGNED(irq_cpustat_t, irq_stat); /* defined in asm/hardirq.h */
+-#define __IRQ_STAT(cpu, member) (per_cpu(irq_stat.member, cpu))
+ #endif
+
+-/* arch dependent irq_stat fields */
+-#define nmi_count(cpu) __IRQ_STAT((cpu), __nmi_count) /* i386 */
+-
+ #endif /* __irq_cpustat_h */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0117-um-irqstat-Get-rid-of-the-duplicated-declarations.patch b/debian/patches-rt/0117-um-irqstat-Get-rid-of-the-duplicated-declarations.patch
new file mode 100644
index 000000000..ee24a1117
--- /dev/null
+++ b/debian/patches-rt/0117-um-irqstat-Get-rid-of-the-duplicated-declarations.patch
@@ -0,0 +1,48 @@
+From 44cfe18ac1cb81f3617a962640846d232bed6d65 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:11 +0100
+Subject: [PATCH 117/323] um/irqstat: Get rid of the duplicated declarations
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+irq_cpustat_t and ack_bad_irq() are exactly the same as the asm-generic
+ones.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Link: https://lore.kernel.org/r/20201113141733.156361337@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/um/include/asm/hardirq.h | 17 +----------------
+ 1 file changed, 1 insertion(+), 16 deletions(-)
+
+diff --git a/arch/um/include/asm/hardirq.h b/arch/um/include/asm/hardirq.h
+index b426796d26fd..52e2c36267a9 100644
+--- a/arch/um/include/asm/hardirq.h
++++ b/arch/um/include/asm/hardirq.h
+@@ -2,22 +2,7 @@
+ #ifndef __ASM_UM_HARDIRQ_H
+ #define __ASM_UM_HARDIRQ_H
+
+-#include <linux/cache.h>
+-#include <linux/threads.h>
+-
+-typedef struct {
+- unsigned int __softirq_pending;
+-} ____cacheline_aligned irq_cpustat_t;
+-
+-#include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */
+-#include <linux/irq.h>
+-
+-#ifndef ack_bad_irq
+-static inline void ack_bad_irq(unsigned int irq)
+-{
+- printk(KERN_CRIT "unexpected IRQ trap at vector %02x\n", irq);
+-}
+-#endif
++#include <asm-generic/hardirq.h>
+
+ #define __ARCH_IRQ_EXIT_IRQS_DISABLED 1
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0118-ARM-irqstat-Get-rid-of-duplicated-declaration.patch b/debian/patches-rt/0118-ARM-irqstat-Get-rid-of-duplicated-declaration.patch
new file mode 100644
index 000000000..a7b949523
--- /dev/null
+++ b/debian/patches-rt/0118-ARM-irqstat-Get-rid-of-duplicated-declaration.patch
@@ -0,0 +1,59 @@
+From 903c27e244a901b4c66dc1d423a6d9b3214fd868 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:12 +0100
+Subject: [PATCH 118/323] ARM: irqstat: Get rid of duplicated declaration
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+irq_cpustat_t is exactly the same as the asm-generic one. Define
+ack_bad_irq so the generic header does not emit the generic version of it.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
+Link: https://lore.kernel.org/r/20201113141733.276505871@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm/include/asm/hardirq.h | 11 +++--------
+ arch/arm/include/asm/irq.h | 2 ++
+ 2 files changed, 5 insertions(+), 8 deletions(-)
+
+diff --git a/arch/arm/include/asm/hardirq.h b/arch/arm/include/asm/hardirq.h
+index b95848ed2bc7..706efafbf972 100644
+--- a/arch/arm/include/asm/hardirq.h
++++ b/arch/arm/include/asm/hardirq.h
+@@ -2,16 +2,11 @@
+ #ifndef __ASM_HARDIRQ_H
+ #define __ASM_HARDIRQ_H
+
+-#include <linux/cache.h>
+-#include <linux/threads.h>
+ #include <asm/irq.h>
+
+-typedef struct {
+- unsigned int __softirq_pending;
+-} ____cacheline_aligned irq_cpustat_t;
+-
+-#include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */
+-
+ #define __ARCH_IRQ_EXIT_IRQS_DISABLED 1
++#define ack_bad_irq ack_bad_irq
++
++#include <asm-generic/hardirq.h>
+
+ #endif /* __ASM_HARDIRQ_H */
+diff --git a/arch/arm/include/asm/irq.h b/arch/arm/include/asm/irq.h
+index 46d41140df27..1cbcc462b07e 100644
+--- a/arch/arm/include/asm/irq.h
++++ b/arch/arm/include/asm/irq.h
+@@ -31,6 +31,8 @@ void handle_IRQ(unsigned int, struct pt_regs *);
+ void init_IRQ(void);
+
+ #ifdef CONFIG_SMP
++#include <linux/cpumask.h>
++
+ extern void arch_trigger_cpumask_backtrace(const cpumask_t *mask,
+ bool exclude_self);
+ #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace
+--
+2.43.0
+
diff --git a/debian/patches-rt/0119-arm64-irqstat-Get-rid-of-duplicated-declaration.patch b/debian/patches-rt/0119-arm64-irqstat-Get-rid-of-duplicated-declaration.patch
new file mode 100644
index 000000000..015978430
--- /dev/null
+++ b/debian/patches-rt/0119-arm64-irqstat-Get-rid-of-duplicated-declaration.patch
@@ -0,0 +1,40 @@
+From 9d8ad1996dd7a9a4250e55ee988eac5f7e52bd8e Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:13 +0100
+Subject: [PATCH 119/323] arm64: irqstat: Get rid of duplicated declaration
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+irq_cpustat_t is exactly the same as the asm-generic one. Define
+ack_bad_irq so the generic header does not emit the generic version of it.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Acked-by: Will Deacon <will@kernel.org>
+Acked-by: Marc Zyngier <maz@kernel.org>
+Link: https://lore.kernel.org/r/20201113141733.392015387@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm64/include/asm/hardirq.h | 7 ++-----
+ 1 file changed, 2 insertions(+), 5 deletions(-)
+
+diff --git a/arch/arm64/include/asm/hardirq.h b/arch/arm64/include/asm/hardirq.h
+index 5ffa4bacdad3..cbfa7b6f2e09 100644
+--- a/arch/arm64/include/asm/hardirq.h
++++ b/arch/arm64/include/asm/hardirq.h
+@@ -13,11 +13,8 @@
+ #include <asm/kvm_arm.h>
+ #include <asm/sysreg.h>
+
+-typedef struct {
+- unsigned int __softirq_pending;
+-} ____cacheline_aligned irq_cpustat_t;
+-
+-#include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */
++#define ack_bad_irq ack_bad_irq
++#include <asm-generic/hardirq.h>
+
+ #define __ARCH_IRQ_EXIT_IRQS_DISABLED 1
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0120-asm-generic-irqstat-Add-optional-__nmi_count-member.patch b/debian/patches-rt/0120-asm-generic-irqstat-Add-optional-__nmi_count-member.patch
new file mode 100644
index 000000000..6eddb073f
--- /dev/null
+++ b/debian/patches-rt/0120-asm-generic-irqstat-Add-optional-__nmi_count-member.patch
@@ -0,0 +1,34 @@
+From 9daa9b58eb0e0b5b143d719b4c465e8ee233def0 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:14 +0100
+Subject: [PATCH 120/323] asm-generic/irqstat: Add optional __nmi_count member
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Add an optional __nmi_count member to irq_cpustat_t so more architectures
+can use the generic version.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Link: https://lore.kernel.org/r/20201113141733.501611990@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/asm-generic/hardirq.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/include/asm-generic/hardirq.h b/include/asm-generic/hardirq.h
+index d14214dfc10b..f5dd99781e3c 100644
+--- a/include/asm-generic/hardirq.h
++++ b/include/asm-generic/hardirq.h
+@@ -7,6 +7,9 @@
+
+ typedef struct {
+ unsigned int __softirq_pending;
++#ifdef ARCH_WANTS_NMI_IRQSTAT
++ unsigned int __nmi_count;
++#endif
+ } ____cacheline_aligned irq_cpustat_t;
+
+ #include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0121-sh-irqstat-Use-the-generic-irq_cpustat_t.patch b/debian/patches-rt/0121-sh-irqstat-Use-the-generic-irq_cpustat_t.patch
new file mode 100644
index 000000000..a141aaddf
--- /dev/null
+++ b/debian/patches-rt/0121-sh-irqstat-Use-the-generic-irq_cpustat_t.patch
@@ -0,0 +1,45 @@
+From 36f4507e26065641dd4b5e9fab744596a072b3a6 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:15 +0100
+Subject: [PATCH 121/323] sh: irqstat: Use the generic irq_cpustat_t
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+SH can now use the generic irq_cpustat_t. Define ack_bad_irq so the generic
+header does not emit the generic version of it.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Link: https://lore.kernel.org/r/20201113141733.625146223@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/sh/include/asm/hardirq.h | 14 ++++----------
+ 1 file changed, 4 insertions(+), 10 deletions(-)
+
+diff --git a/arch/sh/include/asm/hardirq.h b/arch/sh/include/asm/hardirq.h
+index edaea3559a23..9fe4495a8e90 100644
+--- a/arch/sh/include/asm/hardirq.h
++++ b/arch/sh/include/asm/hardirq.h
+@@ -2,16 +2,10 @@
+ #ifndef __ASM_SH_HARDIRQ_H
+ #define __ASM_SH_HARDIRQ_H
+
+-#include <linux/threads.h>
+-#include <linux/irq.h>
+-
+-typedef struct {
+- unsigned int __softirq_pending;
+- unsigned int __nmi_count; /* arch dependent */
+-} ____cacheline_aligned irq_cpustat_t;
+-
+-#include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */
+-
+ extern void ack_bad_irq(unsigned int irq);
++#define ack_bad_irq ack_bad_irq
++#define ARCH_WANTS_NMI_IRQSTAT
++
++#include <asm-generic/hardirq.h>
+
+ #endif /* __ASM_SH_HARDIRQ_H */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0122-irqstat-Move-declaration-into-asm-generic-hardirq.h.patch b/debian/patches-rt/0122-irqstat-Move-declaration-into-asm-generic-hardirq.h.patch
new file mode 100644
index 000000000..7918409ff
--- /dev/null
+++ b/debian/patches-rt/0122-irqstat-Move-declaration-into-asm-generic-hardirq.h.patch
@@ -0,0 +1,66 @@
+From 4d8e6962b3b3f9acc509359631d4396d9b729064 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:16 +0100
+Subject: [PATCH 122/323] irqstat: Move declaration into asm-generic/hardirq.h
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Move the declaration of the irq_cpustat per cpu variable to
+asm-generic/hardirq.h and remove the now empty linux/irq_cpustat.h header.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Link: https://lore.kernel.org/r/20201113141733.737377332@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/asm-generic/hardirq.h | 3 ++-
+ include/linux/irq_cpustat.h | 24 ------------------------
+ 2 files changed, 2 insertions(+), 25 deletions(-)
+ delete mode 100644 include/linux/irq_cpustat.h
+
+diff --git a/include/asm-generic/hardirq.h b/include/asm-generic/hardirq.h
+index f5dd99781e3c..7317e8258b48 100644
+--- a/include/asm-generic/hardirq.h
++++ b/include/asm-generic/hardirq.h
+@@ -12,7 +12,8 @@ typedef struct {
+ #endif
+ } ____cacheline_aligned irq_cpustat_t;
+
+-#include <linux/irq_cpustat.h> /* Standard mappings for irq_cpustat_t above */
++DECLARE_PER_CPU_ALIGNED(irq_cpustat_t, irq_stat);
++
+ #include <linux/irq.h>
+
+ #ifndef ack_bad_irq
+diff --git a/include/linux/irq_cpustat.h b/include/linux/irq_cpustat.h
+deleted file mode 100644
+index 78fb2de3ea4d..000000000000
+--- a/include/linux/irq_cpustat.h
++++ /dev/null
+@@ -1,24 +0,0 @@
+-/* SPDX-License-Identifier: GPL-2.0 */
+-#ifndef __irq_cpustat_h
+-#define __irq_cpustat_h
+-
+-/*
+- * Contains default mappings for irq_cpustat_t, used by almost every
+- * architecture. Some arch (like s390) have per cpu hardware pages and
+- * they define their own mappings for irq_stat.
+- *
+- * Keith Owens <kaos@ocs.com.au> July 2000.
+- */
+-
+-
+-/*
+- * Simple wrappers reducing source bloat. Define all irq_stat fields
+- * here, even ones that are arch dependent. That way we get common
+- * definitions instead of differing sets for each arch.
+- */
+-
+-#ifndef __ARCH_IRQ_STAT
+-DECLARE_PER_CPU_ALIGNED(irq_cpustat_t, irq_stat); /* defined in asm/hardirq.h */
+-#endif
+-
+-#endif /* __irq_cpustat_h */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0123-preempt-Cleanup-the-macro-maze-a-bit.patch b/debian/patches-rt/0123-preempt-Cleanup-the-macro-maze-a-bit.patch
new file mode 100644
index 000000000..9e6469ec2
--- /dev/null
+++ b/debian/patches-rt/0123-preempt-Cleanup-the-macro-maze-a-bit.patch
@@ -0,0 +1,78 @@
+From b743317882baa4d44bdc55dea99865bf53623193 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:17 +0100
+Subject: [PATCH 123/323] preempt: Cleanup the macro maze a bit
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Make the macro maze consistent and prepare it for adding the RT variant for
+BH accounting.
+
+ - Use nmi_count() for the NMI portion of preempt count
+ - Introduce in_hardirq() to make the naming consistent and non-ambiguos
+ - Use the macros to create combined checks (e.g. in_task()) so the
+ softirq representation for RT just falls into place.
+ - Update comments and move the deprecated macros aside
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Link: https://lore.kernel.org/r/20201113141733.864469886@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/preempt.h | 30 ++++++++++++++++--------------
+ 1 file changed, 16 insertions(+), 14 deletions(-)
+
+diff --git a/include/linux/preempt.h b/include/linux/preempt.h
+index 6df63cbe8bb0..69cc8b64aa3a 100644
+--- a/include/linux/preempt.h
++++ b/include/linux/preempt.h
+@@ -77,31 +77,33 @@
+ /* preempt_count() and related functions, depends on PREEMPT_NEED_RESCHED */
+ #include <asm/preempt.h>
+
++#define nmi_count() (preempt_count() & NMI_MASK)
+ #define hardirq_count() (preempt_count() & HARDIRQ_MASK)
+ #define softirq_count() (preempt_count() & SOFTIRQ_MASK)
+-#define irq_count() (preempt_count() & (HARDIRQ_MASK | SOFTIRQ_MASK \
+- | NMI_MASK))
++#define irq_count() (nmi_count() | hardirq_count() | softirq_count())
+
+ /*
+- * Are we doing bottom half or hardware interrupt processing?
++ * Macros to retrieve the current execution context:
+ *
+- * in_irq() - We're in (hard) IRQ context
++ * in_nmi() - We're in NMI context
++ * in_hardirq() - We're in hard IRQ context
++ * in_serving_softirq() - We're in softirq context
++ * in_task() - We're in task context
++ */
++#define in_nmi() (nmi_count())
++#define in_hardirq() (hardirq_count())
++#define in_serving_softirq() (softirq_count() & SOFTIRQ_OFFSET)
++#define in_task() (!(in_nmi() | in_hardirq() | in_serving_softirq()))
++
++/*
++ * The following macros are deprecated and should not be used in new code:
++ * in_irq() - Obsolete version of in_hardirq()
+ * in_softirq() - We have BH disabled, or are processing softirqs
+ * in_interrupt() - We're in NMI,IRQ,SoftIRQ context or have BH disabled
+- * in_serving_softirq() - We're in softirq context
+- * in_nmi() - We're in NMI context
+- * in_task() - We're in task context
+- *
+- * Note: due to the BH disabled confusion: in_softirq(),in_interrupt() really
+- * should not be used in new code.
+ */
+ #define in_irq() (hardirq_count())
+ #define in_softirq() (softirq_count())
+ #define in_interrupt() (irq_count())
+-#define in_serving_softirq() (softirq_count() & SOFTIRQ_OFFSET)
+-#define in_nmi() (preempt_count() & NMI_MASK)
+-#define in_task() (!(preempt_count() & \
+- (NMI_MASK | HARDIRQ_MASK | SOFTIRQ_OFFSET)))
+
+ /*
+ * The preempt_count offset after preempt_disable();
+--
+2.43.0
+
diff --git a/debian/patches-rt/0124-softirq-Move-related-code-into-one-section.patch b/debian/patches-rt/0124-softirq-Move-related-code-into-one-section.patch
new file mode 100644
index 000000000..fb937d24b
--- /dev/null
+++ b/debian/patches-rt/0124-softirq-Move-related-code-into-one-section.patch
@@ -0,0 +1,169 @@
+From e40ca378bfbd05514961947d57b163831bdc3bbe Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 13 Nov 2020 15:02:18 +0100
+Subject: [PATCH 124/323] softirq: Move related code into one section
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+To prepare for adding a RT aware variant of softirq serialization and
+processing move related code into one section so the necessary #ifdeffery
+is reduced to one.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Link: https://lore.kernel.org/r/20201113141733.974214480@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/softirq.c | 107 ++++++++++++++++++++++++-----------------------
+ 1 file changed, 54 insertions(+), 53 deletions(-)
+
+diff --git a/kernel/softirq.c b/kernel/softirq.c
+index 09229ad82209..617009ccd82c 100644
+--- a/kernel/softirq.c
++++ b/kernel/softirq.c
+@@ -92,6 +92,13 @@ static bool ksoftirqd_running(unsigned long pending)
+ !__kthread_should_park(tsk);
+ }
+
++#ifdef CONFIG_TRACE_IRQFLAGS
++DEFINE_PER_CPU(int, hardirqs_enabled);
++DEFINE_PER_CPU(int, hardirq_context);
++EXPORT_PER_CPU_SYMBOL_GPL(hardirqs_enabled);
++EXPORT_PER_CPU_SYMBOL_GPL(hardirq_context);
++#endif
++
+ /*
+ * preempt_count and SOFTIRQ_OFFSET usage:
+ * - preempt_count is changed by SOFTIRQ_OFFSET on entering or leaving
+@@ -102,17 +109,11 @@ static bool ksoftirqd_running(unsigned long pending)
+ * softirq and whether we just have bh disabled.
+ */
+
++#ifdef CONFIG_TRACE_IRQFLAGS
+ /*
+- * This one is for softirq.c-internal use,
+- * where hardirqs are disabled legitimately:
++ * This is for softirq.c-internal use, where hardirqs are disabled
++ * legitimately:
+ */
+-#ifdef CONFIG_TRACE_IRQFLAGS
+-
+-DEFINE_PER_CPU(int, hardirqs_enabled);
+-DEFINE_PER_CPU(int, hardirq_context);
+-EXPORT_PER_CPU_SYMBOL_GPL(hardirqs_enabled);
+-EXPORT_PER_CPU_SYMBOL_GPL(hardirq_context);
+-
+ void __local_bh_disable_ip(unsigned long ip, unsigned int cnt)
+ {
+ unsigned long flags;
+@@ -203,6 +204,50 @@ void __local_bh_enable_ip(unsigned long ip, unsigned int cnt)
+ }
+ EXPORT_SYMBOL(__local_bh_enable_ip);
+
++static inline void invoke_softirq(void)
++{
++ if (ksoftirqd_running(local_softirq_pending()))
++ return;
++
++ if (!force_irqthreads) {
++#ifdef CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK
++ /*
++ * We can safely execute softirq on the current stack if
++ * it is the irq stack, because it should be near empty
++ * at this stage.
++ */
++ __do_softirq();
++#else
++ /*
++ * Otherwise, irq_exit() is called on the task stack that can
++ * be potentially deep already. So call softirq in its own stack
++ * to prevent from any overrun.
++ */
++ do_softirq_own_stack();
++#endif
++ } else {
++ wakeup_softirqd();
++ }
++}
++
++asmlinkage __visible void do_softirq(void)
++{
++ __u32 pending;
++ unsigned long flags;
++
++ if (in_interrupt())
++ return;
++
++ local_irq_save(flags);
++
++ pending = local_softirq_pending();
++
++ if (pending && !ksoftirqd_running(pending))
++ do_softirq_own_stack();
++
++ local_irq_restore(flags);
++}
++
+ /*
+ * We restart softirq processing for at most MAX_SOFTIRQ_RESTART times,
+ * but break the loop if need_resched() is set or after 2 ms.
+@@ -327,24 +372,6 @@ asmlinkage __visible void __softirq_entry __do_softirq(void)
+ current_restore_flags(old_flags, PF_MEMALLOC);
+ }
+
+-asmlinkage __visible void do_softirq(void)
+-{
+- __u32 pending;
+- unsigned long flags;
+-
+- if (in_interrupt())
+- return;
+-
+- local_irq_save(flags);
+-
+- pending = local_softirq_pending();
+-
+- if (pending && !ksoftirqd_running(pending))
+- do_softirq_own_stack();
+-
+- local_irq_restore(flags);
+-}
+-
+ /**
+ * irq_enter_rcu - Enter an interrupt context with RCU watching
+ */
+@@ -371,32 +398,6 @@ void irq_enter(void)
+ irq_enter_rcu();
+ }
+
+-static inline void invoke_softirq(void)
+-{
+- if (ksoftirqd_running(local_softirq_pending()))
+- return;
+-
+- if (!force_irqthreads) {
+-#ifdef CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK
+- /*
+- * We can safely execute softirq on the current stack if
+- * it is the irq stack, because it should be near empty
+- * at this stage.
+- */
+- __do_softirq();
+-#else
+- /*
+- * Otherwise, irq_exit() is called on the task stack that can
+- * be potentially deep already. So call softirq in its own stack
+- * to prevent from any overrun.
+- */
+- do_softirq_own_stack();
+-#endif
+- } else {
+- wakeup_softirqd();
+- }
+-}
+-
+ static inline void tick_irq_exit(void)
+ {
+ #ifdef CONFIG_NO_HZ_COMMON
+--
+2.43.0
+
diff --git a/debian/patches-rt/0125-sh-irq-Add-missing-closing-parentheses-in-arch_show_.patch b/debian/patches-rt/0125-sh-irq-Add-missing-closing-parentheses-in-arch_show_.patch
new file mode 100644
index 000000000..4259c009f
--- /dev/null
+++ b/debian/patches-rt/0125-sh-irq-Add-missing-closing-parentheses-in-arch_show_.patch
@@ -0,0 +1,40 @@
+From e8f074aae182d9f11f092885cc1a1dfaedbe8807 Mon Sep 17 00:00:00 2001
+From: Geert Uytterhoeven <geert+renesas@glider.be>
+Date: Tue, 24 Nov 2020 14:06:56 +0100
+Subject: [PATCH 125/323] sh/irq: Add missing closing parentheses in
+ arch_show_interrupts()
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+ arch/sh/kernel/irq.c: In function ‘arch_show_interrupts’:
+ arch/sh/kernel/irq.c:47:58: error: expected ‘)’ before ‘;’ token
+ 47 | seq_printf(p, "%10u ", per_cpu(irq_stat.__nmi_count, j);
+ | ^
+
+Fixes: fe3f1d5d7cd3062c ("sh: Get rid of nmi_count()")
+Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Link: https://lore.kernel.org/r/20201124130656.2741743-1-geert+renesas@glider.be
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/sh/kernel/irq.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c
+index 5addcb2c2da0..ab5f790b0cd2 100644
+--- a/arch/sh/kernel/irq.c
++++ b/arch/sh/kernel/irq.c
+@@ -44,7 +44,7 @@ int arch_show_interrupts(struct seq_file *p, int prec)
+
+ seq_printf(p, "%*s: ", prec, "NMI");
+ for_each_online_cpu(j)
+- seq_printf(p, "%10u ", per_cpu(irq_stat.__nmi_count, j);
++ seq_printf(p, "%10u ", per_cpu(irq_stat.__nmi_count, j));
+ seq_printf(p, " Non-maskable interrupts\n");
+
+ seq_printf(p, "%*s: %10u\n", prec, "ERR", atomic_read(&irq_err_count));
+--
+2.43.0
+
diff --git a/debian/patches-rt/0126-sched-cputime-Remove-symbol-exports-from-IRQ-time-ac.patch b/debian/patches-rt/0126-sched-cputime-Remove-symbol-exports-from-IRQ-time-ac.patch
new file mode 100644
index 000000000..3926556d0
--- /dev/null
+++ b/debian/patches-rt/0126-sched-cputime-Remove-symbol-exports-from-IRQ-time-ac.patch
@@ -0,0 +1,73 @@
+From d15b621168c7c422b8e43819c45aa749f3611fa6 Mon Sep 17 00:00:00 2001
+From: Frederic Weisbecker <frederic@kernel.org>
+Date: Wed, 2 Dec 2020 12:57:28 +0100
+Subject: [PATCH 126/323] sched/cputime: Remove symbol exports from IRQ time
+ accounting
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+account_irq_enter_time() and account_irq_exit_time() are not called
+from modules. EXPORT_SYMBOL_GPL() can be safely removed from the IRQ
+cputime accounting functions called from there.
+
+Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Link: https://lore.kernel.org/r/20201202115732.27827-2-frederic@kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/s390/kernel/vtime.c | 10 +++++-----
+ kernel/sched/cputime.c | 2 --
+ 2 files changed, 5 insertions(+), 7 deletions(-)
+
+diff --git a/arch/s390/kernel/vtime.c b/arch/s390/kernel/vtime.c
+index 579ec3a8c816..710135905deb 100644
+--- a/arch/s390/kernel/vtime.c
++++ b/arch/s390/kernel/vtime.c
+@@ -227,7 +227,7 @@ void vtime_flush(struct task_struct *tsk)
+ * Update process times based on virtual cpu times stored by entry.S
+ * to the lowcore fields user_timer, system_timer & steal_clock.
+ */
+-void vtime_account_irq_enter(struct task_struct *tsk)
++void vtime_account_kernel(struct task_struct *tsk)
+ {
+ u64 timer;
+
+@@ -246,12 +246,12 @@ void vtime_account_irq_enter(struct task_struct *tsk)
+
+ virt_timer_forward(timer);
+ }
+-EXPORT_SYMBOL_GPL(vtime_account_irq_enter);
+-
+-void vtime_account_kernel(struct task_struct *tsk)
+-__attribute__((alias("vtime_account_irq_enter")));
+ EXPORT_SYMBOL_GPL(vtime_account_kernel);
+
++void vtime_account_irq_enter(struct task_struct *tsk)
++__attribute__((alias("vtime_account_kernel")));
++
++
+ /*
+ * Sorted add to a list. List is linear searched until first bigger
+ * element is found.
+diff --git a/kernel/sched/cputime.c b/kernel/sched/cputime.c
+index ca0eef7d3852..e03568c5f584 100644
+--- a/kernel/sched/cputime.c
++++ b/kernel/sched/cputime.c
+@@ -71,7 +71,6 @@ void irqtime_account_irq(struct task_struct *curr)
+ else if (in_serving_softirq() && curr != this_cpu_ksoftirqd())
+ irqtime_account_delta(irqtime, delta, CPUTIME_SOFTIRQ);
+ }
+-EXPORT_SYMBOL_GPL(irqtime_account_irq);
+
+ static u64 irqtime_tick_accounted(u64 maxtime)
+ {
+@@ -434,7 +433,6 @@ void vtime_account_irq_enter(struct task_struct *tsk)
+ else
+ vtime_account_kernel(tsk);
+ }
+-EXPORT_SYMBOL_GPL(vtime_account_irq_enter);
+ #endif /* __ARCH_HAS_VTIME_ACCOUNT */
+
+ void cputime_adjust(struct task_cputime *curr, struct prev_cputime *prev,
+--
+2.43.0
+
diff --git a/debian/patches-rt/0127-s390-vtime-Use-the-generic-IRQ-entry-accounting.patch b/debian/patches-rt/0127-s390-vtime-Use-the-generic-IRQ-entry-accounting.patch
new file mode 100644
index 000000000..e4a67c29c
--- /dev/null
+++ b/debian/patches-rt/0127-s390-vtime-Use-the-generic-IRQ-entry-accounting.patch
@@ -0,0 +1,126 @@
+From 433f928a0fd33d67682020e134ac00885b38a2a9 Mon Sep 17 00:00:00 2001
+From: Frederic Weisbecker <frederic@kernel.org>
+Date: Wed, 2 Dec 2020 12:57:29 +0100
+Subject: [PATCH 127/323] s390/vtime: Use the generic IRQ entry accounting
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+s390 has its own version of IRQ entry accounting because it doesn't
+account the idle time the same way the other architectures do. Only
+the actual idle sleep time is accounted as idle time, the rest of the
+idle task execution is accounted as system time.
+
+Make the generic IRQ entry accounting aware of architectures that have
+their own way of accounting idle time and convert s390 to use it.
+
+This prepares s390 to get involved in further consolidations of IRQ
+time accounting.
+
+Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Link: https://lore.kernel.org/r/20201202115732.27827-3-frederic@kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/Kconfig | 7 ++++++-
+ arch/s390/Kconfig | 1 +
+ arch/s390/include/asm/vtime.h | 1 -
+ arch/s390/kernel/vtime.c | 4 ----
+ kernel/sched/cputime.c | 13 ++-----------
+ 5 files changed, 9 insertions(+), 17 deletions(-)
+
+diff --git a/arch/Kconfig b/arch/Kconfig
+index 240277d5626c..628e1e7fe302 100644
+--- a/arch/Kconfig
++++ b/arch/Kconfig
+@@ -646,6 +646,12 @@ config HAVE_TIF_NOHZ
+ config HAVE_VIRT_CPU_ACCOUNTING
+ bool
+
++config HAVE_VIRT_CPU_ACCOUNTING_IDLE
++ bool
++ help
++ Architecture has its own way to account idle CPU time and therefore
++ doesn't implement vtime_account_idle().
++
+ config ARCH_HAS_SCALED_CPUTIME
+ bool
+
+@@ -660,7 +666,6 @@ config HAVE_VIRT_CPU_ACCOUNTING_GEN
+ some 32-bit arches may require multiple accesses, so proper
+ locking is needed to protect against concurrent accesses.
+
+-
+ config HAVE_IRQ_TIME_ACCOUNTING
+ bool
+ help
+diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
+index 878993982e39..2e78071551e7 100644
+--- a/arch/s390/Kconfig
++++ b/arch/s390/Kconfig
+@@ -183,6 +183,7 @@ config S390
+ select HAVE_RSEQ
+ select HAVE_SYSCALL_TRACEPOINTS
+ select HAVE_VIRT_CPU_ACCOUNTING
++ select HAVE_VIRT_CPU_ACCOUNTING_IDLE
+ select IOMMU_HELPER if PCI
+ select IOMMU_SUPPORT if PCI
+ select MODULES_USE_ELF_RELA
+diff --git a/arch/s390/include/asm/vtime.h b/arch/s390/include/asm/vtime.h
+index 3622d4ebc73a..fac6a67988eb 100644
+--- a/arch/s390/include/asm/vtime.h
++++ b/arch/s390/include/asm/vtime.h
+@@ -2,7 +2,6 @@
+ #ifndef _S390_VTIME_H
+ #define _S390_VTIME_H
+
+-#define __ARCH_HAS_VTIME_ACCOUNT
+ #define __ARCH_HAS_VTIME_TASK_SWITCH
+
+ #endif /* _S390_VTIME_H */
+diff --git a/arch/s390/kernel/vtime.c b/arch/s390/kernel/vtime.c
+index 710135905deb..18a97631af43 100644
+--- a/arch/s390/kernel/vtime.c
++++ b/arch/s390/kernel/vtime.c
+@@ -248,10 +248,6 @@ void vtime_account_kernel(struct task_struct *tsk)
+ }
+ EXPORT_SYMBOL_GPL(vtime_account_kernel);
+
+-void vtime_account_irq_enter(struct task_struct *tsk)
+-__attribute__((alias("vtime_account_kernel")));
+-
+-
+ /*
+ * Sorted add to a list. List is linear searched until first bigger
+ * element is found.
+diff --git a/kernel/sched/cputime.c b/kernel/sched/cputime.c
+index e03568c5f584..1d78b835ec8b 100644
+--- a/kernel/sched/cputime.c
++++ b/kernel/sched/cputime.c
+@@ -417,23 +417,14 @@ void vtime_task_switch(struct task_struct *prev)
+ }
+ # endif
+
+-/*
+- * Archs that account the whole time spent in the idle task
+- * (outside irq) as idle time can rely on this and just implement
+- * vtime_account_kernel() and vtime_account_idle(). Archs that
+- * have other meaning of the idle time (s390 only includes the
+- * time spent by the CPU when it's in low power mode) must override
+- * vtime_account().
+- */
+-#ifndef __ARCH_HAS_VTIME_ACCOUNT
+ void vtime_account_irq_enter(struct task_struct *tsk)
+ {
+- if (!in_interrupt() && is_idle_task(tsk))
++ if (!IS_ENABLED(CONFIG_HAVE_VIRT_CPU_ACCOUNTING_IDLE) &&
++ !in_interrupt() && is_idle_task(tsk))
+ vtime_account_idle(tsk);
+ else
+ vtime_account_kernel(tsk);
+ }
+-#endif /* __ARCH_HAS_VTIME_ACCOUNT */
+
+ void cputime_adjust(struct task_cputime *curr, struct prev_cputime *prev,
+ u64 *ut, u64 *st)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0128-sched-vtime-Consolidate-IRQ-time-accounting.patch b/debian/patches-rt/0128-sched-vtime-Consolidate-IRQ-time-accounting.patch
new file mode 100644
index 000000000..bb1e03d33
--- /dev/null
+++ b/debian/patches-rt/0128-sched-vtime-Consolidate-IRQ-time-accounting.patch
@@ -0,0 +1,303 @@
+From 749e0a8d4b10240d5834e135f34c47d107aa1442 Mon Sep 17 00:00:00 2001
+From: Frederic Weisbecker <frederic@kernel.org>
+Date: Wed, 2 Dec 2020 12:57:30 +0100
+Subject: [PATCH 128/323] sched/vtime: Consolidate IRQ time accounting
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The 3 architectures implementing CONFIG_VIRT_CPU_ACCOUNTING_NATIVE
+all have their own version of irq time accounting that dispatch the
+cputime to the appropriate index: hardirq, softirq, system, idle,
+guest... from an all-in-one function.
+
+Instead of having these ad-hoc versions, move the cputime destination
+dispatch decision to the core code and leave only the actual per-index
+cputime accounting to the architecture.
+
+Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Link: https://lore.kernel.org/r/20201202115732.27827-4-frederic@kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/ia64/kernel/time.c | 20 ++++++++++----
+ arch/powerpc/kernel/time.c | 56 +++++++++++++++++++++++++++-----------
+ arch/s390/kernel/vtime.c | 45 +++++++++++++++++++++---------
+ include/linux/vtime.h | 16 ++++-------
+ kernel/sched/cputime.c | 13 ++++++---
+ 5 files changed, 102 insertions(+), 48 deletions(-)
+
+diff --git a/arch/ia64/kernel/time.c b/arch/ia64/kernel/time.c
+index 7abc5f37bfaf..733e0e3324b8 100644
+--- a/arch/ia64/kernel/time.c
++++ b/arch/ia64/kernel/time.c
+@@ -138,12 +138,8 @@ void vtime_account_kernel(struct task_struct *tsk)
+ struct thread_info *ti = task_thread_info(tsk);
+ __u64 stime = vtime_delta(tsk);
+
+- if ((tsk->flags & PF_VCPU) && !irq_count())
++ if (tsk->flags & PF_VCPU)
+ ti->gtime += stime;
+- else if (hardirq_count())
+- ti->hardirq_time += stime;
+- else if (in_serving_softirq())
+- ti->softirq_time += stime;
+ else
+ ti->stime += stime;
+ }
+@@ -156,6 +152,20 @@ void vtime_account_idle(struct task_struct *tsk)
+ ti->idle_time += vtime_delta(tsk);
+ }
+
++void vtime_account_softirq(struct task_struct *tsk)
++{
++ struct thread_info *ti = task_thread_info(tsk);
++
++ ti->softirq_time += vtime_delta(tsk);
++}
++
++void vtime_account_hardirq(struct task_struct *tsk)
++{
++ struct thread_info *ti = task_thread_info(tsk);
++
++ ti->hardirq_time += vtime_delta(tsk);
++}
++
+ #endif /* CONFIG_VIRT_CPU_ACCOUNTING_NATIVE */
+
+ static irqreturn_t
+diff --git a/arch/powerpc/kernel/time.c b/arch/powerpc/kernel/time.c
+index ba9b54d35f57..588e081ca55b 100644
+--- a/arch/powerpc/kernel/time.c
++++ b/arch/powerpc/kernel/time.c
+@@ -312,12 +312,11 @@ static unsigned long vtime_delta_scaled(struct cpu_accounting_data *acct,
+ return stime_scaled;
+ }
+
+-static unsigned long vtime_delta(struct task_struct *tsk,
++static unsigned long vtime_delta(struct cpu_accounting_data *acct,
+ unsigned long *stime_scaled,
+ unsigned long *steal_time)
+ {
+ unsigned long now, stime;
+- struct cpu_accounting_data *acct = get_accounting(tsk);
+
+ WARN_ON_ONCE(!irqs_disabled());
+
+@@ -332,29 +331,30 @@ static unsigned long vtime_delta(struct task_struct *tsk,
+ return stime;
+ }
+
++static void vtime_delta_kernel(struct cpu_accounting_data *acct,
++ unsigned long *stime, unsigned long *stime_scaled)
++{
++ unsigned long steal_time;
++
++ *stime = vtime_delta(acct, stime_scaled, &steal_time);
++ *stime -= min(*stime, steal_time);
++ acct->steal_time += steal_time;
++}
++
+ void vtime_account_kernel(struct task_struct *tsk)
+ {
+- unsigned long stime, stime_scaled, steal_time;
+ struct cpu_accounting_data *acct = get_accounting(tsk);
++ unsigned long stime, stime_scaled;
+
+- stime = vtime_delta(tsk, &stime_scaled, &steal_time);
+-
+- stime -= min(stime, steal_time);
+- acct->steal_time += steal_time;
++ vtime_delta_kernel(acct, &stime, &stime_scaled);
+
+- if ((tsk->flags & PF_VCPU) && !irq_count()) {
++ if (tsk->flags & PF_VCPU) {
+ acct->gtime += stime;
+ #ifdef CONFIG_ARCH_HAS_SCALED_CPUTIME
+ acct->utime_scaled += stime_scaled;
+ #endif
+ } else {
+- if (hardirq_count())
+- acct->hardirq_time += stime;
+- else if (in_serving_softirq())
+- acct->softirq_time += stime;
+- else
+- acct->stime += stime;
+-
++ acct->stime += stime;
+ #ifdef CONFIG_ARCH_HAS_SCALED_CPUTIME
+ acct->stime_scaled += stime_scaled;
+ #endif
+@@ -367,10 +367,34 @@ void vtime_account_idle(struct task_struct *tsk)
+ unsigned long stime, stime_scaled, steal_time;
+ struct cpu_accounting_data *acct = get_accounting(tsk);
+
+- stime = vtime_delta(tsk, &stime_scaled, &steal_time);
++ stime = vtime_delta(acct, &stime_scaled, &steal_time);
+ acct->idle_time += stime + steal_time;
+ }
+
++static void vtime_account_irq_field(struct cpu_accounting_data *acct,
++ unsigned long *field)
++{
++ unsigned long stime, stime_scaled;
++
++ vtime_delta_kernel(acct, &stime, &stime_scaled);
++ *field += stime;
++#ifdef CONFIG_ARCH_HAS_SCALED_CPUTIME
++ acct->stime_scaled += stime_scaled;
++#endif
++}
++
++void vtime_account_softirq(struct task_struct *tsk)
++{
++ struct cpu_accounting_data *acct = get_accounting(tsk);
++ vtime_account_irq_field(acct, &acct->softirq_time);
++}
++
++void vtime_account_hardirq(struct task_struct *tsk)
++{
++ struct cpu_accounting_data *acct = get_accounting(tsk);
++ vtime_account_irq_field(acct, &acct->hardirq_time);
++}
++
+ static void vtime_flush_scaled(struct task_struct *tsk,
+ struct cpu_accounting_data *acct)
+ {
+diff --git a/arch/s390/kernel/vtime.c b/arch/s390/kernel/vtime.c
+index 18a97631af43..9b3c5978b668 100644
+--- a/arch/s390/kernel/vtime.c
++++ b/arch/s390/kernel/vtime.c
+@@ -223,31 +223,50 @@ void vtime_flush(struct task_struct *tsk)
+ S390_lowcore.avg_steal_timer = avg_steal;
+ }
+
++static u64 vtime_delta(void)
++{
++ u64 timer = S390_lowcore.last_update_timer;
++
++ S390_lowcore.last_update_timer = get_vtimer();
++
++ return timer - S390_lowcore.last_update_timer;
++}
++
+ /*
+ * Update process times based on virtual cpu times stored by entry.S
+ * to the lowcore fields user_timer, system_timer & steal_clock.
+ */
+ void vtime_account_kernel(struct task_struct *tsk)
+ {
+- u64 timer;
+-
+- timer = S390_lowcore.last_update_timer;
+- S390_lowcore.last_update_timer = get_vtimer();
+- timer -= S390_lowcore.last_update_timer;
++ u64 delta = vtime_delta();
+
+- if ((tsk->flags & PF_VCPU) && (irq_count() == 0))
+- S390_lowcore.guest_timer += timer;
+- else if (hardirq_count())
+- S390_lowcore.hardirq_timer += timer;
+- else if (in_serving_softirq())
+- S390_lowcore.softirq_timer += timer;
++ if (tsk->flags & PF_VCPU)
++ S390_lowcore.guest_timer += delta;
+ else
+- S390_lowcore.system_timer += timer;
++ S390_lowcore.system_timer += delta;
+
+- virt_timer_forward(timer);
++ virt_timer_forward(delta);
+ }
+ EXPORT_SYMBOL_GPL(vtime_account_kernel);
+
++void vtime_account_softirq(struct task_struct *tsk)
++{
++ u64 delta = vtime_delta();
++
++ S390_lowcore.softirq_timer += delta;
++
++ virt_timer_forward(delta);
++}
++
++void vtime_account_hardirq(struct task_struct *tsk)
++{
++ u64 delta = vtime_delta();
++
++ S390_lowcore.hardirq_timer += delta;
++
++ virt_timer_forward(delta);
++}
++
+ /*
+ * Sorted add to a list. List is linear searched until first bigger
+ * element is found.
+diff --git a/include/linux/vtime.h b/include/linux/vtime.h
+index 2cdeca062db3..6c9867419615 100644
+--- a/include/linux/vtime.h
++++ b/include/linux/vtime.h
+@@ -83,16 +83,12 @@ static inline void vtime_init_idle(struct task_struct *tsk, int cpu) { }
+ #endif
+
+ #ifdef CONFIG_VIRT_CPU_ACCOUNTING_NATIVE
+-extern void vtime_account_irq_enter(struct task_struct *tsk);
+-static inline void vtime_account_irq_exit(struct task_struct *tsk)
+-{
+- /* On hard|softirq exit we always account to hard|softirq cputime */
+- vtime_account_kernel(tsk);
+-}
++extern void vtime_account_irq(struct task_struct *tsk);
++extern void vtime_account_softirq(struct task_struct *tsk);
++extern void vtime_account_hardirq(struct task_struct *tsk);
+ extern void vtime_flush(struct task_struct *tsk);
+ #else /* !CONFIG_VIRT_CPU_ACCOUNTING_NATIVE */
+-static inline void vtime_account_irq_enter(struct task_struct *tsk) { }
+-static inline void vtime_account_irq_exit(struct task_struct *tsk) { }
++static inline void vtime_account_irq(struct task_struct *tsk) { }
+ static inline void vtime_flush(struct task_struct *tsk) { }
+ #endif
+
+@@ -105,13 +101,13 @@ static inline void irqtime_account_irq(struct task_struct *tsk) { }
+
+ static inline void account_irq_enter_time(struct task_struct *tsk)
+ {
+- vtime_account_irq_enter(tsk);
++ vtime_account_irq(tsk);
+ irqtime_account_irq(tsk);
+ }
+
+ static inline void account_irq_exit_time(struct task_struct *tsk)
+ {
+- vtime_account_irq_exit(tsk);
++ vtime_account_irq(tsk);
+ irqtime_account_irq(tsk);
+ }
+
+diff --git a/kernel/sched/cputime.c b/kernel/sched/cputime.c
+index 1d78b835ec8b..60129af16ed6 100644
+--- a/kernel/sched/cputime.c
++++ b/kernel/sched/cputime.c
+@@ -417,13 +417,18 @@ void vtime_task_switch(struct task_struct *prev)
+ }
+ # endif
+
+-void vtime_account_irq_enter(struct task_struct *tsk)
++void vtime_account_irq(struct task_struct *tsk)
+ {
+- if (!IS_ENABLED(CONFIG_HAVE_VIRT_CPU_ACCOUNTING_IDLE) &&
+- !in_interrupt() && is_idle_task(tsk))
++ if (hardirq_count()) {
++ vtime_account_hardirq(tsk);
++ } else if (in_serving_softirq()) {
++ vtime_account_softirq(tsk);
++ } else if (!IS_ENABLED(CONFIG_HAVE_VIRT_CPU_ACCOUNTING_IDLE) &&
++ is_idle_task(tsk)) {
+ vtime_account_idle(tsk);
+- else
++ } else {
+ vtime_account_kernel(tsk);
++ }
+ }
+
+ void cputime_adjust(struct task_cputime *curr, struct prev_cputime *prev,
+--
+2.43.0
+
diff --git a/debian/patches-rt/0129-irqtime-Move-irqtime-entry-accounting-after-irq-offs.patch b/debian/patches-rt/0129-irqtime-Move-irqtime-entry-accounting-after-irq-offs.patch
new file mode 100644
index 000000000..838a13489
--- /dev/null
+++ b/debian/patches-rt/0129-irqtime-Move-irqtime-entry-accounting-after-irq-offs.patch
@@ -0,0 +1,213 @@
+From e387d228099075ac3f762ccfbbe29f9ee59678c8 Mon Sep 17 00:00:00 2001
+From: Frederic Weisbecker <frederic@kernel.org>
+Date: Wed, 2 Dec 2020 12:57:31 +0100
+Subject: [PATCH 129/323] irqtime: Move irqtime entry accounting after irq
+ offset incrementation
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+IRQ time entry is currently accounted before HARDIRQ_OFFSET or
+SOFTIRQ_OFFSET are incremented. This is convenient to decide to which
+index the cputime to account is dispatched.
+
+Unfortunately it prevents tick_irq_enter() from being called under
+HARDIRQ_OFFSET because tick_irq_enter() has to be called before the IRQ
+entry accounting due to the necessary clock catch up. As a result we
+don't benefit from appropriate lockdep coverage on tick_irq_enter().
+
+To prepare for fixing this, move the IRQ entry cputime accounting after
+the preempt offset is incremented. This requires the cputime dispatch
+code to handle the extra offset.
+
+Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Link: https://lore.kernel.org/r/20201202115732.27827-5-frederic@kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/hardirq.h | 4 ++--
+ include/linux/vtime.h | 34 ++++++++++++++++++++++++----------
+ kernel/sched/cputime.c | 18 +++++++++++-------
+ kernel/softirq.c | 6 +++---
+ 4 files changed, 40 insertions(+), 22 deletions(-)
+
+diff --git a/include/linux/hardirq.h b/include/linux/hardirq.h
+index c35b71f8644a..0926e9ca4d85 100644
+--- a/include/linux/hardirq.h
++++ b/include/linux/hardirq.h
+@@ -32,9 +32,9 @@ static __always_inline void rcu_irq_enter_check_tick(void)
+ */
+ #define __irq_enter() \
+ do { \
+- account_irq_enter_time(current); \
+ preempt_count_add(HARDIRQ_OFFSET); \
+ lockdep_hardirq_enter(); \
++ account_hardirq_enter(current); \
+ } while (0)
+
+ /*
+@@ -62,8 +62,8 @@ void irq_enter_rcu(void);
+ */
+ #define __irq_exit() \
+ do { \
++ account_hardirq_exit(current); \
+ lockdep_hardirq_exit(); \
+- account_irq_exit_time(current); \
+ preempt_count_sub(HARDIRQ_OFFSET); \
+ } while (0)
+
+diff --git a/include/linux/vtime.h b/include/linux/vtime.h
+index 6c9867419615..041d6524d144 100644
+--- a/include/linux/vtime.h
++++ b/include/linux/vtime.h
+@@ -83,32 +83,46 @@ static inline void vtime_init_idle(struct task_struct *tsk, int cpu) { }
+ #endif
+
+ #ifdef CONFIG_VIRT_CPU_ACCOUNTING_NATIVE
+-extern void vtime_account_irq(struct task_struct *tsk);
++extern void vtime_account_irq(struct task_struct *tsk, unsigned int offset);
+ extern void vtime_account_softirq(struct task_struct *tsk);
+ extern void vtime_account_hardirq(struct task_struct *tsk);
+ extern void vtime_flush(struct task_struct *tsk);
+ #else /* !CONFIG_VIRT_CPU_ACCOUNTING_NATIVE */
+-static inline void vtime_account_irq(struct task_struct *tsk) { }
++static inline void vtime_account_irq(struct task_struct *tsk, unsigned int offset) { }
++static inline void vtime_account_softirq(struct task_struct *tsk) { }
++static inline void vtime_account_hardirq(struct task_struct *tsk) { }
+ static inline void vtime_flush(struct task_struct *tsk) { }
+ #endif
+
+
+ #ifdef CONFIG_IRQ_TIME_ACCOUNTING
+-extern void irqtime_account_irq(struct task_struct *tsk);
++extern void irqtime_account_irq(struct task_struct *tsk, unsigned int offset);
+ #else
+-static inline void irqtime_account_irq(struct task_struct *tsk) { }
++static inline void irqtime_account_irq(struct task_struct *tsk, unsigned int offset) { }
+ #endif
+
+-static inline void account_irq_enter_time(struct task_struct *tsk)
++static inline void account_softirq_enter(struct task_struct *tsk)
+ {
+- vtime_account_irq(tsk);
+- irqtime_account_irq(tsk);
++ vtime_account_irq(tsk, SOFTIRQ_OFFSET);
++ irqtime_account_irq(tsk, SOFTIRQ_OFFSET);
+ }
+
+-static inline void account_irq_exit_time(struct task_struct *tsk)
++static inline void account_softirq_exit(struct task_struct *tsk)
+ {
+- vtime_account_irq(tsk);
+- irqtime_account_irq(tsk);
++ vtime_account_softirq(tsk);
++ irqtime_account_irq(tsk, 0);
++}
++
++static inline void account_hardirq_enter(struct task_struct *tsk)
++{
++ vtime_account_irq(tsk, HARDIRQ_OFFSET);
++ irqtime_account_irq(tsk, HARDIRQ_OFFSET);
++}
++
++static inline void account_hardirq_exit(struct task_struct *tsk)
++{
++ vtime_account_hardirq(tsk);
++ irqtime_account_irq(tsk, 0);
+ }
+
+ #endif /* _LINUX_KERNEL_VTIME_H */
+diff --git a/kernel/sched/cputime.c b/kernel/sched/cputime.c
+index 60129af16ed6..02a7932c7383 100644
+--- a/kernel/sched/cputime.c
++++ b/kernel/sched/cputime.c
+@@ -44,12 +44,13 @@ static void irqtime_account_delta(struct irqtime *irqtime, u64 delta,
+ }
+
+ /*
+- * Called before incrementing preempt_count on {soft,}irq_enter
++ * Called after incrementing preempt_count on {soft,}irq_enter
+ * and before decrementing preempt_count on {soft,}irq_exit.
+ */
+-void irqtime_account_irq(struct task_struct *curr)
++void irqtime_account_irq(struct task_struct *curr, unsigned int offset)
+ {
+ struct irqtime *irqtime = this_cpu_ptr(&cpu_irqtime);
++ unsigned int pc;
+ s64 delta;
+ int cpu;
+
+@@ -59,6 +60,7 @@ void irqtime_account_irq(struct task_struct *curr)
+ cpu = smp_processor_id();
+ delta = sched_clock_cpu(cpu) - irqtime->irq_start_time;
+ irqtime->irq_start_time += delta;
++ pc = preempt_count() - offset;
+
+ /*
+ * We do not account for softirq time from ksoftirqd here.
+@@ -66,9 +68,9 @@ void irqtime_account_irq(struct task_struct *curr)
+ * in that case, so as not to confuse scheduler with a special task
+ * that do not consume any time, but still wants to run.
+ */
+- if (hardirq_count())
++ if (pc & HARDIRQ_MASK)
+ irqtime_account_delta(irqtime, delta, CPUTIME_IRQ);
+- else if (in_serving_softirq() && curr != this_cpu_ksoftirqd())
++ else if ((pc & SOFTIRQ_OFFSET) && curr != this_cpu_ksoftirqd())
+ irqtime_account_delta(irqtime, delta, CPUTIME_SOFTIRQ);
+ }
+
+@@ -417,11 +419,13 @@ void vtime_task_switch(struct task_struct *prev)
+ }
+ # endif
+
+-void vtime_account_irq(struct task_struct *tsk)
++void vtime_account_irq(struct task_struct *tsk, unsigned int offset)
+ {
+- if (hardirq_count()) {
++ unsigned int pc = preempt_count() - offset;
++
++ if (pc & HARDIRQ_OFFSET) {
+ vtime_account_hardirq(tsk);
+- } else if (in_serving_softirq()) {
++ } else if (pc & SOFTIRQ_OFFSET) {
+ vtime_account_softirq(tsk);
+ } else if (!IS_ENABLED(CONFIG_HAVE_VIRT_CPU_ACCOUNTING_IDLE) &&
+ is_idle_task(tsk)) {
+diff --git a/kernel/softirq.c b/kernel/softirq.c
+index 617009ccd82c..b8f42b3ba8ca 100644
+--- a/kernel/softirq.c
++++ b/kernel/softirq.c
+@@ -315,10 +315,10 @@ asmlinkage __visible void __softirq_entry __do_softirq(void)
+ current->flags &= ~PF_MEMALLOC;
+
+ pending = local_softirq_pending();
+- account_irq_enter_time(current);
+
+ __local_bh_disable_ip(_RET_IP_, SOFTIRQ_OFFSET);
+ in_hardirq = lockdep_softirq_start();
++ account_softirq_enter(current);
+
+ restart:
+ /* Reset the pending bitmask before enabling irqs */
+@@ -365,8 +365,8 @@ asmlinkage __visible void __softirq_entry __do_softirq(void)
+ wakeup_softirqd();
+ }
+
++ account_softirq_exit(current);
+ lockdep_softirq_end(in_hardirq);
+- account_irq_exit_time(current);
+ __local_bh_enable(SOFTIRQ_OFFSET);
+ WARN_ON_ONCE(in_interrupt());
+ current_restore_flags(old_flags, PF_MEMALLOC);
+@@ -418,7 +418,7 @@ static inline void __irq_exit_rcu(void)
+ #else
+ lockdep_assert_irqs_disabled();
+ #endif
+- account_irq_exit_time(current);
++ account_hardirq_exit(current);
+ preempt_count_sub(HARDIRQ_OFFSET);
+ if (!in_interrupt() && local_softirq_pending())
+ invoke_softirq();
+--
+2.43.0
+
diff --git a/debian/patches-rt/0130-irq-Call-tick_irq_enter-inside-HARDIRQ_OFFSET.patch b/debian/patches-rt/0130-irq-Call-tick_irq_enter-inside-HARDIRQ_OFFSET.patch
new file mode 100644
index 000000000..304fef0fa
--- /dev/null
+++ b/debian/patches-rt/0130-irq-Call-tick_irq_enter-inside-HARDIRQ_OFFSET.patch
@@ -0,0 +1,51 @@
+From 5e2b7533340eb96a841068c309aac4985bd8180c Mon Sep 17 00:00:00 2001
+From: Frederic Weisbecker <frederic@kernel.org>
+Date: Wed, 2 Dec 2020 12:57:32 +0100
+Subject: [PATCH 130/323] irq: Call tick_irq_enter() inside HARDIRQ_OFFSET
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Now that account_hardirq_enter() is called after HARDIRQ_OFFSET has
+been incremented, there is nothing left that prevents us from also
+moving tick_irq_enter() after HARDIRQ_OFFSET is incremented.
+
+The desired outcome is to remove the nasty hack that prevents softirqs
+from being raised through ksoftirqd instead of the hardirq bottom half.
+Also tick_irq_enter() then becomes appropriately covered by lockdep.
+
+Signed-off-by: Frederic Weisbecker <frederic@kernel.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Link: https://lore.kernel.org/r/20201202115732.27827-6-frederic@kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/softirq.c | 14 +++++---------
+ 1 file changed, 5 insertions(+), 9 deletions(-)
+
+diff --git a/kernel/softirq.c b/kernel/softirq.c
+index b8f42b3ba8ca..d5bfd5e661fc 100644
+--- a/kernel/softirq.c
++++ b/kernel/softirq.c
+@@ -377,16 +377,12 @@ asmlinkage __visible void __softirq_entry __do_softirq(void)
+ */
+ void irq_enter_rcu(void)
+ {
+- if (is_idle_task(current) && !in_interrupt()) {
+- /*
+- * Prevent raise_softirq from needlessly waking up ksoftirqd
+- * here, as softirq will be serviced on return from interrupt.
+- */
+- local_bh_disable();
++ __irq_enter_raw();
++
++ if (is_idle_task(current) && (irq_count() == HARDIRQ_OFFSET))
+ tick_irq_enter();
+- _local_bh_enable();
+- }
+- __irq_enter();
++
++ account_hardirq_enter(current);
+ }
+
+ /**
+--
+2.43.0
+
diff --git a/debian/patches-rt/0131-smp-Wake-ksoftirqd-on-PREEMPT_RT-instead-do_softirq.patch b/debian/patches-rt/0131-smp-Wake-ksoftirqd-on-PREEMPT_RT-instead-do_softirq.patch
new file mode 100644
index 000000000..19d4f6615
--- /dev/null
+++ b/debian/patches-rt/0131-smp-Wake-ksoftirqd-on-PREEMPT_RT-instead-do_softirq.patch
@@ -0,0 +1,48 @@
+From d6a969bae816bcd5ac549038a4582d300ede6b99 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Mon, 15 Feb 2021 18:44:12 +0100
+Subject: [PATCH 131/323] smp: Wake ksoftirqd on PREEMPT_RT instead
+ do_softirq().
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The softirq implementation on PREEMPT_RT does not provide do_softirq().
+The other user of do_softirq() is replaced with a local_bh_disable()
++ enable() around the possible raise-softirq invocation. This can not be
+done here because migration_cpu_stop() is invoked with disabled
+preemption.
+
+Wake the softirq thread on PREEMPT_RT if there are any pending softirqs.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/smp.c | 14 ++++++++++++--
+ 1 file changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/smp.c b/kernel/smp.c
+index b0684b4c111e..4aaf11aa729c 100644
+--- a/kernel/smp.c
++++ b/kernel/smp.c
+@@ -450,8 +450,18 @@ void flush_smp_call_function_from_idle(void)
+
+ local_irq_save(flags);
+ flush_smp_call_function_queue(true);
+- if (local_softirq_pending())
+- do_softirq();
++
++ if (local_softirq_pending()) {
++
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT)) {
++ do_softirq();
++ } else {
++ struct task_struct *ksoftirqd = this_cpu_ksoftirqd();
++
++ if (ksoftirqd && ksoftirqd->state != TASK_RUNNING)
++ wake_up_process(ksoftirqd);
++ }
++ }
+
+ local_irq_restore(flags);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0132-tasklets-Replace-barrier-with-cpu_relax-in-tasklet_u.patch b/debian/patches-rt/0132-tasklets-Replace-barrier-with-cpu_relax-in-tasklet_u.patch
new file mode 100644
index 000000000..8908254e0
--- /dev/null
+++ b/debian/patches-rt/0132-tasklets-Replace-barrier-with-cpu_relax-in-tasklet_u.patch
@@ -0,0 +1,35 @@
+From 8127bb05947dbb12f9537095932d6a7a7a07d09e Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:04 +0100
+Subject: [PATCH 132/323] tasklets: Replace barrier() with cpu_relax() in
+ tasklet_unlock_wait()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+A barrier() in a tight loop which waits for something to happen on a remote
+CPU is a pointless exercise. Replace it with cpu_relax() which allows HT
+siblings to make progress.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/interrupt.h | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
+index 0652b4858ba6..fad0eb9d42ab 100644
+--- a/include/linux/interrupt.h
++++ b/include/linux/interrupt.h
+@@ -672,7 +672,8 @@ static inline void tasklet_unlock(struct tasklet_struct *t)
+
+ static inline void tasklet_unlock_wait(struct tasklet_struct *t)
+ {
+- while (test_bit(TASKLET_STATE_RUN, &(t)->state)) { barrier(); }
++ while (test_bit(TASKLET_STATE_RUN, &t->state))
++ cpu_relax();
+ }
+ #else
+ #define tasklet_trylock(t) 1
+--
+2.43.0
+
diff --git a/debian/patches-rt/0133-tasklets-Use-static-inlines-for-stub-implementations.patch b/debian/patches-rt/0133-tasklets-Use-static-inlines-for-stub-implementations.patch
new file mode 100644
index 000000000..57ec50a2e
--- /dev/null
+++ b/debian/patches-rt/0133-tasklets-Use-static-inlines-for-stub-implementations.patch
@@ -0,0 +1,35 @@
+From fa31367f235c42f78b2375d5ade6130a3b296e22 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:05 +0100
+Subject: [PATCH 133/323] tasklets: Use static inlines for stub implementations
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Inlines exist for a reason.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/interrupt.h | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
+index fad0eb9d42ab..75c4380afe9b 100644
+--- a/include/linux/interrupt.h
++++ b/include/linux/interrupt.h
+@@ -676,9 +676,9 @@ static inline void tasklet_unlock_wait(struct tasklet_struct *t)
+ cpu_relax();
+ }
+ #else
+-#define tasklet_trylock(t) 1
+-#define tasklet_unlock_wait(t) do { } while (0)
+-#define tasklet_unlock(t) do { } while (0)
++static inline int tasklet_trylock(struct tasklet_struct *t) { return 1; }
++static inline void tasklet_unlock(struct tasklet_struct *t) { }
++static inline void tasklet_unlock_wait(struct tasklet_struct *t) { }
+ #endif
+
+ extern void __tasklet_schedule(struct tasklet_struct *t);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0134-tasklets-Provide-tasklet_disable_in_atomic.patch b/debian/patches-rt/0134-tasklets-Provide-tasklet_disable_in_atomic.patch
new file mode 100644
index 000000000..2f6fb1ab9
--- /dev/null
+++ b/debian/patches-rt/0134-tasklets-Provide-tasklet_disable_in_atomic.patch
@@ -0,0 +1,68 @@
+From 35c080a5db30acfdfa20ca84bf9d0482e6ec1409 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:06 +0100
+Subject: [PATCH 134/323] tasklets: Provide tasklet_disable_in_atomic()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Replacing the spin wait loops in tasklet_unlock_wait() with
+wait_var_event() is not possible as a handful of tasklet_disable()
+invocations are happening in atomic context. All other invocations are in
+teardown paths which can sleep.
+
+Provide tasklet_disable_in_atomic() and tasklet_unlock_spin_wait() to
+convert the few atomic use cases over, which allows to change
+tasklet_disable() and tasklet_unlock_wait() in a later step.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/interrupt.h | 22 ++++++++++++++++++++++
+ 1 file changed, 22 insertions(+)
+
+diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
+index 75c4380afe9b..abba3eff4f86 100644
+--- a/include/linux/interrupt.h
++++ b/include/linux/interrupt.h
+@@ -675,10 +675,21 @@ static inline void tasklet_unlock_wait(struct tasklet_struct *t)
+ while (test_bit(TASKLET_STATE_RUN, &t->state))
+ cpu_relax();
+ }
++
++/*
++ * Do not use in new code. Waiting for tasklets from atomic contexts is
++ * error prone and should be avoided.
++ */
++static inline void tasklet_unlock_spin_wait(struct tasklet_struct *t)
++{
++ while (test_bit(TASKLET_STATE_RUN, &t->state))
++ cpu_relax();
++}
+ #else
+ static inline int tasklet_trylock(struct tasklet_struct *t) { return 1; }
+ static inline void tasklet_unlock(struct tasklet_struct *t) { }
+ static inline void tasklet_unlock_wait(struct tasklet_struct *t) { }
++static inline void tasklet_unlock_spin_wait(struct tasklet_struct *t) { }
+ #endif
+
+ extern void __tasklet_schedule(struct tasklet_struct *t);
+@@ -703,6 +714,17 @@ static inline void tasklet_disable_nosync(struct tasklet_struct *t)
+ smp_mb__after_atomic();
+ }
+
++/*
++ * Do not use in new code. Disabling tasklets from atomic contexts is
++ * error prone and should be avoided.
++ */
++static inline void tasklet_disable_in_atomic(struct tasklet_struct *t)
++{
++ tasklet_disable_nosync(t);
++ tasklet_unlock_spin_wait(t);
++ smp_mb();
++}
++
+ static inline void tasklet_disable(struct tasklet_struct *t)
+ {
+ tasklet_disable_nosync(t);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0135-tasklets-Use-spin-wait-in-tasklet_disable-temporaril.patch b/debian/patches-rt/0135-tasklets-Use-spin-wait-in-tasklet_disable-temporaril.patch
new file mode 100644
index 000000000..7e32a2a7c
--- /dev/null
+++ b/debian/patches-rt/0135-tasklets-Use-spin-wait-in-tasklet_disable-temporaril.patch
@@ -0,0 +1,33 @@
+From 90d88360f539e57921ec9675603c700c351a0078 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:07 +0100
+Subject: [PATCH 135/323] tasklets: Use spin wait in tasklet_disable()
+ temporarily
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+To ease the transition use spin waiting in tasklet_disable() until all
+usage sites from atomic context have been cleaned up.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/interrupt.h | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
+index abba3eff4f86..fe085c46f210 100644
+--- a/include/linux/interrupt.h
++++ b/include/linux/interrupt.h
+@@ -728,7 +728,8 @@ static inline void tasklet_disable_in_atomic(struct tasklet_struct *t)
+ static inline void tasklet_disable(struct tasklet_struct *t)
+ {
+ tasklet_disable_nosync(t);
+- tasklet_unlock_wait(t);
++ /* Spin wait until all atomic users are converted */
++ tasklet_unlock_spin_wait(t);
+ smp_mb();
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0136-tasklets-Replace-spin-wait-in-tasklet_unlock_wait.patch b/debian/patches-rt/0136-tasklets-Replace-spin-wait-in-tasklet_unlock_wait.patch
new file mode 100644
index 000000000..c244c4010
--- /dev/null
+++ b/debian/patches-rt/0136-tasklets-Replace-spin-wait-in-tasklet_unlock_wait.patch
@@ -0,0 +1,90 @@
+From 1e2be8ee6d91630326a3a3bc32925205b41d73a5 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Tue, 9 Mar 2021 09:42:08 +0100
+Subject: [PATCH 136/323] tasklets: Replace spin wait in tasklet_unlock_wait()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+tasklet_unlock_wait() spin waits for TASKLET_STATE_RUN to be cleared. This
+is wasting CPU cycles in a tight loop which is especially painful in a
+guest when the CPU running the tasklet is scheduled out.
+
+tasklet_unlock_wait() is invoked from tasklet_kill() which is used in
+teardown paths and not performance critical at all. Replace the spin wait
+with wait_var_event().
+
+There are no users of tasklet_unlock_wait() which are invoked from atomic
+contexts. The usage in tasklet_disable() has been replaced temporarily with
+the spin waiting variant until the atomic users are fixed up and will be
+converted to the sleep wait variant later.
+
+Signed-off-by: Peter Zijlstra <peterz@infradead.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/interrupt.h | 13 ++-----------
+ kernel/softirq.c | 18 ++++++++++++++++++
+ 2 files changed, 20 insertions(+), 11 deletions(-)
+
+diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
+index fe085c46f210..c4fafbfa28a6 100644
+--- a/include/linux/interrupt.h
++++ b/include/linux/interrupt.h
+@@ -664,17 +664,8 @@ static inline int tasklet_trylock(struct tasklet_struct *t)
+ return !test_and_set_bit(TASKLET_STATE_RUN, &(t)->state);
+ }
+
+-static inline void tasklet_unlock(struct tasklet_struct *t)
+-{
+- smp_mb__before_atomic();
+- clear_bit(TASKLET_STATE_RUN, &(t)->state);
+-}
+-
+-static inline void tasklet_unlock_wait(struct tasklet_struct *t)
+-{
+- while (test_bit(TASKLET_STATE_RUN, &t->state))
+- cpu_relax();
+-}
++void tasklet_unlock(struct tasklet_struct *t);
++void tasklet_unlock_wait(struct tasklet_struct *t);
+
+ /*
+ * Do not use in new code. Waiting for tasklets from atomic contexts is
+diff --git a/kernel/softirq.c b/kernel/softirq.c
+index d5bfd5e661fc..06bca024ce45 100644
+--- a/kernel/softirq.c
++++ b/kernel/softirq.c
+@@ -25,6 +25,7 @@
+ #include <linux/smpboot.h>
+ #include <linux/tick.h>
+ #include <linux/irq.h>
++#include <linux/wait_bit.h>
+
+ #define CREATE_TRACE_POINTS
+ #include <trace/events/irq.h>
+@@ -619,6 +620,23 @@ void tasklet_kill(struct tasklet_struct *t)
+ }
+ EXPORT_SYMBOL(tasklet_kill);
+
++#ifdef CONFIG_SMP
++void tasklet_unlock(struct tasklet_struct *t)
++{
++ smp_mb__before_atomic();
++ clear_bit(TASKLET_STATE_RUN, &t->state);
++ smp_mb__after_atomic();
++ wake_up_var(&t->state);
++}
++EXPORT_SYMBOL_GPL(tasklet_unlock);
++
++void tasklet_unlock_wait(struct tasklet_struct *t)
++{
++ wait_var_event(&t->state, !test_bit(TASKLET_STATE_RUN, &t->state));
++}
++EXPORT_SYMBOL_GPL(tasklet_unlock_wait);
++#endif
++
+ void __init softirq_init(void)
+ {
+ int cpu;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0137-tasklets-Replace-spin-wait-in-tasklet_kill.patch b/debian/patches-rt/0137-tasklets-Replace-spin-wait-in-tasklet_kill.patch
new file mode 100644
index 000000000..619e62b2a
--- /dev/null
+++ b/debian/patches-rt/0137-tasklets-Replace-spin-wait-in-tasklet_kill.patch
@@ -0,0 +1,74 @@
+From cc2fc16258410420e97a4873f760cffabcff49b0 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Tue, 9 Mar 2021 09:42:09 +0100
+Subject: [PATCH 137/323] tasklets: Replace spin wait in tasklet_kill()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+tasklet_kill() spin waits for TASKLET_STATE_SCHED to be cleared invoking
+yield() from inside the loop. yield() is an ill defined mechanism and the
+result might still be wasting CPU cycles in a tight loop which is
+especially painful in a guest when the CPU running the tasklet is scheduled
+out.
+
+tasklet_kill() is used in teardown paths and not performance critical at
+all. Replace the spin wait with wait_var_event().
+
+Signed-off-by: Peter Zijlstra <peterz@infradead.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/softirq.c | 23 +++++++++++++++--------
+ 1 file changed, 15 insertions(+), 8 deletions(-)
+
+diff --git a/kernel/softirq.c b/kernel/softirq.c
+index 06bca024ce45..ecc3ac4091c8 100644
+--- a/kernel/softirq.c
++++ b/kernel/softirq.c
+@@ -530,6 +530,16 @@ void __tasklet_hi_schedule(struct tasklet_struct *t)
+ }
+ EXPORT_SYMBOL(__tasklet_hi_schedule);
+
++static inline bool tasklet_clear_sched(struct tasklet_struct *t)
++{
++ if (test_and_clear_bit(TASKLET_STATE_SCHED, &t->state)) {
++ wake_up_var(&t->state);
++ return true;
++ }
++
++ return false;
++}
++
+ static void tasklet_action_common(struct softirq_action *a,
+ struct tasklet_head *tl_head,
+ unsigned int softirq_nr)
+@@ -549,8 +559,7 @@ static void tasklet_action_common(struct softirq_action *a,
+
+ if (tasklet_trylock(t)) {
+ if (!atomic_read(&t->count)) {
+- if (!test_and_clear_bit(TASKLET_STATE_SCHED,
+- &t->state))
++ if (!tasklet_clear_sched(t))
+ BUG();
+ if (t->use_callback)
+ t->callback(t);
+@@ -610,13 +619,11 @@ void tasklet_kill(struct tasklet_struct *t)
+ if (in_interrupt())
+ pr_notice("Attempt to kill tasklet from interrupt\n");
+
+- while (test_and_set_bit(TASKLET_STATE_SCHED, &t->state)) {
+- do {
+- yield();
+- } while (test_bit(TASKLET_STATE_SCHED, &t->state));
+- }
++ while (test_and_set_bit(TASKLET_STATE_SCHED, &t->state))
++ wait_var_event(&t->state, !test_bit(TASKLET_STATE_SCHED, &t->state));
++
+ tasklet_unlock_wait(t);
+- clear_bit(TASKLET_STATE_SCHED, &t->state);
++ tasklet_clear_sched(t);
+ }
+ EXPORT_SYMBOL(tasklet_kill);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch b/debian/patches-rt/0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch
new file mode 100644
index 000000000..9f446b54f
--- /dev/null
+++ b/debian/patches-rt/0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch
@@ -0,0 +1,109 @@
+From 42114155db1a5548923ac48a09b3f228b29d3b09 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:10 +0100
+Subject: [PATCH 138/323] tasklets: Prevent tasklet_unlock_spin_wait() deadlock
+ on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+tasklet_unlock_spin_wait() spin waits for the TASKLET_STATE_SCHED bit in
+the tasklet state to be cleared. This works on !RT nicely because the
+corresponding execution can only happen on a different CPU.
+
+On RT softirq processing is preemptible, therefore a task preempting the
+softirq processing thread can spin forever.
+
+Prevent this by invoking local_bh_disable()/enable() inside the loop. In
+case that the softirq processing thread was preempted by the current task,
+current will block on the local lock which yields the CPU to the preempted
+softirq processing thread. If the tasklet is processed on a different CPU
+then the local_bh_disable()/enable() pair is just a waste of processor
+cycles.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/interrupt.h | 12 ++----------
+ kernel/softirq.c | 28 +++++++++++++++++++++++++++-
+ 2 files changed, 29 insertions(+), 11 deletions(-)
+
+diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
+index c4fafbfa28a6..6eae70ec3a17 100644
+--- a/include/linux/interrupt.h
++++ b/include/linux/interrupt.h
+@@ -658,7 +658,7 @@ enum
+ TASKLET_STATE_RUN /* Tasklet is running (SMP only) */
+ };
+
+-#ifdef CONFIG_SMP
++#if defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT)
+ static inline int tasklet_trylock(struct tasklet_struct *t)
+ {
+ return !test_and_set_bit(TASKLET_STATE_RUN, &(t)->state);
+@@ -666,16 +666,8 @@ static inline int tasklet_trylock(struct tasklet_struct *t)
+
+ void tasklet_unlock(struct tasklet_struct *t);
+ void tasklet_unlock_wait(struct tasklet_struct *t);
++void tasklet_unlock_spin_wait(struct tasklet_struct *t);
+
+-/*
+- * Do not use in new code. Waiting for tasklets from atomic contexts is
+- * error prone and should be avoided.
+- */
+-static inline void tasklet_unlock_spin_wait(struct tasklet_struct *t)
+-{
+- while (test_bit(TASKLET_STATE_RUN, &t->state))
+- cpu_relax();
+-}
+ #else
+ static inline int tasklet_trylock(struct tasklet_struct *t) { return 1; }
+ static inline void tasklet_unlock(struct tasklet_struct *t) { }
+diff --git a/kernel/softirq.c b/kernel/softirq.c
+index ecc3ac4091c8..fcb201ceed71 100644
+--- a/kernel/softirq.c
++++ b/kernel/softirq.c
+@@ -614,6 +614,32 @@ void tasklet_init(struct tasklet_struct *t,
+ }
+ EXPORT_SYMBOL(tasklet_init);
+
++#if defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT)
++/*
++ * Do not use in new code. Waiting for tasklets from atomic contexts is
++ * error prone and should be avoided.
++ */
++void tasklet_unlock_spin_wait(struct tasklet_struct *t)
++{
++ while (test_bit(TASKLET_STATE_RUN, &(t)->state)) {
++ if (IS_ENABLED(CONFIG_PREEMPT_RT)) {
++ /*
++ * Prevent a live lock when current preempted soft
++ * interrupt processing or prevents ksoftirqd from
++ * running. If the tasklet runs on a different CPU
++ * then this has no effect other than doing the BH
++ * disable/enable dance for nothing.
++ */
++ local_bh_disable();
++ local_bh_enable();
++ } else {
++ cpu_relax();
++ }
++ }
++}
++EXPORT_SYMBOL(tasklet_unlock_spin_wait);
++#endif
++
+ void tasklet_kill(struct tasklet_struct *t)
+ {
+ if (in_interrupt())
+@@ -627,7 +653,7 @@ void tasklet_kill(struct tasklet_struct *t)
+ }
+ EXPORT_SYMBOL(tasklet_kill);
+
+-#ifdef CONFIG_SMP
++#if defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT)
+ void tasklet_unlock(struct tasklet_struct *t)
+ {
+ smp_mb__before_atomic();
+--
+2.43.0
+
diff --git a/debian/patches-rt/0139-net-jme-Replace-link-change-tasklet-with-work.patch b/debian/patches-rt/0139-net-jme-Replace-link-change-tasklet-with-work.patch
new file mode 100644
index 000000000..927a8ce66
--- /dev/null
+++ b/debian/patches-rt/0139-net-jme-Replace-link-change-tasklet-with-work.patch
@@ -0,0 +1,88 @@
+From 8aad52579188d8ae11265d495209d51029482f38 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:11 +0100
+Subject: [PATCH 139/323] net: jme: Replace link-change tasklet with work
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The link change tasklet disables the tasklets for tx/rx processing while
+upating hw parameters and then enables the tasklets again.
+
+This update can also be pushed into a workqueue where it can be performed
+in preemptible context. This allows tasklet_disable() to become sleeping.
+
+Replace the linkch_task tasklet with a work.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/net/ethernet/jme.c | 10 +++++-----
+ drivers/net/ethernet/jme.h | 2 +-
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/drivers/net/ethernet/jme.c b/drivers/net/ethernet/jme.c
+index e9efe074edc1..f1b9284e0bea 100644
+--- a/drivers/net/ethernet/jme.c
++++ b/drivers/net/ethernet/jme.c
+@@ -1265,9 +1265,9 @@ jme_stop_shutdown_timer(struct jme_adapter *jme)
+ jwrite32f(jme, JME_APMC, apmc);
+ }
+
+-static void jme_link_change_tasklet(struct tasklet_struct *t)
++static void jme_link_change_work(struct work_struct *work)
+ {
+- struct jme_adapter *jme = from_tasklet(jme, t, linkch_task);
++ struct jme_adapter *jme = container_of(work, struct jme_adapter, linkch_task);
+ struct net_device *netdev = jme->dev;
+ int rc;
+
+@@ -1510,7 +1510,7 @@ jme_intr_msi(struct jme_adapter *jme, u32 intrstat)
+ * all other events are ignored
+ */
+ jwrite32(jme, JME_IEVE, intrstat);
+- tasklet_schedule(&jme->linkch_task);
++ schedule_work(&jme->linkch_task);
+ goto out_reenable;
+ }
+
+@@ -1832,7 +1832,6 @@ jme_open(struct net_device *netdev)
+ jme_clear_pm_disable_wol(jme);
+ JME_NAPI_ENABLE(jme);
+
+- tasklet_setup(&jme->linkch_task, jme_link_change_tasklet);
+ tasklet_setup(&jme->txclean_task, jme_tx_clean_tasklet);
+ tasklet_setup(&jme->rxclean_task, jme_rx_clean_tasklet);
+ tasklet_setup(&jme->rxempty_task, jme_rx_empty_tasklet);
+@@ -1920,7 +1919,7 @@ jme_close(struct net_device *netdev)
+
+ JME_NAPI_DISABLE(jme);
+
+- tasklet_kill(&jme->linkch_task);
++ cancel_work_sync(&jme->linkch_task);
+ tasklet_kill(&jme->txclean_task);
+ tasklet_kill(&jme->rxclean_task);
+ tasklet_kill(&jme->rxempty_task);
+@@ -3035,6 +3034,7 @@ jme_init_one(struct pci_dev *pdev,
+ atomic_set(&jme->rx_empty, 1);
+
+ tasklet_setup(&jme->pcc_task, jme_pcc_tasklet);
++ INIT_WORK(&jme->linkch_task, jme_link_change_work);
+ jme->dpi.cur = PCC_P1;
+
+ jme->reg_ghc = 0;
+diff --git a/drivers/net/ethernet/jme.h b/drivers/net/ethernet/jme.h
+index a2c3b00d939d..2af76329b4a2 100644
+--- a/drivers/net/ethernet/jme.h
++++ b/drivers/net/ethernet/jme.h
+@@ -411,7 +411,7 @@ struct jme_adapter {
+ struct tasklet_struct rxempty_task;
+ struct tasklet_struct rxclean_task;
+ struct tasklet_struct txclean_task;
+- struct tasklet_struct linkch_task;
++ struct work_struct linkch_task;
+ struct tasklet_struct pcc_task;
+ unsigned long flags;
+ u32 reg_txcs;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0140-net-sundance-Use-tasklet_disable_in_atomic.patch b/debian/patches-rt/0140-net-sundance-Use-tasklet_disable_in_atomic.patch
new file mode 100644
index 000000000..cc8eade7d
--- /dev/null
+++ b/debian/patches-rt/0140-net-sundance-Use-tasklet_disable_in_atomic.patch
@@ -0,0 +1,39 @@
+From b8d19bf463893a07bab9120bd628798515f3e6e0 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:12 +0100
+Subject: [PATCH 140/323] net: sundance: Use tasklet_disable_in_atomic().
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+tasklet_disable() is used in the timer callback. This might be distangled,
+but without access to the hardware that's a bit risky.
+
+Replace it with tasklet_disable_in_atomic() so tasklet_disable() can be
+changed to a sleep wait once all remaining atomic users are converted.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Denis Kirjanov <kda@linux-powerpc.org>
+Cc: "David S. Miller" <davem@davemloft.net>
+Cc: Jakub Kicinski <kuba@kernel.org>
+Cc: netdev@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/net/ethernet/dlink/sundance.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/ethernet/dlink/sundance.c b/drivers/net/ethernet/dlink/sundance.c
+index e3a8858915b3..df0eab479d51 100644
+--- a/drivers/net/ethernet/dlink/sundance.c
++++ b/drivers/net/ethernet/dlink/sundance.c
+@@ -963,7 +963,7 @@ static void tx_timeout(struct net_device *dev, unsigned int txqueue)
+ unsigned long flag;
+
+ netif_stop_queue(dev);
+- tasklet_disable(&np->tx_tasklet);
++ tasklet_disable_in_atomic(&np->tx_tasklet);
+ iowrite16(0, ioaddr + IntrEnable);
+ printk(KERN_WARNING "%s: Transmit timed out, TxStatus %2.2x "
+ "TxFrameId %2.2x,"
+--
+2.43.0
+
diff --git a/debian/patches-rt/0141-ath9k-Use-tasklet_disable_in_atomic.patch b/debian/patches-rt/0141-ath9k-Use-tasklet_disable_in_atomic.patch
new file mode 100644
index 000000000..8e80fa205
--- /dev/null
+++ b/debian/patches-rt/0141-ath9k-Use-tasklet_disable_in_atomic.patch
@@ -0,0 +1,48 @@
+From 3e2ecd3c09d77800b53b99090c6b6372af1922e7 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:13 +0100
+Subject: [PATCH 141/323] ath9k: Use tasklet_disable_in_atomic()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+All callers of ath9k_beacon_ensure_primary_slot() are preemptible /
+acquire a mutex except for this callchain:
+
+ spin_lock_bh(&sc->sc_pcu_lock);
+ ath_complete_reset()
+ -> ath9k_calculate_summary_state()
+ -> ath9k_beacon_ensure_primary_slot()
+
+It's unclear how that can be distangled, so use tasklet_disable_in_atomic()
+for now. This allows tasklet_disable() to become sleepable once the
+remaining atomic users are cleaned up.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: ath9k-devel@qca.qualcomm.com
+Cc: Kalle Valo <kvalo@codeaurora.org>
+Cc: "David S. Miller" <davem@davemloft.net>
+Cc: Jakub Kicinski <kuba@kernel.org>
+Cc: linux-wireless@vger.kernel.org
+Cc: netdev@vger.kernel.org
+Acked-by: Kalle Valo <kvalo@codeaurora.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/net/wireless/ath/ath9k/beacon.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/net/wireless/ath/ath9k/beacon.c b/drivers/net/wireless/ath/ath9k/beacon.c
+index 71e2ada86793..72e2e71aac0e 100644
+--- a/drivers/net/wireless/ath/ath9k/beacon.c
++++ b/drivers/net/wireless/ath/ath9k/beacon.c
+@@ -251,7 +251,7 @@ void ath9k_beacon_ensure_primary_slot(struct ath_softc *sc)
+ int first_slot = ATH_BCBUF;
+ int slot;
+
+- tasklet_disable(&sc->bcon_tasklet);
++ tasklet_disable_in_atomic(&sc->bcon_tasklet);
+
+ /* Find first taken slot. */
+ for (slot = 0; slot < ATH_BCBUF; slot++) {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0142-atm-eni-Use-tasklet_disable_in_atomic-in-the-send-ca.patch b/debian/patches-rt/0142-atm-eni-Use-tasklet_disable_in_atomic-in-the-send-ca.patch
new file mode 100644
index 000000000..45236c9da
--- /dev/null
+++ b/debian/patches-rt/0142-atm-eni-Use-tasklet_disable_in_atomic-in-the-send-ca.patch
@@ -0,0 +1,42 @@
+From f8cac7fb539abd4d961c942dde93a04956f9615d Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:14 +0100
+Subject: [PATCH 142/323] atm: eni: Use tasklet_disable_in_atomic() in the
+ send() callback
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The atmdev_ops::send callback which calls tasklet_disable() is invoked with
+bottom halfs disabled from net_device_ops::ndo_start_xmit(). All other
+invocations of tasklet_disable() in this driver happen in preemptible
+context.
+
+Change the send() call to use tasklet_disable_in_atomic() which allows
+tasklet_disable() to be made sleepable once the remaining atomic context
+usage sites are cleaned up.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Chas Williams <3chas3@gmail.com>
+Cc: linux-atm-general@lists.sourceforge.net
+Cc: netdev@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/atm/eni.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/atm/eni.c b/drivers/atm/eni.c
+index 9fcc49be499f..a31ffe16e626 100644
+--- a/drivers/atm/eni.c
++++ b/drivers/atm/eni.c
+@@ -2056,7 +2056,7 @@ static int eni_send(struct atm_vcc *vcc,struct sk_buff *skb)
+ }
+ submitted++;
+ ATM_SKB(skb)->vcc = vcc;
+- tasklet_disable(&ENI_DEV(vcc->dev)->task);
++ tasklet_disable_in_atomic(&ENI_DEV(vcc->dev)->task);
+ res = do_tx(skb);
+ tasklet_enable(&ENI_DEV(vcc->dev)->task);
+ if (res == enq_ok) return 0;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0143-PCI-hv-Use-tasklet_disable_in_atomic.patch b/debian/patches-rt/0143-PCI-hv-Use-tasklet_disable_in_atomic.patch
new file mode 100644
index 000000000..e4c764804
--- /dev/null
+++ b/debian/patches-rt/0143-PCI-hv-Use-tasklet_disable_in_atomic.patch
@@ -0,0 +1,46 @@
+From 267b1086437ac0cca8ca59197e5cc8cbe8fc6a83 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:15 +0100
+Subject: [PATCH 143/323] PCI: hv: Use tasklet_disable_in_atomic()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The hv_compose_msi_msg() callback in irq_chip::irq_compose_msi_msg is
+invoked via irq_chip_compose_msi_msg(), which itself is always invoked from
+atomic contexts from the guts of the interrupt core code.
+
+There is no way to change this w/o rewriting the whole driver, so use
+tasklet_disable_in_atomic() which allows to make tasklet_disable()
+sleepable once the remaining atomic users are addressed.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: "K. Y. Srinivasan" <kys@microsoft.com>
+Cc: Haiyang Zhang <haiyangz@microsoft.com>
+Cc: Stephen Hemminger <sthemmin@microsoft.com>
+Cc: Wei Liu <wei.liu@kernel.org>
+Cc: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
+Cc: Rob Herring <robh@kernel.org>
+Cc: Bjorn Helgaas <bhelgaas@google.com>
+Cc: linux-hyperv@vger.kernel.org
+Cc: linux-pci@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/pci/controller/pci-hyperv.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/pci/controller/pci-hyperv.c b/drivers/pci/controller/pci-hyperv.c
+index 2d6c77dcc815..7daba964f54e 100644
+--- a/drivers/pci/controller/pci-hyperv.c
++++ b/drivers/pci/controller/pci-hyperv.c
+@@ -1518,7 +1518,7 @@ static void hv_compose_msi_msg(struct irq_data *data, struct msi_msg *msg)
+ * Prevents hv_pci_onchannelcallback() from running concurrently
+ * in the tasklet.
+ */
+- tasklet_disable(&channel->callback_event);
++ tasklet_disable_in_atomic(&channel->callback_event);
+
+ /*
+ * Since this function is called with IRQ locks held, can't
+--
+2.43.0
+
diff --git a/debian/patches-rt/0144-firewire-ohci-Use-tasklet_disable_in_atomic-where-re.patch b/debian/patches-rt/0144-firewire-ohci-Use-tasklet_disable_in_atomic-where-re.patch
new file mode 100644
index 000000000..184d80276
--- /dev/null
+++ b/debian/patches-rt/0144-firewire-ohci-Use-tasklet_disable_in_atomic-where-re.patch
@@ -0,0 +1,61 @@
+From 090a450216e555382abe0be8e2941ecfcc527c44 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:16 +0100
+Subject: [PATCH 144/323] firewire: ohci: Use tasklet_disable_in_atomic() where
+ required
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+tasklet_disable() is invoked in several places. Some of them are in atomic
+context which prevents a conversion of tasklet_disable() to a sleepable
+function.
+
+The atomic callchains are:
+
+ ar_context_tasklet()
+ ohci_cancel_packet()
+ tasklet_disable()
+
+ ...
+ ohci_flush_iso_completions()
+ tasklet_disable()
+
+The invocation of tasklet_disable() from at_context_flush() is always in
+preemptible context.
+
+Use tasklet_disable_in_atomic() for the two invocations in
+ohci_cancel_packet() and ohci_flush_iso_completions().
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Cc: Stefan Richter <stefanr@s5r6.in-berlin.de>
+Cc: linux1394-devel@lists.sourceforge.net
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/firewire/ohci.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/firewire/ohci.c b/drivers/firewire/ohci.c
+index 9811c40956e5..17c9d825188b 100644
+--- a/drivers/firewire/ohci.c
++++ b/drivers/firewire/ohci.c
+@@ -2545,7 +2545,7 @@ static int ohci_cancel_packet(struct fw_card *card, struct fw_packet *packet)
+ struct driver_data *driver_data = packet->driver_data;
+ int ret = -ENOENT;
+
+- tasklet_disable(&ctx->tasklet);
++ tasklet_disable_in_atomic(&ctx->tasklet);
+
+ if (packet->ack != 0)
+ goto out;
+@@ -3465,7 +3465,7 @@ static int ohci_flush_iso_completions(struct fw_iso_context *base)
+ struct iso_context *ctx = container_of(base, struct iso_context, base);
+ int ret = 0;
+
+- tasklet_disable(&ctx->context.tasklet);
++ tasklet_disable_in_atomic(&ctx->context.tasklet);
+
+ if (!test_and_set_bit_lock(0, &ctx->flushing_completions)) {
+ context_tasklet((unsigned long)&ctx->context);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0145-tasklets-Switch-tasklet_disable-to-the-sleep-wait-va.patch b/debian/patches-rt/0145-tasklets-Switch-tasklet_disable-to-the-sleep-wait-va.patch
new file mode 100644
index 000000000..5b9765685
--- /dev/null
+++ b/debian/patches-rt/0145-tasklets-Switch-tasklet_disable-to-the-sleep-wait-va.patch
@@ -0,0 +1,35 @@
+From 24fc43821f54c5f95095fb5154422b54ba2777e2 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:42:17 +0100
+Subject: [PATCH 145/323] tasklets: Switch tasklet_disable() to the sleep wait
+ variant
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+ -- NOT FOR IMMEDIATE MERGING --
+
+Now that all users of tasklet_disable() are invoked from sleepable context,
+convert it to use tasklet_unlock_wait() which might sleep.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/interrupt.h | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
+index 6eae70ec3a17..a1c64d969532 100644
+--- a/include/linux/interrupt.h
++++ b/include/linux/interrupt.h
+@@ -711,8 +711,7 @@ static inline void tasklet_disable_in_atomic(struct tasklet_struct *t)
+ static inline void tasklet_disable(struct tasklet_struct *t)
+ {
+ tasklet_disable_nosync(t);
+- /* Spin wait until all atomic users are converted */
+- tasklet_unlock_spin_wait(t);
++ tasklet_unlock_wait(t);
+ smp_mb();
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0146-softirq-Add-RT-specific-softirq-accounting.patch b/debian/patches-rt/0146-softirq-Add-RT-specific-softirq-accounting.patch
new file mode 100644
index 000000000..c4bcb9bd1
--- /dev/null
+++ b/debian/patches-rt/0146-softirq-Add-RT-specific-softirq-accounting.patch
@@ -0,0 +1,75 @@
+From a69df864da6d43ae3de6a4d995eaebca51a582b4 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:55:53 +0100
+Subject: [PATCH 146/323] softirq: Add RT specific softirq accounting
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+RT requires the softirq processing and local bottomhalf disabled regions to
+be preemptible. Using the normal preempt count based serialization is
+therefore not possible because this implicitely disables preemption.
+
+RT kernels use a per CPU local lock to serialize bottomhalfs. As
+local_bh_disable() can nest the lock can only be acquired on the outermost
+invocation of local_bh_disable() and released when the nest count becomes
+zero. Tasks which hold the local lock can be preempted so its required to
+keep track of the nest count per task.
+
+Add a RT only counter to task struct and adjust the relevant macros in
+preempt.h.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/hardirq.h | 1 +
+ include/linux/preempt.h | 6 +++++-
+ include/linux/sched.h | 3 +++
+ 3 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/hardirq.h b/include/linux/hardirq.h
+index 0926e9ca4d85..76878b357ffa 100644
+--- a/include/linux/hardirq.h
++++ b/include/linux/hardirq.h
+@@ -6,6 +6,7 @@
+ #include <linux/preempt.h>
+ #include <linux/lockdep.h>
+ #include <linux/ftrace_irq.h>
++#include <linux/sched.h>
+ #include <linux/vtime.h>
+ #include <asm/hardirq.h>
+
+diff --git a/include/linux/preempt.h b/include/linux/preempt.h
+index 69cc8b64aa3a..9881eac0698f 100644
+--- a/include/linux/preempt.h
++++ b/include/linux/preempt.h
+@@ -79,7 +79,11 @@
+
+ #define nmi_count() (preempt_count() & NMI_MASK)
+ #define hardirq_count() (preempt_count() & HARDIRQ_MASK)
+-#define softirq_count() (preempt_count() & SOFTIRQ_MASK)
++#ifdef CONFIG_PREEMPT_RT
++# define softirq_count() (current->softirq_disable_cnt & SOFTIRQ_MASK)
++#else
++# define softirq_count() (preempt_count() & SOFTIRQ_MASK)
++#endif
+ #define irq_count() (nmi_count() | hardirq_count() | softirq_count())
+
+ /*
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index 82de1ab42497..d31da4867bb2 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -1046,6 +1046,9 @@ struct task_struct {
+ int softirq_context;
+ int irq_config;
+ #endif
++#ifdef CONFIG_PREEMPT_RT
++ int softirq_disable_cnt;
++#endif
+
+ #ifdef CONFIG_LOCKDEP
+ # define MAX_LOCK_DEPTH 48UL
+--
+2.43.0
+
diff --git a/debian/patches-rt/0147-irqtime-Make-accounting-correct-on-RT.patch b/debian/patches-rt/0147-irqtime-Make-accounting-correct-on-RT.patch
new file mode 100644
index 000000000..576b5391b
--- /dev/null
+++ b/debian/patches-rt/0147-irqtime-Make-accounting-correct-on-RT.patch
@@ -0,0 +1,54 @@
+From a4b2fa58f0b8dabae3f30be80fe317da32c5b121 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:55:54 +0100
+Subject: [PATCH 147/323] irqtime: Make accounting correct on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+vtime_account_irq and irqtime_account_irq() base checks on preempt_count()
+which fails on RT because preempt_count() does not contain the softirq
+accounting which is seperate on RT.
+
+These checks do not need the full preempt count as they only operate on the
+hard and softirq sections.
+
+Use irq_count() instead which provides the correct value on both RT and non
+RT kernels. The compiler is clever enough to fold the masking for !RT:
+
+ 99b: 65 8b 05 00 00 00 00 mov %gs:0x0(%rip),%eax
+ - 9a2: 25 ff ff ff 7f and $0x7fffffff,%eax
+ + 9a2: 25 00 ff ff 00 and $0xffff00,%eax
+
+Reported-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/sched/cputime.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/sched/cputime.c b/kernel/sched/cputime.c
+index 02a7932c7383..02a5aa60fe7e 100644
+--- a/kernel/sched/cputime.c
++++ b/kernel/sched/cputime.c
+@@ -60,7 +60,7 @@ void irqtime_account_irq(struct task_struct *curr, unsigned int offset)
+ cpu = smp_processor_id();
+ delta = sched_clock_cpu(cpu) - irqtime->irq_start_time;
+ irqtime->irq_start_time += delta;
+- pc = preempt_count() - offset;
++ pc = irq_count() - offset;
+
+ /*
+ * We do not account for softirq time from ksoftirqd here.
+@@ -421,7 +421,7 @@ void vtime_task_switch(struct task_struct *prev)
+
+ void vtime_account_irq(struct task_struct *tsk, unsigned int offset)
+ {
+- unsigned int pc = preempt_count() - offset;
++ unsigned int pc = irq_count() - offset;
+
+ if (pc & HARDIRQ_OFFSET) {
+ vtime_account_hardirq(tsk);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0148-softirq-Move-various-protections-into-inline-helpers.patch b/debian/patches-rt/0148-softirq-Move-various-protections-into-inline-helpers.patch
new file mode 100644
index 000000000..e08794144
--- /dev/null
+++ b/debian/patches-rt/0148-softirq-Move-various-protections-into-inline-helpers.patch
@@ -0,0 +1,108 @@
+From 7d59f358f639cc9e535a4049d663d9347aef6380 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:55:55 +0100
+Subject: [PATCH 148/323] softirq: Move various protections into inline helpers
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+To allow reuse of the bulk of softirq processing code for RT and to avoid
+#ifdeffery all over the place, split protections for various code sections
+out into inline helpers so the RT variant can just replace them in one go.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/softirq.c | 39 ++++++++++++++++++++++++++++++++-------
+ 1 file changed, 32 insertions(+), 7 deletions(-)
+
+diff --git a/kernel/softirq.c b/kernel/softirq.c
+index fcb201ceed71..87fac6ac0c32 100644
+--- a/kernel/softirq.c
++++ b/kernel/softirq.c
+@@ -205,6 +205,32 @@ void __local_bh_enable_ip(unsigned long ip, unsigned int cnt)
+ }
+ EXPORT_SYMBOL(__local_bh_enable_ip);
+
++static inline void softirq_handle_begin(void)
++{
++ __local_bh_disable_ip(_RET_IP_, SOFTIRQ_OFFSET);
++}
++
++static inline void softirq_handle_end(void)
++{
++ __local_bh_enable(SOFTIRQ_OFFSET);
++ WARN_ON_ONCE(in_interrupt());
++}
++
++static inline void ksoftirqd_run_begin(void)
++{
++ local_irq_disable();
++}
++
++static inline void ksoftirqd_run_end(void)
++{
++ local_irq_enable();
++}
++
++static inline bool should_wake_ksoftirqd(void)
++{
++ return true;
++}
++
+ static inline void invoke_softirq(void)
+ {
+ if (ksoftirqd_running(local_softirq_pending()))
+@@ -317,7 +343,7 @@ asmlinkage __visible void __softirq_entry __do_softirq(void)
+
+ pending = local_softirq_pending();
+
+- __local_bh_disable_ip(_RET_IP_, SOFTIRQ_OFFSET);
++ softirq_handle_begin();
+ in_hardirq = lockdep_softirq_start();
+ account_softirq_enter(current);
+
+@@ -368,8 +394,7 @@ asmlinkage __visible void __softirq_entry __do_softirq(void)
+
+ account_softirq_exit(current);
+ lockdep_softirq_end(in_hardirq);
+- __local_bh_enable(SOFTIRQ_OFFSET);
+- WARN_ON_ONCE(in_interrupt());
++ softirq_handle_end();
+ current_restore_flags(old_flags, PF_MEMALLOC);
+ }
+
+@@ -464,7 +489,7 @@ inline void raise_softirq_irqoff(unsigned int nr)
+ * Otherwise we wake up ksoftirqd to make sure we
+ * schedule the softirq soon.
+ */
+- if (!in_interrupt())
++ if (!in_interrupt() && should_wake_ksoftirqd())
+ wakeup_softirqd();
+ }
+
+@@ -692,18 +717,18 @@ static int ksoftirqd_should_run(unsigned int cpu)
+
+ static void run_ksoftirqd(unsigned int cpu)
+ {
+- local_irq_disable();
++ ksoftirqd_run_begin();
+ if (local_softirq_pending()) {
+ /*
+ * We can safely run softirq on inline stack, as we are not deep
+ * in the task stack here.
+ */
+ __do_softirq();
+- local_irq_enable();
++ ksoftirqd_run_end();
+ cond_resched();
+ return;
+ }
+- local_irq_enable();
++ ksoftirqd_run_end();
+ }
+
+ #ifdef CONFIG_HOTPLUG_CPU
+--
+2.43.0
+
diff --git a/debian/patches-rt/0149-softirq-Make-softirq-control-and-processing-RT-aware.patch b/debian/patches-rt/0149-softirq-Make-softirq-control-and-processing-RT-aware.patch
new file mode 100644
index 000000000..22a88a79c
--- /dev/null
+++ b/debian/patches-rt/0149-softirq-Make-softirq-control-and-processing-RT-aware.patch
@@ -0,0 +1,267 @@
+From d2c5f9de8094418b5ebade0ff54219371ec0a5ef Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:55:56 +0100
+Subject: [PATCH 149/323] softirq: Make softirq control and processing RT aware
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Provide a local lock based serialization for soft interrupts on RT which
+allows the local_bh_disabled() sections and servicing soft interrupts to be
+preemptible.
+
+Provide the necessary inline helpers which allow to reuse the bulk of the
+softirq processing code.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/bottom_half.h | 2 +-
+ kernel/softirq.c | 188 ++++++++++++++++++++++++++++++++++--
+ 2 files changed, 182 insertions(+), 8 deletions(-)
+
+diff --git a/include/linux/bottom_half.h b/include/linux/bottom_half.h
+index a19519f4241d..e4dd613a070e 100644
+--- a/include/linux/bottom_half.h
++++ b/include/linux/bottom_half.h
+@@ -4,7 +4,7 @@
+
+ #include <linux/preempt.h>
+
+-#ifdef CONFIG_TRACE_IRQFLAGS
++#if defined(CONFIG_PREEMPT_RT) || defined(CONFIG_TRACE_IRQFLAGS)
+ extern void __local_bh_disable_ip(unsigned long ip, unsigned int cnt);
+ #else
+ static __always_inline void __local_bh_disable_ip(unsigned long ip, unsigned int cnt)
+diff --git a/kernel/softirq.c b/kernel/softirq.c
+index 87fac6ac0c32..ed13f6097de8 100644
+--- a/kernel/softirq.c
++++ b/kernel/softirq.c
+@@ -13,6 +13,7 @@
+ #include <linux/kernel_stat.h>
+ #include <linux/interrupt.h>
+ #include <linux/init.h>
++#include <linux/local_lock.h>
+ #include <linux/mm.h>
+ #include <linux/notifier.h>
+ #include <linux/percpu.h>
+@@ -101,20 +102,189 @@ EXPORT_PER_CPU_SYMBOL_GPL(hardirq_context);
+ #endif
+
+ /*
+- * preempt_count and SOFTIRQ_OFFSET usage:
+- * - preempt_count is changed by SOFTIRQ_OFFSET on entering or leaving
+- * softirq processing.
+- * - preempt_count is changed by SOFTIRQ_DISABLE_OFFSET (= 2 * SOFTIRQ_OFFSET)
++ * SOFTIRQ_OFFSET usage:
++ *
++ * On !RT kernels 'count' is the preempt counter, on RT kernels this applies
++ * to a per CPU counter and to task::softirqs_disabled_cnt.
++ *
++ * - count is changed by SOFTIRQ_OFFSET on entering or leaving softirq
++ * processing.
++ *
++ * - count is changed by SOFTIRQ_DISABLE_OFFSET (= 2 * SOFTIRQ_OFFSET)
+ * on local_bh_disable or local_bh_enable.
++ *
+ * This lets us distinguish between whether we are currently processing
+ * softirq and whether we just have bh disabled.
+ */
++#ifdef CONFIG_PREEMPT_RT
+
+-#ifdef CONFIG_TRACE_IRQFLAGS
+ /*
+- * This is for softirq.c-internal use, where hardirqs are disabled
++ * RT accounts for BH disabled sections in task::softirqs_disabled_cnt and
++ * also in per CPU softirq_ctrl::cnt. This is necessary to allow tasks in a
++ * softirq disabled section to be preempted.
++ *
++ * The per task counter is used for softirq_count(), in_softirq() and
++ * in_serving_softirqs() because these counts are only valid when the task
++ * holding softirq_ctrl::lock is running.
++ *
++ * The per CPU counter prevents pointless wakeups of ksoftirqd in case that
++ * the task which is in a softirq disabled section is preempted or blocks.
++ */
++struct softirq_ctrl {
++ local_lock_t lock;
++ int cnt;
++};
++
++static DEFINE_PER_CPU(struct softirq_ctrl, softirq_ctrl) = {
++ .lock = INIT_LOCAL_LOCK(softirq_ctrl.lock),
++};
++
++void __local_bh_disable_ip(unsigned long ip, unsigned int cnt)
++{
++ unsigned long flags;
++ int newcnt;
++
++ WARN_ON_ONCE(in_hardirq());
++
++ /* First entry of a task into a BH disabled section? */
++ if (!current->softirq_disable_cnt) {
++ if (preemptible()) {
++ local_lock(&softirq_ctrl.lock);
++ /* Required to meet the RCU bottomhalf requirements. */
++ rcu_read_lock();
++ } else {
++ DEBUG_LOCKS_WARN_ON(this_cpu_read(softirq_ctrl.cnt));
++ }
++ }
++
++ /*
++ * Track the per CPU softirq disabled state. On RT this is per CPU
++ * state to allow preemption of bottom half disabled sections.
++ */
++ newcnt = __this_cpu_add_return(softirq_ctrl.cnt, cnt);
++ /*
++ * Reflect the result in the task state to prevent recursion on the
++ * local lock and to make softirq_count() & al work.
++ */
++ current->softirq_disable_cnt = newcnt;
++
++ if (IS_ENABLED(CONFIG_TRACE_IRQFLAGS) && newcnt == cnt) {
++ raw_local_irq_save(flags);
++ lockdep_softirqs_off(ip);
++ raw_local_irq_restore(flags);
++ }
++}
++EXPORT_SYMBOL(__local_bh_disable_ip);
++
++static void __local_bh_enable(unsigned int cnt, bool unlock)
++{
++ unsigned long flags;
++ int newcnt;
++
++ DEBUG_LOCKS_WARN_ON(current->softirq_disable_cnt !=
++ this_cpu_read(softirq_ctrl.cnt));
++
++ if (IS_ENABLED(CONFIG_TRACE_IRQFLAGS) && softirq_count() == cnt) {
++ raw_local_irq_save(flags);
++ lockdep_softirqs_on(_RET_IP_);
++ raw_local_irq_restore(flags);
++ }
++
++ newcnt = __this_cpu_sub_return(softirq_ctrl.cnt, cnt);
++ current->softirq_disable_cnt = newcnt;
++
++ if (!newcnt && unlock) {
++ rcu_read_unlock();
++ local_unlock(&softirq_ctrl.lock);
++ }
++}
++
++void __local_bh_enable_ip(unsigned long ip, unsigned int cnt)
++{
++ bool preempt_on = preemptible();
++ unsigned long flags;
++ u32 pending;
++ int curcnt;
++
++ WARN_ON_ONCE(in_irq());
++ lockdep_assert_irqs_enabled();
++
++ local_irq_save(flags);
++ curcnt = __this_cpu_read(softirq_ctrl.cnt);
++
++ /*
++ * If this is not reenabling soft interrupts, no point in trying to
++ * run pending ones.
++ */
++ if (curcnt != cnt)
++ goto out;
++
++ pending = local_softirq_pending();
++ if (!pending || ksoftirqd_running(pending))
++ goto out;
++
++ /*
++ * If this was called from non preemptible context, wake up the
++ * softirq daemon.
++ */
++ if (!preempt_on) {
++ wakeup_softirqd();
++ goto out;
++ }
++
++ /*
++ * Adjust softirq count to SOFTIRQ_OFFSET which makes
++ * in_serving_softirq() become true.
++ */
++ cnt = SOFTIRQ_OFFSET;
++ __local_bh_enable(cnt, false);
++ __do_softirq();
++
++out:
++ __local_bh_enable(cnt, preempt_on);
++ local_irq_restore(flags);
++}
++EXPORT_SYMBOL(__local_bh_enable_ip);
++
++/*
++ * Invoked from ksoftirqd_run() outside of the interrupt disabled section
++ * to acquire the per CPU local lock for reentrancy protection.
++ */
++static inline void ksoftirqd_run_begin(void)
++{
++ __local_bh_disable_ip(_RET_IP_, SOFTIRQ_OFFSET);
++ local_irq_disable();
++}
++
++/* Counterpart to ksoftirqd_run_begin() */
++static inline void ksoftirqd_run_end(void)
++{
++ __local_bh_enable(SOFTIRQ_OFFSET, true);
++ WARN_ON_ONCE(in_interrupt());
++ local_irq_enable();
++}
++
++static inline void softirq_handle_begin(void) { }
++static inline void softirq_handle_end(void) { }
++
++static inline bool should_wake_ksoftirqd(void)
++{
++ return !this_cpu_read(softirq_ctrl.cnt);
++}
++
++static inline void invoke_softirq(void)
++{
++ if (should_wake_ksoftirqd())
++ wakeup_softirqd();
++}
++
++#else /* CONFIG_PREEMPT_RT */
++
++/*
++ * This one is for softirq.c-internal use, where hardirqs are disabled
+ * legitimately:
+ */
++#ifdef CONFIG_TRACE_IRQFLAGS
+ void __local_bh_disable_ip(unsigned long ip, unsigned int cnt)
+ {
+ unsigned long flags;
+@@ -275,6 +445,8 @@ asmlinkage __visible void do_softirq(void)
+ local_irq_restore(flags);
+ }
+
++#endif /* !CONFIG_PREEMPT_RT */
++
+ /*
+ * We restart softirq processing for at most MAX_SOFTIRQ_RESTART times,
+ * but break the loop if need_resched() is set or after 2 ms.
+@@ -379,8 +551,10 @@ asmlinkage __visible void __softirq_entry __do_softirq(void)
+ pending >>= softirq_bit;
+ }
+
+- if (__this_cpu_read(ksoftirqd) == current)
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT) &&
++ __this_cpu_read(ksoftirqd) == current)
+ rcu_softirq_qs();
++
+ local_irq_disable();
+
+ pending = local_softirq_pending();
+--
+2.43.0
+
diff --git a/debian/patches-rt/0150-tick-sched-Prevent-false-positive-softirq-pending-wa.patch b/debian/patches-rt/0150-tick-sched-Prevent-false-positive-softirq-pending-wa.patch
new file mode 100644
index 000000000..179b20d7b
--- /dev/null
+++ b/debian/patches-rt/0150-tick-sched-Prevent-false-positive-softirq-pending-wa.patch
@@ -0,0 +1,84 @@
+From 8f4c53c804fbc30a305bf13376f5748a55ec4944 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:55:57 +0100
+Subject: [PATCH 150/323] tick/sched: Prevent false positive softirq pending
+ warnings on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+On RT a task which has soft interrupts disabled can block on a lock and
+schedule out to idle while soft interrupts are pending. This triggers the
+warning in the NOHZ idle code which complains about going idle with pending
+soft interrupts. But as the task is blocked soft interrupt processing is
+temporarily blocked as well which means that such a warning is a false
+positive.
+
+To prevent that check the per CPU state which indicates that a scheduled
+out task has soft interrupts disabled.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/bottom_half.h | 6 ++++++
+ kernel/softirq.c | 15 +++++++++++++++
+ kernel/time/tick-sched.c | 2 +-
+ 3 files changed, 22 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/bottom_half.h b/include/linux/bottom_half.h
+index e4dd613a070e..eed86eb0a1de 100644
+--- a/include/linux/bottom_half.h
++++ b/include/linux/bottom_half.h
+@@ -32,4 +32,10 @@ static inline void local_bh_enable(void)
+ __local_bh_enable_ip(_THIS_IP_, SOFTIRQ_DISABLE_OFFSET);
+ }
+
++#ifdef CONFIG_PREEMPT_RT
++extern bool local_bh_blocked(void);
++#else
++static inline bool local_bh_blocked(void) { return false; }
++#endif
++
+ #endif /* _LINUX_BH_H */
+diff --git a/kernel/softirq.c b/kernel/softirq.c
+index ed13f6097de8..c9adc5c46248 100644
+--- a/kernel/softirq.c
++++ b/kernel/softirq.c
+@@ -139,6 +139,21 @@ static DEFINE_PER_CPU(struct softirq_ctrl, softirq_ctrl) = {
+ .lock = INIT_LOCAL_LOCK(softirq_ctrl.lock),
+ };
+
++/**
++ * local_bh_blocked() - Check for idle whether BH processing is blocked
++ *
++ * Returns false if the per CPU softirq::cnt is 0 otherwise true.
++ *
++ * This is invoked from the idle task to guard against false positive
++ * softirq pending warnings, which would happen when the task which holds
++ * softirq_ctrl::lock was the only running task on the CPU and blocks on
++ * some other lock.
++ */
++bool local_bh_blocked(void)
++{
++ return __this_cpu_read(softirq_ctrl.cnt) != 0;
++}
++
+ void __local_bh_disable_ip(unsigned long ip, unsigned int cnt)
+ {
+ unsigned long flags;
+diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
+index fc79b04b5947..fb10be8e5e92 100644
+--- a/kernel/time/tick-sched.c
++++ b/kernel/time/tick-sched.c
+@@ -982,7 +982,7 @@ static bool can_stop_idle_tick(int cpu, struct tick_sched *ts)
+ if (unlikely(local_softirq_pending())) {
+ static int ratelimit;
+
+- if (ratelimit < 10 &&
++ if (ratelimit < 10 && !local_bh_blocked() &&
+ (local_softirq_pending() & SOFTIRQ_STOP_IDLE_MASK)) {
+ pr_warn("NOHZ tick-stop error: Non-RCU local softirq work is pending, handler #%02x!!!\n",
+ (unsigned int) local_softirq_pending());
+--
+2.43.0
+
diff --git a/debian/patches-rt/0151-rcu-Prevent-false-positive-softirq-warning-on-RT.patch b/debian/patches-rt/0151-rcu-Prevent-false-positive-softirq-warning-on-RT.patch
new file mode 100644
index 000000000..14d81c8a1
--- /dev/null
+++ b/debian/patches-rt/0151-rcu-Prevent-false-positive-softirq-warning-on-RT.patch
@@ -0,0 +1,35 @@
+From cce7be95962e51a5270439e8c31500ed38123c49 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 9 Mar 2021 09:55:58 +0100
+Subject: [PATCH 151/323] rcu: Prevent false positive softirq warning on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Soft interrupt disabled sections can legitimately be preempted or schedule
+out when blocking on a lock on RT enabled kernels so the RCU preempt check
+warning has to be disabled for RT kernels.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Reviewed-by: Paul E. McKenney <paulmck@kernel.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/rcupdate.h | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
+index ef8d56b18da6..bb9681309e0d 100644
+--- a/include/linux/rcupdate.h
++++ b/include/linux/rcupdate.h
+@@ -338,7 +338,8 @@ static inline void rcu_preempt_sleep_check(void) { }
+ #define rcu_sleep_check() \
+ do { \
+ rcu_preempt_sleep_check(); \
+- RCU_LOCKDEP_WARN(lock_is_held(&rcu_bh_lock_map), \
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT)) \
++ RCU_LOCKDEP_WARN(lock_is_held(&rcu_bh_lock_map), \
+ "Illegal context switch in RCU-bh read-side critical section"); \
+ RCU_LOCKDEP_WARN(lock_is_held(&rcu_sched_lock_map), \
+ "Illegal context switch in RCU-sched read-side critical section"); \
+--
+2.43.0
+
diff --git a/debian/patches-rt/0152-chelsio-cxgb-Replace-the-workqueue-with-threaded-int.patch b/debian/patches-rt/0152-chelsio-cxgb-Replace-the-workqueue-with-threaded-int.patch
new file mode 100644
index 000000000..45fec4e55
--- /dev/null
+++ b/debian/patches-rt/0152-chelsio-cxgb-Replace-the-workqueue-with-threaded-int.patch
@@ -0,0 +1,271 @@
+From a3a5c955eb9767e09f62d7d4c1af2f8f5b0fe565 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 2 Feb 2021 18:01:03 +0100
+Subject: [PATCH 152/323] chelsio: cxgb: Replace the workqueue with threaded
+ interrupt
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The external interrupt (F_PL_INTR_EXT) needs to be handled in a process
+context and this is accomplished by utilizing a workqueue.
+
+The process context can also be provided by a threaded interrupt instead
+of a workqueue. The threaded interrupt can be used later for other
+interrupt related processing which require non-atomic context without
+using yet another workqueue. free_irq() also ensures that the thread is
+done which is currently missing (the worker could continue after the
+module has been removed).
+
+Save pending flags in pending_thread_intr. Use the same mechanism
+to disable F_PL_INTR_EXT as interrupt source like it is used before the
+worker is scheduled. Enable the interrupt again once
+t1_elmer0_ext_intr_handler() is done.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/net/ethernet/chelsio/cxgb/common.h | 5 +--
+ drivers/net/ethernet/chelsio/cxgb/cxgb2.c | 44 ++--------------------
+ drivers/net/ethernet/chelsio/cxgb/sge.c | 33 ++++++++++++++--
+ drivers/net/ethernet/chelsio/cxgb/sge.h | 1 +
+ drivers/net/ethernet/chelsio/cxgb/subr.c | 26 +++++++++----
+ 5 files changed, 55 insertions(+), 54 deletions(-)
+
+diff --git a/drivers/net/ethernet/chelsio/cxgb/common.h b/drivers/net/ethernet/chelsio/cxgb/common.h
+index 6475060649e9..e999a9b9fe6c 100644
+--- a/drivers/net/ethernet/chelsio/cxgb/common.h
++++ b/drivers/net/ethernet/chelsio/cxgb/common.h
+@@ -238,7 +238,6 @@ struct adapter {
+ int msg_enable;
+ u32 mmio_len;
+
+- struct work_struct ext_intr_handler_task;
+ struct adapter_params params;
+
+ /* Terminator modules. */
+@@ -257,6 +256,7 @@ struct adapter {
+
+ /* guards async operations */
+ spinlock_t async_lock ____cacheline_aligned;
++ u32 pending_thread_intr;
+ u32 slow_intr_mask;
+ int t1powersave;
+ };
+@@ -334,8 +334,7 @@ void t1_interrupts_enable(adapter_t *adapter);
+ void t1_interrupts_disable(adapter_t *adapter);
+ void t1_interrupts_clear(adapter_t *adapter);
+ int t1_elmer0_ext_intr_handler(adapter_t *adapter);
+-void t1_elmer0_ext_intr(adapter_t *adapter);
+-int t1_slow_intr_handler(adapter_t *adapter);
++irqreturn_t t1_slow_intr_handler(adapter_t *adapter);
+
+ int t1_link_start(struct cphy *phy, struct cmac *mac, struct link_config *lc);
+ const struct board_info *t1_get_board_info(unsigned int board_id);
+diff --git a/drivers/net/ethernet/chelsio/cxgb/cxgb2.c b/drivers/net/ethernet/chelsio/cxgb/cxgb2.c
+index c6db85fe1629..737c24136e2f 100644
+--- a/drivers/net/ethernet/chelsio/cxgb/cxgb2.c
++++ b/drivers/net/ethernet/chelsio/cxgb/cxgb2.c
+@@ -211,9 +211,10 @@ static int cxgb_up(struct adapter *adapter)
+ t1_interrupts_clear(adapter);
+
+ adapter->params.has_msi = !disable_msi && !pci_enable_msi(adapter->pdev);
+- err = request_irq(adapter->pdev->irq, t1_interrupt,
+- adapter->params.has_msi ? 0 : IRQF_SHARED,
+- adapter->name, adapter);
++ err = request_threaded_irq(adapter->pdev->irq, t1_interrupt,
++ t1_interrupt_thread,
++ adapter->params.has_msi ? 0 : IRQF_SHARED,
++ adapter->name, adapter);
+ if (err) {
+ if (adapter->params.has_msi)
+ pci_disable_msi(adapter->pdev);
+@@ -916,41 +917,6 @@ static void mac_stats_task(struct work_struct *work)
+ spin_unlock(&adapter->work_lock);
+ }
+
+-/*
+- * Processes elmer0 external interrupts in process context.
+- */
+-static void ext_intr_task(struct work_struct *work)
+-{
+- struct adapter *adapter =
+- container_of(work, struct adapter, ext_intr_handler_task);
+-
+- t1_elmer0_ext_intr_handler(adapter);
+-
+- /* Now reenable external interrupts */
+- spin_lock_irq(&adapter->async_lock);
+- adapter->slow_intr_mask |= F_PL_INTR_EXT;
+- writel(F_PL_INTR_EXT, adapter->regs + A_PL_CAUSE);
+- writel(adapter->slow_intr_mask | F_PL_INTR_SGE_DATA,
+- adapter->regs + A_PL_ENABLE);
+- spin_unlock_irq(&adapter->async_lock);
+-}
+-
+-/*
+- * Interrupt-context handler for elmer0 external interrupts.
+- */
+-void t1_elmer0_ext_intr(struct adapter *adapter)
+-{
+- /*
+- * Schedule a task to handle external interrupts as we require
+- * a process context. We disable EXT interrupts in the interim
+- * and let the task reenable them when it's done.
+- */
+- adapter->slow_intr_mask &= ~F_PL_INTR_EXT;
+- writel(adapter->slow_intr_mask | F_PL_INTR_SGE_DATA,
+- adapter->regs + A_PL_ENABLE);
+- schedule_work(&adapter->ext_intr_handler_task);
+-}
+-
+ void t1_fatal_err(struct adapter *adapter)
+ {
+ if (adapter->flags & FULL_INIT_DONE) {
+@@ -1062,8 +1028,6 @@ static int init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
+ spin_lock_init(&adapter->async_lock);
+ spin_lock_init(&adapter->mac_lock);
+
+- INIT_WORK(&adapter->ext_intr_handler_task,
+- ext_intr_task);
+ INIT_DELAYED_WORK(&adapter->stats_update_task,
+ mac_stats_task);
+
+diff --git a/drivers/net/ethernet/chelsio/cxgb/sge.c b/drivers/net/ethernet/chelsio/cxgb/sge.c
+index 2d9c2b5a690a..5aef9ae1ecfe 100644
+--- a/drivers/net/ethernet/chelsio/cxgb/sge.c
++++ b/drivers/net/ethernet/chelsio/cxgb/sge.c
+@@ -1619,11 +1619,38 @@ int t1_poll(struct napi_struct *napi, int budget)
+ return work_done;
+ }
+
++irqreturn_t t1_interrupt_thread(int irq, void *data)
++{
++ struct adapter *adapter = data;
++ u32 pending_thread_intr;
++
++ spin_lock_irq(&adapter->async_lock);
++ pending_thread_intr = adapter->pending_thread_intr;
++ adapter->pending_thread_intr = 0;
++ spin_unlock_irq(&adapter->async_lock);
++
++ if (!pending_thread_intr)
++ return IRQ_NONE;
++
++ if (pending_thread_intr & F_PL_INTR_EXT)
++ t1_elmer0_ext_intr_handler(adapter);
++
++ spin_lock_irq(&adapter->async_lock);
++ adapter->slow_intr_mask |= F_PL_INTR_EXT;
++
++ writel(F_PL_INTR_EXT, adapter->regs + A_PL_CAUSE);
++ writel(adapter->slow_intr_mask | F_PL_INTR_SGE_DATA,
++ adapter->regs + A_PL_ENABLE);
++ spin_unlock_irq(&adapter->async_lock);
++
++ return IRQ_HANDLED;
++}
++
+ irqreturn_t t1_interrupt(int irq, void *data)
+ {
+ struct adapter *adapter = data;
+ struct sge *sge = adapter->sge;
+- int handled;
++ irqreturn_t handled;
+
+ if (likely(responses_pending(adapter))) {
+ writel(F_PL_INTR_SGE_DATA, adapter->regs + A_PL_CAUSE);
+@@ -1645,10 +1672,10 @@ irqreturn_t t1_interrupt(int irq, void *data)
+ handled = t1_slow_intr_handler(adapter);
+ spin_unlock(&adapter->async_lock);
+
+- if (!handled)
++ if (handled == IRQ_NONE)
+ sge->stats.unhandled_irqs++;
+
+- return IRQ_RETVAL(handled != 0);
++ return handled;
+ }
+
+ /*
+diff --git a/drivers/net/ethernet/chelsio/cxgb/sge.h b/drivers/net/ethernet/chelsio/cxgb/sge.h
+index a1ba591b3431..76516d2a8aa9 100644
+--- a/drivers/net/ethernet/chelsio/cxgb/sge.h
++++ b/drivers/net/ethernet/chelsio/cxgb/sge.h
+@@ -74,6 +74,7 @@ struct sge *t1_sge_create(struct adapter *, struct sge_params *);
+ int t1_sge_configure(struct sge *, struct sge_params *);
+ int t1_sge_set_coalesce_params(struct sge *, struct sge_params *);
+ void t1_sge_destroy(struct sge *);
++irqreturn_t t1_interrupt_thread(int irq, void *data);
+ irqreturn_t t1_interrupt(int irq, void *cookie);
+ int t1_poll(struct napi_struct *, int);
+
+diff --git a/drivers/net/ethernet/chelsio/cxgb/subr.c b/drivers/net/ethernet/chelsio/cxgb/subr.c
+index ea0f8741d7cf..d90ad07ff1a4 100644
+--- a/drivers/net/ethernet/chelsio/cxgb/subr.c
++++ b/drivers/net/ethernet/chelsio/cxgb/subr.c
+@@ -210,7 +210,7 @@ static int fpga_phy_intr_handler(adapter_t *adapter)
+ /*
+ * Slow path interrupt handler for FPGAs.
+ */
+-static int fpga_slow_intr(adapter_t *adapter)
++static irqreturn_t fpga_slow_intr(adapter_t *adapter)
+ {
+ u32 cause = readl(adapter->regs + A_PL_CAUSE);
+
+@@ -238,7 +238,7 @@ static int fpga_slow_intr(adapter_t *adapter)
+ if (cause)
+ writel(cause, adapter->regs + A_PL_CAUSE);
+
+- return cause != 0;
++ return cause == 0 ? IRQ_NONE : IRQ_HANDLED;
+ }
+ #endif
+
+@@ -842,13 +842,14 @@ void t1_interrupts_clear(adapter_t* adapter)
+ /*
+ * Slow path interrupt handler for ASICs.
+ */
+-static int asic_slow_intr(adapter_t *adapter)
++static irqreturn_t asic_slow_intr(adapter_t *adapter)
+ {
+ u32 cause = readl(adapter->regs + A_PL_CAUSE);
++ irqreturn_t ret = IRQ_HANDLED;
+
+ cause &= adapter->slow_intr_mask;
+ if (!cause)
+- return 0;
++ return IRQ_NONE;
+ if (cause & F_PL_INTR_SGE_ERR)
+ t1_sge_intr_error_handler(adapter->sge);
+ if (cause & F_PL_INTR_TP)
+@@ -857,16 +858,25 @@ static int asic_slow_intr(adapter_t *adapter)
+ t1_espi_intr_handler(adapter->espi);
+ if (cause & F_PL_INTR_PCIX)
+ t1_pci_intr_handler(adapter);
+- if (cause & F_PL_INTR_EXT)
+- t1_elmer0_ext_intr(adapter);
++ if (cause & F_PL_INTR_EXT) {
++ /* Wake the threaded interrupt to handle external interrupts as
++ * we require a process context. We disable EXT interrupts in
++ * the interim and let the thread reenable them when it's done.
++ */
++ adapter->pending_thread_intr |= F_PL_INTR_EXT;
++ adapter->slow_intr_mask &= ~F_PL_INTR_EXT;
++ writel(adapter->slow_intr_mask | F_PL_INTR_SGE_DATA,
++ adapter->regs + A_PL_ENABLE);
++ ret = IRQ_WAKE_THREAD;
++ }
+
+ /* Clear the interrupts just processed. */
+ writel(cause, adapter->regs + A_PL_CAUSE);
+ readl(adapter->regs + A_PL_CAUSE); /* flush writes */
+- return 1;
++ return ret;
+ }
+
+-int t1_slow_intr_handler(adapter_t *adapter)
++irqreturn_t t1_slow_intr_handler(adapter_t *adapter)
+ {
+ #ifdef CONFIG_CHELSIO_T1_1G
+ if (!t1_is_asic(adapter))
+--
+2.43.0
+
diff --git a/debian/patches-rt/0153-chelsio-cxgb-Disable-the-card-on-error-in-threaded-i.patch b/debian/patches-rt/0153-chelsio-cxgb-Disable-the-card-on-error-in-threaded-i.patch
new file mode 100644
index 000000000..910927009
--- /dev/null
+++ b/debian/patches-rt/0153-chelsio-cxgb-Disable-the-card-on-error-in-threaded-i.patch
@@ -0,0 +1,215 @@
+From 676e60d5a1de49b6188285212b7655ccd463f984 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 2 Feb 2021 18:01:04 +0100
+Subject: [PATCH 153/323] chelsio: cxgb: Disable the card on error in threaded
+ interrupt
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+t1_fatal_err() is invoked from the interrupt handler. The bad part is
+that it invokes (via t1_sge_stop()) del_timer_sync() and tasklet_kill().
+Both functions must not be called from an interrupt because it is
+possible that it will wait for the completion of the timer/tasklet it
+just interrupted.
+
+In case of a fatal error, use t1_interrupts_disable() to disable all
+interrupt sources and then wake the interrupt thread with
+F_PL_INTR_SGE_ERR as pending flag. The threaded-interrupt will stop the
+card via t1_sge_stop() and not re-enable the interrupts again.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/net/ethernet/chelsio/cxgb/common.h | 1 -
+ drivers/net/ethernet/chelsio/cxgb/cxgb2.c | 10 ------
+ drivers/net/ethernet/chelsio/cxgb/sge.c | 20 +++++++++---
+ drivers/net/ethernet/chelsio/cxgb/sge.h | 2 +-
+ drivers/net/ethernet/chelsio/cxgb/subr.c | 38 +++++++++++++++-------
+ 5 files changed, 44 insertions(+), 27 deletions(-)
+
+diff --git a/drivers/net/ethernet/chelsio/cxgb/common.h b/drivers/net/ethernet/chelsio/cxgb/common.h
+index e999a9b9fe6c..0321be77366c 100644
+--- a/drivers/net/ethernet/chelsio/cxgb/common.h
++++ b/drivers/net/ethernet/chelsio/cxgb/common.h
+@@ -346,7 +346,6 @@ int t1_get_board_rev(adapter_t *adapter, const struct board_info *bi,
+ int t1_init_hw_modules(adapter_t *adapter);
+ int t1_init_sw_modules(adapter_t *adapter, const struct board_info *bi);
+ void t1_free_sw_modules(adapter_t *adapter);
+-void t1_fatal_err(adapter_t *adapter);
+ void t1_link_changed(adapter_t *adapter, int port_id);
+ void t1_link_negotiated(adapter_t *adapter, int port_id, int link_stat,
+ int speed, int duplex, int pause);
+diff --git a/drivers/net/ethernet/chelsio/cxgb/cxgb2.c b/drivers/net/ethernet/chelsio/cxgb/cxgb2.c
+index 737c24136e2f..2a28a38da036 100644
+--- a/drivers/net/ethernet/chelsio/cxgb/cxgb2.c
++++ b/drivers/net/ethernet/chelsio/cxgb/cxgb2.c
+@@ -917,16 +917,6 @@ static void mac_stats_task(struct work_struct *work)
+ spin_unlock(&adapter->work_lock);
+ }
+
+-void t1_fatal_err(struct adapter *adapter)
+-{
+- if (adapter->flags & FULL_INIT_DONE) {
+- t1_sge_stop(adapter->sge);
+- t1_interrupts_disable(adapter);
+- }
+- pr_alert("%s: encountered fatal error, operation suspended\n",
+- adapter->name);
+-}
+-
+ static const struct net_device_ops cxgb_netdev_ops = {
+ .ndo_open = cxgb_open,
+ .ndo_stop = cxgb_close,
+diff --git a/drivers/net/ethernet/chelsio/cxgb/sge.c b/drivers/net/ethernet/chelsio/cxgb/sge.c
+index 5aef9ae1ecfe..cda01f22c71c 100644
+--- a/drivers/net/ethernet/chelsio/cxgb/sge.c
++++ b/drivers/net/ethernet/chelsio/cxgb/sge.c
+@@ -940,10 +940,11 @@ void t1_sge_intr_clear(struct sge *sge)
+ /*
+ * SGE 'Error' interrupt handler
+ */
+-int t1_sge_intr_error_handler(struct sge *sge)
++bool t1_sge_intr_error_handler(struct sge *sge)
+ {
+ struct adapter *adapter = sge->adapter;
+ u32 cause = readl(adapter->regs + A_SG_INT_CAUSE);
++ bool wake = false;
+
+ if (adapter->port[0].dev->hw_features & NETIF_F_TSO)
+ cause &= ~F_PACKET_TOO_BIG;
+@@ -967,11 +968,14 @@ int t1_sge_intr_error_handler(struct sge *sge)
+ sge->stats.pkt_mismatch++;
+ pr_alert("%s: SGE packet mismatch\n", adapter->name);
+ }
+- if (cause & SGE_INT_FATAL)
+- t1_fatal_err(adapter);
++ if (cause & SGE_INT_FATAL) {
++ t1_interrupts_disable(adapter);
++ adapter->pending_thread_intr |= F_PL_INTR_SGE_ERR;
++ wake = true;
++ }
+
+ writel(cause, adapter->regs + A_SG_INT_CAUSE);
+- return 0;
++ return wake;
+ }
+
+ const struct sge_intr_counts *t1_sge_get_intr_counts(const struct sge *sge)
+@@ -1635,6 +1639,14 @@ irqreturn_t t1_interrupt_thread(int irq, void *data)
+ if (pending_thread_intr & F_PL_INTR_EXT)
+ t1_elmer0_ext_intr_handler(adapter);
+
++ /* This error is fatal, interrupts remain off */
++ if (pending_thread_intr & F_PL_INTR_SGE_ERR) {
++ pr_alert("%s: encountered fatal error, operation suspended\n",
++ adapter->name);
++ t1_sge_stop(adapter->sge);
++ return IRQ_HANDLED;
++ }
++
+ spin_lock_irq(&adapter->async_lock);
+ adapter->slow_intr_mask |= F_PL_INTR_EXT;
+
+diff --git a/drivers/net/ethernet/chelsio/cxgb/sge.h b/drivers/net/ethernet/chelsio/cxgb/sge.h
+index 76516d2a8aa9..716705b96f26 100644
+--- a/drivers/net/ethernet/chelsio/cxgb/sge.h
++++ b/drivers/net/ethernet/chelsio/cxgb/sge.h
+@@ -82,7 +82,7 @@ netdev_tx_t t1_start_xmit(struct sk_buff *skb, struct net_device *dev);
+ void t1_vlan_mode(struct adapter *adapter, netdev_features_t features);
+ void t1_sge_start(struct sge *);
+ void t1_sge_stop(struct sge *);
+-int t1_sge_intr_error_handler(struct sge *);
++bool t1_sge_intr_error_handler(struct sge *sge);
+ void t1_sge_intr_enable(struct sge *);
+ void t1_sge_intr_disable(struct sge *);
+ void t1_sge_intr_clear(struct sge *);
+diff --git a/drivers/net/ethernet/chelsio/cxgb/subr.c b/drivers/net/ethernet/chelsio/cxgb/subr.c
+index d90ad07ff1a4..310add28fcf5 100644
+--- a/drivers/net/ethernet/chelsio/cxgb/subr.c
++++ b/drivers/net/ethernet/chelsio/cxgb/subr.c
+@@ -170,7 +170,7 @@ void t1_link_changed(adapter_t *adapter, int port_id)
+ t1_link_negotiated(adapter, port_id, link_ok, speed, duplex, fc);
+ }
+
+-static int t1_pci_intr_handler(adapter_t *adapter)
++static bool t1_pci_intr_handler(adapter_t *adapter)
+ {
+ u32 pcix_cause;
+
+@@ -179,9 +179,13 @@ static int t1_pci_intr_handler(adapter_t *adapter)
+ if (pcix_cause) {
+ pci_write_config_dword(adapter->pdev, A_PCICFG_INTR_CAUSE,
+ pcix_cause);
+- t1_fatal_err(adapter); /* PCI errors are fatal */
++ /* PCI errors are fatal */
++ t1_interrupts_disable(adapter);
++ adapter->pending_thread_intr |= F_PL_INTR_SGE_ERR;
++ pr_alert("%s: PCI error encountered.\n", adapter->name);
++ return true;
+ }
+- return 0;
++ return false;
+ }
+
+ #ifdef CONFIG_CHELSIO_T1_1G
+@@ -213,10 +217,13 @@ static int fpga_phy_intr_handler(adapter_t *adapter)
+ static irqreturn_t fpga_slow_intr(adapter_t *adapter)
+ {
+ u32 cause = readl(adapter->regs + A_PL_CAUSE);
++ irqreturn_t ret = IRQ_NONE;
+
+ cause &= ~F_PL_INTR_SGE_DATA;
+- if (cause & F_PL_INTR_SGE_ERR)
+- t1_sge_intr_error_handler(adapter->sge);
++ if (cause & F_PL_INTR_SGE_ERR) {
++ if (t1_sge_intr_error_handler(adapter->sge))
++ ret = IRQ_WAKE_THREAD;
++ }
+
+ if (cause & FPGA_PCIX_INTERRUPT_GMAC)
+ fpga_phy_intr_handler(adapter);
+@@ -231,13 +238,18 @@ static irqreturn_t fpga_slow_intr(adapter_t *adapter)
+ /* Clear TP interrupt */
+ writel(tp_cause, adapter->regs + FPGA_TP_ADDR_INTERRUPT_CAUSE);
+ }
+- if (cause & FPGA_PCIX_INTERRUPT_PCIX)
+- t1_pci_intr_handler(adapter);
++ if (cause & FPGA_PCIX_INTERRUPT_PCIX) {
++ if (t1_pci_intr_handler(adapter))
++ ret = IRQ_WAKE_THREAD;
++ }
+
+ /* Clear the interrupts just processed. */
+ if (cause)
+ writel(cause, adapter->regs + A_PL_CAUSE);
+
++ if (ret != IRQ_NONE)
++ return ret;
++
+ return cause == 0 ? IRQ_NONE : IRQ_HANDLED;
+ }
+ #endif
+@@ -850,14 +862,18 @@ static irqreturn_t asic_slow_intr(adapter_t *adapter)
+ cause &= adapter->slow_intr_mask;
+ if (!cause)
+ return IRQ_NONE;
+- if (cause & F_PL_INTR_SGE_ERR)
+- t1_sge_intr_error_handler(adapter->sge);
++ if (cause & F_PL_INTR_SGE_ERR) {
++ if (t1_sge_intr_error_handler(adapter->sge))
++ ret = IRQ_WAKE_THREAD;
++ }
+ if (cause & F_PL_INTR_TP)
+ t1_tp_intr_handler(adapter->tp);
+ if (cause & F_PL_INTR_ESPI)
+ t1_espi_intr_handler(adapter->espi);
+- if (cause & F_PL_INTR_PCIX)
+- t1_pci_intr_handler(adapter);
++ if (cause & F_PL_INTR_PCIX) {
++ if (t1_pci_intr_handler(adapter))
++ ret = IRQ_WAKE_THREAD;
++ }
+ if (cause & F_PL_INTR_EXT) {
+ /* Wake the threaded interrupt to handle external interrupts as
+ * we require a process context. We disable EXT interrupts in
+--
+2.43.0
+
diff --git a/debian/patches-rt/0154-x86-fpu-Simplify-fpregs_-un-lock.patch b/debian/patches-rt/0154-x86-fpu-Simplify-fpregs_-un-lock.patch
new file mode 100644
index 000000000..1cde7fb8e
--- /dev/null
+++ b/debian/patches-rt/0154-x86-fpu-Simplify-fpregs_-un-lock.patch
@@ -0,0 +1,47 @@
+From 8ca0011428a338becf8c390a74dba375610d693f Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 27 Oct 2020 11:09:50 +0100
+Subject: [PATCH 154/323] x86/fpu: Simplify fpregs_[un]lock()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+There is no point in disabling preemption and then disabling bottom
+halfs.
+
+Just disabling bottom halfs is sufficient as it implicitly disables
+preemption on !RT kernels.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Link: https://lore.kernel.org/r/20201027101349.455380473@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/x86/include/asm/fpu/api.h | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/arch/x86/include/asm/fpu/api.h b/arch/x86/include/asm/fpu/api.h
+index 8b9bfaad6e66..5174c0a640ef 100644
+--- a/arch/x86/include/asm/fpu/api.h
++++ b/arch/x86/include/asm/fpu/api.h
+@@ -40,17 +40,18 @@ static inline void kernel_fpu_begin(void)
+ * A context switch will (and softirq might) save CPU's FPU registers to
+ * fpu->state and set TIF_NEED_FPU_LOAD leaving CPU's FPU registers in
+ * a random state.
++ *
++ * local_bh_disable() protects against both preemption and soft interrupts
++ * on !RT kernels.
+ */
+ static inline void fpregs_lock(void)
+ {
+- preempt_disable();
+ local_bh_disable();
+ }
+
+ static inline void fpregs_unlock(void)
+ {
+ local_bh_enable();
+- preempt_enable();
+ }
+
+ #ifdef CONFIG_X86_DEBUG_FPU
+--
+2.43.0
+
diff --git a/debian/patches-rt/0155-x86-fpu-Make-kernel-FPU-protection-RT-friendly.patch b/debian/patches-rt/0155-x86-fpu-Make-kernel-FPU-protection-RT-friendly.patch
new file mode 100644
index 000000000..f28c1aace
--- /dev/null
+++ b/debian/patches-rt/0155-x86-fpu-Make-kernel-FPU-protection-RT-friendly.patch
@@ -0,0 +1,64 @@
+From f6a993a6144299a8693fa151d042c3997238cd54 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 27 Oct 2020 11:09:51 +0100
+Subject: [PATCH 155/323] x86/fpu: Make kernel FPU protection RT friendly
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Non RT kernels need to protect FPU against preemption and bottom half
+processing. This is achieved by disabling bottom halfs via
+local_bh_disable() which implictly disables preemption.
+
+On RT kernels this protection mechanism is not sufficient because
+local_bh_disable() does not disable preemption. It serializes bottom half
+related processing via a CPU local lock.
+
+As bottom halfs are running always in thread context on RT kernels
+disabling preemption is the proper choice as it implicitly prevents bottom
+half processing.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Link: https://lore.kernel.org/r/20201027101349.588965083@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/x86/include/asm/fpu/api.h | 18 ++++++++++++++++--
+ 1 file changed, 16 insertions(+), 2 deletions(-)
+
+diff --git a/arch/x86/include/asm/fpu/api.h b/arch/x86/include/asm/fpu/api.h
+index 5174c0a640ef..ad2fee785310 100644
+--- a/arch/x86/include/asm/fpu/api.h
++++ b/arch/x86/include/asm/fpu/api.h
+@@ -43,15 +43,29 @@ static inline void kernel_fpu_begin(void)
+ *
+ * local_bh_disable() protects against both preemption and soft interrupts
+ * on !RT kernels.
++ *
++ * On RT kernels local_bh_disable() is not sufficient because it only
++ * serializes soft interrupt related sections via a local lock, but stays
++ * preemptible. Disabling preemption is the right choice here as bottom
++ * half processing is always in thread context on RT kernels so it
++ * implicitly prevents bottom half processing as well.
++ *
++ * Disabling preemption also serializes against kernel_fpu_begin().
+ */
+ static inline void fpregs_lock(void)
+ {
+- local_bh_disable();
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT))
++ local_bh_disable();
++ else
++ preempt_disable();
+ }
+
+ static inline void fpregs_unlock(void)
+ {
+- local_bh_enable();
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT))
++ local_bh_enable();
++ else
++ preempt_enable();
+ }
+
+ #ifdef CONFIG_X86_DEBUG_FPU
+--
+2.43.0
+
diff --git a/debian/patches-rt/0156-locking-rtmutex-Remove-cruft.patch b/debian/patches-rt/0156-locking-rtmutex-Remove-cruft.patch
new file mode 100644
index 000000000..a39953384
--- /dev/null
+++ b/debian/patches-rt/0156-locking-rtmutex-Remove-cruft.patch
@@ -0,0 +1,99 @@
+From 46072fa492b76df5aaf47fea23d280f72d7100a8 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 29 Sep 2020 15:21:17 +0200
+Subject: [PATCH 156/323] locking/rtmutex: Remove cruft
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Most of this is around since the very beginning. I'm not sure if this
+was used while the rtmutex-deadlock-tester was around but today it seems
+to only waste memory:
+- save_state: No users
+- name: Assigned and printed if a dead lock was detected. I'm keeping it
+ but want to point out that lockdep has the same information.
+- file + line: Printed if ::name was NULL. This is only used for
+ in-kernel locks so it ::name shouldn't be NULL and then ::file and
+ ::line isn't used.
+- magic: Assigned to NULL by rt_mutex_destroy().
+
+Remove members of rt_mutex which are not used.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/rtmutex.h | 7 ++-----
+ kernel/locking/rtmutex-debug.c | 7 +------
+ kernel/locking/rtmutex.c | 3 ---
+ kernel/locking/rtmutex_common.h | 1 -
+ 4 files changed, 3 insertions(+), 15 deletions(-)
+
+diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
+index 6fd615a0eea9..16f974a22f51 100644
+--- a/include/linux/rtmutex.h
++++ b/include/linux/rtmutex.h
+@@ -32,10 +32,7 @@ struct rt_mutex {
+ struct rb_root_cached waiters;
+ struct task_struct *owner;
+ #ifdef CONFIG_DEBUG_RT_MUTEXES
+- int save_state;
+- const char *name, *file;
+- int line;
+- void *magic;
++ const char *name;
+ #endif
+ #ifdef CONFIG_DEBUG_LOCK_ALLOC
+ struct lockdep_map dep_map;
+@@ -60,7 +57,7 @@ struct hrtimer_sleeper;
+
+ #ifdef CONFIG_DEBUG_RT_MUTEXES
+ # define __DEBUG_RT_MUTEX_INITIALIZER(mutexname) \
+- , .name = #mutexname, .file = __FILE__, .line = __LINE__
++ , .name = #mutexname
+
+ # define rt_mutex_init(mutex) \
+ do { \
+diff --git a/kernel/locking/rtmutex-debug.c b/kernel/locking/rtmutex-debug.c
+index 36e69100e8e0..7e411b946d4c 100644
+--- a/kernel/locking/rtmutex-debug.c
++++ b/kernel/locking/rtmutex-debug.c
+@@ -42,12 +42,7 @@ static void printk_task(struct task_struct *p)
+
+ static void printk_lock(struct rt_mutex *lock, int print_owner)
+ {
+- if (lock->name)
+- printk(" [%p] {%s}\n",
+- lock, lock->name);
+- else
+- printk(" [%p] {%s:%d}\n",
+- lock, lock->file, lock->line);
++ printk(" [%p] {%s}\n", lock, lock->name);
+
+ if (print_owner && rt_mutex_owner(lock)) {
+ printk(".. ->owner: %p\n", lock->owner);
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index f00dd928fc71..4792fc7abe7d 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -1655,9 +1655,6 @@ void __sched rt_mutex_futex_unlock(struct rt_mutex *lock)
+ void rt_mutex_destroy(struct rt_mutex *lock)
+ {
+ WARN_ON(rt_mutex_is_locked(lock));
+-#ifdef CONFIG_DEBUG_RT_MUTEXES
+- lock->magic = NULL;
+-#endif
+ }
+ EXPORT_SYMBOL_GPL(rt_mutex_destroy);
+
+diff --git a/kernel/locking/rtmutex_common.h b/kernel/locking/rtmutex_common.h
+index ca6fb489007b..e6913103d7ff 100644
+--- a/kernel/locking/rtmutex_common.h
++++ b/kernel/locking/rtmutex_common.h
+@@ -30,7 +30,6 @@ struct rt_mutex_waiter {
+ struct task_struct *task;
+ struct rt_mutex *lock;
+ #ifdef CONFIG_DEBUG_RT_MUTEXES
+- unsigned long ip;
+ struct pid *deadlock_task_pid;
+ struct rt_mutex *deadlock_lock;
+ #endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0157-locking-rtmutex-Remove-output-from-deadlock-detector.patch b/debian/patches-rt/0157-locking-rtmutex-Remove-output-from-deadlock-detector.patch
new file mode 100644
index 000000000..6f0878b80
--- /dev/null
+++ b/debian/patches-rt/0157-locking-rtmutex-Remove-output-from-deadlock-detector.patch
@@ -0,0 +1,312 @@
+From e9b488ea6cb82e796f8d331b037cb7de76d15657 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 29 Sep 2020 16:05:11 +0200
+Subject: [PATCH 157/323] locking/rtmutex: Remove output from deadlock
+ detector.
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+In commit
+ f5694788ad8da ("rt_mutex: Add lockdep annotations")
+
+rtmutex gained lockdep annotation for rt_mutex_lock() and and related
+functions.
+lockdep will see the locking order and may complain about a deadlock
+before rtmutex' own mechanism gets a chance to detect it.
+The rtmutex deadlock detector will only complain locks with the
+RT_MUTEX_MIN_CHAINWALK and a waiter must be pending. That means it
+works only for in-kernel locks because the futex interface always uses
+RT_MUTEX_FULL_CHAINWALK.
+The requirement for an active waiter limits the detector to actual
+deadlocks and makes it possible to report potential deadlocks like
+lockdep does.
+It looks like lockdep is better suited for reporting deadlocks.
+
+Remove rtmutex' debug print on deadlock detection.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/rtmutex.h | 7 ---
+ kernel/locking/rtmutex-debug.c | 97 ---------------------------------
+ kernel/locking/rtmutex-debug.h | 11 ----
+ kernel/locking/rtmutex.c | 9 ---
+ kernel/locking/rtmutex.h | 7 ---
+ kernel/locking/rtmutex_common.h | 4 --
+ 6 files changed, 135 deletions(-)
+
+diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
+index 16f974a22f51..88a0ba806066 100644
+--- a/include/linux/rtmutex.h
++++ b/include/linux/rtmutex.h
+@@ -31,9 +31,6 @@ struct rt_mutex {
+ raw_spinlock_t wait_lock;
+ struct rb_root_cached waiters;
+ struct task_struct *owner;
+-#ifdef CONFIG_DEBUG_RT_MUTEXES
+- const char *name;
+-#endif
+ #ifdef CONFIG_DEBUG_LOCK_ALLOC
+ struct lockdep_map dep_map;
+ #endif
+@@ -56,8 +53,6 @@ struct hrtimer_sleeper;
+ #endif
+
+ #ifdef CONFIG_DEBUG_RT_MUTEXES
+-# define __DEBUG_RT_MUTEX_INITIALIZER(mutexname) \
+- , .name = #mutexname
+
+ # define rt_mutex_init(mutex) \
+ do { \
+@@ -67,7 +62,6 @@ do { \
+
+ extern void rt_mutex_debug_task_free(struct task_struct *tsk);
+ #else
+-# define __DEBUG_RT_MUTEX_INITIALIZER(mutexname)
+ # define rt_mutex_init(mutex) __rt_mutex_init(mutex, NULL, NULL)
+ # define rt_mutex_debug_task_free(t) do { } while (0)
+ #endif
+@@ -83,7 +77,6 @@ do { \
+ { .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(mutexname.wait_lock) \
+ , .waiters = RB_ROOT_CACHED \
+ , .owner = NULL \
+- __DEBUG_RT_MUTEX_INITIALIZER(mutexname) \
+ __DEP_MAP_RT_MUTEX_INITIALIZER(mutexname)}
+
+ #define DEFINE_RT_MUTEX(mutexname) \
+diff --git a/kernel/locking/rtmutex-debug.c b/kernel/locking/rtmutex-debug.c
+index 7e411b946d4c..fb150100335f 100644
+--- a/kernel/locking/rtmutex-debug.c
++++ b/kernel/locking/rtmutex-debug.c
+@@ -32,105 +32,12 @@
+
+ #include "rtmutex_common.h"
+
+-static void printk_task(struct task_struct *p)
+-{
+- if (p)
+- printk("%16s:%5d [%p, %3d]", p->comm, task_pid_nr(p), p, p->prio);
+- else
+- printk("<none>");
+-}
+-
+-static void printk_lock(struct rt_mutex *lock, int print_owner)
+-{
+- printk(" [%p] {%s}\n", lock, lock->name);
+-
+- if (print_owner && rt_mutex_owner(lock)) {
+- printk(".. ->owner: %p\n", lock->owner);
+- printk(".. held by: ");
+- printk_task(rt_mutex_owner(lock));
+- printk("\n");
+- }
+-}
+-
+ void rt_mutex_debug_task_free(struct task_struct *task)
+ {
+ DEBUG_LOCKS_WARN_ON(!RB_EMPTY_ROOT(&task->pi_waiters.rb_root));
+ DEBUG_LOCKS_WARN_ON(task->pi_blocked_on);
+ }
+
+-/*
+- * We fill out the fields in the waiter to store the information about
+- * the deadlock. We print when we return. act_waiter can be NULL in
+- * case of a remove waiter operation.
+- */
+-void debug_rt_mutex_deadlock(enum rtmutex_chainwalk chwalk,
+- struct rt_mutex_waiter *act_waiter,
+- struct rt_mutex *lock)
+-{
+- struct task_struct *task;
+-
+- if (!debug_locks || chwalk == RT_MUTEX_FULL_CHAINWALK || !act_waiter)
+- return;
+-
+- task = rt_mutex_owner(act_waiter->lock);
+- if (task && task != current) {
+- act_waiter->deadlock_task_pid = get_pid(task_pid(task));
+- act_waiter->deadlock_lock = lock;
+- }
+-}
+-
+-void debug_rt_mutex_print_deadlock(struct rt_mutex_waiter *waiter)
+-{
+- struct task_struct *task;
+-
+- if (!waiter->deadlock_lock || !debug_locks)
+- return;
+-
+- rcu_read_lock();
+- task = pid_task(waiter->deadlock_task_pid, PIDTYPE_PID);
+- if (!task) {
+- rcu_read_unlock();
+- return;
+- }
+-
+- if (!debug_locks_off()) {
+- rcu_read_unlock();
+- return;
+- }
+-
+- pr_warn("\n");
+- pr_warn("============================================\n");
+- pr_warn("WARNING: circular locking deadlock detected!\n");
+- pr_warn("%s\n", print_tainted());
+- pr_warn("--------------------------------------------\n");
+- printk("%s/%d is deadlocking current task %s/%d\n\n",
+- task->comm, task_pid_nr(task),
+- current->comm, task_pid_nr(current));
+-
+- printk("\n1) %s/%d is trying to acquire this lock:\n",
+- current->comm, task_pid_nr(current));
+- printk_lock(waiter->lock, 1);
+-
+- printk("\n2) %s/%d is blocked on this lock:\n",
+- task->comm, task_pid_nr(task));
+- printk_lock(waiter->deadlock_lock, 1);
+-
+- debug_show_held_locks(current);
+- debug_show_held_locks(task);
+-
+- printk("\n%s/%d's [blocked] stackdump:\n\n",
+- task->comm, task_pid_nr(task));
+- show_stack(task, NULL, KERN_DEFAULT);
+- printk("\n%s/%d's [current] stackdump:\n\n",
+- current->comm, task_pid_nr(current));
+- dump_stack();
+- debug_show_all_locks();
+- rcu_read_unlock();
+-
+- printk("[ turning off deadlock detection."
+- "Please report this trace. ]\n\n");
+-}
+-
+ void debug_rt_mutex_lock(struct rt_mutex *lock)
+ {
+ }
+@@ -153,12 +60,10 @@ void debug_rt_mutex_proxy_unlock(struct rt_mutex *lock)
+ void debug_rt_mutex_init_waiter(struct rt_mutex_waiter *waiter)
+ {
+ memset(waiter, 0x11, sizeof(*waiter));
+- waiter->deadlock_task_pid = NULL;
+ }
+
+ void debug_rt_mutex_free_waiter(struct rt_mutex_waiter *waiter)
+ {
+- put_pid(waiter->deadlock_task_pid);
+ memset(waiter, 0x22, sizeof(*waiter));
+ }
+
+@@ -168,10 +73,8 @@ void debug_rt_mutex_init(struct rt_mutex *lock, const char *name, struct lock_cl
+ * Make sure we are not reinitializing a held lock:
+ */
+ debug_check_no_locks_freed((void *)lock, sizeof(*lock));
+- lock->name = name;
+
+ #ifdef CONFIG_DEBUG_LOCK_ALLOC
+ lockdep_init_map(&lock->dep_map, name, key, 0);
+ #endif
+ }
+-
+diff --git a/kernel/locking/rtmutex-debug.h b/kernel/locking/rtmutex-debug.h
+index fc549713bba3..659e93e256c6 100644
+--- a/kernel/locking/rtmutex-debug.h
++++ b/kernel/locking/rtmutex-debug.h
+@@ -18,20 +18,9 @@ extern void debug_rt_mutex_unlock(struct rt_mutex *lock);
+ extern void debug_rt_mutex_proxy_lock(struct rt_mutex *lock,
+ struct task_struct *powner);
+ extern void debug_rt_mutex_proxy_unlock(struct rt_mutex *lock);
+-extern void debug_rt_mutex_deadlock(enum rtmutex_chainwalk chwalk,
+- struct rt_mutex_waiter *waiter,
+- struct rt_mutex *lock);
+-extern void debug_rt_mutex_print_deadlock(struct rt_mutex_waiter *waiter);
+-# define debug_rt_mutex_reset_waiter(w) \
+- do { (w)->deadlock_lock = NULL; } while (0)
+
+ static inline bool debug_rt_mutex_detect_deadlock(struct rt_mutex_waiter *waiter,
+ enum rtmutex_chainwalk walk)
+ {
+ return (waiter != NULL);
+ }
+-
+-static inline void rt_mutex_print_deadlock(struct rt_mutex_waiter *w)
+-{
+- debug_rt_mutex_print_deadlock(w);
+-}
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index 4792fc7abe7d..9aa4d545020a 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -597,7 +597,6 @@ static int rt_mutex_adjust_prio_chain(struct task_struct *task,
+ * walk, we detected a deadlock.
+ */
+ if (lock == orig_lock || rt_mutex_owner(lock) == top_task) {
+- debug_rt_mutex_deadlock(chwalk, orig_waiter, lock);
+ raw_spin_unlock(&lock->wait_lock);
+ ret = -EDEADLK;
+ goto out_unlock_pi;
+@@ -1189,8 +1188,6 @@ __rt_mutex_slowlock(struct rt_mutex *lock, int state,
+
+ raw_spin_unlock_irq(&lock->wait_lock);
+
+- debug_rt_mutex_print_deadlock(waiter);
+-
+ schedule();
+
+ raw_spin_lock_irq(&lock->wait_lock);
+@@ -1211,10 +1208,6 @@ static void rt_mutex_handle_deadlock(int res, int detect_deadlock,
+ if (res != -EDEADLOCK || detect_deadlock)
+ return;
+
+- /*
+- * Yell lowdly and stop the task right here.
+- */
+- rt_mutex_print_deadlock(w);
+ while (1) {
+ set_current_state(TASK_INTERRUPTIBLE);
+ schedule();
+@@ -1763,8 +1756,6 @@ int __rt_mutex_start_proxy_lock(struct rt_mutex *lock,
+ ret = 0;
+ }
+
+- debug_rt_mutex_print_deadlock(waiter);
+-
+ return ret;
+ }
+
+diff --git a/kernel/locking/rtmutex.h b/kernel/locking/rtmutex.h
+index 732f96abf462..338ccd29119a 100644
+--- a/kernel/locking/rtmutex.h
++++ b/kernel/locking/rtmutex.h
+@@ -19,15 +19,8 @@
+ #define debug_rt_mutex_proxy_unlock(l) do { } while (0)
+ #define debug_rt_mutex_unlock(l) do { } while (0)
+ #define debug_rt_mutex_init(m, n, k) do { } while (0)
+-#define debug_rt_mutex_deadlock(d, a ,l) do { } while (0)
+-#define debug_rt_mutex_print_deadlock(w) do { } while (0)
+ #define debug_rt_mutex_reset_waiter(w) do { } while (0)
+
+-static inline void rt_mutex_print_deadlock(struct rt_mutex_waiter *w)
+-{
+- WARN(1, "rtmutex deadlock detected\n");
+-}
+-
+ static inline bool debug_rt_mutex_detect_deadlock(struct rt_mutex_waiter *w,
+ enum rtmutex_chainwalk walk)
+ {
+diff --git a/kernel/locking/rtmutex_common.h b/kernel/locking/rtmutex_common.h
+index e6913103d7ff..b1455dc2366f 100644
+--- a/kernel/locking/rtmutex_common.h
++++ b/kernel/locking/rtmutex_common.h
+@@ -29,10 +29,6 @@ struct rt_mutex_waiter {
+ struct rb_node pi_tree_entry;
+ struct task_struct *task;
+ struct rt_mutex *lock;
+-#ifdef CONFIG_DEBUG_RT_MUTEXES
+- struct pid *deadlock_task_pid;
+- struct rt_mutex *deadlock_lock;
+-#endif
+ int prio;
+ u64 deadline;
+ };
+--
+2.43.0
+
diff --git a/debian/patches-rt/0158-locking-rtmutex-Move-rt_mutex_init-outside-of-CONFIG.patch b/debian/patches-rt/0158-locking-rtmutex-Move-rt_mutex_init-outside-of-CONFIG.patch
new file mode 100644
index 000000000..91e3d2b55
--- /dev/null
+++ b/debian/patches-rt/0158-locking-rtmutex-Move-rt_mutex_init-outside-of-CONFIG.patch
@@ -0,0 +1,60 @@
+From e25aa4319847e6a6769075a1f38c98d8cf3246f9 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 29 Sep 2020 16:32:49 +0200
+Subject: [PATCH 158/323] locking/rtmutex: Move rt_mutex_init() outside of
+ CONFIG_DEBUG_RT_MUTEXES
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+rt_mutex_init() only initializes lockdep if CONFIG_DEBUG_RT_MUTEXES is
+enabled. The static initializer (DEFINE_RT_MUTEX) does not have such a
+restriction.
+
+Move rt_mutex_init() outside of CONFIG_DEBUG_RT_MUTEXES.
+Move the remaining functions in this CONFIG_DEBUG_RT_MUTEXES block to
+the upper block.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/rtmutex.h | 12 +++---------
+ 1 file changed, 3 insertions(+), 9 deletions(-)
+
+diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
+index 88a0ba806066..2dc10b582d4a 100644
+--- a/include/linux/rtmutex.h
++++ b/include/linux/rtmutex.h
+@@ -43,6 +43,7 @@ struct hrtimer_sleeper;
+ extern int rt_mutex_debug_check_no_locks_freed(const void *from,
+ unsigned long len);
+ extern void rt_mutex_debug_check_no_locks_held(struct task_struct *task);
++ extern void rt_mutex_debug_task_free(struct task_struct *tsk);
+ #else
+ static inline int rt_mutex_debug_check_no_locks_freed(const void *from,
+ unsigned long len)
+@@ -50,22 +51,15 @@ struct hrtimer_sleeper;
+ return 0;
+ }
+ # define rt_mutex_debug_check_no_locks_held(task) do { } while (0)
++# define rt_mutex_debug_task_free(t) do { } while (0)
+ #endif
+
+-#ifdef CONFIG_DEBUG_RT_MUTEXES
+-
+-# define rt_mutex_init(mutex) \
++#define rt_mutex_init(mutex) \
+ do { \
+ static struct lock_class_key __key; \
+ __rt_mutex_init(mutex, __func__, &__key); \
+ } while (0)
+
+- extern void rt_mutex_debug_task_free(struct task_struct *tsk);
+-#else
+-# define rt_mutex_init(mutex) __rt_mutex_init(mutex, NULL, NULL)
+-# define rt_mutex_debug_task_free(t) do { } while (0)
+-#endif
+-
+ #ifdef CONFIG_DEBUG_LOCK_ALLOC
+ #define __DEP_MAP_RT_MUTEX_INITIALIZER(mutexname) \
+ , .dep_map = { .name = #mutexname }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0159-locking-rtmutex-Remove-rt_mutex_timed_lock.patch b/debian/patches-rt/0159-locking-rtmutex-Remove-rt_mutex_timed_lock.patch
new file mode 100644
index 000000000..5573d0e56
--- /dev/null
+++ b/debian/patches-rt/0159-locking-rtmutex-Remove-rt_mutex_timed_lock.patch
@@ -0,0 +1,98 @@
+From 6ec5055da1da31b64ab24ba9ff1739d05e46bb7f Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 7 Oct 2020 12:11:33 +0200
+Subject: [PATCH 159/323] locking/rtmutex: Remove rt_mutex_timed_lock()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+rt_mutex_timed_lock() has no callers since commit
+ c051b21f71d1f ("rtmutex: Confine deadlock logic to futex")
+
+Remove rt_mutex_timed_lock().
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/rtmutex.h | 3 ---
+ kernel/locking/rtmutex.c | 46 ----------------------------------------
+ 2 files changed, 49 deletions(-)
+
+diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
+index 2dc10b582d4a..243fabc2c85f 100644
+--- a/include/linux/rtmutex.h
++++ b/include/linux/rtmutex.h
+@@ -99,9 +99,6 @@ extern void rt_mutex_lock(struct rt_mutex *lock);
+ #endif
+
+ extern int rt_mutex_lock_interruptible(struct rt_mutex *lock);
+-extern int rt_mutex_timed_lock(struct rt_mutex *lock,
+- struct hrtimer_sleeper *timeout);
+-
+ extern int rt_mutex_trylock(struct rt_mutex *lock);
+
+ extern void rt_mutex_unlock(struct rt_mutex *lock);
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index 9aa4d545020a..b5d5c570a8ac 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -1405,21 +1405,6 @@ rt_mutex_fastlock(struct rt_mutex *lock, int state,
+ return slowfn(lock, state, NULL, RT_MUTEX_MIN_CHAINWALK);
+ }
+
+-static inline int
+-rt_mutex_timed_fastlock(struct rt_mutex *lock, int state,
+- struct hrtimer_sleeper *timeout,
+- enum rtmutex_chainwalk chwalk,
+- int (*slowfn)(struct rt_mutex *lock, int state,
+- struct hrtimer_sleeper *timeout,
+- enum rtmutex_chainwalk chwalk))
+-{
+- if (chwalk == RT_MUTEX_MIN_CHAINWALK &&
+- likely(rt_mutex_cmpxchg_acquire(lock, NULL, current)))
+- return 0;
+-
+- return slowfn(lock, state, timeout, chwalk);
+-}
+-
+ static inline int
+ rt_mutex_fasttrylock(struct rt_mutex *lock,
+ int (*slowfn)(struct rt_mutex *lock))
+@@ -1527,37 +1512,6 @@ int __sched __rt_mutex_futex_trylock(struct rt_mutex *lock)
+ return __rt_mutex_slowtrylock(lock);
+ }
+
+-/**
+- * rt_mutex_timed_lock - lock a rt_mutex interruptible
+- * the timeout structure is provided
+- * by the caller
+- *
+- * @lock: the rt_mutex to be locked
+- * @timeout: timeout structure or NULL (no timeout)
+- *
+- * Returns:
+- * 0 on success
+- * -EINTR when interrupted by a signal
+- * -ETIMEDOUT when the timeout expired
+- */
+-int
+-rt_mutex_timed_lock(struct rt_mutex *lock, struct hrtimer_sleeper *timeout)
+-{
+- int ret;
+-
+- might_sleep();
+-
+- mutex_acquire(&lock->dep_map, 0, 0, _RET_IP_);
+- ret = rt_mutex_timed_fastlock(lock, TASK_INTERRUPTIBLE, timeout,
+- RT_MUTEX_MIN_CHAINWALK,
+- rt_mutex_slowlock);
+- if (ret)
+- mutex_release(&lock->dep_map, _RET_IP_);
+-
+- return ret;
+-}
+-EXPORT_SYMBOL_GPL(rt_mutex_timed_lock);
+-
+ /**
+ * rt_mutex_trylock - try to lock a rt_mutex
+ *
+--
+2.43.0
+
diff --git a/debian/patches-rt/0160-locking-rtmutex-Handle-the-various-new-futex-race-co.patch b/debian/patches-rt/0160-locking-rtmutex-Handle-the-various-new-futex-race-co.patch
new file mode 100644
index 000000000..3e02c70df
--- /dev/null
+++ b/debian/patches-rt/0160-locking-rtmutex-Handle-the-various-new-futex-race-co.patch
@@ -0,0 +1,255 @@
+From faad74e290468f037de33422cb1799c05477242d Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 10 Jun 2011 11:04:15 +0200
+Subject: [PATCH 160/323] locking/rtmutex: Handle the various new futex race
+ conditions
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+RT opens a few new interesting race conditions in the rtmutex/futex
+combo due to futex hash bucket lock being a 'sleeping' spinlock and
+therefor not disabling preemption.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ kernel/futex/core.c | 77 ++++++++++++++++++++++++++-------
+ kernel/locking/rtmutex.c | 36 ++++++++++++---
+ kernel/locking/rtmutex_common.h | 2 +
+ 3 files changed, 94 insertions(+), 21 deletions(-)
+
+diff --git a/kernel/futex/core.c b/kernel/futex/core.c
+index cde0ca876b93..706cd446ec71 100644
+--- a/kernel/futex/core.c
++++ b/kernel/futex/core.c
+@@ -2165,6 +2165,16 @@ static int futex_requeue(u32 __user *uaddr1, unsigned int flags,
+ */
+ requeue_pi_wake_futex(this, &key2, hb2);
+ continue;
++ } else if (ret == -EAGAIN) {
++ /*
++ * Waiter was woken by timeout or
++ * signal and has set pi_blocked_on to
++ * PI_WAKEUP_INPROGRESS before we
++ * tried to enqueue it on the rtmutex.
++ */
++ this->pi_state = NULL;
++ put_pi_state(pi_state);
++ continue;
+ } else if (ret) {
+ /*
+ * rt_mutex_start_proxy_lock() detected a
+@@ -3182,7 +3192,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
+ {
+ struct hrtimer_sleeper timeout, *to;
+ struct rt_mutex_waiter rt_waiter;
+- struct futex_hash_bucket *hb;
++ struct futex_hash_bucket *hb, *hb2;
+ union futex_key key2 = FUTEX_KEY_INIT;
+ struct futex_q q = futex_q_init;
+ int res, ret;
+@@ -3234,20 +3244,55 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
+ /* Queue the futex_q, drop the hb lock, wait for wakeup. */
+ futex_wait_queue_me(hb, &q, to);
+
+- spin_lock(&hb->lock);
+- ret = handle_early_requeue_pi_wakeup(hb, &q, &key2, to);
+- spin_unlock(&hb->lock);
+- if (ret)
+- goto out;
++ /*
++ * On RT we must avoid races with requeue and trying to block
++ * on two mutexes (hb->lock and uaddr2's rtmutex) by
++ * serializing access to pi_blocked_on with pi_lock.
++ */
++ raw_spin_lock_irq(&current->pi_lock);
++ if (current->pi_blocked_on) {
++ /*
++ * We have been requeued or are in the process of
++ * being requeued.
++ */
++ raw_spin_unlock_irq(&current->pi_lock);
++ } else {
++ /*
++ * Setting pi_blocked_on to PI_WAKEUP_INPROGRESS
++ * prevents a concurrent requeue from moving us to the
++ * uaddr2 rtmutex. After that we can safely acquire
++ * (and possibly block on) hb->lock.
++ */
++ current->pi_blocked_on = PI_WAKEUP_INPROGRESS;
++ raw_spin_unlock_irq(&current->pi_lock);
++
++ spin_lock(&hb->lock);
++
++ /*
++ * Clean up pi_blocked_on. We might leak it otherwise
++ * when we succeeded with the hb->lock in the fast
++ * path.
++ */
++ raw_spin_lock_irq(&current->pi_lock);
++ current->pi_blocked_on = NULL;
++ raw_spin_unlock_irq(&current->pi_lock);
++
++ ret = handle_early_requeue_pi_wakeup(hb, &q, &key2, to);
++ spin_unlock(&hb->lock);
++ if (ret)
++ goto out;
++ }
+
+ /*
+- * In order for us to be here, we know our q.key == key2, and since
+- * we took the hb->lock above, we also know that futex_requeue() has
+- * completed and we no longer have to concern ourselves with a wakeup
+- * race with the atomic proxy lock acquisition by the requeue code. The
+- * futex_requeue dropped our key1 reference and incremented our key2
+- * reference count.
++ * In order to be here, we have either been requeued, are in
++ * the process of being requeued, or requeue successfully
++ * acquired uaddr2 on our behalf. If pi_blocked_on was
++ * non-null above, we may be racing with a requeue. Do not
++ * rely on q->lock_ptr to be hb2->lock until after blocking on
++ * hb->lock or hb2->lock. The futex_requeue dropped our key1
++ * reference and incremented our key2 reference count.
+ */
++ hb2 = hash_futex(&key2);
+
+ /* Check if the requeue code acquired the second futex for us. */
+ if (!q.rt_waiter) {
+@@ -3256,14 +3301,15 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
+ * did a lock-steal - fix up the PI-state in that case.
+ */
+ if (q.pi_state && (q.pi_state->owner != current)) {
+- spin_lock(q.lock_ptr);
++ spin_lock(&hb2->lock);
++ BUG_ON(&hb2->lock != q.lock_ptr);
+ ret = fixup_pi_state_owner(uaddr2, &q, current);
+ /*
+ * Drop the reference to the pi state which
+ * the requeue_pi() code acquired for us.
+ */
+ put_pi_state(q.pi_state);
+- spin_unlock(q.lock_ptr);
++ spin_unlock(&hb2->lock);
+ /*
+ * Adjust the return value. It's either -EFAULT or
+ * success (1) but the caller expects 0 for success.
+@@ -3282,7 +3328,8 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
+ pi_mutex = &q.pi_state->pi_mutex;
+ ret = rt_mutex_wait_proxy_lock(pi_mutex, to, &rt_waiter);
+
+- spin_lock(q.lock_ptr);
++ spin_lock(&hb2->lock);
++ BUG_ON(&hb2->lock != q.lock_ptr);
+ if (ret && !rt_mutex_cleanup_proxy_lock(pi_mutex, &rt_waiter))
+ ret = 0;
+
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index b5d5c570a8ac..2ef5a6eb95da 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -136,6 +136,11 @@ static void fixup_rt_mutex_waiters(struct rt_mutex *lock)
+ WRITE_ONCE(*p, owner & ~RT_MUTEX_HAS_WAITERS);
+ }
+
++static int rt_mutex_real_waiter(struct rt_mutex_waiter *waiter)
++{
++ return waiter && waiter != PI_WAKEUP_INPROGRESS;
++}
++
+ /*
+ * We can speed up the acquire/release, if there's no debugging state to be
+ * set up.
+@@ -378,7 +383,8 @@ int max_lock_depth = 1024;
+
+ static inline struct rt_mutex *task_blocked_on_lock(struct task_struct *p)
+ {
+- return p->pi_blocked_on ? p->pi_blocked_on->lock : NULL;
++ return rt_mutex_real_waiter(p->pi_blocked_on) ?
++ p->pi_blocked_on->lock : NULL;
+ }
+
+ /*
+@@ -514,7 +520,7 @@ static int rt_mutex_adjust_prio_chain(struct task_struct *task,
+ * reached or the state of the chain has changed while we
+ * dropped the locks.
+ */
+- if (!waiter)
++ if (!rt_mutex_real_waiter(waiter))
+ goto out_unlock_pi;
+
+ /*
+@@ -947,6 +953,22 @@ static int task_blocks_on_rt_mutex(struct rt_mutex *lock,
+ return -EDEADLK;
+
+ raw_spin_lock(&task->pi_lock);
++ /*
++ * In the case of futex requeue PI, this will be a proxy
++ * lock. The task will wake unaware that it is enqueueed on
++ * this lock. Avoid blocking on two locks and corrupting
++ * pi_blocked_on via the PI_WAKEUP_INPROGRESS
++ * flag. futex_wait_requeue_pi() sets this when it wakes up
++ * before requeue (due to a signal or timeout). Do not enqueue
++ * the task if PI_WAKEUP_INPROGRESS is set.
++ */
++ if (task != current && task->pi_blocked_on == PI_WAKEUP_INPROGRESS) {
++ raw_spin_unlock(&task->pi_lock);
++ return -EAGAIN;
++ }
++
++ BUG_ON(rt_mutex_real_waiter(task->pi_blocked_on));
++
+ waiter->task = task;
+ waiter->lock = lock;
+ waiter->prio = task->prio;
+@@ -970,7 +992,7 @@ static int task_blocks_on_rt_mutex(struct rt_mutex *lock,
+ rt_mutex_enqueue_pi(owner, waiter);
+
+ rt_mutex_adjust_prio(owner);
+- if (owner->pi_blocked_on)
++ if (rt_mutex_real_waiter(owner->pi_blocked_on))
+ chain_walk = 1;
+ } else if (rt_mutex_cond_detect_deadlock(waiter, chwalk)) {
+ chain_walk = 1;
+@@ -1066,7 +1088,7 @@ static void remove_waiter(struct rt_mutex *lock,
+ {
+ bool is_top_waiter = (waiter == rt_mutex_top_waiter(lock));
+ struct task_struct *owner = rt_mutex_owner(lock);
+- struct rt_mutex *next_lock;
++ struct rt_mutex *next_lock = NULL;
+
+ lockdep_assert_held(&lock->wait_lock);
+
+@@ -1092,7 +1114,8 @@ static void remove_waiter(struct rt_mutex *lock,
+ rt_mutex_adjust_prio(owner);
+
+ /* Store the lock on which owner is blocked or NULL */
+- next_lock = task_blocked_on_lock(owner);
++ if (rt_mutex_real_waiter(owner->pi_blocked_on))
++ next_lock = task_blocked_on_lock(owner);
+
+ raw_spin_unlock(&owner->pi_lock);
+
+@@ -1128,7 +1151,8 @@ void rt_mutex_adjust_pi(struct task_struct *task)
+ raw_spin_lock_irqsave(&task->pi_lock, flags);
+
+ waiter = task->pi_blocked_on;
+- if (!waiter || rt_mutex_waiter_equal(waiter, task_to_waiter(task))) {
++ if (!rt_mutex_real_waiter(waiter) ||
++ rt_mutex_waiter_equal(waiter, task_to_waiter(task))) {
+ raw_spin_unlock_irqrestore(&task->pi_lock, flags);
+ return;
+ }
+diff --git a/kernel/locking/rtmutex_common.h b/kernel/locking/rtmutex_common.h
+index b1455dc2366f..096b16cfb096 100644
+--- a/kernel/locking/rtmutex_common.h
++++ b/kernel/locking/rtmutex_common.h
+@@ -125,6 +125,8 @@ enum rtmutex_chainwalk {
+ /*
+ * PI-futex support (proxy locking functions, etc.):
+ */
++#define PI_WAKEUP_INPROGRESS ((struct rt_mutex_waiter *) 1)
++
+ extern struct task_struct *rt_mutex_next_owner(struct rt_mutex *lock);
+ extern void rt_mutex_init_proxy_locked(struct rt_mutex *lock,
+ struct task_struct *proxy_owner);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0161-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch b/debian/patches-rt/0161-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch
new file mode 100644
index 000000000..bab95baf2
--- /dev/null
+++ b/debian/patches-rt/0161-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch
@@ -0,0 +1,118 @@
+From 787b0032cdfc388293dcde2c4bc3a2c40b6d9cf2 Mon Sep 17 00:00:00 2001
+From: Steven Rostedt <rostedt@goodmis.org>
+Date: Tue, 14 Jul 2015 14:26:34 +0200
+Subject: [PATCH 161/323] futex: Fix bug on when a requeued RT task times out
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Requeue with timeout causes a bug with PREEMPT_RT.
+
+The bug comes from a timed out condition.
+
+ TASK 1 TASK 2
+ ------ ------
+ futex_wait_requeue_pi()
+ futex_wait_queue_me()
+ <timed out>
+
+ double_lock_hb();
+
+ raw_spin_lock(pi_lock);
+ if (current->pi_blocked_on) {
+ } else {
+ current->pi_blocked_on = PI_WAKE_INPROGRESS;
+ run_spin_unlock(pi_lock);
+ spin_lock(hb->lock); <-- blocked!
+
+ plist_for_each_entry_safe(this) {
+ rt_mutex_start_proxy_lock();
+ task_blocks_on_rt_mutex();
+ BUG_ON(task->pi_blocked_on)!!!!
+
+The BUG_ON() actually has a check for PI_WAKE_INPROGRESS, but the
+problem is that, after TASK 1 sets PI_WAKE_INPROGRESS, it then tries to
+grab the hb->lock, which it fails to do so. As the hb->lock is a mutex,
+it will block and set the "pi_blocked_on" to the hb->lock.
+
+When TASK 2 goes to requeue it, the check for PI_WAKE_INPROGESS fails
+because the task1's pi_blocked_on is no longer set to that, but instead,
+set to the hb->lock.
+
+The fix:
+
+When calling rt_mutex_start_proxy_lock() a check is made to see
+if the proxy tasks pi_blocked_on is set. If so, exit out early.
+Otherwise set it to a new flag PI_REQUEUE_INPROGRESS, which notifies
+the proxy task that it is being requeued, and will handle things
+appropriately.
+
+Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ kernel/locking/rtmutex.c | 31 ++++++++++++++++++++++++++++++-
+ kernel/locking/rtmutex_common.h | 1 +
+ 2 files changed, 31 insertions(+), 1 deletion(-)
+
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index 2ef5a6eb95da..d8755d5ef227 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -138,7 +138,8 @@ static void fixup_rt_mutex_waiters(struct rt_mutex *lock)
+
+ static int rt_mutex_real_waiter(struct rt_mutex_waiter *waiter)
+ {
+- return waiter && waiter != PI_WAKEUP_INPROGRESS;
++ return waiter && waiter != PI_WAKEUP_INPROGRESS &&
++ waiter != PI_REQUEUE_INPROGRESS;
+ }
+
+ /*
+@@ -1720,6 +1721,34 @@ int __rt_mutex_start_proxy_lock(struct rt_mutex *lock,
+ if (try_to_take_rt_mutex(lock, task, NULL))
+ return 1;
+
++#ifdef CONFIG_PREEMPT_RT
++ /*
++ * In PREEMPT_RT there's an added race.
++ * If the task, that we are about to requeue, times out,
++ * it can set the PI_WAKEUP_INPROGRESS. This tells the requeue
++ * to skip this task. But right after the task sets
++ * its pi_blocked_on to PI_WAKEUP_INPROGRESS it can then
++ * block on the spin_lock(&hb->lock), which in RT is an rtmutex.
++ * This will replace the PI_WAKEUP_INPROGRESS with the actual
++ * lock that it blocks on. We *must not* place this task
++ * on this proxy lock in that case.
++ *
++ * To prevent this race, we first take the task's pi_lock
++ * and check if it has updated its pi_blocked_on. If it has,
++ * we assume that it woke up and we return -EAGAIN.
++ * Otherwise, we set the task's pi_blocked_on to
++ * PI_REQUEUE_INPROGRESS, so that if the task is waking up
++ * it will know that we are in the process of requeuing it.
++ */
++ raw_spin_lock(&task->pi_lock);
++ if (task->pi_blocked_on) {
++ raw_spin_unlock(&task->pi_lock);
++ return -EAGAIN;
++ }
++ task->pi_blocked_on = PI_REQUEUE_INPROGRESS;
++ raw_spin_unlock(&task->pi_lock);
++#endif
++
+ /* We enforce deadlock detection for futexes */
+ ret = task_blocks_on_rt_mutex(lock, waiter, task,
+ RT_MUTEX_FULL_CHAINWALK);
+diff --git a/kernel/locking/rtmutex_common.h b/kernel/locking/rtmutex_common.h
+index 096b16cfb096..37cd6b3bf6f4 100644
+--- a/kernel/locking/rtmutex_common.h
++++ b/kernel/locking/rtmutex_common.h
+@@ -126,6 +126,7 @@ enum rtmutex_chainwalk {
+ * PI-futex support (proxy locking functions, etc.):
+ */
+ #define PI_WAKEUP_INPROGRESS ((struct rt_mutex_waiter *) 1)
++#define PI_REQUEUE_INPROGRESS ((struct rt_mutex_waiter *) 2)
+
+ extern struct task_struct *rt_mutex_next_owner(struct rt_mutex *lock);
+ extern void rt_mutex_init_proxy_locked(struct rt_mutex *lock,
+--
+2.43.0
+
diff --git a/debian/patches-rt/0162-locking-rtmutex-Make-lock_killable-work.patch b/debian/patches-rt/0162-locking-rtmutex-Make-lock_killable-work.patch
new file mode 100644
index 000000000..aebd5f60e
--- /dev/null
+++ b/debian/patches-rt/0162-locking-rtmutex-Make-lock_killable-work.patch
@@ -0,0 +1,50 @@
+From 09e10e723c3bc6ceb0d1b64e0a6b3b9e2ec52225 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Sat, 1 Apr 2017 12:50:59 +0200
+Subject: [PATCH 162/323] locking/rtmutex: Make lock_killable work
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Locking an rt mutex killable does not work because signal handling is
+restricted to TASK_INTERRUPTIBLE.
+
+Use signal_pending_state() unconditionally.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/locking/rtmutex.c | 19 +++++++------------
+ 1 file changed, 7 insertions(+), 12 deletions(-)
+
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index d8755d5ef227..c3f3c23fefef 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -1197,18 +1197,13 @@ __rt_mutex_slowlock(struct rt_mutex *lock, int state,
+ if (try_to_take_rt_mutex(lock, current, waiter))
+ break;
+
+- /*
+- * TASK_INTERRUPTIBLE checks for signals and
+- * timeout. Ignored otherwise.
+- */
+- if (likely(state == TASK_INTERRUPTIBLE)) {
+- /* Signal pending? */
+- if (signal_pending(current))
+- ret = -EINTR;
+- if (timeout && !timeout->task)
+- ret = -ETIMEDOUT;
+- if (ret)
+- break;
++ if (timeout && !timeout->task) {
++ ret = -ETIMEDOUT;
++ break;
++ }
++ if (signal_pending_state(state, current)) {
++ ret = -EINTR;
++ break;
+ }
+
+ raw_spin_unlock_irq(&lock->wait_lock);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0163-locking-spinlock-Split-the-lock-types-header.patch b/debian/patches-rt/0163-locking-spinlock-Split-the-lock-types-header.patch
new file mode 100644
index 000000000..a28543235
--- /dev/null
+++ b/debian/patches-rt/0163-locking-spinlock-Split-the-lock-types-header.patch
@@ -0,0 +1,253 @@
+From 79fca819370ecec3ce47fe9cb5f70efbacb613ad Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Wed, 29 Jun 2011 19:34:01 +0200
+Subject: [PATCH 163/323] locking/spinlock: Split the lock types header
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Split raw_spinlock into its own file and the remaining spinlock_t into
+its own non-RT header. The non-RT header will be replaced later by sleeping
+spinlocks.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/rwlock_types.h | 4 ++
+ include/linux/spinlock_types.h | 87 +----------------------------
+ include/linux/spinlock_types_nort.h | 39 +++++++++++++
+ include/linux/spinlock_types_raw.h | 65 +++++++++++++++++++++
+ 4 files changed, 110 insertions(+), 85 deletions(-)
+ create mode 100644 include/linux/spinlock_types_nort.h
+ create mode 100644 include/linux/spinlock_types_raw.h
+
+diff --git a/include/linux/rwlock_types.h b/include/linux/rwlock_types.h
+index 3bd03e18061c..0ad226b5d8fd 100644
+--- a/include/linux/rwlock_types.h
++++ b/include/linux/rwlock_types.h
+@@ -1,6 +1,10 @@
+ #ifndef __LINUX_RWLOCK_TYPES_H
+ #define __LINUX_RWLOCK_TYPES_H
+
++#if !defined(__LINUX_SPINLOCK_TYPES_H)
++# error "Do not include directly, include spinlock_types.h"
++#endif
++
+ /*
+ * include/linux/rwlock_types.h - generic rwlock type definitions
+ * and initializers
+diff --git a/include/linux/spinlock_types.h b/include/linux/spinlock_types.h
+index b981caafe8bf..5c8664d57fb8 100644
+--- a/include/linux/spinlock_types.h
++++ b/include/linux/spinlock_types.h
+@@ -9,92 +9,9 @@
+ * Released under the General Public License (GPL).
+ */
+
+-#if defined(CONFIG_SMP)
+-# include <asm/spinlock_types.h>
+-#else
+-# include <linux/spinlock_types_up.h>
+-#endif
++#include <linux/spinlock_types_raw.h>
+
+-#include <linux/lockdep_types.h>
+-
+-typedef struct raw_spinlock {
+- arch_spinlock_t raw_lock;
+-#ifdef CONFIG_DEBUG_SPINLOCK
+- unsigned int magic, owner_cpu;
+- void *owner;
+-#endif
+-#ifdef CONFIG_DEBUG_LOCK_ALLOC
+- struct lockdep_map dep_map;
+-#endif
+-} raw_spinlock_t;
+-
+-#define SPINLOCK_MAGIC 0xdead4ead
+-
+-#define SPINLOCK_OWNER_INIT ((void *)-1L)
+-
+-#ifdef CONFIG_DEBUG_LOCK_ALLOC
+-# define RAW_SPIN_DEP_MAP_INIT(lockname) \
+- .dep_map = { \
+- .name = #lockname, \
+- .wait_type_inner = LD_WAIT_SPIN, \
+- }
+-# define SPIN_DEP_MAP_INIT(lockname) \
+- .dep_map = { \
+- .name = #lockname, \
+- .wait_type_inner = LD_WAIT_CONFIG, \
+- }
+-#else
+-# define RAW_SPIN_DEP_MAP_INIT(lockname)
+-# define SPIN_DEP_MAP_INIT(lockname)
+-#endif
+-
+-#ifdef CONFIG_DEBUG_SPINLOCK
+-# define SPIN_DEBUG_INIT(lockname) \
+- .magic = SPINLOCK_MAGIC, \
+- .owner_cpu = -1, \
+- .owner = SPINLOCK_OWNER_INIT,
+-#else
+-# define SPIN_DEBUG_INIT(lockname)
+-#endif
+-
+-#define __RAW_SPIN_LOCK_INITIALIZER(lockname) \
+- { \
+- .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
+- SPIN_DEBUG_INIT(lockname) \
+- RAW_SPIN_DEP_MAP_INIT(lockname) }
+-
+-#define __RAW_SPIN_LOCK_UNLOCKED(lockname) \
+- (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
+-
+-#define DEFINE_RAW_SPINLOCK(x) raw_spinlock_t x = __RAW_SPIN_LOCK_UNLOCKED(x)
+-
+-typedef struct spinlock {
+- union {
+- struct raw_spinlock rlock;
+-
+-#ifdef CONFIG_DEBUG_LOCK_ALLOC
+-# define LOCK_PADSIZE (offsetof(struct raw_spinlock, dep_map))
+- struct {
+- u8 __padding[LOCK_PADSIZE];
+- struct lockdep_map dep_map;
+- };
+-#endif
+- };
+-} spinlock_t;
+-
+-#define ___SPIN_LOCK_INITIALIZER(lockname) \
+- { \
+- .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
+- SPIN_DEBUG_INIT(lockname) \
+- SPIN_DEP_MAP_INIT(lockname) }
+-
+-#define __SPIN_LOCK_INITIALIZER(lockname) \
+- { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
+-
+-#define __SPIN_LOCK_UNLOCKED(lockname) \
+- (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
+-
+-#define DEFINE_SPINLOCK(x) spinlock_t x = __SPIN_LOCK_UNLOCKED(x)
++#include <linux/spinlock_types_nort.h>
+
+ #include <linux/rwlock_types.h>
+
+diff --git a/include/linux/spinlock_types_nort.h b/include/linux/spinlock_types_nort.h
+new file mode 100644
+index 000000000000..e4549f0dd197
+--- /dev/null
++++ b/include/linux/spinlock_types_nort.h
+@@ -0,0 +1,39 @@
++#ifndef __LINUX_SPINLOCK_TYPES_NORT_H
++#define __LINUX_SPINLOCK_TYPES_NORT_H
++
++#ifndef __LINUX_SPINLOCK_TYPES_H
++#error "Do not include directly. Include spinlock_types.h instead"
++#endif
++
++/*
++ * The non RT version maps spinlocks to raw_spinlocks
++ */
++typedef struct spinlock {
++ union {
++ struct raw_spinlock rlock;
++
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++# define LOCK_PADSIZE (offsetof(struct raw_spinlock, dep_map))
++ struct {
++ u8 __padding[LOCK_PADSIZE];
++ struct lockdep_map dep_map;
++ };
++#endif
++ };
++} spinlock_t;
++
++#define ___SPIN_LOCK_INITIALIZER(lockname) \
++{ \
++ .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
++ SPIN_DEBUG_INIT(lockname) \
++ SPIN_DEP_MAP_INIT(lockname) }
++
++#define __SPIN_LOCK_INITIALIZER(lockname) \
++ { { .rlock = ___SPIN_LOCK_INITIALIZER(lockname) } }
++
++#define __SPIN_LOCK_UNLOCKED(lockname) \
++ (spinlock_t) __SPIN_LOCK_INITIALIZER(lockname)
++
++#define DEFINE_SPINLOCK(x) spinlock_t x = __SPIN_LOCK_UNLOCKED(x)
++
++#endif
+diff --git a/include/linux/spinlock_types_raw.h b/include/linux/spinlock_types_raw.h
+new file mode 100644
+index 000000000000..1d4a180e983d
+--- /dev/null
++++ b/include/linux/spinlock_types_raw.h
+@@ -0,0 +1,65 @@
++#ifndef __LINUX_SPINLOCK_TYPES_RAW_H
++#define __LINUX_SPINLOCK_TYPES_RAW_H
++
++#include <linux/types.h>
++
++#if defined(CONFIG_SMP)
++# include <asm/spinlock_types.h>
++#else
++# include <linux/spinlock_types_up.h>
++#endif
++
++#include <linux/lockdep_types.h>
++
++typedef struct raw_spinlock {
++ arch_spinlock_t raw_lock;
++#ifdef CONFIG_DEBUG_SPINLOCK
++ unsigned int magic, owner_cpu;
++ void *owner;
++#endif
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++ struct lockdep_map dep_map;
++#endif
++} raw_spinlock_t;
++
++#define SPINLOCK_MAGIC 0xdead4ead
++
++#define SPINLOCK_OWNER_INIT ((void *)-1L)
++
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++# define RAW_SPIN_DEP_MAP_INIT(lockname) \
++ .dep_map = { \
++ .name = #lockname, \
++ .wait_type_inner = LD_WAIT_SPIN, \
++ }
++# define SPIN_DEP_MAP_INIT(lockname) \
++ .dep_map = { \
++ .name = #lockname, \
++ .wait_type_inner = LD_WAIT_CONFIG, \
++ }
++#else
++# define RAW_SPIN_DEP_MAP_INIT(lockname)
++# define SPIN_DEP_MAP_INIT(lockname)
++#endif
++
++#ifdef CONFIG_DEBUG_SPINLOCK
++# define SPIN_DEBUG_INIT(lockname) \
++ .magic = SPINLOCK_MAGIC, \
++ .owner_cpu = -1, \
++ .owner = SPINLOCK_OWNER_INIT,
++#else
++# define SPIN_DEBUG_INIT(lockname)
++#endif
++
++#define __RAW_SPIN_LOCK_INITIALIZER(lockname) \
++{ \
++ .raw_lock = __ARCH_SPIN_LOCK_UNLOCKED, \
++ SPIN_DEBUG_INIT(lockname) \
++ RAW_SPIN_DEP_MAP_INIT(lockname) }
++
++#define __RAW_SPIN_LOCK_UNLOCKED(lockname) \
++ (raw_spinlock_t) __RAW_SPIN_LOCK_INITIALIZER(lockname)
++
++#define DEFINE_RAW_SPINLOCK(x) raw_spinlock_t x = __RAW_SPIN_LOCK_UNLOCKED(x)
++
++#endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0164-locking-rtmutex-Avoid-include-hell.patch b/debian/patches-rt/0164-locking-rtmutex-Avoid-include-hell.patch
new file mode 100644
index 000000000..09d1bf4dd
--- /dev/null
+++ b/debian/patches-rt/0164-locking-rtmutex-Avoid-include-hell.patch
@@ -0,0 +1,30 @@
+From 1b45f1cea53e6a886ba8bfab1c7617c32c66555d Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Wed, 29 Jun 2011 20:06:39 +0200
+Subject: [PATCH 164/323] locking/rtmutex: Avoid include hell
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Include only the required raw types. This avoids pulling in the
+complete spinlock header which in turn requires rtmutex.h at some point.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/rtmutex.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
+index 243fabc2c85f..add1dab27df5 100644
+--- a/include/linux/rtmutex.h
++++ b/include/linux/rtmutex.h
+@@ -15,7 +15,7 @@
+
+ #include <linux/linkage.h>
+ #include <linux/rbtree.h>
+-#include <linux/spinlock_types.h>
++#include <linux/spinlock_types_raw.h>
+
+ extern int max_lock_depth; /* for sysctl */
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0165-lockdep-Reduce-header-files-in-debug_locks.h.patch b/debian/patches-rt/0165-lockdep-Reduce-header-files-in-debug_locks.h.patch
new file mode 100644
index 000000000..bfe1d5ecd
--- /dev/null
+++ b/debian/patches-rt/0165-lockdep-Reduce-header-files-in-debug_locks.h.patch
@@ -0,0 +1,33 @@
+From 740bc44f8756ed7c76a697de3eb3eae130c2de77 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 14 Aug 2020 16:55:25 +0200
+Subject: [PATCH 165/323] lockdep: Reduce header files in debug_locks.h
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The inclusion of printk.h leads to circular dependency if spinlock_t is
+based on rt_mutex.
+
+Include only atomic.h (xchg()) and cache.h (__read_mostly).
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/debug_locks.h | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/include/linux/debug_locks.h b/include/linux/debug_locks.h
+index edb5c186b0b7..3f49e65169c6 100644
+--- a/include/linux/debug_locks.h
++++ b/include/linux/debug_locks.h
+@@ -3,8 +3,7 @@
+ #define __LINUX_DEBUG_LOCKING_H
+
+ #include <linux/atomic.h>
+-#include <linux/bug.h>
+-#include <linux/printk.h>
++#include <linux/cache.h>
+
+ struct task_struct;
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0166-locking-split-out-the-rbtree-definition.patch b/debian/patches-rt/0166-locking-split-out-the-rbtree-definition.patch
new file mode 100644
index 000000000..d8189ef50
--- /dev/null
+++ b/debian/patches-rt/0166-locking-split-out-the-rbtree-definition.patch
@@ -0,0 +1,120 @@
+From b9604fd91b7d02c92ddb504c330e1793f0694318 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 14 Aug 2020 17:08:41 +0200
+Subject: [PATCH 166/323] locking: split out the rbtree definition
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+rtmutex.h needs the definition for rb_root_cached. By including kernel.h
+we will get to spinlock.h which requires rtmutex.h again.
+
+Split out the required struct definition and move it into its own header
+file which can be included by rtmutex.h
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/rbtree.h | 27 +--------------------------
+ include/linux/rbtree_type.h | 31 +++++++++++++++++++++++++++++++
+ include/linux/rtmutex.h | 2 +-
+ 3 files changed, 33 insertions(+), 27 deletions(-)
+ create mode 100644 include/linux/rbtree_type.h
+
+diff --git a/include/linux/rbtree.h b/include/linux/rbtree.h
+index d7db17996322..c33b0e16d04b 100644
+--- a/include/linux/rbtree.h
++++ b/include/linux/rbtree.h
+@@ -19,19 +19,9 @@
+
+ #include <linux/kernel.h>
+ #include <linux/stddef.h>
++#include <linux/rbtree_type.h>
+ #include <linux/rcupdate.h>
+
+-struct rb_node {
+- unsigned long __rb_parent_color;
+- struct rb_node *rb_right;
+- struct rb_node *rb_left;
+-} __attribute__((aligned(sizeof(long))));
+- /* The alignment might seem pointless, but allegedly CRIS needs it */
+-
+-struct rb_root {
+- struct rb_node *rb_node;
+-};
+-
+ #define rb_parent(r) ((struct rb_node *)((r)->__rb_parent_color & ~3))
+
+ #define RB_ROOT (struct rb_root) { NULL, }
+@@ -112,21 +102,6 @@ static inline void rb_link_node_rcu(struct rb_node *node, struct rb_node *parent
+ typeof(*pos), field); 1; }); \
+ pos = n)
+
+-/*
+- * Leftmost-cached rbtrees.
+- *
+- * We do not cache the rightmost node based on footprint
+- * size vs number of potential users that could benefit
+- * from O(1) rb_last(). Just not worth it, users that want
+- * this feature can always implement the logic explicitly.
+- * Furthermore, users that want to cache both pointers may
+- * find it a bit asymmetric, but that's ok.
+- */
+-struct rb_root_cached {
+- struct rb_root rb_root;
+- struct rb_node *rb_leftmost;
+-};
+-
+ #define RB_ROOT_CACHED (struct rb_root_cached) { {NULL, }, NULL }
+
+ /* Same as rb_first(), but O(1) */
+diff --git a/include/linux/rbtree_type.h b/include/linux/rbtree_type.h
+new file mode 100644
+index 000000000000..77a89dd2c7c6
+--- /dev/null
++++ b/include/linux/rbtree_type.h
+@@ -0,0 +1,31 @@
++/* SPDX-License-Identifier: GPL-2.0-or-later */
++#ifndef _LINUX_RBTREE_TYPE_H
++#define _LINUX_RBTREE_TYPE_H
++
++struct rb_node {
++ unsigned long __rb_parent_color;
++ struct rb_node *rb_right;
++ struct rb_node *rb_left;
++} __attribute__((aligned(sizeof(long))));
++/* The alignment might seem pointless, but allegedly CRIS needs it */
++
++struct rb_root {
++ struct rb_node *rb_node;
++};
++
++/*
++ * Leftmost-cached rbtrees.
++ *
++ * We do not cache the rightmost node based on footprint
++ * size vs number of potential users that could benefit
++ * from O(1) rb_last(). Just not worth it, users that want
++ * this feature can always implement the logic explicitly.
++ * Furthermore, users that want to cache both pointers may
++ * find it a bit asymmetric, but that's ok.
++ */
++struct rb_root_cached {
++ struct rb_root rb_root;
++ struct rb_node *rb_leftmost;
++};
++
++#endif
+diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
+index add1dab27df5..b828b938c876 100644
+--- a/include/linux/rtmutex.h
++++ b/include/linux/rtmutex.h
+@@ -14,7 +14,7 @@
+ #define __LINUX_RT_MUTEX_H
+
+ #include <linux/linkage.h>
+-#include <linux/rbtree.h>
++#include <linux/rbtree_type.h>
+ #include <linux/spinlock_types_raw.h>
+
+ extern int max_lock_depth; /* for sysctl */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0167-locking-rtmutex-Provide-rt_mutex_slowlock_locked.patch b/debian/patches-rt/0167-locking-rtmutex-Provide-rt_mutex_slowlock_locked.patch
new file mode 100644
index 000000000..125846fe5
--- /dev/null
+++ b/debian/patches-rt/0167-locking-rtmutex-Provide-rt_mutex_slowlock_locked.patch
@@ -0,0 +1,145 @@
+From dbd55916b6a3efb4b812322d7502b174b4cceb69 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 12 Oct 2017 16:14:22 +0200
+Subject: [PATCH 167/323] locking/rtmutex: Provide rt_mutex_slowlock_locked()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+This is the inner-part of rt_mutex_slowlock(), required for rwsem-rt.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/locking/rtmutex.c | 67 +++++++++++++++++++--------------
+ kernel/locking/rtmutex_common.h | 7 ++++
+ 2 files changed, 45 insertions(+), 29 deletions(-)
+
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index c3f3c23fefef..395a3e8b2463 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -1234,35 +1234,16 @@ static void rt_mutex_handle_deadlock(int res, int detect_deadlock,
+ }
+ }
+
+-/*
+- * Slow path lock function:
+- */
+-static int __sched
+-rt_mutex_slowlock(struct rt_mutex *lock, int state,
+- struct hrtimer_sleeper *timeout,
+- enum rtmutex_chainwalk chwalk)
++int __sched rt_mutex_slowlock_locked(struct rt_mutex *lock, int state,
++ struct hrtimer_sleeper *timeout,
++ enum rtmutex_chainwalk chwalk,
++ struct rt_mutex_waiter *waiter)
+ {
+- struct rt_mutex_waiter waiter;
+- unsigned long flags;
+- int ret = 0;
+-
+- rt_mutex_init_waiter(&waiter);
+-
+- /*
+- * Technically we could use raw_spin_[un]lock_irq() here, but this can
+- * be called in early boot if the cmpxchg() fast path is disabled
+- * (debug, no architecture support). In this case we will acquire the
+- * rtmutex with lock->wait_lock held. But we cannot unconditionally
+- * enable interrupts in that early boot case. So we need to use the
+- * irqsave/restore variants.
+- */
+- raw_spin_lock_irqsave(&lock->wait_lock, flags);
++ int ret;
+
+ /* Try to acquire the lock again: */
+- if (try_to_take_rt_mutex(lock, current, NULL)) {
+- raw_spin_unlock_irqrestore(&lock->wait_lock, flags);
++ if (try_to_take_rt_mutex(lock, current, NULL))
+ return 0;
+- }
+
+ set_current_state(state);
+
+@@ -1270,16 +1251,16 @@ rt_mutex_slowlock(struct rt_mutex *lock, int state,
+ if (unlikely(timeout))
+ hrtimer_start_expires(&timeout->timer, HRTIMER_MODE_ABS);
+
+- ret = task_blocks_on_rt_mutex(lock, &waiter, current, chwalk);
++ ret = task_blocks_on_rt_mutex(lock, waiter, current, chwalk);
+
+ if (likely(!ret))
+ /* sleep on the mutex */
+- ret = __rt_mutex_slowlock(lock, state, timeout, &waiter);
++ ret = __rt_mutex_slowlock(lock, state, timeout, waiter);
+
+ if (unlikely(ret)) {
+ __set_current_state(TASK_RUNNING);
+- remove_waiter(lock, &waiter);
+- rt_mutex_handle_deadlock(ret, chwalk, &waiter);
++ remove_waiter(lock, waiter);
++ rt_mutex_handle_deadlock(ret, chwalk, waiter);
+ }
+
+ /*
+@@ -1287,6 +1268,34 @@ rt_mutex_slowlock(struct rt_mutex *lock, int state,
+ * unconditionally. We might have to fix that up.
+ */
+ fixup_rt_mutex_waiters(lock);
++ return ret;
++}
++
++/*
++ * Slow path lock function:
++ */
++static int __sched
++rt_mutex_slowlock(struct rt_mutex *lock, int state,
++ struct hrtimer_sleeper *timeout,
++ enum rtmutex_chainwalk chwalk)
++{
++ struct rt_mutex_waiter waiter;
++ unsigned long flags;
++ int ret = 0;
++
++ rt_mutex_init_waiter(&waiter);
++
++ /*
++ * Technically we could use raw_spin_[un]lock_irq() here, but this can
++ * be called in early boot if the cmpxchg() fast path is disabled
++ * (debug, no architecture support). In this case we will acquire the
++ * rtmutex with lock->wait_lock held. But we cannot unconditionally
++ * enable interrupts in that early boot case. So we need to use the
++ * irqsave/restore variants.
++ */
++ raw_spin_lock_irqsave(&lock->wait_lock, flags);
++
++ ret = rt_mutex_slowlock_locked(lock, state, timeout, chwalk, &waiter);
+
+ raw_spin_unlock_irqrestore(&lock->wait_lock, flags);
+
+diff --git a/kernel/locking/rtmutex_common.h b/kernel/locking/rtmutex_common.h
+index 37cd6b3bf6f4..b5a2affa59d5 100644
+--- a/kernel/locking/rtmutex_common.h
++++ b/kernel/locking/rtmutex_common.h
+@@ -15,6 +15,7 @@
+
+ #include <linux/rtmutex.h>
+ #include <linux/sched/wake_q.h>
++#include <linux/sched/debug.h>
+
+ /*
+ * This is the control structure for tasks blocked on a rt_mutex,
+@@ -153,6 +154,12 @@ extern bool __rt_mutex_futex_unlock(struct rt_mutex *lock,
+ struct wake_q_head *wqh);
+
+ extern void rt_mutex_postunlock(struct wake_q_head *wake_q);
++/* RW semaphore special interface */
++
++int __sched rt_mutex_slowlock_locked(struct rt_mutex *lock, int state,
++ struct hrtimer_sleeper *timeout,
++ enum rtmutex_chainwalk chwalk,
++ struct rt_mutex_waiter *waiter);
+
+ #ifdef CONFIG_DEBUG_RT_MUTEXES
+ # include "rtmutex-debug.h"
+--
+2.43.0
+
diff --git a/debian/patches-rt/0168-locking-rtmutex-export-lockdep-less-version-of-rt_mu.patch b/debian/patches-rt/0168-locking-rtmutex-export-lockdep-less-version-of-rt_mu.patch
new file mode 100644
index 000000000..6978baba3
--- /dev/null
+++ b/debian/patches-rt/0168-locking-rtmutex-export-lockdep-less-version-of-rt_mu.patch
@@ -0,0 +1,130 @@
+From 0472803e0c929a5b0c4cb02a1e667d745e12fc51 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 12 Oct 2017 16:36:39 +0200
+Subject: [PATCH 168/323] locking/rtmutex: export lockdep-less version of
+ rt_mutex's lock, trylock and unlock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Required for lock implementation ontop of rtmutex.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/locking/rtmutex.c | 54 +++++++++++++++++++++++----------
+ kernel/locking/rtmutex_common.h | 3 ++
+ 2 files changed, 41 insertions(+), 16 deletions(-)
+
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index 395a3e8b2463..40ae934c6caa 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -1469,12 +1469,33 @@ rt_mutex_fastunlock(struct rt_mutex *lock,
+ rt_mutex_postunlock(&wake_q);
+ }
+
+-static inline void __rt_mutex_lock(struct rt_mutex *lock, unsigned int subclass)
++int __sched __rt_mutex_lock_state(struct rt_mutex *lock, int state)
+ {
+ might_sleep();
++ return rt_mutex_fastlock(lock, state, rt_mutex_slowlock);
++}
++
++/**
++ * rt_mutex_lock_state - lock a rt_mutex with a given state
++ *
++ * @lock: The rt_mutex to be locked
++ * @state: The state to set when blocking on the rt_mutex
++ */
++static inline int __sched rt_mutex_lock_state(struct rt_mutex *lock,
++ unsigned int subclass, int state)
++{
++ int ret;
+
+ mutex_acquire(&lock->dep_map, subclass, 0, _RET_IP_);
+- rt_mutex_fastlock(lock, TASK_UNINTERRUPTIBLE, rt_mutex_slowlock);
++ ret = __rt_mutex_lock_state(lock, state);
++ if (ret)
++ mutex_release(&lock->dep_map, _RET_IP_);
++ return ret;
++}
++
++static inline void __rt_mutex_lock(struct rt_mutex *lock, unsigned int subclass)
++{
++ rt_mutex_lock_state(lock, subclass, TASK_UNINTERRUPTIBLE);
+ }
+
+ #ifdef CONFIG_DEBUG_LOCK_ALLOC
+@@ -1515,16 +1536,7 @@ EXPORT_SYMBOL_GPL(rt_mutex_lock);
+ */
+ int __sched rt_mutex_lock_interruptible(struct rt_mutex *lock)
+ {
+- int ret;
+-
+- might_sleep();
+-
+- mutex_acquire(&lock->dep_map, 0, 0, _RET_IP_);
+- ret = rt_mutex_fastlock(lock, TASK_INTERRUPTIBLE, rt_mutex_slowlock);
+- if (ret)
+- mutex_release(&lock->dep_map, _RET_IP_);
+-
+- return ret;
++ return rt_mutex_lock_state(lock, 0, TASK_INTERRUPTIBLE);
+ }
+ EXPORT_SYMBOL_GPL(rt_mutex_lock_interruptible);
+
+@@ -1541,6 +1553,14 @@ int __sched __rt_mutex_futex_trylock(struct rt_mutex *lock)
+ return __rt_mutex_slowtrylock(lock);
+ }
+
++int __sched __rt_mutex_trylock(struct rt_mutex *lock)
++{
++ if (WARN_ON_ONCE(in_irq() || in_nmi() || in_serving_softirq()))
++ return 0;
++
++ return rt_mutex_fasttrylock(lock, rt_mutex_slowtrylock);
++}
++
+ /**
+ * rt_mutex_trylock - try to lock a rt_mutex
+ *
+@@ -1556,10 +1576,7 @@ int __sched rt_mutex_trylock(struct rt_mutex *lock)
+ {
+ int ret;
+
+- if (WARN_ON_ONCE(in_irq() || in_nmi() || in_serving_softirq()))
+- return 0;
+-
+- ret = rt_mutex_fasttrylock(lock, rt_mutex_slowtrylock);
++ ret = __rt_mutex_trylock(lock);
+ if (ret)
+ mutex_acquire(&lock->dep_map, 0, 1, _RET_IP_);
+
+@@ -1567,6 +1584,11 @@ int __sched rt_mutex_trylock(struct rt_mutex *lock)
+ }
+ EXPORT_SYMBOL_GPL(rt_mutex_trylock);
+
++void __sched __rt_mutex_unlock(struct rt_mutex *lock)
++{
++ rt_mutex_fastunlock(lock, rt_mutex_slowunlock);
++}
++
+ /**
+ * rt_mutex_unlock - unlock a rt_mutex
+ *
+diff --git a/kernel/locking/rtmutex_common.h b/kernel/locking/rtmutex_common.h
+index b5a2affa59d5..9d1e974ca9c3 100644
+--- a/kernel/locking/rtmutex_common.h
++++ b/kernel/locking/rtmutex_common.h
+@@ -156,6 +156,9 @@ extern bool __rt_mutex_futex_unlock(struct rt_mutex *lock,
+ extern void rt_mutex_postunlock(struct wake_q_head *wake_q);
+ /* RW semaphore special interface */
+
++extern int __rt_mutex_lock_state(struct rt_mutex *lock, int state);
++extern int __rt_mutex_trylock(struct rt_mutex *lock);
++extern void __rt_mutex_unlock(struct rt_mutex *lock);
+ int __sched rt_mutex_slowlock_locked(struct rt_mutex *lock, int state,
+ struct hrtimer_sleeper *timeout,
+ enum rtmutex_chainwalk chwalk,
+--
+2.43.0
+
diff --git a/debian/patches-rt/0169-sched-Add-saved_state-for-tasks-blocked-on-sleeping-.patch b/debian/patches-rt/0169-sched-Add-saved_state-for-tasks-blocked-on-sleeping-.patch
new file mode 100644
index 000000000..83106676c
--- /dev/null
+++ b/debian/patches-rt/0169-sched-Add-saved_state-for-tasks-blocked-on-sleeping-.patch
@@ -0,0 +1,116 @@
+From 622996bf8475bf1d06cbb523dacc7469e7b9c864 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Sat, 25 Jun 2011 09:21:04 +0200
+Subject: [PATCH 169/323] sched: Add saved_state for tasks blocked on sleeping
+ locks
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Spinlocks are state preserving in !RT. RT changes the state when a
+task gets blocked on a lock. So we need to remember the state before
+the lock contention. If a regular wakeup (not a RTmutex related
+wakeup) happens, the saved_state is updated to running. When the lock
+sleep is done, the saved state is restored.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/sched.h | 3 +++
+ kernel/sched/core.c | 34 ++++++++++++++++++++++++++++++++--
+ kernel/sched/sched.h | 1 +
+ 3 files changed, 36 insertions(+), 2 deletions(-)
+
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index d31da4867bb2..73defe42fd23 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -659,6 +659,8 @@ struct task_struct {
+ #endif
+ /* -1 unrunnable, 0 runnable, >0 stopped: */
+ volatile long state;
++ /* saved state for "spinlock sleepers" */
++ volatile long saved_state;
+
+ /*
+ * This begins the randomizable portion of task_struct. Only
+@@ -1782,6 +1784,7 @@ extern struct task_struct *find_get_task_by_vpid(pid_t nr);
+
+ extern int wake_up_state(struct task_struct *tsk, unsigned int state);
+ extern int wake_up_process(struct task_struct *tsk);
++extern int wake_up_lock_sleeper(struct task_struct *tsk);
+ extern void wake_up_new_task(struct task_struct *tsk);
+
+ #ifdef CONFIG_SMP
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 390b51366f5e..f6d40256c0d4 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -3305,7 +3305,7 @@ try_to_wake_up(struct task_struct *p, unsigned int state, int wake_flags)
+ int cpu, success = 0;
+
+ preempt_disable();
+- if (p == current) {
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT) && p == current) {
+ /*
+ * We're waking current, this means 'p->on_rq' and 'task_cpu(p)
+ * == smp_processor_id()'. Together this means we can special
+@@ -3335,8 +3335,26 @@ try_to_wake_up(struct task_struct *p, unsigned int state, int wake_flags)
+ */
+ raw_spin_lock_irqsave(&p->pi_lock, flags);
+ smp_mb__after_spinlock();
+- if (!(p->state & state))
++ if (!(p->state & state)) {
++ /*
++ * The task might be running due to a spinlock sleeper
++ * wakeup. Check the saved state and set it to running
++ * if the wakeup condition is true.
++ */
++ if (!(wake_flags & WF_LOCK_SLEEPER)) {
++ if (p->saved_state & state) {
++ p->saved_state = TASK_RUNNING;
++ success = 1;
++ }
++ }
+ goto unlock;
++ }
++ /*
++ * If this is a regular wakeup, then we can unconditionally
++ * clear the saved state of a "lock sleeper".
++ */
++ if (!(wake_flags & WF_LOCK_SLEEPER))
++ p->saved_state = TASK_RUNNING;
+
+ trace_sched_waking(p);
+
+@@ -3525,6 +3543,18 @@ int wake_up_process(struct task_struct *p)
+ }
+ EXPORT_SYMBOL(wake_up_process);
+
++/**
++ * wake_up_lock_sleeper - Wake up a specific process blocked on a "sleeping lock"
++ * @p: The process to be woken up.
++ *
++ * Same as wake_up_process() above, but wake_flags=WF_LOCK_SLEEPER to indicate
++ * the nature of the wakeup.
++ */
++int wake_up_lock_sleeper(struct task_struct *p)
++{
++ return try_to_wake_up(p, TASK_UNINTERRUPTIBLE, WF_LOCK_SLEEPER);
++}
++
+ int wake_up_state(struct task_struct *p, unsigned int state)
+ {
+ return try_to_wake_up(p, state, 0);
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index c26b1c7009f4..d4bfc51358d3 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -1753,6 +1753,7 @@ static inline int task_on_rq_migrating(struct task_struct *p)
+ #define WF_FORK 0x02 /* Child wakeup after fork */
+ #define WF_MIGRATED 0x04 /* Internal use, task got migrated */
+ #define WF_ON_CPU 0x08 /* Wakee is on_cpu */
++#define WF_LOCK_SLEEPER 0x10 /* Wakeup spinlock "sleeper" */
+
+ /*
+ * To aid in avoiding the subversion of "niceness" due to uneven distribution
+--
+2.43.0
+
diff --git a/debian/patches-rt/0170-locking-rtmutex-add-sleeping-lock-implementation.patch b/debian/patches-rt/0170-locking-rtmutex-add-sleeping-lock-implementation.patch
new file mode 100644
index 000000000..e8755a734
--- /dev/null
+++ b/debian/patches-rt/0170-locking-rtmutex-add-sleeping-lock-implementation.patch
@@ -0,0 +1,1214 @@
+From 4c85c347eeb7dae59269d3a4a07388a00de563bf Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 12 Oct 2017 17:11:19 +0200
+Subject: [PATCH 170/323] locking/rtmutex: add sleeping lock implementation
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ include/linux/kernel.h | 5 +
+ include/linux/preempt.h | 4 +
+ include/linux/rtmutex.h | 19 +-
+ include/linux/sched.h | 7 +
+ include/linux/sched/wake_q.h | 13 +-
+ include/linux/spinlock_rt.h | 155 +++++++++++
+ include/linux/spinlock_types_rt.h | 38 +++
+ kernel/futex/core.c | 10 +-
+ kernel/locking/rtmutex.c | 444 +++++++++++++++++++++++++++---
+ kernel/locking/rtmutex_common.h | 14 +-
+ kernel/sched/core.c | 39 ++-
+ 11 files changed, 693 insertions(+), 55 deletions(-)
+ create mode 100644 include/linux/spinlock_rt.h
+ create mode 100644 include/linux/spinlock_types_rt.h
+
+diff --git a/include/linux/kernel.h b/include/linux/kernel.h
+index 55d48d5627c7..7b4fdd5b2f7b 100644
+--- a/include/linux/kernel.h
++++ b/include/linux/kernel.h
+@@ -223,6 +223,10 @@ extern void __cant_migrate(const char *file, int line);
+ */
+ # define might_sleep() \
+ do { __might_sleep(__FILE__, __LINE__, 0); might_resched(); } while (0)
++
++# define might_sleep_no_state_check() \
++ do { ___might_sleep(__FILE__, __LINE__, 0); might_resched(); } while (0)
++
+ /**
+ * cant_sleep - annotation for functions that cannot sleep
+ *
+@@ -266,6 +270,7 @@ extern void __cant_migrate(const char *file, int line);
+ static inline void __might_sleep(const char *file, int line,
+ int preempt_offset) { }
+ # define might_sleep() do { might_resched(); } while (0)
++# define might_sleep_no_state_check() do { might_resched(); } while (0)
+ # define cant_sleep() do { } while (0)
+ # define cant_migrate() do { } while (0)
+ # define sched_annotate_sleep() do { } while (0)
+diff --git a/include/linux/preempt.h b/include/linux/preempt.h
+index 9881eac0698f..4d244e295e85 100644
+--- a/include/linux/preempt.h
++++ b/include/linux/preempt.h
+@@ -121,7 +121,11 @@
+ /*
+ * The preempt_count offset after spin_lock()
+ */
++#if !defined(CONFIG_PREEMPT_RT)
+ #define PREEMPT_LOCK_OFFSET PREEMPT_DISABLE_OFFSET
++#else
++#define PREEMPT_LOCK_OFFSET 0
++#endif
+
+ /*
+ * The preempt_count offset needed for things like:
+diff --git a/include/linux/rtmutex.h b/include/linux/rtmutex.h
+index b828b938c876..b02009f53026 100644
+--- a/include/linux/rtmutex.h
++++ b/include/linux/rtmutex.h
+@@ -19,6 +19,10 @@
+
+ extern int max_lock_depth; /* for sysctl */
+
++#ifdef CONFIG_DEBUG_MUTEXES
++#include <linux/debug_locks.h>
++#endif
++
+ /**
+ * The rt_mutex structure
+ *
+@@ -31,6 +35,7 @@ struct rt_mutex {
+ raw_spinlock_t wait_lock;
+ struct rb_root_cached waiters;
+ struct task_struct *owner;
++ int save_state;
+ #ifdef CONFIG_DEBUG_LOCK_ALLOC
+ struct lockdep_map dep_map;
+ #endif
+@@ -67,11 +72,19 @@ do { \
+ #define __DEP_MAP_RT_MUTEX_INITIALIZER(mutexname)
+ #endif
+
+-#define __RT_MUTEX_INITIALIZER(mutexname) \
+- { .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(mutexname.wait_lock) \
++#define __RT_MUTEX_INITIALIZER_PLAIN(mutexname) \
++ .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(mutexname.wait_lock) \
+ , .waiters = RB_ROOT_CACHED \
+ , .owner = NULL \
+- __DEP_MAP_RT_MUTEX_INITIALIZER(mutexname)}
++ __DEP_MAP_RT_MUTEX_INITIALIZER(mutexname)
++
++#define __RT_MUTEX_INITIALIZER(mutexname) \
++ { __RT_MUTEX_INITIALIZER_PLAIN(mutexname) \
++ , .save_state = 0 }
++
++#define __RT_MUTEX_INITIALIZER_SAVE_STATE(mutexname) \
++ { __RT_MUTEX_INITIALIZER_PLAIN(mutexname) \
++ , .save_state = 1 }
+
+ #define DEFINE_RT_MUTEX(mutexname) \
+ struct rt_mutex mutexname = __RT_MUTEX_INITIALIZER(mutexname)
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index 73defe42fd23..3650fdaac4ca 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -141,6 +141,9 @@ struct io_uring_task;
+ smp_store_mb(current->state, (state_value)); \
+ } while (0)
+
++#define __set_current_state_no_track(state_value) \
++ current->state = (state_value);
++
+ #define set_special_state(state_value) \
+ do { \
+ unsigned long flags; /* may shadow */ \
+@@ -194,6 +197,9 @@ struct io_uring_task;
+ #define set_current_state(state_value) \
+ smp_store_mb(current->state, (state_value))
+
++#define __set_current_state_no_track(state_value) \
++ __set_current_state(state_value)
++
+ /*
+ * set_special_state() should be used for those states when the blocking task
+ * can not use the regular condition based wait-loop. In that case we must
+@@ -1021,6 +1027,7 @@ struct task_struct {
+ raw_spinlock_t pi_lock;
+
+ struct wake_q_node wake_q;
++ struct wake_q_node wake_q_sleeper;
+
+ #ifdef CONFIG_RT_MUTEXES
+ /* PI waiters blocked on a rt_mutex held by this task: */
+diff --git a/include/linux/sched/wake_q.h b/include/linux/sched/wake_q.h
+index 26a2013ac39c..6e2dff721547 100644
+--- a/include/linux/sched/wake_q.h
++++ b/include/linux/sched/wake_q.h
+@@ -58,6 +58,17 @@ static inline bool wake_q_empty(struct wake_q_head *head)
+
+ extern void wake_q_add(struct wake_q_head *head, struct task_struct *task);
+ extern void wake_q_add_safe(struct wake_q_head *head, struct task_struct *task);
+-extern void wake_up_q(struct wake_q_head *head);
++extern void wake_q_add_sleeper(struct wake_q_head *head, struct task_struct *task);
++extern void __wake_up_q(struct wake_q_head *head, bool sleeper);
++
++static inline void wake_up_q(struct wake_q_head *head)
++{
++ __wake_up_q(head, false);
++}
++
++static inline void wake_up_q_sleeper(struct wake_q_head *head)
++{
++ __wake_up_q(head, true);
++}
+
+ #endif /* _LINUX_SCHED_WAKE_Q_H */
+diff --git a/include/linux/spinlock_rt.h b/include/linux/spinlock_rt.h
+new file mode 100644
+index 000000000000..3085132eae38
+--- /dev/null
++++ b/include/linux/spinlock_rt.h
+@@ -0,0 +1,155 @@
++// SPDX-License-Identifier: GPL-2.0-only
++#ifndef __LINUX_SPINLOCK_RT_H
++#define __LINUX_SPINLOCK_RT_H
++
++#ifndef __LINUX_SPINLOCK_H
++#error Do not include directly. Use spinlock.h
++#endif
++
++#include <linux/bug.h>
++
++extern void
++__rt_spin_lock_init(spinlock_t *lock, const char *name, struct lock_class_key *key);
++
++#define spin_lock_init(slock) \
++do { \
++ static struct lock_class_key __key; \
++ \
++ rt_mutex_init(&(slock)->lock); \
++ __rt_spin_lock_init(slock, #slock, &__key); \
++} while (0)
++
++extern void __lockfunc rt_spin_lock(spinlock_t *lock);
++extern void __lockfunc rt_spin_lock_nested(spinlock_t *lock, int subclass);
++extern void __lockfunc rt_spin_lock_nest_lock(spinlock_t *lock, struct lockdep_map *nest_lock);
++extern void __lockfunc rt_spin_unlock(spinlock_t *lock);
++extern void __lockfunc rt_spin_lock_unlock(spinlock_t *lock);
++extern int __lockfunc rt_spin_trylock_irqsave(spinlock_t *lock, unsigned long *flags);
++extern int __lockfunc rt_spin_trylock_bh(spinlock_t *lock);
++extern int __lockfunc rt_spin_trylock(spinlock_t *lock);
++extern int atomic_dec_and_spin_lock(atomic_t *atomic, spinlock_t *lock);
++
++/*
++ * lockdep-less calls, for derived types like rwlock:
++ * (for trylock they can use rt_mutex_trylock() directly.
++ * Migrate disable handling must be done at the call site.
++ */
++extern void __lockfunc __rt_spin_lock(struct rt_mutex *lock);
++extern void __lockfunc __rt_spin_trylock(struct rt_mutex *lock);
++extern void __lockfunc __rt_spin_unlock(struct rt_mutex *lock);
++
++#define spin_lock(lock) rt_spin_lock(lock)
++
++#define spin_lock_bh(lock) \
++ do { \
++ local_bh_disable(); \
++ rt_spin_lock(lock); \
++ } while (0)
++
++#define spin_lock_irq(lock) spin_lock(lock)
++
++#define spin_do_trylock(lock) __cond_lock(lock, rt_spin_trylock(lock))
++
++#define spin_trylock(lock) \
++({ \
++ int __locked; \
++ __locked = spin_do_trylock(lock); \
++ __locked; \
++})
++
++#ifdef CONFIG_LOCKDEP
++# define spin_lock_nested(lock, subclass) \
++ do { \
++ rt_spin_lock_nested(lock, subclass); \
++ } while (0)
++
++#define spin_lock_bh_nested(lock, subclass) \
++ do { \
++ local_bh_disable(); \
++ rt_spin_lock_nested(lock, subclass); \
++ } while (0)
++
++# define spin_lock_nest_lock(lock, subclass) \
++ do { \
++ typecheck(struct lockdep_map *, &(subclass)->dep_map); \
++ rt_spin_lock_nest_lock(lock, &(subclass)->dep_map); \
++ } while (0)
++
++# define spin_lock_irqsave_nested(lock, flags, subclass) \
++ do { \
++ typecheck(unsigned long, flags); \
++ flags = 0; \
++ rt_spin_lock_nested(lock, subclass); \
++ } while (0)
++#else
++# define spin_lock_nested(lock, subclass) spin_lock(((void)(subclass), (lock)))
++# define spin_lock_nest_lock(lock, subclass) spin_lock(((void)(subclass), (lock)))
++# define spin_lock_bh_nested(lock, subclass) spin_lock_bh(((void)(subclass), (lock)))
++
++# define spin_lock_irqsave_nested(lock, flags, subclass) \
++ do { \
++ typecheck(unsigned long, flags); \
++ flags = 0; \
++ spin_lock(((void)(subclass), (lock))); \
++ } while (0)
++#endif
++
++#define spin_lock_irqsave(lock, flags) \
++ do { \
++ typecheck(unsigned long, flags); \
++ flags = 0; \
++ spin_lock(lock); \
++ } while (0)
++
++#define spin_unlock(lock) rt_spin_unlock(lock)
++
++#define spin_unlock_bh(lock) \
++ do { \
++ rt_spin_unlock(lock); \
++ local_bh_enable(); \
++ } while (0)
++
++#define spin_unlock_irq(lock) spin_unlock(lock)
++
++#define spin_unlock_irqrestore(lock, flags) \
++ do { \
++ typecheck(unsigned long, flags); \
++ (void) flags; \
++ spin_unlock(lock); \
++ } while (0)
++
++#define spin_trylock_bh(lock) __cond_lock(lock, rt_spin_trylock_bh(lock))
++#define spin_trylock_irq(lock) spin_trylock(lock)
++
++#define spin_trylock_irqsave(lock, flags) \
++({ \
++ int __locked; \
++ \
++ typecheck(unsigned long, flags); \
++ flags = 0; \
++ __locked = spin_trylock(lock); \
++ __locked; \
++})
++
++#ifdef CONFIG_GENERIC_LOCKBREAK
++# define spin_is_contended(lock) ((lock)->break_lock)
++#else
++# define spin_is_contended(lock) (((void)(lock), 0))
++#endif
++
++static inline int spin_can_lock(spinlock_t *lock)
++{
++ return !rt_mutex_is_locked(&lock->lock);
++}
++
++static inline int spin_is_locked(spinlock_t *lock)
++{
++ return rt_mutex_is_locked(&lock->lock);
++}
++
++static inline void assert_spin_locked(spinlock_t *lock)
++{
++ BUG_ON(!spin_is_locked(lock));
++}
++
++#endif
+diff --git a/include/linux/spinlock_types_rt.h b/include/linux/spinlock_types_rt.h
+new file mode 100644
+index 000000000000..446da786e5d5
+--- /dev/null
++++ b/include/linux/spinlock_types_rt.h
+@@ -0,0 +1,38 @@
++// SPDX-License-Identifier: GPL-2.0-only
++#ifndef __LINUX_SPINLOCK_TYPES_RT_H
++#define __LINUX_SPINLOCK_TYPES_RT_H
++
++#ifndef __LINUX_SPINLOCK_TYPES_H
++#error "Do not include directly. Include spinlock_types.h instead"
++#endif
++
++#include <linux/cache.h>
++
++/*
++ * PREEMPT_RT: spinlocks - an RT mutex plus lock-break field:
++ */
++typedef struct spinlock {
++ struct rt_mutex lock;
++ unsigned int break_lock;
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++ struct lockdep_map dep_map;
++#endif
++} spinlock_t;
++
++#define __RT_SPIN_INITIALIZER(name) \
++ { \
++ .wait_lock = __RAW_SPIN_LOCK_UNLOCKED(name.wait_lock), \
++ .save_state = 1, \
++ }
++/*
++.wait_list = PLIST_HEAD_INIT_RAW((name).lock.wait_list, (name).lock.wait_lock)
++*/
++
++#define __SPIN_LOCK_UNLOCKED(name) \
++ { .lock = __RT_SPIN_INITIALIZER(name.lock), \
++ SPIN_DEP_MAP_INIT(name) }
++
++#define DEFINE_SPINLOCK(name) \
++ spinlock_t name = __SPIN_LOCK_UNLOCKED(name)
++
++#endif
+diff --git a/kernel/futex/core.c b/kernel/futex/core.c
+index 706cd446ec71..909dcd708a52 100644
+--- a/kernel/futex/core.c
++++ b/kernel/futex/core.c
+@@ -1508,6 +1508,7 @@ static int wake_futex_pi(u32 __user *uaddr, u32 uval, struct futex_pi_state *pi_
+ struct task_struct *new_owner;
+ bool postunlock = false;
+ DEFINE_WAKE_Q(wake_q);
++ DEFINE_WAKE_Q(wake_sleeper_q);
+ int ret = 0;
+
+ new_owner = rt_mutex_next_owner(&pi_state->pi_mutex);
+@@ -1557,14 +1558,15 @@ static int wake_futex_pi(u32 __user *uaddr, u32 uval, struct futex_pi_state *pi_
+ * not fail.
+ */
+ pi_state_update_owner(pi_state, new_owner);
+- postunlock = __rt_mutex_futex_unlock(&pi_state->pi_mutex, &wake_q);
++ postunlock = __rt_mutex_futex_unlock(&pi_state->pi_mutex, &wake_q,
++ &wake_sleeper_q);
+ }
+
+ out_unlock:
+ raw_spin_unlock_irq(&pi_state->pi_mutex.wait_lock);
+
+ if (postunlock)
+- rt_mutex_postunlock(&wake_q);
++ rt_mutex_postunlock(&wake_q, &wake_sleeper_q);
+
+ return ret;
+ }
+@@ -2867,7 +2869,7 @@ static int futex_lock_pi(u32 __user *uaddr, unsigned int flags,
+ goto no_block;
+ }
+
+- rt_mutex_init_waiter(&rt_waiter);
++ rt_mutex_init_waiter(&rt_waiter, false);
+
+ /*
+ * On PREEMPT_RT_FULL, when hb->lock becomes an rt_mutex, we must not
+@@ -3213,7 +3215,7 @@ static int futex_wait_requeue_pi(u32 __user *uaddr, unsigned int flags,
+ * The waiter is allocated on our stack, manipulated by the requeue
+ * code while we sleep on uaddr.
+ */
+- rt_mutex_init_waiter(&rt_waiter);
++ rt_mutex_init_waiter(&rt_waiter, false);
+
+ ret = get_futex_key(uaddr2, flags & FLAGS_SHARED, &key2, FUTEX_WRITE);
+ if (unlikely(ret != 0))
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index 40ae934c6caa..35cdbbb5daa9 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -8,6 +8,11 @@
+ * Copyright (C) 2005-2006 Timesys Corp., Thomas Gleixner <tglx@timesys.com>
+ * Copyright (C) 2005 Kihon Technologies Inc., Steven Rostedt
+ * Copyright (C) 2006 Esben Nielsen
++ * Adaptive Spinlocks:
++ * Copyright (C) 2008 Novell, Inc., Gregory Haskins, Sven Dietrich,
++ * and Peter Morreale,
++ * Adaptive Spinlocks simplification:
++ * Copyright (C) 2008 Red Hat, Inc., Steven Rostedt <srostedt@redhat.com>
+ *
+ * See Documentation/locking/rt-mutex-design.rst for details.
+ */
+@@ -233,7 +238,7 @@ static inline bool unlock_rt_mutex_safe(struct rt_mutex *lock,
+ * Only use with rt_mutex_waiter_{less,equal}()
+ */
+ #define task_to_waiter(p) \
+- &(struct rt_mutex_waiter){ .prio = (p)->prio, .deadline = (p)->dl.deadline }
++ &(struct rt_mutex_waiter){ .prio = (p)->prio, .deadline = (p)->dl.deadline, .task = (p) }
+
+ static inline int
+ rt_mutex_waiter_less(struct rt_mutex_waiter *left,
+@@ -273,6 +278,27 @@ rt_mutex_waiter_equal(struct rt_mutex_waiter *left,
+ return 1;
+ }
+
++#define STEAL_NORMAL 0
++#define STEAL_LATERAL 1
++
++static inline int
++rt_mutex_steal(struct rt_mutex *lock, struct rt_mutex_waiter *waiter, int mode)
++{
++ struct rt_mutex_waiter *top_waiter = rt_mutex_top_waiter(lock);
++
++ if (waiter == top_waiter || rt_mutex_waiter_less(waiter, top_waiter))
++ return 1;
++
++ /*
++ * Note that RT tasks are excluded from lateral-steals
++ * to prevent the introduction of an unbounded latency.
++ */
++ if (mode == STEAL_NORMAL || rt_task(waiter->task))
++ return 0;
++
++ return rt_mutex_waiter_equal(waiter, top_waiter);
++}
++
+ static void
+ rt_mutex_enqueue(struct rt_mutex *lock, struct rt_mutex_waiter *waiter)
+ {
+@@ -377,6 +403,14 @@ static bool rt_mutex_cond_detect_deadlock(struct rt_mutex_waiter *waiter,
+ return debug_rt_mutex_detect_deadlock(waiter, chwalk);
+ }
+
++static void rt_mutex_wake_waiter(struct rt_mutex_waiter *waiter)
++{
++ if (waiter->savestate)
++ wake_up_lock_sleeper(waiter->task);
++ else
++ wake_up_process(waiter->task);
++}
++
+ /*
+ * Max number of times we'll walk the boosting chain:
+ */
+@@ -700,13 +734,16 @@ static int rt_mutex_adjust_prio_chain(struct task_struct *task,
+ * follow here. This is the end of the chain we are walking.
+ */
+ if (!rt_mutex_owner(lock)) {
++ struct rt_mutex_waiter *lock_top_waiter;
++
+ /*
+ * If the requeue [7] above changed the top waiter,
+ * then we need to wake the new top waiter up to try
+ * to get the lock.
+ */
+- if (prerequeue_top_waiter != rt_mutex_top_waiter(lock))
+- wake_up_process(rt_mutex_top_waiter(lock)->task);
++ lock_top_waiter = rt_mutex_top_waiter(lock);
++ if (prerequeue_top_waiter != lock_top_waiter)
++ rt_mutex_wake_waiter(lock_top_waiter);
+ raw_spin_unlock_irq(&lock->wait_lock);
+ return 0;
+ }
+@@ -807,9 +844,11 @@ static int rt_mutex_adjust_prio_chain(struct task_struct *task,
+ * @task: The task which wants to acquire the lock
+ * @waiter: The waiter that is queued to the lock's wait tree if the
+ * callsite called task_blocked_on_lock(), otherwise NULL
++ * @mode: Lock steal mode (STEAL_NORMAL, STEAL_LATERAL)
+ */
+-static int try_to_take_rt_mutex(struct rt_mutex *lock, struct task_struct *task,
+- struct rt_mutex_waiter *waiter)
++static int __try_to_take_rt_mutex(struct rt_mutex *lock,
++ struct task_struct *task,
++ struct rt_mutex_waiter *waiter, int mode)
+ {
+ lockdep_assert_held(&lock->wait_lock);
+
+@@ -845,12 +884,11 @@ static int try_to_take_rt_mutex(struct rt_mutex *lock, struct task_struct *task,
+ */
+ if (waiter) {
+ /*
+- * If waiter is not the highest priority waiter of
+- * @lock, give up.
++ * If waiter is not the highest priority waiter of @lock,
++ * or its peer when lateral steal is allowed, give up.
+ */
+- if (waiter != rt_mutex_top_waiter(lock))
++ if (!rt_mutex_steal(lock, waiter, mode))
+ return 0;
+-
+ /*
+ * We can acquire the lock. Remove the waiter from the
+ * lock waiters tree.
+@@ -868,14 +906,12 @@ static int try_to_take_rt_mutex(struct rt_mutex *lock, struct task_struct *task,
+ */
+ if (rt_mutex_has_waiters(lock)) {
+ /*
+- * If @task->prio is greater than or equal to
+- * the top waiter priority (kernel view),
+- * @task lost.
++ * If @task->prio is greater than the top waiter
++ * priority (kernel view), or equal to it when a
++ * lateral steal is forbidden, @task lost.
+ */
+- if (!rt_mutex_waiter_less(task_to_waiter(task),
+- rt_mutex_top_waiter(lock)))
++ if (!rt_mutex_steal(lock, task_to_waiter(task), mode))
+ return 0;
+-
+ /*
+ * The current top waiter stays enqueued. We
+ * don't have to change anything in the lock
+@@ -922,6 +958,289 @@ static int try_to_take_rt_mutex(struct rt_mutex *lock, struct task_struct *task,
+ return 1;
+ }
+
++#ifdef CONFIG_PREEMPT_RT
++/*
++ * preemptible spin_lock functions:
++ */
++static inline void rt_spin_lock_fastlock(struct rt_mutex *lock,
++ void (*slowfn)(struct rt_mutex *lock))
++{
++ might_sleep_no_state_check();
++
++ if (likely(rt_mutex_cmpxchg_acquire(lock, NULL, current)))
++ return;
++ else
++ slowfn(lock);
++}
++
++static inline void rt_spin_lock_fastunlock(struct rt_mutex *lock,
++ void (*slowfn)(struct rt_mutex *lock))
++{
++ if (likely(rt_mutex_cmpxchg_release(lock, current, NULL)))
++ return;
++ else
++ slowfn(lock);
++}
++#ifdef CONFIG_SMP
++/*
++ * Note that owner is a speculative pointer and dereferencing relies
++ * on rcu_read_lock() and the check against the lock owner.
++ */
++static int adaptive_wait(struct rt_mutex *lock,
++ struct task_struct *owner)
++{
++ int res = 0;
++
++ rcu_read_lock();
++ for (;;) {
++ if (owner != rt_mutex_owner(lock))
++ break;
++ /*
++ * Ensure that owner->on_cpu is dereferenced _after_
++ * checking the above to be valid.
++ */
++ barrier();
++ if (!owner->on_cpu) {
++ res = 1;
++ break;
++ }
++ cpu_relax();
++ }
++ rcu_read_unlock();
++ return res;
++}
++#else
++static int adaptive_wait(struct rt_mutex *lock,
++ struct task_struct *orig_owner)
++{
++ return 1;
++}
++#endif
++
++static int task_blocks_on_rt_mutex(struct rt_mutex *lock,
++ struct rt_mutex_waiter *waiter,
++ struct task_struct *task,
++ enum rtmutex_chainwalk chwalk);
++/*
++ * Slow path lock function spin_lock style: this variant is very
++ * careful not to miss any non-lock wakeups.
++ *
++ * We store the current state under p->pi_lock in p->saved_state and
++ * the try_to_wake_up() code handles this accordingly.
++ */
++void __sched rt_spin_lock_slowlock_locked(struct rt_mutex *lock,
++ struct rt_mutex_waiter *waiter,
++ unsigned long flags)
++{
++ struct task_struct *lock_owner, *self = current;
++ struct rt_mutex_waiter *top_waiter;
++ int ret;
++
++ if (__try_to_take_rt_mutex(lock, self, NULL, STEAL_LATERAL))
++ return;
++
++ BUG_ON(rt_mutex_owner(lock) == self);
++
++ /*
++ * We save whatever state the task is in and we'll restore it
++ * after acquiring the lock taking real wakeups into account
++ * as well. We are serialized via pi_lock against wakeups. See
++ * try_to_wake_up().
++ */
++ raw_spin_lock(&self->pi_lock);
++ self->saved_state = self->state;
++ __set_current_state_no_track(TASK_UNINTERRUPTIBLE);
++ raw_spin_unlock(&self->pi_lock);
++
++ ret = task_blocks_on_rt_mutex(lock, waiter, self, RT_MUTEX_MIN_CHAINWALK);
++ BUG_ON(ret);
++
++ for (;;) {
++ /* Try to acquire the lock again. */
++ if (__try_to_take_rt_mutex(lock, self, waiter, STEAL_LATERAL))
++ break;
++
++ top_waiter = rt_mutex_top_waiter(lock);
++ lock_owner = rt_mutex_owner(lock);
++
++ raw_spin_unlock_irqrestore(&lock->wait_lock, flags);
++
++ if (top_waiter != waiter || adaptive_wait(lock, lock_owner))
++ schedule();
++
++ raw_spin_lock_irqsave(&lock->wait_lock, flags);
++
++ raw_spin_lock(&self->pi_lock);
++ __set_current_state_no_track(TASK_UNINTERRUPTIBLE);
++ raw_spin_unlock(&self->pi_lock);
++ }
++
++ /*
++ * Restore the task state to current->saved_state. We set it
++ * to the original state above and the try_to_wake_up() code
++ * has possibly updated it when a real (non-rtmutex) wakeup
++ * happened while we were blocked. Clear saved_state so
++ * try_to_wakeup() does not get confused.
++ */
++ raw_spin_lock(&self->pi_lock);
++ __set_current_state_no_track(self->saved_state);
++ self->saved_state = TASK_RUNNING;
++ raw_spin_unlock(&self->pi_lock);
++
++ /*
++ * try_to_take_rt_mutex() sets the waiter bit
++ * unconditionally. We might have to fix that up:
++ */
++ fixup_rt_mutex_waiters(lock);
++
++ BUG_ON(rt_mutex_has_waiters(lock) && waiter == rt_mutex_top_waiter(lock));
++ BUG_ON(!RB_EMPTY_NODE(&waiter->tree_entry));
++}
++
++static void noinline __sched rt_spin_lock_slowlock(struct rt_mutex *lock)
++{
++ struct rt_mutex_waiter waiter;
++ unsigned long flags;
++
++ rt_mutex_init_waiter(&waiter, true);
++
++ raw_spin_lock_irqsave(&lock->wait_lock, flags);
++ rt_spin_lock_slowlock_locked(lock, &waiter, flags);
++ raw_spin_unlock_irqrestore(&lock->wait_lock, flags);
++ debug_rt_mutex_free_waiter(&waiter);
++}
++
++static bool __sched __rt_mutex_unlock_common(struct rt_mutex *lock,
++ struct wake_q_head *wake_q,
++ struct wake_q_head *wq_sleeper);
++/*
++ * Slow path to release a rt_mutex spin_lock style
++ */
++void __sched rt_spin_lock_slowunlock(struct rt_mutex *lock)
++{
++ unsigned long flags;
++ DEFINE_WAKE_Q(wake_q);
++ DEFINE_WAKE_Q(wake_sleeper_q);
++ bool postunlock;
++
++ raw_spin_lock_irqsave(&lock->wait_lock, flags);
++ postunlock = __rt_mutex_unlock_common(lock, &wake_q, &wake_sleeper_q);
++ raw_spin_unlock_irqrestore(&lock->wait_lock, flags);
++
++ if (postunlock)
++ rt_mutex_postunlock(&wake_q, &wake_sleeper_q);
++}
++
++void __lockfunc rt_spin_lock(spinlock_t *lock)
++{
++ spin_acquire(&lock->dep_map, 0, 0, _RET_IP_);
++ rt_spin_lock_fastlock(&lock->lock, rt_spin_lock_slowlock);
++ migrate_disable();
++}
++EXPORT_SYMBOL(rt_spin_lock);
++
++void __lockfunc __rt_spin_lock(struct rt_mutex *lock)
++{
++ rt_spin_lock_fastlock(lock, rt_spin_lock_slowlock);
++}
++
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++void __lockfunc rt_spin_lock_nested(spinlock_t *lock, int subclass)
++{
++ spin_acquire(&lock->dep_map, subclass, 0, _RET_IP_);
++ rt_spin_lock_fastlock(&lock->lock, rt_spin_lock_slowlock);
++ migrate_disable();
++}
++EXPORT_SYMBOL(rt_spin_lock_nested);
++
++void __lockfunc rt_spin_lock_nest_lock(spinlock_t *lock,
++ struct lockdep_map *nest_lock)
++{
++ spin_acquire_nest(&lock->dep_map, 0, 0, nest_lock, _RET_IP_);
++ rt_spin_lock_fastlock(&lock->lock, rt_spin_lock_slowlock);
++ migrate_disable();
++}
++EXPORT_SYMBOL(rt_spin_lock_nest_lock);
++#endif
++
++void __lockfunc rt_spin_unlock(spinlock_t *lock)
++{
++ /* NOTE: we always pass in '1' for nested, for simplicity */
++ spin_release(&lock->dep_map, _RET_IP_);
++ migrate_enable();
++ rt_spin_lock_fastunlock(&lock->lock, rt_spin_lock_slowunlock);
++}
++EXPORT_SYMBOL(rt_spin_unlock);
++
++void __lockfunc __rt_spin_unlock(struct rt_mutex *lock)
++{
++ rt_spin_lock_fastunlock(lock, rt_spin_lock_slowunlock);
++}
++EXPORT_SYMBOL(__rt_spin_unlock);
++
++/*
++ * Wait for the lock to get unlocked: instead of polling for an unlock
++ * (like raw spinlocks do), we lock and unlock, to force the kernel to
++ * schedule if there's contention:
++ */
++void __lockfunc rt_spin_lock_unlock(spinlock_t *lock)
++{
++ spin_lock(lock);
++ spin_unlock(lock);
++}
++EXPORT_SYMBOL(rt_spin_lock_unlock);
++
++int __lockfunc rt_spin_trylock(spinlock_t *lock)
++{
++ int ret;
++
++ ret = __rt_mutex_trylock(&lock->lock);
++ if (ret) {
++ spin_acquire(&lock->dep_map, 0, 1, _RET_IP_);
++ migrate_disable();
++ }
++ return ret;
++}
++EXPORT_SYMBOL(rt_spin_trylock);
++
++int __lockfunc rt_spin_trylock_bh(spinlock_t *lock)
++{
++ int ret;
++
++ local_bh_disable();
++ ret = __rt_mutex_trylock(&lock->lock);
++ if (ret) {
++ spin_acquire(&lock->dep_map, 0, 1, _RET_IP_);
++ migrate_disable();
++ } else {
++ local_bh_enable();
++ }
++ return ret;
++}
++EXPORT_SYMBOL(rt_spin_trylock_bh);
++
++void
++__rt_spin_lock_init(spinlock_t *lock, const char *name, struct lock_class_key *key)
++{
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++ /*
++ * Make sure we are not reinitializing a held lock:
++ */
++ debug_check_no_locks_freed((void *)lock, sizeof(*lock));
++ lockdep_init_map(&lock->dep_map, name, key, 0);
++#endif
++}
++EXPORT_SYMBOL(__rt_spin_lock_init);
++
++#endif /* PREEMPT_RT */
++
++static inline int
++try_to_take_rt_mutex(struct rt_mutex *lock, struct task_struct *task,
++ struct rt_mutex_waiter *waiter)
++{
++ return __try_to_take_rt_mutex(lock, task, waiter, STEAL_NORMAL);
++}
++
+ /*
+ * Task blocks on lock.
+ *
+@@ -1035,6 +1354,7 @@ static int task_blocks_on_rt_mutex(struct rt_mutex *lock,
+ * Called with lock->wait_lock held and interrupts disabled.
+ */
+ static void mark_wakeup_next_waiter(struct wake_q_head *wake_q,
++ struct wake_q_head *wake_sleeper_q,
+ struct rt_mutex *lock)
+ {
+ struct rt_mutex_waiter *waiter;
+@@ -1074,7 +1394,10 @@ static void mark_wakeup_next_waiter(struct wake_q_head *wake_q,
+ * Pairs with preempt_enable() in rt_mutex_postunlock();
+ */
+ preempt_disable();
+- wake_q_add(wake_q, waiter->task);
++ if (waiter->savestate)
++ wake_q_add_sleeper(wake_sleeper_q, waiter->task);
++ else
++ wake_q_add(wake_q, waiter->task);
+ raw_spin_unlock(&current->pi_lock);
+ }
+
+@@ -1158,21 +1481,22 @@ void rt_mutex_adjust_pi(struct task_struct *task)
+ return;
+ }
+ next_lock = waiter->lock;
+- raw_spin_unlock_irqrestore(&task->pi_lock, flags);
+
+ /* gets dropped in rt_mutex_adjust_prio_chain()! */
+ get_task_struct(task);
+
++ raw_spin_unlock_irqrestore(&task->pi_lock, flags);
+ rt_mutex_adjust_prio_chain(task, RT_MUTEX_MIN_CHAINWALK, NULL,
+ next_lock, NULL, task);
+ }
+
+-void rt_mutex_init_waiter(struct rt_mutex_waiter *waiter)
++void rt_mutex_init_waiter(struct rt_mutex_waiter *waiter, bool savestate)
+ {
+ debug_rt_mutex_init_waiter(waiter);
+ RB_CLEAR_NODE(&waiter->pi_tree_entry);
+ RB_CLEAR_NODE(&waiter->tree_entry);
+ waiter->task = NULL;
++ waiter->savestate = savestate;
+ }
+
+ /**
+@@ -1283,7 +1607,7 @@ rt_mutex_slowlock(struct rt_mutex *lock, int state,
+ unsigned long flags;
+ int ret = 0;
+
+- rt_mutex_init_waiter(&waiter);
++ rt_mutex_init_waiter(&waiter, false);
+
+ /*
+ * Technically we could use raw_spin_[un]lock_irq() here, but this can
+@@ -1356,7 +1680,8 @@ static inline int rt_mutex_slowtrylock(struct rt_mutex *lock)
+ * Return whether the current task needs to call rt_mutex_postunlock().
+ */
+ static bool __sched rt_mutex_slowunlock(struct rt_mutex *lock,
+- struct wake_q_head *wake_q)
++ struct wake_q_head *wake_q,
++ struct wake_q_head *wake_sleeper_q)
+ {
+ unsigned long flags;
+
+@@ -1410,7 +1735,7 @@ static bool __sched rt_mutex_slowunlock(struct rt_mutex *lock,
+ *
+ * Queue the next waiter for wakeup once we release the wait_lock.
+ */
+- mark_wakeup_next_waiter(wake_q, lock);
++ mark_wakeup_next_waiter(wake_q, wake_sleeper_q, lock);
+ raw_spin_unlock_irqrestore(&lock->wait_lock, flags);
+
+ return true; /* call rt_mutex_postunlock() */
+@@ -1447,9 +1772,11 @@ rt_mutex_fasttrylock(struct rt_mutex *lock,
+ /*
+ * Performs the wakeup of the top-waiter and re-enables preemption.
+ */
+-void rt_mutex_postunlock(struct wake_q_head *wake_q)
++void rt_mutex_postunlock(struct wake_q_head *wake_q,
++ struct wake_q_head *wake_sleeper_q)
+ {
+ wake_up_q(wake_q);
++ wake_up_q_sleeper(wake_sleeper_q);
+
+ /* Pairs with preempt_disable() in rt_mutex_slowunlock() */
+ preempt_enable();
+@@ -1458,15 +1785,17 @@ void rt_mutex_postunlock(struct wake_q_head *wake_q)
+ static inline void
+ rt_mutex_fastunlock(struct rt_mutex *lock,
+ bool (*slowfn)(struct rt_mutex *lock,
+- struct wake_q_head *wqh))
++ struct wake_q_head *wqh,
++ struct wake_q_head *wq_sleeper))
+ {
+ DEFINE_WAKE_Q(wake_q);
++ DEFINE_WAKE_Q(wake_sleeper_q);
+
+ if (likely(rt_mutex_cmpxchg_release(lock, current, NULL)))
+ return;
+
+- if (slowfn(lock, &wake_q))
+- rt_mutex_postunlock(&wake_q);
++ if (slowfn(lock, &wake_q, &wake_sleeper_q))
++ rt_mutex_postunlock(&wake_q, &wake_sleeper_q);
+ }
+
+ int __sched __rt_mutex_lock_state(struct rt_mutex *lock, int state)
+@@ -1597,16 +1926,13 @@ void __sched __rt_mutex_unlock(struct rt_mutex *lock)
+ void __sched rt_mutex_unlock(struct rt_mutex *lock)
+ {
+ mutex_release(&lock->dep_map, _RET_IP_);
+- rt_mutex_fastunlock(lock, rt_mutex_slowunlock);
++ __rt_mutex_unlock(lock);
+ }
+ EXPORT_SYMBOL_GPL(rt_mutex_unlock);
+
+-/**
+- * Futex variant, that since futex variants do not use the fast-path, can be
+- * simple and will not need to retry.
+- */
+-bool __sched __rt_mutex_futex_unlock(struct rt_mutex *lock,
+- struct wake_q_head *wake_q)
++static bool __sched __rt_mutex_unlock_common(struct rt_mutex *lock,
++ struct wake_q_head *wake_q,
++ struct wake_q_head *wq_sleeper)
+ {
+ lockdep_assert_held(&lock->wait_lock);
+
+@@ -1623,23 +1949,35 @@ bool __sched __rt_mutex_futex_unlock(struct rt_mutex *lock,
+ * avoid inversion prior to the wakeup. preempt_disable()
+ * therein pairs with rt_mutex_postunlock().
+ */
+- mark_wakeup_next_waiter(wake_q, lock);
++ mark_wakeup_next_waiter(wake_q, wq_sleeper, lock);
+
+ return true; /* call postunlock() */
+ }
+
++/**
++ * Futex variant, that since futex variants do not use the fast-path, can be
++ * simple and will not need to retry.
++ */
++bool __sched __rt_mutex_futex_unlock(struct rt_mutex *lock,
++ struct wake_q_head *wake_q,
++ struct wake_q_head *wq_sleeper)
++{
++ return __rt_mutex_unlock_common(lock, wake_q, wq_sleeper);
++}
++
+ void __sched rt_mutex_futex_unlock(struct rt_mutex *lock)
+ {
+ DEFINE_WAKE_Q(wake_q);
++ DEFINE_WAKE_Q(wake_sleeper_q);
+ unsigned long flags;
+ bool postunlock;
+
+ raw_spin_lock_irqsave(&lock->wait_lock, flags);
+- postunlock = __rt_mutex_futex_unlock(lock, &wake_q);
++ postunlock = __rt_mutex_futex_unlock(lock, &wake_q, &wake_sleeper_q);
+ raw_spin_unlock_irqrestore(&lock->wait_lock, flags);
+
+ if (postunlock)
+- rt_mutex_postunlock(&wake_q);
++ rt_mutex_postunlock(&wake_q, &wake_sleeper_q);
+ }
+
+ /**
+@@ -1675,7 +2013,7 @@ void __rt_mutex_init(struct rt_mutex *lock, const char *name,
+ if (name && key)
+ debug_rt_mutex_init(lock, name, key);
+ }
+-EXPORT_SYMBOL_GPL(__rt_mutex_init);
++EXPORT_SYMBOL(__rt_mutex_init);
+
+ /**
+ * rt_mutex_init_proxy_locked - initialize and lock a rt_mutex on behalf of a
+@@ -1695,6 +2033,14 @@ void rt_mutex_init_proxy_locked(struct rt_mutex *lock,
+ struct task_struct *proxy_owner)
+ {
+ __rt_mutex_init(lock, NULL, NULL);
++#ifdef CONFIG_DEBUG_SPINLOCK
++ /*
++ * get another key class for the wait_lock. LOCK_PI and UNLOCK_PI is
++ * holding the ->wait_lock of the proxy_lock while unlocking a sleeping
++ * lock.
++ */
++ raw_spin_lock_init(&lock->wait_lock);
++#endif
+ debug_rt_mutex_proxy_lock(lock, proxy_owner);
+ rt_mutex_set_owner(lock, proxy_owner);
+ }
+@@ -1717,6 +2063,26 @@ void rt_mutex_proxy_unlock(struct rt_mutex *lock)
+ rt_mutex_set_owner(lock, NULL);
+ }
+
++static void fixup_rt_mutex_blocked(struct rt_mutex *lock)
++{
++ struct task_struct *tsk = current;
++ /*
++ * RT has a problem here when the wait got interrupted by a timeout
++ * or a signal. task->pi_blocked_on is still set. The task must
++ * acquire the hash bucket lock when returning from this function.
++ *
++ * If the hash bucket lock is contended then the
++ * BUG_ON(rt_mutex_real_waiter(task->pi_blocked_on)) in
++ * task_blocks_on_rt_mutex() will trigger. This can be avoided by
++ * clearing task->pi_blocked_on which removes the task from the
++ * boosting chain of the rtmutex. That's correct because the task
++ * is not longer blocked on it.
++ */
++ raw_spin_lock(&tsk->pi_lock);
++ tsk->pi_blocked_on = NULL;
++ raw_spin_unlock(&tsk->pi_lock);
++}
++
+ /**
+ * __rt_mutex_start_proxy_lock() - Start lock acquisition for another task
+ * @lock: the rt_mutex to take
+@@ -1789,6 +2155,9 @@ int __rt_mutex_start_proxy_lock(struct rt_mutex *lock,
+ ret = 0;
+ }
+
++ if (ret)
++ fixup_rt_mutex_blocked(lock);
++
+ return ret;
+ }
+
+@@ -1878,6 +2247,9 @@ int rt_mutex_wait_proxy_lock(struct rt_mutex *lock,
+ * have to fix that up.
+ */
+ fixup_rt_mutex_waiters(lock);
++ if (ret)
++ fixup_rt_mutex_blocked(lock);
++
+ raw_spin_unlock_irq(&lock->wait_lock);
+
+ return ret;
+diff --git a/kernel/locking/rtmutex_common.h b/kernel/locking/rtmutex_common.h
+index 9d1e974ca9c3..c1a280167e3c 100644
+--- a/kernel/locking/rtmutex_common.h
++++ b/kernel/locking/rtmutex_common.h
+@@ -31,6 +31,7 @@ struct rt_mutex_waiter {
+ struct task_struct *task;
+ struct rt_mutex *lock;
+ int prio;
++ bool savestate;
+ u64 deadline;
+ };
+
+@@ -133,7 +134,7 @@ extern struct task_struct *rt_mutex_next_owner(struct rt_mutex *lock);
+ extern void rt_mutex_init_proxy_locked(struct rt_mutex *lock,
+ struct task_struct *proxy_owner);
+ extern void rt_mutex_proxy_unlock(struct rt_mutex *lock);
+-extern void rt_mutex_init_waiter(struct rt_mutex_waiter *waiter);
++extern void rt_mutex_init_waiter(struct rt_mutex_waiter *waiter, bool savetate);
+ extern int __rt_mutex_start_proxy_lock(struct rt_mutex *lock,
+ struct rt_mutex_waiter *waiter,
+ struct task_struct *task);
+@@ -151,9 +152,12 @@ extern int __rt_mutex_futex_trylock(struct rt_mutex *l);
+
+ extern void rt_mutex_futex_unlock(struct rt_mutex *lock);
+ extern bool __rt_mutex_futex_unlock(struct rt_mutex *lock,
+- struct wake_q_head *wqh);
++ struct wake_q_head *wqh,
++ struct wake_q_head *wq_sleeper);
++
++extern void rt_mutex_postunlock(struct wake_q_head *wake_q,
++ struct wake_q_head *wake_sleeper_q);
+
+-extern void rt_mutex_postunlock(struct wake_q_head *wake_q);
+ /* RW semaphore special interface */
+
+ extern int __rt_mutex_lock_state(struct rt_mutex *lock, int state);
+@@ -163,6 +167,10 @@ int __sched rt_mutex_slowlock_locked(struct rt_mutex *lock, int state,
+ struct hrtimer_sleeper *timeout,
+ enum rtmutex_chainwalk chwalk,
+ struct rt_mutex_waiter *waiter);
++void __sched rt_spin_lock_slowlock_locked(struct rt_mutex *lock,
++ struct rt_mutex_waiter *waiter,
++ unsigned long flags);
++void __sched rt_spin_lock_slowunlock(struct rt_mutex *lock);
+
+ #ifdef CONFIG_DEBUG_RT_MUTEXES
+ # include "rtmutex-debug.h"
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index f6d40256c0d4..be5d41ed6ff2 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -511,9 +511,15 @@ static bool set_nr_if_polling(struct task_struct *p)
+ #endif
+ #endif
+
+-static bool __wake_q_add(struct wake_q_head *head, struct task_struct *task)
++static bool __wake_q_add(struct wake_q_head *head, struct task_struct *task,
++ bool sleeper)
+ {
+- struct wake_q_node *node = &task->wake_q;
++ struct wake_q_node *node;
++
++ if (sleeper)
++ node = &task->wake_q_sleeper;
++ else
++ node = &task->wake_q;
+
+ /*
+ * Atomically grab the task, if ->wake_q is !nil already it means
+@@ -549,7 +555,13 @@ static bool __wake_q_add(struct wake_q_head *head, struct task_struct *task)
+ */
+ void wake_q_add(struct wake_q_head *head, struct task_struct *task)
+ {
+- if (__wake_q_add(head, task))
++ if (__wake_q_add(head, task, false))
++ get_task_struct(task);
++}
++
++void wake_q_add_sleeper(struct wake_q_head *head, struct task_struct *task)
++{
++ if (__wake_q_add(head, task, true))
+ get_task_struct(task);
+ }
+
+@@ -572,28 +584,39 @@ void wake_q_add(struct wake_q_head *head, struct task_struct *task)
+ */
+ void wake_q_add_safe(struct wake_q_head *head, struct task_struct *task)
+ {
+- if (!__wake_q_add(head, task))
++ if (!__wake_q_add(head, task, false))
+ put_task_struct(task);
+ }
+
+-void wake_up_q(struct wake_q_head *head)
++void __wake_up_q(struct wake_q_head *head, bool sleeper)
+ {
+ struct wake_q_node *node = head->first;
+
+ while (node != WAKE_Q_TAIL) {
+ struct task_struct *task;
+
+- task = container_of(node, struct task_struct, wake_q);
++ if (sleeper)
++ task = container_of(node, struct task_struct, wake_q_sleeper);
++ else
++ task = container_of(node, struct task_struct, wake_q);
++
+ BUG_ON(!task);
+ /* Task can safely be re-inserted now: */
+ node = node->next;
+- task->wake_q.next = NULL;
+
++ if (sleeper)
++ task->wake_q_sleeper.next = NULL;
++ else
++ task->wake_q.next = NULL;
+ /*
+ * wake_up_process() executes a full barrier, which pairs with
+ * the queueing in wake_q_add() so as not to miss wakeups.
+ */
+- wake_up_process(task);
++ if (sleeper)
++ wake_up_lock_sleeper(task);
++ else
++ wake_up_process(task);
++
+ put_task_struct(task);
+ }
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0171-locking-rtmutex-Allow-rt_mutex_trylock-on-PREEMPT_RT.patch b/debian/patches-rt/0171-locking-rtmutex-Allow-rt_mutex_trylock-on-PREEMPT_RT.patch
new file mode 100644
index 000000000..4c2c1b803
--- /dev/null
+++ b/debian/patches-rt/0171-locking-rtmutex-Allow-rt_mutex_trylock-on-PREEMPT_RT.patch
@@ -0,0 +1,37 @@
+From bcc9f5e2b7eb56660512649787ab651fc138d9e4 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 2 Dec 2015 11:34:07 +0100
+Subject: [PATCH 171/323] locking/rtmutex: Allow rt_mutex_trylock() on
+ PREEMPT_RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Non PREEMPT_RT kernel can deadlock on rt_mutex_trylock() in softirq
+context.
+On PREEMPT_RT the softirq context is handled in thread context. This
+avoids the deadlock in the slow path and PI-boosting will be done on the
+correct thread.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/locking/rtmutex.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index 35cdbbb5daa9..1bf7a04688c5 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -1884,7 +1884,11 @@ int __sched __rt_mutex_futex_trylock(struct rt_mutex *lock)
+
+ int __sched __rt_mutex_trylock(struct rt_mutex *lock)
+ {
++#ifdef CONFIG_PREEMPT_RT
++ if (WARN_ON_ONCE(in_irq() || in_nmi()))
++#else
+ if (WARN_ON_ONCE(in_irq() || in_nmi() || in_serving_softirq()))
++#endif
+ return 0;
+
+ return rt_mutex_fasttrylock(lock, rt_mutex_slowtrylock);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0172-locking-rtmutex-add-mutex-implementation-based-on-rt.patch b/debian/patches-rt/0172-locking-rtmutex-add-mutex-implementation-based-on-rt.patch
new file mode 100644
index 000000000..655fd8534
--- /dev/null
+++ b/debian/patches-rt/0172-locking-rtmutex-add-mutex-implementation-based-on-rt.patch
@@ -0,0 +1,385 @@
+From c363a86a2fab38d43a50a8841e2b6d64b87ae69b Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 12 Oct 2017 17:17:03 +0200
+Subject: [PATCH 172/323] locking/rtmutex: add mutex implementation based on
+ rtmutex
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/mutex_rt.h | 130 ++++++++++++++++++++++
+ kernel/locking/mutex-rt.c | 224 ++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 354 insertions(+)
+ create mode 100644 include/linux/mutex_rt.h
+ create mode 100644 kernel/locking/mutex-rt.c
+
+diff --git a/include/linux/mutex_rt.h b/include/linux/mutex_rt.h
+new file mode 100644
+index 000000000000..f0b2e07cd5c5
+--- /dev/null
++++ b/include/linux/mutex_rt.h
+@@ -0,0 +1,130 @@
++// SPDX-License-Identifier: GPL-2.0-only
++#ifndef __LINUX_MUTEX_RT_H
++#define __LINUX_MUTEX_RT_H
++
++#ifndef __LINUX_MUTEX_H
++#error "Please include mutex.h"
++#endif
++
++#include <linux/rtmutex.h>
++
++/* FIXME: Just for __lockfunc */
++#include <linux/spinlock.h>
++
++struct mutex {
++ struct rt_mutex lock;
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++ struct lockdep_map dep_map;
++#endif
++};
++
++#define __MUTEX_INITIALIZER(mutexname) \
++ { \
++ .lock = __RT_MUTEX_INITIALIZER(mutexname.lock) \
++ __DEP_MAP_MUTEX_INITIALIZER(mutexname) \
++ }
++
++#define DEFINE_MUTEX(mutexname) \
++ struct mutex mutexname = __MUTEX_INITIALIZER(mutexname)
++
++extern void __mutex_do_init(struct mutex *lock, const char *name, struct lock_class_key *key);
++extern void __lockfunc _mutex_lock(struct mutex *lock);
++extern void __lockfunc _mutex_lock_io_nested(struct mutex *lock, int subclass);
++extern int __lockfunc _mutex_lock_interruptible(struct mutex *lock);
++extern int __lockfunc _mutex_lock_killable(struct mutex *lock);
++extern void __lockfunc _mutex_lock_nested(struct mutex *lock, int subclass);
++extern void __lockfunc _mutex_lock_nest_lock(struct mutex *lock, struct lockdep_map *nest_lock);
++extern int __lockfunc _mutex_lock_interruptible_nested(struct mutex *lock, int subclass);
++extern int __lockfunc _mutex_lock_killable_nested(struct mutex *lock, int subclass);
++extern int __lockfunc _mutex_trylock(struct mutex *lock);
++extern void __lockfunc _mutex_unlock(struct mutex *lock);
++
++#define mutex_is_locked(l) rt_mutex_is_locked(&(l)->lock)
++#define mutex_lock(l) _mutex_lock(l)
++#define mutex_lock_interruptible(l) _mutex_lock_interruptible(l)
++#define mutex_lock_killable(l) _mutex_lock_killable(l)
++#define mutex_trylock(l) _mutex_trylock(l)
++#define mutex_unlock(l) _mutex_unlock(l)
++#define mutex_lock_io(l) _mutex_lock_io_nested(l, 0);
++
++#define __mutex_owner(l) ((l)->lock.owner)
++
++#ifdef CONFIG_DEBUG_MUTEXES
++#define mutex_destroy(l) rt_mutex_destroy(&(l)->lock)
++#else
++static inline void mutex_destroy(struct mutex *lock) {}
++#endif
++
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++# define mutex_lock_nested(l, s) _mutex_lock_nested(l, s)
++# define mutex_lock_interruptible_nested(l, s) \
++ _mutex_lock_interruptible_nested(l, s)
++# define mutex_lock_killable_nested(l, s) \
++ _mutex_lock_killable_nested(l, s)
++# define mutex_lock_io_nested(l, s) _mutex_lock_io_nested(l, s)
++
++# define mutex_lock_nest_lock(lock, nest_lock) \
++do { \
++ typecheck(struct lockdep_map *, &(nest_lock)->dep_map); \
++ _mutex_lock_nest_lock(lock, &(nest_lock)->dep_map); \
++} while (0)
++
++#else
++# define mutex_lock_nested(l, s) _mutex_lock(l)
++# define mutex_lock_interruptible_nested(l, s) \
++ _mutex_lock_interruptible(l)
++# define mutex_lock_killable_nested(l, s) \
++ _mutex_lock_killable(l)
++# define mutex_lock_nest_lock(lock, nest_lock) mutex_lock(lock)
++# define mutex_lock_io_nested(l, s) _mutex_lock_io_nested(l, s)
++#endif
++
++# define mutex_init(mutex) \
++do { \
++ static struct lock_class_key __key; \
++ \
++ rt_mutex_init(&(mutex)->lock); \
++ __mutex_do_init((mutex), #mutex, &__key); \
++} while (0)
++
++# define __mutex_init(mutex, name, key) \
++do { \
++ rt_mutex_init(&(mutex)->lock); \
++ __mutex_do_init((mutex), name, key); \
++} while (0)
++
++/**
++ * These values are chosen such that FAIL and SUCCESS match the
++ * values of the regular mutex_trylock().
++ */
++enum mutex_trylock_recursive_enum {
++ MUTEX_TRYLOCK_FAILED = 0,
++ MUTEX_TRYLOCK_SUCCESS = 1,
++ MUTEX_TRYLOCK_RECURSIVE,
++};
++/**
++ * mutex_trylock_recursive - trylock variant that allows recursive locking
++ * @lock: mutex to be locked
++ *
++ * This function should not be used, _ever_. It is purely for hysterical GEM
++ * raisins, and once those are gone this will be removed.
++ *
++ * Returns:
++ * MUTEX_TRYLOCK_FAILED - trylock failed,
++ * MUTEX_TRYLOCK_SUCCESS - lock acquired,
++ * MUTEX_TRYLOCK_RECURSIVE - we already owned the lock.
++ */
++int __rt_mutex_owner_current(struct rt_mutex *lock);
++
++static inline /* __deprecated */ __must_check enum mutex_trylock_recursive_enum
++mutex_trylock_recursive(struct mutex *lock)
++{
++ if (unlikely(__rt_mutex_owner_current(&lock->lock)))
++ return MUTEX_TRYLOCK_RECURSIVE;
++
++ return mutex_trylock(lock);
++}
++
++extern int atomic_dec_and_mutex_lock(atomic_t *cnt, struct mutex *lock);
++
++#endif
+diff --git a/kernel/locking/mutex-rt.c b/kernel/locking/mutex-rt.c
+new file mode 100644
+index 000000000000..2b849e6b9b4a
+--- /dev/null
++++ b/kernel/locking/mutex-rt.c
+@@ -0,0 +1,224 @@
++// SPDX-License-Identifier: GPL-2.0-only
++/*
++ * Real-Time Preemption Support
++ *
++ * started by Ingo Molnar:
++ *
++ * Copyright (C) 2004-2006 Red Hat, Inc., Ingo Molnar <mingo@redhat.com>
++ * Copyright (C) 2006, Timesys Corp., Thomas Gleixner <tglx@timesys.com>
++ *
++ * historic credit for proving that Linux spinlocks can be implemented via
++ * RT-aware mutexes goes to many people: The Pmutex project (Dirk Grambow
++ * and others) who prototyped it on 2.4 and did lots of comparative
++ * research and analysis; TimeSys, for proving that you can implement a
++ * fully preemptible kernel via the use of IRQ threading and mutexes;
++ * Bill Huey for persuasively arguing on lkml that the mutex model is the
++ * right one; and to MontaVista, who ported pmutexes to 2.6.
++ *
++ * This code is a from-scratch implementation and is not based on pmutexes,
++ * but the idea of converting spinlocks to mutexes is used here too.
++ *
++ * lock debugging, locking tree, deadlock detection:
++ *
++ * Copyright (C) 2004, LynuxWorks, Inc., Igor Manyilov, Bill Huey
++ * Released under the General Public License (GPL).
++ *
++ * Includes portions of the generic R/W semaphore implementation from:
++ *
++ * Copyright (c) 2001 David Howells (dhowells@redhat.com).
++ * - Derived partially from idea by Andrea Arcangeli <andrea@suse.de>
++ * - Derived also from comments by Linus
++ *
++ * Pending ownership of locks and ownership stealing:
++ *
++ * Copyright (C) 2005, Kihon Technologies Inc., Steven Rostedt
++ *
++ * (also by Steven Rostedt)
++ * - Converted single pi_lock to individual task locks.
++ *
++ * By Esben Nielsen:
++ * Doing priority inheritance with help of the scheduler.
++ *
++ * Copyright (C) 2006, Timesys Corp., Thomas Gleixner <tglx@timesys.com>
++ * - major rework based on Esben Nielsens initial patch
++ * - replaced thread_info references by task_struct refs
++ * - removed task->pending_owner dependency
++ * - BKL drop/reacquire for semaphore style locks to avoid deadlocks
++ * in the scheduler return path as discussed with Steven Rostedt
++ *
++ * Copyright (C) 2006, Kihon Technologies Inc.
++ * Steven Rostedt <rostedt@goodmis.org>
++ * - debugged and patched Thomas Gleixner's rework.
++ * - added back the cmpxchg to the rework.
++ * - turned atomic require back on for SMP.
++ */
++
++#include <linux/spinlock.h>
++#include <linux/rtmutex.h>
++#include <linux/sched.h>
++#include <linux/delay.h>
++#include <linux/module.h>
++#include <linux/kallsyms.h>
++#include <linux/syscalls.h>
++#include <linux/interrupt.h>
++#include <linux/plist.h>
++#include <linux/fs.h>
++#include <linux/futex.h>
++#include <linux/hrtimer.h>
++#include <linux/blkdev.h>
++
++#include "rtmutex_common.h"
++
++/*
++ * struct mutex functions
++ */
++void __mutex_do_init(struct mutex *mutex, const char *name,
++ struct lock_class_key *key)
++{
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++ /*
++ * Make sure we are not reinitializing a held lock:
++ */
++ debug_check_no_locks_freed((void *)mutex, sizeof(*mutex));
++ lockdep_init_map(&mutex->dep_map, name, key, 0);
++#endif
++ mutex->lock.save_state = 0;
++}
++EXPORT_SYMBOL(__mutex_do_init);
++
++static int _mutex_lock_blk_flush(struct mutex *lock, int state)
++{
++ /*
++ * Flush blk before ->pi_blocked_on is set. At schedule() time it is too
++ * late if one of the callbacks needs to acquire a sleeping lock.
++ */
++ if (blk_needs_flush_plug(current))
++ blk_schedule_flush_plug(current);
++ return __rt_mutex_lock_state(&lock->lock, state);
++}
++
++void __lockfunc _mutex_lock(struct mutex *lock)
++{
++ mutex_acquire(&lock->dep_map, 0, 0, _RET_IP_);
++ _mutex_lock_blk_flush(lock, TASK_UNINTERRUPTIBLE);
++}
++EXPORT_SYMBOL(_mutex_lock);
++
++void __lockfunc _mutex_lock_io_nested(struct mutex *lock, int subclass)
++{
++ int token;
++
++ token = io_schedule_prepare();
++
++ mutex_acquire_nest(&lock->dep_map, subclass, 0, NULL, _RET_IP_);
++ __rt_mutex_lock_state(&lock->lock, TASK_UNINTERRUPTIBLE);
++
++ io_schedule_finish(token);
++}
++EXPORT_SYMBOL_GPL(_mutex_lock_io_nested);
++
++int __lockfunc _mutex_lock_interruptible(struct mutex *lock)
++{
++ int ret;
++
++ mutex_acquire(&lock->dep_map, 0, 0, _RET_IP_);
++ ret = _mutex_lock_blk_flush(lock, TASK_INTERRUPTIBLE);
++ if (ret)
++ mutex_release(&lock->dep_map, _RET_IP_);
++ return ret;
++}
++EXPORT_SYMBOL(_mutex_lock_interruptible);
++
++int __lockfunc _mutex_lock_killable(struct mutex *lock)
++{
++ int ret;
++
++ mutex_acquire(&lock->dep_map, 0, 0, _RET_IP_);
++ ret = _mutex_lock_blk_flush(lock, TASK_KILLABLE);
++ if (ret)
++ mutex_release(&lock->dep_map, _RET_IP_);
++ return ret;
++}
++EXPORT_SYMBOL(_mutex_lock_killable);
++
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++void __lockfunc _mutex_lock_nested(struct mutex *lock, int subclass)
++{
++ mutex_acquire_nest(&lock->dep_map, subclass, 0, NULL, _RET_IP_);
++ _mutex_lock_blk_flush(lock, TASK_UNINTERRUPTIBLE);
++}
++EXPORT_SYMBOL(_mutex_lock_nested);
++
++void __lockfunc _mutex_lock_nest_lock(struct mutex *lock, struct lockdep_map *nest)
++{
++ mutex_acquire_nest(&lock->dep_map, 0, 0, nest, _RET_IP_);
++ _mutex_lock_blk_flush(lock, TASK_UNINTERRUPTIBLE);
++}
++EXPORT_SYMBOL(_mutex_lock_nest_lock);
++
++int __lockfunc _mutex_lock_interruptible_nested(struct mutex *lock, int subclass)
++{
++ int ret;
++
++ mutex_acquire_nest(&lock->dep_map, subclass, 0, NULL, _RET_IP_);
++ ret = _mutex_lock_blk_flush(lock, TASK_INTERRUPTIBLE);
++ if (ret)
++ mutex_release(&lock->dep_map, _RET_IP_);
++ return ret;
++}
++EXPORT_SYMBOL(_mutex_lock_interruptible_nested);
++
++int __lockfunc _mutex_lock_killable_nested(struct mutex *lock, int subclass)
++{
++ int ret;
++
++ mutex_acquire(&lock->dep_map, subclass, 0, _RET_IP_);
++ ret = _mutex_lock_blk_flush(lock, TASK_KILLABLE);
++ if (ret)
++ mutex_release(&lock->dep_map, _RET_IP_);
++ return ret;
++}
++EXPORT_SYMBOL(_mutex_lock_killable_nested);
++#endif
++
++int __lockfunc _mutex_trylock(struct mutex *lock)
++{
++ int ret = __rt_mutex_trylock(&lock->lock);
++
++ if (ret)
++ mutex_acquire(&lock->dep_map, 0, 1, _RET_IP_);
++
++ return ret;
++}
++EXPORT_SYMBOL(_mutex_trylock);
++
++void __lockfunc _mutex_unlock(struct mutex *lock)
++{
++ mutex_release(&lock->dep_map, _RET_IP_);
++ __rt_mutex_unlock(&lock->lock);
++}
++EXPORT_SYMBOL(_mutex_unlock);
++
++/**
++ * atomic_dec_and_mutex_lock - return holding mutex if we dec to 0
++ * @cnt: the atomic which we are to dec
++ * @lock: the mutex to return holding if we dec to 0
++ *
++ * return true and hold lock if we dec to 0, return false otherwise
++ */
++int atomic_dec_and_mutex_lock(atomic_t *cnt, struct mutex *lock)
++{
++ /* dec if we can't possibly hit 0 */
++ if (atomic_add_unless(cnt, -1, 1))
++ return 0;
++ /* we might hit 0, so take the lock */
++ mutex_lock(lock);
++ if (!atomic_dec_and_test(cnt)) {
++ /* when we actually did the dec, we didn't hit 0 */
++ mutex_unlock(lock);
++ return 0;
++ }
++ /* we hit 0, and we hold the lock */
++ return 1;
++}
++EXPORT_SYMBOL(atomic_dec_and_mutex_lock);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0173-locking-rtmutex-add-rwsem-implementation-based-on-rt.patch b/debian/patches-rt/0173-locking-rtmutex-add-rwsem-implementation-based-on-rt.patch
new file mode 100644
index 000000000..d1595ab45
--- /dev/null
+++ b/debian/patches-rt/0173-locking-rtmutex-add-rwsem-implementation-based-on-rt.patch
@@ -0,0 +1,455 @@
+From 9095a37abced402fb5197fef8d126069f63ebfb4 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 12 Oct 2017 17:28:34 +0200
+Subject: [PATCH 173/323] locking/rtmutex: add rwsem implementation based on
+ rtmutex
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The RT specific R/W semaphore implementation restricts the number of readers
+to one because a writer cannot block on multiple readers and inherit its
+priority or budget.
+
+The single reader restricting is painful in various ways:
+
+ - Performance bottleneck for multi-threaded applications in the page fault
+ path (mmap sem)
+
+ - Progress blocker for drivers which are carefully crafted to avoid the
+ potential reader/writer deadlock in mainline.
+
+The analysis of the writer code paths shows, that properly written RT tasks
+should not take them. Syscalls like mmap(), file access which take mmap sem
+write locked have unbound latencies which are completely unrelated to mmap
+sem. Other R/W sem users like graphics drivers are not suitable for RT tasks
+either.
+
+So there is little risk to hurt RT tasks when the RT rwsem implementation is
+changed in the following way:
+
+ - Allow concurrent readers
+
+ - Make writers block until the last reader left the critical section. This
+ blocking is not subject to priority/budget inheritance.
+
+ - Readers blocked on a writer inherit their priority/budget in the normal
+ way.
+
+There is a drawback with this scheme. R/W semaphores become writer unfair
+though the applications which have triggered writer starvation (mostly on
+mmap_sem) in the past are not really the typical workloads running on a RT
+system. So while it's unlikely to hit writer starvation, it's possible. If
+there are unexpected workloads on RT systems triggering it, we need to rethink
+the approach.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/rwsem-rt.h | 70 +++++++++
+ kernel/locking/rwsem-rt.c | 318 ++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 388 insertions(+)
+ create mode 100644 include/linux/rwsem-rt.h
+ create mode 100644 kernel/locking/rwsem-rt.c
+
+diff --git a/include/linux/rwsem-rt.h b/include/linux/rwsem-rt.h
+new file mode 100644
+index 000000000000..0ba8aae9a198
+--- /dev/null
++++ b/include/linux/rwsem-rt.h
+@@ -0,0 +1,70 @@
++// SPDX-License-Identifier: GPL-2.0-only
++#ifndef _LINUX_RWSEM_RT_H
++#define _LINUX_RWSEM_RT_H
++
++#ifndef _LINUX_RWSEM_H
++#error "Include rwsem.h"
++#endif
++
++#include <linux/rtmutex.h>
++#include <linux/swait.h>
++
++#define READER_BIAS (1U << 31)
++#define WRITER_BIAS (1U << 30)
++
++struct rw_semaphore {
++ atomic_t readers;
++ struct rt_mutex rtmutex;
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++ struct lockdep_map dep_map;
++#endif
++};
++
++#define __RWSEM_INITIALIZER(name) \
++{ \
++ .readers = ATOMIC_INIT(READER_BIAS), \
++ .rtmutex = __RT_MUTEX_INITIALIZER(name.rtmutex), \
++ RW_DEP_MAP_INIT(name) \
++}
++
++#define DECLARE_RWSEM(lockname) \
++ struct rw_semaphore lockname = __RWSEM_INITIALIZER(lockname)
++
++extern void __rwsem_init(struct rw_semaphore *rwsem, const char *name,
++ struct lock_class_key *key);
++
++#define __init_rwsem(sem, name, key) \
++do { \
++ rt_mutex_init(&(sem)->rtmutex); \
++ __rwsem_init((sem), (name), (key)); \
++} while (0)
++
++#define init_rwsem(sem) \
++do { \
++ static struct lock_class_key __key; \
++ \
++ __init_rwsem((sem), #sem, &__key); \
++} while (0)
++
++static inline int rwsem_is_locked(struct rw_semaphore *sem)
++{
++ return atomic_read(&sem->readers) != READER_BIAS;
++}
++
++static inline int rwsem_is_contended(struct rw_semaphore *sem)
++{
++ return atomic_read(&sem->readers) > 0;
++}
++
++extern void __down_read(struct rw_semaphore *sem);
++extern int __down_read_interruptible(struct rw_semaphore *sem);
++extern int __down_read_killable(struct rw_semaphore *sem);
++extern int __down_read_trylock(struct rw_semaphore *sem);
++extern void __down_write(struct rw_semaphore *sem);
++extern int __must_check __down_write_killable(struct rw_semaphore *sem);
++extern int __down_write_trylock(struct rw_semaphore *sem);
++extern void __up_read(struct rw_semaphore *sem);
++extern void __up_write(struct rw_semaphore *sem);
++extern void __downgrade_write(struct rw_semaphore *sem);
++
++#endif
+diff --git a/kernel/locking/rwsem-rt.c b/kernel/locking/rwsem-rt.c
+new file mode 100644
+index 000000000000..a0771c150041
+--- /dev/null
++++ b/kernel/locking/rwsem-rt.c
+@@ -0,0 +1,318 @@
++// SPDX-License-Identifier: GPL-2.0-only
++#include <linux/rwsem.h>
++#include <linux/sched/debug.h>
++#include <linux/sched/signal.h>
++#include <linux/export.h>
++#include <linux/blkdev.h>
++
++#include "rtmutex_common.h"
++
++/*
++ * RT-specific reader/writer semaphores
++ *
++ * down_write()
++ * 1) Lock sem->rtmutex
++ * 2) Remove the reader BIAS to force readers into the slow path
++ * 3) Wait until all readers have left the critical region
++ * 4) Mark it write locked
++ *
++ * up_write()
++ * 1) Remove the write locked marker
++ * 2) Set the reader BIAS so readers can use the fast path again
++ * 3) Unlock sem->rtmutex to release blocked readers
++ *
++ * down_read()
++ * 1) Try fast path acquisition (reader BIAS is set)
++ * 2) Take sem->rtmutex.wait_lock which protects the writelocked flag
++ * 3) If !writelocked, acquire it for read
++ * 4) If writelocked, block on sem->rtmutex
++ * 5) unlock sem->rtmutex, goto 1)
++ *
++ * up_read()
++ * 1) Try fast path release (reader count != 1)
++ * 2) Wake the writer waiting in down_write()#3
++ *
++ * down_read()#3 has the consequence, that rw semaphores on RT are not writer
++ * fair, but writers, which should be avoided in RT tasks (think mmap_sem),
++ * are subject to the rtmutex priority/DL inheritance mechanism.
++ *
++ * It's possible to make the rw semaphores writer fair by keeping a list of
++ * active readers. A blocked writer would force all newly incoming readers to
++ * block on the rtmutex, but the rtmutex would have to be proxy locked for one
++ * reader after the other. We can't use multi-reader inheritance because there
++ * is no way to support that with SCHED_DEADLINE. Implementing the one by one
++ * reader boosting/handover mechanism is a major surgery for a very dubious
++ * value.
++ *
++ * The risk of writer starvation is there, but the pathological use cases
++ * which trigger it are not necessarily the typical RT workloads.
++ */
++
++void __rwsem_init(struct rw_semaphore *sem, const char *name,
++ struct lock_class_key *key)
++{
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++ /*
++ * Make sure we are not reinitializing a held semaphore:
++ */
++ debug_check_no_locks_freed((void *)sem, sizeof(*sem));
++ lockdep_init_map(&sem->dep_map, name, key, 0);
++#endif
++ atomic_set(&sem->readers, READER_BIAS);
++}
++EXPORT_SYMBOL(__rwsem_init);
++
++int __down_read_trylock(struct rw_semaphore *sem)
++{
++ int r, old;
++
++ /*
++ * Increment reader count, if sem->readers < 0, i.e. READER_BIAS is
++ * set.
++ */
++ for (r = atomic_read(&sem->readers); r < 0;) {
++ old = atomic_cmpxchg(&sem->readers, r, r + 1);
++ if (likely(old == r))
++ return 1;
++ r = old;
++ }
++ return 0;
++}
++
++static int __sched __down_read_common(struct rw_semaphore *sem, int state)
++{
++ struct rt_mutex *m = &sem->rtmutex;
++ struct rt_mutex_waiter waiter;
++ int ret;
++
++ if (__down_read_trylock(sem))
++ return 0;
++
++ /*
++ * Flush blk before ->pi_blocked_on is set. At schedule() time it is too
++ * late if one of the callbacks needs to acquire a sleeping lock.
++ */
++ if (blk_needs_flush_plug(current))
++ blk_schedule_flush_plug(current);
++
++ might_sleep();
++ raw_spin_lock_irq(&m->wait_lock);
++ /*
++ * Allow readers as long as the writer has not completely
++ * acquired the semaphore for write.
++ */
++ if (atomic_read(&sem->readers) != WRITER_BIAS) {
++ atomic_inc(&sem->readers);
++ raw_spin_unlock_irq(&m->wait_lock);
++ return 0;
++ }
++
++ /*
++ * Call into the slow lock path with the rtmutex->wait_lock
++ * held, so this can't result in the following race:
++ *
++ * Reader1 Reader2 Writer
++ * down_read()
++ * down_write()
++ * rtmutex_lock(m)
++ * swait()
++ * down_read()
++ * unlock(m->wait_lock)
++ * up_read()
++ * swake()
++ * lock(m->wait_lock)
++ * sem->writelocked=true
++ * unlock(m->wait_lock)
++ *
++ * up_write()
++ * sem->writelocked=false
++ * rtmutex_unlock(m)
++ * down_read()
++ * down_write()
++ * rtmutex_lock(m)
++ * swait()
++ * rtmutex_lock(m)
++ *
++ * That would put Reader1 behind the writer waiting on
++ * Reader2 to call up_read() which might be unbound.
++ */
++ rt_mutex_init_waiter(&waiter, false);
++ ret = rt_mutex_slowlock_locked(m, state, NULL, RT_MUTEX_MIN_CHAINWALK,
++ &waiter);
++ /*
++ * The slowlock() above is guaranteed to return with the rtmutex (for
++ * ret = 0) is now held, so there can't be a writer active. Increment
++ * the reader count and immediately drop the rtmutex again.
++ * For ret != 0 we don't hold the rtmutex and need unlock the wait_lock.
++ * We don't own the lock then.
++ */
++ if (!ret)
++ atomic_inc(&sem->readers);
++ raw_spin_unlock_irq(&m->wait_lock);
++ if (!ret)
++ __rt_mutex_unlock(m);
++
++ debug_rt_mutex_free_waiter(&waiter);
++ return ret;
++}
++
++void __down_read(struct rw_semaphore *sem)
++{
++ int ret;
++
++ ret = __down_read_common(sem, TASK_UNINTERRUPTIBLE);
++ WARN_ON_ONCE(ret);
++}
++
++int __down_read_interruptible(struct rw_semaphore *sem)
++{
++ int ret;
++
++ ret = __down_read_common(sem, TASK_INTERRUPTIBLE);
++ if (likely(!ret))
++ return ret;
++ WARN_ONCE(ret != -EINTR, "Unexpected state: %d\n", ret);
++ return -EINTR;
++}
++
++int __down_read_killable(struct rw_semaphore *sem)
++{
++ int ret;
++
++ ret = __down_read_common(sem, TASK_KILLABLE);
++ if (likely(!ret))
++ return ret;
++ WARN_ONCE(ret != -EINTR, "Unexpected state: %d\n", ret);
++ return -EINTR;
++}
++
++void __up_read(struct rw_semaphore *sem)
++{
++ struct rt_mutex *m = &sem->rtmutex;
++ struct task_struct *tsk;
++
++ /*
++ * sem->readers can only hit 0 when a writer is waiting for the
++ * active readers to leave the critical region.
++ */
++ if (!atomic_dec_and_test(&sem->readers))
++ return;
++
++ might_sleep();
++ raw_spin_lock_irq(&m->wait_lock);
++ /*
++ * Wake the writer, i.e. the rtmutex owner. It might release the
++ * rtmutex concurrently in the fast path (due to a signal), but to
++ * clean up the rwsem it needs to acquire m->wait_lock. The worst
++ * case which can happen is a spurious wakeup.
++ */
++ tsk = rt_mutex_owner(m);
++ if (tsk)
++ wake_up_process(tsk);
++
++ raw_spin_unlock_irq(&m->wait_lock);
++}
++
++static void __up_write_unlock(struct rw_semaphore *sem, int bias,
++ unsigned long flags)
++{
++ struct rt_mutex *m = &sem->rtmutex;
++
++ atomic_add(READER_BIAS - bias, &sem->readers);
++ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
++ __rt_mutex_unlock(m);
++}
++
++static int __sched __down_write_common(struct rw_semaphore *sem, int state)
++{
++ struct rt_mutex *m = &sem->rtmutex;
++ unsigned long flags;
++
++ /*
++ * Flush blk before ->pi_blocked_on is set. At schedule() time it is too
++ * late if one of the callbacks needs to acquire a sleeping lock.
++ */
++ if (blk_needs_flush_plug(current))
++ blk_schedule_flush_plug(current);
++
++ /* Take the rtmutex as a first step */
++ if (__rt_mutex_lock_state(m, state))
++ return -EINTR;
++
++ /* Force readers into slow path */
++ atomic_sub(READER_BIAS, &sem->readers);
++ might_sleep();
++
++ set_current_state(state);
++ for (;;) {
++ raw_spin_lock_irqsave(&m->wait_lock, flags);
++ /* Have all readers left the critical region? */
++ if (!atomic_read(&sem->readers)) {
++ atomic_set(&sem->readers, WRITER_BIAS);
++ __set_current_state(TASK_RUNNING);
++ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
++ return 0;
++ }
++
++ if (signal_pending_state(state, current)) {
++ __set_current_state(TASK_RUNNING);
++ __up_write_unlock(sem, 0, flags);
++ return -EINTR;
++ }
++ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
++
++ if (atomic_read(&sem->readers) != 0) {
++ schedule();
++ set_current_state(state);
++ }
++ }
++}
++
++void __sched __down_write(struct rw_semaphore *sem)
++{
++ __down_write_common(sem, TASK_UNINTERRUPTIBLE);
++}
++
++int __sched __down_write_killable(struct rw_semaphore *sem)
++{
++ return __down_write_common(sem, TASK_KILLABLE);
++}
++
++int __down_write_trylock(struct rw_semaphore *sem)
++{
++ struct rt_mutex *m = &sem->rtmutex;
++ unsigned long flags;
++
++ if (!__rt_mutex_trylock(m))
++ return 0;
++
++ atomic_sub(READER_BIAS, &sem->readers);
++
++ raw_spin_lock_irqsave(&m->wait_lock, flags);
++ if (!atomic_read(&sem->readers)) {
++ atomic_set(&sem->readers, WRITER_BIAS);
++ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
++ return 1;
++ }
++ __up_write_unlock(sem, 0, flags);
++ return 0;
++}
++
++void __up_write(struct rw_semaphore *sem)
++{
++ struct rt_mutex *m = &sem->rtmutex;
++ unsigned long flags;
++
++ raw_spin_lock_irqsave(&m->wait_lock, flags);
++ __up_write_unlock(sem, WRITER_BIAS, flags);
++}
++
++void __downgrade_write(struct rw_semaphore *sem)
++{
++ struct rt_mutex *m = &sem->rtmutex;
++ unsigned long flags;
++
++ raw_spin_lock_irqsave(&m->wait_lock, flags);
++ /* Release it and account current as reader */
++ __up_write_unlock(sem, WRITER_BIAS - 1, flags);
++}
+--
+2.43.0
+
diff --git a/debian/patches-rt/0174-locking-rtmutex-add-rwlock-implementation-based-on-r.patch b/debian/patches-rt/0174-locking-rtmutex-add-rwlock-implementation-based-on-r.patch
new file mode 100644
index 000000000..481610364
--- /dev/null
+++ b/debian/patches-rt/0174-locking-rtmutex-add-rwlock-implementation-based-on-r.patch
@@ -0,0 +1,548 @@
+From 85ee193953134a79ee60def58e6d8c98b8cd8e55 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 12 Oct 2017 17:18:06 +0200
+Subject: [PATCH 174/323] locking/rtmutex: add rwlock implementation based on
+ rtmutex
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The implementation is bias-based, similar to the rwsem implementation.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/rwlock_rt.h | 109 +++++++++++
+ include/linux/rwlock_types_rt.h | 56 ++++++
+ kernel/Kconfig.locks | 2 +-
+ kernel/locking/rwlock-rt.c | 328 ++++++++++++++++++++++++++++++++
+ 4 files changed, 494 insertions(+), 1 deletion(-)
+ create mode 100644 include/linux/rwlock_rt.h
+ create mode 100644 include/linux/rwlock_types_rt.h
+ create mode 100644 kernel/locking/rwlock-rt.c
+
+diff --git a/include/linux/rwlock_rt.h b/include/linux/rwlock_rt.h
+new file mode 100644
+index 000000000000..aafdb0a685d5
+--- /dev/null
++++ b/include/linux/rwlock_rt.h
+@@ -0,0 +1,109 @@
++// SPDX-License-Identifier: GPL-2.0-only
++#ifndef __LINUX_RWLOCK_RT_H
++#define __LINUX_RWLOCK_RT_H
++
++#ifndef __LINUX_SPINLOCK_H
++#error Do not include directly. Use spinlock.h
++#endif
++
++extern void __lockfunc rt_write_lock(rwlock_t *rwlock);
++extern void __lockfunc rt_read_lock(rwlock_t *rwlock);
++extern int __lockfunc rt_write_trylock(rwlock_t *rwlock);
++extern int __lockfunc rt_read_trylock(rwlock_t *rwlock);
++extern void __lockfunc rt_write_unlock(rwlock_t *rwlock);
++extern void __lockfunc rt_read_unlock(rwlock_t *rwlock);
++extern int __lockfunc rt_read_can_lock(rwlock_t *rwlock);
++extern int __lockfunc rt_write_can_lock(rwlock_t *rwlock);
++extern void __rt_rwlock_init(rwlock_t *rwlock, char *name, struct lock_class_key *key);
++
++#define read_can_lock(rwlock) rt_read_can_lock(rwlock)
++#define write_can_lock(rwlock) rt_write_can_lock(rwlock)
++
++#define read_trylock(lock) __cond_lock(lock, rt_read_trylock(lock))
++#define write_trylock(lock) __cond_lock(lock, rt_write_trylock(lock))
++
++static inline int __write_trylock_rt_irqsave(rwlock_t *lock, unsigned long *flags)
++{
++ *flags = 0;
++ return rt_write_trylock(lock);
++}
++
++#define write_trylock_irqsave(lock, flags) \
++ __cond_lock(lock, __write_trylock_rt_irqsave(lock, &(flags)))
++
++#define read_lock_irqsave(lock, flags) \
++ do { \
++ typecheck(unsigned long, flags); \
++ rt_read_lock(lock); \
++ flags = 0; \
++ } while (0)
++
++#define write_lock_irqsave(lock, flags) \
++ do { \
++ typecheck(unsigned long, flags); \
++ rt_write_lock(lock); \
++ flags = 0; \
++ } while (0)
++
++#define read_lock(lock) rt_read_lock(lock)
++
++#define read_lock_bh(lock) \
++ do { \
++ local_bh_disable(); \
++ rt_read_lock(lock); \
++ } while (0)
++
++#define read_lock_irq(lock) read_lock(lock)
++
++#define write_lock(lock) rt_write_lock(lock)
++
++#define write_lock_bh(lock) \
++ do { \
++ local_bh_disable(); \
++ rt_write_lock(lock); \
++ } while (0)
++
++#define write_lock_irq(lock) write_lock(lock)
++
++#define read_unlock(lock) rt_read_unlock(lock)
++
++#define read_unlock_bh(lock) \
++ do { \
++ rt_read_unlock(lock); \
++ local_bh_enable(); \
++ } while (0)
++
++#define read_unlock_irq(lock) read_unlock(lock)
++
++#define write_unlock(lock) rt_write_unlock(lock)
++
++#define write_unlock_bh(lock) \
++ do { \
++ rt_write_unlock(lock); \
++ local_bh_enable(); \
++ } while (0)
++
++#define write_unlock_irq(lock) write_unlock(lock)
++
++#define read_unlock_irqrestore(lock, flags) \
++ do { \
++ typecheck(unsigned long, flags); \
++ (void) flags; \
++ rt_read_unlock(lock); \
++ } while (0)
++
++#define write_unlock_irqrestore(lock, flags) \
++ do { \
++ typecheck(unsigned long, flags); \
++ (void) flags; \
++ rt_write_unlock(lock); \
++ } while (0)
++
++#define rwlock_init(rwl) \
++do { \
++ static struct lock_class_key __key; \
++ \
++ __rt_rwlock_init(rwl, #rwl, &__key); \
++} while (0)
++
++#endif
+diff --git a/include/linux/rwlock_types_rt.h b/include/linux/rwlock_types_rt.h
+new file mode 100644
+index 000000000000..4762391d659b
+--- /dev/null
++++ b/include/linux/rwlock_types_rt.h
+@@ -0,0 +1,56 @@
++// SPDX-License-Identifier: GPL-2.0-only
++#ifndef __LINUX_RWLOCK_TYPES_RT_H
++#define __LINUX_RWLOCK_TYPES_RT_H
++
++#ifndef __LINUX_SPINLOCK_TYPES_H
++#error "Do not include directly. Include spinlock_types.h instead"
++#endif
++
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++# define RW_DEP_MAP_INIT(lockname) .dep_map = { .name = #lockname }
++#else
++# define RW_DEP_MAP_INIT(lockname)
++#endif
++
++typedef struct rt_rw_lock rwlock_t;
++
++#define __RW_LOCK_UNLOCKED(name) __RWLOCK_RT_INITIALIZER(name)
++
++#define DEFINE_RWLOCK(name) \
++ rwlock_t name = __RW_LOCK_UNLOCKED(name)
++
++/*
++ * A reader biased implementation primarily for CPU pinning.
++ *
++ * Can be selected as general replacement for the single reader RT rwlock
++ * variant
++ */
++struct rt_rw_lock {
++ struct rt_mutex rtmutex;
++ atomic_t readers;
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++ struct lockdep_map dep_map;
++#endif
++};
++
++#define READER_BIAS (1U << 31)
++#define WRITER_BIAS (1U << 30)
++
++#define __RWLOCK_RT_INITIALIZER(name) \
++{ \
++ .readers = ATOMIC_INIT(READER_BIAS), \
++ .rtmutex = __RT_MUTEX_INITIALIZER_SAVE_STATE(name.rtmutex), \
++ RW_DEP_MAP_INIT(name) \
++}
++
++void __rwlock_biased_rt_init(struct rt_rw_lock *lock, const char *name,
++ struct lock_class_key *key);
++
++#define rwlock_biased_rt_init(rwlock) \
++ do { \
++ static struct lock_class_key __key; \
++ \
++ __rwlock_biased_rt_init((rwlock), #rwlock, &__key); \
++ } while (0)
++
++#endif
+diff --git a/kernel/Kconfig.locks b/kernel/Kconfig.locks
+index 3de8fd11873b..4198f0273ecd 100644
+--- a/kernel/Kconfig.locks
++++ b/kernel/Kconfig.locks
+@@ -251,7 +251,7 @@ config ARCH_USE_QUEUED_RWLOCKS
+
+ config QUEUED_RWLOCKS
+ def_bool y if ARCH_USE_QUEUED_RWLOCKS
+- depends on SMP
++ depends on SMP && !PREEMPT_RT
+
+ config ARCH_HAS_MMIOWB
+ bool
+diff --git a/kernel/locking/rwlock-rt.c b/kernel/locking/rwlock-rt.c
+new file mode 100644
+index 000000000000..1ee16b8fedd7
+--- /dev/null
++++ b/kernel/locking/rwlock-rt.c
+@@ -0,0 +1,328 @@
++// SPDX-License-Identifier: GPL-2.0-only
++#include <linux/sched/debug.h>
++#include <linux/export.h>
++
++#include "rtmutex_common.h"
++#include <linux/rwlock_types_rt.h>
++
++/*
++ * RT-specific reader/writer locks
++ *
++ * write_lock()
++ * 1) Lock lock->rtmutex
++ * 2) Remove the reader BIAS to force readers into the slow path
++ * 3) Wait until all readers have left the critical region
++ * 4) Mark it write locked
++ *
++ * write_unlock()
++ * 1) Remove the write locked marker
++ * 2) Set the reader BIAS so readers can use the fast path again
++ * 3) Unlock lock->rtmutex to release blocked readers
++ *
++ * read_lock()
++ * 1) Try fast path acquisition (reader BIAS is set)
++ * 2) Take lock->rtmutex.wait_lock which protects the writelocked flag
++ * 3) If !writelocked, acquire it for read
++ * 4) If writelocked, block on lock->rtmutex
++ * 5) unlock lock->rtmutex, goto 1)
++ *
++ * read_unlock()
++ * 1) Try fast path release (reader count != 1)
++ * 2) Wake the writer waiting in write_lock()#3
++ *
++ * read_lock()#3 has the consequence, that rw locks on RT are not writer
++ * fair, but writers, which should be avoided in RT tasks (think tasklist
++ * lock), are subject to the rtmutex priority/DL inheritance mechanism.
++ *
++ * It's possible to make the rw locks writer fair by keeping a list of
++ * active readers. A blocked writer would force all newly incoming readers
++ * to block on the rtmutex, but the rtmutex would have to be proxy locked
++ * for one reader after the other. We can't use multi-reader inheritance
++ * because there is no way to support that with
++ * SCHED_DEADLINE. Implementing the one by one reader boosting/handover
++ * mechanism is a major surgery for a very dubious value.
++ *
++ * The risk of writer starvation is there, but the pathological use cases
++ * which trigger it are not necessarily the typical RT workloads.
++ */
++
++void __rwlock_biased_rt_init(struct rt_rw_lock *lock, const char *name,
++ struct lock_class_key *key)
++{
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++ /*
++ * Make sure we are not reinitializing a held semaphore:
++ */
++ debug_check_no_locks_freed((void *)lock, sizeof(*lock));
++ lockdep_init_map(&lock->dep_map, name, key, 0);
++#endif
++ atomic_set(&lock->readers, READER_BIAS);
++ rt_mutex_init(&lock->rtmutex);
++ lock->rtmutex.save_state = 1;
++}
++
++static int __read_rt_trylock(struct rt_rw_lock *lock)
++{
++ int r, old;
++
++ /*
++ * Increment reader count, if lock->readers < 0, i.e. READER_BIAS is
++ * set.
++ */
++ for (r = atomic_read(&lock->readers); r < 0;) {
++ old = atomic_cmpxchg(&lock->readers, r, r + 1);
++ if (likely(old == r))
++ return 1;
++ r = old;
++ }
++ return 0;
++}
++
++static void __read_rt_lock(struct rt_rw_lock *lock)
++{
++ struct rt_mutex *m = &lock->rtmutex;
++ struct rt_mutex_waiter waiter;
++ unsigned long flags;
++
++ if (__read_rt_trylock(lock))
++ return;
++
++ raw_spin_lock_irqsave(&m->wait_lock, flags);
++ /*
++ * Allow readers as long as the writer has not completely
++ * acquired the semaphore for write.
++ */
++ if (atomic_read(&lock->readers) != WRITER_BIAS) {
++ atomic_inc(&lock->readers);
++ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
++ return;
++ }
++
++ /*
++ * Call into the slow lock path with the rtmutex->wait_lock
++ * held, so this can't result in the following race:
++ *
++ * Reader1 Reader2 Writer
++ * read_lock()
++ * write_lock()
++ * rtmutex_lock(m)
++ * swait()
++ * read_lock()
++ * unlock(m->wait_lock)
++ * read_unlock()
++ * swake()
++ * lock(m->wait_lock)
++ * lock->writelocked=true
++ * unlock(m->wait_lock)
++ *
++ * write_unlock()
++ * lock->writelocked=false
++ * rtmutex_unlock(m)
++ * read_lock()
++ * write_lock()
++ * rtmutex_lock(m)
++ * swait()
++ * rtmutex_lock(m)
++ *
++ * That would put Reader1 behind the writer waiting on
++ * Reader2 to call read_unlock() which might be unbound.
++ */
++ rt_mutex_init_waiter(&waiter, true);
++ rt_spin_lock_slowlock_locked(m, &waiter, flags);
++ /*
++ * The slowlock() above is guaranteed to return with the rtmutex is
++ * now held, so there can't be a writer active. Increment the reader
++ * count and immediately drop the rtmutex again.
++ */
++ atomic_inc(&lock->readers);
++ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
++ rt_spin_lock_slowunlock(m);
++
++ debug_rt_mutex_free_waiter(&waiter);
++}
++
++static void __read_rt_unlock(struct rt_rw_lock *lock)
++{
++ struct rt_mutex *m = &lock->rtmutex;
++ struct task_struct *tsk;
++
++ /*
++ * sem->readers can only hit 0 when a writer is waiting for the
++ * active readers to leave the critical region.
++ */
++ if (!atomic_dec_and_test(&lock->readers))
++ return;
++
++ raw_spin_lock_irq(&m->wait_lock);
++ /*
++ * Wake the writer, i.e. the rtmutex owner. It might release the
++ * rtmutex concurrently in the fast path, but to clean up the rw
++ * lock it needs to acquire m->wait_lock. The worst case which can
++ * happen is a spurious wakeup.
++ */
++ tsk = rt_mutex_owner(m);
++ if (tsk)
++ wake_up_process(tsk);
++
++ raw_spin_unlock_irq(&m->wait_lock);
++}
++
++static void __write_unlock_common(struct rt_rw_lock *lock, int bias,
++ unsigned long flags)
++{
++ struct rt_mutex *m = &lock->rtmutex;
++
++ atomic_add(READER_BIAS - bias, &lock->readers);
++ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
++ rt_spin_lock_slowunlock(m);
++}
++
++static void __write_rt_lock(struct rt_rw_lock *lock)
++{
++ struct rt_mutex *m = &lock->rtmutex;
++ struct task_struct *self = current;
++ unsigned long flags;
++
++ /* Take the rtmutex as a first step */
++ __rt_spin_lock(m);
++
++ /* Force readers into slow path */
++ atomic_sub(READER_BIAS, &lock->readers);
++
++ raw_spin_lock_irqsave(&m->wait_lock, flags);
++
++ raw_spin_lock(&self->pi_lock);
++ self->saved_state = self->state;
++ __set_current_state_no_track(TASK_UNINTERRUPTIBLE);
++ raw_spin_unlock(&self->pi_lock);
++
++ for (;;) {
++ /* Have all readers left the critical region? */
++ if (!atomic_read(&lock->readers)) {
++ atomic_set(&lock->readers, WRITER_BIAS);
++ raw_spin_lock(&self->pi_lock);
++ __set_current_state_no_track(self->saved_state);
++ self->saved_state = TASK_RUNNING;
++ raw_spin_unlock(&self->pi_lock);
++ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
++ return;
++ }
++
++ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
++
++ if (atomic_read(&lock->readers) != 0)
++ schedule();
++
++ raw_spin_lock_irqsave(&m->wait_lock, flags);
++
++ raw_spin_lock(&self->pi_lock);
++ __set_current_state_no_track(TASK_UNINTERRUPTIBLE);
++ raw_spin_unlock(&self->pi_lock);
++ }
++}
++
++static int __write_rt_trylock(struct rt_rw_lock *lock)
++{
++ struct rt_mutex *m = &lock->rtmutex;
++ unsigned long flags;
++
++ if (!__rt_mutex_trylock(m))
++ return 0;
++
++ atomic_sub(READER_BIAS, &lock->readers);
++
++ raw_spin_lock_irqsave(&m->wait_lock, flags);
++ if (!atomic_read(&lock->readers)) {
++ atomic_set(&lock->readers, WRITER_BIAS);
++ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
++ return 1;
++ }
++ __write_unlock_common(lock, 0, flags);
++ return 0;
++}
++
++static void __write_rt_unlock(struct rt_rw_lock *lock)
++{
++ struct rt_mutex *m = &lock->rtmutex;
++ unsigned long flags;
++
++ raw_spin_lock_irqsave(&m->wait_lock, flags);
++ __write_unlock_common(lock, WRITER_BIAS, flags);
++}
++
++int __lockfunc rt_read_can_lock(rwlock_t *rwlock)
++{
++ return atomic_read(&rwlock->readers) < 0;
++}
++
++int __lockfunc rt_write_can_lock(rwlock_t *rwlock)
++{
++ return atomic_read(&rwlock->readers) == READER_BIAS;
++}
++
++/*
++ * The common functions which get wrapped into the rwlock API.
++ */
++int __lockfunc rt_read_trylock(rwlock_t *rwlock)
++{
++ int ret;
++
++ ret = __read_rt_trylock(rwlock);
++ if (ret) {
++ rwlock_acquire_read(&rwlock->dep_map, 0, 1, _RET_IP_);
++ migrate_disable();
++ }
++ return ret;
++}
++EXPORT_SYMBOL(rt_read_trylock);
++
++int __lockfunc rt_write_trylock(rwlock_t *rwlock)
++{
++ int ret;
++
++ ret = __write_rt_trylock(rwlock);
++ if (ret) {
++ rwlock_acquire(&rwlock->dep_map, 0, 1, _RET_IP_);
++ migrate_disable();
++ }
++ return ret;
++}
++EXPORT_SYMBOL(rt_write_trylock);
++
++void __lockfunc rt_read_lock(rwlock_t *rwlock)
++{
++ rwlock_acquire_read(&rwlock->dep_map, 0, 0, _RET_IP_);
++ __read_rt_lock(rwlock);
++ migrate_disable();
++}
++EXPORT_SYMBOL(rt_read_lock);
++
++void __lockfunc rt_write_lock(rwlock_t *rwlock)
++{
++ rwlock_acquire(&rwlock->dep_map, 0, 0, _RET_IP_);
++ __write_rt_lock(rwlock);
++ migrate_disable();
++}
++EXPORT_SYMBOL(rt_write_lock);
++
++void __lockfunc rt_read_unlock(rwlock_t *rwlock)
++{
++ rwlock_release(&rwlock->dep_map, _RET_IP_);
++ migrate_enable();
++ __read_rt_unlock(rwlock);
++}
++EXPORT_SYMBOL(rt_read_unlock);
++
++void __lockfunc rt_write_unlock(rwlock_t *rwlock)
++{
++ rwlock_release(&rwlock->dep_map, _RET_IP_);
++ migrate_enable();
++ __write_rt_unlock(rwlock);
++}
++EXPORT_SYMBOL(rt_write_unlock);
++
++void __rt_rwlock_init(rwlock_t *rwlock, char *name, struct lock_class_key *key)
++{
++ __rwlock_biased_rt_init(rwlock, name, key);
++}
++EXPORT_SYMBOL(__rt_rwlock_init);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0175-locking-rtmutex-wire-up-RT-s-locking.patch b/debian/patches-rt/0175-locking-rtmutex-wire-up-RT-s-locking.patch
new file mode 100644
index 000000000..4a55d2f15
--- /dev/null
+++ b/debian/patches-rt/0175-locking-rtmutex-wire-up-RT-s-locking.patch
@@ -0,0 +1,348 @@
+From 48720bc07f81cfe49fe8e2a7afa1f18acd9227dd Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 12 Oct 2017 17:31:14 +0200
+Subject: [PATCH 175/323] locking/rtmutex: wire up RT's locking
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/mutex.h | 26 ++++++++++++++++----------
+ include/linux/rwsem.h | 12 ++++++++++++
+ include/linux/spinlock.h | 12 +++++++++++-
+ include/linux/spinlock_api_smp.h | 4 +++-
+ include/linux/spinlock_types.h | 11 ++++++++---
+ include/linux/spinlock_types_up.h | 2 +-
+ kernel/Kconfig.preempt | 1 +
+ kernel/locking/Makefile | 10 +++++++---
+ kernel/locking/rwsem.c | 6 ++++++
+ kernel/locking/spinlock.c | 7 +++++++
+ kernel/locking/spinlock_debug.c | 5 +++++
+ 11 files changed, 77 insertions(+), 19 deletions(-)
+
+diff --git a/include/linux/mutex.h b/include/linux/mutex.h
+index 4d671fba3cab..e45774a337d2 100644
+--- a/include/linux/mutex.h
++++ b/include/linux/mutex.h
+@@ -22,6 +22,20 @@
+
+ struct ww_acquire_ctx;
+
++#ifdef CONFIG_DEBUG_LOCK_ALLOC
++# define __DEP_MAP_MUTEX_INITIALIZER(lockname) \
++ , .dep_map = { \
++ .name = #lockname, \
++ .wait_type_inner = LD_WAIT_SLEEP, \
++ }
++#else
++# define __DEP_MAP_MUTEX_INITIALIZER(lockname)
++#endif
++
++#ifdef CONFIG_PREEMPT_RT
++# include <linux/mutex_rt.h>
++#else
++
+ /*
+ * Simple, straightforward mutexes with strict semantics:
+ *
+@@ -119,16 +133,6 @@ do { \
+ __mutex_init((mutex), #mutex, &__key); \
+ } while (0)
+
+-#ifdef CONFIG_DEBUG_LOCK_ALLOC
+-# define __DEP_MAP_MUTEX_INITIALIZER(lockname) \
+- , .dep_map = { \
+- .name = #lockname, \
+- .wait_type_inner = LD_WAIT_SLEEP, \
+- }
+-#else
+-# define __DEP_MAP_MUTEX_INITIALIZER(lockname)
+-#endif
+-
+ #define __MUTEX_INITIALIZER(lockname) \
+ { .owner = ATOMIC_LONG_INIT(0) \
+ , .wait_lock = __SPIN_LOCK_UNLOCKED(lockname.wait_lock) \
+@@ -224,4 +228,6 @@ enum mutex_trylock_recursive_enum {
+ extern /* __deprecated */ __must_check enum mutex_trylock_recursive_enum
+ mutex_trylock_recursive(struct mutex *lock);
+
++#endif /* !PREEMPT_RT */
++
+ #endif /* __LINUX_MUTEX_H */
+diff --git a/include/linux/rwsem.h b/include/linux/rwsem.h
+index 4c715be48717..9323af8a9244 100644
+--- a/include/linux/rwsem.h
++++ b/include/linux/rwsem.h
+@@ -16,6 +16,11 @@
+ #include <linux/spinlock.h>
+ #include <linux/atomic.h>
+ #include <linux/err.h>
++
++#ifdef CONFIG_PREEMPT_RT
++#include <linux/rwsem-rt.h>
++#else /* PREEMPT_RT */
++
+ #ifdef CONFIG_RWSEM_SPIN_ON_OWNER
+ #include <linux/osq_lock.h>
+ #endif
+@@ -119,6 +124,13 @@ static inline int rwsem_is_contended(struct rw_semaphore *sem)
+ return !list_empty(&sem->wait_list);
+ }
+
++#endif /* !PREEMPT_RT */
++
++/*
++ * The functions below are the same for all rwsem implementations including
++ * the RT specific variant.
++ */
++
+ /*
+ * lock for reading
+ */
+diff --git a/include/linux/spinlock.h b/include/linux/spinlock.h
+index 79897841a2cc..c3c70291b46c 100644
+--- a/include/linux/spinlock.h
++++ b/include/linux/spinlock.h
+@@ -309,7 +309,11 @@ static inline void do_raw_spin_unlock(raw_spinlock_t *lock) __releases(lock)
+ })
+
+ /* Include rwlock functions */
+-#include <linux/rwlock.h>
++#ifdef CONFIG_PREEMPT_RT
++# include <linux/rwlock_rt.h>
++#else
++# include <linux/rwlock.h>
++#endif
+
+ /*
+ * Pull the _spin_*()/_read_*()/_write_*() functions/declarations:
+@@ -320,6 +324,10 @@ static inline void do_raw_spin_unlock(raw_spinlock_t *lock) __releases(lock)
+ # include <linux/spinlock_api_up.h>
+ #endif
+
++#ifdef CONFIG_PREEMPT_RT
++# include <linux/spinlock_rt.h>
++#else /* PREEMPT_RT */
++
+ /*
+ * Map the spin_lock functions to the raw variants for PREEMPT_RT=n
+ */
+@@ -454,6 +462,8 @@ static __always_inline int spin_is_contended(spinlock_t *lock)
+
+ #define assert_spin_locked(lock) assert_raw_spin_locked(&(lock)->rlock)
+
++#endif /* !PREEMPT_RT */
++
+ /*
+ * Pull the atomic_t declaration:
+ * (asm-mips/atomic.h needs above definitions)
+diff --git a/include/linux/spinlock_api_smp.h b/include/linux/spinlock_api_smp.h
+index 19a9be9d97ee..da38149f2843 100644
+--- a/include/linux/spinlock_api_smp.h
++++ b/include/linux/spinlock_api_smp.h
+@@ -187,6 +187,8 @@ static inline int __raw_spin_trylock_bh(raw_spinlock_t *lock)
+ return 0;
+ }
+
+-#include <linux/rwlock_api_smp.h>
++#ifndef CONFIG_PREEMPT_RT
++# include <linux/rwlock_api_smp.h>
++#endif
+
+ #endif /* __LINUX_SPINLOCK_API_SMP_H */
+diff --git a/include/linux/spinlock_types.h b/include/linux/spinlock_types.h
+index 5c8664d57fb8..8d896d3e1a01 100644
+--- a/include/linux/spinlock_types.h
++++ b/include/linux/spinlock_types.h
+@@ -11,8 +11,13 @@
+
+ #include <linux/spinlock_types_raw.h>
+
+-#include <linux/spinlock_types_nort.h>
+-
+-#include <linux/rwlock_types.h>
++#ifndef CONFIG_PREEMPT_RT
++# include <linux/spinlock_types_nort.h>
++# include <linux/rwlock_types.h>
++#else
++# include <linux/rtmutex.h>
++# include <linux/spinlock_types_rt.h>
++# include <linux/rwlock_types_rt.h>
++#endif
+
+ #endif /* __LINUX_SPINLOCK_TYPES_H */
+diff --git a/include/linux/spinlock_types_up.h b/include/linux/spinlock_types_up.h
+index c09b6407ae1b..d9b371fa13e0 100644
+--- a/include/linux/spinlock_types_up.h
++++ b/include/linux/spinlock_types_up.h
+@@ -1,7 +1,7 @@
+ #ifndef __LINUX_SPINLOCK_TYPES_UP_H
+ #define __LINUX_SPINLOCK_TYPES_UP_H
+
+-#ifndef __LINUX_SPINLOCK_TYPES_H
++#if !defined(__LINUX_SPINLOCK_TYPES_H) && !defined(__LINUX_RT_MUTEX_H)
+ # error "please don't include this file directly"
+ #endif
+
+diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt
+index bf82259cff96..cbe3aa495519 100644
+--- a/kernel/Kconfig.preempt
++++ b/kernel/Kconfig.preempt
+@@ -59,6 +59,7 @@ config PREEMPT_RT
+ bool "Fully Preemptible Kernel (Real-Time)"
+ depends on EXPERT && ARCH_SUPPORTS_RT
+ select PREEMPTION
++ select RT_MUTEXES
+ help
+ This option turns the kernel into a real-time kernel by replacing
+ various locking primitives (spinlocks, rwlocks, etc.) with
+diff --git a/kernel/locking/Makefile b/kernel/locking/Makefile
+index 6d11cfb9b41f..c7fbf737e16e 100644
+--- a/kernel/locking/Makefile
++++ b/kernel/locking/Makefile
+@@ -3,7 +3,7 @@
+ # and is generally not a function of system call inputs.
+ KCOV_INSTRUMENT := n
+
+-obj-y += mutex.o semaphore.o rwsem.o percpu-rwsem.o
++obj-y += semaphore.o rwsem.o percpu-rwsem.o
+
+ # Avoid recursion lockdep -> KCSAN -> ... -> lockdep.
+ KCSAN_SANITIZE_lockdep.o := n
+@@ -15,19 +15,23 @@ CFLAGS_REMOVE_mutex-debug.o = $(CC_FLAGS_FTRACE)
+ CFLAGS_REMOVE_rtmutex-debug.o = $(CC_FLAGS_FTRACE)
+ endif
+
+-obj-$(CONFIG_DEBUG_MUTEXES) += mutex-debug.o
+ obj-$(CONFIG_LOCKDEP) += lockdep.o
+ ifeq ($(CONFIG_PROC_FS),y)
+ obj-$(CONFIG_LOCKDEP) += lockdep_proc.o
+ endif
+ obj-$(CONFIG_SMP) += spinlock.o
+-obj-$(CONFIG_LOCK_SPIN_ON_OWNER) += osq_lock.o
+ obj-$(CONFIG_PROVE_LOCKING) += spinlock.o
+ obj-$(CONFIG_QUEUED_SPINLOCKS) += qspinlock.o
+ obj-$(CONFIG_RT_MUTEXES) += rtmutex.o
+ obj-$(CONFIG_DEBUG_RT_MUTEXES) += rtmutex-debug.o
+ obj-$(CONFIG_DEBUG_SPINLOCK) += spinlock.o
+ obj-$(CONFIG_DEBUG_SPINLOCK) += spinlock_debug.o
++ifneq ($(CONFIG_PREEMPT_RT),y)
++obj-y += mutex.o
++obj-$(CONFIG_LOCK_SPIN_ON_OWNER) += osq_lock.o
++obj-$(CONFIG_DEBUG_MUTEXES) += mutex-debug.o
++endif
++obj-$(CONFIG_PREEMPT_RT) += mutex-rt.o rwsem-rt.o rwlock-rt.o
+ obj-$(CONFIG_QUEUED_RWLOCKS) += qrwlock.o
+ obj-$(CONFIG_LOCK_TORTURE_TEST) += locktorture.o
+ obj-$(CONFIG_WW_MUTEX_SELFTEST) += test-ww_mutex.o
+diff --git a/kernel/locking/rwsem.c b/kernel/locking/rwsem.c
+index cc5cc889b5b7..f7c909ef1261 100644
+--- a/kernel/locking/rwsem.c
++++ b/kernel/locking/rwsem.c
+@@ -28,6 +28,7 @@
+ #include <linux/rwsem.h>
+ #include <linux/atomic.h>
+
++#ifndef CONFIG_PREEMPT_RT
+ #include "lock_events.h"
+
+ /*
+@@ -1494,6 +1495,7 @@ static inline void __downgrade_write(struct rw_semaphore *sem)
+ if (tmp & RWSEM_FLAG_WAITERS)
+ rwsem_downgrade_wake(sem);
+ }
++#endif
+
+ /*
+ * lock for reading
+@@ -1657,7 +1659,9 @@ void down_read_non_owner(struct rw_semaphore *sem)
+ {
+ might_sleep();
+ __down_read(sem);
++#ifndef CONFIG_PREEMPT_RT
+ __rwsem_set_reader_owned(sem, NULL);
++#endif
+ }
+ EXPORT_SYMBOL(down_read_non_owner);
+
+@@ -1686,7 +1690,9 @@ EXPORT_SYMBOL(down_write_killable_nested);
+
+ void up_read_non_owner(struct rw_semaphore *sem)
+ {
++#ifndef CONFIG_PREEMPT_RT
+ DEBUG_RWSEMS_WARN_ON(!is_rwsem_reader_owned(sem), sem);
++#endif
+ __up_read(sem);
+ }
+ EXPORT_SYMBOL(up_read_non_owner);
+diff --git a/kernel/locking/spinlock.c b/kernel/locking/spinlock.c
+index 0ff08380f531..45445a2f1799 100644
+--- a/kernel/locking/spinlock.c
++++ b/kernel/locking/spinlock.c
+@@ -124,8 +124,11 @@ void __lockfunc __raw_##op##_lock_bh(locktype##_t *lock) \
+ * __[spin|read|write]_lock_bh()
+ */
+ BUILD_LOCK_OPS(spin, raw_spinlock);
++
++#ifndef CONFIG_PREEMPT_RT
+ BUILD_LOCK_OPS(read, rwlock);
+ BUILD_LOCK_OPS(write, rwlock);
++#endif
+
+ #endif
+
+@@ -209,6 +212,8 @@ void __lockfunc _raw_spin_unlock_bh(raw_spinlock_t *lock)
+ EXPORT_SYMBOL(_raw_spin_unlock_bh);
+ #endif
+
++#ifndef CONFIG_PREEMPT_RT
++
+ #ifndef CONFIG_INLINE_READ_TRYLOCK
+ int __lockfunc _raw_read_trylock(rwlock_t *lock)
+ {
+@@ -353,6 +358,8 @@ void __lockfunc _raw_write_unlock_bh(rwlock_t *lock)
+ EXPORT_SYMBOL(_raw_write_unlock_bh);
+ #endif
+
++#endif /* !PREEMPT_RT */
++
+ #ifdef CONFIG_DEBUG_LOCK_ALLOC
+
+ void __lockfunc _raw_spin_lock_nested(raw_spinlock_t *lock, int subclass)
+diff --git a/kernel/locking/spinlock_debug.c b/kernel/locking/spinlock_debug.c
+index b9d93087ee66..72e306e0e8a3 100644
+--- a/kernel/locking/spinlock_debug.c
++++ b/kernel/locking/spinlock_debug.c
+@@ -31,6 +31,7 @@ void __raw_spin_lock_init(raw_spinlock_t *lock, const char *name,
+
+ EXPORT_SYMBOL(__raw_spin_lock_init);
+
++#ifndef CONFIG_PREEMPT_RT
+ void __rwlock_init(rwlock_t *lock, const char *name,
+ struct lock_class_key *key)
+ {
+@@ -48,6 +49,7 @@ void __rwlock_init(rwlock_t *lock, const char *name,
+ }
+
+ EXPORT_SYMBOL(__rwlock_init);
++#endif
+
+ static void spin_dump(raw_spinlock_t *lock, const char *msg)
+ {
+@@ -139,6 +141,7 @@ void do_raw_spin_unlock(raw_spinlock_t *lock)
+ arch_spin_unlock(&lock->raw_lock);
+ }
+
++#ifndef CONFIG_PREEMPT_RT
+ static void rwlock_bug(rwlock_t *lock, const char *msg)
+ {
+ if (!debug_locks_off())
+@@ -228,3 +231,5 @@ void do_raw_write_unlock(rwlock_t *lock)
+ debug_write_unlock(lock);
+ arch_write_unlock(&lock->raw_lock);
+ }
++
++#endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0176-locking-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch b/debian/patches-rt/0176-locking-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch
new file mode 100644
index 000000000..4199d82f9
--- /dev/null
+++ b/debian/patches-rt/0176-locking-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch
@@ -0,0 +1,456 @@
+From 47ba586f2ade0d9f8cc9281cb08529146bfc3c5d Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 12 Oct 2017 17:34:38 +0200
+Subject: [PATCH 176/323] locking/rtmutex: add ww_mutex addon for mutex-rt
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/mutex.h | 8 -
+ include/linux/ww_mutex.h | 8 +
+ kernel/locking/rtmutex.c | 262 ++++++++++++++++++++++++++++++--
+ kernel/locking/rtmutex_common.h | 2 +
+ kernel/locking/rwsem-rt.c | 2 +-
+ 5 files changed, 262 insertions(+), 20 deletions(-)
+
+diff --git a/include/linux/mutex.h b/include/linux/mutex.h
+index e45774a337d2..90923d3008fc 100644
+--- a/include/linux/mutex.h
++++ b/include/linux/mutex.h
+@@ -82,14 +82,6 @@ struct mutex {
+ struct ww_class;
+ struct ww_acquire_ctx;
+
+-struct ww_mutex {
+- struct mutex base;
+- struct ww_acquire_ctx *ctx;
+-#ifdef CONFIG_DEBUG_MUTEXES
+- struct ww_class *ww_class;
+-#endif
+-};
+-
+ /*
+ * This is the control structure for tasks blocked on mutex,
+ * which resides on the blocked task's kernel stack:
+diff --git a/include/linux/ww_mutex.h b/include/linux/ww_mutex.h
+index 6ecf2a0220db..3145de598645 100644
+--- a/include/linux/ww_mutex.h
++++ b/include/linux/ww_mutex.h
+@@ -28,6 +28,14 @@ struct ww_class {
+ unsigned int is_wait_die;
+ };
+
++struct ww_mutex {
++ struct mutex base;
++ struct ww_acquire_ctx *ctx;
++#ifdef CONFIG_DEBUG_MUTEXES
++ struct ww_class *ww_class;
++#endif
++};
++
+ struct ww_acquire_ctx {
+ struct task_struct *task;
+ unsigned long stamp;
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index 1bf7a04688c5..c095d1b92f70 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -24,6 +24,7 @@
+ #include <linux/sched/wake_q.h>
+ #include <linux/sched/debug.h>
+ #include <linux/timer.h>
++#include <linux/ww_mutex.h>
+
+ #include "rtmutex_common.h"
+
+@@ -1234,6 +1235,40 @@ EXPORT_SYMBOL(__rt_spin_lock_init);
+
+ #endif /* PREEMPT_RT */
+
++#ifdef CONFIG_PREEMPT_RT
++ static inline int __sched
++__mutex_lock_check_stamp(struct rt_mutex *lock, struct ww_acquire_ctx *ctx)
++{
++ struct ww_mutex *ww = container_of(lock, struct ww_mutex, base.lock);
++ struct ww_acquire_ctx *hold_ctx = READ_ONCE(ww->ctx);
++
++ if (!hold_ctx)
++ return 0;
++
++ if (unlikely(ctx == hold_ctx))
++ return -EALREADY;
++
++ if (ctx->stamp - hold_ctx->stamp <= LONG_MAX &&
++ (ctx->stamp != hold_ctx->stamp || ctx > hold_ctx)) {
++#ifdef CONFIG_DEBUG_MUTEXES
++ DEBUG_LOCKS_WARN_ON(ctx->contending_lock);
++ ctx->contending_lock = ww;
++#endif
++ return -EDEADLK;
++ }
++
++ return 0;
++}
++#else
++ static inline int __sched
++__mutex_lock_check_stamp(struct rt_mutex *lock, struct ww_acquire_ctx *ctx)
++{
++ BUG();
++ return 0;
++}
++
++#endif
++
+ static inline int
+ try_to_take_rt_mutex(struct rt_mutex *lock, struct task_struct *task,
+ struct rt_mutex_waiter *waiter)
+@@ -1512,7 +1547,8 @@ void rt_mutex_init_waiter(struct rt_mutex_waiter *waiter, bool savestate)
+ static int __sched
+ __rt_mutex_slowlock(struct rt_mutex *lock, int state,
+ struct hrtimer_sleeper *timeout,
+- struct rt_mutex_waiter *waiter)
++ struct rt_mutex_waiter *waiter,
++ struct ww_acquire_ctx *ww_ctx)
+ {
+ int ret = 0;
+
+@@ -1530,6 +1566,12 @@ __rt_mutex_slowlock(struct rt_mutex *lock, int state,
+ break;
+ }
+
++ if (ww_ctx && ww_ctx->acquired > 0) {
++ ret = __mutex_lock_check_stamp(lock, ww_ctx);
++ if (ret)
++ break;
++ }
++
+ raw_spin_unlock_irq(&lock->wait_lock);
+
+ schedule();
+@@ -1558,16 +1600,106 @@ static void rt_mutex_handle_deadlock(int res, int detect_deadlock,
+ }
+ }
+
++static __always_inline void ww_mutex_lock_acquired(struct ww_mutex *ww,
++ struct ww_acquire_ctx *ww_ctx)
++{
++#ifdef CONFIG_DEBUG_MUTEXES
++ /*
++ * If this WARN_ON triggers, you used ww_mutex_lock to acquire,
++ * but released with a normal mutex_unlock in this call.
++ *
++ * This should never happen, always use ww_mutex_unlock.
++ */
++ DEBUG_LOCKS_WARN_ON(ww->ctx);
++
++ /*
++ * Not quite done after calling ww_acquire_done() ?
++ */
++ DEBUG_LOCKS_WARN_ON(ww_ctx->done_acquire);
++
++ if (ww_ctx->contending_lock) {
++ /*
++ * After -EDEADLK you tried to
++ * acquire a different ww_mutex? Bad!
++ */
++ DEBUG_LOCKS_WARN_ON(ww_ctx->contending_lock != ww);
++
++ /*
++ * You called ww_mutex_lock after receiving -EDEADLK,
++ * but 'forgot' to unlock everything else first?
++ */
++ DEBUG_LOCKS_WARN_ON(ww_ctx->acquired > 0);
++ ww_ctx->contending_lock = NULL;
++ }
++
++ /*
++ * Naughty, using a different class will lead to undefined behavior!
++ */
++ DEBUG_LOCKS_WARN_ON(ww_ctx->ww_class != ww->ww_class);
++#endif
++ ww_ctx->acquired++;
++}
++
++#ifdef CONFIG_PREEMPT_RT
++static void ww_mutex_account_lock(struct rt_mutex *lock,
++ struct ww_acquire_ctx *ww_ctx)
++{
++ struct ww_mutex *ww = container_of(lock, struct ww_mutex, base.lock);
++ struct rt_mutex_waiter *waiter, *n;
++
++ /*
++ * This branch gets optimized out for the common case,
++ * and is only important for ww_mutex_lock.
++ */
++ ww_mutex_lock_acquired(ww, ww_ctx);
++ ww->ctx = ww_ctx;
++
++ /*
++ * Give any possible sleeping processes the chance to wake up,
++ * so they can recheck if they have to back off.
++ */
++ rbtree_postorder_for_each_entry_safe(waiter, n, &lock->waiters.rb_root,
++ tree_entry) {
++ /* XXX debug rt mutex waiter wakeup */
++
++ BUG_ON(waiter->lock != lock);
++ rt_mutex_wake_waiter(waiter);
++ }
++}
++
++#else
++
++static void ww_mutex_account_lock(struct rt_mutex *lock,
++ struct ww_acquire_ctx *ww_ctx)
++{
++ BUG();
++}
++#endif
++
+ int __sched rt_mutex_slowlock_locked(struct rt_mutex *lock, int state,
+ struct hrtimer_sleeper *timeout,
+ enum rtmutex_chainwalk chwalk,
++ struct ww_acquire_ctx *ww_ctx,
+ struct rt_mutex_waiter *waiter)
+ {
+ int ret;
+
++#ifdef CONFIG_PREEMPT_RT
++ if (ww_ctx) {
++ struct ww_mutex *ww;
++
++ ww = container_of(lock, struct ww_mutex, base.lock);
++ if (unlikely(ww_ctx == READ_ONCE(ww->ctx)))
++ return -EALREADY;
++ }
++#endif
++
+ /* Try to acquire the lock again: */
+- if (try_to_take_rt_mutex(lock, current, NULL))
++ if (try_to_take_rt_mutex(lock, current, NULL)) {
++ if (ww_ctx)
++ ww_mutex_account_lock(lock, ww_ctx);
+ return 0;
++ }
+
+ set_current_state(state);
+
+@@ -1577,14 +1709,24 @@ int __sched rt_mutex_slowlock_locked(struct rt_mutex *lock, int state,
+
+ ret = task_blocks_on_rt_mutex(lock, waiter, current, chwalk);
+
+- if (likely(!ret))
++ if (likely(!ret)) {
+ /* sleep on the mutex */
+- ret = __rt_mutex_slowlock(lock, state, timeout, waiter);
++ ret = __rt_mutex_slowlock(lock, state, timeout, waiter,
++ ww_ctx);
++ } else if (ww_ctx) {
++ /* ww_mutex received EDEADLK, let it become EALREADY */
++ ret = __mutex_lock_check_stamp(lock, ww_ctx);
++ BUG_ON(!ret);
++ }
+
+ if (unlikely(ret)) {
+ __set_current_state(TASK_RUNNING);
+ remove_waiter(lock, waiter);
+- rt_mutex_handle_deadlock(ret, chwalk, waiter);
++ /* ww_mutex wants to report EDEADLK/EALREADY, let it */
++ if (!ww_ctx)
++ rt_mutex_handle_deadlock(ret, chwalk, waiter);
++ } else if (ww_ctx) {
++ ww_mutex_account_lock(lock, ww_ctx);
+ }
+
+ /*
+@@ -1601,7 +1743,8 @@ int __sched rt_mutex_slowlock_locked(struct rt_mutex *lock, int state,
+ static int __sched
+ rt_mutex_slowlock(struct rt_mutex *lock, int state,
+ struct hrtimer_sleeper *timeout,
+- enum rtmutex_chainwalk chwalk)
++ enum rtmutex_chainwalk chwalk,
++ struct ww_acquire_ctx *ww_ctx)
+ {
+ struct rt_mutex_waiter waiter;
+ unsigned long flags;
+@@ -1619,7 +1762,8 @@ rt_mutex_slowlock(struct rt_mutex *lock, int state,
+ */
+ raw_spin_lock_irqsave(&lock->wait_lock, flags);
+
+- ret = rt_mutex_slowlock_locked(lock, state, timeout, chwalk, &waiter);
++ ret = rt_mutex_slowlock_locked(lock, state, timeout, chwalk, ww_ctx,
++ &waiter);
+
+ raw_spin_unlock_irqrestore(&lock->wait_lock, flags);
+
+@@ -1749,14 +1893,16 @@ static bool __sched rt_mutex_slowunlock(struct rt_mutex *lock,
+ */
+ static inline int
+ rt_mutex_fastlock(struct rt_mutex *lock, int state,
++ struct ww_acquire_ctx *ww_ctx,
+ int (*slowfn)(struct rt_mutex *lock, int state,
+ struct hrtimer_sleeper *timeout,
+- enum rtmutex_chainwalk chwalk))
++ enum rtmutex_chainwalk chwalk,
++ struct ww_acquire_ctx *ww_ctx))
+ {
+ if (likely(rt_mutex_cmpxchg_acquire(lock, NULL, current)))
+ return 0;
+
+- return slowfn(lock, state, NULL, RT_MUTEX_MIN_CHAINWALK);
++ return slowfn(lock, state, NULL, RT_MUTEX_MIN_CHAINWALK, ww_ctx);
+ }
+
+ static inline int
+@@ -1801,7 +1947,7 @@ rt_mutex_fastunlock(struct rt_mutex *lock,
+ int __sched __rt_mutex_lock_state(struct rt_mutex *lock, int state)
+ {
+ might_sleep();
+- return rt_mutex_fastlock(lock, state, rt_mutex_slowlock);
++ return rt_mutex_fastlock(lock, state, NULL, rt_mutex_slowlock);
+ }
+
+ /**
+@@ -2245,7 +2391,7 @@ int rt_mutex_wait_proxy_lock(struct rt_mutex *lock,
+ raw_spin_lock_irq(&lock->wait_lock);
+ /* sleep on the mutex */
+ set_current_state(TASK_INTERRUPTIBLE);
+- ret = __rt_mutex_slowlock(lock, TASK_INTERRUPTIBLE, to, waiter);
++ ret = __rt_mutex_slowlock(lock, TASK_INTERRUPTIBLE, to, waiter, NULL);
+ /*
+ * try_to_take_rt_mutex() sets the waiter bit unconditionally. We might
+ * have to fix that up.
+@@ -2315,3 +2461,97 @@ bool rt_mutex_cleanup_proxy_lock(struct rt_mutex *lock,
+
+ return cleanup;
+ }
++
++static inline int
++ww_mutex_deadlock_injection(struct ww_mutex *lock, struct ww_acquire_ctx *ctx)
++{
++#ifdef CONFIG_DEBUG_WW_MUTEX_SLOWPATH
++ unsigned int tmp;
++
++ if (ctx->deadlock_inject_countdown-- == 0) {
++ tmp = ctx->deadlock_inject_interval;
++ if (tmp > UINT_MAX/4)
++ tmp = UINT_MAX;
++ else
++ tmp = tmp*2 + tmp + tmp/2;
++
++ ctx->deadlock_inject_interval = tmp;
++ ctx->deadlock_inject_countdown = tmp;
++ ctx->contending_lock = lock;
++
++ ww_mutex_unlock(lock);
++
++ return -EDEADLK;
++ }
++#endif
++
++ return 0;
++}
++
++#ifdef CONFIG_PREEMPT_RT
++int __sched
++ww_mutex_lock_interruptible(struct ww_mutex *lock, struct ww_acquire_ctx *ctx)
++{
++ int ret;
++
++ might_sleep();
++
++ mutex_acquire_nest(&lock->base.dep_map, 0, 0,
++ ctx ? &ctx->dep_map : NULL, _RET_IP_);
++ ret = rt_mutex_slowlock(&lock->base.lock, TASK_INTERRUPTIBLE, NULL, 0,
++ ctx);
++ if (ret)
++ mutex_release(&lock->base.dep_map, _RET_IP_);
++ else if (!ret && ctx && ctx->acquired > 1)
++ return ww_mutex_deadlock_injection(lock, ctx);
++
++ return ret;
++}
++EXPORT_SYMBOL_GPL(ww_mutex_lock_interruptible);
++
++int __sched
++ww_mutex_lock(struct ww_mutex *lock, struct ww_acquire_ctx *ctx)
++{
++ int ret;
++
++ might_sleep();
++
++ mutex_acquire_nest(&lock->base.dep_map, 0, 0,
++ ctx ? &ctx->dep_map : NULL, _RET_IP_);
++ ret = rt_mutex_slowlock(&lock->base.lock, TASK_UNINTERRUPTIBLE, NULL, 0,
++ ctx);
++ if (ret)
++ mutex_release(&lock->base.dep_map, _RET_IP_);
++ else if (!ret && ctx && ctx->acquired > 1)
++ return ww_mutex_deadlock_injection(lock, ctx);
++
++ return ret;
++}
++EXPORT_SYMBOL_GPL(ww_mutex_lock);
++
++void __sched ww_mutex_unlock(struct ww_mutex *lock)
++{
++ /*
++ * The unlocking fastpath is the 0->1 transition from 'locked'
++ * into 'unlocked' state:
++ */
++ if (lock->ctx) {
++#ifdef CONFIG_DEBUG_MUTEXES
++ DEBUG_LOCKS_WARN_ON(!lock->ctx->acquired);
++#endif
++ if (lock->ctx->acquired > 0)
++ lock->ctx->acquired--;
++ lock->ctx = NULL;
++ }
++
++ mutex_release(&lock->base.dep_map, _RET_IP_);
++ __rt_mutex_unlock(&lock->base.lock);
++}
++EXPORT_SYMBOL(ww_mutex_unlock);
++
++int __rt_mutex_owner_current(struct rt_mutex *lock)
++{
++ return rt_mutex_owner(lock) == current;
++}
++EXPORT_SYMBOL(__rt_mutex_owner_current);
++#endif
+diff --git a/kernel/locking/rtmutex_common.h b/kernel/locking/rtmutex_common.h
+index c1a280167e3c..248a7d91583b 100644
+--- a/kernel/locking/rtmutex_common.h
++++ b/kernel/locking/rtmutex_common.h
+@@ -159,6 +159,7 @@ extern void rt_mutex_postunlock(struct wake_q_head *wake_q,
+ struct wake_q_head *wake_sleeper_q);
+
+ /* RW semaphore special interface */
++struct ww_acquire_ctx;
+
+ extern int __rt_mutex_lock_state(struct rt_mutex *lock, int state);
+ extern int __rt_mutex_trylock(struct rt_mutex *lock);
+@@ -166,6 +167,7 @@ extern void __rt_mutex_unlock(struct rt_mutex *lock);
+ int __sched rt_mutex_slowlock_locked(struct rt_mutex *lock, int state,
+ struct hrtimer_sleeper *timeout,
+ enum rtmutex_chainwalk chwalk,
++ struct ww_acquire_ctx *ww_ctx,
+ struct rt_mutex_waiter *waiter);
+ void __sched rt_spin_lock_slowlock_locked(struct rt_mutex *lock,
+ struct rt_mutex_waiter *waiter,
+diff --git a/kernel/locking/rwsem-rt.c b/kernel/locking/rwsem-rt.c
+index a0771c150041..274172d5bb3a 100644
+--- a/kernel/locking/rwsem-rt.c
++++ b/kernel/locking/rwsem-rt.c
+@@ -138,7 +138,7 @@ static int __sched __down_read_common(struct rw_semaphore *sem, int state)
+ */
+ rt_mutex_init_waiter(&waiter, false);
+ ret = rt_mutex_slowlock_locked(m, state, NULL, RT_MUTEX_MIN_CHAINWALK,
+- &waiter);
++ NULL, &waiter);
+ /*
+ * The slowlock() above is guaranteed to return with the rtmutex (for
+ * ret = 0) is now held, so there can't be a writer active. Increment
+--
+2.43.0
+
diff --git a/debian/patches-rt/0177-locking-rtmutex-Use-custom-scheduling-function-for-s.patch b/debian/patches-rt/0177-locking-rtmutex-Use-custom-scheduling-function-for-s.patch
new file mode 100644
index 000000000..9cabce468
--- /dev/null
+++ b/debian/patches-rt/0177-locking-rtmutex-Use-custom-scheduling-function-for-s.patch
@@ -0,0 +1,243 @@
+From 0a34a9993d2798ba232792f998e5ae5fe7519730 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 6 Oct 2020 13:07:17 +0200
+Subject: [PATCH 177/323] locking/rtmutex: Use custom scheduling function for
+ spin-schedule()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+PREEMPT_RT builds the rwsem, mutex, spinlock and rwlock typed locks on
+top of a rtmutex lock. While blocked task->pi_blocked_on is set
+(tsk_is_pi_blocked()) and task needs to schedule away while waiting.
+
+The schedule process must distinguish between blocking on a regular
+sleeping lock (rwsem and mutex) and a RT-only sleeping lock (spinlock
+and rwlock):
+- rwsem and mutex must flush block requests (blk_schedule_flush_plug())
+ even if blocked on a lock. This can not deadlock because this also
+ happens for non-RT.
+ There should be a warning if the scheduling point is within a RCU read
+ section.
+
+- spinlock and rwlock must not flush block requests. This will deadlock
+ if the callback attempts to acquire a lock which is already acquired.
+ Similarly to being preempted, there should be no warning if the
+ scheduling point is within a RCU read section.
+
+Add preempt_schedule_lock() which is invoked if scheduling is required
+while blocking on a PREEMPT_RT-only sleeping lock.
+Remove tsk_is_pi_blocked() from the scheduler path which is no longer
+needed with the additional scheduler entry point.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm64/include/asm/preempt.h | 3 +++
+ arch/x86/include/asm/preempt.h | 3 +++
+ include/asm-generic/preempt.h | 3 +++
+ include/linux/sched/rt.h | 8 --------
+ kernel/locking/rtmutex.c | 2 +-
+ kernel/locking/rwlock-rt.c | 2 +-
+ kernel/sched/core.c | 32 +++++++++++++++++++++-----------
+ 7 files changed, 32 insertions(+), 21 deletions(-)
+
+diff --git a/arch/arm64/include/asm/preempt.h b/arch/arm64/include/asm/preempt.h
+index e83f0982b99c..f1486b32502c 100644
+--- a/arch/arm64/include/asm/preempt.h
++++ b/arch/arm64/include/asm/preempt.h
+@@ -81,6 +81,9 @@ static inline bool should_resched(int preempt_offset)
+
+ #ifdef CONFIG_PREEMPTION
+ void preempt_schedule(void);
++#ifdef CONFIG_PREEMPT_RT
++void preempt_schedule_lock(void);
++#endif
+ #define __preempt_schedule() preempt_schedule()
+ void preempt_schedule_notrace(void);
+ #define __preempt_schedule_notrace() preempt_schedule_notrace()
+diff --git a/arch/x86/include/asm/preempt.h b/arch/x86/include/asm/preempt.h
+index a334dd0d7c42..50e0c0ab7b97 100644
+--- a/arch/x86/include/asm/preempt.h
++++ b/arch/x86/include/asm/preempt.h
+@@ -103,6 +103,9 @@ static __always_inline bool should_resched(int preempt_offset)
+ }
+
+ #ifdef CONFIG_PREEMPTION
++#ifdef CONFIG_PREEMPT_RT
++ extern void preempt_schedule_lock(void);
++#endif
+ extern asmlinkage void preempt_schedule_thunk(void);
+ # define __preempt_schedule() \
+ asm volatile ("call preempt_schedule_thunk" : ASM_CALL_CONSTRAINT)
+diff --git a/include/asm-generic/preempt.h b/include/asm-generic/preempt.h
+index b4d43a4af5f7..ac255e889462 100644
+--- a/include/asm-generic/preempt.h
++++ b/include/asm-generic/preempt.h
+@@ -79,6 +79,9 @@ static __always_inline bool should_resched(int preempt_offset)
+ }
+
+ #ifdef CONFIG_PREEMPTION
++#ifdef CONFIG_PREEMPT_RT
++extern void preempt_schedule_lock(void);
++#endif
+ extern asmlinkage void preempt_schedule(void);
+ #define __preempt_schedule() preempt_schedule()
+ extern asmlinkage void preempt_schedule_notrace(void);
+diff --git a/include/linux/sched/rt.h b/include/linux/sched/rt.h
+index e5af028c08b4..994c25640e15 100644
+--- a/include/linux/sched/rt.h
++++ b/include/linux/sched/rt.h
+@@ -39,20 +39,12 @@ static inline struct task_struct *rt_mutex_get_top_task(struct task_struct *p)
+ }
+ extern void rt_mutex_setprio(struct task_struct *p, struct task_struct *pi_task);
+ extern void rt_mutex_adjust_pi(struct task_struct *p);
+-static inline bool tsk_is_pi_blocked(struct task_struct *tsk)
+-{
+- return tsk->pi_blocked_on != NULL;
+-}
+ #else
+ static inline struct task_struct *rt_mutex_get_top_task(struct task_struct *task)
+ {
+ return NULL;
+ }
+ # define rt_mutex_adjust_pi(p) do { } while (0)
+-static inline bool tsk_is_pi_blocked(struct task_struct *tsk)
+-{
+- return false;
+-}
+ #endif
+
+ extern void normalize_rt_tasks(void);
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index c095d1b92f70..2fe178651254 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -1067,7 +1067,7 @@ void __sched rt_spin_lock_slowlock_locked(struct rt_mutex *lock,
+ raw_spin_unlock_irqrestore(&lock->wait_lock, flags);
+
+ if (top_waiter != waiter || adaptive_wait(lock, lock_owner))
+- schedule();
++ preempt_schedule_lock();
+
+ raw_spin_lock_irqsave(&lock->wait_lock, flags);
+
+diff --git a/kernel/locking/rwlock-rt.c b/kernel/locking/rwlock-rt.c
+index 1ee16b8fedd7..16be7111aae7 100644
+--- a/kernel/locking/rwlock-rt.c
++++ b/kernel/locking/rwlock-rt.c
+@@ -211,7 +211,7 @@ static void __write_rt_lock(struct rt_rw_lock *lock)
+ raw_spin_unlock_irqrestore(&m->wait_lock, flags);
+
+ if (atomic_read(&lock->readers) != 0)
+- schedule();
++ preempt_schedule_lock();
+
+ raw_spin_lock_irqsave(&m->wait_lock, flags);
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index be5d41ed6ff2..aaeed4b14278 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -5001,7 +5001,7 @@ pick_next_task(struct rq *rq, struct task_struct *prev, struct rq_flags *rf)
+ *
+ * WARNING: must be called with preemption disabled!
+ */
+-static void __sched notrace __schedule(bool preempt)
++static void __sched notrace __schedule(bool preempt, bool spinning_lock)
+ {
+ struct task_struct *prev, *next;
+ unsigned long *switch_count;
+@@ -5054,7 +5054,7 @@ static void __sched notrace __schedule(bool preempt)
+ * - ptrace_{,un}freeze_traced() can change ->state underneath us.
+ */
+ prev_state = prev->state;
+- if (!preempt && prev_state) {
++ if ((!preempt || spinning_lock) && prev_state) {
+ if (signal_pending_state(prev_state, prev)) {
+ prev->state = TASK_RUNNING;
+ } else {
+@@ -5138,7 +5138,7 @@ void __noreturn do_task_dead(void)
+ /* Tell freezer to ignore us: */
+ current->flags |= PF_NOFREEZE;
+
+- __schedule(false);
++ __schedule(false, false);
+ BUG();
+
+ /* Avoid "noreturn function does return" - but don't continue if BUG() is a NOP: */
+@@ -5171,9 +5171,6 @@ static inline void sched_submit_work(struct task_struct *tsk)
+ preempt_enable_no_resched();
+ }
+
+- if (tsk_is_pi_blocked(tsk))
+- return;
+-
+ /*
+ * If we are going to sleep and we have plugged IO queued,
+ * make sure to submit it to avoid deadlocks.
+@@ -5199,7 +5196,7 @@ asmlinkage __visible void __sched schedule(void)
+ sched_submit_work(tsk);
+ do {
+ preempt_disable();
+- __schedule(false);
++ __schedule(false, false);
+ sched_preempt_enable_no_resched();
+ } while (need_resched());
+ sched_update_worker(tsk);
+@@ -5227,7 +5224,7 @@ void __sched schedule_idle(void)
+ */
+ WARN_ON_ONCE(current->state);
+ do {
+- __schedule(false);
++ __schedule(false, false);
+ } while (need_resched());
+ }
+
+@@ -5280,7 +5277,7 @@ static void __sched notrace preempt_schedule_common(void)
+ */
+ preempt_disable_notrace();
+ preempt_latency_start(1);
+- __schedule(true);
++ __schedule(true, false);
+ preempt_latency_stop(1);
+ preempt_enable_no_resched_notrace();
+
+@@ -5310,6 +5307,19 @@ asmlinkage __visible void __sched notrace preempt_schedule(void)
+ NOKPROBE_SYMBOL(preempt_schedule);
+ EXPORT_SYMBOL(preempt_schedule);
+
++#ifdef CONFIG_PREEMPT_RT
++void __sched notrace preempt_schedule_lock(void)
++{
++ do {
++ preempt_disable();
++ __schedule(true, true);
++ sched_preempt_enable_no_resched();
++ } while (need_resched());
++}
++NOKPROBE_SYMBOL(preempt_schedule_lock);
++EXPORT_SYMBOL(preempt_schedule_lock);
++#endif
++
+ /**
+ * preempt_schedule_notrace - preempt_schedule called by tracing
+ *
+@@ -5353,7 +5363,7 @@ asmlinkage __visible void __sched notrace preempt_schedule_notrace(void)
+ * an infinite recursion.
+ */
+ prev_ctx = exception_enter();
+- __schedule(true);
++ __schedule(true, false);
+ exception_exit(prev_ctx);
+
+ preempt_latency_stop(1);
+@@ -5382,7 +5392,7 @@ asmlinkage __visible void __sched preempt_schedule_irq(void)
+ do {
+ preempt_disable();
+ local_irq_enable();
+- __schedule(true);
++ __schedule(true, false);
+ local_irq_disable();
+ sched_preempt_enable_no_resched();
+ } while (need_resched());
+--
+2.43.0
+
diff --git a/debian/patches-rt/0178-signal-Revert-ptrace-preempt-magic.patch b/debian/patches-rt/0178-signal-Revert-ptrace-preempt-magic.patch
new file mode 100644
index 000000000..c90e0baa5
--- /dev/null
+++ b/debian/patches-rt/0178-signal-Revert-ptrace-preempt-magic.patch
@@ -0,0 +1,39 @@
+From 3d8d7beacea4da55fdd1b45bc8d5c19da1438dcb Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Wed, 21 Sep 2011 19:57:12 +0200
+Subject: [PATCH 178/323] signal: Revert ptrace preempt magic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Upstream commit '53da1d9456fe7f8 fix ptrace slowness' is nothing more
+than a bandaid around the ptrace design trainwreck. It's not a
+correctness issue, it's merily a cosmetic bandaid.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ kernel/signal.c | 8 --------
+ 1 file changed, 8 deletions(-)
+
+diff --git a/kernel/signal.c b/kernel/signal.c
+index e487c4660921..5ab628e2afc5 100644
+--- a/kernel/signal.c
++++ b/kernel/signal.c
+@@ -2193,16 +2193,8 @@ static void ptrace_stop(int exit_code, int why, int clear_code, kernel_siginfo_t
+ if (gstop_done && ptrace_reparented(current))
+ do_notify_parent_cldstop(current, false, why);
+
+- /*
+- * Don't want to allow preemption here, because
+- * sys_ptrace() needs this task to be inactive.
+- *
+- * XXX: implement read_unlock_no_resched().
+- */
+- preempt_disable();
+ read_unlock(&tasklist_lock);
+ cgroup_enter_frozen();
+- preempt_enable_no_resched();
+ freezable_schedule();
+ cgroup_leave_frozen(true);
+ } else {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0179-preempt-Provide-preempt_-_-no-rt-variants.patch b/debian/patches-rt/0179-preempt-Provide-preempt_-_-no-rt-variants.patch
new file mode 100644
index 000000000..044b63df6
--- /dev/null
+++ b/debian/patches-rt/0179-preempt-Provide-preempt_-_-no-rt-variants.patch
@@ -0,0 +1,53 @@
+From 500d1733493dabbf5baf698854070d3cb1b0990f Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 24 Jul 2009 12:38:56 +0200
+Subject: [PATCH 179/323] preempt: Provide preempt_*_(no)rt variants
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+RT needs a few preempt_disable/enable points which are not necessary
+otherwise. Implement variants to avoid #ifdeffery.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/preempt.h | 18 +++++++++++++++++-
+ 1 file changed, 17 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/preempt.h b/include/linux/preempt.h
+index 4d244e295e85..5ceac863e729 100644
+--- a/include/linux/preempt.h
++++ b/include/linux/preempt.h
+@@ -188,7 +188,11 @@ do { \
+ preempt_count_dec(); \
+ } while (0)
+
+-#define preempt_enable_no_resched() sched_preempt_enable_no_resched()
++#ifdef CONFIG_PREEMPT_RT
++# define preempt_enable_no_resched() sched_preempt_enable_no_resched()
++#else
++# define preempt_enable_no_resched() preempt_enable()
++#endif
+
+ #define preemptible() (preempt_count() == 0 && !irqs_disabled())
+
+@@ -282,6 +286,18 @@ do { \
+ set_preempt_need_resched(); \
+ } while (0)
+
++#ifdef CONFIG_PREEMPT_RT
++# define preempt_disable_rt() preempt_disable()
++# define preempt_enable_rt() preempt_enable()
++# define preempt_disable_nort() barrier()
++# define preempt_enable_nort() barrier()
++#else
++# define preempt_disable_rt() barrier()
++# define preempt_enable_rt() barrier()
++# define preempt_disable_nort() preempt_disable()
++# define preempt_enable_nort() preempt_enable()
++#endif
++
+ #ifdef CONFIG_PREEMPT_NOTIFIERS
+
+ struct preempt_notifier;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0180-mm-vmstat-Protect-per-cpu-variables-with-preempt-dis.patch b/debian/patches-rt/0180-mm-vmstat-Protect-per-cpu-variables-with-preempt-dis.patch
new file mode 100644
index 000000000..6512c18a9
--- /dev/null
+++ b/debian/patches-rt/0180-mm-vmstat-Protect-per-cpu-variables-with-preempt-dis.patch
@@ -0,0 +1,145 @@
+From a066e44619e1a6f661cd861015a5b658adead8bc Mon Sep 17 00:00:00 2001
+From: Ingo Molnar <mingo@elte.hu>
+Date: Fri, 3 Jul 2009 08:30:13 -0500
+Subject: [PATCH 180/323] mm/vmstat: Protect per cpu variables with preempt
+ disable on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Disable preemption on -RT for the vmstat code. On vanila the code runs in
+IRQ-off regions while on -RT it is not. "preempt_disable" ensures that the
+same ressources is not updated in parallel due to preemption.
+
+Signed-off-by: Ingo Molnar <mingo@elte.hu>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/vmstat.h | 4 ++++
+ mm/vmstat.c | 12 ++++++++++++
+ 2 files changed, 16 insertions(+)
+
+diff --git a/include/linux/vmstat.h b/include/linux/vmstat.h
+index 322dcbfcc933..9a3a10ea3e3c 100644
+--- a/include/linux/vmstat.h
++++ b/include/linux/vmstat.h
+@@ -63,7 +63,9 @@ DECLARE_PER_CPU(struct vm_event_state, vm_event_states);
+ */
+ static inline void __count_vm_event(enum vm_event_item item)
+ {
++ preempt_disable_rt();
+ raw_cpu_inc(vm_event_states.event[item]);
++ preempt_enable_rt();
+ }
+
+ static inline void count_vm_event(enum vm_event_item item)
+@@ -73,7 +75,9 @@ static inline void count_vm_event(enum vm_event_item item)
+
+ static inline void __count_vm_events(enum vm_event_item item, long delta)
+ {
++ preempt_disable_rt();
+ raw_cpu_add(vm_event_states.event[item], delta);
++ preempt_enable_rt();
+ }
+
+ static inline void count_vm_events(enum vm_event_item item, long delta)
+diff --git a/mm/vmstat.c b/mm/vmstat.c
+index e292e63afebf..598e9317c7e0 100644
+--- a/mm/vmstat.c
++++ b/mm/vmstat.c
+@@ -321,6 +321,7 @@ void __mod_zone_page_state(struct zone *zone, enum zone_stat_item item,
+ long x;
+ long t;
+
++ preempt_disable_rt();
+ x = delta + __this_cpu_read(*p);
+
+ t = __this_cpu_read(pcp->stat_threshold);
+@@ -330,6 +331,7 @@ void __mod_zone_page_state(struct zone *zone, enum zone_stat_item item,
+ x = 0;
+ }
+ __this_cpu_write(*p, x);
++ preempt_enable_rt();
+ }
+ EXPORT_SYMBOL(__mod_zone_page_state);
+
+@@ -346,6 +348,7 @@ void __mod_node_page_state(struct pglist_data *pgdat, enum node_stat_item item,
+ delta >>= PAGE_SHIFT;
+ }
+
++ preempt_disable_rt();
+ x = delta + __this_cpu_read(*p);
+
+ t = __this_cpu_read(pcp->stat_threshold);
+@@ -355,6 +358,7 @@ void __mod_node_page_state(struct pglist_data *pgdat, enum node_stat_item item,
+ x = 0;
+ }
+ __this_cpu_write(*p, x);
++ preempt_enable_rt();
+ }
+ EXPORT_SYMBOL(__mod_node_page_state);
+
+@@ -387,6 +391,7 @@ void __inc_zone_state(struct zone *zone, enum zone_stat_item item)
+ s8 __percpu *p = pcp->vm_stat_diff + item;
+ s8 v, t;
+
++ preempt_disable_rt();
+ v = __this_cpu_inc_return(*p);
+ t = __this_cpu_read(pcp->stat_threshold);
+ if (unlikely(v > t)) {
+@@ -395,6 +400,7 @@ void __inc_zone_state(struct zone *zone, enum zone_stat_item item)
+ zone_page_state_add(v + overstep, zone, item);
+ __this_cpu_write(*p, -overstep);
+ }
++ preempt_enable_rt();
+ }
+
+ void __inc_node_state(struct pglist_data *pgdat, enum node_stat_item item)
+@@ -405,6 +411,7 @@ void __inc_node_state(struct pglist_data *pgdat, enum node_stat_item item)
+
+ VM_WARN_ON_ONCE(vmstat_item_in_bytes(item));
+
++ preempt_disable_rt();
+ v = __this_cpu_inc_return(*p);
+ t = __this_cpu_read(pcp->stat_threshold);
+ if (unlikely(v > t)) {
+@@ -413,6 +420,7 @@ void __inc_node_state(struct pglist_data *pgdat, enum node_stat_item item)
+ node_page_state_add(v + overstep, pgdat, item);
+ __this_cpu_write(*p, -overstep);
+ }
++ preempt_enable_rt();
+ }
+
+ void __inc_zone_page_state(struct page *page, enum zone_stat_item item)
+@@ -433,6 +441,7 @@ void __dec_zone_state(struct zone *zone, enum zone_stat_item item)
+ s8 __percpu *p = pcp->vm_stat_diff + item;
+ s8 v, t;
+
++ preempt_disable_rt();
+ v = __this_cpu_dec_return(*p);
+ t = __this_cpu_read(pcp->stat_threshold);
+ if (unlikely(v < - t)) {
+@@ -441,6 +450,7 @@ void __dec_zone_state(struct zone *zone, enum zone_stat_item item)
+ zone_page_state_add(v - overstep, zone, item);
+ __this_cpu_write(*p, overstep);
+ }
++ preempt_enable_rt();
+ }
+
+ void __dec_node_state(struct pglist_data *pgdat, enum node_stat_item item)
+@@ -451,6 +461,7 @@ void __dec_node_state(struct pglist_data *pgdat, enum node_stat_item item)
+
+ VM_WARN_ON_ONCE(vmstat_item_in_bytes(item));
+
++ preempt_disable_rt();
+ v = __this_cpu_dec_return(*p);
+ t = __this_cpu_read(pcp->stat_threshold);
+ if (unlikely(v < - t)) {
+@@ -459,6 +470,7 @@ void __dec_node_state(struct pglist_data *pgdat, enum node_stat_item item)
+ node_page_state_add(v - overstep, pgdat, item);
+ __this_cpu_write(*p, overstep);
+ }
++ preempt_enable_rt();
+ }
+
+ void __dec_zone_page_state(struct page *page, enum zone_stat_item item)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0181-mm-memcontrol-Disable-preemption-in-__mod_memcg_lruv.patch b/debian/patches-rt/0181-mm-memcontrol-Disable-preemption-in-__mod_memcg_lruv.patch
new file mode 100644
index 000000000..2df18df08
--- /dev/null
+++ b/debian/patches-rt/0181-mm-memcontrol-Disable-preemption-in-__mod_memcg_lruv.patch
@@ -0,0 +1,44 @@
+From 6f35e0e3a90abef410034d9900a21e68131aa5d5 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 28 Oct 2020 18:15:32 +0100
+Subject: [PATCH 181/323] mm/memcontrol: Disable preemption in
+ __mod_memcg_lruvec_state()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The callers expect disabled preemption/interrupts while invoking
+__mod_memcg_lruvec_state(). This works mainline because a lock of
+somekind is acquired.
+
+Use preempt_disable_rt() where per-CPU variables are accessed and a
+stable pointer is expected. This is also done in __mod_zone_page_state()
+for the same reason.
+
+Cc: stable-rt@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/memcontrol.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/mm/memcontrol.c b/mm/memcontrol.c
+index ddc8ed096dec..49566afaef1c 100644
+--- a/mm/memcontrol.c
++++ b/mm/memcontrol.c
+@@ -816,6 +816,7 @@ void __mod_memcg_lruvec_state(struct lruvec *lruvec, enum node_stat_item idx,
+ pn = container_of(lruvec, struct mem_cgroup_per_node, lruvec);
+ memcg = pn->memcg;
+
++ preempt_disable_rt();
+ /* Update memcg */
+ __mod_memcg_state(memcg, idx, val);
+
+@@ -835,6 +836,7 @@ void __mod_memcg_lruvec_state(struct lruvec *lruvec, enum node_stat_item idx,
+ x = 0;
+ }
+ __this_cpu_write(pn->lruvec_stat_cpu->count[idx], x);
++ preempt_enable_rt();
+ }
+
+ /**
+--
+2.43.0
+
diff --git a/debian/patches-rt/0182-xfrm-Use-sequence-counter-with-associated-spinlock.patch b/debian/patches-rt/0182-xfrm-Use-sequence-counter-with-associated-spinlock.patch
new file mode 100644
index 000000000..abce9d9d0
--- /dev/null
+++ b/debian/patches-rt/0182-xfrm-Use-sequence-counter-with-associated-spinlock.patch
@@ -0,0 +1,46 @@
+From 17aae888f2940f55065824bd7c267df06be47fbb Mon Sep 17 00:00:00 2001
+From: "Ahmed S. Darwish" <a.darwish@linutronix.de>
+Date: Wed, 10 Jun 2020 12:53:22 +0200
+Subject: [PATCH 182/323] xfrm: Use sequence counter with associated spinlock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+A sequence counter write side critical section must be protected by some
+form of locking to serialize writers. A plain seqcount_t does not
+contain the information of which lock must be held when entering a write
+side critical section.
+
+Use the new seqcount_spinlock_t data type, which allows to associate a
+spinlock with the sequence counter. This enables lockdep to verify that
+the spinlock used for writer serialization is held when the write side
+critical section is entered.
+
+If lockdep is disabled this lock association is compiled out and has
+neither storage size nor runtime overhead.
+
+Upstream-status: The xfrm locking used for seqcoun writer serialization
+appears to be broken. If that's the case, a proper fix will need to be
+submitted upstream. (e.g. make the seqcount per network namespace?)
+
+Signed-off-by: Ahmed S. Darwish <a.darwish@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ net/xfrm/xfrm_state.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c
+index ba73014805a4..14e1f36bdda5 100644
+--- a/net/xfrm/xfrm_state.c
++++ b/net/xfrm/xfrm_state.c
+@@ -2691,7 +2691,8 @@ int __net_init xfrm_state_init(struct net *net)
+ net->xfrm.state_num = 0;
+ INIT_WORK(&net->xfrm.state_hash_work, xfrm_hash_resize);
+ spin_lock_init(&net->xfrm.xfrm_state_lock);
+- seqcount_init(&net->xfrm.xfrm_state_hash_generation);
++ seqcount_spinlock_init(&net->xfrm.xfrm_state_hash_generation,
++ &net->xfrm.xfrm_state_lock);
+ return 0;
+
+ out_byspi:
+--
+2.43.0
+
diff --git a/debian/patches-rt/0183-u64_stats-Disable-preemption-on-32bit-UP-SMP-with-RT.patch b/debian/patches-rt/0183-u64_stats-Disable-preemption-on-32bit-UP-SMP-with-RT.patch
new file mode 100644
index 000000000..f100e0717
--- /dev/null
+++ b/debian/patches-rt/0183-u64_stats-Disable-preemption-on-32bit-UP-SMP-with-RT.patch
@@ -0,0 +1,152 @@
+From e6ec60749d80fcdde8451a7a544a218f7c5ef393 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Mon, 17 Aug 2020 12:28:10 +0200
+Subject: [PATCH 183/323] u64_stats: Disable preemption on 32bit-UP/SMP with RT
+ during updates
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+On RT the seqcount_t is required even on UP because the softirq can be
+preempted. The IRQ handler is threaded so it is also preemptible.
+
+Disable preemption on 32bit-RT during value updates. There is no need to
+disable interrupts on RT because the handler is run threaded. Therefore
+disabling preemption is enough to guarantee that the update is not
+interruped.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/u64_stats_sync.h | 42 ++++++++++++++++++++++------------
+ 1 file changed, 28 insertions(+), 14 deletions(-)
+
+diff --git a/include/linux/u64_stats_sync.h b/include/linux/u64_stats_sync.h
+index e81856c0ba13..66eb968a09d4 100644
+--- a/include/linux/u64_stats_sync.h
++++ b/include/linux/u64_stats_sync.h
+@@ -66,7 +66,7 @@
+ #include <linux/seqlock.h>
+
+ struct u64_stats_sync {
+-#if BITS_PER_LONG==32 && defined(CONFIG_SMP)
++#if BITS_PER_LONG==32 && (defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT))
+ seqcount_t seq;
+ #endif
+ };
+@@ -115,7 +115,7 @@ static inline void u64_stats_inc(u64_stats_t *p)
+ }
+ #endif
+
+-#if BITS_PER_LONG == 32 && defined(CONFIG_SMP)
++#if BITS_PER_LONG == 32 && (defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT))
+ #define u64_stats_init(syncp) seqcount_init(&(syncp)->seq)
+ #else
+ static inline void u64_stats_init(struct u64_stats_sync *syncp)
+@@ -125,15 +125,19 @@ static inline void u64_stats_init(struct u64_stats_sync *syncp)
+
+ static inline void u64_stats_update_begin(struct u64_stats_sync *syncp)
+ {
+-#if BITS_PER_LONG==32 && defined(CONFIG_SMP)
++#if BITS_PER_LONG == 32 && (defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT))
++ if (IS_ENABLED(CONFIG_PREEMPT_RT))
++ preempt_disable();
+ write_seqcount_begin(&syncp->seq);
+ #endif
+ }
+
+ static inline void u64_stats_update_end(struct u64_stats_sync *syncp)
+ {
+-#if BITS_PER_LONG==32 && defined(CONFIG_SMP)
++#if BITS_PER_LONG == 32 && (defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT))
+ write_seqcount_end(&syncp->seq);
++ if (IS_ENABLED(CONFIG_PREEMPT_RT))
++ preempt_enable();
+ #endif
+ }
+
+@@ -142,8 +146,11 @@ u64_stats_update_begin_irqsave(struct u64_stats_sync *syncp)
+ {
+ unsigned long flags = 0;
+
+-#if BITS_PER_LONG==32 && defined(CONFIG_SMP)
+- local_irq_save(flags);
++#if BITS_PER_LONG == 32 && (defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT))
++ if (IS_ENABLED(CONFIG_PREEMPT_RT))
++ preempt_disable();
++ else
++ local_irq_save(flags);
+ write_seqcount_begin(&syncp->seq);
+ #endif
+ return flags;
+@@ -153,15 +160,18 @@ static inline void
+ u64_stats_update_end_irqrestore(struct u64_stats_sync *syncp,
+ unsigned long flags)
+ {
+-#if BITS_PER_LONG==32 && defined(CONFIG_SMP)
++#if BITS_PER_LONG == 32 && (defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT))
+ write_seqcount_end(&syncp->seq);
+- local_irq_restore(flags);
++ if (IS_ENABLED(CONFIG_PREEMPT_RT))
++ preempt_enable();
++ else
++ local_irq_restore(flags);
+ #endif
+ }
+
+ static inline unsigned int __u64_stats_fetch_begin(const struct u64_stats_sync *syncp)
+ {
+-#if BITS_PER_LONG==32 && defined(CONFIG_SMP)
++#if BITS_PER_LONG == 32 && (defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT))
+ return read_seqcount_begin(&syncp->seq);
+ #else
+ return 0;
+@@ -170,7 +180,7 @@ static inline unsigned int __u64_stats_fetch_begin(const struct u64_stats_sync *
+
+ static inline unsigned int u64_stats_fetch_begin(const struct u64_stats_sync *syncp)
+ {
+-#if BITS_PER_LONG==32 && !defined(CONFIG_SMP)
++#if BITS_PER_LONG == 32 && (!defined(CONFIG_SMP) && !defined(CONFIG_PREEMPT_RT))
+ preempt_disable();
+ #endif
+ return __u64_stats_fetch_begin(syncp);
+@@ -179,7 +189,7 @@ static inline unsigned int u64_stats_fetch_begin(const struct u64_stats_sync *sy
+ static inline bool __u64_stats_fetch_retry(const struct u64_stats_sync *syncp,
+ unsigned int start)
+ {
+-#if BITS_PER_LONG==32 && defined(CONFIG_SMP)
++#if BITS_PER_LONG == 32 && (defined(CONFIG_SMP) || defined(CONFIG_PREEMPT_RT))
+ return read_seqcount_retry(&syncp->seq, start);
+ #else
+ return false;
+@@ -189,7 +199,7 @@ static inline bool __u64_stats_fetch_retry(const struct u64_stats_sync *syncp,
+ static inline bool u64_stats_fetch_retry(const struct u64_stats_sync *syncp,
+ unsigned int start)
+ {
+-#if BITS_PER_LONG==32 && !defined(CONFIG_SMP)
++#if BITS_PER_LONG == 32 && (!defined(CONFIG_SMP) && !defined(CONFIG_PREEMPT_RT))
+ preempt_enable();
+ #endif
+ return __u64_stats_fetch_retry(syncp, start);
+@@ -203,7 +213,9 @@ static inline bool u64_stats_fetch_retry(const struct u64_stats_sync *syncp,
+ */
+ static inline unsigned int u64_stats_fetch_begin_irq(const struct u64_stats_sync *syncp)
+ {
+-#if BITS_PER_LONG==32 && !defined(CONFIG_SMP)
++#if BITS_PER_LONG == 32 && defined(CONFIG_PREEMPT_RT)
++ preempt_disable();
++#elif BITS_PER_LONG == 32 && !defined(CONFIG_SMP)
+ local_irq_disable();
+ #endif
+ return __u64_stats_fetch_begin(syncp);
+@@ -212,7 +224,9 @@ static inline unsigned int u64_stats_fetch_begin_irq(const struct u64_stats_sync
+ static inline bool u64_stats_fetch_retry_irq(const struct u64_stats_sync *syncp,
+ unsigned int start)
+ {
+-#if BITS_PER_LONG==32 && !defined(CONFIG_SMP)
++#if BITS_PER_LONG == 32 && defined(CONFIG_PREEMPT_RT)
++ preempt_enable();
++#elif BITS_PER_LONG == 32 && !defined(CONFIG_SMP)
+ local_irq_enable();
+ #endif
+ return __u64_stats_fetch_retry(syncp, start);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0184-fs-dcache-use-swait_queue-instead-of-waitqueue.patch b/debian/patches-rt/0184-fs-dcache-use-swait_queue-instead-of-waitqueue.patch
new file mode 100644
index 000000000..8a43098f4
--- /dev/null
+++ b/debian/patches-rt/0184-fs-dcache-use-swait_queue-instead-of-waitqueue.patch
@@ -0,0 +1,263 @@
+From aeadd35a13f446ec84a832549b2815fc3de30917 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 14 Sep 2016 14:35:49 +0200
+Subject: [PATCH 184/323] fs/dcache: use swait_queue instead of waitqueue
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+__d_lookup_done() invokes wake_up_all() while holding a hlist_bl_lock()
+which disables preemption. As a workaround convert it to swait.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ fs/afs/dir_silly.c | 2 +-
+ fs/cifs/readdir.c | 2 +-
+ fs/dcache.c | 27 +++++++++++++++------------
+ fs/fuse/readdir.c | 2 +-
+ fs/namei.c | 4 ++--
+ fs/nfs/dir.c | 4 ++--
+ fs/nfs/unlink.c | 4 ++--
+ fs/proc/base.c | 3 ++-
+ fs/proc/proc_sysctl.c | 2 +-
+ include/linux/dcache.h | 4 ++--
+ include/linux/nfs_xdr.h | 2 +-
+ kernel/sched/swait.c | 1 +
+ 12 files changed, 31 insertions(+), 26 deletions(-)
+
+diff --git a/fs/afs/dir_silly.c b/fs/afs/dir_silly.c
+index dae9a57d7ec0..9a6a0ec4d1fb 100644
+--- a/fs/afs/dir_silly.c
++++ b/fs/afs/dir_silly.c
+@@ -239,7 +239,7 @@ int afs_silly_iput(struct dentry *dentry, struct inode *inode)
+ struct dentry *alias;
+ int ret;
+
+- DECLARE_WAIT_QUEUE_HEAD_ONSTACK(wq);
++ DECLARE_SWAIT_QUEUE_HEAD_ONSTACK(wq);
+
+ _enter("%p{%pd},%llx", dentry, dentry, vnode->fid.vnode);
+
+diff --git a/fs/cifs/readdir.c b/fs/cifs/readdir.c
+index 799be3a5d25e..d5165a7da071 100644
+--- a/fs/cifs/readdir.c
++++ b/fs/cifs/readdir.c
+@@ -81,7 +81,7 @@ cifs_prime_dcache(struct dentry *parent, struct qstr *name,
+ struct inode *inode;
+ struct super_block *sb = parent->d_sb;
+ struct cifs_sb_info *cifs_sb = CIFS_SB(sb);
+- DECLARE_WAIT_QUEUE_HEAD_ONSTACK(wq);
++ DECLARE_SWAIT_QUEUE_HEAD_ONSTACK(wq);
+
+ cifs_dbg(FYI, "%s: for %s\n", __func__, name->name);
+
+diff --git a/fs/dcache.c b/fs/dcache.c
+index ea0485861d93..1f4255ef8722 100644
+--- a/fs/dcache.c
++++ b/fs/dcache.c
+@@ -2518,21 +2518,24 @@ static inline void end_dir_add(struct inode *dir, unsigned n)
+
+ static void d_wait_lookup(struct dentry *dentry)
+ {
+- if (d_in_lookup(dentry)) {
+- DECLARE_WAITQUEUE(wait, current);
+- add_wait_queue(dentry->d_wait, &wait);
+- do {
+- set_current_state(TASK_UNINTERRUPTIBLE);
+- spin_unlock(&dentry->d_lock);
+- schedule();
+- spin_lock(&dentry->d_lock);
+- } while (d_in_lookup(dentry));
+- }
++ struct swait_queue __wait;
++
++ if (!d_in_lookup(dentry))
++ return;
++
++ INIT_LIST_HEAD(&__wait.task_list);
++ do {
++ prepare_to_swait_exclusive(dentry->d_wait, &__wait, TASK_UNINTERRUPTIBLE);
++ spin_unlock(&dentry->d_lock);
++ schedule();
++ spin_lock(&dentry->d_lock);
++ } while (d_in_lookup(dentry));
++ finish_swait(dentry->d_wait, &__wait);
+ }
+
+ struct dentry *d_alloc_parallel(struct dentry *parent,
+ const struct qstr *name,
+- wait_queue_head_t *wq)
++ struct swait_queue_head *wq)
+ {
+ unsigned int hash = name->hash;
+ struct hlist_bl_head *b = in_lookup_hash(parent, hash);
+@@ -2647,7 +2650,7 @@ void __d_lookup_done(struct dentry *dentry)
+ hlist_bl_lock(b);
+ dentry->d_flags &= ~DCACHE_PAR_LOOKUP;
+ __hlist_bl_del(&dentry->d_u.d_in_lookup_hash);
+- wake_up_all(dentry->d_wait);
++ swake_up_all(dentry->d_wait);
+ dentry->d_wait = NULL;
+ hlist_bl_unlock(b);
+ INIT_HLIST_NODE(&dentry->d_u.d_alias);
+diff --git a/fs/fuse/readdir.c b/fs/fuse/readdir.c
+index 14e99ffa57af..eb899feaf82d 100644
+--- a/fs/fuse/readdir.c
++++ b/fs/fuse/readdir.c
+@@ -160,7 +160,7 @@ static int fuse_direntplus_link(struct file *file,
+ struct inode *dir = d_inode(parent);
+ struct fuse_conn *fc;
+ struct inode *inode;
+- DECLARE_WAIT_QUEUE_HEAD_ONSTACK(wq);
++ DECLARE_SWAIT_QUEUE_HEAD_ONSTACK(wq);
+
+ if (!o->nodeid) {
+ /*
+diff --git a/fs/namei.c b/fs/namei.c
+index 3ff954a2bbd1..01e3f8195ee1 100644
+--- a/fs/namei.c
++++ b/fs/namei.c
+@@ -1532,7 +1532,7 @@ static struct dentry *__lookup_slow(const struct qstr *name,
+ {
+ struct dentry *dentry, *old;
+ struct inode *inode = dir->d_inode;
+- DECLARE_WAIT_QUEUE_HEAD_ONSTACK(wq);
++ DECLARE_SWAIT_QUEUE_HEAD_ONSTACK(wq);
+
+ /* Don't go there if it's already dead */
+ if (unlikely(IS_DEADDIR(inode)))
+@@ -3085,7 +3085,7 @@ static struct dentry *lookup_open(struct nameidata *nd, struct file *file,
+ struct dentry *dentry;
+ int error, create_error = 0;
+ umode_t mode = op->mode;
+- DECLARE_WAIT_QUEUE_HEAD_ONSTACK(wq);
++ DECLARE_SWAIT_QUEUE_HEAD_ONSTACK(wq);
+
+ if (unlikely(IS_DEADDIR(dir_inode)))
+ return ERR_PTR(-ENOENT);
+diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
+index 9f88ca7b2001..bc8a78ecfe1c 100644
+--- a/fs/nfs/dir.c
++++ b/fs/nfs/dir.c
+@@ -484,7 +484,7 @@ void nfs_prime_dcache(struct dentry *parent, struct nfs_entry *entry,
+ unsigned long dir_verifier)
+ {
+ struct qstr filename = QSTR_INIT(entry->name, entry->len);
+- DECLARE_WAIT_QUEUE_HEAD_ONSTACK(wq);
++ DECLARE_SWAIT_QUEUE_HEAD_ONSTACK(wq);
+ struct dentry *dentry;
+ struct dentry *alias;
+ struct inode *inode;
+@@ -1660,7 +1660,7 @@ int nfs_atomic_open(struct inode *dir, struct dentry *dentry,
+ struct file *file, unsigned open_flags,
+ umode_t mode)
+ {
+- DECLARE_WAIT_QUEUE_HEAD_ONSTACK(wq);
++ DECLARE_SWAIT_QUEUE_HEAD_ONSTACK(wq);
+ struct nfs_open_context *ctx;
+ struct dentry *res;
+ struct iattr attr = { .ia_valid = ATTR_OPEN };
+diff --git a/fs/nfs/unlink.c b/fs/nfs/unlink.c
+index b27ebdccef70..f86c98a7ed04 100644
+--- a/fs/nfs/unlink.c
++++ b/fs/nfs/unlink.c
+@@ -13,7 +13,7 @@
+ #include <linux/sunrpc/clnt.h>
+ #include <linux/nfs_fs.h>
+ #include <linux/sched.h>
+-#include <linux/wait.h>
++#include <linux/swait.h>
+ #include <linux/namei.h>
+ #include <linux/fsnotify.h>
+
+@@ -180,7 +180,7 @@ nfs_async_unlink(struct dentry *dentry, const struct qstr *name)
+
+ data->cred = get_current_cred();
+ data->res.dir_attr = &data->dir_attr;
+- init_waitqueue_head(&data->wq);
++ init_swait_queue_head(&data->wq);
+
+ status = -EBUSY;
+ spin_lock(&dentry->d_lock);
+diff --git a/fs/proc/base.c b/fs/proc/base.c
+index 712948e97991..585d0afd1af6 100644
+--- a/fs/proc/base.c
++++ b/fs/proc/base.c
+@@ -96,6 +96,7 @@
+ #include <linux/posix-timers.h>
+ #include <linux/time_namespace.h>
+ #include <linux/resctrl.h>
++#include <linux/swait.h>
+ #include <trace/events/oom.h>
+ #include "internal.h"
+ #include "fd.h"
+@@ -2066,7 +2067,7 @@ bool proc_fill_cache(struct file *file, struct dir_context *ctx,
+
+ child = d_hash_and_lookup(dir, &qname);
+ if (!child) {
+- DECLARE_WAIT_QUEUE_HEAD_ONSTACK(wq);
++ DECLARE_SWAIT_QUEUE_HEAD_ONSTACK(wq);
+ child = d_alloc_parallel(dir, &qname, &wq);
+ if (IS_ERR(child))
+ goto end_instantiate;
+diff --git a/fs/proc/proc_sysctl.c b/fs/proc/proc_sysctl.c
+index aff9593feb73..d1a29668bff8 100644
+--- a/fs/proc/proc_sysctl.c
++++ b/fs/proc/proc_sysctl.c
+@@ -684,7 +684,7 @@ static bool proc_sys_fill_cache(struct file *file,
+
+ child = d_lookup(dir, &qname);
+ if (!child) {
+- DECLARE_WAIT_QUEUE_HEAD_ONSTACK(wq);
++ DECLARE_SWAIT_QUEUE_HEAD_ONSTACK(wq);
+ child = d_alloc_parallel(dir, &qname, &wq);
+ if (IS_ERR(child))
+ return false;
+diff --git a/include/linux/dcache.h b/include/linux/dcache.h
+index 6f95c3300cbb..c1290db778bd 100644
+--- a/include/linux/dcache.h
++++ b/include/linux/dcache.h
+@@ -106,7 +106,7 @@ struct dentry {
+
+ union {
+ struct list_head d_lru; /* LRU list */
+- wait_queue_head_t *d_wait; /* in-lookup ones only */
++ struct swait_queue_head *d_wait; /* in-lookup ones only */
+ };
+ struct list_head d_child; /* child of parent list */
+ struct list_head d_subdirs; /* our children */
+@@ -238,7 +238,7 @@ extern void d_set_d_op(struct dentry *dentry, const struct dentry_operations *op
+ extern struct dentry * d_alloc(struct dentry *, const struct qstr *);
+ extern struct dentry * d_alloc_anon(struct super_block *);
+ extern struct dentry * d_alloc_parallel(struct dentry *, const struct qstr *,
+- wait_queue_head_t *);
++ struct swait_queue_head *);
+ extern struct dentry * d_splice_alias(struct inode *, struct dentry *);
+ extern struct dentry * d_add_ci(struct dentry *, struct inode *, struct qstr *);
+ extern struct dentry * d_exact_alias(struct dentry *, struct inode *);
+diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h
+index 33442fd018a0..4612bb5be6ca 100644
+--- a/include/linux/nfs_xdr.h
++++ b/include/linux/nfs_xdr.h
+@@ -1675,7 +1675,7 @@ struct nfs_unlinkdata {
+ struct nfs_removeargs args;
+ struct nfs_removeres res;
+ struct dentry *dentry;
+- wait_queue_head_t wq;
++ struct swait_queue_head wq;
+ const struct cred *cred;
+ struct nfs_fattr dir_attr;
+ long timeout;
+diff --git a/kernel/sched/swait.c b/kernel/sched/swait.c
+index e1c655f928c7..f230b1ac7f91 100644
+--- a/kernel/sched/swait.c
++++ b/kernel/sched/swait.c
+@@ -64,6 +64,7 @@ void swake_up_all(struct swait_queue_head *q)
+ struct swait_queue *curr;
+ LIST_HEAD(tmp);
+
++ WARN_ON(irqs_disabled());
+ raw_spin_lock_irq(&q->lock);
+ list_splice_init(&q->task_list, &tmp);
+ while (!list_empty(&tmp)) {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0185-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch b/debian/patches-rt/0185-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch
new file mode 100644
index 000000000..e687b4d2d
--- /dev/null
+++ b/debian/patches-rt/0185-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch
@@ -0,0 +1,99 @@
+From 06c5210bfc8eff16e0d1df2430c7fcb07eae6c67 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 20 Oct 2017 11:29:53 +0200
+Subject: [PATCH 185/323] fs/dcache: disable preemption on i_dir_seq's write
+ side
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+i_dir_seq is an opencoded seqcounter. Based on the code it looks like we
+could have two writers in parallel despite the fact that the d_lock is
+held. The problem is that during the write process on RT the preemption
+is still enabled and if this process is interrupted by a reader with RT
+priority then we lock up.
+To avoid that lock up I am disabling the preemption during the update.
+The rename of i_dir_seq is here to ensure to catch new write sides in
+future.
+
+Cc: stable-rt@vger.kernel.org
+Reported-by: Oleg.Karfich@wago.com
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ fs/dcache.c | 12 +++++++-----
+ fs/inode.c | 2 +-
+ include/linux/fs.h | 2 +-
+ 3 files changed, 9 insertions(+), 7 deletions(-)
+
+diff --git a/fs/dcache.c b/fs/dcache.c
+index 1f4255ef8722..26a187abf13a 100644
+--- a/fs/dcache.c
++++ b/fs/dcache.c
+@@ -2503,9 +2503,10 @@ EXPORT_SYMBOL(d_rehash);
+ static inline unsigned start_dir_add(struct inode *dir)
+ {
+
++ preempt_disable_rt();
+ for (;;) {
+- unsigned n = dir->i_dir_seq;
+- if (!(n & 1) && cmpxchg(&dir->i_dir_seq, n, n + 1) == n)
++ unsigned n = dir->__i_dir_seq;
++ if (!(n & 1) && cmpxchg(&dir->__i_dir_seq, n, n + 1) == n)
+ return n;
+ cpu_relax();
+ }
+@@ -2513,7 +2514,8 @@ static inline unsigned start_dir_add(struct inode *dir)
+
+ static inline void end_dir_add(struct inode *dir, unsigned n)
+ {
+- smp_store_release(&dir->i_dir_seq, n + 2);
++ smp_store_release(&dir->__i_dir_seq, n + 2);
++ preempt_enable_rt();
+ }
+
+ static void d_wait_lookup(struct dentry *dentry)
+@@ -2549,7 +2551,7 @@ struct dentry *d_alloc_parallel(struct dentry *parent,
+
+ retry:
+ rcu_read_lock();
+- seq = smp_load_acquire(&parent->d_inode->i_dir_seq);
++ seq = smp_load_acquire(&parent->d_inode->__i_dir_seq);
+ r_seq = read_seqbegin(&rename_lock);
+ dentry = __d_lookup_rcu(parent, name, &d_seq);
+ if (unlikely(dentry)) {
+@@ -2577,7 +2579,7 @@ struct dentry *d_alloc_parallel(struct dentry *parent,
+ }
+
+ hlist_bl_lock(b);
+- if (unlikely(READ_ONCE(parent->d_inode->i_dir_seq) != seq)) {
++ if (unlikely(READ_ONCE(parent->d_inode->__i_dir_seq) != seq)) {
+ hlist_bl_unlock(b);
+ rcu_read_unlock();
+ goto retry;
+diff --git a/fs/inode.c b/fs/inode.c
+index 5c7139aa2bda..4ee8239c055f 100644
+--- a/fs/inode.c
++++ b/fs/inode.c
+@@ -158,7 +158,7 @@ int inode_init_always(struct super_block *sb, struct inode *inode)
+ inode->i_bdev = NULL;
+ inode->i_cdev = NULL;
+ inode->i_link = NULL;
+- inode->i_dir_seq = 0;
++ inode->__i_dir_seq = 0;
+ inode->i_rdev = 0;
+ inode->dirtied_when = 0;
+
+diff --git a/include/linux/fs.h b/include/linux/fs.h
+index 82316863c71f..a29a0b8a1eca 100644
+--- a/include/linux/fs.h
++++ b/include/linux/fs.h
+@@ -699,7 +699,7 @@ struct inode {
+ struct block_device *i_bdev;
+ struct cdev *i_cdev;
+ char *i_link;
+- unsigned i_dir_seq;
++ unsigned __i_dir_seq;
+ };
+
+ __u32 i_generation;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0186-net-Qdisc-use-a-seqlock-instead-seqcount.patch b/debian/patches-rt/0186-net-Qdisc-use-a-seqlock-instead-seqcount.patch
new file mode 100644
index 000000000..a289ccc4f
--- /dev/null
+++ b/debian/patches-rt/0186-net-Qdisc-use-a-seqlock-instead-seqcount.patch
@@ -0,0 +1,299 @@
+From a996bcbd8188409882599175697a464fa6265193 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 14 Sep 2016 17:36:35 +0200
+Subject: [PATCH 186/323] net/Qdisc: use a seqlock instead seqcount
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The seqcount disables preemption on -RT while it is held which can't
+remove. Also we don't want the reader to spin for ages if the writer is
+scheduled out. The seqlock on the other hand will serialize / sleep on
+the lock while writer is active.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/net/gen_stats.h | 11 ++++++-----
+ include/net/net_seq_lock.h | 24 ++++++++++++++++++++++++
+ include/net/sch_generic.h | 19 +++++++++++++++++--
+ net/core/gen_estimator.c | 6 +++---
+ net/core/gen_stats.c | 12 ++++++------
+ net/sched/sch_api.c | 2 +-
+ net/sched/sch_generic.c | 10 ++++++++++
+ 7 files changed, 67 insertions(+), 17 deletions(-)
+ create mode 100644 include/net/net_seq_lock.h
+
+diff --git a/include/net/gen_stats.h b/include/net/gen_stats.h
+index 1424e02cef90..163f8415e5db 100644
+--- a/include/net/gen_stats.h
++++ b/include/net/gen_stats.h
+@@ -6,6 +6,7 @@
+ #include <linux/socket.h>
+ #include <linux/rtnetlink.h>
+ #include <linux/pkt_sched.h>
++#include <net/net_seq_lock.h>
+
+ /* Note: this used to be in include/uapi/linux/gen_stats.h */
+ struct gnet_stats_basic_packed {
+@@ -42,15 +43,15 @@ int gnet_stats_start_copy_compat(struct sk_buff *skb, int type,
+ spinlock_t *lock, struct gnet_dump *d,
+ int padattr);
+
+-int gnet_stats_copy_basic(const seqcount_t *running,
++int gnet_stats_copy_basic(net_seqlock_t *running,
+ struct gnet_dump *d,
+ struct gnet_stats_basic_cpu __percpu *cpu,
+ struct gnet_stats_basic_packed *b);
+-void __gnet_stats_copy_basic(const seqcount_t *running,
++void __gnet_stats_copy_basic(net_seqlock_t *running,
+ struct gnet_stats_basic_packed *bstats,
+ struct gnet_stats_basic_cpu __percpu *cpu,
+ struct gnet_stats_basic_packed *b);
+-int gnet_stats_copy_basic_hw(const seqcount_t *running,
++int gnet_stats_copy_basic_hw(net_seqlock_t *running,
+ struct gnet_dump *d,
+ struct gnet_stats_basic_cpu __percpu *cpu,
+ struct gnet_stats_basic_packed *b);
+@@ -70,13 +71,13 @@ int gen_new_estimator(struct gnet_stats_basic_packed *bstats,
+ struct gnet_stats_basic_cpu __percpu *cpu_bstats,
+ struct net_rate_estimator __rcu **rate_est,
+ spinlock_t *lock,
+- seqcount_t *running, struct nlattr *opt);
++ net_seqlock_t *running, struct nlattr *opt);
+ void gen_kill_estimator(struct net_rate_estimator __rcu **ptr);
+ int gen_replace_estimator(struct gnet_stats_basic_packed *bstats,
+ struct gnet_stats_basic_cpu __percpu *cpu_bstats,
+ struct net_rate_estimator __rcu **ptr,
+ spinlock_t *lock,
+- seqcount_t *running, struct nlattr *opt);
++ net_seqlock_t *running, struct nlattr *opt);
+ bool gen_estimator_active(struct net_rate_estimator __rcu **ptr);
+ bool gen_estimator_read(struct net_rate_estimator __rcu **ptr,
+ struct gnet_stats_rate_est64 *sample);
+diff --git a/include/net/net_seq_lock.h b/include/net/net_seq_lock.h
+new file mode 100644
+index 000000000000..95a497a72e51
+--- /dev/null
++++ b/include/net/net_seq_lock.h
+@@ -0,0 +1,24 @@
++#ifndef __NET_NET_SEQ_LOCK_H__
++#define __NET_NET_SEQ_LOCK_H__
++
++#ifdef CONFIG_PREEMPT_RT
++# define net_seqlock_t seqlock_t
++# define net_seq_begin(__r) read_seqbegin(__r)
++# define net_seq_retry(__r, __s) read_seqretry(__r, __s)
++
++static inline int try_write_seqlock(seqlock_t *sl)
++{
++ if (spin_trylock(&sl->lock)) {
++ write_seqcount_begin(&sl->seqcount);
++ return 1;
++ }
++ return 0;
++}
++
++#else
++# define net_seqlock_t seqcount_t
++# define net_seq_begin(__r) read_seqcount_begin(__r)
++# define net_seq_retry(__r, __s) read_seqcount_retry(__r, __s)
++#endif
++
++#endif
+diff --git a/include/net/sch_generic.h b/include/net/sch_generic.h
+index a62677be7452..8ce663a9b4f4 100644
+--- a/include/net/sch_generic.h
++++ b/include/net/sch_generic.h
+@@ -10,6 +10,7 @@
+ #include <linux/percpu.h>
+ #include <linux/dynamic_queue_limits.h>
+ #include <linux/list.h>
++#include <net/net_seq_lock.h>
+ #include <linux/refcount.h>
+ #include <linux/workqueue.h>
+ #include <linux/mutex.h>
+@@ -101,7 +102,7 @@ struct Qdisc {
+ struct sk_buff_head gso_skb ____cacheline_aligned_in_smp;
+ struct qdisc_skb_head q;
+ struct gnet_stats_basic_packed bstats;
+- seqcount_t running;
++ net_seqlock_t running;
+ struct gnet_stats_queue qstats;
+ unsigned long state;
+ struct Qdisc *next_sched;
+@@ -142,7 +143,11 @@ static inline bool qdisc_is_running(struct Qdisc *qdisc)
+ {
+ if (qdisc->flags & TCQ_F_NOLOCK)
+ return spin_is_locked(&qdisc->seqlock);
++#ifdef CONFIG_PREEMPT_RT
++ return spin_is_locked(&qdisc->running.lock) ? true : false;
++#else
+ return (raw_read_seqcount(&qdisc->running) & 1) ? true : false;
++#endif
+ }
+
+ static inline bool qdisc_is_percpu_stats(const struct Qdisc *q)
+@@ -183,17 +188,27 @@ static inline bool qdisc_run_begin(struct Qdisc *qdisc)
+ } else if (qdisc_is_running(qdisc)) {
+ return false;
+ }
++#ifdef CONFIG_PREEMPT_RT
++ if (try_write_seqlock(&qdisc->running))
++ return true;
++ return false;
++#else
+ /* Variant of write_seqcount_begin() telling lockdep a trylock
+ * was attempted.
+ */
+ raw_write_seqcount_begin(&qdisc->running);
+ seqcount_acquire(&qdisc->running.dep_map, 0, 1, _RET_IP_);
+ return true;
++#endif
+ }
+
+ static inline void qdisc_run_end(struct Qdisc *qdisc)
+ {
++#ifdef CONFIG_PREEMPT_RT
++ write_sequnlock(&qdisc->running);
++#else
+ write_seqcount_end(&qdisc->running);
++#endif
+ if (qdisc->flags & TCQ_F_NOLOCK) {
+ spin_unlock(&qdisc->seqlock);
+
+@@ -583,7 +598,7 @@ static inline spinlock_t *qdisc_root_sleeping_lock(const struct Qdisc *qdisc)
+ return qdisc_lock(root);
+ }
+
+-static inline seqcount_t *qdisc_root_sleeping_running(const struct Qdisc *qdisc)
++static inline net_seqlock_t *qdisc_root_sleeping_running(const struct Qdisc *qdisc)
+ {
+ struct Qdisc *root = qdisc_root_sleeping(qdisc);
+
+diff --git a/net/core/gen_estimator.c b/net/core/gen_estimator.c
+index 8e582e29a41e..e51f4854d8b2 100644
+--- a/net/core/gen_estimator.c
++++ b/net/core/gen_estimator.c
+@@ -42,7 +42,7 @@
+ struct net_rate_estimator {
+ struct gnet_stats_basic_packed *bstats;
+ spinlock_t *stats_lock;
+- seqcount_t *running;
++ net_seqlock_t *running;
+ struct gnet_stats_basic_cpu __percpu *cpu_bstats;
+ u8 ewma_log;
+ u8 intvl_log; /* period : (250ms << intvl_log) */
+@@ -125,7 +125,7 @@ int gen_new_estimator(struct gnet_stats_basic_packed *bstats,
+ struct gnet_stats_basic_cpu __percpu *cpu_bstats,
+ struct net_rate_estimator __rcu **rate_est,
+ spinlock_t *lock,
+- seqcount_t *running,
++ net_seqlock_t *running,
+ struct nlattr *opt)
+ {
+ struct gnet_estimator *parm = nla_data(opt);
+@@ -226,7 +226,7 @@ int gen_replace_estimator(struct gnet_stats_basic_packed *bstats,
+ struct gnet_stats_basic_cpu __percpu *cpu_bstats,
+ struct net_rate_estimator __rcu **rate_est,
+ spinlock_t *lock,
+- seqcount_t *running, struct nlattr *opt)
++ net_seqlock_t *running, struct nlattr *opt)
+ {
+ return gen_new_estimator(bstats, cpu_bstats, rate_est,
+ lock, running, opt);
+diff --git a/net/core/gen_stats.c b/net/core/gen_stats.c
+index e491b083b348..ef432cea2e10 100644
+--- a/net/core/gen_stats.c
++++ b/net/core/gen_stats.c
+@@ -137,7 +137,7 @@ __gnet_stats_copy_basic_cpu(struct gnet_stats_basic_packed *bstats,
+ }
+
+ void
+-__gnet_stats_copy_basic(const seqcount_t *running,
++__gnet_stats_copy_basic(net_seqlock_t *running,
+ struct gnet_stats_basic_packed *bstats,
+ struct gnet_stats_basic_cpu __percpu *cpu,
+ struct gnet_stats_basic_packed *b)
+@@ -150,15 +150,15 @@ __gnet_stats_copy_basic(const seqcount_t *running,
+ }
+ do {
+ if (running)
+- seq = read_seqcount_begin(running);
++ seq = net_seq_begin(running);
+ bstats->bytes = b->bytes;
+ bstats->packets = b->packets;
+- } while (running && read_seqcount_retry(running, seq));
++ } while (running && net_seq_retry(running, seq));
+ }
+ EXPORT_SYMBOL(__gnet_stats_copy_basic);
+
+ static int
+-___gnet_stats_copy_basic(const seqcount_t *running,
++___gnet_stats_copy_basic(net_seqlock_t *running,
+ struct gnet_dump *d,
+ struct gnet_stats_basic_cpu __percpu *cpu,
+ struct gnet_stats_basic_packed *b,
+@@ -204,7 +204,7 @@ ___gnet_stats_copy_basic(const seqcount_t *running,
+ * if the room in the socket buffer was not sufficient.
+ */
+ int
+-gnet_stats_copy_basic(const seqcount_t *running,
++gnet_stats_copy_basic(net_seqlock_t *running,
+ struct gnet_dump *d,
+ struct gnet_stats_basic_cpu __percpu *cpu,
+ struct gnet_stats_basic_packed *b)
+@@ -228,7 +228,7 @@ EXPORT_SYMBOL(gnet_stats_copy_basic);
+ * if the room in the socket buffer was not sufficient.
+ */
+ int
+-gnet_stats_copy_basic_hw(const seqcount_t *running,
++gnet_stats_copy_basic_hw(net_seqlock_t *running,
+ struct gnet_dump *d,
+ struct gnet_stats_basic_cpu __percpu *cpu,
+ struct gnet_stats_basic_packed *b)
+diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c
+index 5c2d230790db..a5430619ca5f 100644
+--- a/net/sched/sch_api.c
++++ b/net/sched/sch_api.c
+@@ -1275,7 +1275,7 @@ static struct Qdisc *qdisc_create(struct net_device *dev,
+ rcu_assign_pointer(sch->stab, stab);
+ }
+ if (tca[TCA_RATE]) {
+- seqcount_t *running;
++ net_seqlock_t *running;
+
+ err = -EOPNOTSUPP;
+ if (sch->flags & TCQ_F_MQROOT) {
+diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c
+index ecdd9e83f2f4..73b5aa797645 100644
+--- a/net/sched/sch_generic.c
++++ b/net/sched/sch_generic.c
+@@ -578,7 +578,11 @@ struct Qdisc noop_qdisc = {
+ .ops = &noop_qdisc_ops,
+ .q.lock = __SPIN_LOCK_UNLOCKED(noop_qdisc.q.lock),
+ .dev_queue = &noop_netdev_queue,
++#ifdef CONFIG_PREEMPT_RT
++ .running = __SEQLOCK_UNLOCKED(noop_qdisc.running),
++#else
+ .running = SEQCNT_ZERO(noop_qdisc.running),
++#endif
+ .busylock = __SPIN_LOCK_UNLOCKED(noop_qdisc.busylock),
+ .gso_skb = {
+ .next = (struct sk_buff *)&noop_qdisc.gso_skb,
+@@ -889,9 +893,15 @@ struct Qdisc *qdisc_alloc(struct netdev_queue *dev_queue,
+ lockdep_set_class(&sch->seqlock,
+ dev->qdisc_tx_busylock ?: &qdisc_tx_busylock);
+
++#ifdef CONFIG_PREEMPT_RT
++ seqlock_init(&sch->running);
++ lockdep_set_class(&sch->running.lock,
++ dev->qdisc_running_key ?: &qdisc_running_key);
++#else
+ seqcount_init(&sch->running);
+ lockdep_set_class(&sch->running,
+ dev->qdisc_running_key ?: &qdisc_running_key);
++#endif
+
+ sch->ops = ops;
+ sch->flags = ops->static_flags;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0187-net-Properly-annotate-the-try-lock-for-the-seqlock.patch b/debian/patches-rt/0187-net-Properly-annotate-the-try-lock-for-the-seqlock.patch
new file mode 100644
index 000000000..130a8cb78
--- /dev/null
+++ b/debian/patches-rt/0187-net-Properly-annotate-the-try-lock-for-the-seqlock.patch
@@ -0,0 +1,71 @@
+From 442e014107fc616d529c73b0f0436980b817d021 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 8 Sep 2020 16:57:11 +0200
+Subject: [PATCH 187/323] net: Properly annotate the try-lock for the seqlock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+In patch
+ ("net/Qdisc: use a seqlock instead seqcount")
+
+the seqcount has been replaced with a seqlock to allow to reader to
+boost the preempted writer.
+The try_write_seqlock() acquired the lock with a try-lock but the
+seqcount annotation was "lock".
+
+Opencode write_seqcount_t_begin() and use the try-lock annotation for
+lockdep.
+
+Reported-by: Mike Galbraith <efault@gmx.de>
+Cc: stable-rt@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ include/net/net_seq_lock.h | 9 ---------
+ include/net/sch_generic.h | 10 +++++++++-
+ 2 files changed, 9 insertions(+), 10 deletions(-)
+
+diff --git a/include/net/net_seq_lock.h b/include/net/net_seq_lock.h
+index 95a497a72e51..67710bace741 100644
+--- a/include/net/net_seq_lock.h
++++ b/include/net/net_seq_lock.h
+@@ -6,15 +6,6 @@
+ # define net_seq_begin(__r) read_seqbegin(__r)
+ # define net_seq_retry(__r, __s) read_seqretry(__r, __s)
+
+-static inline int try_write_seqlock(seqlock_t *sl)
+-{
+- if (spin_trylock(&sl->lock)) {
+- write_seqcount_begin(&sl->seqcount);
+- return 1;
+- }
+- return 0;
+-}
+-
+ #else
+ # define net_seqlock_t seqcount_t
+ # define net_seq_begin(__r) read_seqcount_begin(__r)
+diff --git a/include/net/sch_generic.h b/include/net/sch_generic.h
+index 8ce663a9b4f4..eee11a1c9321 100644
+--- a/include/net/sch_generic.h
++++ b/include/net/sch_generic.h
+@@ -189,8 +189,16 @@ static inline bool qdisc_run_begin(struct Qdisc *qdisc)
+ return false;
+ }
+ #ifdef CONFIG_PREEMPT_RT
+- if (try_write_seqlock(&qdisc->running))
++ if (spin_trylock(&qdisc->running.lock)) {
++ seqcount_t *s = &qdisc->running.seqcount.seqcount;
++ /*
++ * Variant of write_seqcount_t_begin() telling lockdep that a
++ * trylock was attempted.
++ */
++ do_raw_write_seqcount_begin(s);
++ seqcount_acquire(&s->dep_map, 0, 1, _RET_IP_);
+ return true;
++ }
+ return false;
+ #else
+ /* Variant of write_seqcount_begin() telling lockdep a trylock
+--
+2.43.0
+
diff --git a/debian/patches-rt/0188-kconfig-Disable-config-options-which-are-not-RT-comp.patch b/debian/patches-rt/0188-kconfig-Disable-config-options-which-are-not-RT-comp.patch
new file mode 100644
index 000000000..27d06fa44
--- /dev/null
+++ b/debian/patches-rt/0188-kconfig-Disable-config-options-which-are-not-RT-comp.patch
@@ -0,0 +1,43 @@
+From f4fb1a364b1dc97c110e6103ffe75b21e46a0e63 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Sun, 24 Jul 2011 12:11:43 +0200
+Subject: [PATCH 188/323] kconfig: Disable config options which are not RT
+ compatible
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Disable stuff which is known to have issues on RT
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ arch/Kconfig | 1 +
+ mm/Kconfig | 2 +-
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/arch/Kconfig b/arch/Kconfig
+index 628e1e7fe302..8bbbca8839e1 100644
+--- a/arch/Kconfig
++++ b/arch/Kconfig
+@@ -37,6 +37,7 @@ config OPROFILE
+ tristate "OProfile system profiling"
+ depends on PROFILING
+ depends on HAVE_OPROFILE
++ depends on !PREEMPT_RT
+ select RING_BUFFER
+ select RING_BUFFER_ALLOW_SWAP
+ help
+diff --git a/mm/Kconfig b/mm/Kconfig
+index 8c49d09da214..c8cbcb5118b0 100644
+--- a/mm/Kconfig
++++ b/mm/Kconfig
+@@ -387,7 +387,7 @@ config NOMMU_INITIAL_TRIM_EXCESS
+
+ config TRANSPARENT_HUGEPAGE
+ bool "Transparent Hugepage Support"
+- depends on HAVE_ARCH_TRANSPARENT_HUGEPAGE
++ depends on HAVE_ARCH_TRANSPARENT_HUGEPAGE && !PREEMPT_RT
+ select COMPACTION
+ select XARRAY_MULTI
+ help
+--
+2.43.0
+
diff --git a/debian/patches-rt/0189-mm-Allow-only-SLUB-on-RT.patch b/debian/patches-rt/0189-mm-Allow-only-SLUB-on-RT.patch
new file mode 100644
index 000000000..9fc3d7351
--- /dev/null
+++ b/debian/patches-rt/0189-mm-Allow-only-SLUB-on-RT.patch
@@ -0,0 +1,47 @@
+From 1da220d86ade67051c7c89743d6d037902c3839d Mon Sep 17 00:00:00 2001
+From: Ingo Molnar <mingo@elte.hu>
+Date: Fri, 3 Jul 2009 08:44:03 -0500
+Subject: [PATCH 189/323] mm: Allow only SLUB on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Memory allocation disables interrupts as part of the allocation and freeing
+process. For -RT it is important that this section remain short and don't
+depend on the size of the request or an internal state of the memory allocator.
+At the beginning the SLAB memory allocator was adopted for RT's needs and it
+required substantial changes. Later, with the addition of the SLUB memory
+allocator we adopted this one as well and the changes were smaller. More
+important, due to the design of the SLUB allocator it performs better and its
+worst case latency was smaller. In the end only SLUB remained supported.
+
+Disable SLAB and SLOB on -RT. Only SLUB is adopted to -RT needs.
+
+Signed-off-by: Ingo Molnar <mingo@elte.hu>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ init/Kconfig | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/init/Kconfig b/init/Kconfig
+index 9807c66b24bb..df8d0d0f800f 100644
+--- a/init/Kconfig
++++ b/init/Kconfig
+@@ -1922,6 +1922,7 @@ choice
+
+ config SLAB
+ bool "SLAB"
++ depends on !PREEMPT_RT
+ select HAVE_HARDENED_USERCOPY_ALLOCATOR
+ help
+ The regular slab allocator that is established and known to work
+@@ -1942,6 +1943,7 @@ config SLUB
+ config SLOB
+ depends on EXPERT
+ bool "SLOB (Simple Allocator)"
++ depends on !PREEMPT_RT
+ help
+ SLOB replaces the stock allocator with a drastically simpler
+ allocator. SLOB is generally more space efficient but
+--
+2.43.0
+
diff --git a/debian/patches-rt/0190-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch b/debian/patches-rt/0190-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch
new file mode 100644
index 000000000..eb62300e8
--- /dev/null
+++ b/debian/patches-rt/0190-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch
@@ -0,0 +1,35 @@
+From 4e23e134063807a9288e9b547e1955a9124ac5b7 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Mon, 18 Jul 2011 17:03:52 +0200
+Subject: [PATCH 190/323] sched: Disable CONFIG_RT_GROUP_SCHED on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Carsten reported problems when running:
+
+ taskset 01 chrt -f 1 sleep 1
+
+from within rc.local on a F15 machine. The task stays running and
+never gets on the run queue because some of the run queues have
+rt_throttled=1 which does not go away. Works nice from a ssh login
+shell. Disabling CONFIG_RT_GROUP_SCHED solves that as well.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ init/Kconfig | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/init/Kconfig b/init/Kconfig
+index df8d0d0f800f..7e9578a0176f 100644
+--- a/init/Kconfig
++++ b/init/Kconfig
+@@ -985,6 +985,7 @@ config CFS_BANDWIDTH
+ config RT_GROUP_SCHED
+ bool "Group scheduling for SCHED_RR/FIFO"
+ depends on CGROUP_SCHED
++ depends on !PREEMPT_RT
+ default n
+ help
+ This feature lets you explicitly allocate real CPU bandwidth
+--
+2.43.0
+
diff --git a/debian/patches-rt/0191-net-core-disable-NET_RX_BUSY_POLL-on-RT.patch b/debian/patches-rt/0191-net-core-disable-NET_RX_BUSY_POLL-on-RT.patch
new file mode 100644
index 000000000..aef82ca64
--- /dev/null
+++ b/debian/patches-rt/0191-net-core-disable-NET_RX_BUSY_POLL-on-RT.patch
@@ -0,0 +1,44 @@
+From 311a1cf04650b065502758f992df44702d23f6cd Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Sat, 27 May 2017 19:02:06 +0200
+Subject: [PATCH 191/323] net/core: disable NET_RX_BUSY_POLL on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+napi_busy_loop() disables preemption and performs a NAPI poll. We can't acquire
+sleeping locks with disabled preemption so we would have to work around this
+and add explicit locking for synchronisation against ksoftirqd.
+Without explicit synchronisation a low priority process would "own" the NAPI
+state (by setting NAPIF_STATE_SCHED) and could be scheduled out (no
+preempt_disable() and BH is preemptible on RT).
+In case a network packages arrives then the interrupt handler would set
+NAPIF_STATE_MISSED and the system would wait until the task owning the NAPI
+would be scheduled in again.
+Should a task with RT priority busy poll then it would consume the CPU instead
+allowing tasks with lower priority to run.
+
+The NET_RX_BUSY_POLL is disabled by default (the system wide sysctls for
+poll/read are set to zero) so disable NET_RX_BUSY_POLL on RT to avoid wrong
+locking context on RT. Should this feature be considered useful on RT systems
+then it could be enabled again with proper locking and synchronisation.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ net/Kconfig | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/net/Kconfig b/net/Kconfig
+index a22c3fb88564..5a17bded7136 100644
+--- a/net/Kconfig
++++ b/net/Kconfig
+@@ -280,7 +280,7 @@ config CGROUP_NET_CLASSID
+
+ config NET_RX_BUSY_POLL
+ bool
+- default y
++ default y if !PREEMPT_RT
+
+ config BQL
+ bool
+--
+2.43.0
+
diff --git a/debian/patches-rt/0192-efi-Disable-runtime-services-on-RT.patch b/debian/patches-rt/0192-efi-Disable-runtime-services-on-RT.patch
new file mode 100644
index 000000000..ed06b5934
--- /dev/null
+++ b/debian/patches-rt/0192-efi-Disable-runtime-services-on-RT.patch
@@ -0,0 +1,46 @@
+From 6c6afc933fea370e5c90a34ed6b622bcc274af5a Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 26 Jul 2018 15:03:16 +0200
+Subject: [PATCH 192/323] efi: Disable runtime services on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Based on meassurements the EFI functions get_variable /
+get_next_variable take up to 2us which looks okay.
+The functions get_time, set_time take around 10ms. Those 10ms are too
+much. Even one ms would be too much.
+Ard mentioned that SetVariable might even trigger larger latencies if
+the firware will erase flash blocks on NOR.
+
+The time-functions are used by efi-rtc and can be triggered during
+runtimed (either via explicit read/write or ntp sync).
+
+The variable write could be used by pstore.
+These functions can be disabled without much of a loss. The poweroff /
+reboot hooks may be provided by PSCI.
+
+Disable EFI's runtime wrappers.
+
+This was observed on "EFI v2.60 by SoftIron Overdrive 1000".
+
+Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/firmware/efi/efi.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
+index 332739f3eded..8d390091203f 100644
+--- a/drivers/firmware/efi/efi.c
++++ b/drivers/firmware/efi/efi.c
+@@ -66,7 +66,7 @@ struct mm_struct efi_mm = {
+
+ struct workqueue_struct *efi_rts_wq;
+
+-static bool disable_runtime;
++static bool disable_runtime = IS_ENABLED(CONFIG_PREEMPT_RT);
+ static int __init setup_noefi(char *arg)
+ {
+ disable_runtime = true;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0193-efi-Allow-efi-runtime.patch b/debian/patches-rt/0193-efi-Allow-efi-runtime.patch
new file mode 100644
index 000000000..f52a8c240
--- /dev/null
+++ b/debian/patches-rt/0193-efi-Allow-efi-runtime.patch
@@ -0,0 +1,32 @@
+From 712d19894b0524bdc524334f6d76babef13db194 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 26 Jul 2018 15:06:10 +0200
+Subject: [PATCH 193/323] efi: Allow efi=runtime
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+In case the command line option "efi=noruntime" is default at built-time, the user
+could overwrite its state by `efi=runtime' and allow it again.
+
+Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/firmware/efi/efi.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
+index 8d390091203f..8589df0e8c1f 100644
+--- a/drivers/firmware/efi/efi.c
++++ b/drivers/firmware/efi/efi.c
+@@ -97,6 +97,9 @@ static int __init parse_efi_cmdline(char *str)
+ if (parse_option_str(str, "noruntime"))
+ disable_runtime = true;
+
++ if (parse_option_str(str, "runtime"))
++ disable_runtime = false;
++
+ if (parse_option_str(str, "nosoftreserve"))
+ set_bit(EFI_MEM_NO_SOFT_RESERVE, &efi.flags);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0194-rt-Add-local-irq-locks.patch b/debian/patches-rt/0194-rt-Add-local-irq-locks.patch
new file mode 100644
index 000000000..53b3fd552
--- /dev/null
+++ b/debian/patches-rt/0194-rt-Add-local-irq-locks.patch
@@ -0,0 +1,182 @@
+From 0d3e0b0db513aac6e4cd2e2d084b7a76f4d28c44 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Mon, 20 Jun 2011 09:03:47 +0200
+Subject: [PATCH 194/323] rt: Add local irq locks
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Introduce locallock. For !RT this maps to preempt_disable()/
+local_irq_disable() so there is not much that changes. For RT this will
+map to a spinlock. This makes preemption possible and locked "ressource"
+gets the lockdep anotation it wouldn't have otherwise. The locks are
+recursive for owner == current. Also, all locks user migrate_disable()
+which ensures that the task is not migrated to another CPU while the lock
+is held and the owner is preempted.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/local_lock_internal.h | 111 ++++++++++++++++++++++++++--
+ 1 file changed, 103 insertions(+), 8 deletions(-)
+
+diff --git a/include/linux/local_lock_internal.h b/include/linux/local_lock_internal.h
+index 3f02b818625e..1b8ae034946f 100644
+--- a/include/linux/local_lock_internal.h
++++ b/include/linux/local_lock_internal.h
+@@ -7,13 +7,39 @@
+ #include <linux/lockdep.h>
+
+ typedef struct {
+-#ifdef CONFIG_DEBUG_LOCK_ALLOC
++#ifdef CONFIG_PREEMPT_RT
++ spinlock_t lock;
++ struct task_struct *owner;
++ int nestcnt;
++
++#elif defined(CONFIG_DEBUG_LOCK_ALLOC)
+ struct lockdep_map dep_map;
+ struct task_struct *owner;
+ #endif
+ } local_lock_t;
+
+-#ifdef CONFIG_DEBUG_LOCK_ALLOC
++#ifdef CONFIG_PREEMPT_RT
++
++#define INIT_LOCAL_LOCK(lockname) { \
++ __SPIN_LOCK_UNLOCKED((lockname).lock), \
++ .owner = NULL, \
++ .nestcnt = 0, \
++ }
++
++static inline void ___local_lock_init(local_lock_t *l)
++{
++ l->owner = NULL;
++ l->nestcnt = 0;
++}
++
++#define __local_lock_init(l) \
++do { \
++ spin_lock_init(&(l)->lock); \
++ ___local_lock_init(l); \
++} while (0)
++
++#elif defined(CONFIG_DEBUG_LOCK_ALLOC)
++
+ # define LOCAL_LOCK_DEBUG_INIT(lockname) \
+ .dep_map = { \
+ .name = #lockname, \
+@@ -21,7 +47,33 @@ typedef struct {
+ .lock_type = LD_LOCK_PERCPU, \
+ }, \
+ .owner = NULL,
++#endif
++
++#ifdef CONFIG_PREEMPT_RT
+
++static inline void local_lock_acquire(local_lock_t *l)
++{
++ if (l->owner != current) {
++ spin_lock(&l->lock);
++ DEBUG_LOCKS_WARN_ON(l->owner);
++ DEBUG_LOCKS_WARN_ON(l->nestcnt);
++ l->owner = current;
++ }
++ l->nestcnt++;
++}
++
++static inline void local_lock_release(local_lock_t *l)
++{
++ DEBUG_LOCKS_WARN_ON(l->nestcnt == 0);
++ DEBUG_LOCKS_WARN_ON(l->owner != current);
++ if (--l->nestcnt)
++ return;
++
++ l->owner = NULL;
++ spin_unlock(&l->lock);
++}
++
++#elif defined(CONFIG_DEBUG_LOCK_ALLOC)
+ static inline void local_lock_acquire(local_lock_t *l)
+ {
+ lock_map_acquire(&l->dep_map);
+@@ -47,6 +99,47 @@ static inline void local_lock_release(local_lock_t *l) { }
+ static inline void local_lock_debug_init(local_lock_t *l) { }
+ #endif /* !CONFIG_DEBUG_LOCK_ALLOC */
+
++#ifdef CONFIG_PREEMPT_RT
++
++#define __local_lock(lock) \
++ do { \
++ migrate_disable(); \
++ local_lock_acquire(this_cpu_ptr(lock)); \
++ } while (0)
++
++#define __local_unlock(lock) \
++ do { \
++ local_lock_release(this_cpu_ptr(lock)); \
++ migrate_enable(); \
++ } while (0)
++
++#define __local_lock_irq(lock) \
++ do { \
++ migrate_disable(); \
++ local_lock_acquire(this_cpu_ptr(lock)); \
++ } while (0)
++
++#define __local_lock_irqsave(lock, flags) \
++ do { \
++ migrate_disable(); \
++ flags = 0; \
++ local_lock_acquire(this_cpu_ptr(lock)); \
++ } while (0)
++
++#define __local_unlock_irq(lock) \
++ do { \
++ local_lock_release(this_cpu_ptr(lock)); \
++ migrate_enable(); \
++ } while (0)
++
++#define __local_unlock_irqrestore(lock, flags) \
++ do { \
++ local_lock_release(this_cpu_ptr(lock)); \
++ migrate_enable(); \
++ } while (0)
++
++#else
++
+ #define INIT_LOCAL_LOCK(lockname) { LOCAL_LOCK_DEBUG_INIT(lockname) }
+
+ #define __local_lock_init(lock) \
+@@ -66,6 +159,12 @@ do { \
+ local_lock_acquire(this_cpu_ptr(lock)); \
+ } while (0)
+
++#define __local_unlock(lock) \
++ do { \
++ local_lock_release(this_cpu_ptr(lock)); \
++ preempt_enable(); \
++ } while (0)
++
+ #define __local_lock_irq(lock) \
+ do { \
+ local_irq_disable(); \
+@@ -78,12 +177,6 @@ do { \
+ local_lock_acquire(this_cpu_ptr(lock)); \
+ } while (0)
+
+-#define __local_unlock(lock) \
+- do { \
+- local_lock_release(this_cpu_ptr(lock)); \
+- preempt_enable(); \
+- } while (0)
+-
+ #define __local_unlock_irq(lock) \
+ do { \
+ local_lock_release(this_cpu_ptr(lock)); \
+@@ -95,3 +188,5 @@ do { \
+ local_lock_release(this_cpu_ptr(lock)); \
+ local_irq_restore(flags); \
+ } while (0)
++
++#endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0195-signal-x86-Delay-calling-signals-in-atomic.patch b/debian/patches-rt/0195-signal-x86-Delay-calling-signals-in-atomic.patch
new file mode 100644
index 000000000..af5ab46e8
--- /dev/null
+++ b/debian/patches-rt/0195-signal-x86-Delay-calling-signals-in-atomic.patch
@@ -0,0 +1,140 @@
+From f4ff44284474fd78b52414326c579dcd8196fc47 Mon Sep 17 00:00:00 2001
+From: Oleg Nesterov <oleg@redhat.com>
+Date: Tue, 14 Jul 2015 14:26:34 +0200
+Subject: [PATCH 195/323] signal/x86: Delay calling signals in atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+On x86_64 we must disable preemption before we enable interrupts
+for stack faults, int3 and debugging, because the current task is using
+a per CPU debug stack defined by the IST. If we schedule out, another task
+can come in and use the same stack and cause the stack to be corrupted
+and crash the kernel on return.
+
+When CONFIG_PREEMPT_RT is enabled, spin_locks become mutexes, and
+one of these is the spin lock used in signal handling.
+
+Some of the debug code (int3) causes do_trap() to send a signal.
+This function calls a spin lock that has been converted to a mutex
+and has the possibility to sleep. If this happens, the above issues with
+the corrupted stack is possible.
+
+Instead of calling the signal right away, for PREEMPT_RT and x86_64,
+the signal information is stored on the stacks task_struct and
+TIF_NOTIFY_RESUME is set. Then on exit of the trap, the signal resume
+code will send the signal when preemption is enabled.
+
+[ rostedt: Switched from #ifdef CONFIG_PREEMPT_RT to
+ ARCH_RT_DELAYS_SIGNAL_SEND and added comments to the code. ]
+
+Signed-off-by: Oleg Nesterov <oleg@redhat.com>
+Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+[bigeasy: also needed on 32bit as per Yang Shi <yang.shi@linaro.org>]
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/x86/include/asm/signal.h | 13 +++++++++++++
+ include/linux/sched.h | 4 ++++
+ kernel/entry/common.c | 8 ++++++++
+ kernel/signal.c | 28 ++++++++++++++++++++++++++++
+ 4 files changed, 53 insertions(+)
+
+diff --git a/arch/x86/include/asm/signal.h b/arch/x86/include/asm/signal.h
+index 6fd8410a3910..f3bf2f515edb 100644
+--- a/arch/x86/include/asm/signal.h
++++ b/arch/x86/include/asm/signal.h
+@@ -28,6 +28,19 @@ typedef struct {
+ #define SA_IA32_ABI 0x02000000u
+ #define SA_X32_ABI 0x01000000u
+
++/*
++ * Because some traps use the IST stack, we must keep preemption
++ * disabled while calling do_trap(), but do_trap() may call
++ * force_sig_info() which will grab the signal spin_locks for the
++ * task, which in PREEMPT_RT are mutexes. By defining
++ * ARCH_RT_DELAYS_SIGNAL_SEND the force_sig_info() will set
++ * TIF_NOTIFY_RESUME and set up the signal to be sent on exit of the
++ * trap.
++ */
++#if defined(CONFIG_PREEMPT_RT)
++#define ARCH_RT_DELAYS_SIGNAL_SEND
++#endif
++
+ #ifndef CONFIG_COMPAT
+ typedef sigset_t compat_sigset_t;
+ #endif
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index 3650fdaac4ca..d259126f46cf 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -1001,6 +1001,10 @@ struct task_struct {
+ /* Restored if set_restore_sigmask() was used: */
+ sigset_t saved_sigmask;
+ struct sigpending pending;
++#ifdef CONFIG_PREEMPT_RT
++ /* TODO: move me into ->restart_block ? */
++ struct kernel_siginfo forced_info;
++#endif
+ unsigned long sas_ss_sp;
+ size_t sas_ss_size;
+ unsigned int sas_ss_flags;
+diff --git a/kernel/entry/common.c b/kernel/entry/common.c
+index e6a66de1202a..e6da86039ccf 100644
+--- a/kernel/entry/common.c
++++ b/kernel/entry/common.c
+@@ -160,6 +160,14 @@ static unsigned long exit_to_user_mode_loop(struct pt_regs *regs,
+ if (ti_work & _TIF_NEED_RESCHED)
+ schedule();
+
++#ifdef ARCH_RT_DELAYS_SIGNAL_SEND
++ if (unlikely(current->forced_info.si_signo)) {
++ struct task_struct *t = current;
++ force_sig_info(&t->forced_info);
++ t->forced_info.si_signo = 0;
++ }
++#endif
++
+ if (ti_work & _TIF_UPROBE)
+ uprobe_notify_resume(regs);
+
+diff --git a/kernel/signal.c b/kernel/signal.c
+index 5ab628e2afc5..e8819aabe3cd 100644
+--- a/kernel/signal.c
++++ b/kernel/signal.c
+@@ -1314,6 +1314,34 @@ force_sig_info_to_task(struct kernel_siginfo *info, struct task_struct *t)
+ struct k_sigaction *action;
+ int sig = info->si_signo;
+
++ /*
++ * On some archs, PREEMPT_RT has to delay sending a signal from a trap
++ * since it can not enable preemption, and the signal code's spin_locks
++ * turn into mutexes. Instead, it must set TIF_NOTIFY_RESUME which will
++ * send the signal on exit of the trap.
++ */
++#ifdef ARCH_RT_DELAYS_SIGNAL_SEND
++ if (in_atomic()) {
++ struct task_struct *t = current;
++
++ if (WARN_ON_ONCE(t->forced_info.si_signo))
++ return 0;
++
++ if (is_si_special(info)) {
++ WARN_ON_ONCE(info != SEND_SIG_PRIV);
++ t->forced_info.si_signo = info->si_signo;
++ t->forced_info.si_errno = 0;
++ t->forced_info.si_code = SI_KERNEL;
++ t->forced_info.si_pid = 0;
++ t->forced_info.si_uid = 0;
++ } else {
++ t->forced_info = *info;
++ }
++
++ set_tsk_thread_flag(t, TIF_NOTIFY_RESUME);
++ return 0;
++ }
++#endif
+ spin_lock_irqsave(&t->sighand->siglock, flags);
+ action = &t->sighand->action[sig-1];
+ ignored = action->sa.sa_handler == SIG_IGN;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0196-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch b/debian/patches-rt/0196-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch
new file mode 100644
index 000000000..999298a0e
--- /dev/null
+++ b/debian/patches-rt/0196-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch
@@ -0,0 +1,172 @@
+From 1e362e9e053f608c55deb05577371d61d5db1a92 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Mon, 28 May 2018 15:24:20 +0200
+Subject: [PATCH 196/323] Split IRQ-off and zone->lock while freeing pages from
+ PCP list #1
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Split the IRQ-off section while accessing the PCP list from zone->lock
+while freeing pages.
+Introcude isolate_pcp_pages() which separates the pages from the PCP
+list onto a temporary list and then free the temporary list via
+free_pcppages_bulk().
+
+Signed-off-by: Peter Zijlstra <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/page_alloc.c | 81 +++++++++++++++++++++++++++++++------------------
+ 1 file changed, 51 insertions(+), 30 deletions(-)
+
+diff --git a/mm/page_alloc.c b/mm/page_alloc.c
+index 124ab9324610..0dc0eb767fb6 100644
+--- a/mm/page_alloc.c
++++ b/mm/page_alloc.c
+@@ -1331,7 +1331,7 @@ static inline void prefetch_buddy(struct page *page)
+ }
+
+ /*
+- * Frees a number of pages from the PCP lists
++ * Frees a number of pages which have been collected from the pcp lists.
+ * Assumes all pages on list are in same zone, and of same order.
+ * count is the number of pages to free.
+ *
+@@ -1342,14 +1342,40 @@ static inline void prefetch_buddy(struct page *page)
+ * pinned" detection logic.
+ */
+ static void free_pcppages_bulk(struct zone *zone, int count,
+- struct per_cpu_pages *pcp)
++ struct list_head *head)
++{
++ bool isolated_pageblocks;
++ struct page *page, *tmp;
++ unsigned long flags;
++
++ spin_lock_irqsave(&zone->lock, flags);
++ isolated_pageblocks = has_isolate_pageblock(zone);
++
++ /*
++ * Use safe version since after __free_one_page(),
++ * page->lru.next will not point to original list.
++ */
++ list_for_each_entry_safe(page, tmp, head, lru) {
++ int mt = get_pcppage_migratetype(page);
++ /* MIGRATE_ISOLATE page should not go to pcplists */
++ VM_BUG_ON_PAGE(is_migrate_isolate(mt), page);
++ /* Pageblock could have been isolated meanwhile */
++ if (unlikely(isolated_pageblocks))
++ mt = get_pageblock_migratetype(page);
++
++ __free_one_page(page, page_to_pfn(page), zone, 0, mt, FPI_NONE);
++ trace_mm_page_pcpu_drain(page, 0, mt);
++ }
++ spin_unlock_irqrestore(&zone->lock, flags);
++}
++
++static void isolate_pcp_pages(int count, struct per_cpu_pages *pcp,
++ struct list_head *dst)
+ {
+ int migratetype = 0;
+ int batch_free = 0;
+ int prefetch_nr = 0;
+- bool isolated_pageblocks;
+- struct page *page, *tmp;
+- LIST_HEAD(head);
++ struct page *page;
+
+ /*
+ * Ensure proper count is passed which otherwise would stuck in the
+@@ -1386,7 +1412,7 @@ static void free_pcppages_bulk(struct zone *zone, int count,
+ if (bulkfree_pcp_prepare(page))
+ continue;
+
+- list_add_tail(&page->lru, &head);
++ list_add_tail(&page->lru, dst);
+
+ /*
+ * We are going to put the page back to the global
+@@ -1401,26 +1427,6 @@ static void free_pcppages_bulk(struct zone *zone, int count,
+ prefetch_buddy(page);
+ } while (--count && --batch_free && !list_empty(list));
+ }
+-
+- spin_lock(&zone->lock);
+- isolated_pageblocks = has_isolate_pageblock(zone);
+-
+- /*
+- * Use safe version since after __free_one_page(),
+- * page->lru.next will not point to original list.
+- */
+- list_for_each_entry_safe(page, tmp, &head, lru) {
+- int mt = get_pcppage_migratetype(page);
+- /* MIGRATE_ISOLATE page should not go to pcplists */
+- VM_BUG_ON_PAGE(is_migrate_isolate(mt), page);
+- /* Pageblock could have been isolated meanwhile */
+- if (unlikely(isolated_pageblocks))
+- mt = get_pageblock_migratetype(page);
+-
+- __free_one_page(page, page_to_pfn(page), zone, 0, mt, FPI_NONE);
+- trace_mm_page_pcpu_drain(page, 0, mt);
+- }
+- spin_unlock(&zone->lock);
+ }
+
+ static void free_one_page(struct zone *zone,
+@@ -2938,13 +2944,18 @@ void drain_zone_pages(struct zone *zone, struct per_cpu_pages *pcp)
+ {
+ unsigned long flags;
+ int to_drain, batch;
++ LIST_HEAD(dst);
+
+ local_irq_save(flags);
+ batch = READ_ONCE(pcp->batch);
+ to_drain = min(pcp->count, batch);
+ if (to_drain > 0)
+- free_pcppages_bulk(zone, to_drain, pcp);
++ isolate_pcp_pages(to_drain, pcp, &dst);
++
+ local_irq_restore(flags);
++
++ if (to_drain > 0)
++ free_pcppages_bulk(zone, to_drain, &dst);
+ }
+ #endif
+
+@@ -2960,14 +2971,21 @@ static void drain_pages_zone(unsigned int cpu, struct zone *zone)
+ unsigned long flags;
+ struct per_cpu_pageset *pset;
+ struct per_cpu_pages *pcp;
++ LIST_HEAD(dst);
++ int count;
+
+ local_irq_save(flags);
+ pset = per_cpu_ptr(zone->pageset, cpu);
+
+ pcp = &pset->pcp;
+- if (pcp->count)
+- free_pcppages_bulk(zone, pcp->count, pcp);
++ count = pcp->count;
++ if (count)
++ isolate_pcp_pages(count, pcp, &dst);
++
+ local_irq_restore(flags);
++
++ if (count)
++ free_pcppages_bulk(zone, count, &dst);
+ }
+
+ /*
+@@ -3196,7 +3214,10 @@ static void free_unref_page_commit(struct page *page, unsigned long pfn)
+ pcp->count++;
+ if (pcp->count >= pcp->high) {
+ unsigned long batch = READ_ONCE(pcp->batch);
+- free_pcppages_bulk(zone, batch, pcp);
++ LIST_HEAD(dst);
++
++ isolate_pcp_pages(batch, pcp, &dst);
++ free_pcppages_bulk(zone, batch, &dst);
+ }
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0197-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch b/debian/patches-rt/0197-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch
new file mode 100644
index 000000000..60c805684
--- /dev/null
+++ b/debian/patches-rt/0197-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch
@@ -0,0 +1,172 @@
+From 3bb0aee1e418d977b819e6d0632d71cbb7cd1138 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Mon, 28 May 2018 15:24:21 +0200
+Subject: [PATCH 197/323] Split IRQ-off and zone->lock while freeing pages from
+ PCP list #2
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Split the IRQ-off section while accessing the PCP list from zone->lock
+while freeing pages.
+Introcude isolate_pcp_pages() which separates the pages from the PCP
+list onto a temporary list and then free the temporary list via
+free_pcppages_bulk().
+
+Signed-off-by: Peter Zijlstra <peterz@infradead.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/page_alloc.c | 60 ++++++++++++++++++++++++++++++++++++++++---------
+ 1 file changed, 50 insertions(+), 10 deletions(-)
+
+diff --git a/mm/page_alloc.c b/mm/page_alloc.c
+index 0dc0eb767fb6..a3f1e4c6bdc8 100644
+--- a/mm/page_alloc.c
++++ b/mm/page_alloc.c
+@@ -1341,8 +1341,8 @@ static inline void prefetch_buddy(struct page *page)
+ * And clear the zone's pages_scanned counter, to hold off the "all pages are
+ * pinned" detection logic.
+ */
+-static void free_pcppages_bulk(struct zone *zone, int count,
+- struct list_head *head)
++static void free_pcppages_bulk(struct zone *zone, struct list_head *head,
++ bool zone_retry)
+ {
+ bool isolated_pageblocks;
+ struct page *page, *tmp;
+@@ -1357,12 +1357,27 @@ static void free_pcppages_bulk(struct zone *zone, int count,
+ */
+ list_for_each_entry_safe(page, tmp, head, lru) {
+ int mt = get_pcppage_migratetype(page);
++
++ if (page_zone(page) != zone) {
++ /*
++ * free_unref_page_list() sorts pages by zone. If we end
++ * up with pages from a different NUMA nodes belonging
++ * to the same ZONE index then we need to redo with the
++ * correct ZONE pointer. Skip the page for now, redo it
++ * on the next iteration.
++ */
++ WARN_ON_ONCE(zone_retry == false);
++ if (zone_retry)
++ continue;
++ }
++
+ /* MIGRATE_ISOLATE page should not go to pcplists */
+ VM_BUG_ON_PAGE(is_migrate_isolate(mt), page);
+ /* Pageblock could have been isolated meanwhile */
+ if (unlikely(isolated_pageblocks))
+ mt = get_pageblock_migratetype(page);
+
++ list_del(&page->lru);
+ __free_one_page(page, page_to_pfn(page), zone, 0, mt, FPI_NONE);
+ trace_mm_page_pcpu_drain(page, 0, mt);
+ }
+@@ -2955,7 +2970,7 @@ void drain_zone_pages(struct zone *zone, struct per_cpu_pages *pcp)
+ local_irq_restore(flags);
+
+ if (to_drain > 0)
+- free_pcppages_bulk(zone, to_drain, &dst);
++ free_pcppages_bulk(zone, &dst, false);
+ }
+ #endif
+
+@@ -2985,7 +3000,7 @@ static void drain_pages_zone(unsigned int cpu, struct zone *zone)
+ local_irq_restore(flags);
+
+ if (count)
+- free_pcppages_bulk(zone, count, &dst);
++ free_pcppages_bulk(zone, &dst, false);
+ }
+
+ /*
+@@ -3184,7 +3199,8 @@ static bool free_unref_page_prepare(struct page *page, unsigned long pfn)
+ return true;
+ }
+
+-static void free_unref_page_commit(struct page *page, unsigned long pfn)
++static void free_unref_page_commit(struct page *page, unsigned long pfn,
++ struct list_head *dst)
+ {
+ struct zone *zone = page_zone(page);
+ struct per_cpu_pages *pcp;
+@@ -3214,10 +3230,8 @@ static void free_unref_page_commit(struct page *page, unsigned long pfn)
+ pcp->count++;
+ if (pcp->count >= pcp->high) {
+ unsigned long batch = READ_ONCE(pcp->batch);
+- LIST_HEAD(dst);
+
+- isolate_pcp_pages(batch, pcp, &dst);
+- free_pcppages_bulk(zone, batch, &dst);
++ isolate_pcp_pages(batch, pcp, dst);
+ }
+ }
+
+@@ -3228,13 +3242,17 @@ void free_unref_page(struct page *page)
+ {
+ unsigned long flags;
+ unsigned long pfn = page_to_pfn(page);
++ struct zone *zone = page_zone(page);
++ LIST_HEAD(dst);
+
+ if (!free_unref_page_prepare(page, pfn))
+ return;
+
+ local_irq_save(flags);
+- free_unref_page_commit(page, pfn);
++ free_unref_page_commit(page, pfn, &dst);
+ local_irq_restore(flags);
++ if (!list_empty(&dst))
++ free_pcppages_bulk(zone, &dst, false);
+ }
+
+ /*
+@@ -3245,6 +3263,11 @@ void free_unref_page_list(struct list_head *list)
+ struct page *page, *next;
+ unsigned long flags, pfn;
+ int batch_count = 0;
++ struct list_head dsts[__MAX_NR_ZONES];
++ int i;
++
++ for (i = 0; i < __MAX_NR_ZONES; i++)
++ INIT_LIST_HEAD(&dsts[i]);
+
+ /* Prepare pages for freeing */
+ list_for_each_entry_safe(page, next, list, lru) {
+@@ -3257,10 +3280,12 @@ void free_unref_page_list(struct list_head *list)
+ local_irq_save(flags);
+ list_for_each_entry_safe(page, next, list, lru) {
+ unsigned long pfn = page_private(page);
++ enum zone_type type;
+
+ set_page_private(page, 0);
+ trace_mm_page_free_batched(page);
+- free_unref_page_commit(page, pfn);
++ type = page_zonenum(page);
++ free_unref_page_commit(page, pfn, &dsts[type]);
+
+ /*
+ * Guard against excessive IRQ disabled times when we get
+@@ -3273,6 +3298,21 @@ void free_unref_page_list(struct list_head *list)
+ }
+ }
+ local_irq_restore(flags);
++
++ for (i = 0; i < __MAX_NR_ZONES; ) {
++ struct page *page;
++ struct zone *zone;
++
++ if (list_empty(&dsts[i])) {
++ i++;
++ continue;
++ }
++
++ page = list_first_entry(&dsts[i], struct page, lru);
++ zone = page_zone(page);
++
++ free_pcppages_bulk(zone, &dsts[i], true);
++ }
+ }
+
+ /*
+--
+2.43.0
+
diff --git a/debian/patches-rt/0198-mm-SLxB-change-list_lock-to-raw_spinlock_t.patch b/debian/patches-rt/0198-mm-SLxB-change-list_lock-to-raw_spinlock_t.patch
new file mode 100644
index 000000000..903ce7fd5
--- /dev/null
+++ b/debian/patches-rt/0198-mm-SLxB-change-list_lock-to-raw_spinlock_t.patch
@@ -0,0 +1,603 @@
+From 24eecb5c4b97d1a359a8b16be1dae2a499720795 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Mon, 28 May 2018 15:24:22 +0200
+Subject: [PATCH 198/323] mm/SLxB: change list_lock to raw_spinlock_t
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The list_lock is used with used with IRQs off on RT. Make it a raw_spinlock_t
+otherwise the interrupts won't be disabled on -RT. The locking rules remain
+the same on !RT.
+This patch changes it for SLAB and SLUB since both share the same header
+file for struct kmem_cache_node defintion.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/slab.c | 90 +++++++++++++++++++++++++++----------------------------
+ mm/slab.h | 2 +-
+ mm/slub.c | 50 +++++++++++++++----------------
+ 3 files changed, 71 insertions(+), 71 deletions(-)
+
+diff --git a/mm/slab.c b/mm/slab.c
+index b2cc2cf7d8a3..677c0651ef66 100644
+--- a/mm/slab.c
++++ b/mm/slab.c
+@@ -233,7 +233,7 @@ static void kmem_cache_node_init(struct kmem_cache_node *parent)
+ parent->shared = NULL;
+ parent->alien = NULL;
+ parent->colour_next = 0;
+- spin_lock_init(&parent->list_lock);
++ raw_spin_lock_init(&parent->list_lock);
+ parent->free_objects = 0;
+ parent->free_touched = 0;
+ }
+@@ -558,9 +558,9 @@ static noinline void cache_free_pfmemalloc(struct kmem_cache *cachep,
+ page_node = page_to_nid(page);
+ n = get_node(cachep, page_node);
+
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ free_block(cachep, &objp, 1, page_node, &list);
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+
+ slabs_destroy(cachep, &list);
+ }
+@@ -698,7 +698,7 @@ static void __drain_alien_cache(struct kmem_cache *cachep,
+ struct kmem_cache_node *n = get_node(cachep, node);
+
+ if (ac->avail) {
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ /*
+ * Stuff objects into the remote nodes shared array first.
+ * That way we could avoid the overhead of putting the objects
+@@ -709,7 +709,7 @@ static void __drain_alien_cache(struct kmem_cache *cachep,
+
+ free_block(cachep, ac->entry, ac->avail, node, list);
+ ac->avail = 0;
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+ }
+ }
+
+@@ -782,9 +782,9 @@ static int __cache_free_alien(struct kmem_cache *cachep, void *objp,
+ slabs_destroy(cachep, &list);
+ } else {
+ n = get_node(cachep, page_node);
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ free_block(cachep, &objp, 1, page_node, &list);
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+ slabs_destroy(cachep, &list);
+ }
+ return 1;
+@@ -825,10 +825,10 @@ static int init_cache_node(struct kmem_cache *cachep, int node, gfp_t gfp)
+ */
+ n = get_node(cachep, node);
+ if (n) {
+- spin_lock_irq(&n->list_lock);
++ raw_spin_lock_irq(&n->list_lock);
+ n->free_limit = (1 + nr_cpus_node(node)) * cachep->batchcount +
+ cachep->num;
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+
+ return 0;
+ }
+@@ -907,7 +907,7 @@ static int setup_kmem_cache_node(struct kmem_cache *cachep,
+ goto fail;
+
+ n = get_node(cachep, node);
+- spin_lock_irq(&n->list_lock);
++ raw_spin_lock_irq(&n->list_lock);
+ if (n->shared && force_change) {
+ free_block(cachep, n->shared->entry,
+ n->shared->avail, node, &list);
+@@ -925,7 +925,7 @@ static int setup_kmem_cache_node(struct kmem_cache *cachep,
+ new_alien = NULL;
+ }
+
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+ slabs_destroy(cachep, &list);
+
+ /*
+@@ -964,7 +964,7 @@ static void cpuup_canceled(long cpu)
+ if (!n)
+ continue;
+
+- spin_lock_irq(&n->list_lock);
++ raw_spin_lock_irq(&n->list_lock);
+
+ /* Free limit for this kmem_cache_node */
+ n->free_limit -= cachep->batchcount;
+@@ -975,7 +975,7 @@ static void cpuup_canceled(long cpu)
+ nc->avail = 0;
+
+ if (!cpumask_empty(mask)) {
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+ goto free_slab;
+ }
+
+@@ -989,7 +989,7 @@ static void cpuup_canceled(long cpu)
+ alien = n->alien;
+ n->alien = NULL;
+
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+
+ kfree(shared);
+ if (alien) {
+@@ -1173,7 +1173,7 @@ static void __init init_list(struct kmem_cache *cachep, struct kmem_cache_node *
+ /*
+ * Do not assume that spinlocks can be initialized via memcpy:
+ */
+- spin_lock_init(&ptr->list_lock);
++ raw_spin_lock_init(&ptr->list_lock);
+
+ MAKE_ALL_LISTS(cachep, ptr, nodeid);
+ cachep->node[nodeid] = ptr;
+@@ -1344,11 +1344,11 @@ slab_out_of_memory(struct kmem_cache *cachep, gfp_t gfpflags, int nodeid)
+ for_each_kmem_cache_node(cachep, node, n) {
+ unsigned long total_slabs, free_slabs, free_objs;
+
+- spin_lock_irqsave(&n->list_lock, flags);
++ raw_spin_lock_irqsave(&n->list_lock, flags);
+ total_slabs = n->total_slabs;
+ free_slabs = n->free_slabs;
+ free_objs = n->free_objects;
+- spin_unlock_irqrestore(&n->list_lock, flags);
++ raw_spin_unlock_irqrestore(&n->list_lock, flags);
+
+ pr_warn(" node %d: slabs: %ld/%ld, objs: %ld/%ld\n",
+ node, total_slabs - free_slabs, total_slabs,
+@@ -2105,7 +2105,7 @@ static void check_spinlock_acquired(struct kmem_cache *cachep)
+ {
+ #ifdef CONFIG_SMP
+ check_irq_off();
+- assert_spin_locked(&get_node(cachep, numa_mem_id())->list_lock);
++ assert_raw_spin_locked(&get_node(cachep, numa_mem_id())->list_lock);
+ #endif
+ }
+
+@@ -2113,7 +2113,7 @@ static void check_spinlock_acquired_node(struct kmem_cache *cachep, int node)
+ {
+ #ifdef CONFIG_SMP
+ check_irq_off();
+- assert_spin_locked(&get_node(cachep, node)->list_lock);
++ assert_raw_spin_locked(&get_node(cachep, node)->list_lock);
+ #endif
+ }
+
+@@ -2153,9 +2153,9 @@ static void do_drain(void *arg)
+ check_irq_off();
+ ac = cpu_cache_get(cachep);
+ n = get_node(cachep, node);
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ free_block(cachep, ac->entry, ac->avail, node, &list);
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+ ac->avail = 0;
+ slabs_destroy(cachep, &list);
+ }
+@@ -2173,9 +2173,9 @@ static void drain_cpu_caches(struct kmem_cache *cachep)
+ drain_alien_cache(cachep, n->alien);
+
+ for_each_kmem_cache_node(cachep, node, n) {
+- spin_lock_irq(&n->list_lock);
++ raw_spin_lock_irq(&n->list_lock);
+ drain_array_locked(cachep, n->shared, node, true, &list);
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+
+ slabs_destroy(cachep, &list);
+ }
+@@ -2197,10 +2197,10 @@ static int drain_freelist(struct kmem_cache *cache,
+ nr_freed = 0;
+ while (nr_freed < tofree && !list_empty(&n->slabs_free)) {
+
+- spin_lock_irq(&n->list_lock);
++ raw_spin_lock_irq(&n->list_lock);
+ p = n->slabs_free.prev;
+ if (p == &n->slabs_free) {
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+ goto out;
+ }
+
+@@ -2213,7 +2213,7 @@ static int drain_freelist(struct kmem_cache *cache,
+ * to the cache.
+ */
+ n->free_objects -= cache->num;
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+ slab_destroy(cache, page);
+ nr_freed++;
+ }
+@@ -2649,7 +2649,7 @@ static void cache_grow_end(struct kmem_cache *cachep, struct page *page)
+ INIT_LIST_HEAD(&page->slab_list);
+ n = get_node(cachep, page_to_nid(page));
+
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ n->total_slabs++;
+ if (!page->active) {
+ list_add_tail(&page->slab_list, &n->slabs_free);
+@@ -2659,7 +2659,7 @@ static void cache_grow_end(struct kmem_cache *cachep, struct page *page)
+
+ STATS_INC_GROWN(cachep);
+ n->free_objects += cachep->num - page->active;
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+
+ fixup_objfreelist_debug(cachep, &list);
+ }
+@@ -2825,7 +2825,7 @@ static struct page *get_first_slab(struct kmem_cache_node *n, bool pfmemalloc)
+ {
+ struct page *page;
+
+- assert_spin_locked(&n->list_lock);
++ assert_raw_spin_locked(&n->list_lock);
+ page = list_first_entry_or_null(&n->slabs_partial, struct page,
+ slab_list);
+ if (!page) {
+@@ -2852,10 +2852,10 @@ static noinline void *cache_alloc_pfmemalloc(struct kmem_cache *cachep,
+ if (!gfp_pfmemalloc_allowed(flags))
+ return NULL;
+
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ page = get_first_slab(n, true);
+ if (!page) {
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+ return NULL;
+ }
+
+@@ -2864,7 +2864,7 @@ static noinline void *cache_alloc_pfmemalloc(struct kmem_cache *cachep,
+
+ fixup_slab_list(cachep, n, page, &list);
+
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+ fixup_objfreelist_debug(cachep, &list);
+
+ return obj;
+@@ -2923,7 +2923,7 @@ static void *cache_alloc_refill(struct kmem_cache *cachep, gfp_t flags)
+ if (!n->free_objects && (!shared || !shared->avail))
+ goto direct_grow;
+
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ shared = READ_ONCE(n->shared);
+
+ /* See if we can refill from the shared array */
+@@ -2947,7 +2947,7 @@ static void *cache_alloc_refill(struct kmem_cache *cachep, gfp_t flags)
+ must_grow:
+ n->free_objects -= ac->avail;
+ alloc_done:
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+ fixup_objfreelist_debug(cachep, &list);
+
+ direct_grow:
+@@ -3172,7 +3172,7 @@ static void *____cache_alloc_node(struct kmem_cache *cachep, gfp_t flags,
+ BUG_ON(!n);
+
+ check_irq_off();
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ page = get_first_slab(n, false);
+ if (!page)
+ goto must_grow;
+@@ -3190,12 +3190,12 @@ static void *____cache_alloc_node(struct kmem_cache *cachep, gfp_t flags,
+
+ fixup_slab_list(cachep, n, page, &list);
+
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+ fixup_objfreelist_debug(cachep, &list);
+ return obj;
+
+ must_grow:
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+ page = cache_grow_begin(cachep, gfp_exact_node(flags), nodeid);
+ if (page) {
+ /* This slab isn't counted yet so don't update free_objects */
+@@ -3373,7 +3373,7 @@ static void cache_flusharray(struct kmem_cache *cachep, struct array_cache *ac)
+
+ check_irq_off();
+ n = get_node(cachep, node);
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ if (n->shared) {
+ struct array_cache *shared_array = n->shared;
+ int max = shared_array->limit - shared_array->avail;
+@@ -3402,7 +3402,7 @@ static void cache_flusharray(struct kmem_cache *cachep, struct array_cache *ac)
+ STATS_SET_FREEABLE(cachep, i);
+ }
+ #endif
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+ ac->avail -= batchcount;
+ memmove(ac->entry, &(ac->entry[batchcount]), sizeof(void *)*ac->avail);
+ slabs_destroy(cachep, &list);
+@@ -3831,9 +3831,9 @@ static int do_tune_cpucache(struct kmem_cache *cachep, int limit,
+
+ node = cpu_to_mem(cpu);
+ n = get_node(cachep, node);
+- spin_lock_irq(&n->list_lock);
++ raw_spin_lock_irq(&n->list_lock);
+ free_block(cachep, ac->entry, ac->avail, node, &list);
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+ slabs_destroy(cachep, &list);
+ }
+ free_percpu(prev);
+@@ -3928,9 +3928,9 @@ static void drain_array(struct kmem_cache *cachep, struct kmem_cache_node *n,
+ return;
+ }
+
+- spin_lock_irq(&n->list_lock);
++ raw_spin_lock_irq(&n->list_lock);
+ drain_array_locked(cachep, ac, node, false, &list);
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+
+ slabs_destroy(cachep, &list);
+ }
+@@ -4014,7 +4014,7 @@ void get_slabinfo(struct kmem_cache *cachep, struct slabinfo *sinfo)
+
+ for_each_kmem_cache_node(cachep, node, n) {
+ check_irq_on();
+- spin_lock_irq(&n->list_lock);
++ raw_spin_lock_irq(&n->list_lock);
+
+ total_slabs += n->total_slabs;
+ free_slabs += n->free_slabs;
+@@ -4023,7 +4023,7 @@ void get_slabinfo(struct kmem_cache *cachep, struct slabinfo *sinfo)
+ if (n->shared)
+ shared_avail += n->shared->avail;
+
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+ }
+ num_objs = total_slabs * cachep->num;
+ active_slabs = total_slabs - free_slabs;
+diff --git a/mm/slab.h b/mm/slab.h
+index 6952e10cf33b..ed5dd6e9e0cc 100644
+--- a/mm/slab.h
++++ b/mm/slab.h
+@@ -543,7 +543,7 @@ static inline void slab_post_alloc_hook(struct kmem_cache *s,
+ * The slab lists for all objects.
+ */
+ struct kmem_cache_node {
+- spinlock_t list_lock;
++ raw_spinlock_t list_lock;
+
+ #ifdef CONFIG_SLAB
+ struct list_head slabs_partial; /* partial list first, better asm code */
+diff --git a/mm/slub.c b/mm/slub.c
+index b0f637519ac9..863554db3323 100644
+--- a/mm/slub.c
++++ b/mm/slub.c
+@@ -1214,7 +1214,7 @@ static noinline int free_debug_processing(
+ unsigned long flags;
+ int ret = 0;
+
+- spin_lock_irqsave(&n->list_lock, flags);
++ raw_spin_lock_irqsave(&n->list_lock, flags);
+ slab_lock(page);
+
+ if (s->flags & SLAB_CONSISTENCY_CHECKS) {
+@@ -1249,7 +1249,7 @@ static noinline int free_debug_processing(
+ bulk_cnt, cnt);
+
+ slab_unlock(page);
+- spin_unlock_irqrestore(&n->list_lock, flags);
++ raw_spin_unlock_irqrestore(&n->list_lock, flags);
+ if (!ret)
+ slab_fix(s, "Object at 0x%p not freed", object);
+ return ret;
+@@ -1967,7 +1967,7 @@ static void *get_partial_node(struct kmem_cache *s, struct kmem_cache_node *n,
+ if (!n || !n->nr_partial)
+ return NULL;
+
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ list_for_each_entry_safe(page, page2, &n->partial, slab_list) {
+ void *t;
+
+@@ -1992,7 +1992,7 @@ static void *get_partial_node(struct kmem_cache *s, struct kmem_cache_node *n,
+ break;
+
+ }
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+ return object;
+ }
+
+@@ -2246,7 +2246,7 @@ static void deactivate_slab(struct kmem_cache *s, struct page *page,
+ * that acquire_slab() will see a slab page that
+ * is frozen
+ */
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ }
+ } else {
+ m = M_FULL;
+@@ -2258,7 +2258,7 @@ static void deactivate_slab(struct kmem_cache *s, struct page *page,
+ * slabs from diagnostic functions will not see
+ * any frozen slabs.
+ */
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ }
+ #endif
+ }
+@@ -2283,7 +2283,7 @@ static void deactivate_slab(struct kmem_cache *s, struct page *page,
+ goto redo;
+
+ if (lock)
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+
+ if (m == M_PARTIAL)
+ stat(s, tail);
+@@ -2323,10 +2323,10 @@ static void unfreeze_partials(struct kmem_cache *s,
+ n2 = get_node(s, page_to_nid(page));
+ if (n != n2) {
+ if (n)
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+
+ n = n2;
+- spin_lock(&n->list_lock);
++ raw_spin_lock(&n->list_lock);
+ }
+
+ do {
+@@ -2355,7 +2355,7 @@ static void unfreeze_partials(struct kmem_cache *s,
+ }
+
+ if (n)
+- spin_unlock(&n->list_lock);
++ raw_spin_unlock(&n->list_lock);
+
+ while (discard_page) {
+ page = discard_page;
+@@ -2520,10 +2520,10 @@ static unsigned long count_partial(struct kmem_cache_node *n,
+ unsigned long x = 0;
+ struct page *page;
+
+- spin_lock_irqsave(&n->list_lock, flags);
++ raw_spin_lock_irqsave(&n->list_lock, flags);
+ list_for_each_entry(page, &n->partial, slab_list)
+ x += get_count(page);
+- spin_unlock_irqrestore(&n->list_lock, flags);
++ raw_spin_unlock_irqrestore(&n->list_lock, flags);
+ return x;
+ }
+ #endif /* CONFIG_SLUB_DEBUG || CONFIG_SYSFS */
+@@ -2983,7 +2983,7 @@ static void __slab_free(struct kmem_cache *s, struct page *page,
+
+ do {
+ if (unlikely(n)) {
+- spin_unlock_irqrestore(&n->list_lock, flags);
++ raw_spin_unlock_irqrestore(&n->list_lock, flags);
+ n = NULL;
+ }
+ prior = page->freelist;
+@@ -3015,7 +3015,7 @@ static void __slab_free(struct kmem_cache *s, struct page *page,
+ * Otherwise the list_lock will synchronize with
+ * other processors updating the list of slabs.
+ */
+- spin_lock_irqsave(&n->list_lock, flags);
++ raw_spin_lock_irqsave(&n->list_lock, flags);
+
+ }
+ }
+@@ -3057,7 +3057,7 @@ static void __slab_free(struct kmem_cache *s, struct page *page,
+ add_partial(n, page, DEACTIVATE_TO_TAIL);
+ stat(s, FREE_ADD_PARTIAL);
+ }
+- spin_unlock_irqrestore(&n->list_lock, flags);
++ raw_spin_unlock_irqrestore(&n->list_lock, flags);
+ return;
+
+ slab_empty:
+@@ -3072,7 +3072,7 @@ static void __slab_free(struct kmem_cache *s, struct page *page,
+ remove_full(s, n, page);
+ }
+
+- spin_unlock_irqrestore(&n->list_lock, flags);
++ raw_spin_unlock_irqrestore(&n->list_lock, flags);
+ stat(s, FREE_SLAB);
+ discard_slab(s, page);
+ }
+@@ -3479,7 +3479,7 @@ static void
+ init_kmem_cache_node(struct kmem_cache_node *n)
+ {
+ n->nr_partial = 0;
+- spin_lock_init(&n->list_lock);
++ raw_spin_lock_init(&n->list_lock);
+ INIT_LIST_HEAD(&n->partial);
+ #ifdef CONFIG_SLUB_DEBUG
+ atomic_long_set(&n->nr_slabs, 0);
+@@ -3874,7 +3874,7 @@ static void free_partial(struct kmem_cache *s, struct kmem_cache_node *n)
+ struct page *page, *h;
+
+ BUG_ON(irqs_disabled());
+- spin_lock_irq(&n->list_lock);
++ raw_spin_lock_irq(&n->list_lock);
+ list_for_each_entry_safe(page, h, &n->partial, slab_list) {
+ if (!page->inuse) {
+ remove_partial(n, page);
+@@ -3884,7 +3884,7 @@ static void free_partial(struct kmem_cache *s, struct kmem_cache_node *n)
+ "Objects remaining in %s on __kmem_cache_shutdown()");
+ }
+ }
+- spin_unlock_irq(&n->list_lock);
++ raw_spin_unlock_irq(&n->list_lock);
+
+ list_for_each_entry_safe(page, h, &discard, slab_list)
+ discard_slab(s, page);
+@@ -4155,7 +4155,7 @@ int __kmem_cache_shrink(struct kmem_cache *s)
+ for (i = 0; i < SHRINK_PROMOTE_MAX; i++)
+ INIT_LIST_HEAD(promote + i);
+
+- spin_lock_irqsave(&n->list_lock, flags);
++ raw_spin_lock_irqsave(&n->list_lock, flags);
+
+ /*
+ * Build lists of slabs to discard or promote.
+@@ -4186,7 +4186,7 @@ int __kmem_cache_shrink(struct kmem_cache *s)
+ for (i = SHRINK_PROMOTE_MAX - 1; i >= 0; i--)
+ list_splice(promote + i, &n->partial);
+
+- spin_unlock_irqrestore(&n->list_lock, flags);
++ raw_spin_unlock_irqrestore(&n->list_lock, flags);
+
+ /* Release empty slabs */
+ list_for_each_entry_safe(page, t, &discard, slab_list)
+@@ -4548,7 +4548,7 @@ static int validate_slab_node(struct kmem_cache *s,
+ struct page *page;
+ unsigned long flags;
+
+- spin_lock_irqsave(&n->list_lock, flags);
++ raw_spin_lock_irqsave(&n->list_lock, flags);
+
+ list_for_each_entry(page, &n->partial, slab_list) {
+ validate_slab(s, page);
+@@ -4570,7 +4570,7 @@ static int validate_slab_node(struct kmem_cache *s,
+ s->name, count, atomic_long_read(&n->nr_slabs));
+
+ out:
+- spin_unlock_irqrestore(&n->list_lock, flags);
++ raw_spin_unlock_irqrestore(&n->list_lock, flags);
+ return count;
+ }
+
+@@ -4749,12 +4749,12 @@ static int list_locations(struct kmem_cache *s, char *buf,
+ if (!atomic_long_read(&n->nr_slabs))
+ continue;
+
+- spin_lock_irqsave(&n->list_lock, flags);
++ raw_spin_lock_irqsave(&n->list_lock, flags);
+ list_for_each_entry(page, &n->partial, slab_list)
+ process_slab(&t, s, page, alloc);
+ list_for_each_entry(page, &n->full, slab_list)
+ process_slab(&t, s, page, alloc);
+- spin_unlock_irqrestore(&n->list_lock, flags);
++ raw_spin_unlock_irqrestore(&n->list_lock, flags);
+ }
+
+ for (i = 0; i < t.count; i++) {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0199-mm-SLUB-delay-giving-back-empty-slubs-to-IRQ-enabled.patch b/debian/patches-rt/0199-mm-SLUB-delay-giving-back-empty-slubs-to-IRQ-enabled.patch
new file mode 100644
index 000000000..8af579dea
--- /dev/null
+++ b/debian/patches-rt/0199-mm-SLUB-delay-giving-back-empty-slubs-to-IRQ-enabled.patch
@@ -0,0 +1,223 @@
+From e620c8c3d37a6e6ff999f303521997d2950a71cd Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 21 Jun 2018 17:29:19 +0200
+Subject: [PATCH 199/323] mm/SLUB: delay giving back empty slubs to IRQ enabled
+ regions
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+__free_slab() is invoked with disabled interrupts which increases the
+irq-off time while __free_pages() is doing the work.
+Allow __free_slab() to be invoked with enabled interrupts and move
+everything from interrupts-off invocations to a temporary per-CPU list
+so it can be processed later.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/slub.c | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++----
+ 1 file changed, 69 insertions(+), 5 deletions(-)
+
+diff --git a/mm/slub.c b/mm/slub.c
+index 863554db3323..faba29039375 100644
+--- a/mm/slub.c
++++ b/mm/slub.c
+@@ -1494,6 +1494,12 @@ static bool freelist_corrupted(struct kmem_cache *s, struct page *page,
+ }
+ #endif /* CONFIG_SLUB_DEBUG */
+
++struct slub_free_list {
++ raw_spinlock_t lock;
++ struct list_head list;
++};
++static DEFINE_PER_CPU(struct slub_free_list, slub_free_list);
++
+ /*
+ * Hooks for other subsystems that check memory allocations. In a typical
+ * production configuration these hooks all should produce no code at all.
+@@ -1849,6 +1855,16 @@ static void __free_slab(struct kmem_cache *s, struct page *page)
+ __free_pages(page, order);
+ }
+
++static void free_delayed(struct list_head *h)
++{
++ while (!list_empty(h)) {
++ struct page *page = list_first_entry(h, struct page, lru);
++
++ list_del(&page->lru);
++ __free_slab(page->slab_cache, page);
++ }
++}
++
+ static void rcu_free_slab(struct rcu_head *h)
+ {
+ struct page *page = container_of(h, struct page, rcu_head);
+@@ -1860,6 +1876,12 @@ static void free_slab(struct kmem_cache *s, struct page *page)
+ {
+ if (unlikely(s->flags & SLAB_TYPESAFE_BY_RCU)) {
+ call_rcu(&page->rcu_head, rcu_free_slab);
++ } else if (irqs_disabled()) {
++ struct slub_free_list *f = this_cpu_ptr(&slub_free_list);
++
++ raw_spin_lock(&f->lock);
++ list_add(&page->lru, &f->list);
++ raw_spin_unlock(&f->lock);
+ } else
+ __free_slab(s, page);
+ }
+@@ -2392,14 +2414,21 @@ static void put_cpu_partial(struct kmem_cache *s, struct page *page, int drain)
+ pobjects = oldpage->pobjects;
+ pages = oldpage->pages;
+ if (drain && pobjects > slub_cpu_partial(s)) {
++ struct slub_free_list *f;
+ unsigned long flags;
++ LIST_HEAD(tofree);
+ /*
+ * partial array is full. Move the existing
+ * set to the per node partial list.
+ */
+ local_irq_save(flags);
+ unfreeze_partials(s, this_cpu_ptr(s->cpu_slab));
++ f = this_cpu_ptr(&slub_free_list);
++ raw_spin_lock(&f->lock);
++ list_splice_init(&f->list, &tofree);
++ raw_spin_unlock(&f->lock);
+ local_irq_restore(flags);
++ free_delayed(&tofree);
+ oldpage = NULL;
+ pobjects = 0;
+ pages = 0;
+@@ -2465,7 +2494,22 @@ static bool has_cpu_slab(int cpu, void *info)
+
+ static void flush_all(struct kmem_cache *s)
+ {
++ LIST_HEAD(tofree);
++ int cpu;
++
+ on_each_cpu_cond(has_cpu_slab, flush_cpu_slab, s, 1);
++ for_each_online_cpu(cpu) {
++ struct slub_free_list *f;
++
++ if (!has_cpu_slab(cpu, s))
++ continue;
++
++ f = &per_cpu(slub_free_list, cpu);
++ raw_spin_lock_irq(&f->lock);
++ list_splice_init(&f->list, &tofree);
++ raw_spin_unlock_irq(&f->lock);
++ free_delayed(&tofree);
++ }
+ }
+
+ /*
+@@ -2662,8 +2706,10 @@ static inline void *get_freelist(struct kmem_cache *s, struct page *page)
+ * already disabled (which is the case for bulk allocation).
+ */
+ static void *___slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node,
+- unsigned long addr, struct kmem_cache_cpu *c)
++ unsigned long addr, struct kmem_cache_cpu *c,
++ struct list_head *to_free)
+ {
++ struct slub_free_list *f;
+ void *freelist;
+ struct page *page;
+
+@@ -2732,6 +2778,13 @@ static void *___slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node,
+ VM_BUG_ON(!c->page->frozen);
+ c->freelist = get_freepointer(s, freelist);
+ c->tid = next_tid(c->tid);
++
++out:
++ f = this_cpu_ptr(&slub_free_list);
++ raw_spin_lock(&f->lock);
++ list_splice_init(&f->list, to_free);
++ raw_spin_unlock(&f->lock);
++
+ return freelist;
+
+ new_slab:
+@@ -2747,7 +2800,7 @@ static void *___slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node,
+
+ if (unlikely(!freelist)) {
+ slab_out_of_memory(s, gfpflags, node);
+- return NULL;
++ goto out;
+ }
+
+ page = c->page;
+@@ -2760,7 +2813,7 @@ static void *___slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node,
+ goto new_slab; /* Slab failed checks. Next slab needed */
+
+ deactivate_slab(s, page, get_freepointer(s, freelist), c);
+- return freelist;
++ goto out;
+ }
+
+ /*
+@@ -2772,6 +2825,7 @@ static void *__slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node,
+ {
+ void *p;
+ unsigned long flags;
++ LIST_HEAD(tofree);
+
+ local_irq_save(flags);
+ #ifdef CONFIG_PREEMPTION
+@@ -2783,8 +2837,9 @@ static void *__slab_alloc(struct kmem_cache *s, gfp_t gfpflags, int node,
+ c = this_cpu_ptr(s->cpu_slab);
+ #endif
+
+- p = ___slab_alloc(s, gfpflags, node, addr, c);
++ p = ___slab_alloc(s, gfpflags, node, addr, c, &tofree);
+ local_irq_restore(flags);
++ free_delayed(&tofree);
+ return p;
+ }
+
+@@ -3282,6 +3337,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size,
+ void **p)
+ {
+ struct kmem_cache_cpu *c;
++ LIST_HEAD(to_free);
+ int i;
+ struct obj_cgroup *objcg = NULL;
+
+@@ -3315,7 +3371,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size,
+ * of re-populating per CPU c->freelist
+ */
+ p[i] = ___slab_alloc(s, flags, NUMA_NO_NODE,
+- _RET_IP_, c);
++ _RET_IP_, c, &to_free);
+ if (unlikely(!p[i]))
+ goto error;
+
+@@ -3330,6 +3386,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size,
+ }
+ c->tid = next_tid(c->tid);
+ local_irq_enable();
++ free_delayed(&to_free);
+
+ /* Clear memory outside IRQ disabled fastpath loop */
+ if (unlikely(slab_want_init_on_alloc(flags, s))) {
+@@ -3344,6 +3401,7 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size,
+ return i;
+ error:
+ local_irq_enable();
++ free_delayed(&to_free);
+ slab_post_alloc_hook(s, objcg, flags, i, p);
+ __kmem_cache_free_bulk(s, i, p);
+ return 0;
+@@ -4361,6 +4419,12 @@ void __init kmem_cache_init(void)
+ {
+ static __initdata struct kmem_cache boot_kmem_cache,
+ boot_kmem_cache_node;
++ int cpu;
++
++ for_each_possible_cpu(cpu) {
++ raw_spin_lock_init(&per_cpu(slub_free_list, cpu).lock);
++ INIT_LIST_HEAD(&per_cpu(slub_free_list, cpu).list);
++ }
+
+ if (debug_guardpage_minorder())
+ slub_max_order = 0;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0200-mm-slub-Always-flush-the-delayed-empty-slubs-in-flus.patch b/debian/patches-rt/0200-mm-slub-Always-flush-the-delayed-empty-slubs-in-flus.patch
new file mode 100644
index 000000000..0fd8180bd
--- /dev/null
+++ b/debian/patches-rt/0200-mm-slub-Always-flush-the-delayed-empty-slubs-in-flus.patch
@@ -0,0 +1,61 @@
+From d903b2377e443ae1df59e15824b683d326e7c24b Mon Sep 17 00:00:00 2001
+From: Kevin Hao <haokexin@gmail.com>
+Date: Mon, 4 May 2020 11:34:07 +0800
+Subject: [PATCH 200/323] mm: slub: Always flush the delayed empty slubs in
+ flush_all()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+After commit f0b231101c94 ("mm/SLUB: delay giving back empty slubs to
+IRQ enabled regions"), when the free_slab() is invoked with the IRQ
+disabled, the empty slubs are moved to a per-CPU list and will be
+freed after IRQ enabled later. But in the current codes, there is
+a check to see if there really has the cpu slub on a specific cpu
+before flushing the delayed empty slubs, this may cause a reference
+of already released kmem_cache in a scenario like below:
+ cpu 0 cpu 1
+ kmem_cache_destroy()
+ flush_all()
+ --->IPI flush_cpu_slab()
+ flush_slab()
+ deactivate_slab()
+ discard_slab()
+ free_slab()
+ c->page = NULL;
+ for_each_online_cpu(cpu)
+ if (!has_cpu_slab(1, s))
+ continue
+ this skip to flush the delayed
+ empty slub released by cpu1
+ kmem_cache_free(kmem_cache, s)
+
+ kmalloc()
+ __slab_alloc()
+ free_delayed()
+ __free_slab()
+ reference to released kmem_cache
+
+Fixes: f0b231101c94 ("mm/SLUB: delay giving back empty slubs to IRQ enabled regions")
+Signed-off-by: Kevin Hao <haokexin@gmail.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Cc: stable-rt@vger.kernel.org
+---
+ mm/slub.c | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/mm/slub.c b/mm/slub.c
+index faba29039375..cb414c1f9ef6 100644
+--- a/mm/slub.c
++++ b/mm/slub.c
+@@ -2501,9 +2501,6 @@ static void flush_all(struct kmem_cache *s)
+ for_each_online_cpu(cpu) {
+ struct slub_free_list *f;
+
+- if (!has_cpu_slab(cpu, s))
+- continue;
+-
+ f = &per_cpu(slub_free_list, cpu);
+ raw_spin_lock_irq(&f->lock);
+ list_splice_init(&f->list, &tofree);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0201-mm-slub-Don-t-resize-the-location-tracking-cache-on-.patch b/debian/patches-rt/0201-mm-slub-Don-t-resize-the-location-tracking-cache-on-.patch
new file mode 100644
index 000000000..c233be3ef
--- /dev/null
+++ b/debian/patches-rt/0201-mm-slub-Don-t-resize-the-location-tracking-cache-on-.patch
@@ -0,0 +1,37 @@
+From 6f5d1f04864beb65079068f48faf17c269c8509b Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 26 Feb 2021 17:26:04 +0100
+Subject: [PATCH 201/323] mm: slub: Don't resize the location tracking cache on
+ PREEMPT_RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The location tracking cache has a size of a page and is resized if its
+current size is too small.
+This allocation happens with disabled interrupts and can't happen on
+PREEMPT_RT.
+Should one page be too small, then we have to allocate more at the
+beginning. The only downside is that less callers will be visible.
+
+Cc: stable-rt@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/slub.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/mm/slub.c b/mm/slub.c
+index cb414c1f9ef6..57c598dd7454 100644
+--- a/mm/slub.c
++++ b/mm/slub.c
+@@ -4682,6 +4682,9 @@ static int alloc_loc_track(struct loc_track *t, unsigned long max, gfp_t flags)
+ struct location *l;
+ int order;
+
++ if (IS_ENABLED(CONFIG_PREEMPT_RT) && flags == GFP_ATOMIC)
++ return 0;
++
+ order = get_order(sizeof(struct location) * max);
+
+ l = (void *)__get_free_pages(flags, order);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0202-mm-page_alloc-Use-migrate_disable-in-drain_local_pag.patch b/debian/patches-rt/0202-mm-page_alloc-Use-migrate_disable-in-drain_local_pag.patch
new file mode 100644
index 000000000..486873119
--- /dev/null
+++ b/debian/patches-rt/0202-mm-page_alloc-Use-migrate_disable-in-drain_local_pag.patch
@@ -0,0 +1,39 @@
+From 4c4d7886b6c8d16df841ac103b4742481ad5f014 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 2 Jul 2020 14:27:23 +0200
+Subject: [PATCH 202/323] mm/page_alloc: Use migrate_disable() in
+ drain_local_pages_wq()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+drain_local_pages_wq() disables preemption to avoid CPU migration during
+CPU hotplug.
+Using migrate_disable() makes the function preemptible on PREEMPT_RT but
+still avoids CPU migrations during CPU-hotplug. On !PREEMPT_RT it
+behaves like preempt_disable().
+
+Use migrate_disable() in drain_local_pages_wq().
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/page_alloc.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/mm/page_alloc.c b/mm/page_alloc.c
+index a3f1e4c6bdc8..508650843235 100644
+--- a/mm/page_alloc.c
++++ b/mm/page_alloc.c
+@@ -3048,9 +3048,9 @@ static void drain_local_pages_wq(struct work_struct *work)
+ * cpu which is allright but we also have to make sure to not move to
+ * a different one.
+ */
+- preempt_disable();
++ migrate_disable();
+ drain_local_pages(drain->zone);
+- preempt_enable();
++ migrate_enable();
+ }
+
+ /*
+--
+2.43.0
+
diff --git a/debian/patches-rt/0203-mm-page_alloc-rt-friendly-per-cpu-pages.patch b/debian/patches-rt/0203-mm-page_alloc-rt-friendly-per-cpu-pages.patch
new file mode 100644
index 000000000..8102e89d2
--- /dev/null
+++ b/debian/patches-rt/0203-mm-page_alloc-rt-friendly-per-cpu-pages.patch
@@ -0,0 +1,197 @@
+From 9f33cce55eb2594c4602653658103381064572d7 Mon Sep 17 00:00:00 2001
+From: Ingo Molnar <mingo@elte.hu>
+Date: Fri, 3 Jul 2009 08:29:37 -0500
+Subject: [PATCH 203/323] mm: page_alloc: rt-friendly per-cpu pages
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+rt-friendly per-cpu pages: convert the irqs-off per-cpu locking
+method into a preemptible, explicit-per-cpu-locks method.
+
+Contains fixes from:
+ Peter Zijlstra <a.p.zijlstra@chello.nl>
+ Thomas Gleixner <tglx@linutronix.de>
+
+Signed-off-by: Ingo Molnar <mingo@elte.hu>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ mm/page_alloc.c | 47 ++++++++++++++++++++++++++++-------------------
+ 1 file changed, 28 insertions(+), 19 deletions(-)
+
+diff --git a/mm/page_alloc.c b/mm/page_alloc.c
+index 508650843235..c5eb7d6844ae 100644
+--- a/mm/page_alloc.c
++++ b/mm/page_alloc.c
+@@ -61,6 +61,7 @@
+ #include <linux/hugetlb.h>
+ #include <linux/sched/rt.h>
+ #include <linux/sched/mm.h>
++#include <linux/local_lock.h>
+ #include <linux/page_owner.h>
+ #include <linux/kthread.h>
+ #include <linux/memcontrol.h>
+@@ -386,6 +387,13 @@ EXPORT_SYMBOL(nr_node_ids);
+ EXPORT_SYMBOL(nr_online_nodes);
+ #endif
+
++struct pa_lock {
++ local_lock_t l;
++};
++static DEFINE_PER_CPU(struct pa_lock, pa_lock) = {
++ .l = INIT_LOCAL_LOCK(l),
++};
++
+ int page_group_by_mobility_disabled __read_mostly;
+
+ #ifdef CONFIG_DEFERRED_STRUCT_PAGE_INIT
+@@ -1543,11 +1551,11 @@ static void __free_pages_ok(struct page *page, unsigned int order,
+ return;
+
+ migratetype = get_pfnblock_migratetype(page, pfn);
+- local_irq_save(flags);
++ local_lock_irqsave(&pa_lock.l, flags);
+ __count_vm_events(PGFREE, 1 << order);
+ free_one_page(page_zone(page), page, pfn, order, migratetype,
+ fpi_flags);
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&pa_lock.l, flags);
+ }
+
+ void __free_pages_core(struct page *page, unsigned int order)
+@@ -2961,13 +2969,13 @@ void drain_zone_pages(struct zone *zone, struct per_cpu_pages *pcp)
+ int to_drain, batch;
+ LIST_HEAD(dst);
+
+- local_irq_save(flags);
++ local_lock_irqsave(&pa_lock.l, flags);
+ batch = READ_ONCE(pcp->batch);
+ to_drain = min(pcp->count, batch);
+ if (to_drain > 0)
+ isolate_pcp_pages(to_drain, pcp, &dst);
+
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&pa_lock.l, flags);
+
+ if (to_drain > 0)
+ free_pcppages_bulk(zone, &dst, false);
+@@ -2989,7 +2997,7 @@ static void drain_pages_zone(unsigned int cpu, struct zone *zone)
+ LIST_HEAD(dst);
+ int count;
+
+- local_irq_save(flags);
++ local_lock_irqsave(&pa_lock.l, flags);
+ pset = per_cpu_ptr(zone->pageset, cpu);
+
+ pcp = &pset->pcp;
+@@ -2997,7 +3005,7 @@ static void drain_pages_zone(unsigned int cpu, struct zone *zone)
+ if (count)
+ isolate_pcp_pages(count, pcp, &dst);
+
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&pa_lock.l, flags);
+
+ if (count)
+ free_pcppages_bulk(zone, &dst, false);
+@@ -3248,9 +3256,9 @@ void free_unref_page(struct page *page)
+ if (!free_unref_page_prepare(page, pfn))
+ return;
+
+- local_irq_save(flags);
++ local_lock_irqsave(&pa_lock.l, flags);
+ free_unref_page_commit(page, pfn, &dst);
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&pa_lock.l, flags);
+ if (!list_empty(&dst))
+ free_pcppages_bulk(zone, &dst, false);
+ }
+@@ -3277,7 +3285,7 @@ void free_unref_page_list(struct list_head *list)
+ set_page_private(page, pfn);
+ }
+
+- local_irq_save(flags);
++ local_lock_irqsave(&pa_lock.l, flags);
+ list_for_each_entry_safe(page, next, list, lru) {
+ unsigned long pfn = page_private(page);
+ enum zone_type type;
+@@ -3292,12 +3300,12 @@ void free_unref_page_list(struct list_head *list)
+ * a large list of pages to free.
+ */
+ if (++batch_count == SWAP_CLUSTER_MAX) {
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&pa_lock.l, flags);
+ batch_count = 0;
+- local_irq_save(flags);
++ local_lock_irqsave(&pa_lock.l, flags);
+ }
+ }
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&pa_lock.l, flags);
+
+ for (i = 0; i < __MAX_NR_ZONES; ) {
+ struct page *page;
+@@ -3468,7 +3476,7 @@ static struct page *rmqueue_pcplist(struct zone *preferred_zone,
+ struct page *page;
+ unsigned long flags;
+
+- local_irq_save(flags);
++ local_lock_irqsave(&pa_lock.l, flags);
+ pcp = &this_cpu_ptr(zone->pageset)->pcp;
+ list = &pcp->lists[migratetype];
+ page = __rmqueue_pcplist(zone, migratetype, alloc_flags, pcp, list);
+@@ -3476,7 +3484,7 @@ static struct page *rmqueue_pcplist(struct zone *preferred_zone,
+ __count_zid_vm_events(PGALLOC, page_zonenum(page), 1);
+ zone_statistics(preferred_zone, zone);
+ }
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&pa_lock.l, flags);
+ return page;
+ }
+
+@@ -3510,7 +3518,8 @@ struct page *rmqueue(struct zone *preferred_zone,
+ * allocate greater than order-1 page units with __GFP_NOFAIL.
+ */
+ WARN_ON_ONCE((gfp_flags & __GFP_NOFAIL) && (order > 1));
+- spin_lock_irqsave(&zone->lock, flags);
++ local_lock_irqsave(&pa_lock.l, flags);
++ spin_lock(&zone->lock);
+
+ do {
+ page = NULL;
+@@ -3536,7 +3545,7 @@ struct page *rmqueue(struct zone *preferred_zone,
+
+ __count_zid_vm_events(PGALLOC, page_zonenum(page), 1 << order);
+ zone_statistics(preferred_zone, zone);
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&pa_lock.l, flags);
+
+ out:
+ /* Separate test+clear to avoid unnecessary atomics */
+@@ -3549,7 +3558,7 @@ struct page *rmqueue(struct zone *preferred_zone,
+ return page;
+
+ failed:
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&pa_lock.l, flags);
+ return NULL;
+ }
+
+@@ -8892,7 +8901,7 @@ void zone_pcp_reset(struct zone *zone)
+ struct per_cpu_pageset *pset;
+
+ /* avoid races with drain_pages() */
+- local_irq_save(flags);
++ local_lock_irqsave(&pa_lock.l, flags);
+ if (zone->pageset != &boot_pageset) {
+ for_each_online_cpu(cpu) {
+ pset = per_cpu_ptr(zone->pageset, cpu);
+@@ -8901,7 +8910,7 @@ void zone_pcp_reset(struct zone *zone)
+ free_percpu(zone->pageset);
+ zone->pageset = &boot_pageset;
+ }
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&pa_lock.l, flags);
+ }
+
+ #ifdef CONFIG_MEMORY_HOTREMOVE
+--
+2.43.0
+
diff --git a/debian/patches-rt/0204-mm-slub-Make-object_map_lock-a-raw_spinlock_t.patch b/debian/patches-rt/0204-mm-slub-Make-object_map_lock-a-raw_spinlock_t.patch
new file mode 100644
index 000000000..28c14ea49
--- /dev/null
+++ b/debian/patches-rt/0204-mm-slub-Make-object_map_lock-a-raw_spinlock_t.patch
@@ -0,0 +1,50 @@
+From d2d45bd13ad6112afefb224d46501b76473196eb Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 16 Jul 2020 18:47:50 +0200
+Subject: [PATCH 204/323] mm/slub: Make object_map_lock a raw_spinlock_t
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The variable object_map is protected by object_map_lock. The lock is always
+acquired in debug code and within already atomic context
+
+Make object_map_lock a raw_spinlock_t.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/slub.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/mm/slub.c b/mm/slub.c
+index 57c598dd7454..ac2ddf6a4220 100644
+--- a/mm/slub.c
++++ b/mm/slub.c
+@@ -435,7 +435,7 @@ static inline bool cmpxchg_double_slab(struct kmem_cache *s, struct page *page,
+
+ #ifdef CONFIG_SLUB_DEBUG
+ static unsigned long object_map[BITS_TO_LONGS(MAX_OBJS_PER_PAGE)];
+-static DEFINE_SPINLOCK(object_map_lock);
++static DEFINE_RAW_SPINLOCK(object_map_lock);
+
+ /*
+ * Determine a map of object in use on a page.
+@@ -451,7 +451,7 @@ static unsigned long *get_map(struct kmem_cache *s, struct page *page)
+
+ VM_BUG_ON(!irqs_disabled());
+
+- spin_lock(&object_map_lock);
++ raw_spin_lock(&object_map_lock);
+
+ bitmap_zero(object_map, page->objects);
+
+@@ -464,7 +464,7 @@ static unsigned long *get_map(struct kmem_cache *s, struct page *page)
+ static void put_map(unsigned long *map) __releases(&object_map_lock)
+ {
+ VM_BUG_ON(map != object_map);
+- spin_unlock(&object_map_lock);
++ raw_spin_unlock(&object_map_lock);
+ }
+
+ static inline unsigned int size_from_object(struct kmem_cache *s)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0205-slub-Enable-irqs-for-__GFP_WAIT.patch b/debian/patches-rt/0205-slub-Enable-irqs-for-__GFP_WAIT.patch
new file mode 100644
index 000000000..d3496f78e
--- /dev/null
+++ b/debian/patches-rt/0205-slub-Enable-irqs-for-__GFP_WAIT.patch
@@ -0,0 +1,76 @@
+From c0f57e0b6278391f1fec71ccb1e25fe46deade2b Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Wed, 9 Jan 2013 12:08:15 +0100
+Subject: [PATCH 205/323] slub: Enable irqs for __GFP_WAIT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+SYSTEM_RUNNING might be too late for enabling interrupts. Allocations
+with GFP_WAIT can happen before that. So use this as an indicator.
+
+[bigeasy: Add warning on RT for allocations in atomic context.
+ Don't enable interrupts on allocations during SYSTEM_SUSPEND. This is done
+ during suspend by ACPI, noticed by Liwei Song <liwei.song@windriver.com>
+]
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ mm/slub.c | 18 +++++++++++++++++-
+ 1 file changed, 17 insertions(+), 1 deletion(-)
+
+diff --git a/mm/slub.c b/mm/slub.c
+index ac2ddf6a4220..00f1d1206dbc 100644
+--- a/mm/slub.c
++++ b/mm/slub.c
+@@ -1750,10 +1750,18 @@ static struct page *allocate_slab(struct kmem_cache *s, gfp_t flags, int node)
+ void *start, *p, *next;
+ int idx;
+ bool shuffle;
++ bool enableirqs = false;
+
+ flags &= gfp_allowed_mask;
+
+ if (gfpflags_allow_blocking(flags))
++ enableirqs = true;
++
++#ifdef CONFIG_PREEMPT_RT
++ if (system_state > SYSTEM_BOOTING && system_state < SYSTEM_SUSPEND)
++ enableirqs = true;
++#endif
++ if (enableirqs)
+ local_irq_enable();
+
+ flags |= s->allocflags;
+@@ -1812,7 +1820,7 @@ static struct page *allocate_slab(struct kmem_cache *s, gfp_t flags, int node)
+ page->frozen = 1;
+
+ out:
+- if (gfpflags_allow_blocking(flags))
++ if (enableirqs)
+ local_irq_disable();
+ if (!page)
+ return NULL;
+@@ -2870,6 +2878,10 @@ static __always_inline void *slab_alloc_node(struct kmem_cache *s,
+ unsigned long tid;
+ struct obj_cgroup *objcg = NULL;
+
++ if (IS_ENABLED(CONFIG_PREEMPT_RT) && IS_ENABLED(CONFIG_DEBUG_ATOMIC_SLEEP))
++ WARN_ON_ONCE(!preemptible() &&
++ (system_state > SYSTEM_BOOTING && system_state < SYSTEM_SUSPEND));
++
+ s = slab_pre_alloc_hook(s, &objcg, 1, gfpflags);
+ if (!s)
+ return NULL;
+@@ -3338,6 +3350,10 @@ int kmem_cache_alloc_bulk(struct kmem_cache *s, gfp_t flags, size_t size,
+ int i;
+ struct obj_cgroup *objcg = NULL;
+
++ if (IS_ENABLED(CONFIG_PREEMPT_RT) && IS_ENABLED(CONFIG_DEBUG_ATOMIC_SLEEP))
++ WARN_ON_ONCE(!preemptible() &&
++ (system_state > SYSTEM_BOOTING && system_state < SYSTEM_SUSPEND));
++
+ /* memcg and kmem_cache debug support */
+ s = slab_pre_alloc_hook(s, &objcg, size, flags);
+ if (unlikely(!s))
+--
+2.43.0
+
diff --git a/debian/patches-rt/0206-slub-Disable-SLUB_CPU_PARTIAL.patch b/debian/patches-rt/0206-slub-Disable-SLUB_CPU_PARTIAL.patch
new file mode 100644
index 000000000..9f521b566
--- /dev/null
+++ b/debian/patches-rt/0206-slub-Disable-SLUB_CPU_PARTIAL.patch
@@ -0,0 +1,54 @@
+From 8da7619853b38005d113af771657ad188006e1d5 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 15 Apr 2015 19:00:47 +0200
+Subject: [PATCH 206/323] slub: Disable SLUB_CPU_PARTIAL
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+|BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:915
+|in_atomic(): 1, irqs_disabled(): 0, pid: 87, name: rcuop/7
+|1 lock held by rcuop/7/87:
+| #0: (rcu_callback){......}, at: [<ffffffff8112c76a>] rcu_nocb_kthread+0x1ca/0x5d0
+|Preemption disabled at:[<ffffffff811eebd9>] put_cpu_partial+0x29/0x220
+|
+|CPU: 0 PID: 87 Comm: rcuop/7 Tainted: G W 4.0.0-rt0+ #477
+|Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.7.5-20140531_083030-gandalf 04/01/2014
+| 000000000007a9fc ffff88013987baf8 ffffffff817441c7 0000000000000007
+| 0000000000000000 ffff88013987bb18 ffffffff810eee51 0000000000000000
+| ffff88013fc10200 ffff88013987bb48 ffffffff8174a1c4 000000000007a9fc
+|Call Trace:
+| [<ffffffff817441c7>] dump_stack+0x4f/0x90
+| [<ffffffff810eee51>] ___might_sleep+0x121/0x1b0
+| [<ffffffff8174a1c4>] rt_spin_lock+0x24/0x60
+| [<ffffffff811a689a>] __free_pages_ok+0xaa/0x540
+| [<ffffffff811a729d>] __free_pages+0x1d/0x30
+| [<ffffffff811eddd5>] __free_slab+0xc5/0x1e0
+| [<ffffffff811edf46>] free_delayed+0x56/0x70
+| [<ffffffff811eecfd>] put_cpu_partial+0x14d/0x220
+| [<ffffffff811efc98>] __slab_free+0x158/0x2c0
+| [<ffffffff811f0021>] kmem_cache_free+0x221/0x2d0
+| [<ffffffff81204d0c>] file_free_rcu+0x2c/0x40
+| [<ffffffff8112c7e3>] rcu_nocb_kthread+0x243/0x5d0
+| [<ffffffff810e951c>] kthread+0xfc/0x120
+| [<ffffffff8174abc8>] ret_from_fork+0x58/0x90
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ init/Kconfig | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/init/Kconfig b/init/Kconfig
+index 7e9578a0176f..c5f276d782de 100644
+--- a/init/Kconfig
++++ b/init/Kconfig
+@@ -2011,7 +2011,7 @@ config SHUFFLE_PAGE_ALLOCATOR
+
+ config SLUB_CPU_PARTIAL
+ default y
+- depends on SLUB && SMP
++ depends on SLUB && SMP && !PREEMPT_RT
+ bool "SLUB per cpu partial cache"
+ help
+ Per cpu partial caches accelerate objects allocation and freeing
+--
+2.43.0
+
diff --git a/debian/patches-rt/0207-mm-memcontrol-Provide-a-local_lock-for-per-CPU-memcg.patch b/debian/patches-rt/0207-mm-memcontrol-Provide-a-local_lock-for-per-CPU-memcg.patch
new file mode 100644
index 000000000..73fbdfd8d
--- /dev/null
+++ b/debian/patches-rt/0207-mm-memcontrol-Provide-a-local_lock-for-per-CPU-memcg.patch
@@ -0,0 +1,144 @@
+From 7a4ec53aa79ebc416eb752e204669e0d4dc53a06 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 18 Aug 2020 10:30:00 +0200
+Subject: [PATCH 207/323] mm: memcontrol: Provide a local_lock for per-CPU
+ memcg_stock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The interrupts are disabled to ensure CPU-local access to the per-CPU
+variable `memcg_stock'.
+As the code inside the interrupt disabled section acquires regular
+spinlocks, which are converted to 'sleeping' spinlocks on a PREEMPT_RT
+kernel, this conflicts with the RT semantics.
+
+Convert it to a local_lock which allows RT kernels to substitute them with
+a real per CPU lock. On non RT kernels this maps to local_irq_save() as
+before, but provides also lockdep coverage of the critical region.
+No functional change.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/memcontrol.c | 31 ++++++++++++++++++-------------
+ 1 file changed, 18 insertions(+), 13 deletions(-)
+
+diff --git a/mm/memcontrol.c b/mm/memcontrol.c
+index 49566afaef1c..d2a47428831b 100644
+--- a/mm/memcontrol.c
++++ b/mm/memcontrol.c
+@@ -2202,6 +2202,7 @@ void unlock_page_memcg(struct page *page)
+ EXPORT_SYMBOL(unlock_page_memcg);
+
+ struct memcg_stock_pcp {
++ local_lock_t lock;
+ struct mem_cgroup *cached; /* this never be root cgroup */
+ unsigned int nr_pages;
+
+@@ -2253,7 +2254,7 @@ static bool consume_stock(struct mem_cgroup *memcg, unsigned int nr_pages)
+ if (nr_pages > MEMCG_CHARGE_BATCH)
+ return ret;
+
+- local_irq_save(flags);
++ local_lock_irqsave(&memcg_stock.lock, flags);
+
+ stock = this_cpu_ptr(&memcg_stock);
+ if (memcg == stock->cached && stock->nr_pages >= nr_pages) {
+@@ -2261,7 +2262,7 @@ static bool consume_stock(struct mem_cgroup *memcg, unsigned int nr_pages)
+ ret = true;
+ }
+
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&memcg_stock.lock, flags);
+
+ return ret;
+ }
+@@ -2296,14 +2297,14 @@ static void drain_local_stock(struct work_struct *dummy)
+ * The only protection from memory hotplug vs. drain_stock races is
+ * that we always operate on local CPU stock here with IRQ disabled
+ */
+- local_irq_save(flags);
++ local_lock_irqsave(&memcg_stock.lock, flags);
+
+ stock = this_cpu_ptr(&memcg_stock);
+ drain_obj_stock(stock);
+ drain_stock(stock);
+ clear_bit(FLUSHING_CACHED_CHARGE, &stock->flags);
+
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&memcg_stock.lock, flags);
+ }
+
+ /*
+@@ -2315,7 +2316,7 @@ static void refill_stock(struct mem_cgroup *memcg, unsigned int nr_pages)
+ struct memcg_stock_pcp *stock;
+ unsigned long flags;
+
+- local_irq_save(flags);
++ local_lock_irqsave(&memcg_stock.lock, flags);
+
+ stock = this_cpu_ptr(&memcg_stock);
+ if (stock->cached != memcg) { /* reset if necessary */
+@@ -2328,7 +2329,7 @@ static void refill_stock(struct mem_cgroup *memcg, unsigned int nr_pages)
+ if (stock->nr_pages > MEMCG_CHARGE_BATCH)
+ drain_stock(stock);
+
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&memcg_stock.lock, flags);
+ }
+
+ /*
+@@ -3137,7 +3138,7 @@ static bool consume_obj_stock(struct obj_cgroup *objcg, unsigned int nr_bytes)
+ unsigned long flags;
+ bool ret = false;
+
+- local_irq_save(flags);
++ local_lock_irqsave(&memcg_stock.lock, flags);
+
+ stock = this_cpu_ptr(&memcg_stock);
+ if (objcg == stock->cached_objcg && stock->nr_bytes >= nr_bytes) {
+@@ -3145,7 +3146,7 @@ static bool consume_obj_stock(struct obj_cgroup *objcg, unsigned int nr_bytes)
+ ret = true;
+ }
+
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&memcg_stock.lock, flags);
+
+ return ret;
+ }
+@@ -3212,7 +3213,7 @@ static void refill_obj_stock(struct obj_cgroup *objcg, unsigned int nr_bytes)
+ struct memcg_stock_pcp *stock;
+ unsigned long flags;
+
+- local_irq_save(flags);
++ local_lock_irqsave(&memcg_stock.lock, flags);
+
+ stock = this_cpu_ptr(&memcg_stock);
+ if (stock->cached_objcg != objcg) { /* reset if necessary */
+@@ -3226,7 +3227,7 @@ static void refill_obj_stock(struct obj_cgroup *objcg, unsigned int nr_bytes)
+ if (stock->nr_bytes > PAGE_SIZE)
+ drain_obj_stock(stock);
+
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&memcg_stock.lock, flags);
+ }
+
+ int obj_cgroup_charge(struct obj_cgroup *objcg, gfp_t gfp, size_t size)
+@@ -7161,9 +7162,13 @@ static int __init mem_cgroup_init(void)
+ cpuhp_setup_state_nocalls(CPUHP_MM_MEMCQ_DEAD, "mm/memctrl:dead", NULL,
+ memcg_hotplug_cpu_dead);
+
+- for_each_possible_cpu(cpu)
+- INIT_WORK(&per_cpu_ptr(&memcg_stock, cpu)->work,
+- drain_local_stock);
++ for_each_possible_cpu(cpu) {
++ struct memcg_stock_pcp *stock;
++
++ stock = per_cpu_ptr(&memcg_stock, cpu);
++ INIT_WORK(&stock->work, drain_local_stock);
++ local_lock_init(&stock->lock);
++ }
+
+ for_each_node(node) {
+ struct mem_cgroup_tree_per_node *rtpn;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0208-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch b/debian/patches-rt/0208-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch
new file mode 100644
index 000000000..e1de69b43
--- /dev/null
+++ b/debian/patches-rt/0208-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch
@@ -0,0 +1,74 @@
+From 915ee75a3da5732cf20be8f92b31d3ce33042c5b Mon Sep 17 00:00:00 2001
+From: Yang Shi <yang.shi@windriver.com>
+Date: Wed, 30 Oct 2013 11:48:33 -0700
+Subject: [PATCH 208/323] mm/memcontrol: Don't call schedule_work_on in
+ preemption disabled context
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The following trace is triggered when running ltp oom test cases:
+
+BUG: sleeping function called from invalid context at kernel/rtmutex.c:659
+in_atomic(): 1, irqs_disabled(): 0, pid: 17188, name: oom03
+Preemption disabled at:[<ffffffff8112ba70>] mem_cgroup_reclaim+0x90/0xe0
+
+CPU: 2 PID: 17188 Comm: oom03 Not tainted 3.10.10-rt3 #2
+Hardware name: Intel Corporation Calpella platform/MATXM-CORE-411-B, BIOS 4.6.3 08/18/2010
+ffff88007684d730 ffff880070df9b58 ffffffff8169918d ffff880070df9b70
+ffffffff8106db31 ffff88007688b4a0 ffff880070df9b88 ffffffff8169d9c0
+ffff88007688b4a0 ffff880070df9bc8 ffffffff81059da1 0000000170df9bb0
+Call Trace:
+[<ffffffff8169918d>] dump_stack+0x19/0x1b
+[<ffffffff8106db31>] __might_sleep+0xf1/0x170
+[<ffffffff8169d9c0>] rt_spin_lock+0x20/0x50
+[<ffffffff81059da1>] queue_work_on+0x61/0x100
+[<ffffffff8112b361>] drain_all_stock+0xe1/0x1c0
+[<ffffffff8112ba70>] mem_cgroup_reclaim+0x90/0xe0
+[<ffffffff8112beda>] __mem_cgroup_try_charge+0x41a/0xc40
+[<ffffffff810f1c91>] ? release_pages+0x1b1/0x1f0
+[<ffffffff8106f200>] ? sched_exec+0x40/0xb0
+[<ffffffff8112cc87>] mem_cgroup_charge_common+0x37/0x70
+[<ffffffff8112e2c6>] mem_cgroup_newpage_charge+0x26/0x30
+[<ffffffff8110af68>] handle_pte_fault+0x618/0x840
+[<ffffffff8103ecf6>] ? unpin_current_cpu+0x16/0x70
+[<ffffffff81070f94>] ? migrate_enable+0xd4/0x200
+[<ffffffff8110cde5>] handle_mm_fault+0x145/0x1e0
+[<ffffffff810301e1>] __do_page_fault+0x1a1/0x4c0
+[<ffffffff8169c9eb>] ? preempt_schedule_irq+0x4b/0x70
+[<ffffffff8169e3b7>] ? retint_kernel+0x37/0x40
+[<ffffffff8103053e>] do_page_fault+0xe/0x10
+[<ffffffff8169e4c2>] page_fault+0x22/0x30
+
+So, to prevent schedule_work_on from being called in preempt disabled context,
+replace the pair of get/put_cpu() to get/put_cpu_light().
+
+Signed-off-by: Yang Shi <yang.shi@windriver.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/memcontrol.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/mm/memcontrol.c b/mm/memcontrol.c
+index d2a47428831b..53522a52ff15 100644
+--- a/mm/memcontrol.c
++++ b/mm/memcontrol.c
+@@ -2349,7 +2349,7 @@ static void drain_all_stock(struct mem_cgroup *root_memcg)
+ * as well as workers from this path always operate on the local
+ * per-cpu data. CPU up doesn't touch memcg_stock at all.
+ */
+- curcpu = get_cpu();
++ curcpu = get_cpu_light();
+ for_each_online_cpu(cpu) {
+ struct memcg_stock_pcp *stock = &per_cpu(memcg_stock, cpu);
+ struct mem_cgroup *memcg;
+@@ -2372,7 +2372,7 @@ static void drain_all_stock(struct mem_cgroup *root_memcg)
+ schedule_work_on(cpu, &stock->work);
+ }
+ }
+- put_cpu();
++ put_cpu_light();
+ mutex_unlock(&percpu_charge_mutex);
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0209-mm-memcontrol-Replace-local_irq_disable-with-local-l.patch b/debian/patches-rt/0209-mm-memcontrol-Replace-local_irq_disable-with-local-l.patch
new file mode 100644
index 000000000..143299bc1
--- /dev/null
+++ b/debian/patches-rt/0209-mm-memcontrol-Replace-local_irq_disable-with-local-l.patch
@@ -0,0 +1,123 @@
+From aed289fe7a9923b6c8a98fa08048d56aa97c71c4 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 28 Jan 2015 17:14:16 +0100
+Subject: [PATCH 209/323] mm/memcontrol: Replace local_irq_disable with local
+ locks
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+There are a few local_irq_disable() which then take sleeping locks. This
+patch converts them local locks.
+
+[bigeasy: Move unlock after memcg_check_events() in mem_cgroup_swapout(),
+ pointed out by Matt Fleming <matt@codeblueprint.co.uk>]
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/memcontrol.c | 29 +++++++++++++++++++++--------
+ 1 file changed, 21 insertions(+), 8 deletions(-)
+
+diff --git a/mm/memcontrol.c b/mm/memcontrol.c
+index 53522a52ff15..5bf696318643 100644
+--- a/mm/memcontrol.c
++++ b/mm/memcontrol.c
+@@ -63,6 +63,7 @@
+ #include <net/sock.h>
+ #include <net/ip.h>
+ #include "slab.h"
++#include <linux/local_lock.h>
+
+ #include <linux/uaccess.h>
+
+@@ -93,6 +94,13 @@ bool cgroup_memory_noswap __read_mostly;
+ static DECLARE_WAIT_QUEUE_HEAD(memcg_cgwb_frn_waitq);
+ #endif
+
++struct event_lock {
++ local_lock_t l;
++};
++static DEFINE_PER_CPU(struct event_lock, event_lock) = {
++ .l = INIT_LOCAL_LOCK(l),
++};
++
+ /* Whether legacy memory+swap accounting is active */
+ static bool do_memsw_account(void)
+ {
+@@ -5747,12 +5755,12 @@ static int mem_cgroup_move_account(struct page *page,
+
+ ret = 0;
+
+- local_irq_disable();
++ local_lock_irq(&event_lock.l);
+ mem_cgroup_charge_statistics(to, page, nr_pages);
+ memcg_check_events(to, page);
+ mem_cgroup_charge_statistics(from, page, -nr_pages);
+ memcg_check_events(from, page);
+- local_irq_enable();
++ local_unlock_irq(&event_lock.l);
+ out_unlock:
+ unlock_page(page);
+ out:
+@@ -6822,10 +6830,10 @@ int mem_cgroup_charge(struct page *page, struct mm_struct *mm, gfp_t gfp_mask)
+ css_get(&memcg->css);
+ commit_charge(page, memcg);
+
+- local_irq_disable();
++ local_lock_irq(&event_lock.l);
+ mem_cgroup_charge_statistics(memcg, page, nr_pages);
+ memcg_check_events(memcg, page);
+- local_irq_enable();
++ local_unlock_irq(&event_lock.l);
+
+ /*
+ * Cgroup1's unified memory+swap counter has been charged with the
+@@ -6881,11 +6889,11 @@ static void uncharge_batch(const struct uncharge_gather *ug)
+ memcg_oom_recover(ug->memcg);
+ }
+
+- local_irq_save(flags);
++ local_lock_irqsave(&event_lock.l, flags);
+ __count_memcg_events(ug->memcg, PGPGOUT, ug->pgpgout);
+ __this_cpu_add(ug->memcg->vmstats_percpu->nr_page_events, ug->nr_pages);
+ memcg_check_events(ug->memcg, ug->dummy_page);
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&event_lock.l, flags);
+
+ /* drop reference from uncharge_page */
+ css_put(&ug->memcg->css);
+@@ -7039,10 +7047,10 @@ void mem_cgroup_migrate(struct page *oldpage, struct page *newpage)
+ css_get(&memcg->css);
+ commit_charge(newpage, memcg);
+
+- local_irq_save(flags);
++ local_lock_irqsave(&event_lock.l, flags);
+ mem_cgroup_charge_statistics(memcg, newpage, nr_pages);
+ memcg_check_events(memcg, newpage);
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&event_lock.l, flags);
+ }
+
+ DEFINE_STATIC_KEY_FALSE(memcg_sockets_enabled_key);
+@@ -7217,6 +7225,7 @@ void mem_cgroup_swapout(struct page *page, swp_entry_t entry)
+ struct mem_cgroup *memcg, *swap_memcg;
+ unsigned int nr_entries;
+ unsigned short oldid;
++ unsigned long flags;
+
+ VM_BUG_ON_PAGE(PageLRU(page), page);
+ VM_BUG_ON_PAGE(page_count(page), page);
+@@ -7262,9 +7271,13 @@ void mem_cgroup_swapout(struct page *page, swp_entry_t entry)
+ * important here to have the interrupts disabled because it is the
+ * only synchronisation we have for updating the per-CPU variables.
+ */
++ local_lock_irqsave(&event_lock.l, flags);
++#ifndef CONFIG_PREEMPT_RT
+ VM_BUG_ON(!irqs_disabled());
++#endif
+ mem_cgroup_charge_statistics(memcg, page, -nr_entries);
+ memcg_check_events(memcg, page);
++ local_unlock_irqrestore(&event_lock.l, flags);
+
+ css_put(&memcg->css);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0210-mm-zsmalloc-copy-with-get_cpu_var-and-locking.patch b/debian/patches-rt/0210-mm-zsmalloc-copy-with-get_cpu_var-and-locking.patch
new file mode 100644
index 000000000..f48595a8d
--- /dev/null
+++ b/debian/patches-rt/0210-mm-zsmalloc-copy-with-get_cpu_var-and-locking.patch
@@ -0,0 +1,212 @@
+From 7e86ac4a42c020de9b35b02a3ef02f2fc0dee2ed Mon Sep 17 00:00:00 2001
+From: Mike Galbraith <umgwanakikbuti@gmail.com>
+Date: Tue, 22 Mar 2016 11:16:09 +0100
+Subject: [PATCH 210/323] mm/zsmalloc: copy with get_cpu_var() and locking
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+get_cpu_var() disables preemption and triggers a might_sleep() splat later.
+This is replaced with get_locked_var().
+This bitspinlocks are replaced with a proper mutex which requires a slightly
+larger struct to allocate.
+
+Signed-off-by: Mike Galbraith <umgwanakikbuti@gmail.com>
+[bigeasy: replace the bitspin_lock() with a mutex, get_locked_var(). Mike then
+fixed the size magic]
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/zsmalloc.c | 85 +++++++++++++++++++++++++++++++++++++++++++++++----
+ 1 file changed, 79 insertions(+), 6 deletions(-)
+
+diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c
+index c18dc8e61d35..7dad2ff3e778 100644
+--- a/mm/zsmalloc.c
++++ b/mm/zsmalloc.c
+@@ -57,6 +57,7 @@
+ #include <linux/wait.h>
+ #include <linux/pagemap.h>
+ #include <linux/fs.h>
++#include <linux/local_lock.h>
+
+ #define ZSPAGE_MAGIC 0x58
+
+@@ -77,6 +78,20 @@
+
+ #define ZS_HANDLE_SIZE (sizeof(unsigned long))
+
++#ifdef CONFIG_PREEMPT_RT
++
++struct zsmalloc_handle {
++ unsigned long addr;
++ struct mutex lock;
++};
++
++#define ZS_HANDLE_ALLOC_SIZE (sizeof(struct zsmalloc_handle))
++
++#else
++
++#define ZS_HANDLE_ALLOC_SIZE (sizeof(unsigned long))
++#endif
++
+ /*
+ * Object location (<PFN>, <obj_idx>) is encoded as
+ * a single (unsigned long) handle value.
+@@ -293,6 +308,7 @@ struct zspage {
+ };
+
+ struct mapping_area {
++ local_lock_t lock;
+ char *vm_buf; /* copy buffer for objects that span pages */
+ char *vm_addr; /* address of kmap_atomic()'ed pages */
+ enum zs_mapmode vm_mm; /* mapping mode */
+@@ -322,7 +338,7 @@ static void SetZsPageMovable(struct zs_pool *pool, struct zspage *zspage) {}
+
+ static int create_cache(struct zs_pool *pool)
+ {
+- pool->handle_cachep = kmem_cache_create("zs_handle", ZS_HANDLE_SIZE,
++ pool->handle_cachep = kmem_cache_create("zs_handle", ZS_HANDLE_ALLOC_SIZE,
+ 0, 0, NULL);
+ if (!pool->handle_cachep)
+ return 1;
+@@ -346,9 +362,26 @@ static void destroy_cache(struct zs_pool *pool)
+
+ static unsigned long cache_alloc_handle(struct zs_pool *pool, gfp_t gfp)
+ {
+- return (unsigned long)kmem_cache_alloc(pool->handle_cachep,
+- gfp & ~(__GFP_HIGHMEM|__GFP_MOVABLE));
++ void *p;
++
++ p = kmem_cache_alloc(pool->handle_cachep,
++ gfp & ~(__GFP_HIGHMEM|__GFP_MOVABLE));
++#ifdef CONFIG_PREEMPT_RT
++ if (p) {
++ struct zsmalloc_handle *zh = p;
++
++ mutex_init(&zh->lock);
++ }
++#endif
++ return (unsigned long)p;
++}
++
++#ifdef CONFIG_PREEMPT_RT
++static struct zsmalloc_handle *zs_get_pure_handle(unsigned long handle)
++{
++ return (void *)(handle &~((1 << OBJ_TAG_BITS) - 1));
+ }
++#endif
+
+ static void cache_free_handle(struct zs_pool *pool, unsigned long handle)
+ {
+@@ -368,12 +401,18 @@ static void cache_free_zspage(struct zs_pool *pool, struct zspage *zspage)
+
+ static void record_obj(unsigned long handle, unsigned long obj)
+ {
++#ifdef CONFIG_PREEMPT_RT
++ struct zsmalloc_handle *zh = zs_get_pure_handle(handle);
++
++ WRITE_ONCE(zh->addr, obj);
++#else
+ /*
+ * lsb of @obj represents handle lock while other bits
+ * represent object value the handle is pointing so
+ * updating shouldn't do store tearing.
+ */
+ WRITE_ONCE(*(unsigned long *)handle, obj);
++#endif
+ }
+
+ /* zpool driver */
+@@ -455,7 +494,10 @@ MODULE_ALIAS("zpool-zsmalloc");
+ #endif /* CONFIG_ZPOOL */
+
+ /* per-cpu VM mapping areas for zspage accesses that cross page boundaries */
+-static DEFINE_PER_CPU(struct mapping_area, zs_map_area);
++static DEFINE_PER_CPU(struct mapping_area, zs_map_area) = {
++ /* XXX remove this and use a spin_lock_t in pin_tag() */
++ .lock = INIT_LOCAL_LOCK(lock),
++};
+
+ static bool is_zspage_isolated(struct zspage *zspage)
+ {
+@@ -865,7 +907,13 @@ static unsigned long location_to_obj(struct page *page, unsigned int obj_idx)
+
+ static unsigned long handle_to_obj(unsigned long handle)
+ {
++#ifdef CONFIG_PREEMPT_RT
++ struct zsmalloc_handle *zh = zs_get_pure_handle(handle);
++
++ return zh->addr;
++#else
+ return *(unsigned long *)handle;
++#endif
+ }
+
+ static unsigned long obj_to_head(struct page *page, void *obj)
+@@ -879,22 +927,46 @@ static unsigned long obj_to_head(struct page *page, void *obj)
+
+ static inline int testpin_tag(unsigned long handle)
+ {
++#ifdef CONFIG_PREEMPT_RT
++ struct zsmalloc_handle *zh = zs_get_pure_handle(handle);
++
++ return mutex_is_locked(&zh->lock);
++#else
+ return bit_spin_is_locked(HANDLE_PIN_BIT, (unsigned long *)handle);
++#endif
+ }
+
+ static inline int trypin_tag(unsigned long handle)
+ {
++#ifdef CONFIG_PREEMPT_RT
++ struct zsmalloc_handle *zh = zs_get_pure_handle(handle);
++
++ return mutex_trylock(&zh->lock);
++#else
+ return bit_spin_trylock(HANDLE_PIN_BIT, (unsigned long *)handle);
++#endif
+ }
+
+ static void pin_tag(unsigned long handle) __acquires(bitlock)
+ {
++#ifdef CONFIG_PREEMPT_RT
++ struct zsmalloc_handle *zh = zs_get_pure_handle(handle);
++
++ return mutex_lock(&zh->lock);
++#else
+ bit_spin_lock(HANDLE_PIN_BIT, (unsigned long *)handle);
++#endif
+ }
+
+ static void unpin_tag(unsigned long handle) __releases(bitlock)
+ {
++#ifdef CONFIG_PREEMPT_RT
++ struct zsmalloc_handle *zh = zs_get_pure_handle(handle);
++
++ return mutex_unlock(&zh->lock);
++#else
+ bit_spin_unlock(HANDLE_PIN_BIT, (unsigned long *)handle);
++#endif
+ }
+
+ static void reset_page(struct page *page)
+@@ -1278,7 +1350,8 @@ void *zs_map_object(struct zs_pool *pool, unsigned long handle,
+ class = pool->size_class[class_idx];
+ off = (class->size * obj_idx) & ~PAGE_MASK;
+
+- area = &get_cpu_var(zs_map_area);
++ local_lock(&zs_map_area.lock);
++ area = this_cpu_ptr(&zs_map_area);
+ area->vm_mm = mm;
+ if (off + class->size <= PAGE_SIZE) {
+ /* this object is contained entirely within a page */
+@@ -1332,7 +1405,7 @@ void zs_unmap_object(struct zs_pool *pool, unsigned long handle)
+
+ __zs_unmap_object(area, pages, off, class->size);
+ }
+- put_cpu_var(zs_map_area);
++ local_unlock(&zs_map_area.lock);
+
+ migrate_read_unlock(zspage);
+ unpin_tag(handle);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0211-mm-zswap-Use-local-lock-to-protect-per-CPU-data.patch b/debian/patches-rt/0211-mm-zswap-Use-local-lock-to-protect-per-CPU-data.patch
new file mode 100644
index 000000000..772cff44a
--- /dev/null
+++ b/debian/patches-rt/0211-mm-zswap-Use-local-lock-to-protect-per-CPU-data.patch
@@ -0,0 +1,150 @@
+From 5bfa3eb76d50818c90253df970e7afbc747211c2 Mon Sep 17 00:00:00 2001
+From: "Luis Claudio R. Goncalves" <lgoncalv@redhat.com>
+Date: Tue, 25 Jun 2019 11:28:04 -0300
+Subject: [PATCH 211/323] mm/zswap: Use local lock to protect per-CPU data
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+zwap uses per-CPU compression. The per-CPU data pointer is acquired with
+get_cpu_ptr() which implicitly disables preemption. It allocates
+memory inside the preempt disabled region which conflicts with the
+PREEMPT_RT semantics.
+
+Replace the implicit preemption control with an explicit local lock.
+This allows RT kernels to substitute it with a real per CPU lock, which
+serializes the access but keeps the code section preemptible. On non RT
+kernels this maps to preempt_disable() as before, i.e. no functional
+change.
+
+[bigeasy: Use local_lock(), additional hunks, patch description]
+
+Cc: Seth Jennings <sjenning@redhat.com>
+Cc: Dan Streetman <ddstreet@ieee.org>
+Cc: Vitaly Wool <vitaly.wool@konsulko.com>
+Cc: Andrew Morton <akpm@linux-foundation.org>
+Cc: linux-mm@kvack.org
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ mm/zswap.c | 43 ++++++++++++++++++++++++++++---------------
+ 1 file changed, 28 insertions(+), 15 deletions(-)
+
+diff --git a/mm/zswap.c b/mm/zswap.c
+index fbb782924ccc..b24f761b9241 100644
+--- a/mm/zswap.c
++++ b/mm/zswap.c
+@@ -18,6 +18,7 @@
+ #include <linux/highmem.h>
+ #include <linux/slab.h>
+ #include <linux/spinlock.h>
++#include <linux/local_lock.h>
+ #include <linux/types.h>
+ #include <linux/atomic.h>
+ #include <linux/frontswap.h>
+@@ -387,27 +388,37 @@ static struct zswap_entry *zswap_entry_find_get(struct rb_root *root,
+ /*********************************
+ * per-cpu code
+ **********************************/
+-static DEFINE_PER_CPU(u8 *, zswap_dstmem);
++struct zswap_comp {
++ /* Used for per-CPU dstmem and tfm */
++ local_lock_t lock;
++ u8 *dstmem;
++};
++
++static DEFINE_PER_CPU(struct zswap_comp, zswap_comp) = {
++ .lock = INIT_LOCAL_LOCK(lock),
++};
+
+ static int zswap_dstmem_prepare(unsigned int cpu)
+ {
++ struct zswap_comp *zcomp;
+ u8 *dst;
+
+ dst = kmalloc_node(PAGE_SIZE * 2, GFP_KERNEL, cpu_to_node(cpu));
+ if (!dst)
+ return -ENOMEM;
+
+- per_cpu(zswap_dstmem, cpu) = dst;
++ zcomp = per_cpu_ptr(&zswap_comp, cpu);
++ zcomp->dstmem = dst;
+ return 0;
+ }
+
+ static int zswap_dstmem_dead(unsigned int cpu)
+ {
+- u8 *dst;
++ struct zswap_comp *zcomp;
+
+- dst = per_cpu(zswap_dstmem, cpu);
+- kfree(dst);
+- per_cpu(zswap_dstmem, cpu) = NULL;
++ zcomp = per_cpu_ptr(&zswap_comp, cpu);
++ kfree(zcomp->dstmem);
++ zcomp->dstmem = NULL;
+
+ return 0;
+ }
+@@ -919,10 +930,11 @@ static int zswap_writeback_entry(struct zpool *pool, unsigned long handle)
+ dlen = PAGE_SIZE;
+ src = (u8 *)zhdr + sizeof(struct zswap_header);
+ dst = kmap_atomic(page);
+- tfm = *get_cpu_ptr(entry->pool->tfm);
++ local_lock(&zswap_comp.lock);
++ tfm = *this_cpu_ptr(entry->pool->tfm);
+ ret = crypto_comp_decompress(tfm, src, entry->length,
+ dst, &dlen);
+- put_cpu_ptr(entry->pool->tfm);
++ local_unlock(&zswap_comp.lock);
+ kunmap_atomic(dst);
+ BUG_ON(ret);
+ BUG_ON(dlen != PAGE_SIZE);
+@@ -1074,12 +1086,12 @@ static int zswap_frontswap_store(unsigned type, pgoff_t offset,
+ }
+
+ /* compress */
+- dst = get_cpu_var(zswap_dstmem);
+- tfm = *get_cpu_ptr(entry->pool->tfm);
++ local_lock(&zswap_comp.lock);
++ dst = *this_cpu_ptr(&zswap_comp.dstmem);
++ tfm = *this_cpu_ptr(entry->pool->tfm);
+ src = kmap_atomic(page);
+ ret = crypto_comp_compress(tfm, src, PAGE_SIZE, dst, &dlen);
+ kunmap_atomic(src);
+- put_cpu_ptr(entry->pool->tfm);
+ if (ret) {
+ ret = -EINVAL;
+ goto put_dstmem;
+@@ -1103,7 +1115,7 @@ static int zswap_frontswap_store(unsigned type, pgoff_t offset,
+ memcpy(buf, &zhdr, hlen);
+ memcpy(buf + hlen, dst, dlen);
+ zpool_unmap_handle(entry->pool->zpool, handle);
+- put_cpu_var(zswap_dstmem);
++ local_unlock(&zswap_comp.lock);
+
+ /* populate entry */
+ entry->offset = offset;
+@@ -1131,7 +1143,7 @@ static int zswap_frontswap_store(unsigned type, pgoff_t offset,
+ return 0;
+
+ put_dstmem:
+- put_cpu_var(zswap_dstmem);
++ local_unlock(&zswap_comp.lock);
+ zswap_pool_put(entry->pool);
+ freepage:
+ zswap_entry_cache_free(entry);
+@@ -1176,9 +1188,10 @@ static int zswap_frontswap_load(unsigned type, pgoff_t offset,
+ if (zpool_evictable(entry->pool->zpool))
+ src += sizeof(struct zswap_header);
+ dst = kmap_atomic(page);
+- tfm = *get_cpu_ptr(entry->pool->tfm);
++ local_lock(&zswap_comp.lock);
++ tfm = *this_cpu_ptr(entry->pool->tfm);
+ ret = crypto_comp_decompress(tfm, src, entry->length, dst, &dlen);
+- put_cpu_ptr(entry->pool->tfm);
++ local_unlock(&zswap_comp.lock);
+ kunmap_atomic(dst);
+ zpool_unmap_handle(entry->pool->zpool, entry->handle);
+ BUG_ON(ret);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0212-x86-kvm-Require-const-tsc-for-RT.patch b/debian/patches-rt/0212-x86-kvm-Require-const-tsc-for-RT.patch
new file mode 100644
index 000000000..461bb6d81
--- /dev/null
+++ b/debian/patches-rt/0212-x86-kvm-Require-const-tsc-for-RT.patch
@@ -0,0 +1,38 @@
+From 6ef3a23d8f37d55fa94b9f1212830a3b8018c76f Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Sun, 6 Nov 2011 12:26:18 +0100
+Subject: [PATCH 212/323] x86: kvm Require const tsc for RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Non constant TSC is a nightmare on bare metal already, but with
+virtualization it becomes a complete disaster because the workarounds
+are horrible latency wise. That's also a preliminary for running RT in
+a guest on top of a RT host.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ arch/x86/kvm/x86.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
+index 13e4699a0744..21a1aa76eb23 100644
+--- a/arch/x86/kvm/x86.c
++++ b/arch/x86/kvm/x86.c
+@@ -8167,6 +8167,14 @@ int kvm_arch_init(void *opaque)
+ goto out;
+ }
+
++#ifdef CONFIG_PREEMPT_RT
++ if (!boot_cpu_has(X86_FEATURE_CONSTANT_TSC)) {
++ pr_err("RT requires X86_FEATURE_CONSTANT_TSC\n");
++ r = -EOPNOTSUPP;
++ goto out;
++ }
++#endif
++
+ r = -ENOMEM;
+ x86_fpu_cache = kmem_cache_create("x86_fpu", sizeof(struct fpu),
+ __alignof__(struct fpu), SLAB_ACCOUNT,
+--
+2.43.0
+
diff --git a/debian/patches-rt/0213-wait.h-include-atomic.h.patch b/debian/patches-rt/0213-wait.h-include-atomic.h.patch
new file mode 100644
index 000000000..1d060be29
--- /dev/null
+++ b/debian/patches-rt/0213-wait.h-include-atomic.h.patch
@@ -0,0 +1,42 @@
+From 25ddd3a9a10e8b30e5c6ff85e57532a5f20ffa9d Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Mon, 28 Oct 2013 12:19:57 +0100
+Subject: [PATCH 213/323] wait.h: include atomic.h
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+| CC init/main.o
+|In file included from include/linux/mmzone.h:9:0,
+| from include/linux/gfp.h:4,
+| from include/linux/kmod.h:22,
+| from include/linux/module.h:13,
+| from init/main.c:15:
+|include/linux/wait.h: In function ‘wait_on_atomic_t’:
+|include/linux/wait.h:982:2: error: implicit declaration of function ‘atomic_read’ [-Werror=implicit-function-declaration]
+| if (atomic_read(val) == 0)
+| ^
+
+This pops up on ARM. Non-RT gets its atomic.h include from spinlock.h
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/wait.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/include/linux/wait.h b/include/linux/wait.h
+index 1663e47681a3..20aae69387aa 100644
+--- a/include/linux/wait.h
++++ b/include/linux/wait.h
+@@ -10,6 +10,7 @@
+
+ #include <asm/current.h>
+ #include <uapi/linux/wait.h>
++#include <linux/atomic.h>
+
+ typedef struct wait_queue_entry wait_queue_entry_t;
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0214-sched-Limit-the-number-of-task-migrations-per-batch.patch b/debian/patches-rt/0214-sched-Limit-the-number-of-task-migrations-per-batch.patch
new file mode 100644
index 000000000..c157da12c
--- /dev/null
+++ b/debian/patches-rt/0214-sched-Limit-the-number-of-task-migrations-per-batch.patch
@@ -0,0 +1,33 @@
+From a178dbd2a3f8eeedf39cde9582a29bc95f335b17 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Mon, 6 Jun 2011 12:12:51 +0200
+Subject: [PATCH 214/323] sched: Limit the number of task migrations per batch
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Put an upper limit on the number of tasks which are migrated per batch
+to avoid large latencies.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ kernel/sched/core.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index aaeed4b14278..3d7e9ecbd376 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -65,7 +65,11 @@ const_debug unsigned int sysctl_sched_features =
+ * Number of tasks to iterate in a single balance run.
+ * Limited because this is done with IRQs disabled.
+ */
++#ifdef CONFIG_PREEMPT_RT
++const_debug unsigned int sysctl_sched_nr_migrate = 8;
++#else
+ const_debug unsigned int sysctl_sched_nr_migrate = 32;
++#endif
+
+ /*
+ * period over which we measure -rt task CPU usage in us.
+--
+2.43.0
+
diff --git a/debian/patches-rt/0215-sched-Move-mmdrop-to-RCU-on-RT.patch b/debian/patches-rt/0215-sched-Move-mmdrop-to-RCU-on-RT.patch
new file mode 100644
index 000000000..caf0a9bc6
--- /dev/null
+++ b/debian/patches-rt/0215-sched-Move-mmdrop-to-RCU-on-RT.patch
@@ -0,0 +1,115 @@
+From e29feec1bad5cc39575600e68d6f5523b17c189a Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Mon, 6 Jun 2011 12:20:33 +0200
+Subject: [PATCH 215/323] sched: Move mmdrop to RCU on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Takes sleeping locks and calls into the memory allocator, so nothing
+we want to do in task switch and oder atomic contexts.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/mm_types.h | 4 ++++
+ include/linux/sched/mm.h | 11 +++++++++++
+ kernel/fork.c | 13 +++++++++++++
+ kernel/sched/core.c | 7 ++++++-
+ 4 files changed, 34 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h
+index 4eb38918da8f..2a83d965b00e 100644
+--- a/include/linux/mm_types.h
++++ b/include/linux/mm_types.h
+@@ -12,6 +12,7 @@
+ #include <linux/completion.h>
+ #include <linux/cpumask.h>
+ #include <linux/uprobes.h>
++#include <linux/rcupdate.h>
+ #include <linux/page-flags-layout.h>
+ #include <linux/workqueue.h>
+ #include <linux/seqlock.h>
+@@ -570,6 +571,9 @@ struct mm_struct {
+ bool tlb_flush_batched;
+ #endif
+ struct uprobes_state uprobes_state;
++#ifdef CONFIG_PREEMPT_RT
++ struct rcu_head delayed_drop;
++#endif
+ #ifdef CONFIG_HUGETLB_PAGE
+ atomic_long_t hugetlb_usage;
+ #endif
+diff --git a/include/linux/sched/mm.h b/include/linux/sched/mm.h
+index e3e5e149b00e..6d39ad0f55bb 100644
+--- a/include/linux/sched/mm.h
++++ b/include/linux/sched/mm.h
+@@ -49,6 +49,17 @@ static inline void mmdrop(struct mm_struct *mm)
+ __mmdrop(mm);
+ }
+
++#ifdef CONFIG_PREEMPT_RT
++extern void __mmdrop_delayed(struct rcu_head *rhp);
++static inline void mmdrop_delayed(struct mm_struct *mm)
++{
++ if (atomic_dec_and_test(&mm->mm_count))
++ call_rcu(&mm->delayed_drop, __mmdrop_delayed);
++}
++#else
++# define mmdrop_delayed(mm) mmdrop(mm)
++#endif
++
+ /**
+ * mmget() - Pin the address space associated with a &struct mm_struct.
+ * @mm: The address space to pin.
+diff --git a/kernel/fork.c b/kernel/fork.c
+index 32b9d7205ac1..078058436f2f 100644
+--- a/kernel/fork.c
++++ b/kernel/fork.c
+@@ -691,6 +691,19 @@ void __mmdrop(struct mm_struct *mm)
+ }
+ EXPORT_SYMBOL_GPL(__mmdrop);
+
++#ifdef CONFIG_PREEMPT_RT
++/*
++ * RCU callback for delayed mm drop. Not strictly rcu, but we don't
++ * want another facility to make this work.
++ */
++void __mmdrop_delayed(struct rcu_head *rhp)
++{
++ struct mm_struct *mm = container_of(rhp, struct mm_struct, delayed_drop);
++
++ __mmdrop(mm);
++}
++#endif
++
+ static void mmdrop_async_fn(struct work_struct *work)
+ {
+ struct mm_struct *mm;
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 3d7e9ecbd376..5e5d28f5d970 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -4269,9 +4269,13 @@ static struct rq *finish_task_switch(struct task_struct *prev)
+ * provided by mmdrop(),
+ * - a sync_core for SYNC_CORE.
+ */
++ /*
++ * We use mmdrop_delayed() here so we don't have to do the
++ * full __mmdrop() when we are the last user.
++ */
+ if (mm) {
+ membarrier_mm_sync_core_before_usermode(mm);
+- mmdrop(mm);
++ mmdrop_delayed(mm);
+ }
+ if (unlikely(prev_state == TASK_DEAD)) {
+ if (prev->sched_class->task_dead)
+@@ -7264,6 +7268,7 @@ void sched_setnuma(struct task_struct *p, int nid)
+ #endif /* CONFIG_NUMA_BALANCING */
+
+ #ifdef CONFIG_HOTPLUG_CPU
++
+ /*
+ * Ensure that the idle task is using init_mm right before its CPU goes
+ * offline.
+--
+2.43.0
+
diff --git a/debian/patches-rt/0216-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch b/debian/patches-rt/0216-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch
new file mode 100644
index 000000000..c420a7438
--- /dev/null
+++ b/debian/patches-rt/0216-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch
@@ -0,0 +1,81 @@
+From 0d19bdfa59a3f9976aacac9944e5c2519f1a508b Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Mon, 21 Nov 2016 19:31:08 +0100
+Subject: [PATCH 216/323] kernel/sched: move stack + kprobe clean up to
+ __put_task_struct()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+There is no need to free the stack before the task struct (except for reasons
+mentioned in commit 68f24b08ee89 ("sched/core: Free the stack early if
+CONFIG_THREAD_INFO_IN_TASK")). This also comes handy on -RT because we can't
+free memory in preempt disabled region.
+vfree_atomic() delays the memory cleanup to a worker. Since we move everything
+to the RCU callback, we can also free it immediately.
+
+Cc: stable-rt@vger.kernel.org #for kprobe_flush_task()
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/fork.c | 12 +++++++++++-
+ kernel/sched/core.c | 9 ---------
+ 2 files changed, 11 insertions(+), 10 deletions(-)
+
+diff --git a/kernel/fork.c b/kernel/fork.c
+index 078058436f2f..2a11bf5f9e30 100644
+--- a/kernel/fork.c
++++ b/kernel/fork.c
+@@ -42,6 +42,7 @@
+ #include <linux/mmu_notifier.h>
+ #include <linux/fs.h>
+ #include <linux/mm.h>
++#include <linux/kprobes.h>
+ #include <linux/vmacache.h>
+ #include <linux/nsproxy.h>
+ #include <linux/capability.h>
+@@ -288,7 +289,7 @@ static inline void free_thread_stack(struct task_struct *tsk)
+ return;
+ }
+
+- vfree_atomic(tsk->stack);
++ vfree(tsk->stack);
+ return;
+ }
+ #endif
+@@ -745,6 +746,15 @@ void __put_task_struct(struct task_struct *tsk)
+ WARN_ON(refcount_read(&tsk->usage));
+ WARN_ON(tsk == current);
+
++ /*
++ * Remove function-return probe instances associated with this
++ * task and put them back on the free list.
++ */
++ kprobe_flush_task(tsk);
++
++ /* Task is done with its stack. */
++ put_task_stack(tsk);
++
+ io_uring_free(tsk);
+ cgroup_free(tsk);
+ task_numa_free(tsk, true);
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 5e5d28f5d970..81bc9efbd191 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -4281,15 +4281,6 @@ static struct rq *finish_task_switch(struct task_struct *prev)
+ if (prev->sched_class->task_dead)
+ prev->sched_class->task_dead(prev);
+
+- /*
+- * Remove function-return probe instances associated with this
+- * task and put them back on the free list.
+- */
+- kprobe_flush_task(prev);
+-
+- /* Task is done with its stack. */
+- put_task_stack(prev);
+-
+ put_task_struct_rcu_user(prev);
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0217-sched-Do-not-account-rcu_preempt_depth-on-RT-in-migh.patch b/debian/patches-rt/0217-sched-Do-not-account-rcu_preempt_depth-on-RT-in-migh.patch
new file mode 100644
index 000000000..71686f72d
--- /dev/null
+++ b/debian/patches-rt/0217-sched-Do-not-account-rcu_preempt_depth-on-RT-in-migh.patch
@@ -0,0 +1,57 @@
+From 55d4bd8636745b8d1b987b6561ae2b14cebace78 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 7 Jun 2011 09:19:06 +0200
+Subject: [PATCH 217/323] sched: Do not account rcu_preempt_depth on RT in
+ might_sleep()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+RT changes the rcu_preempt_depth semantics, so we cannot check for it
+in might_sleep().
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/rcupdate.h | 7 +++++++
+ kernel/sched/core.c | 2 +-
+ 2 files changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/rcupdate.h b/include/linux/rcupdate.h
+index bb9681309e0d..cbeea5c61a3a 100644
+--- a/include/linux/rcupdate.h
++++ b/include/linux/rcupdate.h
+@@ -54,6 +54,11 @@ void __rcu_read_unlock(void);
+ * types of kernel builds, the rcu_read_lock() nesting depth is unknowable.
+ */
+ #define rcu_preempt_depth() (current->rcu_read_lock_nesting)
++#ifndef CONFIG_PREEMPT_RT
++#define sched_rcu_preempt_depth() rcu_preempt_depth()
++#else
++static inline int sched_rcu_preempt_depth(void) { return 0; }
++#endif
+
+ #else /* #ifdef CONFIG_PREEMPT_RCU */
+
+@@ -79,6 +84,8 @@ static inline int rcu_preempt_depth(void)
+ return 0;
+ }
+
++#define sched_rcu_preempt_depth() rcu_preempt_depth()
++
+ #endif /* #else #ifdef CONFIG_PREEMPT_RCU */
+
+ /* Internal to kernel */
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 81bc9efbd191..2f689b4fa68b 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -7878,7 +7878,7 @@ void __init sched_init(void)
+ #ifdef CONFIG_DEBUG_ATOMIC_SLEEP
+ static inline int preempt_count_equals(int preempt_offset)
+ {
+- int nested = preempt_count() + rcu_preempt_depth();
++ int nested = preempt_count() + sched_rcu_preempt_depth();
+
+ return (nested == preempt_offset);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0218-sched-Disable-TTWU_QUEUE-on-RT.patch b/debian/patches-rt/0218-sched-Disable-TTWU_QUEUE-on-RT.patch
new file mode 100644
index 000000000..77eb3b029
--- /dev/null
+++ b/debian/patches-rt/0218-sched-Disable-TTWU_QUEUE-on-RT.patch
@@ -0,0 +1,38 @@
+From 5b867d72795af288909e6370aabef927a70c8d78 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 13 Sep 2011 16:42:35 +0200
+Subject: [PATCH 218/323] sched: Disable TTWU_QUEUE on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The queued remote wakeup mechanism can introduce rather large
+latencies if the number of migrated tasks is high. Disable it for RT.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ kernel/sched/features.h | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/kernel/sched/features.h b/kernel/sched/features.h
+index f1bf5e12d889..402fd37fb340 100644
+--- a/kernel/sched/features.h
++++ b/kernel/sched/features.h
+@@ -45,11 +45,16 @@ SCHED_FEAT(DOUBLE_TICK, false)
+ */
+ SCHED_FEAT(NONTASK_CAPACITY, true)
+
++#ifdef CONFIG_PREEMPT_RT
++SCHED_FEAT(TTWU_QUEUE, false)
++#else
++
+ /*
+ * Queue remote wakeups on the target CPU and process them
+ * using the scheduler IPI. Reduces rq->lock contention/bounces.
+ */
+ SCHED_FEAT(TTWU_QUEUE, true)
++#endif
+
+ /*
+ * When doing wakeups, attempt to limit superfluous scans of the LLC domain.
+--
+2.43.0
+
diff --git a/debian/patches-rt/0219-softirq-Check-preemption-after-reenabling-interrupts.patch b/debian/patches-rt/0219-softirq-Check-preemption-after-reenabling-interrupts.patch
new file mode 100644
index 000000000..173c118c2
--- /dev/null
+++ b/debian/patches-rt/0219-softirq-Check-preemption-after-reenabling-interrupts.patch
@@ -0,0 +1,151 @@
+From c63275b524df4d3556c7cf1690bc874d4a8cd72e Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Sun, 13 Nov 2011 17:17:09 +0100
+Subject: [PATCH 219/323] softirq: Check preemption after reenabling interrupts
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+raise_softirq_irqoff() disables interrupts and wakes the softirq
+daemon, but after reenabling interrupts there is no preemption check,
+so the execution of the softirq thread might be delayed arbitrarily.
+
+In principle we could add that check to local_irq_enable/restore, but
+that's overkill as the rasie_softirq_irqoff() sections are the only
+ones which show this behaviour.
+
+Reported-by: Carsten Emde <cbe@osadl.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/preempt.h | 3 +++
+ lib/irq_poll.c | 5 +++++
+ net/core/dev.c | 7 +++++++
+ 3 files changed, 15 insertions(+)
+
+diff --git a/include/linux/preempt.h b/include/linux/preempt.h
+index 5ceac863e729..fb140e00f74d 100644
+--- a/include/linux/preempt.h
++++ b/include/linux/preempt.h
+@@ -190,8 +190,10 @@ do { \
+
+ #ifdef CONFIG_PREEMPT_RT
+ # define preempt_enable_no_resched() sched_preempt_enable_no_resched()
++# define preempt_check_resched_rt() preempt_check_resched()
+ #else
+ # define preempt_enable_no_resched() preempt_enable()
++# define preempt_check_resched_rt() barrier();
+ #endif
+
+ #define preemptible() (preempt_count() == 0 && !irqs_disabled())
+@@ -262,6 +264,7 @@ do { \
+ #define preempt_disable_notrace() barrier()
+ #define preempt_enable_no_resched_notrace() barrier()
+ #define preempt_enable_notrace() barrier()
++#define preempt_check_resched_rt() barrier()
+ #define preemptible() 0
+
+ #endif /* CONFIG_PREEMPT_COUNT */
+diff --git a/lib/irq_poll.c b/lib/irq_poll.c
+index 2f17b488d58e..7557bf7ecf1f 100644
+--- a/lib/irq_poll.c
++++ b/lib/irq_poll.c
+@@ -37,6 +37,7 @@ void irq_poll_sched(struct irq_poll *iop)
+ list_add_tail(&iop->list, this_cpu_ptr(&blk_cpu_iopoll));
+ raise_softirq_irqoff(IRQ_POLL_SOFTIRQ);
+ local_irq_restore(flags);
++ preempt_check_resched_rt();
+ }
+ EXPORT_SYMBOL(irq_poll_sched);
+
+@@ -72,6 +73,7 @@ void irq_poll_complete(struct irq_poll *iop)
+ local_irq_save(flags);
+ __irq_poll_complete(iop);
+ local_irq_restore(flags);
++ preempt_check_resched_rt();
+ }
+ EXPORT_SYMBOL(irq_poll_complete);
+
+@@ -96,6 +98,7 @@ static void __latent_entropy irq_poll_softirq(struct softirq_action *h)
+ }
+
+ local_irq_enable();
++ preempt_check_resched_rt();
+
+ /* Even though interrupts have been re-enabled, this
+ * access is safe because interrupts can only add new
+@@ -133,6 +136,7 @@ static void __latent_entropy irq_poll_softirq(struct softirq_action *h)
+ __raise_softirq_irqoff(IRQ_POLL_SOFTIRQ);
+
+ local_irq_enable();
++ preempt_check_resched_rt();
+ }
+
+ /**
+@@ -196,6 +200,7 @@ static int irq_poll_cpu_dead(unsigned int cpu)
+ this_cpu_ptr(&blk_cpu_iopoll));
+ __raise_softirq_irqoff(IRQ_POLL_SOFTIRQ);
+ local_irq_enable();
++ preempt_check_resched_rt();
+
+ return 0;
+ }
+diff --git a/net/core/dev.c b/net/core/dev.c
+index 3fc27b52bf42..3f23ac2ad497 100644
+--- a/net/core/dev.c
++++ b/net/core/dev.c
+@@ -3052,6 +3052,7 @@ static void __netif_reschedule(struct Qdisc *q)
+ sd->output_queue_tailp = &q->next_sched;
+ raise_softirq_irqoff(NET_TX_SOFTIRQ);
+ local_irq_restore(flags);
++ preempt_check_resched_rt();
+ }
+
+ void __netif_schedule(struct Qdisc *q)
+@@ -3114,6 +3115,7 @@ void __dev_kfree_skb_irq(struct sk_buff *skb, enum skb_free_reason reason)
+ __this_cpu_write(softnet_data.completion_queue, skb);
+ raise_softirq_irqoff(NET_TX_SOFTIRQ);
+ local_irq_restore(flags);
++ preempt_check_resched_rt();
+ }
+ EXPORT_SYMBOL(__dev_kfree_skb_irq);
+
+@@ -4596,6 +4598,7 @@ static int enqueue_to_backlog(struct sk_buff *skb, int cpu,
+ rps_unlock(sd);
+
+ local_irq_restore(flags);
++ preempt_check_resched_rt();
+
+ atomic_long_inc(&skb->dev->rx_dropped);
+ kfree_skb(skb);
+@@ -6348,12 +6351,14 @@ static void net_rps_action_and_irq_enable(struct softnet_data *sd)
+ sd->rps_ipi_list = NULL;
+
+ local_irq_enable();
++ preempt_check_resched_rt();
+
+ /* Send pending IPI's to kick RPS processing on remote cpus. */
+ net_rps_send_ipi(remsd);
+ } else
+ #endif
+ local_irq_enable();
++ preempt_check_resched_rt();
+ }
+
+ static bool sd_has_rps_ipi_waiting(struct softnet_data *sd)
+@@ -6431,6 +6436,7 @@ void __napi_schedule(struct napi_struct *n)
+ local_irq_save(flags);
+ ____napi_schedule(this_cpu_ptr(&softnet_data), n);
+ local_irq_restore(flags);
++ preempt_check_resched_rt();
+ }
+ EXPORT_SYMBOL(__napi_schedule);
+
+@@ -10962,6 +10968,7 @@ static int dev_cpu_dead(unsigned int oldcpu)
+
+ raise_softirq_irqoff(NET_TX_SOFTIRQ);
+ local_irq_enable();
++ preempt_check_resched_rt();
+
+ #ifdef CONFIG_RPS
+ remsd = oldsd->rps_ipi_list;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0220-softirq-Disable-softirq-stacks-for-RT.patch b/debian/patches-rt/0220-softirq-Disable-softirq-stacks-for-RT.patch
new file mode 100644
index 000000000..90e5f9abf
--- /dev/null
+++ b/debian/patches-rt/0220-softirq-Disable-softirq-stacks-for-RT.patch
@@ -0,0 +1,168 @@
+From 539938b186e370ddf9bfc1d68703cfddf80a3f42 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Mon, 18 Jul 2011 13:59:17 +0200
+Subject: [PATCH 220/323] softirq: Disable softirq stacks for RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Disable extra stacks for softirqs. We want to preempt softirqs and
+having them on special IRQ-stack does not make this easier.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ arch/powerpc/kernel/irq.c | 2 ++
+ arch/powerpc/kernel/misc_32.S | 2 ++
+ arch/powerpc/kernel/misc_64.S | 2 ++
+ arch/sh/kernel/irq.c | 2 ++
+ arch/sparc/kernel/irq_64.c | 2 ++
+ arch/x86/kernel/irq_32.c | 2 ++
+ arch/x86/kernel/irq_64.c | 2 ++
+ include/linux/interrupt.h | 2 +-
+ 8 files changed, 15 insertions(+), 1 deletion(-)
+
+diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c
+index e8a548447dd6..5ad4f27cba10 100644
+--- a/arch/powerpc/kernel/irq.c
++++ b/arch/powerpc/kernel/irq.c
+@@ -753,10 +753,12 @@ void *mcheckirq_ctx[NR_CPUS] __read_mostly;
+ void *softirq_ctx[NR_CPUS] __read_mostly;
+ void *hardirq_ctx[NR_CPUS] __read_mostly;
+
++#ifndef CONFIG_PREEMPT_RT
+ void do_softirq_own_stack(void)
+ {
+ call_do_softirq(softirq_ctx[smp_processor_id()]);
+ }
++#endif
+
+ irq_hw_number_t virq_to_hw(unsigned int virq)
+ {
+diff --git a/arch/powerpc/kernel/misc_32.S b/arch/powerpc/kernel/misc_32.S
+index 717e658b90fd..08ee95ad6593 100644
+--- a/arch/powerpc/kernel/misc_32.S
++++ b/arch/powerpc/kernel/misc_32.S
+@@ -31,6 +31,7 @@
+ * We store the saved ksp_limit in the unused part
+ * of the STACK_FRAME_OVERHEAD
+ */
++#ifndef CONFIG_PREEMPT_RT
+ _GLOBAL(call_do_softirq)
+ mflr r0
+ stw r0,4(r1)
+@@ -46,6 +47,7 @@ _GLOBAL(call_do_softirq)
+ stw r10,THREAD+KSP_LIMIT(r2)
+ mtlr r0
+ blr
++#endif
+
+ /*
+ * void call_do_irq(struct pt_regs *regs, void *sp);
+diff --git a/arch/powerpc/kernel/misc_64.S b/arch/powerpc/kernel/misc_64.S
+index 070465825c21..a6b33f7b3264 100644
+--- a/arch/powerpc/kernel/misc_64.S
++++ b/arch/powerpc/kernel/misc_64.S
+@@ -27,6 +27,7 @@
+
+ .text
+
++#ifndef CONFIG_PREEMPT_RT
+ _GLOBAL(call_do_softirq)
+ mflr r0
+ std r0,16(r1)
+@@ -37,6 +38,7 @@ _GLOBAL(call_do_softirq)
+ ld r0,16(r1)
+ mtlr r0
+ blr
++#endif
+
+ _GLOBAL(call_do_irq)
+ mflr r0
+diff --git a/arch/sh/kernel/irq.c b/arch/sh/kernel/irq.c
+index ab5f790b0cd2..5db7af565dec 100644
+--- a/arch/sh/kernel/irq.c
++++ b/arch/sh/kernel/irq.c
+@@ -148,6 +148,7 @@ void irq_ctx_exit(int cpu)
+ hardirq_ctx[cpu] = NULL;
+ }
+
++#ifndef CONFIG_PREEMPT_RT
+ void do_softirq_own_stack(void)
+ {
+ struct thread_info *curctx;
+@@ -175,6 +176,7 @@ void do_softirq_own_stack(void)
+ "r5", "r6", "r7", "r8", "r9", "r15", "t", "pr"
+ );
+ }
++#endif
+ #else
+ static inline void handle_one_irq(unsigned int irq)
+ {
+diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c
+index 3ec9f1402aad..eb21682abfcb 100644
+--- a/arch/sparc/kernel/irq_64.c
++++ b/arch/sparc/kernel/irq_64.c
+@@ -854,6 +854,7 @@ void __irq_entry handler_irq(int pil, struct pt_regs *regs)
+ set_irq_regs(old_regs);
+ }
+
++#ifndef CONFIG_PREEMPT_RT
+ void do_softirq_own_stack(void)
+ {
+ void *orig_sp, *sp = softirq_stack[smp_processor_id()];
+@@ -868,6 +869,7 @@ void do_softirq_own_stack(void)
+ __asm__ __volatile__("mov %0, %%sp"
+ : : "r" (orig_sp));
+ }
++#endif
+
+ #ifdef CONFIG_HOTPLUG_CPU
+ void fixup_irqs(void)
+diff --git a/arch/x86/kernel/irq_32.c b/arch/x86/kernel/irq_32.c
+index 0b79efc87be5..93c6b88b382a 100644
+--- a/arch/x86/kernel/irq_32.c
++++ b/arch/x86/kernel/irq_32.c
+@@ -131,6 +131,7 @@ int irq_init_percpu_irqstack(unsigned int cpu)
+ return 0;
+ }
+
++#ifndef CONFIG_PREEMPT_RT
+ void do_softirq_own_stack(void)
+ {
+ struct irq_stack *irqstk;
+@@ -147,6 +148,7 @@ void do_softirq_own_stack(void)
+
+ call_on_stack(__do_softirq, isp);
+ }
++#endif
+
+ void __handle_irq(struct irq_desc *desc, struct pt_regs *regs)
+ {
+diff --git a/arch/x86/kernel/irq_64.c b/arch/x86/kernel/irq_64.c
+index 440eed558558..7cfc4e6b7c94 100644
+--- a/arch/x86/kernel/irq_64.c
++++ b/arch/x86/kernel/irq_64.c
+@@ -72,7 +72,9 @@ int irq_init_percpu_irqstack(unsigned int cpu)
+ return map_irq_stack(cpu);
+ }
+
++#ifndef CONFIG_PREEMPT_RT
+ void do_softirq_own_stack(void)
+ {
+ run_on_irqstack_cond(__do_softirq, NULL);
+ }
++#endif
+diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h
+index a1c64d969532..7f185482ea22 100644
+--- a/include/linux/interrupt.h
++++ b/include/linux/interrupt.h
+@@ -564,7 +564,7 @@ struct softirq_action
+ asmlinkage void do_softirq(void);
+ asmlinkage void __do_softirq(void);
+
+-#ifdef __ARCH_HAS_DO_SOFTIRQ
++#if defined(__ARCH_HAS_DO_SOFTIRQ) && !defined(CONFIG_PREEMPT_RT)
+ void do_softirq_own_stack(void);
+ #else
+ static inline void do_softirq_own_stack(void)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0221-net-core-use-local_bh_disable-in-netif_rx_ni.patch b/debian/patches-rt/0221-net-core-use-local_bh_disable-in-netif_rx_ni.patch
new file mode 100644
index 000000000..aeba8e9de
--- /dev/null
+++ b/debian/patches-rt/0221-net-core-use-local_bh_disable-in-netif_rx_ni.patch
@@ -0,0 +1,41 @@
+From 3f41204b42e2804a8eff4dbae9f811c5112a5e49 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 16 Jun 2017 19:03:16 +0200
+Subject: [PATCH 221/323] net/core: use local_bh_disable() in netif_rx_ni()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+In 2004 netif_rx_ni() gained a preempt_disable() section around
+netif_rx() and its do_softirq() + testing for it. The do_softirq() part
+is required because netif_rx() raises the softirq but does not invoke
+it. The preempt_disable() is required to remain on the same CPU which added the
+skb to the per-CPU list.
+All this can be avoided be putting this into a local_bh_disable()ed
+section. The local_bh_enable() part will invoke do_softirq() if
+required.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ net/core/dev.c | 6 ++----
+ 1 file changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/net/core/dev.c b/net/core/dev.c
+index 3f23ac2ad497..f973f53c7a1f 100644
+--- a/net/core/dev.c
++++ b/net/core/dev.c
+@@ -4870,11 +4870,9 @@ int netif_rx_ni(struct sk_buff *skb)
+
+ trace_netif_rx_ni_entry(skb);
+
+- preempt_disable();
++ local_bh_disable();
+ err = netif_rx_internal(skb);
+- if (local_softirq_pending())
+- do_softirq();
+- preempt_enable();
++ local_bh_enable();
+ trace_netif_rx_ni_exit(err);
+
+ return err;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0222-pid.h-include-atomic.h.patch b/debian/patches-rt/0222-pid.h-include-atomic.h.patch
new file mode 100644
index 000000000..159e5afbe
--- /dev/null
+++ b/debian/patches-rt/0222-pid.h-include-atomic.h.patch
@@ -0,0 +1,43 @@
+From 281d6228df38fdd331290ccf7753daee6ee7e520 Mon Sep 17 00:00:00 2001
+From: Grygorii Strashko <Grygorii.Strashko@linaro.org>
+Date: Tue, 21 Jul 2015 19:43:56 +0300
+Subject: [PATCH 222/323] pid.h: include atomic.h
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+This patch fixes build error:
+ CC kernel/pid_namespace.o
+In file included from kernel/pid_namespace.c:11:0:
+include/linux/pid.h: In function 'get_pid':
+include/linux/pid.h:78:3: error: implicit declaration of function 'atomic_inc' [-Werror=implicit-function-declaration]
+ atomic_inc(&pid->count);
+ ^
+which happens when
+ CONFIG_PROVE_LOCKING=n
+ CONFIG_DEBUG_SPINLOCK=n
+ CONFIG_DEBUG_MUTEXES=n
+ CONFIG_DEBUG_LOCK_ALLOC=n
+ CONFIG_PID_NS=y
+
+Vanilla gets this via spinlock.h.
+
+Signed-off-by: Grygorii Strashko <Grygorii.Strashko@linaro.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/pid.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/include/linux/pid.h b/include/linux/pid.h
+index fa10acb8d6a4..2f86f84e9fc1 100644
+--- a/include/linux/pid.h
++++ b/include/linux/pid.h
+@@ -3,6 +3,7 @@
+ #define _LINUX_PID_H
+
+ #include <linux/rculist.h>
++#include <linux/atomic.h>
+ #include <linux/wait.h>
+ #include <linux/refcount.h>
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0223-ptrace-fix-ptrace-vs-tasklist_lock-race.patch b/debian/patches-rt/0223-ptrace-fix-ptrace-vs-tasklist_lock-race.patch
new file mode 100644
index 000000000..efff232da
--- /dev/null
+++ b/debian/patches-rt/0223-ptrace-fix-ptrace-vs-tasklist_lock-race.patch
@@ -0,0 +1,166 @@
+From 2b742ac53e22db703a46b21ff3817c797b7cb071 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 29 Aug 2013 18:21:04 +0200
+Subject: [PATCH 223/323] ptrace: fix ptrace vs tasklist_lock race
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+As explained by Alexander Fyodorov <halcy@yandex.ru>:
+
+|read_lock(&tasklist_lock) in ptrace_stop() is converted to mutex on RT kernel,
+|and it can remove __TASK_TRACED from task->state (by moving it to
+|task->saved_state). If parent does wait() on child followed by a sys_ptrace
+|call, the following race can happen:
+|
+|- child sets __TASK_TRACED in ptrace_stop()
+|- parent does wait() which eventually calls wait_task_stopped() and returns
+| child's pid
+|- child blocks on read_lock(&tasklist_lock) in ptrace_stop() and moves
+| __TASK_TRACED flag to saved_state
+|- parent calls sys_ptrace, which calls ptrace_check_attach() and wait_task_inactive()
+
+The patch is based on his initial patch where an additional check is
+added in case the __TASK_TRACED moved to ->saved_state. The pi_lock is
+taken in case the caller is interrupted between looking into ->state and
+->saved_state.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/sched.h | 49 +++++++++++++++++++++++++++++++++++++++----
+ kernel/ptrace.c | 9 +++++++-
+ kernel/sched/core.c | 17 +++++++++++++--
+ 3 files changed, 68 insertions(+), 7 deletions(-)
+
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index d259126f46cf..bd0c9c633438 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -112,12 +112,8 @@ struct io_uring_task;
+ __TASK_TRACED | EXIT_DEAD | EXIT_ZOMBIE | \
+ TASK_PARKED)
+
+-#define task_is_traced(task) ((task->state & __TASK_TRACED) != 0)
+-
+ #define task_is_stopped(task) ((task->state & __TASK_STOPPED) != 0)
+
+-#define task_is_stopped_or_traced(task) ((task->state & (__TASK_STOPPED | __TASK_TRACED)) != 0)
+-
+ #ifdef CONFIG_DEBUG_ATOMIC_SLEEP
+
+ /*
+@@ -1886,6 +1882,51 @@ static inline int test_tsk_need_resched(struct task_struct *tsk)
+ return unlikely(test_tsk_thread_flag(tsk,TIF_NEED_RESCHED));
+ }
+
++static inline bool __task_is_stopped_or_traced(struct task_struct *task)
++{
++ if (task->state & (__TASK_STOPPED | __TASK_TRACED))
++ return true;
++#ifdef CONFIG_PREEMPT_RT
++ if (task->saved_state & (__TASK_STOPPED | __TASK_TRACED))
++ return true;
++#endif
++ return false;
++}
++
++static inline bool task_is_stopped_or_traced(struct task_struct *task)
++{
++ bool traced_stopped;
++
++#ifdef CONFIG_PREEMPT_RT
++ unsigned long flags;
++
++ raw_spin_lock_irqsave(&task->pi_lock, flags);
++ traced_stopped = __task_is_stopped_or_traced(task);
++ raw_spin_unlock_irqrestore(&task->pi_lock, flags);
++#else
++ traced_stopped = __task_is_stopped_or_traced(task);
++#endif
++ return traced_stopped;
++}
++
++static inline bool task_is_traced(struct task_struct *task)
++{
++ bool traced = false;
++
++ if (task->state & __TASK_TRACED)
++ return true;
++#ifdef CONFIG_PREEMPT_RT
++ /* in case the task is sleeping on tasklist_lock */
++ raw_spin_lock_irq(&task->pi_lock);
++ if (task->state & __TASK_TRACED)
++ traced = true;
++ else if (task->saved_state & __TASK_TRACED)
++ traced = true;
++ raw_spin_unlock_irq(&task->pi_lock);
++#endif
++ return traced;
++}
++
+ /*
+ * cond_resched() and cond_resched_lock(): latency reduction via
+ * explicit rescheduling in places that are safe. The return
+diff --git a/kernel/ptrace.c b/kernel/ptrace.c
+index aab480e24bd6..71acb6341e63 100644
+--- a/kernel/ptrace.c
++++ b/kernel/ptrace.c
+@@ -196,7 +196,14 @@ static bool ptrace_freeze_traced(struct task_struct *task)
+ spin_lock_irq(&task->sighand->siglock);
+ if (task_is_traced(task) && !looks_like_a_spurious_pid(task) &&
+ !__fatal_signal_pending(task)) {
+- task->state = __TASK_TRACED;
++ unsigned long flags;
++
++ raw_spin_lock_irqsave(&task->pi_lock, flags);
++ if (task->state & __TASK_TRACED)
++ task->state = __TASK_TRACED;
++ else
++ task->saved_state = __TASK_TRACED;
++ raw_spin_unlock_irqrestore(&task->pi_lock, flags);
+ ret = true;
+ }
+ spin_unlock_irq(&task->sighand->siglock);
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 2f689b4fa68b..8ac1f0526476 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -2587,6 +2587,18 @@ int migrate_swap(struct task_struct *cur, struct task_struct *p,
+ }
+ #endif /* CONFIG_NUMA_BALANCING */
+
++static bool check_task_state(struct task_struct *p, long match_state)
++{
++ bool match = false;
++
++ raw_spin_lock_irq(&p->pi_lock);
++ if (p->state == match_state || p->saved_state == match_state)
++ match = true;
++ raw_spin_unlock_irq(&p->pi_lock);
++
++ return match;
++}
++
+ /*
+ * wait_task_inactive - wait for a thread to unschedule.
+ *
+@@ -2631,7 +2643,7 @@ unsigned long wait_task_inactive(struct task_struct *p, long match_state)
+ * is actually now running somewhere else!
+ */
+ while (task_running(rq, p)) {
+- if (match_state && unlikely(p->state != match_state))
++ if (match_state && !check_task_state(p, match_state))
+ return 0;
+ cpu_relax();
+ }
+@@ -2646,7 +2658,8 @@ unsigned long wait_task_inactive(struct task_struct *p, long match_state)
+ running = task_running(rq, p);
+ queued = task_on_rq_queued(p);
+ ncsw = 0;
+- if (!match_state || p->state == match_state)
++ if (!match_state || p->state == match_state ||
++ p->saved_state == match_state)
+ ncsw = p->nvcsw | LONG_MIN; /* sets MSB */
+ task_rq_unlock(rq, p, &rf);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0224-ptrace-fix-ptrace_unfreeze_traced-race-with-rt-lock.patch b/debian/patches-rt/0224-ptrace-fix-ptrace_unfreeze_traced-race-with-rt-lock.patch
new file mode 100644
index 000000000..4e61137e3
--- /dev/null
+++ b/debian/patches-rt/0224-ptrace-fix-ptrace_unfreeze_traced-race-with-rt-lock.patch
@@ -0,0 +1,65 @@
+From 10d5d8e25cce1695bb99f7149038d97b9a160201 Mon Sep 17 00:00:00 2001
+From: Oleg Nesterov <oleg@redhat.com>
+Date: Tue, 3 Nov 2020 12:39:01 +0100
+Subject: [PATCH 224/323] ptrace: fix ptrace_unfreeze_traced() race with
+ rt-lock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The patch "ptrace: fix ptrace vs tasklist_lock race" changed
+ptrace_freeze_traced() to take task->saved_state into account, but
+ptrace_unfreeze_traced() has the same problem and needs a similar fix:
+it should check/update both ->state and ->saved_state.
+
+Reported-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+Fixes: "ptrace: fix ptrace vs tasklist_lock race"
+Signed-off-by: Oleg Nesterov <oleg@redhat.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Cc: stable-rt@vger.kernel.org
+---
+ kernel/ptrace.c | 23 +++++++++++++++--------
+ 1 file changed, 15 insertions(+), 8 deletions(-)
+
+diff --git a/kernel/ptrace.c b/kernel/ptrace.c
+index 71acb6341e63..fb5d1a19507d 100644
+--- a/kernel/ptrace.c
++++ b/kernel/ptrace.c
+@@ -213,8 +213,8 @@ static bool ptrace_freeze_traced(struct task_struct *task)
+
+ static void ptrace_unfreeze_traced(struct task_struct *task)
+ {
+- if (task->state != __TASK_TRACED)
+- return;
++ unsigned long flags;
++ bool frozen = true;
+
+ WARN_ON(!task->ptrace || task->parent != current);
+
+@@ -223,12 +223,19 @@ static void ptrace_unfreeze_traced(struct task_struct *task)
+ * Recheck state under the lock to close this race.
+ */
+ spin_lock_irq(&task->sighand->siglock);
+- if (task->state == __TASK_TRACED) {
+- if (__fatal_signal_pending(task))
+- wake_up_state(task, __TASK_TRACED);
+- else
+- task->state = TASK_TRACED;
+- }
++
++ raw_spin_lock_irqsave(&task->pi_lock, flags);
++ if (task->state == __TASK_TRACED)
++ task->state = TASK_TRACED;
++ else if (task->saved_state == __TASK_TRACED)
++ task->saved_state = TASK_TRACED;
++ else
++ frozen = false;
++ raw_spin_unlock_irqrestore(&task->pi_lock, flags);
++
++ if (frozen && __fatal_signal_pending(task))
++ wake_up_state(task, __TASK_TRACED);
++
+ spin_unlock_irq(&task->sighand->siglock);
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0225-kernel-sched-add-put-get-_cpu_light.patch b/debian/patches-rt/0225-kernel-sched-add-put-get-_cpu_light.patch
new file mode 100644
index 000000000..6a6e0620c
--- /dev/null
+++ b/debian/patches-rt/0225-kernel-sched-add-put-get-_cpu_light.patch
@@ -0,0 +1,28 @@
+From f5e1368135f9f3d520828544dc31762f19f43848 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Sat, 27 May 2017 19:02:06 +0200
+Subject: [PATCH 225/323] kernel/sched: add {put|get}_cpu_light()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/smp.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/include/linux/smp.h b/include/linux/smp.h
+index 04f44e0aa2e0..cae66815f9e2 100644
+--- a/include/linux/smp.h
++++ b/include/linux/smp.h
+@@ -239,6 +239,9 @@ static inline int get_boot_cpu_id(void)
+ #define get_cpu() ({ preempt_disable(); __smp_processor_id(); })
+ #define put_cpu() preempt_enable()
+
++#define get_cpu_light() ({ migrate_disable(); __smp_processor_id(); })
++#define put_cpu_light() migrate_enable()
++
+ /*
+ * Callback to arch code if there's nosmp or maxcpus=0 on the
+ * boot command line:
+--
+2.43.0
+
diff --git a/debian/patches-rt/0226-trace-Add-migrate-disabled-counter-to-tracing-output.patch b/debian/patches-rt/0226-trace-Add-migrate-disabled-counter-to-tracing-output.patch
new file mode 100644
index 000000000..23ba35a68
--- /dev/null
+++ b/debian/patches-rt/0226-trace-Add-migrate-disabled-counter-to-tracing-output.patch
@@ -0,0 +1,123 @@
+From 61f802c21cb2e063c6e8b39e9f497f2d38440b5a Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Sun, 17 Jul 2011 21:56:42 +0200
+Subject: [PATCH 226/323] trace: Add migrate-disabled counter to tracing output
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/trace_events.h | 2 ++
+ kernel/trace/trace.c | 26 +++++++++++++++++++-------
+ kernel/trace/trace_events.c | 1 +
+ kernel/trace/trace_output.c | 5 +++++
+ 4 files changed, 27 insertions(+), 7 deletions(-)
+
+diff --git a/include/linux/trace_events.h b/include/linux/trace_events.h
+index 2fea9fcd4d4e..2151524a10f0 100644
+--- a/include/linux/trace_events.h
++++ b/include/linux/trace_events.h
+@@ -69,6 +69,7 @@ struct trace_entry {
+ unsigned char flags;
+ unsigned char preempt_count;
+ int pid;
++ unsigned char migrate_disable;
+ };
+
+ #define TRACE_EVENT_TYPE_MAX \
+@@ -157,6 +158,7 @@ static inline void tracing_generic_entry_update(struct trace_entry *entry,
+ unsigned int trace_ctx)
+ {
+ entry->preempt_count = trace_ctx & 0xff;
++ entry->migrate_disable = (trace_ctx >> 8) & 0xff;
+ entry->pid = current->pid;
+ entry->type = type;
+ entry->flags = trace_ctx >> 16;
+diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
+index 5d6730589823..02dffb1862b8 100644
+--- a/kernel/trace/trace.c
++++ b/kernel/trace/trace.c
+@@ -2575,6 +2575,15 @@ enum print_line_t trace_handle_return(struct trace_seq *s)
+ }
+ EXPORT_SYMBOL_GPL(trace_handle_return);
+
++static unsigned short migration_disable_value(void)
++{
++#if defined(CONFIG_SMP) && defined(CONFIG_PREEMPT_RT)
++ return current->migration_disabled;
++#else
++ return 0;
++#endif
++}
++
+ unsigned int tracing_gen_ctx_irq_test(unsigned int irqs_status)
+ {
+ unsigned int trace_flags = irqs_status;
+@@ -2593,7 +2602,8 @@ unsigned int tracing_gen_ctx_irq_test(unsigned int irqs_status)
+ trace_flags |= TRACE_FLAG_NEED_RESCHED;
+ if (test_preempt_need_resched())
+ trace_flags |= TRACE_FLAG_PREEMPT_RESCHED;
+- return (trace_flags << 16) | (pc & 0xff);
++ return (trace_flags << 16) | (pc & 0xff) |
++ (migration_disable_value() & 0xff) << 8;
+ }
+
+ struct ring_buffer_event *
+@@ -3856,9 +3866,10 @@ static void print_lat_help_header(struct seq_file *m)
+ "# | / _----=> need-resched \n"
+ "# || / _---=> hardirq/softirq \n"
+ "# ||| / _--=> preempt-depth \n"
+- "# |||| / delay \n"
+- "# cmd pid ||||| time | caller \n"
+- "# \\ / ||||| \\ | / \n");
++ "# |||| / _-=> migrate-disable \n"
++ "# ||||| / delay \n"
++ "# cmd pid |||||| time | caller \n"
++ "# \\ / |||||| \\ | / \n");
+ }
+
+ static void print_event_info(struct array_buffer *buf, struct seq_file *m)
+@@ -3896,9 +3907,10 @@ static void print_func_help_header_irq(struct array_buffer *buf, struct seq_file
+ seq_printf(m, "# %.*s / _----=> need-resched\n", prec, space);
+ seq_printf(m, "# %.*s| / _---=> hardirq/softirq\n", prec, space);
+ seq_printf(m, "# %.*s|| / _--=> preempt-depth\n", prec, space);
+- seq_printf(m, "# %.*s||| / delay\n", prec, space);
+- seq_printf(m, "# TASK-PID %.*s CPU# |||| TIMESTAMP FUNCTION\n", prec, " TGID ");
+- seq_printf(m, "# | | %.*s | |||| | |\n", prec, " | ");
++ seq_printf(m, "# %.*s||| / _-=> migrate-disable\n", prec, space);
++ seq_printf(m, "# %.*s|||| / delay\n", prec, space);
++ seq_printf(m, "# TASK-PID %.*s CPU# ||||| TIMESTAMP FUNCTION\n", prec, " TGID ");
++ seq_printf(m, "# | | %.*s | ||||| | |\n", prec, " | ");
+ }
+
+ void
+diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
+index df64b92c5edc..636fb7df3714 100644
+--- a/kernel/trace/trace_events.c
++++ b/kernel/trace/trace_events.c
+@@ -184,6 +184,7 @@ static int trace_define_common_fields(void)
+ __common_field(unsigned char, flags);
+ __common_field(unsigned char, preempt_count);
+ __common_field(int, pid);
++ __common_field(unsigned char, migrate_disable);
+
+ return ret;
+ }
+diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c
+index 94b0991717b6..b3619b21217c 100644
+--- a/kernel/trace/trace_output.c
++++ b/kernel/trace/trace_output.c
+@@ -497,6 +497,11 @@ int trace_print_lat_fmt(struct trace_seq *s, struct trace_entry *entry)
+ else
+ trace_seq_putc(s, '.');
+
++ if (entry->migrate_disable)
++ trace_seq_printf(s, "%x", entry->migrate_disable);
++ else
++ trace_seq_putc(s, '.');
++
+ return !trace_seq_has_overflowed(s);
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0227-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch b/debian/patches-rt/0227-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch
new file mode 100644
index 000000000..aeea997ea
--- /dev/null
+++ b/debian/patches-rt/0227-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch
@@ -0,0 +1,166 @@
+From d9e2f0098c8afde2f68ff94ea5dcdf818bc454d9 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 4 Aug 2017 17:40:42 +0200
+Subject: [PATCH 227/323] locking: don't check for __LINUX_SPINLOCK_TYPES_H on
+ -RT archs
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Upstream uses arch_spinlock_t within spinlock_t and requests that
+spinlock_types.h header file is included first.
+On -RT we have the rt_mutex with its raw_lock wait_lock which needs
+architectures' spinlock_types.h header file for its definition. However
+we need rt_mutex first because it is used to build the spinlock_t so
+that check does not work for us.
+Therefore I am dropping that check.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/alpha/include/asm/spinlock_types.h | 4 ----
+ arch/arm/include/asm/spinlock_types.h | 4 ----
+ arch/arm64/include/asm/spinlock_types.h | 4 ----
+ arch/hexagon/include/asm/spinlock_types.h | 4 ----
+ arch/ia64/include/asm/spinlock_types.h | 4 ----
+ arch/powerpc/include/asm/spinlock_types.h | 4 ----
+ arch/s390/include/asm/spinlock_types.h | 4 ----
+ arch/sh/include/asm/spinlock_types.h | 4 ----
+ arch/xtensa/include/asm/spinlock_types.h | 4 ----
+ 9 files changed, 36 deletions(-)
+
+diff --git a/arch/alpha/include/asm/spinlock_types.h b/arch/alpha/include/asm/spinlock_types.h
+index 1d5716bc060b..6883bc952d22 100644
+--- a/arch/alpha/include/asm/spinlock_types.h
++++ b/arch/alpha/include/asm/spinlock_types.h
+@@ -2,10 +2,6 @@
+ #ifndef _ALPHA_SPINLOCK_TYPES_H
+ #define _ALPHA_SPINLOCK_TYPES_H
+
+-#ifndef __LINUX_SPINLOCK_TYPES_H
+-# error "please don't include this file directly"
+-#endif
+-
+ typedef struct {
+ volatile unsigned int lock;
+ } arch_spinlock_t;
+diff --git a/arch/arm/include/asm/spinlock_types.h b/arch/arm/include/asm/spinlock_types.h
+index 5976958647fe..a37c0803954b 100644
+--- a/arch/arm/include/asm/spinlock_types.h
++++ b/arch/arm/include/asm/spinlock_types.h
+@@ -2,10 +2,6 @@
+ #ifndef __ASM_SPINLOCK_TYPES_H
+ #define __ASM_SPINLOCK_TYPES_H
+
+-#ifndef __LINUX_SPINLOCK_TYPES_H
+-# error "please don't include this file directly"
+-#endif
+-
+ #define TICKET_SHIFT 16
+
+ typedef struct {
+diff --git a/arch/arm64/include/asm/spinlock_types.h b/arch/arm64/include/asm/spinlock_types.h
+index 18782f0c4721..6672b05350b4 100644
+--- a/arch/arm64/include/asm/spinlock_types.h
++++ b/arch/arm64/include/asm/spinlock_types.h
+@@ -5,10 +5,6 @@
+ #ifndef __ASM_SPINLOCK_TYPES_H
+ #define __ASM_SPINLOCK_TYPES_H
+
+-#if !defined(__LINUX_SPINLOCK_TYPES_H) && !defined(__ASM_SPINLOCK_H)
+-# error "please don't include this file directly"
+-#endif
+-
+ #include <asm-generic/qspinlock_types.h>
+ #include <asm-generic/qrwlock_types.h>
+
+diff --git a/arch/hexagon/include/asm/spinlock_types.h b/arch/hexagon/include/asm/spinlock_types.h
+index 19d233497ba5..de72fb23016d 100644
+--- a/arch/hexagon/include/asm/spinlock_types.h
++++ b/arch/hexagon/include/asm/spinlock_types.h
+@@ -8,10 +8,6 @@
+ #ifndef _ASM_SPINLOCK_TYPES_H
+ #define _ASM_SPINLOCK_TYPES_H
+
+-#ifndef __LINUX_SPINLOCK_TYPES_H
+-# error "please don't include this file directly"
+-#endif
+-
+ typedef struct {
+ volatile unsigned int lock;
+ } arch_spinlock_t;
+diff --git a/arch/ia64/include/asm/spinlock_types.h b/arch/ia64/include/asm/spinlock_types.h
+index 6e345fefcdca..681408d6816f 100644
+--- a/arch/ia64/include/asm/spinlock_types.h
++++ b/arch/ia64/include/asm/spinlock_types.h
+@@ -2,10 +2,6 @@
+ #ifndef _ASM_IA64_SPINLOCK_TYPES_H
+ #define _ASM_IA64_SPINLOCK_TYPES_H
+
+-#ifndef __LINUX_SPINLOCK_TYPES_H
+-# error "please don't include this file directly"
+-#endif
+-
+ typedef struct {
+ volatile unsigned int lock;
+ } arch_spinlock_t;
+diff --git a/arch/powerpc/include/asm/spinlock_types.h b/arch/powerpc/include/asm/spinlock_types.h
+index c5d742f18021..cc6922a011ba 100644
+--- a/arch/powerpc/include/asm/spinlock_types.h
++++ b/arch/powerpc/include/asm/spinlock_types.h
+@@ -2,10 +2,6 @@
+ #ifndef _ASM_POWERPC_SPINLOCK_TYPES_H
+ #define _ASM_POWERPC_SPINLOCK_TYPES_H
+
+-#ifndef __LINUX_SPINLOCK_TYPES_H
+-# error "please don't include this file directly"
+-#endif
+-
+ #ifdef CONFIG_PPC_QUEUED_SPINLOCKS
+ #include <asm-generic/qspinlock_types.h>
+ #include <asm-generic/qrwlock_types.h>
+diff --git a/arch/s390/include/asm/spinlock_types.h b/arch/s390/include/asm/spinlock_types.h
+index cfed272e4fd5..8e28e8176ec8 100644
+--- a/arch/s390/include/asm/spinlock_types.h
++++ b/arch/s390/include/asm/spinlock_types.h
+@@ -2,10 +2,6 @@
+ #ifndef __ASM_SPINLOCK_TYPES_H
+ #define __ASM_SPINLOCK_TYPES_H
+
+-#ifndef __LINUX_SPINLOCK_TYPES_H
+-# error "please don't include this file directly"
+-#endif
+-
+ typedef struct {
+ int lock;
+ } __attribute__ ((aligned (4))) arch_spinlock_t;
+diff --git a/arch/sh/include/asm/spinlock_types.h b/arch/sh/include/asm/spinlock_types.h
+index e82369f286a2..22ca9a98bbb8 100644
+--- a/arch/sh/include/asm/spinlock_types.h
++++ b/arch/sh/include/asm/spinlock_types.h
+@@ -2,10 +2,6 @@
+ #ifndef __ASM_SH_SPINLOCK_TYPES_H
+ #define __ASM_SH_SPINLOCK_TYPES_H
+
+-#ifndef __LINUX_SPINLOCK_TYPES_H
+-# error "please don't include this file directly"
+-#endif
+-
+ typedef struct {
+ volatile unsigned int lock;
+ } arch_spinlock_t;
+diff --git a/arch/xtensa/include/asm/spinlock_types.h b/arch/xtensa/include/asm/spinlock_types.h
+index 64c9389254f1..dc846323b1cd 100644
+--- a/arch/xtensa/include/asm/spinlock_types.h
++++ b/arch/xtensa/include/asm/spinlock_types.h
+@@ -2,10 +2,6 @@
+ #ifndef __ASM_SPINLOCK_TYPES_H
+ #define __ASM_SPINLOCK_TYPES_H
+
+-#if !defined(__LINUX_SPINLOCK_TYPES_H) && !defined(__ASM_SPINLOCK_H)
+-# error "please don't include this file directly"
+-#endif
+-
+ #include <asm-generic/qspinlock_types.h>
+ #include <asm-generic/qrwlock_types.h>
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0228-locking-Make-spinlock_t-and-rwlock_t-a-RCU-section-o.patch b/debian/patches-rt/0228-locking-Make-spinlock_t-and-rwlock_t-a-RCU-section-o.patch
new file mode 100644
index 000000000..77ce72c24
--- /dev/null
+++ b/debian/patches-rt/0228-locking-Make-spinlock_t-and-rwlock_t-a-RCU-section-o.patch
@@ -0,0 +1,126 @@
+From 166485c3d38dd51a1a9a35edb7b2d3c1054a2418 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 19 Nov 2019 09:25:04 +0100
+Subject: [PATCH 228/323] locking: Make spinlock_t and rwlock_t a RCU section
+ on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+On !RT a locked spinlock_t and rwlock_t disables preemption which
+implies a RCU read section. There is code that relies on that behaviour.
+
+Add an explicit RCU read section on RT while a sleeping lock (a lock
+which would disables preemption on !RT) acquired.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/locking/rtmutex.c | 6 ++++++
+ kernel/locking/rwlock-rt.c | 6 ++++++
+ 2 files changed, 12 insertions(+)
+
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index 2fe178651254..31b374d36d04 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -1136,6 +1136,7 @@ void __lockfunc rt_spin_lock(spinlock_t *lock)
+ {
+ spin_acquire(&lock->dep_map, 0, 0, _RET_IP_);
+ rt_spin_lock_fastlock(&lock->lock, rt_spin_lock_slowlock);
++ rcu_read_lock();
+ migrate_disable();
+ }
+ EXPORT_SYMBOL(rt_spin_lock);
+@@ -1150,6 +1151,7 @@ void __lockfunc rt_spin_lock_nested(spinlock_t *lock, int subclass)
+ {
+ spin_acquire(&lock->dep_map, subclass, 0, _RET_IP_);
+ rt_spin_lock_fastlock(&lock->lock, rt_spin_lock_slowlock);
++ rcu_read_lock();
+ migrate_disable();
+ }
+ EXPORT_SYMBOL(rt_spin_lock_nested);
+@@ -1159,6 +1161,7 @@ void __lockfunc rt_spin_lock_nest_lock(spinlock_t *lock,
+ {
+ spin_acquire_nest(&lock->dep_map, 0, 0, nest_lock, _RET_IP_);
+ rt_spin_lock_fastlock(&lock->lock, rt_spin_lock_slowlock);
++ rcu_read_lock();
+ migrate_disable();
+ }
+ EXPORT_SYMBOL(rt_spin_lock_nest_lock);
+@@ -1169,6 +1172,7 @@ void __lockfunc rt_spin_unlock(spinlock_t *lock)
+ /* NOTE: we always pass in '1' for nested, for simplicity */
+ spin_release(&lock->dep_map, _RET_IP_);
+ migrate_enable();
++ rcu_read_unlock();
+ rt_spin_lock_fastunlock(&lock->lock, rt_spin_lock_slowunlock);
+ }
+ EXPORT_SYMBOL(rt_spin_unlock);
+@@ -1198,6 +1202,7 @@ int __lockfunc rt_spin_trylock(spinlock_t *lock)
+ ret = __rt_mutex_trylock(&lock->lock);
+ if (ret) {
+ spin_acquire(&lock->dep_map, 0, 1, _RET_IP_);
++ rcu_read_lock();
+ migrate_disable();
+ }
+ return ret;
+@@ -1212,6 +1217,7 @@ int __lockfunc rt_spin_trylock_bh(spinlock_t *lock)
+ ret = __rt_mutex_trylock(&lock->lock);
+ if (ret) {
+ spin_acquire(&lock->dep_map, 0, 1, _RET_IP_);
++ rcu_read_lock();
+ migrate_disable();
+ } else {
+ local_bh_enable();
+diff --git a/kernel/locking/rwlock-rt.c b/kernel/locking/rwlock-rt.c
+index 16be7111aae7..3d2d1f14b513 100644
+--- a/kernel/locking/rwlock-rt.c
++++ b/kernel/locking/rwlock-rt.c
+@@ -270,6 +270,7 @@ int __lockfunc rt_read_trylock(rwlock_t *rwlock)
+ ret = __read_rt_trylock(rwlock);
+ if (ret) {
+ rwlock_acquire_read(&rwlock->dep_map, 0, 1, _RET_IP_);
++ rcu_read_lock();
+ migrate_disable();
+ }
+ return ret;
+@@ -283,6 +284,7 @@ int __lockfunc rt_write_trylock(rwlock_t *rwlock)
+ ret = __write_rt_trylock(rwlock);
+ if (ret) {
+ rwlock_acquire(&rwlock->dep_map, 0, 1, _RET_IP_);
++ rcu_read_lock();
+ migrate_disable();
+ }
+ return ret;
+@@ -293,6 +295,7 @@ void __lockfunc rt_read_lock(rwlock_t *rwlock)
+ {
+ rwlock_acquire_read(&rwlock->dep_map, 0, 0, _RET_IP_);
+ __read_rt_lock(rwlock);
++ rcu_read_lock();
+ migrate_disable();
+ }
+ EXPORT_SYMBOL(rt_read_lock);
+@@ -301,6 +304,7 @@ void __lockfunc rt_write_lock(rwlock_t *rwlock)
+ {
+ rwlock_acquire(&rwlock->dep_map, 0, 0, _RET_IP_);
+ __write_rt_lock(rwlock);
++ rcu_read_lock();
+ migrate_disable();
+ }
+ EXPORT_SYMBOL(rt_write_lock);
+@@ -309,6 +313,7 @@ void __lockfunc rt_read_unlock(rwlock_t *rwlock)
+ {
+ rwlock_release(&rwlock->dep_map, _RET_IP_);
+ migrate_enable();
++ rcu_read_unlock();
+ __read_rt_unlock(rwlock);
+ }
+ EXPORT_SYMBOL(rt_read_unlock);
+@@ -317,6 +322,7 @@ void __lockfunc rt_write_unlock(rwlock_t *rwlock)
+ {
+ rwlock_release(&rwlock->dep_map, _RET_IP_);
+ migrate_enable();
++ rcu_read_unlock();
+ __write_rt_unlock(rwlock);
+ }
+ EXPORT_SYMBOL(rt_write_unlock);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0229-mm-vmalloc-Another-preempt-disable-region-which-suck.patch b/debian/patches-rt/0229-mm-vmalloc-Another-preempt-disable-region-which-suck.patch
new file mode 100644
index 000000000..c699a1ab7
--- /dev/null
+++ b/debian/patches-rt/0229-mm-vmalloc-Another-preempt-disable-region-which-suck.patch
@@ -0,0 +1,73 @@
+From 61aced1d729a22bbaf66e1f68806e04058bafb3f Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 12 Jul 2011 11:39:36 +0200
+Subject: [PATCH 229/323] mm/vmalloc: Another preempt disable region which
+ sucks
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Avoid the preempt disable version of get_cpu_var(). The inner-lock should
+provide enough serialisation.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ mm/vmalloc.c | 13 ++++++++-----
+ 1 file changed, 8 insertions(+), 5 deletions(-)
+
+diff --git a/mm/vmalloc.c b/mm/vmalloc.c
+index d6a4794fa8ca..8113e4f0d2f2 100644
+--- a/mm/vmalloc.c
++++ b/mm/vmalloc.c
+@@ -1542,7 +1542,7 @@ static void *new_vmap_block(unsigned int order, gfp_t gfp_mask)
+ struct vmap_block *vb;
+ struct vmap_area *va;
+ unsigned long vb_idx;
+- int node, err;
++ int node, err, cpu;
+ void *vaddr;
+
+ node = numa_node_id();
+@@ -1579,11 +1579,12 @@ static void *new_vmap_block(unsigned int order, gfp_t gfp_mask)
+ return ERR_PTR(err);
+ }
+
+- vbq = &get_cpu_var(vmap_block_queue);
++ cpu = get_cpu_light();
++ vbq = this_cpu_ptr(&vmap_block_queue);
+ spin_lock(&vbq->lock);
+ list_add_tail_rcu(&vb->free_list, &vbq->free);
+ spin_unlock(&vbq->lock);
+- put_cpu_var(vmap_block_queue);
++ put_cpu_light();
+
+ return vaddr;
+ }
+@@ -1648,6 +1649,7 @@ static void *vb_alloc(unsigned long size, gfp_t gfp_mask)
+ struct vmap_block *vb;
+ void *vaddr = NULL;
+ unsigned int order;
++ int cpu;
+
+ BUG_ON(offset_in_page(size));
+ BUG_ON(size > PAGE_SIZE*VMAP_MAX_ALLOC);
+@@ -1662,7 +1664,8 @@ static void *vb_alloc(unsigned long size, gfp_t gfp_mask)
+ order = get_order(size);
+
+ rcu_read_lock();
+- vbq = &get_cpu_var(vmap_block_queue);
++ cpu = get_cpu_light();
++ vbq = this_cpu_ptr(&vmap_block_queue);
+ list_for_each_entry_rcu(vb, &vbq->free, free_list) {
+ unsigned long pages_off;
+
+@@ -1685,7 +1688,7 @@ static void *vb_alloc(unsigned long size, gfp_t gfp_mask)
+ break;
+ }
+
+- put_cpu_var(vmap_block_queue);
++ put_cpu_light();
+ rcu_read_unlock();
+
+ /* Allocate new block if nothing was found */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0230-block-mq-do-not-invoke-preempt_disable.patch b/debian/patches-rt/0230-block-mq-do-not-invoke-preempt_disable.patch
new file mode 100644
index 000000000..d1f8234d5
--- /dev/null
+++ b/debian/patches-rt/0230-block-mq-do-not-invoke-preempt_disable.patch
@@ -0,0 +1,40 @@
+From 0470292c7761cc1cd2847e60b43b202b1be7ee29 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 14 Jul 2015 14:26:34 +0200
+Subject: [PATCH 230/323] block/mq: do not invoke preempt_disable()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+preempt_disable() and get_cpu() don't play well together with the sleeping
+locks it tries to allocate later.
+It seems to be enough to replace it with get_cpu_light() and migrate_disable().
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ block/blk-mq.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/block/blk-mq.c b/block/blk-mq.c
+index a6618bf45992..37466b3a4ba5 100644
+--- a/block/blk-mq.c
++++ b/block/blk-mq.c
+@@ -1575,14 +1575,14 @@ static void __blk_mq_delay_run_hw_queue(struct blk_mq_hw_ctx *hctx, bool async,
+ return;
+
+ if (!async && !(hctx->flags & BLK_MQ_F_BLOCKING)) {
+- int cpu = get_cpu();
++ int cpu = get_cpu_light();
+ if (cpumask_test_cpu(cpu, hctx->cpumask)) {
+ __blk_mq_run_hw_queue(hctx);
+- put_cpu();
++ put_cpu_light();
+ return;
+ }
+
+- put_cpu();
++ put_cpu_light();
+ }
+
+ kblockd_mod_delayed_work_on(blk_mq_hctx_next_cpu(hctx), &hctx->run_work,
+--
+2.43.0
+
diff --git a/debian/patches-rt/0231-md-raid5-Make-raid5_percpu-handling-RT-aware.patch b/debian/patches-rt/0231-md-raid5-Make-raid5_percpu-handling-RT-aware.patch
new file mode 100644
index 000000000..33a40d5fc
--- /dev/null
+++ b/debian/patches-rt/0231-md-raid5-Make-raid5_percpu-handling-RT-aware.patch
@@ -0,0 +1,69 @@
+From 4af1829664e98b9b3ec542a03ee30aeee8f47f6c Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 6 Apr 2010 16:51:31 +0200
+Subject: [PATCH 231/323] md: raid5: Make raid5_percpu handling RT aware
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+__raid_run_ops() disables preemption with get_cpu() around the access
+to the raid5_percpu variables. That causes scheduling while atomic
+spews on RT.
+
+Serialize the access to the percpu data with a lock and keep the code
+preemptible.
+
+Reported-by: Udo van den Heuvel <udovdh@xs4all.nl>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Udo van den Heuvel <udovdh@xs4all.nl>
+---
+ drivers/md/raid5.c | 7 +++++--
+ drivers/md/raid5.h | 1 +
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c
+index 9f114b9d8dc6..7e0eb8defeaf 100644
+--- a/drivers/md/raid5.c
++++ b/drivers/md/raid5.c
+@@ -2218,8 +2218,9 @@ static void raid_run_ops(struct stripe_head *sh, unsigned long ops_request)
+ struct raid5_percpu *percpu;
+ unsigned long cpu;
+
+- cpu = get_cpu();
++ cpu = get_cpu_light();
+ percpu = per_cpu_ptr(conf->percpu, cpu);
++ spin_lock(&percpu->lock);
+ if (test_bit(STRIPE_OP_BIOFILL, &ops_request)) {
+ ops_run_biofill(sh);
+ overlap_clear++;
+@@ -2278,7 +2279,8 @@ static void raid_run_ops(struct stripe_head *sh, unsigned long ops_request)
+ if (test_and_clear_bit(R5_Overlap, &dev->flags))
+ wake_up(&sh->raid_conf->wait_for_overlap);
+ }
+- put_cpu();
++ spin_unlock(&percpu->lock);
++ put_cpu_light();
+ }
+
+ static void free_stripe(struct kmem_cache *sc, struct stripe_head *sh)
+@@ -7108,6 +7110,7 @@ static int raid456_cpu_up_prepare(unsigned int cpu, struct hlist_node *node)
+ __func__, cpu);
+ return -ENOMEM;
+ }
++ spin_lock_init(&per_cpu_ptr(conf->percpu, cpu)->lock);
+ return 0;
+ }
+
+diff --git a/drivers/md/raid5.h b/drivers/md/raid5.h
+index 5c05acf20e1f..665fe138ab4f 100644
+--- a/drivers/md/raid5.h
++++ b/drivers/md/raid5.h
+@@ -635,6 +635,7 @@ struct r5conf {
+ int recovery_disabled;
+ /* per cpu variables */
+ struct raid5_percpu {
++ spinlock_t lock; /* Protection for -RT */
+ struct page *spare_page; /* Used when checking P/Q in raid6 */
+ void *scribble; /* space for constructing buffer
+ * lists and performing address
+--
+2.43.0
+
diff --git a/debian/patches-rt/0232-scsi-fcoe-Make-RT-aware.patch b/debian/patches-rt/0232-scsi-fcoe-Make-RT-aware.patch
new file mode 100644
index 000000000..dbe99481a
--- /dev/null
+++ b/debian/patches-rt/0232-scsi-fcoe-Make-RT-aware.patch
@@ -0,0 +1,116 @@
+From a2eaf0c262e1151f5978da03d033819e82104cce Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Sat, 12 Nov 2011 14:00:48 +0100
+Subject: [PATCH 232/323] scsi/fcoe: Make RT aware.
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Do not disable preemption while taking sleeping locks. All user look safe
+for migrate_diable() only.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ drivers/scsi/fcoe/fcoe.c | 16 ++++++++--------
+ drivers/scsi/fcoe/fcoe_ctlr.c | 4 ++--
+ drivers/scsi/libfc/fc_exch.c | 4 ++--
+ 3 files changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/drivers/scsi/fcoe/fcoe.c b/drivers/scsi/fcoe/fcoe.c
+index 30afcbbe1f86..4ae5b8152ece 100644
+--- a/drivers/scsi/fcoe/fcoe.c
++++ b/drivers/scsi/fcoe/fcoe.c
+@@ -1452,11 +1452,11 @@ static int fcoe_rcv(struct sk_buff *skb, struct net_device *netdev,
+ static int fcoe_alloc_paged_crc_eof(struct sk_buff *skb, int tlen)
+ {
+ struct fcoe_percpu_s *fps;
+- int rc;
++ int rc, cpu = get_cpu_light();
+
+- fps = &get_cpu_var(fcoe_percpu);
++ fps = &per_cpu(fcoe_percpu, cpu);
+ rc = fcoe_get_paged_crc_eof(skb, tlen, fps);
+- put_cpu_var(fcoe_percpu);
++ put_cpu_light();
+
+ return rc;
+ }
+@@ -1641,11 +1641,11 @@ static inline int fcoe_filter_frames(struct fc_lport *lport,
+ return 0;
+ }
+
+- stats = per_cpu_ptr(lport->stats, get_cpu());
++ stats = per_cpu_ptr(lport->stats, get_cpu_light());
+ stats->InvalidCRCCount++;
+ if (stats->InvalidCRCCount < 5)
+ printk(KERN_WARNING "fcoe: dropping frame with CRC error\n");
+- put_cpu();
++ put_cpu_light();
+ return -EINVAL;
+ }
+
+@@ -1686,7 +1686,7 @@ static void fcoe_recv_frame(struct sk_buff *skb)
+ */
+ hp = (struct fcoe_hdr *) skb_network_header(skb);
+
+- stats = per_cpu_ptr(lport->stats, get_cpu());
++ stats = per_cpu_ptr(lport->stats, get_cpu_light());
+ if (unlikely(FC_FCOE_DECAPS_VER(hp) != FC_FCOE_VER)) {
+ if (stats->ErrorFrames < 5)
+ printk(KERN_WARNING "fcoe: FCoE version "
+@@ -1718,13 +1718,13 @@ static void fcoe_recv_frame(struct sk_buff *skb)
+ goto drop;
+
+ if (!fcoe_filter_frames(lport, fp)) {
+- put_cpu();
++ put_cpu_light();
+ fc_exch_recv(lport, fp);
+ return;
+ }
+ drop:
+ stats->ErrorFrames++;
+- put_cpu();
++ put_cpu_light();
+ kfree_skb(skb);
+ }
+
+diff --git a/drivers/scsi/fcoe/fcoe_ctlr.c b/drivers/scsi/fcoe/fcoe_ctlr.c
+index a2d60ad2a683..3fdc403bc7d8 100644
+--- a/drivers/scsi/fcoe/fcoe_ctlr.c
++++ b/drivers/scsi/fcoe/fcoe_ctlr.c
+@@ -830,7 +830,7 @@ static unsigned long fcoe_ctlr_age_fcfs(struct fcoe_ctlr *fip)
+
+ INIT_LIST_HEAD(&del_list);
+
+- stats = per_cpu_ptr(fip->lp->stats, get_cpu());
++ stats = per_cpu_ptr(fip->lp->stats, get_cpu_light());
+
+ list_for_each_entry_safe(fcf, next, &fip->fcfs, list) {
+ deadline = fcf->time + fcf->fka_period + fcf->fka_period / 2;
+@@ -866,7 +866,7 @@ static unsigned long fcoe_ctlr_age_fcfs(struct fcoe_ctlr *fip)
+ sel_time = fcf->time;
+ }
+ }
+- put_cpu();
++ put_cpu_light();
+
+ list_for_each_entry_safe(fcf, next, &del_list, list) {
+ /* Removes fcf from current list */
+diff --git a/drivers/scsi/libfc/fc_exch.c b/drivers/scsi/libfc/fc_exch.c
+index 4261380af97b..65160eaaa929 100644
+--- a/drivers/scsi/libfc/fc_exch.c
++++ b/drivers/scsi/libfc/fc_exch.c
+@@ -826,10 +826,10 @@ static struct fc_exch *fc_exch_em_alloc(struct fc_lport *lport,
+ }
+ memset(ep, 0, sizeof(*ep));
+
+- cpu = get_cpu();
++ cpu = get_cpu_light();
+ pool = per_cpu_ptr(mp->pool, cpu);
+ spin_lock_bh(&pool->lock);
+- put_cpu();
++ put_cpu_light();
+
+ /* peek cache of free slot */
+ if (pool->left != FC_XID_UNKNOWN) {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0233-sunrpc-Make-svc_xprt_do_enqueue-use-get_cpu_light.patch b/debian/patches-rt/0233-sunrpc-Make-svc_xprt_do_enqueue-use-get_cpu_light.patch
new file mode 100644
index 000000000..22b2f6973
--- /dev/null
+++ b/debian/patches-rt/0233-sunrpc-Make-svc_xprt_do_enqueue-use-get_cpu_light.patch
@@ -0,0 +1,60 @@
+From 971df27cc65fb6805b2253bd66e81bd244887ecc Mon Sep 17 00:00:00 2001
+From: Mike Galbraith <umgwanakikbuti@gmail.com>
+Date: Wed, 18 Feb 2015 16:05:28 +0100
+Subject: [PATCH 233/323] sunrpc: Make svc_xprt_do_enqueue() use
+ get_cpu_light()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+|BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:915
+|in_atomic(): 1, irqs_disabled(): 0, pid: 3194, name: rpc.nfsd
+|Preemption disabled at:[<ffffffffa06bf0bb>] svc_xprt_received+0x4b/0xc0 [sunrpc]
+|CPU: 6 PID: 3194 Comm: rpc.nfsd Not tainted 3.18.7-rt1 #9
+|Hardware name: MEDION MS-7848/MS-7848, BIOS M7848W08.404 11/06/2014
+| ffff880409630000 ffff8800d9a33c78 ffffffff815bdeb5 0000000000000002
+| 0000000000000000 ffff8800d9a33c98 ffffffff81073c86 ffff880408dd6008
+| ffff880408dd6000 ffff8800d9a33cb8 ffffffff815c3d84 ffff88040b3ac000
+|Call Trace:
+| [<ffffffff815bdeb5>] dump_stack+0x4f/0x9e
+| [<ffffffff81073c86>] __might_sleep+0xe6/0x150
+| [<ffffffff815c3d84>] rt_spin_lock+0x24/0x50
+| [<ffffffffa06beec0>] svc_xprt_do_enqueue+0x80/0x230 [sunrpc]
+| [<ffffffffa06bf0bb>] svc_xprt_received+0x4b/0xc0 [sunrpc]
+| [<ffffffffa06c03ed>] svc_add_new_perm_xprt+0x6d/0x80 [sunrpc]
+| [<ffffffffa06b2693>] svc_addsock+0x143/0x200 [sunrpc]
+| [<ffffffffa072e69c>] write_ports+0x28c/0x340 [nfsd]
+| [<ffffffffa072d2ac>] nfsctl_transaction_write+0x4c/0x80 [nfsd]
+| [<ffffffff8117ee83>] vfs_write+0xb3/0x1d0
+| [<ffffffff8117f889>] SyS_write+0x49/0xb0
+| [<ffffffff815c4556>] system_call_fastpath+0x16/0x1b
+
+Signed-off-by: Mike Galbraith <umgwanakikbuti@gmail.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ net/sunrpc/svc_xprt.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/net/sunrpc/svc_xprt.c b/net/sunrpc/svc_xprt.c
+index 06e503466c32..16bd1278a989 100644
+--- a/net/sunrpc/svc_xprt.c
++++ b/net/sunrpc/svc_xprt.c
+@@ -422,7 +422,7 @@ void svc_xprt_do_enqueue(struct svc_xprt *xprt)
+ if (test_and_set_bit(XPT_BUSY, &xprt->xpt_flags))
+ return;
+
+- cpu = get_cpu();
++ cpu = get_cpu_light();
+ pool = svc_pool_for_cpu(xprt->xpt_server, cpu);
+
+ atomic_long_inc(&pool->sp_stats.packets);
+@@ -446,7 +446,7 @@ void svc_xprt_do_enqueue(struct svc_xprt *xprt)
+ rqstp = NULL;
+ out_unlock:
+ rcu_read_unlock();
+- put_cpu();
++ put_cpu_light();
+ trace_svc_xprt_do_enqueue(xprt, rqstp);
+ }
+ EXPORT_SYMBOL_GPL(svc_xprt_do_enqueue);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0234-rt-Introduce-cpu_chill.patch b/debian/patches-rt/0234-rt-Introduce-cpu_chill.patch
new file mode 100644
index 000000000..f2a8eeee5
--- /dev/null
+++ b/debian/patches-rt/0234-rt-Introduce-cpu_chill.patch
@@ -0,0 +1,122 @@
+From 38e8018fba96ecd6e7c7a47e18ed06324fd1d0e2 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Wed, 7 Mar 2012 20:51:03 +0100
+Subject: [PATCH 234/323] rt: Introduce cpu_chill()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Retry loops on RT might loop forever when the modifying side was
+preempted. Add cpu_chill() to replace cpu_relax(). cpu_chill()
+defaults to cpu_relax() for non RT. On RT it puts the looping task to
+sleep for a tick so the preempted task can make progress.
+
+Steven Rostedt changed it to use a hrtimer instead of msleep():
+|
+|Ulrich Obergfell pointed out that cpu_chill() calls msleep() which is woken
+|up by the ksoftirqd running the TIMER softirq. But as the cpu_chill() is
+|called from softirq context, it may block the ksoftirqd() from running, in
+|which case, it may never wake up the msleep() causing the deadlock.
+
++ bigeasy later changed to schedule_hrtimeout()
+|If a task calls cpu_chill() and gets woken up by a regular or spurious
+|wakeup and has a signal pending, then it exits the sleep loop in
+|do_nanosleep() and sets up the restart block. If restart->nanosleep.type is
+|not TI_NONE then this results in accessing a stale user pointer from a
+|previously interrupted syscall and a copy to user based on the stale
+|pointer or a BUG() when 'type' is not supported in nanosleep_copyout().
+
++ bigeasy: add PF_NOFREEZE:
+| [....] Waiting for /dev to be fully populated...
+| =====================================
+| [ BUG: udevd/229 still has locks held! ]
+| 3.12.11-rt17 #23 Not tainted
+| -------------------------------------
+| 1 lock held by udevd/229:
+| #0: (&type->i_mutex_dir_key#2){+.+.+.}, at: lookup_slow+0x28/0x98
+|
+| stack backtrace:
+| CPU: 0 PID: 229 Comm: udevd Not tainted 3.12.11-rt17 #23
+| (unwind_backtrace+0x0/0xf8) from (show_stack+0x10/0x14)
+| (show_stack+0x10/0x14) from (dump_stack+0x74/0xbc)
+| (dump_stack+0x74/0xbc) from (do_nanosleep+0x120/0x160)
+| (do_nanosleep+0x120/0x160) from (hrtimer_nanosleep+0x90/0x110)
+| (hrtimer_nanosleep+0x90/0x110) from (cpu_chill+0x30/0x38)
+| (cpu_chill+0x30/0x38) from (dentry_kill+0x158/0x1ec)
+| (dentry_kill+0x158/0x1ec) from (dput+0x74/0x15c)
+| (dput+0x74/0x15c) from (lookup_real+0x4c/0x50)
+| (lookup_real+0x4c/0x50) from (__lookup_hash+0x34/0x44)
+| (__lookup_hash+0x34/0x44) from (lookup_slow+0x38/0x98)
+| (lookup_slow+0x38/0x98) from (path_lookupat+0x208/0x7fc)
+| (path_lookupat+0x208/0x7fc) from (filename_lookup+0x20/0x60)
+| (filename_lookup+0x20/0x60) from (user_path_at_empty+0x50/0x7c)
+| (user_path_at_empty+0x50/0x7c) from (user_path_at+0x14/0x1c)
+| (user_path_at+0x14/0x1c) from (vfs_fstatat+0x48/0x94)
+| (vfs_fstatat+0x48/0x94) from (SyS_stat64+0x14/0x30)
+| (SyS_stat64+0x14/0x30) from (ret_fast_syscall+0x0/0x48)
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/delay.h | 6 ++++++
+ kernel/time/hrtimer.c | 30 ++++++++++++++++++++++++++++++
+ 2 files changed, 36 insertions(+)
+
+diff --git a/include/linux/delay.h b/include/linux/delay.h
+index 1d0e2ce6b6d9..02b37178b54f 100644
+--- a/include/linux/delay.h
++++ b/include/linux/delay.h
+@@ -76,4 +76,10 @@ static inline void fsleep(unsigned long usecs)
+ msleep(DIV_ROUND_UP(usecs, 1000));
+ }
+
++#ifdef CONFIG_PREEMPT_RT
++extern void cpu_chill(void);
++#else
++# define cpu_chill() cpu_relax()
++#endif
++
+ #endif /* defined(_LINUX_DELAY_H) */
+diff --git a/kernel/time/hrtimer.c b/kernel/time/hrtimer.c
+index ede09dda36e9..9dcc6215599f 100644
+--- a/kernel/time/hrtimer.c
++++ b/kernel/time/hrtimer.c
+@@ -2054,6 +2054,36 @@ SYSCALL_DEFINE2(nanosleep_time32, struct old_timespec32 __user *, rqtp,
+ }
+ #endif
+
++#ifdef CONFIG_PREEMPT_RT
++/*
++ * Sleep for 1 ms in hope whoever holds what we want will let it go.
++ */
++void cpu_chill(void)
++{
++ unsigned int freeze_flag = current->flags & PF_NOFREEZE;
++ struct task_struct *self = current;
++ ktime_t chill_time;
++
++ raw_spin_lock_irq(&self->pi_lock);
++ self->saved_state = self->state;
++ __set_current_state_no_track(TASK_UNINTERRUPTIBLE);
++ raw_spin_unlock_irq(&self->pi_lock);
++
++ chill_time = ktime_set(0, NSEC_PER_MSEC);
++
++ current->flags |= PF_NOFREEZE;
++ schedule_hrtimeout(&chill_time, HRTIMER_MODE_REL_HARD);
++ if (!freeze_flag)
++ current->flags &= ~PF_NOFREEZE;
++
++ raw_spin_lock_irq(&self->pi_lock);
++ __set_current_state_no_track(self->saved_state);
++ self->saved_state = TASK_RUNNING;
++ raw_spin_unlock_irq(&self->pi_lock);
++}
++EXPORT_SYMBOL(cpu_chill);
++#endif
++
+ /*
+ * Functions related to boot-time initialization:
+ */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0235-fs-namespace-Use-cpu_chill-in-trylock-loops.patch b/debian/patches-rt/0235-fs-namespace-Use-cpu_chill-in-trylock-loops.patch
new file mode 100644
index 000000000..046c48516
--- /dev/null
+++ b/debian/patches-rt/0235-fs-namespace-Use-cpu_chill-in-trylock-loops.patch
@@ -0,0 +1,44 @@
+From e174bc8c285602601d09d4e7997654e66a18bc87 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Wed, 7 Mar 2012 21:00:34 +0100
+Subject: [PATCH 235/323] fs: namespace: Use cpu_chill() in trylock loops
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Retry loops on RT might loop forever when the modifying side was
+preempted. Use cpu_chill() instead of cpu_relax() to let the system
+make progress.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ fs/namespace.c | 8 ++++++--
+ 1 file changed, 6 insertions(+), 2 deletions(-)
+
+diff --git a/fs/namespace.c b/fs/namespace.c
+index 046b084136c5..6a550e342d6b 100644
+--- a/fs/namespace.c
++++ b/fs/namespace.c
+@@ -14,6 +14,7 @@
+ #include <linux/mnt_namespace.h>
+ #include <linux/user_namespace.h>
+ #include <linux/namei.h>
++#include <linux/delay.h>
+ #include <linux/security.h>
+ #include <linux/cred.h>
+ #include <linux/idr.h>
+@@ -321,8 +322,11 @@ int __mnt_want_write(struct vfsmount *m)
+ * incremented count after it has set MNT_WRITE_HOLD.
+ */
+ smp_mb();
+- while (READ_ONCE(mnt->mnt.mnt_flags) & MNT_WRITE_HOLD)
+- cpu_relax();
++ while (READ_ONCE(mnt->mnt.mnt_flags) & MNT_WRITE_HOLD) {
++ preempt_enable();
++ cpu_chill();
++ preempt_disable();
++ }
+ /*
+ * After the slowpath clears MNT_WRITE_HOLD, mnt_is_readonly will
+ * be set to match its requirements. So we must not load that until
+--
+2.43.0
+
diff --git a/debian/patches-rt/0236-net-Use-skbufhead-with-raw-lock.patch b/debian/patches-rt/0236-net-Use-skbufhead-with-raw-lock.patch
new file mode 100644
index 000000000..48d95d023
--- /dev/null
+++ b/debian/patches-rt/0236-net-Use-skbufhead-with-raw-lock.patch
@@ -0,0 +1,74 @@
+From d58fbc3fc363cee50de0ac64be0b90fd2666956a Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 12 Jul 2011 15:38:34 +0200
+Subject: [PATCH 236/323] net: Use skbufhead with raw lock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Use the rps lock as rawlock so we can keep irq-off regions. It looks low
+latency. However we can't kfree() from this context therefore we defer this
+to the softirq and use the tofree_queue list for it (similar to process_queue).
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/skbuff.h | 7 +++++++
+ net/core/dev.c | 6 +++---
+ 2 files changed, 10 insertions(+), 3 deletions(-)
+
+diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
+index a210f1995862..af89bd5e7d56 100644
+--- a/include/linux/skbuff.h
++++ b/include/linux/skbuff.h
+@@ -296,6 +296,7 @@ struct sk_buff_head {
+
+ __u32 qlen;
+ spinlock_t lock;
++ raw_spinlock_t raw_lock;
+ };
+
+ struct sk_buff;
+@@ -1892,6 +1893,12 @@ static inline void skb_queue_head_init(struct sk_buff_head *list)
+ __skb_queue_head_init(list);
+ }
+
++static inline void skb_queue_head_init_raw(struct sk_buff_head *list)
++{
++ raw_spin_lock_init(&list->raw_lock);
++ __skb_queue_head_init(list);
++}
++
+ static inline void skb_queue_head_init_class(struct sk_buff_head *list,
+ struct lock_class_key *class)
+ {
+diff --git a/net/core/dev.c b/net/core/dev.c
+index f973f53c7a1f..895eb42bb5d6 100644
+--- a/net/core/dev.c
++++ b/net/core/dev.c
+@@ -221,14 +221,14 @@ static inline struct hlist_head *dev_index_hash(struct net *net, int ifindex)
+ static inline void rps_lock(struct softnet_data *sd)
+ {
+ #ifdef CONFIG_RPS
+- spin_lock(&sd->input_pkt_queue.lock);
++ raw_spin_lock(&sd->input_pkt_queue.raw_lock);
+ #endif
+ }
+
+ static inline void rps_unlock(struct softnet_data *sd)
+ {
+ #ifdef CONFIG_RPS
+- spin_unlock(&sd->input_pkt_queue.lock);
++ raw_spin_unlock(&sd->input_pkt_queue.raw_lock);
+ #endif
+ }
+
+@@ -11296,7 +11296,7 @@ static int __init net_dev_init(void)
+
+ INIT_WORK(flush, flush_backlog);
+
+- skb_queue_head_init(&sd->input_pkt_queue);
++ skb_queue_head_init_raw(&sd->input_pkt_queue);
+ skb_queue_head_init(&sd->process_queue);
+ #ifdef CONFIG_XFRM_OFFLOAD
+ skb_queue_head_init(&sd->xfrm_backlog);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0237-net-Dequeue-in-dev_cpu_dead-without-the-lock.patch b/debian/patches-rt/0237-net-Dequeue-in-dev_cpu_dead-without-the-lock.patch
new file mode 100644
index 000000000..36e0d28d2
--- /dev/null
+++ b/debian/patches-rt/0237-net-Dequeue-in-dev_cpu_dead-without-the-lock.patch
@@ -0,0 +1,37 @@
+From 95dbb10c81619c9a35a63f73dadd7379d95fdec0 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 16 Sep 2020 16:15:39 +0200
+Subject: [PATCH 237/323] net: Dequeue in dev_cpu_dead() without the lock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Upstream uses skb_dequeue() to acquire lock of `input_pkt_queue'. The reason is
+to synchronize against a remote CPU which still thinks that the CPU is online
+enqueues packets to this CPU.
+There are no guarantees that the packet is enqueued before the callback is run,
+it just hope.
+RT however complains about an not initialized lock because it uses another lock
+for `input_pkt_queue' due to the IRQ-off nature of the context.
+
+Use the unlocked dequeue version for `input_pkt_queue'.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ net/core/dev.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/net/core/dev.c b/net/core/dev.c
+index 895eb42bb5d6..c55993848233 100644
+--- a/net/core/dev.c
++++ b/net/core/dev.c
+@@ -10980,7 +10980,7 @@ static int dev_cpu_dead(unsigned int oldcpu)
+ netif_rx_ni(skb);
+ input_queue_head_incr(oldsd);
+ }
+- while ((skb = skb_dequeue(&oldsd->input_pkt_queue))) {
++ while ((skb = __skb_dequeue(&oldsd->input_pkt_queue))) {
+ netif_rx_ni(skb);
+ input_queue_head_incr(oldsd);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0238-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch b/debian/patches-rt/0238-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch
new file mode 100644
index 000000000..fe05e1e78
--- /dev/null
+++ b/debian/patches-rt/0238-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch
@@ -0,0 +1,42 @@
+From 3a7ff2036ac29effdf8fc39fc7ea9610f98ca5e4 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 30 Mar 2016 13:36:29 +0200
+Subject: [PATCH 238/323] net: dev: always take qdisc's busylock in
+ __dev_xmit_skb()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The root-lock is dropped before dev_hard_start_xmit() is invoked and after
+setting the __QDISC___STATE_RUNNING bit. If this task is now pushed away
+by a task with a higher priority then the task with the higher priority
+won't be able to submit packets to the NIC directly instead they will be
+enqueued into the Qdisc. The NIC will remain idle until the task(s) with
+higher priority leave the CPU and the task with lower priority gets back
+and finishes the job.
+
+If we take always the busylock we ensure that the RT task can boost the
+low-prio task and submit the packet.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ net/core/dev.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/net/core/dev.c b/net/core/dev.c
+index c55993848233..c3b4e5e320ca 100644
+--- a/net/core/dev.c
++++ b/net/core/dev.c
+@@ -3796,7 +3796,11 @@ static inline int __dev_xmit_skb(struct sk_buff *skb, struct Qdisc *q,
+ * This permits qdisc->running owner to get the lock more
+ * often and dequeue packets faster.
+ */
++#ifdef CONFIG_PREEMPT_RT
++ contended = true;
++#else
+ contended = qdisc_is_running(q);
++#endif
+ if (unlikely(contended))
+ spin_lock(&q->busylock);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0239-irqwork-push-most-work-into-softirq-context.patch b/debian/patches-rt/0239-irqwork-push-most-work-into-softirq-context.patch
new file mode 100644
index 000000000..1ac41992f
--- /dev/null
+++ b/debian/patches-rt/0239-irqwork-push-most-work-into-softirq-context.patch
@@ -0,0 +1,189 @@
+From 57453ffdf0bcba3fa27ca0b19f622ea371c2c686 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 23 Jun 2015 15:32:51 +0200
+Subject: [PATCH 239/323] irqwork: push most work into softirq context
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Initially we defered all irqwork into softirq because we didn't want the
+latency spikes if perf or another user was busy and delayed the RT task.
+The NOHZ trigger (nohz_full_kick_work) was the first user that did not work
+as expected if it did not run in the original irqwork context so we had to
+bring it back somehow for it. push_irq_work_func is the second one that
+requires this.
+
+This patch adds the IRQ_WORK_HARD_IRQ which makes sure the callback runs
+in raw-irq context. Everything else is defered into softirq context. Without
+-RT we have the orignal behavior.
+
+This patch incorporates tglx orignal work which revoked a little bringing back
+the arch_irq_work_raise() if possible and a few fixes from Steven Rostedt and
+Mike Galbraith,
+
+[bigeasy: melt tglx's irq_work_tick_soft() which splits irq_work_tick() into a
+ hard and soft variant]
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ include/linux/irq_work.h | 6 +++++
+ kernel/irq_work.c | 58 +++++++++++++++++++++++++++++++---------
+ kernel/sched/topology.c | 1 +
+ kernel/time/timer.c | 2 ++
+ 4 files changed, 55 insertions(+), 12 deletions(-)
+
+diff --git a/include/linux/irq_work.h b/include/linux/irq_work.h
+index 30823780c192..f941f2d7d71c 100644
+--- a/include/linux/irq_work.h
++++ b/include/linux/irq_work.h
+@@ -55,4 +55,10 @@ static inline void irq_work_run(void) { }
+ static inline void irq_work_single(void *arg) { }
+ #endif
+
++#if defined(CONFIG_IRQ_WORK) && defined(CONFIG_PREEMPT_RT)
++void irq_work_tick_soft(void);
++#else
++static inline void irq_work_tick_soft(void) { }
++#endif
++
+ #endif /* _LINUX_IRQ_WORK_H */
+diff --git a/kernel/irq_work.c b/kernel/irq_work.c
+index eca83965b631..8183d30e1bb1 100644
+--- a/kernel/irq_work.c
++++ b/kernel/irq_work.c
+@@ -18,6 +18,7 @@
+ #include <linux/cpu.h>
+ #include <linux/notifier.h>
+ #include <linux/smp.h>
++#include <linux/interrupt.h>
+ #include <asm/processor.h>
+
+
+@@ -52,13 +53,19 @@ void __weak arch_irq_work_raise(void)
+ /* Enqueue on current CPU, work must already be claimed and preempt disabled */
+ static void __irq_work_queue_local(struct irq_work *work)
+ {
++ struct llist_head *list;
++ bool lazy_work, realtime = IS_ENABLED(CONFIG_PREEMPT_RT);
++
++ lazy_work = atomic_read(&work->flags) & IRQ_WORK_LAZY;
++
+ /* If the work is "lazy", handle it from next tick if any */
+- if (atomic_read(&work->flags) & IRQ_WORK_LAZY) {
+- if (llist_add(&work->llnode, this_cpu_ptr(&lazy_list)) &&
+- tick_nohz_tick_stopped())
+- arch_irq_work_raise();
+- } else {
+- if (llist_add(&work->llnode, this_cpu_ptr(&raised_list)))
++ if (lazy_work || (realtime && !(atomic_read(&work->flags) & IRQ_WORK_HARD_IRQ)))
++ list = this_cpu_ptr(&lazy_list);
++ else
++ list = this_cpu_ptr(&raised_list);
++
++ if (llist_add(&work->llnode, list)) {
++ if (!lazy_work || tick_nohz_tick_stopped())
+ arch_irq_work_raise();
+ }
+ }
+@@ -102,7 +109,13 @@ bool irq_work_queue_on(struct irq_work *work, int cpu)
+ if (cpu != smp_processor_id()) {
+ /* Arch remote IPI send/receive backend aren't NMI safe */
+ WARN_ON_ONCE(in_nmi());
+- __smp_call_single_queue(cpu, &work->llnode);
++
++ if (IS_ENABLED(CONFIG_PREEMPT_RT) && !(atomic_read(&work->flags) & IRQ_WORK_HARD_IRQ)) {
++ if (llist_add(&work->llnode, &per_cpu(lazy_list, cpu)))
++ arch_send_call_function_single_ipi(cpu);
++ } else {
++ __smp_call_single_queue(cpu, &work->llnode);
++ }
+ } else {
+ __irq_work_queue_local(work);
+ }
+@@ -120,9 +133,8 @@ bool irq_work_needs_cpu(void)
+ raised = this_cpu_ptr(&raised_list);
+ lazy = this_cpu_ptr(&lazy_list);
+
+- if (llist_empty(raised) || arch_irq_work_has_interrupt())
+- if (llist_empty(lazy))
+- return false;
++ if (llist_empty(raised) && llist_empty(lazy))
++ return false;
+
+ /* All work should have been flushed before going offline */
+ WARN_ON_ONCE(cpu_is_offline(smp_processor_id()));
+@@ -160,8 +172,12 @@ static void irq_work_run_list(struct llist_head *list)
+ struct irq_work *work, *tmp;
+ struct llist_node *llnode;
+
++#ifndef CONFIG_PREEMPT_RT
++ /*
++ * nort: On RT IRQ-work may run in SOFTIRQ context.
++ */
+ BUG_ON(!irqs_disabled());
+-
++#endif
+ if (llist_empty(list))
+ return;
+
+@@ -177,7 +193,16 @@ static void irq_work_run_list(struct llist_head *list)
+ void irq_work_run(void)
+ {
+ irq_work_run_list(this_cpu_ptr(&raised_list));
+- irq_work_run_list(this_cpu_ptr(&lazy_list));
++ if (IS_ENABLED(CONFIG_PREEMPT_RT)) {
++ /*
++ * NOTE: we raise softirq via IPI for safety,
++ * and execute in irq_work_tick() to move the
++ * overhead from hard to soft irq context.
++ */
++ if (!llist_empty(this_cpu_ptr(&lazy_list)))
++ raise_softirq(TIMER_SOFTIRQ);
++ } else
++ irq_work_run_list(this_cpu_ptr(&lazy_list));
+ }
+ EXPORT_SYMBOL_GPL(irq_work_run);
+
+@@ -187,8 +212,17 @@ void irq_work_tick(void)
+
+ if (!llist_empty(raised) && !arch_irq_work_has_interrupt())
+ irq_work_run_list(raised);
++
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT))
++ irq_work_run_list(this_cpu_ptr(&lazy_list));
++}
++
++#if defined(CONFIG_IRQ_WORK) && defined(CONFIG_PREEMPT_RT)
++void irq_work_tick_soft(void)
++{
+ irq_work_run_list(this_cpu_ptr(&lazy_list));
+ }
++#endif
+
+ /*
+ * Synchronize against the irq_work @entry, ensures the entry is not
+diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
+index ff2c6d3ba6c7..2f1bea4f7dba 100644
+--- a/kernel/sched/topology.c
++++ b/kernel/sched/topology.c
+@@ -514,6 +514,7 @@ static int init_rootdomain(struct root_domain *rd)
+ rd->rto_cpu = -1;
+ raw_spin_lock_init(&rd->rto_lock);
+ init_irq_work(&rd->rto_push_work, rto_push_irq_work_func);
++ atomic_or(IRQ_WORK_HARD_IRQ, &rd->rto_push_work.flags);
+ #endif
+
+ init_dl_bw(&rd->dl_bw);
+diff --git a/kernel/time/timer.c b/kernel/time/timer.c
+index a4fdc7cfb723..1cad0efd635c 100644
+--- a/kernel/time/timer.c
++++ b/kernel/time/timer.c
+@@ -1770,6 +1770,8 @@ static __latent_entropy void run_timer_softirq(struct softirq_action *h)
+ {
+ struct timer_base *base = this_cpu_ptr(&timer_bases[BASE_STD]);
+
++ irq_work_tick_soft();
++
+ __run_timers(base);
+ if (IS_ENABLED(CONFIG_NO_HZ_COMMON))
+ __run_timers(this_cpu_ptr(&timer_bases[BASE_DEF]));
+--
+2.43.0
+
diff --git a/debian/patches-rt/0240-x86-crypto-Reduce-preempt-disabled-regions.patch b/debian/patches-rt/0240-x86-crypto-Reduce-preempt-disabled-regions.patch
new file mode 100644
index 000000000..b84653cfb
--- /dev/null
+++ b/debian/patches-rt/0240-x86-crypto-Reduce-preempt-disabled-regions.patch
@@ -0,0 +1,118 @@
+From 523f64f1a87e6454e46f5e25ae797b6a7050a6a8 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Mon, 14 Nov 2011 18:19:27 +0100
+Subject: [PATCH 240/323] x86: crypto: Reduce preempt disabled regions
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Restrict the preempt disabled regions to the actual floating point
+operations and enable preemption for the administrative actions.
+
+This is necessary on RT to avoid that kfree and other operations are
+called with preemption disabled.
+
+Reported-and-tested-by: Carsten Emde <cbe@osadl.org>
+Signed-off-by: Peter Zijlstra <peterz@infradead.org>
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ arch/x86/crypto/aesni-intel_glue.c | 22 ++++++++++++----------
+ 1 file changed, 12 insertions(+), 10 deletions(-)
+
+diff --git a/arch/x86/crypto/aesni-intel_glue.c b/arch/x86/crypto/aesni-intel_glue.c
+index be891fdf8d17..29c716ed103f 100644
+--- a/arch/x86/crypto/aesni-intel_glue.c
++++ b/arch/x86/crypto/aesni-intel_glue.c
+@@ -379,14 +379,14 @@ static int ecb_encrypt(struct skcipher_request *req)
+
+ err = skcipher_walk_virt(&walk, req, true);
+
+- kernel_fpu_begin();
+ while ((nbytes = walk.nbytes)) {
++ kernel_fpu_begin();
+ aesni_ecb_enc(ctx, walk.dst.virt.addr, walk.src.virt.addr,
+ nbytes & AES_BLOCK_MASK);
++ kernel_fpu_end();
+ nbytes &= AES_BLOCK_SIZE - 1;
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+- kernel_fpu_end();
+
+ return err;
+ }
+@@ -401,14 +401,14 @@ static int ecb_decrypt(struct skcipher_request *req)
+
+ err = skcipher_walk_virt(&walk, req, true);
+
+- kernel_fpu_begin();
+ while ((nbytes = walk.nbytes)) {
++ kernel_fpu_begin();
+ aesni_ecb_dec(ctx, walk.dst.virt.addr, walk.src.virt.addr,
+ nbytes & AES_BLOCK_MASK);
++ kernel_fpu_end();
+ nbytes &= AES_BLOCK_SIZE - 1;
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+- kernel_fpu_end();
+
+ return err;
+ }
+@@ -423,14 +423,14 @@ static int cbc_encrypt(struct skcipher_request *req)
+
+ err = skcipher_walk_virt(&walk, req, true);
+
+- kernel_fpu_begin();
+ while ((nbytes = walk.nbytes)) {
++ kernel_fpu_begin();
+ aesni_cbc_enc(ctx, walk.dst.virt.addr, walk.src.virt.addr,
+ nbytes & AES_BLOCK_MASK, walk.iv);
++ kernel_fpu_end();
+ nbytes &= AES_BLOCK_SIZE - 1;
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+- kernel_fpu_end();
+
+ return err;
+ }
+@@ -445,14 +445,14 @@ static int cbc_decrypt(struct skcipher_request *req)
+
+ err = skcipher_walk_virt(&walk, req, true);
+
+- kernel_fpu_begin();
+ while ((nbytes = walk.nbytes)) {
++ kernel_fpu_begin();
+ aesni_cbc_dec(ctx, walk.dst.virt.addr, walk.src.virt.addr,
+ nbytes & AES_BLOCK_MASK, walk.iv);
++ kernel_fpu_end();
+ nbytes &= AES_BLOCK_SIZE - 1;
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+- kernel_fpu_end();
+
+ return err;
+ }
+@@ -500,18 +500,20 @@ static int ctr_crypt(struct skcipher_request *req)
+
+ err = skcipher_walk_virt(&walk, req, true);
+
+- kernel_fpu_begin();
+ while ((nbytes = walk.nbytes) >= AES_BLOCK_SIZE) {
++ kernel_fpu_begin();
+ aesni_ctr_enc_tfm(ctx, walk.dst.virt.addr, walk.src.virt.addr,
+ nbytes & AES_BLOCK_MASK, walk.iv);
++ kernel_fpu_end();
+ nbytes &= AES_BLOCK_SIZE - 1;
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+ if (walk.nbytes) {
++ kernel_fpu_begin();
+ ctr_crypt_final(ctx, &walk);
++ kernel_fpu_end();
+ err = skcipher_walk_done(&walk, 0);
+ }
+- kernel_fpu_end();
+
+ return err;
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0241-crypto-Reduce-preempt-disabled-regions-more-algos.patch b/debian/patches-rt/0241-crypto-Reduce-preempt-disabled-regions-more-algos.patch
new file mode 100644
index 000000000..f02d88086
--- /dev/null
+++ b/debian/patches-rt/0241-crypto-Reduce-preempt-disabled-regions-more-algos.patch
@@ -0,0 +1,240 @@
+From e9bc715aa25df5aa654a5243e90ee31fb1b1e010 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 21 Feb 2014 17:24:04 +0100
+Subject: [PATCH 241/323] crypto: Reduce preempt disabled regions, more algos
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Don Estabrook reported
+| kernel: WARNING: CPU: 2 PID: 858 at kernel/sched/core.c:2428 migrate_disable+0xed/0x100()
+| kernel: WARNING: CPU: 2 PID: 858 at kernel/sched/core.c:2462 migrate_enable+0x17b/0x200()
+| kernel: WARNING: CPU: 3 PID: 865 at kernel/sched/core.c:2428 migrate_disable+0xed/0x100()
+
+and his backtrace showed some crypto functions which looked fine.
+
+The problem is the following sequence:
+
+glue_xts_crypt_128bit()
+{
+ blkcipher_walk_virt(); /* normal migrate_disable() */
+
+ glue_fpu_begin(); /* get atomic */
+
+ while (nbytes) {
+ __glue_xts_crypt_128bit();
+ blkcipher_walk_done(); /* with nbytes = 0, migrate_enable()
+ * while we are atomic */
+ };
+ glue_fpu_end() /* no longer atomic */
+}
+
+and this is why the counter get out of sync and the warning is printed.
+The other problem is that we are non-preemptible between
+glue_fpu_begin() and glue_fpu_end() and the latency grows. To fix this,
+I shorten the FPU off region and ensure blkcipher_walk_done() is called
+with preemption enabled. This might hurt the performance because we now
+enable/disable the FPU state more often but we gain lower latency and
+the bug is gone.
+
+Reported-by: Don Estabrook <don.estabrook@gmail.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/x86/crypto/cast5_avx_glue.c | 21 +++++++++------------
+ arch/x86/crypto/glue_helper.c | 26 +++++++++++++++-----------
+ 2 files changed, 24 insertions(+), 23 deletions(-)
+
+diff --git a/arch/x86/crypto/cast5_avx_glue.c b/arch/x86/crypto/cast5_avx_glue.c
+index 384ccb00f9e1..2f8df8ef8644 100644
+--- a/arch/x86/crypto/cast5_avx_glue.c
++++ b/arch/x86/crypto/cast5_avx_glue.c
+@@ -46,7 +46,7 @@ static inline void cast5_fpu_end(bool fpu_enabled)
+
+ static int ecb_crypt(struct skcipher_request *req, bool enc)
+ {
+- bool fpu_enabled = false;
++ bool fpu_enabled;
+ struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req);
+ struct cast5_ctx *ctx = crypto_skcipher_ctx(tfm);
+ struct skcipher_walk walk;
+@@ -61,7 +61,7 @@ static int ecb_crypt(struct skcipher_request *req, bool enc)
+ u8 *wsrc = walk.src.virt.addr;
+ u8 *wdst = walk.dst.virt.addr;
+
+- fpu_enabled = cast5_fpu_begin(fpu_enabled, &walk, nbytes);
++ fpu_enabled = cast5_fpu_begin(false, &walk, nbytes);
+
+ /* Process multi-block batch */
+ if (nbytes >= bsize * CAST5_PARALLEL_BLOCKS) {
+@@ -90,10 +90,9 @@ static int ecb_crypt(struct skcipher_request *req, bool enc)
+ } while (nbytes >= bsize);
+
+ done:
++ cast5_fpu_end(fpu_enabled);
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+-
+- cast5_fpu_end(fpu_enabled);
+ return err;
+ }
+
+@@ -197,7 +196,7 @@ static int cbc_decrypt(struct skcipher_request *req)
+ {
+ struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req);
+ struct cast5_ctx *ctx = crypto_skcipher_ctx(tfm);
+- bool fpu_enabled = false;
++ bool fpu_enabled;
+ struct skcipher_walk walk;
+ unsigned int nbytes;
+ int err;
+@@ -205,12 +204,11 @@ static int cbc_decrypt(struct skcipher_request *req)
+ err = skcipher_walk_virt(&walk, req, false);
+
+ while ((nbytes = walk.nbytes)) {
+- fpu_enabled = cast5_fpu_begin(fpu_enabled, &walk, nbytes);
++ fpu_enabled = cast5_fpu_begin(false, &walk, nbytes);
+ nbytes = __cbc_decrypt(ctx, &walk);
++ cast5_fpu_end(fpu_enabled);
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+-
+- cast5_fpu_end(fpu_enabled);
+ return err;
+ }
+
+@@ -277,7 +275,7 @@ static int ctr_crypt(struct skcipher_request *req)
+ {
+ struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req);
+ struct cast5_ctx *ctx = crypto_skcipher_ctx(tfm);
+- bool fpu_enabled = false;
++ bool fpu_enabled;
+ struct skcipher_walk walk;
+ unsigned int nbytes;
+ int err;
+@@ -285,13 +283,12 @@ static int ctr_crypt(struct skcipher_request *req)
+ err = skcipher_walk_virt(&walk, req, false);
+
+ while ((nbytes = walk.nbytes) >= CAST5_BLOCK_SIZE) {
+- fpu_enabled = cast5_fpu_begin(fpu_enabled, &walk, nbytes);
++ fpu_enabled = cast5_fpu_begin(false, &walk, nbytes);
+ nbytes = __ctr_crypt(&walk, ctx);
++ cast5_fpu_end(fpu_enabled);
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+
+- cast5_fpu_end(fpu_enabled);
+-
+ if (walk.nbytes) {
+ ctr_crypt_final(&walk, ctx);
+ err = skcipher_walk_done(&walk, 0);
+diff --git a/arch/x86/crypto/glue_helper.c b/arch/x86/crypto/glue_helper.c
+index d3d91a0abf88..6d0774721514 100644
+--- a/arch/x86/crypto/glue_helper.c
++++ b/arch/x86/crypto/glue_helper.c
+@@ -24,7 +24,7 @@ int glue_ecb_req_128bit(const struct common_glue_ctx *gctx,
+ void *ctx = crypto_skcipher_ctx(crypto_skcipher_reqtfm(req));
+ const unsigned int bsize = 128 / 8;
+ struct skcipher_walk walk;
+- bool fpu_enabled = false;
++ bool fpu_enabled;
+ unsigned int nbytes;
+ int err;
+
+@@ -37,7 +37,7 @@ int glue_ecb_req_128bit(const struct common_glue_ctx *gctx,
+ unsigned int i;
+
+ fpu_enabled = glue_fpu_begin(bsize, gctx->fpu_blocks_limit,
+- &walk, fpu_enabled, nbytes);
++ &walk, false, nbytes);
+ for (i = 0; i < gctx->num_funcs; i++) {
+ func_bytes = bsize * gctx->funcs[i].num_blocks;
+
+@@ -55,10 +55,9 @@ int glue_ecb_req_128bit(const struct common_glue_ctx *gctx,
+ if (nbytes < bsize)
+ break;
+ }
++ glue_fpu_end(fpu_enabled);
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+-
+- glue_fpu_end(fpu_enabled);
+ return err;
+ }
+ EXPORT_SYMBOL_GPL(glue_ecb_req_128bit);
+@@ -101,7 +100,7 @@ int glue_cbc_decrypt_req_128bit(const struct common_glue_ctx *gctx,
+ void *ctx = crypto_skcipher_ctx(crypto_skcipher_reqtfm(req));
+ const unsigned int bsize = 128 / 8;
+ struct skcipher_walk walk;
+- bool fpu_enabled = false;
++ bool fpu_enabled;
+ unsigned int nbytes;
+ int err;
+
+@@ -115,7 +114,7 @@ int glue_cbc_decrypt_req_128bit(const struct common_glue_ctx *gctx,
+ u128 last_iv;
+
+ fpu_enabled = glue_fpu_begin(bsize, gctx->fpu_blocks_limit,
+- &walk, fpu_enabled, nbytes);
++ &walk, false, nbytes);
+ /* Start of the last block. */
+ src += nbytes / bsize - 1;
+ dst += nbytes / bsize - 1;
+@@ -148,10 +147,10 @@ int glue_cbc_decrypt_req_128bit(const struct common_glue_ctx *gctx,
+ done:
+ u128_xor(dst, dst, (u128 *)walk.iv);
+ *(u128 *)walk.iv = last_iv;
++ glue_fpu_end(fpu_enabled);
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+
+- glue_fpu_end(fpu_enabled);
+ return err;
+ }
+ EXPORT_SYMBOL_GPL(glue_cbc_decrypt_req_128bit);
+@@ -162,7 +161,7 @@ int glue_ctr_req_128bit(const struct common_glue_ctx *gctx,
+ void *ctx = crypto_skcipher_ctx(crypto_skcipher_reqtfm(req));
+ const unsigned int bsize = 128 / 8;
+ struct skcipher_walk walk;
+- bool fpu_enabled = false;
++ bool fpu_enabled;
+ unsigned int nbytes;
+ int err;
+
+@@ -176,7 +175,7 @@ int glue_ctr_req_128bit(const struct common_glue_ctx *gctx,
+ le128 ctrblk;
+
+ fpu_enabled = glue_fpu_begin(bsize, gctx->fpu_blocks_limit,
+- &walk, fpu_enabled, nbytes);
++ &walk, false, nbytes);
+
+ be128_to_le128(&ctrblk, (be128 *)walk.iv);
+
+@@ -202,11 +201,10 @@ int glue_ctr_req_128bit(const struct common_glue_ctx *gctx,
+ }
+
+ le128_to_be128((be128 *)walk.iv, &ctrblk);
++ glue_fpu_end(fpu_enabled);
+ err = skcipher_walk_done(&walk, nbytes);
+ }
+
+- glue_fpu_end(fpu_enabled);
+-
+ if (nbytes) {
+ le128 ctrblk;
+ u128 tmp;
+@@ -306,8 +304,14 @@ int glue_xts_req_128bit(const struct common_glue_ctx *gctx,
+ tweak_fn(tweak_ctx, walk.iv, walk.iv);
+
+ while (nbytes) {
++ fpu_enabled = glue_fpu_begin(bsize, gctx->fpu_blocks_limit,
++ &walk, fpu_enabled,
++ nbytes < bsize ? bsize : nbytes);
+ nbytes = __glue_xts_req_128bit(gctx, crypt_ctx, &walk);
+
++ glue_fpu_end(fpu_enabled);
++ fpu_enabled = false;
++
+ err = skcipher_walk_done(&walk, nbytes);
+ nbytes = walk.nbytes;
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0242-crypto-limit-more-FPU-enabled-sections.patch b/debian/patches-rt/0242-crypto-limit-more-FPU-enabled-sections.patch
new file mode 100644
index 000000000..9f98cd223
--- /dev/null
+++ b/debian/patches-rt/0242-crypto-limit-more-FPU-enabled-sections.patch
@@ -0,0 +1,74 @@
+From dd8a48342b4ff4b80a32a4ae49115db93ad069c1 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 30 Nov 2017 13:40:10 +0100
+Subject: [PATCH 242/323] crypto: limit more FPU-enabled sections
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Those crypto drivers use SSE/AVX/… for their crypto work and in order to
+do so in kernel they need to enable the "FPU" in kernel mode which
+disables preemption.
+There are two problems with the way they are used:
+- the while loop which processes X bytes may create latency spikes and
+ should be avoided or limited.
+- the cipher-walk-next part may allocate/free memory and may use
+ kmap_atomic().
+
+The whole kernel_fpu_begin()/end() processing isn't probably that cheap.
+It most likely makes sense to process as much of those as possible in one
+go. The new *_fpu_sched_rt() schedules only if a RT task is pending.
+
+Probably we should measure the performance those ciphers in pure SW
+mode and with this optimisations to see if it makes sense to keep them
+for RT.
+
+This kernel_fpu_resched() makes the code more preemptible which might hurt
+performance.
+
+Cc: stable-rt@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/x86/include/asm/fpu/api.h | 1 +
+ arch/x86/kernel/fpu/core.c | 12 ++++++++++++
+ 2 files changed, 13 insertions(+)
+
+diff --git a/arch/x86/include/asm/fpu/api.h b/arch/x86/include/asm/fpu/api.h
+index ad2fee785310..d31b0886592a 100644
+--- a/arch/x86/include/asm/fpu/api.h
++++ b/arch/x86/include/asm/fpu/api.h
+@@ -28,6 +28,7 @@ extern void kernel_fpu_begin_mask(unsigned int kfpu_mask);
+ extern void kernel_fpu_end(void);
+ extern bool irq_fpu_usable(void);
+ extern void fpregs_mark_activate(void);
++extern void kernel_fpu_resched(void);
+
+ /* Code that is unaware of kernel_fpu_begin_mask() can use this */
+ static inline void kernel_fpu_begin(void)
+diff --git a/arch/x86/kernel/fpu/core.c b/arch/x86/kernel/fpu/core.c
+index 835b948095cd..8cfc2f972fe5 100644
+--- a/arch/x86/kernel/fpu/core.c
++++ b/arch/x86/kernel/fpu/core.c
+@@ -144,6 +144,18 @@ void kernel_fpu_end(void)
+ }
+ EXPORT_SYMBOL_GPL(kernel_fpu_end);
+
++void kernel_fpu_resched(void)
++{
++ WARN_ON_FPU(!this_cpu_read(in_kernel_fpu));
++
++ if (should_resched(PREEMPT_OFFSET)) {
++ kernel_fpu_end();
++ cond_resched();
++ kernel_fpu_begin();
++ }
++}
++EXPORT_SYMBOL_GPL(kernel_fpu_resched);
++
+ /*
+ * Save the FPU state (mark it for reload if necessary):
+ *
+--
+2.43.0
+
diff --git a/debian/patches-rt/0243-panic-skip-get_random_bytes-for-RT_FULL-in-init_oops.patch b/debian/patches-rt/0243-panic-skip-get_random_bytes-for-RT_FULL-in-init_oops.patch
new file mode 100644
index 000000000..fbcd9407a
--- /dev/null
+++ b/debian/patches-rt/0243-panic-skip-get_random_bytes-for-RT_FULL-in-init_oops.patch
@@ -0,0 +1,34 @@
+From e0a748983b07205d9f2f52230c897f49a2c84c8d Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 14 Jul 2015 14:26:34 +0200
+Subject: [PATCH 243/323] panic: skip get_random_bytes for RT_FULL in
+ init_oops_id
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Disable on -RT. If this is invoked from irq-context we will have problems
+to acquire the sleeping lock.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ kernel/panic.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/kernel/panic.c b/kernel/panic.c
+index 5a1a4bf2feb3..aa36078657be 100644
+--- a/kernel/panic.c
++++ b/kernel/panic.c
+@@ -621,9 +621,11 @@ static u64 oops_id;
+
+ static int init_oops_id(void)
+ {
++#ifndef CONFIG_PREEMPT_RT
+ if (!oops_id)
+ get_random_bytes(&oops_id, sizeof(oops_id));
+ else
++#endif
+ oops_id++;
+
+ return 0;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0244-x86-stackprotector-Avoid-random-pool-on-rt.patch b/debian/patches-rt/0244-x86-stackprotector-Avoid-random-pool-on-rt.patch
new file mode 100644
index 000000000..c8e46ef39
--- /dev/null
+++ b/debian/patches-rt/0244-x86-stackprotector-Avoid-random-pool-on-rt.patch
@@ -0,0 +1,51 @@
+From f7c4220e56be1d8fc2bc339984fb5919ee02cf4f Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 16 Dec 2010 14:25:18 +0100
+Subject: [PATCH 244/323] x86: stackprotector: Avoid random pool on rt
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+CPU bringup calls into the random pool to initialize the stack
+canary. During boot that works nicely even on RT as the might sleep
+checks are disabled. During CPU hotplug the might sleep checks
+trigger. Making the locks in random raw is a major PITA, so avoid the
+call on RT is the only sensible solution. This is basically the same
+randomness which we get during boot where the random pool has no
+entropy and we rely on the TSC randomnness.
+
+Reported-by: Carsten Emde <carsten.emde@osadl.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ arch/x86/include/asm/stackprotector.h | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/arch/x86/include/asm/stackprotector.h b/arch/x86/include/asm/stackprotector.h
+index 7fb482f0f25b..3df0a95c9e13 100644
+--- a/arch/x86/include/asm/stackprotector.h
++++ b/arch/x86/include/asm/stackprotector.h
+@@ -65,7 +65,7 @@
+ */
+ static __always_inline void boot_init_stack_canary(void)
+ {
+- u64 canary;
++ u64 canary = 0;
+ u64 tsc;
+
+ #ifdef CONFIG_X86_64
+@@ -76,8 +76,14 @@ static __always_inline void boot_init_stack_canary(void)
+ * of randomness. The TSC only matters for very early init,
+ * there it already has some randomness on most systems. Later
+ * on during the bootup the random pool has true entropy too.
++ * For preempt-rt we need to weaken the randomness a bit, as
++ * we can't call into the random generator from atomic context
++ * due to locking constraints. We just leave canary
++ * uninitialized and use the TSC based randomness on top of it.
+ */
++#ifndef CONFIG_PREEMPT_RT
+ get_random_bytes(&canary, sizeof(canary));
++#endif
+ tsc = rdtsc();
+ canary += tsc + (tsc << 32UL);
+ canary &= CANARY_MASK;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0245-net-Remove-preemption-disabling-in-netif_rx.patch b/debian/patches-rt/0245-net-Remove-preemption-disabling-in-netif_rx.patch
new file mode 100644
index 000000000..88ffbf8ad
--- /dev/null
+++ b/debian/patches-rt/0245-net-Remove-preemption-disabling-in-netif_rx.patch
@@ -0,0 +1,68 @@
+From ceda0e136831589d22c9bd35844b3fafcc722e7c Mon Sep 17 00:00:00 2001
+From: Priyanka Jain <Priyanka.Jain@freescale.com>
+Date: Thu, 17 May 2012 09:35:11 +0530
+Subject: [PATCH 245/323] net: Remove preemption disabling in netif_rx()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+1)enqueue_to_backlog() (called from netif_rx) should be
+ bind to a particluar CPU. This can be achieved by
+ disabling migration. No need to disable preemption
+
+2)Fixes crash "BUG: scheduling while atomic: ksoftirqd"
+ in case of RT.
+ If preemption is disabled, enqueue_to_backog() is called
+ in atomic context. And if backlog exceeds its count,
+ kfree_skb() is called. But in RT, kfree_skb() might
+ gets scheduled out, so it expects non atomic context.
+
+-Replace preempt_enable(), preempt_disable() with
+ migrate_enable(), migrate_disable() respectively
+-Replace get_cpu(), put_cpu() with get_cpu_light(),
+ put_cpu_light() respectively
+
+Signed-off-by: Priyanka Jain <Priyanka.Jain@freescale.com>
+Acked-by: Rajan Srivastava <Rajan.Srivastava@freescale.com>
+Cc: <rostedt@goodmis.orgn>
+Link: http://lkml.kernel.org/r/1337227511-2271-1-git-send-email-Priyanka.Jain@freescale.com
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+[bigeasy: Remove assumption about migrate_disable() from the description.]
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ net/core/dev.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/net/core/dev.c b/net/core/dev.c
+index c3b4e5e320ca..fb00a777f559 100644
+--- a/net/core/dev.c
++++ b/net/core/dev.c
+@@ -4818,7 +4818,7 @@ static int netif_rx_internal(struct sk_buff *skb)
+ struct rps_dev_flow voidflow, *rflow = &voidflow;
+ int cpu;
+
+- preempt_disable();
++ migrate_disable();
+ rcu_read_lock();
+
+ cpu = get_rps_cpu(skb->dev, skb, &rflow);
+@@ -4828,14 +4828,14 @@ static int netif_rx_internal(struct sk_buff *skb)
+ ret = enqueue_to_backlog(skb, cpu, &rflow->last_qtail);
+
+ rcu_read_unlock();
+- preempt_enable();
++ migrate_enable();
+ } else
+ #endif
+ {
+ unsigned int qtail;
+
+- ret = enqueue_to_backlog(skb, get_cpu(), &qtail);
+- put_cpu();
++ ret = enqueue_to_backlog(skb, get_cpu_light(), &qtail);
++ put_cpu_light();
+ }
+ return ret;
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0246-lockdep-Make-it-RT-aware.patch b/debian/patches-rt/0246-lockdep-Make-it-RT-aware.patch
new file mode 100644
index 000000000..6c7174f34
--- /dev/null
+++ b/debian/patches-rt/0246-lockdep-Make-it-RT-aware.patch
@@ -0,0 +1,78 @@
+From 9d9c323e950c13cde64d5ae87dd12e0e3b81abd8 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Sun, 17 Jul 2011 18:51:23 +0200
+Subject: [PATCH 246/323] lockdep: Make it RT aware
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+teach lockdep that we don't really do softirqs on -RT.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/irqflags.h | 23 +++++++++++++++--------
+ kernel/locking/lockdep.c | 2 ++
+ 2 files changed, 17 insertions(+), 8 deletions(-)
+
+diff --git a/include/linux/irqflags.h b/include/linux/irqflags.h
+index 3ed4e8771b64..a437b2e70d37 100644
+--- a/include/linux/irqflags.h
++++ b/include/linux/irqflags.h
+@@ -71,14 +71,6 @@ do { \
+ do { \
+ __this_cpu_dec(hardirq_context); \
+ } while (0)
+-# define lockdep_softirq_enter() \
+-do { \
+- current->softirq_context++; \
+-} while (0)
+-# define lockdep_softirq_exit() \
+-do { \
+- current->softirq_context--; \
+-} while (0)
+
+ # define lockdep_hrtimer_enter(__hrtimer) \
+ ({ \
+@@ -140,6 +132,21 @@ do { \
+ # define lockdep_irq_work_exit(__work) do { } while (0)
+ #endif
+
++#if defined(CONFIG_TRACE_IRQFLAGS) && !defined(CONFIG_PREEMPT_RT)
++# define lockdep_softirq_enter() \
++do { \
++ current->softirq_context++; \
++} while (0)
++# define lockdep_softirq_exit() \
++do { \
++ current->softirq_context--; \
++} while (0)
++
++#else
++# define lockdep_softirq_enter() do { } while (0)
++# define lockdep_softirq_exit() do { } while (0)
++#endif
++
+ #if defined(CONFIG_IRQSOFF_TRACER) || \
+ defined(CONFIG_PREEMPT_TRACER)
+ extern void stop_critical_timings(void);
+diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
+index 7471d85f54ae..4fb9e6301018 100644
+--- a/kernel/locking/lockdep.c
++++ b/kernel/locking/lockdep.c
+@@ -5414,6 +5414,7 @@ static noinstr void check_flags(unsigned long flags)
+ }
+ }
+
++#ifndef CONFIG_PREEMPT_RT
+ /*
+ * We dont accurately track softirq state in e.g.
+ * hardirq contexts (such as on 4KSTACKS), so only
+@@ -5428,6 +5429,7 @@ static noinstr void check_flags(unsigned long flags)
+ DEBUG_LOCKS_WARN_ON(!current->softirqs_enabled);
+ }
+ }
++#endif
+
+ if (!debug_locks)
+ print_irqtrace_events(current);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0247-lockdep-selftest-Only-do-hardirq-context-test-for-ra.patch b/debian/patches-rt/0247-lockdep-selftest-Only-do-hardirq-context-test-for-ra.patch
new file mode 100644
index 000000000..c4ca02928
--- /dev/null
+++ b/debian/patches-rt/0247-lockdep-selftest-Only-do-hardirq-context-test-for-ra.patch
@@ -0,0 +1,62 @@
+From 98d28c479e8b02a795109f6bc0b6aa1da54f6ede Mon Sep 17 00:00:00 2001
+From: Yong Zhang <yong.zhang@windriver.com>
+Date: Mon, 16 Apr 2012 15:01:56 +0800
+Subject: [PATCH 247/323] lockdep: selftest: Only do hardirq context test for
+ raw spinlock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+On -rt there is no softirq context any more and rwlock is sleepable,
+disable softirq context test and rwlock+irq test.
+
+Signed-off-by: Yong Zhang <yong.zhang0@gmail.com>
+Cc: Yong Zhang <yong.zhang@windriver.com>
+Link: http://lkml.kernel.org/r/1334559716-18447-3-git-send-email-yong.zhang0@gmail.com
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ lib/locking-selftest.c | 23 +++++++++++++++++++++++
+ 1 file changed, 23 insertions(+)
+
+diff --git a/lib/locking-selftest.c b/lib/locking-selftest.c
+index 76c52b0b76d3..663c071bc445 100644
+--- a/lib/locking-selftest.c
++++ b/lib/locking-selftest.c
+@@ -2456,6 +2456,7 @@ void locking_selftest(void)
+
+ printk(" --------------------------------------------------------------------------\n");
+
++#ifndef CONFIG_PREEMPT_RT
+ /*
+ * irq-context testcases:
+ */
+@@ -2470,6 +2471,28 @@ void locking_selftest(void)
+ DO_TESTCASE_6x2x2RW("irq read-recursion #2", irq_read_recursion2);
+ DO_TESTCASE_6x2x2RW("irq read-recursion #3", irq_read_recursion3);
+
++#else
++ /* On -rt, we only do hardirq context test for raw spinlock */
++ DO_TESTCASE_1B("hard-irqs-on + irq-safe-A", irqsafe1_hard_spin, 12);
++ DO_TESTCASE_1B("hard-irqs-on + irq-safe-A", irqsafe1_hard_spin, 21);
++
++ DO_TESTCASE_1B("hard-safe-A + irqs-on", irqsafe2B_hard_spin, 12);
++ DO_TESTCASE_1B("hard-safe-A + irqs-on", irqsafe2B_hard_spin, 21);
++
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #1", irqsafe3_hard_spin, 123);
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #1", irqsafe3_hard_spin, 132);
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #1", irqsafe3_hard_spin, 213);
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #1", irqsafe3_hard_spin, 231);
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #1", irqsafe3_hard_spin, 312);
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #1", irqsafe3_hard_spin, 321);
++
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #2", irqsafe4_hard_spin, 123);
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #2", irqsafe4_hard_spin, 132);
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #2", irqsafe4_hard_spin, 213);
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #2", irqsafe4_hard_spin, 231);
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #2", irqsafe4_hard_spin, 312);
++ DO_TESTCASE_1B("hard-safe-A + unsafe-B #2", irqsafe4_hard_spin, 321);
++#endif
+ ww_tests();
+
+ force_read_lock_recursive = 0;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0248-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch b/debian/patches-rt/0248-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch
new file mode 100644
index 000000000..dbb683c42
--- /dev/null
+++ b/debian/patches-rt/0248-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch
@@ -0,0 +1,149 @@
+From c10790e859050b8a0a251e2e57b7fffb9ffa75df Mon Sep 17 00:00:00 2001
+From: Josh Cartwright <josh.cartwright@ni.com>
+Date: Wed, 28 Jan 2015 13:08:45 -0600
+Subject: [PATCH 248/323] lockdep: selftest: fix warnings due to missing
+ PREEMPT_RT conditionals
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+"lockdep: Selftest: Only do hardirq context test for raw spinlock"
+disabled the execution of certain tests with PREEMPT_RT, but did
+not prevent the tests from still being defined. This leads to warnings
+like:
+
+ ./linux/lib/locking-selftest.c:574:1: warning: 'irqsafe1_hard_rlock_12' defined but not used [-Wunused-function]
+ ./linux/lib/locking-selftest.c:574:1: warning: 'irqsafe1_hard_rlock_21' defined but not used [-Wunused-function]
+ ./linux/lib/locking-selftest.c:577:1: warning: 'irqsafe1_hard_wlock_12' defined but not used [-Wunused-function]
+ ./linux/lib/locking-selftest.c:577:1: warning: 'irqsafe1_hard_wlock_21' defined but not used [-Wunused-function]
+ ./linux/lib/locking-selftest.c:580:1: warning: 'irqsafe1_soft_spin_12' defined but not used [-Wunused-function]
+ ...
+
+Fixed by wrapping the test definitions in #ifndef CONFIG_PREEMPT_RT
+conditionals.
+
+Signed-off-by: Josh Cartwright <josh.cartwright@ni.com>
+Signed-off-by: Xander Huff <xander.huff@ni.com>
+Acked-by: Gratian Crisan <gratian.crisan@ni.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ lib/locking-selftest.c | 28 ++++++++++++++++++++++++++++
+ 1 file changed, 28 insertions(+)
+
+diff --git a/lib/locking-selftest.c b/lib/locking-selftest.c
+index 663c071bc445..98c376b02dff 100644
+--- a/lib/locking-selftest.c
++++ b/lib/locking-selftest.c
+@@ -787,6 +787,8 @@ GENERATE_TESTCASE(init_held_rtmutex);
+ #include "locking-selftest-spin-hardirq.h"
+ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe1_hard_spin)
+
++#ifndef CONFIG_PREEMPT_RT
++
+ #include "locking-selftest-rlock-hardirq.h"
+ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe1_hard_rlock)
+
+@@ -802,9 +804,12 @@ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe1_soft_rlock)
+ #include "locking-selftest-wlock-softirq.h"
+ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe1_soft_wlock)
+
++#endif
++
+ #undef E1
+ #undef E2
+
++#ifndef CONFIG_PREEMPT_RT
+ /*
+ * Enabling hardirqs with a softirq-safe lock held:
+ */
+@@ -837,6 +842,8 @@ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2A_rlock)
+ #undef E1
+ #undef E2
+
++#endif
++
+ /*
+ * Enabling irqs with an irq-safe lock held:
+ */
+@@ -860,6 +867,8 @@ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2A_rlock)
+ #include "locking-selftest-spin-hardirq.h"
+ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2B_hard_spin)
+
++#ifndef CONFIG_PREEMPT_RT
++
+ #include "locking-selftest-rlock-hardirq.h"
+ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2B_hard_rlock)
+
+@@ -875,6 +884,8 @@ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2B_soft_rlock)
+ #include "locking-selftest-wlock-softirq.h"
+ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2B_soft_wlock)
+
++#endif
++
+ #undef E1
+ #undef E2
+
+@@ -906,6 +917,8 @@ GENERATE_PERMUTATIONS_2_EVENTS(irqsafe2B_soft_wlock)
+ #include "locking-selftest-spin-hardirq.h"
+ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe3_hard_spin)
+
++#ifndef CONFIG_PREEMPT_RT
++
+ #include "locking-selftest-rlock-hardirq.h"
+ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe3_hard_rlock)
+
+@@ -921,6 +934,8 @@ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe3_soft_rlock)
+ #include "locking-selftest-wlock-softirq.h"
+ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe3_soft_wlock)
+
++#endif
++
+ #undef E1
+ #undef E2
+ #undef E3
+@@ -954,6 +969,8 @@ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe3_soft_wlock)
+ #include "locking-selftest-spin-hardirq.h"
+ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe4_hard_spin)
+
++#ifndef CONFIG_PREEMPT_RT
++
+ #include "locking-selftest-rlock-hardirq.h"
+ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe4_hard_rlock)
+
+@@ -969,10 +986,14 @@ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe4_soft_rlock)
+ #include "locking-selftest-wlock-softirq.h"
+ GENERATE_PERMUTATIONS_3_EVENTS(irqsafe4_soft_wlock)
+
++#endif
++
+ #undef E1
+ #undef E2
+ #undef E3
+
++#ifndef CONFIG_PREEMPT_RT
++
+ /*
+ * read-lock / write-lock irq inversion.
+ *
+@@ -1162,6 +1183,11 @@ GENERATE_PERMUTATIONS_3_EVENTS(W1W2_R2R3_R3W1)
+ #undef E1
+ #undef E2
+ #undef E3
++
++#endif
++
++#ifndef CONFIG_PREEMPT_RT
++
+ /*
+ * read-lock / write-lock recursion that is actually safe.
+ */
+@@ -1208,6 +1234,8 @@ GENERATE_PERMUTATIONS_3_EVENTS(irq_read_recursion_soft_wlock)
+ #undef E2
+ #undef E3
+
++#endif
++
+ /*
+ * read-lock / write-lock recursion that is unsafe.
+ */
+--
+2.43.0
+
diff --git a/debian/patches-rt/0249-lockdep-disable-self-test.patch b/debian/patches-rt/0249-lockdep-disable-self-test.patch
new file mode 100644
index 000000000..bd19a4f00
--- /dev/null
+++ b/debian/patches-rt/0249-lockdep-disable-self-test.patch
@@ -0,0 +1,35 @@
+From da32b1f1c20ebd096acfb511cf3a608169d210c7 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 17 Oct 2017 16:36:18 +0200
+Subject: [PATCH 249/323] lockdep: disable self-test
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The self-test wasn't always 100% accurate for RT. We disabled a few
+tests which failed because they had a different semantic for RT. Some
+still reported false positives. Now the selftest locks up the system
+during boot and it needs to be investigated…
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ lib/Kconfig.debug | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
+index 24ca61cf86dd..70172d5ab82a 100644
+--- a/lib/Kconfig.debug
++++ b/lib/Kconfig.debug
+@@ -1373,7 +1373,7 @@ config DEBUG_ATOMIC_SLEEP
+
+ config DEBUG_LOCKING_API_SELFTESTS
+ bool "Locking API boot-time self-tests"
+- depends on DEBUG_KERNEL
++ depends on DEBUG_KERNEL && !PREEMPT_RT
+ help
+ Say Y here if you want the kernel to run a short self-test during
+ bootup. The self-test checks whether common types of locking bugs
+--
+2.43.0
+
diff --git a/debian/patches-rt/0250-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch b/debian/patches-rt/0250-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch
new file mode 100644
index 000000000..c0e7434f2
--- /dev/null
+++ b/debian/patches-rt/0250-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch
@@ -0,0 +1,61 @@
+From 2c69acb6875156b092516fc81bd2a05b96973c2b Mon Sep 17 00:00:00 2001
+From: Mike Galbraith <umgwanakikbuti@gmail.com>
+Date: Sat, 27 Feb 2016 08:09:11 +0100
+Subject: [PATCH 250/323] drm,radeon,i915: Use preempt_disable/enable_rt()
+ where recommended
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+DRM folks identified the spots, so use them.
+
+Signed-off-by: Mike Galbraith <umgwanakikbuti@gmail.com>
+Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Cc: linux-rt-users <linux-rt-users@vger.kernel.org>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ drivers/gpu/drm/i915/i915_irq.c | 2 ++
+ drivers/gpu/drm/radeon/radeon_display.c | 2 ++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
+index 759f523c6a6b..7339a42ab2b8 100644
+--- a/drivers/gpu/drm/i915/i915_irq.c
++++ b/drivers/gpu/drm/i915/i915_irq.c
+@@ -847,6 +847,7 @@ static bool i915_get_crtc_scanoutpos(struct drm_crtc *_crtc,
+ spin_lock_irqsave(&dev_priv->uncore.lock, irqflags);
+
+ /* preempt_disable_rt() should go right here in PREEMPT_RT patchset. */
++ preempt_disable_rt();
+
+ /* Get optional system timestamp before query. */
+ if (stime)
+@@ -898,6 +899,7 @@ static bool i915_get_crtc_scanoutpos(struct drm_crtc *_crtc,
+ *etime = ktime_get();
+
+ /* preempt_enable_rt() should go right here in PREEMPT_RT patchset. */
++ preempt_enable_rt();
+
+ spin_unlock_irqrestore(&dev_priv->uncore.lock, irqflags);
+
+diff --git a/drivers/gpu/drm/radeon/radeon_display.c b/drivers/gpu/drm/radeon/radeon_display.c
+index 71bdafac9210..95ce311f434b 100644
+--- a/drivers/gpu/drm/radeon/radeon_display.c
++++ b/drivers/gpu/drm/radeon/radeon_display.c
+@@ -1823,6 +1823,7 @@ int radeon_get_crtc_scanoutpos(struct drm_device *dev, unsigned int pipe,
+ struct radeon_device *rdev = dev->dev_private;
+
+ /* preempt_disable_rt() should go right here in PREEMPT_RT patchset. */
++ preempt_disable_rt();
+
+ /* Get optional system timestamp before query. */
+ if (stime)
+@@ -1915,6 +1916,7 @@ int radeon_get_crtc_scanoutpos(struct drm_device *dev, unsigned int pipe,
+ *etime = ktime_get();
+
+ /* preempt_enable_rt() should go right here in PREEMPT_RT patchset. */
++ preempt_enable_rt();
+
+ /* Decode into vertical and horizontal scanout position. */
+ *vpos = position & 0x1fff;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0251-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch b/debian/patches-rt/0251-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch
new file mode 100644
index 000000000..dd9329591
--- /dev/null
+++ b/debian/patches-rt/0251-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch
@@ -0,0 +1,80 @@
+From 940e64f8d4b797c592e6736a1fae0d0ff2087e95 Mon Sep 17 00:00:00 2001
+From: Mike Galbraith <umgwanakikbuti@gmail.com>
+Date: Sat, 27 Feb 2016 09:01:42 +0100
+Subject: [PATCH 251/323] drm/i915: Don't disable interrupts on PREEMPT_RT
+ during atomic updates
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Commit
+ 8d7849db3eab7 ("drm/i915: Make sprite updates atomic")
+
+started disabling interrupts across atomic updates. This breaks on PREEMPT_RT
+because within this section the code attempt to acquire spinlock_t locks which
+are sleeping locks on PREEMPT_RT.
+
+According to the comment the interrupts are disabled to avoid random delays and
+not required for protection or synchronisation.
+
+Don't disable interrupts on PREEMPT_RT during atomic updates.
+
+[bigeasy: drop local locks, commit message]
+
+Signed-off-by: Mike Galbraith <umgwanakikbuti@gmail.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/gpu/drm/i915/display/intel_sprite.c | 15 ++++++++++-----
+ 1 file changed, 10 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/gpu/drm/i915/display/intel_sprite.c b/drivers/gpu/drm/i915/display/intel_sprite.c
+index 12f7128b777f..a65061e3e1d3 100644
+--- a/drivers/gpu/drm/i915/display/intel_sprite.c
++++ b/drivers/gpu/drm/i915/display/intel_sprite.c
+@@ -118,7 +118,8 @@ void intel_pipe_update_start(const struct intel_crtc_state *new_crtc_state)
+ "PSR idle timed out 0x%x, atomic update may fail\n",
+ psr_status);
+
+- local_irq_disable();
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT))
++ local_irq_disable();
+
+ crtc->debug.min_vbl = min;
+ crtc->debug.max_vbl = max;
+@@ -143,11 +144,13 @@ void intel_pipe_update_start(const struct intel_crtc_state *new_crtc_state)
+ break;
+ }
+
+- local_irq_enable();
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT))
++ local_irq_enable();
+
+ timeout = schedule_timeout(timeout);
+
+- local_irq_disable();
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT))
++ local_irq_disable();
+ }
+
+ finish_wait(wq, &wait);
+@@ -180,7 +183,8 @@ void intel_pipe_update_start(const struct intel_crtc_state *new_crtc_state)
+ return;
+
+ irq_disable:
+- local_irq_disable();
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT))
++ local_irq_disable();
+ }
+
+ /**
+@@ -218,7 +222,8 @@ void intel_pipe_update_end(struct intel_crtc_state *new_crtc_state)
+ new_crtc_state->uapi.event = NULL;
+ }
+
+- local_irq_enable();
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT))
++ local_irq_enable();
+
+ if (intel_vgpu_active(dev_priv))
+ return;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0252-drm-i915-disable-tracing-on-RT.patch b/debian/patches-rt/0252-drm-i915-disable-tracing-on-RT.patch
new file mode 100644
index 000000000..833c9d37f
--- /dev/null
+++ b/debian/patches-rt/0252-drm-i915-disable-tracing-on-RT.patch
@@ -0,0 +1,47 @@
+From 0e88cde8cbd40cc7e519bccaf1ba847de2d9bd02 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 6 Dec 2018 09:52:20 +0100
+Subject: [PATCH 252/323] drm/i915: disable tracing on -RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Luca Abeni reported this:
+| BUG: scheduling while atomic: kworker/u8:2/15203/0x00000003
+| CPU: 1 PID: 15203 Comm: kworker/u8:2 Not tainted 4.19.1-rt3 #10
+| Call Trace:
+| rt_spin_lock+0x3f/0x50
+| gen6_read32+0x45/0x1d0 [i915]
+| g4x_get_vblank_counter+0x36/0x40 [i915]
+| trace_event_raw_event_i915_pipe_update_start+0x7d/0xf0 [i915]
+
+The tracing events use trace_i915_pipe_update_start() among other events
+use functions acquire spin locks. A few trace points use
+intel_get_crtc_scanline(), others use ->get_vblank_counter() wich also
+might acquire a sleeping lock.
+
+Based on this I don't see any other way than disable trace points on RT.
+
+Cc: stable-rt@vger.kernel.org
+Reported-by: Luca Abeni <lucabe72@gmail.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/gpu/drm/i915/i915_trace.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h
+index a4addcc64978..0ba5a0a0fd25 100644
+--- a/drivers/gpu/drm/i915/i915_trace.h
++++ b/drivers/gpu/drm/i915/i915_trace.h
+@@ -2,6 +2,10 @@
+ #if !defined(_I915_TRACE_H_) || defined(TRACE_HEADER_MULTI_READ)
+ #define _I915_TRACE_H_
+
++#ifdef CONFIG_PREEMPT_RT
++#define NOTRACE
++#endif
++
+ #include <linux/stringify.h>
+ #include <linux/types.h>
+ #include <linux/tracepoint.h>
+--
+2.43.0
+
diff --git a/debian/patches-rt/0253-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch b/debian/patches-rt/0253-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch
new file mode 100644
index 000000000..9aa6af966
--- /dev/null
+++ b/debian/patches-rt/0253-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch
@@ -0,0 +1,33 @@
+From 2c550981e43f1612f6999bbc04634e0d6eb16760 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 19 Dec 2018 10:47:02 +0100
+Subject: [PATCH 253/323] drm/i915: skip DRM_I915_LOW_LEVEL_TRACEPOINTS with
+ NOTRACE
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The order of the header files is important. If this header file is
+included after tracepoint.h was included then the NOTRACE here becomes a
+nop. Currently this happens for two .c files which use the tracepoitns
+behind DRM_I915_LOW_LEVEL_TRACEPOINTS.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/gpu/drm/i915/i915_trace.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/gpu/drm/i915/i915_trace.h b/drivers/gpu/drm/i915/i915_trace.h
+index 0ba5a0a0fd25..396b6598694d 100644
+--- a/drivers/gpu/drm/i915/i915_trace.h
++++ b/drivers/gpu/drm/i915/i915_trace.h
+@@ -782,7 +782,7 @@ DEFINE_EVENT(i915_request, i915_request_add,
+ TP_ARGS(rq)
+ );
+
+-#if defined(CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS)
++#if defined(CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS) && !defined(NOTRACE)
+ DEFINE_EVENT(i915_request, i915_request_submit,
+ TP_PROTO(struct i915_request *rq),
+ TP_ARGS(rq)
+--
+2.43.0
+
diff --git a/debian/patches-rt/0254-drm-i915-gt-Only-disable-interrupts-for-the-timeline.patch b/debian/patches-rt/0254-drm-i915-gt-Only-disable-interrupts-for-the-timeline.patch
new file mode 100644
index 000000000..722c5567e
--- /dev/null
+++ b/debian/patches-rt/0254-drm-i915-gt-Only-disable-interrupts-for-the-timeline.patch
@@ -0,0 +1,52 @@
+From 63884dc87002ed5187007558a7356e7a4f570e75 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 7 Jul 2020 12:25:11 +0200
+Subject: [PATCH 254/323] drm/i915/gt: Only disable interrupts for the timeline
+ lock on !force-threaded
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+According to commit
+ d67739268cf0e ("drm/i915/gt: Mark up the nested engine-pm timeline lock as irqsafe")
+
+the intrrupts are disabled the code may be called from an interrupt
+handler and from preemptible context.
+With `force_irqthreads' set the timeline mutex is never observed in IRQ
+context so it is not neede to disable interrupts.
+
+Disable only interrupts if not in `force_irqthreads' mode.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/gpu/drm/i915/gt/intel_engine_pm.c | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/gpu/drm/i915/gt/intel_engine_pm.c b/drivers/gpu/drm/i915/gt/intel_engine_pm.c
+index f7b2e07e2229..313d8a28e776 100644
+--- a/drivers/gpu/drm/i915/gt/intel_engine_pm.c
++++ b/drivers/gpu/drm/i915/gt/intel_engine_pm.c
+@@ -60,9 +60,10 @@ static int __engine_unpark(struct intel_wakeref *wf)
+
+ static inline unsigned long __timeline_mark_lock(struct intel_context *ce)
+ {
+- unsigned long flags;
++ unsigned long flags = 0;
+
+- local_irq_save(flags);
++ if (!force_irqthreads)
++ local_irq_save(flags);
+ mutex_acquire(&ce->timeline->mutex.dep_map, 2, 0, _THIS_IP_);
+
+ return flags;
+@@ -72,7 +73,8 @@ static inline void __timeline_mark_unlock(struct intel_context *ce,
+ unsigned long flags)
+ {
+ mutex_release(&ce->timeline->mutex.dep_map, _THIS_IP_);
+- local_irq_restore(flags);
++ if (!force_irqthreads)
++ local_irq_restore(flags);
+ }
+
+ #else
+--
+2.43.0
+
diff --git a/debian/patches-rt/0255-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch b/debian/patches-rt/0255-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch
new file mode 100644
index 000000000..bb6e6895a
--- /dev/null
+++ b/debian/patches-rt/0255-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch
@@ -0,0 +1,367 @@
+From ebc27a7d1ceef838efef4feecd2bcb490552f0ec Mon Sep 17 00:00:00 2001
+From: Mike Galbraith <efault@gmx.de>
+Date: Sun, 8 Jan 2017 09:32:25 +0100
+Subject: [PATCH 255/323] cpuset: Convert callback_lock to raw_spinlock_t
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The two commits below add up to a cpuset might_sleep() splat for RT:
+
+8447a0fee974 cpuset: convert callback_mutex to a spinlock
+344736f29b35 cpuset: simplify cpuset_node_allowed API
+
+BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:995
+in_atomic(): 0, irqs_disabled(): 1, pid: 11718, name: cset
+CPU: 135 PID: 11718 Comm: cset Tainted: G E 4.10.0-rt1-rt #4
+Hardware name: Intel Corporation BRICKLAND/BRICKLAND, BIOS BRHSXSD1.86B.0056.R01.1409242327 09/24/2014
+Call Trace:
+ ? dump_stack+0x5c/0x81
+ ? ___might_sleep+0xf4/0x170
+ ? rt_spin_lock+0x1c/0x50
+ ? __cpuset_node_allowed+0x66/0xc0
+ ? ___slab_alloc+0x390/0x570 <disables IRQs>
+ ? anon_vma_fork+0x8f/0x140
+ ? copy_page_range+0x6cf/0xb00
+ ? anon_vma_fork+0x8f/0x140
+ ? __slab_alloc.isra.74+0x5a/0x81
+ ? anon_vma_fork+0x8f/0x140
+ ? kmem_cache_alloc+0x1b5/0x1f0
+ ? anon_vma_fork+0x8f/0x140
+ ? copy_process.part.35+0x1670/0x1ee0
+ ? _do_fork+0xdd/0x3f0
+ ? _do_fork+0xdd/0x3f0
+ ? do_syscall_64+0x61/0x170
+ ? entry_SYSCALL64_slow_path+0x25/0x25
+
+The later ensured that a NUMA box WILL take callback_lock in atomic
+context by removing the allocator and reclaim path __GFP_HARDWALL
+usage which prevented such contexts from taking callback_mutex.
+
+One option would be to reinstate __GFP_HARDWALL protections for
+RT, however, as the 8447a0fee974 changelog states:
+
+The callback_mutex is only used to synchronize reads/updates of cpusets'
+flags and cpu/node masks. These operations should always proceed fast so
+there's no reason why we can't use a spinlock instead of the mutex.
+
+Cc: stable-rt@vger.kernel.org
+Signed-off-by: Mike Galbraith <efault@gmx.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ kernel/cgroup/cpuset.c | 82 +++++++++++++++++++++---------------------
+ 1 file changed, 41 insertions(+), 41 deletions(-)
+
+diff --git a/kernel/cgroup/cpuset.c b/kernel/cgroup/cpuset.c
+index 195f9cccab20..fd371215b81f 100644
+--- a/kernel/cgroup/cpuset.c
++++ b/kernel/cgroup/cpuset.c
+@@ -368,7 +368,7 @@ void cpuset_unlock(void)
+ mutex_unlock(&cpuset_mutex);
+ }
+
+-static DEFINE_SPINLOCK(callback_lock);
++static DEFINE_RAW_SPINLOCK(callback_lock);
+
+ static struct workqueue_struct *cpuset_migrate_mm_wq;
+
+@@ -1316,7 +1316,7 @@ static int update_parent_subparts_cpumask(struct cpuset *cpuset, int cmd,
+ * Newly added CPUs will be removed from effective_cpus and
+ * newly deleted ones will be added back to effective_cpus.
+ */
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ if (adding) {
+ cpumask_or(parent->subparts_cpus,
+ parent->subparts_cpus, tmp->addmask);
+@@ -1338,7 +1338,7 @@ static int update_parent_subparts_cpumask(struct cpuset *cpuset, int cmd,
+
+ if (cpuset->partition_root_state != new_prs)
+ cpuset->partition_root_state = new_prs;
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+
+ return cmd == partcmd_update;
+ }
+@@ -1441,7 +1441,7 @@ static void update_cpumasks_hier(struct cpuset *cs, struct tmpmasks *tmp)
+ continue;
+ rcu_read_unlock();
+
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+
+ cpumask_copy(cp->effective_cpus, tmp->new_cpus);
+ if (cp->nr_subparts_cpus && (new_prs != PRS_ENABLED)) {
+@@ -1475,7 +1475,7 @@ static void update_cpumasks_hier(struct cpuset *cs, struct tmpmasks *tmp)
+ if (new_prs != cp->partition_root_state)
+ cp->partition_root_state = new_prs;
+
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+
+ WARN_ON(!is_in_v2_mode() &&
+ !cpumask_equal(cp->cpus_allowed, cp->effective_cpus));
+@@ -1603,7 +1603,7 @@ static int update_cpumask(struct cpuset *cs, struct cpuset *trialcs,
+ return -EINVAL;
+ }
+
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ cpumask_copy(cs->cpus_allowed, trialcs->cpus_allowed);
+
+ /*
+@@ -1613,7 +1613,7 @@ static int update_cpumask(struct cpuset *cs, struct cpuset *trialcs,
+ cpumask_and(cs->subparts_cpus, cs->subparts_cpus, cs->cpus_allowed);
+ cs->nr_subparts_cpus = cpumask_weight(cs->subparts_cpus);
+ }
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+
+ update_cpumasks_hier(cs, &tmp);
+
+@@ -1807,9 +1807,9 @@ static void update_nodemasks_hier(struct cpuset *cs, nodemask_t *new_mems)
+ continue;
+ rcu_read_unlock();
+
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ cp->effective_mems = *new_mems;
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+
+ WARN_ON(!is_in_v2_mode() &&
+ !nodes_equal(cp->mems_allowed, cp->effective_mems));
+@@ -1877,9 +1877,9 @@ static int update_nodemask(struct cpuset *cs, struct cpuset *trialcs,
+ if (retval < 0)
+ goto done;
+
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ cs->mems_allowed = trialcs->mems_allowed;
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+
+ /* use trialcs->mems_allowed as a temp variable */
+ update_nodemasks_hier(cs, &trialcs->mems_allowed);
+@@ -1970,9 +1970,9 @@ static int update_flag(cpuset_flagbits_t bit, struct cpuset *cs,
+ spread_flag_changed = ((is_spread_slab(cs) != is_spread_slab(trialcs))
+ || (is_spread_page(cs) != is_spread_page(trialcs)));
+
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ cs->flags = trialcs->flags;
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+
+ if (!cpumask_empty(trialcs->cpus_allowed) && balance_flag_changed)
+ rebuild_sched_domains_locked();
+@@ -2058,9 +2058,9 @@ static int update_prstate(struct cpuset *cs, int new_prs)
+ rebuild_sched_domains_locked();
+ out:
+ if (!err) {
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ cs->partition_root_state = new_prs;
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+ }
+
+ free_cpumasks(NULL, &tmpmask);
+@@ -2527,7 +2527,7 @@ static int cpuset_common_seq_show(struct seq_file *sf, void *v)
+ cpuset_filetype_t type = seq_cft(sf)->private;
+ int ret = 0;
+
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+
+ switch (type) {
+ case FILE_CPULIST:
+@@ -2549,7 +2549,7 @@ static int cpuset_common_seq_show(struct seq_file *sf, void *v)
+ ret = -EINVAL;
+ }
+
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+ return ret;
+ }
+
+@@ -2862,14 +2862,14 @@ static int cpuset_css_online(struct cgroup_subsys_state *css)
+
+ cpuset_inc();
+
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ if (is_in_v2_mode()) {
+ cpumask_copy(cs->effective_cpus, parent->effective_cpus);
+ cs->effective_mems = parent->effective_mems;
+ cs->use_parent_ecpus = true;
+ parent->child_ecpus_count++;
+ }
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+
+ if (!test_bit(CGRP_CPUSET_CLONE_CHILDREN, &css->cgroup->flags))
+ goto out_unlock;
+@@ -2896,12 +2896,12 @@ static int cpuset_css_online(struct cgroup_subsys_state *css)
+ }
+ rcu_read_unlock();
+
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ cs->mems_allowed = parent->mems_allowed;
+ cs->effective_mems = parent->mems_allowed;
+ cpumask_copy(cs->cpus_allowed, parent->cpus_allowed);
+ cpumask_copy(cs->effective_cpus, parent->cpus_allowed);
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+ out_unlock:
+ mutex_unlock(&cpuset_mutex);
+ put_online_cpus();
+@@ -2957,7 +2957,7 @@ static void cpuset_css_free(struct cgroup_subsys_state *css)
+ static void cpuset_bind(struct cgroup_subsys_state *root_css)
+ {
+ mutex_lock(&cpuset_mutex);
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+
+ if (is_in_v2_mode()) {
+ cpumask_copy(top_cpuset.cpus_allowed, cpu_possible_mask);
+@@ -2968,7 +2968,7 @@ static void cpuset_bind(struct cgroup_subsys_state *root_css)
+ top_cpuset.mems_allowed = top_cpuset.effective_mems;
+ }
+
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+ mutex_unlock(&cpuset_mutex);
+ }
+
+@@ -3063,12 +3063,12 @@ hotplug_update_tasks_legacy(struct cpuset *cs,
+ {
+ bool is_empty;
+
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ cpumask_copy(cs->cpus_allowed, new_cpus);
+ cpumask_copy(cs->effective_cpus, new_cpus);
+ cs->mems_allowed = *new_mems;
+ cs->effective_mems = *new_mems;
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+
+ /*
+ * Don't call update_tasks_cpumask() if the cpuset becomes empty,
+@@ -3105,10 +3105,10 @@ hotplug_update_tasks(struct cpuset *cs,
+ if (nodes_empty(*new_mems))
+ *new_mems = parent_cs(cs)->effective_mems;
+
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ cpumask_copy(cs->effective_cpus, new_cpus);
+ cs->effective_mems = *new_mems;
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+
+ if (cpus_updated)
+ update_tasks_cpumask(cs);
+@@ -3175,10 +3175,10 @@ static void cpuset_hotplug_update_tasks(struct cpuset *cs, struct tmpmasks *tmp)
+ if (is_partition_root(cs) && (cpumask_empty(&new_cpus) ||
+ (parent->partition_root_state == PRS_ERROR))) {
+ if (cs->nr_subparts_cpus) {
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ cs->nr_subparts_cpus = 0;
+ cpumask_clear(cs->subparts_cpus);
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+ compute_effective_cpumask(&new_cpus, cs, parent);
+ }
+
+@@ -3192,9 +3192,9 @@ static void cpuset_hotplug_update_tasks(struct cpuset *cs, struct tmpmasks *tmp)
+ cpumask_empty(&new_cpus)) {
+ update_parent_subparts_cpumask(cs, partcmd_disable,
+ NULL, tmp);
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ cs->partition_root_state = PRS_ERROR;
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+ }
+ cpuset_force_rebuild();
+ }
+@@ -3274,7 +3274,7 @@ static void cpuset_hotplug_workfn(struct work_struct *work)
+
+ /* synchronize cpus_allowed to cpu_active_mask */
+ if (cpus_updated) {
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ if (!on_dfl)
+ cpumask_copy(top_cpuset.cpus_allowed, &new_cpus);
+ /*
+@@ -3294,17 +3294,17 @@ static void cpuset_hotplug_workfn(struct work_struct *work)
+ }
+ }
+ cpumask_copy(top_cpuset.effective_cpus, &new_cpus);
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+ /* we don't mess with cpumasks of tasks in top_cpuset */
+ }
+
+ /* synchronize mems_allowed to N_MEMORY */
+ if (mems_updated) {
+- spin_lock_irq(&callback_lock);
++ raw_spin_lock_irq(&callback_lock);
+ if (!on_dfl)
+ top_cpuset.mems_allowed = new_mems;
+ top_cpuset.effective_mems = new_mems;
+- spin_unlock_irq(&callback_lock);
++ raw_spin_unlock_irq(&callback_lock);
+ update_tasks_nodemask(&top_cpuset);
+ }
+
+@@ -3408,11 +3408,11 @@ void cpuset_cpus_allowed(struct task_struct *tsk, struct cpumask *pmask)
+ {
+ unsigned long flags;
+
+- spin_lock_irqsave(&callback_lock, flags);
++ raw_spin_lock_irqsave(&callback_lock, flags);
+ rcu_read_lock();
+ guarantee_online_cpus(task_cs(tsk), pmask);
+ rcu_read_unlock();
+- spin_unlock_irqrestore(&callback_lock, flags);
++ raw_spin_unlock_irqrestore(&callback_lock, flags);
+ }
+
+ /**
+@@ -3473,11 +3473,11 @@ nodemask_t cpuset_mems_allowed(struct task_struct *tsk)
+ nodemask_t mask;
+ unsigned long flags;
+
+- spin_lock_irqsave(&callback_lock, flags);
++ raw_spin_lock_irqsave(&callback_lock, flags);
+ rcu_read_lock();
+ guarantee_online_mems(task_cs(tsk), &mask);
+ rcu_read_unlock();
+- spin_unlock_irqrestore(&callback_lock, flags);
++ raw_spin_unlock_irqrestore(&callback_lock, flags);
+
+ return mask;
+ }
+@@ -3569,14 +3569,14 @@ bool __cpuset_node_allowed(int node, gfp_t gfp_mask)
+ return true;
+
+ /* Not hardwall and node outside mems_allowed: scan up cpusets */
+- spin_lock_irqsave(&callback_lock, flags);
++ raw_spin_lock_irqsave(&callback_lock, flags);
+
+ rcu_read_lock();
+ cs = nearest_hardwall_ancestor(task_cs(current));
+ allowed = node_isset(node, cs->mems_allowed);
+ rcu_read_unlock();
+
+- spin_unlock_irqrestore(&callback_lock, flags);
++ raw_spin_unlock_irqrestore(&callback_lock, flags);
+ return allowed;
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0256-x86-Allow-to-enable-RT.patch b/debian/patches-rt/0256-x86-Allow-to-enable-RT.patch
new file mode 100644
index 000000000..50535647c
--- /dev/null
+++ b/debian/patches-rt/0256-x86-Allow-to-enable-RT.patch
@@ -0,0 +1,28 @@
+From 6ab508c3cdd4fa46f17f940bd56007189d4984e6 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 7 Aug 2019 18:15:38 +0200
+Subject: [PATCH 256/323] x86: Allow to enable RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Allow to select RT.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/x86/Kconfig | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
+index 54e5284a6ae1..c72d66a0e840 100644
+--- a/arch/x86/Kconfig
++++ b/arch/x86/Kconfig
+@@ -27,6 +27,7 @@ config X86_64
+ # Options that are inherently 64-bit kernel only:
+ select ARCH_HAS_GIGANTIC_PAGE
+ select ARCH_SUPPORTS_INT128 if CC_HAS_INT128
++ select ARCH_SUPPORTS_RT
+ select ARCH_USE_CMPXCHG_LOCKREF
+ select HAVE_ARCH_SOFT_DIRTY
+ select MODULES_USE_ELF_RELA
+--
+2.43.0
+
diff --git a/debian/patches-rt/0257-mm-scatterlist-Do-not-disable-irqs-on-RT.patch b/debian/patches-rt/0257-mm-scatterlist-Do-not-disable-irqs-on-RT.patch
new file mode 100644
index 000000000..c97153016
--- /dev/null
+++ b/debian/patches-rt/0257-mm-scatterlist-Do-not-disable-irqs-on-RT.patch
@@ -0,0 +1,30 @@
+From 767e9014ec3dbfeee9323cfcc34acac5315c262e Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 3 Jul 2009 08:44:34 -0500
+Subject: [PATCH 257/323] mm/scatterlist: Do not disable irqs on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+For -RT it is enough to keep pagefault disabled (which is currently handled by
+kmap_atomic()).
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ lib/scatterlist.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/scatterlist.c b/lib/scatterlist.c
+index a59778946404..907f59045998 100644
+--- a/lib/scatterlist.c
++++ b/lib/scatterlist.c
+@@ -892,7 +892,7 @@ void sg_miter_stop(struct sg_mapping_iter *miter)
+ flush_kernel_dcache_page(miter->page);
+
+ if (miter->__flags & SG_MITER_ATOMIC) {
+- WARN_ON_ONCE(preemptible());
++ WARN_ON_ONCE(!pagefault_disabled());
+ kunmap_atomic(miter->addr);
+ } else
+ kunmap(miter->page);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0258-sched-Add-support-for-lazy-preemption.patch b/debian/patches-rt/0258-sched-Add-support-for-lazy-preemption.patch
new file mode 100644
index 000000000..12d064860
--- /dev/null
+++ b/debian/patches-rt/0258-sched-Add-support-for-lazy-preemption.patch
@@ -0,0 +1,691 @@
+From e8b4a64bf2eb6ff6330544895c0f69696059ffda Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 26 Oct 2012 18:50:54 +0100
+Subject: [PATCH 258/323] sched: Add support for lazy preemption
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+It has become an obsession to mitigate the determinism vs. throughput
+loss of RT. Looking at the mainline semantics of preemption points
+gives a hint why RT sucks throughput wise for ordinary SCHED_OTHER
+tasks. One major issue is the wakeup of tasks which are right away
+preempting the waking task while the waking task holds a lock on which
+the woken task will block right after having preempted the wakee. In
+mainline this is prevented due to the implicit preemption disable of
+spin/rw_lock held regions. On RT this is not possible due to the fully
+preemptible nature of sleeping spinlocks.
+
+Though for a SCHED_OTHER task preempting another SCHED_OTHER task this
+is really not a correctness issue. RT folks are concerned about
+SCHED_FIFO/RR tasks preemption and not about the purely fairness
+driven SCHED_OTHER preemption latencies.
+
+So I introduced a lazy preemption mechanism which only applies to
+SCHED_OTHER tasks preempting another SCHED_OTHER task. Aside of the
+existing preempt_count each tasks sports now a preempt_lazy_count
+which is manipulated on lock acquiry and release. This is slightly
+incorrect as for lazyness reasons I coupled this on
+migrate_disable/enable so some other mechanisms get the same treatment
+(e.g. get_cpu_light).
+
+Now on the scheduler side instead of setting NEED_RESCHED this sets
+NEED_RESCHED_LAZY in case of a SCHED_OTHER/SCHED_OTHER preemption and
+therefor allows to exit the waking task the lock held region before
+the woken task preempts. That also works better for cross CPU wakeups
+as the other side can stay in the adaptive spinning loop.
+
+For RT class preemption there is no change. This simply sets
+NEED_RESCHED and forgoes the lazy preemption counter.
+
+ Initial test do not expose any observable latency increasement, but
+history shows that I've been proven wrong before :)
+
+The lazy preemption mode is per default on, but with
+CONFIG_SCHED_DEBUG enabled it can be disabled via:
+
+ # echo NO_PREEMPT_LAZY >/sys/kernel/debug/sched_features
+
+and reenabled via
+
+ # echo PREEMPT_LAZY >/sys/kernel/debug/sched_features
+
+The test results so far are very machine and workload dependent, but
+there is a clear trend that it enhances the non RT workload
+performance.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/preempt.h | 54 ++++++++++++++++++++++--
+ include/linux/sched.h | 38 +++++++++++++++++
+ include/linux/thread_info.h | 12 +++++-
+ include/linux/trace_events.h | 5 ++-
+ kernel/Kconfig.preempt | 6 +++
+ kernel/sched/core.c | 82 +++++++++++++++++++++++++++++++++++-
+ kernel/sched/fair.c | 16 +++----
+ kernel/sched/features.h | 3 ++
+ kernel/sched/sched.h | 9 ++++
+ kernel/trace/trace.c | 50 +++++++++++++---------
+ kernel/trace/trace_events.c | 1 +
+ kernel/trace/trace_output.c | 14 +++++-
+ 12 files changed, 254 insertions(+), 36 deletions(-)
+
+diff --git a/include/linux/preempt.h b/include/linux/preempt.h
+index fb140e00f74d..af39859f02ee 100644
+--- a/include/linux/preempt.h
++++ b/include/linux/preempt.h
+@@ -174,6 +174,20 @@ extern void preempt_count_sub(int val);
+ #define preempt_count_inc() preempt_count_add(1)
+ #define preempt_count_dec() preempt_count_sub(1)
+
++#ifdef CONFIG_PREEMPT_LAZY
++#define add_preempt_lazy_count(val) do { preempt_lazy_count() += (val); } while (0)
++#define sub_preempt_lazy_count(val) do { preempt_lazy_count() -= (val); } while (0)
++#define inc_preempt_lazy_count() add_preempt_lazy_count(1)
++#define dec_preempt_lazy_count() sub_preempt_lazy_count(1)
++#define preempt_lazy_count() (current_thread_info()->preempt_lazy_count)
++#else
++#define add_preempt_lazy_count(val) do { } while (0)
++#define sub_preempt_lazy_count(val) do { } while (0)
++#define inc_preempt_lazy_count() do { } while (0)
++#define dec_preempt_lazy_count() do { } while (0)
++#define preempt_lazy_count() (0)
++#endif
++
+ #ifdef CONFIG_PREEMPT_COUNT
+
+ #define preempt_disable() \
+@@ -182,6 +196,12 @@ do { \
+ barrier(); \
+ } while (0)
+
++#define preempt_lazy_disable() \
++do { \
++ inc_preempt_lazy_count(); \
++ barrier(); \
++} while (0)
++
+ #define sched_preempt_enable_no_resched() \
+ do { \
+ barrier(); \
+@@ -219,6 +239,18 @@ do { \
+ __preempt_schedule(); \
+ } while (0)
+
++/*
++ * open code preempt_check_resched() because it is not exported to modules and
++ * used by local_unlock() or bpf_enable_instrumentation().
++ */
++#define preempt_lazy_enable() \
++do { \
++ dec_preempt_lazy_count(); \
++ barrier(); \
++ if (should_resched(0)) \
++ __preempt_schedule(); \
++} while (0)
++
+ #else /* !CONFIG_PREEMPTION */
+ #define preempt_enable() \
+ do { \
+@@ -226,6 +258,12 @@ do { \
+ preempt_count_dec(); \
+ } while (0)
+
++#define preempt_lazy_enable() \
++do { \
++ dec_preempt_lazy_count(); \
++ barrier(); \
++} while (0)
++
+ #define preempt_enable_notrace() \
+ do { \
+ barrier(); \
+@@ -267,6 +305,9 @@ do { \
+ #define preempt_check_resched_rt() barrier()
+ #define preemptible() 0
+
++#define preempt_lazy_disable() barrier()
++#define preempt_lazy_enable() barrier()
++
+ #endif /* CONFIG_PREEMPT_COUNT */
+
+ #ifdef MODULE
+@@ -285,7 +326,7 @@ do { \
+ } while (0)
+ #define preempt_fold_need_resched() \
+ do { \
+- if (tif_need_resched()) \
++ if (tif_need_resched_now()) \
+ set_preempt_need_resched(); \
+ } while (0)
+
+@@ -413,8 +454,15 @@ extern void migrate_enable(void);
+
+ #else
+
+-static inline void migrate_disable(void) { }
+-static inline void migrate_enable(void) { }
++static inline void migrate_disable(void)
++{
++ preempt_lazy_disable();
++}
++
++static inline void migrate_enable(void)
++{
++ preempt_lazy_enable();
++}
+
+ #endif /* CONFIG_SMP */
+
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index bd0c9c633438..665a17e4f69b 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -1882,6 +1882,44 @@ static inline int test_tsk_need_resched(struct task_struct *tsk)
+ return unlikely(test_tsk_thread_flag(tsk,TIF_NEED_RESCHED));
+ }
+
++#ifdef CONFIG_PREEMPT_LAZY
++static inline void set_tsk_need_resched_lazy(struct task_struct *tsk)
++{
++ set_tsk_thread_flag(tsk,TIF_NEED_RESCHED_LAZY);
++}
++
++static inline void clear_tsk_need_resched_lazy(struct task_struct *tsk)
++{
++ clear_tsk_thread_flag(tsk,TIF_NEED_RESCHED_LAZY);
++}
++
++static inline int test_tsk_need_resched_lazy(struct task_struct *tsk)
++{
++ return unlikely(test_tsk_thread_flag(tsk,TIF_NEED_RESCHED_LAZY));
++}
++
++static inline int need_resched_lazy(void)
++{
++ return test_thread_flag(TIF_NEED_RESCHED_LAZY);
++}
++
++static inline int need_resched_now(void)
++{
++ return test_thread_flag(TIF_NEED_RESCHED);
++}
++
++#else
++static inline void clear_tsk_need_resched_lazy(struct task_struct *tsk) { }
++static inline int need_resched_lazy(void) { return 0; }
++
++static inline int need_resched_now(void)
++{
++ return test_thread_flag(TIF_NEED_RESCHED);
++}
++
++#endif
++
++
+ static inline bool __task_is_stopped_or_traced(struct task_struct *task)
+ {
+ if (task->state & (__TASK_STOPPED | __TASK_TRACED))
+diff --git a/include/linux/thread_info.h b/include/linux/thread_info.h
+index f3040b0b4b23..3cb02ced141b 100644
+--- a/include/linux/thread_info.h
++++ b/include/linux/thread_info.h
+@@ -110,7 +110,17 @@ static inline int test_ti_thread_flag(struct thread_info *ti, int flag)
+ #define test_thread_flag(flag) \
+ test_ti_thread_flag(current_thread_info(), flag)
+
+-#define tif_need_resched() test_thread_flag(TIF_NEED_RESCHED)
++#ifdef CONFIG_PREEMPT_LAZY
++#define tif_need_resched() (test_thread_flag(TIF_NEED_RESCHED) || \
++ test_thread_flag(TIF_NEED_RESCHED_LAZY))
++#define tif_need_resched_now() (test_thread_flag(TIF_NEED_RESCHED))
++#define tif_need_resched_lazy() test_thread_flag(TIF_NEED_RESCHED_LAZY))
++
++#else
++#define tif_need_resched() test_thread_flag(TIF_NEED_RESCHED)
++#define tif_need_resched_now() test_thread_flag(TIF_NEED_RESCHED)
++#define tif_need_resched_lazy() 0
++#endif
+
+ #ifndef CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES
+ static inline int arch_within_stack_frames(const void * const stack,
+diff --git a/include/linux/trace_events.h b/include/linux/trace_events.h
+index 2151524a10f0..e7afd9fe35e5 100644
+--- a/include/linux/trace_events.h
++++ b/include/linux/trace_events.h
+@@ -70,6 +70,7 @@ struct trace_entry {
+ unsigned char preempt_count;
+ int pid;
+ unsigned char migrate_disable;
++ unsigned char preempt_lazy_count;
+ };
+
+ #define TRACE_EVENT_TYPE_MAX \
+@@ -159,9 +160,10 @@ static inline void tracing_generic_entry_update(struct trace_entry *entry,
+ {
+ entry->preempt_count = trace_ctx & 0xff;
+ entry->migrate_disable = (trace_ctx >> 8) & 0xff;
++ entry->preempt_lazy_count = (trace_ctx >> 16) & 0xff;
+ entry->pid = current->pid;
+ entry->type = type;
+- entry->flags = trace_ctx >> 16;
++ entry->flags = trace_ctx >> 24;
+ }
+
+ unsigned int tracing_gen_ctx_irq_test(unsigned int irqs_status);
+@@ -174,6 +176,7 @@ enum trace_flag_type {
+ TRACE_FLAG_SOFTIRQ = 0x10,
+ TRACE_FLAG_PREEMPT_RESCHED = 0x20,
+ TRACE_FLAG_NMI = 0x40,
++ TRACE_FLAG_NEED_RESCHED_LAZY = 0x80,
+ };
+
+ #ifdef CONFIG_TRACE_IRQFLAGS_SUPPORT
+diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt
+index cbe3aa495519..b5cd1e278eb5 100644
+--- a/kernel/Kconfig.preempt
++++ b/kernel/Kconfig.preempt
+@@ -1,5 +1,11 @@
+ # SPDX-License-Identifier: GPL-2.0-only
+
++config HAVE_PREEMPT_LAZY
++ bool
++
++config PREEMPT_LAZY
++ def_bool y if HAVE_PREEMPT_LAZY && PREEMPT_RT
++
+ choice
+ prompt "Preemption Model"
+ default PREEMPT_NONE
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 8ac1f0526476..c847d17e3b04 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -656,6 +656,48 @@ void resched_curr(struct rq *rq)
+ trace_sched_wake_idle_without_ipi(cpu);
+ }
+
++#ifdef CONFIG_PREEMPT_LAZY
++
++static int tsk_is_polling(struct task_struct *p)
++{
++#ifdef TIF_POLLING_NRFLAG
++ return test_tsk_thread_flag(p, TIF_POLLING_NRFLAG);
++#else
++ return 0;
++#endif
++}
++
++void resched_curr_lazy(struct rq *rq)
++{
++ struct task_struct *curr = rq->curr;
++ int cpu;
++
++ if (!sched_feat(PREEMPT_LAZY)) {
++ resched_curr(rq);
++ return;
++ }
++
++ lockdep_assert_held(&rq->lock);
++
++ if (test_tsk_need_resched(curr))
++ return;
++
++ if (test_tsk_need_resched_lazy(curr))
++ return;
++
++ set_tsk_need_resched_lazy(curr);
++
++ cpu = cpu_of(rq);
++ if (cpu == smp_processor_id())
++ return;
++
++ /* NEED_RESCHED_LAZY must be visible before we test polling */
++ smp_mb();
++ if (!tsk_is_polling(curr))
++ smp_send_reschedule(cpu);
++}
++#endif
++
+ void resched_cpu(int cpu)
+ {
+ struct rq *rq = cpu_rq(cpu);
+@@ -1772,6 +1814,7 @@ void migrate_disable(void)
+ preempt_disable();
+ this_rq()->nr_pinned++;
+ p->migration_disabled = 1;
++ preempt_lazy_disable();
+ preempt_enable();
+ }
+ EXPORT_SYMBOL_GPL(migrate_disable);
+@@ -1800,6 +1843,7 @@ void migrate_enable(void)
+ barrier();
+ p->migration_disabled = 0;
+ this_rq()->nr_pinned--;
++ preempt_lazy_enable();
+ preempt_enable();
+
+ trace_sched_migrate_enable_tp(p);
+@@ -3822,6 +3866,9 @@ int sched_fork(unsigned long clone_flags, struct task_struct *p)
+ p->on_cpu = 0;
+ #endif
+ init_task_preempt_count(p);
++#ifdef CONFIG_HAVE_PREEMPT_LAZY
++ task_thread_info(p)->preempt_lazy_count = 0;
++#endif
+ #ifdef CONFIG_SMP
+ plist_node_init(&p->pushable_tasks, MAX_PRIO);
+ RB_CLEAR_NODE(&p->pushable_dl_tasks);
+@@ -5101,6 +5148,7 @@ static void __sched notrace __schedule(bool preempt, bool spinning_lock)
+
+ next = pick_next_task(rq, prev, &rf);
+ clear_tsk_need_resched(prev);
++ clear_tsk_need_resched_lazy(prev);
+ clear_preempt_need_resched();
+
+ if (likely(prev != next)) {
+@@ -5300,6 +5348,30 @@ static void __sched notrace preempt_schedule_common(void)
+ } while (need_resched());
+ }
+
++#ifdef CONFIG_PREEMPT_LAZY
++/*
++ * If TIF_NEED_RESCHED is then we allow to be scheduled away since this is
++ * set by a RT task. Oterwise we try to avoid beeing scheduled out as long as
++ * preempt_lazy_count counter >0.
++ */
++static __always_inline int preemptible_lazy(void)
++{
++ if (test_thread_flag(TIF_NEED_RESCHED))
++ return 1;
++ if (current_thread_info()->preempt_lazy_count)
++ return 0;
++ return 1;
++}
++
++#else
++
++static inline int preemptible_lazy(void)
++{
++ return 1;
++}
++
++#endif
++
+ #ifdef CONFIG_PREEMPTION
+ /*
+ * This is the entry point to schedule() from in-kernel preemption
+@@ -5313,7 +5385,8 @@ asmlinkage __visible void __sched notrace preempt_schedule(void)
+ */
+ if (likely(!preemptible()))
+ return;
+-
++ if (!preemptible_lazy())
++ return;
+ preempt_schedule_common();
+ }
+ NOKPROBE_SYMBOL(preempt_schedule);
+@@ -5353,6 +5426,9 @@ asmlinkage __visible void __sched notrace preempt_schedule_notrace(void)
+ if (likely(!preemptible()))
+ return;
+
++ if (!preemptible_lazy())
++ return;
++
+ do {
+ /*
+ * Because the function tracer can trace preempt_count_sub()
+@@ -7175,7 +7251,9 @@ void __init init_idle(struct task_struct *idle, int cpu)
+
+ /* Set the preempt count _outside_ the spinlocks! */
+ init_idle_preempt_count(idle, cpu);
+-
++#ifdef CONFIG_HAVE_PREEMPT_LAZY
++ task_thread_info(idle)->preempt_lazy_count = 0;
++#endif
+ /*
+ * The idle tasks have their own, simple scheduling class:
+ */
+diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
+index 73a89fbd81be..f4928e5b6611 100644
+--- a/kernel/sched/fair.c
++++ b/kernel/sched/fair.c
+@@ -4570,7 +4570,7 @@ check_preempt_tick(struct cfs_rq *cfs_rq, struct sched_entity *curr)
+ ideal_runtime = sched_slice(cfs_rq, curr);
+ delta_exec = curr->sum_exec_runtime - curr->prev_sum_exec_runtime;
+ if (delta_exec > ideal_runtime) {
+- resched_curr(rq_of(cfs_rq));
++ resched_curr_lazy(rq_of(cfs_rq));
+ /*
+ * The current task ran long enough, ensure it doesn't get
+ * re-elected due to buddy favours.
+@@ -4594,7 +4594,7 @@ check_preempt_tick(struct cfs_rq *cfs_rq, struct sched_entity *curr)
+ return;
+
+ if (delta > ideal_runtime)
+- resched_curr(rq_of(cfs_rq));
++ resched_curr_lazy(rq_of(cfs_rq));
+ }
+
+ static void
+@@ -4737,7 +4737,7 @@ entity_tick(struct cfs_rq *cfs_rq, struct sched_entity *curr, int queued)
+ * validating it and just reschedule.
+ */
+ if (queued) {
+- resched_curr(rq_of(cfs_rq));
++ resched_curr_lazy(rq_of(cfs_rq));
+ return;
+ }
+ /*
+@@ -4874,7 +4874,7 @@ static void __account_cfs_rq_runtime(struct cfs_rq *cfs_rq, u64 delta_exec)
+ * hierarchy can be throttled
+ */
+ if (!assign_cfs_rq_runtime(cfs_rq) && likely(cfs_rq->curr))
+- resched_curr(rq_of(cfs_rq));
++ resched_curr_lazy(rq_of(cfs_rq));
+ }
+
+ static __always_inline
+@@ -5609,7 +5609,7 @@ static void hrtick_start_fair(struct rq *rq, struct task_struct *p)
+
+ if (delta < 0) {
+ if (rq->curr == p)
+- resched_curr(rq);
++ resched_curr_lazy(rq);
+ return;
+ }
+ hrtick_start(rq, delta);
+@@ -7218,7 +7218,7 @@ static void check_preempt_wakeup(struct rq *rq, struct task_struct *p, int wake_
+ return;
+
+ preempt:
+- resched_curr(rq);
++ resched_curr_lazy(rq);
+ /*
+ * Only set the backward buddy when the current task is still
+ * on the rq. This can happen when a wakeup gets interleaved
+@@ -11059,7 +11059,7 @@ static void task_fork_fair(struct task_struct *p)
+ * 'current' within the tree based on its new key value.
+ */
+ swap(curr->vruntime, se->vruntime);
+- resched_curr(rq);
++ resched_curr_lazy(rq);
+ }
+
+ se->vruntime -= cfs_rq->min_vruntime;
+@@ -11086,7 +11086,7 @@ prio_changed_fair(struct rq *rq, struct task_struct *p, int oldprio)
+ */
+ if (rq->curr == p) {
+ if (p->prio > oldprio)
+- resched_curr(rq);
++ resched_curr_lazy(rq);
+ } else
+ check_preempt_curr(rq, p, 0);
+ }
+diff --git a/kernel/sched/features.h b/kernel/sched/features.h
+index 402fd37fb340..bc2466af142e 100644
+--- a/kernel/sched/features.h
++++ b/kernel/sched/features.h
+@@ -47,6 +47,9 @@ SCHED_FEAT(NONTASK_CAPACITY, true)
+
+ #ifdef CONFIG_PREEMPT_RT
+ SCHED_FEAT(TTWU_QUEUE, false)
++# ifdef CONFIG_PREEMPT_LAZY
++SCHED_FEAT(PREEMPT_LAZY, true)
++# endif
+ #else
+
+ /*
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index d4bfc51358d3..ad854a670701 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -1997,6 +1997,15 @@ extern void reweight_task(struct task_struct *p, int prio);
+ extern void resched_curr(struct rq *rq);
+ extern void resched_cpu(int cpu);
+
++#ifdef CONFIG_PREEMPT_LAZY
++extern void resched_curr_lazy(struct rq *rq);
++#else
++static inline void resched_curr_lazy(struct rq *rq)
++{
++ resched_curr(rq);
++}
++#endif
++
+ extern struct rt_bandwidth def_rt_bandwidth;
+ extern void init_rt_bandwidth(struct rt_bandwidth *rt_b, u64 period, u64 runtime);
+
+diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
+index 02dffb1862b8..7caae85af03d 100644
+--- a/kernel/trace/trace.c
++++ b/kernel/trace/trace.c
+@@ -2602,8 +2602,16 @@ unsigned int tracing_gen_ctx_irq_test(unsigned int irqs_status)
+ trace_flags |= TRACE_FLAG_NEED_RESCHED;
+ if (test_preempt_need_resched())
+ trace_flags |= TRACE_FLAG_PREEMPT_RESCHED;
+- return (trace_flags << 16) | (pc & 0xff) |
+- (migration_disable_value() & 0xff) << 8;
++
++#ifdef CONFIG_PREEMPT_LAZY
++ if (need_resched_lazy())
++ trace_flags |= TRACE_FLAG_NEED_RESCHED_LAZY;
++#endif
++
++ return (pc & 0xff) |
++ (migration_disable_value() & 0xff) << 8 |
++ (preempt_lazy_count() & 0xff) << 16 |
++ (trace_flags << 24);
+ }
+
+ struct ring_buffer_event *
+@@ -3861,15 +3869,17 @@ unsigned long trace_total_entries(struct trace_array *tr)
+
+ static void print_lat_help_header(struct seq_file *m)
+ {
+- seq_puts(m, "# _------=> CPU# \n"
+- "# / _-----=> irqs-off \n"
+- "# | / _----=> need-resched \n"
+- "# || / _---=> hardirq/softirq \n"
+- "# ||| / _--=> preempt-depth \n"
+- "# |||| / _-=> migrate-disable \n"
+- "# ||||| / delay \n"
+- "# cmd pid |||||| time | caller \n"
+- "# \\ / |||||| \\ | / \n");
++ seq_puts(m, "# _--------=> CPU# \n"
++ "# / _-------=> irqs-off \n"
++ "# | / _------=> need-resched \n"
++ "# || / _-----=> need-resched-lazy\n"
++ "# ||| / _----=> hardirq/softirq \n"
++ "# |||| / _---=> preempt-depth \n"
++ "# ||||| / _--=> preempt-lazy-depth\n"
++ "# |||||| / _-=> migrate-disable \n"
++ "# ||||||| / delay \n"
++ "# cmd pid |||||||| time | caller \n"
++ "# \\ / |||||||| \\ | / \n");
+ }
+
+ static void print_event_info(struct array_buffer *buf, struct seq_file *m)
+@@ -3903,14 +3913,16 @@ static void print_func_help_header_irq(struct array_buffer *buf, struct seq_file
+
+ print_event_info(buf, m);
+
+- seq_printf(m, "# %.*s _-----=> irqs-off\n", prec, space);
+- seq_printf(m, "# %.*s / _----=> need-resched\n", prec, space);
+- seq_printf(m, "# %.*s| / _---=> hardirq/softirq\n", prec, space);
+- seq_printf(m, "# %.*s|| / _--=> preempt-depth\n", prec, space);
+- seq_printf(m, "# %.*s||| / _-=> migrate-disable\n", prec, space);
+- seq_printf(m, "# %.*s|||| / delay\n", prec, space);
+- seq_printf(m, "# TASK-PID %.*s CPU# ||||| TIMESTAMP FUNCTION\n", prec, " TGID ");
+- seq_printf(m, "# | | %.*s | ||||| | |\n", prec, " | ");
++ seq_printf(m, "# %.*s _-------=> irqs-off\n", prec, space);
++ seq_printf(m, "# %.*s / _------=> need-resched\n", prec, space);
++ seq_printf(m, "# %.*s| / _-----=> need-resched-lazy\n", prec, space);
++ seq_printf(m, "# %.*s|| / _----=> hardirq/softirq\n", prec, space);
++ seq_printf(m, "# %.*s||| / _---=> preempt-depth\n", prec, space);
++ seq_printf(m, "# %.*s|||| / _--=> preempt-lazy-depth\n", prec, space);
++ seq_printf(m, "# %.*s||||| / _-=> migrate-disable\n", prec, space);
++ seq_printf(m, "# %.*s|||||| / delay\n", prec, space);
++ seq_printf(m, "# TASK-PID %.*s CPU# ||||||| TIMESTAMP FUNCTION\n", prec, " TGID ");
++ seq_printf(m, "# | | %.*s | ||||||| | |\n", prec, " | ");
+ }
+
+ void
+diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
+index 636fb7df3714..245b8289ecdf 100644
+--- a/kernel/trace/trace_events.c
++++ b/kernel/trace/trace_events.c
+@@ -185,6 +185,7 @@ static int trace_define_common_fields(void)
+ __common_field(unsigned char, preempt_count);
+ __common_field(int, pid);
+ __common_field(unsigned char, migrate_disable);
++ __common_field(unsigned char, preempt_lazy_count);
+
+ return ret;
+ }
+diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c
+index b3619b21217c..5a71964ade3a 100644
+--- a/kernel/trace/trace_output.c
++++ b/kernel/trace/trace_output.c
+@@ -451,6 +451,7 @@ int trace_print_lat_fmt(struct trace_seq *s, struct trace_entry *entry)
+ {
+ char hardsoft_irq;
+ char need_resched;
++ char need_resched_lazy;
+ char irqs_off;
+ int hardirq;
+ int softirq;
+@@ -481,6 +482,9 @@ int trace_print_lat_fmt(struct trace_seq *s, struct trace_entry *entry)
+ break;
+ }
+
++ need_resched_lazy =
++ (entry->flags & TRACE_FLAG_NEED_RESCHED_LAZY) ? 'L' : '.';
++
+ hardsoft_irq =
+ (nmi && hardirq) ? 'Z' :
+ nmi ? 'z' :
+@@ -489,14 +493,20 @@ int trace_print_lat_fmt(struct trace_seq *s, struct trace_entry *entry)
+ softirq ? 's' :
+ '.' ;
+
+- trace_seq_printf(s, "%c%c%c",
+- irqs_off, need_resched, hardsoft_irq);
++ trace_seq_printf(s, "%c%c%c%c",
++ irqs_off, need_resched, need_resched_lazy,
++ hardsoft_irq);
+
+ if (entry->preempt_count)
+ trace_seq_printf(s, "%x", entry->preempt_count);
+ else
+ trace_seq_putc(s, '.');
+
++ if (entry->preempt_lazy_count)
++ trace_seq_printf(s, "%x", entry->preempt_lazy_count);
++ else
++ trace_seq_putc(s, '.');
++
+ if (entry->migrate_disable)
+ trace_seq_printf(s, "%x", entry->migrate_disable);
+ else
+--
+2.43.0
+
diff --git a/debian/patches-rt/0259-x86-entry-Use-should_resched-in-idtentry_exit_cond_r.patch b/debian/patches-rt/0259-x86-entry-Use-should_resched-in-idtentry_exit_cond_r.patch
new file mode 100644
index 000000000..44c4cc8c2
--- /dev/null
+++ b/debian/patches-rt/0259-x86-entry-Use-should_resched-in-idtentry_exit_cond_r.patch
@@ -0,0 +1,35 @@
+From 367fe43dc09205ecc5fcdca95276fc481e7ccd9f Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 30 Jun 2020 11:45:14 +0200
+Subject: [PATCH 259/323] x86/entry: Use should_resched() in
+ idtentry_exit_cond_resched()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The TIF_NEED_RESCHED bit is inlined on x86 into the preemption counter.
+By using should_resched(0) instead of need_resched() the same check can
+be performed which uses the same variable as 'preempt_count()` which was
+issued before.
+
+Use should_resched(0) instead need_resched().
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/entry/common.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kernel/entry/common.c b/kernel/entry/common.c
+index e6da86039ccf..f32250adb681 100644
+--- a/kernel/entry/common.c
++++ b/kernel/entry/common.c
+@@ -371,7 +371,7 @@ void irqentry_exit_cond_resched(void)
+ rcu_irq_exit_check_preempt();
+ if (IS_ENABLED(CONFIG_DEBUG_ENTRY))
+ WARN_ON_ONCE(!on_thread_stack());
+- if (need_resched())
++ if (should_resched(0))
+ preempt_schedule_irq();
+ }
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0260-x86-Support-for-lazy-preemption.patch b/debian/patches-rt/0260-x86-Support-for-lazy-preemption.patch
new file mode 100644
index 000000000..1b4da37ab
--- /dev/null
+++ b/debian/patches-rt/0260-x86-Support-for-lazy-preemption.patch
@@ -0,0 +1,171 @@
+From 3e75dc5bbc430b2a1db27fe101ed508b067af7b0 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 1 Nov 2012 11:03:47 +0100
+Subject: [PATCH 260/323] x86: Support for lazy preemption
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Implement the x86 pieces for lazy preempt.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ arch/x86/Kconfig | 1 +
+ arch/x86/include/asm/preempt.h | 33 +++++++++++++++++++++++++++++-
+ arch/x86/include/asm/thread_info.h | 11 ++++++++++
+ include/linux/entry-common.h | 6 +++---
+ kernel/entry/common.c | 2 +-
+ 5 files changed, 48 insertions(+), 5 deletions(-)
+
+diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
+index c72d66a0e840..b9f68b01a8c8 100644
+--- a/arch/x86/Kconfig
++++ b/arch/x86/Kconfig
+@@ -213,6 +213,7 @@ config X86
+ select HAVE_PCI
+ select HAVE_PERF_REGS
+ select HAVE_PERF_USER_STACK_DUMP
++ select HAVE_PREEMPT_LAZY
+ select MMU_GATHER_RCU_TABLE_FREE if PARAVIRT
+ select HAVE_POSIX_CPU_TIMERS_TASK_WORK
+ select HAVE_REGS_AND_STACK_ACCESS_API
+diff --git a/arch/x86/include/asm/preempt.h b/arch/x86/include/asm/preempt.h
+index 50e0c0ab7b97..afe37a8c6c24 100644
+--- a/arch/x86/include/asm/preempt.h
++++ b/arch/x86/include/asm/preempt.h
+@@ -89,17 +89,48 @@ static __always_inline void __preempt_count_sub(int val)
+ * a decrement which hits zero means we have no preempt_count and should
+ * reschedule.
+ */
+-static __always_inline bool __preempt_count_dec_and_test(void)
++static __always_inline bool ____preempt_count_dec_and_test(void)
+ {
+ return GEN_UNARY_RMWcc("decl", __preempt_count, e, __percpu_arg([var]));
+ }
+
++static __always_inline bool __preempt_count_dec_and_test(void)
++{
++ if (____preempt_count_dec_and_test())
++ return true;
++#ifdef CONFIG_PREEMPT_LAZY
++ if (preempt_count())
++ return false;
++ if (current_thread_info()->preempt_lazy_count)
++ return false;
++ return test_thread_flag(TIF_NEED_RESCHED_LAZY);
++#else
++ return false;
++#endif
++}
++
+ /*
+ * Returns true when we need to resched and can (barring IRQ state).
+ */
+ static __always_inline bool should_resched(int preempt_offset)
+ {
++#ifdef CONFIG_PREEMPT_LAZY
++ u32 tmp;
++ tmp = raw_cpu_read_4(__preempt_count);
++ if (tmp == preempt_offset)
++ return true;
++
++ /* preempt count == 0 ? */
++ tmp &= ~PREEMPT_NEED_RESCHED;
++ if (tmp != preempt_offset)
++ return false;
++ /* XXX PREEMPT_LOCK_OFFSET */
++ if (current_thread_info()->preempt_lazy_count)
++ return false;
++ return test_thread_flag(TIF_NEED_RESCHED_LAZY);
++#else
+ return unlikely(raw_cpu_read_4(__preempt_count) == preempt_offset);
++#endif
+ }
+
+ #ifdef CONFIG_PREEMPTION
+diff --git a/arch/x86/include/asm/thread_info.h b/arch/x86/include/asm/thread_info.h
+index 012c8ee93b67..d77e99ba7610 100644
+--- a/arch/x86/include/asm/thread_info.h
++++ b/arch/x86/include/asm/thread_info.h
+@@ -56,17 +56,24 @@ struct task_struct;
+ struct thread_info {
+ unsigned long flags; /* low level flags */
+ u32 status; /* thread synchronous flags */
++ int preempt_lazy_count; /* 0 => lazy preemptable
++ <0 => BUG */
+ };
+
+ #define INIT_THREAD_INFO(tsk) \
+ { \
+ .flags = 0, \
++ .preempt_lazy_count = 0, \
+ }
+
+ #else /* !__ASSEMBLY__ */
+
+ #include <asm/asm-offsets.h>
+
++#define GET_THREAD_INFO(reg) \
++ _ASM_MOV PER_CPU_VAR(cpu_current_top_of_stack),reg ; \
++ _ASM_SUB $(THREAD_SIZE),reg ;
++
+ #endif
+
+ /*
+@@ -103,6 +110,7 @@ struct thread_info {
+ #define TIF_SYSCALL_TRACEPOINT 28 /* syscall tracepoint instrumentation */
+ #define TIF_ADDR32 29 /* 32-bit address space on 64 bits */
+ #define TIF_X32 30 /* 32-bit native x86-64 binary */
++#define TIF_NEED_RESCHED_LAZY 31 /* lazy rescheduling necessary */
+
+ #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE)
+ #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME)
+@@ -124,6 +132,7 @@ struct thread_info {
+ #define _TIF_IA32 (1 << TIF_IA32)
+ #define _TIF_NOTIFY_SIGNAL (1 << TIF_NOTIFY_SIGNAL)
+ #define _TIF_SLD (1 << TIF_SLD)
++#define _TIF_NEED_RESCHED_LAZY (1 << TIF_NEED_RESCHED_LAZY)
+ #define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG)
+ #define _TIF_IO_BITMAP (1 << TIF_IO_BITMAP)
+ #define _TIF_FORCED_TF (1 << TIF_FORCED_TF)
+@@ -156,6 +165,8 @@ struct thread_info {
+
+ #define _TIF_WORK_CTXSW_NEXT (_TIF_WORK_CTXSW)
+
++#define _TIF_NEED_RESCHED_MASK (_TIF_NEED_RESCHED | _TIF_NEED_RESCHED_LAZY)
++
+ #define STACK_WARN (THREAD_SIZE/8)
+
+ /*
+diff --git a/include/linux/entry-common.h b/include/linux/entry-common.h
+index 46c42479f950..b902af13d05f 100644
+--- a/include/linux/entry-common.h
++++ b/include/linux/entry-common.h
+@@ -67,9 +67,9 @@
+ # define ARCH_EXIT_TO_USER_MODE_WORK (0)
+ #endif
+
+-#define EXIT_TO_USER_MODE_WORK \
+- (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME | _TIF_UPROBE | \
+- _TIF_NEED_RESCHED | _TIF_PATCH_PENDING | _TIF_NOTIFY_SIGNAL | \
++#define EXIT_TO_USER_MODE_WORK \
++ (_TIF_SIGPENDING | _TIF_NOTIFY_RESUME | _TIF_UPROBE | \
++ _TIF_NEED_RESCHED_MASK | _TIF_PATCH_PENDING | _TIF_NOTIFY_SIGNAL | \
+ ARCH_EXIT_TO_USER_MODE_WORK)
+
+ /**
+diff --git a/kernel/entry/common.c b/kernel/entry/common.c
+index f32250adb681..cdf97ea30b4c 100644
+--- a/kernel/entry/common.c
++++ b/kernel/entry/common.c
+@@ -157,7 +157,7 @@ static unsigned long exit_to_user_mode_loop(struct pt_regs *regs,
+
+ local_irq_enable_exit_to_user(ti_work);
+
+- if (ti_work & _TIF_NEED_RESCHED)
++ if (ti_work & _TIF_NEED_RESCHED_MASK)
+ schedule();
+
+ #ifdef ARCH_RT_DELAYS_SIGNAL_SEND
+--
+2.43.0
+
diff --git a/debian/patches-rt/0261-arm-Add-support-for-lazy-preemption.patch b/debian/patches-rt/0261-arm-Add-support-for-lazy-preemption.patch
new file mode 100644
index 000000000..18012c8d8
--- /dev/null
+++ b/debian/patches-rt/0261-arm-Add-support-for-lazy-preemption.patch
@@ -0,0 +1,153 @@
+From 125d4e163b1aa93781f9cf4673f729053af2bc53 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Wed, 31 Oct 2012 12:04:11 +0100
+Subject: [PATCH 261/323] arm: Add support for lazy preemption
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Implement the arm pieces for lazy preempt.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ arch/arm/Kconfig | 1 +
+ arch/arm/include/asm/thread_info.h | 5 ++++-
+ arch/arm/kernel/asm-offsets.c | 1 +
+ arch/arm/kernel/entry-armv.S | 19 ++++++++++++++++---
+ arch/arm/kernel/entry-common.S | 1 +
+ arch/arm/kernel/signal.c | 3 ++-
+ 6 files changed, 25 insertions(+), 5 deletions(-)
+
+diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
+index c01251683018..ee2cbe8ad502 100644
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -107,6 +107,7 @@ config ARM
+ select HAVE_PERF_EVENTS
+ select HAVE_PERF_REGS
+ select HAVE_PERF_USER_STACK_DUMP
++ select HAVE_PREEMPT_LAZY
+ select MMU_GATHER_RCU_TABLE_FREE if SMP && ARM_LPAE
+ select HAVE_REGS_AND_STACK_ACCESS_API
+ select HAVE_RSEQ
+diff --git a/arch/arm/include/asm/thread_info.h b/arch/arm/include/asm/thread_info.h
+index fcccf35f5cf9..3b981ad0c322 100644
+--- a/arch/arm/include/asm/thread_info.h
++++ b/arch/arm/include/asm/thread_info.h
+@@ -46,6 +46,7 @@ struct cpu_context_save {
+ struct thread_info {
+ unsigned long flags; /* low level flags */
+ int preempt_count; /* 0 => preemptable, <0 => bug */
++ int preempt_lazy_count; /* 0 => preemptable, <0 => bug */
+ mm_segment_t addr_limit; /* address limit */
+ struct task_struct *task; /* main task structure */
+ __u32 cpu; /* cpu */
+@@ -134,6 +135,7 @@ extern int vfp_restore_user_hwstate(struct user_vfp *,
+ #define TIF_NOTIFY_RESUME 2 /* callback before returning to user */
+ #define TIF_UPROBE 3 /* breakpointed or singlestepping */
+ #define TIF_NOTIFY_SIGNAL 4 /* signal notifications exist */
++#define TIF_NEED_RESCHED_LAZY 5
+
+ #define TIF_USING_IWMMXT 17
+ #define TIF_MEMDIE 18 /* is terminating due to OOM killer */
+@@ -143,10 +145,10 @@ extern int vfp_restore_user_hwstate(struct user_vfp *,
+ #define TIF_SYSCALL_TRACEPOINT 22 /* syscall tracepoint instrumentation */
+ #define TIF_SECCOMP 23 /* seccomp syscall filtering active */
+
+-
+ #define _TIF_SIGPENDING (1 << TIF_SIGPENDING)
+ #define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED)
+ #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME)
++#define _TIF_NEED_RESCHED_LAZY (1 << TIF_NEED_RESCHED_LAZY)
+ #define _TIF_UPROBE (1 << TIF_UPROBE)
+ #define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE)
+ #define _TIF_SYSCALL_AUDIT (1 << TIF_SYSCALL_AUDIT)
+@@ -164,6 +166,7 @@ extern int vfp_restore_user_hwstate(struct user_vfp *,
+ */
+ #define _TIF_WORK_MASK (_TIF_NEED_RESCHED | _TIF_SIGPENDING | \
+ _TIF_NOTIFY_RESUME | _TIF_UPROBE | \
++ _TIF_NEED_RESCHED_LAZY | \
+ _TIF_NOTIFY_SIGNAL)
+
+ #endif /* __KERNEL__ */
+diff --git a/arch/arm/kernel/asm-offsets.c b/arch/arm/kernel/asm-offsets.c
+index 70993af22d80..024c65c3a0f2 100644
+--- a/arch/arm/kernel/asm-offsets.c
++++ b/arch/arm/kernel/asm-offsets.c
+@@ -43,6 +43,7 @@ int main(void)
+ BLANK();
+ DEFINE(TI_FLAGS, offsetof(struct thread_info, flags));
+ DEFINE(TI_PREEMPT, offsetof(struct thread_info, preempt_count));
++ DEFINE(TI_PREEMPT_LAZY, offsetof(struct thread_info, preempt_lazy_count));
+ DEFINE(TI_ADDR_LIMIT, offsetof(struct thread_info, addr_limit));
+ DEFINE(TI_TASK, offsetof(struct thread_info, task));
+ DEFINE(TI_CPU, offsetof(struct thread_info, cpu));
+diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S
+index 030351d169aa..d6086559168d 100644
+--- a/arch/arm/kernel/entry-armv.S
++++ b/arch/arm/kernel/entry-armv.S
+@@ -206,11 +206,18 @@ __irq_svc:
+
+ #ifdef CONFIG_PREEMPTION
+ ldr r8, [tsk, #TI_PREEMPT] @ get preempt count
+- ldr r0, [tsk, #TI_FLAGS] @ get flags
+ teq r8, #0 @ if preempt count != 0
++ bne 1f @ return from exeption
++ ldr r0, [tsk, #TI_FLAGS] @ get flags
++ tst r0, #_TIF_NEED_RESCHED @ if NEED_RESCHED is set
++ blne svc_preempt @ preempt!
++
++ ldr r8, [tsk, #TI_PREEMPT_LAZY] @ get preempt lazy count
++ teq r8, #0 @ if preempt lazy count != 0
+ movne r0, #0 @ force flags to 0
+- tst r0, #_TIF_NEED_RESCHED
++ tst r0, #_TIF_NEED_RESCHED_LAZY
+ blne svc_preempt
++1:
+ #endif
+
+ svc_exit r5, irq = 1 @ return from exception
+@@ -225,8 +232,14 @@ svc_preempt:
+ 1: bl preempt_schedule_irq @ irq en/disable is done inside
+ ldr r0, [tsk, #TI_FLAGS] @ get new tasks TI_FLAGS
+ tst r0, #_TIF_NEED_RESCHED
++ bne 1b
++ tst r0, #_TIF_NEED_RESCHED_LAZY
+ reteq r8 @ go again
+- b 1b
++ ldr r0, [tsk, #TI_PREEMPT_LAZY] @ get preempt lazy count
++ teq r0, #0 @ if preempt lazy count != 0
++ beq 1b
++ ret r8 @ go again
++
+ #endif
+
+ __und_fault:
+diff --git a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S
+index 9b3c737575e9..a30b1a1cc4d1 100644
+--- a/arch/arm/kernel/entry-common.S
++++ b/arch/arm/kernel/entry-common.S
+@@ -92,6 +92,7 @@ __ret_fast_syscall:
+ ldr r1, [tsk, #TI_FLAGS] @ re-check for syscall tracing
+ movs r1, r1, lsl #16
+ beq no_work_pending
++do_slower_path:
+ UNWIND(.fnend )
+ ENDPROC(ret_fast_syscall)
+
+diff --git a/arch/arm/kernel/signal.c b/arch/arm/kernel/signal.c
+index a3a38d0a4c85..f04ccf19ab1f 100644
+--- a/arch/arm/kernel/signal.c
++++ b/arch/arm/kernel/signal.c
+@@ -649,7 +649,8 @@ do_work_pending(struct pt_regs *regs, unsigned int thread_flags, int syscall)
+ */
+ trace_hardirqs_off();
+ do {
+- if (likely(thread_flags & _TIF_NEED_RESCHED)) {
++ if (likely(thread_flags & (_TIF_NEED_RESCHED |
++ _TIF_NEED_RESCHED_LAZY))) {
+ schedule();
+ } else {
+ if (unlikely(!user_mode(regs)))
+--
+2.43.0
+
diff --git a/debian/patches-rt/0262-powerpc-Add-support-for-lazy-preemption.patch b/debian/patches-rt/0262-powerpc-Add-support-for-lazy-preemption.patch
new file mode 100644
index 000000000..259c9928b
--- /dev/null
+++ b/debian/patches-rt/0262-powerpc-Add-support-for-lazy-preemption.patch
@@ -0,0 +1,267 @@
+From 8e5e88a7528b5f0b0f2b9835deaf8b6db693500f Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 1 Nov 2012 10:14:11 +0100
+Subject: [PATCH 262/323] powerpc: Add support for lazy preemption
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Implement the powerpc pieces for lazy preempt.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ arch/powerpc/Kconfig | 1 +
+ arch/powerpc/include/asm/thread_info.h | 16 ++++++++++++----
+ arch/powerpc/kernel/asm-offsets.c | 1 +
+ arch/powerpc/kernel/entry_32.S | 23 ++++++++++++++++-------
+ arch/powerpc/kernel/exceptions-64e.S | 16 ++++++++++++----
+ arch/powerpc/kernel/syscall_64.c | 10 +++++++---
+ 6 files changed, 49 insertions(+), 18 deletions(-)
+
+diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
+index b3ab6c2d9f66..6d8ce54ad6dd 100644
+--- a/arch/powerpc/Kconfig
++++ b/arch/powerpc/Kconfig
+@@ -230,6 +230,7 @@ config PPC
+ select HAVE_HARDLOCKUP_DETECTOR_PERF if PERF_EVENTS && HAVE_PERF_EVENTS_NMI && !HAVE_HARDLOCKUP_DETECTOR_ARCH
+ select HAVE_PERF_REGS
+ select HAVE_PERF_USER_STACK_DUMP
++ select HAVE_PREEMPT_LAZY
+ select MMU_GATHER_RCU_TABLE_FREE
+ select MMU_GATHER_PAGE_SIZE
+ select HAVE_REGS_AND_STACK_ACCESS_API
+diff --git a/arch/powerpc/include/asm/thread_info.h b/arch/powerpc/include/asm/thread_info.h
+index ff31d2fa2140..23bfe231fda3 100644
+--- a/arch/powerpc/include/asm/thread_info.h
++++ b/arch/powerpc/include/asm/thread_info.h
+@@ -54,6 +54,8 @@
+ struct thread_info {
+ int preempt_count; /* 0 => preemptable,
+ <0 => BUG */
++ int preempt_lazy_count; /* 0 => preemptable,
++ <0 => BUG */
+ unsigned long local_flags; /* private flags for thread */
+ #ifdef CONFIG_LIVEPATCH
+ unsigned long *livepatch_sp;
+@@ -104,11 +106,12 @@ void arch_setup_new_exec(void);
+ #define TIF_SINGLESTEP 8 /* singlestepping active */
+ #define TIF_NOHZ 9 /* in adaptive nohz mode */
+ #define TIF_SECCOMP 10 /* secure computing */
+-#define TIF_RESTOREALL 11 /* Restore all regs (implies NOERROR) */
+-#define TIF_NOERROR 12 /* Force successful syscall return */
++
++#define TIF_NEED_RESCHED_LAZY 11 /* lazy rescheduling necessary */
++#define TIF_SYSCALL_TRACEPOINT 12 /* syscall tracepoint instrumentation */
++
+ #define TIF_NOTIFY_RESUME 13 /* callback before returning to user */
+ #define TIF_UPROBE 14 /* breakpointed or single-stepping */
+-#define TIF_SYSCALL_TRACEPOINT 15 /* syscall tracepoint instrumentation */
+ #define TIF_EMULATE_STACK_STORE 16 /* Is an instruction emulation
+ for stack store? */
+ #define TIF_MEMDIE 17 /* is terminating due to OOM killer */
+@@ -117,6 +120,9 @@ void arch_setup_new_exec(void);
+ #endif
+ #define TIF_POLLING_NRFLAG 19 /* true if poll_idle() is polling TIF_NEED_RESCHED */
+ #define TIF_32BIT 20 /* 32 bit binary */
++#define TIF_RESTOREALL 21 /* Restore all regs (implies NOERROR) */
++#define TIF_NOERROR 22 /* Force successful syscall return */
++
+
+ /* as above, but as bit values */
+ #define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE)
+@@ -137,6 +143,7 @@ void arch_setup_new_exec(void);
+ #define _TIF_SYSCALL_TRACEPOINT (1<<TIF_SYSCALL_TRACEPOINT)
+ #define _TIF_EMULATE_STACK_STORE (1<<TIF_EMULATE_STACK_STORE)
+ #define _TIF_NOHZ (1<<TIF_NOHZ)
++#define _TIF_NEED_RESCHED_LAZY (1<<TIF_NEED_RESCHED_LAZY)
+ #define _TIF_SYSCALL_EMU (1<<TIF_SYSCALL_EMU)
+ #define _TIF_SYSCALL_DOTRACE (_TIF_SYSCALL_TRACE | _TIF_SYSCALL_AUDIT | \
+ _TIF_SECCOMP | _TIF_SYSCALL_TRACEPOINT | \
+@@ -145,8 +152,9 @@ void arch_setup_new_exec(void);
+ #define _TIF_USER_WORK_MASK (_TIF_SIGPENDING | _TIF_NEED_RESCHED | \
+ _TIF_NOTIFY_RESUME | _TIF_UPROBE | \
+ _TIF_RESTORE_TM | _TIF_PATCH_PENDING | \
+- _TIF_NOTIFY_SIGNAL)
++ _TIF_NEED_RESCHED_LAZY | _TIF_NOTIFY_SIGNAL)
+ #define _TIF_PERSYSCALL_MASK (_TIF_RESTOREALL|_TIF_NOERROR)
++#define _TIF_NEED_RESCHED_MASK (_TIF_NEED_RESCHED | _TIF_NEED_RESCHED_LAZY)
+
+ /* Bits in local_flags */
+ /* Don't move TLF_NAPPING without adjusting the code in entry_32.S */
+diff --git a/arch/powerpc/kernel/asm-offsets.c b/arch/powerpc/kernel/asm-offsets.c
+index 5c125255571c..597379121407 100644
+--- a/arch/powerpc/kernel/asm-offsets.c
++++ b/arch/powerpc/kernel/asm-offsets.c
+@@ -189,6 +189,7 @@ int main(void)
+ OFFSET(TI_FLAGS, thread_info, flags);
+ OFFSET(TI_LOCAL_FLAGS, thread_info, local_flags);
+ OFFSET(TI_PREEMPT, thread_info, preempt_count);
++ OFFSET(TI_PREEMPT_LAZY, thread_info, preempt_lazy_count);
+
+ #ifdef CONFIG_PPC64
+ OFFSET(DCACHEL1BLOCKSIZE, ppc64_caches, l1d.block_size);
+diff --git a/arch/powerpc/kernel/entry_32.S b/arch/powerpc/kernel/entry_32.S
+index 459f5d00b990..fc9517a97640 100644
+--- a/arch/powerpc/kernel/entry_32.S
++++ b/arch/powerpc/kernel/entry_32.S
+@@ -414,7 +414,9 @@ ret_from_syscall:
+ mtmsr r10
+ lwz r9,TI_FLAGS(r2)
+ li r8,-MAX_ERRNO
+- andi. r0,r9,(_TIF_SYSCALL_DOTRACE|_TIF_SINGLESTEP|_TIF_USER_WORK_MASK|_TIF_PERSYSCALL_MASK)
++ lis r0,(_TIF_SYSCALL_DOTRACE|_TIF_SINGLESTEP|_TIF_USER_WORK_MASK|_TIF_PERSYSCALL_MASK)@h
++ ori r0,r0, (_TIF_SYSCALL_DOTRACE|_TIF_SINGLESTEP|_TIF_USER_WORK_MASK|_TIF_PERSYSCALL_MASK)@l
++ and. r0,r9,r0
+ bne- syscall_exit_work
+ cmplw 0,r3,r8
+ blt+ syscall_exit_cont
+@@ -530,13 +532,13 @@ syscall_dotrace:
+ b syscall_dotrace_cont
+
+ syscall_exit_work:
+- andi. r0,r9,_TIF_RESTOREALL
++ andis. r0,r9,_TIF_RESTOREALL@h
+ beq+ 0f
+ REST_NVGPRS(r1)
+ b 2f
+ 0: cmplw 0,r3,r8
+ blt+ 1f
+- andi. r0,r9,_TIF_NOERROR
++ andis. r0,r9,_TIF_NOERROR@h
+ bne- 1f
+ lwz r11,_CCR(r1) /* Load CR */
+ neg r3,r3
+@@ -545,12 +547,12 @@ syscall_exit_work:
+
+ 1: stw r6,RESULT(r1) /* Save result */
+ stw r3,GPR3(r1) /* Update return value */
+-2: andi. r0,r9,(_TIF_PERSYSCALL_MASK)
++2: andis. r0,r9,(_TIF_PERSYSCALL_MASK)@h
+ beq 4f
+
+ /* Clear per-syscall TIF flags if any are set. */
+
+- li r11,_TIF_PERSYSCALL_MASK
++ lis r11,(_TIF_PERSYSCALL_MASK)@h
+ addi r12,r2,TI_FLAGS
+ 3: lwarx r8,0,r12
+ andc r8,r8,r11
+@@ -927,7 +929,14 @@ resume_kernel:
+ cmpwi 0,r0,0 /* if non-zero, just restore regs and return */
+ bne restore_kuap
+ andi. r8,r8,_TIF_NEED_RESCHED
++ bne+ 1f
++ lwz r0,TI_PREEMPT_LAZY(r2)
++ cmpwi 0,r0,0 /* if non-zero, just restore regs and return */
++ bne restore_kuap
++ lwz r0,TI_FLAGS(r2)
++ andi. r0,r0,_TIF_NEED_RESCHED_LAZY
+ beq+ restore_kuap
++1:
+ lwz r3,_MSR(r1)
+ andi. r0,r3,MSR_EE /* interrupts off? */
+ beq restore_kuap /* don't schedule if so */
+@@ -1248,7 +1257,7 @@ global_dbcr0:
+ #endif /* !(CONFIG_4xx || CONFIG_BOOKE) */
+
+ do_work: /* r10 contains MSR_KERNEL here */
+- andi. r0,r9,_TIF_NEED_RESCHED
++ andi. r0,r9,_TIF_NEED_RESCHED_MASK
+ beq do_user_signal
+
+ do_resched: /* r10 contains MSR_KERNEL here */
+@@ -1267,7 +1276,7 @@ recheck:
+ LOAD_REG_IMMEDIATE(r10,MSR_KERNEL)
+ mtmsr r10 /* disable interrupts */
+ lwz r9,TI_FLAGS(r2)
+- andi. r0,r9,_TIF_NEED_RESCHED
++ andi. r0,r9,_TIF_NEED_RESCHED_MASK
+ bne- do_resched
+ andi. r0,r9,_TIF_USER_WORK_MASK
+ beq restore_user
+diff --git a/arch/powerpc/kernel/exceptions-64e.S b/arch/powerpc/kernel/exceptions-64e.S
+index f579ce46eef2..715ff292a8f8 100644
+--- a/arch/powerpc/kernel/exceptions-64e.S
++++ b/arch/powerpc/kernel/exceptions-64e.S
+@@ -1080,7 +1080,7 @@ _GLOBAL(ret_from_except_lite)
+ li r10, -1
+ mtspr SPRN_DBSR,r10
+ b restore
+-1: andi. r0,r4,_TIF_NEED_RESCHED
++1: andi. r0,r4,_TIF_NEED_RESCHED_MASK
+ beq 2f
+ bl restore_interrupts
+ SCHEDULE_USER
+@@ -1132,12 +1132,20 @@ resume_kernel:
+ bne- 0b
+ 1:
+
+-#ifdef CONFIG_PREEMPT
++#ifdef CONFIG_PREEMPTION
+ /* Check if we need to preempt */
++ lwz r8,TI_PREEMPT(r9)
++ cmpwi 0,r8,0 /* if non-zero, just restore regs and return */
++ bne restore
+ andi. r0,r4,_TIF_NEED_RESCHED
++ bne+ check_count
++
++ andi. r0,r4,_TIF_NEED_RESCHED_LAZY
+ beq+ restore
++ lwz r8,TI_PREEMPT_LAZY(r9)
++
+ /* Check that preempt_count() == 0 and interrupts are enabled */
+- lwz r8,TI_PREEMPT(r9)
++check_count:
+ cmpwi cr0,r8,0
+ bne restore
+ ld r0,SOFTE(r1)
+@@ -1158,7 +1166,7 @@ resume_kernel:
+ * interrupted after loading SRR0/1.
+ */
+ wrteei 0
+-#endif /* CONFIG_PREEMPT */
++#endif /* CONFIG_PREEMPTION */
+
+ restore:
+ /*
+diff --git a/arch/powerpc/kernel/syscall_64.c b/arch/powerpc/kernel/syscall_64.c
+index 310bcd768cd5..ae3212dcf562 100644
+--- a/arch/powerpc/kernel/syscall_64.c
++++ b/arch/powerpc/kernel/syscall_64.c
+@@ -193,7 +193,7 @@ notrace unsigned long syscall_exit_prepare(unsigned long r3,
+ ti_flags = READ_ONCE(*ti_flagsp);
+ while (unlikely(ti_flags & (_TIF_USER_WORK_MASK & ~_TIF_RESTORE_TM))) {
+ local_irq_enable();
+- if (ti_flags & _TIF_NEED_RESCHED) {
++ if (ti_flags & _TIF_NEED_RESCHED_MASK) {
+ schedule();
+ } else {
+ /*
+@@ -277,7 +277,7 @@ notrace unsigned long interrupt_exit_user_prepare(struct pt_regs *regs, unsigned
+ ti_flags = READ_ONCE(*ti_flagsp);
+ while (unlikely(ti_flags & (_TIF_USER_WORK_MASK & ~_TIF_RESTORE_TM))) {
+ local_irq_enable(); /* returning to user: may enable */
+- if (ti_flags & _TIF_NEED_RESCHED) {
++ if (ti_flags & _TIF_NEED_RESCHED_MASK) {
+ schedule();
+ } else {
+ if (ti_flags & _TIF_SIGPENDING)
+@@ -361,11 +361,15 @@ notrace unsigned long interrupt_exit_kernel_prepare(struct pt_regs *regs, unsign
+ /* Returning to a kernel context with local irqs enabled. */
+ WARN_ON_ONCE(!(regs->msr & MSR_EE));
+ again:
+- if (IS_ENABLED(CONFIG_PREEMPT)) {
++ if (IS_ENABLED(CONFIG_PREEMPTION)) {
+ /* Return to preemptible kernel context */
+ if (unlikely(*ti_flagsp & _TIF_NEED_RESCHED)) {
+ if (preempt_count() == 0)
+ preempt_schedule_irq();
++ } else if (unlikely(*ti_flagsp & _TIF_NEED_RESCHED_LAZY)) {
++ if ((preempt_count() == 0) &&
++ (current_thread_info()->preempt_lazy_count == 0))
++ preempt_schedule_irq();
+ }
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0263-arch-arm64-Add-lazy-preempt-support.patch b/debian/patches-rt/0263-arch-arm64-Add-lazy-preempt-support.patch
new file mode 100644
index 000000000..bf46cf898
--- /dev/null
+++ b/debian/patches-rt/0263-arch-arm64-Add-lazy-preempt-support.patch
@@ -0,0 +1,168 @@
+From 7499fc472caecd0270f69d5857ca8a53cc6dad83 Mon Sep 17 00:00:00 2001
+From: Anders Roxell <anders.roxell@linaro.org>
+Date: Thu, 14 May 2015 17:52:17 +0200
+Subject: [PATCH 263/323] arch/arm64: Add lazy preempt support
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+arm64 is missing support for PREEMPT_RT. The main feature which is
+lacking is support for lazy preemption. The arch-specific entry code,
+thread information structure definitions, and associated data tables
+have to be extended to provide this support. Then the Kconfig file has
+to be extended to indicate the support is available, and also to
+indicate that support for full RT preemption is now available.
+
+Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ arch/arm64/Kconfig | 1 +
+ arch/arm64/include/asm/preempt.h | 25 ++++++++++++++++++++++++-
+ arch/arm64/include/asm/thread_info.h | 6 +++++-
+ arch/arm64/kernel/asm-offsets.c | 1 +
+ arch/arm64/kernel/entry.S | 13 +++++++++++--
+ arch/arm64/kernel/signal.c | 2 +-
+ 6 files changed, 43 insertions(+), 5 deletions(-)
+
+diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
+index 13cf137da999..7681d7b65c7d 100644
+--- a/arch/arm64/Kconfig
++++ b/arch/arm64/Kconfig
+@@ -173,6 +173,7 @@ config ARM64
+ select HAVE_PERF_EVENTS
+ select HAVE_PERF_REGS
+ select HAVE_PERF_USER_STACK_DUMP
++ select HAVE_PREEMPT_LAZY
+ select HAVE_REGS_AND_STACK_ACCESS_API
+ select HAVE_FUNCTION_ARG_ACCESS_API
+ select HAVE_FUTEX_CMPXCHG if FUTEX
+diff --git a/arch/arm64/include/asm/preempt.h b/arch/arm64/include/asm/preempt.h
+index f1486b32502c..7a5770d825b9 100644
+--- a/arch/arm64/include/asm/preempt.h
++++ b/arch/arm64/include/asm/preempt.h
+@@ -70,13 +70,36 @@ static inline bool __preempt_count_dec_and_test(void)
+ * interrupt occurring between the non-atomic READ_ONCE/WRITE_ONCE
+ * pair.
+ */
+- return !pc || !READ_ONCE(ti->preempt_count);
++ if (!pc || !READ_ONCE(ti->preempt_count))
++ return true;
++#ifdef CONFIG_PREEMPT_LAZY
++ if ((pc & ~PREEMPT_NEED_RESCHED))
++ return false;
++ if (current_thread_info()->preempt_lazy_count)
++ return false;
++ return test_thread_flag(TIF_NEED_RESCHED_LAZY);
++#else
++ return false;
++#endif
+ }
+
+ static inline bool should_resched(int preempt_offset)
+ {
++#ifdef CONFIG_PREEMPT_LAZY
++ u64 pc = READ_ONCE(current_thread_info()->preempt_count);
++ if (pc == preempt_offset)
++ return true;
++
++ if ((pc & ~PREEMPT_NEED_RESCHED) != preempt_offset)
++ return false;
++
++ if (current_thread_info()->preempt_lazy_count)
++ return false;
++ return test_thread_flag(TIF_NEED_RESCHED_LAZY);
++#else
+ u64 pc = READ_ONCE(current_thread_info()->preempt_count);
+ return pc == preempt_offset;
++#endif
+ }
+
+ #ifdef CONFIG_PREEMPTION
+diff --git a/arch/arm64/include/asm/thread_info.h b/arch/arm64/include/asm/thread_info.h
+index cdcf307764aa..6eb36a2126e8 100644
+--- a/arch/arm64/include/asm/thread_info.h
++++ b/arch/arm64/include/asm/thread_info.h
+@@ -29,6 +29,7 @@ struct thread_info {
+ #ifdef CONFIG_ARM64_SW_TTBR0_PAN
+ u64 ttbr0; /* saved TTBR0_EL1 */
+ #endif
++ int preempt_lazy_count; /* 0 => preemptable, <0 => bug */
+ union {
+ u64 preempt_count; /* 0 => preemptible, <0 => bug */
+ struct {
+@@ -74,6 +75,7 @@ void arch_release_task_struct(struct task_struct *tsk);
+ #define TIF_SYSCALL_TRACEPOINT 10 /* syscall tracepoint for ftrace */
+ #define TIF_SECCOMP 11 /* syscall secure computing */
+ #define TIF_SYSCALL_EMU 12 /* syscall emulation active */
++#define TIF_NEED_RESCHED_LAZY 13
+ #define TIF_MEMDIE 18 /* is terminating due to OOM killer */
+ #define TIF_FREEZE 19
+ #define TIF_RESTORE_SIGMASK 20
+@@ -99,13 +101,15 @@ void arch_release_task_struct(struct task_struct *tsk);
+ #define _TIF_32BIT (1 << TIF_32BIT)
+ #define _TIF_SVE (1 << TIF_SVE)
+ #define _TIF_MTE_ASYNC_FAULT (1 << TIF_MTE_ASYNC_FAULT)
++#define _TIF_NEED_RESCHED_LAZY (1 << TIF_NEED_RESCHED_LAZY)
+ #define _TIF_NOTIFY_SIGNAL (1 << TIF_NOTIFY_SIGNAL)
+
+ #define _TIF_WORK_MASK (_TIF_NEED_RESCHED | _TIF_SIGPENDING | \
+ _TIF_NOTIFY_RESUME | _TIF_FOREIGN_FPSTATE | \
+ _TIF_UPROBE | _TIF_FSCHECK | _TIF_MTE_ASYNC_FAULT | \
+- _TIF_NOTIFY_SIGNAL)
++ _TIF_NEED_RESCHED_LAZY | _TIF_NOTIFY_SIGNAL)
+
++#define _TIF_NEED_RESCHED_MASK (_TIF_NEED_RESCHED | _TIF_NEED_RESCHED_LAZY)
+ #define _TIF_SYSCALL_WORK (_TIF_SYSCALL_TRACE | _TIF_SYSCALL_AUDIT | \
+ _TIF_SYSCALL_TRACEPOINT | _TIF_SECCOMP | \
+ _TIF_SYSCALL_EMU)
+diff --git a/arch/arm64/kernel/asm-offsets.c b/arch/arm64/kernel/asm-offsets.c
+index 7d32fc959b1a..b2f29bd2ae87 100644
+--- a/arch/arm64/kernel/asm-offsets.c
++++ b/arch/arm64/kernel/asm-offsets.c
+@@ -30,6 +30,7 @@ int main(void)
+ BLANK();
+ DEFINE(TSK_TI_FLAGS, offsetof(struct task_struct, thread_info.flags));
+ DEFINE(TSK_TI_PREEMPT, offsetof(struct task_struct, thread_info.preempt_count));
++ DEFINE(TSK_TI_PREEMPT_LAZY, offsetof(struct task_struct, thread_info.preempt_lazy_count));
+ DEFINE(TSK_TI_ADDR_LIMIT, offsetof(struct task_struct, thread_info.addr_limit));
+ #ifdef CONFIG_ARM64_SW_TTBR0_PAN
+ DEFINE(TSK_TI_TTBR0, offsetof(struct task_struct, thread_info.ttbr0));
+diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S
+index a94acea770c7..0bfa079043f8 100644
+--- a/arch/arm64/kernel/entry.S
++++ b/arch/arm64/kernel/entry.S
+@@ -523,9 +523,18 @@ alternative_if ARM64_HAS_IRQ_PRIO_MASKING
+ mrs x0, daif
+ orr x24, x24, x0
+ alternative_else_nop_endif
+- cbnz x24, 1f // preempt count != 0 || NMI return path
+- bl arm64_preempt_schedule_irq // irq en/disable is done inside
++
++ cbz x24, 1f // (need_resched + count) == 0
++ cbnz w24, 2f // count != 0
++
++ ldr w24, [tsk, #TSK_TI_PREEMPT_LAZY] // get preempt lazy count
++ cbnz w24, 2f // preempt lazy count != 0
++
++ ldr x0, [tsk, #TSK_TI_FLAGS] // get flags
++ tbz x0, #TIF_NEED_RESCHED_LAZY, 2f // needs rescheduling?
+ 1:
++ bl arm64_preempt_schedule_irq // irq en/disable is done inside
++2:
+ #endif
+
+ mov x0, sp
+diff --git a/arch/arm64/kernel/signal.c b/arch/arm64/kernel/signal.c
+index b6fbbd527dd7..94eed0dc3afc 100644
+--- a/arch/arm64/kernel/signal.c
++++ b/arch/arm64/kernel/signal.c
+@@ -921,7 +921,7 @@ asmlinkage void do_notify_resume(struct pt_regs *regs,
+ /* Check valid user FS if needed */
+ addr_limit_user_check();
+
+- if (thread_flags & _TIF_NEED_RESCHED) {
++ if (thread_flags & _TIF_NEED_RESCHED_MASK) {
+ /* Unmask Debug and SError for the next task */
+ local_daif_restore(DAIF_PROCCTX_NOIRQ);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0264-jump-label-disable-if-stop_machine-is-used.patch b/debian/patches-rt/0264-jump-label-disable-if-stop_machine-is-used.patch
new file mode 100644
index 000000000..168745160
--- /dev/null
+++ b/debian/patches-rt/0264-jump-label-disable-if-stop_machine-is-used.patch
@@ -0,0 +1,42 @@
+From 915e18f01ac0c97a6dc374b940a96a105bf57c62 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Wed, 8 Jul 2015 17:14:48 +0200
+Subject: [PATCH 264/323] jump-label: disable if stop_machine() is used
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Some architectures are using stop_machine() while switching the opcode which
+leads to latency spikes.
+The architectures which use stop_machine() atm:
+- ARM stop machine
+- s390 stop machine
+
+The architecures which use other sorcery:
+- MIPS
+- X86
+- powerpc
+- sparc
+- arm64
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+[bigeasy: only ARM for now]
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm/Kconfig | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
+index ee2cbe8ad502..73c55cb2f296 100644
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -67,7 +67,7 @@ config ARM
+ select HARDIRQS_SW_RESEND
+ select HAVE_ARCH_AUDITSYSCALL if AEABI && !OABI_COMPAT
+ select HAVE_ARCH_BITREVERSE if (CPU_32v7M || CPU_32v7) && !CPU_32v6
+- select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL && !CPU_ENDIAN_BE32 && MMU
++ select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL && !CPU_ENDIAN_BE32 && MMU && !PREEMPT_RT
+ select HAVE_ARCH_KGDB if !CPU_ENDIAN_BE32 && MMU
+ select HAVE_ARCH_MMAP_RND_BITS if MMU
+ select HAVE_ARCH_SECCOMP
+--
+2.43.0
+
diff --git a/debian/patches-rt/0265-leds-trigger-disable-CPU-trigger-on-RT.patch b/debian/patches-rt/0265-leds-trigger-disable-CPU-trigger-on-RT.patch
new file mode 100644
index 000000000..87bc1d736
--- /dev/null
+++ b/debian/patches-rt/0265-leds-trigger-disable-CPU-trigger-on-RT.patch
@@ -0,0 +1,40 @@
+From 524ea188033506aaa1b70534af78b30fe718ae98 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 23 Jan 2014 14:45:59 +0100
+Subject: [PATCH 265/323] leds: trigger: disable CPU trigger on -RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+as it triggers:
+|CPU: 0 PID: 0 Comm: swapper Not tainted 3.12.8-rt10 #141
+|[<c0014aa4>] (unwind_backtrace+0x0/0xf8) from [<c0012788>] (show_stack+0x1c/0x20)
+|[<c0012788>] (show_stack+0x1c/0x20) from [<c043c8dc>] (dump_stack+0x20/0x2c)
+|[<c043c8dc>] (dump_stack+0x20/0x2c) from [<c004c5e8>] (__might_sleep+0x13c/0x170)
+|[<c004c5e8>] (__might_sleep+0x13c/0x170) from [<c043f270>] (__rt_spin_lock+0x28/0x38)
+|[<c043f270>] (__rt_spin_lock+0x28/0x38) from [<c043fa00>] (rt_read_lock+0x68/0x7c)
+|[<c043fa00>] (rt_read_lock+0x68/0x7c) from [<c036cf74>] (led_trigger_event+0x2c/0x5c)
+|[<c036cf74>] (led_trigger_event+0x2c/0x5c) from [<c036e0bc>] (ledtrig_cpu+0x54/0x5c)
+|[<c036e0bc>] (ledtrig_cpu+0x54/0x5c) from [<c000ffd8>] (arch_cpu_idle_exit+0x18/0x1c)
+|[<c000ffd8>] (arch_cpu_idle_exit+0x18/0x1c) from [<c00590b8>] (cpu_startup_entry+0xa8/0x234)
+|[<c00590b8>] (cpu_startup_entry+0xa8/0x234) from [<c043b2cc>] (rest_init+0xb8/0xe0)
+|[<c043b2cc>] (rest_init+0xb8/0xe0) from [<c061ebe0>] (start_kernel+0x2c4/0x380)
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/leds/trigger/Kconfig | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/drivers/leds/trigger/Kconfig b/drivers/leds/trigger/Kconfig
+index ce9429ca6dde..29ccbd6acf43 100644
+--- a/drivers/leds/trigger/Kconfig
++++ b/drivers/leds/trigger/Kconfig
+@@ -64,6 +64,7 @@ config LEDS_TRIGGER_BACKLIGHT
+
+ config LEDS_TRIGGER_CPU
+ bool "LED CPU Trigger"
++ depends on !PREEMPT_RT
+ help
+ This allows LEDs to be controlled by active CPUs. This shows
+ the active CPUs across an array of LEDs so you can see which
+--
+2.43.0
+
diff --git a/debian/patches-rt/0266-tty-serial-omap-Make-the-locking-RT-aware.patch b/debian/patches-rt/0266-tty-serial-omap-Make-the-locking-RT-aware.patch
new file mode 100644
index 000000000..e926c5ed8
--- /dev/null
+++ b/debian/patches-rt/0266-tty-serial-omap-Make-the-locking-RT-aware.patch
@@ -0,0 +1,49 @@
+From c436953e83166f6588469c76032a7038a50cc585 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Thu, 28 Jul 2011 13:32:57 +0200
+Subject: [PATCH 266/323] tty/serial/omap: Make the locking RT aware
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The lock is a sleeping lock and local_irq_save() is not the
+optimsation we are looking for. Redo it to make it work on -RT and
+non-RT.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ drivers/tty/serial/omap-serial.c | 12 ++++--------
+ 1 file changed, 4 insertions(+), 8 deletions(-)
+
+diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c
+index 84e8158088cd..342005ed5ebf 100644
+--- a/drivers/tty/serial/omap-serial.c
++++ b/drivers/tty/serial/omap-serial.c
+@@ -1311,13 +1311,10 @@ serial_omap_console_write(struct console *co, const char *s,
+
+ pm_runtime_get_sync(up->dev);
+
+- local_irq_save(flags);
+- if (up->port.sysrq)
+- locked = 0;
+- else if (oops_in_progress)
+- locked = spin_trylock(&up->port.lock);
++ if (up->port.sysrq || oops_in_progress)
++ locked = spin_trylock_irqsave(&up->port.lock, flags);
+ else
+- spin_lock(&up->port.lock);
++ spin_lock_irqsave(&up->port.lock, flags);
+
+ /*
+ * First save the IER then disable the interrupts
+@@ -1346,8 +1343,7 @@ serial_omap_console_write(struct console *co, const char *s,
+ pm_runtime_mark_last_busy(up->dev);
+ pm_runtime_put_autosuspend(up->dev);
+ if (locked)
+- spin_unlock(&up->port.lock);
+- local_irq_restore(flags);
++ spin_unlock_irqrestore(&up->port.lock, flags);
+ }
+
+ static int __init
+--
+2.43.0
+
diff --git a/debian/patches-rt/0267-tty-serial-pl011-Make-the-locking-work-on-RT.patch b/debian/patches-rt/0267-tty-serial-pl011-Make-the-locking-work-on-RT.patch
new file mode 100644
index 000000000..73b68ab8d
--- /dev/null
+++ b/debian/patches-rt/0267-tty-serial-pl011-Make-the-locking-work-on-RT.patch
@@ -0,0 +1,60 @@
+From 822739997ff16caa50f619a00344655f21d65a4b Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Tue, 8 Jan 2013 21:36:51 +0100
+Subject: [PATCH 267/323] tty/serial/pl011: Make the locking work on RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The lock is a sleeping lock and local_irq_save() is not the optimsation
+we are looking for. Redo it to make it work on -RT and non-RT.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ drivers/tty/serial/amba-pl011.c | 17 +++++++++++------
+ 1 file changed, 11 insertions(+), 6 deletions(-)
+
+diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
+index d4a93a94b4ca..275c625e3eb9 100644
+--- a/drivers/tty/serial/amba-pl011.c
++++ b/drivers/tty/serial/amba-pl011.c
+@@ -2207,18 +2207,24 @@ pl011_console_write(struct console *co, const char *s, unsigned int count)
+ {
+ struct uart_amba_port *uap = amba_ports[co->index];
+ unsigned int old_cr = 0, new_cr;
+- unsigned long flags;
++ unsigned long flags = 0;
+ int locked = 1;
+
+ clk_enable(uap->clk);
+
+- local_irq_save(flags);
++ /*
++ * local_irq_save(flags);
++ *
++ * This local_irq_save() is nonsense. If we come in via sysrq
++ * handling then interrupts are already disabled. Aside of
++ * that the port.sysrq check is racy on SMP regardless.
++ */
+ if (uap->port.sysrq)
+ locked = 0;
+ else if (oops_in_progress)
+- locked = spin_trylock(&uap->port.lock);
++ locked = spin_trylock_irqsave(&uap->port.lock, flags);
+ else
+- spin_lock(&uap->port.lock);
++ spin_lock_irqsave(&uap->port.lock, flags);
+
+ /*
+ * First save the CR then disable the interrupts
+@@ -2244,8 +2250,7 @@ pl011_console_write(struct console *co, const char *s, unsigned int count)
+ pl011_write(old_cr, uap, REG_CR);
+
+ if (locked)
+- spin_unlock(&uap->port.lock);
+- local_irq_restore(flags);
++ spin_unlock_irqrestore(&uap->port.lock, flags);
+
+ clk_disable(uap->clk);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0268-ARM-enable-irq-in-translation-section-permission-fau.patch b/debian/patches-rt/0268-ARM-enable-irq-in-translation-section-permission-fau.patch
new file mode 100644
index 000000000..35e0764d9
--- /dev/null
+++ b/debian/patches-rt/0268-ARM-enable-irq-in-translation-section-permission-fau.patch
@@ -0,0 +1,95 @@
+From 0a5ad9dd4773a61fe0f0d6928ef603081390df21 Mon Sep 17 00:00:00 2001
+From: "Yadi.hu" <yadi.hu@windriver.com>
+Date: Wed, 10 Dec 2014 10:32:09 +0800
+Subject: [PATCH 268/323] ARM: enable irq in translation/section permission
+ fault handlers
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Probably happens on all ARM, with
+CONFIG_PREEMPT_RT
+CONFIG_DEBUG_ATOMIC_SLEEP
+
+This simple program....
+
+int main() {
+ *((char*)0xc0001000) = 0;
+};
+
+[ 512.742724] BUG: sleeping function called from invalid context at kernel/rtmutex.c:658
+[ 512.743000] in_atomic(): 0, irqs_disabled(): 128, pid: 994, name: a
+[ 512.743217] INFO: lockdep is turned off.
+[ 512.743360] irq event stamp: 0
+[ 512.743482] hardirqs last enabled at (0): [< (null)>] (null)
+[ 512.743714] hardirqs last disabled at (0): [<c0426370>] copy_process+0x3b0/0x11c0
+[ 512.744013] softirqs last enabled at (0): [<c0426370>] copy_process+0x3b0/0x11c0
+[ 512.744303] softirqs last disabled at (0): [< (null)>] (null)
+[ 512.744631] [<c041872c>] (unwind_backtrace+0x0/0x104)
+[ 512.745001] [<c09af0c4>] (dump_stack+0x20/0x24)
+[ 512.745355] [<c0462490>] (__might_sleep+0x1dc/0x1e0)
+[ 512.745717] [<c09b6770>] (rt_spin_lock+0x34/0x6c)
+[ 512.746073] [<c0441bf0>] (do_force_sig_info+0x34/0xf0)
+[ 512.746457] [<c0442668>] (force_sig_info+0x18/0x1c)
+[ 512.746829] [<c041d880>] (__do_user_fault+0x9c/0xd8)
+[ 512.747185] [<c041d938>] (do_bad_area+0x7c/0x94)
+[ 512.747536] [<c041d990>] (do_sect_fault+0x40/0x48)
+[ 512.747898] [<c040841c>] (do_DataAbort+0x40/0xa0)
+[ 512.748181] Exception stack(0xecaa1fb0 to 0xecaa1ff8)
+
+Oxc0000000 belongs to kernel address space, user task can not be
+allowed to access it. For above condition, correct result is that
+test case should receive a “segment fault” and exits but not stacks.
+
+the root cause is commit 02fe2845d6a8 ("avoid enabling interrupts in
+prefetch/data abort handlers"),it deletes irq enable block in Data
+abort assemble code and move them into page/breakpiont/alignment fault
+handlers instead. But author does not enable irq in translation/section
+permission fault handlers. ARM disables irq when it enters exception/
+interrupt mode, if kernel doesn't enable irq, it would be still disabled
+during translation/section permission fault.
+
+We see the above splat because do_force_sig_info is still called with
+IRQs off, and that code eventually does a:
+
+ spin_lock_irqsave(&t->sighand->siglock, flags);
+
+As this is architecture independent code, and we've not seen any other
+need for other arch to have the siglock converted to raw lock, we can
+conclude that we should enable irq for ARM translation/section
+permission exception.
+
+Signed-off-by: Yadi.hu <yadi.hu@windriver.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm/mm/fault.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/arch/arm/mm/fault.c b/arch/arm/mm/fault.c
+index af5177801fb1..1de016008e2e 100644
+--- a/arch/arm/mm/fault.c
++++ b/arch/arm/mm/fault.c
+@@ -400,6 +400,9 @@ do_translation_fault(unsigned long addr, unsigned int fsr,
+ if (addr < TASK_SIZE)
+ return do_page_fault(addr, fsr, regs);
+
++ if (interrupts_enabled(regs))
++ local_irq_enable();
++
+ if (user_mode(regs))
+ goto bad_area;
+
+@@ -470,6 +473,9 @@ do_translation_fault(unsigned long addr, unsigned int fsr,
+ static int
+ do_sect_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
+ {
++ if (interrupts_enabled(regs))
++ local_irq_enable();
++
+ do_bad_area(addr, fsr, regs);
+ return 0;
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0269-genirq-update-irq_set_irqchip_state-documentation.patch b/debian/patches-rt/0269-genirq-update-irq_set_irqchip_state-documentation.patch
new file mode 100644
index 000000000..aae472078
--- /dev/null
+++ b/debian/patches-rt/0269-genirq-update-irq_set_irqchip_state-documentation.patch
@@ -0,0 +1,32 @@
+From 0eeda295a1e21ff716f482a4115822e9789e305f Mon Sep 17 00:00:00 2001
+From: Josh Cartwright <joshc@ni.com>
+Date: Thu, 11 Feb 2016 11:54:00 -0600
+Subject: [PATCH 269/323] genirq: update irq_set_irqchip_state documentation
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+On -rt kernels, the use of migrate_disable()/migrate_enable() is
+sufficient to guarantee a task isn't moved to another CPU. Update the
+irq_set_irqchip_state() documentation to reflect this.
+
+Signed-off-by: Josh Cartwright <joshc@ni.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/irq/manage.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
+index 5ec167fb77b9..228699d9c85c 100644
+--- a/kernel/irq/manage.c
++++ b/kernel/irq/manage.c
+@@ -2756,7 +2756,7 @@ EXPORT_SYMBOL_GPL(irq_get_irqchip_state);
+ * This call sets the internal irqchip state of an interrupt,
+ * depending on the value of @which.
+ *
+- * This function should be called with preemption disabled if the
++ * This function should be called with migration disabled if the
+ * interrupt controller has per-cpu registers.
+ */
+ int irq_set_irqchip_state(unsigned int irq, enum irqchip_irq_state which,
+--
+2.43.0
+
diff --git a/debian/patches-rt/0270-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch b/debian/patches-rt/0270-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch
new file mode 100644
index 000000000..e9a9de0ad
--- /dev/null
+++ b/debian/patches-rt/0270-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch
@@ -0,0 +1,59 @@
+From bbb0b6e29c89355e0fb77bef3b06badef0ccc946 Mon Sep 17 00:00:00 2001
+From: Josh Cartwright <joshc@ni.com>
+Date: Thu, 11 Feb 2016 11:54:01 -0600
+Subject: [PATCH 270/323] KVM: arm/arm64: downgrade preempt_disable()d region
+ to migrate_disable()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+kvm_arch_vcpu_ioctl_run() disables the use of preemption when updating
+the vgic and timer states to prevent the calling task from migrating to
+another CPU. It does so to prevent the task from writing to the
+incorrect per-CPU GIC distributor registers.
+
+On -rt kernels, it's possible to maintain the same guarantee with the
+use of migrate_{disable,enable}(), with the added benefit that the
+migrate-disabled region is preemptible. Update
+kvm_arch_vcpu_ioctl_run() to do so.
+
+Cc: Christoffer Dall <christoffer.dall@linaro.org>
+Reported-by: Manish Jaggi <Manish.Jaggi@caviumnetworks.com>
+Signed-off-by: Josh Cartwright <joshc@ni.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm64/kvm/arm.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c
+index 4d63fcd7574b..06fced951e75 100644
+--- a/arch/arm64/kvm/arm.c
++++ b/arch/arm64/kvm/arm.c
+@@ -708,7 +708,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_vcpu *vcpu)
+ * involves poking the GIC, which must be done in a
+ * non-preemptible context.
+ */
+- preempt_disable();
++ migrate_disable();
+
+ kvm_pmu_flush_hwstate(vcpu);
+
+@@ -757,7 +757,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_vcpu *vcpu)
+ kvm_timer_sync_user(vcpu);
+ kvm_vgic_sync_hwstate(vcpu);
+ local_irq_enable();
+- preempt_enable();
++ migrate_enable();
+ continue;
+ }
+
+@@ -829,7 +829,7 @@ int kvm_arch_vcpu_ioctl_run(struct kvm_vcpu *vcpu)
+ /* Exit types that need handling before we can be preempted */
+ handle_exit_early(vcpu, ret);
+
+- preempt_enable();
++ migrate_enable();
+
+ /*
+ * The ARMv8 architecture doesn't give the hypervisor
+--
+2.43.0
+
diff --git a/debian/patches-rt/0271-arm64-fpsimd-Delay-freeing-memory-in-fpsimd_flush_th.patch b/debian/patches-rt/0271-arm64-fpsimd-Delay-freeing-memory-in-fpsimd_flush_th.patch
new file mode 100644
index 000000000..733617e78
--- /dev/null
+++ b/debian/patches-rt/0271-arm64-fpsimd-Delay-freeing-memory-in-fpsimd_flush_th.patch
@@ -0,0 +1,66 @@
+From d0fe894184b649a8d383fa8d2db7ae3233b04428 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 25 Jul 2018 14:02:38 +0200
+Subject: [PATCH 271/323] arm64: fpsimd: Delay freeing memory in
+ fpsimd_flush_thread()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+fpsimd_flush_thread() invokes kfree() via sve_free() within a preempt disabled
+section which is not working on -RT.
+
+Delay freeing of memory until preemption is enabled again.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm64/kernel/fpsimd.c | 14 +++++++++++++-
+ 1 file changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm64/kernel/fpsimd.c b/arch/arm64/kernel/fpsimd.c
+index a9bbfb800ec2..aa631771e0dc 100644
+--- a/arch/arm64/kernel/fpsimd.c
++++ b/arch/arm64/kernel/fpsimd.c
+@@ -226,6 +226,16 @@ static void sve_free(struct task_struct *task)
+ __sve_free(task);
+ }
+
++static void *sve_free_atomic(struct task_struct *task)
++{
++ void *sve_state = task->thread.sve_state;
++
++ WARN_ON(test_tsk_thread_flag(task, TIF_SVE));
++
++ task->thread.sve_state = NULL;
++ return sve_state;
++}
++
+ /*
+ * TIF_SVE controls whether a task can use SVE without trapping while
+ * in userspace, and also the way a task's FPSIMD/SVE state is stored
+@@ -1022,6 +1032,7 @@ void fpsimd_thread_switch(struct task_struct *next)
+ void fpsimd_flush_thread(void)
+ {
+ int vl, supported_vl;
++ void *mem = NULL;
+
+ if (!system_supports_fpsimd())
+ return;
+@@ -1034,7 +1045,7 @@ void fpsimd_flush_thread(void)
+
+ if (system_supports_sve()) {
+ clear_thread_flag(TIF_SVE);
+- sve_free(current);
++ mem = sve_free_atomic(current);
+
+ /*
+ * Reset the task vector length as required.
+@@ -1068,6 +1079,7 @@ void fpsimd_flush_thread(void)
+ }
+
+ put_cpu_fpsimd_context();
++ kfree(mem);
+ }
+
+ /*
+--
+2.43.0
+
diff --git a/debian/patches-rt/0272-x86-Enable-RT-also-on-32bit.patch b/debian/patches-rt/0272-x86-Enable-RT-also-on-32bit.patch
new file mode 100644
index 000000000..e7c39e069
--- /dev/null
+++ b/debian/patches-rt/0272-x86-Enable-RT-also-on-32bit.patch
@@ -0,0 +1,34 @@
+From b4def70f635385c0a02c2261e1915671363eeccd Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 7 Nov 2019 17:49:20 +0100
+Subject: [PATCH 272/323] x86: Enable RT also on 32bit
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/x86/Kconfig | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
+index b9f68b01a8c8..ca79a831f611 100644
+--- a/arch/x86/Kconfig
++++ b/arch/x86/Kconfig
+@@ -27,7 +27,6 @@ config X86_64
+ # Options that are inherently 64-bit kernel only:
+ select ARCH_HAS_GIGANTIC_PAGE
+ select ARCH_SUPPORTS_INT128 if CC_HAS_INT128
+- select ARCH_SUPPORTS_RT
+ select ARCH_USE_CMPXCHG_LOCKREF
+ select HAVE_ARCH_SOFT_DIRTY
+ select MODULES_USE_ELF_RELA
+@@ -96,6 +95,7 @@ config X86
+ select ARCH_SUPPORTS_ACPI
+ select ARCH_SUPPORTS_ATOMIC_RMW
+ select ARCH_SUPPORTS_NUMA_BALANCING if X86_64
++ select ARCH_SUPPORTS_RT
+ select ARCH_USE_BUILTIN_BSWAP
+ select ARCH_USE_QUEUED_RWLOCKS
+ select ARCH_USE_QUEUED_SPINLOCKS
+--
+2.43.0
+
diff --git a/debian/patches-rt/0273-ARM-Allow-to-enable-RT.patch b/debian/patches-rt/0273-ARM-Allow-to-enable-RT.patch
new file mode 100644
index 000000000..9392f0977
--- /dev/null
+++ b/debian/patches-rt/0273-ARM-Allow-to-enable-RT.patch
@@ -0,0 +1,36 @@
+From 98a5d5b92ddcd0df7aa708accc20a07b6008d86a Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 11 Oct 2019 13:14:29 +0200
+Subject: [PATCH 273/323] ARM: Allow to enable RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Allow to select RT.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm/Kconfig | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
+index 73c55cb2f296..adf9347724ed 100644
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -32,6 +32,7 @@ config ARM
+ select ARCH_OPTIONAL_KERNEL_RWX if ARCH_HAS_STRICT_KERNEL_RWX
+ select ARCH_OPTIONAL_KERNEL_RWX_DEFAULT if CPU_V7
+ select ARCH_SUPPORTS_ATOMIC_RMW
++ select ARCH_SUPPORTS_RT if HAVE_POSIX_CPU_TIMERS_TASK_WORK
+ select ARCH_USE_BUILTIN_BSWAP
+ select ARCH_USE_CMPXCHG_LOCKREF
+ select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT if MMU
+@@ -123,6 +124,7 @@ config ARM
+ select OLD_SIGSUSPEND3
+ select PCI_SYSCALL if PCI
+ select PERF_USE_VMALLOC
++ select HAVE_POSIX_CPU_TIMERS_TASK_WORK if !KVM
+ select RTC_LIB
+ select SET_FS
+ select SYS_SUPPORTS_APM_EMULATION
+--
+2.43.0
+
diff --git a/debian/patches-rt/0274-ARM64-Allow-to-enable-RT.patch b/debian/patches-rt/0274-ARM64-Allow-to-enable-RT.patch
new file mode 100644
index 000000000..5176f9521
--- /dev/null
+++ b/debian/patches-rt/0274-ARM64-Allow-to-enable-RT.patch
@@ -0,0 +1,36 @@
+From 27aef9eb166603124a97edf3a14035b406f36096 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 11 Oct 2019 13:14:35 +0200
+Subject: [PATCH 274/323] ARM64: Allow to enable RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Allow to select RT.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/arm64/Kconfig | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
+index 7681d7b65c7d..ab8b86b23190 100644
+--- a/arch/arm64/Kconfig
++++ b/arch/arm64/Kconfig
+@@ -76,6 +76,7 @@ config ARM64
+ select ARCH_SUPPORTS_ATOMIC_RMW
+ select ARCH_SUPPORTS_INT128 if CC_HAS_INT128 && (GCC_VERSION >= 50000 || CC_IS_CLANG)
+ select ARCH_SUPPORTS_NUMA_BALANCING
++ select ARCH_SUPPORTS_RT if HAVE_POSIX_CPU_TIMERS_TASK_WORK
+ select ARCH_WANT_COMPAT_IPC_PARSE_VERSION if COMPAT
+ select ARCH_WANT_DEFAULT_BPF_JIT
+ select ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT
+@@ -195,6 +196,7 @@ config ARM64
+ select PCI_DOMAINS_GENERIC if PCI
+ select PCI_ECAM if (ACPI && PCI)
+ select PCI_SYSCALL if PCI
++ select HAVE_POSIX_CPU_TIMERS_TASK_WORK if !KVM
+ select POWER_RESET
+ select POWER_SUPPLY
+ select SET_FS
+--
+2.43.0
+
diff --git a/debian/patches-rt/0275-powerpc-traps-Use-PREEMPT_RT.patch b/debian/patches-rt/0275-powerpc-traps-Use-PREEMPT_RT.patch
new file mode 100644
index 000000000..75ece9602
--- /dev/null
+++ b/debian/patches-rt/0275-powerpc-traps-Use-PREEMPT_RT.patch
@@ -0,0 +1,39 @@
+From 25b6e91e812b8fe81cda3732be60b3d8402fee43 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 26 Jul 2019 11:30:49 +0200
+Subject: [PATCH 275/323] powerpc: traps: Use PREEMPT_RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Add PREEMPT_RT to the backtrace if enabled.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/powerpc/kernel/traps.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c
+index d39a4a6b4ddf..75a6c83299ad 100644
+--- a/arch/powerpc/kernel/traps.c
++++ b/arch/powerpc/kernel/traps.c
+@@ -259,12 +259,17 @@ static char *get_mmu_str(void)
+
+ static int __die(const char *str, struct pt_regs *regs, long err)
+ {
++ const char *pr = "";
++
+ printk("Oops: %s, sig: %ld [#%d]\n", str, err, ++die_counter);
+
++ if (IS_ENABLED(CONFIG_PREEMPTION))
++ pr = IS_ENABLED(CONFIG_PREEMPT_RT) ? " PREEMPT_RT" : " PREEMPT";
++
+ printk("%s PAGE_SIZE=%luK%s%s%s%s%s%s %s\n",
+ IS_ENABLED(CONFIG_CPU_LITTLE_ENDIAN) ? "LE" : "BE",
+ PAGE_SIZE / 1024, get_mmu_str(),
+- IS_ENABLED(CONFIG_PREEMPT) ? " PREEMPT" : "",
++ pr,
+ IS_ENABLED(CONFIG_SMP) ? " SMP" : "",
+ IS_ENABLED(CONFIG_SMP) ? (" NR_CPUS=" __stringify(NR_CPUS)) : "",
+ debug_pagealloc_enabled() ? " DEBUG_PAGEALLOC" : "",
+--
+2.43.0
+
diff --git a/debian/patches-rt/0276-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch b/debian/patches-rt/0276-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch
new file mode 100644
index 000000000..fbd35f4c7
--- /dev/null
+++ b/debian/patches-rt/0276-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch
@@ -0,0 +1,117 @@
+From afebcd1022d509a6887f066b6601caf561ee1ee5 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 26 Mar 2019 18:31:54 +0100
+Subject: [PATCH 276/323] powerpc/pseries/iommu: Use a locallock instead
+ local_irq_save()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The locallock protects the per-CPU variable tce_page. The function
+attempts to allocate memory while tce_page is protected (by disabling
+interrupts).
+
+Use local_irq_save() instead of local_irq_disable().
+
+Cc: stable-rt@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/powerpc/platforms/pseries/iommu.c | 31 +++++++++++++++++---------
+ 1 file changed, 20 insertions(+), 11 deletions(-)
+
+diff --git a/arch/powerpc/platforms/pseries/iommu.c b/arch/powerpc/platforms/pseries/iommu.c
+index 245f1f8df656..f05555dde8e7 100644
+--- a/arch/powerpc/platforms/pseries/iommu.c
++++ b/arch/powerpc/platforms/pseries/iommu.c
+@@ -24,6 +24,7 @@
+ #include <linux/of.h>
+ #include <linux/iommu.h>
+ #include <linux/rculist.h>
++#include <linux/local_lock.h>
+ #include <asm/io.h>
+ #include <asm/prom.h>
+ #include <asm/rtas.h>
+@@ -190,7 +191,13 @@ static int tce_build_pSeriesLP(unsigned long liobn, long tcenum, long tceshift,
+ return ret;
+ }
+
+-static DEFINE_PER_CPU(__be64 *, tce_page);
++struct tce_page {
++ __be64 * page;
++ local_lock_t lock;
++};
++static DEFINE_PER_CPU(struct tce_page, tce_page) = {
++ .lock = INIT_LOCAL_LOCK(lock),
++};
+
+ static int tce_buildmulti_pSeriesLP(struct iommu_table *tbl, long tcenum,
+ long npages, unsigned long uaddr,
+@@ -212,9 +219,10 @@ static int tce_buildmulti_pSeriesLP(struct iommu_table *tbl, long tcenum,
+ direction, attrs);
+ }
+
+- local_irq_save(flags); /* to protect tcep and the page behind it */
++ /* to protect tcep and the page behind it */
++ local_lock_irqsave(&tce_page.lock, flags);
+
+- tcep = __this_cpu_read(tce_page);
++ tcep = __this_cpu_read(tce_page.page);
+
+ /* This is safe to do since interrupts are off when we're called
+ * from iommu_alloc{,_sg}()
+@@ -223,12 +231,12 @@ static int tce_buildmulti_pSeriesLP(struct iommu_table *tbl, long tcenum,
+ tcep = (__be64 *)__get_free_page(GFP_ATOMIC);
+ /* If allocation fails, fall back to the loop implementation */
+ if (!tcep) {
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&tce_page.lock, flags);
+ return tce_build_pSeriesLP(tbl->it_index, tcenum,
+ tbl->it_page_shift,
+ npages, uaddr, direction, attrs);
+ }
+- __this_cpu_write(tce_page, tcep);
++ __this_cpu_write(tce_page.page, tcep);
+ }
+
+ rpn = __pa(uaddr) >> TCE_SHIFT;
+@@ -258,7 +266,7 @@ static int tce_buildmulti_pSeriesLP(struct iommu_table *tbl, long tcenum,
+ tcenum += limit;
+ } while (npages > 0 && !rc);
+
+- local_irq_restore(flags);
++ local_unlock_irqrestore(&tce_page.lock, flags);
+
+ if (unlikely(rc == H_NOT_ENOUGH_RESOURCES)) {
+ ret = (int)rc;
+@@ -429,16 +437,17 @@ static int tce_setrange_multi_pSeriesLP(unsigned long start_pfn,
+ DMA_BIDIRECTIONAL, 0);
+ }
+
+- local_irq_disable(); /* to protect tcep and the page behind it */
+- tcep = __this_cpu_read(tce_page);
++ /* to protect tcep and the page behind it */
++ local_lock_irq(&tce_page.lock);
++ tcep = __this_cpu_read(tce_page.page);
+
+ if (!tcep) {
+ tcep = (__be64 *)__get_free_page(GFP_ATOMIC);
+ if (!tcep) {
+- local_irq_enable();
++ local_unlock_irq(&tce_page.lock);
+ return -ENOMEM;
+ }
+- __this_cpu_write(tce_page, tcep);
++ __this_cpu_write(tce_page.page, tcep);
+ }
+
+ proto_tce = TCE_PCI_READ | TCE_PCI_WRITE;
+@@ -481,7 +490,7 @@ static int tce_setrange_multi_pSeriesLP(unsigned long start_pfn,
+
+ /* error cleanup: caller will clear whole range */
+
+- local_irq_enable();
++ local_unlock_irq(&tce_page.lock);
+ return rc;
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0277-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch b/debian/patches-rt/0277-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch
new file mode 100644
index 000000000..1d465fba1
--- /dev/null
+++ b/debian/patches-rt/0277-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch
@@ -0,0 +1,45 @@
+From f6ff6354df6d4609ce786969f2fd16afeaf88fba Mon Sep 17 00:00:00 2001
+From: Bogdan Purcareata <bogdan.purcareata@freescale.com>
+Date: Fri, 24 Apr 2015 15:53:13 +0000
+Subject: [PATCH 277/323] powerpc/kvm: Disable in-kernel MPIC emulation for
+ PREEMPT_RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+While converting the openpic emulation code to use a raw_spinlock_t enables
+guests to run on RT, there's still a performance issue. For interrupts sent in
+directed delivery mode with a multiple CPU mask, the emulated openpic will loop
+through all of the VCPUs, and for each VCPUs, it call IRQ_check, which will loop
+through all the pending interrupts for that VCPU. This is done while holding the
+raw_lock, meaning that in all this time the interrupts and preemption are
+disabled on the host Linux. A malicious user app can max both these number and
+cause a DoS.
+
+This temporary fix is sent for two reasons. First is so that users who want to
+use the in-kernel MPIC emulation are aware of the potential latencies, thus
+making sure that the hardware MPIC and their usage scenario does not involve
+interrupts sent in directed delivery mode, and the number of possible pending
+interrupts is kept small. Secondly, this should incentivize the development of a
+proper openpic emulation that would be better suited for RT.
+
+Acked-by: Scott Wood <scottwood@freescale.com>
+Signed-off-by: Bogdan Purcareata <bogdan.purcareata@freescale.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/powerpc/kvm/Kconfig | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/arch/powerpc/kvm/Kconfig b/arch/powerpc/kvm/Kconfig
+index 549591d9aaa2..efb5bfe93f70 100644
+--- a/arch/powerpc/kvm/Kconfig
++++ b/arch/powerpc/kvm/Kconfig
+@@ -178,6 +178,7 @@ config KVM_E500MC
+ config KVM_MPIC
+ bool "KVM in-kernel MPIC emulation"
+ depends on KVM && E500
++ depends on !PREEMPT_RT
+ select HAVE_KVM_IRQCHIP
+ select HAVE_KVM_IRQFD
+ select HAVE_KVM_IRQ_ROUTING
+--
+2.43.0
+
diff --git a/debian/patches-rt/0278-powerpc-stackprotector-work-around-stack-guard-init-.patch b/debian/patches-rt/0278-powerpc-stackprotector-work-around-stack-guard-init-.patch
new file mode 100644
index 000000000..a46f2fadf
--- /dev/null
+++ b/debian/patches-rt/0278-powerpc-stackprotector-work-around-stack-guard-init-.patch
@@ -0,0 +1,36 @@
+From fdb2b0b4898a26e8910152ed1ab6fa6748d1b839 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 26 Mar 2019 18:31:29 +0100
+Subject: [PATCH 278/323] powerpc/stackprotector: work around stack-guard init
+ from atomic
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+This is invoked from the secondary CPU in atomic context. On x86 we use
+tsc instead. On Power we XOR it against mftb() so lets use stack address
+as the initial value.
+
+Cc: stable-rt@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/powerpc/include/asm/stackprotector.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/arch/powerpc/include/asm/stackprotector.h b/arch/powerpc/include/asm/stackprotector.h
+index 1c8460e23583..b1653c160bab 100644
+--- a/arch/powerpc/include/asm/stackprotector.h
++++ b/arch/powerpc/include/asm/stackprotector.h
+@@ -24,7 +24,11 @@ static __always_inline void boot_init_stack_canary(void)
+ unsigned long canary;
+
+ /* Try to get a semi random initial value. */
++#ifdef CONFIG_PREEMPT_RT
++ canary = (unsigned long)&canary;
++#else
+ canary = get_random_canary();
++#endif
+ canary ^= mftb();
+ canary ^= LINUX_VERSION_CODE;
+ canary &= CANARY_MASK;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0279-powerpc-Avoid-recursive-header-includes.patch b/debian/patches-rt/0279-powerpc-Avoid-recursive-header-includes.patch
new file mode 100644
index 000000000..64bf1e545
--- /dev/null
+++ b/debian/patches-rt/0279-powerpc-Avoid-recursive-header-includes.patch
@@ -0,0 +1,48 @@
+From 725e44480dc7376b55d990292c119883ddc51288 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 8 Jan 2021 19:48:21 +0100
+Subject: [PATCH 279/323] powerpc: Avoid recursive header includes
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+- The include of bug.h leads to an include of printk.h which gets back
+ to spinlock.h and complains then about missing xchg().
+ Remove bug.h and add bits.h which is needed for BITS_PER_BYTE.
+
+- Avoid the "please don't include this file directly" error from
+ rwlock-rt. Allow an include from/with rtmutex.h.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/powerpc/include/asm/cmpxchg.h | 2 +-
+ arch/powerpc/include/asm/simple_spinlock_types.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/arch/powerpc/include/asm/cmpxchg.h b/arch/powerpc/include/asm/cmpxchg.h
+index cf091c4c22e5..7371f7e23c35 100644
+--- a/arch/powerpc/include/asm/cmpxchg.h
++++ b/arch/powerpc/include/asm/cmpxchg.h
+@@ -5,7 +5,7 @@
+ #ifdef __KERNEL__
+ #include <linux/compiler.h>
+ #include <asm/synch.h>
+-#include <linux/bug.h>
++#include <linux/bits.h>
+
+ #ifdef __BIG_ENDIAN
+ #define BITOFF_CAL(size, off) ((sizeof(u32) - size - off) * BITS_PER_BYTE)
+diff --git a/arch/powerpc/include/asm/simple_spinlock_types.h b/arch/powerpc/include/asm/simple_spinlock_types.h
+index 0f3cdd8faa95..d45561e9e6ba 100644
+--- a/arch/powerpc/include/asm/simple_spinlock_types.h
++++ b/arch/powerpc/include/asm/simple_spinlock_types.h
+@@ -2,7 +2,7 @@
+ #ifndef _ASM_POWERPC_SIMPLE_SPINLOCK_TYPES_H
+ #define _ASM_POWERPC_SIMPLE_SPINLOCK_TYPES_H
+
+-#ifndef __LINUX_SPINLOCK_TYPES_H
++#if !defined(__LINUX_SPINLOCK_TYPES_H) && !defined(__LINUX_RT_MUTEX_H)
+ # error "please don't include this file directly"
+ #endif
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0280-POWERPC-Allow-to-enable-RT.patch b/debian/patches-rt/0280-POWERPC-Allow-to-enable-RT.patch
new file mode 100644
index 000000000..955781532
--- /dev/null
+++ b/debian/patches-rt/0280-POWERPC-Allow-to-enable-RT.patch
@@ -0,0 +1,36 @@
+From 934b061dd0089023163d44f7670bc3b0a4ebb7b1 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 11 Oct 2019 13:14:41 +0200
+Subject: [PATCH 280/323] POWERPC: Allow to enable RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Allow to select RT.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ arch/powerpc/Kconfig | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
+index 6d8ce54ad6dd..065ed526be1a 100644
+--- a/arch/powerpc/Kconfig
++++ b/arch/powerpc/Kconfig
+@@ -146,6 +146,7 @@ config PPC
+ select ARCH_MIGHT_HAVE_PC_SERIO
+ select ARCH_OPTIONAL_KERNEL_RWX if ARCH_HAS_STRICT_KERNEL_RWX
+ select ARCH_SUPPORTS_ATOMIC_RMW
++ select ARCH_SUPPORTS_RT if HAVE_POSIX_CPU_TIMERS_TASK_WORK
+ select ARCH_USE_BUILTIN_BSWAP
+ select ARCH_USE_CMPXCHG_LOCKREF if PPC64
+ select ARCH_USE_QUEUED_RWLOCKS if PPC_QUEUED_SPINLOCKS
+@@ -238,6 +239,7 @@ config PPC
+ select HAVE_SYSCALL_TRACEPOINTS
+ select HAVE_VIRT_CPU_ACCOUNTING
+ select HAVE_IRQ_TIME_ACCOUNTING
++ select HAVE_POSIX_CPU_TIMERS_TASK_WORK if !KVM
+ select HAVE_RSEQ
+ select IOMMU_HELPER if PPC64
+ select IRQ_DOMAIN
+--
+2.43.0
+
diff --git a/debian/patches-rt/0281-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch b/debian/patches-rt/0281-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch
new file mode 100644
index 000000000..4c370a764
--- /dev/null
+++ b/debian/patches-rt/0281-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch
@@ -0,0 +1,93 @@
+From b7d25d7dc9f6a1923426c6e235061e825434e4fd Mon Sep 17 00:00:00 2001
+From: Mike Galbraith <umgwanakikbuti@gmail.com>
+Date: Thu, 31 Mar 2016 04:08:28 +0200
+Subject: [PATCH 281/323] drivers/block/zram: Replace bit spinlocks with
+ rtmutex for -rt
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+They're nondeterministic, and lead to ___might_sleep() splats in -rt.
+OTOH, they're a lot less wasteful than an rtmutex per page.
+
+Signed-off-by: Mike Galbraith <umgwanakikbuti@gmail.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/block/zram/zram_drv.c | 36 +++++++++++++++++++++++++++++++++++
+ drivers/block/zram/zram_drv.h | 1 +
+ 2 files changed, 37 insertions(+)
+
+diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c
+index 0636df6b67db..1a7523cefbe9 100644
+--- a/drivers/block/zram/zram_drv.c
++++ b/drivers/block/zram/zram_drv.c
+@@ -59,6 +59,40 @@ static void zram_free_page(struct zram *zram, size_t index);
+ static int zram_bvec_read(struct zram *zram, struct bio_vec *bvec,
+ u32 index, int offset, struct bio *bio);
+
++#ifdef CONFIG_PREEMPT_RT
++static void zram_meta_init_table_locks(struct zram *zram, size_t num_pages)
++{
++ size_t index;
++
++ for (index = 0; index < num_pages; index++)
++ spin_lock_init(&zram->table[index].lock);
++}
++
++static int zram_slot_trylock(struct zram *zram, u32 index)
++{
++ int ret;
++
++ ret = spin_trylock(&zram->table[index].lock);
++ if (ret)
++ __set_bit(ZRAM_LOCK, &zram->table[index].flags);
++ return ret;
++}
++
++static void zram_slot_lock(struct zram *zram, u32 index)
++{
++ spin_lock(&zram->table[index].lock);
++ __set_bit(ZRAM_LOCK, &zram->table[index].flags);
++}
++
++static void zram_slot_unlock(struct zram *zram, u32 index)
++{
++ __clear_bit(ZRAM_LOCK, &zram->table[index].flags);
++ spin_unlock(&zram->table[index].lock);
++}
++
++#else
++
++static void zram_meta_init_table_locks(struct zram *zram, size_t num_pages) { }
+
+ static int zram_slot_trylock(struct zram *zram, u32 index)
+ {
+@@ -74,6 +108,7 @@ static void zram_slot_unlock(struct zram *zram, u32 index)
+ {
+ bit_spin_unlock(ZRAM_LOCK, &zram->table[index].flags);
+ }
++#endif
+
+ static inline bool init_done(struct zram *zram)
+ {
+@@ -1165,6 +1200,7 @@ static bool zram_meta_alloc(struct zram *zram, u64 disksize)
+
+ if (!huge_class_size)
+ huge_class_size = zs_huge_class_size(zram->mem_pool);
++ zram_meta_init_table_locks(zram, num_pages);
+ return true;
+ }
+
+diff --git a/drivers/block/zram/zram_drv.h b/drivers/block/zram/zram_drv.h
+index f2fd46daa760..7e4dd447e1dd 100644
+--- a/drivers/block/zram/zram_drv.h
++++ b/drivers/block/zram/zram_drv.h
+@@ -63,6 +63,7 @@ struct zram_table_entry {
+ unsigned long element;
+ };
+ unsigned long flags;
++ spinlock_t lock;
+ #ifdef CONFIG_ZRAM_MEMORY_TRACKING
+ ktime_t ac_time;
+ #endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0282-tpm_tis-fix-stall-after-iowrite-s.patch b/debian/patches-rt/0282-tpm_tis-fix-stall-after-iowrite-s.patch
new file mode 100644
index 000000000..8452ac49c
--- /dev/null
+++ b/debian/patches-rt/0282-tpm_tis-fix-stall-after-iowrite-s.patch
@@ -0,0 +1,84 @@
+From ae8783c450876b505b7c6066ccda3b68e8d08c58 Mon Sep 17 00:00:00 2001
+From: Haris Okanovic <haris.okanovic@ni.com>
+Date: Tue, 15 Aug 2017 15:13:08 -0500
+Subject: [PATCH 282/323] tpm_tis: fix stall after iowrite*()s
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+ioread8() operations to TPM MMIO addresses can stall the cpu when
+immediately following a sequence of iowrite*()'s to the same region.
+
+For example, cyclitest measures ~400us latency spikes when a non-RT
+usermode application communicates with an SPI-based TPM chip (Intel Atom
+E3940 system, PREEMPT_RT kernel). The spikes are caused by a
+stalling ioread8() operation following a sequence of 30+ iowrite8()s to
+the same address. I believe this happens because the write sequence is
+buffered (in cpu or somewhere along the bus), and gets flushed on the
+first LOAD instruction (ioread*()) that follows.
+
+The enclosed change appears to fix this issue: read the TPM chip's
+access register (status code) after every iowrite*() operation to
+amortize the cost of flushing data to chip across multiple instructions.
+
+Signed-off-by: Haris Okanovic <haris.okanovic@ni.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ drivers/char/tpm/tpm_tis.c | 29 +++++++++++++++++++++++++++--
+ 1 file changed, 27 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/char/tpm/tpm_tis.c b/drivers/char/tpm/tpm_tis.c
+index 3e1bb28b7efd..c26ed0ce6b34 100644
+--- a/drivers/char/tpm/tpm_tis.c
++++ b/drivers/char/tpm/tpm_tis.c
+@@ -50,6 +50,31 @@ static inline struct tpm_tis_tcg_phy *to_tpm_tis_tcg_phy(struct tpm_tis_data *da
+ return container_of(data, struct tpm_tis_tcg_phy, priv);
+ }
+
++#ifdef CONFIG_PREEMPT_RT
++/*
++ * Flushes previous write operations to chip so that a subsequent
++ * ioread*()s won't stall a cpu.
++ */
++static inline void tpm_tis_flush(void __iomem *iobase)
++{
++ ioread8(iobase + TPM_ACCESS(0));
++}
++#else
++#define tpm_tis_flush(iobase) do { } while (0)
++#endif
++
++static inline void tpm_tis_iowrite8(u8 b, void __iomem *iobase, u32 addr)
++{
++ iowrite8(b, iobase + addr);
++ tpm_tis_flush(iobase);
++}
++
++static inline void tpm_tis_iowrite32(u32 b, void __iomem *iobase, u32 addr)
++{
++ iowrite32(b, iobase + addr);
++ tpm_tis_flush(iobase);
++}
++
+ static int interrupts = -1;
+ module_param(interrupts, int, 0444);
+ MODULE_PARM_DESC(interrupts, "Enable interrupts");
+@@ -186,7 +211,7 @@ static int tpm_tcg_write_bytes(struct tpm_tis_data *data, u32 addr, u16 len,
+ struct tpm_tis_tcg_phy *phy = to_tpm_tis_tcg_phy(data);
+
+ while (len--)
+- iowrite8(*value++, phy->iobase + addr);
++ tpm_tis_iowrite8(*value++, phy->iobase, addr);
+
+ return 0;
+ }
+@@ -213,7 +238,7 @@ static int tpm_tcg_write32(struct tpm_tis_data *data, u32 addr, u32 value)
+ {
+ struct tpm_tis_tcg_phy *phy = to_tpm_tis_tcg_phy(data);
+
+- iowrite32(value, phy->iobase + addr);
++ tpm_tis_iowrite32(value, phy->iobase, addr);
+
+ return 0;
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0283-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch b/debian/patches-rt/0283-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch
new file mode 100644
index 000000000..a34a3538f
--- /dev/null
+++ b/debian/patches-rt/0283-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch
@@ -0,0 +1,212 @@
+From 1f9d07b4cf227f0cf0800f96c10f9ef143b5d663 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 3 Jul 2009 08:44:56 -0500
+Subject: [PATCH 283/323] signals: Allow rt tasks to cache one sigqueue struct
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+To avoid allocation allow rt tasks to cache one sigqueue struct in
+task struct.
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ include/linux/sched.h | 1 +
+ include/linux/signal.h | 1 +
+ kernel/exit.c | 2 +-
+ kernel/fork.c | 1 +
+ kernel/signal.c | 69 +++++++++++++++++++++++++++++++++++++++---
+ 5 files changed, 69 insertions(+), 5 deletions(-)
+
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index 665a17e4f69b..a73528e8235d 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -992,6 +992,7 @@ struct task_struct {
+ /* Signal handlers: */
+ struct signal_struct *signal;
+ struct sighand_struct __rcu *sighand;
++ struct sigqueue *sigqueue_cache;
+ sigset_t blocked;
+ sigset_t real_blocked;
+ /* Restored if set_restore_sigmask() was used: */
+diff --git a/include/linux/signal.h b/include/linux/signal.h
+index b256f9c65661..ebf6c515a7b2 100644
+--- a/include/linux/signal.h
++++ b/include/linux/signal.h
+@@ -265,6 +265,7 @@ static inline void init_sigpending(struct sigpending *sig)
+ }
+
+ extern void flush_sigqueue(struct sigpending *queue);
++extern void flush_task_sigqueue(struct task_struct *tsk);
+
+ /* Test if 'sig' is valid signal. Use this instead of testing _NSIG directly */
+ static inline int valid_signal(unsigned long sig)
+diff --git a/kernel/exit.c b/kernel/exit.c
+index bacdaf980933..b86f388d3e64 100644
+--- a/kernel/exit.c
++++ b/kernel/exit.c
+@@ -199,7 +199,7 @@ static void __exit_signal(struct task_struct *tsk)
+ * Do this under ->siglock, we can race with another thread
+ * doing sigqueue_free() if we have SIGQUEUE_PREALLOC signals.
+ */
+- flush_sigqueue(&tsk->pending);
++ flush_task_sigqueue(tsk);
+ tsk->sighand = NULL;
+ spin_unlock(&sighand->siglock);
+
+diff --git a/kernel/fork.c b/kernel/fork.c
+index 2a11bf5f9e30..dfefb6e7e082 100644
+--- a/kernel/fork.c
++++ b/kernel/fork.c
+@@ -2046,6 +2046,7 @@ static __latent_entropy struct task_struct *copy_process(
+ spin_lock_init(&p->alloc_lock);
+
+ init_sigpending(&p->pending);
++ p->sigqueue_cache = NULL;
+
+ p->utime = p->stime = p->gtime = 0;
+ #ifdef CONFIG_ARCH_HAS_SCALED_CPUTIME
+diff --git a/kernel/signal.c b/kernel/signal.c
+index e8819aabe3cd..e1f263cbcf09 100644
+--- a/kernel/signal.c
++++ b/kernel/signal.c
+@@ -20,6 +20,7 @@
+ #include <linux/sched/task.h>
+ #include <linux/sched/task_stack.h>
+ #include <linux/sched/cputime.h>
++#include <linux/sched/rt.h>
+ #include <linux/file.h>
+ #include <linux/fs.h>
+ #include <linux/proc_fs.h>
+@@ -404,13 +405,30 @@ void task_join_group_stop(struct task_struct *task)
+ task_set_jobctl_pending(task, mask | JOBCTL_STOP_PENDING);
+ }
+
++static inline struct sigqueue *get_task_cache(struct task_struct *t)
++{
++ struct sigqueue *q = t->sigqueue_cache;
++
++ if (cmpxchg(&t->sigqueue_cache, q, NULL) != q)
++ return NULL;
++ return q;
++}
++
++static inline int put_task_cache(struct task_struct *t, struct sigqueue *q)
++{
++ if (cmpxchg(&t->sigqueue_cache, NULL, q) == NULL)
++ return 0;
++ return 1;
++}
++
+ /*
+ * allocate a new signal queue record
+ * - this may be called without locks if and only if t == current, otherwise an
+ * appropriate lock must be held to stop the target task from exiting
+ */
+ static struct sigqueue *
+-__sigqueue_alloc(int sig, struct task_struct *t, gfp_t flags, int override_rlimit)
++__sigqueue_do_alloc(int sig, struct task_struct *t, gfp_t flags,
++ int override_rlimit, int fromslab)
+ {
+ struct sigqueue *q = NULL;
+ struct user_struct *user;
+@@ -432,7 +450,10 @@ __sigqueue_alloc(int sig, struct task_struct *t, gfp_t flags, int override_rlimi
+ rcu_read_unlock();
+
+ if (override_rlimit || likely(sigpending <= task_rlimit(t, RLIMIT_SIGPENDING))) {
+- q = kmem_cache_alloc(sigqueue_cachep, flags);
++ if (!fromslab)
++ q = get_task_cache(t);
++ if (!q)
++ q = kmem_cache_alloc(sigqueue_cachep, flags);
+ } else {
+ print_dropped_signal(sig);
+ }
+@@ -449,6 +470,13 @@ __sigqueue_alloc(int sig, struct task_struct *t, gfp_t flags, int override_rlimi
+ return q;
+ }
+
++static struct sigqueue *
++__sigqueue_alloc(int sig, struct task_struct *t, gfp_t flags,
++ int override_rlimit)
++{
++ return __sigqueue_do_alloc(sig, t, flags, override_rlimit, 0);
++}
++
+ static void __sigqueue_free(struct sigqueue *q)
+ {
+ if (q->flags & SIGQUEUE_PREALLOC)
+@@ -458,6 +486,21 @@ static void __sigqueue_free(struct sigqueue *q)
+ kmem_cache_free(sigqueue_cachep, q);
+ }
+
++static void sigqueue_free_current(struct sigqueue *q)
++{
++ struct user_struct *up;
++
++ if (q->flags & SIGQUEUE_PREALLOC)
++ return;
++
++ up = q->user;
++ if (rt_prio(current->normal_prio) && !put_task_cache(current, q)) {
++ atomic_dec(&up->sigpending);
++ free_uid(up);
++ } else
++ __sigqueue_free(q);
++}
++
+ void flush_sigqueue(struct sigpending *queue)
+ {
+ struct sigqueue *q;
+@@ -470,6 +513,21 @@ void flush_sigqueue(struct sigpending *queue)
+ }
+ }
+
++/*
++ * Called from __exit_signal. Flush tsk->pending and
++ * tsk->sigqueue_cache
++ */
++void flush_task_sigqueue(struct task_struct *tsk)
++{
++ struct sigqueue *q;
++
++ flush_sigqueue(&tsk->pending);
++
++ q = get_task_cache(tsk);
++ if (q)
++ kmem_cache_free(sigqueue_cachep, q);
++}
++
+ /*
+ * Flush all pending signals for this kthread.
+ */
+@@ -594,7 +652,7 @@ static void collect_signal(int sig, struct sigpending *list, kernel_siginfo_t *i
+ (info->si_code == SI_TIMER) &&
+ (info->si_sys_private);
+
+- __sigqueue_free(first);
++ sigqueue_free_current(first);
+ } else {
+ /*
+ * Ok, it wasn't in the queue. This must be
+@@ -631,6 +689,8 @@ int dequeue_signal(struct task_struct *tsk, sigset_t *mask, kernel_siginfo_t *in
+ bool resched_timer = false;
+ int signr;
+
++ WARN_ON_ONCE(tsk != current);
++
+ /* We only dequeue private signals from ourselves, we don't let
+ * signalfd steal them
+ */
+@@ -1835,7 +1895,8 @@ EXPORT_SYMBOL(kill_pid);
+ */
+ struct sigqueue *sigqueue_alloc(void)
+ {
+- struct sigqueue *q = __sigqueue_alloc(-1, current, GFP_KERNEL, 0);
++ /* Preallocated sigqueue objects always from the slabcache ! */
++ struct sigqueue *q = __sigqueue_do_alloc(-1, current, GFP_KERNEL, 0, 1);
+
+ if (q)
+ q->flags |= SIGQUEUE_PREALLOC;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0284-signal-Prevent-double-free-of-user-struct.patch b/debian/patches-rt/0284-signal-Prevent-double-free-of-user-struct.patch
new file mode 100644
index 000000000..8a50b4089
--- /dev/null
+++ b/debian/patches-rt/0284-signal-Prevent-double-free-of-user-struct.patch
@@ -0,0 +1,52 @@
+From 9a8853e64ab5f1c44db176464996da3ba86d2a8e Mon Sep 17 00:00:00 2001
+From: Matt Fleming <matt@codeblueprint.co.uk>
+Date: Tue, 7 Apr 2020 10:54:13 +0100
+Subject: [PATCH 284/323] signal: Prevent double-free of user struct
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The way user struct reference counting works changed significantly with,
+
+ fda31c50292a ("signal: avoid double atomic counter increments for user accounting")
+
+Now user structs are only freed once the last pending signal is
+dequeued. Make sigqueue_free_current() follow this new convention to
+avoid freeing the user struct multiple times and triggering this
+warning:
+
+ refcount_t: underflow; use-after-free.
+ WARNING: CPU: 0 PID: 6794 at lib/refcount.c:288 refcount_dec_not_one+0x45/0x50
+ Call Trace:
+ refcount_dec_and_lock_irqsave+0x16/0x60
+ free_uid+0x31/0xa0
+ __dequeue_signal+0x17c/0x190
+ dequeue_signal+0x5a/0x1b0
+ do_sigtimedwait+0x208/0x250
+ __x64_sys_rt_sigtimedwait+0x6f/0xd0
+ do_syscall_64+0x72/0x200
+ entry_SYSCALL_64_after_hwframe+0x49/0xbe
+
+Signed-off-by: Matt Fleming <matt@codeblueprint.co.uk>
+Reported-by: Daniel Wagner <wagi@monom.org>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/signal.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/signal.c b/kernel/signal.c
+index e1f263cbcf09..a1eeecb4922d 100644
+--- a/kernel/signal.c
++++ b/kernel/signal.c
+@@ -495,8 +495,8 @@ static void sigqueue_free_current(struct sigqueue *q)
+
+ up = q->user;
+ if (rt_prio(current->normal_prio) && !put_task_cache(current, q)) {
+- atomic_dec(&up->sigpending);
+- free_uid(up);
++ if (atomic_dec_and_test(&up->sigpending))
++ free_uid(up);
+ } else
+ __sigqueue_free(q);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0285-genirq-Disable-irqpoll-on-rt.patch b/debian/patches-rt/0285-genirq-Disable-irqpoll-on-rt.patch
new file mode 100644
index 000000000..8033dbbab
--- /dev/null
+++ b/debian/patches-rt/0285-genirq-Disable-irqpoll-on-rt.patch
@@ -0,0 +1,43 @@
+From 4795907a92ad1bf9383b0c748facb436cac71e36 Mon Sep 17 00:00:00 2001
+From: Ingo Molnar <mingo@elte.hu>
+Date: Fri, 3 Jul 2009 08:29:57 -0500
+Subject: [PATCH 285/323] genirq: Disable irqpoll on -rt
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Creates long latencies for no value
+
+Signed-off-by: Ingo Molnar <mingo@elte.hu>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ kernel/irq/spurious.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/kernel/irq/spurious.c b/kernel/irq/spurious.c
+index f865e5f4d382..dc7311dd74b1 100644
+--- a/kernel/irq/spurious.c
++++ b/kernel/irq/spurious.c
+@@ -443,6 +443,10 @@ MODULE_PARM_DESC(noirqdebug, "Disable irq lockup detection when true");
+
+ static int __init irqfixup_setup(char *str)
+ {
++#ifdef CONFIG_PREEMPT_RT
++ pr_warn("irqfixup boot option not supported w/ CONFIG_PREEMPT_RT\n");
++ return 1;
++#endif
+ irqfixup = 1;
+ printk(KERN_WARNING "Misrouted IRQ fixup support enabled.\n");
+ printk(KERN_WARNING "This may impact system performance.\n");
+@@ -455,6 +459,10 @@ module_param(irqfixup, int, 0644);
+
+ static int __init irqpoll_setup(char *str)
+ {
++#ifdef CONFIG_PREEMPT_RT
++ pr_warn("irqpoll boot option not supported w/ CONFIG_PREEMPT_RT\n");
++ return 1;
++#endif
+ irqfixup = 2;
+ printk(KERN_WARNING "Misrouted IRQ fixup and polling support "
+ "enabled\n");
+--
+2.43.0
+
diff --git a/debian/patches-rt/0286-sysfs-Add-sys-kernel-realtime-entry.patch b/debian/patches-rt/0286-sysfs-Add-sys-kernel-realtime-entry.patch
new file mode 100644
index 000000000..e28616641
--- /dev/null
+++ b/debian/patches-rt/0286-sysfs-Add-sys-kernel-realtime-entry.patch
@@ -0,0 +1,54 @@
+From e7909a8ac08579fb76c51cde86c1171c8d1c6c36 Mon Sep 17 00:00:00 2001
+From: Clark Williams <williams@redhat.com>
+Date: Sat, 30 Jul 2011 21:55:53 -0500
+Subject: [PATCH 286/323] sysfs: Add /sys/kernel/realtime entry
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Add a /sys/kernel entry to indicate that the kernel is a
+realtime kernel.
+
+Clark says that he needs this for udev rules, udev needs to evaluate
+if its a PREEMPT_RT kernel a few thousand times and parsing uname
+output is too slow or so.
+
+Are there better solutions? Should it exist and return 0 on !-rt?
+
+Signed-off-by: Clark Williams <williams@redhat.com>
+Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
+---
+ kernel/ksysfs.c | 12 ++++++++++++
+ 1 file changed, 12 insertions(+)
+
+diff --git a/kernel/ksysfs.c b/kernel/ksysfs.c
+index e20c19e3ba49..777168d58f02 100644
+--- a/kernel/ksysfs.c
++++ b/kernel/ksysfs.c
+@@ -143,6 +143,15 @@ KERNEL_ATTR_RO(vmcoreinfo);
+
+ #endif /* CONFIG_CRASH_CORE */
+
++#if defined(CONFIG_PREEMPT_RT)
++static ssize_t realtime_show(struct kobject *kobj,
++ struct kobj_attribute *attr, char *buf)
++{
++ return sprintf(buf, "%d\n", 1);
++}
++KERNEL_ATTR_RO(realtime);
++#endif
++
+ /* whether file capabilities are enabled */
+ static ssize_t fscaps_show(struct kobject *kobj,
+ struct kobj_attribute *attr, char *buf)
+@@ -233,6 +242,9 @@ static struct attribute * kernel_attrs[] = {
+ #ifndef CONFIG_TINY_RCU
+ &rcu_expedited_attr.attr,
+ &rcu_normal_attr.attr,
++#endif
++#ifdef CONFIG_PREEMPT_RT
++ &realtime_attr.attr,
+ #endif
+ NULL
+ };
+--
+2.43.0
+
diff --git a/debian/patches-rt/0287-Add-localversion-for-RT-release.patch b/debian/patches-rt/0287-Add-localversion-for-RT-release.patch
new file mode 100644
index 000000000..ee5bf247a
--- /dev/null
+++ b/debian/patches-rt/0287-Add-localversion-for-RT-release.patch
@@ -0,0 +1,22 @@
+From 180a0118d4485cb909de0be0f7ebb61adce763e1 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 8 Jul 2011 20:25:16 +0200
+Subject: [PATCH 287/323] Add localversion for -RT release
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+---
+ localversion-rt | 1 +
+ 1 file changed, 1 insertion(+)
+ create mode 100644 localversion-rt
+
+diff --git a/localversion-rt b/localversion-rt
+new file mode 100644
+index 000000000000..21988f9ad53f
+--- /dev/null
++++ b/localversion-rt
+@@ -0,0 +1 @@
++-rt34
+--
+2.43.0
+
diff --git a/debian/patches-rt/0288-net-xfrm-Use-sequence-counter-with-associated-spinlo.patch b/debian/patches-rt/0288-net-xfrm-Use-sequence-counter-with-associated-spinlo.patch
new file mode 100644
index 000000000..df8a062a3
--- /dev/null
+++ b/debian/patches-rt/0288-net-xfrm-Use-sequence-counter-with-associated-spinlo.patch
@@ -0,0 +1,43 @@
+From 97138dbb6886695284b96e3680f1533beae6e43a Mon Sep 17 00:00:00 2001
+From: "Ahmed S. Darwish" <a.darwish@linutronix.de>
+Date: Tue, 16 Mar 2021 11:56:30 +0100
+Subject: [PATCH 288/323] net: xfrm: Use sequence counter with associated
+ spinlock
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+A sequence counter write section must be serialized or its internal
+state can get corrupted. A plain seqcount_t does not contain the
+information of which lock must be held to guaranteee write side
+serialization.
+
+For xfrm_state_hash_generation, use seqcount_spinlock_t instead of plain
+seqcount_t. This allows to associate the spinlock used for write
+serialization with the sequence counter. It thus enables lockdep to
+verify that the write serialization lock is indeed held before entering
+the sequence counter write section.
+
+If lockdep is disabled, this lock association is compiled out and has
+neither storage size nor runtime overhead.
+
+Signed-off-by: Ahmed S. Darwish <a.darwish@linutronix.de>
+Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
+---
+ include/net/netns/xfrm.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/net/netns/xfrm.h b/include/net/netns/xfrm.h
+index 7b87da22b295..fef22e029c0d 100644
+--- a/include/net/netns/xfrm.h
++++ b/include/net/netns/xfrm.h
+@@ -77,7 +77,7 @@ struct netns_xfrm {
+ struct dst_ops xfrm6_dst_ops;
+ #endif
+ spinlock_t xfrm_state_lock;
+- seqcount_t xfrm_state_hash_generation;
++ seqcount_spinlock_t xfrm_state_hash_generation;
+ seqcount_spinlock_t xfrm_policy_hash_generation;
+
+ spinlock_t xfrm_policy_lock;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0289-sched-Fix-migration_cpu_stop-requeueing.patch b/debian/patches-rt/0289-sched-Fix-migration_cpu_stop-requeueing.patch
new file mode 100644
index 000000000..54a798b25
--- /dev/null
+++ b/debian/patches-rt/0289-sched-Fix-migration_cpu_stop-requeueing.patch
@@ -0,0 +1,147 @@
+From 013f5d7501b106952e04d54b0803c2d1ae9a4876 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Tue, 8 Jun 2021 00:37:30 -0400
+Subject: [PATCH 289/323] sched: Fix migration_cpu_stop() requeueing
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+commit 8a6edb5257e2a84720fe78cb179eca58ba76126f upstream.
+
+When affine_move_task(p) is called on a running task @p, which is not
+otherwise already changing affinity, we'll first set
+p->migration_pending and then do:
+
+ stop_one_cpu(cpu_of_rq(rq), migration_cpu_stop, &arg);
+
+This then gets us to migration_cpu_stop() running on the CPU that was
+previously running our victim task @p.
+
+If we find that our task is no longer on that runqueue (this can
+happen because of a concurrent migration due to load-balance etc.),
+then we'll end up at the:
+
+ } else if (dest_cpu < 1 || pending) {
+
+branch. Which we'll take because we set pending earlier. Here we first
+check if the task @p has already satisfied the affinity constraints,
+if so we bail early [A]. Otherwise we'll reissue migration_cpu_stop()
+onto the CPU that is now hosting our task @p:
+
+ stop_one_cpu_nowait(cpu_of(rq), migration_cpu_stop,
+ &pending->arg, &pending->stop_work);
+
+Except, we've never initialized pending->arg, which will be all 0s.
+
+This then results in running migration_cpu_stop() on the next CPU with
+arg->p == NULL, which gives the by now obvious result of fireworks.
+
+The cure is to change affine_move_task() to always use pending->arg,
+furthermore we can use the exact same pattern as the
+SCA_MIGRATE_ENABLE case, since we'll block on the pending->done
+completion anyway, no point in adding yet another completion in
+stop_one_cpu().
+
+This then gives a clear distinction between the two
+migration_cpu_stop() use cases:
+
+ - sched_exec() / migrate_task_to() : arg->pending == NULL
+ - affine_move_task() : arg->pending != NULL;
+
+And we can have it ignore p->migration_pending when !arg->pending. Any
+stop work from sched_exec() / migrate_task_to() is in addition to stop
+works from affine_move_task(), which will be sufficient to issue the
+completion.
+
+Fixes: 6d337eab041d ("sched: Fix migrate_disable() vs set_cpus_allowed_ptr()")
+Cc: stable@kernel.org
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Ingo Molnar <mingo@kernel.org>
+Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
+Link: https://lkml.kernel.org/r/20210224131355.357743989@infradead.org
+Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/sched/core.c | 39 ++++++++++++++++++++++++++++-----------
+ 1 file changed, 28 insertions(+), 11 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index c847d17e3b04..df9c4c3838c0 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1974,6 +1974,24 @@ static int migration_cpu_stop(void *data)
+ rq_lock(rq, &rf);
+
+ pending = p->migration_pending;
++ if (pending && !arg->pending) {
++ /*
++ * This happens from sched_exec() and migrate_task_to(),
++ * neither of them care about pending and just want a task to
++ * maybe move about.
++ *
++ * Even if there is a pending, we can ignore it, since
++ * affine_move_task() will have it's own stop_work's in flight
++ * which will manage the completion.
++ *
++ * Notably, pending doesn't need to match arg->pending. This can
++ * happen when tripple concurrent affine_move_task() first sets
++ * pending, then clears pending and eventually sets another
++ * pending.
++ */
++ pending = NULL;
++ }
++
+ /*
+ * If task_rq(p) != rq, it cannot be migrated here, because we're
+ * holding rq->lock, if p->on_rq == 0 it cannot get enqueued because
+@@ -2246,10 +2264,6 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ int dest_cpu, unsigned int flags)
+ {
+ struct set_affinity_pending my_pending = { }, *pending = NULL;
+- struct migration_arg arg = {
+- .task = p,
+- .dest_cpu = dest_cpu,
+- };
+ bool complete = false;
+
+ /* Can the task run on the task's current CPU? If so, we're done */
+@@ -2287,6 +2301,12 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ /* Install the request */
+ refcount_set(&my_pending.refs, 1);
+ init_completion(&my_pending.done);
++ my_pending.arg = (struct migration_arg) {
++ .task = p,
++ .dest_cpu = -1, /* any */
++ .pending = &my_pending,
++ };
++
+ p->migration_pending = &my_pending;
+ } else {
+ pending = p->migration_pending;
+@@ -2317,12 +2337,6 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ p->migration_flags &= ~MDF_PUSH;
+ task_rq_unlock(rq, p, rf);
+
+- pending->arg = (struct migration_arg) {
+- .task = p,
+- .dest_cpu = -1,
+- .pending = pending,
+- };
+-
+ stop_one_cpu_nowait(cpu_of(rq), migration_cpu_stop,
+ &pending->arg, &pending->stop_work);
+
+@@ -2335,8 +2349,11 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ * is_migration_disabled(p) checks to the stopper, which will
+ * run on the same CPU as said p.
+ */
++ refcount_inc(&pending->refs); /* pending->{arg,stop_work} */
+ task_rq_unlock(rq, p, rf);
+- stop_one_cpu(cpu_of(rq), migration_cpu_stop, &arg);
++
++ stop_one_cpu_nowait(cpu_of(rq), migration_cpu_stop,
++ &pending->arg, &pending->stop_work);
+
+ } else {
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0290-sched-Simplify-migration_cpu_stop.patch b/debian/patches-rt/0290-sched-Simplify-migration_cpu_stop.patch
new file mode 100644
index 000000000..4d0841707
--- /dev/null
+++ b/debian/patches-rt/0290-sched-Simplify-migration_cpu_stop.patch
@@ -0,0 +1,142 @@
+From 4f468832c2a5bb5c0bb23b453038ff4fed722061 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Tue, 8 Jun 2021 00:37:31 -0400
+Subject: [PATCH 290/323] sched: Simplify migration_cpu_stop()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+commit c20cf065d4a619d394d23290093b1002e27dff86 upstream.
+
+When affine_move_task() issues a migration_cpu_stop(), the purpose of
+that function is to complete that @pending, not any random other
+p->migration_pending that might have gotten installed since.
+
+This realization much simplifies migration_cpu_stop() and allows
+further necessary steps to fix all this as it provides the guarantee
+that @pending's stopper will complete @pending (and not some random
+other @pending).
+
+Fixes: 6d337eab041d ("sched: Fix migrate_disable() vs set_cpus_allowed_ptr()")
+Cc: stable@kernel.org
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Ingo Molnar <mingo@kernel.org>
+Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
+Link: https://lkml.kernel.org/r/20210224131355.430014682@infradead.org
+Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/sched/core.c | 56 +++++++--------------------------------------
+ 1 file changed, 8 insertions(+), 48 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index df9c4c3838c0..31fa925852e5 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1950,8 +1950,8 @@ static struct rq *__migrate_task(struct rq *rq, struct rq_flags *rf,
+ */
+ static int migration_cpu_stop(void *data)
+ {
+- struct set_affinity_pending *pending;
+ struct migration_arg *arg = data;
++ struct set_affinity_pending *pending = arg->pending;
+ struct task_struct *p = arg->task;
+ int dest_cpu = arg->dest_cpu;
+ struct rq *rq = this_rq();
+@@ -1973,25 +1973,6 @@ static int migration_cpu_stop(void *data)
+ raw_spin_lock(&p->pi_lock);
+ rq_lock(rq, &rf);
+
+- pending = p->migration_pending;
+- if (pending && !arg->pending) {
+- /*
+- * This happens from sched_exec() and migrate_task_to(),
+- * neither of them care about pending and just want a task to
+- * maybe move about.
+- *
+- * Even if there is a pending, we can ignore it, since
+- * affine_move_task() will have it's own stop_work's in flight
+- * which will manage the completion.
+- *
+- * Notably, pending doesn't need to match arg->pending. This can
+- * happen when tripple concurrent affine_move_task() first sets
+- * pending, then clears pending and eventually sets another
+- * pending.
+- */
+- pending = NULL;
+- }
+-
+ /*
+ * If task_rq(p) != rq, it cannot be migrated here, because we're
+ * holding rq->lock, if p->on_rq == 0 it cannot get enqueued because
+@@ -2002,31 +1983,20 @@ static int migration_cpu_stop(void *data)
+ goto out;
+
+ if (pending) {
+- p->migration_pending = NULL;
++ if (p->migration_pending == pending)
++ p->migration_pending = NULL;
+ complete = true;
+ }
+
+- /* migrate_enable() -- we must not race against SCA */
+- if (dest_cpu < 0) {
+- /*
+- * When this was migrate_enable() but we no longer
+- * have a @pending, a concurrent SCA 'fixed' things
+- * and we should be valid again. Nothing to do.
+- */
+- if (!pending) {
+- WARN_ON_ONCE(!cpumask_test_cpu(task_cpu(p), &p->cpus_mask));
+- goto out;
+- }
+-
++ if (dest_cpu < 0)
+ dest_cpu = cpumask_any_distribute(&p->cpus_mask);
+- }
+
+ if (task_on_rq_queued(p))
+ rq = __migrate_task(rq, &rf, p, dest_cpu);
+ else
+ p->wake_cpu = dest_cpu;
+
+- } else if (dest_cpu < 0 || pending) {
++ } else if (pending) {
+ /*
+ * This happens when we get migrated between migrate_enable()'s
+ * preempt_enable() and scheduling the stopper task. At that
+@@ -2041,22 +2011,13 @@ static int migration_cpu_stop(void *data)
+ * ->pi_lock, so the allowed mask is stable - if it got
+ * somewhere allowed, we're done.
+ */
+- if (pending && cpumask_test_cpu(task_cpu(p), p->cpus_ptr)) {
+- p->migration_pending = NULL;
++ if (cpumask_test_cpu(task_cpu(p), p->cpus_ptr)) {
++ if (p->migration_pending == pending)
++ p->migration_pending = NULL;
+ complete = true;
+ goto out;
+ }
+
+- /*
+- * When this was migrate_enable() but we no longer have an
+- * @pending, a concurrent SCA 'fixed' things and we should be
+- * valid again. Nothing to do.
+- */
+- if (!pending) {
+- WARN_ON_ONCE(!cpumask_test_cpu(task_cpu(p), &p->cpus_mask));
+- goto out;
+- }
+-
+ /*
+ * When migrate_enable() hits a rq mis-match we can't reliably
+ * determine is_migration_disabled() and so have to chase after
+@@ -2074,7 +2035,6 @@ static int migration_cpu_stop(void *data)
+ complete_all(&pending->done);
+
+ /* For pending->{arg,stop_work} */
+- pending = arg->pending;
+ if (pending && refcount_dec_and_test(&pending->refs))
+ wake_up_var(&pending->refs);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0291-sched-Collate-affine_move_task-stoppers.patch b/debian/patches-rt/0291-sched-Collate-affine_move_task-stoppers.patch
new file mode 100644
index 000000000..b73fb91be
--- /dev/null
+++ b/debian/patches-rt/0291-sched-Collate-affine_move_task-stoppers.patch
@@ -0,0 +1,69 @@
+From e62b758a0149648256ed0fa194d9e107e294d8aa Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Tue, 8 Jun 2021 00:37:32 -0400
+Subject: [PATCH 291/323] sched: Collate affine_move_task() stoppers
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+commit 58b1a45086b5f80f2b2842aa7ed0da51a64a302b upstream.
+
+The SCA_MIGRATE_ENABLE and task_running() cases are almost identical,
+collapse them to avoid further duplication.
+
+Fixes: 6d337eab041d ("sched: Fix migrate_disable() vs set_cpus_allowed_ptr()")
+Cc: stable@kernel.org
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Ingo Molnar <mingo@kernel.org>
+Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
+Link: https://lkml.kernel.org/r/20210224131355.500108964@infradead.org
+Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/sched/core.c | 23 ++++++++---------------
+ 1 file changed, 8 insertions(+), 15 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 31fa925852e5..3130289baf79 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -2291,30 +2291,23 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ return -EINVAL;
+ }
+
+- if (flags & SCA_MIGRATE_ENABLE) {
+-
+- refcount_inc(&pending->refs); /* pending->{arg,stop_work} */
+- p->migration_flags &= ~MDF_PUSH;
+- task_rq_unlock(rq, p, rf);
+-
+- stop_one_cpu_nowait(cpu_of(rq), migration_cpu_stop,
+- &pending->arg, &pending->stop_work);
+-
+- return 0;
+- }
+-
+ if (task_running(rq, p) || p->state == TASK_WAKING) {
+ /*
+- * Lessen races (and headaches) by delegating
+- * is_migration_disabled(p) checks to the stopper, which will
+- * run on the same CPU as said p.
++ * MIGRATE_ENABLE gets here because 'p == current', but for
++ * anything else we cannot do is_migration_disabled(), punt
++ * and have the stopper function handle it all race-free.
+ */
++
+ refcount_inc(&pending->refs); /* pending->{arg,stop_work} */
++ if (flags & SCA_MIGRATE_ENABLE)
++ p->migration_flags &= ~MDF_PUSH;
+ task_rq_unlock(rq, p, rf);
+
+ stop_one_cpu_nowait(cpu_of(rq), migration_cpu_stop,
+ &pending->arg, &pending->stop_work);
+
++ if (flags & SCA_MIGRATE_ENABLE)
++ return 0;
+ } else {
+
+ if (!is_migration_disabled(p)) {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0292-sched-Optimize-migration_cpu_stop.patch b/debian/patches-rt/0292-sched-Optimize-migration_cpu_stop.patch
new file mode 100644
index 000000000..87ca79ca8
--- /dev/null
+++ b/debian/patches-rt/0292-sched-Optimize-migration_cpu_stop.patch
@@ -0,0 +1,58 @@
+From b1353ab8df1e6dd3bf9afaef3096749db2a193f1 Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Tue, 8 Jun 2021 00:37:33 -0400
+Subject: [PATCH 292/323] sched: Optimize migration_cpu_stop()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+commit 3f1bc119cd7fc987c8ed25ffb717f99403bb308c upstream.
+
+When the purpose of migration_cpu_stop() is to migrate the task to
+'any' valid CPU, don't migrate the task when it's already running on a
+valid CPU.
+
+Fixes: 6d337eab041d ("sched: Fix migrate_disable() vs set_cpus_allowed_ptr()")
+Cc: stable@kernel.org
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Ingo Molnar <mingo@kernel.org>
+Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
+Link: https://lkml.kernel.org/r/20210224131355.569238629@infradead.org
+Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/sched/core.c | 13 ++++++++++++-
+ 1 file changed, 12 insertions(+), 1 deletion(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 3130289baf79..e28fb33afa95 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1988,14 +1988,25 @@ static int migration_cpu_stop(void *data)
+ complete = true;
+ }
+
+- if (dest_cpu < 0)
++ if (dest_cpu < 0) {
++ if (cpumask_test_cpu(task_cpu(p), &p->cpus_mask))
++ goto out;
++
+ dest_cpu = cpumask_any_distribute(&p->cpus_mask);
++ }
+
+ if (task_on_rq_queued(p))
+ rq = __migrate_task(rq, &rf, p, dest_cpu);
+ else
+ p->wake_cpu = dest_cpu;
+
++ /*
++ * XXX __migrate_task() can fail, at which point we might end
++ * up running on a dodgy CPU, AFAICT this can only happen
++ * during CPU hotplug, at which point we'll get pushed out
++ * anyway, so it's probably not a big deal.
++ */
++
+ } else if (pending) {
+ /*
+ * This happens when we get migrated between migrate_enable()'s
+--
+2.43.0
+
diff --git a/debian/patches-rt/0293-sched-Fix-affine_move_task-self-concurrency.patch b/debian/patches-rt/0293-sched-Fix-affine_move_task-self-concurrency.patch
new file mode 100644
index 000000000..4a906f7cb
--- /dev/null
+++ b/debian/patches-rt/0293-sched-Fix-affine_move_task-self-concurrency.patch
@@ -0,0 +1,96 @@
+From e9faaf024fdd553b55aaed31855385da7e9d505a Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Tue, 8 Jun 2021 00:37:34 -0400
+Subject: [PATCH 293/323] sched: Fix affine_move_task() self-concurrency
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+commit 9e81889c7648d48dd5fe13f41cbc99f3c362484a upstream.
+
+Consider:
+
+ sched_setaffinity(p, X); sched_setaffinity(p, Y);
+
+Then the first will install p->migration_pending = &my_pending; and
+issue stop_one_cpu_nowait(pending); and the second one will read
+p->migration_pending and _also_ issue: stop_one_cpu_nowait(pending),
+the _SAME_ @pending.
+
+This causes stopper list corruption.
+
+Add set_affinity_pending::stop_pending, to indicate if a stopper is in
+progress.
+
+Fixes: 6d337eab041d ("sched: Fix migrate_disable() vs set_cpus_allowed_ptr()")
+Cc: stable@kernel.org
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Ingo Molnar <mingo@kernel.org>
+Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
+Link: https://lkml.kernel.org/r/20210224131355.649146419@infradead.org
+Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/sched/core.c | 15 ++++++++++++---
+ 1 file changed, 12 insertions(+), 3 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index e28fb33afa95..76fa3daf1f60 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1916,6 +1916,7 @@ struct migration_arg {
+
+ struct set_affinity_pending {
+ refcount_t refs;
++ unsigned int stop_pending;
+ struct completion done;
+ struct cpu_stop_work stop_work;
+ struct migration_arg arg;
+@@ -2034,12 +2035,15 @@ static int migration_cpu_stop(void *data)
+ * determine is_migration_disabled() and so have to chase after
+ * it.
+ */
++ WARN_ON_ONCE(!pending->stop_pending);
+ task_rq_unlock(rq, p, &rf);
+ stop_one_cpu_nowait(task_cpu(p), migration_cpu_stop,
+ &pending->arg, &pending->stop_work);
+ return 0;
+ }
+ out:
++ if (pending)
++ pending->stop_pending = false;
+ task_rq_unlock(rq, p, &rf);
+
+ if (complete)
+@@ -2235,7 +2239,7 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ int dest_cpu, unsigned int flags)
+ {
+ struct set_affinity_pending my_pending = { }, *pending = NULL;
+- bool complete = false;
++ bool stop_pending, complete = false;
+
+ /* Can the task run on the task's current CPU? If so, we're done */
+ if (cpumask_test_cpu(task_cpu(p), &p->cpus_mask)) {
+@@ -2308,14 +2312,19 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ * anything else we cannot do is_migration_disabled(), punt
+ * and have the stopper function handle it all race-free.
+ */
++ stop_pending = pending->stop_pending;
++ if (!stop_pending)
++ pending->stop_pending = true;
+
+ refcount_inc(&pending->refs); /* pending->{arg,stop_work} */
+ if (flags & SCA_MIGRATE_ENABLE)
+ p->migration_flags &= ~MDF_PUSH;
+ task_rq_unlock(rq, p, rf);
+
+- stop_one_cpu_nowait(cpu_of(rq), migration_cpu_stop,
+- &pending->arg, &pending->stop_work);
++ if (!stop_pending) {
++ stop_one_cpu_nowait(cpu_of(rq), migration_cpu_stop,
++ &pending->arg, &pending->stop_work);
++ }
+
+ if (flags & SCA_MIGRATE_ENABLE)
+ return 0;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0294-sched-Simplify-set_affinity_pending-refcounts.patch b/debian/patches-rt/0294-sched-Simplify-set_affinity_pending-refcounts.patch
new file mode 100644
index 000000000..1230259b8
--- /dev/null
+++ b/debian/patches-rt/0294-sched-Simplify-set_affinity_pending-refcounts.patch
@@ -0,0 +1,129 @@
+From 6681b566fe9ffe9365121a790537ada2e4ef97ba Mon Sep 17 00:00:00 2001
+From: Peter Zijlstra <peterz@infradead.org>
+Date: Tue, 8 Jun 2021 00:37:35 -0400
+Subject: [PATCH 294/323] sched: Simplify set_affinity_pending refcounts
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+commit 50caf9c14b1498c90cf808dbba2ca29bd32ccba4 upstream.
+
+Now that we have set_affinity_pending::stop_pending to indicate if a
+stopper is in progress, and we have the guarantee that if that stopper
+exists, it will (eventually) complete our @pending we can simplify the
+refcount scheme by no longer counting the stopper thread.
+
+Fixes: 6d337eab041d ("sched: Fix migrate_disable() vs set_cpus_allowed_ptr()")
+Cc: stable@kernel.org
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Signed-off-by: Ingo Molnar <mingo@kernel.org>
+Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
+Link: https://lkml.kernel.org/r/20210224131355.724130207@infradead.org
+Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/sched/core.c | 32 ++++++++++++++++++++------------
+ 1 file changed, 20 insertions(+), 12 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 76fa3daf1f60..d3b9d69171a2 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1914,6 +1914,10 @@ struct migration_arg {
+ struct set_affinity_pending *pending;
+ };
+
++/*
++ * @refs: number of wait_for_completion()
++ * @stop_pending: is @stop_work in use
++ */
+ struct set_affinity_pending {
+ refcount_t refs;
+ unsigned int stop_pending;
+@@ -2049,10 +2053,6 @@ static int migration_cpu_stop(void *data)
+ if (complete)
+ complete_all(&pending->done);
+
+- /* For pending->{arg,stop_work} */
+- if (pending && refcount_dec_and_test(&pending->refs))
+- wake_up_var(&pending->refs);
+-
+ return 0;
+ }
+
+@@ -2251,12 +2251,16 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ push_task = get_task_struct(p);
+ }
+
++ /*
++ * If there are pending waiters, but no pending stop_work,
++ * then complete now.
++ */
+ pending = p->migration_pending;
+- if (pending) {
+- refcount_inc(&pending->refs);
++ if (pending && !pending->stop_pending) {
+ p->migration_pending = NULL;
+ complete = true;
+ }
++
+ task_rq_unlock(rq, p, rf);
+
+ if (push_task) {
+@@ -2265,7 +2269,7 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ }
+
+ if (complete)
+- goto do_complete;
++ complete_all(&pending->done);
+
+ return 0;
+ }
+@@ -2316,9 +2320,9 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ if (!stop_pending)
+ pending->stop_pending = true;
+
+- refcount_inc(&pending->refs); /* pending->{arg,stop_work} */
+ if (flags & SCA_MIGRATE_ENABLE)
+ p->migration_flags &= ~MDF_PUSH;
++
+ task_rq_unlock(rq, p, rf);
+
+ if (!stop_pending) {
+@@ -2334,12 +2338,13 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ if (task_on_rq_queued(p))
+ rq = move_queued_task(rq, rf, p, dest_cpu);
+
+- p->migration_pending = NULL;
+- complete = true;
++ if (!pending->stop_pending) {
++ p->migration_pending = NULL;
++ complete = true;
++ }
+ }
+ task_rq_unlock(rq, p, rf);
+
+-do_complete:
+ if (complete)
+ complete_all(&pending->done);
+ }
+@@ -2347,7 +2352,7 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ wait_for_completion(&pending->done);
+
+ if (refcount_dec_and_test(&pending->refs))
+- wake_up_var(&pending->refs);
++ wake_up_var(&pending->refs); /* No UaF, just an address */
+
+ /*
+ * Block the original owner of &pending until all subsequent callers
+@@ -2355,6 +2360,9 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ */
+ wait_var_event(&my_pending.refs, !refcount_read(&my_pending.refs));
+
++ /* ARGH */
++ WARN_ON_ONCE(my_pending.stop_pending);
++
+ return 0;
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0295-sched-Don-t-defer-CPU-pick-to-migration_cpu_stop.patch b/debian/patches-rt/0295-sched-Don-t-defer-CPU-pick-to-migration_cpu_stop.patch
new file mode 100644
index 000000000..e05440c01
--- /dev/null
+++ b/debian/patches-rt/0295-sched-Don-t-defer-CPU-pick-to-migration_cpu_stop.patch
@@ -0,0 +1,100 @@
+From b625852d41e17fb13b4caf7192734866534d9799 Mon Sep 17 00:00:00 2001
+From: Valentin Schneider <valentin.schneider@arm.com>
+Date: Tue, 8 Jun 2021 00:37:36 -0400
+Subject: [PATCH 295/323] sched: Don't defer CPU pick to migration_cpu_stop()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+commit 475ea6c60279e9f2ddf7e4cf2648cd8ae0608361 upstream.
+
+Will reported that the 'XXX __migrate_task() can fail' in migration_cpu_stop()
+can happen, and it *is* sort of a big deal. Looking at it some more, one
+will note there is a glaring hole in the deferred CPU selection:
+
+ (w/ CONFIG_CPUSET=n, so that the affinity mask passed via taskset doesn't
+ get AND'd with cpu_online_mask)
+
+ $ taskset -pc 0-2 $PID
+ # offline CPUs 3-4
+ $ taskset -pc 3-5 $PID
+ `\
+ $PID may stay on 0-2 due to the cpumask_any_distribute() picking an
+ offline CPU and __migrate_task() refusing to do anything due to
+ cpu_is_allowed().
+
+set_cpus_allowed_ptr() goes to some length to pick a dest_cpu that matches
+the right constraints vs affinity and the online/active state of the
+CPUs. Reuse that instead of discarding it in the affine_move_task() case.
+
+Fixes: 6d337eab041d ("sched: Fix migrate_disable() vs set_cpus_allowed_ptr()")
+Reported-by: Will Deacon <will@kernel.org>
+Signed-off-by: Valentin Schneider <valentin.schneider@arm.com>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Link: https://lkml.kernel.org/r/20210526205751.842360-2-valentin.schneider@arm.com
+Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/sched/core.c | 20 ++++++++++++--------
+ 1 file changed, 12 insertions(+), 8 deletions(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index d3b9d69171a2..81b342d6629b 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -1958,7 +1958,6 @@ static int migration_cpu_stop(void *data)
+ struct migration_arg *arg = data;
+ struct set_affinity_pending *pending = arg->pending;
+ struct task_struct *p = arg->task;
+- int dest_cpu = arg->dest_cpu;
+ struct rq *rq = this_rq();
+ bool complete = false;
+ struct rq_flags rf;
+@@ -1991,19 +1990,15 @@ static int migration_cpu_stop(void *data)
+ if (p->migration_pending == pending)
+ p->migration_pending = NULL;
+ complete = true;
+- }
+
+- if (dest_cpu < 0) {
+ if (cpumask_test_cpu(task_cpu(p), &p->cpus_mask))
+ goto out;
+-
+- dest_cpu = cpumask_any_distribute(&p->cpus_mask);
+ }
+
+ if (task_on_rq_queued(p))
+- rq = __migrate_task(rq, &rf, p, dest_cpu);
++ rq = __migrate_task(rq, &rf, p, arg->dest_cpu);
+ else
+- p->wake_cpu = dest_cpu;
++ p->wake_cpu = arg->dest_cpu;
+
+ /*
+ * XXX __migrate_task() can fail, at which point we might end
+@@ -2282,7 +2277,7 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ init_completion(&my_pending.done);
+ my_pending.arg = (struct migration_arg) {
+ .task = p,
+- .dest_cpu = -1, /* any */
++ .dest_cpu = dest_cpu,
+ .pending = &my_pending,
+ };
+
+@@ -2290,6 +2285,15 @@ static int affine_move_task(struct rq *rq, struct task_struct *p, struct rq_flag
+ } else {
+ pending = p->migration_pending;
+ refcount_inc(&pending->refs);
++ /*
++ * Affinity has changed, but we've already installed a
++ * pending. migration_cpu_stop() *must* see this, else
++ * we risk a completion of the pending despite having a
++ * task on a disallowed CPU.
++ *
++ * Serialized by p->pi_lock, so this is safe.
++ */
++ pending->arg.dest_cpu = dest_cpu;
+ }
+ }
+ pending = p->migration_pending;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0296-printk-Enhance-the-condition-check-of-msleep-in-pr_f.patch b/debian/patches-rt/0296-printk-Enhance-the-condition-check-of-msleep-in-pr_f.patch
new file mode 100644
index 000000000..72589519a
--- /dev/null
+++ b/debian/patches-rt/0296-printk-Enhance-the-condition-check-of-msleep-in-pr_f.patch
@@ -0,0 +1,48 @@
+From 6e1b154dfc59c96068eafef9fafbda28b723d3e6 Mon Sep 17 00:00:00 2001
+From: Chao Qin <chao.qin@intel.com>
+Date: Mon, 19 Jul 2021 10:26:50 +0800
+Subject: [PATCH 296/323] printk: Enhance the condition check of msleep in
+ pr_flush()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+[ Upstream commit 83e9288d9c4295d1195e9d780fcbc42c72ba4a83 ]
+
+There is msleep in pr_flush(). If call WARN() in the early boot
+stage such as in early_initcall, pr_flush() will run into msleep
+when process scheduler is not ready yet. And then the system will
+sleep forever.
+
+Before the system_state is SYSTEM_RUNNING, make sure DO NOT sleep
+in pr_flush().
+
+Fixes: c0b395bd0fe3("printk: add pr_flush()")
+Signed-off-by: Chao Qin <chao.qin@intel.com>
+Signed-off-by: Lili Li <lili.li@intel.com>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Reviewed-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Link: https://lore.kernel.org/lkml/20210719022649.3444072-1-chao.qin@intel.com
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/printk/printk.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index 14cb111fe9f0..d2205872304d 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -3554,7 +3554,9 @@ bool pr_flush(int timeout_ms, bool reset_on_progress)
+ u64 diff;
+ u64 seq;
+
+- may_sleep = (preemptible() && !in_softirq());
++ may_sleep = (preemptible() &&
++ !in_softirq() &&
++ system_state >= SYSTEM_RUNNING);
+
+ seq = prb_next_seq(prb);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0297-locking-rwsem-rt-Remove-might_sleep-in-__up_read.patch b/debian/patches-rt/0297-locking-rwsem-rt-Remove-might_sleep-in-__up_read.patch
new file mode 100644
index 000000000..91a9ede63
--- /dev/null
+++ b/debian/patches-rt/0297-locking-rwsem-rt-Remove-might_sleep-in-__up_read.patch
@@ -0,0 +1,31 @@
+From 7131b777e7276a566838fdfb4a0b2ddc44ad2eca Mon Sep 17 00:00:00 2001
+From: Andrew Halaney <ahalaney@redhat.com>
+Date: Tue, 6 Apr 2021 17:19:52 -0500
+Subject: [PATCH 297/323] locking/rwsem-rt: Remove might_sleep() in __up_read()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+There's no chance of sleeping here, the reader is giving up the
+lock and possibly waking up the writer who is waiting on it.
+
+Reported-by: Chunyu Hu <chuhu@redhat.com>
+Signed-off-by: Andrew Halaney <ahalaney@redhat.com>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/locking/rwsem-rt.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/kernel/locking/rwsem-rt.c b/kernel/locking/rwsem-rt.c
+index 274172d5bb3a..b61edc4dcb73 100644
+--- a/kernel/locking/rwsem-rt.c
++++ b/kernel/locking/rwsem-rt.c
+@@ -198,7 +198,6 @@ void __up_read(struct rw_semaphore *sem)
+ if (!atomic_dec_and_test(&sem->readers))
+ return;
+
+- might_sleep();
+ raw_spin_lock_irq(&m->wait_lock);
+ /*
+ * Wake the writer, i.e. the rtmutex owner. It might release the
+--
+2.43.0
+
diff --git a/debian/patches-rt/0298-mm-zsmalloc-Convert-zsmalloc_handle.lock-to-spinlock.patch b/debian/patches-rt/0298-mm-zsmalloc-Convert-zsmalloc_handle.lock-to-spinlock.patch
new file mode 100644
index 000000000..d26ff0ea0
--- /dev/null
+++ b/debian/patches-rt/0298-mm-zsmalloc-Convert-zsmalloc_handle.lock-to-spinlock.patch
@@ -0,0 +1,82 @@
+From b4a9c84408720dd6da0cdb52fc3e7070aef9c4fe Mon Sep 17 00:00:00 2001
+From: Mike Galbraith <efault@gmx.de>
+Date: Tue, 24 Aug 2021 13:08:14 +0200
+Subject: [PATCH 298/323] mm, zsmalloc: Convert zsmalloc_handle.lock to
+ spinlock_t
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+local_lock_t becoming a synonym of spinlock_t had consequences for the RT
+mods to zsmalloc, which were taking a mutex while holding a local_lock,
+inspiring a lockdep "BUG: Invalid wait context" gripe.
+
+Converting zsmalloc_handle.lock to a spinlock_t restored lockdep silence.
+
+Cc: stable-rt@vger.kernel.org
+Signed-off-by: Mike Galbraith <efault@gmx.de>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ mm/zsmalloc.c | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/mm/zsmalloc.c b/mm/zsmalloc.c
+index 7dad2ff3e778..16ce2b05df90 100644
+--- a/mm/zsmalloc.c
++++ b/mm/zsmalloc.c
+@@ -82,7 +82,7 @@
+
+ struct zsmalloc_handle {
+ unsigned long addr;
+- struct mutex lock;
++ spinlock_t lock;
+ };
+
+ #define ZS_HANDLE_ALLOC_SIZE (sizeof(struct zsmalloc_handle))
+@@ -370,7 +370,7 @@ static unsigned long cache_alloc_handle(struct zs_pool *pool, gfp_t gfp)
+ if (p) {
+ struct zsmalloc_handle *zh = p;
+
+- mutex_init(&zh->lock);
++ spin_lock_init(&zh->lock);
+ }
+ #endif
+ return (unsigned long)p;
+@@ -930,7 +930,7 @@ static inline int testpin_tag(unsigned long handle)
+ #ifdef CONFIG_PREEMPT_RT
+ struct zsmalloc_handle *zh = zs_get_pure_handle(handle);
+
+- return mutex_is_locked(&zh->lock);
++ return spin_is_locked(&zh->lock);
+ #else
+ return bit_spin_is_locked(HANDLE_PIN_BIT, (unsigned long *)handle);
+ #endif
+@@ -941,7 +941,7 @@ static inline int trypin_tag(unsigned long handle)
+ #ifdef CONFIG_PREEMPT_RT
+ struct zsmalloc_handle *zh = zs_get_pure_handle(handle);
+
+- return mutex_trylock(&zh->lock);
++ return spin_trylock(&zh->lock);
+ #else
+ return bit_spin_trylock(HANDLE_PIN_BIT, (unsigned long *)handle);
+ #endif
+@@ -952,7 +952,7 @@ static void pin_tag(unsigned long handle) __acquires(bitlock)
+ #ifdef CONFIG_PREEMPT_RT
+ struct zsmalloc_handle *zh = zs_get_pure_handle(handle);
+
+- return mutex_lock(&zh->lock);
++ return spin_lock(&zh->lock);
+ #else
+ bit_spin_lock(HANDLE_PIN_BIT, (unsigned long *)handle);
+ #endif
+@@ -963,7 +963,7 @@ static void unpin_tag(unsigned long handle) __releases(bitlock)
+ #ifdef CONFIG_PREEMPT_RT
+ struct zsmalloc_handle *zh = zs_get_pure_handle(handle);
+
+- return mutex_unlock(&zh->lock);
++ return spin_unlock(&zh->lock);
+ #else
+ bit_spin_unlock(HANDLE_PIN_BIT, (unsigned long *)handle);
+ #endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0299-sched-Fix-get_push_task-vs-migrate_disable.patch b/debian/patches-rt/0299-sched-Fix-get_push_task-vs-migrate_disable.patch
new file mode 100644
index 000000000..f59c122c0
--- /dev/null
+++ b/debian/patches-rt/0299-sched-Fix-get_push_task-vs-migrate_disable.patch
@@ -0,0 +1,46 @@
+From 93c4258bc009109bee258c30fa2a53680c8b1f9a Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 26 Aug 2021 15:37:38 +0200
+Subject: [PATCH 299/323] sched: Fix get_push_task() vs migrate_disable()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+push_rt_task() attempts to move the currently running task away if the
+next runnable task has migration disabled and therefore is pinned on the
+current CPU.
+
+The current task is retrieved via get_push_task() which only checks for
+nr_cpus_allowed == 1, but does not check whether the task has migration
+disabled and therefore cannot be moved either. The consequence is a
+pointless invocation of the migration thread which correctly observes
+that the task cannot be moved.
+
+Return NULL if the task has migration disabled and cannot be moved to
+another CPU.
+
+Cc: stable-rt@vger.kernel.org
+Fixes: a7c81556ec4d3 ("sched: Fix migrate_disable() vs rt/dl balancing")
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Link: https://lkml.kernel.org/r/20210826133738.yiotqbtdaxzjsnfj@linutronix.de
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/sched/sched.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h
+index ad854a670701..bda12827832e 100644
+--- a/kernel/sched/sched.h
++++ b/kernel/sched/sched.h
+@@ -1949,6 +1949,9 @@ static inline struct task_struct *get_push_task(struct rq *rq)
+ if (p->nr_cpus_allowed == 1)
+ return NULL;
+
++ if (p->migration_disabled)
++ return NULL;
++
+ rq->push_busy = true;
+ return get_task_struct(p);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0300-sched-Switch-wait_task_inactive-to-HRTIMER_MODE_REL_.patch b/debian/patches-rt/0300-sched-Switch-wait_task_inactive-to-HRTIMER_MODE_REL_.patch
new file mode 100644
index 000000000..720b08fc7
--- /dev/null
+++ b/debian/patches-rt/0300-sched-Switch-wait_task_inactive-to-HRTIMER_MODE_REL_.patch
@@ -0,0 +1,48 @@
+From f29a6f7bb4568b4ac2d5a9226d503db7a2c69bab Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 24 Aug 2021 22:47:37 +0200
+Subject: [PATCH 300/323] sched: Switch wait_task_inactive to
+ HRTIMER_MODE_REL_HARD
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+With PREEMPT_RT enabled all hrtimers callbacks will be invoked in
+softirq mode unless they are explicitly marked as HRTIMER_MODE_HARD.
+During boot kthread_bind() is used for the creation of per-CPU threads
+and then hangs in wait_task_inactive() if the ksoftirqd is not
+yet up and running.
+The hang disappeared since commit
+ 26c7295be0c5e ("kthread: Do not preempt current task if it is going to call schedule()")
+
+but enabling function trace on boot reliably leads to the freeze on boot
+behaviour again.
+The timer in wait_task_inactive() can not be directly used by an user
+interface to abuse it and create a mass wake of several tasks at the
+same time which would to long sections with disabled interrupts.
+Therefore it is safe to make the timer HRTIMER_MODE_REL_HARD.
+
+Switch the timer to HRTIMER_MODE_REL_HARD.
+
+Cc: stable-rt@vger.kernel.org
+Link: https://lkml.kernel.org/r/20210826170408.vm7rlj7odslshwch@linutronix.de
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ kernel/sched/core.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kernel/sched/core.c b/kernel/sched/core.c
+index 81b342d6629b..6735872a8508 100644
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -2739,7 +2739,7 @@ unsigned long wait_task_inactive(struct task_struct *p, long match_state)
+ ktime_t to = NSEC_PER_SEC / HZ;
+
+ set_current_state(TASK_UNINTERRUPTIBLE);
+- schedule_hrtimeout(&to, HRTIMER_MODE_REL);
++ schedule_hrtimeout(&to, HRTIMER_MODE_REL_HARD);
+ continue;
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0301-preempt-Move-preempt_enable_no_resched-to-the-RT-blo.patch b/debian/patches-rt/0301-preempt-Move-preempt_enable_no_resched-to-the-RT-blo.patch
new file mode 100644
index 000000000..41de0ba3d
--- /dev/null
+++ b/debian/patches-rt/0301-preempt-Move-preempt_enable_no_resched-to-the-RT-blo.patch
@@ -0,0 +1,45 @@
+From 8cc1a32ca44ae3484956295c75afcc2234e809ae Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 22 Sep 2021 19:34:40 +0200
+Subject: [PATCH 301/323] preempt: Move preempt_enable_no_resched() to the RT
+ block
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+preempt_enable_no_resched() should point to preempt_enable() on
+PREEMPT_RT so nobody is playing any preempt tricks and enables
+preemption without checking for the need-resched flag.
+
+This was misplaced in v3.14.0-rt1 und remained unnoticed until now.
+
+Point preempt_enable_no_resched() and preempt_enable() on RT.
+
+Cc: stable-rt@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ include/linux/preempt.h | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/include/linux/preempt.h b/include/linux/preempt.h
+index af39859f02ee..7b5b2ed55531 100644
+--- a/include/linux/preempt.h
++++ b/include/linux/preempt.h
+@@ -208,12 +208,12 @@ do { \
+ preempt_count_dec(); \
+ } while (0)
+
+-#ifdef CONFIG_PREEMPT_RT
++#ifndef CONFIG_PREEMPT_RT
+ # define preempt_enable_no_resched() sched_preempt_enable_no_resched()
+-# define preempt_check_resched_rt() preempt_check_resched()
++# define preempt_check_resched_rt() barrier();
+ #else
+ # define preempt_enable_no_resched() preempt_enable()
+-# define preempt_check_resched_rt() barrier();
++# define preempt_check_resched_rt() preempt_check_resched()
+ #endif
+
+ #define preemptible() (preempt_count() == 0 && !irqs_disabled())
+--
+2.43.0
+
diff --git a/debian/patches-rt/0302-mm-Disable-NUMA_BALANCING_DEFAULT_ENABLED-and-TRANSP.patch b/debian/patches-rt/0302-mm-Disable-NUMA_BALANCING_DEFAULT_ENABLED-and-TRANSP.patch
new file mode 100644
index 000000000..e9b579280
--- /dev/null
+++ b/debian/patches-rt/0302-mm-Disable-NUMA_BALANCING_DEFAULT_ENABLED-and-TRANSP.patch
@@ -0,0 +1,51 @@
+From 4e8d89996a692bd5d4a094e55c0a88044993057f Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 29 Oct 2021 10:07:11 +0200
+Subject: [PATCH 302/323] mm: Disable NUMA_BALANCING_DEFAULT_ENABLED and
+ TRANSPARENT_HUGEPAGE on PREEMPT_RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+TRANSPARENT_HUGEPAGE:
+There are potential non-deterministic delays to an RT thread if a critical
+memory region is not THP-aligned and a non-RT buffer is located in the same
+hugepage-aligned region. It's also possible for an unrelated thread to migrate
+pages belonging to an RT task incurring unexpected page faults due to memory
+defragmentation even if khugepaged is disabled.
+
+Regular HUGEPAGEs are not affected by this can be used.
+
+NUMA_BALANCING:
+There is a non-deterministic delay to mark PTEs PROT_NONE to gather NUMA fault
+samples, increased page faults of regions even if mlocked and non-deterministic
+delays when migrating pages.
+
+[Mel Gorman worded 99% of the commit description].
+
+Link: https://lore.kernel.org/all/20200304091159.GN3818@techsingularity.net/
+Link: https://lore.kernel.org/all/20211026165100.ahz5bkx44lrrw5pt@linutronix.de/
+Cc: stable-rt@vger.kernel.org
+Cc: Mel Gorman <mgorman@techsingularity.net>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Acked-by: Mel Gorman <mgorman@techsingularity.net>
+Link: https://lore.kernel.org/r/20211028143327.hfbxjze7palrpfgp@linutronix.de
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ init/Kconfig | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/init/Kconfig b/init/Kconfig
+index c5f276d782de..a62d2961064b 100644
+--- a/init/Kconfig
++++ b/init/Kconfig
+@@ -878,7 +878,7 @@ config NUMA_BALANCING
+ bool "Memory placement aware NUMA scheduler"
+ depends on ARCH_SUPPORTS_NUMA_BALANCING
+ depends on !ARCH_WANT_NUMA_VARIABLE_LOCALITY
+- depends on SMP && NUMA && MIGRATION
++ depends on SMP && NUMA && MIGRATION && !PREEMPT_RT
+ help
+ This option adds support for automatic NUMA aware memory/task placement.
+ The mechanism is quite primitive and is based on migrating memory when
+--
+2.43.0
+
diff --git a/debian/patches-rt/0303-fscache-Use-only-one-fscache_object_cong_wait.patch b/debian/patches-rt/0303-fscache-Use-only-one-fscache_object_cong_wait.patch
new file mode 100644
index 000000000..a2f67e27c
--- /dev/null
+++ b/debian/patches-rt/0303-fscache-Use-only-one-fscache_object_cong_wait.patch
@@ -0,0 +1,129 @@
+From 9ebcbc0c3bbeaa6e13b623ff2d84d3b29e0a1431 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Thu, 28 Oct 2021 17:30:50 +0200
+Subject: [PATCH 303/323] fscache: Use only one fscache_object_cong_wait.
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+In the commit mentioned below, fscache was converted from slow-work to
+workqueue. slow_work_enqueue() and slow_work_sleep_till_thread_needed()
+did not use a per-CPU workqueue. They choose from two global waitqueues
+depending on the SLOW_WORK_VERY_SLOW bit which was not set so it always
+one waitqueue.
+
+I can't find out how it is ensured that a waiter on certain CPU is woken
+up be the other side. My guess is that the timeout in schedule_timeout()
+ensures that it does not wait forever (or a random wake up).
+
+fscache_object_sleep_till_congested() must be invoked from preemptible
+context in order for schedule() to work. In this case this_cpu_ptr()
+should complain with CONFIG_DEBUG_PREEMPT enabled except the thread is
+bound to one CPU.
+
+wake_up() wakes only one waiter and I'm not sure if it is guaranteed
+that only one waiter exists.
+
+Replace the per-CPU waitqueue with one global waitqueue.
+
+Fixes: 8b8edefa2fffb ("fscache: convert object to use workqueue instead of slow-work")
+Reported-by: Gregor Beck <gregor.beck@gmail.com>
+Cc: stable-rt@vger.kernel.org
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ fs/fscache/internal.h | 1 -
+ fs/fscache/main.c | 6 ------
+ fs/fscache/object.c | 11 +++++------
+ 3 files changed, 5 insertions(+), 13 deletions(-)
+
+diff --git a/fs/fscache/internal.h b/fs/fscache/internal.h
+index 64aa552b296d..7dae569dafb9 100644
+--- a/fs/fscache/internal.h
++++ b/fs/fscache/internal.h
+@@ -95,7 +95,6 @@ extern unsigned fscache_debug;
+ extern struct kobject *fscache_root;
+ extern struct workqueue_struct *fscache_object_wq;
+ extern struct workqueue_struct *fscache_op_wq;
+-DECLARE_PER_CPU(wait_queue_head_t, fscache_object_cong_wait);
+
+ extern unsigned int fscache_hash(unsigned int salt, unsigned int *data, unsigned int n);
+
+diff --git a/fs/fscache/main.c b/fs/fscache/main.c
+index 4207f98e405f..85f8cf3a323d 100644
+--- a/fs/fscache/main.c
++++ b/fs/fscache/main.c
+@@ -41,8 +41,6 @@ struct kobject *fscache_root;
+ struct workqueue_struct *fscache_object_wq;
+ struct workqueue_struct *fscache_op_wq;
+
+-DEFINE_PER_CPU(wait_queue_head_t, fscache_object_cong_wait);
+-
+ /* these values serve as lower bounds, will be adjusted in fscache_init() */
+ static unsigned fscache_object_max_active = 4;
+ static unsigned fscache_op_max_active = 2;
+@@ -138,7 +136,6 @@ unsigned int fscache_hash(unsigned int salt, unsigned int *data, unsigned int n)
+ static int __init fscache_init(void)
+ {
+ unsigned int nr_cpus = num_possible_cpus();
+- unsigned int cpu;
+ int ret;
+
+ fscache_object_max_active =
+@@ -161,9 +158,6 @@ static int __init fscache_init(void)
+ if (!fscache_op_wq)
+ goto error_op_wq;
+
+- for_each_possible_cpu(cpu)
+- init_waitqueue_head(&per_cpu(fscache_object_cong_wait, cpu));
+-
+ ret = fscache_proc_init();
+ if (ret < 0)
+ goto error_proc;
+diff --git a/fs/fscache/object.c b/fs/fscache/object.c
+index cb2146e02cd5..55158f30d093 100644
+--- a/fs/fscache/object.c
++++ b/fs/fscache/object.c
+@@ -807,6 +807,8 @@ void fscache_object_destroy(struct fscache_object *object)
+ }
+ EXPORT_SYMBOL(fscache_object_destroy);
+
++static DECLARE_WAIT_QUEUE_HEAD(fscache_object_cong_wait);
++
+ /*
+ * enqueue an object for metadata-type processing
+ */
+@@ -815,12 +817,10 @@ void fscache_enqueue_object(struct fscache_object *object)
+ _enter("{OBJ%x}", object->debug_id);
+
+ if (fscache_get_object(object, fscache_obj_get_queue) >= 0) {
+- wait_queue_head_t *cong_wq =
+- &get_cpu_var(fscache_object_cong_wait);
+
+ if (queue_work(fscache_object_wq, &object->work)) {
+ if (fscache_object_congested())
+- wake_up(cong_wq);
++ wake_up(&fscache_object_cong_wait);
+ } else
+ fscache_put_object(object, fscache_obj_put_queue);
+
+@@ -842,16 +842,15 @@ void fscache_enqueue_object(struct fscache_object *object)
+ */
+ bool fscache_object_sleep_till_congested(signed long *timeoutp)
+ {
+- wait_queue_head_t *cong_wq = this_cpu_ptr(&fscache_object_cong_wait);
+ DEFINE_WAIT(wait);
+
+ if (fscache_object_congested())
+ return true;
+
+- add_wait_queue_exclusive(cong_wq, &wait);
++ add_wait_queue_exclusive(&fscache_object_cong_wait, &wait);
+ if (!fscache_object_congested())
+ *timeoutp = schedule_timeout(*timeoutp);
+- finish_wait(cong_wq, &wait);
++ finish_wait(&fscache_object_cong_wait, &wait);
+
+ return fscache_object_congested();
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0304-fscache-Use-only-one-fscache_object_cong_wait.patch b/debian/patches-rt/0304-fscache-Use-only-one-fscache_object_cong_wait.patch
new file mode 100644
index 000000000..ca5c5cbd4
--- /dev/null
+++ b/debian/patches-rt/0304-fscache-Use-only-one-fscache_object_cong_wait.patch
@@ -0,0 +1,31 @@
+From 5fe656c51fcb73a09cf33665bcee0341edaf14c3 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 2 Nov 2021 11:52:05 +0100
+Subject: [PATCH 304/323] fscache: Use only one fscache_object_cong_wait.
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+This is an update of the original patch, removing put_cpu_var() which
+was overseen in the initial patch.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ fs/fscache/object.c | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/fs/fscache/object.c b/fs/fscache/object.c
+index 55158f30d093..fb9794dce721 100644
+--- a/fs/fscache/object.c
++++ b/fs/fscache/object.c
+@@ -823,8 +823,6 @@ void fscache_enqueue_object(struct fscache_object *object)
+ wake_up(&fscache_object_cong_wait);
+ } else
+ fscache_put_object(object, fscache_obj_put_queue);
+-
+- put_cpu_var(fscache_object_cong_wait);
+ }
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0305-locking-Drop-might_resched-from-might_sleep_no_state.patch b/debian/patches-rt/0305-locking-Drop-might_resched-from-might_sleep_no_state.patch
new file mode 100644
index 000000000..f424e077f
--- /dev/null
+++ b/debian/patches-rt/0305-locking-Drop-might_resched-from-might_sleep_no_state.patch
@@ -0,0 +1,40 @@
+From 8eddd2dc82853a3df908061f6ddf71bde523917b Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Mon, 6 Sep 2021 18:19:16 +0200
+Subject: [PATCH 305/323] locking: Drop might_resched() from
+ might_sleep_no_state_check()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+might_sleep_no_state_check() serves the same purpose as might_sleep()
+except it is used before sleeping locks are acquired and therefore does
+not check task_struct::state because the state is preserved.
+
+That state is preserved in the locking slow path so we must not schedule
+at the begin of the locking function because the state will be lost and
+not preserved at that time.
+
+Remove might_resched() from might_sleep_no_state_check() to avoid losing the
+state before it is preserved.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ include/linux/kernel.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/linux/kernel.h b/include/linux/kernel.h
+index 7b4fdd5b2f7b..4e88ae0b2578 100644
+--- a/include/linux/kernel.h
++++ b/include/linux/kernel.h
+@@ -225,7 +225,7 @@ extern void __cant_migrate(const char *file, int line);
+ do { __might_sleep(__FILE__, __LINE__, 0); might_resched(); } while (0)
+
+ # define might_sleep_no_state_check() \
+- do { ___might_sleep(__FILE__, __LINE__, 0); might_resched(); } while (0)
++ do { ___might_sleep(__FILE__, __LINE__, 0); } while (0)
+
+ /**
+ * cant_sleep - annotation for functions that cannot sleep
+--
+2.43.0
+
diff --git a/debian/patches-rt/0306-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch b/debian/patches-rt/0306-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch
new file mode 100644
index 000000000..c7e1e5838
--- /dev/null
+++ b/debian/patches-rt/0306-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch
@@ -0,0 +1,49 @@
+From 45cb435eff7cd17311c87552c32c3a202b09bf51 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Tue, 26 Oct 2021 13:40:53 +0200
+Subject: [PATCH 306/323] drm/i915/gt: Queue and wait for the irq_work item.
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Disabling interrupts and invoking the irq_work function directly breaks
+on PREEMPT_RT.
+PREEMPT_RT does not invoke all irq_work from hardirq context because
+some of the user have spinlock_t locking in the callback function.
+These locks are then turned into a sleeping locks which can not be
+acquired with disabled interrupts.
+
+Using irq_work_queue() has the benefit that the irqwork will be invoked
+in the regular context. In general there is "no" delay between enqueuing
+the callback and its invocation because the interrupt is raised right
+away on architectures which support it (which includes x86).
+
+Use irq_work_queue() + irq_work_sync() instead invoking the callback
+directly.
+
+Reported-by: Clark Williams <williams@redhat.com>
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ drivers/gpu/drm/i915/gt/intel_breadcrumbs.c | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c b/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c
+index 0040b4765a54..3f4f854786f2 100644
+--- a/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c
++++ b/drivers/gpu/drm/i915/gt/intel_breadcrumbs.c
+@@ -342,10 +342,9 @@ void intel_breadcrumbs_park(struct intel_breadcrumbs *b)
+ /* Kick the work once more to drain the signalers */
+ irq_work_sync(&b->irq_work);
+ while (unlikely(READ_ONCE(b->irq_armed))) {
+- local_irq_disable();
+- signal_irq_work(&b->irq_work);
+- local_irq_enable();
++ irq_work_queue(&b->irq_work);
+ cond_resched();
++ irq_work_sync(&b->irq_work);
+ }
+ GEM_BUG_ON(!list_empty(&b->signalers));
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0307-irq_work-Allow-irq_work_sync-to-sleep-if-irq_work-no.patch b/debian/patches-rt/0307-irq_work-Allow-irq_work_sync-to-sleep-if-irq_work-no.patch
new file mode 100644
index 000000000..2c0ed1db3
--- /dev/null
+++ b/debian/patches-rt/0307-irq_work-Allow-irq_work_sync-to-sleep-if-irq_work-no.patch
@@ -0,0 +1,100 @@
+From cf4bb976aef7af85b7134aa7cffdfa8e058dc5c6 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 24 Nov 2021 17:12:19 +0100
+Subject: [PATCH 307/323] irq_work: Allow irq_work_sync() to sleep if
+ irq_work() no IRQ support.
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+irq_work() triggers instantly an interrupt if supported by the
+architecture. Otherwise the work will be processed on the next timer
+tick. In worst case irq_work_sync() could spin up to a jiffy.
+
+irq_work_sync() is usually used in tear down context which is fully
+preemptible. Based on review irq_work_sync() is invoked from preemptible
+context and there is one waiter at a time. This qualifies it to use
+rcuwait for synchronisation.
+
+Let irq_work_sync() synchronize with rcuwait if the architecture
+processes irqwork via the timer tick.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Link: https://lkml.kernel.org/r/20211006111852.1514359-3-bigeasy@linutronix.de
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ include/linux/irq_work.h | 10 +++++++++-
+ kernel/irq_work.c | 10 ++++++++++
+ 2 files changed, 19 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/irq_work.h b/include/linux/irq_work.h
+index f941f2d7d71c..3c6d3a96bca0 100644
+--- a/include/linux/irq_work.h
++++ b/include/linux/irq_work.h
+@@ -3,6 +3,7 @@
+ #define _LINUX_IRQ_WORK_H
+
+ #include <linux/smp_types.h>
++#include <linux/rcuwait.h>
+
+ /*
+ * An entry can be in one of four states:
+@@ -22,6 +23,7 @@ struct irq_work {
+ };
+ };
+ void (*func)(struct irq_work *);
++ struct rcuwait irqwait;
+ };
+
+ static inline
+@@ -29,13 +31,19 @@ void init_irq_work(struct irq_work *work, void (*func)(struct irq_work *))
+ {
+ atomic_set(&work->flags, 0);
+ work->func = func;
++ rcuwait_init(&work->irqwait);
+ }
+
+ #define DEFINE_IRQ_WORK(name, _f) struct irq_work name = { \
+ .flags = ATOMIC_INIT(0), \
+- .func = (_f) \
++ .func = (_f), \
++ .irqwait = __RCUWAIT_INITIALIZER(irqwait), \
+ }
+
++static inline bool irq_work_is_busy(struct irq_work *work)
++{
++ return atomic_read(&work->flags) & IRQ_WORK_BUSY;
++}
+
+ bool irq_work_queue(struct irq_work *work);
+ bool irq_work_queue_on(struct irq_work *work, int cpu);
+diff --git a/kernel/irq_work.c b/kernel/irq_work.c
+index 8183d30e1bb1..8969aff790e2 100644
+--- a/kernel/irq_work.c
++++ b/kernel/irq_work.c
+@@ -165,6 +165,9 @@ void irq_work_single(void *arg)
+ */
+ flags &= ~IRQ_WORK_PENDING;
+ (void)atomic_cmpxchg(&work->flags, flags, flags & ~IRQ_WORK_BUSY);
++
++ if (!arch_irq_work_has_interrupt())
++ rcuwait_wake_up(&work->irqwait);
+ }
+
+ static void irq_work_run_list(struct llist_head *list)
+@@ -231,6 +234,13 @@ void irq_work_tick_soft(void)
+ void irq_work_sync(struct irq_work *work)
+ {
+ lockdep_assert_irqs_enabled();
++ might_sleep();
++
++ if (!arch_irq_work_has_interrupt()) {
++ rcuwait_wait_event(&work->irqwait, !irq_work_is_busy(work),
++ TASK_UNINTERRUPTIBLE);
++ return;
++ }
+
+ while (atomic_read(&work->flags) & IRQ_WORK_BUSY)
+ cpu_relax();
+--
+2.43.0
+
diff --git a/debian/patches-rt/0308-irq_work-Handle-some-irq_work-in-a-per-CPU-thread-on.patch b/debian/patches-rt/0308-irq_work-Handle-some-irq_work-in-a-per-CPU-thread-on.patch
new file mode 100644
index 000000000..a6aea41c0
--- /dev/null
+++ b/debian/patches-rt/0308-irq_work-Handle-some-irq_work-in-a-per-CPU-thread-on.patch
@@ -0,0 +1,307 @@
+From 2b803272d74039863a77523d79f79cc938eff7cf Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 24 Nov 2021 17:12:20 +0100
+Subject: [PATCH 308/323] irq_work: Handle some irq_work in a per-CPU thread on
+ PREEMPT_RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The irq_work callback is invoked in hard IRQ context. By default all
+callbacks are scheduled for invocation right away (given supported by
+the architecture) except for the ones marked IRQ_WORK_LAZY which are
+delayed until the next timer-tick.
+
+While looking over the callbacks, some of them may acquire locks
+(spinlock_t, rwlock_t) which are transformed into sleeping locks on
+PREEMPT_RT and must not be acquired in hard IRQ context.
+Changing the locks into locks which could be acquired in this context
+will lead to other problems such as increased latencies if everything
+in the chain has IRQ-off locks. This will not solve all the issues as
+one callback has been noticed which invoked kref_put() and its callback
+invokes kfree() and this can not be invoked in hardirq context.
+
+Some callbacks are required to be invoked in hardirq context even on
+PREEMPT_RT to work properly. This includes for instance the NO_HZ
+callback which needs to be able to observe the idle context.
+
+The callbacks which require to be run in hardirq have already been
+marked. Use this information to split the callbacks onto the two lists
+on PREEMPT_RT:
+- lazy_list
+ Work items which are not marked with IRQ_WORK_HARD_IRQ will be added
+ to this list. Callbacks on this list will be invoked from a per-CPU
+ thread.
+ The handler here may acquire sleeping locks such as spinlock_t and
+ invoke kfree().
+
+- raised_list
+ Work items which are marked with IRQ_WORK_HARD_IRQ will be added to
+ this list. They will be invoked in hardirq context and must not
+ acquire any sleeping locks.
+
+The wake up of the per-CPU thread occurs from irq_work handler/
+hardirq context. The thread runs with lowest RT priority to ensure it
+runs before any SCHED_OTHER tasks do.
+
+[bigeasy: melt tglx's irq_work_tick_soft() which splits irq_work_tick() into a
+ hard and soft variant. Collected fixes over time from Steven
+ Rostedt and Mike Galbraith. Move to per-CPU threads instead of
+ softirq as suggested by PeterZ.]
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Link: https://lkml.kernel.org/r/20211007092646.uhshe3ut2wkrcfzv@linutronix.de
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ include/linux/irq_work.h | 16 +++--
+ kernel/irq_work.c | 131 ++++++++++++++++++++++++++++-----------
+ kernel/time/timer.c | 2 -
+ 3 files changed, 106 insertions(+), 43 deletions(-)
+
+diff --git a/include/linux/irq_work.h b/include/linux/irq_work.h
+index 3c6d3a96bca0..f551ba9c99d4 100644
+--- a/include/linux/irq_work.h
++++ b/include/linux/irq_work.h
+@@ -40,6 +40,16 @@ void init_irq_work(struct irq_work *work, void (*func)(struct irq_work *))
+ .irqwait = __RCUWAIT_INITIALIZER(irqwait), \
+ }
+
++#define __IRQ_WORK_INIT(_func, _flags) (struct irq_work){ \
++ .flags = ATOMIC_INIT(_flags), \
++ .func = (_func), \
++ .irqwait = __RCUWAIT_INITIALIZER(irqwait), \
++}
++
++#define IRQ_WORK_INIT(_func) __IRQ_WORK_INIT(_func, 0)
++#define IRQ_WORK_INIT_LAZY(_func) __IRQ_WORK_INIT(_func, IRQ_WORK_LAZY)
++#define IRQ_WORK_INIT_HARD(_func) __IRQ_WORK_INIT(_func, IRQ_WORK_HARD_IRQ)
++
+ static inline bool irq_work_is_busy(struct irq_work *work)
+ {
+ return atomic_read(&work->flags) & IRQ_WORK_BUSY;
+@@ -63,10 +73,4 @@ static inline void irq_work_run(void) { }
+ static inline void irq_work_single(void *arg) { }
+ #endif
+
+-#if defined(CONFIG_IRQ_WORK) && defined(CONFIG_PREEMPT_RT)
+-void irq_work_tick_soft(void);
+-#else
+-static inline void irq_work_tick_soft(void) { }
+-#endif
+-
+ #endif /* _LINUX_IRQ_WORK_H */
+diff --git a/kernel/irq_work.c b/kernel/irq_work.c
+index 8969aff790e2..03d09d779ee1 100644
+--- a/kernel/irq_work.c
++++ b/kernel/irq_work.c
+@@ -18,12 +18,37 @@
+ #include <linux/cpu.h>
+ #include <linux/notifier.h>
+ #include <linux/smp.h>
++#include <linux/smpboot.h>
+ #include <linux/interrupt.h>
+ #include <asm/processor.h>
+
+
+ static DEFINE_PER_CPU(struct llist_head, raised_list);
+ static DEFINE_PER_CPU(struct llist_head, lazy_list);
++static DEFINE_PER_CPU(struct task_struct *, irq_workd);
++
++static void wake_irq_workd(void)
++{
++ struct task_struct *tsk = __this_cpu_read(irq_workd);
++
++ if (!llist_empty(this_cpu_ptr(&lazy_list)) && tsk)
++ wake_up_process(tsk);
++}
++
++#ifdef CONFIG_SMP
++static void irq_work_wake(struct irq_work *entry)
++{
++ wake_irq_workd();
++}
++
++static DEFINE_PER_CPU(struct irq_work, irq_work_wakeup) =
++ IRQ_WORK_INIT_HARD(irq_work_wake);
++#endif
++
++static int irq_workd_should_run(unsigned int cpu)
++{
++ return !llist_empty(this_cpu_ptr(&lazy_list));
++}
+
+ /*
+ * Claim the entry so that no one else will poke at it.
+@@ -54,20 +79,28 @@ void __weak arch_irq_work_raise(void)
+ static void __irq_work_queue_local(struct irq_work *work)
+ {
+ struct llist_head *list;
+- bool lazy_work, realtime = IS_ENABLED(CONFIG_PREEMPT_RT);
+-
+- lazy_work = atomic_read(&work->flags) & IRQ_WORK_LAZY;
+-
+- /* If the work is "lazy", handle it from next tick if any */
+- if (lazy_work || (realtime && !(atomic_read(&work->flags) & IRQ_WORK_HARD_IRQ)))
++ bool rt_lazy_work = false;
++ bool lazy_work = false;
++ int work_flags;
++
++ work_flags = atomic_read(&work->flags);
++ if (work_flags & IRQ_WORK_LAZY)
++ lazy_work = true;
++ else if (IS_ENABLED(CONFIG_PREEMPT_RT) &&
++ !(work_flags & IRQ_WORK_HARD_IRQ))
++ rt_lazy_work = true;
++
++ if (lazy_work || rt_lazy_work)
+ list = this_cpu_ptr(&lazy_list);
+ else
+ list = this_cpu_ptr(&raised_list);
+
+- if (llist_add(&work->llnode, list)) {
+- if (!lazy_work || tick_nohz_tick_stopped())
+- arch_irq_work_raise();
+- }
++ if (!llist_add(&work->llnode, list))
++ return;
++
++ /* If the work is "lazy", handle it from next tick if any */
++ if (!lazy_work || tick_nohz_tick_stopped())
++ arch_irq_work_raise();
+ }
+
+ /* Enqueue the irq work @work on the current CPU */
+@@ -110,15 +143,27 @@ bool irq_work_queue_on(struct irq_work *work, int cpu)
+ /* Arch remote IPI send/receive backend aren't NMI safe */
+ WARN_ON_ONCE(in_nmi());
+
+- if (IS_ENABLED(CONFIG_PREEMPT_RT) && !(atomic_read(&work->flags) & IRQ_WORK_HARD_IRQ)) {
+- if (llist_add(&work->llnode, &per_cpu(lazy_list, cpu)))
+- arch_send_call_function_single_ipi(cpu);
+- } else {
+- __smp_call_single_queue(cpu, &work->llnode);
++ /*
++ * On PREEMPT_RT the items which are not marked as
++ * IRQ_WORK_HARD_IRQ are added to the lazy list and a HARD work
++ * item is used on the remote CPU to wake the thread.
++ */
++ if (IS_ENABLED(CONFIG_PREEMPT_RT) &&
++ !(atomic_read(&work->flags) & IRQ_WORK_HARD_IRQ)) {
++
++ if (!llist_add(&work->llnode, &per_cpu(lazy_list, cpu)))
++ goto out;
++
++ work = &per_cpu(irq_work_wakeup, cpu);
++ if (!irq_work_claim(work))
++ goto out;
+ }
++
++ __smp_call_single_queue(cpu, &work->llnode);
+ } else {
+ __irq_work_queue_local(work);
+ }
++out:
+ preempt_enable();
+
+ return true;
+@@ -175,12 +220,13 @@ static void irq_work_run_list(struct llist_head *list)
+ struct irq_work *work, *tmp;
+ struct llist_node *llnode;
+
+-#ifndef CONFIG_PREEMPT_RT
+ /*
+- * nort: On RT IRQ-work may run in SOFTIRQ context.
++ * On PREEMPT_RT IRQ-work which is not marked as HARD will be processed
++ * in a per-CPU thread in preemptible context. Only the items which are
++ * marked as IRQ_WORK_HARD_IRQ will be processed in hardirq context.
+ */
+- BUG_ON(!irqs_disabled());
+-#endif
++ BUG_ON(!irqs_disabled() && !IS_ENABLED(CONFIG_PREEMPT_RT));
++
+ if (llist_empty(list))
+ return;
+
+@@ -196,16 +242,10 @@ static void irq_work_run_list(struct llist_head *list)
+ void irq_work_run(void)
+ {
+ irq_work_run_list(this_cpu_ptr(&raised_list));
+- if (IS_ENABLED(CONFIG_PREEMPT_RT)) {
+- /*
+- * NOTE: we raise softirq via IPI for safety,
+- * and execute in irq_work_tick() to move the
+- * overhead from hard to soft irq context.
+- */
+- if (!llist_empty(this_cpu_ptr(&lazy_list)))
+- raise_softirq(TIMER_SOFTIRQ);
+- } else
++ if (!IS_ENABLED(CONFIG_PREEMPT_RT))
+ irq_work_run_list(this_cpu_ptr(&lazy_list));
++ else
++ wake_irq_workd();
+ }
+ EXPORT_SYMBOL_GPL(irq_work_run);
+
+@@ -218,15 +258,10 @@ void irq_work_tick(void)
+
+ if (!IS_ENABLED(CONFIG_PREEMPT_RT))
+ irq_work_run_list(this_cpu_ptr(&lazy_list));
++ else
++ wake_irq_workd();
+ }
+
+-#if defined(CONFIG_IRQ_WORK) && defined(CONFIG_PREEMPT_RT)
+-void irq_work_tick_soft(void)
+-{
+- irq_work_run_list(this_cpu_ptr(&lazy_list));
+-}
+-#endif
+-
+ /*
+ * Synchronize against the irq_work @entry, ensures the entry is not
+ * currently in use.
+@@ -246,3 +281,29 @@ void irq_work_sync(struct irq_work *work)
+ cpu_relax();
+ }
+ EXPORT_SYMBOL_GPL(irq_work_sync);
++
++static void run_irq_workd(unsigned int cpu)
++{
++ irq_work_run_list(this_cpu_ptr(&lazy_list));
++}
++
++static void irq_workd_setup(unsigned int cpu)
++{
++ sched_set_fifo_low(current);
++}
++
++static struct smp_hotplug_thread irqwork_threads = {
++ .store = &irq_workd,
++ .setup = irq_workd_setup,
++ .thread_should_run = irq_workd_should_run,
++ .thread_fn = run_irq_workd,
++ .thread_comm = "irq_work/%u",
++};
++
++static __init int irq_work_init_threads(void)
++{
++ if (IS_ENABLED(CONFIG_PREEMPT_RT))
++ BUG_ON(smpboot_register_percpu_thread(&irqwork_threads));
++ return 0;
++}
++early_initcall(irq_work_init_threads);
+diff --git a/kernel/time/timer.c b/kernel/time/timer.c
+index 1cad0efd635c..a4fdc7cfb723 100644
+--- a/kernel/time/timer.c
++++ b/kernel/time/timer.c
+@@ -1770,8 +1770,6 @@ static __latent_entropy void run_timer_softirq(struct softirq_action *h)
+ {
+ struct timer_base *base = this_cpu_ptr(&timer_bases[BASE_STD]);
+
+- irq_work_tick_soft();
+-
+ __run_timers(base);
+ if (IS_ENABLED(CONFIG_NO_HZ_COMMON))
+ __run_timers(this_cpu_ptr(&timer_bases[BASE_DEF]));
+--
+2.43.0
+
diff --git a/debian/patches-rt/0309-irq_work-Also-rcuwait-for-IRQ_WORK_HARD_IRQ-on-PREEM.patch b/debian/patches-rt/0309-irq_work-Also-rcuwait-for-IRQ_WORK_HARD_IRQ-on-PREEM.patch
new file mode 100644
index 000000000..ed320f6b7
--- /dev/null
+++ b/debian/patches-rt/0309-irq_work-Also-rcuwait-for-IRQ_WORK_HARD_IRQ-on-PREEM.patch
@@ -0,0 +1,65 @@
+From ca685c962ea2301291d3459ec8717208395b3cf9 Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Wed, 24 Nov 2021 17:12:21 +0100
+Subject: [PATCH 309/323] irq_work: Also rcuwait for !IRQ_WORK_HARD_IRQ on
+ PREEMPT_RT
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+On PREEMPT_RT most items are processed as LAZY via softirq context.
+Avoid to spin-wait for them because irq_work_sync() could have higher
+priority and not allow the irq-work to be completed.
+
+Wait additionally for !IRQ_WORK_HARD_IRQ irq_work items on PREEMPT_RT.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
+Link: https://lkml.kernel.org/r/20211006111852.1514359-5-bigeasy@linutronix.de
+Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
+---
+ include/linux/irq_work.h | 5 +++++
+ kernel/irq_work.c | 6 ++++--
+ 2 files changed, 9 insertions(+), 2 deletions(-)
+
+diff --git a/include/linux/irq_work.h b/include/linux/irq_work.h
+index f551ba9c99d4..2c0059340871 100644
+--- a/include/linux/irq_work.h
++++ b/include/linux/irq_work.h
+@@ -55,6 +55,11 @@ static inline bool irq_work_is_busy(struct irq_work *work)
+ return atomic_read(&work->flags) & IRQ_WORK_BUSY;
+ }
+
++static inline bool irq_work_is_hard(struct irq_work *work)
++{
++ return atomic_read(&work->flags) & IRQ_WORK_HARD_IRQ;
++}
++
+ bool irq_work_queue(struct irq_work *work);
+ bool irq_work_queue_on(struct irq_work *work, int cpu);
+
+diff --git a/kernel/irq_work.c b/kernel/irq_work.c
+index 03d09d779ee1..cbec10c32ead 100644
+--- a/kernel/irq_work.c
++++ b/kernel/irq_work.c
+@@ -211,7 +211,8 @@ void irq_work_single(void *arg)
+ flags &= ~IRQ_WORK_PENDING;
+ (void)atomic_cmpxchg(&work->flags, flags, flags & ~IRQ_WORK_BUSY);
+
+- if (!arch_irq_work_has_interrupt())
++ if ((IS_ENABLED(CONFIG_PREEMPT_RT) && !irq_work_is_hard(work)) ||
++ !arch_irq_work_has_interrupt())
+ rcuwait_wake_up(&work->irqwait);
+ }
+
+@@ -271,7 +272,8 @@ void irq_work_sync(struct irq_work *work)
+ lockdep_assert_irqs_enabled();
+ might_sleep();
+
+- if (!arch_irq_work_has_interrupt()) {
++ if ((IS_ENABLED(CONFIG_PREEMPT_RT) && !irq_work_is_hard(work)) ||
++ !arch_irq_work_has_interrupt()) {
+ rcuwait_wait_event(&work->irqwait, !irq_work_is_busy(work),
+ TASK_UNINTERRUPTIBLE);
+ return;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0310-eventfd-Make-signal-recursion-protection-a-task-bit.patch b/debian/patches-rt/0310-eventfd-Make-signal-recursion-protection-a-task-bit.patch
new file mode 100644
index 000000000..719316f76
--- /dev/null
+++ b/debian/patches-rt/0310-eventfd-Make-signal-recursion-protection-a-task-bit.patch
@@ -0,0 +1,150 @@
+From 17c41196e72418f94cf308a8b23fe478612a1610 Mon Sep 17 00:00:00 2001
+From: Thomas Gleixner <tglx@linutronix.de>
+Date: Fri, 17 Dec 2021 11:32:09 +0100
+Subject: [PATCH 310/323] eventfd: Make signal recursion protection a task bit
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Upstream commit b542e383d8c005f06a131e2b40d5889b812f19c6
+
+The recursion protection for eventfd_signal() is based on a per CPU
+variable and relies on the !RT semantics of spin_lock_irqsave() for
+protecting this per CPU variable. On RT kernels spin_lock_irqsave() neither
+disables preemption nor interrupts which allows the spin lock held section
+to be preempted. If the preempting task invokes eventfd_signal() as well,
+then the recursion warning triggers.
+
+Paolo suggested to protect the per CPU variable with a local lock, but
+that's heavyweight and actually not necessary. The goal of this protection
+is to prevent the task stack from overflowing, which can be achieved with a
+per task recursion protection as well.
+
+Replace the per CPU variable with a per task bit similar to other recursion
+protection bits like task_struct::in_page_owner. This works on both !RT and
+RT kernels and removes as a side effect the extra per CPU storage.
+
+No functional change for !RT kernels.
+
+Reported-by: Daniel Bristot de Oliveira <bristot@redhat.com>
+Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
+Tested-by: Daniel Bristot de Oliveira <bristot@redhat.com>
+Acked-by: Jason Wang <jasowang@redhat.com>
+Cc: Al Viro <viro@zeniv.linux.org.uk>
+Link: https://lore.kernel.org/r/87wnp9idso.ffs@tglx
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ fs/aio.c | 2 +-
+ fs/eventfd.c | 12 +++++-------
+ include/linux/eventfd.h | 11 +++++------
+ include/linux/sched.h | 4 ++++
+ 4 files changed, 15 insertions(+), 14 deletions(-)
+
+diff --git a/fs/aio.c b/fs/aio.c
+index c90e045a37bc..e1181dc37be1 100644
+--- a/fs/aio.c
++++ b/fs/aio.c
+@@ -1765,7 +1765,7 @@ static int aio_poll_wake(struct wait_queue_entry *wait, unsigned mode, int sync,
+ list_del_init(&req->wait.entry);
+ list_del(&iocb->ki_list);
+ iocb->ki_res.res = mangle_poll(mask);
+- if (iocb->ki_eventfd && eventfd_signal_count()) {
++ if (iocb->ki_eventfd && eventfd_signal_allowed()) {
+ iocb = NULL;
+ INIT_WORK(&req->work, aio_poll_put_work);
+ schedule_work(&req->work);
+diff --git a/fs/eventfd.c b/fs/eventfd.c
+index 3673eb8de035..ce9ca07d6c00 100644
+--- a/fs/eventfd.c
++++ b/fs/eventfd.c
+@@ -25,8 +25,6 @@
+ #include <linux/idr.h>
+ #include <linux/uio.h>
+
+-DEFINE_PER_CPU(int, eventfd_wake_count);
+-
+ static DEFINE_IDA(eventfd_ida);
+
+ struct eventfd_ctx {
+@@ -53,21 +51,21 @@ __u64 eventfd_signal_mask(struct eventfd_ctx *ctx, __u64 n, unsigned mask)
+ * Deadlock or stack overflow issues can happen if we recurse here
+ * through waitqueue wakeup handlers. If the caller users potentially
+ * nested waitqueues with custom wakeup handlers, then it should
+- * check eventfd_signal_count() before calling this function. If
+- * it returns true, the eventfd_signal() call should be deferred to a
++ * check eventfd_signal_allowed() before calling this function. If
++ * it returns false, the eventfd_signal() call should be deferred to a
+ * safe context.
+ */
+- if (WARN_ON_ONCE(this_cpu_read(eventfd_wake_count)))
++ if (WARN_ON_ONCE(current->in_eventfd_signal))
+ return 0;
+
+ spin_lock_irqsave(&ctx->wqh.lock, flags);
+- this_cpu_inc(eventfd_wake_count);
++ current->in_eventfd_signal = 1;
+ if (ULLONG_MAX - ctx->count < n)
+ n = ULLONG_MAX - ctx->count;
+ ctx->count += n;
+ if (waitqueue_active(&ctx->wqh))
+ wake_up_locked_poll(&ctx->wqh, EPOLLIN | mask);
+- this_cpu_dec(eventfd_wake_count);
++ current->in_eventfd_signal = 0;
+ spin_unlock_irqrestore(&ctx->wqh.lock, flags);
+
+ return n;
+diff --git a/include/linux/eventfd.h b/include/linux/eventfd.h
+index c1bd4883e2fa..842d223dfe17 100644
+--- a/include/linux/eventfd.h
++++ b/include/linux/eventfd.h
+@@ -14,6 +14,7 @@
+ #include <linux/err.h>
+ #include <linux/percpu-defs.h>
+ #include <linux/percpu.h>
++#include <linux/sched.h>
+
+ /*
+ * CAREFUL: Check include/uapi/asm-generic/fcntl.h when defining
+@@ -44,11 +45,9 @@ int eventfd_ctx_remove_wait_queue(struct eventfd_ctx *ctx, wait_queue_entry_t *w
+ __u64 *cnt);
+ void eventfd_ctx_do_read(struct eventfd_ctx *ctx, __u64 *cnt);
+
+-DECLARE_PER_CPU(int, eventfd_wake_count);
+-
+-static inline bool eventfd_signal_count(void)
++static inline bool eventfd_signal_allowed(void)
+ {
+- return this_cpu_read(eventfd_wake_count);
++ return !current->in_eventfd_signal;
+ }
+
+ #else /* CONFIG_EVENTFD */
+@@ -85,9 +84,9 @@ static inline int eventfd_ctx_remove_wait_queue(struct eventfd_ctx *ctx,
+ return -ENOSYS;
+ }
+
+-static inline bool eventfd_signal_count(void)
++static inline bool eventfd_signal_allowed(void)
+ {
+- return false;
++ return true;
+ }
+
+ static inline void eventfd_ctx_do_read(struct eventfd_ctx *ctx, __u64 *cnt)
+diff --git a/include/linux/sched.h b/include/linux/sched.h
+index a73528e8235d..13d4957189bb 100644
+--- a/include/linux/sched.h
++++ b/include/linux/sched.h
+@@ -848,6 +848,10 @@ struct task_struct {
+ /* Stalled due to lack of memory */
+ unsigned in_memstall:1;
+ #endif
++#ifdef CONFIG_EVENTFD
++ /* Recursion prevention for eventfd_signal() */
++ unsigned in_eventfd_signal:1;
++#endif
+
+ unsigned long atomic_flags; /* Flags requiring atomic access. */
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0311-stop_machine-Remove-this_cpu_ptr-from-print_stop_inf.patch b/debian/patches-rt/0311-stop_machine-Remove-this_cpu_ptr-from-print_stop_inf.patch
new file mode 100644
index 000000000..653909e6e
--- /dev/null
+++ b/debian/patches-rt/0311-stop_machine-Remove-this_cpu_ptr-from-print_stop_inf.patch
@@ -0,0 +1,38 @@
+From ce2910a453196930e7083aaf13240adcec160afd Mon Sep 17 00:00:00 2001
+From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Date: Fri, 17 Dec 2021 11:32:08 +0100
+Subject: [PATCH 311/323] stop_machine: Remove this_cpu_ptr() from
+ print_stop_info().
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+This aligns the patch ("stop_machine: Add function and caller debug
+info) with commit
+ a8b62fd085050 ("stop_machine: Add function and caller debug info")
+
+that was merged upstream and is slightly different.
+
+Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+---
+ kernel/stop_machine.c | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/kernel/stop_machine.c b/kernel/stop_machine.c
+index dbf585cf4b9f..971d8acceaec 100644
+--- a/kernel/stop_machine.c
++++ b/kernel/stop_machine.c
+@@ -51,7 +51,11 @@ static bool stop_machine_initialized = false;
+
+ void print_stop_info(const char *log_lvl, struct task_struct *task)
+ {
+- struct cpu_stopper *stopper = this_cpu_ptr(&cpu_stopper);
++ /*
++ * If @task is a stopper task, it cannot migrate and task_cpu() is
++ * stable.
++ */
++ struct cpu_stopper *stopper = per_cpu_ptr(&cpu_stopper, task_cpu(task));
+
+ if (task != stopper->thread)
+ return;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0312-aio-Fix-incorrect-usage-of-eventfd_signal_allowed.patch b/debian/patches-rt/0312-aio-Fix-incorrect-usage-of-eventfd_signal_allowed.patch
new file mode 100644
index 000000000..978a2de7d
--- /dev/null
+++ b/debian/patches-rt/0312-aio-Fix-incorrect-usage-of-eventfd_signal_allowed.patch
@@ -0,0 +1,38 @@
+From fd840c98e310adf2a03ee242969a9597a909a672 Mon Sep 17 00:00:00 2001
+From: Xie Yongji <xieyongji@bytedance.com>
+Date: Mon, 13 Sep 2021 19:19:28 +0800
+Subject: [PATCH 312/323] aio: Fix incorrect usage of eventfd_signal_allowed()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+commit 4b3749865374899e115aa8c48681709b086fe6d3 upstream.
+
+We should defer eventfd_signal() to the workqueue when
+eventfd_signal_allowed() return false rather than return
+true.
+
+Fixes: b542e383d8c0 ("eventfd: Make signal recursion protection a task bit")
+Signed-off-by: Xie Yongji <xieyongji@bytedance.com>
+Link: https://lore.kernel.org/r/20210913111928.98-1-xieyongji@bytedance.com
+Reviewed-by: Eric Biggers <ebiggers@google.com>
+Signed-off-by: Eric Biggers <ebiggers@google.com>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ fs/aio.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/fs/aio.c b/fs/aio.c
+index e1181dc37be1..e88fd9b58f3f 100644
+--- a/fs/aio.c
++++ b/fs/aio.c
+@@ -1765,7 +1765,7 @@ static int aio_poll_wake(struct wait_queue_entry *wait, unsigned mode, int sync,
+ list_del_init(&req->wait.entry);
+ list_del(&iocb->ki_list);
+ iocb->ki_res.res = mangle_poll(mask);
+- if (iocb->ki_eventfd && eventfd_signal_allowed()) {
++ if (iocb->ki_eventfd && !eventfd_signal_allowed()) {
+ iocb = NULL;
+ INIT_WORK(&req->work, aio_poll_put_work);
+ schedule_work(&req->work);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0313-rt-remove-extra-parameter-from-__trace_stack.patch b/debian/patches-rt/0313-rt-remove-extra-parameter-from-__trace_stack.patch
new file mode 100644
index 000000000..d688d1f6d
--- /dev/null
+++ b/debian/patches-rt/0313-rt-remove-extra-parameter-from-__trace_stack.patch
@@ -0,0 +1,41 @@
+From 38a85604759ae488654bab5c1cd9f23cd0d77ce0 Mon Sep 17 00:00:00 2001
+From: "Luis Claudio R. Goncalves" <lgoncalv@redhat.com>
+Date: Thu, 12 May 2022 23:25:33 -0300
+Subject: [PATCH 313/323] rt: remove extra parameter from __trace_stack()
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Fix the build error below while keeping the current PREEMPT_RT code:
+
+kernel/trace/trace_events_trigger.c: In function ‘stacktrace_trigger’:
+kernel/trace/trace_events_trigger.c:1227:3: error: too many arguments to function ‘__trace_stack’
+ __trace_stack(file->tr, flags, STACK_SKIP, preempt_count());
+ ^~~~~~~~~~~~~
+In file included from kernel/trace/trace_events_trigger.c:15:
+kernel/trace/trace.h:826:6: note: declared here
+ void __trace_stack(struct trace_array *tr, unsigned int trace_ctx, int skip);
+ ^~~~~~~~~~~~~
+
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ kernel/trace/trace_events_trigger.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kernel/trace/trace_events_trigger.c b/kernel/trace/trace_events_trigger.c
+index 4bc90965abb2..75fef9fcfd0f 100644
+--- a/kernel/trace/trace_events_trigger.c
++++ b/kernel/trace/trace_events_trigger.c
+@@ -1224,7 +1224,7 @@ stacktrace_trigger(struct event_trigger_data *data, void *rec,
+
+ if (file) {
+ local_save_flags(flags);
+- __trace_stack(file->tr, flags, STACK_SKIP, preempt_count());
++ __trace_stack(file->tr, STACK_SKIP, preempt_count());
+ } else
+ trace_dump_stack(STACK_SKIP);
+ }
+--
+2.43.0
+
diff --git a/debian/patches-rt/0314-locking-rtmutex-switch-to-EXPORT_SYMBOL-for-ww_mutex.patch b/debian/patches-rt/0314-locking-rtmutex-switch-to-EXPORT_SYMBOL-for-ww_mutex.patch
new file mode 100644
index 000000000..4cb76be05
--- /dev/null
+++ b/debian/patches-rt/0314-locking-rtmutex-switch-to-EXPORT_SYMBOL-for-ww_mutex.patch
@@ -0,0 +1,43 @@
+From a02b1841d962977869e02fff684931b53c8d4232 Mon Sep 17 00:00:00 2001
+From: Yajun Deng <yajun.deng@linux.dev>
+Date: Wed, 3 Aug 2022 14:24:30 +0800
+Subject: [PATCH 314/323] locking/rtmutex: switch to EXPORT_SYMBOL() for
+ ww_mutex_lock{,_interruptible}()
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+We can use EXPORT_SYMBOL() instead of EXPORT_SYMBOL_GPL() in
+ww_mutex_lock_interruptible() and ww_mutex_lock(). That match
+ww_mutex_unlock() well. And also good for 3rd kernel modules.
+
+Link: https://lore.kernel.org/r/20220803062430.1307312-1-yajun.deng@linux.dev
+Signed-off-by: Yajun Deng <yajun.deng@linux.dev>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ kernel/locking/rtmutex.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c
+index 31b374d36d04..b110fc57f733 100644
+--- a/kernel/locking/rtmutex.c
++++ b/kernel/locking/rtmutex.c
+@@ -2513,7 +2513,7 @@ ww_mutex_lock_interruptible(struct ww_mutex *lock, struct ww_acquire_ctx *ctx)
+
+ return ret;
+ }
+-EXPORT_SYMBOL_GPL(ww_mutex_lock_interruptible);
++EXPORT_SYMBOL(ww_mutex_lock_interruptible);
+
+ int __sched
+ ww_mutex_lock(struct ww_mutex *lock, struct ww_acquire_ctx *ctx)
+@@ -2533,7 +2533,7 @@ ww_mutex_lock(struct ww_mutex *lock, struct ww_acquire_ctx *ctx)
+
+ return ret;
+ }
+-EXPORT_SYMBOL_GPL(ww_mutex_lock);
++EXPORT_SYMBOL(ww_mutex_lock);
+
+ void __sched ww_mutex_unlock(struct ww_mutex *lock)
+ {
+--
+2.43.0
+
diff --git a/debian/patches-rt/0315-ftrace-Fix-improper-usage-of-__trace_stack-function.patch b/debian/patches-rt/0315-ftrace-Fix-improper-usage-of-__trace_stack-function.patch
new file mode 100644
index 000000000..9d6f96753
--- /dev/null
+++ b/debian/patches-rt/0315-ftrace-Fix-improper-usage-of-__trace_stack-function.patch
@@ -0,0 +1,50 @@
+From 54eb98b6f77e491259ac08a1172d36fd6ccf5284 Mon Sep 17 00:00:00 2001
+From: Anand Je Saipureddy <s.anandje1@gmail.com>
+Date: Sat, 23 Jul 2022 12:19:43 +0530
+Subject: [PATCH 315/323] ftrace: Fix improper usage of __trace_stack()
+ function.
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+In kernel/trace/trace_events_trigger.c --> stacktrace_trigger() -->
+__trace_stack() is not defined as per the function definition.
+
+With commit edbaaa13a660
+("tracing: Merge irqflags + preemt counter, add RT bits")
+the irqflags(flags) and preemption counter(preempt_count()) are
+now should be evaluated early by tracing_gen_ctx().
+
+This patch replaces the irqflags and preemption counter
+with tracing_gen_ctx().
+
+Fixes: 5e8446e3820c ("tracing: Dump stacktrace trigger to the corresponding instance")
+Link: https://lore.kernel.org/r/20220723064943.16532-1-s.anandje1@gmail.com
+Signed-off-by: Anand Je Saipureddy <s.anandje1@gmail.com>
+Reviewed-by: Corey Minyard <cminyard@mvista.com>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ kernel/trace/trace_events_trigger.c | 8 +++-----
+ 1 file changed, 3 insertions(+), 5 deletions(-)
+
+diff --git a/kernel/trace/trace_events_trigger.c b/kernel/trace/trace_events_trigger.c
+index 75fef9fcfd0f..3c6229f16e81 100644
+--- a/kernel/trace/trace_events_trigger.c
++++ b/kernel/trace/trace_events_trigger.c
+@@ -1220,12 +1220,10 @@ stacktrace_trigger(struct event_trigger_data *data, void *rec,
+ struct ring_buffer_event *event)
+ {
+ struct trace_event_file *file = data->private_data;
+- unsigned long flags;
+
+- if (file) {
+- local_save_flags(flags);
+- __trace_stack(file->tr, STACK_SKIP, preempt_count());
+- } else
++ if (file)
++ __trace_stack(file->tr, tracing_gen_ctx(), STACK_SKIP);
++ else
+ trace_dump_stack(STACK_SKIP);
+ }
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0316-rt-arm64-make-_TIF_WORK_MASK-bits-contiguous.patch b/debian/patches-rt/0316-rt-arm64-make-_TIF_WORK_MASK-bits-contiguous.patch
new file mode 100644
index 000000000..38664d0ff
--- /dev/null
+++ b/debian/patches-rt/0316-rt-arm64-make-_TIF_WORK_MASK-bits-contiguous.patch
@@ -0,0 +1,57 @@
+From 599ec4565144185541405febb71e81cf36cad908 Mon Sep 17 00:00:00 2001
+From: Salvatore Bonaccorso <carnil@debian.org>
+Date: Fri, 20 Jan 2023 19:23:03 +0100
+Subject: [PATCH 316/323] rt: arm64: make _TIF_WORK_MASK bits contiguous
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+As same as in commit 870d16757ba8 ("arm64: make _TIF_WORK_MASK bits
+contiguous") in mainline, we need to make the bits of _TIF_WORK_MASK to
+be contiguous in order to use this as an immediate argument to an AND
+instruction in entry.S.
+
+We shuffle these bits down-by-one keeping the existing contiguity after
+inserting TIF_NEED_RESCHED_LAZY in the preempt-rt patch series.
+
+Otherwise, omitting this change will result in a build failure as below:
+
+ arch/arm64/kernel/entry.S: Assembler messages:
+ arch/arm64/kernel/entry.S:763: Error: immediate out of range at operand 3 -- `and x2,x19,#((1<<1)|(1<<0)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<13)|(1<<7))'
+
+Reported-by: Vignesh Raghavendra <vigneshr@ti.com>
+Reported-by: Pavel Machek <pavel@denx.de>
+Cc: Mark Rutland <mark.rutland@arm.com>
+Cc: Catalin Marinas <catalin.marinas@arm.com>
+Cc: Will Deacon <will@kernel.org>
+Link: https://lore.kernel.org/lkml/40de655e-26f3-aa7b-f1ec-6877396a9f1e@ti.com/
+Signed-off-by: Salvatore Bonaccorso <carnil@debian.org>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ arch/arm64/include/asm/thread_info.h | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/arch/arm64/include/asm/thread_info.h b/arch/arm64/include/asm/thread_info.h
+index 6eb36a2126e8..2afd9ceb66c9 100644
+--- a/arch/arm64/include/asm/thread_info.h
++++ b/arch/arm64/include/asm/thread_info.h
+@@ -70,12 +70,12 @@ void arch_release_task_struct(struct task_struct *tsk);
+ #define TIF_FSCHECK 5 /* Check FS is USER_DS on return */
+ #define TIF_MTE_ASYNC_FAULT 6 /* MTE Asynchronous Tag Check Fault */
+ #define TIF_NOTIFY_SIGNAL 7 /* signal notifications exist */
+-#define TIF_SYSCALL_TRACE 8 /* syscall trace active */
+-#define TIF_SYSCALL_AUDIT 9 /* syscall auditing */
+-#define TIF_SYSCALL_TRACEPOINT 10 /* syscall tracepoint for ftrace */
+-#define TIF_SECCOMP 11 /* syscall secure computing */
+-#define TIF_SYSCALL_EMU 12 /* syscall emulation active */
+-#define TIF_NEED_RESCHED_LAZY 13
++#define TIF_NEED_RESCHED_LAZY 8
++#define TIF_SYSCALL_TRACE 9 /* syscall trace active */
++#define TIF_SYSCALL_AUDIT 10 /* syscall auditing */
++#define TIF_SYSCALL_TRACEPOINT 11 /* syscall tracepoint for ftrace */
++#define TIF_SECCOMP 12 /* syscall secure computing */
++#define TIF_SYSCALL_EMU 13 /* syscall emulation active */
+ #define TIF_MEMDIE 18 /* is terminating due to OOM killer */
+ #define TIF_FREEZE 19
+ #define TIF_RESTORE_SIGMASK 20
+--
+2.43.0
+
diff --git a/debian/patches-rt/0317-printk-ignore-consoles-without-write-callback.patch b/debian/patches-rt/0317-printk-ignore-consoles-without-write-callback.patch
new file mode 100644
index 000000000..a0942062a
--- /dev/null
+++ b/debian/patches-rt/0317-printk-ignore-consoles-without-write-callback.patch
@@ -0,0 +1,50 @@
+From 7efd125170f344b124a00390d8d7b714beac1698 Mon Sep 17 00:00:00 2001
+From: John Ogness <john.ogness@linutronix.de>
+Date: Fri, 17 Feb 2023 09:53:44 +0106
+Subject: [PATCH 317/323] printk: ignore consoles without write() callback
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The ttynull driver does not provide an implementation for the write()
+callback. This leads to a NULL pointer dereference in the related
+printing kthread, which assumes it can call that callback.
+
+Do not create kthreads for consoles that do not implement the write()
+callback. Also, for pr_flush(), ignore consoles that do not implement
+write() or write_atomic(), since there is no way those consoles can
+flush their output.
+
+Link: https://lore.kernel.org/lkml/1831554214.546921.1676479103702.JavaMail.zimbra@hale.at
+Reported-by: Michael Thalmeier <michael.thalmeier@hale.at>
+Signed-off-by: John Ogness <john.ogness@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ kernel/printk/printk.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
+index d2205872304d..64747c72fbea 100644
+--- a/kernel/printk/printk.c
++++ b/kernel/printk/printk.c
+@@ -2267,6 +2267,10 @@ static int printk_kthread_func(void *data)
+ /* Must be called within console_lock(). */
+ static void start_printk_kthread(struct console *con)
+ {
++ /* No need to start a printing thread if the console cannot print. */
++ if (!con->write)
++ return;
++
+ con->thread = kthread_run(printk_kthread_func, con,
+ "pr/%s%d", con->name, con->index);
+ if (IS_ERR(con->thread)) {
+@@ -3566,6 +3570,8 @@ bool pr_flush(int timeout_ms, bool reset_on_progress)
+ for_each_console(con) {
+ if (!(con->flags & CON_ENABLED))
+ continue;
++ if (!con->write && !con->write_atomic)
++ continue;
+ printk_seq = atomic64_read(&con->printk_seq);
+ if (printk_seq < seq)
+ diff += seq - printk_seq;
+--
+2.43.0
+
diff --git a/debian/patches-rt/0318-kernel-fork-set-wake_q_sleeper.next-NULL-again-in-du.patch b/debian/patches-rt/0318-kernel-fork-set-wake_q_sleeper.next-NULL-again-in-du.patch
new file mode 100644
index 000000000..21e81955f
--- /dev/null
+++ b/debian/patches-rt/0318-kernel-fork-set-wake_q_sleeper.next-NULL-again-in-du.patch
@@ -0,0 +1,61 @@
+From de3bf8893c5067f2c4d7ef3c57144c134e30ad7f Mon Sep 17 00:00:00 2001
+From: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
+Date: Mon, 20 Mar 2023 09:03:47 +0100
+Subject: [PATCH 318/323] kernel: fork: set wake_q_sleeper.next=NULL again in
+ dup_task_struct
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Without this we get system hangs within a couple of days.
+It's also reproducible in minutes with "stress-ng --exec 20".
+
+Example error in dmesg:
+INFO: task stress-ng:163916 blocked for more than 120 seconds.
+ Not tainted 5.10.168-rt83 #2
+"echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
+task:stress-ng state:D stack: 0 pid:163916 ppid: 72833 flags:0x00004000
+Call Trace:
+ __schedule+0x2bd/0x940
+ preempt_schedule_lock+0x23/0x50
+ rt_spin_lock_slowlock_locked+0x117/0x2c0
+ rt_spin_lock_slowlock+0x51/0x80
+ rt_write_lock+0x1e/0x1c0
+ do_exit+0x3ac/0xb20
+ do_group_exit+0x39/0xb0
+ get_signal+0x145/0x960
+ ? wake_up_new_task+0x21f/0x3c0
+ arch_do_signal_or_restart+0xf1/0x830
+ ? __x64_sys_futex+0x146/0x1d0
+ exit_to_user_mode_prepare+0x116/0x1a0
+ syscall_exit_to_user_mode+0x28/0x190
+ entry_SYSCALL_64_after_hwframe+0x61/0xc6
+RIP: 0033:0x7f738d9074a7
+RSP: 002b:00007ffdafda3cb0 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
+RAX: fffffffffffffe00 RBX: 00000000000000ca RCX: 00007f738d9074a7
+RDX: 0000000000028051 RSI: 0000000000000000 RDI: 00007f738be949d0
+RBP: 00007ffdafda3d88 R08: 0000000000000000 R09: 00007f738be94700
+R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000028051
+R13: 00007f738be949d0 R14: 00007ffdafda51e0 R15: 00007f738be94700
+
+Fixes: 1ba44dcf789d ("Merge tag 'v5.10.162' into v5.10-rt")
+Acked-by: Joe Korty <joe.korty@concurrent-rt.com>
+Signed-off-by: Steffen Dirkwinkel <s.dirkwinkel@beckhoff.com>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ kernel/fork.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/kernel/fork.c b/kernel/fork.c
+index dfefb6e7e082..5dc7abedf08f 100644
+--- a/kernel/fork.c
++++ b/kernel/fork.c
+@@ -960,6 +960,7 @@ static struct task_struct *dup_task_struct(struct task_struct *orig, int node)
+ tsk->splice_pipe = NULL;
+ tsk->task_frag.page = NULL;
+ tsk->wake_q.next = NULL;
++ tsk->wake_q_sleeper.next = NULL;
+ tsk->pf_io_worker = NULL;
+
+ account_kernel_stack(tsk, 1);
+--
+2.43.0
+
diff --git a/debian/patches-rt/0319-Revert-mm-page_alloc-fix-potential-deadlock-on-zonel.patch b/debian/patches-rt/0319-Revert-mm-page_alloc-fix-potential-deadlock-on-zonel.patch
new file mode 100644
index 000000000..1872b2fc8
--- /dev/null
+++ b/debian/patches-rt/0319-Revert-mm-page_alloc-fix-potential-deadlock-on-zonel.patch
@@ -0,0 +1,63 @@
+From 59fc9fa59a8a6eaa1456e7a3035b10152a9e6d94 Mon Sep 17 00:00:00 2001
+From: "Luis Claudio R. Goncalves" <lgoncalv@redhat.com>
+Date: Thu, 8 Jun 2023 19:47:25 -0300
+Subject: [PATCH 319/323] Revert "mm/page_alloc: fix potential deadlock on
+ zonelist_update_seqseqlock"
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+This reverts commit a992c387b41186ab968fd176ca26b432b05c53ec.
+
+The support for deferred printing was removed in v5.10-rc1-rt1 by commit
+9153e3c5cb0c9 ("printk: remove deferred printing") because:
+
+ Since printing occurs either atomically or from the printing
+ kthread, there is no need for any deferring or tracking possible
+ recursion paths. Remove all printk context tracking.
+
+Also, disabling interrupts in __build_all_zonelists() should produce warnings
+once that code path is hit.
+
+Fixes: a992c387b4118 ("mm/page_alloc: fix potential deadlock on zonelist_update_seq seqlock")
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ mm/page_alloc.c | 16 ----------------
+ 1 file changed, 16 deletions(-)
+
+diff --git a/mm/page_alloc.c b/mm/page_alloc.c
+index c5eb7d6844ae..39d1782b398f 100644
+--- a/mm/page_alloc.c
++++ b/mm/page_alloc.c
+@@ -6043,21 +6043,7 @@ static void __build_all_zonelists(void *data)
+ int nid;
+ int __maybe_unused cpu;
+ pg_data_t *self = data;
+- unsigned long flags;
+
+- /*
+- * Explicitly disable this CPU's interrupts before taking seqlock
+- * to prevent any IRQ handler from calling into the page allocator
+- * (e.g. GFP_ATOMIC) that could hit zonelist_iter_begin and livelock.
+- */
+- local_irq_save(flags);
+- /*
+- * Explicitly disable this CPU's synchronous printk() before taking
+- * seqlock to prevent any printk() from trying to hold port->lock, for
+- * tty_insert_flip_string_and_push_buffer() on other CPU might be
+- * calling kmalloc(GFP_ATOMIC | __GFP_NOWARN) with port->lock held.
+- */
+- printk_deferred_enter();
+ write_seqlock(&zonelist_update_seq);
+
+ #ifdef CONFIG_NUMA
+@@ -6092,8 +6078,6 @@ static void __build_all_zonelists(void *data)
+ }
+
+ write_sequnlock(&zonelist_update_seq);
+- printk_deferred_exit();
+- local_irq_restore(flags);
+ }
+
+ static noinline void __init
+--
+2.43.0
+
diff --git a/debian/patches-rt/0320-Revert-printk-declare-printk_deferred_-enter-safe-in.patch b/debian/patches-rt/0320-Revert-printk-declare-printk_deferred_-enter-safe-in.patch
new file mode 100644
index 000000000..b52e5aa42
--- /dev/null
+++ b/debian/patches-rt/0320-Revert-printk-declare-printk_deferred_-enter-safe-in.patch
@@ -0,0 +1,53 @@
+From f59d43768ad6d22235cbc9ec14f6307867aefefe Mon Sep 17 00:00:00 2001
+From: "Luis Claudio R. Goncalves" <lgoncalv@redhat.com>
+Date: Thu, 8 Jun 2023 19:47:25 -0300
+Subject: [PATCH 320/323] Revert "printk: declare
+ printk_deferred_{enter,safe}() in include/linux/printk.h"
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+This reverts commit 32232bcd4e5300e678718d5c29da4dfa07ade01e.
+
+The support for deferred printing was removed in v5.10-rc1-rt1 by commit
+9153e3c5cb0c9 ("printk: remove deferred printing") because:
+
+ Since printing occurs either atomically or from the printing
+ kthread, there is no need for any deferring or tracking possible
+ recursion paths. Remove all printk context tracking.
+
+Fixes: 32232bcd4e530 ("printk: declare printk_deferred_{enter,safe}() in include/linux/printk.h")
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ include/linux/printk.h | 19 -------------------
+ 1 file changed, 19 deletions(-)
+
+diff --git a/include/linux/printk.h b/include/linux/printk.h
+index 83c7734e9802..7e4352467d83 100644
+--- a/include/linux/printk.h
++++ b/include/linux/printk.h
+@@ -609,23 +609,4 @@ static inline void print_hex_dump_debug(const char *prefix_str, int prefix_type,
+ #define print_hex_dump_bytes(prefix_str, prefix_type, buf, len) \
+ print_hex_dump_debug(prefix_str, prefix_type, 16, 1, buf, len, true)
+
+-#ifdef CONFIG_PRINTK
+-extern void __printk_safe_enter(void);
+-extern void __printk_safe_exit(void);
+-/*
+- * The printk_deferred_enter/exit macros are available only as a hack for
+- * some code paths that need to defer all printk console printing. Interrupts
+- * must be disabled for the deferred duration.
+- */
+-#define printk_deferred_enter __printk_safe_enter
+-#define printk_deferred_exit __printk_safe_exit
+-#else
+-static inline void printk_deferred_enter(void)
+-{
+-}
+-static inline void printk_deferred_exit(void)
+-{
+-}
+-#endif
+-
+ #endif
+--
+2.43.0
+
diff --git a/debian/patches-rt/0321-arm64-signal-Use-ARCH_RT_DELAYS_SIGNAL_SEND.patch b/debian/patches-rt/0321-arm64-signal-Use-ARCH_RT_DELAYS_SIGNAL_SEND.patch
new file mode 100644
index 000000000..0c86c88b7
--- /dev/null
+++ b/debian/patches-rt/0321-arm64-signal-Use-ARCH_RT_DELAYS_SIGNAL_SEND.patch
@@ -0,0 +1,89 @@
+From 2074b2bfdbed96348cbb99a1a3920fa7a9e4df46 Mon Sep 17 00:00:00 2001
+From: Wang Yong <wang.yong12@zte.com.cn>
+Date: Tue, 12 Sep 2023 15:14:28 +0800
+Subject: [PATCH 321/323] arm64: signal: Use ARCH_RT_DELAYS_SIGNAL_SEND
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+The ltp test prompts the following bug information under the 5.10 kernel:
+BUG: sleeping function called from invalid context at kernel/locking/rtmutex.c:969
+in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 796, name: cat
+Preemption disabled at:
+[<ffffffe40f433980>] do_debug_exception+0x60/0x180
+CPU: 3 PID: 796 Comm: cat Not tainted 5.10.59-rt52-KERNEL_VERSION #38
+Hardware name: linux,dummy-virt (DT)
+Call trace:
+ dump_backtrace+0x0/0x198
+ show_stack+0x20/0x30
+ dump_stack+0xf0/0x13c
+ ___might_sleep+0x140/0x178
+ rt_spin_lock+0x30/0x90
+ force_sig_info_to_task+0x30/0xe0
+ force_sig_fault_to_task+0x54/0x78
+ force_sig_fault+0x1c/0x28
+ arm64_force_sig_fault+0x48/0x78
+ send_user_sigtrap+0x4c/0x80
+ brk_handler+0x3c/0x68
+ do_debug_exception+0xac/0x180
+ el0_dbg+0x34/0x58
+ el0_sync_handler+0x50/0xb8
+ el0_sync+0x180/0x1c0
+
+It has been fixed by
+0c34700de5e7 ("arm64: signal: Use ARCH_RT_DELAYS_SIGNAL_SEND.") in
+higher versions of the kernel. This patch needs to be compatible with 5.10.
+5.10 kernel does not have signal.h file, so adding signal.h file to
+define ARCH_RT_DELAYS_SIGNAL_SEND.
+
+Link: https://lore.kernel.org/r/202309121514283793475@zte.com.cn
+Signed-off-by: Wang Yong <wang.yong12@zte.com.cn>
+Cc: Xuexin Jiang <jiang.xuexin@zte.com.cn>
+Cc: Yang Yang <yang.yang29@zte.com.cn>
+Cc: Xiaokai Ran <ran.xiaokai@zte.com.cn>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ arch/arm64/include/asm/signal.h | 12 ++++++++++++
+ arch/arm64/kernel/signal.c | 9 +++++++++
+ 2 files changed, 21 insertions(+)
+ create mode 100644 arch/arm64/include/asm/signal.h
+
+diff --git a/arch/arm64/include/asm/signal.h b/arch/arm64/include/asm/signal.h
+new file mode 100644
+index 000000000000..0fb418cf4c17
+--- /dev/null
++++ b/arch/arm64/include/asm/signal.h
+@@ -0,0 +1,12 @@
++/* SPDX-License-Identifier: GPL-2.0 */
++#ifndef __ARM64_ASM_SIGNAL_H
++#define __ARM64_ASM_SIGNAL_H
++
++#include <uapi/asm/signal.h>
++#include <uapi/asm/siginfo.h>
++
++#if defined(CONFIG_PREEMPT_RT)
++#define ARCH_RT_DELAYS_SIGNAL_SEND
++#endif
++
++#endif
+diff --git a/arch/arm64/kernel/signal.c b/arch/arm64/kernel/signal.c
+index 94eed0dc3afc..5b08f55ec85d 100644
+--- a/arch/arm64/kernel/signal.c
++++ b/arch/arm64/kernel/signal.c
+@@ -929,6 +929,15 @@ asmlinkage void do_notify_resume(struct pt_regs *regs,
+ } else {
+ local_daif_restore(DAIF_PROCCTX);
+
++#ifdef ARCH_RT_DELAYS_SIGNAL_SEND
++ if (unlikely(current->forced_info.si_signo)) {
++ struct task_struct *t = current;
++
++ force_sig_info(&t->forced_info);
++ t->forced_info.si_signo = 0;
++ }
++#endif
++
+ if (thread_flags & _TIF_UPROBE)
+ uprobe_notify_resume(regs);
+
+--
+2.43.0
+
diff --git a/debian/patches-rt/0322-rt-mm-page_alloc-backport-missing-bits-from-__build_.patch b/debian/patches-rt/0322-rt-mm-page_alloc-backport-missing-bits-from-__build_.patch
new file mode 100644
index 000000000..8c13d7c63
--- /dev/null
+++ b/debian/patches-rt/0322-rt-mm-page_alloc-backport-missing-bits-from-__build_.patch
@@ -0,0 +1,49 @@
+From dbe86f5017c79c8abb6f42a6f0f1ad8d97dbae46 Mon Sep 17 00:00:00 2001
+From: "Luis Claudio R. Goncalves" <lgoncalv@redhat.com>
+Date: Wed, 20 Dec 2023 10:20:48 -0300
+Subject: [PATCH 322/323] rt: mm/page_alloc: backport missing bits from
+ __build_all_zonelists() fix
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+A while ago upstream landed commit a2ebb51575828 ("mm/page_alloc: use
+write_seqlock_irqsave() instead write_seqlock() + local_irq_save().")
+to fix a problem that had already been worked on v5.10-rt via commit
+7bdd3bd5143a4 ("Revert "mm/page_alloc: fix potential deadlock on
+zonelist_update_seqseqlock""). Sebastian pointed out it was important
+to backport the missing elements of a2ebb51575828 for code consistency.
+
+Fixes: 7bdd3bd5143a4 ("Revert "mm/page_alloc: fix potential deadlock on zonelist_update_seqseqlock"")
+Cc: stable-rt@vger.kernel.org
+Suggested-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ mm/page_alloc.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/mm/page_alloc.c b/mm/page_alloc.c
+index 39d1782b398f..cd1e8d0b2269 100644
+--- a/mm/page_alloc.c
++++ b/mm/page_alloc.c
+@@ -6043,8 +6043,9 @@ static void __build_all_zonelists(void *data)
+ int nid;
+ int __maybe_unused cpu;
+ pg_data_t *self = data;
++ unsigned long flags;
+
+- write_seqlock(&zonelist_update_seq);
++ write_seqlock_irqsave(&zonelist_update_seq, flags);
+
+ #ifdef CONFIG_NUMA
+ memset(node_load, 0, sizeof(node_load));
+@@ -6077,7 +6078,7 @@ static void __build_all_zonelists(void *data)
+ #endif
+ }
+
+- write_sequnlock(&zonelist_update_seq);
++ write_sequnlock_irqrestore(&zonelist_update_seq, flags);
+ }
+
+ static noinline void __init
+--
+2.43.0
+
diff --git a/debian/patches-rt/0323-Linux-5.10.204-rt100-REBASE.patch b/debian/patches-rt/0323-Linux-5.10.204-rt100-REBASE.patch
new file mode 100644
index 000000000..3173940fe
--- /dev/null
+++ b/debian/patches-rt/0323-Linux-5.10.204-rt100-REBASE.patch
@@ -0,0 +1,21 @@
+From 0a50987f60b76f392050410e35609fb4361dcca7 Mon Sep 17 00:00:00 2001
+From: "Luis Claudio R. Goncalves" <lgoncalv@redhat.com>
+Date: Fri, 22 Dec 2023 17:30:57 -0300
+Subject: [PATCH 323/323] Linux 5.10.204-rt100 REBASE
+Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/5.10/older/patches-5.10.204-rt100.tar.xz
+
+Signed-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com>
+---
+ localversion-rt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/localversion-rt b/localversion-rt
+index 21988f9ad53f..79d3e2b9f550 100644
+--- a/localversion-rt
++++ b/localversion-rt
+@@ -1 +1 @@
+--rt34
++-rt100
+--
+2.43.0
+
diff --git a/debian/patches-rt/series b/debian/patches-rt/series
new file mode 100644
index 000000000..70c05ce6b
--- /dev/null
+++ b/debian/patches-rt/series
@@ -0,0 +1,323 @@
+0001-z3fold-remove-preempt-disabled-sections-for-RT.patch
+0002-stop_machine-Add-function-and-caller-debug-info.patch
+0003-sched-Fix-balance_callback.patch
+0004-sched-hotplug-Ensure-only-per-cpu-kthreads-run-durin.patch
+0005-sched-core-Wait-for-tasks-being-pushed-away-on-hotpl.patch
+0006-workqueue-Manually-break-affinity-on-hotplug.patch
+0007-sched-hotplug-Consolidate-task-migration-on-CPU-unpl.patch
+0008-sched-Fix-hotplug-vs-CPU-bandwidth-control.patch
+0009-sched-Massage-set_cpus_allowed.patch
+0010-sched-Add-migrate_disable.patch
+0011-sched-Fix-migrate_disable-vs-set_cpus_allowed_ptr.patch
+0012-sched-core-Make-migrate-disable-and-CPU-hotplug-coop.patch
+0013-sched-rt-Use-cpumask_any-_distribute.patch
+0014-sched-rt-Use-the-full-cpumask-for-balancing.patch
+0015-sched-lockdep-Annotate-pi_lock-recursion.patch
+0016-sched-Fix-migrate_disable-vs-rt-dl-balancing.patch
+0017-sched-proc-Print-accurate-cpumask-vs-migrate_disable.patch
+0018-sched-Add-migrate_disable-tracepoints.patch
+0019-sched-Deny-self-issued-__set_cpus_allowed_ptr-when-m.patch
+0020-sched-Comment-affine_move_task.patch
+0021-sched-Unlock-the-rq-in-affine_move_task-error-path.patch
+0022-sched-Fix-migration_cpu_stop-WARN.patch
+0023-sched-core-Add-missing-completion-for-affine_move_ta.patch
+0024-mm-highmem-Un-EXPORT-__kmap_atomic_idx.patch
+0025-highmem-Remove-unused-functions.patch
+0026-fs-Remove-asm-kmap_types.h-includes.patch
+0027-sh-highmem-Remove-all-traces-of-unused-cruft.patch
+0028-asm-generic-Provide-kmap_size.h.patch
+0029-highmem-Provide-generic-variant-of-kmap_atomic.patch
+0030-highmem-Make-DEBUG_HIGHMEM-functional.patch
+0031-x86-mm-highmem-Use-generic-kmap-atomic-implementatio.patch
+0032-arc-mm-highmem-Use-generic-kmap-atomic-implementatio.patch
+0033-ARM-highmem-Switch-to-generic-kmap-atomic.patch
+0034-csky-mm-highmem-Switch-to-generic-kmap-atomic.patch
+0035-microblaze-mm-highmem-Switch-to-generic-kmap-atomic.patch
+0036-mips-mm-highmem-Switch-to-generic-kmap-atomic.patch
+0037-nds32-mm-highmem-Switch-to-generic-kmap-atomic.patch
+0038-powerpc-mm-highmem-Switch-to-generic-kmap-atomic.patch
+0039-sparc-mm-highmem-Switch-to-generic-kmap-atomic.patch
+0040-xtensa-mm-highmem-Switch-to-generic-kmap-atomic.patch
+0041-highmem-Get-rid-of-kmap_types.h.patch
+0042-mm-highmem-Remove-the-old-kmap_atomic-cruft.patch
+0043-io-mapping-Cleanup-atomic-iomap.patch
+0044-Documentation-io-mapping-Remove-outdated-blurb.patch
+0045-highmem-High-implementation-details-and-document-API.patch
+0046-sched-Make-migrate_disable-enable-independent-of-RT.patch
+0047-sched-highmem-Store-local-kmaps-in-task-struct.patch
+0048-mm-highmem-Provide-kmap_local.patch
+0049-io-mapping-Provide-iomap_local-variant.patch
+0050-x86-crashdump-32-Simplify-copy_oldmem_page.patch
+0051-mips-crashdump-Simplify-copy_oldmem_page.patch
+0052-ARM-mm-Replace-kmap_atomic_pfn.patch
+0053-highmem-Remove-kmap_atomic_pfn.patch
+0054-drm-ttm-Replace-kmap_atomic-usage.patch
+0055-drm-vmgfx-Replace-kmap_atomic.patch
+0056-highmem-Remove-kmap_atomic_prot.patch
+0057-drm-qxl-Replace-io_mapping_map_atomic_wc.patch
+0058-drm-nouveau-device-Replace-io_mapping_map_atomic_wc.patch
+0059-drm-i915-Replace-io_mapping_map_atomic_wc.patch
+0060-io-mapping-Remove-io_mapping_map_atomic_wc.patch
+0061-mm-highmem-Take-kmap_high_get-properly-into-account.patch
+0062-highmem-Don-t-disable-preemption-on-RT-in-kmap_atomi.patch
+0063-blk-mq-Don-t-complete-on-a-remote-CPU-in-force-threa.patch
+0064-blk-mq-Always-complete-remote-completions-requests-i.patch
+0065-blk-mq-Use-llist_head-for-blk_cpu_done.patch
+0066-lib-test_lockup-Minimum-fix-to-get-it-compiled-on-PR.patch
+0067-timers-Don-t-block-on-expiry_lock-for-TIMER_IRQSAFE.patch
+0068-kthread-Move-prio-affinite-change-into-the-newly-cre.patch
+0069-genirq-Move-prio-assignment-into-the-newly-created-t.patch
+0070-notifier-Make-atomic_notifiers-use-raw_spinlock.patch
+0071-rcu-Make-RCU_BOOST-default-on-CONFIG_PREEMPT_RT.patch
+0072-rcu-Unconditionally-use-rcuc-threads-on-PREEMPT_RT.patch
+0073-rcu-Enable-rcu_normal_after_boot-unconditionally-for.patch
+0074-doc-Update-RCU-s-requirements-page-about-the-PREEMPT.patch
+0075-doc-Use-CONFIG_PREEMPTION.patch
+0076-tracing-Merge-irqflags-preempt-counter.patch
+0077-tracing-Inline-tracing_gen_ctx_flags.patch
+0078-tracing-Use-in_serving_softirq-to-deduct-softirq-sta.patch
+0079-tracing-Remove-NULL-check-from-current-in-tracing_ge.patch
+0080-printk-inline-log_output-log_store-in-vprintk_store.patch
+0081-printk-remove-logbuf_lock-writer-protection-of-ringb.patch
+0082-printk-limit-second-loop-of-syslog_print_all.patch
+0083-printk-kmsg_dump-remove-unused-fields.patch
+0084-printk-refactor-kmsg_dump_get_buffer.patch
+0085-printk-consolidate-kmsg_dump_get_buffer-syslog_print.patch
+0086-printk-introduce-CONSOLE_LOG_MAX-for-improved-multi-.patch
+0087-printk-use-seqcount_latch-for-clear_seq.patch
+0088-printk-use-atomic64_t-for-devkmsg_user.seq.patch
+0089-printk-add-syslog_lock.patch
+0090-printk-introduce-a-kmsg_dump-iterator.patch
+0091-um-synchronize-kmsg_dumper.patch
+0092-printk-remove-logbuf_lock.patch
+0093-printk-kmsg_dump-remove-_nolock-variants.patch
+0094-printk-kmsg_dump-use-kmsg_dump_rewind.patch
+0095-printk-console-remove-unnecessary-safe-buffer-usage.patch
+0096-printk-track-limit-recursion.patch
+0097-printk-remove-safe-buffers.patch
+0098-printk-convert-syslog_lock-to-spin_lock.patch
+0099-console-add-write_atomic-interface.patch
+0100-serial-8250-implement-write_atomic.patch
+0101-printk-relocate-printk_delay-and-vprintk_default.patch
+0102-printk-combine-boot_delay_msec-into-printk_delay.patch
+0103-printk-change-console_seq-to-atomic64_t.patch
+0104-printk-introduce-kernel-sync-mode.patch
+0105-printk-move-console-printing-to-kthreads.patch
+0106-printk-remove-deferred-printing.patch
+0107-printk-add-console-handover.patch
+0108-printk-add-pr_flush.patch
+0109-cgroup-use-irqsave-in-cgroup_rstat_flush_locked.patch
+0110-mm-workingset-replace-IRQ-off-check-with-a-lockdep-a.patch
+0111-tpm-remove-tpm_dev_wq_lock.patch
+0112-shmem-Use-raw_spinlock_t-for-stat_lock.patch
+0113-net-Move-lockdep-where-it-belongs.patch
+0114-parisc-Remove-bogus-__IRQ_STAT-macro.patch
+0115-sh-Get-rid-of-nmi_count.patch
+0116-irqstat-Get-rid-of-nmi_count-and-__IRQ_STAT.patch
+0117-um-irqstat-Get-rid-of-the-duplicated-declarations.patch
+0118-ARM-irqstat-Get-rid-of-duplicated-declaration.patch
+0119-arm64-irqstat-Get-rid-of-duplicated-declaration.patch
+0120-asm-generic-irqstat-Add-optional-__nmi_count-member.patch
+0121-sh-irqstat-Use-the-generic-irq_cpustat_t.patch
+0122-irqstat-Move-declaration-into-asm-generic-hardirq.h.patch
+0123-preempt-Cleanup-the-macro-maze-a-bit.patch
+0124-softirq-Move-related-code-into-one-section.patch
+0125-sh-irq-Add-missing-closing-parentheses-in-arch_show_.patch
+0126-sched-cputime-Remove-symbol-exports-from-IRQ-time-ac.patch
+0127-s390-vtime-Use-the-generic-IRQ-entry-accounting.patch
+0128-sched-vtime-Consolidate-IRQ-time-accounting.patch
+0129-irqtime-Move-irqtime-entry-accounting-after-irq-offs.patch
+0130-irq-Call-tick_irq_enter-inside-HARDIRQ_OFFSET.patch
+0131-smp-Wake-ksoftirqd-on-PREEMPT_RT-instead-do_softirq.patch
+0132-tasklets-Replace-barrier-with-cpu_relax-in-tasklet_u.patch
+0133-tasklets-Use-static-inlines-for-stub-implementations.patch
+0134-tasklets-Provide-tasklet_disable_in_atomic.patch
+0135-tasklets-Use-spin-wait-in-tasklet_disable-temporaril.patch
+0136-tasklets-Replace-spin-wait-in-tasklet_unlock_wait.patch
+0137-tasklets-Replace-spin-wait-in-tasklet_kill.patch
+0138-tasklets-Prevent-tasklet_unlock_spin_wait-deadlock-o.patch
+0139-net-jme-Replace-link-change-tasklet-with-work.patch
+0140-net-sundance-Use-tasklet_disable_in_atomic.patch
+0141-ath9k-Use-tasklet_disable_in_atomic.patch
+0142-atm-eni-Use-tasklet_disable_in_atomic-in-the-send-ca.patch
+0143-PCI-hv-Use-tasklet_disable_in_atomic.patch
+0144-firewire-ohci-Use-tasklet_disable_in_atomic-where-re.patch
+0145-tasklets-Switch-tasklet_disable-to-the-sleep-wait-va.patch
+0146-softirq-Add-RT-specific-softirq-accounting.patch
+0147-irqtime-Make-accounting-correct-on-RT.patch
+0148-softirq-Move-various-protections-into-inline-helpers.patch
+0149-softirq-Make-softirq-control-and-processing-RT-aware.patch
+0150-tick-sched-Prevent-false-positive-softirq-pending-wa.patch
+0151-rcu-Prevent-false-positive-softirq-warning-on-RT.patch
+0152-chelsio-cxgb-Replace-the-workqueue-with-threaded-int.patch
+0153-chelsio-cxgb-Disable-the-card-on-error-in-threaded-i.patch
+0154-x86-fpu-Simplify-fpregs_-un-lock.patch
+0155-x86-fpu-Make-kernel-FPU-protection-RT-friendly.patch
+0156-locking-rtmutex-Remove-cruft.patch
+0157-locking-rtmutex-Remove-output-from-deadlock-detector.patch
+0158-locking-rtmutex-Move-rt_mutex_init-outside-of-CONFIG.patch
+0159-locking-rtmutex-Remove-rt_mutex_timed_lock.patch
+0160-locking-rtmutex-Handle-the-various-new-futex-race-co.patch
+0161-futex-Fix-bug-on-when-a-requeued-RT-task-times-out.patch
+0162-locking-rtmutex-Make-lock_killable-work.patch
+0163-locking-spinlock-Split-the-lock-types-header.patch
+0164-locking-rtmutex-Avoid-include-hell.patch
+0165-lockdep-Reduce-header-files-in-debug_locks.h.patch
+0166-locking-split-out-the-rbtree-definition.patch
+0167-locking-rtmutex-Provide-rt_mutex_slowlock_locked.patch
+0168-locking-rtmutex-export-lockdep-less-version-of-rt_mu.patch
+0169-sched-Add-saved_state-for-tasks-blocked-on-sleeping-.patch
+0170-locking-rtmutex-add-sleeping-lock-implementation.patch
+0171-locking-rtmutex-Allow-rt_mutex_trylock-on-PREEMPT_RT.patch
+0172-locking-rtmutex-add-mutex-implementation-based-on-rt.patch
+0173-locking-rtmutex-add-rwsem-implementation-based-on-rt.patch
+0174-locking-rtmutex-add-rwlock-implementation-based-on-r.patch
+0175-locking-rtmutex-wire-up-RT-s-locking.patch
+0176-locking-rtmutex-add-ww_mutex-addon-for-mutex-rt.patch
+0177-locking-rtmutex-Use-custom-scheduling-function-for-s.patch
+0178-signal-Revert-ptrace-preempt-magic.patch
+0179-preempt-Provide-preempt_-_-no-rt-variants.patch
+0180-mm-vmstat-Protect-per-cpu-variables-with-preempt-dis.patch
+0181-mm-memcontrol-Disable-preemption-in-__mod_memcg_lruv.patch
+0182-xfrm-Use-sequence-counter-with-associated-spinlock.patch
+0183-u64_stats-Disable-preemption-on-32bit-UP-SMP-with-RT.patch
+0184-fs-dcache-use-swait_queue-instead-of-waitqueue.patch
+0185-fs-dcache-disable-preemption-on-i_dir_seq-s-write-si.patch
+0186-net-Qdisc-use-a-seqlock-instead-seqcount.patch
+0187-net-Properly-annotate-the-try-lock-for-the-seqlock.patch
+0188-kconfig-Disable-config-options-which-are-not-RT-comp.patch
+0189-mm-Allow-only-SLUB-on-RT.patch
+0190-sched-Disable-CONFIG_RT_GROUP_SCHED-on-RT.patch
+0191-net-core-disable-NET_RX_BUSY_POLL-on-RT.patch
+0192-efi-Disable-runtime-services-on-RT.patch
+0193-efi-Allow-efi-runtime.patch
+0194-rt-Add-local-irq-locks.patch
+0195-signal-x86-Delay-calling-signals-in-atomic.patch
+0196-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch
+0197-Split-IRQ-off-and-zone-lock-while-freeing-pages-from.patch
+0198-mm-SLxB-change-list_lock-to-raw_spinlock_t.patch
+0199-mm-SLUB-delay-giving-back-empty-slubs-to-IRQ-enabled.patch
+0200-mm-slub-Always-flush-the-delayed-empty-slubs-in-flus.patch
+0201-mm-slub-Don-t-resize-the-location-tracking-cache-on-.patch
+0202-mm-page_alloc-Use-migrate_disable-in-drain_local_pag.patch
+0203-mm-page_alloc-rt-friendly-per-cpu-pages.patch
+0204-mm-slub-Make-object_map_lock-a-raw_spinlock_t.patch
+0205-slub-Enable-irqs-for-__GFP_WAIT.patch
+0206-slub-Disable-SLUB_CPU_PARTIAL.patch
+0207-mm-memcontrol-Provide-a-local_lock-for-per-CPU-memcg.patch
+0208-mm-memcontrol-Don-t-call-schedule_work_on-in-preempt.patch
+0209-mm-memcontrol-Replace-local_irq_disable-with-local-l.patch
+0210-mm-zsmalloc-copy-with-get_cpu_var-and-locking.patch
+0211-mm-zswap-Use-local-lock-to-protect-per-CPU-data.patch
+0212-x86-kvm-Require-const-tsc-for-RT.patch
+0213-wait.h-include-atomic.h.patch
+0214-sched-Limit-the-number-of-task-migrations-per-batch.patch
+0215-sched-Move-mmdrop-to-RCU-on-RT.patch
+0216-kernel-sched-move-stack-kprobe-clean-up-to-__put_tas.patch
+0217-sched-Do-not-account-rcu_preempt_depth-on-RT-in-migh.patch
+0218-sched-Disable-TTWU_QUEUE-on-RT.patch
+0219-softirq-Check-preemption-after-reenabling-interrupts.patch
+0220-softirq-Disable-softirq-stacks-for-RT.patch
+0221-net-core-use-local_bh_disable-in-netif_rx_ni.patch
+0222-pid.h-include-atomic.h.patch
+0223-ptrace-fix-ptrace-vs-tasklist_lock-race.patch
+0224-ptrace-fix-ptrace_unfreeze_traced-race-with-rt-lock.patch
+0225-kernel-sched-add-put-get-_cpu_light.patch
+0226-trace-Add-migrate-disabled-counter-to-tracing-output.patch
+0227-locking-don-t-check-for-__LINUX_SPINLOCK_TYPES_H-on-.patch
+0228-locking-Make-spinlock_t-and-rwlock_t-a-RCU-section-o.patch
+0229-mm-vmalloc-Another-preempt-disable-region-which-suck.patch
+0230-block-mq-do-not-invoke-preempt_disable.patch
+0231-md-raid5-Make-raid5_percpu-handling-RT-aware.patch
+0232-scsi-fcoe-Make-RT-aware.patch
+0233-sunrpc-Make-svc_xprt_do_enqueue-use-get_cpu_light.patch
+0234-rt-Introduce-cpu_chill.patch
+0235-fs-namespace-Use-cpu_chill-in-trylock-loops.patch
+0236-net-Use-skbufhead-with-raw-lock.patch
+0237-net-Dequeue-in-dev_cpu_dead-without-the-lock.patch
+0238-net-dev-always-take-qdisc-s-busylock-in-__dev_xmit_s.patch
+0239-irqwork-push-most-work-into-softirq-context.patch
+0240-x86-crypto-Reduce-preempt-disabled-regions.patch
+0241-crypto-Reduce-preempt-disabled-regions-more-algos.patch
+0242-crypto-limit-more-FPU-enabled-sections.patch
+0243-panic-skip-get_random_bytes-for-RT_FULL-in-init_oops.patch
+0244-x86-stackprotector-Avoid-random-pool-on-rt.patch
+0245-net-Remove-preemption-disabling-in-netif_rx.patch
+0246-lockdep-Make-it-RT-aware.patch
+0247-lockdep-selftest-Only-do-hardirq-context-test-for-ra.patch
+0248-lockdep-selftest-fix-warnings-due-to-missing-PREEMPT.patch
+0249-lockdep-disable-self-test.patch
+0250-drm-radeon-i915-Use-preempt_disable-enable_rt-where-.patch
+0251-drm-i915-Don-t-disable-interrupts-on-PREEMPT_RT-duri.patch
+0252-drm-i915-disable-tracing-on-RT.patch
+0253-drm-i915-skip-DRM_I915_LOW_LEVEL_TRACEPOINTS-with-NO.patch
+0254-drm-i915-gt-Only-disable-interrupts-for-the-timeline.patch
+0255-cpuset-Convert-callback_lock-to-raw_spinlock_t.patch
+0256-x86-Allow-to-enable-RT.patch
+0257-mm-scatterlist-Do-not-disable-irqs-on-RT.patch
+0258-sched-Add-support-for-lazy-preemption.patch
+0259-x86-entry-Use-should_resched-in-idtentry_exit_cond_r.patch
+0260-x86-Support-for-lazy-preemption.patch
+0261-arm-Add-support-for-lazy-preemption.patch
+0262-powerpc-Add-support-for-lazy-preemption.patch
+0263-arch-arm64-Add-lazy-preempt-support.patch
+0264-jump-label-disable-if-stop_machine-is-used.patch
+0265-leds-trigger-disable-CPU-trigger-on-RT.patch
+0266-tty-serial-omap-Make-the-locking-RT-aware.patch
+0267-tty-serial-pl011-Make-the-locking-work-on-RT.patch
+0268-ARM-enable-irq-in-translation-section-permission-fau.patch
+0269-genirq-update-irq_set_irqchip_state-documentation.patch
+0270-KVM-arm-arm64-downgrade-preempt_disable-d-region-to-.patch
+0271-arm64-fpsimd-Delay-freeing-memory-in-fpsimd_flush_th.patch
+0272-x86-Enable-RT-also-on-32bit.patch
+0273-ARM-Allow-to-enable-RT.patch
+0274-ARM64-Allow-to-enable-RT.patch
+0275-powerpc-traps-Use-PREEMPT_RT.patch
+0276-powerpc-pseries-iommu-Use-a-locallock-instead-local_.patch
+0277-powerpc-kvm-Disable-in-kernel-MPIC-emulation-for-PRE.patch
+0278-powerpc-stackprotector-work-around-stack-guard-init-.patch
+0279-powerpc-Avoid-recursive-header-includes.patch
+0280-POWERPC-Allow-to-enable-RT.patch
+0281-drivers-block-zram-Replace-bit-spinlocks-with-rtmute.patch
+0282-tpm_tis-fix-stall-after-iowrite-s.patch
+0283-signals-Allow-rt-tasks-to-cache-one-sigqueue-struct.patch
+0284-signal-Prevent-double-free-of-user-struct.patch
+0285-genirq-Disable-irqpoll-on-rt.patch
+0286-sysfs-Add-sys-kernel-realtime-entry.patch
+0287-Add-localversion-for-RT-release.patch
+0288-net-xfrm-Use-sequence-counter-with-associated-spinlo.patch
+0289-sched-Fix-migration_cpu_stop-requeueing.patch
+0290-sched-Simplify-migration_cpu_stop.patch
+0291-sched-Collate-affine_move_task-stoppers.patch
+0292-sched-Optimize-migration_cpu_stop.patch
+0293-sched-Fix-affine_move_task-self-concurrency.patch
+0294-sched-Simplify-set_affinity_pending-refcounts.patch
+0295-sched-Don-t-defer-CPU-pick-to-migration_cpu_stop.patch
+0296-printk-Enhance-the-condition-check-of-msleep-in-pr_f.patch
+0297-locking-rwsem-rt-Remove-might_sleep-in-__up_read.patch
+0298-mm-zsmalloc-Convert-zsmalloc_handle.lock-to-spinlock.patch
+0299-sched-Fix-get_push_task-vs-migrate_disable.patch
+0300-sched-Switch-wait_task_inactive-to-HRTIMER_MODE_REL_.patch
+0301-preempt-Move-preempt_enable_no_resched-to-the-RT-blo.patch
+0302-mm-Disable-NUMA_BALANCING_DEFAULT_ENABLED-and-TRANSP.patch
+0303-fscache-Use-only-one-fscache_object_cong_wait.patch
+0304-fscache-Use-only-one-fscache_object_cong_wait.patch
+0305-locking-Drop-might_resched-from-might_sleep_no_state.patch
+0306-drm-i915-gt-Queue-and-wait-for-the-irq_work-item.patch
+0307-irq_work-Allow-irq_work_sync-to-sleep-if-irq_work-no.patch
+0308-irq_work-Handle-some-irq_work-in-a-per-CPU-thread-on.patch
+0309-irq_work-Also-rcuwait-for-IRQ_WORK_HARD_IRQ-on-PREEM.patch
+0310-eventfd-Make-signal-recursion-protection-a-task-bit.patch
+0311-stop_machine-Remove-this_cpu_ptr-from-print_stop_inf.patch
+0312-aio-Fix-incorrect-usage-of-eventfd_signal_allowed.patch
+0313-rt-remove-extra-parameter-from-__trace_stack.patch
+0314-locking-rtmutex-switch-to-EXPORT_SYMBOL-for-ww_mutex.patch
+0315-ftrace-Fix-improper-usage-of-__trace_stack-function.patch
+0316-rt-arm64-make-_TIF_WORK_MASK-bits-contiguous.patch
+0317-printk-ignore-consoles-without-write-callback.patch
+0318-kernel-fork-set-wake_q_sleeper.next-NULL-again-in-du.patch
+0319-Revert-mm-page_alloc-fix-potential-deadlock-on-zonel.patch
+0320-Revert-printk-declare-printk_deferred_-enter-safe-in.patch
+0321-arm64-signal-Use-ARCH_RT_DELAYS_SIGNAL_SEND.patch
+0322-rt-mm-page_alloc-backport-missing-bits-from-__build_.patch
+0323-Linux-5.10.204-rt100-REBASE.patch
diff --git a/debian/patches/bugfix/all/bpftool-fix-version-string-in-recursive-builds.patch b/debian/patches/bugfix/all/bpftool-fix-version-string-in-recursive-builds.patch
new file mode 100644
index 000000000..3f2d75a6a
--- /dev/null
+++ b/debian/patches/bugfix/all/bpftool-fix-version-string-in-recursive-builds.patch
@@ -0,0 +1,30 @@
+From: Ben Hutchings <benh@debian.org>
+Date: Fri, 14 Aug 2020 00:43:54 +0100
+Subject: bpftool: Fix version string in recursive builds
+Forwarded: https://lore.kernel.org/bpf/20200813235837.GA497088@decadent.org.uk/T/#u
+
+When bpftool is built as part of a Debian package build, which itself
+uses make, "bpftool version" shows:
+
+ bpftool vmake[4]: Entering directory /build/linux-5.8/tools/bpf/bpftool 5.8.8.0 make[4]: Leaving directory /build/linux-5.8
+
+Although we pass the "--no-print-directory" option, this is overridden
+by the environment variable "MAKEFLAGS=w". Clear MAKEFLAGS for the
+"make kernelversion" command.
+
+I have no explanation for the doubled ".8" in the version string, but
+this seems to fix that as well.
+
+Signed-off-by: Ben Hutchings <benh@debian.org>
+---
+--- a/tools/bpf/bpftool/Makefile
++++ b/tools/bpf/bpftool/Makefile
+@@ -25,7 +25,7 @@ endif
+
+ LIBBPF = $(LIBBPF_PATH)libbpf.a
+
+-BPFTOOL_VERSION ?= $(shell make -rR --no-print-directory -sC ../../.. kernelversion)
++BPFTOOL_VERSION ?= $(shell MAKEFLAGS= make -rR --no-print-directory -sC ../../.. kernelversion)
+
+ $(LIBBPF): FORCE
+ $(if $(LIBBPF_OUTPUT),@mkdir -p $(LIBBPF_OUTPUT))
diff --git a/debian/patches/bugfix/all/cpupower-bump-soname-version.patch b/debian/patches/bugfix/all/cpupower-bump-soname-version.patch
new file mode 100644
index 000000000..7e5f52eaa
--- /dev/null
+++ b/debian/patches/bugfix/all/cpupower-bump-soname-version.patch
@@ -0,0 +1,27 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Thu, 9 Jun 2016 23:35:08 +0100
+Subject: cpupower: Bump soname version
+Forwarded: http://mid.gmane.org/20160610005619.GQ7555@decadent.org.uk
+
+Several functions in the libcpupower API are renamed or removed in
+Linux 4.7. This is an backward-incompatible ABI change, so the
+library soname should change from libcpupower.so.0 to
+libcpupower.so.1.
+
+Fixes: ac5a181d065d ("cpupower: Add cpuidle parts into library")
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ tools/power/cpupower/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/tools/power/cpupower/Makefile
++++ b/tools/power/cpupower/Makefile
+@@ -53,7 +53,7 @@ DESTDIR ?=
+
+ VERSION:= $(shell ./utils/version-gen.sh)
+ LIB_MAJ= 0.0.1
+-LIB_MIN= 0
++LIB_MIN= 1
+
+ PACKAGE = cpupower
+ PACKAGE_BUGREPORT = linux-pm@vger.kernel.org
diff --git a/debian/patches/bugfix/all/cpupower-fix-checks-for-cpu-existence.patch b/debian/patches/bugfix/all/cpupower-fix-checks-for-cpu-existence.patch
new file mode 100644
index 000000000..5cce9b76a
--- /dev/null
+++ b/debian/patches/bugfix/all/cpupower-fix-checks-for-cpu-existence.patch
@@ -0,0 +1,49 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Thu, 03 Nov 2016 15:25:26 -0600
+Subject: cpupower: Fix checks for CPU existence
+Forwarded: https://marc.info/?l=linux-pm&m=149248268214265
+
+Calls to cpufreq_cpu_exists(cpu) were converted to
+cpupower_is_cpu_online(cpu) when libcpupower was introduced and the
+former function was deleted. However, cpupower_is_cpu_online() does
+not distinguish physically absent and offline CPUs, and does not set
+errno.
+
+cpufreq-set has already been fixed (commit c25badc9ceb6).
+
+In cpufreq-bench, which prints an error message for offline CPUs,
+properly distinguish and report the zero and negative cases.
+
+Fixes: ac5a181d065d ("cpupower: Add cpuidle parts into library")
+Fixes: 53d1cd6b125f ("cpupowerutils: bench - Fix cpu online check")
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+[carnil: Update/Refresh patch for 4.14.17: The issue with the
+incorrect check has been fixed with upstream commit 53d1cd6b125f.
+Keep in the patch the distinction and report for the zero and
+negative cases.]
+---
+--- a/tools/power/cpupower/bench/system.c
++++ b/tools/power/cpupower/bench/system.c
+@@ -58,12 +58,19 @@ long long int get_time()
+
+ int set_cpufreq_governor(char *governor, unsigned int cpu)
+ {
++ int rc;
+
+ dprintf("set %s as cpufreq governor\n", governor);
+
+- if (cpupower_is_cpu_online(cpu) != 1) {
+- perror("cpufreq_cpu_exists");
+- fprintf(stderr, "error: cpu %u does not exist\n", cpu);
++ rc = cpupower_is_cpu_online(cpu);
++ if (rc != 1) {
++ if (rc < 0)
++ fprintf(stderr, "cpupower_is_cpu_online: %s\n",
++ strerror(-rc));
++ else
++ fprintf(stderr,
++ "error: cpu %u is offline or does not exist\n",
++ cpu);
+ return -1;
+ }
+
diff --git a/debian/patches/bugfix/all/disable-some-marvell-phys.patch b/debian/patches/bugfix/all/disable-some-marvell-phys.patch
new file mode 100644
index 000000000..31fd6bf14
--- /dev/null
+++ b/debian/patches/bugfix/all/disable-some-marvell-phys.patch
@@ -0,0 +1,91 @@
+From: Ian Campbell <ijc@hellion.org.uk>
+Subject: phy/marvell: disable 4-port phys
+Date: Wed, 20 Nov 2013 08:30:14 +0000
+Bug-Debian: https://bugs.debian.org/723177
+Forwarded: http://thread.gmane.org/gmane.linux.debian.devel.bugs.general/1107774/
+
+The Marvell PHY was originally disabled because it can cause networking
+failures on some systems. According to Lennert Buytenhek this is because some
+of the variants added did not share the same register layout. Since the known
+cases are all 4-ports disable those variants (indicated by a 4 in the
+penultimate position of the model name) until they can be audited for
+correctness.
+
+[bwh: Also #if-out the init functions for these PHYs to avoid
+ compiler warnings]
+
+--- a/drivers/net/phy/marvell.c
++++ b/drivers/net/phy/marvell.c
+@@ -1006,6 +1006,7 @@ static int m88e1118_config_init(struct p
+ return genphy_soft_reset(phydev);
+ }
+
++#if 0
+ static int m88e1149_config_init(struct phy_device *phydev)
+ {
+ int err;
+@@ -1031,7 +1032,9 @@ static int m88e1149_config_init(struct p
+
+ return genphy_soft_reset(phydev);
+ }
++#endif
+
++#if 0
+ static int m88e1145_config_init_rgmii(struct phy_device *phydev)
+ {
+ int err;
+@@ -1106,6 +1109,7 @@ static int m88e1145_config_init(struct p
+
+ return 0;
+ }
++#endif
+
+ static int m88e1540_get_fld(struct phy_device *phydev, u8 *msecs)
+ {
+@@ -2272,6 +2276,7 @@ static struct phy_driver marvell_drivers
+ .get_strings = marvell_get_strings,
+ .get_stats = marvell_get_stats,
+ },
++#if 0
+ {
+ .phy_id = MARVELL_PHY_ID_88E1145,
+ .phy_id_mask = MARVELL_PHY_ID_MASK,
+@@ -2293,6 +2298,8 @@ static struct phy_driver marvell_drivers
+ .get_tunable = m88e1111_get_tunable,
+ .set_tunable = m88e1111_set_tunable,
+ },
++#endif
++#if 0
+ {
+ .phy_id = MARVELL_PHY_ID_88E1149R,
+ .phy_id_mask = MARVELL_PHY_ID_MASK,
+@@ -2311,6 +2318,8 @@ static struct phy_driver marvell_drivers
+ .get_strings = marvell_get_strings,
+ .get_stats = marvell_get_stats,
+ },
++#endif
++#if 0
+ {
+ .phy_id = MARVELL_PHY_ID_88E1240,
+ .phy_id_mask = MARVELL_PHY_ID_MASK,
+@@ -2329,6 +2338,7 @@ static struct phy_driver marvell_drivers
+ .get_strings = marvell_get_strings,
+ .get_stats = marvell_get_stats,
+ },
++#endif
+ {
+ .phy_id = MARVELL_PHY_ID_88E1116R,
+ .phy_id_mask = MARVELL_PHY_ID_MASK,
+@@ -2469,9 +2479,9 @@ static struct mdio_device_id __maybe_unu
+ { MARVELL_PHY_ID_88E1111, MARVELL_PHY_ID_MASK },
+ { MARVELL_PHY_ID_88E1118, MARVELL_PHY_ID_MASK },
+ { MARVELL_PHY_ID_88E1121R, MARVELL_PHY_ID_MASK },
+- { MARVELL_PHY_ID_88E1145, MARVELL_PHY_ID_MASK },
+- { MARVELL_PHY_ID_88E1149R, MARVELL_PHY_ID_MASK },
+- { MARVELL_PHY_ID_88E1240, MARVELL_PHY_ID_MASK },
++/* { MARVELL_PHY_ID_88E1145, MARVELL_PHY_ID_MASK }, */
++/* { MARVELL_PHY_ID_88E1149R, MARVELL_PHY_ID_MASK }, */
++/* { MARVELL_PHY_ID_88E1240, MARVELL_PHY_ID_MASK }, */
+ { MARVELL_PHY_ID_88E1318S, MARVELL_PHY_ID_MASK },
+ { MARVELL_PHY_ID_88E1116R, MARVELL_PHY_ID_MASK },
+ { MARVELL_PHY_ID_88E1510, MARVELL_PHY_ID_MASK },
diff --git a/debian/patches/bugfix/all/firmware-remove-redundant-log-messages-from-drivers.patch b/debian/patches/bugfix/all/firmware-remove-redundant-log-messages-from-drivers.patch
new file mode 100644
index 000000000..8ee5acc89
--- /dev/null
+++ b/debian/patches/bugfix/all/firmware-remove-redundant-log-messages-from-drivers.patch
@@ -0,0 +1,2557 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: firmware: Remove redundant log messages from drivers
+Date: Sun, 09 Dec 2012 16:40:31 +0000
+Forwarded: no
+
+Now that firmware_class logs every success and failure consistently,
+many other log messages can be removed from drivers.
+
+This will probably need to be split up into multiple patches prior to
+upstream submission.
+
+--- a/arch/x86/kernel/cpu/microcode/amd.c
++++ b/arch/x86/kernel/cpu/microcode/amd.c
+@@ -901,10 +901,8 @@ static enum ucode_state request_microcod
+ if (c->x86 >= 0x15)
+ snprintf(fw_name, sizeof(fw_name), "amd-ucode/microcode_amd_fam%.2xh.bin", c->x86);
+
+- if (request_firmware_direct(&fw, (const char *)fw_name, device)) {
+- pr_debug("failed to load file %s\n", fw_name);
++ if (request_firmware_direct(&fw, (const char *)fw_name, device))
+ goto out;
+- }
+
+ ret = UCODE_ERROR;
+ if (!verify_container(fw->data, fw->size, false))
+--- a/drivers/atm/ambassador.c
++++ b/drivers/atm/ambassador.c
+@@ -1914,10 +1914,8 @@ static int ucode_init(loader_block *lb,
+ int res;
+
+ res = request_ihex_firmware(&fw, "atmsar11.fw", &dev->pci_dev->dev);
+- if (res) {
+- PRINTK (KERN_ERR, "Cannot load microcode data");
++ if (res)
+ return res;
+- }
+
+ /* First record contains just the start address */
+ rec = (const struct ihex_binrec *)fw->data;
+--- a/drivers/atm/fore200e.c
++++ b/drivers/atm/fore200e.c
+@@ -2400,10 +2400,9 @@ static int fore200e_load_and_start_fw(st
+ int err;
+
+ sprintf(buf, "%s%s", fore200e->bus->proc_name, FW_EXT);
+- if ((err = request_firmware(&firmware, buf, fore200e->dev)) < 0) {
+- printk(FORE200E "problem loading firmware image %s\n", fore200e->bus->model_name);
++ err = request_firmware(&firmware, buf, fore200e->dev);
++ if (err)
+ return err;
+- }
+
+ fw_data = (const __le32 *)firmware->data;
+ fw_size = firmware->size / sizeof(u32);
+--- a/drivers/bluetooth/ath3k.c
++++ b/drivers/bluetooth/ath3k.c
+@@ -382,10 +382,8 @@ static int ath3k_load_patch(struct usb_d
+ le32_to_cpu(fw_version.rom_version));
+
+ ret = request_firmware(&firmware, filename, &udev->dev);
+- if (ret < 0) {
+- BT_ERR("Patch file not found %s", filename);
++ if (ret)
+ return ret;
+- }
+
+ pt_rom_version = get_unaligned_le32(firmware->data +
+ firmware->size - 8);
+@@ -445,10 +443,8 @@ static int ath3k_load_syscfg(struct usb_
+ le32_to_cpu(fw_version.rom_version), clk_value, ".dfu");
+
+ ret = request_firmware(&firmware, filename, &udev->dev);
+- if (ret < 0) {
+- BT_ERR("Configuration file not found %s", filename);
++ if (ret)
+ return ret;
+- }
+
+ ret = ath3k_load_fwfile(udev, firmware);
+ release_firmware(firmware);
+--- a/drivers/bluetooth/bcm203x.c
++++ b/drivers/bluetooth/bcm203x.c
+@@ -174,7 +174,6 @@ static int bcm203x_probe(struct usb_inte
+ return -ENOMEM;
+
+ if (request_firmware(&firmware, "BCM2033-MD.hex", &udev->dev) < 0) {
+- BT_ERR("Mini driver request failed");
+ usb_free_urb(data->urb);
+ return -EIO;
+ }
+@@ -199,7 +198,6 @@ static int bcm203x_probe(struct usb_inte
+ release_firmware(firmware);
+
+ if (request_firmware(&firmware, "BCM2033-FW.bin", &udev->dev) < 0) {
+- BT_ERR("Firmware request failed");
+ usb_free_urb(data->urb);
+ kfree(data->buffer);
+ return -EIO;
+--- a/drivers/bluetooth/bfusb.c
++++ b/drivers/bluetooth/bfusb.c
+@@ -636,10 +636,8 @@ static int bfusb_probe(struct usb_interf
+ skb_queue_head_init(&data->pending_q);
+ skb_queue_head_init(&data->completed_q);
+
+- if (request_firmware(&firmware, "bfubase.frm", &udev->dev) < 0) {
+- BT_ERR("Firmware request failed");
++ if (request_firmware(&firmware, "bfubase.frm", &udev->dev))
+ goto done;
+- }
+
+ BT_DBG("firmware data %p size %zu", firmware->data, firmware->size);
+
+--- a/drivers/bluetooth/bt3c_cs.c
++++ b/drivers/bluetooth/bt3c_cs.c
+@@ -569,10 +569,8 @@ static int bt3c_open(struct bt3c_info *i
+
+ /* Load firmware */
+ err = request_firmware(&firmware, "BT3CPCC.bin", &info->p_dev->dev);
+- if (err < 0) {
+- BT_ERR("Firmware request failed");
++ if (err)
+ goto error;
+- }
+
+ err = bt3c_load_firmware(info, firmware->data, firmware->size);
+
+--- a/drivers/bluetooth/btmrvl_sdio.c
++++ b/drivers/bluetooth/btmrvl_sdio.c
+@@ -483,8 +483,6 @@ static int btmrvl_sdio_download_helper(s
+ ret = request_firmware(&fw_helper, card->helper,
+ &card->func->dev);
+ if ((ret < 0) || !fw_helper) {
+- BT_ERR("request_firmware(helper) failed, error code = %d",
+- ret);
+ ret = -ENOENT;
+ goto done;
+ }
+@@ -583,8 +581,6 @@ static int btmrvl_sdio_download_fw_w_hel
+ ret = request_firmware(&fw_firmware, card->firmware,
+ &card->func->dev);
+ if ((ret < 0) || !fw_firmware) {
+- BT_ERR("request_firmware(firmware) failed, error code = %d",
+- ret);
+ ret = -ENOENT;
+ goto done;
+ }
+--- a/drivers/char/dsp56k.c
++++ b/drivers/char/dsp56k.c
+@@ -140,11 +140,8 @@ static int dsp56k_upload(u_char __user *
+ }
+ err = request_firmware(&fw, fw_name, &pdev->dev);
+ platform_device_unregister(pdev);
+- if (err) {
+- printk(KERN_ERR "Failed to load image \"%s\" err %d\n",
+- fw_name, err);
++ if (err)
+ return err;
+- }
+ if (fw->size % 3) {
+ printk(KERN_ERR "Bogus length %d in image \"%s\"\n",
+ fw->size, fw_name);
+--- a/drivers/dma/imx-sdma.c
++++ b/drivers/dma/imx-sdma.c
+@@ -1733,11 +1733,8 @@ static void sdma_load_firmware(const str
+ const struct sdma_script_start_addrs *addr;
+ unsigned short *ram_code;
+
+- if (!fw) {
+- dev_info(sdma->dev, "external firmware not found, using ROM firmware\n");
+- /* In this case we just use the ROM firmware. */
++ if (!fw)
+ return;
+- }
+
+ if (fw->size < sizeof(*header))
+ goto err_firmware;
+--- a/drivers/gpu/drm/mga/mga_warp.c
++++ b/drivers/gpu/drm/mga/mga_warp.c
+@@ -77,11 +77,8 @@ int mga_warp_install_microcode(drm_mga_p
+ }
+ rc = request_ihex_firmware(&fw, firmware_name, &pdev->dev);
+ platform_device_unregister(pdev);
+- if (rc) {
+- DRM_ERROR("mga: Failed to load microcode \"%s\"\n",
+- firmware_name);
++ if (rc)
+ return rc;
+- }
+
+ size = 0;
+ where = 0;
+--- a/drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
++++ b/drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.c
+@@ -2445,10 +2445,8 @@ gf100_gr_load_fw(struct gf100_gr *gr, co
+ if (ret) {
+ snprintf(f, sizeof(f), "nouveau/%s", name);
+ ret = request_firmware(&fw, f, device->dev);
+- if (ret) {
+- nvkm_error(subdev, "failed to load %s\n", name);
++ if (ret)
+ return ret;
+- }
+ }
+
+ blob->size = fw->size;
+--- a/drivers/gpu/drm/r128/r128_cce.c
++++ b/drivers/gpu/drm/r128/r128_cce.c
+@@ -162,11 +162,8 @@ static int r128_cce_load_microcode(drm_r
+ }
+ rc = request_firmware(&fw, FIRMWARE_NAME, &pdev->dev);
+ platform_device_unregister(pdev);
+- if (rc) {
+- pr_err("r128_cce: Failed to load firmware \"%s\"\n",
+- FIRMWARE_NAME);
++ if (rc)
+ return rc;
+- }
+
+ if (fw->size != 256 * 8) {
+ pr_err("r128_cce: Bogus length %zu in firmware \"%s\"\n",
+--- a/drivers/gpu/drm/radeon/ni.c
++++ b/drivers/gpu/drm/radeon/ni.c
+@@ -833,9 +833,6 @@ int ni_init_microcode(struct radeon_devi
+
+ out:
+ if (err) {
+- if (err != -EINVAL)
+- pr_err("ni_cp: Failed to load firmware \"%s\"\n",
+- fw_name);
+ release_firmware(rdev->pfp_fw);
+ rdev->pfp_fw = NULL;
+ release_firmware(rdev->me_fw);
+--- a/drivers/gpu/drm/radeon/r100.c
++++ b/drivers/gpu/drm/radeon/r100.c
+@@ -1047,9 +1047,7 @@ static int r100_cp_init_microcode(struct
+ }
+
+ err = request_firmware(&rdev->me_fw, fw_name, rdev->dev);
+- if (err) {
+- pr_err("radeon_cp: Failed to load firmware \"%s\"\n", fw_name);
+- } else if (rdev->me_fw->size % 8) {
++ if (err == 0 && rdev->me_fw->size % 8) {
+ pr_err("radeon_cp: Bogus length %zu in firmware \"%s\"\n",
+ rdev->me_fw->size, fw_name);
+ err = -EINVAL;
+--- a/drivers/gpu/drm/radeon/r600.c
++++ b/drivers/gpu/drm/radeon/r600.c
+@@ -2599,9 +2599,6 @@ int r600_init_microcode(struct radeon_de
+
+ out:
+ if (err) {
+- if (err != -EINVAL)
+- pr_err("r600_cp: Failed to load firmware \"%s\"\n",
+- fw_name);
+ release_firmware(rdev->pfp_fw);
+ rdev->pfp_fw = NULL;
+ release_firmware(rdev->me_fw);
+--- a/drivers/infiniband/hw/qib/qib_sd7220.c
++++ b/drivers/infiniband/hw/qib/qib_sd7220.c
+@@ -406,10 +406,8 @@ int qib_sd7220_init(struct qib_devdata *
+ }
+
+ ret = request_firmware(&fw, SD7220_FW_NAME, &dd->pcidev->dev);
+- if (ret) {
+- qib_dev_err(dd, "Failed to load IB SERDES image\n");
++ if (ret)
+ goto done;
+- }
+
+ /* Substitute our deduced value for was_reset */
+ ret = qib_ibsd_ucode_loaded(dd->pport, fw);
+--- a/drivers/input/touchscreen/atmel_mxt_ts.c
++++ b/drivers/input/touchscreen/atmel_mxt_ts.c
+@@ -2827,10 +2827,8 @@ static int mxt_load_fw(struct device *de
+ int ret;
+
+ ret = request_firmware(&fw, fn, dev);
+- if (ret) {
+- dev_err(dev, "Unable to open firmware %s\n", fn);
++ if (ret)
+ return ret;
+- }
+
+ /* Check for incorrect enc file */
+ ret = mxt_check_firmware_format(dev, fw);
+--- a/drivers/isdn/hardware/mISDN/speedfax.c
++++ b/drivers/isdn/hardware/mISDN/speedfax.c
+@@ -379,11 +379,8 @@ setup_instance(struct sfax_hw *card)
+ card->isar.owner = THIS_MODULE;
+
+ err = request_firmware(&firmware, "isdn/ISAR.BIN", &card->pdev->dev);
+- if (err < 0) {
+- pr_info("%s: firmware request failed %d\n",
+- card->name, err);
++ if (err)
+ goto error_fw;
+- }
+ if (debug & DEBUG_HW)
+ pr_notice("%s: got firmware %zu bytes\n",
+ card->name, firmware->size);
+--- a/drivers/media/common/siano/smscoreapi.c
++++ b/drivers/media/common/siano/smscoreapi.c
+@@ -1156,10 +1156,8 @@ static int smscore_load_firmware_from_fi
+ return -EINVAL;
+
+ rc = request_firmware(&fw, fw_filename, coredev->device);
+- if (rc < 0) {
+- pr_err("failed to open firmware file '%s'\n", fw_filename);
++ if (rc < 0)
+ return rc;
+- }
+ pr_debug("read fw %s, buffer size=0x%zx\n", fw_filename, fw->size);
+ fw_buf = kmalloc(ALIGN(fw->size + sizeof(struct sms_firmware),
+ SMS_ALLOC_ALIGNMENT), GFP_KERNEL | coredev->gfp_buf_flags);
+--- a/drivers/media/dvb-frontends/af9013.c
++++ b/drivers/media/dvb-frontends/af9013.c
+@@ -1049,14 +1049,8 @@ static int af9013_download_firmware(stru
+
+ /* Request the firmware, will block and timeout */
+ ret = request_firmware(&firmware, name, &client->dev);
+- if (ret) {
+- dev_info(&client->dev, "firmware file '%s' not found %d\n",
+- name, ret);
++ if (ret)
+ goto err;
+- }
+-
+- dev_info(&client->dev, "downloading firmware from file '%s'\n",
+- name);
+
+ /* Write firmware checksum & size */
+ for (i = 0; i < firmware->size; i++)
+--- a/drivers/media/dvb-frontends/bcm3510.c
++++ b/drivers/media/dvb-frontends/bcm3510.c
+@@ -636,10 +636,9 @@ static int bcm3510_download_firmware(str
+ int ret,i;
+
+ deb_info("requesting firmware\n");
+- if ((ret = st->config->request_firmware(fe, &fw, BCM3510_DEFAULT_FIRMWARE)) < 0) {
+- err("could not load firmware (%s): %d",BCM3510_DEFAULT_FIRMWARE,ret);
++ ret = st->config->request_firmware(fe, &fw, BCM3510_DEFAULT_FIRMWARE);
++ if (ret)
+ return ret;
+- }
+ deb_info("got firmware: %zu\n", fw->size);
+
+ b = fw->data;
+--- a/drivers/media/dvb-frontends/cx24116.c
++++ b/drivers/media/dvb-frontends/cx24116.c
+@@ -479,13 +479,8 @@ static int cx24116_firmware_ondemand(str
+ __func__, CX24116_DEFAULT_FIRMWARE);
+ ret = request_firmware(&fw, CX24116_DEFAULT_FIRMWARE,
+ state->i2c->dev.parent);
+- printk(KERN_INFO "%s: Waiting for firmware upload(2)...\n",
+- __func__);
+- if (ret) {
+- printk(KERN_ERR "%s: No firmware uploaded (timeout or file not found?)\n",
+- __func__);
++ if (ret)
+ return ret;
+- }
+
+ /* Make sure we don't recurse back through here
+ * during loading */
+--- a/drivers/media/dvb-frontends/drxd_hard.c
++++ b/drivers/media/dvb-frontends/drxd_hard.c
+@@ -891,10 +891,8 @@ static int load_firmware(struct drxd_sta
+ {
+ const struct firmware *fw;
+
+- if (request_firmware(&fw, fw_name, state->dev) < 0) {
+- printk(KERN_ERR "drxd: firmware load failure [%s]\n", fw_name);
++ if (request_firmware(&fw, fw_name, state->dev))
+ return -EIO;
+- }
+
+ state->microcode = kmemdup(fw->data, fw->size, GFP_KERNEL);
+ if (!state->microcode) {
+--- a/drivers/media/dvb-frontends/drxk_hard.c
++++ b/drivers/media/dvb-frontends/drxk_hard.c
+@@ -6259,10 +6259,6 @@ static void load_firmware_cb(const struc
+
+ dprintk(1, ": %s\n", fw ? "firmware loaded" : "firmware not loaded");
+ if (!fw) {
+- pr_err("Could not load firmware file %s.\n",
+- state->microcode_name);
+- pr_info("Copy %s to your hotplug directory!\n",
+- state->microcode_name);
+ state->microcode_name = NULL;
+
+ /*
+--- a/drivers/media/dvb-frontends/ds3000.c
++++ b/drivers/media/dvb-frontends/ds3000.c
+@@ -348,12 +348,8 @@ static int ds3000_firmware_ondemand(stru
+ DS3000_DEFAULT_FIRMWARE);
+ ret = request_firmware(&fw, DS3000_DEFAULT_FIRMWARE,
+ state->i2c->dev.parent);
+- printk(KERN_INFO "%s: Waiting for firmware upload(2)...\n", __func__);
+- if (ret) {
+- printk(KERN_ERR "%s: No firmware uploaded (timeout or file not found?)\n",
+- __func__);
++ if (ret)
+ return ret;
+- }
+
+ ret = ds3000_load_firmware(fe, fw);
+ if (ret)
+--- a/drivers/media/dvb-frontends/nxt200x.c
++++ b/drivers/media/dvb-frontends/nxt200x.c
+@@ -876,12 +876,8 @@ static int nxt2002_init(struct dvb_front
+ __func__, NXT2002_DEFAULT_FIRMWARE);
+ ret = request_firmware(&fw, NXT2002_DEFAULT_FIRMWARE,
+ state->i2c->dev.parent);
+- pr_debug("%s: Waiting for firmware upload(2)...\n", __func__);
+- if (ret) {
+- pr_err("%s: No firmware uploaded (timeout or file not found?)\n",
+- __func__);
++ if (ret)
+ return ret;
+- }
+
+ ret = nxt2002_load_firmware(fe, fw);
+ release_firmware(fw);
+@@ -943,12 +939,8 @@ static int nxt2004_init(struct dvb_front
+ __func__, NXT2004_DEFAULT_FIRMWARE);
+ ret = request_firmware(&fw, NXT2004_DEFAULT_FIRMWARE,
+ state->i2c->dev.parent);
+- pr_debug("%s: Waiting for firmware upload(2)...\n", __func__);
+- if (ret) {
+- pr_err("%s: No firmware uploaded (timeout or file not found?)\n",
+- __func__);
++ if (ret)
+ return ret;
+- }
+
+ ret = nxt2004_load_firmware(fe, fw);
+ release_firmware(fw);
+--- a/drivers/media/dvb-frontends/or51132.c
++++ b/drivers/media/dvb-frontends/or51132.c
+@@ -326,10 +326,8 @@ static int or51132_set_parameters(struct
+ printk("or51132: Waiting for firmware upload(%s)...\n",
+ fwname);
+ ret = request_firmware(&fw, fwname, state->i2c->dev.parent);
+- if (ret) {
+- printk(KERN_WARNING "or51132: No firmware uploaded(timeout or file not found?)\n");
++ if (ret)
+ return ret;
+- }
+ ret = or51132_load_firmware(fe, fw);
+ release_firmware(fw);
+ if (ret) {
+--- a/drivers/media/dvb-frontends/or51211.c
++++ b/drivers/media/dvb-frontends/or51211.c
+@@ -361,11 +361,8 @@ static int or51211_init(struct dvb_front
+ OR51211_DEFAULT_FIRMWARE);
+ ret = config->request_firmware(fe, &fw,
+ OR51211_DEFAULT_FIRMWARE);
+- pr_info("Got Hotplug firmware\n");
+- if (ret) {
+- pr_warn("No firmware uploaded (timeout or file not found?)\n");
++ if (ret)
+ return ret;
+- }
+
+ ret = or51211_load_firmware(fe, fw);
+ release_firmware(fw);
+--- a/drivers/media/dvb-frontends/sp8870.c
++++ b/drivers/media/dvb-frontends/sp8870.c
+@@ -304,10 +304,8 @@ static int sp8870_init (struct dvb_front
+
+ /* request the firmware, this will block until someone uploads it */
+ printk("sp8870: waiting for firmware upload (%s)...\n", SP8870_DEFAULT_FIRMWARE);
+- if (state->config->request_firmware(fe, &fw, SP8870_DEFAULT_FIRMWARE)) {
+- printk("sp8870: no firmware upload (timeout or file not found?)\n");
++ if (state->config->request_firmware(fe, &fw, SP8870_DEFAULT_FIRMWARE))
+ return -EIO;
+- }
+
+ if (sp8870_firmware_upload(state, fw)) {
+ printk("sp8870: writing firmware to device failed\n");
+--- a/drivers/media/dvb-frontends/sp887x.c
++++ b/drivers/media/dvb-frontends/sp887x.c
+@@ -527,10 +527,8 @@ static int sp887x_init(struct dvb_fronte
+ /* request the firmware, this will block until someone uploads it */
+ printk("sp887x: waiting for firmware upload (%s)...\n", SP887X_DEFAULT_FIRMWARE);
+ ret = state->config->request_firmware(fe, &fw, SP887X_DEFAULT_FIRMWARE);
+- if (ret) {
+- printk("sp887x: no firmware upload (timeout or file not found?)\n");
++ if (ret)
+ return ret;
+- }
+
+ ret = sp887x_initial_setup(fe, fw);
+ release_firmware(fw);
+--- a/drivers/media/dvb-frontends/tda10048.c
++++ b/drivers/media/dvb-frontends/tda10048.c
+@@ -483,8 +483,6 @@ static int tda10048_firmware_upload(stru
+ ret = request_firmware(&fw, TDA10048_DEFAULT_FIRMWARE,
+ state->i2c->dev.parent);
+ if (ret) {
+- printk(KERN_ERR "%s: Upload failed. (file not found?)\n",
+- __func__);
+ return -EIO;
+ } else {
+ printk(KERN_INFO "%s: firmware read %zu bytes.\n",
+--- a/drivers/media/dvb-frontends/tda1004x.c
++++ b/drivers/media/dvb-frontends/tda1004x.c
+@@ -388,10 +388,8 @@ static int tda10045_fwupload(struct dvb_
+ /* request the firmware, this will block until someone uploads it */
+ printk(KERN_INFO "tda1004x: waiting for firmware upload (%s)...\n", TDA10045_DEFAULT_FIRMWARE);
+ ret = state->config->request_firmware(fe, &fw, TDA10045_DEFAULT_FIRMWARE);
+- if (ret) {
+- printk(KERN_ERR "tda1004x: no firmware upload (timeout or file not found?)\n");
++ if (ret)
+ return ret;
+- }
+
+ /* reset chip */
+ tda1004x_write_mask(state, TDA1004X_CONFC4, 0x10, 0);
+@@ -532,7 +530,6 @@ static int tda10046_fwupload(struct dvb_
+ /* remain compatible to old bug: try to load with tda10045 image name */
+ ret = state->config->request_firmware(fe, &fw, TDA10045_DEFAULT_FIRMWARE);
+ if (ret) {
+- printk(KERN_ERR "tda1004x: no firmware upload (timeout or file not found?)\n");
+ return ret;
+ } else {
+ printk(KERN_INFO "tda1004x: please rename the firmware file to %s\n",
+--- a/drivers/media/dvb-frontends/tda10071.c
++++ b/drivers/media/dvb-frontends/tda10071.c
+@@ -838,12 +838,8 @@ static int tda10071_init(struct dvb_fron
+
+ /* request the firmware, this will block and timeout */
+ ret = request_firmware(&fw, fw_file, &client->dev);
+- if (ret) {
+- dev_err(&client->dev,
+- "did not find the firmware file '%s' (status %d). You can use <kernel_dir>/scripts/get_dvb_firmware to get the firmware\n",
+- fw_file, ret);
++ if (ret)
+ goto error;
+- }
+
+ /* init */
+ for (i = 0; i < ARRAY_SIZE(tab2); i++) {
+--- a/drivers/media/i2c/cx25840/cx25840-firmware.c
++++ b/drivers/media/i2c/cx25840/cx25840-firmware.c
+@@ -113,10 +113,8 @@ int cx25840_loadfw(struct i2c_client *cl
+ if (is_cx231xx(state) && max_buf_size > 16)
+ max_buf_size = 16;
+
+- if (request_firmware(&fw, fwname, FWDEV(client)) != 0) {
+- v4l_err(client, "unable to open firmware %s\n", fwname);
++ if (request_firmware(&fw, fwname, FWDEV(client)) != 0)
+ return -EINVAL;
+- }
+
+ start_fw_load(client);
+
+--- a/drivers/media/pci/bt8xx/bttv-cards.c
++++ b/drivers/media/pci/bt8xx/bttv-cards.c
+@@ -3904,10 +3904,8 @@ static int pvr_boot(struct bttv *btv)
+ int rc;
+
+ rc = request_firmware(&fw_entry, "hcwamc.rbf", &btv->c.pci->dev);
+- if (rc != 0) {
+- pr_warn("%d: no altera firmware [via hotplug]\n", btv->c.nr);
++ if (rc != 0)
+ return rc;
+- }
+ rc = pvr_altera_load(btv, fw_entry->data, fw_entry->size);
+ pr_info("%d: altera firmware upload %s\n",
+ btv->c.nr, (rc < 0) ? "failed" : "ok");
+--- a/drivers/media/pci/cx18/cx18-av-firmware.c
++++ b/drivers/media/pci/cx18/cx18-av-firmware.c
+@@ -70,10 +70,8 @@ int cx18_av_loadfw(struct cx18 *cx)
+ int i;
+ int retries1 = 0;
+
+- if (request_firmware(&fw, FWFILE, &cx->pci_dev->dev) != 0) {
+- CX18_ERR_DEV(sd, "unable to open firmware %s\n", FWFILE);
++ if (request_firmware(&fw, FWFILE, &cx->pci_dev->dev) != 0)
+ return -EINVAL;
+- }
+
+ /* The firmware load often has byte errors, so allow for several
+ retries, both at byte level and at the firmware load level. */
+--- a/drivers/media/pci/cx18/cx18-dvb.c
++++ b/drivers/media/pci/cx18/cx18-dvb.c
+@@ -127,9 +127,7 @@ static int yuan_mpc718_mt352_reqfw(struc
+ int ret;
+
+ ret = request_firmware(fw, fn, &cx->pci_dev->dev);
+- if (ret)
+- CX18_ERR("Unable to open firmware file %s\n", fn);
+- else {
++ if (!ret) {
+ size_t sz = (*fw)->size;
+ if (sz < 2 || sz > 64 || (sz % 2) != 0) {
+ CX18_ERR("Firmware %s has a bad size: %lu bytes\n",
+--- a/drivers/media/pci/cx18/cx18-firmware.c
++++ b/drivers/media/pci/cx18/cx18-firmware.c
+@@ -92,11 +92,8 @@ static int load_cpu_fw_direct(const char
+ u32 __iomem *dst = (u32 __iomem *)mem;
+ const u32 *src;
+
+- if (request_firmware(&fw, fn, &cx->pci_dev->dev)) {
+- CX18_ERR("Unable to open firmware %s\n", fn);
+- CX18_ERR("Did you put the firmware in the hotplug firmware directory?\n");
++ if (request_firmware(&fw, fn, &cx->pci_dev->dev))
+ return -ENOMEM;
+- }
+
+ src = (const u32 *)fw->data;
+
+@@ -137,8 +134,6 @@ static int load_apu_fw_direct(const char
+ int sz;
+
+ if (request_firmware(&fw, fn, &cx->pci_dev->dev)) {
+- CX18_ERR("unable to open firmware %s\n", fn);
+- CX18_ERR("did you put the firmware in the hotplug firmware directory?\n");
+ cx18_setup_page(cx, 0);
+ return -ENOMEM;
+ }
+--- a/drivers/media/pci/cx23885/cx23885-417.c
++++ b/drivers/media/pci/cx23885/cx23885-417.c
+@@ -920,12 +920,8 @@ static int cx23885_load_firmware(struct
+ retval = request_firmware(&firmware, CX23885_FIRM_IMAGE_NAME,
+ &dev->pci->dev);
+
+- if (retval != 0) {
+- pr_err("ERROR: Hotplug firmware request failed (%s).\n",
+- CX23885_FIRM_IMAGE_NAME);
+- pr_err("Please fix your hotplug setup, the board will not work without firmware loaded!\n");
++ if (retval != 0)
+ return -1;
+- }
+
+ if (firmware->size != CX23885_FIRM_IMAGE_SIZE) {
+ pr_err("ERROR: Firmware size mismatch (have %zu, expected %d)\n",
+--- a/drivers/media/pci/cx23885/cx23885-cards.c
++++ b/drivers/media/pci/cx23885/cx23885-cards.c
+@@ -2480,10 +2480,7 @@ void cx23885_card_setup(struct cx23885_d
+ cinfo.rev, filename);
+
+ ret = request_firmware(&fw, filename, &dev->pci->dev);
+- if (ret != 0)
+- pr_err("did not find the firmware file '%s'. You can use <kernel_dir>/scripts/get_dvb_firmware to get the firmware.",
+- filename);
+- else
++ if (ret == 0)
+ altera_init(&netup_config, fw);
+
+ release_firmware(fw);
+--- a/drivers/media/pci/cx88/cx88-blackbird.c
++++ b/drivers/media/pci/cx88/cx88-blackbird.c
+@@ -462,12 +462,8 @@ static int blackbird_load_firmware(struc
+ retval = request_firmware(&firmware, CX2341X_FIRM_ENC_FILENAME,
+ &dev->pci->dev);
+
+- if (retval != 0) {
+- pr_err("Hotplug firmware request failed (%s).\n",
+- CX2341X_FIRM_ENC_FILENAME);
+- pr_err("Please fix your hotplug setup, the board will not work without firmware loaded!\n");
++ if (retval != 0)
+ return -EIO;
+- }
+
+ if (firmware->size != BLACKBIRD_FIRM_IMAGE_SIZE) {
+ pr_err("Firmware size mismatch (have %zd, expected %d)\n",
+--- a/drivers/media/pci/ivtv/ivtv-firmware.c
++++ b/drivers/media/pci/ivtv/ivtv-firmware.c
+@@ -68,8 +68,6 @@ retry:
+ release_firmware(fw);
+ return size;
+ }
+- IVTV_ERR("Unable to open firmware %s (must be %ld bytes)\n", fn, size);
+- IVTV_ERR("Did you put the firmware in the hotplug firmware directory?\n");
+ return -ENOMEM;
+ }
+
+--- a/drivers/media/pci/ngene/ngene-core.c
++++ b/drivers/media/pci/ngene/ngene-core.c
+@@ -1236,19 +1236,14 @@ static int ngene_load_firm(struct ngene
+ break;
+ }
+
+- if (request_firmware(&fw, fw_name, &dev->pci_dev->dev) < 0) {
+- dev_err(pdev, "Could not load firmware file %s.\n", fw_name);
+- dev_info(pdev, "Copy %s to your hotplug directory!\n",
+- fw_name);
++ if (request_firmware(&fw, fw_name, &dev->pci_dev->dev))
+ return -1;
+- }
+ if (size == 0)
+ size = fw->size;
+ if (size != fw->size) {
+ dev_err(pdev, "Firmware %s has invalid size!", fw_name);
+ err = -1;
+ } else {
+- dev_info(pdev, "Loading firmware file %s.\n", fw_name);
+ ngene_fw = (u8 *) fw->data;
+ err = ngene_command_load_firmware(dev, ngene_fw, size);
+ }
+--- a/drivers/media/pci/saa7164/saa7164-fw.c
++++ b/drivers/media/pci/saa7164/saa7164-fw.c
+@@ -406,11 +406,8 @@ int saa7164_downloadfirmware(struct saa7
+ __func__, fwname);
+
+ ret = request_firmware(&fw, fwname, &dev->pci->dev);
+- if (ret) {
+- printk(KERN_ERR "%s() Upload failed. (file not found?)\n",
+- __func__);
++ if (ret)
+ return -ENOMEM;
+- }
+
+ printk(KERN_INFO "%s() firmware read %zu bytes.\n",
+ __func__, fw->size);
+--- a/drivers/media/pci/ttpci/av7110.c
++++ b/drivers/media/pci/ttpci/av7110.c
+@@ -1501,13 +1501,8 @@ static int get_firmware(struct av7110* a
+ /* request the av7110 firmware, this will block until someone uploads it */
+ ret = request_firmware(&fw, "dvb-ttpci-01.fw", &av7110->dev->pci->dev);
+ if (ret) {
+- if (ret == -ENOENT) {
+- printk(KERN_ERR "dvb-ttpci: could not load firmware, file not found: dvb-ttpci-01.fw\n");
+- printk(KERN_ERR "dvb-ttpci: usually this should be in /usr/lib/hotplug/firmware or /lib/firmware\n");
+- printk(KERN_ERR "dvb-ttpci: and can be downloaded from https://linuxtv.org/download/dvb/firmware/\n");
+- } else
+- printk(KERN_ERR "dvb-ttpci: cannot request firmware (error %i)\n",
+- ret);
++ if (ret == -ENOENT)
++ printk(KERN_ERR "dvb-ttpci: firmware can be downloaded from https://linuxtv.org/download/dvb/firmware/\n");
+ return -EINVAL;
+ }
+
+--- a/drivers/media/pci/ttpci/av7110_hw.c
++++ b/drivers/media/pci/ttpci/av7110_hw.c
+@@ -235,11 +235,8 @@ int av7110_bootarm(struct av7110 *av7110
+ //saa7146_setgpio(dev, 3, SAA7146_GPIO_INPUT);
+
+ ret = request_firmware(&fw, fw_name, &dev->pci->dev);
+- if (ret) {
+- printk(KERN_ERR "dvb-ttpci: Failed to load firmware \"%s\"\n",
+- fw_name);
++ if (ret)
+ return ret;
+- }
+
+ mwdebi(av7110, DEBISWAB, DPRAM_BASE, fw->data, fw->size);
+ release_firmware(fw);
+--- a/drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
++++ b/drivers/media/platform/s5p-mfc/s5p_mfc_ctrl.c
+@@ -65,10 +65,8 @@ int s5p_mfc_load_firmware(struct s5p_mfc
+ }
+ }
+
+- if (err != 0) {
+- mfc_err("Firmware is not present in the /lib/firmware directory nor compiled in kernel\n");
++ if (err != 0)
+ return -EINVAL;
+- }
+ if (fw_blob->size > dev->fw_buf.size) {
+ mfc_err("MFC firmware is too big to be loaded\n");
+ release_firmware(fw_blob);
+--- a/drivers/media/radio/radio-wl1273.c
++++ b/drivers/media/radio/radio-wl1273.c
+@@ -502,11 +502,8 @@ static int wl1273_fm_upload_firmware_pat
+ * Uploading the firmware patch is not always necessary,
+ * so we only print an info message.
+ */
+- if (request_firmware(&fw_p, fw_name, dev)) {
+- dev_info(dev, "%s - %s not found\n", __func__, fw_name);
+-
++ if (request_firmware(&fw_p, fw_name, dev))
+ return 0;
+- }
+
+ ptr = (__u8 *) fw_p->data;
+ packet_num = ptr[0];
+--- a/drivers/media/radio/wl128x/fmdrv_common.c
++++ b/drivers/media/radio/wl128x/fmdrv_common.c
+@@ -1240,10 +1240,8 @@ static int fm_download_firmware(struct f
+
+ ret = request_firmware(&fw_entry, fw_name,
+ &fmdev->radio_dev->dev);
+- if (ret < 0) {
+- fmerr("Unable to read firmware(%s) content\n", fw_name);
++ if (ret)
+ return ret;
+- }
+ fmdbg("Firmware(%s) length : %zu bytes\n", fw_name, fw_entry->size);
+
+ fw_data = (void *)fw_entry->data;
+--- a/drivers/media/tuners/tuner-xc2028.c
++++ b/drivers/media/tuners/tuner-xc2028.c
+@@ -1366,7 +1366,6 @@ static void load_firmware_cb(const struc
+
+ tuner_dbg("request_firmware_nowait(): %s\n", fw ? "OK" : "error");
+ if (!fw) {
+- tuner_err("Could not load firmware %s.\n", priv->fname);
+ priv->state = XC2028_NODEV;
+ return;
+ }
+--- a/drivers/media/usb/cpia2/cpia2_core.c
++++ b/drivers/media/usb/cpia2/cpia2_core.c
+@@ -912,11 +912,8 @@ static int apply_vp_patch(struct camera_
+ struct cpia2_command cmd;
+
+ ret = request_firmware(&fw, fw_name, &cam->dev->dev);
+- if (ret) {
+- printk(KERN_ERR "cpia2: failed to load VP patch \"%s\"\n",
+- fw_name);
++ if (ret)
+ return ret;
+- }
+
+ cmd.req_mode = CAMERAACCESS_TYPE_REPEAT | CAMERAACCESS_VP;
+ cmd.direction = TRANSFER_WRITE;
+--- a/drivers/media/usb/cx231xx/cx231xx-417.c
++++ b/drivers/media/usb/cx231xx/cx231xx-417.c
+@@ -983,11 +983,6 @@ static int cx231xx_load_firmware(struct
+ dev->dev);
+
+ if (retval != 0) {
+- dev_err(dev->dev,
+- "ERROR: Hotplug firmware request failed (%s).\n",
+- CX231xx_FIRM_IMAGE_NAME);
+- dev_err(dev->dev,
+- "Please fix your hotplug setup, the board will not work without firmware loaded!\n");
+ vfree(p_current_fw);
+ vfree(p_buffer);
+ return retval;
+--- a/drivers/media/usb/dvb-usb/dib0700_devices.c
++++ b/drivers/media/usb/dvb-usb/dib0700_devices.c
+@@ -2408,12 +2408,9 @@ static int stk9090m_frontend_attach(stru
+
+ dib9000_i2c_enumeration(&adap->dev->i2c_adap, 1, 0x10, 0x80);
+
+- if (request_firmware(&state->frontend_firmware, "dib9090.fw", &adap->dev->udev->dev)) {
+- deb_info("%s: Upload failed. (file not found?)\n", __func__);
++ if (request_firmware(&state->frontend_firmware, "dib9090.fw", &adap->dev->udev->dev))
+ return -ENODEV;
+- } else {
+- deb_info("%s: firmware read %zu bytes.\n", __func__, state->frontend_firmware->size);
+- }
++ deb_info("%s: firmware read %zu bytes.\n", __func__, state->frontend_firmware->size);
+ stk9090m_config.microcode_B_fe_size = state->frontend_firmware->size;
+ stk9090m_config.microcode_B_fe_buffer = state->frontend_firmware->data;
+
+@@ -2478,12 +2475,9 @@ static int nim9090md_frontend_attach(str
+ msleep(20);
+ dib0700_set_gpio(adap->dev, GPIO0, GPIO_OUT, 1);
+
+- if (request_firmware(&state->frontend_firmware, "dib9090.fw", &adap->dev->udev->dev)) {
+- deb_info("%s: Upload failed. (file not found?)\n", __func__);
++ if (request_firmware(&state->frontend_firmware, "dib9090.fw", &adap->dev->udev->dev))
+ return -EIO;
+- } else {
+- deb_info("%s: firmware read %zu bytes.\n", __func__, state->frontend_firmware->size);
+- }
++ deb_info("%s: firmware read %zu bytes.\n", __func__, state->frontend_firmware->size);
+ nim9090md_config[0].microcode_B_fe_size = state->frontend_firmware->size;
+ nim9090md_config[0].microcode_B_fe_buffer = state->frontend_firmware->data;
+ nim9090md_config[1].microcode_B_fe_size = state->frontend_firmware->size;
+--- a/drivers/media/usb/dvb-usb/dvb-usb-firmware.c
++++ b/drivers/media/usb/dvb-usb/dvb-usb-firmware.c
+@@ -90,13 +90,9 @@ int dvb_usb_download_firmware(struct usb
+ int ret;
+ const struct firmware *fw = NULL;
+
+- if ((ret = request_firmware(&fw, props->firmware, &udev->dev)) != 0) {
+- err("did not find the firmware file '%s' (status %d). You can use <kernel_dir>/scripts/get_dvb_firmware to get the firmware",
+- props->firmware,ret);
++ ret = request_firmware(&fw, props->firmware, &udev->dev);
++ if (ret)
+ return ret;
+- }
+-
+- info("downloading firmware from file '%s'",props->firmware);
+
+ switch (props->usb_ctrl) {
+ case CYPRESS_AN2135:
+--- a/drivers/media/usb/dvb-usb/gp8psk.c
++++ b/drivers/media/usb/dvb-usb/gp8psk.c
+@@ -131,19 +131,14 @@ static int gp8psk_load_bcm4500fw(struct
+ const u8 *ptr;
+ u8 *buf;
+ if ((ret = request_firmware(&fw, bcm4500_firmware,
+- &d->udev->dev)) != 0) {
+- err("did not find the bcm4500 firmware file '%s' (status %d). You can use <kernel_dir>/scripts/get_dvb_firmware to get the firmware",
+- bcm4500_firmware,ret);
++ &d->udev->dev)) != 0)
+ return ret;
+- }
+
+ ret = -EINVAL;
+
+ if (gp8psk_usb_out_op(d, LOAD_BCM4500,1,0,NULL, 0))
+ goto out_rel_fw;
+
+- info("downloading bcm4500 firmware from file '%s'",bcm4500_firmware);
+-
+ ptr = fw->data;
+ buf = kmalloc(64, GFP_KERNEL);
+ if (!buf) {
+--- a/drivers/media/usb/dvb-usb/opera1.c
++++ b/drivers/media/usb/dvb-usb/opera1.c
+@@ -450,8 +450,6 @@ static int opera1_xilinx_load_firmware(s
+ info("start downloading fpga firmware %s",filename);
+
+ if ((ret = request_firmware(&fw, filename, &dev->dev)) != 0) {
+- err("did not find the firmware file '%s'. You can use <kernel_dir>/scripts/get_dvb_firmware to get the firmware",
+- filename);
+ return ret;
+ } else {
+ p = kmalloc(fw->size, GFP_KERNEL);
+--- a/drivers/media/usb/go7007/go7007-driver.c
++++ b/drivers/media/usb/go7007/go7007-driver.c
+@@ -84,10 +84,8 @@ static int go7007_load_encoder(struct go
+ u16 intr_val, intr_data;
+
+ if (go->boot_fw == NULL) {
+- if (request_firmware(&fw_entry, fw_name, go->dev)) {
+- v4l2_err(go, "unable to load firmware from file \"%s\"\n", fw_name);
++ if (request_firmware(&fw_entry, fw_name, go->dev))
+ return -1;
+- }
+ if (fw_entry->size < 16 || memcmp(fw_entry->data, "WISGO7007FW", 11)) {
+ v4l2_err(go, "file \"%s\" does not appear to be go7007 firmware\n", fw_name);
+ release_firmware(fw_entry);
+--- a/drivers/media/usb/go7007/go7007-fw.c
++++ b/drivers/media/usb/go7007/go7007-fw.c
+@@ -1565,12 +1565,8 @@ int go7007_construct_fw_image(struct go7
+ default:
+ return -1;
+ }
+- if (request_firmware(&fw_entry, GO7007_FW_NAME, go->dev)) {
+- dev_err(go->dev,
+- "unable to load firmware from file \"%s\"\n",
+- GO7007_FW_NAME);
++ if (request_firmware(&fw_entry, GO7007_FW_NAME, go->dev))
+ return -1;
+- }
+ code = kcalloc(codespace, 2, GFP_KERNEL);
+ if (code == NULL)
+ goto fw_failed;
+--- a/drivers/media/usb/go7007/go7007-loader.c
++++ b/drivers/media/usb/go7007/go7007-loader.c
+@@ -67,11 +67,8 @@ static int go7007_loader_probe(struct us
+
+ dev_info(&interface->dev, "loading firmware %s\n", fw1);
+
+- if (request_firmware(&fw, fw1, &usbdev->dev)) {
+- dev_err(&interface->dev,
+- "unable to load firmware from file \"%s\"\n", fw1);
++ if (request_firmware(&fw, fw1, &usbdev->dev))
+ goto failed2;
+- }
+ ret = cypress_load_firmware(usbdev, fw, CYPRESS_FX2);
+ release_firmware(fw);
+ if (0 != ret) {
+@@ -82,11 +79,8 @@ static int go7007_loader_probe(struct us
+ if (fw2 == NULL)
+ return 0;
+
+- if (request_firmware(&fw, fw2, &usbdev->dev)) {
+- dev_err(&interface->dev,
+- "unable to load firmware from file \"%s\"\n", fw2);
++ if (request_firmware(&fw, fw2, &usbdev->dev))
+ goto failed2;
+- }
+ ret = cypress_load_firmware(usbdev, fw, CYPRESS_FX2);
+ release_firmware(fw);
+ if (0 != ret) {
+--- a/drivers/media/usb/gspca/vicam.c
++++ b/drivers/media/usb/gspca/vicam.c
+@@ -230,10 +230,8 @@ static int sd_init(struct gspca_dev *gsp
+
+ ret = request_ihex_firmware(&fw, VICAM_FIRMWARE,
+ &gspca_dev->dev->dev);
+- if (ret) {
+- pr_err("Failed to load \"vicam/firmware.fw\": %d\n", ret);
++ if (ret)
+ return ret;
+- }
+
+ firmware_buf = kmalloc(PAGE_SIZE, GFP_KERNEL);
+ if (!firmware_buf) {
+--- a/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
++++ b/drivers/media/usb/pvrusb2/pvrusb2-hdw.c
+@@ -1370,25 +1370,6 @@ static int pvr2_locate_firmware(struct p
+ "request_firmware fatal error with code=%d",ret);
+ return ret;
+ }
+- pvr2_trace(PVR2_TRACE_ERROR_LEGS,
+- "***WARNING*** Device %s firmware seems to be missing.",
+- fwtypename);
+- pvr2_trace(PVR2_TRACE_ERROR_LEGS,
+- "Did you install the pvrusb2 firmware files in their proper location?");
+- if (fwcount == 1) {
+- pvr2_trace(PVR2_TRACE_ERROR_LEGS,
+- "request_firmware unable to locate %s file %s",
+- fwtypename,fwnames[0]);
+- } else {
+- pvr2_trace(PVR2_TRACE_ERROR_LEGS,
+- "request_firmware unable to locate one of the following %s files:",
+- fwtypename);
+- for (idx = 0; idx < fwcount; idx++) {
+- pvr2_trace(PVR2_TRACE_ERROR_LEGS,
+- "request_firmware: Failed to find %s",
+- fwnames[idx]);
+- }
+- }
+ return ret;
+ }
+
+--- a/drivers/media/usb/s2255/s2255drv.c
++++ b/drivers/media/usb/s2255/s2255drv.c
+@@ -2278,10 +2278,8 @@ static int s2255_probe(struct usb_interf
+ }
+ /* load the first chunk */
+ if (request_firmware(&dev->fw_data->fw,
+- FIRMWARE_FILE_NAME, &dev->udev->dev)) {
+- dev_err(&interface->dev, "sensoray 2255 failed to get firmware\n");
++ FIRMWARE_FILE_NAME, &dev->udev->dev))
+ goto errorREQFW;
+- }
+ /* check the firmware is valid */
+ fw_size = dev->fw_data->fw->size;
+ pdata = (__le32 *) &dev->fw_data->fw->data[fw_size - 8];
+--- a/drivers/media/usb/ttusb-budget/dvb-ttusb-budget.c
++++ b/drivers/media/usb/ttusb-budget/dvb-ttusb-budget.c
+@@ -282,10 +282,8 @@ static int ttusb_boot_dsp(struct ttusb *
+
+ err = request_firmware(&fw, "ttusb-budget/dspbootcode.bin",
+ &ttusb->dev->dev);
+- if (err) {
+- pr_err("failed to request firmware\n");
++ if (err)
+ return err;
+- }
+
+ /* BootBlock */
+ b[0] = 0xaa;
+--- a/drivers/media/usb/ttusb-dec/ttusb_dec.c
++++ b/drivers/media/usb/ttusb-dec/ttusb_dec.c
+@@ -1324,11 +1324,8 @@ static int ttusb_dec_boot_dsp(struct ttu
+ dprintk("%s\n", __func__);
+
+ result = request_firmware(&fw_entry, dec->firmware_name, &dec->udev->dev);
+- if (result) {
+- printk(KERN_ERR "%s: Firmware (%s) unavailable.\n",
+- __func__, dec->firmware_name);
++ if (result)
+ return result;
+- }
+
+ firmware = fw_entry->data;
+ firmware_size = fw_entry->size;
+--- a/drivers/misc/ti-st/st_kim.c
++++ b/drivers/misc/ti-st/st_kim.c
+@@ -295,11 +295,8 @@ static long download_firmware(struct kim
+ request_firmware(&kim_gdata->fw_entry, bts_scr_name,
+ &kim_gdata->kim_pdev->dev);
+ if (unlikely((err != 0) || (kim_gdata->fw_entry->data == NULL) ||
+- (kim_gdata->fw_entry->size == 0))) {
+- pr_err(" request_firmware failed(errno %ld) for %s", err,
+- bts_scr_name);
++ (kim_gdata->fw_entry->size == 0)))
+ return -EINVAL;
+- }
+ ptr = (void *)kim_gdata->fw_entry->data;
+ len = kim_gdata->fw_entry->size;
+ /*
+--- a/drivers/net/can/softing/softing_fw.c
++++ b/drivers/net/can/softing/softing_fw.c
+@@ -226,11 +226,8 @@ int softing_load_app_fw(const char *file
+ int8_t type_end = 0, type_entrypoint = 0;
+
+ ret = request_firmware(&fw, file, &card->pdev->dev);
+- if (ret) {
+- dev_alert(&card->pdev->dev, "request_firmware(%s) got %i\n",
+- file, ret);
++ if (ret)
+ return ret;
+- }
+ dev_dbg(&card->pdev->dev, "firmware(%s) got %lu bytes\n",
+ file, (unsigned long)fw->size);
+ /* parse the firmware */
+--- a/drivers/net/ethernet/3com/typhoon.c
++++ b/drivers/net/ethernet/3com/typhoon.c
+@@ -1282,11 +1282,8 @@ typhoon_request_firmware(struct typhoon
+ return 0;
+
+ err = request_firmware(&typhoon_fw, FIRMWARE_NAME, &tp->pdev->dev);
+- if (err) {
+- netdev_err(tp->dev, "Failed to load firmware \"%s\"\n",
+- FIRMWARE_NAME);
++ if (err)
+ return err;
+- }
+
+ image_data = typhoon_fw->data;
+ remaining = typhoon_fw->size;
+--- a/drivers/net/ethernet/adaptec/starfire.c
++++ b/drivers/net/ethernet/adaptec/starfire.c
+@@ -1002,11 +1002,8 @@ static int netdev_open(struct net_device
+ #endif /* VLAN_SUPPORT */
+
+ retval = request_firmware(&fw_rx, FIRMWARE_RX, &np->pci_dev->dev);
+- if (retval) {
+- printk(KERN_ERR "starfire: Failed to load firmware \"%s\"\n",
+- FIRMWARE_RX);
++ if (retval)
+ goto out_init;
+- }
+ if (fw_rx->size % 4) {
+ printk(KERN_ERR "starfire: bogus length %zu in \"%s\"\n",
+ fw_rx->size, FIRMWARE_RX);
+@@ -1014,11 +1011,8 @@ static int netdev_open(struct net_device
+ goto out_rx;
+ }
+ retval = request_firmware(&fw_tx, FIRMWARE_TX, &np->pci_dev->dev);
+- if (retval) {
+- printk(KERN_ERR "starfire: Failed to load firmware \"%s\"\n",
+- FIRMWARE_TX);
++ if (retval)
+ goto out_rx;
+- }
+ if (fw_tx->size % 4) {
+ printk(KERN_ERR "starfire: bogus length %zu in \"%s\"\n",
+ fw_tx->size, FIRMWARE_TX);
+--- a/drivers/net/ethernet/alacritech/slicoss.c
++++ b/drivers/net/ethernet/alacritech/slicoss.c
+@@ -1051,11 +1051,8 @@ static int slic_load_rcvseq_firmware(str
+ file = (sdev->model == SLIC_MODEL_OASIS) ? SLIC_RCV_FIRMWARE_OASIS :
+ SLIC_RCV_FIRMWARE_MOJAVE;
+ err = request_firmware(&fw, file, &sdev->pdev->dev);
+- if (err) {
+- dev_err(&sdev->pdev->dev,
+- "failed to load receive sequencer firmware %s\n", file);
++ if (err)
+ return err;
+- }
+ /* Do an initial sanity check concerning firmware size now. A further
+ * check follows below.
+ */
+@@ -1126,10 +1123,8 @@ static int slic_load_firmware(struct sli
+ file = (sdev->model == SLIC_MODEL_OASIS) ? SLIC_FIRMWARE_OASIS :
+ SLIC_FIRMWARE_MOJAVE;
+ err = request_firmware(&fw, file, &sdev->pdev->dev);
+- if (err) {
+- dev_err(&sdev->pdev->dev, "failed to load firmware %s\n", file);
++ if (err)
+ return err;
+- }
+ /* Do an initial sanity check concerning firmware size now. A further
+ * check follows below.
+ */
+--- a/drivers/net/ethernet/alteon/acenic.c
++++ b/drivers/net/ethernet/alteon/acenic.c
+@@ -2881,11 +2881,8 @@ static int ace_load_firmware(struct net_
+ fw_name = "acenic/tg1.bin";
+
+ ret = request_firmware(&fw, fw_name, &ap->pdev->dev);
+- if (ret) {
+- printk(KERN_ERR "%s: Failed to load firmware \"%s\"\n",
+- ap->name, fw_name);
++ if (ret)
+ return ret;
+- }
+
+ fw_data = (void *)fw->data;
+
+--- a/drivers/net/ethernet/broadcom/bnx2.c
++++ b/drivers/net/ethernet/broadcom/bnx2.c
+@@ -3712,16 +3712,13 @@ static int bnx2_request_uncached_firmwar
+ }
+
+ rc = request_firmware(&bp->mips_firmware, mips_fw_file, &bp->pdev->dev);
+- if (rc) {
+- pr_err("Can't load firmware file \"%s\"\n", mips_fw_file);
++ if (rc)
+ goto out;
+- }
+
+ rc = request_firmware(&bp->rv2p_firmware, rv2p_fw_file, &bp->pdev->dev);
+- if (rc) {
+- pr_err("Can't load firmware file \"%s\"\n", rv2p_fw_file);
++ if (rc)
+ goto err_release_mips_firmware;
+- }
++
+ mips_fw = (const struct bnx2_mips_fw_file *) bp->mips_firmware->data;
+ rv2p_fw = (const struct bnx2_rv2p_fw_file *) bp->rv2p_firmware->data;
+ if (bp->mips_firmware->size < sizeof(*mips_fw) ||
+--- a/drivers/net/ethernet/broadcom/tg3.c
++++ b/drivers/net/ethernet/broadcom/tg3.c
+@@ -11413,11 +11413,8 @@ static int tg3_request_firmware(struct t
+ {
+ const struct tg3_firmware_hdr *fw_hdr;
+
+- if (request_firmware(&tp->fw, tp->fw_needed, &tp->pdev->dev)) {
+- netdev_err(tp->dev, "Failed to load firmware \"%s\"\n",
+- tp->fw_needed);
++ if (request_firmware(&tp->fw, tp->fw_needed, &tp->pdev->dev))
+ return -ENOENT;
+- }
+
+ fw_hdr = (struct tg3_firmware_hdr *)tp->fw->data;
+
+--- a/drivers/net/ethernet/brocade/bna/cna_fwimg.c
++++ b/drivers/net/ethernet/brocade/bna/cna_fwimg.c
+@@ -24,10 +24,8 @@ cna_read_firmware(struct pci_dev *pdev,
+ const struct firmware *fw;
+ u32 n;
+
+- if (request_firmware(&fw, fw_name, &pdev->dev)) {
+- dev_alert(&pdev->dev, "can't load firmware %s\n", fw_name);
++ if (request_firmware(&fw, fw_name, &pdev->dev))
+ goto error;
+- }
+
+ *bfi_image = (u32 *)fw->data;
+ *bfi_image_size = fw->size/sizeof(u32);
+--- a/drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c
++++ b/drivers/net/ethernet/chelsio/cxgb3/cxgb3_main.c
+@@ -1036,12 +1036,8 @@ int t3_get_edc_fw(struct cphy *phy, int
+ fw_name = get_edc_fw_name(edc_idx);
+ if (fw_name)
+ ret = request_firmware(&fw, fw_name, &adapter->pdev->dev);
+- if (ret < 0) {
+- dev_err(&adapter->pdev->dev,
+- "could not upgrade firmware: unable to load %s\n",
+- fw_name);
++ if (ret)
+ return ret;
+- }
+
+ /* check size, take checksum in account */
+ if (fw->size > size + 4) {
+@@ -1078,11 +1074,8 @@ static int upgrade_fw(struct adapter *ad
+ struct device *dev = &adap->pdev->dev;
+
+ ret = request_firmware(&fw, FW_FNAME, dev);
+- if (ret < 0) {
+- dev_err(dev, "could not upgrade firmware: unable to load %s\n",
+- FW_FNAME);
++ if (ret)
+ return ret;
+- }
+ ret = t3_load_fw(adap, fw->data, fw->size);
+ release_firmware(fw);
+
+@@ -1127,11 +1120,8 @@ static int update_tpsram(struct adapter
+ snprintf(buf, sizeof(buf), TPSRAM_NAME, rev);
+
+ ret = request_firmware(&tpsram, buf, dev);
+- if (ret < 0) {
+- dev_err(dev, "could not load TP SRAM: unable to load %s\n",
+- buf);
++ if (ret)
+ return ret;
+- }
+
+ ret = t3_check_tpsram(adap, tpsram->data, tpsram->size);
+ if (ret)
+--- a/drivers/net/ethernet/intel/e100.c
++++ b/drivers/net/ethernet/intel/e100.c
+@@ -1262,9 +1262,6 @@ static const struct firmware *e100_reque
+
+ if (err) {
+ if (required) {
+- netif_err(nic, probe, nic->netdev,
+- "Failed to load firmware \"%s\": %d\n",
+- fw_name, err);
+ return ERR_PTR(err);
+ } else {
+ netif_info(nic, probe, nic->netdev,
+--- a/drivers/net/ethernet/myricom/myri10ge/myri10ge.c
++++ b/drivers/net/ethernet/myricom/myri10ge/myri10ge.c
+@@ -580,8 +580,6 @@ static int myri10ge_load_hotplug_firmwar
+ unsigned i;
+
+ if ((status = request_firmware(&fw, mgp->fw_name, dev)) < 0) {
+- dev_err(dev, "Unable to load %s firmware image via hotplug\n",
+- mgp->fw_name);
+ status = -EINVAL;
+ goto abort_with_nothing;
+ }
+--- a/drivers/net/ethernet/smsc/smc91c92_cs.c
++++ b/drivers/net/ethernet/smsc/smc91c92_cs.c
+@@ -647,10 +647,8 @@ static int osi_load_firmware(struct pcmc
+ int i, err;
+
+ err = request_firmware(&fw, FIRMWARE_NAME, &link->dev);
+- if (err) {
+- pr_err("Failed to load firmware \"%s\"\n", FIRMWARE_NAME);
++ if (err)
+ return err;
+- }
+
+ /* Download the Seven of Diamonds firmware */
+ for (i = 0; i < fw->size; i++) {
+--- a/drivers/net/ethernet/sun/cassini.c
++++ b/drivers/net/ethernet/sun/cassini.c
+@@ -793,11 +793,8 @@ static void cas_saturn_firmware_init(str
+ return;
+
+ err = request_firmware(&fw, fw_name, &cp->pdev->dev);
+- if (err) {
+- pr_err("Failed to load firmware \"%s\"\n",
+- fw_name);
++ if (err)
+ return;
+- }
+ if (fw->size < 2) {
+ pr_err("bogus length %zu in \"%s\"\n",
+ fw->size, fw_name);
+--- a/drivers/net/hamradio/yam.c
++++ b/drivers/net/hamradio/yam.c
+@@ -357,11 +357,8 @@ static unsigned char *add_mcs(unsigned c
+ }
+ err = request_firmware(&fw, fw_name[predef], &pdev->dev);
+ platform_device_unregister(pdev);
+- if (err) {
+- printk(KERN_ERR "Failed to load firmware \"%s\"\n",
+- fw_name[predef]);
++ if (err)
+ return NULL;
+- }
+ if (fw->size != YAM_FPGA_SIZE) {
+ printk(KERN_ERR "Bogus length %zu in firmware \"%s\"\n",
+ fw->size, fw_name[predef]);
+--- a/drivers/net/usb/kaweth.c
++++ b/drivers/net/usb/kaweth.c
+@@ -305,10 +305,8 @@ static int kaweth_download_firmware(stru
+ int ret;
+
+ ret = request_firmware(&fw, fwname, &kaweth->dev->dev);
+- if (ret) {
+- dev_err(&kaweth->intf->dev, "Firmware request failed\n");
++ if (ret)
+ return ret;
+- }
+
+ if (fw->size > KAWETH_FIRMWARE_BUF_SIZE) {
+ dev_err(&kaweth->intf->dev, "Firmware too big: %zu\n",
+--- a/drivers/net/wimax/i2400m/fw.c
++++ b/drivers/net/wimax/i2400m/fw.c
+@@ -1578,11 +1578,8 @@ int i2400m_dev_bootstrap(struct i2400m *
+ }
+ d_printf(1, dev, "trying firmware %s (%d)\n", fw_name, itr);
+ ret = request_firmware(&fw, fw_name, dev);
+- if (ret < 0) {
+- dev_err(dev, "fw %s: cannot load file: %d\n",
+- fw_name, ret);
++ if (ret)
+ continue;
+- }
+ i2400m->fw_name = fw_name;
+ ret = i2400m_fw_bootstrap(i2400m, fw, flags);
+ release_firmware(fw);
+@@ -1625,8 +1622,6 @@ void i2400m_fw_cache(struct i2400m *i240
+ kref_init(&i2400m_fw->kref);
+ result = request_firmware(&i2400m_fw->fw, i2400m->fw_name, dev);
+ if (result < 0) {
+- dev_err(dev, "firmware %s: failed to cache: %d\n",
+- i2400m->fw_name, result);
+ kfree(i2400m_fw);
+ i2400m_fw = (void *) ~0;
+ } else
+--- a/drivers/net/wireless/ath/ath9k/hif_usb.c
++++ b/drivers/net/wireless/ath/ath9k/hif_usb.c
+@@ -1216,9 +1216,6 @@ static void ath9k_hif_usb_firmware_cb(co
+ if (!ret)
+ return;
+
+- dev_err(&hif_dev->udev->dev,
+- "ath9k_htc: Failed to get firmware %s\n",
+- hif_dev->fw_name);
+ goto err_fw;
+ }
+
+--- a/drivers/net/wireless/ath/carl9170/usb.c
++++ b/drivers/net/wireless/ath/carl9170/usb.c
+@@ -1029,7 +1029,6 @@ static void carl9170_usb_firmware_step2(
+ return;
+ }
+
+- dev_err(&ar->udev->dev, "firmware not found.\n");
+ carl9170_usb_firmware_failed(ar);
+ }
+
+--- a/drivers/net/wireless/atmel/at76c50x-usb.c
++++ b/drivers/net/wireless/atmel/at76c50x-usb.c
+@@ -1616,13 +1616,8 @@ static struct fwentry *at76_load_firmwar
+
+ at76_dbg(DBG_FW, "downloading firmware %s", fwe->fwname);
+ ret = request_firmware(&fwe->fw, fwe->fwname, &udev->dev);
+- if (ret < 0) {
+- dev_err(&udev->dev, "firmware %s not found!\n",
+- fwe->fwname);
+- dev_err(&udev->dev,
+- "you may need to download the firmware from http://developer.berlios.de/projects/at76c503a/\n");
++ if (ret)
+ goto exit;
+- }
+
+ at76_dbg(DBG_FW, "got it.");
+ fwh = (struct at76_fw_header *)(fwe->fw->data);
+--- a/drivers/net/wireless/atmel/atmel.c
++++ b/drivers/net/wireless/atmel/atmel.c
+@@ -3892,12 +3892,8 @@ static int reset_atmel_card(struct net_d
+ strcpy(priv->firmware_id, "atmel_at76c502.bin");
+ }
+ err = request_firmware(&fw_entry, priv->firmware_id, priv->sys_dev);
+- if (err != 0) {
+- printk(KERN_ALERT
+- "%s: firmware %s is missing, cannot continue.\n",
+- dev->name, priv->firmware_id);
++ if (err != 0)
+ return err;
+- }
+ } else {
+ int fw_index = 0;
+ int success = 0;
+--- a/drivers/net/wireless/broadcom/b43/main.c
++++ b/drivers/net/wireless/broadcom/b43/main.c
+@@ -2245,19 +2245,8 @@ int b43_do_request_fw(struct b43_request
+ }
+ err = request_firmware(&ctx->blob, ctx->fwname,
+ ctx->dev->dev->dev);
+- if (err == -ENOENT) {
+- snprintf(ctx->errors[ctx->req_type],
+- sizeof(ctx->errors[ctx->req_type]),
+- "Firmware file \"%s\" not found\n",
+- ctx->fwname);
++ if (err)
+ return err;
+- } else if (err) {
+- snprintf(ctx->errors[ctx->req_type],
+- sizeof(ctx->errors[ctx->req_type]),
+- "Firmware file \"%s\" request failed (err=%d)\n",
+- ctx->fwname, err);
+- return err;
+- }
+ fw_ready:
+ if (ctx->blob->size < sizeof(struct b43_fw_header))
+ goto err_format;
+--- a/drivers/net/wireless/broadcom/b43legacy/main.c
++++ b/drivers/net/wireless/broadcom/b43legacy/main.c
+@@ -1524,11 +1524,8 @@ static int do_request_fw(struct b43legac
+ } else {
+ err = request_firmware(fw, path, dev->dev->dev);
+ }
+- if (err) {
+- b43legacyerr(dev->wl, "Firmware file \"%s\" not found "
+- "or load failed.\n", path);
++ if (err)
+ return err;
+- }
+ if ((*fw)->size < sizeof(struct b43legacy_fw_header))
+ goto err_format;
+ hdr = (struct b43legacy_fw_header *)((*fw)->data);
+--- a/drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if.c
++++ b/drivers/net/wireless/broadcom/brcm80211/brcmsmac/mac80211_if.c
+@@ -377,19 +377,13 @@ static int brcms_request_fw(struct brcms
+ sprintf(fw_name, "%s-%d.fw", brcms_firmwares[i],
+ UCODE_LOADER_API_VER);
+ status = request_firmware(&wl->fw.fw_bin[i], fw_name, device);
+- if (status) {
+- wiphy_err(wl->wiphy, "%s: fail to load firmware %s\n",
+- KBUILD_MODNAME, fw_name);
++ if (status)
+ return status;
+- }
+ sprintf(fw_name, "%s_hdr-%d.fw", brcms_firmwares[i],
+ UCODE_LOADER_API_VER);
+ status = request_firmware(&wl->fw.fw_hdr[i], fw_name, device);
+- if (status) {
+- wiphy_err(wl->wiphy, "%s: fail to load firmware %s\n",
+- KBUILD_MODNAME, fw_name);
++ if (status)
+ return status;
+- }
+ wl->fw.hdr_num_entries[i] =
+ wl->fw.fw_hdr[i]->size / (sizeof(struct firmware_hdr));
+ }
+--- a/drivers/net/wireless/intel/ipw2x00/ipw2100.c
++++ b/drivers/net/wireless/intel/ipw2x00/ipw2100.c
+@@ -8370,12 +8370,8 @@ static int ipw2100_get_firmware(struct i
+
+ rc = request_firmware(&fw->fw_entry, fw_name, &priv->pci_dev->dev);
+
+- if (rc < 0) {
+- printk(KERN_ERR DRV_NAME ": "
+- "%s: Firmware '%s' not available or load failed.\n",
+- priv->net_dev->name, fw_name);
++ if (rc)
+ return rc;
+- }
+ IPW_DEBUG_INFO("firmware data %p size %zd\n", fw->fw_entry->data,
+ fw->fw_entry->size);
+
+--- a/drivers/net/wireless/intel/ipw2x00/ipw2200.c
++++ b/drivers/net/wireless/intel/ipw2x00/ipw2200.c
+@@ -3396,10 +3396,8 @@ static int ipw_get_fw(struct ipw_priv *p
+
+ /* ask firmware_class module to get the boot firmware off disk */
+ rc = request_firmware(raw, name, &priv->pci_dev->dev);
+- if (rc < 0) {
+- IPW_ERROR("%s request_firmware failed: Reason %d\n", name, rc);
++ if (rc)
+ return rc;
+- }
+
+ if ((*raw)->size < sizeof(*fw)) {
+ IPW_ERROR("%s is too small (%zd)\n", name, (*raw)->size);
+--- a/drivers/net/wireless/intel/iwlegacy/3945-mac.c
++++ b/drivers/net/wireless/intel/iwlegacy/3945-mac.c
+@@ -1837,7 +1837,6 @@ il3945_read_ucode(struct il_priv *il)
+ sprintf(buf, "%s%u%s", name_pre, idx, ".ucode");
+ ret = request_firmware(&ucode_raw, buf, &il->pci_dev->dev);
+ if (ret < 0) {
+- IL_ERR("%s firmware file req failed: %d\n", buf, ret);
+ if (ret == -ENOENT)
+ continue;
+ else
+--- a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
++++ b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
+@@ -235,8 +235,6 @@ static int iwl_request_firmware(struct i
+ }
+
+ if (drv->fw_index < cfg->ucode_api_min) {
+- IWL_ERR(drv, "no suitable firmware found!\n");
+-
+ if (cfg->ucode_api_min == cfg->ucode_api_max) {
+ IWL_ERR(drv, "%s%d is required\n", cfg->fw_name_pre,
+ cfg->ucode_api_max);
+--- a/drivers/net/wireless/intersil/orinoco/fw.c
++++ b/drivers/net/wireless/intersil/orinoco/fw.c
+@@ -132,7 +132,6 @@ orinoco_dl_firmware(struct orinoco_priva
+ err = request_firmware(&fw_entry, firmware, priv->dev);
+
+ if (err) {
+- dev_err(dev, "Cannot find firmware %s\n", firmware);
+ err = -ENOENT;
+ goto free;
+ }
+@@ -292,10 +291,8 @@ symbol_dl_firmware(struct orinoco_privat
+ const struct firmware *fw_entry;
+
+ if (!orinoco_cached_fw_get(priv, true)) {
+- if (request_firmware(&fw_entry, fw->pri_fw, priv->dev) != 0) {
+- dev_err(dev, "Cannot find firmware: %s\n", fw->pri_fw);
++ if (request_firmware(&fw_entry, fw->pri_fw, priv->dev) != 0)
+ return -ENOENT;
+- }
+ } else
+ fw_entry = orinoco_cached_fw_get(priv, true);
+
+@@ -311,10 +308,8 @@ symbol_dl_firmware(struct orinoco_privat
+ }
+
+ if (!orinoco_cached_fw_get(priv, false)) {
+- if (request_firmware(&fw_entry, fw->sta_fw, priv->dev) != 0) {
+- dev_err(dev, "Cannot find firmware: %s\n", fw->sta_fw);
++ if (request_firmware(&fw_entry, fw->sta_fw, priv->dev) != 0)
+ return -ENOENT;
+- }
+ } else
+ fw_entry = orinoco_cached_fw_get(priv, false);
+
+--- a/drivers/net/wireless/intersil/orinoco/orinoco_usb.c
++++ b/drivers/net/wireless/intersil/orinoco/orinoco_usb.c
+@@ -1664,7 +1664,6 @@ static int ezusb_probe(struct usb_interf
+ if (ezusb_firmware_download(upriv, &firmware) < 0)
+ goto error;
+ } else {
+- err("No firmware to download");
+ goto error;
+ }
+
+--- a/drivers/net/wireless/intersil/p54/p54pci.c
++++ b/drivers/net/wireless/intersil/p54/p54pci.c
+@@ -502,7 +502,6 @@ static void p54p_firmware_step2(const st
+ int err;
+
+ if (!fw) {
+- dev_err(&pdev->dev, "Cannot find firmware (isl3886pci)\n");
+ err = -ENOENT;
+ goto out;
+ }
+--- a/drivers/net/wireless/intersil/p54/p54spi.c
++++ b/drivers/net/wireless/intersil/p54/p54spi.c
+@@ -157,10 +157,8 @@ static int p54spi_request_firmware(struc
+ /* FIXME: should driver use it's own struct device? */
+ ret = request_firmware(&priv->firmware, "3826.arm", &priv->spi->dev);
+
+- if (ret < 0) {
+- dev_err(&priv->spi->dev, "request_firmware() failed: %d", ret);
++ if (ret)
+ return ret;
+- }
+
+ ret = p54_parse_firmware(dev, priv->firmware);
+ if (ret) {
+--- a/drivers/net/wireless/intersil/p54/p54usb.c
++++ b/drivers/net/wireless/intersil/p54/p54usb.c
+@@ -929,7 +929,6 @@ static void p54u_load_firmware_cb(const
+ err = p54u_start_ops(priv);
+ } else {
+ err = -ENOENT;
+- dev_err(&udev->dev, "Firmware not found.\n");
+ }
+
+ complete(&priv->fw_wait_load);
+--- a/drivers/net/wireless/intersil/prism54/islpci_dev.c
++++ b/drivers/net/wireless/intersil/prism54/islpci_dev.c
+@@ -80,12 +80,9 @@ isl_upload_firmware(islpci_private *priv
+ const u32 *fw_ptr;
+
+ rc = request_firmware(&fw_entry, priv->firmware, PRISM_FW_PDEV);
+- if (rc) {
+- printk(KERN_ERR
+- "%s: request_firmware() failed for '%s'\n",
+- "prism54", priv->firmware);
++ if (rc)
+ return rc;
+- }
++
+ /* prepare the Direct Memory Base register */
+ reg = ISL38XX_DEV_FIRMWARE_ADDRES;
+
+--- a/drivers/net/wireless/marvell/libertas_tf/if_usb.c
++++ b/drivers/net/wireless/marvell/libertas_tf/if_usb.c
+@@ -818,8 +818,6 @@ static int if_usb_prog_firmware(struct l
+ kernel_param_lock(THIS_MODULE);
+ ret = request_firmware(&cardp->fw, lbtf_fw_name, &cardp->udev->dev);
+ if (ret < 0) {
+- pr_err("request_firmware() failed with %#x\n", ret);
+- pr_err("firmware %s not found\n", lbtf_fw_name);
+ kernel_param_unlock(THIS_MODULE);
+ goto done;
+ }
+--- a/drivers/net/wireless/marvell/mwifiex/main.c
++++ b/drivers/net/wireless/marvell/mwifiex/main.c
+@@ -527,11 +527,8 @@ static int _mwifiex_fw_dpc(const struct
+ struct wireless_dev *wdev;
+ struct completion *fw_done = adapter->fw_done;
+
+- if (!firmware) {
+- mwifiex_dbg(adapter, ERROR,
+- "Failed to get firmware %s\n", adapter->fw_name);
++ if (!firmware)
+ goto err_dnld_fw;
+- }
+
+ memset(&fw, 0, sizeof(struct mwifiex_fw_image));
+ adapter->firmware = firmware;
+--- a/drivers/net/wireless/marvell/mwl8k.c
++++ b/drivers/net/wireless/marvell/mwl8k.c
+@@ -5727,16 +5727,12 @@ static int mwl8k_firmware_load_success(s
+ static void mwl8k_fw_state_machine(const struct firmware *fw, void *context)
+ {
+ struct mwl8k_priv *priv = context;
+- struct mwl8k_device_info *di = priv->device_info;
+ int rc;
+
+ switch (priv->fw_state) {
+ case FW_STATE_INIT:
+- if (!fw) {
+- printk(KERN_ERR "%s: Error requesting helper fw %s\n",
+- pci_name(priv->pdev), di->helper_image);
++ if (!fw)
+ goto fail;
+- }
+ priv->fw_helper = fw;
+ rc = mwl8k_request_fw(priv, priv->fw_pref, &priv->fw_ucode,
+ true);
+@@ -5771,11 +5767,8 @@ static void mwl8k_fw_state_machine(const
+ break;
+
+ case FW_STATE_LOADING_ALT:
+- if (!fw) {
+- printk(KERN_ERR "%s: Error requesting alt fw %s\n",
+- pci_name(priv->pdev), di->helper_image);
++ if (!fw)
+ goto fail;
+- }
+ priv->fw_ucode = fw;
+ rc = mwl8k_firmware_load_success(priv);
+ if (rc)
+@@ -5813,10 +5806,8 @@ retry:
+
+ /* Ask userland hotplug daemon for the device firmware */
+ rc = mwl8k_request_firmware(priv, fw_image, nowait);
+- if (rc) {
+- wiphy_err(hw->wiphy, "Firmware files not found\n");
++ if (rc)
+ return rc;
+- }
+
+ if (nowait)
+ return rc;
+--- a/drivers/net/wireless/ralink/rt2x00/rt2x00firmware.c
++++ b/drivers/net/wireless/ralink/rt2x00/rt2x00firmware.c
+@@ -38,10 +38,8 @@ static int rt2x00lib_request_firmware(st
+ rt2x00_info(rt2x00dev, "Loading firmware file '%s'\n", fw_name);
+
+ retval = request_firmware(&fw, fw_name, device);
+- if (retval) {
+- rt2x00_err(rt2x00dev, "Failed to request Firmware\n");
++ if (retval)
+ return retval;
+- }
+
+ if (!fw || !fw->size || !fw->data) {
+ rt2x00_err(rt2x00dev, "Failed to read Firmware\n");
+--- a/drivers/net/wireless/realtek/rtlwifi/core.c
++++ b/drivers/net/wireless/realtek/rtlwifi/core.c
+@@ -88,7 +88,6 @@ static void rtl_fw_do_work(const struct
+ if (!err)
+ goto found_alt;
+ }
+- pr_err("Selected firmware is not available\n");
+ rtlpriv->max_fw_size = 0;
+ goto exit;
+ }
+--- a/drivers/net/wireless/realtek/rtlwifi/rtl8192se/sw.c
++++ b/drivers/net/wireless/realtek/rtlwifi/rtl8192se/sw.c
+@@ -63,13 +63,11 @@ static void rtl92se_fw_cb(const struct f
+ struct ieee80211_hw *hw = context;
+ struct rtl_priv *rtlpriv = rtl_priv(hw);
+ struct rt_firmware *pfirmware = NULL;
+- char *fw_name = "rtlwifi/rtl8192sefw.bin";
+
+ rtl_dbg(rtlpriv, COMP_ERR, DBG_LOUD,
+ "Firmware callback routine entered!\n");
+ complete(&rtlpriv->firmware_loading_complete);
+ if (!firmware) {
+- pr_err("Firmware %s not available\n", fw_name);
+ rtlpriv->max_fw_size = 0;
+ return;
+ }
+--- a/drivers/net/wireless/ti/wl1251/main.c
++++ b/drivers/net/wireless/ti/wl1251/main.c
+@@ -57,10 +57,8 @@ static int wl1251_fetch_firmware(struct
+
+ ret = request_firmware(&fw, WL1251_FW_NAME, dev);
+
+- if (ret < 0) {
+- wl1251_error("could not get firmware: %d", ret);
++ if (ret)
+ return ret;
+- }
+
+ if (fw->size % 4) {
+ wl1251_error("firmware size is not multiple of 32 bits: %zu",
+@@ -96,10 +94,8 @@ static int wl1251_fetch_nvs(struct wl125
+
+ ret = request_firmware(&fw, WL1251_NVS_NAME, dev);
+
+- if (ret < 0) {
+- wl1251_error("could not get nvs file: %d", ret);
++ if (ret)
+ return ret;
+- }
+
+ if (fw->size % 4) {
+ wl1251_error("nvs size is not multiple of 32 bits: %zu",
+--- a/drivers/net/wireless/ti/wlcore/main.c
++++ b/drivers/net/wireless/ti/wlcore/main.c
+@@ -764,10 +764,8 @@ static int wl12xx_fetch_firmware(struct
+
+ ret = request_firmware(&fw, fw_name, wl->dev);
+
+- if (ret < 0) {
+- wl1271_error("could not get firmware %s: %d", fw_name, ret);
++ if (ret)
+ return ret;
+- }
+
+ if (fw->size % 4) {
+ wl1271_error("firmware size is not multiple of 32 bits: %zu",
+--- a/drivers/net/wireless/zydas/zd1201.c
++++ b/drivers/net/wireless/zydas/zd1201.c
+@@ -62,8 +62,6 @@ static int zd1201_fw_upload(struct usb_d
+
+ err = request_firmware(&fw_entry, fwfile, &dev->dev);
+ if (err) {
+- dev_err(&dev->dev, "Failed to load %s firmware file!\n", fwfile);
+- dev_err(&dev->dev, "Make sure the hotplug firmware loader is installed.\n");
+ dev_err(&dev->dev, "Goto http://linux-lc100020.sourceforge.net for more info.\n");
+ return err;
+ }
+--- a/drivers/net/wireless/zydas/zd1211rw/zd_usb.c
++++ b/drivers/net/wireless/zydas/zd1211rw/zd_usb.c
+@@ -108,16 +108,9 @@ static void int_urb_complete(struct urb
+ static int request_fw_file(
+ const struct firmware **fw, const char *name, struct device *device)
+ {
+- int r;
+-
+ dev_dbg_f(device, "fw name %s\n", name);
+
+- r = request_firmware(fw, name, device);
+- if (r)
+- dev_err(device,
+- "Could not load firmware file %s. Error number %d\n",
+- name, r);
+- return r;
++ return request_firmware(fw, name, device);
+ }
+
+ static inline u16 get_bcdDevice(const struct usb_device *udev)
+--- a/drivers/scsi/advansys.c
++++ b/drivers/scsi/advansys.c
+@@ -4103,8 +4103,6 @@ static int AscInitAsc1000Driver(ASC_DVC_
+
+ err = request_firmware(&fw, fwname, asc_dvc->drv_ptr->dev);
+ if (err) {
+- printk(KERN_ERR "Failed to load image \"%s\" err %d\n",
+- fwname, err);
+ asc_dvc->err_code |= ASC_IERR_MCODE_CHKSUM;
+ return err;
+ }
+@@ -4469,8 +4467,6 @@ static int AdvInitAsc3550Driver(ADV_DVC_
+
+ err = request_firmware(&fw, fwname, asc_dvc->drv_ptr->dev);
+ if (err) {
+- printk(KERN_ERR "Failed to load image \"%s\" err %d\n",
+- fwname, err);
+ asc_dvc->err_code = ASC_IERR_MCODE_CHKSUM;
+ return err;
+ }
+@@ -4969,8 +4965,6 @@ static int AdvInitAsc38C0800Driver(ADV_D
+
+ err = request_firmware(&fw, fwname, asc_dvc->drv_ptr->dev);
+ if (err) {
+- printk(KERN_ERR "Failed to load image \"%s\" err %d\n",
+- fwname, err);
+ asc_dvc->err_code = ASC_IERR_MCODE_CHKSUM;
+ return err;
+ }
+@@ -5457,8 +5451,6 @@ static int AdvInitAsc38C1600Driver(ADV_D
+
+ err = request_firmware(&fw, fwname, asc_dvc->drv_ptr->dev);
+ if (err) {
+- printk(KERN_ERR "Failed to load image \"%s\" err %d\n",
+- fwname, err);
+ asc_dvc->err_code = ASC_IERR_MCODE_CHKSUM;
+ return err;
+ }
+--- a/drivers/scsi/aic94xx/aic94xx_init.c
++++ b/drivers/scsi/aic94xx/aic94xx_init.c
+@@ -369,8 +369,6 @@ static ssize_t asd_store_update_bios(str
+ filename_ptr,
+ &asd_ha->pcidev->dev);
+ if (err) {
+- asd_printk("Failed to load bios image file %s, error %d\n",
+- filename_ptr, err);
+ err = FAIL_OPEN_BIOS_FILE;
+ goto out1;
+ }
+--- a/drivers/scsi/aic94xx/aic94xx_seq.c
++++ b/drivers/scsi/aic94xx/aic94xx_seq.c
+@@ -1302,11 +1302,8 @@ int asd_init_seqs(struct asd_ha_struct *
+
+ err = asd_request_firmware(asd_ha);
+
+- if (err) {
+- asd_printk("Failed to load sequencer firmware file %s, error %d\n",
+- SAS_RAZOR_SEQUENCER_FW_FILE, err);
++ if (err)
+ return err;
+- }
+
+ err = asd_seq_download_seqs(asd_ha);
+ if (err) {
+--- a/drivers/scsi/bfa/bfad.c
++++ b/drivers/scsi/bfa/bfad.c
+@@ -1749,7 +1749,6 @@ bfad_read_firmware(struct pci_dev *pdev,
+ const struct firmware *fw;
+
+ if (request_firmware(&fw, fw_name, &pdev->dev)) {
+- printk(KERN_ALERT "Can't locate firmware %s\n", fw_name);
+ *bfi_image = NULL;
+ goto out;
+ }
+--- a/drivers/scsi/ipr.c
++++ b/drivers/scsi/ipr.c
+@@ -4102,10 +4102,8 @@ static ssize_t ipr_store_update_fw(struc
+ if (endline)
+ *endline = '\0';
+
+- if (request_firmware(&fw_entry, fname, &ioa_cfg->pdev->dev)) {
+- dev_err(&ioa_cfg->pdev->dev, "Firmware file %s not found\n", fname);
++ if (request_firmware(&fw_entry, fname, &ioa_cfg->pdev->dev))
+ return -EIO;
+- }
+
+ image_hdr = (struct ipr_ucode_image_header *)fw_entry->data;
+
+--- a/drivers/scsi/pm8001/pm8001_ctl.c
++++ b/drivers/scsi/pm8001/pm8001_ctl.c
+@@ -841,9 +841,6 @@ static ssize_t pm8001_store_update_fw(st
+ pm8001_ha->dev);
+
+ if (ret) {
+- pm8001_dbg(pm8001_ha, FAIL,
+- "Failed to load firmware image file %s, error %d\n",
+- filename_ptr, ret);
+ pm8001_ha->fw_status = FAIL_OPEN_BIOS_FILE;
+ goto out;
+ }
+--- a/drivers/scsi/qla1280.c
++++ b/drivers/scsi/qla1280.c
+@@ -1514,8 +1514,6 @@ qla1280_request_firmware(struct scsi_qla
+ err = request_firmware(&fw, fwname, &ha->pdev->dev);
+
+ if (err) {
+- printk(KERN_ERR "Failed to load image \"%s\" err %d\n",
+- fwname, err);
+ fw = ERR_PTR(err);
+ goto unlock;
+ }
+--- a/drivers/scsi/qla2xxx/qla_init.c
++++ b/drivers/scsi/qla2xxx/qla_init.c
+@@ -7935,10 +7935,6 @@ qla2x00_load_risc(scsi_qla_host_t *vha,
+ /* Load firmware blob. */
+ blob = qla2x00_request_firmware(vha);
+ if (!blob) {
+- ql_log(ql_log_info, vha, 0x0083,
+- "Firmware image unavailable.\n");
+- ql_log(ql_log_info, vha, 0x0084,
+- "Firmware images can be retrieved from: "QLA_FW_URL ".\n");
+ return QLA_FUNCTION_FAILED;
+ }
+
+@@ -8041,9 +8037,6 @@ qla24xx_load_risc_blob(scsi_qla_host_t *
+
+ blob = qla2x00_request_firmware(vha);
+ if (!blob) {
+- ql_log(ql_log_warn, vha, 0x0092,
+- "-> Firmware file not found.\n");
+-
+ return QLA_FUNCTION_FAILED;
+ }
+
+--- a/drivers/scsi/qla2xxx/qla_nx.c
++++ b/drivers/scsi/qla2xxx/qla_nx.c
+@@ -2431,11 +2431,8 @@ try_blob_fw:
+
+ /* Load firmware blob. */
+ blob = ha->hablob = qla2x00_request_firmware(vha);
+- if (!blob) {
+- ql_log(ql_log_fatal, vha, 0x00a3,
+- "Firmware image not present.\n");
++ if (!blob)
+ goto fw_load_failed;
+- }
+
+ /* Validating firmware blob */
+ if (qla82xx_validate_firmware_blob(vha,
+--- a/drivers/scsi/qla2xxx/qla_os.c
++++ b/drivers/scsi/qla2xxx/qla_os.c
+@@ -7346,8 +7346,6 @@ qla2x00_request_firmware(scsi_qla_host_t
+ goto out;
+
+ if (request_firmware(&blob->fw, blob->name, &ha->pdev->dev)) {
+- ql_log(ql_log_warn, vha, 0x0063,
+- "Failed to load firmware image (%s).\n", blob->name);
+ blob->fw = NULL;
+ blob = NULL;
+ }
+--- a/drivers/scsi/qlogicpti.c
++++ b/drivers/scsi/qlogicpti.c
+@@ -486,11 +486,8 @@ static int qlogicpti_load_firmware(struc
+ int i, timeout;
+
+ err = request_firmware(&fw, fwname, &qpti->op->dev);
+- if (err) {
+- printk(KERN_ERR "Failed to load image \"%s\" err %d\n",
+- fwname, err);
++ if (err)
+ return err;
+- }
+ if (fw->size % 2) {
+ printk(KERN_ERR "Bogus length %zu in image \"%s\"\n",
+ fw->size, fwname);
+--- a/drivers/staging/rtl8192u/r819xU_firmware.c
++++ b/drivers/staging/rtl8192u/r819xU_firmware.c
+@@ -240,10 +240,8 @@ bool init_firmware(struct net_device *de
+ */
+ if (rst_opt == OPT_SYSTEM_RESET) {
+ rc = request_firmware(&fw_entry, fw_name[init_step], &priv->udev->dev);
+- if (rc < 0) {
+- RT_TRACE(COMP_ERR, "request firmware fail!\n");
++ if (rc)
+ goto download_firmware_fail;
+- }
+
+ if (fw_entry->size > sizeof(pfirmware->firmware_buf)) {
+ RT_TRACE(COMP_ERR, "img file size exceed the container buffer fail!\n");
+--- a/drivers/staging/rtl8712/hal_init.c
++++ b/drivers/staging/rtl8712/hal_init.c
+@@ -60,8 +60,6 @@ int rtl871x_load_fw(struct _adapter *pad
+ dev_info(dev, "r8712u: Loading firmware from \"%s\"\n", firmware_file);
+ rc = request_firmware_nowait(THIS_MODULE, 1, firmware_file, dev,
+ GFP_KERNEL, padapter, rtl871x_load_fw_cb);
+- if (rc)
+- dev_err(dev, "r8712u: Firmware request error %d\n", rc);
+ return rc;
+ }
+ MODULE_FIRMWARE("rtlwifi/rtl8712u.bin");
+--- a/drivers/staging/vt6656/main_usb.c
++++ b/drivers/staging/vt6656/main_usb.c
+@@ -109,11 +109,8 @@ static int vnt_download_firmware(struct
+ dev_dbg(dev, "---->Download firmware\n");
+
+ ret = request_firmware(&fw, FIRMWARE_NAME, dev);
+- if (ret) {
+- dev_err(dev, "firmware file %s request failed (%d)\n",
+- FIRMWARE_NAME, ret);
++ if (ret)
+ goto end;
+- }
+
+ for (ii = 0; ii < fw->size; ii += FIRMWARE_CHUNK_SIZE) {
+ length = min_t(int, fw->size - ii, FIRMWARE_CHUNK_SIZE);
+--- a/drivers/tty/cyclades.c
++++ b/drivers/tty/cyclades.c
+@@ -3484,10 +3484,8 @@ static int cyz_load_fw(struct pci_dev *p
+ int retval;
+
+ retval = request_firmware(&fw, "cyzfirm.bin", &pdev->dev);
+- if (retval) {
+- dev_err(&pdev->dev, "can't get firmware\n");
++ if (retval)
+ goto err;
+- }
+
+ /* Check whether the firmware is already loaded and running. If
+ positive, skip this board */
+--- a/drivers/tty/moxa.c
++++ b/drivers/tty/moxa.c
+@@ -854,13 +854,8 @@ static int moxa_init_board(struct moxa_b
+ }
+
+ ret = request_firmware(&fw, file, dev);
+- if (ret) {
+- printk(KERN_ERR "MOXA: request_firmware failed. Make sure "
+- "you've placed '%s' file into your firmware "
+- "loader directory (e.g. /lib/firmware)\n",
+- file);
++ if (ret)
+ goto err_free;
+- }
+
+ ret = moxa_load_fw(brd, fw);
+
+--- a/drivers/tty/serial/icom.c
++++ b/drivers/tty/serial/icom.c
+@@ -362,7 +362,6 @@ static void load_code(struct icom_port *
+
+ /* Load Call Setup into Adapter */
+ if (request_firmware(&fw, "icom_call_setup.bin", &dev->dev) < 0) {
+- dev_err(&dev->dev,"Unable to load icom_call_setup.bin firmware image\n");
+ status = -1;
+ goto load_code_exit;
+ }
+@@ -382,7 +381,6 @@ static void load_code(struct icom_port *
+
+ /* Load Resident DCE portion of Adapter */
+ if (request_firmware(&fw, "icom_res_dce.bin", &dev->dev) < 0) {
+- dev_err(&dev->dev,"Unable to load icom_res_dce.bin firmware image\n");
+ status = -1;
+ goto load_code_exit;
+ }
+@@ -427,7 +425,6 @@ static void load_code(struct icom_port *
+ }
+
+ if (request_firmware(&fw, "icom_asc.bin", &dev->dev) < 0) {
+- dev_err(&dev->dev,"Unable to load icom_asc.bin firmware image\n");
+ status = -1;
+ goto load_code_exit;
+ }
+--- a/drivers/tty/serial/ucc_uart.c
++++ b/drivers/tty/serial/ucc_uart.c
+@@ -1161,10 +1161,8 @@ static void uart_firmware_cont(const str
+ struct device *dev = context;
+ int ret;
+
+- if (!fw) {
+- dev_err(dev, "firmware not found\n");
++ if (!fw)
+ return;
+- }
+
+ firmware = (struct qe_firmware *) fw->data;
+
+--- a/drivers/usb/atm/cxacru.c
++++ b/drivers/usb/atm/cxacru.c
+@@ -1087,8 +1087,6 @@ static int cxacru_find_firmware(struct c
+ return -ENOENT;
+ }
+
+- usb_info(usbatm, "found firmware %s\n", buf);
+-
+ return 0;
+ }
+
+--- a/drivers/usb/atm/ueagle-atm.c
++++ b/drivers/usb/atm/ueagle-atm.c
+@@ -606,10 +606,8 @@ static void uea_upload_pre_firmware(cons
+ int ret, size;
+
+ uea_enters(usb);
+- if (!fw_entry) {
+- uea_err(usb, "firmware is not available\n");
++ if (!fw_entry)
+ goto err;
+- }
+
+ pfw = fw_entry->data;
+ size = fw_entry->size;
+@@ -704,10 +702,6 @@ static int uea_load_firmware(struct usb_
+ ret = request_firmware_nowait(THIS_MODULE, 1, fw_name, &usb->dev,
+ GFP_KERNEL, usb,
+ uea_upload_pre_firmware);
+- if (ret)
+- uea_err(usb, "firmware %s is not available\n", fw_name);
+- else
+- uea_info(usb, "loading firmware %s\n", fw_name);
+
+ uea_leaves(usb);
+ return ret;
+@@ -869,12 +863,8 @@ static int request_dsp(struct uea_softc
+ }
+
+ ret = request_firmware(&sc->dsp_firm, dsp_name, &sc->usb_dev->dev);
+- if (ret < 0) {
+- uea_err(INS_TO_USBDEV(sc),
+- "requesting firmware %s failed with error %d\n",
+- dsp_name, ret);
++ if (ret)
+ return ret;
+- }
+
+ if (UEA_CHIP_VERSION(sc) == EAGLE_IV)
+ ret = check_dsp_e4(sc->dsp_firm->data, sc->dsp_firm->size);
+@@ -1587,12 +1577,8 @@ static int request_cmvs_old(struct uea_s
+
+ cmvs_file_name(sc, cmv_name, 1);
+ ret = request_firmware(fw, cmv_name, &sc->usb_dev->dev);
+- if (ret < 0) {
+- uea_err(INS_TO_USBDEV(sc),
+- "requesting firmware %s failed with error %d\n",
+- cmv_name, ret);
++ if (ret)
+ return ret;
+- }
+
+ data = (u8 *) (*fw)->data;
+ size = (*fw)->size;
+@@ -1629,9 +1615,6 @@ static int request_cmvs(struct uea_softc
+ "try to get older cmvs\n", cmv_name);
+ return request_cmvs_old(sc, cmvs, fw);
+ }
+- uea_err(INS_TO_USBDEV(sc),
+- "requesting firmware %s failed with error %d\n",
+- cmv_name, ret);
+ return ret;
+ }
+
+@@ -1914,11 +1897,8 @@ static int load_XILINX_firmware(struct u
+ uea_enters(INS_TO_USBDEV(sc));
+
+ ret = request_firmware(&fw_entry, fw_name, &sc->usb_dev->dev);
+- if (ret) {
+- uea_err(INS_TO_USBDEV(sc), "firmware %s is not available\n",
+- fw_name);
++ if (ret)
+ goto err0;
+- }
+
+ pfw = fw_entry->data;
+ size = fw_entry->size;
+--- a/drivers/usb/misc/emi26.c
++++ b/drivers/usb/misc/emi26.c
+@@ -85,21 +85,17 @@ static int emi26_load_firmware (struct u
+
+ err = request_ihex_firmware(&loader_fw, "emi26/loader.fw", &dev->dev);
+ if (err)
+- goto nofw;
++ goto wraperr;
+
+ err = request_ihex_firmware(&bitstream_fw, "emi26/bitstream.fw",
+ &dev->dev);
+ if (err)
+- goto nofw;
++ goto wraperr;
+
+ err = request_ihex_firmware(&firmware_fw, "emi26/firmware.fw",
+ &dev->dev);
+- if (err) {
+- nofw:
+- dev_err(&dev->dev, "%s - request_firmware() failed\n",
+- __func__);
++ if (err)
+ goto wraperr;
+- }
+
+ /* Assert reset (stop the CPU in the EMI) */
+ err = emi26_set_reset(dev,1);
+--- a/drivers/usb/misc/ezusb.c
++++ b/drivers/usb/misc/ezusb.c
+@@ -76,12 +76,8 @@ static int ezusb_ihex_firmware_download(
+ const struct ihex_binrec *record;
+
+ if (request_ihex_firmware(&firmware, firmware_path,
+- &dev->dev)) {
+- dev_err(&dev->dev,
+- "%s - request \"%s\" failed\n",
+- __func__, firmware_path);
++ &dev->dev))
+ goto out;
+- }
+
+ ret = ezusb_set_reset(dev, fx.cpucs_reg, 0);
+ if (ret < 0)
+--- a/drivers/usb/misc/isight_firmware.c
++++ b/drivers/usb/misc/isight_firmware.c
+@@ -45,7 +45,6 @@ static int isight_firmware_load(struct u
+ return -ENOMEM;
+
+ if (request_firmware(&firmware, "isight.fw", &dev->dev) != 0) {
+- printk(KERN_ERR "Unable to load isight firmware\n");
+ ret = -ENODEV;
+ goto out;
+ }
+--- a/drivers/usb/serial/io_edgeport.c
++++ b/drivers/usb/serial/io_edgeport.c
+@@ -375,11 +375,8 @@ static void update_edgeport_E2PROM(struc
+
+ response = request_ihex_firmware(&fw, fw_name,
+ &edge_serial->serial->dev->dev);
+- if (response) {
+- dev_err(dev, "Failed to load image \"%s\" err %d\n",
+- fw_name, response);
++ if (response)
+ return;
+- }
+
+ rec = (const struct ihex_binrec *)fw->data;
+ BootMajorVersion = rec->data[0];
+--- a/drivers/usb/serial/io_ti.c
++++ b/drivers/usb/serial/io_ti.c
+@@ -1010,8 +1010,6 @@ static int download_fw(struct edgeport_s
+
+ status = request_firmware(&fw, fw_name, dev);
+ if (status) {
+- dev_err(dev, "Failed to load image \"%s\" err %d\n",
+- fw_name, status);
+ return status;
+ }
+
+--- a/drivers/usb/serial/ti_usb_3410_5052.c
++++ b/drivers/usb/serial/ti_usb_3410_5052.c
+@@ -1663,10 +1663,8 @@ static int ti_download_firmware(struct t
+ }
+
+ check_firmware:
+- if (status) {
+- dev_err(&dev->dev, "%s - firmware not found\n", __func__);
++ if (status)
+ return -ENOENT;
+- }
+ if (fw_p->size > TI_FIRMWARE_BUF_SIZE) {
+ dev_err(&dev->dev, "%s - firmware too large %zu\n", __func__, fw_p->size);
+ release_firmware(fw_p);
+--- a/drivers/video/fbdev/broadsheetfb.c
++++ b/drivers/video/fbdev/broadsheetfb.c
+@@ -743,10 +743,8 @@ static ssize_t broadsheet_loadstore_wave
+ return -EINVAL;
+
+ err = request_firmware(&fw_entry, "broadsheet.wbf", dev);
+- if (err < 0) {
+- dev_err(dev, "Failed to get broadsheet waveform\n");
++ if (err)
+ goto err_failed;
+- }
+
+ /* try to enforce reasonable min max on waveform */
+ if ((fw_entry->size < 8*1024) || (fw_entry->size > 64*1024)) {
+--- a/drivers/video/fbdev/metronomefb.c
++++ b/drivers/video/fbdev/metronomefb.c
+@@ -679,10 +679,8 @@ static int metronomefb_probe(struct plat
+ a) request the waveform file from userspace
+ b) process waveform and decode into metromem */
+ retval = request_firmware(&fw_entry, "metronome.wbf", &dev->dev);
+- if (retval < 0) {
+- dev_err(&dev->dev, "Failed to get waveform\n");
++ if (retval)
+ goto err_csum_table;
+- }
+
+ retval = load_waveform((u8 *) fw_entry->data, fw_entry->size, 3, 31,
+ par);
+--- a/sound/drivers/vx/vx_hwdep.c
++++ b/sound/drivers/vx/vx_hwdep.c
+@@ -58,10 +58,8 @@ int snd_vx_setup_firmware(struct vx_core
+ if (! fw_files[chip->type][i])
+ continue;
+ sprintf(path, "vx/%s", fw_files[chip->type][i]);
+- if (request_firmware(&fw, path, chip->dev)) {
+- snd_printk(KERN_ERR "vx: can't load firmware %s\n", path);
++ if (request_firmware(&fw, path, chip->dev))
+ return -ENOENT;
+- }
+ err = chip->ops->load_dsp(chip, i, fw);
+ if (err < 0) {
+ release_firmware(fw);
+--- a/sound/isa/msnd/msnd_pinnacle.c
++++ b/sound/isa/msnd/msnd_pinnacle.c
+@@ -376,15 +376,11 @@ static int upload_dsp_code(struct snd_ca
+ outb(HPBLKSEL_0, chip->io + HP_BLKS);
+
+ err = request_firmware(&init_fw, INITCODEFILE, card->dev);
+- if (err < 0) {
+- printk(KERN_ERR LOGNAME ": Error loading " INITCODEFILE);
++ if (err)
+ goto cleanup1;
+- }
+ err = request_firmware(&perm_fw, PERMCODEFILE, card->dev);
+- if (err < 0) {
+- printk(KERN_ERR LOGNAME ": Error loading " PERMCODEFILE);
++ if (err)
+ goto cleanup;
+- }
+
+ memcpy_toio(chip->mappedbase, perm_fw->data, perm_fw->size);
+ if (snd_msnd_upload_host(chip, init_fw->data, init_fw->size) < 0) {
+--- a/sound/isa/sscape.c
++++ b/sound/isa/sscape.c
+@@ -531,10 +531,8 @@ static int sscape_upload_bootblock(struc
+ int ret;
+
+ ret = request_firmware(&init_fw, "scope.cod", card->dev);
+- if (ret < 0) {
+- snd_printk(KERN_ERR "sscape: Error loading scope.cod");
++ if (ret)
+ return ret;
+- }
+ ret = upload_dma_data(sscape, init_fw->data, init_fw->size);
+
+ release_firmware(init_fw);
+@@ -571,11 +569,8 @@ static int sscape_upload_microcode(struc
+ snprintf(name, sizeof(name), "sndscape.co%d", version);
+
+ err = request_firmware(&init_fw, name, card->dev);
+- if (err < 0) {
+- snd_printk(KERN_ERR "sscape: Error loading sndscape.co%d",
+- version);
++ if (err)
+ return err;
+- }
+ err = upload_dma_data(sscape, init_fw->data, init_fw->size);
+ if (err == 0)
+ snd_printk(KERN_INFO "sscape: MIDI firmware loaded %zu KBs\n",
+--- a/sound/isa/wavefront/wavefront_synth.c
++++ b/sound/isa/wavefront/wavefront_synth.c
+@@ -1959,10 +1959,8 @@ wavefront_download_firmware (snd_wavefro
+ const struct firmware *firmware;
+
+ err = request_firmware(&firmware, path, dev->card->dev);
+- if (err < 0) {
+- snd_printk(KERN_ERR "firmware (%s) download failed!!!\n", path);
++ if (err)
+ return 1;
+- }
+
+ len = 0;
+ buf = firmware->data;
+--- a/sound/pci/asihpi/hpidspcd.c
++++ b/sound/pci/asihpi/hpidspcd.c
+@@ -35,8 +35,6 @@ short hpi_dsp_code_open(u32 adapter, voi
+ err = request_firmware(&firmware, fw_name, &dev->dev);
+
+ if (err || !firmware) {
+- dev_err(&dev->dev, "%d, request_firmware failed for %s\n",
+- err, fw_name);
+ goto error1;
+ }
+ if (firmware->size < sizeof(header)) {
+--- a/sound/pci/cs46xx/cs46xx_lib.c
++++ b/sound/pci/cs46xx/cs46xx_lib.c
+@@ -3235,11 +3235,8 @@ int snd_cs46xx_start_dsp(struct snd_cs46
+ #ifdef CONFIG_SND_CS46XX_NEW_DSP
+ for (i = 0; i < CS46XX_DSP_MODULES; i++) {
+ err = load_firmware(chip, &chip->modules[i], module_names[i]);
+- if (err < 0) {
+- dev_err(chip->card->dev, "firmware load error [%s]\n",
+- module_names[i]);
++ if (err < 0)
+ return err;
+- }
+ err = cs46xx_dsp_load_module(chip, chip->modules[i]);
+ if (err < 0) {
+ dev_err(chip->card->dev, "image download error [%s]\n",
+--- a/sound/pci/echoaudio/echoaudio.c
++++ b/sound/pci/echoaudio/echoaudio.c
+@@ -49,11 +49,8 @@ static int get_firmware(const struct fir
+ "firmware requested: %s\n", card_fw[fw_index].data);
+ snprintf(name, sizeof(name), "ea/%s", card_fw[fw_index].data);
+ err = request_firmware(fw_entry, name, &chip->pci->dev);
+- if (err < 0)
+- dev_err(chip->card->dev,
+- "get_firmware(): Firmware not available (%d)\n", err);
+ #ifdef CONFIG_PM_SLEEP
+- else
++ if (!err)
+ chip->fw_cache[fw_index] = *fw_entry;
+ #endif
+ return err;
+--- a/sound/pci/emu10k1/emu10k1_main.c
++++ b/sound/pci/emu10k1/emu10k1_main.c
+@@ -873,10 +873,8 @@ static int snd_emu10k1_emu1010_init(stru
+ dev_info(emu->card->dev, "emu1010: EMU_HANA_ID = 0x%x\n", reg);
+
+ err = snd_emu1010_load_firmware(emu, 0, &emu->firmware);
+- if (err < 0) {
+- dev_info(emu->card->dev, "emu1010: Loading Firmware failed\n");
++ if (err < 0)
+ return err;
+- }
+
+ /* ID, should read & 0x7f = 0x55 when FPGA programmed. */
+ snd_emu1010_fpga_read(emu, EMU_HANA_ID, &reg);
+--- a/sound/pci/hda/hda_intel.c
++++ b/sound/pci/hda/hda_intel.c
+@@ -2057,8 +2057,6 @@ static void azx_firmware_cb(const struct
+
+ if (fw)
+ chip->fw = fw;
+- else
+- dev_err(card->dev, "Cannot load firmware, continue without patching\n");
+ if (!chip->disabled) {
+ /* continue probing */
+ azx_probe_continue(chip);
+--- a/sound/pci/korg1212/korg1212.c
++++ b/sound/pci/korg1212/korg1212.c
+@@ -2335,7 +2335,6 @@ static int snd_korg1212_create(struct sn
+
+ err = request_firmware(&dsp_code, "korg/k1212.dsp", &pci->dev);
+ if (err < 0) {
+- snd_printk(KERN_ERR "firmware not available\n");
+ snd_korg1212_free(korg1212);
+ return err;
+ }
+--- a/sound/pci/mixart/mixart_hwdep.c
++++ b/sound/pci/mixart/mixart_hwdep.c
+@@ -558,11 +558,8 @@ int snd_mixart_setup_firmware(struct mix
+
+ for (i = 0; i < 3; i++) {
+ sprintf(path, "mixart/%s", fw_files[i]);
+- if (request_firmware(&fw_entry, path, &mgr->pci->dev)) {
+- dev_err(&mgr->pci->dev,
+- "miXart: can't load firmware %s\n", path);
++ if (request_firmware(&fw_entry, path, &mgr->pci->dev))
+ return -ENOENT;
+- }
+ /* fake hwdep dsp record */
+ err = mixart_dsp_load(mgr, i, fw_entry);
+ release_firmware(fw_entry);
+--- a/sound/pci/pcxhr/pcxhr_hwdep.c
++++ b/sound/pci/pcxhr/pcxhr_hwdep.c
+@@ -372,12 +372,8 @@ int pcxhr_setup_firmware(struct pcxhr_mg
+ if (!fw_files[fw_set][i])
+ continue;
+ sprintf(path, "pcxhr/%s", fw_files[fw_set][i]);
+- if (request_firmware(&fw_entry, path, &mgr->pci->dev)) {
+- dev_err(&mgr->pci->dev,
+- "pcxhr: can't load firmware %s\n",
+- path);
++ if (request_firmware(&fw_entry, path, &mgr->pci->dev))
+ return -ENOENT;
+- }
+ /* fake hwdep dsp record */
+ err = pcxhr_dsp_load(mgr, i, fw_entry);
+ release_firmware(fw_entry);
+--- a/sound/pci/riptide/riptide.c
++++ b/sound/pci/riptide/riptide.c
+@@ -1217,11 +1217,8 @@ static int try_to_load_firmware(struct c
+ if (!chip->fw_entry) {
+ err = request_firmware(&chip->fw_entry, "riptide.hex",
+ &chip->pci->dev);
+- if (err) {
+- snd_printk(KERN_ERR
+- "Riptide: Firmware not available %d\n", err);
++ if (err)
+ return -EIO;
+- }
+ }
+ err = loadfirmware(cif, chip->fw_entry->data, chip->fw_entry->size);
+ if (err) {
+--- a/sound/pci/rme9652/hdsp.c
++++ b/sound/pci/rme9652/hdsp.c
+@@ -5111,11 +5111,8 @@ static int hdsp_request_fw_loader(struct
+ return -EINVAL;
+ }
+
+- if (request_firmware(&fw, fwfile, &hdsp->pci->dev)) {
+- dev_err(hdsp->card->dev,
+- "cannot load firmware %s\n", fwfile);
++ if (request_firmware(&fw, fwfile, &hdsp->pci->dev))
+ return -ENOENT;
+- }
+ if (fw->size < HDSP_FIRMWARE_SIZE) {
+ dev_err(hdsp->card->dev,
+ "too short firmware size %d (expected %d)\n",
+--- a/sound/soc/codecs/wm2000.c
++++ b/sound/soc/codecs/wm2000.c
+@@ -894,10 +894,8 @@ static int wm2000_i2c_probe(struct i2c_c
+ }
+
+ ret = request_firmware(&fw, filename, &i2c->dev);
+- if (ret != 0) {
+- dev_err(&i2c->dev, "Failed to acquire ANC data: %d\n", ret);
++ if (ret != 0)
+ goto err_supplies;
+- }
+
+ /* Pre-cook the concatenation of the register address onto the image */
+ wm2000->anc_download_size = fw->size + 2;
+--- a/sound/usb/6fire/firmware.c
++++ b/sound/usb/6fire/firmware.c
+@@ -203,8 +203,6 @@ static int usb6fire_fw_ezusb_upload(
+ ret = request_firmware(&fw, fwname, &device->dev);
+ if (ret < 0) {
+ kfree(rec);
+- dev_err(&intf->dev,
+- "error requesting ezusb firmware %s.\n", fwname);
+ return ret;
+ }
+ ret = usb6fire_fw_ihex_init(fw, rec);
+@@ -280,8 +278,6 @@ static int usb6fire_fw_fpga_upload(
+
+ ret = request_firmware(&fw, fwname, &device->dev);
+ if (ret < 0) {
+- dev_err(&intf->dev, "unable to get fpga firmware %s.\n",
+- fwname);
+ kfree(buffer);
+ return -EIO;
+ }
diff --git a/debian/patches/bugfix/all/firmware_class-log-every-success-and-failure.patch b/debian/patches/bugfix/all/firmware_class-log-every-success-and-failure.patch
new file mode 100644
index 000000000..092a74496
--- /dev/null
+++ b/debian/patches/bugfix/all/firmware_class-log-every-success-and-failure.patch
@@ -0,0 +1,83 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: firmware_class: Log every success and failure against given device
+Date: Sun, 09 Dec 2012 16:02:00 +0000
+Forwarded: no
+
+The hundreds of users of request_firmware() have nearly as many
+different log formats for reporting failures. They also have only the
+vaguest hint as to what went wrong; only firmware_class really knows
+that. Therefore, add specific log messages for the failure modes that
+aren't currently logged.
+
+In case of a driver that tries multiple names, this may result in the
+impression that it failed to initialise. Therefore, also log successes.
+
+This makes many error messages in drivers redundant, which will be
+removed in later patches.
+
+This does not cover the case where we fall back to a user-mode helper
+(which is no longer enabled in Debian).
+
+NOTE: hw-detect will depend on the "firmware: failed to load %s (%d)\n"
+format to detect missing firmware.
+---
+ drivers/base/firmware_loader/fallback.c | 2 +-
+ drivers/base/firmware_loader/main.c | 17 ++++++++---------
+ 2 files changed, 9 insertions(+), 10 deletions(-)
+
+--- a/drivers/base/firmware_loader/fallback.c
++++ b/drivers/base/firmware_loader/fallback.c
+@@ -558,7 +558,7 @@ static int fw_load_from_user_helper(stru
+ if (opt_flags & FW_OPT_NOWAIT) {
+ timeout = usermodehelper_read_lock_wait(timeout);
+ if (!timeout) {
+- dev_dbg(device, "firmware: %s loading timed out\n",
++ dev_err(device, "firmware: %s loading timed out\n",
+ name);
+ return -EBUSY;
+ }
+--- a/drivers/base/firmware_loader/main.c
++++ b/drivers/base/firmware_loader/main.c
+@@ -535,18 +535,15 @@ fw_get_filesystem_firmware(struct device
+ file_size_ptr,
+ READING_FIRMWARE);
+ if (rc < 0) {
+- if (rc != -ENOENT)
+- dev_warn(device, "loading %s failed with error %d\n",
+- path, rc);
+- else
+- dev_dbg(device, "loading %s failed for no such file or directory.\n",
+- path);
++ dev_dbg(device, "loading %s failed with error %d\n",
++ path, rc);
+ continue;
+ }
+ size = rc;
+ rc = 0;
+
+- dev_dbg(device, "Loading firmware from %s\n", path);
++ dev_info(device, "firmware: direct-loading firmware %s\n",
++ fw_priv->fw_name);
+ if (decompress) {
+ dev_dbg(device, "f/w decompressing %s\n",
+ fw_priv->fw_name);
+@@ -559,8 +556,6 @@ fw_get_filesystem_firmware(struct device
+ continue;
+ }
+ } else {
+- dev_dbg(device, "direct-loading %s\n",
+- fw_priv->fw_name);
+ if (!fw_priv->data)
+ fw_priv->data = buffer;
+ fw_priv->size = size;
+@@ -570,6 +565,10 @@ fw_get_filesystem_firmware(struct device
+ }
+ __putname(path);
+
++ if (rc)
++ dev_err(device, "firmware: failed to load %s (%d)\n",
++ fw_priv->fw_name, rc);
++
+ return rc;
+ }
+
diff --git a/debian/patches/bugfix/all/fs-add-module_softdep-declarations-for-hard-coded-cr.patch b/debian/patches/bugfix/all/fs-add-module_softdep-declarations-for-hard-coded-cr.patch
new file mode 100644
index 000000000..540a1341c
--- /dev/null
+++ b/debian/patches/bugfix/all/fs-add-module_softdep-declarations-for-hard-coded-cr.patch
@@ -0,0 +1,70 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Wed, 13 Apr 2016 21:48:06 +0100
+Subject: fs: Add MODULE_SOFTDEP declarations for hard-coded crypto drivers
+Bug-Debian: https://bugs.debian.org/819725
+Forwarded: http://mid.gmane.org/20160517133631.GF7555@decadent.org.uk
+
+This helps initramfs builders and other tools to find the full
+dependencies of a module.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+[Lukas Wunner: Forward-ported to 4.11: drop parts applied upstream]
+---
+ fs/btrfs/super.c | 2 +-
+ fs/ext4/super.c | 2 +-
+ fs/f2fs/super.c | 1 +
+ fs/jbd2/journal.c | 1 +
+ fs/nfsd/nfsctl.c | 3 +++
+ 5 files changed, 7 insertions(+), 2 deletions(-)
+
+--- a/fs/btrfs/super.c
++++ b/fs/btrfs/super.c
+@@ -2597,7 +2597,7 @@ late_initcall(init_btrfs_fs);
+ module_exit(exit_btrfs_fs)
+
+ MODULE_LICENSE("GPL");
+-MODULE_SOFTDEP("pre: crc32c");
++MODULE_SOFTDEP("pre: crypto-crc32c");
+ MODULE_SOFTDEP("pre: xxhash64");
+ MODULE_SOFTDEP("pre: sha256");
+ MODULE_SOFTDEP("pre: blake2b-256");
+--- a/fs/ext4/super.c
++++ b/fs/ext4/super.c
+@@ -6746,6 +6746,6 @@ static void __exit ext4_exit_fs(void)
+ MODULE_AUTHOR("Remy Card, Stephen Tweedie, Andrew Morton, Andreas Dilger, Theodore Ts'o and others");
+ MODULE_DESCRIPTION("Fourth Extended Filesystem");
+ MODULE_LICENSE("GPL");
+-MODULE_SOFTDEP("pre: crc32c");
++MODULE_SOFTDEP("pre: crypto-crc32c");
+ module_init(ext4_init_fs)
+ module_exit(ext4_exit_fs)
+--- a/fs/f2fs/super.c
++++ b/fs/f2fs/super.c
+@@ -4122,5 +4122,5 @@ module_exit(exit_f2fs_fs)
+ MODULE_AUTHOR("Samsung Electronics's Praesto Team");
+ MODULE_DESCRIPTION("Flash Friendly File System");
+ MODULE_LICENSE("GPL");
+-MODULE_SOFTDEP("pre: crc32");
++MODULE_SOFTDEP("pre: crypto-crc32");
+
+--- a/fs/jbd2/journal.c
++++ b/fs/jbd2/journal.c
+@@ -3012,6 +3012,7 @@ static void __exit journal_exit(void)
+ }
+
+ MODULE_LICENSE("GPL");
++MODULE_SOFTDEP("pre: crypto-crc32c");
+ module_init(journal_init);
+ module_exit(journal_exit);
+
+--- a/fs/nfsd/nfsctl.c
++++ b/fs/nfsd/nfsctl.c
+@@ -1580,5 +1580,8 @@ static void __exit exit_nfsd(void)
+
+ MODULE_AUTHOR("Olaf Kirch <okir@monad.swb.de>");
+ MODULE_LICENSE("GPL");
++#ifdef CONFIG_NFSD_V4
++MODULE_SOFTDEP("pre: crypto-md5");
++#endif
+ module_init(init_nfsd)
+ module_exit(exit_nfsd)
diff --git a/debian/patches/bugfix/all/kbuild-fix-recordmcount-dependency.patch b/debian/patches/bugfix/all/kbuild-fix-recordmcount-dependency.patch
new file mode 100644
index 000000000..820479896
--- /dev/null
+++ b/debian/patches/bugfix/all/kbuild-fix-recordmcount-dependency.patch
@@ -0,0 +1,23 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: kbuild: Fix recordmcount dependency for OOT modules
+Date: Mon, 08 Sep 2014 18:31:24 +0100
+Forwarded: no
+
+We never rebuild anything in-tree when building an out-of-tree
+modules, so external modules should not depend on the recordmcount
+sources.
+
+--- a/scripts/Makefile.build
++++ b/scripts/Makefile.build
+@@ -232,6 +232,11 @@ cmd_record_mcount = \
+ endif # CC_USING_RECORD_MCOUNT
+ endif # CONFIG_FTRACE_MCOUNT_RECORD
+
++# Don't require recordmcount source for an OOT build.
++ifdef KBUILD_EXTMOD
++recordmcount_source :=
++endif
++
+ ifdef CONFIG_STACK_VALIDATION
+ ifneq ($(SKIP_STACK_VALIDATION),1)
+
diff --git a/debian/patches/bugfix/all/libcpupower-hide-private-function.patch b/debian/patches/bugfix/all/libcpupower-hide-private-function.patch
new file mode 100644
index 000000000..ac76e638e
--- /dev/null
+++ b/debian/patches/bugfix/all/libcpupower-hide-private-function.patch
@@ -0,0 +1,20 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sat, 01 Dec 2018 19:22:50 +0000
+Subject: libcpupower: Hide private function
+
+cpupower_read_sysfs() (previously known as sysfs_read_file()) is an
+internal function in libcpupower and should not be exported when
+libcpupower is a shared library. Change its visibility to "hidden".
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+--- a/tools/power/cpupower/lib/cpupower.c
++++ b/tools/power/cpupower/lib/cpupower.c
+@@ -15,6 +15,7 @@
+ #include "cpupower.h"
+ #include "cpupower_intern.h"
+
++__attribute__((visibility("hidden")))
+ unsigned int cpupower_read_sysfs(const char *path, char *buf, size_t buflen)
+ {
+ int fd;
diff --git a/debian/patches/bugfix/all/module-disable-matching-missing-version-crc.patch b/debian/patches/bugfix/all/module-disable-matching-missing-version-crc.patch
new file mode 100644
index 000000000..2ab62688a
--- /dev/null
+++ b/debian/patches/bugfix/all/module-disable-matching-missing-version-crc.patch
@@ -0,0 +1,23 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Fri, 02 Dec 2016 23:06:18 +0000
+Subject: module: Disable matching missing version CRC
+Forwarded: not-needed
+
+This partly reverts commit cd3caefb4663e3811d37cc2afad3cce642d60061.
+We want to fail closed if a symbol version CRC is missing, as the
+alternative may allow subverting module signing.
+---
+--- a/kernel/module.c
++++ b/kernel/module.c
+@@ -1313,9 +1313,8 @@ static int check_version(const struct lo
+ goto bad_version;
+ }
+
+- /* Broken toolchain. Warn once, then let it go.. */
+- pr_warn_once("%s: no symbol version for %s\n", info->name, symname);
+- return 1;
++ pr_warn("%s: no symbol version for %s\n", info->name, symname);
++ return 0;
+
+ bad_version:
+ pr_warn("%s: disagrees about version of symbol %s\n",
diff --git a/debian/patches/bugfix/all/netfilter-nf_tables-reject-QUEUE-DROP-verdict-parame.patch b/debian/patches/bugfix/all/netfilter-nf_tables-reject-QUEUE-DROP-verdict-parame.patch
new file mode 100644
index 000000000..a6e35b7f2
--- /dev/null
+++ b/debian/patches/bugfix/all/netfilter-nf_tables-reject-QUEUE-DROP-verdict-parame.patch
@@ -0,0 +1,73 @@
+From: Florian Westphal <fw@strlen.de>
+Date: Sat, 20 Jan 2024 22:50:04 +0100
+Subject: netfilter: nf_tables: reject QUEUE/DROP verdict parameters
+Origin: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/commit?id=11351dcb86e3eec82492e20a63bb36f5a340dc85
+Bug-Debian-Security: https://security-tracker.debian.org/tracker/CVE-2024-1086
+
+commit f342de4e2f33e0e39165d8639387aa6c19dff660 upstream.
+
+This reverts commit e0abdadcc6e1.
+
+core.c:nf_hook_slow assumes that the upper 16 bits of NF_DROP
+verdicts contain a valid errno, i.e. -EPERM, -EHOSTUNREACH or similar,
+or 0.
+
+Due to the reverted commit, its possible to provide a positive
+value, e.g. NF_ACCEPT (1), which results in use-after-free.
+
+Its not clear to me why this commit was made.
+
+NF_QUEUE is not used by nftables; "queue" rules in nftables
+will result in use of "nft_queue" expression.
+
+If we later need to allow specifiying errno values from userspace
+(do not know why), this has to call NF_DROP_GETERR and check that
+"err <= 0" holds true.
+
+Fixes: e0abdadcc6e1 ("netfilter: nf_tables: accept QUEUE/DROP verdict parameters")
+Cc: stable@vger.kernel.org
+Reported-by: Notselwyn <notselwyn@pwning.tech>
+Signed-off-by: Florian Westphal <fw@strlen.de>
+Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ net/netfilter/nf_tables_api.c | 16 ++++++----------
+ 1 file changed, 6 insertions(+), 10 deletions(-)
+
+diff --git a/net/netfilter/nf_tables_api.c b/net/netfilter/nf_tables_api.c
+index 0d0b76a5ddfa..f586e8b3c6cf 100644
+--- a/net/netfilter/nf_tables_api.c
++++ b/net/netfilter/nf_tables_api.c
+@@ -9340,16 +9340,10 @@ static int nft_verdict_init(const struct nft_ctx *ctx, struct nft_data *data,
+ data->verdict.code = ntohl(nla_get_be32(tb[NFTA_VERDICT_CODE]));
+
+ switch (data->verdict.code) {
+- default:
+- switch (data->verdict.code & NF_VERDICT_MASK) {
+- case NF_ACCEPT:
+- case NF_DROP:
+- case NF_QUEUE:
+- break;
+- default:
+- return -EINVAL;
+- }
+- fallthrough;
++ case NF_ACCEPT:
++ case NF_DROP:
++ case NF_QUEUE:
++ break;
+ case NFT_CONTINUE:
+ case NFT_BREAK:
+ case NFT_RETURN:
+@@ -9384,6 +9378,8 @@ static int nft_verdict_init(const struct nft_ctx *ctx, struct nft_data *data,
+
+ data->verdict.chain = chain;
+ break;
++ default:
++ return -EINVAL;
+ }
+
+ desc->len = sizeof(data->verdict);
+--
+2.43.0
+
diff --git a/debian/patches/bugfix/all/ovl-fail-on-invalid-uid-gid-mapping-at-copy-up.patch b/debian/patches/bugfix/all/ovl-fail-on-invalid-uid-gid-mapping-at-copy-up.patch
new file mode 100644
index 000000000..368787579
--- /dev/null
+++ b/debian/patches/bugfix/all/ovl-fail-on-invalid-uid-gid-mapping-at-copy-up.patch
@@ -0,0 +1,49 @@
+From: Miklos Szeredi <mszeredi@redhat.com>
+Date: Tue, 24 Jan 2023 16:41:18 +0100
+Subject: ovl: fail on invalid uid/gid mapping at copy up
+Origin: https://git.kernel.org/linus/4f11ada10d0ad3fd53e2bd67806351de63a4f9c3
+Bug-Debian-Security: https://security-tracker.debian.org/tracker/CVE-2023-0386
+
+If st_uid/st_gid doesn't have a mapping in the mounter's user_ns, then
+copy-up should fail, just like it would fail if the mounter task was doing
+the copy using "cp -a".
+
+There's a corner case where the "cp -a" would succeed but copy up fail: if
+there's a mapping of the invalid uid/gid (65534 by default) in the user
+namespace. This is because stat(2) will return this value if the mapping
+doesn't exist in the current user_ns and "cp -a" will in turn be able to
+create a file with this uid/gid.
+
+This behavior would be inconsistent with POSIX ACL's, which return -1 for
+invalid uid/gid which result in a failed copy.
+
+For consistency and simplicity fail the copy of the st_uid/st_gid are
+invalid.
+
+Fixes: 459c7c565ac3 ("ovl: unprivieged mounts")
+Cc: <stable@vger.kernel.org> # v5.11
+Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
+Reviewed-by: Christian Brauner <brauner@kernel.org>
+Reviewed-by: Seth Forshee <sforshee@kernel.org>
+---
+ fs/overlayfs/copy_up.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/fs/overlayfs/copy_up.c b/fs/overlayfs/copy_up.c
+index 140f2742074d..c14e90764e35 100644
+--- a/fs/overlayfs/copy_up.c
++++ b/fs/overlayfs/copy_up.c
+@@ -1011,6 +1011,10 @@ static int ovl_copy_up_one(struct dentry *parent, struct dentry *dentry,
+ if (err)
+ return err;
+
++ if (!kuid_has_mapping(current_user_ns(), ctx.stat.uid) ||
++ !kgid_has_mapping(current_user_ns(), ctx.stat.gid))
++ return -EOVERFLOW;
++
+ ctx.metacopy = ovl_need_meta_copy_up(dentry, ctx.stat.mode, flags);
+
+ if (parent) {
+--
+2.40.1
+
diff --git a/debian/patches/bugfix/all/partially-revert-net-socket-implement-64-bit-timestamps.patch b/debian/patches/bugfix/all/partially-revert-net-socket-implement-64-bit-timestamps.patch
new file mode 100644
index 000000000..7367a1416
--- /dev/null
+++ b/debian/patches/bugfix/all/partially-revert-net-socket-implement-64-bit-timestamps.patch
@@ -0,0 +1,140 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Tue, 20 Aug 2019 18:12:35 +0100
+Subject: Partially revert "net: socket: implement 64-bit timestamps"
+
+The introduction of SIOCGSTAMP{,NS}_OLD and move of SICOGSTAMP{,NS} to
+a different header has caused build failures for various user-space
+programs including qemu and suricata. It also causes a test failure
+for glibc.
+
+For now, remove the _OLD suffix on the old ioctl numbers and require
+programs using 64-bit timestamps to explicitly use SIOCGSTAMP{,NS}_NEW.
+
+References: https://lore.kernel.org/lkml/af0eb47a-5b98-1bd9-3e8d-652e7f28b01f@de.ibm.com/
+References: https://bugs.debian.org/934316
+References: https://ci.debian.net/data/autopkgtest/testing/amd64/g/glibc/2772289/log.gz
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+--- a/arch/alpha/include/uapi/asm/sockios.h
++++ b/arch/alpha/include/uapi/asm/sockios.h
+@@ -11,7 +11,7 @@
+ #define SIOCSPGRP _IOW('s', 8, pid_t)
+ #define SIOCGPGRP _IOR('s', 9, pid_t)
+
+-#define SIOCGSTAMP_OLD 0x8906 /* Get stamp (timeval) */
+-#define SIOCGSTAMPNS_OLD 0x8907 /* Get stamp (timespec) */
++#define SIOCGSTAMP 0x8906 /* Get stamp (timeval) */
++#define SIOCGSTAMPNS 0x8907 /* Get stamp (timespec) */
+
+ #endif /* _ASM_ALPHA_SOCKIOS_H */
+--- a/arch/mips/include/uapi/asm/sockios.h
++++ b/arch/mips/include/uapi/asm/sockios.h
+@@ -21,7 +21,7 @@
+ #define SIOCSPGRP _IOW('s', 8, pid_t)
+ #define SIOCGPGRP _IOR('s', 9, pid_t)
+
+-#define SIOCGSTAMP_OLD 0x8906 /* Get stamp (timeval) */
+-#define SIOCGSTAMPNS_OLD 0x8907 /* Get stamp (timespec) */
++#define SIOCGSTAMP 0x8906 /* Get stamp (timeval) */
++#define SIOCGSTAMPNS 0x8907 /* Get stamp (timespec) */
+
+ #endif /* _ASM_SOCKIOS_H */
+--- a/arch/sh/include/uapi/asm/sockios.h
++++ b/arch/sh/include/uapi/asm/sockios.h
+@@ -12,7 +12,6 @@
+ #define SIOCSPGRP _IOW('s', 8, pid_t)
+ #define SIOCGPGRP _IOR('s', 9, pid_t)
+
+-#define SIOCGSTAMP_OLD _IOR('s', 100, struct __kernel_old_timeval) /* Get stamp (timeval) */
+-#define SIOCGSTAMPNS_OLD _IOR('s', 101, struct __kernel_old_timespec) /* Get stamp (timespec) */
+-
++#define SIOCGSTAMP _IOR('s', 100, struct __kernel_old_timeval) /* Get stamp (timeval) */
++#define SIOCGSTAMPNS _IOR('s', 101, struct __kernel_old_timespec) /* Get stamp (timespec) */
+ #endif /* __ASM_SH_SOCKIOS_H */
+--- a/arch/xtensa/include/uapi/asm/sockios.h
++++ b/arch/xtensa/include/uapi/asm/sockios.h
+@@ -26,7 +26,7 @@
+ #define SIOCSPGRP _IOW('s', 8, pid_t)
+ #define SIOCGPGRP _IOR('s', 9, pid_t)
+
+-#define SIOCGSTAMP_OLD 0x8906 /* Get stamp (timeval) */
+-#define SIOCGSTAMPNS_OLD 0x8907 /* Get stamp (timespec) */
++#define SIOCGSTAMP 0x8906 /* Get stamp (timeval) */
++#define SIOCGSTAMPNS 0x8907 /* Get stamp (timespec) */
+
+ #endif /* _XTENSA_SOCKIOS_H */
+--- a/include/uapi/asm-generic/sockios.h
++++ b/include/uapi/asm-generic/sockios.h
+@@ -8,7 +8,7 @@
+ #define FIOGETOWN 0x8903
+ #define SIOCGPGRP 0x8904
+ #define SIOCATMARK 0x8905
+-#define SIOCGSTAMP_OLD 0x8906 /* Get stamp (timeval) */
+-#define SIOCGSTAMPNS_OLD 0x8907 /* Get stamp (timespec) */
++#define SIOCGSTAMP 0x8906 /* Get stamp (timeval) */
++#define SIOCGSTAMPNS 0x8907 /* Get stamp (timespec) */
+
+ #endif /* __ASM_GENERIC_SOCKIOS_H */
+--- a/include/uapi/linux/sockios.h
++++ b/include/uapi/linux/sockios.h
+@@ -19,7 +19,6 @@
+ #ifndef _LINUX_SOCKIOS_H
+ #define _LINUX_SOCKIOS_H
+
+-#include <asm/bitsperlong.h>
+ #include <asm/sockios.h>
+
+ /* Linux-specific socket ioctls */
+@@ -37,17 +36,6 @@
+ /* Get stamp (timespec) */
+ #define SIOCGSTAMPNS_NEW _IOR(SOCK_IOC_TYPE, 0x07, long long[2])
+
+-#if __BITS_PER_LONG == 64 || (defined(__x86_64__) && defined(__ILP32__))
+-/* on 64-bit and x32, avoid the ?: operator */
+-#define SIOCGSTAMP SIOCGSTAMP_OLD
+-#define SIOCGSTAMPNS SIOCGSTAMPNS_OLD
+-#else
+-#define SIOCGSTAMP ((sizeof(struct timeval)) == 8 ? \
+- SIOCGSTAMP_OLD : SIOCGSTAMP_NEW)
+-#define SIOCGSTAMPNS ((sizeof(struct timespec)) == 8 ? \
+- SIOCGSTAMPNS_OLD : SIOCGSTAMPNS_NEW)
+-#endif
+-
+ /* Routing table calls. */
+ #define SIOCADDRT 0x890B /* add routing table entry */
+ #define SIOCDELRT 0x890C /* delete routing table entry */
+--- a/net/socket.c
++++ b/net/socket.c
+@@ -1163,14 +1163,14 @@ static long sock_ioctl(struct file *file
+
+ err = open_related_ns(&net->ns, get_net_ns);
+ break;
+- case SIOCGSTAMP_OLD:
+- case SIOCGSTAMPNS_OLD:
++ case SIOCGSTAMP:
++ case SIOCGSTAMPNS:
+ if (!sock->ops->gettstamp) {
+ err = -ENOIOCTLCMD;
+ break;
+ }
+ err = sock->ops->gettstamp(sock, argp,
+- cmd == SIOCGSTAMP_OLD,
++ cmd == SIOCGSTAMP,
+ !IS_ENABLED(CONFIG_64BIT));
+ break;
+ case SIOCGSTAMP_NEW:
+@@ -3273,11 +3273,11 @@ static int compat_sock_ioctl_trans(struc
+ case SIOCGIFMAP:
+ case SIOCSIFMAP:
+ return compat_sioc_ifmap(net, cmd, argp);
+- case SIOCGSTAMP_OLD:
+- case SIOCGSTAMPNS_OLD:
++ case SIOCGSTAMP:
++ case SIOCGSTAMPNS:
+ if (!sock->ops->gettstamp)
+ return -ENOIOCTLCMD;
+- return sock->ops->gettstamp(sock, argp, cmd == SIOCGSTAMP_OLD,
++ return sock->ops->gettstamp(sock, argp, cmd == SIOCGSTAMP,
+ !COMPAT_USE_64BIT_TIME);
+
+ case SIOCETHTOOL:
diff --git a/debian/patches/bugfix/all/radeon-amdgpu-firmware-is-required-for-drm-and-kms-on-r600-onward.patch b/debian/patches/bugfix/all/radeon-amdgpu-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
new file mode 100644
index 000000000..a40c600ae
--- /dev/null
+++ b/debian/patches/bugfix/all/radeon-amdgpu-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
@@ -0,0 +1,139 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: radeon, amdgpu: Firmware is required for DRM and KMS on R600 onward
+Date: Tue, 08 Jan 2013 03:25:52 +0000
+Bug-Debian: https://bugs.debian.org/607194
+Bug-Debian: https://bugs.debian.org/607471
+Bug-Debian: https://bugs.debian.org/610851
+Bug-Debian: https://bugs.debian.org/627497
+Bug-Debian: https://bugs.debian.org/632212
+Bug-Debian: https://bugs.debian.org/637943
+Bug-Debian: https://bugs.debian.org/649448
+Bug-Debian: https://bugs.debian.org/697229
+Forwarded: no
+
+radeon requires firmware/microcode for the GPU in all chips, but for
+newer chips (apparently R600 'Evergreen' onward) it also expects
+firmware for the memory controller and other sub-blocks.
+
+radeon attempts to gracefully fall back and disable some features if
+the firmware is not available, but becomes unstable - the framebuffer
+and/or system memory may be corrupted, or the display may stay black.
+
+Therefore, perform a basic check for the existence of
+/lib/firmware/{radeon,amdgpu} when a device is probed, and abort if it
+is missing, except for the pre-R600 case.
+
+---
+ drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 29 ++++++++++++++++++++++++
+ drivers/gpu/drm/radeon/radeon_drv.c | 30 +++++++++++++++++++++++++
+ 2 files changed, 59 insertions(+)
+
+Index: debian-kernel/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
+===================================================================
+--- debian-kernel.orig/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
++++ debian-kernel/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
+@@ -36,6 +36,8 @@
+ #include <linux/vga_switcheroo.h>
+ #include <drm/drm_probe_helper.h>
+ #include <linux/mmu_notifier.h>
++#include <linux/namei.h>
++#include <linux/path.h>
+
+ #include "amdgpu.h"
+ #include "amdgpu_irq.h"
+@@ -1017,6 +1019,28 @@ MODULE_DEVICE_TABLE(pci, pciidlist);
+
+ static struct drm_driver kms_driver;
+
++/* Test that /lib/firmware/amdgpu is a directory (or symlink to a
++ * directory). We could try to match the udev search path, but let's
++ * keep it simple.
++ */
++static bool amdgpu_firmware_installed(void)
++{
++#if IS_BUILTIN(CONFIG_DRM_AMDGPU)
++ /* It may be too early to tell. Assume it's there. */
++ return true;
++#else
++ struct path path;
++
++ if (kern_path("/lib/firmware/amdgpu", LOOKUP_DIRECTORY | LOOKUP_FOLLOW,
++ &path) == 0) {
++ path_put(&path);
++ return true;
++ }
++
++ return false;
++#endif
++}
++
+ static int amdgpu_pci_probe(struct pci_dev *pdev,
+ const struct pci_device_id *ent)
+ {
+@@ -1070,6 +1094,11 @@ static int amdgpu_pci_probe(struct pci_d
+ }
+ #endif
+
++ if (!amdgpu_firmware_installed()) {
++ DRM_ERROR("amdgpu requires firmware installed\n");
++ return -ENODEV;
++ }
++
+ /* Get rid of things like offb */
+ ret = drm_fb_helper_remove_conflicting_pci_framebuffers(pdev, "amdgpudrmfb");
+ if (ret)
+Index: debian-kernel/drivers/gpu/drm/radeon/radeon_drv.c
+===================================================================
+--- debian-kernel.orig/drivers/gpu/drm/radeon/radeon_drv.c
++++ debian-kernel/drivers/gpu/drm/radeon/radeon_drv.c
+@@ -48,6 +48,8 @@
+ #include <drm/drm_probe_helper.h>
+ #include <drm/drm_vblank.h>
+ #include <drm/radeon_drm.h>
++#include <linux/namei.h>
++#include <linux/path.h>
+
+ #include "radeon_drv.h"
+
+@@ -321,6 +323,28 @@ static struct drm_driver kms_driver;
+
+ bool radeon_device_is_virtual(void);
+
++/* Test that /lib/firmware/radeon is a directory (or symlink to a
++ * directory). We could try to match the udev search path, but let's
++ * keep it simple.
++ */
++static bool radeon_firmware_installed(void)
++{
++#if IS_BUILTIN(CONFIG_DRM_RADEON)
++ /* It may be too early to tell. Assume it's there. */
++ return true;
++#else
++ struct path path;
++
++ if (kern_path("/lib/firmware/radeon", LOOKUP_DIRECTORY | LOOKUP_FOLLOW,
++ &path) == 0) {
++ path_put(&path);
++ return true;
++ }
++
++ return false;
++#endif
++}
++
+ static int radeon_pci_probe(struct pci_dev *pdev,
+ const struct pci_device_id *ent)
+ {
+@@ -360,6 +384,12 @@ static int radeon_pci_probe(struct pci_d
+ if (vga_switcheroo_client_probe_defer(pdev))
+ return -EPROBE_DEFER;
+
++ if ((ent->driver_data & RADEON_FAMILY_MASK) >= CHIP_R600 &&
++ !radeon_firmware_installed()) {
++ DRM_ERROR("radeon kernel modesetting for R600 or later requires firmware installed\n");
++ return -ENODEV;
++ }
++
+ /* Get rid of things like offb */
+ ret = drm_fb_helper_remove_conflicting_pci_framebuffers(pdev, "radeondrmfb");
+ if (ret)
diff --git a/debian/patches/bugfix/all/smb3-Replace-smb2pdu-1-element-arrays-with-flex-arra.patch b/debian/patches/bugfix/all/smb3-Replace-smb2pdu-1-element-arrays-with-flex-arra.patch
new file mode 100644
index 000000000..bc4e28488
--- /dev/null
+++ b/debian/patches/bugfix/all/smb3-Replace-smb2pdu-1-element-arrays-with-flex-arra.patch
@@ -0,0 +1,375 @@
+From: Kees Cook <keescook@chromium.org>
+Date: Fri, 26 Jan 2024 22:31:43 +0300
+Subject: smb3: Replace smb2pdu 1-element arrays with flex-arrays
+Origin: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/commit?id=06aa6eff7b243891c631b40852a0c453e274955d
+
+commit eb3e28c1e89b4984308777231887e41aa8a0151f upstream.
+
+The kernel is globally removing the ambiguous 0-length and 1-element
+arrays in favor of flexible arrays, so that we can gain both compile-time
+and run-time array bounds checking[1].
+
+Replace the trailing 1-element array with a flexible array in the
+following structures:
+
+ struct smb2_err_rsp
+ struct smb2_tree_connect_req
+ struct smb2_negotiate_rsp
+ struct smb2_sess_setup_req
+ struct smb2_sess_setup_rsp
+ struct smb2_read_req
+ struct smb2_read_rsp
+ struct smb2_write_req
+ struct smb2_write_rsp
+ struct smb2_query_directory_req
+ struct smb2_query_directory_rsp
+ struct smb2_set_info_req
+ struct smb2_change_notify_rsp
+ struct smb2_create_rsp
+ struct smb2_query_info_req
+ struct smb2_query_info_rsp
+
+Replace the trailing 1-element array with a flexible array, but leave
+the existing structure padding:
+
+ struct smb2_file_all_info
+ struct smb2_lock_req
+
+Adjust all related size calculations to match the changes to sizeof().
+
+No machine code output or .data section differences are produced after
+these changes.
+
+[1] For lots of details, see both:
+ https://docs.kernel.org/process/deprecated.html#zero-length-and-one-element-arrays
+ https://people.kernel.org/kees/bounded-flexible-arrays-in-c
+
+Cc: Steve French <sfrench@samba.org>
+Cc: Paulo Alcantara <pc@cjr.nz>
+Cc: Ronnie Sahlberg <lsahlber@redhat.com>
+Cc: Shyam Prasad N <sprasad@microsoft.com>
+Cc: Tom Talpey <tom@talpey.com>
+Cc: Namjae Jeon <linkinjeon@kernel.org>
+Cc: Sergey Senozhatsky <senozhatsky@chromium.org>
+Cc: linux-cifs@vger.kernel.org
+Cc: samba-technical@lists.samba.org
+Reviewed-by: Namjae Jeon <linkinjeon@kernel.org>
+Signed-off-by: Kees Cook <keescook@chromium.org>
+Signed-off-by: Steve French <stfrench@microsoft.com>
+Signed-off-by: Vasiliy Kovalev <kovalev@altlinux.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ fs/cifs/smb2misc.c | 2 +-
+ fs/cifs/smb2ops.c | 14 +++++++-------
+ fs/cifs/smb2pdu.c | 13 ++++++-------
+ fs/cifs/smb2pdu.h | 42 ++++++++++++++++++++++++------------------
+ 4 files changed, 38 insertions(+), 33 deletions(-)
+
+diff --git a/fs/cifs/smb2misc.c b/fs/cifs/smb2misc.c
+index b98bba887f84..660e00eb4206 100644
+--- a/fs/cifs/smb2misc.c
++++ b/fs/cifs/smb2misc.c
+@@ -117,7 +117,7 @@ static __u32 get_neg_ctxt_len(struct smb2_sync_hdr *hdr, __u32 len,
+ } else if (nc_offset + 1 == non_ctxlen) {
+ cifs_dbg(FYI, "no SPNEGO security blob in negprot rsp\n");
+ size_of_pad_before_neg_ctxts = 0;
+- } else if (non_ctxlen == SMB311_NEGPROT_BASE_SIZE)
++ } else if (non_ctxlen == SMB311_NEGPROT_BASE_SIZE + 1)
+ /* has padding, but no SPNEGO blob */
+ size_of_pad_before_neg_ctxts = nc_offset - non_ctxlen + 1;
+ else
+diff --git a/fs/cifs/smb2ops.c b/fs/cifs/smb2ops.c
+index 26edaeb4245d..84850a55c8b7 100644
+--- a/fs/cifs/smb2ops.c
++++ b/fs/cifs/smb2ops.c
+@@ -5561,7 +5561,7 @@ struct smb_version_values smb20_values = {
+ .header_size = sizeof(struct smb2_sync_hdr),
+ .header_preamble_size = 0,
+ .max_header_size = MAX_SMB2_HDR_SIZE,
+- .read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
++ .read_rsp_size = sizeof(struct smb2_read_rsp),
+ .lock_cmd = SMB2_LOCK,
+ .cap_unix = 0,
+ .cap_nt_find = SMB2_NT_FIND,
+@@ -5583,7 +5583,7 @@ struct smb_version_values smb21_values = {
+ .header_size = sizeof(struct smb2_sync_hdr),
+ .header_preamble_size = 0,
+ .max_header_size = MAX_SMB2_HDR_SIZE,
+- .read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
++ .read_rsp_size = sizeof(struct smb2_read_rsp),
+ .lock_cmd = SMB2_LOCK,
+ .cap_unix = 0,
+ .cap_nt_find = SMB2_NT_FIND,
+@@ -5604,7 +5604,7 @@ struct smb_version_values smb3any_values = {
+ .header_size = sizeof(struct smb2_sync_hdr),
+ .header_preamble_size = 0,
+ .max_header_size = MAX_SMB2_HDR_SIZE,
+- .read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
++ .read_rsp_size = sizeof(struct smb2_read_rsp),
+ .lock_cmd = SMB2_LOCK,
+ .cap_unix = 0,
+ .cap_nt_find = SMB2_NT_FIND,
+@@ -5625,7 +5625,7 @@ struct smb_version_values smbdefault_values = {
+ .header_size = sizeof(struct smb2_sync_hdr),
+ .header_preamble_size = 0,
+ .max_header_size = MAX_SMB2_HDR_SIZE,
+- .read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
++ .read_rsp_size = sizeof(struct smb2_read_rsp),
+ .lock_cmd = SMB2_LOCK,
+ .cap_unix = 0,
+ .cap_nt_find = SMB2_NT_FIND,
+@@ -5646,7 +5646,7 @@ struct smb_version_values smb30_values = {
+ .header_size = sizeof(struct smb2_sync_hdr),
+ .header_preamble_size = 0,
+ .max_header_size = MAX_SMB2_HDR_SIZE,
+- .read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
++ .read_rsp_size = sizeof(struct smb2_read_rsp),
+ .lock_cmd = SMB2_LOCK,
+ .cap_unix = 0,
+ .cap_nt_find = SMB2_NT_FIND,
+@@ -5667,7 +5667,7 @@ struct smb_version_values smb302_values = {
+ .header_size = sizeof(struct smb2_sync_hdr),
+ .header_preamble_size = 0,
+ .max_header_size = MAX_SMB2_HDR_SIZE,
+- .read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
++ .read_rsp_size = sizeof(struct smb2_read_rsp),
+ .lock_cmd = SMB2_LOCK,
+ .cap_unix = 0,
+ .cap_nt_find = SMB2_NT_FIND,
+@@ -5688,7 +5688,7 @@ struct smb_version_values smb311_values = {
+ .header_size = sizeof(struct smb2_sync_hdr),
+ .header_preamble_size = 0,
+ .max_header_size = MAX_SMB2_HDR_SIZE,
+- .read_rsp_size = sizeof(struct smb2_read_rsp) - 1,
++ .read_rsp_size = sizeof(struct smb2_read_rsp),
+ .lock_cmd = SMB2_LOCK,
+ .cap_unix = 0,
+ .cap_nt_find = SMB2_NT_FIND,
+diff --git a/fs/cifs/smb2pdu.c b/fs/cifs/smb2pdu.c
+index 76679dc4e632..4aec01841f0f 100644
+--- a/fs/cifs/smb2pdu.c
++++ b/fs/cifs/smb2pdu.c
+@@ -1261,7 +1261,7 @@ SMB2_sess_sendreceive(struct SMB2_sess_data *sess_data)
+
+ /* Testing shows that buffer offset must be at location of Buffer[0] */
+ req->SecurityBufferOffset =
+- cpu_to_le16(sizeof(struct smb2_sess_setup_req) - 1 /* pad */);
++ cpu_to_le16(sizeof(struct smb2_sess_setup_req));
+ req->SecurityBufferLength = cpu_to_le16(sess_data->iov[1].iov_len);
+
+ memset(&rqst, 0, sizeof(struct smb_rqst));
+@@ -1760,8 +1760,7 @@ SMB2_tcon(const unsigned int xid, struct cifs_ses *ses, const char *tree,
+ iov[0].iov_len = total_len - 1;
+
+ /* Testing shows that buffer offset must be at location of Buffer[0] */
+- req->PathOffset = cpu_to_le16(sizeof(struct smb2_tree_connect_req)
+- - 1 /* pad */);
++ req->PathOffset = cpu_to_le16(sizeof(struct smb2_tree_connect_req));
+ req->PathLength = cpu_to_le16(unc_path_len - 2);
+ iov[1].iov_base = unc_path;
+ iov[1].iov_len = unc_path_len;
+@@ -4676,7 +4675,7 @@ int SMB2_query_directory_init(const unsigned int xid,
+ memcpy(bufptr, &asteriks, len);
+
+ req->FileNameOffset =
+- cpu_to_le16(sizeof(struct smb2_query_directory_req) - 1);
++ cpu_to_le16(sizeof(struct smb2_query_directory_req));
+ req->FileNameLength = cpu_to_le16(len);
+ /*
+ * BB could be 30 bytes or so longer if we used SMB2 specific
+@@ -4873,7 +4872,7 @@ SMB2_set_info_init(struct cifs_tcon *tcon, struct TCP_Server_Info *server,
+ req->AdditionalInformation = cpu_to_le32(additional_info);
+
+ req->BufferOffset =
+- cpu_to_le16(sizeof(struct smb2_set_info_req) - 1);
++ cpu_to_le16(sizeof(struct smb2_set_info_req));
+ req->BufferLength = cpu_to_le32(*size);
+
+ memcpy(req->Buffer, *data, *size);
+@@ -5105,9 +5104,9 @@ build_qfs_info_req(struct kvec *iov, struct cifs_tcon *tcon,
+ req->VolatileFileId = volatile_fid;
+ /* 1 for pad */
+ req->InputBufferOffset =
+- cpu_to_le16(sizeof(struct smb2_query_info_req) - 1);
++ cpu_to_le16(sizeof(struct smb2_query_info_req));
+ req->OutputBufferLength = cpu_to_le32(
+- outbuf_len + sizeof(struct smb2_query_info_rsp) - 1);
++ outbuf_len + sizeof(struct smb2_query_info_rsp));
+
+ iov->iov_base = (char *)req;
+ iov->iov_len = total_len;
+diff --git a/fs/cifs/smb2pdu.h b/fs/cifs/smb2pdu.h
+index 89a732b31390..eaa873175318 100644
+--- a/fs/cifs/smb2pdu.h
++++ b/fs/cifs/smb2pdu.h
+@@ -220,7 +220,7 @@ struct smb2_err_rsp {
+ __le16 StructureSize;
+ __le16 Reserved; /* MBZ */
+ __le32 ByteCount; /* even if zero, at least one byte follows */
+- __u8 ErrorData[1]; /* variable length */
++ __u8 ErrorData[]; /* variable length */
+ } __packed;
+
+ #define SYMLINK_ERROR_TAG 0x4c4d5953
+@@ -464,7 +464,7 @@ struct smb2_negotiate_rsp {
+ __le16 SecurityBufferOffset;
+ __le16 SecurityBufferLength;
+ __le32 NegotiateContextOffset; /* Pre:SMB3.1.1 was reserved/ignored */
+- __u8 Buffer[1]; /* variable length GSS security buffer */
++ __u8 Buffer[]; /* variable length GSS security buffer */
+ } __packed;
+
+ /* Flags */
+@@ -481,7 +481,7 @@ struct smb2_sess_setup_req {
+ __le16 SecurityBufferOffset;
+ __le16 SecurityBufferLength;
+ __u64 PreviousSessionId;
+- __u8 Buffer[1]; /* variable length GSS security buffer */
++ __u8 Buffer[]; /* variable length GSS security buffer */
+ } __packed;
+
+ /* Currently defined SessionFlags */
+@@ -494,7 +494,7 @@ struct smb2_sess_setup_rsp {
+ __le16 SessionFlags;
+ __le16 SecurityBufferOffset;
+ __le16 SecurityBufferLength;
+- __u8 Buffer[1]; /* variable length GSS security buffer */
++ __u8 Buffer[]; /* variable length GSS security buffer */
+ } __packed;
+
+ struct smb2_logoff_req {
+@@ -520,7 +520,7 @@ struct smb2_tree_connect_req {
+ __le16 Flags; /* Reserved MBZ for dialects prior to SMB3.1.1 */
+ __le16 PathOffset;
+ __le16 PathLength;
+- __u8 Buffer[1]; /* variable length */
++ __u8 Buffer[]; /* variable length */
+ } __packed;
+
+ /* See MS-SMB2 section 2.2.9.2 */
+@@ -828,7 +828,7 @@ struct smb2_create_rsp {
+ __u64 VolatileFileId; /* opaque endianness */
+ __le32 CreateContextsOffset;
+ __le32 CreateContextsLength;
+- __u8 Buffer[1];
++ __u8 Buffer[];
+ } __packed;
+
+ struct create_context {
+@@ -1289,7 +1289,7 @@ struct smb2_read_plain_req {
+ __le32 RemainingBytes;
+ __le16 ReadChannelInfoOffset;
+ __le16 ReadChannelInfoLength;
+- __u8 Buffer[1];
++ __u8 Buffer[];
+ } __packed;
+
+ /* Read flags */
+@@ -1304,7 +1304,7 @@ struct smb2_read_rsp {
+ __le32 DataLength;
+ __le32 DataRemaining;
+ __u32 Flags;
+- __u8 Buffer[1];
++ __u8 Buffer[];
+ } __packed;
+
+ /* For write request Flags field below the following flags are defined: */
+@@ -1324,7 +1324,7 @@ struct smb2_write_req {
+ __le16 WriteChannelInfoOffset;
+ __le16 WriteChannelInfoLength;
+ __le32 Flags;
+- __u8 Buffer[1];
++ __u8 Buffer[];
+ } __packed;
+
+ struct smb2_write_rsp {
+@@ -1335,7 +1335,7 @@ struct smb2_write_rsp {
+ __le32 DataLength;
+ __le32 DataRemaining;
+ __u32 Reserved2;
+- __u8 Buffer[1];
++ __u8 Buffer[];
+ } __packed;
+
+ /* notify flags */
+@@ -1371,7 +1371,7 @@ struct smb2_change_notify_rsp {
+ __le16 StructureSize; /* Must be 9 */
+ __le16 OutputBufferOffset;
+ __le32 OutputBufferLength;
+- __u8 Buffer[1]; /* array of file notify structs */
++ __u8 Buffer[]; /* array of file notify structs */
+ } __packed;
+
+ #define SMB2_LOCKFLAG_SHARED_LOCK 0x0001
+@@ -1394,7 +1394,10 @@ struct smb2_lock_req {
+ __u64 PersistentFileId; /* opaque endianness */
+ __u64 VolatileFileId; /* opaque endianness */
+ /* Followed by at least one */
+- struct smb2_lock_element locks[1];
++ union {
++ struct smb2_lock_element lock;
++ DECLARE_FLEX_ARRAY(struct smb2_lock_element, locks);
++ };
+ } __packed;
+
+ struct smb2_lock_rsp {
+@@ -1434,7 +1437,7 @@ struct smb2_query_directory_req {
+ __le16 FileNameOffset;
+ __le16 FileNameLength;
+ __le32 OutputBufferLength;
+- __u8 Buffer[1];
++ __u8 Buffer[];
+ } __packed;
+
+ struct smb2_query_directory_rsp {
+@@ -1442,7 +1445,7 @@ struct smb2_query_directory_rsp {
+ __le16 StructureSize; /* Must be 9 */
+ __le16 OutputBufferOffset;
+ __le32 OutputBufferLength;
+- __u8 Buffer[1];
++ __u8 Buffer[];
+ } __packed;
+
+ /* Possible InfoType values */
+@@ -1483,7 +1486,7 @@ struct smb2_query_info_req {
+ __le32 Flags;
+ __u64 PersistentFileId; /* opaque endianness */
+ __u64 VolatileFileId; /* opaque endianness */
+- __u8 Buffer[1];
++ __u8 Buffer[];
+ } __packed;
+
+ struct smb2_query_info_rsp {
+@@ -1491,7 +1494,7 @@ struct smb2_query_info_rsp {
+ __le16 StructureSize; /* Must be 9 */
+ __le16 OutputBufferOffset;
+ __le32 OutputBufferLength;
+- __u8 Buffer[1];
++ __u8 Buffer[];
+ } __packed;
+
+ /*
+@@ -1514,7 +1517,7 @@ struct smb2_set_info_req {
+ __le32 AdditionalInformation;
+ __u64 PersistentFileId; /* opaque endianness */
+ __u64 VolatileFileId; /* opaque endianness */
+- __u8 Buffer[1];
++ __u8 Buffer[];
+ } __packed;
+
+ struct smb2_set_info_rsp {
+@@ -1716,7 +1719,10 @@ struct smb2_file_all_info { /* data block encoding of response to level 18 */
+ __le32 Mode;
+ __le32 AlignmentRequirement;
+ __le32 FileNameLength;
+- char FileName[1];
++ union {
++ char __pad; /* Legacy structure padding */
++ DECLARE_FLEX_ARRAY(char, FileName);
++ };
+ } __packed; /* level 18 Query */
+
+ struct smb2_file_eof_info { /* encoding of request for level 10 */
+--
+2.43.0
+
diff --git a/debian/patches/bugfix/all/stddef-Introduce-DECLARE_FLEX_ARRAY-helper.patch b/debian/patches/bugfix/all/stddef-Introduce-DECLARE_FLEX_ARRAY-helper.patch
new file mode 100644
index 000000000..8f8066530
--- /dev/null
+++ b/debian/patches/bugfix/all/stddef-Introduce-DECLARE_FLEX_ARRAY-helper.patch
@@ -0,0 +1,156 @@
+From: Kees Cook <keescook@chromium.org>
+Date: Fri, 26 Jan 2024 22:31:42 +0300
+Subject: stddef: Introduce DECLARE_FLEX_ARRAY() helper
+Origin: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git/commit?id=ef8316e0e29e98d9cf7e0689ddffa37e79d33736
+
+commit 3080ea5553cc909b000d1f1d964a9041962f2c5b upstream.
+
+There are many places where kernel code wants to have several different
+typed trailing flexible arrays. This would normally be done with multiple
+flexible arrays in a union, but since GCC and Clang don't (on the surface)
+allow this, there have been many open-coded workarounds, usually involving
+neighboring 0-element arrays at the end of a structure. For example,
+instead of something like this:
+
+struct thing {
+ ...
+ union {
+ struct type1 foo[];
+ struct type2 bar[];
+ };
+};
+
+code works around the compiler with:
+
+struct thing {
+ ...
+ struct type1 foo[0];
+ struct type2 bar[];
+};
+
+Another case is when a flexible array is wanted as the single member
+within a struct (which itself is usually in a union). For example, this
+would be worked around as:
+
+union many {
+ ...
+ struct {
+ struct type3 baz[0];
+ };
+};
+
+These kinds of work-arounds cause problems with size checks against such
+zero-element arrays (for example when building with -Warray-bounds and
+-Wzero-length-bounds, and with the coming FORTIFY_SOURCE improvements),
+so they must all be converted to "real" flexible arrays, avoiding warnings
+like this:
+
+fs/hpfs/anode.c: In function 'hpfs_add_sector_to_btree':
+fs/hpfs/anode.c:209:27: warning: array subscript 0 is outside the bounds of an interior zero-length array 'struct bplus_internal_node[0]' [-Wzero-length-bounds]
+ 209 | anode->btree.u.internal[0].down = cpu_to_le32(a);
+ | ~~~~~~~~~~~~~~~~~~~~~~~^~~
+In file included from fs/hpfs/hpfs_fn.h:26,
+ from fs/hpfs/anode.c:10:
+fs/hpfs/hpfs.h:412:32: note: while referencing 'internal'
+ 412 | struct bplus_internal_node internal[0]; /* (internal) 2-word entries giving
+ | ^~~~~~~~
+
+drivers/net/can/usb/etas_es58x/es58x_fd.c: In function 'es58x_fd_tx_can_msg':
+drivers/net/can/usb/etas_es58x/es58x_fd.c:360:35: warning: array subscript 65535 is outside the bounds of an interior zero-length array 'u8[0]' {aka 'unsigned char[]'} [-Wzero-length-bounds]
+ 360 | tx_can_msg = (typeof(tx_can_msg))&es58x_fd_urb_cmd->raw_msg[msg_len];
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In file included from drivers/net/can/usb/etas_es58x/es58x_core.h:22,
+ from drivers/net/can/usb/etas_es58x/es58x_fd.c:17:
+drivers/net/can/usb/etas_es58x/es58x_fd.h:231:6: note: while referencing 'raw_msg'
+ 231 | u8 raw_msg[0];
+ | ^~~~~~~
+
+However, it _is_ entirely possible to have one or more flexible arrays
+in a struct or union: it just has to be in another struct. And since it
+cannot be alone in a struct, such a struct must have at least 1 other
+named member -- but that member can be zero sized. Wrap all this nonsense
+into the new DECLARE_FLEX_ARRAY() in support of having flexible arrays
+in unions (or alone in a struct).
+
+As with struct_group(), since this is needed in UAPI headers as well,
+implement the core there, with a non-UAPI wrapper.
+
+Additionally update kernel-doc to understand its existence.
+
+https://github.com/KSPP/linux/issues/137
+
+Cc: Arnd Bergmann <arnd@arndb.de>
+Cc: "Gustavo A. R. Silva" <gustavoars@kernel.org>
+Signed-off-by: Kees Cook <keescook@chromium.org>
+Signed-off-by: Vasiliy Kovalev <kovalev@altlinux.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ include/linux/stddef.h | 13 +++++++++++++
+ include/uapi/linux/stddef.h | 16 ++++++++++++++++
+ scripts/kernel-doc | 3 ++-
+ 3 files changed, 31 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/stddef.h b/include/linux/stddef.h
+index 938216f8ab7e..31fdbb784c24 100644
+--- a/include/linux/stddef.h
++++ b/include/linux/stddef.h
+@@ -84,4 +84,17 @@ enum {
+ #define struct_group_tagged(TAG, NAME, MEMBERS...) \
+ __struct_group(TAG, NAME, /* no attrs */, MEMBERS)
+
++/**
++ * DECLARE_FLEX_ARRAY() - Declare a flexible array usable in a union
++ *
++ * @TYPE: The type of each flexible array element
++ * @NAME: The name of the flexible array member
++ *
++ * In order to have a flexible array member in a union or alone in a
++ * struct, it needs to be wrapped in an anonymous struct with at least 1
++ * named member, but that member can be empty.
++ */
++#define DECLARE_FLEX_ARRAY(TYPE, NAME) \
++ __DECLARE_FLEX_ARRAY(TYPE, NAME)
++
+ #endif
+diff --git a/include/uapi/linux/stddef.h b/include/uapi/linux/stddef.h
+index c3725b492263..7837ba4fe728 100644
+--- a/include/uapi/linux/stddef.h
++++ b/include/uapi/linux/stddef.h
+@@ -28,4 +28,20 @@
+ struct { MEMBERS } ATTRS; \
+ struct TAG { MEMBERS } ATTRS NAME; \
+ }
++
++/**
++ * __DECLARE_FLEX_ARRAY() - Declare a flexible array usable in a union
++ *
++ * @TYPE: The type of each flexible array element
++ * @NAME: The name of the flexible array member
++ *
++ * In order to have a flexible array member in a union or alone in a
++ * struct, it needs to be wrapped in an anonymous struct with at least 1
++ * named member, but that member can be empty.
++ */
++#define __DECLARE_FLEX_ARRAY(TYPE, NAME) \
++ struct { \
++ struct { } __empty_ ## NAME; \
++ TYPE NAME[]; \
++ }
+ #endif
+diff --git a/scripts/kernel-doc b/scripts/kernel-doc
+index 19af6dd160e6..7a04d4c05326 100755
+--- a/scripts/kernel-doc
++++ b/scripts/kernel-doc
+@@ -1232,7 +1232,8 @@ sub dump_struct($$) {
+ $members =~ s/DECLARE_KFIFO\s*\(([^,)]+),\s*([^,)]+),\s*([^,)]+)\)/$2 \*$1/gos;
+ # replace DECLARE_KFIFO_PTR
+ $members =~ s/DECLARE_KFIFO_PTR\s*\(([^,)]+),\s*([^,)]+)\)/$2 \*$1/gos;
+-
++ # replace DECLARE_FLEX_ARRAY
++ $members =~ s/(?:__)?DECLARE_FLEX_ARRAY\s*\($args,\s*$args\)/$1 $2\[\]/gos;
+ my $declaration = $members;
+
+ # Split nested struct/union elements as newer ones
+--
+2.43.0
+
diff --git a/debian/patches/bugfix/all/tools-build-remove-bpf-run-time-check-at-build-time.patch b/debian/patches/bugfix/all/tools-build-remove-bpf-run-time-check-at-build-time.patch
new file mode 100644
index 000000000..3818dbb17
--- /dev/null
+++ b/debian/patches/bugfix/all/tools-build-remove-bpf-run-time-check-at-build-time.patch
@@ -0,0 +1,27 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sun, 21 Feb 2016 15:33:15 +0000
+Subject: tools/build: Remove bpf() run-time check at build time
+Forwarded: no
+
+It is not correct to test that a syscall works on the build system's
+kernel. We might be building on an earlier kernel version or with
+security restrictions that block bpf().
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+--- a/tools/build/feature/test-bpf.c
++++ b/tools/build/feature/test-bpf.c
+@@ -35,8 +35,10 @@ int main(void)
+ attr.prog_flags = 0;
+
+ /*
+- * Test existence of __NR_bpf and BPF_PROG_LOAD.
+- * This call should fail if we run the testcase.
++ * bwh: Don't use the bpf() syscall as we might be building on a
++ * much older kernel. Do "use" the attr structure here to avoid
++ * a "set but not used" warning.
+ */
+- return syscall(__NR_bpf, BPF_PROG_LOAD, &attr, sizeof(attr));
++ (void)&attr;
++ return 0;
+ }
diff --git a/debian/patches/bugfix/all/tools-perf-man-date.patch b/debian/patches/bugfix/all/tools-perf-man-date.patch
new file mode 100644
index 000000000..80a19b554
--- /dev/null
+++ b/debian/patches/bugfix/all/tools-perf-man-date.patch
@@ -0,0 +1,44 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 13 Jul 2015 20:29:20 +0100
+Subject: perf tools: Use $KBUILD_BUILD_TIMESTAMP as man page date
+Forwarded: http://mid.gmane.org/20160517132809.GE7555@decadent.org.uk
+
+This allows man pages to be built reproducibly.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ tools/perf/Documentation/Makefile | 3 +++
+ tools/perf/Documentation/asciidoc.conf | 3 +++
+ 2 files changed, 6 insertions(+)
+
+diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
+index adc5a7e44b98..2161b2e838b7 100644
+--- a/tools/perf/Documentation/Makefile
++++ b/tools/perf/Documentation/Makefile
+@@ -132,6 +132,9 @@ endif
+ ifdef DOCBOOK_SUPPRESS_SP
+ XMLTO_EXTRA += -m manpage-suppress-sp.xsl
+ endif
++ifdef KBUILD_BUILD_TIMESTAMP
++ASCIIDOC_EXTRA += -a revdate=$(shell date -u -d '$(KBUILD_BUILD_TIMESTAMP)' +%Y-%m-%d)
++endif
+
+ SHELL_PATH ?= $(SHELL)
+ # Shell quote;
+diff --git a/tools/perf/Documentation/asciidoc.conf b/tools/perf/Documentation/asciidoc.conf
+index 2b62ba1e72b7..82d3060177ba 100644
+--- a/tools/perf/Documentation/asciidoc.conf
++++ b/tools/perf/Documentation/asciidoc.conf
+@@ -71,6 +71,9 @@ ifdef::backend-docbook[]
+ [header]
+ template::[header-declarations]
+ <refentry>
++<refentryinfo>
++template::[docinfo]
++</refentryinfo>
+ ifdef::perf_date[]
+ <refentryinfo><date>{perf_date}</date></refentryinfo>
+ endif::perf_date[]
+--
+2.23.0
+
diff --git a/debian/patches/bugfix/all/tools-perf-pmu-events-fix-reproducibility.patch b/debian/patches/bugfix/all/tools-perf-pmu-events-fix-reproducibility.patch
new file mode 100644
index 000000000..6da31fcd3
--- /dev/null
+++ b/debian/patches/bugfix/all/tools-perf-pmu-events-fix-reproducibility.patch
@@ -0,0 +1,175 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sun, 25 Aug 2019 13:49:41 +0100
+Subject: tools/perf: pmu-events: Fix reproducibility
+Forwarded: https://lore.kernel.org/lkml/20190825131329.naqzd5kwg7mw5d3f@decadent.org.uk/T/#u
+
+jevents.c uses nftw() to enumerate files and outputs the corresponding
+C structs in the order they are found. This makes it sensitive to
+directory ordering, so that the perf executable is not reproducible.
+
+To avoid this, store all the files and directories found and then sort
+them by their (relative) path. (This maintains the parent-first
+ordering that nftw() promises.) Then apply the existing callbacks to
+them in the sorted order.
+
+Don't both storing the stat buffers as we don't need them.
+
+References: https://tests.reproducible-builds.org/debian/dbdtxt/bullseye/i386/linux_4.19.37-6.diffoscope.txt.gz
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+--- a/tools/perf/pmu-events/jevents.c
++++ b/tools/perf/pmu-events/jevents.c
+@@ -50,6 +50,18 @@
+ #include "json.h"
+ #include "pmu-events.h"
+
++struct ordered_ftw_entry {
++ const char *fpath;
++ int typeflag;
++ struct FTW ftwbuf;
++};
++
++struct ordered_ftw_state {
++ struct ordered_ftw_entry *entries;
++ size_t n;
++ size_t max;
++};
++
+ int verbose;
+ char *prog;
+
+@@ -905,6 +917,78 @@ static int get_maxfds(void)
+ */
+ static FILE *eventsfp;
+ static char *mapfile;
++static struct ordered_ftw_state *ordered_ftw_state;
++
++static int ordered_ftw_add(const char *fpath, const struct stat *sb,
++ int typeflag, struct FTW *ftwbuf)
++{
++ struct ordered_ftw_state *state = ordered_ftw_state;
++ struct ordered_ftw_entry *entry;
++
++ if (ftwbuf->level == 0 || ftwbuf->level > 3)
++ return 0;
++
++ /* Grow array if necessary */
++ if (state->n >= state->max) {
++ if (state->max == 0)
++ state->max = 16;
++ else
++ state->max *= 2;
++ state->entries = realloc(state->entries,
++ state->max * sizeof(*state->entries));
++ }
++
++ entry = &state->entries[state->n++];
++ entry->fpath = strdup(fpath);
++ entry->typeflag = typeflag;
++ entry->ftwbuf = *ftwbuf;
++
++ return 0;
++}
++
++static int ordered_ftw_compare(const void *left, const void *right)
++{
++ const struct ordered_ftw_entry *left_entry = left;
++ const struct ordered_ftw_entry *right_entry = right;
++
++ return strcmp(left_entry->fpath, right_entry->fpath);
++}
++
++/*
++ * Wrapper for nftw() that iterates files in ASCII-order to ensure
++ * reproducible output
++ */
++static int ordered_ftw(const char *dirpath,
++ int (*fn)(const char *, int, struct FTW *),
++ int nopenfd)
++{
++ struct ordered_ftw_state state = { NULL, 0, 0 };
++ size_t i;
++ int rc;
++
++ ordered_ftw_state = &state;
++ rc = nftw(dirpath, ordered_ftw_add, nopenfd, 0);
++ if (rc)
++ goto out;
++
++ qsort(state.entries, state.n, sizeof(*state.entries),
++ ordered_ftw_compare);
++
++ for (i = 0; i < state.n; i++) {
++ rc = fn(state.entries[i].fpath,
++ state.entries[i].typeflag,
++ &state.entries[i].ftwbuf);
++ if (rc)
++ goto out;
++ }
++
++out:
++ for (i = 0; i < state.n; i++)
++ free((char *)state.entries[i].fpath);
++ free(state.entries);;
++
++ return rc;
++}
+
+ static int is_leaf_dir(const char *fpath)
+ {
+@@ -957,19 +1041,19 @@ static int is_json_file(const char *name
+ return 0;
+ }
+
+-static int preprocess_arch_std_files(const char *fpath, const struct stat *sb,
++static int preprocess_arch_std_files(const char *fpath,
+ int typeflag, struct FTW *ftwbuf)
+ {
+ int level = ftwbuf->level;
+ int is_file = typeflag == FTW_F;
+
+ if (level == 1 && is_file && is_json_file(fpath))
+- return json_events(fpath, save_arch_std_events, (void *)sb);
++ return json_events(fpath, save_arch_std_events, NULL);
+
+ return 0;
+ }
+
+-static int process_one_file(const char *fpath, const struct stat *sb,
++static int process_one_file(const char *fpath,
+ int typeflag, struct FTW *ftwbuf)
+ {
+ char *tblname, *bname;
+@@ -994,9 +1078,9 @@ static int process_one_file(const char *
+ } else
+ bname = (char *) fpath + ftwbuf->base;
+
+- pr_debug("%s %d %7jd %-20s %s\n",
++ pr_debug("%s %d %-20s %s\n",
+ is_file ? "f" : is_dir ? "d" : "x",
+- level, sb->st_size, bname, fpath);
++ level, bname, fpath);
+
+ /* base dir or too deep */
+ if (level == 0 || level > 3)
+@@ -1152,17 +1236,17 @@ int main(int argc, char *argv[])
+ */
+
+ maxfds = get_maxfds();
+- rc = nftw(ldirname, preprocess_arch_std_files, maxfds, 0);
++ rc = ordered_ftw(ldirname, preprocess_arch_std_files, maxfds);
+ if (rc)
+ goto err_processing_std_arch_event_dir;
+
+- rc = nftw(ldirname, process_one_file, maxfds, 0);
++ rc = ordered_ftw(ldirname, process_one_file, maxfds);
+ if (rc)
+ goto err_processing_dir;
+
+ sprintf(ldirname, "%s/test", start_dirname);
+
+- rc = nftw(ldirname, process_one_file, maxfds, 0);
++ rc = ordered_ftw(ldirname, process_one_file, maxfds);
+ if (rc)
+ goto err_processing_dir;
+
diff --git a/debian/patches/bugfix/all/tools-perf-remove-shebangs.patch b/debian/patches/bugfix/all/tools-perf-remove-shebangs.patch
new file mode 100644
index 000000000..9766e0e4a
--- /dev/null
+++ b/debian/patches/bugfix/all/tools-perf-remove-shebangs.patch
@@ -0,0 +1,39 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Fri, 25 Sep 2015 20:09:23 +0100
+Subject: tools/perf: Remove shebang lines from perf scripts
+Forwarded: no
+
+perf scripts need to be invoked through perf, not directly through
+perl (or other language interpreter). So including shebang lines in
+them is useless and possibly misleading.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+--- a/tools/perf/scripts/perl/rw-by-file.pl
++++ b/tools/perf/scripts/perl/rw-by-file.pl
+@@ -1,4 +1,3 @@
+-#!/usr/bin/perl -w
+ # SPDX-License-Identifier: GPL-2.0-only
+ # (c) 2009, Tom Zanussi <tzanussi@gmail.com>
+
+--- a/tools/perf/scripts/perl/rw-by-pid.pl
++++ b/tools/perf/scripts/perl/rw-by-pid.pl
+@@ -1,4 +1,3 @@
+-#!/usr/bin/perl -w
+ # SPDX-License-Identifier: GPL-2.0-only
+ # (c) 2009, Tom Zanussi <tzanussi@gmail.com>
+
+--- a/tools/perf/scripts/perl/rwtop.pl
++++ b/tools/perf/scripts/perl/rwtop.pl
+@@ -1,4 +1,3 @@
+-#!/usr/bin/perl -w
+ # SPDX-License-Identifier: GPL-2.0-only
+ # (c) 2010, Tom Zanussi <tzanussi@gmail.com>
+
+--- a/tools/perf/scripts/perl/wakeup-latency.pl
++++ b/tools/perf/scripts/perl/wakeup-latency.pl
+@@ -1,4 +1,3 @@
+-#!/usr/bin/perl -w
+ # SPDX-License-Identifier: GPL-2.0-only
+ # (c) 2009, Tom Zanussi <tzanussi@gmail.com>
+
diff --git a/debian/patches/bugfix/all/usbip-document-tcp-wrappers.patch b/debian/patches/bugfix/all/usbip-document-tcp-wrappers.patch
new file mode 100644
index 000000000..d9d7b301d
--- /dev/null
+++ b/debian/patches/bugfix/all/usbip-document-tcp-wrappers.patch
@@ -0,0 +1,29 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sun, 24 Jun 2012 02:51:39 +0100
+Subject: usbip: Document TCP wrappers
+Forwarded: no
+
+Add references to TCP wrappers configuration in the manual page.
+
+--- a/tools/usb/usbip/doc/usbipd.8
++++ b/tools/usb/usbip/doc/usbipd.8
+@@ -14,7 +14,8 @@ Devices have to explicitly be exported u
+ before usbipd makes them available to other hosts.
+
+ The daemon accepts connections from USB/IP clients
+-on TCP port 3240 by default.
++on TCP port 3240 by default. The clients authorised to connect may be
++configured as documented in hosts_access(5).
+
+ .SH OPTIONS
+ .HP
+@@ -69,7 +70,8 @@ Show version.
+
+ .B usbipd
+ offers no authentication or authorization for USB/IP. Any
+-USB/IP client can connect and use exported devices.
++USB/IP client running on an authorised host can connect and
++use exported devices.
+
+ .SH EXAMPLES
+
diff --git a/debian/patches/bugfix/all/vfs-move-cap_convert_nscap-call-into-vfs_setxattr.patch b/debian/patches/bugfix/all/vfs-move-cap_convert_nscap-call-into-vfs_setxattr.patch
new file mode 100644
index 000000000..d6f698251
--- /dev/null
+++ b/debian/patches/bugfix/all/vfs-move-cap_convert_nscap-call-into-vfs_setxattr.patch
@@ -0,0 +1,100 @@
+From: Miklos Szeredi <mszeredi@redhat.com>
+Date: Mon, 14 Dec 2020 15:26:13 +0100
+Subject: vfs: move cap_convert_nscap() call into vfs_setxattr()
+Origin: https://git.kernel.org/linus/7c03e2cda4a584cadc398e8f6641ca9988a39d52
+Bug-Debian-Security: https://security-tracker.debian.org/tracker/CVE-2021-3493
+
+cap_convert_nscap() does permission checking as well as conversion of the
+xattr value conditionally based on fs's user-ns.
+
+This is needed by overlayfs and probably other layered fs (ecryptfs) and is
+what vfs_foo() is supposed to do anyway.
+
+Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
+Acked-by: James Morris <jamorris@linux.microsoft.com>
+---
+ fs/xattr.c | 17 +++++++++++------
+ include/linux/capability.h | 2 +-
+ security/commoncap.c | 3 +--
+ 3 files changed, 13 insertions(+), 9 deletions(-)
+
+diff --git a/fs/xattr.c b/fs/xattr.c
+index cd7a563e8bcd..fd57153b1f61 100644
+--- a/fs/xattr.c
++++ b/fs/xattr.c
+@@ -276,8 +276,16 @@ vfs_setxattr(struct dentry *dentry, const char *name, const void *value,
+ {
+ struct inode *inode = dentry->d_inode;
+ struct inode *delegated_inode = NULL;
++ const void *orig_value = value;
+ int error;
+
++ if (size && strcmp(name, XATTR_NAME_CAPS) == 0) {
++ error = cap_convert_nscap(dentry, &value, size);
++ if (error < 0)
++ return error;
++ size = error;
++ }
++
+ retry_deleg:
+ inode_lock(inode);
+ error = __vfs_setxattr_locked(dentry, name, value, size, flags,
+@@ -289,6 +297,9 @@ vfs_setxattr(struct dentry *dentry, const char *name, const void *value,
+ if (!error)
+ goto retry_deleg;
+ }
++ if (value != orig_value)
++ kfree(value);
++
+ return error;
+ }
+ EXPORT_SYMBOL_GPL(vfs_setxattr);
+@@ -537,12 +548,6 @@ setxattr(struct dentry *d, const char __user *name, const void __user *value,
+ if ((strcmp(kname, XATTR_NAME_POSIX_ACL_ACCESS) == 0) ||
+ (strcmp(kname, XATTR_NAME_POSIX_ACL_DEFAULT) == 0))
+ posix_acl_fix_xattr_from_user(kvalue, size);
+- else if (strcmp(kname, XATTR_NAME_CAPS) == 0) {
+- error = cap_convert_nscap(d, &kvalue, size);
+- if (error < 0)
+- goto out;
+- size = error;
+- }
+ }
+
+ error = vfs_setxattr(d, kname, kvalue, size, flags);
+diff --git a/include/linux/capability.h b/include/linux/capability.h
+index 1e7fe311cabe..b2f698915c0f 100644
+--- a/include/linux/capability.h
++++ b/include/linux/capability.h
+@@ -270,6 +270,6 @@ static inline bool checkpoint_restore_ns_capable(struct user_namespace *ns)
+ /* audit system wants to get cap info from files as well */
+ extern int get_vfs_caps_from_disk(const struct dentry *dentry, struct cpu_vfs_cap_data *cpu_caps);
+
+-extern int cap_convert_nscap(struct dentry *dentry, void **ivalue, size_t size);
++extern int cap_convert_nscap(struct dentry *dentry, const void **ivalue, size_t size);
+
+ #endif /* !_LINUX_CAPABILITY_H */
+diff --git a/security/commoncap.c b/security/commoncap.c
+index 59bf3c1674c8..bacc1111d871 100644
+--- a/security/commoncap.c
++++ b/security/commoncap.c
+@@ -473,7 +473,7 @@ static bool validheader(size_t size, const struct vfs_cap_data *cap)
+ *
+ * If all is ok, we return the new size, on error return < 0.
+ */
+-int cap_convert_nscap(struct dentry *dentry, void **ivalue, size_t size)
++int cap_convert_nscap(struct dentry *dentry, const void **ivalue, size_t size)
+ {
+ struct vfs_ns_cap_data *nscap;
+ uid_t nsrootid;
+@@ -516,7 +516,6 @@ int cap_convert_nscap(struct dentry *dentry, void **ivalue, size_t size)
+ nscap->magic_etc = cpu_to_le32(nsmagic);
+ memcpy(&nscap->data, &cap->data, sizeof(__le32) * 2 * VFS_CAP_U32);
+
+- kvfree(*ivalue);
+ *ivalue = nscap;
+ return newsize;
+ }
+--
+2.31.0
+
diff --git a/debian/patches/bugfix/all/wireguard-ignore-config_android.patch b/debian/patches/bugfix/all/wireguard-ignore-config_android.patch
new file mode 100644
index 000000000..5ff53c0b7
--- /dev/null
+++ b/debian/patches/bugfix/all/wireguard-ignore-config_android.patch
@@ -0,0 +1,29 @@
+From: Ben Hutchings <benh@debian.org>
+Date: Thu, 07 Jul 2022 18:58:43 +0200
+Subject: wireguard: Clear keys after suspend despite CONFIG_ANDROID=y
+Forwarded: not-needed
+
+WireGuard assumes that CONFIG_ANDROID implies Android power
+management, i.e. user-space suspending the system automatically at
+short intervals, and so does not clear keys after a suspend/resume
+cycle. Debian systems don't do that kind of power management but we
+do set CONFIG_ANDROID on some architectures as a dependency of Binder.
+
+In 5.20, CONFIG_PM_USERSPACE_AUTOSLEEP will be introduced to tell the
+kernel that this kind of power management is in use, and
+CONFIG_ANDROID will be removed. For now, remove this one test that
+does the wrong thing for us.
+
+References: https://lwn.net/Articles/899743/
+---
+--- a/drivers/net/wireguard/device.c
++++ b/drivers/net/wireguard/device.c
+@@ -71,7 +71,7 @@ static int wg_pm_notification(struct not
+ * its normal operation rather than as a somewhat rare event, then we
+ * don't actually want to clear keys.
+ */
+- if (IS_ENABLED(CONFIG_PM_AUTOSLEEP) || IS_ENABLED(CONFIG_ANDROID))
++ if (IS_ENABLED(CONFIG_PM_AUTOSLEEP))
+ return 0;
+
+ if (action != PM_HIBERNATION_PREPARE && action != PM_SUSPEND_PREPARE)
diff --git a/debian/patches/bugfix/arm/arm-dts-kirkwood-fix-sata-pinmux-ing-for-ts419.patch b/debian/patches/bugfix/arm/arm-dts-kirkwood-fix-sata-pinmux-ing-for-ts419.patch
new file mode 100644
index 000000000..9e6622fb0
--- /dev/null
+++ b/debian/patches/bugfix/arm/arm-dts-kirkwood-fix-sata-pinmux-ing-for-ts419.patch
@@ -0,0 +1,37 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Fri, 17 Feb 2017 01:30:30 +0000
+Subject: ARM: dts: kirkwood: Fix SATA pinmux-ing for TS419
+Forwarded: https://www.spinics.net/lists/arm-kernel/msg563610.html
+Bug-Debian: https://bugs.debian.org/855017
+
+The old board code for the TS419 assigns MPP pins 15 and 16 as SATA
+activity signals (and none as SATA presence signals). Currently the
+device tree assigns the SoC's default pinmux groups for SATA, which
+conflict with the second Ethernet port.
+
+Reported-by: gmbh@gazeta.pl
+Tested-by: gmbh@gazeta.pl
+References: https://bugs.debian.org/855017
+Cc: stable@vger.kernel.org # 3.15+
+Fixes: 934b524b3f49 ("ARM: Kirkwood: Add DT description of QNAP 419")
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ arch/arm/boot/dts/kirkwood-ts419.dtsi | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/arch/arm/boot/dts/kirkwood-ts419.dtsi b/arch/arm/boot/dts/kirkwood-ts419.dtsi
+index 02bd53762705..532506cb0f4a 100644
+--- a/arch/arm/boot/dts/kirkwood-ts419.dtsi
++++ b/arch/arm/boot/dts/kirkwood-ts419.dtsi
+@@ -73,3 +73,11 @@
+ phy-handle = <&ethphy1>;
+ };
+ };
++
++&pmx_sata0 {
++ marvell,pins = "mpp15";
++};
++
++&pmx_sata1 {
++ marvell,pins = "mpp16";
++};
diff --git a/debian/patches/bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch b/debian/patches/bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch
new file mode 100644
index 000000000..1bdd37fbe
--- /dev/null
+++ b/debian/patches/bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch
@@ -0,0 +1,31 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Wed, 11 Jul 2018 23:40:55 +0100
+Subject: ARM: mm: Export __sync_icache_dcache() for xen-privcmd
+Forwarded: https://marc.info/?l=linux-arm-kernel&m=153134944429241
+
+The xen-privcmd driver, which can be modular, calls set_pte_at()
+which in turn may call __sync_icache_dcache().
+
+The call to __sync_icache_dcache() may be optimised out because it is
+conditional on !pte_special(), and xen-privcmd calls pte_mkspecial().
+However, in a non-LPAE configuration there is no "special" bit and the
+call is really unconditional.
+
+Fixes: 3ad0876554ca ("xen/privcmd: add IOCTL_PRIVCMD_MMAP_RESOURCE")
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ arch/arm/mm/flush.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+Index: debian-kernel/arch/arm/mm/flush.c
+===================================================================
+--- debian-kernel.orig/arch/arm/mm/flush.c
++++ debian-kernel/arch/arm/mm/flush.c
+@@ -292,6 +292,7 @@ void __sync_icache_dcache(pte_t pteval)
+ if (pte_exec(pteval))
+ __flush_icache_all();
+ }
++EXPORT_SYMBOL_GPL(__sync_icache_dcache);
+ #endif
+
+ /*
diff --git a/debian/patches/bugfix/arm64/arm64-acpi-Add-fixup-for-HPE-m400-quirks.patch b/debian/patches/bugfix/arm64/arm64-acpi-Add-fixup-for-HPE-m400-quirks.patch
new file mode 100644
index 000000000..b3b031668
--- /dev/null
+++ b/debian/patches/bugfix/arm64/arm64-acpi-Add-fixup-for-HPE-m400-quirks.patch
@@ -0,0 +1,92 @@
+From: Geoff Levand <geoff@infradead.org>
+Date: Wed, 13 Jun 2018 10:56:08 -0700
+Subject: arm64/acpi: Add fixup for HPE m400 quirks
+Forwarded: https://patchwork.codeaurora.org/patch/547277/
+
+Adds a new ACPI init routine acpi_fixup_m400_quirks that adds
+a work-around for HPE ProLiant m400 APEI firmware problems.
+
+The work-around disables APEI when CONFIG_ACPI_APEI is set and
+m400 firmware is detected. Without this fixup m400 systems
+experience errors like these on startup:
+
+ [Hardware Error]: Hardware error from APEI Generic Hardware Error Source: 2
+ [Hardware Error]: event severity: fatal
+ [Hardware Error]: Error 0, type: fatal
+ [Hardware Error]: section_type: memory error
+ [Hardware Error]: error_status: 0x0000000000001300
+ [Hardware Error]: error_type: 10, invalid address
+ Kernel panic - not syncing: Fatal hardware error!
+
+Signed-off-by: Geoff Levand <geoff@infradead.org>
+[bwh: Adjust context to apply to Linux 4.19]
+---
+ arch/arm64/kernel/acpi.c | 40 ++++++++++++++++++++++++++++++++++++----
+ 1 file changed, 36 insertions(+), 4 deletions(-)
+
+Index: debian-kernel/arch/arm64/kernel/acpi.c
+===================================================================
+--- debian-kernel.orig/arch/arm64/kernel/acpi.c
++++ debian-kernel/arch/arm64/kernel/acpi.c
+@@ -32,6 +32,8 @@
+ #include <asm/daifflags.h>
+ #include <asm/smp_plat.h>
+
++#include <acpi/apei.h>
++
+ int acpi_noirq = 1; /* skip ACPI IRQ initialization */
+ int acpi_disabled = 1;
+ EXPORT_SYMBOL(acpi_disabled);
+@@ -178,6 +180,33 @@ out:
+ }
+
+ /*
++ * acpi_fixup_m400_quirks - Work-around for HPE ProLiant m400 APEI firmware
++ * problems.
++ */
++static void __init acpi_fixup_m400_quirks(void)
++{
++ acpi_status status;
++ struct acpi_table_header *header;
++#if !defined(CONFIG_ACPI_APEI)
++ int hest_disable = HEST_DISABLED;
++#endif
++
++ if (!IS_ENABLED(CONFIG_ACPI_APEI) || hest_disable != HEST_ENABLED)
++ return;
++
++ status = acpi_get_table(ACPI_SIG_HEST, 0, &header);
++
++ if (ACPI_SUCCESS(status) && !strncmp(header->oem_id, "HPE ", 6) &&
++ !strncmp(header->oem_table_id, "ProLiant", 8) &&
++ MIDR_IMPLEMENTOR(read_cpuid_id()) == ARM_CPU_IMP_APM) {
++ hest_disable = HEST_DISABLED;
++ pr_info("Disabled APEI for m400.\n");
++ }
++
++ acpi_put_table(header);
++}
++
++/*
+ * acpi_boot_table_init() called from setup_arch(), always.
+ * 1. find RSDP and get its address, and then find XSDT
+ * 2. extract all tables and checksums them all
+@@ -232,11 +261,14 @@ done:
+ if (acpi_disabled) {
+ if (earlycon_acpi_spcr_enable)
+ early_init_dt_scan_chosen_stdout();
+- } else {
+- acpi_parse_spcr(earlycon_acpi_spcr_enable, true);
+- if (IS_ENABLED(CONFIG_ACPI_BGRT))
+- acpi_table_parse(ACPI_SIG_BGRT, acpi_parse_bgrt);
++ return;
+ }
++
++ acpi_parse_spcr(earlycon_acpi_spcr_enable, true);
++ if (IS_ENABLED(CONFIG_ACPI_BGRT))
++ acpi_table_parse(ACPI_SIG_BGRT, acpi_parse_bgrt);
++
++ acpi_fixup_m400_quirks();
+ }
+
+ pgprot_t __acpi_get_mem_attribute(phys_addr_t addr)
diff --git a/debian/patches/bugfix/arm64/dts-rockchip-correct-voltage-selector-firefly-RK3399.patch b/debian/patches/bugfix/arm64/dts-rockchip-correct-voltage-selector-firefly-RK3399.patch
new file mode 100644
index 000000000..2d568d35e
--- /dev/null
+++ b/debian/patches/bugfix/arm64/dts-rockchip-correct-voltage-selector-firefly-RK3399.patch
@@ -0,0 +1,45 @@
+From: Heinrich Schuchardt <xypron.glpk@gmx.de>
+Date: Mon, 4 Jun 2018 19:15:23 +0200
+Subject: arm64: dts: rockchip: correct voltage selector on Firefly-RK3399
+Bug-Debian: https://bugs.debian.org/900799
+Origin: https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip.git/patch/?id=710e8c4a54be82ee8a97324e7b4330bf191e08bf
+
+Without this patch the Firefly-RK3399 board boot process hangs after these
+lines:
+
+ fan53555-regulator 0-0040: FAN53555 Option[8] Rev[1] Detected!
+ fan53555-reg: supplied by vcc_sys
+ vcc1v8_s3: supplied by vcc_1v8
+
+Blacklisting driver fan53555 allows booting.
+
+The device tree uses a value of fcs,suspend-voltage-selector different to
+any other board.
+
+Changing this setting to the usual value is sufficient to enable booting
+and also matches the value used in the vendor kernel.
+
+Fixes: 171582e00db1 ("arm64: dts: rockchip: add support for firefly-rk3399 board")
+Cc: stable@vger.kernel.org
+Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
+Signed-off-by: Heiko Stuebner <heiko@sntech.de>
+---
+ arch/arm64/boot/dts/rockchip/rk3399-firefly.dts | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-firefly.dts b/arch/arm64/boot/dts/rockchip/rk3399-firefly.dts
+index 86ff1eb..d8a2f0b 100644
+--- a/arch/arm64/boot/dts/rockchip/rk3399-firefly.dts
++++ b/arch/arm64/boot/dts/rockchip/rk3399-firefly.dts
+@@ -421,7 +421,7 @@
+ vdd_cpu_b: regulator@40 {
+ compatible = "silergy,syr827";
+ reg = <0x40>;
+- fcs,suspend-voltage-selector = <0>;
++ fcs,suspend-voltage-selector = <1>;
+ regulator-name = "vdd_cpu_b";
+ regulator-min-microvolt = <712500>;
+ regulator-max-microvolt = <1500000>;
+--
+cgit v1.1
+
diff --git a/debian/patches/bugfix/powerpc/powerpc-boot-fix-missing-crc32poly.h-when-building-with-kernel_xz.patch b/debian/patches/bugfix/powerpc/powerpc-boot-fix-missing-crc32poly.h-when-building-with-kernel_xz.patch
new file mode 100644
index 000000000..0b3acfadb
--- /dev/null
+++ b/debian/patches/bugfix/powerpc/powerpc-boot-fix-missing-crc32poly.h-when-building-with-kernel_xz.patch
@@ -0,0 +1,39 @@
+From: Krzysztof Kozlowski <krzk@kernel.org>
+Date: Wed, 29 Aug 2018 09:32:23 +0200
+Subject: powerpc/boot: Fix missing crc32poly.h when building with KERNEL_XZ
+Origin: https://patchwork.ozlabs.org/patch/963258/
+
+After commit faa16bc404d7 ("lib: Use existing define with
+polynomial") the lib/xz/xz_crc32.c includes a header from include/linux
+directory thus any other user of this code should define proper include
+path.
+
+This fixes the build error on powerpc with CONFIG_KERNEL_XZ:
+
+ In file included from ../arch/powerpc/boot/../../../lib/decompress_unxz.c:233:0,
+ from ../arch/powerpc/boot/decompress.c:42:
+ ../arch/powerpc/boot/../../../lib/xz/xz_crc32.c:18:29: fatal error: linux/crc32poly.h: No such file or directory
+
+Reported-by: Michal Kubecek <mkubecek@suse.cz>
+Fixes: faa16bc404d7 ("lib: Use existing define with polynomial")
+Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
+Reported-by: kbuild test robot <lkp@intel.com>
+Reported-by: Meelis Roos <mroos@linux.ee>
+Tested-by: Michal Kubecek <mkubecek@suse.cz>
+---
+ arch/powerpc/boot/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/powerpc/boot/Makefile b/arch/powerpc/boot/Makefile
+index 0fb96c26136f..ba4182fb185d 100644
+--- a/arch/powerpc/boot/Makefile
++++ b/arch/powerpc/boot/Makefile
+@@ -63,7 +63,7 @@ ifeq ($(call cc-option-yn, -fstack-protector),y)
+ BOOTCFLAGS += -fno-stack-protector
+ endif
+
+-BOOTCFLAGS += -I$(objtree)/$(obj) -I$(srctree)/$(obj)
++BOOTCFLAGS += -I$(objtree)/$(obj) -I$(srctree)/$(obj) -I$(srctree)/include
+
+ DTC_FLAGS ?= -p 1024
+
diff --git a/debian/patches/bugfix/sh/sh-boot-do-not-use-hyphen-in-exported-variable-name.patch b/debian/patches/bugfix/sh/sh-boot-do-not-use-hyphen-in-exported-variable-name.patch
new file mode 100644
index 000000000..25e5b1044
--- /dev/null
+++ b/debian/patches/bugfix/sh/sh-boot-do-not-use-hyphen-in-exported-variable-name.patch
@@ -0,0 +1,124 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sat, 19 Aug 2017 21:42:09 +0100
+Subject: sh: Do not use hyphen in exported variable names
+Forwarded: https://marc.info/?l=linux-sh&m=150317827322995&w=2
+
+arch/sh/Makefile defines and exports ld-bfd to be used by
+arch/sh/boot/Makefile and arch/sh/boot/compressed/Makefile. Similarly
+arch/sh/boot/Makefile defines and exports suffix-y to be used by
+arch/sh/boot/compressed/Makefile. However some shells, including
+dash, will not pass through environment variables whose name includes
+a hyphen. Usually GNU make does not use a shell to recurse, but if
+e.g. $(srctree) contains '~' it will use a shell here.
+
+Rename these variables to ld_bfd and suffix_y.
+
+References: https://buildd.debian.org/status/fetch.php?pkg=linux&arch=sh4&ver=4.13%7Erc5-1%7Eexp1&stamp=1502943967&raw=0
+Fixes: ef9b542fce00 ("sh: bzip2/lzma uImage support.")
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ arch/sh/Makefile | 10 +++++-----
+ arch/sh/boot/Makefile | 16 ++++++++--------
+ arch/sh/boot/compressed/Makefile | 6 +++---
+ arch/sh/boot/romimage/Makefile | 4 ++--
+ 4 files changed, 18 insertions(+), 18 deletions(-)
+
+--- a/arch/sh/Makefile
++++ b/arch/sh/Makefile
+@@ -102,16 +102,16 @@ UTS_MACHINE := sh
+ LDFLAGS_vmlinux += -e _stext
+
+ ifdef CONFIG_CPU_LITTLE_ENDIAN
+-ld-bfd := elf32-sh-linux
+-LDFLAGS_vmlinux += --defsym jiffies=jiffies_64 --oformat $(ld-bfd)
++ld_bfd := elf32-sh-linux
++LDFLAGS_vmlinux += --defsym jiffies=jiffies_64 --oformat $(ld_bfd)
+ KBUILD_LDFLAGS += -EL
+ else
+-ld-bfd := elf32-shbig-linux
+-LDFLAGS_vmlinux += --defsym jiffies=jiffies_64+4 --oformat $(ld-bfd)
++ld_bfd := elf32-shbig-linux
++LDFLAGS_vmlinux += --defsym jiffies=jiffies_64+4 --oformat $(ld_bfd)
+ KBUILD_LDFLAGS += -EB
+ endif
+
+-export ld-bfd
++export ld_bfd
+
+ head-y := arch/sh/kernel/head_32.o
+
+--- a/arch/sh/boot/Makefile
++++ b/arch/sh/boot/Makefile
+@@ -19,12 +19,12 @@ CONFIG_ZERO_PAGE_OFFSET ?= 0x00001000
+ CONFIG_ENTRY_OFFSET ?= 0x00001000
+ CONFIG_PHYSICAL_START ?= $(CONFIG_MEMORY_START)
+
+-suffix-y := bin
+-suffix-$(CONFIG_KERNEL_GZIP) := gz
+-suffix-$(CONFIG_KERNEL_BZIP2) := bz2
+-suffix-$(CONFIG_KERNEL_LZMA) := lzma
+-suffix-$(CONFIG_KERNEL_XZ) := xz
+-suffix-$(CONFIG_KERNEL_LZO) := lzo
++suffix_y := bin
++suffix_$(CONFIG_KERNEL_GZIP) := gz
++suffix_$(CONFIG_KERNEL_BZIP2) := bz2
++suffix_$(CONFIG_KERNEL_LZMA) := lzma
++suffix_$(CONFIG_KERNEL_XZ) := xz
++suffix_$(CONFIG_KERNEL_LZO) := lzo
+
+ targets := zImage vmlinux.srec romImage uImage uImage.srec uImage.gz \
+ uImage.bz2 uImage.lzma uImage.xz uImage.lzo uImage.bin
+@@ -106,10 +106,10 @@ OBJCOPYFLAGS_uImage.srec := -I binary -O
+ $(obj)/uImage.srec: $(obj)/uImage
+ $(call if_changed,objcopy)
+
+-$(obj)/uImage: $(obj)/uImage.$(suffix-y)
++$(obj)/uImage: $(obj)/uImage.$(suffix_y)
+ @ln -sf $(notdir $<) $@
+ @echo ' Image $@ is ready'
+
+ export CONFIG_PAGE_OFFSET CONFIG_MEMORY_START CONFIG_BOOT_LINK_OFFSET \
+ CONFIG_PHYSICAL_START CONFIG_ZERO_PAGE_OFFSET CONFIG_ENTRY_OFFSET \
+- KERNEL_MEMORY suffix-y
++ KERNEL_MEMORY suffix_y
+--- a/arch/sh/boot/compressed/Makefile
++++ b/arch/sh/boot/compressed/Makefile
+@@ -30,7 +30,7 @@ endif
+
+ ccflags-remove-$(CONFIG_MCOUNT) += -pg
+
+-LDFLAGS_vmlinux := --oformat $(ld-bfd) -Ttext $(IMAGE_OFFSET) -e startup \
++LDFLAGS_vmlinux := --oformat $(ld_bfd) -Ttext $(IMAGE_OFFSET) -e startup \
+ -T $(obj)/../../kernel/vmlinux.lds
+
+ #
+@@ -68,7 +68,7 @@ $(obj)/vmlinux.bin.lzo: $(vmlinux.bin.al
+
+ OBJCOPYFLAGS += -R .empty_zero_page
+
+-LDFLAGS_piggy.o := -r --format binary --oformat $(ld-bfd) -T
++LDFLAGS_piggy.o := -r --format binary --oformat $(ld_bfd) -T
+
+-$(obj)/piggy.o: $(obj)/vmlinux.scr $(obj)/vmlinux.bin.$(suffix-y) FORCE
++$(obj)/piggy.o: $(obj)/vmlinux.scr $(obj)/vmlinux.bin.$(suffix_y) FORCE
+ $(call if_changed,ld)
+--- a/arch/sh/boot/romimage/Makefile
++++ b/arch/sh/boot/romimage/Makefile
+@@ -13,7 +13,7 @@ mmcif-obj-$(CONFIG_CPU_SUBTYPE_SH7724) :
+ load-$(CONFIG_ROMIMAGE_MMCIF) := $(mmcif-load-y)
+ obj-$(CONFIG_ROMIMAGE_MMCIF) := $(mmcif-obj-y)
+
+-LDFLAGS_vmlinux := --oformat $(ld-bfd) -Ttext $(load-y) -e romstart \
++LDFLAGS_vmlinux := --oformat $(ld_bfd) -Ttext $(load-y) -e romstart \
+ -T $(obj)/../../kernel/vmlinux.lds
+
+ $(obj)/vmlinux: $(obj)/head.o $(obj-y) $(obj)/piggy.o FORCE
+@@ -24,7 +24,7 @@ OBJCOPYFLAGS += -j .empty_zero_page
+ $(obj)/zeropage.bin: vmlinux FORCE
+ $(call if_changed,objcopy)
+
+-LDFLAGS_piggy.o := -r --format binary --oformat $(ld-bfd) -T
++LDFLAGS_piggy.o := -r --format binary --oformat $(ld_bfd) -T
+
+ $(obj)/piggy.o: $(obj)/vmlinux.scr $(obj)/zeropage.bin arch/sh/boot/zImage FORCE
+ $(call if_changed,ld)
diff --git a/debian/patches/bugfix/x86/perf-tools-fix-unwind-build-on-i386.patch b/debian/patches/bugfix/x86/perf-tools-fix-unwind-build-on-i386.patch
new file mode 100644
index 000000000..f9baa7bd3
--- /dev/null
+++ b/debian/patches/bugfix/x86/perf-tools-fix-unwind-build-on-i386.patch
@@ -0,0 +1,35 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sat, 22 Jul 2017 17:37:33 +0100
+Subject: perf tools: Fix unwind build on i386
+Forwarded: no
+
+EINVAL may not be defined when building unwind-libunwind.c with
+REMOTE_UNWIND_LIBUNWIND, resulting in a compiler error in
+LIBUNWIND__ARCH_REG_ID(). Its only caller, access_reg(), only checks
+for a negative return value and doesn't care what it is. So change
+-EINVAL to -1.
+
+Fixes: 52ffe0ff02fc ("Support x86(32-bit) cross platform callchain unwind.")
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+
+--- a/tools/perf/arch/x86/util/unwind-libunwind.c
++++ b/tools/perf/arch/x86/util/unwind-libunwind.c
+@@ -66,7 +66,7 @@ int LIBUNWIND__ARCH_REG_ID(int regnum)
+ break;
+ default:
+ pr_err("unwind: invalid reg id %d\n", regnum);
+- return -EINVAL;
++ return -1;
+ }
+
+ return id;
+@@ -106,7 +106,7 @@ int LIBUNWIND__ARCH_REG_ID(int regnum)
+ break;
+ default:
+ pr_err("unwind: invalid reg id %d\n", regnum);
+- return -EINVAL;
++ return -1;
+ }
+
+ return id;
diff --git a/debian/patches/bugfix/x86/platform-x86-toshiba_haps-Fix-missing-newline-in-pr_.patch b/debian/patches/bugfix/x86/platform-x86-toshiba_haps-Fix-missing-newline-in-pr_.patch
new file mode 100644
index 000000000..73d28aeb6
--- /dev/null
+++ b/debian/patches/bugfix/x86/platform-x86-toshiba_haps-Fix-missing-newline-in-pr_.patch
@@ -0,0 +1,34 @@
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Wed, 19 May 2021 15:56:18 +0200
+Subject: platform/x86: toshiba_haps: Fix missing newline in pr_debug call in
+ toshiba_haps_notify
+Origin: https://git.kernel.org/linus/7dc4a18d017ca26abd1cea197e486fb3e5cd7632
+Bug-Debian: https://bugs.debian.org/799193
+
+The pr_debug() call in toshiba_haps_notify() is missing a newline at the
+end of the string, add this.
+
+BugLink: https://bugs.debian.org/799193
+Reported-by: Salvatore Bonaccorso <carnil@debian.org>
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+Link: https://lore.kernel.org/r/20210519135618.139701-1-hdegoede@redhat.com
+---
+ drivers/platform/x86/toshiba_haps.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/drivers/platform/x86/toshiba_haps.c b/drivers/platform/x86/toshiba_haps.c
+index b237bd6b1ee5..49e84095bb01 100644
+--- a/drivers/platform/x86/toshiba_haps.c
++++ b/drivers/platform/x86/toshiba_haps.c
+@@ -131,7 +131,7 @@ static const struct attribute_group haps_attr_group = {
+ */
+ static void toshiba_haps_notify(struct acpi_device *device, u32 event)
+ {
+- pr_debug("Received event: 0x%x", event);
++ pr_debug("Received event: 0x%x\n", event);
+
+ acpi_bus_generate_netlink_event(device->pnp.device_class,
+ dev_name(&device->dev),
+--
+2.32.0
+
diff --git a/debian/patches/bugfix/x86/revert-perf-build-fix-libunwind-feature-detection-on.patch b/debian/patches/bugfix/x86/revert-perf-build-fix-libunwind-feature-detection-on.patch
new file mode 100644
index 000000000..cfbf98e82
--- /dev/null
+++ b/debian/patches/bugfix/x86/revert-perf-build-fix-libunwind-feature-detection-on.patch
@@ -0,0 +1,22 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Fri, 25 Sep 2015 22:50:50 +0100
+Subject: Revert "perf build: Fix libunwind feature detection on 32-bit x86"
+Forwarded: no
+
+This reverts commit 05b41775e2edd69a83f592e3534930c934d4038e.
+It broke feature detection that was working just fine for us.
+---
+ tools/perf/Makefile.config | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/tools/perf/Makefile.config
++++ b/tools/perf/Makefile.config
+@@ -38,7 +38,7 @@ ifeq ($(SRCARCH),x86)
+ LIBUNWIND_LIBS = -lunwind-x86_64 -lunwind -llzma
+ $(call detected,CONFIG_X86_64)
+ else
+- LIBUNWIND_LIBS = -lunwind-x86 -llzma -lunwind
++ LIBUNWIND_LIBS = -lunwind -lunwind-x86
+ endif
+ NO_PERF_REGS := 0
+ endif
diff --git a/debian/patches/bugfix/x86/viafb-autoload-on-olpc-xo1.5-only.patch b/debian/patches/bugfix/x86/viafb-autoload-on-olpc-xo1.5-only.patch
new file mode 100644
index 000000000..62b4eb7de
--- /dev/null
+++ b/debian/patches/bugfix/x86/viafb-autoload-on-olpc-xo1.5-only.patch
@@ -0,0 +1,34 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sat, 20 Apr 2013 15:52:02 +0100
+Subject: viafb: Autoload on OLPC XO 1.5 only
+Bug-Debian: https://bugs.debian.org/705788
+Forwarded: no
+
+It appears that viafb won't work automatically on all the boards for
+which it has a PCI device ID match. Currently, it is blacklisted by
+udev along with most other framebuffer drivers, so this doesn't matter
+much.
+
+However, this driver is required for console support on the XO 1.5.
+We need to allow it to be autoloaded on this model only, and then
+un-blacklist it in udev.
+
+---
+--- a/drivers/video/fbdev/via/via-core.c
++++ b/drivers/video/fbdev/via/via-core.c
+@@ -695,7 +695,14 @@ static const struct pci_device_id via_pc
+ .driver_data = UNICHROME_VX900 },
+ { }
+ };
+-MODULE_DEVICE_TABLE(pci, via_pci_table);
++
++static const struct pci_device_id via_pci_autoload_table[] __initconst = {
++ /* OLPC XO 1.5 */
++ { PCI_DEVICE(PCI_VENDOR_ID_VIA, UNICHROME_VX855_DID),
++ .subvendor = 0x152d, .subdevice = 0x0833 },
++ { }
++};
++MODULE_DEVICE_TABLE(pci, via_pci_autoload_table);
+
+ static const struct dev_pm_ops via_pm_ops = {
+ #ifdef CONFIG_PM_SLEEP
diff --git a/debian/patches/bugfix/x86/x86-32-disable-3dnow-in-generic-config.patch b/debian/patches/bugfix/x86/x86-32-disable-3dnow-in-generic-config.patch
new file mode 100644
index 000000000..074c856be
--- /dev/null
+++ b/debian/patches/bugfix/x86/x86-32-disable-3dnow-in-generic-config.patch
@@ -0,0 +1,29 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Tue, 25 Sep 2018 19:44:13 +0100
+Subject: x86-32: Disable 3D-Now in generic config
+
+We want the 686 flavour to run on Geode LX and similar AMD family 5
+CPUs as well as family 6 and higher CPUs. This used to work with
+CONFIG_M686=y. However commit 25d76ac88821 "x86/Kconfig: Explicitly
+enumerate i686-class CPUs in Kconfig" in Linux 4.16 has made the
+kernel require family 6 or higher.
+
+It looks like a sensible choice would be to enable CONFIG_MGEODE_LX
+and CONFIG_X86_GENERIC (for more generic optimisations), but this
+currently enables CONFIG_X86_USE_3D_NOW which will cause the kernel to
+crash on CPUs without the AMD-specific 3D-Now instructions.
+
+Make CONFIG_X86_USE_3DNOW depend on CONFIG_X86_GENERIC being disabled.
+
+---
+--- a/arch/x86/Kconfig.cpu
++++ b/arch/x86/Kconfig.cpu
+@@ -337,7 +337,7 @@ config X86_USE_PPRO_CHECKSUM
+
+ config X86_USE_3DNOW
+ def_bool y
+- depends on (MCYRIXIII || MK7 || MGEODE_LX) && !UML
++ depends on (MCYRIXIII || MK7 || MGEODE_LX) && !X86_GENERIC && !UML
+
+ #
+ # P6_NOPs are a relatively minor optimization that require a family >=
diff --git a/debian/patches/debian/add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by-default.patch b/debian/patches/debian/add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by-default.patch
new file mode 100644
index 000000000..801fd6a8d
--- /dev/null
+++ b/debian/patches/debian/add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by-default.patch
@@ -0,0 +1,104 @@
+From: Serge Hallyn <serge.hallyn@canonical.com>
+Date: Fri, 31 May 2013 19:12:12 +0000 (+0100)
+Subject: add sysctl to disallow unprivileged CLONE_NEWUSER by default
+Origin: http://kernel.ubuntu.com/git?p=serge%2Fubuntu-saucy.git;a=commit;h=5c847404dcb2e3195ad0057877e1422ae90892b8
+
+add sysctl to disallow unprivileged CLONE_NEWUSER by default
+
+This is a short-term patch. Unprivileged use of CLONE_NEWUSER
+is certainly an intended feature of user namespaces. However
+for at least saucy we want to make sure that, if any security
+issues are found, we have a fail-safe.
+
+Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
+[bwh: Remove unneeded binary sysctl bits]
+[bwh: Keep this sysctl, but change the default to enabled]
+---
+diff --git a/kernel/fork.c b/kernel/fork.c
+index efc5493203ae..bc596683cc31 100644
+--- a/kernel/fork.c
++++ b/kernel/fork.c
+@@ -106,6 +106,11 @@
+
+ #define CREATE_TRACE_POINTS
+ #include <trace/events/task.h>
++#ifdef CONFIG_USER_NS
++extern int unprivileged_userns_clone;
++#else
++#define unprivileged_userns_clone 0
++#endif
+
+ /*
+ * Minimum number of threads to boot the kernel
+@@ -1861,6 +1866,10 @@ static __latent_entropy struct task_struct *copy_process(
+ if ((clone_flags & (CLONE_NEWUSER|CLONE_FS)) == (CLONE_NEWUSER|CLONE_FS))
+ return ERR_PTR(-EINVAL);
+
++ if ((clone_flags & CLONE_NEWUSER) && !unprivileged_userns_clone)
++ if (!capable(CAP_SYS_ADMIN))
++ return ERR_PTR(-EPERM);
++
+ /*
+ * Thread groups must share signals as well, and detached threads
+ * can only be started up within the thread group.
+@@ -2961,6 +2970,12 @@ int ksys_unshare(unsigned long unshare_flags)
+ if (unshare_flags & CLONE_NEWNS)
+ unshare_flags |= CLONE_FS;
+
++ if ((unshare_flags & CLONE_NEWUSER) && !unprivileged_userns_clone) {
++ err = -EPERM;
++ if (!capable(CAP_SYS_ADMIN))
++ goto bad_unshare_out;
++ }
++
+ err = check_unshare_flags(unshare_flags);
+ if (err)
+ goto bad_unshare_out;
+diff --git a/kernel/sysctl.c b/kernel/sysctl.c
+index db1ce7af2563..2bb29f495b02 100644
+--- a/kernel/sysctl.c
++++ b/kernel/sysctl.c
+@@ -200,6 +200,10 @@ static int min_extfrag_threshold;
+ static int max_extfrag_threshold = 1000;
+ #endif
+
++#ifdef CONFIG_USER_NS
++extern int unprivileged_userns_clone;
++#endif
++
+ #endif /* CONFIG_SYSCTL */
+
+ #if defined(CONFIG_BPF_SYSCALL) && defined(CONFIG_SYSCTL)
+@@ -1882,6 +1886,15 @@ static struct ctl_table kern_table[] = {
+ .proc_handler = proc_dointvec,
+ },
+ #endif
++#ifdef CONFIG_USER_NS
++ {
++ .procname = "unprivileged_userns_clone",
++ .data = &unprivileged_userns_clone,
++ .maxlen = sizeof(int),
++ .mode = 0644,
++ .proc_handler = proc_dointvec,
++ },
++#endif
+ #ifdef CONFIG_PROC_SYSCTL
+ {
+ .procname = "tainted",
+diff --git a/kernel/user_namespace.c b/kernel/user_namespace.c
+index 87804e0371fe..2fd16493231b 100644
+--- a/kernel/user_namespace.c
++++ b/kernel/user_namespace.c
+@@ -21,6 +21,9 @@
+ #include <linux/bsearch.h>
+ #include <linux/sort.h>
+
++/* sysctl */
++int unprivileged_userns_clone = 1;
++
+ static struct kmem_cache *user_ns_cachep __read_mostly;
+ static DEFINE_MUTEX(userns_state_mutex);
+
+--
+2.27.0
+
diff --git a/debian/patches/debian/af_802154-Disable-auto-loading-as-mitigation-against.patch b/debian/patches/debian/af_802154-Disable-auto-loading-as-mitigation-against.patch
new file mode 100644
index 000000000..3b33f845a
--- /dev/null
+++ b/debian/patches/debian/af_802154-Disable-auto-loading-as-mitigation-against.patch
@@ -0,0 +1,29 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Fri, 19 Nov 2010 02:12:48 +0000
+Subject: [PATCH 2/3] af_802154: Disable auto-loading as mitigation against local exploits
+Forwarded: not-needed
+
+Recent review has revealed several bugs in obscure protocol
+implementations that can be exploited by local users for denial of
+service or privilege escalation. We can mitigate the effect of any
+remaining vulnerabilities in such protocols by preventing unprivileged
+users from loading the modules, so that they are only exploitable on
+systems where the administrator has chosen to load the protocol.
+
+The 'af_802154' (IEEE 802.15.4) protocol is not widely used, was
+not present in the 'lenny' kernel, and seems to receive only sporadic
+maintenance. Therefore disable auto-loading.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ net/ieee802154/socket.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+--- a/net/ieee802154/socket.c
++++ b/net/ieee802154/socket.c
+@@ -1122,4 +1122,4 @@ module_init(af_ieee802154_init);
+ module_exit(af_ieee802154_remove);
+
+ MODULE_LICENSE("GPL");
+-MODULE_ALIAS_NETPROTO(PF_IEEE802154);
++/* MODULE_ALIAS_NETPROTO(PF_IEEE802154); */
diff --git a/debian/patches/debian/android-enable-building-ashmem-and-binder-as-modules.patch b/debian/patches/debian/android-enable-building-ashmem-and-binder-as-modules.patch
new file mode 100644
index 000000000..2df107cfb
--- /dev/null
+++ b/debian/patches/debian/android-enable-building-ashmem-and-binder-as-modules.patch
@@ -0,0 +1,106 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Fri, 22 Jun 2018 17:27:00 +0100
+Subject: android: Enable building ashmem and binder as modules
+Bug-Debian: https://bugs.debian.org/901492
+
+We want to enable use of the Android ashmem and binder drivers to
+support Anbox, but they should not be built-in as that would waste
+resources and increase security attack surface on systems that don't
+need them.
+
+- Add a MODULE_LICENSE declaration to ashmem
+- Change the Makefiles to build each driver as an object with the
+ "_linux" suffix (which is what Anbox expects)
+- Change config symbol types to tristate
+---
+ drivers/android/Kconfig | 2 +-
+ drivers/android/Makefile | 7 ++++---
+ drivers/android/binder_alloc.c | 2 +-
+ drivers/staging/android/Kconfig | 2 +-
+ drivers/staging/android/Makefile | 3 ++-
+ drivers/staging/android/ashmem.c | 3 +++
+ 6 files changed, 12 insertions(+), 7 deletions(-)
+
+Index: debian-kernel/drivers/android/Kconfig
+===================================================================
+--- debian-kernel.orig/drivers/android/Kconfig
++++ debian-kernel/drivers/android/Kconfig
+@@ -9,7 +9,7 @@ config ANDROID
+ if ANDROID
+
+ config ANDROID_BINDER_IPC
+- bool "Android Binder IPC Driver"
++ tristate "Android Binder IPC Driver"
+ depends on MMU
+ default n
+ help
+Index: debian-kernel/drivers/android/Makefile
+===================================================================
+--- debian-kernel.orig/drivers/android/Makefile
++++ debian-kernel/drivers/android/Makefile
+@@ -1,6 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0-only
+ ccflags-y += -I$(src) # needed for trace events
+
+-obj-$(CONFIG_ANDROID_BINDERFS) += binderfs.o
+-obj-$(CONFIG_ANDROID_BINDER_IPC) += binder.o binder_alloc.o
+-obj-$(CONFIG_ANDROID_BINDER_IPC_SELFTEST) += binder_alloc_selftest.o
++obj-$(CONFIG_ANDROID_BINDER_IPC) += binder_linux.o
++binder_linux-y := binder.o binder_alloc.o
++binder_linux-$(CONFIG_ANDROID_BINDERFS) += binderfs.o
++binder_linux-$(CONFIG_ANDROID_BINDER_IPC_SELFTEST) += binder_alloc_selftest.o
+Index: debian-kernel/drivers/android/binder_alloc.c
+===================================================================
+--- debian-kernel.orig/drivers/android/binder_alloc.c
++++ debian-kernel/drivers/android/binder_alloc.c
+@@ -38,7 +38,7 @@ enum {
+ };
+ static uint32_t binder_alloc_debug_mask = BINDER_DEBUG_USER_ERROR;
+
+-module_param_named(debug_mask, binder_alloc_debug_mask,
++module_param_named(alloc_debug_mask, binder_alloc_debug_mask,
+ uint, 0644);
+
+ #define binder_alloc_debug(mask, x...) \
+Index: debian-kernel/drivers/staging/android/Kconfig
+===================================================================
+--- debian-kernel.orig/drivers/staging/android/Kconfig
++++ debian-kernel/drivers/staging/android/Kconfig
+@@ -4,7 +4,7 @@ menu "Android"
+ if ANDROID
+
+ config ASHMEM
+- bool "Enable the Anonymous Shared Memory Subsystem"
++ tristate "Enable the Anonymous Shared Memory Subsystem"
+ depends on SHMEM
+ help
+ The ashmem subsystem is a new shared memory allocator, similar to
+Index: debian-kernel/drivers/staging/android/Makefile
+===================================================================
+--- debian-kernel.orig/drivers/staging/android/Makefile
++++ debian-kernel/drivers/staging/android/Makefile
+@@ -3,4 +3,5 @@ ccflags-y += -I$(src) # needed for tra
+
+ obj-y += ion/
+
+-obj-$(CONFIG_ASHMEM) += ashmem.o
++obj-$(CONFIG_ASHMEM) += ashmem_linux.o
++ashmem_linux-y += ashmem.o
+Index: debian-kernel/drivers/staging/android/ashmem.c
+===================================================================
+--- debian-kernel.orig/drivers/staging/android/ashmem.c
++++ debian-kernel/drivers/staging/android/ashmem.c
+@@ -24,6 +24,7 @@
+ #include <linux/bitops.h>
+ #include <linux/mutex.h>
+ #include <linux/shmem_fs.h>
++#include <linux/module.h>
+ #include "ashmem.h"
+
+ #define ASHMEM_NAME_PREFIX "dev/ashmem/"
+@@ -953,3 +954,5 @@ out:
+ return ret;
+ }
+ device_initcall(ashmem_init);
++
++MODULE_LICENSE("GPL v2");
diff --git a/debian/patches/debian/arch-sh4-fix-uimage-build.patch b/debian/patches/debian/arch-sh4-fix-uimage-build.patch
new file mode 100644
index 000000000..89e626b6b
--- /dev/null
+++ b/debian/patches/debian/arch-sh4-fix-uimage-build.patch
@@ -0,0 +1,26 @@
+From: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
+Subject: [sh4] Fix uImage build
+Bug-Debian: https://bugs.debian.org/569034
+Forwarded: not-needed
+
+[bwh: This was added without a description, but I think it is done
+ only to avoid a build-dependency on u-boot-tools.]
+---
+ arch/sh/Makefile | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/arch/sh/Makefile b/arch/sh/Makefile
+index da9cf952f33c..974bbd9dcfcf 100644
+--- a/arch/sh/Makefile
++++ b/arch/sh/Makefile
+@@ -85,7 +85,6 @@ OBJCOPYFLAGS := -O binary -R .note -R .note.gnu.build-id -R .comment \
+
+ # Give the various platforms the opportunity to set default image types
+ defaultimage-y := zImage
+-defaultimage-$(CONFIG_SH_SH7785LCR) := uImage
+ defaultimage-$(CONFIG_SH_RSK) := uImage
+ defaultimage-$(CONFIG_SH_URQUELL) := uImage
+ defaultimage-$(CONFIG_SH_MIGOR) := uImage
+--
+2.27.0
+
diff --git a/debian/patches/debian/btrfs-warn-about-raid5-6-being-experimental-at-mount.patch b/debian/patches/debian/btrfs-warn-about-raid5-6-being-experimental-at-mount.patch
new file mode 100644
index 000000000..9f21e0705
--- /dev/null
+++ b/debian/patches/debian/btrfs-warn-about-raid5-6-being-experimental-at-mount.patch
@@ -0,0 +1,35 @@
+From: Adam Borowski <kilobyte@angband.pl>
+Date: Tue, 28 Mar 2017 16:55:05 +0200
+Subject: btrfs: warn about RAID5/6 being experimental at mount time
+Bug-Debian: https://bugs.debian.org/863290
+Origin: https://bugs.debian.org/863290#5
+
+Too many people come complaining about losing their data -- and indeed,
+there's no warning outside a wiki and the mailing list tribal knowledge.
+Message severity chosen for consistency with XFS -- "alert" makes dmesg
+produce nice red background which should get the point across.
+
+Signed-off-by: Adam Borowski <kilobyte@angband.pl>
+[bwh: Also add_taint() so this is flagged in bug reports]
+---
+ fs/btrfs/disk-io.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+--- a/fs/btrfs/disk-io.c
++++ b/fs/btrfs/disk-io.c
+@@ -3060,6 +3060,15 @@ retry_root_backup:
+ btrfs_set_and_info(fs_info, SSD, "enabling ssd optimizations");
+ }
+
++ if ((fs_info->avail_data_alloc_bits |
++ fs_info->avail_metadata_alloc_bits |
++ fs_info->avail_system_alloc_bits) &
++ BTRFS_BLOCK_GROUP_RAID56_MASK) {
++ btrfs_alert(fs_info,
++ "btrfs RAID5/6 is EXPERIMENTAL and has known data-loss bugs");
++ add_taint(TAINT_AUX, LOCKDEP_STILL_OK);
++ }
++
+ /*
+ * Mount does not set all options immediately, we can do it now and do
+ * not have to wait for transaction commit
diff --git a/debian/patches/debian/cdc_ncm-cdc_mbim-use-ncm-by-default.patch b/debian/patches/debian/cdc_ncm-cdc_mbim-use-ncm-by-default.patch
new file mode 100644
index 000000000..70b446860
--- /dev/null
+++ b/debian/patches/debian/cdc_ncm-cdc_mbim-use-ncm-by-default.patch
@@ -0,0 +1,27 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: cdc_ncm,cdc_mbim: Use NCM by default
+Date: Sun, 31 Mar 2013 03:58:04 +0100
+Forwarded: not-needed
+
+Devices that support both NCM and MBIM modes should be kept in NCM
+mode unless there is userland support for MBIM.
+
+Set the default value of cdc_ncm.prefer_mbim to false and leave it to
+userland (modem-manager) to override this with a modprobe.conf file
+once it's ready to speak MBIM.
+
+---
+--- a/drivers/net/usb/cdc_ncm.c
++++ b/drivers/net/usb/cdc_ncm.c
+@@ -53,11 +53,7 @@
+ #include <linux/usb/cdc.h>
+ #include <linux/usb/cdc_ncm.h>
+
+-#if IS_ENABLED(CONFIG_USB_NET_CDC_MBIM)
+-static bool prefer_mbim = true;
+-#else
+ static bool prefer_mbim;
+-#endif
+ module_param(prefer_mbim, bool, 0644);
+ MODULE_PARM_DESC(prefer_mbim, "Prefer MBIM setting on dual NCM/MBIM functions");
+
diff --git a/debian/patches/debian/dccp-disable-auto-loading-as-mitigation-against-local-exploits.patch b/debian/patches/debian/dccp-disable-auto-loading-as-mitigation-against-local-exploits.patch
new file mode 100644
index 000000000..83583184e
--- /dev/null
+++ b/debian/patches/debian/dccp-disable-auto-loading-as-mitigation-against-local-exploits.patch
@@ -0,0 +1,41 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Thu, 16 Feb 2017 19:09:17 +0000
+Subject: dccp: Disable auto-loading as mitigation against local exploits
+Forwarded: not-needed
+
+We can mitigate the effect of vulnerabilities in obscure protocols by
+preventing unprivileged users from loading the modules, so that they
+are only exploitable on systems where the administrator has chosen to
+load the protocol.
+
+The 'dccp' protocol is not actively maintained or widely used.
+Therefore disable auto-loading.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+--- a/net/dccp/ipv4.c
++++ b/net/dccp/ipv4.c
+@@ -1071,8 +1071,8 @@ module_exit(dccp_v4_exit);
+ * values directly, Also cover the case where the protocol is not specified,
+ * i.e. net-pf-PF_INET-proto-0-type-SOCK_DCCP
+ */
+-MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET, 33, 6);
+-MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET, 0, 6);
++/* MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET, 33, 6); */
++/* MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET, 0, 6); */
+ MODULE_LICENSE("GPL");
+ MODULE_AUTHOR("Arnaldo Carvalho de Melo <acme@mandriva.com>");
+ MODULE_DESCRIPTION("DCCP - Datagram Congestion Controlled Protocol");
+--- a/net/dccp/ipv6.c
++++ b/net/dccp/ipv6.c
+@@ -1125,8 +1125,8 @@ module_exit(dccp_v6_exit);
+ * values directly, Also cover the case where the protocol is not specified,
+ * i.e. net-pf-PF_INET6-proto-0-type-SOCK_DCCP
+ */
+-MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET6, 33, 6);
+-MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET6, 0, 6);
++/* MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET6, 33, 6); */
++/* MODULE_ALIAS_NET_PF_PROTO_TYPE(PF_INET6, 0, 6); */
+ MODULE_LICENSE("GPL");
+ MODULE_AUTHOR("Arnaldo Carvalho de Melo <acme@mandriva.com>");
+ MODULE_DESCRIPTION("DCCPv6 - Datagram Congestion Controlled Protocol");
diff --git a/debian/patches/debian/dfsg/arch-powerpc-platforms-8xx-ucode-disable.patch b/debian/patches/debian/dfsg/arch-powerpc-platforms-8xx-ucode-disable.patch
new file mode 100644
index 000000000..0e5176908
--- /dev/null
+++ b/debian/patches/debian/dfsg/arch-powerpc-platforms-8xx-ucode-disable.patch
@@ -0,0 +1,29 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 13 Apr 2009 17:34:00 +0100
+Subject: Remove microcode patches for mgsuvd (not enabled in Debian configs)
+Forwarded: not-needed
+
+diff --git a/arch/powerpc/platforms/8xx/Kconfig b/arch/powerpc/platforms/8xx/Kconfig
+index 48a920a..81570b6 100644
+--- a/arch/powerpc/platforms/8xx/Kconfig
++++ b/arch/powerpc/platforms/8xx/Kconfig
+@@ -160,16 +160,19 @@ config NO_UCODE_PATCH
+
+ config USB_SOF_UCODE_PATCH
+ bool "USB SOF patch"
++ depends on BROKEN
+ help
+ Help not implemented yet, coming soon.
+
+ config I2C_SPI_UCODE_PATCH
+ bool "I2C/SPI relocation patch"
++ depends on BROKEN
+ help
+ Help not implemented yet, coming soon.
+
+ config I2C_SPI_SMC1_UCODE_PATCH
+ bool "I2C/SPI/SMC1 relocation patch"
++ depends on BROKEN
+ help
+ Help not implemented yet, coming soon.
+
diff --git a/debian/patches/debian/dfsg/documentation-fix-broken-link-to-cipso-draft.patch b/debian/patches/debian/dfsg/documentation-fix-broken-link-to-cipso-draft.patch
new file mode 100644
index 000000000..840cf24d7
--- /dev/null
+++ b/debian/patches/debian/dfsg/documentation-fix-broken-link-to-cipso-draft.patch
@@ -0,0 +1,18 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sat, 24 Aug 2019 19:00:41 +0100
+Subject: Documentation: Fix broken link to CIPSO draft
+Forwarded: not-needed
+
+We exclude the CIPSO draft text as its licence is not DFSG compliant.
+Link to the IETF's online version instead.
+
+---
+--- a/Documentation/netlabel/draft_ietf.rst
++++ b/Documentation/netlabel/draft_ietf.rst
+@@ -1,5 +1,4 @@
+ Draft IETF CIPSO IP Security
+ ----------------------------
+
+- .. include:: draft-ietf-cipso-ipsecurity-01.txt
+- :literal:
++https://tools.ietf.org/html/draft-ietf-cipso-ipsecurity-01
diff --git a/debian/patches/debian/dfsg/drivers-media-dvb-dvb-usb-af9005-disable.patch b/debian/patches/debian/dfsg/drivers-media-dvb-dvb-usb-af9005-disable.patch
new file mode 100644
index 000000000..4e42da9a9
--- /dev/null
+++ b/debian/patches/debian/dfsg/drivers-media-dvb-dvb-usb-af9005-disable.patch
@@ -0,0 +1,15 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 17 Aug 2009 02:45:41 +0100
+Subject: dvb-usb-af9005: mark as broken
+Forwarded: not-needed
+
+--- a/drivers/media/usb/dvb-usb/Kconfig
++++ b/drivers/media/usb/dvb-usb/Kconfig
+@@ -227,6 +227,7 @@ config DVB_USB_OPERA1
+
+ config DVB_USB_AF9005
+ tristate "Afatech AF9005 DVB-T USB1.1 support"
++ depends on BROKEN
+ depends on DVB_USB
+ select MEDIA_TUNER_MT2060 if MEDIA_SUBDRV_AUTOSELECT
+ select MEDIA_TUNER_QT1010 if MEDIA_SUBDRV_AUTOSELECT
diff --git a/debian/patches/debian/dfsg/drivers-net-appletalk-cops.patch b/debian/patches/debian/dfsg/drivers-net-appletalk-cops.patch
new file mode 100644
index 000000000..44258800a
--- /dev/null
+++ b/debian/patches/debian/dfsg/drivers-net-appletalk-cops.patch
@@ -0,0 +1,54 @@
+From: Frederik Schüler <fs@debian.org>
+Date: Fri, 05 Jan 2007 15:55:24 +0000
+Subject: Add removal patches for: 3c359, smctr, keyspan, cops
+Forwarded: not-needed
+
+---
+ drivers/net/appletalk/Kconfig | 26 --------------------------
+ drivers/net/appletalk/Makefile | 1 -
+ 2 files changed, 27 deletions(-)
+
+--- a/drivers/net/appletalk/Kconfig
++++ b/drivers/net/appletalk/Kconfig
+@@ -50,33 +50,6 @@ config LTPC
+ This driver is experimental, which means that it may not work.
+ See the file <file:Documentation/networking/device_drivers/appletalk/ltpc.rst>.
+
+-config COPS
+- tristate "COPS LocalTalk PC support"
+- depends on DEV_APPLETALK && (ISA || EISA)
+- help
+- This allows you to use COPS AppleTalk cards to connect to LocalTalk
+- networks. You also need version 1.3.3 or later of the netatalk
+- package. This driver is experimental, which means that it may not
+- work. This driver will only work if you choose "AppleTalk DDP"
+- networking support, above.
+- Please read the file
+- <file:Documentation/networking/device_drivers/appletalk/cops.rst>.
+-
+-config COPS_DAYNA
+- bool "Dayna firmware support"
+- depends on COPS
+- help
+- Support COPS compatible cards with Dayna style firmware (Dayna
+- DL2000/ Daynatalk/PC (half length), COPS LT-95, Farallon PhoneNET PC
+- III, Farallon PhoneNET PC II).
+-
+-config COPS_TANGENT
+- bool "Tangent firmware support"
+- depends on COPS
+- help
+- Support COPS compatible cards with Tangent style firmware (Tangent
+- ATB_II, Novell NL-1000, Daystar Digital LT-200.
+-
+ config IPDDP
+ tristate "Appletalk-IP driver support"
+ depends on DEV_APPLETALK && ATALK
+--- a/drivers/net/appletalk/Makefile
++++ b/drivers/net/appletalk/Makefile
+@@ -4,5 +4,4 @@
+ #
+
+ obj-$(CONFIG_IPDDP) += ipddp.o
+-obj-$(CONFIG_COPS) += cops.o
+ obj-$(CONFIG_LTPC) += ltpc.o
diff --git a/debian/patches/debian/dfsg/video-remove-nvidiafb-and-rivafb.patch b/debian/patches/debian/dfsg/video-remove-nvidiafb-and-rivafb.patch
new file mode 100644
index 000000000..4adc90c2d
--- /dev/null
+++ b/debian/patches/debian/dfsg/video-remove-nvidiafb-and-rivafb.patch
@@ -0,0 +1,128 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sat, 2 Jun 2012 19:53:38 +0100
+Subject: video: Remove nvidiafb and rivafb
+Bug-Debian: https://bugs.debian.org/383481
+Forwarded: no
+
+These drivers contain register programming code provided by the
+hardware vendor that appears to have been deliberately obfuscated.
+This is arguably not the preferred form for modification.
+
+These drivers are also largely redundant with nouveau. The RIVA 128
+(NV3) is not supported by nouveau but is about 15 years old and
+probably discontinued 10 years ago.
+
+---
+--- a/drivers/video/fbdev/Kconfig
++++ b/drivers/video/fbdev/Kconfig
+@@ -866,99 +866,6 @@ config FB_ATMEL
+ help
+ This enables support for the AT91 LCD Controller.
+
+-config FB_NVIDIA
+- tristate "nVidia Framebuffer Support"
+- depends on FB && PCI
+- select FB_BACKLIGHT if FB_NVIDIA_BACKLIGHT
+- select FB_MODE_HELPERS
+- select FB_CFB_FILLRECT
+- select FB_CFB_COPYAREA
+- select FB_CFB_IMAGEBLIT
+- select BITREVERSE
+- select VGASTATE
+- help
+- This driver supports graphics boards with the nVidia chips, TNT
+- and newer. For very old chipsets, such as the RIVA128, then use
+- the rivafb.
+- Say Y if you have such a graphics board.
+-
+- To compile this driver as a module, choose M here: the
+- module will be called nvidiafb.
+-
+-config FB_NVIDIA_I2C
+- bool "Enable DDC Support"
+- depends on FB_NVIDIA
+- select FB_DDC
+- help
+- This enables I2C support for nVidia Chipsets. This is used
+- only for getting EDID information from the attached display
+- allowing for robust video mode handling and switching.
+-
+- Because fbdev-2.6 requires that drivers must be able to
+- independently validate video mode parameters, you should say Y
+- here.
+-
+-config FB_NVIDIA_DEBUG
+- bool "Lots of debug output"
+- depends on FB_NVIDIA
+- help
+- Say Y here if you want the nVidia driver to output all sorts
+- of debugging information to provide to the maintainer when
+- something goes wrong.
+-
+-config FB_NVIDIA_BACKLIGHT
+- bool "Support for backlight control"
+- depends on FB_NVIDIA
+- default y
+- help
+- Say Y here if you want to control the backlight of your display.
+-
+-config FB_RIVA
+- tristate "nVidia Riva support"
+- depends on FB && PCI
+- select FB_BACKLIGHT if FB_RIVA_BACKLIGHT
+- select FB_MODE_HELPERS
+- select FB_CFB_FILLRECT
+- select FB_CFB_COPYAREA
+- select FB_CFB_IMAGEBLIT
+- select BITREVERSE
+- select VGASTATE
+- help
+- This driver supports graphics boards with the nVidia Riva/Geforce
+- chips.
+- Say Y if you have such a graphics board.
+-
+- To compile this driver as a module, choose M here: the
+- module will be called rivafb.
+-
+-config FB_RIVA_I2C
+- bool "Enable DDC Support"
+- depends on FB_RIVA
+- select FB_DDC
+- help
+- This enables I2C support for nVidia Chipsets. This is used
+- only for getting EDID information from the attached display
+- allowing for robust video mode handling and switching.
+-
+- Because fbdev-2.6 requires that drivers must be able to
+- independently validate video mode parameters, you should say Y
+- here.
+-
+-config FB_RIVA_DEBUG
+- bool "Lots of debug output"
+- depends on FB_RIVA
+- help
+- Say Y here if you want the Riva driver to output all sorts
+- of debugging information to provide to the maintainer when
+- something goes wrong.
+-
+-config FB_RIVA_BACKLIGHT
+- bool "Support for backlight control"
+- depends on FB_RIVA
+- default y
+- help
+- Say Y here if you want to control the backlight of your display.
+-
+ config FB_I740
+ tristate "Intel740 support"
+ depends on FB && PCI
+--- a/drivers/video/fbdev/Makefile
++++ b/drivers/video/fbdev/Makefile
+@@ -21,8 +21,6 @@ obj-$(CONFIG_FB_PM3) += pm3fb.o
+
+ obj-$(CONFIG_FB_I740) += i740fb.o
+ obj-$(CONFIG_FB_MATROX) += matrox/
+-obj-$(CONFIG_FB_RIVA) += riva/
+-obj-$(CONFIG_FB_NVIDIA) += nvidia/
+ obj-$(CONFIG_FB_ATY) += aty/ macmodes.o
+ obj-$(CONFIG_FB_ATY128) += aty/ macmodes.o
+ obj-$(CONFIG_FB_RADEON) += aty/
diff --git a/debian/patches/debian/dfsg/vs6624-disable.patch b/debian/patches/debian/dfsg/vs6624-disable.patch
new file mode 100644
index 000000000..b99070c0c
--- /dev/null
+++ b/debian/patches/debian/dfsg/vs6624-disable.patch
@@ -0,0 +1,24 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sun, 27 May 2012 01:56:58 +0100
+Subject: vs6624: mark as broken
+Forwarded: not-needed
+
+---
+ drivers/media/i2c/Kconfig | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/drivers/media/i2c/Kconfig b/drivers/media/i2c/Kconfig
+index c68e002d26ea..9055d4658c78 100644
+--- a/drivers/media/i2c/Kconfig
++++ b/drivers/media/i2c/Kconfig
+@@ -843,6 +843,7 @@ config VIDEO_OV13858
+ OV13858 camera.
+
+ config VIDEO_VS6624
++ depends on BROKEN
+ tristate "ST VS6624 sensor support"
+ depends on VIDEO_V4L2 && I2C
+ help
+--
+2.24.0
+
diff --git a/debian/patches/debian/documentation-drop-sphinx-version-check.patch b/debian/patches/debian/documentation-drop-sphinx-version-check.patch
new file mode 100644
index 000000000..cb7f53bbe
--- /dev/null
+++ b/debian/patches/debian/documentation-drop-sphinx-version-check.patch
@@ -0,0 +1,52 @@
+From 252aa79fdbd4ac2da09d9b98f81bf11f5e3e1870 Mon Sep 17 00:00:00 2001
+From: Bastian Blank <waldi@debian.org>
+Date: Tue, 4 Aug 2020 09:44:19 +0000
+Subject: [PATCH 1/2] Documentation: Drop sphinx version check
+Forwarded: not-needed
+
+---
+ Documentation/Makefile | 5 -----
+ 1 file changed, 5 deletions(-)
+
+diff --git a/Documentation/Makefile b/Documentation/Makefile
+index 6b12dd82f712..613276ca41f6 100644
+--- a/Documentation/Makefile
++++ b/Documentation/Makefile
+@@ -78,14 +78,12 @@ quiet_cmd_sphinx = SPHINX $@ --> file://$(abspath $(BUILDDIR)/$3/$4)
+ $(abspath $(BUILDDIR)/$3/$4)
+
+ htmldocs:
+- @$(srctree)/scripts/sphinx-pre-install --version-check
+ @+$(foreach var,$(SPHINXDIRS),$(call loop_cmd,sphinx,html,$(var),,$(var)))
+
+ linkcheckdocs:
+ @$(foreach var,$(SPHINXDIRS),$(call loop_cmd,sphinx,linkcheck,$(var),,$(var)))
+
+ latexdocs:
+- @$(srctree)/scripts/sphinx-pre-install --version-check
+ @+$(foreach var,$(SPHINXDIRS),$(call loop_cmd,sphinx,latex,$(var),latex,$(var)))
+
+ ifeq ($(HAVE_PDFLATEX),0)
+@@ -97,7 +95,6 @@ pdfdocs:
+ else # HAVE_PDFLATEX
+
+ pdfdocs: latexdocs
+- @$(srctree)/scripts/sphinx-pre-install --version-check
+ $(foreach var,$(SPHINXDIRS), \
+ $(MAKE) PDFLATEX="$(PDFLATEX)" LATEXOPTS="$(LATEXOPTS)" -C $(BUILDDIR)/$(var)/latex || exit; \
+ mkdir -p $(BUILDDIR)/$(var)/pdf; \
+@@ -107,11 +104,9 @@ pdfdocs: latexdocs
+ endif # HAVE_PDFLATEX
+
+ epubdocs:
+- @$(srctree)/scripts/sphinx-pre-install --version-check
+ @+$(foreach var,$(SPHINXDIRS),$(call loop_cmd,sphinx,epub,$(var),epub,$(var)))
+
+ xmldocs:
+- @$(srctree)/scripts/sphinx-pre-install --version-check
+ @+$(foreach var,$(SPHINXDIRS),$(call loop_cmd,sphinx,xml,$(var),xml,$(var)))
+
+ endif # HAVE_SPHINX
+--
+2.28.0
+
diff --git a/debian/patches/debian/export-symbols-needed-by-android-drivers.patch b/debian/patches/debian/export-symbols-needed-by-android-drivers.patch
new file mode 100644
index 000000000..66b6b9722
--- /dev/null
+++ b/debian/patches/debian/export-symbols-needed-by-android-drivers.patch
@@ -0,0 +1,113 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 07 Sep 2020 02:51:53 +0100
+Subject: Export symbols needed by Android drivers
+Bug-Debian: https://bugs.debian.org/901492
+
+We want to enable use of the Android ashmem and binder drivers to
+support Anbox, but they should not be built-in as that would waste
+resources and increase security attack surface on systems that don't
+need them.
+
+Export the currently un-exported symbols they depend on.
+
+---
+ fs/file.c | 1 +
+ kernel/sched/core.c | 1 +
+ kernel/sched/wait.c | 1 +
+ kernel/task_work.c | 1 +
+ mm/memory.c | 1 +
+ mm/shmem.c | 1 +
+ security/security.c | 4 ++++
+ 7 files changed, 10 insertions(+)
+
+--- a/fs/file.c
++++ b/fs/file.c
+@@ -823,6 +823,7 @@ int close_fd_get_file(unsigned int fd, s
+
+ return ret;
+ }
++EXPORT_SYMBOL(close_fd_get_file);
+
+ void do_close_on_exec(struct files_struct *files)
+ {
+--- a/kernel/sched/core.c
++++ b/kernel/sched/core.c
+@@ -5049,6 +5049,7 @@ int can_nice(const struct task_struct *p
+ return (nice_rlim <= task_rlimit(p, RLIMIT_NICE) ||
+ capable(CAP_SYS_NICE));
+ }
++EXPORT_SYMBOL_GPL(can_nice);
+
+ #ifdef __ARCH_WANT_SYS_NICE
+
+--- a/kernel/task_work.c
++++ b/kernel/task_work.c
+@@ -57,6 +57,7 @@ int task_work_add(struct task_struct *ta
+
+ return 0;
+ }
++EXPORT_SYMBOL(task_work_add);
+
+ /**
+ * task_work_cancel_match - cancel a pending work added by task_work_add()
+--- a/mm/memory.c
++++ b/mm/memory.c
+@@ -1578,6 +1578,7 @@ void zap_page_range(struct vm_area_struc
+ mmu_notifier_invalidate_range_end(&range);
+ tlb_finish_mmu(&tlb, start, range.end);
+ }
++EXPORT_SYMBOL_GPL(zap_page_range);
+
+ /**
+ * zap_page_range_single - remove user pages in a given range
+--- a/mm/shmem.c
++++ b/mm/shmem.c
+@@ -4288,6 +4288,7 @@ int shmem_zero_setup(struct vm_area_stru
+
+ return 0;
+ }
++EXPORT_SYMBOL_GPL(shmem_zero_setup);
+
+ /**
+ * shmem_read_mapping_page_gfp - read into page cache, using specified page allocation flags.
+--- a/security/security.c
++++ b/security/security.c
+@@ -729,24 +729,28 @@ int security_binder_set_context_mgr(cons
+ {
+ return call_int_hook(binder_set_context_mgr, 0, mgr);
+ }
++EXPORT_SYMBOL_GPL(security_binder_set_context_mgr);
+
+ int security_binder_transaction(const struct cred *from,
+ const struct cred *to)
+ {
+ return call_int_hook(binder_transaction, 0, from, to);
+ }
++EXPORT_SYMBOL_GPL(security_binder_transaction);
+
+ int security_binder_transfer_binder(const struct cred *from,
+ const struct cred *to)
+ {
+ return call_int_hook(binder_transfer_binder, 0, from, to);
+ }
++EXPORT_SYMBOL_GPL(security_binder_transfer_binder);
+
+ int security_binder_transfer_file(const struct cred *from,
+ const struct cred *to, struct file *file)
+ {
+ return call_int_hook(binder_transfer_file, 0, from, to, file);
+ }
++EXPORT_SYMBOL_GPL(security_binder_transfer_file);
+
+ int security_ptrace_access_check(struct task_struct *child, unsigned int mode)
+ {
+--- a/kernel/sched/wait.c
++++ b/kernel/sched/wait.c
+@@ -229,6 +229,7 @@ void __wake_up_pollfree(struct wait_queu
+ /* POLLFREE must have cleared the queue. */
+ WARN_ON_ONCE(waitqueue_active(wq_head));
+ }
++EXPORT_SYMBOL_GPL(__wake_up_pollfree);
+
+ /*
+ * Note: we use "set_current_state()" _after_ the wait-queue add,
diff --git a/debian/patches/debian/fanotify-taint-on-use-of-fanotify_access_permissions.patch b/debian/patches/debian/fanotify-taint-on-use-of-fanotify_access_permissions.patch
new file mode 100644
index 000000000..82cdda18e
--- /dev/null
+++ b/debian/patches/debian/fanotify-taint-on-use-of-fanotify_access_permissions.patch
@@ -0,0 +1,29 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: fanotify: Taint on use of FANOTIFY_ACCESS_PERMISSIONS
+Date: Wed, 13 Jul 2016 01:37:22 +0100
+Forwarded: not-needed
+
+Various free and proprietary AV products use this feature and users
+apparently want it. But punting access checks to userland seems like
+an easy way to deadlock the system, and there will be nothing we can
+do about that. So warn and taint the kernel if this feature is
+actually used.
+
+---
+--- a/fs/notify/fanotify/fanotify_user.c
++++ b/fs/notify/fanotify/fanotify_user.c
+@@ -1170,6 +1170,14 @@ static int do_fanotify_mark(int fanotify
+ if (ignored)
+ mask &= ~FANOTIFY_EVENT_FLAGS;
+
++#ifdef CONFIG_FANOTIFY_ACCESS_PERMISSIONS
++ if (mask & FANOTIFY_PERM_EVENTS) {
++ pr_warn_once("%s (%d): Using fanotify permission checks may lead to deadlock; tainting kernel\n",
++ current->comm, current->pid);
++ add_taint(TAINT_AUX, LOCKDEP_STILL_OK);
++ }
++#endif
++
+ f = fdget(fanotify_fd);
+ if (unlikely(!f.file))
+ return -EBADF;
diff --git a/debian/patches/debian/firmware_class-refer-to-debian-wiki-firmware-page.patch b/debian/patches/debian/firmware_class-refer-to-debian-wiki-firmware-page.patch
new file mode 100644
index 000000000..27bc69903
--- /dev/null
+++ b/debian/patches/debian/firmware_class-refer-to-debian-wiki-firmware-page.patch
@@ -0,0 +1,52 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 12 Mar 2018 01:14:03 +0000
+Subject: firmware_class: Refer to Debian wiki page when logging missing firmware
+Bug-Debian: https://bugs.debian.org/888405
+Forwarded: not-needed
+
+If firmware loading fails due to a missing file, log a second error
+message referring to our wiki page about firmware. This will explain
+why some firmware is in non-free, or can't be packaged at all. Only
+do this once per boot.
+
+Do something similar in the radeon and amdgpu drivers, where we have
+an early check to avoid failing at a point where we cannot display
+anything.
+
+---
+--- a/drivers/base/firmware_loader/main.c
++++ b/drivers/base/firmware_loader/main.c
+@@ -334,9 +334,12 @@ fw_get_filesystem_firmware(struct device
+ }
+ __putname(path);
+
+- if (rc)
++ if (rc) {
+ dev_err(device, "firmware: failed to load %s (%d)\n",
+ fw_priv->fw_name, rc);
++ if (rc == -ENOENT)
++ pr_err_once("See https://wiki.debian.org/Firmware for information about missing firmware\n");
++ }
+
+ return rc;
+ }
+--- a/drivers/gpu/drm/radeon/radeon_drv.c
++++ b/drivers/gpu/drm/radeon/radeon_drv.c
+@@ -367,6 +367,7 @@ static int radeon_pci_probe(struct pci_d
+ if ((ent->driver_data & RADEON_FAMILY_MASK) >= CHIP_R600 &&
+ !radeon_firmware_installed()) {
+ DRM_ERROR("radeon kernel modesetting for R600 or later requires firmware installed\n");
++ pr_err_once("See https://wiki.debian.org/Firmware for information about missing firmware\n");
+ return -ENODEV;
+ }
+
+--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
+@@ -626,6 +626,7 @@ static int amdgpu_pci_probe(struct pci_d
+
+ if (!amdgpu_firmware_installed()) {
+ DRM_ERROR("amdgpu requires firmware installed\n");
++ pr_err_once("See https://wiki.debian.org/Firmware for information about missing firmware\n");
+ return -ENODEV;
+ }
+
diff --git a/debian/patches/debian/fjes-disable-autoload.patch b/debian/patches/debian/fjes-disable-autoload.patch
new file mode 100644
index 000000000..59b56708e
--- /dev/null
+++ b/debian/patches/debian/fjes-disable-autoload.patch
@@ -0,0 +1,24 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sat, 18 Mar 2017 20:47:58 +0000
+Subject: fjes: Disable auto-loading
+Bug-Debian: https://bugs.debian.org/853976
+Forwarded: no
+
+fjes matches a generic ACPI device ID, and relies on its probe
+function to distinguish whether that really corresponds to a supported
+device. Very few system will need the driver and it wastes memory on
+all the other systems where the same device ID appears, so disable
+auto-loading.
+
+---
+--- a/drivers/net/fjes/fjes_main.c
++++ b/drivers/net/fjes/fjes_main.c
+@@ -81,7 +81,7 @@ static const struct acpi_device_id fjes_
+ {ACPI_MOTHERBOARD_RESOURCE_HID, 0},
+ {"", 0},
+ };
+-MODULE_DEVICE_TABLE(acpi, fjes_acpi_ids);
++/* MODULE_DEVICE_TABLE(acpi, fjes_acpi_ids); */
+
+ static struct acpi_driver fjes_acpi_driver = {
+ .name = DRV_NAME,
diff --git a/debian/patches/debian/fs-enable-link-security-restrictions-by-default.patch b/debian/patches/debian/fs-enable-link-security-restrictions-by-default.patch
new file mode 100644
index 000000000..e2a8679a5
--- /dev/null
+++ b/debian/patches/debian/fs-enable-link-security-restrictions-by-default.patch
@@ -0,0 +1,22 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: fs: Enable link security restrictions by default
+Date: Fri, 02 Nov 2012 05:32:06 +0000
+Bug-Debian: https://bugs.debian.org/609455
+Forwarded: not-needed
+
+This reverts commit 561ec64ae67ef25cac8d72bb9c4bfc955edfd415
+('VFS: don't do protected {sym,hard}links by default').
+
+--- a/fs/namei.c
++++ b/fs/namei.c
+@@ -885,8 +885,8 @@ static inline void put_link(struct namei
+ path_put(&last->link);
+ }
+
+-int sysctl_protected_symlinks __read_mostly = 0;
+-int sysctl_protected_hardlinks __read_mostly = 0;
++int sysctl_protected_symlinks __read_mostly = 1;
++int sysctl_protected_hardlinks __read_mostly = 1;
+ int sysctl_protected_fifos __read_mostly;
+ int sysctl_protected_regular __read_mostly;
+
diff --git a/debian/patches/debian/gitignore.patch b/debian/patches/debian/gitignore.patch
new file mode 100644
index 000000000..78a7235fa
--- /dev/null
+++ b/debian/patches/debian/gitignore.patch
@@ -0,0 +1,49 @@
+From: Ian Campbell <ijc@hellion.org.uk>
+Date: Thu, 17 Jan 2013 08:55:21 +0000
+Subject: Tweak gitignore for Debian pkg-kernel using git svn.
+Forwarded: not-needed
+
+[bwh: Tweak further for pure git]
+
+--- a/.gitignore
++++ b/.gitignore
+@@ -71,11 +71,6 @@ modules.order
+ /*.spec
+
+ #
+-# Debian directory (make deb-pkg)
+-#
+-/debian/
+-
+-#
+ # Snap directory (make snap-pkg)
+ #
+ /snap/
+@@ -86,16 +81,6 @@ modules.order
+ /tar-install/
+
+ #
+-# We don't want to ignore the following even if they are dot-files
+-#
+-!.clang-format
+-!.cocciconfig
+-!.get_maintainer.ignore
+-!.gitattributes
+-!.gitignore
+-!.mailmap
+-
+-#
+ # Generated include files
+ #
+ /include/config/
+@@ -155,3 +140,10 @@ x509.genkey
+
+ # Documentation toolchain
+ sphinx_*/
++
++#
++# Debian packaging: ignore everything at the top level, since it isn't
++# included in our repository
++#
++/*
++!/debian/
diff --git a/debian/patches/debian/hamradio-disable-auto-loading-as-mitigation-against-local-exploits.patch b/debian/patches/debian/hamradio-disable-auto-loading-as-mitigation-against-local-exploits.patch
new file mode 100644
index 000000000..b532d0054
--- /dev/null
+++ b/debian/patches/debian/hamradio-disable-auto-loading-as-mitigation-against-local-exploits.patch
@@ -0,0 +1,48 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 05 Aug 2019 00:29:11 +0100
+Subject: hamradio: Disable auto-loading as mitigation against local exploits
+Forwarded: not-needed
+
+We can mitigate the effect of vulnerabilities in obscure protocols by
+preventing unprivileged users from loading the modules, so that they
+are only exploitable on systems where the administrator has chosen to
+load the protocol.
+
+The 'ham' radio protocols (ax25, netrom, rose) are not actively
+maintained or widely used. Therefore disable auto-loading.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+--- a/net/ax25/af_ax25.c
++++ b/net/ax25/af_ax25.c
+@@ -1986,7 +1986,7 @@ module_init(ax25_init);
+ MODULE_AUTHOR("Jonathan Naylor G4KLX <g4klx@g4klx.demon.co.uk>");
+ MODULE_DESCRIPTION("The amateur radio AX.25 link layer protocol");
+ MODULE_LICENSE("GPL");
+-MODULE_ALIAS_NETPROTO(PF_AX25);
++/* MODULE_ALIAS_NETPROTO(PF_AX25); */
+
+ static void __exit ax25_exit(void)
+ {
+--- a/net/netrom/af_netrom.c
++++ b/net/netrom/af_netrom.c
+@@ -1486,7 +1486,7 @@ MODULE_PARM_DESC(nr_ndevs, "number of NE
+ MODULE_AUTHOR("Jonathan Naylor G4KLX <g4klx@g4klx.demon.co.uk>");
+ MODULE_DESCRIPTION("The amateur radio NET/ROM network and transport layer protocol");
+ MODULE_LICENSE("GPL");
+-MODULE_ALIAS_NETPROTO(PF_NETROM);
++/* MODULE_ALIAS_NETPROTO(PF_NETROM); */
+
+ static void __exit nr_exit(void)
+ {
+--- a/net/rose/af_rose.c
++++ b/net/rose/af_rose.c
+@@ -1577,7 +1577,7 @@ MODULE_PARM_DESC(rose_ndevs, "number of
+ MODULE_AUTHOR("Jonathan Naylor G4KLX <g4klx@g4klx.demon.co.uk>");
+ MODULE_DESCRIPTION("The amateur radio ROSE network layer protocol");
+ MODULE_LICENSE("GPL");
+-MODULE_ALIAS_NETPROTO(PF_ROSE);
++/* MODULE_ALIAS_NETPROTO(PF_ROSE); */
+
+ static void __exit rose_exit(void)
+ {
diff --git a/debian/patches/debian/i386-686-pae-pci-set-pci-nobios-by-default.patch b/debian/patches/debian/i386-686-pae-pci-set-pci-nobios-by-default.patch
new file mode 100644
index 000000000..1b216d0d1
--- /dev/null
+++ b/debian/patches/debian/i386-686-pae-pci-set-pci-nobios-by-default.patch
@@ -0,0 +1,27 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Tue, 16 Feb 2016 02:45:42 +0000
+Subject: [i386/686-pae] PCI: Set pci=nobios by default
+Forwarded: not-needed
+
+CONFIG_PCI_GOBIOS results in physical addresses 640KB-1MB being mapped
+W+X, which is undesirable for security reasons and will result in a
+warning at boot now that we enable CONFIG_DEBUG_WX.
+
+This can be overridden using the kernel parameter "pci=nobios", but we
+want to disable W+X by default. Disable PCI BIOS probing by default;
+it can still be enabled using "pci=bios".
+
+---
+--- a/arch/x86/pci/common.c
++++ b/arch/x86/pci/common.c
+@@ -21,8 +21,8 @@
+ #include <asm/setup.h>
+ #include <asm/irqdomain.h>
+
+-unsigned int pci_probe = PCI_PROBE_BIOS | PCI_PROBE_CONF1 | PCI_PROBE_CONF2 |
+- PCI_PROBE_MMCONF;
++unsigned int pci_probe = PCI_PROBE_CONF1 | PCI_PROBE_CONF2 | PCI_PROBE_MMCONF |
++ (IS_ENABLED(CONFIG_X86_64) || IS_ENABLED(CONFIG_X86_PAE) ? 0 : PCI_PROBE_BIOS);
+
+ static int pci_bf_sort;
+ int pci_routeirq;
diff --git a/debian/patches/debian/ia64-hardcode-arch-script-output.patch b/debian/patches/debian/ia64-hardcode-arch-script-output.patch
new file mode 100644
index 000000000..064157efc
--- /dev/null
+++ b/debian/patches/debian/ia64-hardcode-arch-script-output.patch
@@ -0,0 +1,75 @@
+From: dann frazier <dannf@debian.org>
+Subject: Hardcode arch script output
+Date: Mon, 26 Mar 2007 16:30:51 -0600
+Bug-Debian: https://bugs.debian.org/392592
+Forwarded: not-needed
+
+Here's a patch that simply uses hardcoded definitions instead of
+doing the dynamic tests that require architecture-specific scripts.
+
+I don't particularly like this approach because it restricts
+portability and diverts from upstream. But, it is simpler, and this
+really needs to be fixed somehow before etch (along with a rebuild of
+linux-modules-extra-2.6), so I'm willing to live with it if my other
+patch is deemed unacceptable.
+
+My primary concern is that, in the future, the output of these scripts
+will change and we (or our successors) will either not notice or
+forget to update the hardcoded values.
+
+Including the scripts in linux-kbuild will avoid this manual step
+altogether, and allow for the possibility of other archs to provide
+their own scripts in the future.
+---
+ arch/ia64/Makefile | 17 ++---------------
+ 1 file changed, 2 insertions(+), 15 deletions(-)
+
+Index: debian-kernel/arch/ia64/Makefile
+===================================================================
+--- debian-kernel.orig/arch/ia64/Makefile
++++ debian-kernel/arch/ia64/Makefile
+@@ -28,16 +28,7 @@ cflags-y := -pipe $(EXTRA) -ffixed-r13 -
+ -falign-functions=32 -frename-registers -fno-optimize-sibling-calls
+ KBUILD_CFLAGS_KERNEL := -mconstant-gp
+
+-GAS_STATUS = $(shell $(srctree)/arch/ia64/scripts/check-gas "$(CC)" "$(OBJDUMP)")
+-KBUILD_CPPFLAGS += $(shell $(srctree)/arch/ia64/scripts/toolchain-flags "$(CC)" "$(OBJDUMP)" "$(READELF)")
+-
+-ifeq ($(GAS_STATUS),buggy)
+-$(error Sorry, you need a newer version of the assember, one that is built from \
+- a source-tree that post-dates 18-Dec-2002. You can find a pre-compiled \
+- static binary of such an assembler at: \
+- \
+- ftp://ftp.hpl.hp.com/pub/linux-ia64/gas-030124.tar.gz)
+-endif
++KBUILD_CPPFLAGS += -DHAVE_WORKING_TEXT_ALIGN -DHAVE_MODEL_SMALL_ATTRIBUTE -DHAVE_SERIALIZE_DIRECTIVE
+
+ quiet_cmd_gzip = GZIP $@
+ cmd_gzip = cat $(real-prereqs) | $(KGZIP) -n -f -9 > $@
+@@ -57,7 +48,7 @@ drivers-$(CONFIG_OPROFILE) += arch/ia64/
+
+ PHONY += compressed check
+
+-all: compressed unwcheck
++all: compressed
+
+ compressed: vmlinux.gz
+
+@@ -69,9 +60,6 @@ vmlinux.gz: vmlinux.bin FORCE
+ vmlinux.bin: vmlinux FORCE
+ $(call if_changed,objcopy)
+
+-unwcheck: vmlinux
+- -$(Q)READELF=$(READELF) $(PYTHON) $(srctree)/arch/ia64/scripts/unwcheck.py $<
+-
+ archclean:
+
+ archheaders:
+@@ -85,7 +73,6 @@ install: vmlinux.gz
+ define archhelp
+ echo '* compressed - Build compressed kernel image'
+ echo ' install - Install compressed kernel image'
+- echo '* unwcheck - Check vmlinux for invalid unwind info'
+ endef
+
+ archprepare: make_nr_irqs_h
diff --git a/debian/patches/debian/iwlwifi-do-not-request-unreleased-firmware.patch b/debian/patches/debian/iwlwifi-do-not-request-unreleased-firmware.patch
new file mode 100644
index 000000000..c8061436d
--- /dev/null
+++ b/debian/patches/debian/iwlwifi-do-not-request-unreleased-firmware.patch
@@ -0,0 +1,26 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: iwlwifi: Do not request unreleased firmware for IWL6000
+Bug-Debian: https://bugs.debian.org/689416
+Forwarded: not-needed
+
+The iwlwifi driver currently supports firmware API versions 4-6 for
+these devices. It will request the file for the latest supported
+version and then fall back to earlier versions. However, the latest
+version that has actually been released is 4, so we expect the
+requests for versions 6 and then 5 to fail.
+
+The installer appears to report any failed request, and it is probably
+not easy to detect that this particular failure is harmless. So stop
+requesting the unreleased firmware.
+
+--- a/drivers/net/wireless/intel/iwlwifi/cfg/6000.c
++++ b/drivers/net/wireless/intel/iwlwifi/cfg/6000.c
+@@ -31,7 +31,7 @@
+ #include "dvm/commands.h" /* needed for BT for now */
+
+ /* Highest firmware API version supported */
+-#define IWL6000_UCODE_API_MAX 6
++#define IWL6000_UCODE_API_MAX 4 /* v5-6 are supported but not released */
+ #define IWL6050_UCODE_API_MAX 5
+ #define IWL6000G2_UCODE_API_MAX 6
+ #define IWL6035_UCODE_API_MAX 6
diff --git a/debian/patches/debian/kbuild-abort-build-if-subdirs-used.patch b/debian/patches/debian/kbuild-abort-build-if-subdirs-used.patch
new file mode 100644
index 000000000..ec23040d8
--- /dev/null
+++ b/debian/patches/debian/kbuild-abort-build-if-subdirs-used.patch
@@ -0,0 +1,37 @@
+From: Ben Hutchings <benh@debian.org>
+Date: Mon, 26 Apr 2021 18:27:16 +0200
+Subject: kbuild: Abort build if SUBDIRS used
+Forwarded: not-needed
+Bug-Debian: https://bugs.debian.org/987575
+
+DKMS and module-assistant both build OOT modules as root. If they
+build an old OOT module that still use SUBDIRS this causes Kbuild
+to try building a full kernel, which obviously fails but not before
+deleting files from the installed headers package.
+
+To avoid such mishaps, detect this situation and abort the build.
+
+The error message is based on that used in commit 0126be38d988
+"kbuild: announce removal of SUBDIRS if used".
+---
+--- a/Makefile
++++ b/Makefile
+@@ -218,6 +218,18 @@ ifeq ("$(origin M)", "command line")
+ KBUILD_EXTMOD := $(M)
+ endif
+
++# Old syntax make ... SUBDIRS=$PWD should be rejected to avoid mishaps
++# (see Debian bugs #982334, #987575)
++ifndef KBUILD_EXTMOD
++ ifdef SUBDIRS
++ $(warning =============== ERROR ==============)
++ $(warning 'SUBDIRS' was removed in Linux 5.3)
++ $(warning Use 'M=' or 'KBUILD_EXTMOD=' instead)
++ $(warning ====================================)
++ $(error .)
++ endif
++endif
++
+ $(if $(word 2, $(KBUILD_EXTMOD)), \
+ $(error building multiple external modules is not supported))
+
diff --git a/debian/patches/debian/kbuild-look-for-module.lds-under-arch-directory-too.patch b/debian/patches/debian/kbuild-look-for-module.lds-under-arch-directory-too.patch
new file mode 100644
index 000000000..04e636319
--- /dev/null
+++ b/debian/patches/debian/kbuild-look-for-module.lds-under-arch-directory-too.patch
@@ -0,0 +1,45 @@
+From: Ben Hutchings <benh@debian.org>
+Date: Thu, 10 Dec 2020 17:31:39 +0100
+Subject: kbuild: Look for module.lds under arch directory too
+Forwarded: not-needed
+Bug-Debian: https://bugs.debian.org/975571
+
+The module.lds linker script is now built under the scripts directory,
+where previously it was under arch/$(SRCARCH).
+
+However, we package the scripts directory as linux-kbuild, which is
+meant to be able to do support native and cross-builds. That means it
+shouldn't contain files for a specific target architecture without a
+wrapper to select between them, and it doesn't appear that linker
+scripts are powerful enough to implement such a wrapper.
+
+Building module.lds in a different location would require relatively
+large changes. Moving it in the package build rules can work, but we
+need to support custom kernel builds from the same source so we can't
+assume it's moved.
+
+Therefore, we move module.lds under the arch build directory in
+rules.real and change Makefile.modfinal to look for it in both places.
+
+---
+--- a/scripts/Makefile.modfinal
++++ b/scripts/Makefile.modfinal
+@@ -28,15 +28,16 @@ quiet_cmd_cc_o_c = CC [M] $@
+ $(call if_changed_dep,cc_o_c)
+
+ ARCH_POSTLINK := $(wildcard $(srctree)/arch/$(SRCARCH)/Makefile.postlink)
++ARCH_MODULE_LDS := $(word 1,$(wildcard scripts/module.lds arch/$(SRCARCH)/module.lds))
+
+ quiet_cmd_ld_ko_o = LD [M] $@
+ cmd_ld_ko_o = \
+ $(LD) -r $(KBUILD_LDFLAGS) \
+ $(KBUILD_LDFLAGS_MODULE) $(LDFLAGS_MODULE) \
+- -T scripts/module.lds -o $@ $(filter %.o, $^); \
++ -T $(ARCH_MODULE_LDS) -o $@ $(filter %.o, $^); \
+ $(if $(ARCH_POSTLINK), $(MAKE) -f $(ARCH_POSTLINK) $@, true)
+
+-$(modules): %.ko: %.o %.mod.o scripts/module.lds FORCE
++$(modules): %.ko: %.o %.mod.o $(ARCH_MODULE_LDS) FORCE
+ +$(call if_changed,ld_ko_o)
+
+ targets += $(modules) $(modules:.ko=.mod.o)
diff --git a/debian/patches/debian/kernelvariables.patch b/debian/patches/debian/kernelvariables.patch
new file mode 100644
index 000000000..c574f984a
--- /dev/null
+++ b/debian/patches/debian/kernelvariables.patch
@@ -0,0 +1,82 @@
+From: Bastian Blank <waldi@debian.org>
+Subject: kbuild: Make the toolchain variables easily overwritable
+Date: Sun, 22 Feb 2009 15:39:35 +0100
+Forwarded: not-needed
+
+Allow make variables to be overridden for each flavour by a file in
+the build tree, .kernelvariables.
+
+We currently use this for ARCH, KERNELRELEASE, CC, and in some cases
+also CROSS_COMPILE, KCFLAGS.
+
+This file can only be read after we establish the build tree, and all
+use of $(ARCH) needs to be moved after this.
+
+[bwh: Updated for 5.3: include .kernelvariables from current directory
+ rather than using undefined $(obj).]
+---
+--- a/Makefile
++++ b/Makefile
+@@ -363,31 +363,6 @@ include scripts/subarch.include
+ # Note: Some architectures assign CROSS_COMPILE in their arch/*/Makefile
+ ARCH ?= $(SUBARCH)
+
+-# Architecture as present in compile.h
+-UTS_MACHINE := $(ARCH)
+-SRCARCH := $(ARCH)
+-
+-# Additional ARCH settings for x86
+-ifeq ($(ARCH),i386)
+- SRCARCH := x86
+-endif
+-ifeq ($(ARCH),x86_64)
+- SRCARCH := x86
+-endif
+-
+-# Additional ARCH settings for sparc
+-ifeq ($(ARCH),sparc32)
+- SRCARCH := sparc
+-endif
+-ifeq ($(ARCH),sparc64)
+- SRCARCH := sparc
+-endif
+-
+-# Additional ARCH settings for sh
+-ifeq ($(ARCH),sh64)
+- SRCARCH := sh
+-endif
+-
+ KCONFIG_CONFIG ?= .config
+ export KCONFIG_CONFIG
+
+@@ -442,6 +417,30 @@ CFLAGS_KERNEL =
+ AFLAGS_KERNEL =
+ LDFLAGS_vmlinux =
+
++-include .kernelvariables
++
++# Architecture as present in compile.h
++UTS_MACHINE := $(ARCH)
++SRCARCH := $(ARCH)
++
++# Additional ARCH settings for x86
++ifeq ($(ARCH),i386)
++ SRCARCH := x86
++endif
++ifeq ($(ARCH),x86_64)
++ SRCARCH := x86
++endif
++
++# Additional ARCH settings for sparc
++ifeq ($(ARCH),sparc64)
++ SRCARCH := sparc
++endif
++
++# Additional ARCH settings for sh
++ifeq ($(ARCH),sh64)
++ SRCARCH := sh
++endif
++
+ # Use USERINCLUDE when you must reference the UAPI directories only.
+ USERINCLUDE := \
+ -I$(srctree)/arch/$(SRCARCH)/include/uapi \
diff --git a/debian/patches/debian/makefile-do-not-check-for-libelf-when-building-oot-module.patch b/debian/patches/debian/makefile-do-not-check-for-libelf-when-building-oot-module.patch
new file mode 100644
index 000000000..037999c8d
--- /dev/null
+++ b/debian/patches/debian/makefile-do-not-check-for-libelf-when-building-oot-module.patch
@@ -0,0 +1,83 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 07 Sep 2020 03:38:04 +0100
+Subject: Makefile: Do not check for libelf when building OOT module
+
+When building out-of-tree modules, the necessary tools should have
+already been built. We therefore do not need libelf-dev to be
+installed.
+
+This effectively reverts commit 9f0c18aec620 "objtool: Fix
+CONFIG_STACK_VALIDATION=y warning for out-of-tree modules", and
+similarly moves the check introduced by commit 33a57ce0a54d "bpf:
+Compile resolve_btfids tool at kernel compilation start".
+---
+ Makefile | 22 +++++++++++-----------
+ 1 file changed, 11 insertions(+), 11 deletions(-)
+
+--- a/Makefile
++++ b/Makefile
+@@ -1083,18 +1083,6 @@ export mod_sign_cmd
+
+ HOST_LIBELF_LIBS = $(shell pkg-config libelf --libs 2>/dev/null || echo -lelf)
+
+-has_libelf = $(call try-run,\
+- echo "int main() {}" | $(HOSTCC) $(KBUILD_HOSTLDFLAGS) -xc -o /dev/null $(HOST_LIBELF_LIBS) -,1,0)
+-
+-ifdef CONFIG_STACK_VALIDATION
+- ifeq ($(has_libelf),1)
+- objtool_target := tools/objtool FORCE
+- else
+- SKIP_STACK_VALIDATION := 1
+- export SKIP_STACK_VALIDATION
+- endif
+-endif
+-
+ PHONY += resolve_btfids_clean
+
+ resolve_btfids_O = $(abspath $(objtree))/tools/bpf/resolve_btfids
+@@ -1106,16 +1094,6 @@ ifneq ($(wildcard $(resolve_btfids_O)),)
+ $(Q)$(MAKE) -sC $(srctree)/tools/bpf/resolve_btfids O=$(resolve_btfids_O) clean
+ endif
+
+-ifdef CONFIG_BPF
+-ifdef CONFIG_DEBUG_INFO_BTF
+- ifeq ($(has_libelf),1)
+- resolve_btfids_target := tools/bpf/resolve_btfids FORCE
+- else
+- ERROR_RESOLVE_BTFIDS := 1
+- endif
+-endif # CONFIG_DEBUG_INFO_BTF
+-endif # CONFIG_BPF
+-
+ PHONY += prepare0
+
+ export MODORDER := $(extmod-prefix)modules.order
+@@ -1239,6 +1217,28 @@ uapi-asm-generic:
+ $(Q)$(MAKE) $(asm-generic)=arch/$(SRCARCH)/include/generated/uapi/asm \
+ generic=include/uapi/asm-generic
+
++has_libelf = $(call try-run,\
++ echo "int main() {}" | $(HOSTCC) $(KBUILD_HOSTLDFLAGS) -xc -o /dev/null $(HOST_LIBELF_LIBS) -,1,0)
++
++ifdef CONFIG_STACK_VALIDATION
++ ifeq ($(has_libelf),1)
++ objtool_target := tools/objtool FORCE
++ else
++ SKIP_STACK_VALIDATION := 1
++ export SKIP_STACK_VALIDATION
++ endif
++endif
++
++ifdef CONFIG_BPF
++ifdef CONFIG_DEBUG_INFO_BTF
++ ifeq ($(has_libelf),1)
++ resolve_btfids_target := tools/bpf/resolve_btfids FORCE
++ else
++ ERROR_RESOLVE_BTFIDS := 1
++ endif
++endif # CONFIG_DEBUG_INFO_BTF
++endif # CONFIG_BPF
++
+ PHONY += prepare-objtool prepare-resolve_btfids
+ prepare-objtool: $(objtool_target)
+ ifeq ($(SKIP_STACK_VALIDATION),1)
diff --git a/debian/patches/debian/mips-boston-disable-its.patch b/debian/patches/debian/mips-boston-disable-its.patch
new file mode 100644
index 000000000..be108f35e
--- /dev/null
+++ b/debian/patches/debian/mips-boston-disable-its.patch
@@ -0,0 +1,20 @@
+From: YunQiang Su <syq@debian.org>
+Date: Mon, 14 May 2018 16:16:18 +0800
+Subject: Disable uImage generation for mips generic
+Forwarded: not-needed
+
+MIPS generic trys to generate uImage when build, which then ask for
+u-boot-tools.
+
+--- a/arch/mips/generic/Platform
++++ b/arch/mips/generic/Platform
+@@ -14,9 +14,6 @@ cflags-$(CONFIG_MIPS_GENERIC) += -I$(src
+
+ load-$(CONFIG_MIPS_GENERIC) += 0xffffffff80100000
+ zload-$(CONFIG_MIPS_GENERIC) += 0xffffffff81000000
+-all-$(CONFIG_MIPS_GENERIC) := vmlinux.gz.itb
+-
+-its-y := vmlinux.its.S
+ its-$(CONFIG_FIT_IMAGE_FDT_BOSTON) += board-boston.its.S
+ its-$(CONFIG_FIT_IMAGE_FDT_NI169445) += board-ni169445.its.S
+ its-$(CONFIG_FIT_IMAGE_FDT_OCELOT) += board-ocelot.its.S
diff --git a/debian/patches/debian/mips-disable-werror.patch b/debian/patches/debian/mips-disable-werror.patch
new file mode 100644
index 000000000..b8fe8b44c
--- /dev/null
+++ b/debian/patches/debian/mips-disable-werror.patch
@@ -0,0 +1,23 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 13 Sep 2010 02:16:18 +0100
+Subject: [PATCH] Partially revert "MIPS: Add -Werror to arch/mips/Kbuild"
+Forwarded: not-needed
+
+This reverts commits 66f9ba101f54bda63ab1db97f9e9e94763d0651b and
+5373633cc9253ba82547473e899cab141c54133e.
+
+We really don't want to add -Werror anywhere.
+---
+--- a/arch/mips/Kbuild
++++ b/arch/mips/Kbuild
+@@ -1,10 +1,4 @@
+ # SPDX-License-Identifier: GPL-2.0
+-# Fail on warnings - also for files referenced in subdirs
+-# -Werror can be disabled for specific files using:
+-# CFLAGS_<file.o> := -Wno-error
+-ifeq ($(W),)
+-subdir-ccflags-y := -Werror
+-endif
+
+ # platform specific definitions
+ include arch/mips/Kbuild.platforms
diff --git a/debian/patches/debian/mips-ieee754-relaxed.patch b/debian/patches/debian/mips-ieee754-relaxed.patch
new file mode 100644
index 000000000..20dff251c
--- /dev/null
+++ b/debian/patches/debian/mips-ieee754-relaxed.patch
@@ -0,0 +1,32 @@
+From: YunQiang Su <syq@debian.org>
+Date: Mon 16 Nov 2020 09:11:00 +0800
+Subject: Use RELAXED ieee754 mode for Loongson-3 as 3A 4000 is 2008-only
+Forwarded: not-needed
+
+There are 2 mode of value of IEEE NaN hardcoded by CPU.
+Currently, our mipsel/mips64el port is in so-called lagacy mode.
+Loongson 3A 4000 is set as the so-called 2008 mode.
+
+To make Debian workable on Loongson 3A 4000, we need set the kerenl in
+RELAXED mode.
+
+https://web.archive.org/web/20180830093617/https://dmz-portal.mips.com/wiki/MIPS_ABI_-_NaN_Interlinking
+
+diff --git a/arch/mips/kernel/fpu-probe.c b/arch/mips/kernel/fpu-probe.c
+index e689d6a83..667226f94 100644
+--- a/arch/mips/kernel/fpu-probe.c
++++ b/arch/mips/kernel/fpu-probe.c
+@@ -144,7 +144,12 @@ static void cpu_set_fpu_2008(struct cpuinfo_mips *c)
+ * IEEE 754 conformance mode to use. Affects the NaN encoding and the
+ * ABS.fmt/NEG.fmt execution mode.
+ */
+-static enum { STRICT, LEGACY, STD2008, RELAXED } ieee754 = STRICT;
++enum ieee754_mode { STRICT, LEGACY, STD2008, RELAXED };
++#ifdef CONFIG_CPU_LOONGSON64
++static enum ieee754_mode ieee754 = RELAXED;
++#else
++static enum ieee754_mode ieee754 = STRICT;
++#endif
+
+ /*
+ * Set the IEEE 754 NaN encodings and the ABS.fmt/NEG.fmt execution modes
diff --git a/debian/patches/debian/ntfs-mark-it-as-broken.patch b/debian/patches/debian/ntfs-mark-it-as-broken.patch
new file mode 100644
index 000000000..207f9751e
--- /dev/null
+++ b/debian/patches/debian/ntfs-mark-it-as-broken.patch
@@ -0,0 +1,22 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Thu, 25 Apr 2019 15:31:33 +0100
+Subject: ntfs: mark it as broken
+
+NTFS has unfixed issues CVE-2018-12929, CVE-2018-12930, and
+CVE-2018-12931. ntfs-3g is a better supported alternative.
+
+Make sure it can't be enabled even in custom kernels.
+
+---
+Index: debian-kernel/fs/ntfs/Kconfig
+===================================================================
+--- debian-kernel.orig/fs/ntfs/Kconfig
++++ debian-kernel/fs/ntfs/Kconfig
+@@ -1,6 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0-only
+ config NTFS_FS
+ tristate "NTFS file system support"
++ depends on BROKEN
+ select NLS
+ help
+ NTFS is the file system of Microsoft Windows NT, 2000, XP and 2003.
diff --git a/debian/patches/debian/overlayfs-permit-mounts-in-userns.patch b/debian/patches/debian/overlayfs-permit-mounts-in-userns.patch
new file mode 100644
index 000000000..2cba9b70e
--- /dev/null
+++ b/debian/patches/debian/overlayfs-permit-mounts-in-userns.patch
@@ -0,0 +1,58 @@
+From: Nicolas Schier <nicolas@fjasle.eu>
+Subject: ovl: permit overlayfs mounts in user namespaces (taints kernel)
+Date: Mon, 19 Nov 2018 20:36:14 +0100
+
+Permit overlayfs mounts within user namespaces to allow utilisation of e.g.
+unprivileged LXC overlay snapshots.
+
+Except by the Ubuntu community [1], overlayfs mounts in user namespaces are
+expected to be a security risk [2] and thus are not enabled on upstream
+Linux kernels. For the non-Ubuntu users that have to stick to unprivileged
+overlay-based LXCs, this meant to patch and compile the kernel manually.
+Instead, adding the kernel tainting 'permit_mounts_in_userns' module
+parameter allows a kind of a user-friendly way to enable the feature.
+
+Testable with:
+
+ sudo modprobe overlay permit_mounts_in_userns=1
+ sudo sysctl -w kernel.unprivileged_userns_clone=1
+ mkdir -p lower upper work mnt
+ unshare --map-root-user --mount \
+ mount -t overlay none mnt \
+ -o lowerdir=lower,upperdir=upper,workdir=work
+
+[1]: Ubuntu allows unprivileged mounting of overlay filesystem
+https://lists.ubuntu.com/archives/kernel-team/2014-February/038091.html
+
+[2]: User namespaces + overlayfs = root privileges
+https://lwn.net/Articles/671641/
+
+Signed-off-by: Nicolas Schier <nicolas@fjasle.eu>
+[bwh: Forward-ported to 5.6: adjust context]
+---
+--- a/fs/overlayfs/super.c
++++ b/fs/overlayfs/super.c
+@@ -53,6 +53,11 @@ module_param_named(xino_auto, ovl_xino_a
+ MODULE_PARM_DESC(xino_auto,
+ "Auto enable xino feature");
+
++static bool ovl_permit_mounts_in_userns;
++module_param_named_unsafe(permit_mounts_in_userns, ovl_permit_mounts_in_userns,
++ bool, 0444);
++MODULE_PARM_DESC(permit_mounts_in_userns, "Permit mounts in user namespaces");
++
+ static void ovl_entry_stack_free(struct ovl_entry *oe)
+ {
+ unsigned int i;
+@@ -1777,6 +1782,11 @@ static int __init ovl_init(void)
+ if (ovl_inode_cachep == NULL)
+ return -ENOMEM;
+
++ if (unlikely(ovl_permit_mounts_in_userns)) {
++ pr_warn("overlayfs: Allowing overlay mounts in user namespaces bears security risks\n");
++ ovl_fs_type.fs_flags |= FS_USERNS_MOUNT;
++ }
++
+ err = ovl_aio_request_cache_init();
+ if (!err) {
+ err = register_filesystem(&ovl_fs_type);
diff --git a/debian/patches/debian/perf-traceevent-support-asciidoctor-for-documentatio.patch b/debian/patches/debian/perf-traceevent-support-asciidoctor-for-documentatio.patch
new file mode 100644
index 000000000..89df33ab0
--- /dev/null
+++ b/debian/patches/debian/perf-traceevent-support-asciidoctor-for-documentatio.patch
@@ -0,0 +1,54 @@
+From cd02fc78859ef9aefd7c92406f9523622da0b472 Mon Sep 17 00:00:00 2001
+From: Bastian Blank <waldi@debian.org>
+Date: Tue, 4 Aug 2020 09:44:37 +0000
+Subject: [PATCH 2/2] perf/traceevent: Support asciidoctor for documentation
+Forwarded: not-needed
+
+---
+ tools/lib/perf/Documentation/Makefile | 2 +-
+ tools/lib/traceevent/Documentation/Makefile | 2 +-
+ tools/perf/Documentation/Makefile | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/tools/lib/perf/Documentation/Makefile b/tools/lib/perf/Documentation/Makefile
+index 972754082a85..272d06173a3e 100644
+--- a/tools/lib/perf/Documentation/Makefile
++++ b/tools/lib/perf/Documentation/Makefile
+@@ -35,7 +35,7 @@ htmldir = $(docdir)/html
+ exdir = $(docdir)/examples
+
+ ASCIIDOC = asciidoc
+-ASCIIDOC_EXTRA = --unsafe -f asciidoc.conf
++ASCIIDOC_EXTRA =
+ ASCIIDOC_HTML = xhtml11
+ MANPAGE_XSL = manpage-normal.xsl
+ XMLTO_EXTRA =
+diff --git a/tools/lib/traceevent/Documentation/Makefile b/tools/lib/traceevent/Documentation/Makefile
+index aa72ab96c3c1..f3a4ff3b8b0e 100644
+--- a/tools/lib/traceevent/Documentation/Makefile
++++ b/tools/lib/traceevent/Documentation/Makefile
+@@ -28,7 +28,7 @@ mandir?=$(prefix)/share/man
+ man3dir=$(mandir)/man3
+
+ ASCIIDOC=asciidoc
+-ASCIIDOC_EXTRA = --unsafe -f asciidoc.conf
++ASCIIDOC_EXTRA =
+ ASCIIDOC_HTML = xhtml11
+ MANPAGE_XSL = manpage-normal.xsl
+ XMLTO_EXTRA =
+diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
+index 6e54979c2124..7bfa6ae971ab 100644
+--- a/tools/perf/Documentation/Makefile
++++ b/tools/perf/Documentation/Makefile
+@@ -48,7 +48,7 @@ man5dir=$(mandir)/man5
+ man7dir=$(mandir)/man7
+
+ ASCIIDOC=asciidoc
+-ASCIIDOC_EXTRA += --unsafe -f asciidoc.conf
++ASCIIDOC_EXTRA +=
+ ASCIIDOC_HTML = xhtml11
+ MANPAGE_XSL = manpage-normal.xsl
+ XMLTO_EXTRA =
+--
+2.28.0
+
diff --git a/debian/patches/debian/rds-Disable-auto-loading-as-mitigation-against-local.patch b/debian/patches/debian/rds-Disable-auto-loading-as-mitigation-against-local.patch
new file mode 100644
index 000000000..3343aecac
--- /dev/null
+++ b/debian/patches/debian/rds-Disable-auto-loading-as-mitigation-against-local.patch
@@ -0,0 +1,34 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Fri, 19 Nov 2010 02:12:48 +0000
+Subject: [PATCH 1/3] rds: Disable auto-loading as mitigation against local exploits
+Forwarded: not-needed
+
+Recent review has revealed several bugs in obscure protocol
+implementations that can be exploited by local users for denial of
+service or privilege escalation. We can mitigate the effect of any
+remaining vulnerabilities in such protocols by preventing unprivileged
+users from loading the modules, so that they are only exploitable on
+systems where the administrator has chosen to load the protocol.
+
+The 'rds' protocol is one such protocol that has been found to be
+vulnerable, and which was not present in the 'lenny' kernel.
+Therefore disable auto-loading.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ net/rds/af_rds.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/net/rds/af_rds.c b/net/rds/af_rds.c
+index 98e0538..d8d4525 100644
+--- a/net/rds/af_rds.c
++++ b/net/rds/af_rds.c
+@@ -574,4 +574,4 @@ MODULE_DESCRIPTION("RDS: Reliable Datagram Sockets"
+ " v" DRV_VERSION " (" DRV_RELDATE ")");
+ MODULE_VERSION(DRV_VERSION);
+ MODULE_LICENSE("Dual BSD/GPL");
+-MODULE_ALIAS_NETPROTO(PF_RDS);
++/* MODULE_ALIAS_NETPROTO(PF_RDS); */
+--
+1.7.2.3
+
diff --git a/debian/patches/debian/sched-autogroup-disabled.patch b/debian/patches/debian/sched-autogroup-disabled.patch
new file mode 100644
index 000000000..e9988022e
--- /dev/null
+++ b/debian/patches/debian/sched-autogroup-disabled.patch
@@ -0,0 +1,19 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: sched: Do not enable autogrouping by default
+Date: Wed, 16 Mar 2011 03:17:06 +0000
+Forwarded: not-needed
+
+We want to provide the option of autogrouping but without enabling
+it by default yet.
+
+--- a/kernel/sched/autogroup.c
++++ b/kernel/sched/autogroup.c
+@@ -5,7 +5,7 @@
+ #include <linux/nospec.h>
+ #include "sched.h"
+
+-unsigned int __read_mostly sysctl_sched_autogroup_enabled = 1;
++unsigned int __read_mostly sysctl_sched_autogroup_enabled = 0;
+ static struct autogroup autogroup_default;
+ static atomic_t autogroup_seq_nr;
+
diff --git a/debian/patches/debian/snd-pcsp-disable-autoload.patch b/debian/patches/debian/snd-pcsp-disable-autoload.patch
new file mode 100644
index 000000000..5871dc6ef
--- /dev/null
+++ b/debian/patches/debian/snd-pcsp-disable-autoload.patch
@@ -0,0 +1,30 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Wed, 05 Feb 2014 23:01:30 +0000
+Subject: snd-pcsp: Disable autoload
+Forwarded: not-needed
+Bug-Debian: https://bugs.debian.org/697709
+
+There are two drivers claiming the platform:pcspkr device:
+- pcspkr creates an input(!) device that can only beep
+- snd-pcsp creates an equivalent input device plus a PCM device that can
+ play barely recognisable renditions of sampled sound
+
+snd-pcsp is blacklisted by the alsa-base package, but not everyone
+installs that. On PCs where no sound is wanted at all, both drivers
+will still be loaded and one or other will complain that it couldn't
+claim the relevant I/O range.
+
+In case anyone finds snd-pcsp useful, we continue to build it. But
+remove the alias, to ensure it's not loaded where it's not wanted.
+
+--- a/sound/drivers/pcsp/pcsp.c
++++ b/sound/drivers/pcsp/pcsp.c
+@@ -21,7 +21,7 @@ MODULE_AUTHOR("Stas Sergeev <stsp@users.
+ MODULE_DESCRIPTION("PC-Speaker driver");
+ MODULE_LICENSE("GPL");
+ MODULE_SUPPORTED_DEVICE("{{PC-Speaker, pcsp}}");
+-MODULE_ALIAS("platform:pcspkr");
++/*MODULE_ALIAS("platform:pcspkr");*/
+
+ static int index = SNDRV_DEFAULT_IDX1; /* Index 0-MAX */
+ static char *id = SNDRV_DEFAULT_STR1; /* ID for this card */
diff --git a/debian/patches/debian/tools-perf-install.patch b/debian/patches/debian/tools-perf-install.patch
new file mode 100644
index 000000000..b25bd2575
--- /dev/null
+++ b/debian/patches/debian/tools-perf-install.patch
@@ -0,0 +1,52 @@
+From: Bastian Blank <waldi@debian.org>
+Date: Fri, 07 Oct 2011 21:37:52 +0100
+Subject: Install perf scripts non-executable
+Forwarded: no
+
+[bwh: Forward-ported to 4.13]
+---
+ tools/perf/Makefile.perf | 20 ++++++++++----------
+ 1 file changed, 10 insertions(+), 10 deletions(-)
+
+--- a/tools/perf/Makefile.perf
++++ b/tools/perf/Makefile.perf
+@@ -952,8 +952,8 @@ endif
+ ifndef NO_LIBPERL
+ $(call QUIET_INSTALL, perl-scripts) \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/Perf-Trace-Util/lib/Perf/Trace'; \
+- $(INSTALL) scripts/perl/Perf-Trace-Util/lib/Perf/Trace/* -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/Perf-Trace-Util/lib/Perf/Trace'; \
+- $(INSTALL) scripts/perl/*.pl -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl'; \
++ $(INSTALL) -m 644 scripts/perl/Perf-Trace-Util/lib/Perf/Trace/* -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/Perf-Trace-Util/lib/Perf/Trace'; \
++ $(INSTALL) -m 644 scripts/perl/*.pl -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl'; \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/bin'; \
+ $(INSTALL) scripts/perl/bin/* -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/perl/bin'
+ endif
+@@ -967,22 +967,22 @@ ifndef NO_LIBPYTHON
+ endif
+ $(call QUIET_INSTALL, perf_completion-script) \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(sysconfdir_SQ)/bash_completion.d'; \
+- $(INSTALL) perf-completion.sh '$(DESTDIR_SQ)$(sysconfdir_SQ)/bash_completion.d/perf_$(VERSION)'
++ $(INSTALL) -m 644 perf-completion.sh '$(DESTDIR_SQ)$(sysconfdir_SQ)/bash_completion.d/perf_$(VERSION)'
+ $(call QUIET_INSTALL, perf-tip) \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(tip_instdir_SQ)'; \
+- $(INSTALL) Documentation/tips.txt -t '$(DESTDIR_SQ)$(tip_instdir_SQ)'
++ $(INSTALL) -m 644 Documentation/tips.txt -t '$(DESTDIR_SQ)$(tip_instdir_SQ)'
+
+ install-tests: all install-gtk
+ $(call QUIET_INSTALL, tests) \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests'; \
+- $(INSTALL) tests/attr.py '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests'; \
++ $(INSTALL) -m 644 tests/attr.py '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests'; \
+ $(INSTALL) tests/pe-file.exe* '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests'; \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/attr'; \
+- $(INSTALL) tests/attr/* '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/attr'; \
++ $(INSTALL) -m 644 tests/attr/* '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/attr'; \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell'; \
+- $(INSTALL) tests/shell/*.sh '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell'; \
++ $(INSTALL) -m 644 tests/shell/*.sh '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell'; \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib'; \
+- $(INSTALL) tests/shell/lib/*.sh '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib'
++ $(INSTALL) -m 644 tests/shell/lib/*.sh '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/tests/shell/lib'
+
+ install-bin: install-tools install-tests install-traceevent-plugins
+
diff --git a/debian/patches/debian/tools-perf-version.patch b/debian/patches/debian/tools-perf-version.patch
new file mode 100644
index 000000000..ccc28833d
--- /dev/null
+++ b/debian/patches/debian/tools-perf-version.patch
@@ -0,0 +1,128 @@
+From: Bastian Blank <waldi@debian.org>
+Date: Mon, 26 Sep 2011 13:53:12 +0100
+Subject: Create manpages and binaries including the version
+Forwarded: no
+
+[bwh: Fix version insertion in perf man page cross-references and perf
+man page title. Install bash_completion script for perf with a
+version-dependent name. And do the same for trace.]
+---
+ tools/perf/Documentation/Makefile | 14 ++++++++------
+ tools/perf/Makefile.perf | 16 ++++++++--------
+ tools/perf/util/Build | 1 +
+ tools/perf/util/vdso.c | 4 ++--
+ 4 files changed, 19 insertions(+), 16 deletions(-)
+
+diff --git a/tools/perf/Documentation/Makefile b/tools/perf/Documentation/Makefile
+index 6e54979c2124..db2cb7669da1 100644
+--- a/tools/perf/Documentation/Makefile
++++ b/tools/perf/Documentation/Makefile
+@@ -195,14 +195,16 @@ ifdef missing_tools
+ $(error "You need to install $(missing_tools) for man pages")
+ endif
+
+-do-install-man: man
++do-install-man: $(addprefix install-man-,$(_DOC_MAN1))
++
++install-man-perf.1: $(OUTPUT)perf.1
++ $(INSTALL) -d -m 755 $(DESTDIR)$(man1dir)
++ sed -e 's/"PERF"/"PERF_$(VERSION)"/' -e 's/fBperf-/fBperf_$(VERSION)-/g' $^ > $(DESTDIR)$(man1dir)/perf_$(VERSION).1
++
++install-man-perf%.1: $(OUTPUT)perf%.1
+ $(call QUIET_INSTALL, Documentation-man) \
+ $(INSTALL) -d -m 755 $(DESTDIR)$(man1dir); \
+-# $(INSTALL) -d -m 755 $(DESTDIR)$(man5dir); \
+-# $(INSTALL) -d -m 755 $(DESTDIR)$(man7dir); \
+- $(INSTALL) -m 644 $(DOC_MAN1) $(DESTDIR)$(man1dir); \
+-# $(INSTALL) -m 644 $(DOC_MAN5) $(DESTDIR)$(man5dir); \
+-# $(INSTALL) -m 644 $(DOC_MAN7) $(DESTDIR)$(man7dir)
++ sed -e 's/"PERF\\-/"PERF_$(VERSION)\\-/' -e 's/fBperf-/fBperf_$(VERSION)-/g' $^ > $(DESTDIR)$(man1dir)/perf_$(VERSION)$*.1
+
+ install-man: check-man-tools man do-install-man
+
+diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
+index 86dbb51bb272..ed69643c3249 100644
+--- a/tools/perf/Makefile.perf
++++ b/tools/perf/Makefile.perf
+@@ -888,23 +888,23 @@ endif
+ install-tools: all install-gtk
+ $(call QUIET_INSTALL, binaries) \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(bindir_SQ)'; \
+- $(INSTALL) $(OUTPUT)perf '$(DESTDIR_SQ)$(bindir_SQ)'; \
+- $(LN) '$(DESTDIR_SQ)$(bindir_SQ)/perf' '$(DESTDIR_SQ)$(bindir_SQ)/trace'
++ $(INSTALL) $(OUTPUT)perf '$(DESTDIR_SQ)$(bindir_SQ)/perf_$(VERSION)'; \
++ $(LN) '$(DESTDIR_SQ)$(bindir_SQ)/perf_$(VERSION)' '$(DESTDIR_SQ)$(bindir_SQ)/trace_$(VERSION)'
++ $(call QUIET_INSTALL, libexec) \
++ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)'
+ ifndef NO_PERF_READ_VDSO32
+ $(call QUIET_INSTALL, perf-read-vdso32) \
+- $(INSTALL) $(OUTPUT)perf-read-vdso32 '$(DESTDIR_SQ)$(bindir_SQ)';
++ $(INSTALL) $(OUTPUT)perf-read-vdso32 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)';
+ endif
+ ifndef NO_PERF_READ_VDSOX32
+ $(call QUIET_INSTALL, perf-read-vdsox32) \
+- $(INSTALL) $(OUTPUT)perf-read-vdsox32 '$(DESTDIR_SQ)$(bindir_SQ)';
++ $(INSTALL) $(OUTPUT)perf-read-vdsox32 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)';
+ endif
+ ifndef NO_JVMTI
+ $(call QUIET_INSTALL, $(LIBJVMTI)) \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(libdir_SQ)'; \
+ $(INSTALL) $(OUTPUT)$(LIBJVMTI) '$(DESTDIR_SQ)$(libdir_SQ)';
+ endif
+- $(call QUIET_INSTALL, libexec) \
+- $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perfexec_instdir_SQ)'
+ ifndef NO_LIBBPF
+ $(call QUIET_INSTALL, bpf-headers) \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(perf_include_instdir_SQ)/bpf'; \
+@@ -942,7 +942,7 @@ ifndef NO_LIBPYTHON
+ endif
+ $(call QUIET_INSTALL, perf_completion-script) \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(sysconfdir_SQ)/bash_completion.d'; \
+- $(INSTALL) perf-completion.sh '$(DESTDIR_SQ)$(sysconfdir_SQ)/bash_completion.d/perf'
++ $(INSTALL) perf-completion.sh '$(DESTDIR_SQ)$(sysconfdir_SQ)/bash_completion.d/perf_$(VERSION)'
+ $(call QUIET_INSTALL, perf-tip) \
+ $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(tip_instdir_SQ)'; \
+ $(INSTALL) Documentation/tips.txt -t '$(DESTDIR_SQ)$(tip_instdir_SQ)'
+@@ -967,7 +967,7 @@ install-python_ext:
+
+ # 'make install-doc' should call 'make -C Documentation install'
+ $(INSTALL_DOC_TARGETS):
+- $(Q)$(MAKE) -C $(DOC_DIR) O=$(OUTPUT) $(@:-doc=) ASCIIDOC_EXTRA=$(ASCIIDOC_EXTRA)
++ $(Q)$(MAKE) -C $(DOC_DIR) O=$(OUTPUT) $(@:-doc=) ASCIIDOC_EXTRA=$(ASCIIDOC_EXTRA) VERSION=$(VERSION)
+
+ ### Cleaning rules
+
+diff --git a/tools/perf/util/Build b/tools/perf/util/Build
+index 8d18380ecd10..5dd0f6c387b3 100644
+--- a/tools/perf/util/Build
++++ b/tools/perf/util/Build
+@@ -234,6 +234,7 @@ CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ET
+ CFLAGS_parse-events.o += -Wno-redundant-decls
+ CFLAGS_expr.o += -Wno-redundant-decls
+ CFLAGS_header.o += -include $(OUTPUT)PERF-VERSION-FILE
++CFLAGS_vdso.o += -DPERFEXECDIR='"$(perfexec_instdir_SQ)"'
+
+ $(OUTPUT)util/kallsyms.o: ../lib/symbol/kallsyms.c FORCE
+ $(call rule_mkdir)
+diff --git a/tools/perf/util/vdso.c b/tools/perf/util/vdso.c
+index 3cc91ad048ea..e7483388bb5d 100644
+--- a/tools/perf/util/vdso.c
++++ b/tools/perf/util/vdso.c
+@@ -55,12 +55,12 @@ static struct vdso_info *vdso_info__new(void)
+ .vdso32 = {
+ .temp_file_name = VDSO__TEMP_FILE_NAME,
+ .dso_name = DSO__NAME_VDSO32,
+- .read_prog = "perf-read-vdso32",
++ .read_prog = PERFEXECDIR "/perf-read-vdso32",
+ },
+ .vdsox32 = {
+ .temp_file_name = VDSO__TEMP_FILE_NAME,
+ .dso_name = DSO__NAME_VDSOX32,
+- .read_prog = "perf-read-vdsox32",
++ .read_prog = PERFEXECDIR "/perf-read-vdsox32",
+ },
+ #endif
+ };
+--
+2.27.0
+
diff --git a/debian/patches/debian/uname-version-timestamp.patch b/debian/patches/debian/uname-version-timestamp.patch
new file mode 100644
index 000000000..5cd565c1e
--- /dev/null
+++ b/debian/patches/debian/uname-version-timestamp.patch
@@ -0,0 +1,33 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: Make mkcompile_h accept an alternate timestamp string
+Date: Tue, 12 May 2015 19:29:22 +0100
+Forwarded: not-needed
+
+We want to include the Debian version in the utsname::version string
+instead of a full timestamp string. However, we still need to provide
+a standard timestamp string for gen_initramfs_list.sh to make the
+kernel image reproducible.
+
+Make mkcompile_h use $KBUILD_BUILD_VERSION_TIMESTAMP in preference to
+$KBUILD_BUILD_TIMESTAMP.
+
+--- a/scripts/mkcompile_h
++++ b/scripts/mkcompile_h
+@@ -37,10 +37,14 @@ else
+ VERSION=$KBUILD_BUILD_VERSION
+ fi
+
+-if [ -z "$KBUILD_BUILD_TIMESTAMP" ]; then
+- TIMESTAMP=`date`
++if [ -z "$KBUILD_BUILD_VERSION_TIMESTAMP" ]; then
++ if [ -z "$KBUILD_BUILD_TIMESTAMP" ]; then
++ TIMESTAMP=`date`
++ else
++ TIMESTAMP=$KBUILD_BUILD_TIMESTAMP
++ fi
+ else
+- TIMESTAMP=$KBUILD_BUILD_TIMESTAMP
++ TIMESTAMP=$KBUILD_BUILD_VERSION_TIMESTAMP
+ fi
+ if test -z "$KBUILD_BUILD_USER"; then
+ LINUX_COMPILE_BY=$(whoami | sed 's/\\/\\\\/')
diff --git a/debian/patches/debian/version.patch b/debian/patches/debian/version.patch
new file mode 100644
index 000000000..542dc53d9
--- /dev/null
+++ b/debian/patches/debian/version.patch
@@ -0,0 +1,172 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: Include package version along with kernel release in stack traces
+Date: Tue, 24 Jul 2012 03:13:10 +0100
+Forwarded: not-needed
+
+For distribution binary packages we assume
+$DISTRIBUTION_OFFICIAL_BUILD, $DISTRIBUTOR and $DISTRIBUTION_VERSION
+are set.
+---
+ Makefile | 15 ++++++++++++++-
+ arch/ia64/kernel/process.c | 5 +++--
+ arch/powerpc/kernel/process.c | 6 ++++--
+ arch/x86/um/sysrq_64.c | 6 ++++--
+ kernel/hung_task.c | 6 ++++--
+ lib/dump_stack.c | 6 ++++--
+ 6 files changed, 33 insertions(+), 11 deletions(-)
+
+--- a/Makefile
++++ b/Makefile
+@@ -1195,7 +1195,7 @@ PHONY += prepare archprepare
+
+ archprepare: outputmakefile archheaders archscripts scripts include/config/kernel.release \
+ asm-generic $(version_h) $(autoksyms_h) include/generated/utsrelease.h \
+- include/generated/autoconf.h
++ include/generated/autoconf.h include/generated/package.h
+
+ prepare0: archprepare
+ $(Q)$(MAKE) $(build)=scripts/mod
+@@ -1258,6 +1258,16 @@ define filechk_version.h
+ ((c) > 255 ? 255 : (c)))'
+ endef
+
++ifneq ($(DISTRIBUTION_OFFICIAL_BUILD),)
++define filechk_package.h
++ echo \#define LINUX_PACKAGE_ID \" $(DISTRIBUTOR) $(DISTRIBUTION_VERSION)\"
++endef
++else
++define filechk_package.h
++ echo \#define LINUX_PACKAGE_ID \"\"
++endef
++endif
++
+ $(version_h): PATCHLEVEL := $(if $(PATCHLEVEL), $(PATCHLEVEL), 0)
+ $(version_h): SUBLEVEL := $(if $(SUBLEVEL), $(SUBLEVEL), 0)
+ $(version_h): FORCE
+@@ -1267,6 +1277,9 @@ $(version_h): FORCE
+ include/generated/utsrelease.h: include/config/kernel.release FORCE
+ $(call filechk,utsrelease.h)
+
++include/generated/package.h: $(srctree)/Makefile FORCE
++ $(call filechk,package.h)
++
+ PHONY += headerdep
+ headerdep:
+ $(Q)find $(srctree)/include/ -name '*.h' | xargs --max-args 1 \
+--- a/arch/ia64/kernel/process.c
++++ b/arch/ia64/kernel/process.c
+@@ -34,6 +34,7 @@
+ #include <linux/utsname.h>
+ #include <linux/tracehook.h>
+ #include <linux/rcupdate.h>
++#include <generated/package.h>
+
+ #include <asm/cpu.h>
+ #include <asm/delay.h>
+@@ -101,9 +102,9 @@ show_regs (struct pt_regs *regs)
+ print_modules();
+ printk("\n");
+ show_regs_print_info(KERN_DEFAULT);
+- printk("psr : %016lx ifs : %016lx ip : [<%016lx>] %s (%s)\n",
++ printk("psr : %016lx ifs : %016lx ip : [<%016lx>] %s (%s%s)\n",
+ regs->cr_ipsr, regs->cr_ifs, ip, print_tainted(),
+- init_utsname()->release);
++ init_utsname()->release, LINUX_PACKAGE_ID);
+ printk("ip is at %pS\n", (void *)ip);
+ printk("unat: %016lx pfs : %016lx rsc : %016lx\n",
+ regs->ar_unat, regs->ar_pfs, regs->ar_rsc);
+--- a/arch/powerpc/kernel/process.c
++++ b/arch/powerpc/kernel/process.c
+@@ -40,6 +40,7 @@
+ #include <linux/elf-randomize.h>
+ #include <linux/pkeys.h>
+ #include <linux/seq_buf.h>
++#include <generated/package.h>
+
+ #include <asm/io.h>
+ #include <asm/processor.h>
+@@ -1474,8 +1475,9 @@ void show_regs(struct pt_regs * regs)
+
+ printk("NIP: "REG" LR: "REG" CTR: "REG"\n",
+ regs->nip, regs->link, regs->ctr);
+- printk("REGS: %px TRAP: %04lx %s (%s)\n",
+- regs, regs->trap, print_tainted(), init_utsname()->release);
++ printk("REGS: %px TRAP: %04lx %s (%s%s)\n",
++ regs, regs->trap, print_tainted(), init_utsname()->release,
++ LINUX_PACKAGE_ID);
+ printk("MSR: "REG" ", regs->msr);
+ print_msr_bits(regs->msr);
+ pr_cont(" CR: %08lx XER: %08lx\n", regs->ccr, regs->xer);
+--- a/arch/x86/um/sysrq_64.c
++++ b/arch/x86/um/sysrq_64.c
+@@ -9,6 +9,7 @@
+ #include <linux/sched.h>
+ #include <linux/sched/debug.h>
+ #include <linux/utsname.h>
++#include <generated/package.h>
+ #include <asm/current.h>
+ #include <asm/ptrace.h>
+ #include <asm/sysrq.h>
+@@ -17,8 +18,9 @@ void show_regs(struct pt_regs *regs)
+ {
+ printk("\n");
+ print_modules();
+- printk(KERN_INFO "Pid: %d, comm: %.20s %s %s\n", task_pid_nr(current),
+- current->comm, print_tainted(), init_utsname()->release);
++ printk(KERN_INFO "Pid: %d, comm: %.20s %s %s%s\n", task_pid_nr(current),
++ current->comm, print_tainted(), init_utsname()->release,
++ LINUX_PACKAGE_ID);
+ printk(KERN_INFO "RIP: %04lx:[<%016lx>]\n", PT_REGS_CS(regs) & 0xffff,
+ PT_REGS_IP(regs));
+ printk(KERN_INFO "RSP: %016lx EFLAGS: %08lx\n", PT_REGS_SP(regs),
+--- a/kernel/hung_task.c
++++ b/kernel/hung_task.c
+@@ -23,6 +23,7 @@
+ #include <linux/sched/sysctl.h>
+
+ #include <trace/events/sched.h>
++#include <generated/package.h>
+
+ /*
+ * The number of tasks checked:
+@@ -128,10 +129,11 @@ static void check_hung_task(struct task_
+ sysctl_hung_task_warnings--;
+ pr_err("INFO: task %s:%d blocked for more than %ld seconds.\n",
+ t->comm, t->pid, (jiffies - t->last_switch_time) / HZ);
+- pr_err(" %s %s %.*s\n",
++ pr_err(" %s %s %.*s%s\n",
+ print_tainted(), init_utsname()->release,
+ (int)strcspn(init_utsname()->version, " "),
+- init_utsname()->version);
++ init_utsname()->version,
++ LINUX_PACKAGE_ID);
+ pr_err("\"echo 0 > /proc/sys/kernel/hung_task_timeout_secs\""
+ " disables this message.\n");
+ sched_show_task(t);
+--- a/lib/dump_stack.c
++++ b/lib/dump_stack.c
+@@ -12,6 +12,7 @@
+ #include <linux/atomic.h>
+ #include <linux/kexec.h>
+ #include <linux/utsname.h>
++#include <generated/package.h>
+
+ static char dump_stack_arch_desc_str[128];
+
+@@ -44,13 +45,14 @@ void __init dump_stack_set_arch_desc(con
+ */
+ void dump_stack_print_info(const char *log_lvl)
+ {
+- printk("%sCPU: %d PID: %d Comm: %.20s %s%s %s %.*s\n",
++ printk("%sCPU: %d PID: %d Comm: %.20s %s%s %s %.*s%s\n",
+ log_lvl, raw_smp_processor_id(), current->pid, current->comm,
+ kexec_crash_loaded() ? "Kdump: loaded " : "",
+ print_tainted(),
+ init_utsname()->release,
+ (int)strcspn(init_utsname()->version, " "),
+- init_utsname()->version);
++ init_utsname()->version,
++ LINUX_PACKAGE_ID);
+
+ if (dump_stack_arch_desc_str[0] != '\0')
+ printk("%sHardware name: %s\n",
diff --git a/debian/patches/debian/wireless-add-debian-wireless-regdb-certificates.patch b/debian/patches/debian/wireless-add-debian-wireless-regdb-certificates.patch
new file mode 100644
index 000000000..edbf8657f
--- /dev/null
+++ b/debian/patches/debian/wireless-add-debian-wireless-regdb-certificates.patch
@@ -0,0 +1,1452 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Fri, 13 Apr 2018 20:10:28 +0100
+Subject: wireless: Add Debian wireless-regdb certificates
+Forwarded: not-needed
+
+This hex dump is generated using:
+
+{
+ for cert in debian/certs/wireless-regdb-*.pem; do
+ openssl x509 -in $cert -outform der;
+ done
+} | hexdump -v -e '1/1 "0x%.2x," "\n"' > net/wireless/certs/debian.hex
+---
+ net/wireless/certs/debian.hex | 1426 +++++++++++++++++++++++++++++++++
+ 1 file changed, 1426 insertions(+)
+ create mode 100644 net/wireless/certs/debian.hex
+
+diff --git a/net/wireless/certs/debian.hex b/net/wireless/certs/debian.hex
+new file mode 100644
+index 000000000000..c5ab03f8c500
+--- /dev/null
++++ b/net/wireless/certs/debian.hex
+@@ -0,0 +1,1426 @@
++0x30,
++0x82,
++0x02,
++0xbd,
++0x30,
++0x82,
++0x01,
++0xa5,
++0x02,
++0x14,
++0x57,
++0x7e,
++0x02,
++0x1c,
++0xb9,
++0x80,
++0xe0,
++0xe8,
++0x20,
++0x82,
++0x1b,
++0xa7,
++0xb5,
++0x4b,
++0x49,
++0x61,
++0xb8,
++0xb4,
++0xfa,
++0xdf,
++0x30,
++0x0d,
++0x06,
++0x09,
++0x2a,
++0x86,
++0x48,
++0x86,
++0xf7,
++0x0d,
++0x01,
++0x01,
++0x0b,
++0x05,
++0x00,
++0x30,
++0x1a,
++0x31,
++0x18,
++0x30,
++0x16,
++0x06,
++0x03,
++0x55,
++0x04,
++0x03,
++0x0c,
++0x0f,
++0x62,
++0x65,
++0x6e,
++0x68,
++0x40,
++0x64,
++0x65,
++0x62,
++0x69,
++0x61,
++0x6e,
++0x2e,
++0x6f,
++0x72,
++0x67,
++0x30,
++0x20,
++0x17,
++0x0d,
++0x32,
++0x30,
++0x30,
++0x31,
++0x33,
++0x30,
++0x31,
++0x33,
++0x32,
++0x36,
++0x31,
++0x33,
++0x5a,
++0x18,
++0x0f,
++0x32,
++0x31,
++0x32,
++0x30,
++0x30,
++0x31,
++0x30,
++0x36,
++0x31,
++0x33,
++0x32,
++0x36,
++0x31,
++0x33,
++0x5a,
++0x30,
++0x1a,
++0x31,
++0x18,
++0x30,
++0x16,
++0x06,
++0x03,
++0x55,
++0x04,
++0x03,
++0x0c,
++0x0f,
++0x62,
++0x65,
++0x6e,
++0x68,
++0x40,
++0x64,
++0x65,
++0x62,
++0x69,
++0x61,
++0x6e,
++0x2e,
++0x6f,
++0x72,
++0x67,
++0x30,
++0x82,
++0x01,
++0x22,
++0x30,
++0x0d,
++0x06,
++0x09,
++0x2a,
++0x86,
++0x48,
++0x86,
++0xf7,
++0x0d,
++0x01,
++0x01,
++0x01,
++0x05,
++0x00,
++0x03,
++0x82,
++0x01,
++0x0f,
++0x00,
++0x30,
++0x82,
++0x01,
++0x0a,
++0x02,
++0x82,
++0x01,
++0x01,
++0x00,
++0x9d,
++0xe1,
++0x77,
++0xa0,
++0x24,
++0xa0,
++0xd5,
++0x79,
++0x65,
++0x3a,
++0x07,
++0x90,
++0xc9,
++0xf6,
++0xa5,
++0xa6,
++0x1f,
++0x84,
++0x1c,
++0x23,
++0x07,
++0x4b,
++0x4f,
++0xa5,
++0x03,
++0xc6,
++0x0f,
++0xf7,
++0x54,
++0xd5,
++0x8b,
++0x7e,
++0x79,
++0x81,
++0x00,
++0xd2,
++0xe9,
++0x3d,
++0xf4,
++0x97,
++0xfe,
++0x84,
++0xcd,
++0x55,
++0xbd,
++0xc9,
++0x8f,
++0x21,
++0x57,
++0x88,
++0x06,
++0x39,
++0x90,
++0x66,
++0x41,
++0x26,
++0x79,
++0x2c,
++0xca,
++0x3f,
++0x95,
++0x87,
++0x01,
++0x11,
++0x2f,
++0x2f,
++0xb0,
++0xe1,
++0x0b,
++0x43,
++0xfc,
++0x5f,
++0x2f,
++0x4f,
++0x67,
++0x04,
++0xdb,
++0x4d,
++0xb7,
++0x72,
++0x4d,
++0xd1,
++0xc5,
++0x76,
++0x73,
++0x4d,
++0x91,
++0x69,
++0xb0,
++0x71,
++0x17,
++0x36,
++0xea,
++0xab,
++0x0a,
++0x3a,
++0xcd,
++0x95,
++0x9b,
++0x76,
++0x1b,
++0x8e,
++0x21,
++0x17,
++0x8f,
++0xc5,
++0x02,
++0xbf,
++0x24,
++0xc7,
++0xc0,
++0x40,
++0xb1,
++0x3b,
++0xc4,
++0x80,
++0x7c,
++0x71,
++0xa5,
++0x51,
++0xdc,
++0xf7,
++0x3a,
++0x58,
++0x7f,
++0xb1,
++0x07,
++0x81,
++0x8a,
++0x10,
++0xd1,
++0xf6,
++0x93,
++0x17,
++0x71,
++0xe0,
++0xfa,
++0x51,
++0x79,
++0x15,
++0xd4,
++0xd7,
++0x8f,
++0xad,
++0xbd,
++0x6f,
++0x38,
++0xe1,
++0x26,
++0x7d,
++0xbc,
++0xf0,
++0x3e,
++0x80,
++0x89,
++0xb4,
++0xec,
++0x8e,
++0x69,
++0x90,
++0xdb,
++0x97,
++0x8a,
++0xf0,
++0x23,
++0x23,
++0x83,
++0x82,
++0x3b,
++0x6a,
++0xb1,
++0xac,
++0xeb,
++0xe7,
++0x99,
++0x74,
++0x2a,
++0x35,
++0x8e,
++0xa9,
++0x64,
++0xfd,
++0x46,
++0x9e,
++0xe8,
++0xe5,
++0x48,
++0x61,
++0x31,
++0x6e,
++0xe6,
++0xfc,
++0x19,
++0x18,
++0x54,
++0xc3,
++0x1b,
++0x4f,
++0xd6,
++0x00,
++0x44,
++0x87,
++0x1c,
++0x37,
++0x45,
++0xea,
++0xf5,
++0xc9,
++0xcb,
++0x0f,
++0x0c,
++0x55,
++0xec,
++0xcf,
++0x6a,
++0xc2,
++0x45,
++0x26,
++0x23,
++0xa2,
++0x31,
++0x52,
++0x4d,
++0xee,
++0x21,
++0x7d,
++0xfd,
++0x58,
++0x72,
++0xc2,
++0x28,
++0xc5,
++0x8e,
++0xa9,
++0xd0,
++0xee,
++0x01,
++0x77,
++0x08,
++0xa5,
++0xf0,
++0x22,
++0x2b,
++0x47,
++0x79,
++0x2b,
++0xcf,
++0x9a,
++0x46,
++0xb5,
++0x8f,
++0xfd,
++0x64,
++0xa2,
++0xb5,
++0xed,
++0x02,
++0x03,
++0x01,
++0x00,
++0x01,
++0x30,
++0x0d,
++0x06,
++0x09,
++0x2a,
++0x86,
++0x48,
++0x86,
++0xf7,
++0x0d,
++0x01,
++0x01,
++0x0b,
++0x05,
++0x00,
++0x03,
++0x82,
++0x01,
++0x01,
++0x00,
++0x20,
++0x44,
++0xfe,
++0xa9,
++0x9e,
++0xdd,
++0x9b,
++0xea,
++0xce,
++0x25,
++0x75,
++0x08,
++0xf0,
++0x2b,
++0x53,
++0xf7,
++0x5a,
++0x36,
++0x1c,
++0x4a,
++0x23,
++0x7f,
++0xd0,
++0x41,
++0x3c,
++0x12,
++0x2b,
++0xb9,
++0x80,
++0x4e,
++0x8a,
++0x15,
++0x5d,
++0x1f,
++0x40,
++0xa7,
++0x26,
++0x28,
++0x32,
++0xc3,
++0x5b,
++0x06,
++0x28,
++0x2d,
++0x3d,
++0x08,
++0x09,
++0x1e,
++0x01,
++0xe9,
++0x67,
++0xe3,
++0x33,
++0xe6,
++0x15,
++0x45,
++0x39,
++0xee,
++0x17,
++0x83,
++0xdb,
++0x42,
++0xff,
++0x7f,
++0x35,
++0xf4,
++0xac,
++0x16,
++0xdb,
++0xba,
++0xb8,
++0x1a,
++0x20,
++0x21,
++0x41,
++0xff,
++0xf3,
++0x92,
++0xff,
++0x65,
++0x6e,
++0x29,
++0x16,
++0xd0,
++0xbf,
++0x8d,
++0xdf,
++0x48,
++0x2c,
++0x73,
++0x36,
++0x7f,
++0x22,
++0xe6,
++0xee,
++0x78,
++0xb4,
++0x63,
++0x83,
++0x0e,
++0x39,
++0xeb,
++0xaf,
++0x10,
++0x2a,
++0x90,
++0xd3,
++0xfc,
++0xe6,
++0xc3,
++0x8f,
++0x97,
++0x5b,
++0x76,
++0xbf,
++0x9b,
++0xf5,
++0x98,
++0xd2,
++0x53,
++0x06,
++0x8b,
++0xf8,
++0xa4,
++0x04,
++0x9b,
++0x1b,
++0x62,
++0x6a,
++0x9d,
++0xac,
++0xe6,
++0x4b,
++0x0d,
++0xc9,
++0xd7,
++0x56,
++0x63,
++0x15,
++0x01,
++0x38,
++0x8c,
++0xbe,
++0xf1,
++0x44,
++0xc4,
++0x38,
++0x27,
++0xe0,
++0xcf,
++0x72,
++0xd6,
++0x3d,
++0xe4,
++0xf7,
++0x4b,
++0x3b,
++0xd2,
++0xb1,
++0x0c,
++0xd5,
++0x83,
++0x6d,
++0x1e,
++0x10,
++0x04,
++0x69,
++0x29,
++0x88,
++0x69,
++0xe0,
++0x7d,
++0xd7,
++0xdb,
++0xb4,
++0x59,
++0x72,
++0x8d,
++0x9d,
++0x3c,
++0x43,
++0xaf,
++0xc6,
++0x7d,
++0xb7,
++0x21,
++0x15,
++0x52,
++0x8a,
++0xe9,
++0x9b,
++0x6b,
++0x2e,
++0xe8,
++0x27,
++0x3c,
++0x3f,
++0x2d,
++0x84,
++0xfb,
++0x9a,
++0x22,
++0x0a,
++0x9f,
++0x6a,
++0x25,
++0xe6,
++0x39,
++0xe4,
++0x74,
++0x73,
++0xb6,
++0x2a,
++0x70,
++0xaa,
++0x1d,
++0xcb,
++0xcc,
++0xd4,
++0xa0,
++0x1b,
++0x26,
++0x71,
++0x63,
++0x04,
++0xc5,
++0x12,
++0x21,
++0x48,
++0xba,
++0x92,
++0x27,
++0x06,
++0xa8,
++0x3e,
++0x6d,
++0xa1,
++0x43,
++0xa5,
++0xd2,
++0x2a,
++0xf7,
++0xca,
++0xc4,
++0x26,
++0xe8,
++0x5b,
++0x1f,
++0xe4,
++0xdc,
++0x89,
++0xdc,
++0x1f,
++0x04,
++0x79,
++0x3f,
++0x30,
++0x82,
++0x02,
++0xcd,
++0x30,
++0x82,
++0x01,
++0xb5,
++0x02,
++0x14,
++0x3a,
++0xbb,
++0xc6,
++0xec,
++0x14,
++0x6e,
++0x09,
++0xd1,
++0xb6,
++0x01,
++0x6a,
++0xb9,
++0xd6,
++0xcf,
++0x71,
++0xdd,
++0x23,
++0x3f,
++0x03,
++0x28,
++0x30,
++0x0d,
++0x06,
++0x09,
++0x2a,
++0x86,
++0x48,
++0x86,
++0xf7,
++0x0d,
++0x01,
++0x01,
++0x0b,
++0x05,
++0x00,
++0x30,
++0x22,
++0x31,
++0x20,
++0x30,
++0x1e,
++0x06,
++0x03,
++0x55,
++0x04,
++0x03,
++0x0c,
++0x17,
++0x72,
++0x6f,
++0x6d,
++0x61,
++0x69,
++0x6e,
++0x2e,
++0x70,
++0x65,
++0x72,
++0x69,
++0x65,
++0x72,
++0x40,
++0x67,
++0x6d,
++0x61,
++0x69,
++0x6c,
++0x2e,
++0x63,
++0x6f,
++0x6d,
++0x30,
++0x20,
++0x17,
++0x0d,
++0x32,
++0x30,
++0x30,
++0x32,
++0x32,
++0x34,
++0x31,
++0x39,
++0x30,
++0x31,
++0x34,
++0x34,
++0x5a,
++0x18,
++0x0f,
++0x32,
++0x31,
++0x32,
++0x30,
++0x30,
++0x31,
++0x33,
++0x31,
++0x31,
++0x39,
++0x30,
++0x31,
++0x34,
++0x34,
++0x5a,
++0x30,
++0x22,
++0x31,
++0x20,
++0x30,
++0x1e,
++0x06,
++0x03,
++0x55,
++0x04,
++0x03,
++0x0c,
++0x17,
++0x72,
++0x6f,
++0x6d,
++0x61,
++0x69,
++0x6e,
++0x2e,
++0x70,
++0x65,
++0x72,
++0x69,
++0x65,
++0x72,
++0x40,
++0x67,
++0x6d,
++0x61,
++0x69,
++0x6c,
++0x2e,
++0x63,
++0x6f,
++0x6d,
++0x30,
++0x82,
++0x01,
++0x22,
++0x30,
++0x0d,
++0x06,
++0x09,
++0x2a,
++0x86,
++0x48,
++0x86,
++0xf7,
++0x0d,
++0x01,
++0x01,
++0x01,
++0x05,
++0x00,
++0x03,
++0x82,
++0x01,
++0x0f,
++0x00,
++0x30,
++0x82,
++0x01,
++0x0a,
++0x02,
++0x82,
++0x01,
++0x01,
++0x00,
++0xf0,
++0xb8,
++0x4f,
++0x3f,
++0x70,
++0x78,
++0xf8,
++0x74,
++0x45,
++0xa2,
++0x28,
++0xaf,
++0x04,
++0x75,
++0x04,
++0xa3,
++0xf3,
++0xa7,
++0xc7,
++0x04,
++0xac,
++0xb6,
++0xe1,
++0xfc,
++0xe1,
++0xc0,
++0x3d,
++0xe0,
++0x26,
++0x90,
++0x8a,
++0x45,
++0x60,
++0xc4,
++0x75,
++0xf3,
++0x1a,
++0x33,
++0x37,
++0x56,
++0x7d,
++0x30,
++0x07,
++0x75,
++0x0e,
++0xa6,
++0x79,
++0x06,
++0x95,
++0x9d,
++0x17,
++0x3c,
++0x09,
++0xa9,
++0x7f,
++0xab,
++0x95,
++0x5d,
++0xed,
++0xe0,
++0x75,
++0x26,
++0x2f,
++0x65,
++0x65,
++0xcd,
++0x61,
++0xb1,
++0x33,
++0x27,
++0x67,
++0x41,
++0xa1,
++0x01,
++0x13,
++0xe9,
++0x13,
++0x6a,
++0x6d,
++0x4e,
++0x98,
++0xe1,
++0x9e,
++0x7b,
++0x0b,
++0x5b,
++0x44,
++0xef,
++0x68,
++0x5a,
++0x6f,
++0x7d,
++0x97,
++0xa1,
++0x33,
++0x22,
++0x97,
++0x12,
++0x21,
++0x09,
++0x8f,
++0x90,
++0xe0,
++0x25,
++0x94,
++0xdd,
++0x8a,
++0x3a,
++0xf7,
++0x4a,
++0x60,
++0x04,
++0x26,
++0x6d,
++0x00,
++0x82,
++0xe4,
++0xcf,
++0x64,
++0x1c,
++0x79,
++0x15,
++0x24,
++0xf2,
++0x42,
++0x86,
++0xf5,
++0x10,
++0x86,
++0xac,
++0x20,
++0x88,
++0x90,
++0x87,
++0xdf,
++0x8c,
++0x37,
++0x7c,
++0xbf,
++0x35,
++0xd5,
++0x6f,
++0x9f,
++0x77,
++0xc3,
++0xcd,
++0x69,
++0x25,
++0x06,
++0xc2,
++0x65,
++0x51,
++0x71,
++0x89,
++0x7f,
++0x6e,
++0x4d,
++0xe5,
++0xd5,
++0x8a,
++0x36,
++0x1a,
++0xad,
++0xc1,
++0x18,
++0xd6,
++0x14,
++0x42,
++0x87,
++0xf0,
++0x93,
++0x83,
++0xf1,
++0x99,
++0x74,
++0xc4,
++0x13,
++0xaa,
++0x3b,
++0x66,
++0x85,
++0x6f,
++0xe0,
++0xbc,
++0x5f,
++0xb6,
++0x40,
++0xa6,
++0x41,
++0x06,
++0x0a,
++0xba,
++0x0e,
++0xe9,
++0x32,
++0x44,
++0x10,
++0x39,
++0x53,
++0xcd,
++0xbf,
++0xf3,
++0xd3,
++0x26,
++0xf6,
++0xb6,
++0x2b,
++0x40,
++0x2e,
++0xb9,
++0x88,
++0xc1,
++0xf4,
++0xe3,
++0xa0,
++0x28,
++0x77,
++0x4f,
++0xba,
++0xa8,
++0xca,
++0x9c,
++0x05,
++0xba,
++0x88,
++0x96,
++0x99,
++0x54,
++0x89,
++0xa2,
++0x8d,
++0xf3,
++0x73,
++0xa1,
++0x8c,
++0x4a,
++0xa8,
++0x71,
++0xee,
++0x2e,
++0xd2,
++0x83,
++0x14,
++0x48,
++0xbd,
++0x98,
++0xc6,
++0xce,
++0xdc,
++0xa8,
++0xa3,
++0x97,
++0x2e,
++0x40,
++0x16,
++0x2f,
++0x02,
++0x03,
++0x01,
++0x00,
++0x01,
++0x30,
++0x0d,
++0x06,
++0x09,
++0x2a,
++0x86,
++0x48,
++0x86,
++0xf7,
++0x0d,
++0x01,
++0x01,
++0x0b,
++0x05,
++0x00,
++0x03,
++0x82,
++0x01,
++0x01,
++0x00,
++0x76,
++0x5d,
++0x03,
++0x3d,
++0xb6,
++0x96,
++0x00,
++0x1b,
++0x6e,
++0x0c,
++0xdd,
++0xbb,
++0xc8,
++0xdf,
++0xbc,
++0xeb,
++0x6c,
++0x01,
++0x40,
++0x1a,
++0x2b,
++0x07,
++0x60,
++0xa1,
++0x1a,
++0xe1,
++0x43,
++0x57,
++0xfa,
++0xbe,
++0xde,
++0xbb,
++0x8f,
++0x73,
++0xf3,
++0x92,
++0xa2,
++0xaa,
++0x83,
++0x01,
++0xc1,
++0x17,
++0xe4,
++0x9d,
++0x09,
++0x41,
++0xe0,
++0x32,
++0x33,
++0x97,
++0x4b,
++0xf2,
++0xdc,
++0x0f,
++0x8b,
++0xa8,
++0xb8,
++0x5a,
++0x04,
++0x86,
++0xf6,
++0x71,
++0xa1,
++0x97,
++0xd0,
++0x54,
++0x56,
++0x10,
++0x8e,
++0x54,
++0x99,
++0x0d,
++0x2a,
++0xa9,
++0xaf,
++0x1b,
++0x55,
++0x59,
++0x06,
++0x2b,
++0xa4,
++0x5f,
++0xb1,
++0x54,
++0xa6,
++0xec,
++0xc7,
++0xd6,
++0x43,
++0xee,
++0x86,
++0x2c,
++0x9b,
++0x18,
++0x9d,
++0x8f,
++0x00,
++0x82,
++0xc1,
++0x88,
++0x61,
++0x16,
++0x85,
++0x3c,
++0x17,
++0x56,
++0xfe,
++0x6a,
++0xa0,
++0x7a,
++0x68,
++0xc5,
++0x7b,
++0x3d,
++0x3c,
++0xb6,
++0x13,
++0x18,
++0x99,
++0x6d,
++0x74,
++0x65,
++0x13,
++0x67,
++0xb7,
++0xfc,
++0x5a,
++0x44,
++0x48,
++0x72,
++0xa0,
++0x73,
++0xb8,
++0xff,
++0x02,
++0x9d,
++0x7c,
++0x5b,
++0xf9,
++0x7c,
++0x75,
++0x0a,
++0x3c,
++0x81,
++0x80,
++0x3c,
++0x41,
++0xf2,
++0xd5,
++0xfa,
++0x3d,
++0x1f,
++0xe3,
++0xda,
++0x8c,
++0xa5,
++0x17,
++0x1f,
++0x53,
++0x1a,
++0x75,
++0xad,
++0x4e,
++0x11,
++0x1c,
++0x07,
++0xec,
++0x0a,
++0x69,
++0xfd,
++0x33,
++0xfa,
++0x32,
++0x7e,
++0x66,
++0xf5,
++0x29,
++0xe8,
++0x4d,
++0x8a,
++0xfa,
++0x0d,
++0x4b,
++0x68,
++0xc3,
++0x95,
++0x11,
++0xba,
++0x6f,
++0x1e,
++0x07,
++0x8c,
++0x85,
++0xc7,
++0xc7,
++0xc9,
++0xc1,
++0x30,
++0xa3,
++0x70,
++0xb0,
++0xa1,
++0xe0,
++0xd5,
++0x85,
++0x15,
++0x94,
++0x77,
++0xc1,
++0x1c,
++0x91,
++0xf1,
++0x5f,
++0x50,
++0xcd,
++0x2c,
++0x57,
++0x4b,
++0x22,
++0x4f,
++0xee,
++0x95,
++0xd7,
++0xa7,
++0xa4,
++0x59,
++0x62,
++0xae,
++0xb9,
++0xbf,
++0xd7,
++0x63,
++0x5a,
++0x04,
++0xfc,
++0x24,
++0x11,
++0xae,
++0x34,
++0x4b,
++0xf4,
++0x0c,
++0x9f,
++0x0b,
++0x59,
++0x7d,
++0x27,
++0x39,
++0x54,
++0x69,
++0x4f,
++0xfd,
++0x6e,
++0x44,
++0x9f,
++0x21,
+--
+2.25.1
+
diff --git a/debian/patches/debian/yama-disable-by-default.patch b/debian/patches/debian/yama-disable-by-default.patch
new file mode 100644
index 000000000..c33ac0c9d
--- /dev/null
+++ b/debian/patches/debian/yama-disable-by-default.patch
@@ -0,0 +1,32 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Subject: yama: Disable by default
+Date: Wed, 19 Jun 2013 04:35:28 +0100
+Bug-Debian: https://bugs.debian.org/712740
+Forwarded: not-needed
+
+---
+ security/yama/yama_lsm.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/security/yama/yama_lsm.c b/security/yama/yama_lsm.c
+index efac68556b45..95ff3e778a17 100644
+--- a/security/yama/yama_lsm.c
++++ b/security/yama/yama_lsm.c
+@@ -28,7 +28,7 @@
+ #define YAMA_SCOPE_CAPABILITY 2
+ #define YAMA_SCOPE_NO_ATTACH 3
+
+-static int ptrace_scope = YAMA_SCOPE_RELATIONAL;
++static int ptrace_scope = YAMA_SCOPE_DISABLED;
+
+ /* describe a ptrace relationship for potential exception */
+ struct ptrace_relation {
+@@ -481,7 +481,7 @@ static inline void yama_init_sysctl(void) { }
+
+ static int __init yama_init(void)
+ {
+- pr_info("Yama: becoming mindful.\n");
++ pr_info("Yama: disabled by default; enable with sysctl kernel.yama.*\n");
+ security_add_hooks(yama_hooks, ARRAY_SIZE(yama_hooks), "yama");
+ yama_init_sysctl();
+ return 0;
diff --git a/debian/patches/features/all/aufs5/aufs5-base.patch b/debian/patches/features/all/aufs5/aufs5-base.patch
new file mode 100644
index 000000000..60f24b56b
--- /dev/null
+++ b/debian/patches/features/all/aufs5/aufs5-base.patch
@@ -0,0 +1,332 @@
+From: J. R. Okajima <hooanon05@yahoo.co.jp>
+Date: Tue Apr 7 22:14:47 2020 +0900
+Subject: aufs5.6 base patch
+Origin: https://github.com/sfjro/aufs5-standalone/tree/7c07d9737e9de058981f020d66ac0d4407a80899
+Bug-Debian: https://bugs.debian.org/541828
+
+Patch headers added by debian/bin/genpatch-aufs
+
+SPDX-License-Identifier: GPL-2.0
+aufs5.6 base patch
+
+diff --git a/MAINTAINERS b/MAINTAINERS
+index b4a43a9e7fbc..32f7c8c48001 100644
+--- a/MAINTAINERS
++++ b/MAINTAINERS
+@@ -2984,6 +2984,19 @@ F: include/linux/audit.h
+ F: include/uapi/linux/audit.h
+ F: kernel/audit*
+
++AUFS (advanced multi layered unification filesystem) FILESYSTEM
++M: "J. R. Okajima" <hooanon05g@gmail.com>
++L: aufs-users@lists.sourceforge.net (members only)
++L: linux-unionfs@vger.kernel.org
++W: http://aufs.sourceforge.net
++T: git://github.com/sfjro/aufs4-linux.git
++S: Supported
++F: Documentation/filesystems/aufs/
++F: Documentation/ABI/testing/debugfs-aufs
++F: Documentation/ABI/testing/sysfs-aufs
++F: fs/aufs/
++F: include/uapi/linux/aufs_type.h
++
+ AUXILIARY DISPLAY DRIVERS
+ M: Miguel Ojeda Sandonis <miguel.ojeda.sandonis@gmail.com>
+ S: Maintained
+diff --git a/drivers/block/loop.c b/drivers/block/loop.c
+index 475e1a738560..8d77e68aa52b 100644
+--- a/drivers/block/loop.c
++++ b/drivers/block/loop.c
+@@ -763,6 +763,24 @@ static int loop_change_fd(struct loop_device *lo, struct block_device *bdev,
+ return error;
+ }
+
++/*
++ * for AUFS
++ * no get/put for file.
++ */
++struct file *loop_backing_file(struct super_block *sb)
++{
++ struct file *ret;
++ struct loop_device *l;
++
++ ret = NULL;
++ if (MAJOR(sb->s_dev) == LOOP_MAJOR) {
++ l = sb->s_bdev->bd_disk->private_data;
++ ret = l->lo_backing_file;
++ }
++ return ret;
++}
++EXPORT_SYMBOL_GPL(loop_backing_file);
++
+ /* loop sysfs attributes */
+
+ static ssize_t loop_attr_show(struct device *dev, char *page,
+diff --git a/fs/dcache.c b/fs/dcache.c
+index 361ea7ab30ea..3cd36474f302 100644
+--- a/fs/dcache.c
++++ b/fs/dcache.c
+@@ -1285,7 +1285,7 @@ enum d_walk_ret {
+ *
+ * The @enter() callbacks are called with d_lock held.
+ */
+-static void d_walk(struct dentry *parent, void *data,
++void d_walk(struct dentry *parent, void *data,
+ enum d_walk_ret (*enter)(void *, struct dentry *))
+ {
+ struct dentry *this_parent;
+diff --git a/fs/fcntl.c b/fs/fcntl.c
+index 2e4c0fa2074b..0b28a37f7e50 100644
+--- a/fs/fcntl.c
++++ b/fs/fcntl.c
+@@ -32,7 +32,7 @@
+
+ #define SETFL_MASK (O_APPEND | O_NONBLOCK | O_NDELAY | O_DIRECT | O_NOATIME)
+
+-static int setfl(int fd, struct file * filp, unsigned long arg)
++int setfl(int fd, struct file *filp, unsigned long arg)
+ {
+ struct inode * inode = file_inode(filp);
+ int error = 0;
+@@ -63,6 +63,8 @@ static int setfl(int fd, struct file * filp, unsigned long arg)
+
+ if (filp->f_op->check_flags)
+ error = filp->f_op->check_flags(arg);
++ if (!error && filp->f_op->setfl)
++ error = filp->f_op->setfl(filp, arg);
+ if (error)
+ return error;
+
+diff --git a/fs/inode.c b/fs/inode.c
+index 72c4c347afb7..a7ff2099c2ef 100644
+--- a/fs/inode.c
++++ b/fs/inode.c
+@@ -1768,7 +1768,7 @@ EXPORT_SYMBOL(generic_update_time);
+ * This does the actual work of updating an inodes time or version. Must have
+ * had called mnt_want_write() before calling this.
+ */
+-static int update_time(struct inode *inode, struct timespec64 *time, int flags)
++int update_time(struct inode *inode, struct timespec64 *time, int flags)
+ {
+ if (inode->i_op->update_time)
+ return inode->i_op->update_time(inode, time, flags);
+diff --git a/fs/namespace.c b/fs/namespace.c
+index f30ed401cc6d..8ddebaf7ad57 100644
+--- a/fs/namespace.c
++++ b/fs/namespace.c
+@@ -792,6 +792,12 @@ static inline int check_mnt(struct mount *mnt)
+ return mnt->mnt_ns == current->nsproxy->mnt_ns;
+ }
+
++/* for aufs, CONFIG_AUFS_BR_FUSE */
++int is_current_mnt_ns(struct vfsmount *mnt)
++{
++ return check_mnt(real_mount(mnt));
++}
++
+ /*
+ * vfsmount lock must be held for write
+ */
+diff --git a/fs/read_write.c b/fs/read_write.c
+index 4fb797822567..744831cd0094 100644
+--- a/fs/read_write.c
++++ b/fs/read_write.c
+@@ -507,6 +507,28 @@ static ssize_t new_sync_write(struct file *filp, const char __user *buf, size_t
+ return ret;
+ }
+
++vfs_readf_t vfs_readf(struct file *file)
++{
++ const struct file_operations *fop = file->f_op;
++
++ if (fop->read)
++ return fop->read;
++ if (fop->read_iter)
++ return new_sync_read;
++ return ERR_PTR(-ENOSYS); /* doesn't have ->read(|_iter)() op */
++}
++
++vfs_writef_t vfs_writef(struct file *file)
++{
++ const struct file_operations *fop = file->f_op;
++
++ if (fop->write)
++ return fop->write;
++ if (fop->write_iter)
++ return new_sync_write;
++ return ERR_PTR(-ENOSYS); /* doesn't have ->write(|_iter)() op */
++}
++
+ /* caller is responsible for file_start_write/file_end_write */
+ ssize_t __kernel_write(struct file *file, const void *buf, size_t count, loff_t *pos)
+ {
+diff --git a/fs/splice.c b/fs/splice.c
+index d7c8a7c4db07..f0b625e27554 100644
+--- a/fs/splice.c
++++ b/fs/splice.c
+@@ -839,8 +839,8 @@ EXPORT_SYMBOL(generic_splice_sendpage);
+ /*
+ * Attempt to initiate a splice from pipe to file.
+ */
+-static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
+- loff_t *ppos, size_t len, unsigned int flags)
++long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
++ loff_t *ppos, size_t len, unsigned int flags)
+ {
+ if (out->f_op->splice_write)
+ return out->f_op->splice_write(pipe, out, ppos, len, flags);
+@@ -850,9 +850,9 @@ static long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
+ /*
+ * Attempt to initiate a splice from a file to a pipe.
+ */
+-static long do_splice_to(struct file *in, loff_t *ppos,
+- struct pipe_inode_info *pipe, size_t len,
+- unsigned int flags)
++long do_splice_to(struct file *in, loff_t *ppos,
++ struct pipe_inode_info *pipe, size_t len,
++ unsigned int flags)
+ {
+ int ret;
+
+diff --git a/fs/sync.c b/fs/sync.c
+index 1373a610dc78..b7b5a0a0df6f 100644
+--- a/fs/sync.c
++++ b/fs/sync.c
+@@ -28,7 +28,7 @@
+ * wait == 1 case since in that case write_inode() functions do
+ * sync_dirty_buffer() and thus effectively write one block at a time.
+ */
+-static int __sync_filesystem(struct super_block *sb, int wait)
++int __sync_filesystem(struct super_block *sb, int wait)
+ {
+ if (wait)
+ sync_inodes_sb(sb);
+diff --git a/include/linux/fs.h b/include/linux/fs.h
+index f5abba86107d..0b008da5678d 100644
+--- a/include/linux/fs.h
++++ b/include/linux/fs.h
+@@ -1360,6 +1360,7 @@ extern void fasync_free(struct fasync_struct *);
+ /* can be called from interrupts */
+ extern void kill_fasync(struct fasync_struct **, int, int);
+
++extern int setfl(int fd, struct file *filp, unsigned long arg);
+ extern void __f_setown(struct file *filp, struct pid *, enum pid_type, int force);
+ extern int f_setown(struct file *filp, unsigned long arg, int force);
+ extern void f_delown(struct file *filp);
+@@ -1848,6 +1849,7 @@ struct file_operations {
+ ssize_t (*sendpage) (struct file *, struct page *, int, size_t, loff_t *, int);
+ unsigned long (*get_unmapped_area)(struct file *, unsigned long, unsigned long, unsigned long, unsigned long);
+ int (*check_flags)(int);
++ int (*setfl)(struct file *, unsigned long);
+ int (*flock) (struct file *, int, struct file_lock *);
+ ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int);
+ ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);
+@@ -1918,6 +1920,12 @@ ssize_t rw_copy_check_uvector(int type, const struct iovec __user * uvector,
+ struct iovec *fast_pointer,
+ struct iovec **ret_pointer);
+
++typedef ssize_t (*vfs_readf_t)(struct file *, char __user *, size_t, loff_t *);
++typedef ssize_t (*vfs_writef_t)(struct file *, const char __user *, size_t,
++ loff_t *);
++vfs_readf_t vfs_readf(struct file *file);
++vfs_writef_t vfs_writef(struct file *file);
++
+ extern ssize_t vfs_read(struct file *, char __user *, size_t, loff_t *);
+ extern ssize_t vfs_write(struct file *, const char __user *, size_t, loff_t *);
+ extern ssize_t vfs_readv(struct file *, const struct iovec __user *,
+@@ -2352,6 +2360,7 @@ extern int current_umask(void);
+ extern void ihold(struct inode * inode);
+ extern void iput(struct inode *);
+ extern int generic_update_time(struct inode *, struct timespec64 *, int);
++extern int update_time(struct inode *, struct timespec64 *, int);
+
+ /* /sys/fs */
+ extern struct kobject *fs_kobj;
+@@ -2633,6 +2642,7 @@ static inline bool sb_is_blkdev_sb(struct super_block *sb)
+ return false;
+ }
+ #endif
++extern int __sync_filesystem(struct super_block *, int);
+ extern int sync_filesystem(struct super_block *);
+ extern const struct file_operations def_blk_fops;
+ extern const struct file_operations def_chr_fops;
+diff --git a/include/linux/lockdep.h b/include/linux/lockdep.h
+index 8fce5c98a4b0..c1a3f172e97a 100644
+--- a/include/linux/lockdep.h
++++ b/include/linux/lockdep.h
+@@ -395,6 +395,8 @@ static inline int lockdep_match_key(struct lockdep_map *lock,
+ return lock->key == key;
+ }
+
++struct lock_class *lockdep_hlock_class(struct held_lock *hlock);
++
+ /*
+ * Acquire a lock.
+ *
+@@ -540,6 +542,7 @@ struct lockdep_map { };
+
+ #define lockdep_depth(tsk) (0)
+
++#define lockdep_is_held(lock) (1)
+ #define lockdep_is_held_type(l, r) (1)
+
+ #define lockdep_assert_held(l) do { (void)(l); } while (0)
+diff --git a/include/linux/mnt_namespace.h b/include/linux/mnt_namespace.h
+index 8f882f5881e8..6b9808f09843 100644
+--- a/include/linux/mnt_namespace.h
++++ b/include/linux/mnt_namespace.h
+@@ -7,12 +7,15 @@ struct mnt_namespace;
+ struct fs_struct;
+ struct user_namespace;
+ struct ns_common;
++struct vfsmount;
+
+ extern struct mnt_namespace *copy_mnt_ns(unsigned long, struct mnt_namespace *,
+ struct user_namespace *, struct fs_struct *);
+ extern void put_mnt_ns(struct mnt_namespace *ns);
+ extern struct ns_common *from_mnt_ns(struct mnt_namespace *);
+
++extern int is_current_mnt_ns(struct vfsmount *mnt);
++
+ extern const struct file_operations proc_mounts_operations;
+ extern const struct file_operations proc_mountinfo_operations;
+ extern const struct file_operations proc_mountstats_operations;
+diff --git a/include/linux/splice.h b/include/linux/splice.h
+index 5c47013f708e..fef6c59ed92a 100644
+--- a/include/linux/splice.h
++++ b/include/linux/splice.h
+@@ -93,4 +93,10 @@ extern void splice_shrink_spd(struct splice_pipe_desc *);
+
+ extern const struct pipe_buf_operations page_cache_pipe_buf_ops;
+ extern const struct pipe_buf_operations default_pipe_buf_ops;
++
++extern long do_splice_from(struct pipe_inode_info *pipe, struct file *out,
++ loff_t *ppos, size_t len, unsigned int flags);
++extern long do_splice_to(struct file *in, loff_t *ppos,
++ struct pipe_inode_info *pipe, size_t len,
++ unsigned int flags);
+ #endif
+diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
+index 29a8de4c50b9..6cfff5e18c84 100644
+--- a/kernel/locking/lockdep.c
++++ b/kernel/locking/lockdep.c
+@@ -169,7 +169,7 @@ static
+ struct lock_class lock_classes[MAX_LOCKDEP_KEYS];
+ static DECLARE_BITMAP(lock_classes_in_use, MAX_LOCKDEP_KEYS);
+
+-static inline struct lock_class *hlock_class(struct held_lock *hlock)
++inline struct lock_class *lockdep_hlock_class(struct held_lock *hlock)
+ {
+ unsigned int class_idx = hlock->class_idx;
+
+@@ -190,6 +190,7 @@ static inline struct lock_class *hlock_class(struct held_lock *hlock)
+ */
+ return lock_classes + class_idx;
+ }
++#define hlock_class(hlock) lockdep_hlock_class(hlock)
+
+ #ifdef CONFIG_LOCK_STAT
+ static DEFINE_PER_CPU(struct lock_class_stats[MAX_LOCKDEP_KEYS], cpu_lock_stats);
+--
+2.27.0
+
diff --git a/debian/patches/features/all/aufs5/aufs5-mmap.patch b/debian/patches/features/all/aufs5/aufs5-mmap.patch
new file mode 100644
index 000000000..4cf1e0b2b
--- /dev/null
+++ b/debian/patches/features/all/aufs5/aufs5-mmap.patch
@@ -0,0 +1,405 @@
+From: J. R. Okajima <hooanon05@yahoo.co.jp>
+Date: Tue Apr 7 22:14:47 2020 +0900
+Subject: aufs5.6 mmap patch
+Origin: https://github.com/sfjro/aufs5-standalone/tree/7c07d9737e9de058981f020d66ac0d4407a80899
+Bug-Debian: https://bugs.debian.org/541828
+
+Patch headers added by debian/bin/genpatch-aufs
+
+SPDX-License-Identifier: GPL-2.0
+aufs5.6 mmap patch
+
+Index: debian-kernel/fs/proc/base.c
+===================================================================
+--- debian-kernel.orig/fs/proc/base.c
++++ debian-kernel/fs/proc/base.c
+@@ -2170,7 +2170,7 @@ static int map_files_get_link(struct den
+ rc = -ENOENT;
+ vma = find_exact_vma(mm, vm_start, vm_end);
+ if (vma && vma->vm_file) {
+- *path = vma->vm_file->f_path;
++ *path = vma_pr_or_file(vma)->f_path;
+ path_get(path);
+ rc = 0;
+ }
+Index: debian-kernel/fs/proc/nommu.c
+===================================================================
+--- debian-kernel.orig/fs/proc/nommu.c
++++ debian-kernel/fs/proc/nommu.c
+@@ -40,7 +40,10 @@ static int nommu_region_show(struct seq_
+ file = region->vm_file;
+
+ if (file) {
+- struct inode *inode = file_inode(region->vm_file);
++ struct inode *inode;
++
++ file = vmr_pr_or_file(region);
++ inode = file_inode(file);
+ dev = inode->i_sb->s_dev;
+ ino = inode->i_ino;
+ }
+Index: debian-kernel/fs/proc/task_mmu.c
+===================================================================
+--- debian-kernel.orig/fs/proc/task_mmu.c
++++ debian-kernel/fs/proc/task_mmu.c
+@@ -280,7 +280,10 @@ show_map_vma(struct seq_file *m, struct
+ const char *name = NULL;
+
+ if (file) {
+- struct inode *inode = file_inode(vma->vm_file);
++ struct inode *inode;
++
++ file = vma_pr_or_file(vma);
++ inode = file_inode(file);
+ dev = inode->i_sb->s_dev;
+ ino = inode->i_ino;
+ pgoff = ((loff_t)vma->vm_pgoff) << PAGE_SHIFT;
+@@ -1793,7 +1796,7 @@ static int show_numa_map(struct seq_file
+ struct proc_maps_private *proc_priv = &numa_priv->proc_maps;
+ struct vm_area_struct *vma = v;
+ struct numa_maps *md = &numa_priv->md;
+- struct file *file = vma->vm_file;
++ struct file *file = vma_pr_or_file(vma);
+ struct mm_struct *mm = vma->vm_mm;
+ struct mempolicy *pol;
+ char buffer[64];
+Index: debian-kernel/fs/proc/task_nommu.c
+===================================================================
+--- debian-kernel.orig/fs/proc/task_nommu.c
++++ debian-kernel/fs/proc/task_nommu.c
+@@ -155,7 +155,10 @@ static int nommu_vma_show(struct seq_fil
+ file = vma->vm_file;
+
+ if (file) {
+- struct inode *inode = file_inode(vma->vm_file);
++ struct inode *inode;
++
++ file = vma_pr_or_file(vma);
++ inode = file_inode(file);
+ dev = inode->i_sb->s_dev;
+ ino = inode->i_ino;
+ pgoff = (loff_t)vma->vm_pgoff << PAGE_SHIFT;
+Index: debian-kernel/include/linux/mm.h
+===================================================================
+--- debian-kernel.orig/include/linux/mm.h
++++ debian-kernel/include/linux/mm.h
+@@ -1684,6 +1684,28 @@ static inline void unmap_shared_mapping_
+ unmap_mapping_range(mapping, holebegin, holelen, 0);
+ }
+
++extern void vma_do_file_update_time(struct vm_area_struct *, const char[], int);
++extern struct file *vma_do_pr_or_file(struct vm_area_struct *, const char[],
++ int);
++extern void vma_do_get_file(struct vm_area_struct *, const char[], int);
++extern void vma_do_fput(struct vm_area_struct *, const char[], int);
++
++#define vma_file_update_time(vma) vma_do_file_update_time(vma, __func__, \
++ __LINE__)
++#define vma_pr_or_file(vma) vma_do_pr_or_file(vma, __func__, \
++ __LINE__)
++#define vma_get_file(vma) vma_do_get_file(vma, __func__, __LINE__)
++#define vma_fput(vma) vma_do_fput(vma, __func__, __LINE__)
++
++#ifndef CONFIG_MMU
++extern struct file *vmr_do_pr_or_file(struct vm_region *, const char[], int);
++extern void vmr_do_fput(struct vm_region *, const char[], int);
++
++#define vmr_pr_or_file(region) vmr_do_pr_or_file(region, __func__, \
++ __LINE__)
++#define vmr_fput(region) vmr_do_fput(region, __func__, __LINE__)
++#endif /* !CONFIG_MMU */
++
+ extern int access_process_vm(struct task_struct *tsk, unsigned long addr,
+ void *buf, int len, unsigned int gup_flags);
+ extern int access_remote_vm(struct mm_struct *mm, unsigned long addr,
+Index: debian-kernel/include/linux/mm_types.h
+===================================================================
+--- debian-kernel.orig/include/linux/mm_types.h
++++ debian-kernel/include/linux/mm_types.h
+@@ -276,6 +276,7 @@ struct vm_region {
+ unsigned long vm_top; /* region allocated to here */
+ unsigned long vm_pgoff; /* the offset in vm_file corresponding to vm_start */
+ struct file *vm_file; /* the backing file or NULL */
++ struct file *vm_prfile; /* the virtual backing file or NULL */
+
+ int vm_usage; /* region usage count (access under nommu_region_sem) */
+ bool vm_icache_flushed : 1; /* true if the icache has been flushed for
+@@ -355,6 +356,7 @@ struct vm_area_struct {
+ unsigned long vm_pgoff; /* Offset (within vm_file) in PAGE_SIZE
+ units */
+ struct file * vm_file; /* File we map to (can be NULL). */
++ struct file *vm_prfile; /* shadow of vm_file */
+ void * vm_private_data; /* was vm_pte (shared mem) */
+
+ #ifdef CONFIG_SWAP
+Index: debian-kernel/kernel/fork.c
+===================================================================
+--- debian-kernel.orig/kernel/fork.c
++++ debian-kernel/kernel/fork.c
+@@ -570,7 +570,7 @@ static __latent_entropy int dup_mmap(str
+ struct inode *inode = file_inode(file);
+ struct address_space *mapping = file->f_mapping;
+
+- get_file(file);
++ vma_get_file(tmp);
+ if (tmp->vm_flags & VM_DENYWRITE)
+ atomic_dec(&inode->i_writecount);
+ i_mmap_lock_write(mapping);
+Index: debian-kernel/mm/Makefile
+===================================================================
+--- debian-kernel.orig/mm/Makefile
++++ debian-kernel/mm/Makefile
+@@ -52,7 +52,7 @@ obj-y := filemap.o mempool.o oom_kill.
+ mm_init.o percpu.o slab_common.o \
+ compaction.o vmacache.o \
+ interval_tree.o list_lru.o workingset.o \
+- debug.o gup.o $(mmu-y)
++ prfile.o debug.o gup.o $(mmu-y)
+
+ # Give 'page_alloc' its own module-parameter namespace
+ page-alloc-y := page_alloc.o
+Index: debian-kernel/mm/filemap.c
+===================================================================
+--- debian-kernel.orig/mm/filemap.c
++++ debian-kernel/mm/filemap.c
+@@ -2676,7 +2676,7 @@ vm_fault_t filemap_page_mkwrite(struct v
+ vm_fault_t ret = VM_FAULT_LOCKED;
+
+ sb_start_pagefault(inode->i_sb);
+- file_update_time(vmf->vma->vm_file);
++ vma_file_update_time(vmf->vma);
+ lock_page(page);
+ if (page->mapping != inode->i_mapping) {
+ unlock_page(page);
+Index: debian-kernel/mm/mmap.c
+===================================================================
+--- debian-kernel.orig/mm/mmap.c
++++ debian-kernel/mm/mmap.c
+@@ -179,7 +179,7 @@ static struct vm_area_struct *remove_vma
+ if (vma->vm_ops && vma->vm_ops->close)
+ vma->vm_ops->close(vma);
+ if (vma->vm_file)
+- fput(vma->vm_file);
++ vma_fput(vma);
+ mpol_put(vma_policy(vma));
+ vm_area_free(vma);
+ return next;
+@@ -910,7 +910,7 @@ again:
+ if (remove_next) {
+ if (file) {
+ uprobe_munmap(next, next->vm_start, next->vm_end);
+- fput(file);
++ vma_fput(vma);
+ }
+ if (next->anon_vma)
+ anon_vma_merge(vma, next);
+@@ -1831,8 +1831,8 @@ out:
+ return addr;
+
+ unmap_and_free_vma:
++ vma_fput(vma);
+ vma->vm_file = NULL;
+- fput(file);
+
+ /* Undo any partial mapping done by a device driver. */
+ unmap_region(mm, vma, prev, vma->vm_start, vma->vm_end);
+@@ -2683,7 +2683,7 @@ int __split_vma(struct mm_struct *mm, st
+ goto out_free_mpol;
+
+ if (new->vm_file)
+- get_file(new->vm_file);
++ vma_get_file(new);
+
+ if (new->vm_ops && new->vm_ops->open)
+ new->vm_ops->open(new);
+@@ -2702,7 +2702,7 @@ int __split_vma(struct mm_struct *mm, st
+ if (new->vm_ops && new->vm_ops->close)
+ new->vm_ops->close(new);
+ if (new->vm_file)
+- fput(new->vm_file);
++ vma_fput(new);
+ unlink_anon_vmas(new);
+ out_free_mpol:
+ mpol_put(vma_policy(new));
+@@ -2894,7 +2894,7 @@ SYSCALL_DEFINE5(remap_file_pages, unsign
+ struct vm_area_struct *vma;
+ unsigned long populate = 0;
+ unsigned long ret = -EINVAL;
+- struct file *file;
++ struct file *file, *prfile;
+
+ pr_warn_once("%s (%d) uses deprecated remap_file_pages() syscall. See Documentation/vm/remap_file_pages.rst.\n",
+ current->comm, current->pid);
+@@ -2969,10 +2969,27 @@ SYSCALL_DEFINE5(remap_file_pages, unsign
+ }
+ }
+
+- file = get_file(vma->vm_file);
++ vma_get_file(vma);
++ file = vma->vm_file;
++ prfile = vma->vm_prfile;
+ ret = do_mmap_pgoff(vma->vm_file, start, size,
+ prot, flags, pgoff, &populate, NULL);
++ if (!IS_ERR_VALUE(ret) && file && prfile) {
++ struct vm_area_struct *new_vma;
++
++ new_vma = find_vma(mm, ret);
++ if (!new_vma->vm_prfile)
++ new_vma->vm_prfile = prfile;
++ if (new_vma != vma)
++ get_file(prfile);
++ }
++ /*
++ * two fput()s instead of vma_fput(vma),
++ * coz vma may not be available anymore.
++ */
+ fput(file);
++ if (prfile)
++ fput(prfile);
+ out:
+ mmap_write_unlock(mm);
+ if (populate)
+@@ -3263,7 +3280,7 @@ struct vm_area_struct *copy_vma(struct v
+ if (anon_vma_clone(new_vma, vma))
+ goto out_free_mempol;
+ if (new_vma->vm_file)
+- get_file(new_vma->vm_file);
++ vma_get_file(new_vma);
+ if (new_vma->vm_ops && new_vma->vm_ops->open)
+ new_vma->vm_ops->open(new_vma);
+ vma_link(mm, new_vma, prev, rb_link, rb_parent);
+Index: debian-kernel/mm/nommu.c
+===================================================================
+--- debian-kernel.orig/mm/nommu.c
++++ debian-kernel/mm/nommu.c
+@@ -540,7 +540,7 @@ static void __put_nommu_region(struct vm
+ up_write(&nommu_region_sem);
+
+ if (region->vm_file)
+- fput(region->vm_file);
++ vmr_fput(region);
+
+ /* IO memory and memory shared directly out of the pagecache
+ * from ramfs/tmpfs mustn't be released here */
+@@ -672,7 +672,7 @@ static void delete_vma(struct mm_struct
+ if (vma->vm_ops && vma->vm_ops->close)
+ vma->vm_ops->close(vma);
+ if (vma->vm_file)
+- fput(vma->vm_file);
++ vma_fput(vma);
+ put_nommu_region(vma->vm_region);
+ vm_area_free(vma);
+ }
+@@ -1195,7 +1195,7 @@ unsigned long do_mmap(struct file *file,
+ goto error_just_free;
+ }
+ }
+- fput(region->vm_file);
++ vmr_fput(region);
+ kmem_cache_free(vm_region_jar, region);
+ region = pregion;
+ result = start;
+@@ -1272,10 +1272,10 @@ error_just_free:
+ up_write(&nommu_region_sem);
+ error:
+ if (region->vm_file)
+- fput(region->vm_file);
++ vmr_fput(region);
+ kmem_cache_free(vm_region_jar, region);
+ if (vma->vm_file)
+- fput(vma->vm_file);
++ vma_fput(vma);
+ vm_area_free(vma);
+ return ret;
+
+Index: debian-kernel/mm/prfile.c
+===================================================================
+--- /dev/null
++++ debian-kernel/mm/prfile.c
+@@ -0,0 +1,86 @@
++// SPDX-License-Identifier: GPL-2.0
++/*
++ * Mainly for aufs which mmap(2) different file and wants to print different
++ * path in /proc/PID/maps.
++ * Call these functions via macros defined in linux/mm.h.
++ *
++ * See Documentation/filesystems/aufs/design/06mmap.txt
++ *
++ * Copyright (c) 2014-2020 Junjro R. Okajima
++ * Copyright (c) 2014 Ian Campbell
++ */
++
++#include <linux/mm.h>
++#include <linux/file.h>
++#include <linux/fs.h>
++
++/* #define PRFILE_TRACE */
++static inline void prfile_trace(struct file *f, struct file *pr,
++ const char func[], int line, const char func2[])
++{
++#ifdef PRFILE_TRACE
++ if (pr)
++ pr_info("%s:%d: %s, %pD2\n", func, line, func2, f);
++#endif
++}
++
++void vma_do_file_update_time(struct vm_area_struct *vma, const char func[],
++ int line)
++{
++ struct file *f = vma->vm_file, *pr = vma->vm_prfile;
++
++ prfile_trace(f, pr, func, line, __func__);
++ file_update_time(f);
++ if (f && pr)
++ file_update_time(pr);
++}
++
++struct file *vma_do_pr_or_file(struct vm_area_struct *vma, const char func[],
++ int line)
++{
++ struct file *f = vma->vm_file, *pr = vma->vm_prfile;
++
++ prfile_trace(f, pr, func, line, __func__);
++ return (f && pr) ? pr : f;
++}
++
++void vma_do_get_file(struct vm_area_struct *vma, const char func[], int line)
++{
++ struct file *f = vma->vm_file, *pr = vma->vm_prfile;
++
++ prfile_trace(f, pr, func, line, __func__);
++ get_file(f);
++ if (f && pr)
++ get_file(pr);
++}
++
++void vma_do_fput(struct vm_area_struct *vma, const char func[], int line)
++{
++ struct file *f = vma->vm_file, *pr = vma->vm_prfile;
++
++ prfile_trace(f, pr, func, line, __func__);
++ fput(f);
++ if (f && pr)
++ fput(pr);
++}
++
++#ifndef CONFIG_MMU
++struct file *vmr_do_pr_or_file(struct vm_region *region, const char func[],
++ int line)
++{
++ struct file *f = region->vm_file, *pr = region->vm_prfile;
++
++ prfile_trace(f, pr, func, line, __func__);
++ return (f && pr) ? pr : f;
++}
++
++void vmr_do_fput(struct vm_region *region, const char func[], int line)
++{
++ struct file *f = region->vm_file, *pr = region->vm_prfile;
++
++ prfile_trace(f, pr, func, line, __func__);
++ fput(f);
++ if (f && pr)
++ fput(pr);
++}
++#endif /* !CONFIG_MMU */
diff --git a/debian/patches/features/all/aufs5/aufs5-standalone.patch b/debian/patches/features/all/aufs5/aufs5-standalone.patch
new file mode 100644
index 000000000..ffd06c8ce
--- /dev/null
+++ b/debian/patches/features/all/aufs5/aufs5-standalone.patch
@@ -0,0 +1,308 @@
+From: J. R. Okajima <hooanon05@yahoo.co.jp>
+Date: Tue Apr 7 22:14:47 2020 +0900
+Subject: aufs5.6 standalone patch
+Origin: https://github.com/sfjro/aufs5-standalone/tree/7c07d9737e9de058981f020d66ac0d4407a80899
+Bug-Debian: https://bugs.debian.org/541828
+
+Patch headers added by debian/bin/genpatch-aufs
+
+SPDX-License-Identifier: GPL-2.0
+aufs5.6 standalone patch
+
+Index: debian-kernel/fs/dcache.c
+===================================================================
+--- debian-kernel.orig/fs/dcache.c
++++ debian-kernel/fs/dcache.c
+@@ -1390,6 +1390,7 @@ rename_retry:
+ seq = 1;
+ goto again;
+ }
++EXPORT_SYMBOL_GPL(d_walk);
+
+ struct check_mount {
+ struct vfsmount *mnt;
+@@ -2935,6 +2936,7 @@ void d_exchange(struct dentry *dentry1,
+
+ write_sequnlock(&rename_lock);
+ }
++EXPORT_SYMBOL_GPL(d_exchange);
+
+ /**
+ * d_ancestor - search for an ancestor
+Index: debian-kernel/fs/exec.c
+===================================================================
+--- debian-kernel.orig/fs/exec.c
++++ debian-kernel/fs/exec.c
+@@ -111,6 +111,7 @@ bool path_noexec(const struct path *path
+ return (path->mnt->mnt_flags & MNT_NOEXEC) ||
+ (path->mnt->mnt_sb->s_iflags & SB_I_NOEXEC);
+ }
++EXPORT_SYMBOL_GPL(path_noexec);
+
+ #ifdef CONFIG_USELIB
+ /*
+Index: debian-kernel/fs/fcntl.c
+===================================================================
+--- debian-kernel.orig/fs/fcntl.c
++++ debian-kernel/fs/fcntl.c
+@@ -85,6 +85,7 @@ int setfl(int fd, struct file *filp, uns
+ out:
+ return error;
+ }
++EXPORT_SYMBOL_GPL(setfl);
+
+ static void f_modown(struct file *filp, struct pid *pid, enum pid_type type,
+ int force)
+Index: debian-kernel/fs/file_table.c
+===================================================================
+--- debian-kernel.orig/fs/file_table.c
++++ debian-kernel/fs/file_table.c
+@@ -162,6 +162,7 @@ over:
+ }
+ return ERR_PTR(-ENFILE);
+ }
++EXPORT_SYMBOL_GPL(alloc_empty_file);
+
+ /*
+ * Variant of alloc_empty_file() that doesn't check and modify nr_files.
+@@ -376,6 +377,7 @@ void __fput_sync(struct file *file)
+ }
+
+ EXPORT_SYMBOL(fput);
++EXPORT_SYMBOL_GPL(__fput_sync);
+
+ void __init files_init(void)
+ {
+Index: debian-kernel/fs/inode.c
+===================================================================
+--- debian-kernel.orig/fs/inode.c
++++ debian-kernel/fs/inode.c
+@@ -1774,6 +1774,7 @@ int update_time(struct inode *inode, str
+ return inode->i_op->update_time(inode, time, flags);
+ return generic_update_time(inode, time, flags);
+ }
++EXPORT_SYMBOL_GPL(update_time);
+
+ /**
+ * touch_atime - update the access time
+Index: debian-kernel/fs/namespace.c
+===================================================================
+--- debian-kernel.orig/fs/namespace.c
++++ debian-kernel/fs/namespace.c
+@@ -431,6 +431,7 @@ void __mnt_drop_write(struct vfsmount *m
+ mnt_dec_writers(real_mount(mnt));
+ preempt_enable();
+ }
++EXPORT_SYMBOL_GPL(__mnt_drop_write);
+
+ /**
+ * mnt_drop_write - give up write access to a mount
+@@ -797,6 +798,7 @@ int is_current_mnt_ns(struct vfsmount *m
+ {
+ return check_mnt(real_mount(mnt));
+ }
++EXPORT_SYMBOL_GPL(is_current_mnt_ns);
+
+ /*
+ * vfsmount lock must be held for write
+@@ -1961,6 +1963,7 @@ int iterate_mounts(int (*f)(struct vfsmo
+ }
+ return 0;
+ }
++EXPORT_SYMBOL_GPL(iterate_mounts);
+
+ static void lock_mnt_tree(struct mount *mnt)
+ {
+Index: debian-kernel/fs/notify/group.c
+===================================================================
+--- debian-kernel.orig/fs/notify/group.c
++++ debian-kernel/fs/notify/group.c
+@@ -100,6 +100,7 @@ void fsnotify_get_group(struct fsnotify_
+ {
+ refcount_inc(&group->refcnt);
+ }
++EXPORT_SYMBOL_GPL(fsnotify_get_group);
+
+ /*
+ * Drop a reference to a group. Free it if it's through.
+Index: debian-kernel/fs/open.c
+===================================================================
+--- debian-kernel.orig/fs/open.c
++++ debian-kernel/fs/open.c
+@@ -65,6 +65,7 @@ int do_truncate(struct dentry *dentry, l
+ inode_unlock(dentry->d_inode);
+ return ret;
+ }
++EXPORT_SYMBOL_GPL(do_truncate);
+
+ long vfs_truncate(const struct path *path, loff_t length)
+ {
+Index: debian-kernel/fs/read_write.c
+===================================================================
+--- debian-kernel.orig/fs/read_write.c
++++ debian-kernel/fs/read_write.c
+@@ -488,6 +488,7 @@ ssize_t vfs_read(struct file *file, char
+ inc_syscr(current);
+ return ret;
+ }
++EXPORT_SYMBOL_GPL(vfs_read);
+
+ static ssize_t new_sync_write(struct file *filp, const char __user *buf, size_t len, loff_t *ppos)
+ {
+@@ -517,6 +518,7 @@ vfs_readf_t vfs_readf(struct file *file)
+ return new_sync_read;
+ return ERR_PTR(-ENOSYS); /* doesn't have ->read(|_iter)() op */
+ }
++EXPORT_SYMBOL_GPL(vfs_readf);
+
+ vfs_writef_t vfs_writef(struct file *file)
+ {
+@@ -528,6 +530,7 @@ vfs_writef_t vfs_writef(struct file *fil
+ return new_sync_write;
+ return ERR_PTR(-ENOSYS); /* doesn't have ->write(|_iter)() op */
+ }
++EXPORT_SYMBOL_GPL(vfs_writef);
+
+ /* caller is responsible for file_start_write/file_end_write */
+ ssize_t __kernel_write(struct file *file, const void *buf, size_t count, loff_t *pos)
+@@ -608,6 +611,7 @@ ssize_t vfs_write(struct file *file, con
+ file_end_write(file);
+ return ret;
+ }
++EXPORT_SYMBOL_GPL(vfs_write);
+
+ /* file_ppos returns &file->f_pos or NULL if file is stream */
+ static inline loff_t *file_ppos(struct file *file)
+Index: debian-kernel/fs/splice.c
+===================================================================
+--- debian-kernel.orig/fs/splice.c
++++ debian-kernel/fs/splice.c
+@@ -870,6 +870,7 @@ long do_splice_to(struct file *in, loff_
+ return in->f_op->splice_read(in, ppos, pipe, len, flags);
+ return default_file_splice_read(in, ppos, pipe, len, flags);
+ }
++EXPORT_SYMBOL_GPL(do_splice_from);
+
+ /**
+ * splice_direct_to_actor - splices data directly between two non-pipes
+@@ -1016,6 +1017,7 @@ static int direct_splice_actor(struct pi
+ return do_splice_from(pipe, file, sd->opos, sd->total_len,
+ sd->flags);
+ }
++EXPORT_SYMBOL_GPL(do_splice_to);
+
+ /**
+ * do_splice_direct - splices data directly between two files
+Index: debian-kernel/fs/sync.c
+===================================================================
+--- debian-kernel.orig/fs/sync.c
++++ debian-kernel/fs/sync.c
+@@ -39,6 +39,7 @@ int __sync_filesystem(struct super_block
+ sb->s_op->sync_fs(sb, wait);
+ return __sync_blockdev(sb->s_bdev, wait);
+ }
++EXPORT_SYMBOL_GPL(__sync_filesystem);
+
+ /*
+ * Write out and wait upon all dirty data associated with this
+Index: debian-kernel/fs/xattr.c
+===================================================================
+--- debian-kernel.orig/fs/xattr.c
++++ debian-kernel/fs/xattr.c
+@@ -296,6 +296,7 @@ vfs_getxattr_alloc(struct dentry *dentry
+ *xattr_value = value;
+ return error;
+ }
++EXPORT_SYMBOL_GPL(vfs_getxattr_alloc);
+
+ ssize_t
+ __vfs_getxattr(struct dentry *dentry, struct inode *inode, const char *name,
+Index: debian-kernel/kernel/locking/lockdep.c
+===================================================================
+--- debian-kernel.orig/kernel/locking/lockdep.c
++++ debian-kernel/kernel/locking/lockdep.c
+@@ -190,6 +190,7 @@ inline struct lock_class *lockdep_hlock_
+ */
+ return lock_classes + class_idx;
+ }
++EXPORT_SYMBOL_GPL(lockdep_hlock_class);
+ #define hlock_class(hlock) lockdep_hlock_class(hlock)
+
+ #ifdef CONFIG_LOCK_STAT
+Index: debian-kernel/kernel/task_work.c
+===================================================================
+--- debian-kernel.orig/kernel/task_work.c
++++ debian-kernel/kernel/task_work.c
+@@ -139,3 +139,4 @@ void task_work_run(void)
+ } while (work);
+ }
+ }
++EXPORT_SYMBOL_GPL(task_work_run);
+Index: debian-kernel/security/security.c
+===================================================================
+--- debian-kernel.orig/security/security.c
++++ debian-kernel/security/security.c
+@@ -1096,6 +1096,7 @@ int security_path_rmdir(const struct pat
+ return 0;
+ return call_int_hook(path_rmdir, 0, dir, dentry);
+ }
++EXPORT_SYMBOL_GPL(security_path_rmdir);
+
+ int security_path_unlink(const struct path *dir, struct dentry *dentry)
+ {
+@@ -1112,6 +1113,7 @@ int security_path_symlink(const struct p
+ return 0;
+ return call_int_hook(path_symlink, 0, dir, dentry, old_name);
+ }
++EXPORT_SYMBOL_GPL(security_path_symlink);
+
+ int security_path_link(struct dentry *old_dentry, const struct path *new_dir,
+ struct dentry *new_dentry)
+@@ -1120,6 +1122,7 @@ int security_path_link(struct dentry *ol
+ return 0;
+ return call_int_hook(path_link, 0, old_dentry, new_dir, new_dentry);
+ }
++EXPORT_SYMBOL_GPL(security_path_link);
+
+ int security_path_rename(const struct path *old_dir, struct dentry *old_dentry,
+ const struct path *new_dir, struct dentry *new_dentry,
+@@ -1147,6 +1150,7 @@ int security_path_truncate(const struct
+ return 0;
+ return call_int_hook(path_truncate, 0, path);
+ }
++EXPORT_SYMBOL_GPL(security_path_truncate);
+
+ int security_path_chmod(const struct path *path, umode_t mode)
+ {
+@@ -1154,6 +1158,7 @@ int security_path_chmod(const struct pat
+ return 0;
+ return call_int_hook(path_chmod, 0, path, mode);
+ }
++EXPORT_SYMBOL_GPL(security_path_chmod);
+
+ int security_path_chown(const struct path *path, kuid_t uid, kgid_t gid)
+ {
+@@ -1161,6 +1166,7 @@ int security_path_chown(const struct pat
+ return 0;
+ return call_int_hook(path_chown, 0, path, uid, gid);
+ }
++EXPORT_SYMBOL_GPL(security_path_chown);
+
+ int security_path_chroot(const struct path *path)
+ {
+@@ -1261,6 +1267,7 @@ int security_inode_permission(struct ino
+ return 0;
+ return call_int_hook(inode_permission, 0, inode, mask);
+ }
++EXPORT_SYMBOL_GPL(security_inode_permission);
+
+ int security_inode_setattr(struct dentry *dentry, struct iattr *attr)
+ {
+@@ -1453,6 +1460,7 @@ int security_file_permission(struct file
+
+ return fsnotify_perm(file, mask);
+ }
++EXPORT_SYMBOL_GPL(security_file_permission);
+
+ int security_file_alloc(struct file *file)
+ {
diff --git a/debian/patches/features/all/db-mok-keyring/0001-MODSIGN-do-not-load-mok-when-secure-boot-disabled.patch b/debian/patches/features/all/db-mok-keyring/0001-MODSIGN-do-not-load-mok-when-secure-boot-disabled.patch
new file mode 100644
index 000000000..5d4ec82f0
--- /dev/null
+++ b/debian/patches/features/all/db-mok-keyring/0001-MODSIGN-do-not-load-mok-when-secure-boot-disabled.patch
@@ -0,0 +1,40 @@
+From: "Lee, Chun-Yi" <joeyli.kernel@gmail.com>
+Date: Tue, 13 Mar 2018 18:37:59 +0800
+Subject: [PATCH 1/5] MODSIGN: do not load mok when secure boot disabled
+Origin: https://lore.kernel.org/patchwork/patch/933173/
+
+The mok can not be trusted when the secure boot is disabled. Which
+means that the kernel embedded certificate is the only trusted key.
+
+Due to db/dbx are authenticated variables, they needs manufacturer's
+KEK for update. So db/dbx are secure when secureboot disabled.
+
+Cc: David Howells <dhowells@redhat.com>
+Cc: Josh Boyer <jwboyer@fedoraproject.org>
+Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
+Signed-off-by: "Lee, Chun-Yi" <jlee@suse.com>
+[Rebased by Luca Boccassi]
+[bwh: Forward-ported to 5.5.9:
+ - get_cert_list() takes a pointer to status and returns the cert list
+ - Adjust filename]
+[Salvatore Bonaccorso: Forward-ported to 5.10: Refresh for changes in
+38a1f03aa240 ("integrity: Move import of MokListRT certs to a separate
+routine"). Refresh in context for change in ebd9c2ae369a ("integrity: Load mokx
+variables into the blacklist keyring")]
+---
+ security/integrity/platform_certs/load_uefi.c | 26 +++++++++++++++-----------
+ 1 file changed, 15 insertions(+), 11 deletions(-)
+
+--- a/security/integrity/platform_certs/load_uefi.c
++++ b/security/integrity/platform_certs/load_uefi.c
+@@ -176,6 +176,10 @@ static int __init load_uefi_certs(void)
+ kfree(dbx);
+ }
+
++ /* the MOK can not be trusted when secure boot is disabled */
++ if (!efi_enabled(EFI_SECURE_BOOT))
++ return 0;
++
+ mokx = get_cert_list(L"MokListXRT", &mok_var, &mokxsize, &status);
+ if (!mokx) {
+ if (status == EFI_NOT_FOUND)
diff --git a/debian/patches/features/all/db-mok-keyring/0003-MODSIGN-checking-the-blacklisted-hash-before-loading-a-kernel-module.patch b/debian/patches/features/all/db-mok-keyring/0003-MODSIGN-checking-the-blacklisted-hash-before-loading-a-kernel-module.patch
new file mode 100644
index 000000000..a7ec5ccb5
--- /dev/null
+++ b/debian/patches/features/all/db-mok-keyring/0003-MODSIGN-checking-the-blacklisted-hash-before-loading-a-kernel-module.patch
@@ -0,0 +1,117 @@
+From: "Lee, Chun-Yi" <joeyli.kernel@gmail.com>
+Date: Tue, 13 Mar 2018 18:38:02 +0800
+Subject: [PATCH 3/4] MODSIGN: checking the blacklisted hash before loading a
+ kernel module
+Origin: https://lore.kernel.org/patchwork/patch/933175/
+
+This patch adds the logic for checking the kernel module's hash
+base on blacklist. The hash must be generated by sha256 and enrolled
+to dbx/mokx.
+
+For example:
+ sha256sum sample.ko
+ mokutil --mokx --import-hash $HASH_RESULT
+
+Whether the signature on ko file is stripped or not, the hash can be
+compared by kernel.
+
+Cc: David Howells <dhowells@redhat.com>
+Cc: Josh Boyer <jwboyer@fedoraproject.org>
+Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
+Signed-off-by: "Lee, Chun-Yi" <jlee@suse.com>
+[Rebased by Luca Boccassi]
+---
+ kernel/module_signing.c | 59 +++++++++++++++++++++++++++++++++++++++--
+ 1 file changed, 57 insertions(+), 2 deletions(-)
+
+--- a/kernel/module_signing.c
++++ b/kernel/module_signing.c
+@@ -12,15 +12,62 @@
+ #include <linux/string.h>
+ #include <linux/verification.h>
+ #include <crypto/public_key.h>
++#include <crypto/hash.h>
++#include <keys/system_keyring.h>
+ #include "module-internal.h"
+
++static int mod_is_hash_blacklisted(const void *mod, size_t verifylen)
++{
++ struct crypto_shash *tfm;
++ struct shash_desc *desc;
++ size_t digest_size, desc_size;
++ u8 *digest;
++ int ret = 0;
++
++ tfm = crypto_alloc_shash("sha256", 0, 0);
++ if (IS_ERR(tfm))
++ goto error_return;
++
++ desc_size = crypto_shash_descsize(tfm) + sizeof(*desc);
++ digest_size = crypto_shash_digestsize(tfm);
++ digest = kzalloc(digest_size + desc_size, GFP_KERNEL);
++ if (!digest) {
++ pr_err("digest memory buffer allocate fail\n");
++ ret = -ENOMEM;
++ goto error_digest;
++ }
++ desc = (void *)digest + digest_size;
++ desc->tfm = tfm;
++ ret = crypto_shash_init(desc);
++ if (ret < 0)
++ goto error_shash;
++
++ ret = crypto_shash_finup(desc, mod, verifylen, digest);
++ if (ret < 0)
++ goto error_shash;
++
++ pr_debug("%ld digest: %*phN\n", verifylen, (int) digest_size, digest);
++
++ ret = is_hash_blacklisted(digest, digest_size, "bin");
++ if (ret == -EKEYREJECTED)
++ pr_err("Module hash %*phN is blacklisted\n",
++ (int) digest_size, digest);
++
++error_shash:
++ kfree(digest);
++error_digest:
++ crypto_free_shash(tfm);
++error_return:
++ return ret;
++}
++
+ /*
+ * Verify the signature on a module.
+ */
+ int mod_verify_sig(const void *mod, struct load_info *info)
+ {
+ struct module_signature ms;
+- size_t sig_len, modlen = info->len;
++ size_t sig_len, modlen = info->len, wholelen;
+ int ret;
+
+ pr_devel("==>%s(,%zu)\n", __func__, modlen);
+@@ -28,6 +75,7 @@ int mod_verify_sig(const void *mod, stru
+ if (modlen <= sizeof(ms))
+ return -EBADMSG;
+
++ wholelen = modlen + sizeof(MODULE_SIG_STRING) - 1;
+ memcpy(&ms, mod + (modlen - sizeof(ms)), sizeof(ms));
+
+ ret = mod_check_sig(&ms, modlen, "module");
+@@ -38,8 +86,15 @@ int mod_verify_sig(const void *mod, stru
+ modlen -= sig_len + sizeof(ms);
+ info->len = modlen;
+
+- return verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len,
++ ret = verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len,
+ VERIFY_USE_SECONDARY_KEYRING,
+ VERIFYING_MODULE_SIGNATURE,
+ NULL, NULL);
++ pr_devel("verify_pkcs7_signature() = %d\n", ret);
++
++ /* checking hash of module is in blacklist */
++ if (!ret)
++ ret = mod_is_hash_blacklisted(mod, wholelen);
++
++ return ret;
+ }
diff --git a/debian/patches/features/all/db-mok-keyring/0004-MODSIGN-check-the-attributes-of-db-and-mok.patch b/debian/patches/features/all/db-mok-keyring/0004-MODSIGN-check-the-attributes-of-db-and-mok.patch
new file mode 100644
index 000000000..530885944
--- /dev/null
+++ b/debian/patches/features/all/db-mok-keyring/0004-MODSIGN-check-the-attributes-of-db-and-mok.patch
@@ -0,0 +1,113 @@
+From: "Lee, Chun-Yi" <joeyli.kernel@gmail.com>
+Date: Tue, 13 Mar 2018 18:38:03 +0800
+Subject: [PATCH 4/4] MODSIGN: check the attributes of db and mok
+Origin: https://lore.kernel.org/patchwork/patch/933176/
+
+That's better for checking the attributes of db and mok variables
+before loading certificates to kernel keyring.
+
+For db and dbx, both of them are authenticated variables. Which
+means that they can only be modified by manufacturer's key. So
+the kernel should checks EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS
+attribute before we trust it.
+
+For mok-rt and mokx-rt, both of them are created by shim boot loader
+to forward the mok/mokx content to runtime. They must be runtime-volatile
+variables. So kernel should checks that the attributes map did not set
+EFI_VARIABLE_NON_VOLATILE bit before we trust it.
+
+Cc: David Howells <dhowells@redhat.com>
+Cc: Josh Boyer <jwboyer@fedoraproject.org>
+Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
+Signed-off-by: "Lee, Chun-Yi" <jlee@suse.com>
+[Rebased by Luca Boccassi]
+[bwh: Forward-ported to 5.5.9:
+ - get_cert_list() takes a pointer to status and returns the cert list
+ - Adjust filename, context]
+[bwh: Forward-ported to 5.10: MokListRT and MokListXRT are now both
+ loaded through a single code path.]
+---
+ security/integrity/platform_certs/load_uefi.c | 27 ++++++++++++++-----
+ 1 file changed, 21 insertions(+), 6 deletions(-)
+
+--- a/security/integrity/platform_certs/load_uefi.c
++++ b/security/integrity/platform_certs/load_uefi.c
+@@ -35,11 +35,13 @@ static __init bool uefi_check_ignore_db(
+ * Get a certificate list blob from the named EFI variable.
+ */
+ static __init void *get_cert_list(efi_char16_t *name, efi_guid_t *guid,
+- unsigned long *size, efi_status_t *status)
++ unsigned long *size, efi_status_t *status,
++ u32 pos_attr, u32 neg_attr)
+ {
+ unsigned long lsize = 4;
+ unsigned long tmpdb[4];
+ void *db;
++ u32 attr = 0;
+
+ *status = efi.get_variable(name, guid, NULL, &lsize, &tmpdb);
+ if (*status == EFI_NOT_FOUND)
+@@ -54,13 +56,22 @@ static __init void *get_cert_list(efi_ch
+ if (!db)
+ return NULL;
+
+- *status = efi.get_variable(name, guid, NULL, &lsize, db);
++ *status = efi.get_variable(name, guid, &attr, &lsize, db);
+ if (*status != EFI_SUCCESS) {
+ kfree(db);
+ pr_err("Error reading db var: 0x%lx\n", *status);
+ return NULL;
+ }
+
++ /* must have positive attributes and no negative attributes */
++ if ((pos_attr && !(attr & pos_attr)) ||
++ (neg_attr && (attr & neg_attr))) {
++ kfree(db);
++ pr_err("Error reading db var attributes: 0x%016x\n", attr);
++ *status = EFI_SECURITY_VIOLATION;
++ return NULL;
++ }
++
+ *size = lsize;
+ return db;
+ }
+@@ -106,7 +117,8 @@ static int __init load_moklist_certs(voi
+ /* Get MokListRT. It might not exist, so it isn't an error
+ * if we can't get it.
+ */
+- mok = get_cert_list(L"MokListRT", &mok_var, &moksize, &status);
++ mok = get_cert_list(L"MokListRT", &mok_var, &moksize, &status,
++ 0, EFI_VARIABLE_NON_VOLATILE);
+ if (mok) {
+ rc = parse_efi_signature_list("UEFI:MokListRT",
+ mok, moksize, get_handler_for_db);
+@@ -145,7 +157,8 @@ static int __init load_uefi_certs(void)
+ * if we can't get them.
+ */
+ if (!uefi_check_ignore_db()) {
+- db = get_cert_list(L"db", &secure_var, &dbsize, &status);
++ db = get_cert_list(L"db", &secure_var, &dbsize, &status,
++ EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS, 0);
+ if (!db) {
+ if (status == EFI_NOT_FOUND)
+ pr_debug("MODSIGN: db variable wasn't found\n");
+@@ -161,7 +174,8 @@ static int __init load_uefi_certs(void)
+ }
+ }
+
+- dbx = get_cert_list(L"dbx", &secure_var, &dbxsize, &status);
++ dbx = get_cert_list(L"dbx", &secure_var, &dbxsize, &status,
++ EFI_VARIABLE_TIME_BASED_AUTHENTICATED_WRITE_ACCESS, 0);
+ if (!dbx) {
+ if (status == EFI_NOT_FOUND)
+ pr_debug("dbx variable wasn't found\n");
+@@ -180,7 +194,8 @@ static int __init load_uefi_certs(void)
+ if (!efi_enabled(EFI_SECURE_BOOT))
+ return 0;
+
+- mokx = get_cert_list(L"MokListXRT", &mok_var, &mokxsize, &status);
++ mokx = get_cert_list(L"MokListXRT", &mok_var, &mokxsize, &status,
++ 0, EFI_VARIABLE_NON_VOLATILE);
+ if (!mokx) {
+ if (status == EFI_NOT_FOUND)
+ pr_debug("mokx variable wasn't found\n");
diff --git a/debian/patches/features/all/db-mok-keyring/KEYS-Make-use-of-platform-keyring-for-module-signature.patch b/debian/patches/features/all/db-mok-keyring/KEYS-Make-use-of-platform-keyring-for-module-signature.patch
new file mode 100644
index 000000000..f00bf3d24
--- /dev/null
+++ b/debian/patches/features/all/db-mok-keyring/KEYS-Make-use-of-platform-keyring-for-module-signature.patch
@@ -0,0 +1,37 @@
+From: Robert Holmes <robeholmes@gmail.com>
+Date: Tue, 23 Apr 2019 07:39:29 +0000
+Subject: [PATCH] KEYS: Make use of platform keyring for module signature
+ verify
+Bug-Debian: https://bugs.debian.org/935945
+Origin: https://src.fedoraproject.org/rpms/kernel/raw/master/f/KEYS-Make-use-of-platform-keyring-for-module-signature.patch
+
+This patch completes commit 278311e417be ("kexec, KEYS: Make use of
+platform keyring for signature verify") which, while adding the
+platform keyring for bzImage verification, neglected to also add
+this keyring for module verification.
+
+As such, kernel modules signed with keys from the MokList variable
+were not successfully verified.
+
+Signed-off-by: Robert Holmes <robeholmes@gmail.com>
+Signed-off-by: Jeremy Cline <jcline@redhat.com>
+---
+ kernel/module_signing.c | 16 ++++++++++++----
+ 1 file changed, 12 insertions(+), 4 deletions(-)
+
+--- a/kernel/module_signing.c
++++ b/kernel/module_signing.c
+@@ -135,6 +135,13 @@ int mod_verify_sig(const void *mod, stru
+ VERIFYING_MODULE_SIGNATURE,
+ NULL, NULL);
+ pr_devel("verify_pkcs7_signature() = %d\n", ret);
++ if (ret == -ENOKEY && IS_ENABLED(CONFIG_INTEGRITY_PLATFORM_KEYRING)) {
++ ret = verify_pkcs7_signature(mod, modlen, mod + modlen, sig_len,
++ VERIFY_USE_PLATFORM_KEYRING,
++ VERIFYING_MODULE_SIGNATURE,
++ NULL, NULL);
++ pr_devel("verify_pkcs7_signature() = %d\n", ret);
++ }
+
+ /* checking hash of module is in blacklist */
+ if (!ret)
diff --git a/debian/patches/features/all/db-mok-keyring/modsign-make-shash-allocation-failure-fatal.patch b/debian/patches/features/all/db-mok-keyring/modsign-make-shash-allocation-failure-fatal.patch
new file mode 100644
index 000000000..2ae3ddde4
--- /dev/null
+++ b/debian/patches/features/all/db-mok-keyring/modsign-make-shash-allocation-failure-fatal.patch
@@ -0,0 +1,28 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Sun, 05 May 2019 13:45:06 +0100
+Subject: MODSIGN: Make shash allocation failure fatal
+
+mod_is_hash_blacklisted() currently returns 0 (suceess) if
+crypto_alloc_shash() fails. This should instead be a fatal error,
+so unwrap and pass up the error code.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+--- a/kernel/module_signing.c
++++ b/kernel/module_signing.c
+@@ -51,11 +51,13 @@ static int mod_is_hash_blacklisted(const
+ struct shash_desc *desc;
+ size_t digest_size, desc_size;
+ u8 *digest;
+- int ret = 0;
++ int ret;
+
+ tfm = crypto_alloc_shash("sha256", 0, 0);
+- if (IS_ERR(tfm))
++ if (IS_ERR(tfm)) {
++ ret = PTR_ERR(tfm);
+ goto error_return;
++ }
+
+ desc_size = crypto_shash_descsize(tfm) + sizeof(*desc);
+ digest_size = crypto_shash_digestsize(tfm);
diff --git a/debian/patches/features/all/drivers-media-dvb-usb-af9005-request_firmware.patch b/debian/patches/features/all/drivers-media-dvb-usb-af9005-request_firmware.patch
new file mode 100644
index 000000000..a24ba17ef
--- /dev/null
+++ b/debian/patches/features/all/drivers-media-dvb-usb-af9005-request_firmware.patch
@@ -0,0 +1,149 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 24 Aug 2009 23:19:58 +0100
+Subject: af9005: Use request_firmware() to load register init script
+Forwarded: no
+
+Read the register init script from the Windows driver. This is sick
+but should avoid the potential copyright infringement in distributing
+a version of the script which is directly derived from the driver.
+---
+ drivers/media/dvb/dvb-usb/Kconfig | 2 +-
+ drivers/media/dvb/dvb-usb/af9005-fe.c | 66 ++++++++++++++++++++++++++------
+ 2 files changed, 54 insertions(+), 14 deletions(-)
+
+Index: debian-kernel/drivers/media/usb/dvb-usb/Kconfig
+===================================================================
+--- debian-kernel.orig/drivers/media/usb/dvb-usb/Kconfig
++++ debian-kernel/drivers/media/usb/dvb-usb/Kconfig
+@@ -260,10 +260,10 @@ config DVB_USB_OPERA1
+
+ config DVB_USB_AF9005
+ tristate "Afatech AF9005 DVB-T USB1.1 support"
+- depends on BROKEN
+ depends on DVB_USB
+ select MEDIA_TUNER_MT2060 if MEDIA_SUBDRV_AUTOSELECT
+ select MEDIA_TUNER_QT1010 if MEDIA_SUBDRV_AUTOSELECT
++ select FW_LOADER
+ help
+ Say Y here to support the Afatech AF9005 based DVB-T USB1.1 receiver
+ and the TerraTec Cinergy T USB XE (Rev.1)
+Index: debian-kernel/drivers/media/usb/dvb-usb/af9005-fe.c
+===================================================================
+--- debian-kernel.orig/drivers/media/usb/dvb-usb/af9005-fe.c
++++ debian-kernel/drivers/media/usb/dvb-usb/af9005-fe.c
+@@ -9,10 +9,26 @@
+ * see Documentation/driver-api/media/drivers/dvb-usb.rst for more information
+ */
+ #include "af9005.h"
+-#include "af9005-script.h"
+ #include "mt2060.h"
+ #include "qt1010.h"
+ #include <asm/div64.h>
++#include <linux/firmware.h>
++
++/* Register initialisation script to be extracted from the Windows driver */
++
++typedef struct {
++ __le16 reg;
++ u8 pos;
++ u8 len;
++ u8 val;
++ u8 pad;
++} __packed RegDesc;
++
++#define WIN_DRV_NAME "AF05BDA.sys"
++#define WIN_DRV_VERSION "6.3.2.1"
++#define WIN_DRV_SIZE 133504
++#define WIN_DRV_SCRIPT_OFFSET 88316
++#define WIN_DRV_SCRIPT_SIZE 1110
+
+ struct af9005_fe_state {
+ struct dvb_usb_device *d;
+@@ -804,6 +820,8 @@ static int af9005_fe_init(struct dvb_fro
+ {
+ struct af9005_fe_state *state = fe->demodulator_priv;
+ struct dvb_usb_adapter *adap = fe->dvb->priv;
++ const struct firmware *fw;
++ const RegDesc *script;
+ int ret, i, scriptlen;
+ u8 temp, temp0 = 0, temp1 = 0, temp2 = 0;
+ u8 buf[2];
+@@ -956,37 +974,55 @@ static int af9005_fe_init(struct dvb_fro
+ if ((ret = af9005_write_ofdm_register(state->d, 0xaefb, 0x01)))
+ return ret;
+
+- /* load init script */
+- deb_info("load init script\n");
+- scriptlen = sizeof(script) / sizeof(RegDesc);
++ /* load and validate init script */
++ deb_info("load init script from Windows driver\n");
++ ret = request_firmware(&fw, WIN_DRV_NAME, &state->d->udev->dev);
++ if (ret)
++ return ret;
++ BUILD_BUG_ON(sizeof(RegDesc) != 6);
++ if (fw->size != WIN_DRV_SIZE ||
++ memcmp(fw->data + WIN_DRV_SCRIPT_OFFSET,
++ "\x80\xa1\x00\x08\x0a\x00", 6) ||
++ memcmp(fw->data + WIN_DRV_SCRIPT_OFFSET + WIN_DRV_SCRIPT_SIZE - 6,
++ "\x49\xa3\x00\x06\x02\x00", 6)) {
++ err("%s is invalid - should be version %s, size %u bytes\n",
++ WIN_DRV_NAME, WIN_DRV_VERSION, WIN_DRV_SIZE);
++ ret = -EINVAL;
++ goto fail_release;
++ }
++
++ script = (const RegDesc *)(fw->data + WIN_DRV_SCRIPT_OFFSET);
++ scriptlen = WIN_DRV_SCRIPT_SIZE / sizeof(RegDesc);
+ for (i = 0; i < scriptlen; i++) {
++ u16 reg = le16_to_cpu(script[i].reg);
+ if ((ret =
+- af9005_write_register_bits(state->d, script[i].reg,
++ af9005_write_register_bits(state->d, reg,
+ script[i].pos,
+ script[i].len, script[i].val)))
+- return ret;
++ goto fail_release;
+ /* save 3 bytes of original fcw */
+- if (script[i].reg == 0xae18)
++ if (reg == 0xae18)
+ temp2 = script[i].val;
+- if (script[i].reg == 0xae19)
++ if (reg == 0xae19)
+ temp1 = script[i].val;
+- if (script[i].reg == 0xae1a)
++ if (reg == 0xae1a)
+ temp0 = script[i].val;
+
+ /* save original unplug threshold */
+- if (script[i].reg == xd_p_reg_unplug_th)
++ if (reg == xd_p_reg_unplug_th)
+ state->original_if_unplug_th = script[i].val;
+- if (script[i].reg == xd_p_reg_unplug_rf_gain_th)
++ if (reg == xd_p_reg_unplug_rf_gain_th)
+ state->original_rf_unplug_th = script[i].val;
+- if (script[i].reg == xd_p_reg_unplug_dtop_if_gain_th)
++ if (reg == xd_p_reg_unplug_dtop_if_gain_th)
+ state->original_dtop_if_unplug_th = script[i].val;
+- if (script[i].reg == xd_p_reg_unplug_dtop_rf_gain_th)
++ if (reg == xd_p_reg_unplug_dtop_rf_gain_th)
+ state->original_dtop_rf_unplug_th = script[i].val;
+
+ }
+ state->original_fcw =
+ ((u32) temp2 << 16) + ((u32) temp1 << 8) + (u32) temp0;
+
++ release_firmware(fw);
+
+ /* save original TOPs */
+ deb_info("save original TOPs\n");
+@@ -1066,6 +1102,10 @@ static int af9005_fe_init(struct dvb_fro
+
+ deb_info("profit!\n");
+ return 0;
++
++fail_release:
++ release_firmware(fw);
++ return ret;
+ }
+
+ static int af9005_fe_sleep(struct dvb_frontend *fe)
diff --git a/debian/patches/features/all/lockdown/arm64-add-kernel-config-option-to-lock-down-when.patch b/debian/patches/features/all/lockdown/arm64-add-kernel-config-option-to-lock-down-when.patch
new file mode 100644
index 000000000..7f9ee1cf9
--- /dev/null
+++ b/debian/patches/features/all/lockdown/arm64-add-kernel-config-option-to-lock-down-when.patch
@@ -0,0 +1,153 @@
+From: Linn Crosetto <linn@hpe.com>
+Date: Tue, 30 Aug 2016 11:54:38 -0600
+Subject: arm64: add kernel config option to lock down when in Secure Boot mode
+Bug-Debian: https://bugs.debian.org/831827
+Forwarded: no
+
+Add a kernel configuration option to lock down the kernel, to restrict
+userspace's ability to modify the running kernel when UEFI Secure Boot is
+enabled. Based on the x86 patch by Matthew Garrett.
+
+Determine the state of Secure Boot in the EFI stub and pass this to the
+kernel using the FDT.
+
+Signed-off-by: Linn Crosetto <linn@hpe.com>
+[bwh: Forward-ported to 4.10: adjust context]
+[Lukas Wunner: Forward-ported to 4.11: drop parts applied upstream]
+[bwh: Forward-ported to 4.15 and lockdown patch set:
+ - Pass result of efi_get_secureboot() in stub through to
+ efi_set_secure_boot() in main kernel
+ - Use lockdown API and naming]
+[bwh: Forward-ported to 4.19.3: adjust context in update_fdt()]
+[dannf: Moved init_lockdown() call after uefi_init(), fixing SB detection]
+[bwh: Drop call to init_lockdown(), as efi_set_secure_boot() now calls this]
+[bwh: Forward-ported to 5.6: efi_get_secureboot() no longer takes a
+ sys_table parameter]
+[bwh: Forward-ported to 5.7: EFI initialisation from FDT was rewritten, so:
+ - Add Secure Boot mode to the parameter enumeration in fdtparams.c
+ - Add a parameter to efi_get_fdt_params() to return the Secure Boot mode
+ - Since Xen does not have a property name defined for Secure Boot mode,
+ change efi_get_fdt_prop() to handle a missing property name by clearing
+ the output variable]
+[Salvatore Bonaccorso: Forward-ported to 5.10: f30f242fb131 ("efi: Rename
+arm-init to efi-init common for all arch") renamed arm-init.c to efi-init.c]
+---
+ drivers/firmware/efi/efi-init.c | 5 ++++-
+ drivers/firmware/efi/fdtparams.c | 12 +++++++++++-
+ drivers/firmware/efi/libstub/fdt.c | 6 ++++++
+ include/linux/efi.h | 3 ++-
+ 4 files changed, 23 insertions(+), 3 deletions(-)
+
+--- a/drivers/firmware/efi/efi-init.c
++++ b/drivers/firmware/efi/efi-init.c
+@@ -210,9 +210,10 @@ void __init efi_init(void)
+ {
+ struct efi_memory_map_data data;
+ u64 efi_system_table;
++ u32 secure_boot;
+
+ /* Grab UEFI information placed in FDT by stub */
+- efi_system_table = efi_get_fdt_params(&data);
++ efi_system_table = efi_get_fdt_params(&data, &secure_boot);
+ if (!efi_system_table)
+ return;
+
+@@ -234,6 +235,8 @@ void __init efi_init(void)
+ return;
+ }
+
++ efi_set_secure_boot(secure_boot);
++
+ reserve_regions();
+ efi_esrt_init();
+ efi_mokvar_table_init();
+--- a/drivers/firmware/efi/fdtparams.c
++++ b/drivers/firmware/efi/fdtparams.c
+@@ -16,6 +16,7 @@ enum {
+ MMSIZE,
+ DCSIZE,
+ DCVERS,
++ SBMODE,
+
+ PARAMCOUNT
+ };
+@@ -26,6 +27,7 @@ static __initconst const char name[][22]
+ [MMSIZE] = "MemMap Size ",
+ [DCSIZE] = "MemMap Desc. Size ",
+ [DCVERS] = "MemMap Desc. Version ",
++ [SBMODE] = "Secure Boot Enabled ",
+ };
+
+ static __initconst const struct {
+@@ -41,6 +43,7 @@ static __initconst const struct {
+ [MMSIZE] = "xen,uefi-mmap-size",
+ [DCSIZE] = "xen,uefi-mmap-desc-size",
+ [DCVERS] = "xen,uefi-mmap-desc-ver",
++ [SBMODE] = "",
+ }
+ }, {
+ #endif
+@@ -51,6 +54,7 @@ static __initconst const struct {
+ [MMSIZE] = "linux,uefi-mmap-size",
+ [DCSIZE] = "linux,uefi-mmap-desc-size",
+ [DCVERS] = "linux,uefi-mmap-desc-ver",
++ [SBMODE] = "linux,uefi-secure-boot",
+ }
+ }
+ };
+@@ -62,6 +66,11 @@ static int __init efi_get_fdt_prop(const
+ int len;
+ u64 val;
+
++ if (!pname[0]) {
++ memset(var, 0, size);
++ return 0;
++ }
++
+ prop = fdt_getprop(fdt, node, pname, &len);
+ if (!prop)
+ return 1;
+@@ -79,7 +88,7 @@ static int __init efi_get_fdt_prop(const
+ return 0;
+ }
+
+-u64 __init efi_get_fdt_params(struct efi_memory_map_data *mm)
++u64 __init efi_get_fdt_params(struct efi_memory_map_data *mm, u32 *secure_boot)
+ {
+ const void *fdt = initial_boot_params;
+ unsigned long systab;
+@@ -93,6 +102,7 @@ u64 __init efi_get_fdt_params(struct efi
+ [MMSIZE] = { &mm->size, sizeof(mm->size) },
+ [DCSIZE] = { &mm->desc_size, sizeof(mm->desc_size) },
+ [DCVERS] = { &mm->desc_version, sizeof(mm->desc_version) },
++ [SBMODE] = { secure_boot, sizeof(*secure_boot) },
+ };
+
+ BUILD_BUG_ON(ARRAY_SIZE(target) != ARRAY_SIZE(name));
+--- a/drivers/firmware/efi/libstub/fdt.c
++++ b/drivers/firmware/efi/libstub/fdt.c
+@@ -148,6 +148,12 @@ static efi_status_t update_fdt(void *ori
+ }
+ }
+
++ fdt_val32 = cpu_to_fdt32(efi_get_secureboot());
++ status = fdt_setprop(fdt, node, "linux,uefi-secure-boot",
++ &fdt_val32, sizeof(fdt_val32));
++ if (status)
++ goto fdt_set_fail;
++
+ /* Shrink the FDT back to its minimum size: */
+ fdt_pack(fdt);
+
+--- a/include/linux/efi.h
++++ b/include/linux/efi.h
+@@ -665,7 +665,8 @@ extern void efi_mem_reserve(phys_addr_t
+ extern int efi_mem_reserve_persistent(phys_addr_t addr, u64 size);
+ extern void efi_initialize_iomem_resources(struct resource *code_resource,
+ struct resource *data_resource, struct resource *bss_resource);
+-extern u64 efi_get_fdt_params(struct efi_memory_map_data *data);
++extern u64 efi_get_fdt_params(struct efi_memory_map_data *data,
++ u32 *secure_boot);
+ extern struct kobject *efi_kobj;
+
+ extern int efi_reboot_quirk_mode;
diff --git a/debian/patches/features/all/lockdown/efi-add-an-efi_secure_boot-flag-to-indicate-secure-b.patch b/debian/patches/features/all/lockdown/efi-add-an-efi_secure_boot-flag-to-indicate-secure-b.patch
new file mode 100644
index 000000000..431281249
--- /dev/null
+++ b/debian/patches/features/all/lockdown/efi-add-an-efi_secure_boot-flag-to-indicate-secure-b.patch
@@ -0,0 +1,152 @@
+From: David Howells <dhowells@redhat.com>
+Date: Mon, 18 Feb 2019 12:45:03 +0000
+Subject: [28/30] efi: Add an EFI_SECURE_BOOT flag to indicate secure boot mode
+Origin: https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/commit?id=a5d70c55c603233c192b375f72116a395909da28
+
+UEFI machines can be booted in Secure Boot mode. Add an EFI_SECURE_BOOT
+flag that can be passed to efi_enabled() to find out whether secure boot is
+enabled.
+
+Move the switch-statement in x86's setup_arch() that inteprets the
+secure_boot boot parameter to generic code and set the bit there.
+
+Suggested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
+Signed-off-by: David Howells <dhowells@redhat.com>
+Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
+cc: linux-efi@vger.kernel.org
+[rperier: Forward-ported to 5.5:
+ - Use pr_warn()
+ - Adjust context]
+[bwh: Forward-ported to 5.6: adjust context]
+[bwh: Forward-ported to 5.7:
+ - Use the next available bit in efi.flags
+ - Adjust context]
+---
+ arch/x86/kernel/setup.c | 14 +----------
+ drivers/firmware/efi/Makefile | 1 +
+ drivers/firmware/efi/secureboot.c | 39 +++++++++++++++++++++++++++++++
+ include/linux/efi.h | 16 ++++++++-----
+ 4 files changed, 51 insertions(+), 19 deletions(-)
+ create mode 100644 drivers/firmware/efi/secureboot.c
+
+--- a/arch/x86/kernel/setup.c
++++ b/arch/x86/kernel/setup.c
+@@ -1124,19 +1124,7 @@ void __init setup_arch(char **cmdline_p)
+ /* Allocate bigger log buffer */
+ setup_log_buf(1);
+
+- if (efi_enabled(EFI_BOOT)) {
+- switch (boot_params.secure_boot) {
+- case efi_secureboot_mode_disabled:
+- pr_info("Secure boot disabled\n");
+- break;
+- case efi_secureboot_mode_enabled:
+- pr_info("Secure boot enabled\n");
+- break;
+- default:
+- pr_info("Secure boot could not be determined\n");
+- break;
+- }
+- }
++ efi_set_secure_boot(boot_params.secure_boot);
+
+ reserve_initrd();
+
+--- a/drivers/firmware/efi/Makefile
++++ b/drivers/firmware/efi/Makefile
+@@ -25,6 +25,7 @@ obj-$(CONFIG_EFI_FAKE_MEMMAP) += fake_m
+ obj-$(CONFIG_EFI_BOOTLOADER_CONTROL) += efibc.o
+ obj-$(CONFIG_EFI_TEST) += test/
+ obj-$(CONFIG_EFI_DEV_PATH_PARSER) += dev-path-parser.o
++obj-$(CONFIG_EFI) += secureboot.o
+ obj-$(CONFIG_APPLE_PROPERTIES) += apple-properties.o
+ obj-$(CONFIG_EFI_RCI2_TABLE) += rci2-table.o
+ obj-$(CONFIG_EFI_EMBEDDED_FIRMWARE) += embedded-firmware.o
+--- /dev/null
++++ b/drivers/firmware/efi/secureboot.c
+@@ -0,0 +1,39 @@
++
++/* Core kernel secure boot support.
++ *
++ * Copyright (C) 2017 Red Hat, Inc. All Rights Reserved.
++ * Written by David Howells (dhowells@redhat.com)
++ *
++ * This program is free software; you can redistribute it and/or
++ * modify it under the terms of the GNU General Public Licence
++ * as published by the Free Software Foundation; either version
++ * 2 of the Licence, or (at your option) any later version.
++ */
++
++#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
++
++#include <linux/efi.h>
++#include <linux/kernel.h>
++#include <linux/printk.h>
++
++/*
++ * Decide what to do when UEFI secure boot mode is enabled.
++ */
++void __init efi_set_secure_boot(enum efi_secureboot_mode mode)
++{
++ if (efi_enabled(EFI_BOOT)) {
++ switch (mode) {
++ case efi_secureboot_mode_disabled:
++ pr_info("Secure boot disabled\n");
++ break;
++ case efi_secureboot_mode_enabled:
++ set_bit(EFI_SECURE_BOOT, &efi.flags);
++ pr_info("Secure boot enabled\n");
++ break;
++ default:
++ pr_warn("Secure boot could not be determined (mode %u)\n",
++ mode);
++ break;
++ }
++ }
++}
+--- a/include/linux/efi.h
++++ b/include/linux/efi.h
+@@ -776,6 +776,14 @@ extern int __init efi_setup_pcdp_console
+ #define EFI_MEM_ATTR 10 /* Did firmware publish an EFI_MEMORY_ATTRIBUTES table? */
+ #define EFI_MEM_NO_SOFT_RESERVE 11 /* Is the kernel configured to ignore soft reservations? */
+ #define EFI_PRESERVE_BS_REGIONS 12 /* Are EFI boot-services memory segments available? */
++#define EFI_SECURE_BOOT 13 /* Are we in Secure Boot mode? */
++
++enum efi_secureboot_mode {
++ efi_secureboot_mode_unset,
++ efi_secureboot_mode_unknown,
++ efi_secureboot_mode_disabled,
++ efi_secureboot_mode_enabled,
++};
+
+ #ifdef CONFIG_EFI
+ /*
+@@ -799,6 +807,7 @@ static inline bool efi_rt_services_suppo
+ {
+ return (efi.runtime_supported_mask & mask) == mask;
+ }
++extern void __init efi_set_secure_boot(enum efi_secureboot_mode mode);
+ #else
+ static inline bool efi_enabled(int feature)
+ {
+@@ -822,6 +831,7 @@ static inline bool efi_rt_services_suppo
+ {
+ return false;
+ }
++static inline void efi_set_secure_boot(enum efi_secureboot_mode mode) {}
+ #endif
+
+ extern int efi_status_to_err(efi_status_t status);
+@@ -1083,12 +1093,6 @@ static inline bool efi_runtime_disabled(
+ extern void efi_call_virt_check_flags(unsigned long flags, const char *call);
+ extern unsigned long efi_call_virt_save_flags(void);
+
+-enum efi_secureboot_mode {
+- efi_secureboot_mode_unset,
+- efi_secureboot_mode_unknown,
+- efi_secureboot_mode_disabled,
+- efi_secureboot_mode_enabled,
+-};
+ enum efi_secureboot_mode efi_get_secureboot(void);
+
+ #ifdef CONFIG_RESET_ATTACK_MITIGATION
diff --git a/debian/patches/features/all/lockdown/efi-lock-down-the-kernel-if-booted-in-secure-boot-mo.patch b/debian/patches/features/all/lockdown/efi-lock-down-the-kernel-if-booted-in-secure-boot-mo.patch
new file mode 100644
index 000000000..627e37154
--- /dev/null
+++ b/debian/patches/features/all/lockdown/efi-lock-down-the-kernel-if-booted-in-secure-boot-mo.patch
@@ -0,0 +1,127 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Tue, 10 Sep 2019 11:54:28 +0100
+Subject: efi: Lock down the kernel if booted in secure boot mode
+
+Based on an earlier patch by David Howells, who wrote the following
+description:
+
+> UEFI Secure Boot provides a mechanism for ensuring that the firmware will
+> only load signed bootloaders and kernels. Certain use cases may also
+> require that all kernel modules also be signed. Add a configuration option
+> that to lock down the kernel - which includes requiring validly signed
+> modules - if the kernel is secure-booted.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ arch/x86/kernel/setup.c | 4 ++--
+ drivers/firmware/efi/secureboot.c | 3 +++
+ include/linux/security.h | 6 ++++++
+ security/lockdown/Kconfig | 15 +++++++++++++++
+ security/lockdown/lockdown.c | 2 +-
+ 5 files changed, 27 insertions(+), 3 deletions(-)
+
+Index: debian-kernel/arch/x86/kernel/setup.c
+===================================================================
+--- debian-kernel.orig/arch/x86/kernel/setup.c
++++ debian-kernel/arch/x86/kernel/setup.c
+@@ -979,6 +979,8 @@ void __init setup_arch(char **cmdline_p)
+ if (efi_enabled(EFI_BOOT))
+ efi_init();
+
++ efi_set_secure_boot(boot_params.secure_boot);
++
+ dmi_setup();
+
+ /*
+@@ -1130,8 +1132,6 @@ void __init setup_arch(char **cmdline_p)
+ /* Allocate bigger log buffer */
+ setup_log_buf(1);
+
+- efi_set_secure_boot(boot_params.secure_boot);
+-
+ reserve_initrd();
+
+ acpi_table_upgrade();
+Index: debian-kernel/drivers/firmware/efi/secureboot.c
+===================================================================
+--- debian-kernel.orig/drivers/firmware/efi/secureboot.c
++++ debian-kernel/drivers/firmware/efi/secureboot.c
+@@ -15,6 +15,7 @@
+ #include <linux/efi.h>
+ #include <linux/kernel.h>
+ #include <linux/printk.h>
++#include <linux/security.h>
+
+ /*
+ * Decide what to do when UEFI secure boot mode is enabled.
+@@ -28,6 +29,10 @@ void __init efi_set_secure_boot(enum efi
+ break;
+ case efi_secureboot_mode_enabled:
+ set_bit(EFI_SECURE_BOOT, &efi.flags);
++#ifdef CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT
++ lock_kernel_down("EFI Secure Boot",
++ LOCKDOWN_INTEGRITY_MAX);
++#endif
+ pr_info("Secure boot enabled\n");
+ break;
+ default:
+Index: debian-kernel/include/linux/security.h
+===================================================================
+--- debian-kernel.orig/include/linux/security.h
++++ debian-kernel/include/linux/security.h
+@@ -451,6 +451,7 @@ int security_inode_notifysecctx(struct i
+ int security_inode_setsecctx(struct dentry *dentry, void *ctx, u32 ctxlen);
+ int security_inode_getsecctx(struct inode *inode, void **ctx, u32 *ctxlen);
+ int security_locked_down(enum lockdown_reason what);
++int lock_kernel_down(const char *where, enum lockdown_reason level);
+ #else /* CONFIG_SECURITY */
+
+ static inline int call_blocking_lsm_notifier(enum lsm_event event, void *data)
+@@ -1291,6 +1292,11 @@ static inline int security_locked_down(e
+ {
+ return 0;
+ }
++static inline int
++lock_kernel_down(const char *where, enum lockdown_reason level)
++{
++ return -EOPNOTSUPP;
++}
+ #endif /* CONFIG_SECURITY */
+
+ #if defined(CONFIG_SECURITY) && defined(CONFIG_WATCH_QUEUE)
+Index: debian-kernel/security/lockdown/Kconfig
+===================================================================
+--- debian-kernel.orig/security/lockdown/Kconfig
++++ debian-kernel/security/lockdown/Kconfig
+@@ -45,3 +45,18 @@ config LOCK_DOWN_KERNEL_FORCE_CONFIDENTI
+ disabled.
+
+ endchoice
++
++config LOCK_DOWN_IN_EFI_SECURE_BOOT
++ bool "Lock down the kernel in EFI Secure Boot mode"
++ default n
++ depends on SECURITY_LOCKDOWN_LSM
++ depends on EFI
++ select SECURITY_LOCKDOWN_LSM_EARLY
++ help
++ UEFI Secure Boot provides a mechanism for ensuring that the firmware
++ will only load signed bootloaders and kernels. Secure boot mode may
++ be determined from EFI variables provided by the system firmware if
++ not indicated by the boot parameters.
++
++ Enabling this option results in kernel lockdown being
++ triggered in confidentiality mode if EFI Secure Boot is set.
+Index: debian-kernel/security/lockdown/lockdown.c
+===================================================================
+--- debian-kernel.orig/security/lockdown/lockdown.c
++++ debian-kernel/security/lockdown/lockdown.c
+@@ -23,7 +23,7 @@ static const enum lockdown_reason lockdo
+ /*
+ * Put the kernel into lock-down mode.
+ */
+-static int lock_kernel_down(const char *where, enum lockdown_reason level)
++int lock_kernel_down(const char *where, enum lockdown_reason level)
+ {
+ if (kernel_locked_down >= level)
+ return -EPERM;
diff --git a/debian/patches/features/all/lockdown/mtd-disable-slram-and-phram-when-locked-down.patch b/debian/patches/features/all/lockdown/mtd-disable-slram-and-phram-when-locked-down.patch
new file mode 100644
index 000000000..5004e5dca
--- /dev/null
+++ b/debian/patches/features/all/lockdown/mtd-disable-slram-and-phram-when-locked-down.patch
@@ -0,0 +1,75 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Fri, 30 Aug 2019 15:54:24 +0100
+Subject: mtd: phram,slram: Disable when the kernel is locked down
+Forwarded: https://lore.kernel.org/linux-security-module/20190830154720.eekfjt6c4jzvlbfz@decadent.org.uk/
+
+These drivers allow mapping arbitrary memory ranges as MTD devices.
+This should be disabled to preserve the kernel's integrity when it is
+locked down.
+
+* Add the HWPARAM flag to the module parameters
+* When slram is built-in, it uses __setup() to read kernel parameters,
+ so add an explicit check security_locked_down() check
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+Cc: Matthew Garrett <mjg59@google.com>
+Cc: David Howells <dhowells@redhat.com>
+Cc: Joern Engel <joern@lazybastard.org>
+Cc: linux-mtd@lists.infradead.org
+---
+ drivers/mtd/devices/phram.c | 6 +++++-
+ drivers/mtd/devices/slram.c | 9 ++++++++-
+ 2 files changed, 13 insertions(+), 2 deletions(-)
+
+--- a/drivers/mtd/devices/phram.c
++++ b/drivers/mtd/devices/phram.c
+@@ -294,7 +294,11 @@ static int phram_param_call(const char *
+ #endif
+ }
+
+-module_param_call(phram, phram_param_call, NULL, NULL, 0200);
++static const struct kernel_param_ops phram_param_ops = {
++ .set = phram_param_call
++};
++__module_param_call(MODULE_PARAM_PREFIX, phram, &phram_param_ops, NULL,
++ 0200, -1, KERNEL_PARAM_FL_HWPARAM | hwparam_iomem);
+ MODULE_PARM_DESC(phram, "Memory region to map. \"phram=<name>,<start>,<length>\"");
+
+
+--- a/drivers/mtd/devices/slram.c
++++ b/drivers/mtd/devices/slram.c
+@@ -43,6 +43,7 @@
+ #include <linux/ioctl.h>
+ #include <linux/init.h>
+ #include <linux/io.h>
++#include <linux/security.h>
+
+ #include <linux/mtd/mtd.h>
+
+@@ -65,7 +66,7 @@ typedef struct slram_mtd_list {
+ #ifdef MODULE
+ static char *map[SLRAM_MAX_DEVICES_PARAMS];
+
+-module_param_array(map, charp, NULL, 0);
++module_param_hw_array(map, charp, iomem, NULL, 0);
+ MODULE_PARM_DESC(map, "List of memory regions to map. \"map=<name>, <start>, <length / end>\"");
+ #else
+ static char *map;
+@@ -281,11 +282,17 @@ static int __init init_slram(void)
+ #ifndef MODULE
+ char *devstart;
+ char *devlength;
++ int ret;
+
+ if (!map) {
+ E("slram: not enough parameters.\n");
+ return(-EINVAL);
+ }
++
++ ret = security_locked_down(LOCKDOWN_MODULE_PARAMETERS);
++ if (ret)
++ return ret;
++
+ while (map) {
+ devname = devstart = devlength = NULL;
+
diff --git a/debian/patches/features/all/security-perf-allow-further-restriction-of-perf_event_open.patch b/debian/patches/features/all/security-perf-allow-further-restriction-of-perf_event_open.patch
new file mode 100644
index 000000000..33db1f765
--- /dev/null
+++ b/debian/patches/features/all/security-perf-allow-further-restriction-of-perf_event_open.patch
@@ -0,0 +1,80 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 11 Jan 2016 15:23:55 +0000
+Subject: security,perf: Allow further restriction of perf_event_open
+Forwarded: https://lkml.org/lkml/2016/1/11/587
+
+When kernel.perf_event_open is set to 3 (or greater), disallow all
+access to performance events by users without CAP_SYS_ADMIN.
+Add a Kconfig symbol CONFIG_SECURITY_PERF_EVENTS_RESTRICT that
+makes this value the default.
+
+This is based on a similar feature in grsecurity
+(CONFIG_GRKERNSEC_PERF_HARDEN). This version doesn't include making
+the variable read-only. It also allows enabling further restriction
+at run-time regardless of whether the default is changed.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ include/linux/perf_event.h | 5 +++++
+ kernel/events/core.c | 8 ++++++++
+ security/Kconfig | 9 +++++++++
+ 3 files changed, 22 insertions(+)
+
+--- a/include/linux/perf_event.h
++++ b/include/linux/perf_event.h
+@@ -1305,6 +1305,11 @@ int perf_cpu_time_max_percent_handler(st
+ int perf_event_max_stack_handler(struct ctl_table *table, int write,
+ void *buffer, size_t *lenp, loff_t *ppos);
+
++static inline bool perf_paranoid_any(void)
++{
++ return sysctl_perf_event_paranoid > 2;
++}
++
+ /* Access to perf_event_open(2) syscall. */
+ #define PERF_SECURITY_OPEN 0
+
+--- a/kernel/events/core.c
++++ b/kernel/events/core.c
+@@ -408,8 +408,13 @@ static cpumask_var_t perf_online_mask;
+ * 0 - disallow raw tracepoint access for unpriv
+ * 1 - disallow cpu events for unpriv
+ * 2 - disallow kernel profiling for unpriv
++ * 3 - disallow all unpriv perf event use
+ */
++#ifdef CONFIG_SECURITY_PERF_EVENTS_RESTRICT
++int sysctl_perf_event_paranoid __read_mostly = 3;
++#else
+ int sysctl_perf_event_paranoid __read_mostly = 2;
++#endif
+
+ /* Minimum for 512 kiB + 1 user control page */
+ int sysctl_perf_event_mlock __read_mostly = 512 + (PAGE_SIZE / 1024); /* 'free' kiB per user */
+@@ -11785,6 +11790,9 @@ SYSCALL_DEFINE5(perf_event_open,
+ if (err)
+ return err;
+
++ if (perf_paranoid_any() && !capable(CAP_SYS_ADMIN))
++ return -EACCES;
++
+ /* Do we allow access to perf_event_open(2) ? */
+ err = security_perf_event_open(&attr, PERF_SECURITY_OPEN);
+ if (err)
+--- a/security/Kconfig
++++ b/security/Kconfig
+@@ -19,6 +19,15 @@ config SECURITY_DMESG_RESTRICT
+
+ If you are unsure how to answer this question, answer N.
+
++config SECURITY_PERF_EVENTS_RESTRICT
++ bool "Restrict unprivileged use of performance events"
++ depends on PERF_EVENTS
++ help
++ If you say Y here, the kernel.perf_event_paranoid sysctl
++ will be set to 3 by default, and no unprivileged use of the
++ perf_event_open syscall will be permitted unless it is
++ changed.
++
+ config SECURITY
+ bool "Enable different security models"
+ depends on SYSFS
diff --git a/debian/patches/features/arm64/arm64-compat-Implement-misalignment-fixups-for-multi.patch b/debian/patches/features/arm64/arm64-compat-Implement-misalignment-fixups-for-multi.patch
new file mode 100644
index 000000000..303e69f83
--- /dev/null
+++ b/debian/patches/features/arm64/arm64-compat-Implement-misalignment-fixups-for-multi.patch
@@ -0,0 +1,480 @@
+From: Ard Biesheuvel <ardb@kernel.org>
+Date: Fri, 1 Jul 2022 15:53:22 +0200
+Subject: arm64: compat: Implement misalignment fixups for multiword loads
+Origin: https://git.kernel.org/linus/3fc24ef32d3b9368f4c103dcd21d6a3f959b4870
+
+The 32-bit ARM kernel implements fixups on behalf of user space when
+using LDM/STM or LDRD/STRD instructions on addresses that are not 32-bit
+aligned. This is not something that is supported by the architecture,
+but was done anyway to increase compatibility with user space software,
+which mostly targeted x86 at the time and did not care about aligned
+accesses.
+
+This feature is one of the remaining impediments to being able to switch
+to 64-bit kernels on 64-bit capable hardware running 32-bit user space,
+so let's implement it for the arm64 compat layer as well.
+
+Note that the intent is to implement the exact same handling of
+misaligned multi-word loads and stores as the 32-bit kernel does,
+including what appears to be missing support for user space programs
+that rely on SETEND to switch to a different byte order and back. Also,
+like the 32-bit ARM version, we rely on the faulting address reported by
+the CPU to infer the memory address, instead of decoding the instruction
+fully to obtain this information.
+
+This implementation is taken from the 32-bit ARM tree, with all pieces
+removed that deal with instructions other than LDRD/STRD and LDM/STM, or
+that deal with alignment exceptions taken in kernel mode.
+
+Cc: debian-arm@lists.debian.org
+Cc: Vagrant Cascadian <vagrant@debian.org>
+Cc: Riku Voipio <riku.voipio@iki.fi>
+Cc: Steve McIntyre <steve@einval.com>
+Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
+Reviewed-by: Arnd Bergmann <arnd@arndb.de>
+Link: https://lore.kernel.org/r/20220701135322.3025321-1-ardb@kernel.org
+[catalin.marinas@arm.com: change the option to 'default n']
+Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
+---
+ arch/arm64/Kconfig | 3 +
+ arch/arm64/include/asm/exception.h | 1 +
+ arch/arm64/kernel/Makefile | 1 +
+ arch/arm64/kernel/compat_alignment.c | 387 +++++++++++++++++++++++++++
+ arch/arm64/mm/fault.c | 3 +
+ 5 files changed, 395 insertions(+)
+ create mode 100644 arch/arm64/kernel/compat_alignment.c
+
+--- a/arch/arm64/Kconfig
++++ b/arch/arm64/Kconfig
+@@ -1328,6 +1328,9 @@ config THUMB2_COMPAT_VDSO
+ Compile the compat vDSO with '-mthumb -fomit-frame-pointer' if y,
+ otherwise with '-marm'.
+
++config COMPAT_ALIGNMENT_FIXUPS
++ bool "Fix up misaligned multi-word loads and stores in user space"
++
+ menuconfig ARMV8_DEPRECATED
+ bool "Emulate deprecated/obsolete ARMv8 instructions"
+ depends on SYSCTL
+--- a/arch/arm64/include/asm/exception.h
++++ b/arch/arm64/include/asm/exception.h
+@@ -47,6 +47,7 @@ void do_el0_sys(unsigned long esr, struc
+ void do_sp_pc_abort(unsigned long addr, unsigned int esr, struct pt_regs *regs);
+ void bad_el0_sync(struct pt_regs *regs, int reason, unsigned int esr);
+ void do_el0_cp15(unsigned long esr, struct pt_regs *regs);
++int do_compat_alignment_fixup(unsigned long addr, struct pt_regs *regs);
+ void do_el0_svc(struct pt_regs *regs);
+ void do_el0_svc_compat(struct pt_regs *regs);
+ void do_el0_fpac(struct pt_regs *regs, unsigned long esr);
+--- a/arch/arm64/kernel/Makefile
++++ b/arch/arm64/kernel/Makefile
+@@ -28,6 +28,7 @@ $(obj)/%.stub.o: $(obj)/%.o FORCE
+ obj-$(CONFIG_COMPAT) += sys32.o signal32.o \
+ sys_compat.o
+ obj-$(CONFIG_COMPAT) += sigreturn32.o
++obj-$(CONFIG_COMPAT_ALIGNMENT_FIXUPS) += compat_alignment.o
+ obj-$(CONFIG_KUSER_HELPERS) += kuser32.o
+ obj-$(CONFIG_FUNCTION_TRACER) += ftrace.o entry-ftrace.o
+ obj-$(CONFIG_MODULES) += module.o
+--- /dev/null
++++ b/arch/arm64/kernel/compat_alignment.c
+@@ -0,0 +1,387 @@
++// SPDX-License-Identifier: GPL-2.0-only
++// based on arch/arm/mm/alignment.c
++
++#include <linux/compiler.h>
++#include <linux/errno.h>
++#include <linux/kernel.h>
++#include <linux/init.h>
++#include <linux/perf_event.h>
++#include <linux/uaccess.h>
++
++#include <asm/exception.h>
++#include <asm/ptrace.h>
++#include <asm/traps.h>
++
++/*
++ * 32-bit misaligned trap handler (c) 1998 San Mehat (CCC) -July 1998
++ *
++ * Speed optimisations and better fault handling by Russell King.
++ */
++#define CODING_BITS(i) (i & 0x0e000000)
++
++#define LDST_P_BIT(i) (i & (1 << 24)) /* Preindex */
++#define LDST_U_BIT(i) (i & (1 << 23)) /* Add offset */
++#define LDST_W_BIT(i) (i & (1 << 21)) /* Writeback */
++#define LDST_L_BIT(i) (i & (1 << 20)) /* Load */
++
++#define LDST_P_EQ_U(i) ((((i) ^ ((i) >> 1)) & (1 << 23)) == 0)
++
++#define LDSTHD_I_BIT(i) (i & (1 << 22)) /* double/half-word immed */
++
++#define RN_BITS(i) ((i >> 16) & 15) /* Rn */
++#define RD_BITS(i) ((i >> 12) & 15) /* Rd */
++#define RM_BITS(i) (i & 15) /* Rm */
++
++#define REGMASK_BITS(i) (i & 0xffff)
++
++#define BAD_INSTR 0xdeadc0de
++
++/* Thumb-2 32 bit format per ARMv7 DDI0406A A6.3, either f800h,e800h,f800h */
++#define IS_T32(hi16) \
++ (((hi16) & 0xe000) == 0xe000 && ((hi16) & 0x1800))
++
++union offset_union {
++ unsigned long un;
++ signed long sn;
++};
++
++#define TYPE_ERROR 0
++#define TYPE_FAULT 1
++#define TYPE_LDST 2
++#define TYPE_DONE 3
++
++static void
++do_alignment_finish_ldst(unsigned long addr, u32 instr, struct pt_regs *regs,
++ union offset_union offset)
++{
++ if (!LDST_U_BIT(instr))
++ offset.un = -offset.un;
++
++ if (!LDST_P_BIT(instr))
++ addr += offset.un;
++
++ if (!LDST_P_BIT(instr) || LDST_W_BIT(instr))
++ regs->regs[RN_BITS(instr)] = addr;
++}
++
++static int
++do_alignment_ldrdstrd(unsigned long addr, u32 instr, struct pt_regs *regs)
++{
++ unsigned int rd = RD_BITS(instr);
++ unsigned int rd2;
++ int load;
++
++ if ((instr & 0xfe000000) == 0xe8000000) {
++ /* ARMv7 Thumb-2 32-bit LDRD/STRD */
++ rd2 = (instr >> 8) & 0xf;
++ load = !!(LDST_L_BIT(instr));
++ } else if (((rd & 1) == 1) || (rd == 14)) {
++ return TYPE_ERROR;
++ } else {
++ load = ((instr & 0xf0) == 0xd0);
++ rd2 = rd + 1;
++ }
++
++ if (load) {
++ unsigned int val, val2;
++
++ if (get_user(val, (u32 __user *)addr) ||
++ get_user(val2, (u32 __user *)(addr + 4)))
++ return TYPE_FAULT;
++ regs->regs[rd] = val;
++ regs->regs[rd2] = val2;
++ } else {
++ if (put_user(regs->regs[rd], (u32 __user *)addr) ||
++ put_user(regs->regs[rd2], (u32 __user *)(addr + 4)))
++ return TYPE_FAULT;
++ }
++ return TYPE_LDST;
++}
++
++/*
++ * LDM/STM alignment handler.
++ *
++ * There are 4 variants of this instruction:
++ *
++ * B = rn pointer before instruction, A = rn pointer after instruction
++ * ------ increasing address ----->
++ * | | r0 | r1 | ... | rx | |
++ * PU = 01 B A
++ * PU = 11 B A
++ * PU = 00 A B
++ * PU = 10 A B
++ */
++static int
++do_alignment_ldmstm(unsigned long addr, u32 instr, struct pt_regs *regs)
++{
++ unsigned int rd, rn, nr_regs, regbits;
++ unsigned long eaddr, newaddr;
++ unsigned int val;
++
++ /* count the number of registers in the mask to be transferred */
++ nr_regs = hweight16(REGMASK_BITS(instr)) * 4;
++
++ rn = RN_BITS(instr);
++ newaddr = eaddr = regs->regs[rn];
++
++ if (!LDST_U_BIT(instr))
++ nr_regs = -nr_regs;
++ newaddr += nr_regs;
++ if (!LDST_U_BIT(instr))
++ eaddr = newaddr;
++
++ if (LDST_P_EQ_U(instr)) /* U = P */
++ eaddr += 4;
++
++ for (regbits = REGMASK_BITS(instr), rd = 0; regbits;
++ regbits >>= 1, rd += 1)
++ if (regbits & 1) {
++ if (LDST_L_BIT(instr)) {
++ if (get_user(val, (u32 __user *)eaddr))
++ return TYPE_FAULT;
++ if (rd < 15)
++ regs->regs[rd] = val;
++ else
++ regs->pc = val;
++ } else {
++ /*
++ * The PC register has a bias of +8 in ARM mode
++ * and +4 in Thumb mode. This means that a read
++ * of the value of PC should account for this.
++ * Since Thumb does not permit STM instructions
++ * to refer to PC, just add 8 here.
++ */
++ val = (rd < 15) ? regs->regs[rd] : regs->pc + 8;
++ if (put_user(val, (u32 __user *)eaddr))
++ return TYPE_FAULT;
++ }
++ eaddr += 4;
++ }
++
++ if (LDST_W_BIT(instr))
++ regs->regs[rn] = newaddr;
++
++ return TYPE_DONE;
++}
++
++/*
++ * Convert Thumb multi-word load/store instruction forms to equivalent ARM
++ * instructions so we can reuse ARM userland alignment fault fixups for Thumb.
++ *
++ * This implementation was initially based on the algorithm found in
++ * gdb/sim/arm/thumbemu.c. It is basically just a code reduction of same
++ * to convert only Thumb ld/st instruction forms to equivalent ARM forms.
++ *
++ * NOTES:
++ * 1. Comments below refer to ARM ARM DDI0100E Thumb Instruction sections.
++ * 2. If for some reason we're passed an non-ld/st Thumb instruction to
++ * decode, we return 0xdeadc0de. This should never happen under normal
++ * circumstances but if it does, we've got other problems to deal with
++ * elsewhere and we obviously can't fix those problems here.
++ */
++
++static unsigned long thumb2arm(u16 tinstr)
++{
++ u32 L = (tinstr & (1<<11)) >> 11;
++
++ switch ((tinstr & 0xf800) >> 11) {
++ /* 6.6.1 Format 1: */
++ case 0xc000 >> 11: /* 7.1.51 STMIA */
++ case 0xc800 >> 11: /* 7.1.25 LDMIA */
++ {
++ u32 Rn = (tinstr & (7<<8)) >> 8;
++ u32 W = ((L<<Rn) & (tinstr&255)) ? 0 : 1<<21;
++
++ return 0xe8800000 | W | (L<<20) | (Rn<<16) |
++ (tinstr&255);
++ }
++
++ /* 6.6.1 Format 2: */
++ case 0xb000 >> 11: /* 7.1.48 PUSH */
++ case 0xb800 >> 11: /* 7.1.47 POP */
++ if ((tinstr & (3 << 9)) == 0x0400) {
++ static const u32 subset[4] = {
++ 0xe92d0000, /* STMDB sp!,{registers} */
++ 0xe92d4000, /* STMDB sp!,{registers,lr} */
++ 0xe8bd0000, /* LDMIA sp!,{registers} */
++ 0xe8bd8000 /* LDMIA sp!,{registers,pc} */
++ };
++ return subset[(L<<1) | ((tinstr & (1<<8)) >> 8)] |
++ (tinstr & 255); /* register_list */
++ }
++ fallthrough; /* for illegal instruction case */
++
++ default:
++ return BAD_INSTR;
++ }
++}
++
++/*
++ * Convert Thumb-2 32 bit LDM, STM, LDRD, STRD to equivalent instruction
++ * handlable by ARM alignment handler, also find the corresponding handler,
++ * so that we can reuse ARM userland alignment fault fixups for Thumb.
++ *
++ * @pinstr: original Thumb-2 instruction; returns new handlable instruction
++ * @regs: register context.
++ * @poffset: return offset from faulted addr for later writeback
++ *
++ * NOTES:
++ * 1. Comments below refer to ARMv7 DDI0406A Thumb Instruction sections.
++ * 2. Register name Rt from ARMv7 is same as Rd from ARMv6 (Rd is Rt)
++ */
++static void *
++do_alignment_t32_to_handler(u32 *pinstr, struct pt_regs *regs,
++ union offset_union *poffset)
++{
++ u32 instr = *pinstr;
++ u16 tinst1 = (instr >> 16) & 0xffff;
++ u16 tinst2 = instr & 0xffff;
++
++ switch (tinst1 & 0xffe0) {
++ /* A6.3.5 Load/Store multiple */
++ case 0xe880: /* STM/STMIA/STMEA,LDM/LDMIA, PUSH/POP T2 */
++ case 0xe8a0: /* ...above writeback version */
++ case 0xe900: /* STMDB/STMFD, LDMDB/LDMEA */
++ case 0xe920: /* ...above writeback version */
++ /* no need offset decision since handler calculates it */
++ return do_alignment_ldmstm;
++
++ case 0xf840: /* POP/PUSH T3 (single register) */
++ if (RN_BITS(instr) == 13 && (tinst2 & 0x09ff) == 0x0904) {
++ u32 L = !!(LDST_L_BIT(instr));
++ const u32 subset[2] = {
++ 0xe92d0000, /* STMDB sp!,{registers} */
++ 0xe8bd0000, /* LDMIA sp!,{registers} */
++ };
++ *pinstr = subset[L] | (1<<RD_BITS(instr));
++ return do_alignment_ldmstm;
++ }
++ /* Else fall through for illegal instruction case */
++ break;
++
++ /* A6.3.6 Load/store double, STRD/LDRD(immed, lit, reg) */
++ case 0xe860:
++ case 0xe960:
++ case 0xe8e0:
++ case 0xe9e0:
++ poffset->un = (tinst2 & 0xff) << 2;
++ fallthrough;
++
++ case 0xe940:
++ case 0xe9c0:
++ return do_alignment_ldrdstrd;
++
++ /*
++ * No need to handle load/store instructions up to word size
++ * since ARMv6 and later CPUs can perform unaligned accesses.
++ */
++ default:
++ break;
++ }
++ return NULL;
++}
++
++static int alignment_get_arm(struct pt_regs *regs, __le32 __user *ip, u32 *inst)
++{
++ __le32 instr = 0;
++ int fault;
++
++ fault = get_user(instr, ip);
++ if (fault)
++ return fault;
++
++ *inst = __le32_to_cpu(instr);
++ return 0;
++}
++
++static int alignment_get_thumb(struct pt_regs *regs, __le16 __user *ip, u16 *inst)
++{
++ __le16 instr = 0;
++ int fault;
++
++ fault = get_user(instr, ip);
++ if (fault)
++ return fault;
++
++ *inst = __le16_to_cpu(instr);
++ return 0;
++}
++
++int do_compat_alignment_fixup(unsigned long addr, struct pt_regs *regs)
++{
++ union offset_union offset;
++ unsigned long instrptr;
++ int (*handler)(unsigned long addr, u32 instr, struct pt_regs *regs);
++ unsigned int type;
++ u32 instr = 0;
++ u16 tinstr = 0;
++ int isize = 4;
++ int thumb2_32b = 0;
++ int fault;
++
++ instrptr = instruction_pointer(regs);
++
++ if (compat_thumb_mode(regs)) {
++ __le16 __user *ptr = (__le16 __user *)(instrptr & ~1);
++
++ fault = alignment_get_thumb(regs, ptr, &tinstr);
++ if (!fault) {
++ if (IS_T32(tinstr)) {
++ /* Thumb-2 32-bit */
++ u16 tinst2;
++ fault = alignment_get_thumb(regs, ptr + 1, &tinst2);
++ instr = ((u32)tinstr << 16) | tinst2;
++ thumb2_32b = 1;
++ } else {
++ isize = 2;
++ instr = thumb2arm(tinstr);
++ }
++ }
++ } else {
++ fault = alignment_get_arm(regs, (__le32 __user *)instrptr, &instr);
++ }
++
++ if (fault)
++ return 1;
++
++ switch (CODING_BITS(instr)) {
++ case 0x00000000: /* 3.13.4 load/store instruction extensions */
++ if (LDSTHD_I_BIT(instr))
++ offset.un = (instr & 0xf00) >> 4 | (instr & 15);
++ else
++ offset.un = regs->regs[RM_BITS(instr)];
++
++ if ((instr & 0x001000f0) == 0x000000d0 || /* LDRD */
++ (instr & 0x001000f0) == 0x000000f0) /* STRD */
++ handler = do_alignment_ldrdstrd;
++ else
++ return 1;
++ break;
++
++ case 0x08000000: /* ldm or stm, or thumb-2 32bit instruction */
++ if (thumb2_32b) {
++ offset.un = 0;
++ handler = do_alignment_t32_to_handler(&instr, regs, &offset);
++ } else {
++ offset.un = 0;
++ handler = do_alignment_ldmstm;
++ }
++ break;
++
++ default:
++ return 1;
++ }
++
++ type = handler(addr, instr, regs);
++
++ if (type == TYPE_ERROR || type == TYPE_FAULT)
++ return 1;
++
++ if (type == TYPE_LDST)
++ do_alignment_finish_ldst(addr, instr, regs, offset);
++
++ perf_sw_event(PERF_COUNT_SW_ALIGNMENT_FAULTS, 1, regs, regs->pc);
++ arm64_skip_faulting_instruction(regs, isize);
++
++ return 0;
++}
+--- a/arch/arm64/mm/fault.c
++++ b/arch/arm64/mm/fault.c
+@@ -610,6 +610,9 @@ static int __kprobes do_translation_faul
+ static int do_alignment_fault(unsigned long addr, unsigned int esr,
+ struct pt_regs *regs)
+ {
++ if (IS_ENABLED(CONFIG_COMPAT_ALIGNMENT_FIXUPS) &&
++ compat_user_mode(regs))
++ return do_compat_alignment_fixup(addr, regs);
+ do_bad_area(addr, esr, regs);
+ return 0;
+ }
diff --git a/debian/patches/features/arm64/arm64-dts-raspberry-Add-support-for-the-CM4.patch b/debian/patches/features/arm64/arm64-dts-raspberry-Add-support-for-the-CM4.patch
new file mode 100644
index 000000000..8619cfcdd
--- /dev/null
+++ b/debian/patches/features/arm64/arm64-dts-raspberry-Add-support-for-the-CM4.patch
@@ -0,0 +1,423 @@
+From: Cyril Brulebois <cyril@debamax.com>
+Date: Mon, 03 Jan 2022 21:59:36 +0100
+Subject: arm64: dts: Add support for Raspberry Pi Compute Module 4 IO Board
+
+It was introduced in mainline during the v5.16 release cycle. Since
+many broadcom includes were reworked since v5.10, adding support would
+involve more than cherry-picking a DTS addition that uses a few
+includes.
+
+To avoid side effects on other models, introduce a DTS that leverages
+some existing includes (bcm2711.dtsi and bcm283x-rpi-usb-host.dtsi)
+and describes the rest without re-using parts of the Raspberry Pi 4 B
+model.
+
+To avoid phandle rotation (0x16, 0x17, and 0x18) across 3 nodes
+(dma@7e007000, i2c@7e205000, and interrupt-controller@7ef00100), and the
+related changes in other nodes referencing them, hardcode 0x16 as the
+phandle for interrupt-controller@7ef00100. This leads to an empty dtdiff
+between this new DTB and the one produced by a v5.16-rc8 build.
+
+Authored-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
+Reviewed-by: Cyril Brulebois <cyril@debamax.com>
+
+--- a/arch/arm64/boot/dts/broadcom/Makefile
++++ b/arch/arm64/boot/dts/broadcom/Makefile
+@@ -1,5 +1,6 @@
+ # SPDX-License-Identifier: GPL-2.0
+ dtb-$(CONFIG_ARCH_BCM2835) += bcm2711-rpi-4-b.dtb \
++ bcm2711-rpi-cm4-io.dtb \
+ bcm2837-rpi-3-a-plus.dtb \
+ bcm2837-rpi-3-b.dtb \
+ bcm2837-rpi-3-b-plus.dtb \
+--- /dev/null
++++ b/arch/arm64/boot/dts/broadcom/bcm2711-rpi-cm4-io.dts
+@@ -0,0 +1,2 @@
++// SPDX-License-Identifier: GPL-2.0
++#include "arm/bcm2711-rpi-cm4-io.dts"
+--- a/arch/arm/boot/dts/Makefile
++++ b/arch/arm/boot/dts/Makefile
+@@ -93,6 +93,7 @@ dtb-$(CONFIG_ARCH_BCM2835) += \
+ bcm2837-rpi-3-b-plus.dtb \
+ bcm2837-rpi-cm3-io3.dtb \
+ bcm2711-rpi-4-b.dtb \
++ bcm2711-rpi-cm4-io.dtb \
+ bcm2835-rpi-zero.dtb \
+ bcm2835-rpi-zero-w.dtb
+ dtb-$(CONFIG_ARCH_BCM_5301X) += \
+--- /dev/null
++++ b/arch/arm/boot/dts/bcm2711-rpi-cm4-io.dts
+@@ -0,0 +1,373 @@
++/dts-v1/;
++
++#include "bcm2711.dtsi"
++#include "bcm283x-rpi-usb-host.dtsi"
++
++/ {
++ model = "Raspberry Pi Compute Module 4 IO Board";
++ compatible = "raspberrypi,4-compute-module\0brcm,bcm2711";
++
++ aliases {
++ emmc2bus = "/emmc2bus";
++ ethernet0 = "/scb/ethernet@7d580000";
++ pcie0 = "/scb/pcie@7d500000";
++ blconfig = &blconfig;
++ };
++
++ chosen {
++ stdout-path = "serial1:115200n8";
++ };
++
++ leds {
++ compatible = "gpio-leds";
++
++ led-act {
++ label = "ACT";
++ default-state = "keep";
++ linux,default-trigger = "heartbeat";
++ gpios = <&gpio 42 GPIO_ACTIVE_HIGH>;
++ };
++
++ led-pwr {
++ label = "PWR";
++ gpios = <&expgpio 2 GPIO_ACTIVE_LOW>;
++ default-state = "keep";
++ linux,default-trigger = "default-on";
++ };
++ };
++
++ soc {
++ aon_intr: interrupt-controller@7ef00100 {
++ compatible = "brcm,bcm2711-l2-intc", "brcm,l2-intc";
++ reg = <0x7ef00100 0x30>;
++ phandle = <0x16>;
++ interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>;
++ interrupt-controller;
++ #interrupt-cells = <1>;
++ };
++
++ firmware: firmware {
++ compatible = "raspberrypi,bcm2835-firmware\0simple-mfd";
++ #address-cells = <0x01>;
++ #size-cells = <0x01>;
++ mboxes = <&mailbox>;
++ dma-ranges;
++
++ firmware_clocks: clocks {
++ compatible = "raspberrypi,firmware-clocks";
++ #clock-cells = <0x01>;
++ };
++
++ expgpio: gpio {
++ compatible = "raspberrypi,firmware-gpio";
++ gpio-controller;
++ #gpio-cells = <2>;
++ status = "okay";
++ gpio-line-names = "BT_ON", "WL_ON", "PWR_LED_OFF", "ANT1", "VDD_SD_IO_SEL", "CAM_GPIO", "SD_PWR_ON", "ANT2";
++ ant1-hog {
++ gpio-hog;
++ gpios = <0x03 0x00>;
++ output-high;
++ line-name = "ant1";
++ };
++
++ ant2-hog {
++ gpio-hog;
++ gpios = <0x07 0x00>;
++ output-low;
++ line-name = "ant2";
++ };
++ };
++
++ reset {
++ compatible = "raspberrypi,firmware-reset";
++ #reset-cells = <1>;
++ };
++ };
++
++ power: power {
++ compatible = "raspberrypi,bcm2835-power";
++ firmware = <&firmware>;
++ #power-domain-cells = <1>;
++ };
++
++ mailbox@7e00b840 {
++ compatible = "brcm,bcm2835-vchiq";
++ reg = <0x7e00b840 0x3c>;
++ interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
++ };
++
++ vec@7ec13000 {
++ compatible = "brcm,bcm2711-vec";
++ reg = <0x7ec13000 0x1000>;
++ clocks = <&clocks BCM2835_CLOCK_VEC>;
++ interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>;
++ status = "disabled";
++ power-domains = <&power /* RPI_POWER_DOMAIN_VEC = */ 7>;
++ };
++ };
++
++ memory@0 {
++ device_type = "memory";
++ reg = <0x00 0x00 0x00>;
++ };
++
++ wifi_pwrseq: wifi-pwrseq {
++ compatible = "mmc-pwrseq-simple";
++ reset-gpios = <&expgpio 0x01 0x01>;
++ };
++
++ sd_io_1v8_reg: sd_io_1v8_reg {
++ compatible = "regulator-gpio";
++ regulator-name = "vdd-sd-io";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-boot-on;
++ regulator-always-on;
++ regulator-settling-time-us = <5000>;
++ gpios = <&expgpio 0x04 GPIO_ACTIVE_HIGH>;
++ states = <1800000 0x1>,
++ <3300000 0x0>;
++ status = "okay";
++ };
++
++ sd_vcc_reg: sd_vcc_reg {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc-sd";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-boot-on;
++ enable-active-high;
++ gpio = <&expgpio 6 GPIO_ACTIVE_HIGH>;
++ };
++};
++
++&ddc0 {
++ status = "okay";
++};
++
++&ddc1 {
++ status = "okay";
++};
++
++&dsi0 {
++ power-domains = <&power 17>;
++};
++
++&dsi1 {
++ compatible = "brcm,bcm2711-dsi1";
++ power-domains = <&power 18>;
++};
++
++&emmc2 {
++ status = "okay";
++ bus-width = <8>;
++ vqmmc-supply = <&sd_io_1v8_reg>;
++ vmmc-supply = <&sd_vcc_reg>;
++ broken-cd;
++ mmc-hs200-1_8v;
++};
++
++&gpio {
++ pinctrl-names = "default";
++ /*
++ * Parts taken from rpi_SCH_4b_4p0_reduced.pdf and
++ * the official GPU firmware DT blob.
++ *
++ * Legend:
++ * "FOO" = GPIO line named "FOO" on the schematic
++ * "FOO_N" = GPIO line named "FOO" on schematic, active low
++ */
++ gpio-line-names = "ID_SDA",
++ "ID_SCL",
++ "SDA1",
++ "SCL1",
++ "GPIO_GCLK",
++ "GPIO5",
++ "GPIO6",
++ "SPI_CE1_N",
++ "SPI_CE0_N",
++ "SPI_MISO",
++ "SPI_MOSI",
++ "SPI_SCLK",
++ "GPIO12",
++ "GPIO13",
++ /* Serial port */
++ "TXD1",
++ "RXD1",
++ "GPIO16",
++ "GPIO17",
++ "GPIO18",
++ "GPIO19",
++ "GPIO20",
++ "GPIO21",
++ "GPIO22",
++ "GPIO23",
++ "GPIO24",
++ "GPIO25",
++ "GPIO26",
++ "GPIO27",
++ "RGMII_MDIO",
++ "RGMIO_MDC",
++ /* Used by BT module */
++ "CTS0",
++ "RTS0",
++ "TXD0",
++ "RXD0",
++ /* Used by Wifi */
++ "SD1_CLK",
++ "SD1_CMD",
++ "SD1_DATA0",
++ "SD1_DATA1",
++ "SD1_DATA2",
++ "SD1_DATA3",
++ /* Shared with SPI flash */
++ "PWM0_MISO",
++ "PWM1_MOSI",
++ "STATUS_LED_G_CLK",
++ "SPIFLASH_CE_N",
++ "SDA0",
++ "SCL0",
++ "RGMII_RXCLK",
++ "RGMII_RXCTL",
++ "RGMII_RXD0",
++ "RGMII_RXD1",
++ "RGMII_RXD2",
++ "RGMII_RXD3",
++ "RGMII_TXCLK",
++ "RGMII_TXCTL",
++ "RGMII_TXD0",
++ "RGMII_TXD1",
++ "RGMII_TXD2",
++ "RGMII_TXD3";
++
++ gpioout {
++ brcm,pins = <0x06>;
++ brcm,function = <0x01>;
++ };
++
++ alt0 {
++ brcm,pins = <0x04 0x05 0x07 0x08 0x09 0x0a 0x0b>;
++ brcm,function = <0x04>;
++ };
++};
++
++&hdmi0 {
++ status = "okay";
++ interrupt-parent = <&aon_intr>;
++ interrupts = <0>, <1>, <2>, <3>, <4>, <5>;
++ interrupt-names = "cec-tx", "cec-rx", "cec-low", "wakeup", "hpd-connected", "hpd-removed";
++ clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 0>, <&clk_27MHz>;
++ wifi-2.4ghz-coexistence;
++};
++
++&hdmi1 {
++ status = "okay";
++ interrupt-parent = <&aon_intr>;
++ interrupts = <8>, <7>, <6>, <9>, <10>, <11>;
++ interrupt-names = "cec-tx", "cec-rx", "cec-low", "wakeup", "hpd-connected", "hpd-removed";
++ clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 1>, <&clk_27MHz>;
++ wifi-2.4ghz-coexistence;
++};
++
++&hvs {
++ clocks = <&firmware_clocks 4>;
++};
++
++&i2c0 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c0_gpio0>;
++ clock-frequency = <100000>;
++};
++
++&i2c1 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&i2c1_gpio2>;
++ clock-frequency = <100000>;
++};
++
++&genet {
++ status = "okay";
++ phy-handle = <&ethphy0>;
++ phy-mode = "rgmii-rxid";
++};
++
++&genet_mdio {
++ ethphy0: ethernet-phy@0 {
++ reg = <0>;
++ };
++};
++
++&pixelvalve0 {
++ status = "okay";
++};
++
++&pixelvalve1 {
++ status = "okay";
++};
++
++&pixelvalve2 {
++ status = "okay";
++};
++
++&pixelvalve4 {
++ status = "okay";
++};
++
++&rmem {
++ blconfig: nvram@0 {
++ compatible = "raspberrypi,bootloader-config", "nvmem-rmem";
++ #address-cells = <0x01>;
++ #size-cells = <0x01>;
++ reg = <0x00 0x00 0x00>;
++ no-map;
++ status = "disabled";
++ };
++};
++
++&sdhci {
++ status = "okay";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&emmc_gpio34>;
++ bus-width = <4>;
++ non-removable;
++ mmc-pwrseq = <&wifi_pwrseq>;
++
++ wifi@1 {
++ reg = <0x01>;
++ compatible = "brcm,bcm4329-fmac";
++ };
++};
++
++&uart0 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart0_ctsrts_gpio30 &uart0_gpio32>;
++ uart-has-rtscts;
++
++ bluetooth {
++ compatible = "brcm,bcm43438-bt";
++ max-speed = <0x1e8480>;
++ shutdown-gpios = <&expgpio 0x00 0x00>;
++ };
++};
++
++&uart1 {
++ status = "okay";
++ pinctrl-names = "default";
++ pinctrl-0 = <&uart1_gpio14>;
++};
++
++&usb {
++ power-domains = <&power 6>;
++};
++
++&vc4 {
++ status = "okay";
++};
++
++/delete-node/ &vec;
diff --git a/debian/patches/features/arm64/arm64-dts-rockchip-Add-basic-support-for-Kobol-s-Hel.patch b/debian/patches/features/arm64/arm64-dts-rockchip-Add-basic-support-for-Kobol-s-Hel.patch
new file mode 100644
index 000000000..deeed7034
--- /dev/null
+++ b/debian/patches/features/arm64/arm64-dts-rockchip-Add-basic-support-for-Kobol-s-Hel.patch
@@ -0,0 +1,419 @@
+From: Uwe Kleine-König <uwe@kleine-koenig.org>
+Date: Wed, 14 Oct 2020 22:00:30 +0200
+Subject: arm64: dts: rockchip: Add basic support for Kobol's Helios64
+Origin: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/patch/?id=09e006cfb43e8ec38afe28278b210dab72e6cac8
+
+The hardware is described in detail on Kobol's wiki at
+https://wiki.kobol.io/helios64/intro/.
+
+Up to now the following peripherals are working:
+
+ - UART
+ - Micro-SD card
+ - eMMC
+ - ethernet port 1
+ - status LED
+ - temperature sensor on i2c bus 2
+
+Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org>
+Link: https://lore.kernel.org/r/20201014200030.845759-3-uwe@kleine-koenig.org
+Signed-off-by: Heiko Stuebner <heiko@sntech.de>
+---
+ arch/arm64/boot/dts/rockchip/Makefile | 1 +
+ .../dts/rockchip/rk3399-kobol-helios64.dts | 372 ++++++++++++++++++
+ 2 files changed, 373 insertions(+)
+ create mode 100644 arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+
+diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
+index 26661c7b736b..28b26a874313 100644
+--- a/arch/arm64/boot/dts/rockchip/Makefile
++++ b/arch/arm64/boot/dts/rockchip/Makefile
+@@ -26,6 +26,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-hugsun-x99.dtb
+ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-khadas-edge.dtb
+ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-khadas-edge-captain.dtb
+ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-khadas-edge-v.dtb
++dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-kobol-helios64.dtb
+ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-leez-p710.dtb
+ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopc-t4.dtb
+ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopi-m4.dtb
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+new file mode 100644
+index 000000000000..2a561be724b2
+--- /dev/null
++++ b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+@@ -0,0 +1,372 @@
++// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
++/*
++ * Copyright (c) 2020 Aditya Prayoga <aditya@kobol.io>
++ */
++
++/*
++ * The Kobol Helios64 is a board designed to operate as a NAS and optionally
++ * ships with an enclosing that can host five 2.5" hard disks.
++ *
++ * See https://wiki.kobol.io/helios64/intro/ for further details.
++ */
++
++/dts-v1/;
++#include "rk3399.dtsi"
++#include "rk3399-opp.dtsi"
++
++/ {
++ model = "Kobol Helios64";
++ compatible = "kobol,helios64", "rockchip,rk3399";
++
++ avdd_1v8_s0: avdd-1v8-s0 {
++ compatible = "regulator-fixed";
++ regulator-name = "avdd_1v8_s0";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ vin-supply = <&vcc3v3_sys_s3>;
++ };
++
++ clkin_gmac: external-gmac-clock {
++ compatible = "fixed-clock";
++ clock-frequency = <125000000>;
++ clock-output-names = "clkin_gmac";
++ #clock-cells = <0>;
++ };
++
++ leds {
++ compatible = "gpio-leds";
++ pinctrl-names = "default";
++ pinctrl-0 = <&sys_grn_led_on &sys_red_led_on>;
++
++ led-0 {
++ label = "helios64:green:status";
++ gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
++ default-state = "on";
++ };
++
++ led-1 {
++ label = "helios64:red:fault";
++ gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>;
++ default-state = "keep";
++ };
++ };
++
++ vcc1v8_sys_s0: vcc1v8-sys-s0 {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc1v8_sys_s0";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ vin-supply = <&vcc1v8_sys_s3>;
++ };
++
++ vcc3v0_sd: vcc3v0-sd {
++ compatible = "regulator-fixed";
++ enable-active-high;
++ gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>;
++ regulator-name = "vcc3v0_sd";
++ regulator-boot-on;
++ regulator-min-microvolt = <3000000>;
++ regulator-max-microvolt = <3000000>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&sdmmc0_pwr_h>;
++ vin-supply = <&vcc3v3_sys_s3>;
++ };
++
++ vcc3v3_sys_s3: vcc_lan: vcc3v3-sys-s3 {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc3v3_sys_s3";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ vin-supply = <&vcc5v0_sys>;
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ };
++ };
++
++ vcc5v0_sys: vcc5v0-sys {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc5v0_sys";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ vin-supply = <&vcc12v_dcin_bkup>;
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ };
++ };
++
++ vcc12v_dcin: vcc12v-dcin {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc12v_dcin";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <12000000>;
++ regulator-max-microvolt = <12000000>;
++ };
++
++ vcc12v_dcin_bkup: vcc12v-dcin-bkup {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc12v_dcin_bkup";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <12000000>;
++ regulator-max-microvolt = <12000000>;
++ vin-supply = <&vcc12v_dcin>;
++ };
++};
++
++/*
++ * The system doesn't run stable with cpu freq enabled, so disallow the lower
++ * frequencies until this problem is properly understood and resolved.
++ */
++&cluster0_opp {
++ /delete-node/ opp00;
++ /delete-node/ opp01;
++ /delete-node/ opp02;
++ /delete-node/ opp03;
++ /delete-node/ opp04;
++};
++
++&cluster1_opp {
++ /delete-node/ opp00;
++ /delete-node/ opp01;
++ /delete-node/ opp02;
++ /delete-node/ opp03;
++ /delete-node/ opp04;
++ /delete-node/ opp05;
++ /delete-node/ opp06;
++};
++
++&cpu_b0 {
++ cpu-supply = <&vdd_cpu_b>;
++};
++
++&cpu_b1 {
++ cpu-supply = <&vdd_cpu_b>;
++};
++
++&cpu_l0 {
++ cpu-supply = <&vdd_cpu_l>;
++};
++
++&cpu_l1 {
++ cpu-supply = <&vdd_cpu_l>;
++};
++
++&cpu_l2 {
++ cpu-supply = <&vdd_cpu_l>;
++};
++
++&cpu_l3 {
++ cpu-supply = <&vdd_cpu_l>;
++};
++
++&emmc_phy {
++ status = "okay";
++};
++
++&gmac {
++ assigned-clock-parents = <&clkin_gmac>;
++ assigned-clocks = <&cru SCLK_RMII_SRC>;
++ clock_in_out = "input";
++ phy-mode = "rgmii";
++ phy-supply = <&vcc_lan>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&rgmii_pins &gphy_reset>;
++ rx_delay = <0x20>;
++ tx_delay = <0x28>;
++ snps,reset-active-low;
++ snps,reset-delays-us = <0 10000 50000>;
++ snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
++ status = "okay";
++};
++
++&i2c0 {
++ clock-frequency = <400000>;
++ i2c-scl-rising-time-ns = <168>;
++ i2c-scl-falling-time-ns = <4>;
++ status = "okay";
++
++ rk808: pmic@1b {
++ compatible = "rockchip,rk808";
++ reg = <0x1b>;
++ interrupt-parent = <&gpio0>;
++ interrupts = <10 IRQ_TYPE_LEVEL_LOW>;
++ clock-output-names = "xin32k", "rk808-clkout2";
++ pinctrl-names = "default";
++ pinctrl-0 = <&pmic_int_l>;
++ vcc1-supply = <&vcc5v0_sys>;
++ vcc2-supply = <&vcc5v0_sys>;
++ vcc3-supply = <&vcc5v0_sys>;
++ vcc4-supply = <&vcc5v0_sys>;
++ vcc6-supply = <&vcc5v0_sys>;
++ vcc7-supply = <&vcc5v0_sys>;
++ vcc8-supply = <&vcc3v3_sys_s3>;
++ vcc9-supply = <&vcc5v0_sys>;
++ vcc10-supply = <&vcc5v0_sys>;
++ vcc11-supply = <&vcc5v0_sys>;
++ vcc12-supply = <&vcc3v3_sys_s3>;
++ vddio-supply = <&vcc3v0_s3>;
++ wakeup-source;
++ #clock-cells = <1>;
++
++ regulators {
++ vdd_cpu_l: DCDC_REG2 {
++ regulator-name = "vdd_cpu_l";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <750000>;
++ regulator-max-microvolt = <1350000>;
++ regulator-ramp-delay = <6001>;
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++
++ vcc1v8_sys_s3: DCDC_REG4 {
++ regulator-name = "vcc1v8_sys_s3";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ regulator-suspend-microvolt = <1800000>;
++ };
++ };
++
++ vcc_sdio_s0: LDO_REG4 {
++ regulator-name = "vcc_sdio_s0";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <3000000>;
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ regulator-suspend-microvolt = <3000000>;
++ };
++ };
++
++ vcc3v0_s3: LDO_REG8 {
++ regulator-name = "vcc3v0_s3";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <3000000>;
++ regulator-max-microvolt = <3000000>;
++
++ regulator-state-mem {
++ regulator-on-in-suspend;
++ regulator-suspend-microvolt = <3000000>;
++ };
++ };
++ };
++ };
++
++ vdd_cpu_b: regulator@40 {
++ compatible = "silergy,syr827";
++ reg = <0x40>;
++ fcs,suspend-voltage-selector = <1>;
++ regulator-name = "vdd_cpu_b";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <712500>;
++ regulator-max-microvolt = <1500000>;
++ regulator-ramp-delay = <1000>;
++ vin-supply = <&vcc5v0_sys>;
++
++ regulator-state-mem {
++ regulator-off-in-suspend;
++ };
++ };
++};
++
++&i2c2 {
++ clock-frequency = <400000>;
++ i2c-scl-rising-time-ns = <160>;
++ i2c-scl-falling-time-ns = <30>;
++ status = "okay";
++
++ temp@4c {
++ compatible = "national,lm75";
++ reg = <0x4c>;
++ };
++};
++
++&io_domains {
++ audio-supply = <&vcc1v8_sys_s0>;
++ bt656-supply = <&vcc1v8_sys_s0>;
++ gpio1830-supply = <&vcc3v0_s3>;
++ sdmmc-supply = <&vcc_sdio_s0>;
++ status = "okay";
++};
++
++&pinctrl {
++ gmac {
++ gphy_reset: gphy-reset {
++ rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_output_low>;
++ };
++ };
++
++ leds {
++ sys_grn_led_on: sys-grn-led-on {
++ rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_down>;
++ };
++
++ sys_red_led_on: sys-red-led-on {
++ rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_down>;
++ };
++ };
++
++ pmic {
++ pmic_int_l: pmic-int-l {
++ rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
++ };
++ };
++
++ vcc3v0-sd {
++ sdmmc0_pwr_h: sdmmc0-pwr-h {
++ rockchip,pins = <0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>;
++ };
++ };
++};
++
++&pmu_io_domains {
++ pmu1830-supply = <&vcc3v0_s3>;
++ status = "okay";
++};
++
++&sdhci {
++ bus-width = <8>;
++ mmc-hs200-1_8v;
++ non-removable;
++ vqmmc-supply = <&vcc1v8_sys_s0>;
++ status = "okay";
++};
++
++&sdmmc {
++ bus-width = <4>;
++ cap-sd-highspeed;
++ cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
++ disable-wp;
++ pinctrl-names = "default";
++ pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
++ vmmc-supply = <&vcc3v0_sd>;
++ vqmmc-supply = <&vcc_sdio_s0>;
++ status = "okay";
++};
++
++&uart2 {
++ status = "okay";
++};
+--
+2.28.0
+
diff --git a/debian/patches/features/arm64/arm64-dts-rockchip-Add-support-for-PCIe-on-helios64.patch b/debian/patches/features/arm64/arm64-dts-rockchip-Add-support-for-PCIe-on-helios64.patch
new file mode 100644
index 000000000..6abebd080
--- /dev/null
+++ b/debian/patches/features/arm64/arm64-dts-rockchip-Add-support-for-PCIe-on-helios64.patch
@@ -0,0 +1,113 @@
+From: Uwe Kleine-König <uwe@kleine-koenig.org>
+Date: Mon, 10 May 2021 11:09:32 +0200
+Subject: arm64: dts: rockchip: Add support for PCIe on helios64
+Origin: https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip.git/patch/?id=5a65adfa2ad1542f856fc7de3999d51f3a35d2e2
+
+This is enough to make the SATA controller visible:
+
+# lspci
+00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd RK3399 PCI Express Root Port
+01:00.0 SATA controller: JMicron Technology Corp. JMB58x AHCI SATA controller
+
+Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org>
+Link: https://lore.kernel.org/r/20210510090932.970447-1-uwe@kleine-koenig.org
+Signed-off-by: Heiko Stuebner <heiko@sntech.de>
+---
+ .../dts/rockchip/rk3399-kobol-helios64.dts | 53 +++++++++++++++++++
+ 1 file changed, 53 insertions(+)
+
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+index 9d4a0885fd12..037dc5cdc3f3 100644
+--- a/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
++++ b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+@@ -23,6 +23,16 @@ aliases {
+ mmc1 = &sdhci;
+ };
+
++ avdd_0v9_s0: avdd-0v9-s0 {
++ compatible = "regulator-fixed";
++ regulator-name = "avdd_0v9_s0";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <900000>;
++ regulator-max-microvolt = <900000>;
++ vin-supply = <&vcc1v8_sys_s3>;
++ };
++
+ avdd_1v8_s0: avdd-1v8-s0 {
+ compatible = "regulator-fixed";
+ regulator-name = "avdd_1v8_s0";
+@@ -72,6 +82,18 @@ led-1 {
+ };
+ };
+
++ pcie_power: pcie-power {
++ compatible = "regulator-fixed";
++ enable-active-high;
++ gpio = <&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>;
++ pinctrl-0 = <&pcie_pwr>;
++ pinctrl-names = "default";
++ regulator-boot-on;
++ regulator-name = "pcie_power";
++ startup-delay-us = <10000>;
++ vin-supply = <&vcc5v0_perdev>;
++ };
++
+ vcc1v8_sys_s0: vcc1v8-sys-s0 {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc1v8_sys_s0";
+@@ -109,6 +131,16 @@ regulator-state-mem {
+ };
+ };
+
++ vcc5v0_perdev: vcc5v0-perdev {
++ compatible = "regulator-fixed";
++ regulator-name = "vcc5v0_perdev";
++ regulator-always-on;
++ regulator-boot-on;
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ vin-supply = <&vcc12v_dcin_bkup>;
++ };
++
+ vcc5v0_sys: vcc5v0-sys {
+ compatible = "regulator-fixed";
+ regulator-name = "vcc5v0_sys";
+@@ -331,6 +363,20 @@ &io_domains {
+ status = "okay";
+ };
+
++&pcie_phy {
++ status = "okay";
++};
++
++&pcie0 {
++ num-lanes = <2>;
++ status = "okay";
++
++ vpcie12v-supply = <&vcc12v_dcin>;
++ vpcie3v3-supply = <&pcie_power>;
++ vpcie1v8-supply = <&avdd_1v8_s0>;
++ vpcie0v9-supply = <&avdd_0v9_s0>;
++};
++
+ &pinctrl {
+ gmac {
+ gphy_reset: gphy-reset {
+@@ -348,6 +394,13 @@ sys_red_led_on: sys-red-led-on {
+ };
+ };
+
++ pcie {
++ pcie_pwr: pcie-pwr {
++ rockchip,pins =
++ <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_none>;
++ };
++ };
++
+ pmic {
+ pmic_int_l: pmic-int-l {
+ rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
+--
+2.30.2
+
diff --git a/debian/patches/features/arm64/arm64-dts-rockchip-Add-support-for-two-PWM-fans-on-h.patch b/debian/patches/features/arm64/arm64-dts-rockchip-Add-support-for-two-PWM-fans-on-h.patch
new file mode 100644
index 000000000..9755e0b8c
--- /dev/null
+++ b/debian/patches/features/arm64/arm64-dts-rockchip-Add-support-for-two-PWM-fans-on-h.patch
@@ -0,0 +1,61 @@
+From: Uwe Kleine-König <uwe@kleine-koenig.org>
+Date: Mon, 10 May 2021 11:06:07 +0200
+Subject: arm64: dts: rockchip: Add support for two PWM fans on
+ helios64
+Origin: https://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip.git/patch/?id=271b66414df0b172c936b3cfd1894b7939f84165
+
+On the helios64 board the two connectors P6 and P7 are supposed to
+power two fans. Add the corresponding pwm-fan devices.
+
+Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org>
+Link: https://lore.kernel.org/r/20210510090607.970145-1-uwe@kleine-koenig.org
+Signed-off-by: Heiko Stuebner <heiko@sntech.de>
+---
+ .../dts/rockchip/rk3399-kobol-helios64.dts | 24 +++++++++++++++++++
+ 1 file changed, 24 insertions(+)
+
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+index 19485b552bc4..9d4a0885fd12 100644
+--- a/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
++++ b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+@@ -40,6 +40,20 @@ clkin_gmac: external-gmac-clock {
+ #clock-cells = <0>;
+ };
+
++ fan1 {
++ /* fan connected to P7 */
++ compatible = "pwm-fan";
++ pwms = <&pwm0 0 40000 0>;
++ cooling-levels = <0 80 170 255>;
++ };
++
++ fan2 {
++ /* fan connected to P6 */
++ compatible = "pwm-fan";
++ pwms = <&pwm1 0 40000 0>;
++ cooling-levels = <0 80 170 255>;
++ };
++
+ leds {
+ compatible = "gpio-leds";
+ pinctrl-names = "default";
+@@ -352,6 +366,16 @@ &pmu_io_domains {
+ status = "okay";
+ };
+
++&pwm0 {
++ /* pwm-fan on P7 */
++ status = "okay";
++};
++
++&pwm1 {
++ /* pwm-fan on P6 */
++ status = "okay";
++};
++
+ &sdhci {
+ bus-width = <8>;
+ mmc-hs200-1_8v;
+--
+2.30.2
+
diff --git a/debian/patches/features/arm64/arm64-dts-rockchip-Rely-on-SoC-external-pull-up-on-p.patch b/debian/patches/features/arm64/arm64-dts-rockchip-Rely-on-SoC-external-pull-up-on-p.patch
new file mode 100644
index 000000000..ef6dab336
--- /dev/null
+++ b/debian/patches/features/arm64/arm64-dts-rockchip-Rely-on-SoC-external-pull-up-on-p.patch
@@ -0,0 +1,32 @@
+From: Uwe Kleine-König <uwe@kleine-koenig.org>
+Date: Sun, 24 Jan 2021 22:03:28 +0100
+Subject: arm64: dts: rockchip: Rely on SoC external pull up on pmic-int-l on Helios64
+Origin: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/patch/?id=1e58ba111421375c5948c3e8145bdd84b06ac095
+
+According to the schematic there is an external pull up, so there is no
+need to enable the internal one additionally. Using no pull up matches
+the vendor device tree.
+
+Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org>
+Link: https://lore.kernel.org/r/20210124210328.611707-2-uwe@kleine-koenig.org
+Signed-off-by: Heiko Stuebner <heiko@sntech.de>
+---
+ arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+index 2a561be724b2..66c725a34220 100644
+--- a/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
++++ b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+@@ -331,7 +331,7 @@ sys_red_led_on: sys-red-led-on {
+
+ pmic {
+ pmic_int_l: pmic-int-l {
+- rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
++ rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
+ };
+ };
+
+--
+2.30.2
+
diff --git a/debian/patches/features/arm64/arm64-dts-rockchip-kobol-helios64-Add-mmc-aliases.patch b/debian/patches/features/arm64/arm64-dts-rockchip-kobol-helios64-Add-mmc-aliases.patch
new file mode 100644
index 000000000..ad4b53de9
--- /dev/null
+++ b/debian/patches/features/arm64/arm64-dts-rockchip-kobol-helios64-Add-mmc-aliases.patch
@@ -0,0 +1,30 @@
+From: Uwe Kleine-König <ukleinek@debian.org>
+Date: Wed, 29 Mar 2021 09:45:58 +0100
+Subject: arm64: dts: rockchip: kobol-helios64: Add mmc aliases
+
+This patch is part of commit 5dcbe7e3862d ("arm64: dts: rockchip: move mmc
+aliases to board dts on rk3399") upstream. It is applied here only for Kobol's
+helios64 to simplify conflict resolution for some further patches. It currently
+is a noop as the same aliases already exist in rk3399.dtsi.
+
+Link: https://lore.kernel.org/r/20210324122235.1059292-7-heiko@sntech.de
+---
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+index 66c725a34220..19485b552bc4 100644
+--- a/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
++++ b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
+@@ -18,6 +18,11 @@ / {
+ model = "Kobol Helios64";
+ compatible = "kobol,helios64", "rockchip,rk3399";
+
++ aliases {
++ mmc0 = &sdmmc;
++ mmc1 = &sdhci;
++ };
++
+ avdd_1v8_s0: avdd-1v8-s0 {
+ compatible = "regulator-fixed";
+ regulator-name = "avdd_1v8_s0";
+--
+2.30.2
+
diff --git a/debian/patches/features/x86/intel-iommu-add-kconfig-option-to-exclude-igpu-by-default.patch b/debian/patches/features/x86/intel-iommu-add-kconfig-option-to-exclude-igpu-by-default.patch
new file mode 100644
index 000000000..1840fc4bd
--- /dev/null
+++ b/debian/patches/features/x86/intel-iommu-add-kconfig-option-to-exclude-igpu-by-default.patch
@@ -0,0 +1,85 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Wed, 21 Aug 2019 00:32:16 +0100
+Subject: intel-iommu: Add Kconfig option to exclude iGPU by default
+Bug-Debian: https://bugs.debian.org/935270
+Bug-Kali: https://bugs.kali.org/view.php?id=5644
+
+There is still laptop firmware that touches the integrated GPU behind
+the operating system's back, and doesn't say so in the RMRR table.
+Enabling the IOMMU for all devices causes breakage.
+
+Replace CONFIG_INTEL_IOMMU_DEFAULT_ON with a 3-way choice
+corresponding to "on", "off", and "on,intgpu_off".
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+--- a/drivers/iommu/intel/Kconfig
++++ b/drivers/iommu/intel/Kconfig
+@@ -45,14 +45,28 @@ config INTEL_IOMMU_SVM
+ to access DMA resources through process address space by
+ means of a Process Address Space ID (PASID).
+
+-config INTEL_IOMMU_DEFAULT_ON
+- def_bool y
+- prompt "Enable Intel DMA Remapping Devices by default"
+- depends on INTEL_IOMMU
++if INTEL_IOMMU
++
++choice
++ prompt "Default state of Intel DMA Remapping Devices"
++ default INTEL_IOMMU_DEFAULT_ON
+ help
+- Selecting this option will enable a DMAR device at boot time if
+- one is found. If this option is not selected, DMAR support can
+- be enabled by passing intel_iommu=on to the kernel.
++ Choose whether Intel DMA Remapping Devices should be enabled
++ by default. This can be overridden at boot time using the
++ intel_iommu= kernel parameter.
++
++config INTEL_IOMMU_DEFAULT_ON
++ bool "Enable"
++
++config INTEL_IOMMU_DEFAULT_ON_INTGPU_OFF
++ bool "Enable, excluding integrated GPU"
++
++config INTEL_IOMMU_DEFAULT_OFF
++ bool "Disable"
++
++endchoice
++
++endif
+
+ config INTEL_IOMMU_BROKEN_GFX_WA
+ bool "Workaround broken graphics drivers (going away soon)"
+--- a/drivers/iommu/intel/iommu.c
++++ b/drivers/iommu/intel/iommu.c
+@@ -338,11 +338,7 @@ static int intel_iommu_attach_device(str
+ static phys_addr_t intel_iommu_iova_to_phys(struct iommu_domain *domain,
+ dma_addr_t iova);
+
+-#ifdef CONFIG_INTEL_IOMMU_DEFAULT_ON
+-int dmar_disabled = 0;
+-#else
+-int dmar_disabled = 1;
+-#endif /* CONFIG_INTEL_IOMMU_DEFAULT_ON */
++int dmar_disabled = IS_ENABLED(CONFIG_INTEL_IOMMU_DEFAULT_OFF);
+
+ #ifdef CONFIG_INTEL_IOMMU_SCALABLE_MODE_DEFAULT_ON
+ int intel_iommu_sm = 1;
+@@ -354,7 +350,7 @@ int intel_iommu_enabled = 0;
+ EXPORT_SYMBOL_GPL(intel_iommu_enabled);
+
+ static int dmar_map_gfx = 1;
+-static int dmar_map_intgpu = 1;
++static int dmar_map_intgpu = IS_ENABLED(CONFIG_INTEL_IOMMU_DEFAULT_ON);
+ static int dmar_forcedac;
+ static int intel_iommu_strict;
+ static int intel_iommu_superpage = 1;
+@@ -442,6 +438,7 @@ static int __init intel_iommu_setup(char
+ while (*str) {
+ if (!strncmp(str, "on", 2)) {
+ dmar_disabled = 0;
++ dmar_map_intgpu = 1;
+ pr_info("IOMMU enabled\n");
+ } else if (!strncmp(str, "off", 3)) {
+ dmar_disabled = 1;
diff --git a/debian/patches/features/x86/intel-iommu-add-option-to-exclude-integrated-gpu-only.patch b/debian/patches/features/x86/intel-iommu-add-option-to-exclude-integrated-gpu-only.patch
new file mode 100644
index 000000000..1717d8fe2
--- /dev/null
+++ b/debian/patches/features/x86/intel-iommu-add-option-to-exclude-integrated-gpu-only.patch
@@ -0,0 +1,91 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Wed, 21 Aug 2019 00:05:30 +0100
+Subject: intel-iommu: Add option to exclude integrated GPU only
+Bug-Debian: https://bugs.debian.org/935270
+Bug-Kali: https://bugs.kali.org/view.php?id=5644
+
+There is still laptop firmware that touches the integrated GPU behind
+the operating system's back, and doesn't say so in the RMRR table.
+Enabling the IOMMU for all devices causes breakage, but turning it off
+for all graphics devices seems like a major weakness.
+
+Add an option, intel_iommu=igpu_off, to exclude only integrated GPUs
+from remapping. This is a narrower exclusion than igfx_off: it only
+affects Intel devices on the root bus. Devices attached through an
+external port (Thunderbolt or ExpressCard) won't be on the root bus.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ Documentation/admin-guide/kernel-parameters.txt | 2 ++
+ drivers/iommu/intel/iommu.c | 14 ++++++++++++++
+ 2 files changed, 16 insertions(+)
+
+--- a/Documentation/admin-guide/kernel-parameters.txt
++++ b/Documentation/admin-guide/kernel-parameters.txt
+@@ -1837,6 +1837,8 @@
+ bypassed by not enabling DMAR with this option. In
+ this case, gfx device will use physical address for
+ DMA.
++ intgpu_off [Default Off]
++ Bypass the DMAR unit for an integrated GPU only.
+ forcedac [X86-64]
+ With this option iommu will not optimize to look
+ for io virtual address below 32-bit forcing dual
+--- a/drivers/iommu/intel/iommu.c
++++ b/drivers/iommu/intel/iommu.c
+@@ -54,6 +54,9 @@
+ #define CONTEXT_SIZE VTD_PAGE_SIZE
+
+ #define IS_GFX_DEVICE(pdev) ((pdev->class >> 16) == PCI_BASE_CLASS_DISPLAY)
++#define IS_INTGPU_DEVICE(pdev) (IS_GFX_DEVICE(pdev) && \
++ (pdev)->vendor == 0x8086 && \
++ pci_is_root_bus((pdev)->bus))
+ #define IS_USB_DEVICE(pdev) ((pdev->class >> 8) == PCI_CLASS_SERIAL_USB)
+ #define IS_ISA_DEVICE(pdev) ((pdev->class >> 8) == PCI_CLASS_BRIDGE_ISA)
+ #define IS_AZALIA(pdev) ((pdev)->vendor == 0x8086 && (pdev)->device == 0x3a3e)
+@@ -351,6 +354,7 @@ int intel_iommu_enabled = 0;
+ EXPORT_SYMBOL_GPL(intel_iommu_enabled);
+
+ static int dmar_map_gfx = 1;
++static int dmar_map_intgpu = 1;
+ static int dmar_forcedac;
+ static int intel_iommu_strict;
+ static int intel_iommu_superpage = 1;
+@@ -360,6 +364,7 @@ static int iommu_skip_te_disable;
+
+ #define IDENTMAP_GFX 2
+ #define IDENTMAP_AZALIA 4
++#define IDENTMAP_INTGPU 8
+
+ int intel_iommu_gfx_mapped;
+ EXPORT_SYMBOL_GPL(intel_iommu_gfx_mapped);
+@@ -445,6 +450,9 @@ static int __init intel_iommu_setup(char
+ } else if (!strncmp(str, "igfx_off", 8)) {
+ dmar_map_gfx = 0;
+ pr_info("Disable GFX device mapping\n");
++ } else if (!strncmp(str, "intgpu_off", 8)) {
++ dmar_map_intgpu = 0;
++ pr_info("Disable integrated GPU device mapping\n");
+ } else if (!strncmp(str, "forcedac", 8)) {
+ pr_info("Forcing DAC for PCI devices\n");
+ dmar_forcedac = 1;
+@@ -2890,6 +2898,9 @@ static int device_def_domain_type(struct
+
+ if ((iommu_identity_mapping & IDENTMAP_GFX) && IS_GFX_DEVICE(pdev))
+ return IOMMU_DOMAIN_IDENTITY;
++
++ if ((iommu_identity_mapping & IDENTMAP_INTGPU) && IS_INTGPU_DEVICE(pdev))
++ return IOMMU_DOMAIN_IDENTITY;
+ }
+
+ return 0;
+@@ -3325,6 +3336,9 @@ static int __init init_dmars(void)
+ if (!dmar_map_gfx)
+ iommu_identity_mapping |= IDENTMAP_GFX;
+
++ if (!dmar_map_intgpu)
++ iommu_identity_mapping |= IDENTMAP_INTGPU;
++
+ check_tylersburg_isoch();
+
+ ret = si_domain_init(hw_pass_through);
diff --git a/debian/patches/features/x86/x86-make-x32-syscall-support-conditional.patch b/debian/patches/features/x86/x86-make-x32-syscall-support-conditional.patch
new file mode 100644
index 000000000..62731a997
--- /dev/null
+++ b/debian/patches/features/x86/x86-make-x32-syscall-support-conditional.patch
@@ -0,0 +1,193 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 12 Feb 2018 23:59:26 +0000
+Subject: x86: Make x32 syscall support conditional on a kernel parameter
+Bug-Debian: https://bugs.debian.org/708070
+Forwarded: https://lore.kernel.org/lkml/1415245982.3398.53.camel@decadent.org.uk/T/#u
+
+Enabling x32 in the standard amd64 kernel would increase its attack
+surface while provide no benefit to the vast majority of its users.
+No-one seems interested in regularly checking for vulnerabilities
+specific to x32 (at least no-one with a white hat).
+
+Still, adding another flavour just to turn on x32 seems wasteful. And
+the only differences on syscall entry are a few instructions that mask
+out the x32 flag and compare the syscall number.
+
+Use a static key to control whether x32 syscalls are really enabled, a
+Kconfig parameter to set its default value and a kernel parameter
+"syscall.x32" to change it at boot time.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ .../admin-guide/kernel-parameters.txt | 4 ++
+ arch/x86/Kconfig | 8 ++++
+ arch/x86/entry/common.c | 3 +-
+ arch/x86/entry/syscall_64.c | 46 +++++++++++++++++++
+ arch/x86/include/asm/elf.h | 6 ++-
+ arch/x86/include/asm/syscall.h | 13 ++++++
+ 6 files changed, 78 insertions(+), 2 deletions(-)
+
+Index: debian-kernel/Documentation/admin-guide/kernel-parameters.txt
+===================================================================
+--- debian-kernel.orig/Documentation/admin-guide/kernel-parameters.txt
++++ debian-kernel/Documentation/admin-guide/kernel-parameters.txt
+@@ -5000,6 +5000,10 @@
+ later by a loaded module cannot be set this way.
+ Example: sysctl.vm.swappiness=40
+
++ syscall.x32= [KNL,x86_64] Enable/disable use of x32 syscalls on
++ an x86_64 kernel where CONFIG_X86_X32 is enabled.
++ Default depends on CONFIG_X86_X32_DISABLED.
++
+ sysfs.deprecated=0|1 [KNL]
+ Enable/disable old style sysfs layout for old udev
+ on older distributions. When this option is enabled
+Index: debian-kernel/arch/x86/Kconfig
+===================================================================
+--- debian-kernel.orig/arch/x86/Kconfig
++++ debian-kernel/arch/x86/Kconfig
+@@ -2888,6 +2888,14 @@ config COMPAT_32
+ select HAVE_UID16
+ select OLD_SIGSUSPEND3
+
++config X86_X32_DISABLED
++ bool "x32 ABI disabled by default"
++ depends on X86_X32
++ default n
++ help
++ Disable the x32 ABI unless explicitly enabled using the
++ kernel paramter "syscall.x32=y".
++
+ config COMPAT
+ def_bool y
+ depends on IA32_EMULATION || X86_X32
+Index: debian-kernel/arch/x86/entry/common.c
+===================================================================
+--- debian-kernel.orig/arch/x86/entry/common.c
++++ debian-kernel/arch/x86/entry/common.c
+@@ -383,7 +383,8 @@ __visible noinstr void do_syscall_64(uns
+ nr = array_index_nospec(nr, NR_syscalls);
+ regs->ax = sys_call_table[nr](regs);
+ #ifdef CONFIG_X86_X32_ABI
+- } else if (likely((nr & __X32_SYSCALL_BIT) &&
++ } else if (x32_enabled &&
++ likely((nr & __X32_SYSCALL_BIT) &&
+ (nr & ~__X32_SYSCALL_BIT) < X32_NR_syscalls)) {
+ nr = array_index_nospec(nr & ~__X32_SYSCALL_BIT,
+ X32_NR_syscalls);
+Index: debian-kernel/arch/x86/entry/syscall_x32.c
+===================================================================
+--- debian-kernel.orig/arch/x86/entry/syscall_x32.c
++++ debian-kernel/arch/x86/entry/syscall_x32.c
+@@ -4,6 +4,9 @@
+ #include <linux/linkage.h>
+ #include <linux/sys.h>
+ #include <linux/cache.h>
++#include <linux/moduleparam.h>
++#undef MODULE_PARAM_PREFIX
++#define MODULE_PARAM_PREFIX "syscall."
+ #include <linux/syscalls.h>
+ #include <asm/unistd.h>
+ #include <asm/syscall.h>
+@@ -27,3 +30,46 @@ asmlinkage const sys_call_ptr_t x32_sys_
+ [0 ... __NR_x32_syscall_max] = &__x64_sys_ni_syscall,
+ #include <asm/syscalls_64.h>
+ };
++
++/* Maybe enable x32 syscalls */
++
++#if defined(CONFIG_X86_X32_DISABLED)
++DEFINE_STATIC_KEY_FALSE(x32_enabled_skey);
++#else
++DEFINE_STATIC_KEY_TRUE(x32_enabled_skey);
++#endif
++
++static int __init x32_param_set(const char *val, const struct kernel_param *p)
++{
++ bool enabled;
++ int ret;
++
++ ret = kstrtobool(val, &enabled);
++ if (ret)
++ return ret;
++ if (IS_ENABLED(CONFIG_X86_X32_DISABLED)) {
++ if (enabled) {
++ static_key_enable(&x32_enabled_skey.key);
++ pr_info("Enabled x32 syscalls\n");
++ }
++ } else {
++ if (!enabled) {
++ static_key_disable(&x32_enabled_skey.key);
++ pr_info("Disabled x32 syscalls\n");
++ }
++ }
++ return 0;
++}
++
++static int x32_param_get(char *buffer, const struct kernel_param *p)
++{
++ return sprintf(buffer, "%c\n",
++ static_key_enabled(&x32_enabled_skey) ? 'Y' : 'N');
++}
++
++static const struct kernel_param_ops x32_param_ops = {
++ .set = x32_param_set,
++ .get = x32_param_get,
++};
++
++arch_param_cb(x32, &x32_param_ops, NULL, 0444);
+Index: debian-kernel/arch/x86/include/asm/elf.h
+===================================================================
+--- debian-kernel.orig/arch/x86/include/asm/elf.h
++++ debian-kernel/arch/x86/include/asm/elf.h
+@@ -11,6 +11,9 @@
+ #include <asm/user.h>
+ #include <asm/auxvec.h>
+ #include <asm/fsgsbase.h>
++#ifndef COMPILE_OFFSETS /* avoid a circular dependency on asm-offsets.h */
++#include <asm/syscall.h>
++#endif
+
+ typedef unsigned long elf_greg_t;
+
+@@ -163,7 +166,8 @@ do { \
+
+ #define compat_elf_check_arch(x) \
+ (elf_check_arch_ia32(x) || \
+- (IS_ENABLED(CONFIG_X86_X32_ABI) && (x)->e_machine == EM_X86_64))
++ (IS_ENABLED(CONFIG_X86_X32_ABI) && x32_enabled && \
++ (x)->e_machine == EM_X86_64))
+
+ #if __USER32_DS != __USER_DS
+ # error "The following code assumes __USER32_DS == __USER_DS"
+Index: debian-kernel/arch/x86/include/asm/syscall.h
+===================================================================
+--- debian-kernel.orig/arch/x86/include/asm/syscall.h
++++ debian-kernel/arch/x86/include/asm/syscall.h
+@@ -13,6 +13,7 @@
+ #include <uapi/linux/audit.h>
+ #include <linux/sched.h>
+ #include <linux/err.h>
++#include <linux/jump_label.h>
+ #include <asm/thread_info.h> /* for TS_COMPAT */
+ #include <asm/unistd.h>
+
+@@ -31,6 +32,18 @@ extern const sys_call_ptr_t ia32_sys_cal
+ extern const sys_call_ptr_t x32_sys_call_table[];
+ #endif
+
++#if defined(CONFIG_X86_X32_ABI)
++#if defined(CONFIG_X86_X32_DISABLED)
++DECLARE_STATIC_KEY_FALSE(x32_enabled_skey);
++#define x32_enabled static_branch_unlikely(&x32_enabled_skey)
++#else
++DECLARE_STATIC_KEY_TRUE(x32_enabled_skey);
++#define x32_enabled static_branch_likely(&x32_enabled_skey)
++#endif
++#else
++#define x32_enabled 0
++#endif
++
+ /*
+ * Only the low 32 bits of orig_ax are meaningful, so we return int.
+ * This importantly ignores the high bits on 64-bit, so comparisons
diff --git a/debian/patches/features/x86/x86-memtest-WARN-if-bad-RAM-found.patch b/debian/patches/features/x86/x86-memtest-WARN-if-bad-RAM-found.patch
new file mode 100644
index 000000000..7a7952003
--- /dev/null
+++ b/debian/patches/features/x86/x86-memtest-WARN-if-bad-RAM-found.patch
@@ -0,0 +1,28 @@
+From: Ben Hutchings <ben@decadent.org.uk>
+Date: Mon, 5 Dec 2011 04:00:58 +0000
+Subject: x86: memtest: WARN if bad RAM found
+Bug-Debian: https://bugs.debian.org/613321
+Forwarded: http://thread.gmane.org/gmane.linux.kernel/1286471
+
+Since this is not a particularly thorough test, if we find any bad
+bits of RAM then there is a fair chance that there are other bad bits
+we fail to detect.
+
+Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
+---
+ mm/memtest.c | 2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+--- a/mm/memtest.c
++++ b/mm/memtest.c
+@@ -26,6 +26,10 @@ static u64 patterns[] __initdata = {
+
+ static void __init reserve_bad_mem(u64 pattern, phys_addr_t start_bad, phys_addr_t end_bad)
+ {
++#ifdef CONFIG_X86
++ WARN_ONCE(1, "Bad RAM detected. Use memtest86+ to perform a thorough test\n"
++ "and the memmap= parameter to reserve the bad areas.");
++#endif
+ pr_info(" %016llx bad mem addr %pa - %pa reserved\n",
+ cpu_to_be64(pattern), &start_bad, &end_bad);
+ memblock_reserve(start_bad, end_bad - start_bad);
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 000000000..772b165a1
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,141 @@
+debian/gitignore.patch
+
+# Disable features broken by exclusion of upstream files
+debian/dfsg/arch-powerpc-platforms-8xx-ucode-disable.patch
+debian/dfsg/drivers-media-dvb-dvb-usb-af9005-disable.patch
+debian/dfsg/vs6624-disable.patch
+debian/dfsg/drivers-net-appletalk-cops.patch
+debian/dfsg/video-remove-nvidiafb-and-rivafb.patch
+debian/dfsg/documentation-fix-broken-link-to-cipso-draft.patch
+
+# Changes to support package build system
+debian/version.patch
+debian/uname-version-timestamp.patch
+debian/kernelvariables.patch
+debian/ia64-hardcode-arch-script-output.patch
+debian/mips-disable-werror.patch
+debian/mips-boston-disable-its.patch
+debian/mips-ieee754-relaxed.patch
+debian/arch-sh4-fix-uimage-build.patch
+debian/tools-perf-version.patch
+debian/tools-perf-install.patch
+debian/wireless-add-debian-wireless-regdb-certificates.patch
+debian/export-symbols-needed-by-android-drivers.patch
+debian/android-enable-building-ashmem-and-binder-as-modules.patch
+debian/documentation-drop-sphinx-version-check.patch
+debian/perf-traceevent-support-asciidoctor-for-documentatio.patch
+debian/kbuild-look-for-module.lds-under-arch-directory-too.patch
+debian/kbuild-abort-build-if-subdirs-used.patch
+
+# Fixes/improvements to firmware loading
+features/all/drivers-media-dvb-usb-af9005-request_firmware.patch
+debian/iwlwifi-do-not-request-unreleased-firmware.patch
+bugfix/all/firmware_class-log-every-success-and-failure.patch
+bugfix/all/firmware-remove-redundant-log-messages-from-drivers.patch
+bugfix/all/radeon-amdgpu-firmware-is-required-for-drm-and-kms-on-r600-onward.patch
+debian/firmware_class-refer-to-debian-wiki-firmware-page.patch
+
+# Patches from aufs5 repository, imported with debian/bin/genpatch-aufs.
+# These are only the changes needed to allow aufs to be built out-of-tree.
+#features/all/aufs5/aufs5-base.patch
+#features/all/aufs5/aufs5-mmap.patch
+#features/all/aufs5/aufs5-standalone.patch
+
+# Change some defaults for security reasons
+debian/af_802154-Disable-auto-loading-as-mitigation-against.patch
+debian/rds-Disable-auto-loading-as-mitigation-against-local.patch
+debian/dccp-disable-auto-loading-as-mitigation-against-local-exploits.patch
+debian/hamradio-disable-auto-loading-as-mitigation-against-local-exploits.patch
+debian/fs-enable-link-security-restrictions-by-default.patch
+
+# Set various features runtime-disabled by default
+debian/sched-autogroup-disabled.patch
+debian/yama-disable-by-default.patch
+debian/add-sysctl-to-disallow-unprivileged-CLONE_NEWUSER-by-default.patch
+features/all/security-perf-allow-further-restriction-of-perf_event_open.patch
+features/x86/intel-iommu-add-option-to-exclude-integrated-gpu-only.patch
+features/x86/intel-iommu-add-kconfig-option-to-exclude-igpu-by-default.patch
+
+# Disable autoloading/probing of various drivers by default
+debian/cdc_ncm-cdc_mbim-use-ncm-by-default.patch
+debian/snd-pcsp-disable-autoload.patch
+bugfix/x86/viafb-autoload-on-olpc-xo1.5-only.patch
+debian/fjes-disable-autoload.patch
+
+# Taint if dangerous features are used
+debian/fanotify-taint-on-use-of-fanotify_access_permissions.patch
+debian/btrfs-warn-about-raid5-6-being-experimental-at-mount.patch
+
+# Arch bug fixes
+bugfix/arm/arm-dts-kirkwood-fix-sata-pinmux-ing-for-ts419.patch
+bugfix/arm64/dts-rockchip-correct-voltage-selector-firefly-RK3399.patch
+bugfix/x86/perf-tools-fix-unwind-build-on-i386.patch
+bugfix/sh/sh-boot-do-not-use-hyphen-in-exported-variable-name.patch
+bugfix/arm/arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch
+bugfix/powerpc/powerpc-boot-fix-missing-crc32poly.h-when-building-with-kernel_xz.patch
+bugfix/arm64/arm64-acpi-Add-fixup-for-HPE-m400-quirks.patch
+bugfix/x86/x86-32-disable-3dnow-in-generic-config.patch
+bugfix/x86/platform-x86-toshiba_haps-Fix-missing-newline-in-pr_.patch
+
+# Arch features
+features/arm64/arm64-dts-rockchip-Add-basic-support-for-Kobol-s-Hel.patch
+features/arm64/arm64-dts-rockchip-Rely-on-SoC-external-pull-up-on-p.patch
+features/arm64/arm64-dts-rockchip-kobol-helios64-Add-mmc-aliases.patch
+features/arm64/arm64-dts-rockchip-Add-support-for-two-PWM-fans-on-h.patch
+features/arm64/arm64-dts-rockchip-Add-support-for-PCIe-on-helios64.patch
+features/arm64/arm64-dts-raspberry-Add-support-for-the-CM4.patch
+features/arm64/arm64-compat-Implement-misalignment-fixups-for-multi.patch
+features/x86/x86-memtest-WARN-if-bad-RAM-found.patch
+features/x86/x86-make-x32-syscall-support-conditional.patch
+
+# Miscellaneous bug fixes
+bugfix/all/disable-some-marvell-phys.patch
+bugfix/all/fs-add-module_softdep-declarations-for-hard-coded-cr.patch
+debian/makefile-do-not-check-for-libelf-when-building-oot-module.patch
+bugfix/all/partially-revert-net-socket-implement-64-bit-timestamps.patch
+bugfix/all/wireguard-ignore-config_android.patch
+bugfix/all/stddef-Introduce-DECLARE_FLEX_ARRAY-helper.patch
+bugfix/all/smb3-Replace-smb2pdu-1-element-arrays-with-flex-arra.patch
+
+# Miscellaneous features
+
+# Lockdown missing pieces
+features/all/lockdown/efi-add-an-efi_secure_boot-flag-to-indicate-secure-b.patch
+features/all/lockdown/efi-lock-down-the-kernel-if-booted-in-secure-boot-mo.patch
+features/all/lockdown/mtd-disable-slram-and-phram-when-locked-down.patch
+features/all/lockdown/arm64-add-kernel-config-option-to-lock-down-when.patch
+
+# Improve integrity platform keyring for kernel modules verification
+features/all/db-mok-keyring/0001-MODSIGN-do-not-load-mok-when-secure-boot-disabled.patch
+features/all/db-mok-keyring/0003-MODSIGN-checking-the-blacklisted-hash-before-loading-a-kernel-module.patch
+features/all/db-mok-keyring/0004-MODSIGN-check-the-attributes-of-db-and-mok.patch
+features/all/db-mok-keyring/modsign-make-shash-allocation-failure-fatal.patch
+features/all/db-mok-keyring/KEYS-Make-use-of-platform-keyring-for-module-signature.patch
+
+# Security fixes
+debian/i386-686-pae-pci-set-pci-nobios-by-default.patch
+debian/ntfs-mark-it-as-broken.patch
+bugfix/all/vfs-move-cap_convert_nscap-call-into-vfs_setxattr.patch
+bugfix/all/ovl-fail-on-invalid-uid-gid-mapping-at-copy-up.patch
+bugfix/all/netfilter-nf_tables-reject-QUEUE-DROP-verdict-parame.patch
+
+# Fix exported symbol versions
+bugfix/all/module-disable-matching-missing-version-crc.patch
+
+# Tools bug fixes
+bugfix/all/usbip-document-tcp-wrappers.patch
+bugfix/all/kbuild-fix-recordmcount-dependency.patch
+bugfix/all/tools-perf-man-date.patch
+bugfix/all/tools-perf-remove-shebangs.patch
+bugfix/x86/revert-perf-build-fix-libunwind-feature-detection-on.patch
+bugfix/all/tools-build-remove-bpf-run-time-check-at-build-time.patch
+bugfix/all/cpupower-bump-soname-version.patch
+bugfix/all/libcpupower-hide-private-function.patch
+bugfix/all/cpupower-fix-checks-for-cpu-existence.patch
+bugfix/all/tools-perf-pmu-events-fix-reproducibility.patch
+bugfix/all/bpftool-fix-version-string-in-recursive-builds.patch
+
+# overlay: allow mounting in user namespaces
+debian/overlayfs-permit-mounts-in-userns.patch
+
+# ABI maintenance
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 000000000..3659e5b2b
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,124 @@
+#!/usr/bin/make -f
+
+SHELL := sh -e
+SOURCE := $(shell dpkg-parsechangelog -SSource)
+VERSION := $(shell dpkg-parsechangelog -SVersion)
+VERSION_UPSTREAM := $(shell echo "$(VERSION)" | sed -e 's,-[^-]*$$,,')
+VERSION_BINNMU := $(shell echo "$(VERSION)" | sed -rne 's,.*\+b([0-9]+)$$,\1,p')
+VERSION_SOURCE := $(patsubst %+b$(VERSION_BINNMU),%,$(VERSION))
+
+include debian/rules.defs
+
+ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+ DEBIAN_KERNEL_JOBS := $(subst parallel=,,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
+endif
+ifdef DEBIAN_KERNEL_JOBS
+ MAKEFLAGS += -j$(DEBIAN_KERNEL_JOBS)
+endif
+
+.NOTPARALLEL:
+
+source: debian/control
+ dh_testdir
+ $(MAKE) -f debian/rules.gen source
+
+setup: debian/control
+ dh_testdir
+ $(MAKE) -f debian/rules.gen setup_$(DEB_HOST_ARCH)
+
+build: build-arch build-indep
+
+build-arch: debian/control
+ dh_testdir
+ $(MAKE) -f debian/rules.gen build-arch_$(DEB_HOST_ARCH)
+
+build-indep: debian/control
+ dh_testdir
+ $(MAKE) -f debian/rules.gen build-indep
+
+binary: binary-indep binary-arch
+
+binary-arch: build-arch
+ dh_testdir
+ $(MAKE) -f debian/rules.gen binary-arch_$(DEB_HOST_ARCH)
+
+binary-indep: build-indep
+ dh_testdir
+ $(MAKE) -f debian/rules.gen binary-indep
+
+DIR_ORIG = ../orig/$(SOURCE)-$(VERSION_UPSTREAM)
+TAR_ORIG_NAME = $(SOURCE)_$(VERSION_UPSTREAM).orig.tar.xz
+TAR_ORIG = $(firstword $(wildcard ../$(TAR_ORIG_NAME)) $(wildcard ../orig/$(TAR_ORIG_NAME)))
+
+orig: $(DIR_ORIG)
+ rsync --delete --exclude /debian --exclude .svk --exclude .svn --exclude .git --link-dest=$(DIR_ORIG)/ -a $(DIR_ORIG)/ .
+ QUILT_PATCHES='$(CURDIR)/debian/patches' QUILT_PC=.pc quilt push --quiltrc - -a -q --fuzz=0
+
+$(DIR_ORIG):
+ifeq ($(TAR_ORIG),)
+ $(error Cannot find orig tarball $(TAR_ORIG_NAME))
+else
+ mkdir -p ../orig
+ tar -C ../orig -xaf $(TAR_ORIG)
+endif
+
+CLEAN_PATTERNS := $(BUILD_DIR) $(STAMPS_DIR) debian/lib/python/debian_linux/*.pyc debian/lib/python/debian_linux/__pycache__ $$(find debian -maxdepth 1 -type d -name 'linux-*') debian/*-modules-*-di* debian/kernel-image-*-di* debian/*-tmp debian/*.substvars
+
+maintainerclean:
+ rm -rf $(CLEAN_PATTERNS)
+# We cannot use dh_clean here because it requires debian/control to exist
+ rm -rf debian/.debhelper debian/*.debhelper* debian/files
+ rm -f \
+ debian/linux-image-*.NEWS \
+ debian/linux-*.bug-presubj \
+ debian/linux-*.lintian-overrides \
+ debian/linux-*.maintscript \
+ debian/linux-*.postinst \
+ debian/linux-*.postrm \
+ debian/linux-*.preinst \
+ debian/linux-*.prerm \
+ debian/config.defines.dump \
+ debian/control \
+ debian/control.md5sum \
+ debian/rules.gen \
+ debian/tests/control
+ rm -rf $(filter-out debian .svk .svn .git, $(wildcard * .[^.]*))
+
+clean: debian/control
+ dh_testdir
+ rm -rf $(CLEAN_PATTERNS)
+ dh_clean
+
+CONTROL_FILES = $(BUILD_DIR)/version-info $(wildcard debian/templates/*.in)
+CONTROL_FILES += debian/config/defines $(wildcard debian/config/*/defines) $(wildcard debian/config/*/*/defines)
+CONTROL_FILES += debian/installer/kernel-versions debian/installer/package-list
+
+# debian/bin/gencontrol.py uses debian/changelog as input, but the
+# output only depends on the source name and version. To avoid
+# frequent changes to debian/control.md5sum, include only those fields
+# in the checksum.
+$(BUILD_DIR)/version-info: debian/changelog
+ mkdir -p $(@D)
+ printf >$@ 'Source: %s\nVersion: %s\n' $(SOURCE) $(VERSION_SOURCE)
+
+debian/control debian/rules.gen: debian/bin/gencontrol.py $(CONTROL_FILES)
+ifeq ($(wildcard debian/control.md5sum),)
+ $(MAKE) -f debian/rules debian/control-real
+else
+ md5sum --check debian/control.md5sum --status || \
+ $(MAKE) -f debian/rules debian/control-real
+endif
+
+debian/control-real: debian/bin/gencontrol.py $(CONTROL_FILES)
+# Hash randomisation makes the pickled config unreproducible
+ PYTHONHASHSEED=0 $<
+ md5sum $^ > debian/control.md5sum
+ @echo
+ @echo This target is made to fail intentionally, to make sure
+ @echo that it is NEVER run during the automated build. Please
+ @echo ignore the following error, the debian/control file has
+ @echo been generated SUCCESSFULLY.
+ @echo
+ exit 1
+
+.PHONY: binary binary-% build build-% clean debian/control-real orig setup source
diff --git a/debian/rules.d/Makefile.inc b/debian/rules.d/Makefile.inc
new file mode 100644
index 000000000..719e8ca67
--- /dev/null
+++ b/debian/rules.d/Makefile.inc
@@ -0,0 +1,59 @@
+# Normalise OUTDIR to avoid triggering rebuilds
+override OUTDIR := $(patsubst ./%,%,$(OUTDIR))
+
+VPATH = $(top_rulesdir)/$(OUTDIR) $(top_srcdir)/$(OUTDIR)
+
+SHELL = /bin/sh -e
+
+CC = $(CROSS_COMPILE)gcc
+CXX = $(CROSS_COMPILE)g++
+CFLAGS := $(shell dpkg-buildflags --get CFLAGS) -Wall
+CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS) \
+ -I$(top_srcdir)/$(OUTDIR) \
+ -I$(top_srcdir)/debian/build/build-tools/$(OUTDIR) \
+ -isystem $(top_srcdir)/debian/build/build-tools/include
+CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS) -Wall
+LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS)
+
+installdir ?= $(prefix)/$(OUTDIR)
+
+all: all-local all-recursive
+clean: clean-recursive
+install: install-local install-recursive
+
+%-recursive:
+ +@list='$(SUBDIRS)'; \
+ for subdir in $$list; do \
+ echo "Making $* in $$subdir"; \
+ mkdir -p $$subdir; \
+ $(MAKE) -C $$subdir -f $(top_rulesdir)/$(OUTDIR)/$$subdir/Makefile OUTDIR=$(OUTDIR)/$$subdir $*; \
+ done
+
+all-local: $(PROGS)
+
+install-local: install-local-progs install-local-scripts install-local-data
+
+install-local-progs: $(PROGS)
+ @for p in $^; do \
+ echo " install -m755 '$$p' '$(DESTDIR)/$(installdir)'"; \
+ install -D -m755 "$$p" "$(DESTDIR)/$(installdir)/$$(basename $$p)"; \
+ done
+
+SCRIPTS_REAL = $(wildcard $(addprefix $(top_srcdir)/$(OUTDIR)/,$(SCRIPTS)))
+
+install-local-scripts: $(SCRIPTS_REAL)
+ @for p in $^; do \
+ echo " install -m755 '$$p' '$(DESTDIR)/$(installdir)'"; \
+ install -D -m755 \
+ -s --strip-program $(top_srcdir)/debian/bin/fix-shebang \
+ "$$p" "$(DESTDIR)/$(installdir)/$$(basename $$p)"; \
+ done
+
+DATA_REAL = $(wildcard $(addprefix $(top_srcdir)/$(OUTDIR)/,$(DATA)))
+
+install-local-data: $(DATA_REAL)
+ @for p in $^; do \
+ echo " install -m644 '$$p' '$(DESTDIR)/$(installdir)'"; \
+ install -D -m644 "$$p" "$(DESTDIR)/$(installdir)/$$(basename $$p)"; \
+ done
+
diff --git a/debian/rules.d/arch/powerpc/boot/Makefile b/debian/rules.d/arch/powerpc/boot/Makefile
new file mode 100644
index 000000000..9dc418f26
--- /dev/null
+++ b/debian/rules.d/arch/powerpc/boot/Makefile
@@ -0,0 +1,18 @@
+PROGS = \
+ addnote \
+ hack-coff \
+ mktree
+
+SCRIPTS = \
+ wrapper
+
+include $(top_rulesdir)/Makefile.inc
+
+CPPFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
+
+# gcc for ppc64 currently seems to be treating -I like -isystem, and
+# since arch/powerpc/boot has substitute versions of some standard
+# headers for use at boot time, they are also included in these tools.
+# In this case there is actually no need to use the -I option, so
+# filter it out.
+CPPFLAGS := $(filter-out -I%,$(CPPFLAGS))
diff --git a/debian/rules.d/scripts/Makefile b/debian/rules.d/scripts/Makefile
new file mode 100644
index 000000000..e40f47c0c
--- /dev/null
+++ b/debian/rules.d/scripts/Makefile
@@ -0,0 +1,46 @@
+PROGS = \
+ bin2c \
+ extract-cert \
+ kallsyms \
+ recordmcount \
+ sign-file \
+ unifdef
+
+DATA = \
+ Kbuild.include \
+ Makefile.* \
+ mkversion \
+ module-common.lds \
+ subarch.include
+
+SCRIPTS = \
+ checkincludes.pl \
+ checkstack.pl \
+ checkversion.pl \
+ depmod.sh \
+ gcc-*.sh \
+ gen_initramfs_list.sh \
+ headers_install.sh \
+ kernel-doc \
+ ld-version.sh \
+ Lindent \
+ makelst \
+ mksysmap \
+ mkuboot.sh \
+ namespace.pl \
+ pahole-flags.sh \
+ patch-kernel \
+ recordmcount.pl \
+ setlocalversion \
+ ver_linux
+
+SUBDIRS = \
+ basic \
+ genksyms \
+ kconfig \
+ mod
+
+include $(top_rulesdir)/Makefile.inc
+
+CPPFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
+extract-cert sign-file: LDLIBS += -lcrypto
diff --git a/debian/rules.d/scripts/basic/Makefile b/debian/rules.d/scripts/basic/Makefile
new file mode 100644
index 000000000..127f53fa8
--- /dev/null
+++ b/debian/rules.d/scripts/basic/Makefile
@@ -0,0 +1,4 @@
+PROGS = \
+ fixdep
+
+include $(top_rulesdir)/Makefile.inc
diff --git a/debian/rules.d/scripts/genksyms/Makefile b/debian/rules.d/scripts/genksyms/Makefile
new file mode 100644
index 000000000..88524563f
--- /dev/null
+++ b/debian/rules.d/scripts/genksyms/Makefile
@@ -0,0 +1,16 @@
+PROGS = genksyms
+
+include $(top_rulesdir)/Makefile.inc
+
+genksyms: genksyms.o parse.tab.o lex.lex.o
+
+lex.lex.o: keywords.c parse.tab.h
+
+parse.tab.c: parse.y
+ $(YACC) -o$@ -t -l $<
+
+parse.tab.h: parse.y
+ $(YACC) -o/dev/null --defines=$@ -t -l $<
+
+lex.lex.c: lex.l
+ $(LEX) -o$@ -L $<
diff --git a/debian/rules.d/scripts/kconfig/Makefile b/debian/rules.d/scripts/kconfig/Makefile
new file mode 100644
index 000000000..864b50544
--- /dev/null
+++ b/debian/rules.d/scripts/kconfig/Makefile
@@ -0,0 +1,16 @@
+PROGS = conf
+
+include $(top_rulesdir)/Makefile.inc
+
+conf: conf.o confdata.o expr.o lexer.lex.o parser.tab.o preprocess.o symbol.o util.o
+
+lexer.lex.o: parser.tab.h
+
+%.lex.c: %.l
+ flex -o$@ -L $<
+
+%.tab.c: %.y
+ bison -o$@ -t -l $<
+
+%.tab.h: %.y
+ bison -o/dev/null --defines=$@ -t -l $<
diff --git a/debian/rules.d/scripts/mod/Makefile b/debian/rules.d/scripts/mod/Makefile
new file mode 100644
index 000000000..35bf77cd2
--- /dev/null
+++ b/debian/rules.d/scripts/mod/Makefile
@@ -0,0 +1,22 @@
+PROGS = \
+ modpost \
+ modpost.real-lsb-32 \
+ modpost.real-lsb-64 \
+ modpost.real-msb-32 \
+ modpost.real-msb-64
+
+include $(top_rulesdir)/Makefile.inc
+
+wrapperdir = $(top_rulesdir)/$(OUTDIR)
+
+modpost.real-%:
+ $(MAKE) -f $(wrapperdir)/Makefile.real TYPE=$* SOURCEDIR=$(top_srcdir)/scripts/mod
+
+%: %.o
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
+
+modpost-opts.h: $(top_srcdir)/scripts/mod/modpost.c
+ $(wrapperdir)/gendef.py $< > $@
+
+modpost.o: modpost.c modpost-opts.h
+ $(CC) $(CFLAGS) -I $(CURDIR) -c -o $@ $<
diff --git a/debian/rules.d/scripts/mod/Makefile.real b/debian/rules.d/scripts/mod/Makefile.real
new file mode 100644
index 000000000..8b097f897
--- /dev/null
+++ b/debian/rules.d/scripts/mod/Makefile.real
@@ -0,0 +1,23 @@
+PROGS = modpost.real-$(TYPE)
+
+include $(top_rulesdir)/Makefile.inc
+
+wrapperdir = $(top_rulesdir)/$(OUTDIR)
+CFLAGS += -I $(CURDIR)/real-$(TYPE) -I $(wrapperdir)/real-$(TYPE)
+
+modpost.real-$(TYPE): file2alias.real-$(TYPE).o modpost.real-$(TYPE).o sumversion.real-$(TYPE).o
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
+
+%.real-$(TYPE).o: $(SOURCEDIR)/%.c real-$(TYPE)/devicetable-offsets.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+real-$(TYPE)/devicetable-offsets.s: $(SOURCEDIR)/devicetable-offsets.c
+ mkdir -p real-$(TYPE)
+ $(CC) -include $(wrapperdir)/real-$(TYPE)/types.h $(CFLAGS) -nostdinc -I$(top_srcdir)/include -S -o $@ $<
+
+real-$(TYPE)/devicetable-offsets.h: real-$(TYPE)/devicetable-offsets.s
+ echo >$@ "#define __DEVICEVTABLE_OFFSETS_H__"
+ sed -ne "s:^[[:space:]]*\.ascii[[:space:]]*\"\(.*\)\".*:\1:; \
+ /^->/{s:->#\(.*\):/* \1 */:; \
+ s:^->\([^ ]*\) [\$$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; \
+ s:->::; p;}" $< >>$@
diff --git a/debian/rules.d/scripts/mod/elfconfig.h b/debian/rules.d/scripts/mod/elfconfig.h
new file mode 100644
index 000000000..8c90ea600
--- /dev/null
+++ b/debian/rules.d/scripts/mod/elfconfig.h
@@ -0,0 +1,7 @@
+#include <endian.h>
+
+#if __BYTE_ORDER == __LITTLE_ENDIAN
+#define HOST_ELFDATA ELFDATA2LSB
+#elif __BYTE_ORDER == __BIG_ENDIAN
+#define HOST_ELFDATA ELFDATA2MSB
+#endif
diff --git a/debian/rules.d/scripts/mod/gendef.py b/debian/rules.d/scripts/mod/gendef.py
new file mode 100755
index 000000000..55d3fc60e
--- /dev/null
+++ b/debian/rules.d/scripts/mod/gendef.py
@@ -0,0 +1,20 @@
+#!/usr/bin/python3
+import re
+import sys
+
+for line in open(sys.argv[1]):
+ match = re.search(r'getopt\(argc, argv, "([\w:]*?)"\)', line)
+ if match:
+ options = match.group(1)
+ break
+else:
+ raise RuntimeError
+
+print('#define GETOPT_OPTIONS "%s"' % options)
+
+print('#define GETOPT_CASE', end=' ')
+for c in options:
+ if c == ':' or c == 'T':
+ continue
+ print("case '%c':" % c, end=' ')
+print()
diff --git a/debian/rules.d/scripts/mod/modpost.c b/debian/rules.d/scripts/mod/modpost.c
new file mode 100644
index 000000000..d574957ae
--- /dev/null
+++ b/debian/rules.d/scripts/mod/modpost.c
@@ -0,0 +1,136 @@
+#include <elf.h>
+#include <errno.h>
+#include <getopt.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#include "modpost-opts.h"
+
+int main (int argc, char *argv[])
+{
+ char const *data, *class;
+ char *list_name = NULL;
+ char *name = NULL;
+ char prog[1024];
+ unsigned char ei[EI_NIDENT];
+ int opt;
+ FILE *file;
+
+ while ((opt = getopt (argc, argv, GETOPT_OPTIONS)) != -1)
+ {
+ switch(opt)
+ {
+ GETOPT_CASE
+ break;
+ case 'T':
+ list_name = optarg;
+ break;
+ default:
+ return EXIT_FAILURE;
+ }
+ }
+
+ if (optind != argc)
+ {
+ name = argv[optind];
+ }
+ else if (list_name)
+ {
+ size_t name_len;
+ int is_stdin = strcmp (list_name, "-") == 0;
+
+ /* Read first line of list file */
+ if (is_stdin)
+ {
+ file = stdin;
+ setvbuf(stdin, NULL, _IONBF, 0); /* don't over-read */
+ }
+ else
+ {
+ file = fopen (list_name, "r");
+ if (!file)
+ {
+ fprintf (stderr, "Can't open \"%s\"\n", list_name);
+ return EXIT_FAILURE;
+ }
+ }
+ if (getline (&name, &name_len, file) < 0)
+ {
+ if (errno)
+ {
+ fprintf (stderr, "Can't read \"%s\"\n", list_name);
+ return EXIT_FAILURE;
+ }
+ else
+ {
+ /* Empty list */
+ return EXIT_SUCCESS;
+ }
+ }
+ if (!is_stdin)
+ fclose(file);
+
+ /* Remove new-line */
+ name [strcspn (name, "\n")] = 0;
+
+ /* If this came from stdin, we need to add the first name to the
+ * arguments, because the upstream modpost can't read it again.
+ */
+ if (is_stdin)
+ {
+ char **new_argv = malloc (sizeof(*argv) * (argc + 2));
+ memcpy(new_argv, argv, sizeof(*argv) * argc);
+ new_argv [argc] = name;
+ new_argv [argc + 1] = NULL;
+ argv = new_argv;
+ }
+ }
+ else
+ {
+ /* Empty list */
+ return EXIT_SUCCESS;
+ }
+
+ if (!(file = fopen (name, "r")))
+ {
+ fprintf (stderr, "Can't open \"%s\"\n", name);
+ return EXIT_FAILURE;
+ }
+
+ if (fread (ei, 1, EI_NIDENT, file) != EI_NIDENT)
+ {
+ fprintf (stderr, "Error: input truncated\n");
+ return EXIT_FAILURE;
+ }
+
+ if (memcmp (ei, ELFMAG, SELFMAG) != 0)
+ {
+ fprintf (stderr, "Error: not ELF\n");
+ return EXIT_FAILURE;
+ }
+ switch (ei[EI_DATA]) {
+ case ELFDATA2LSB:
+ data = "lsb";
+ break;
+ case ELFDATA2MSB:
+ data = "msb";
+ break;
+ default:
+ return EXIT_FAILURE;
+ }
+ switch (ei[EI_CLASS]) {
+ case ELFCLASS32:
+ class = "32";
+ break;
+ case ELFCLASS64:
+ class = "64";
+ break;
+ default:
+ return EXIT_FAILURE;
+ }
+ snprintf (prog, sizeof prog, "%s.real-%s-%s", argv[0], data, class);
+
+ return execv (prog, argv);
+}
diff --git a/debian/rules.d/scripts/mod/real-lsb-32/elfconfig.h b/debian/rules.d/scripts/mod/real-lsb-32/elfconfig.h
new file mode 100644
index 000000000..1f7a7321a
--- /dev/null
+++ b/debian/rules.d/scripts/mod/real-lsb-32/elfconfig.h
@@ -0,0 +1,4 @@
+#define KERNEL_ELFCLASS ELFCLASS32
+#define KERNEL_ELFDATA ELFDATA2LSB
+#define MODULE_SYMBOL_PREFIX ""
+#include "../elfconfig.h"
diff --git a/debian/rules.d/scripts/mod/real-lsb-32/types.h b/debian/rules.d/scripts/mod/real-lsb-32/types.h
new file mode 100644
index 000000000..bad6dcccd
--- /dev/null
+++ b/debian/rules.d/scripts/mod/real-lsb-32/types.h
@@ -0,0 +1,3 @@
+#include "../types.h"
+typedef __u32 kernel_ulong_t;
+#define BITS_PER_LONG 32
diff --git a/debian/rules.d/scripts/mod/real-lsb-64/elfconfig.h b/debian/rules.d/scripts/mod/real-lsb-64/elfconfig.h
new file mode 100644
index 000000000..e6f519fcc
--- /dev/null
+++ b/debian/rules.d/scripts/mod/real-lsb-64/elfconfig.h
@@ -0,0 +1,4 @@
+#define KERNEL_ELFCLASS ELFCLASS64
+#define KERNEL_ELFDATA ELFDATA2LSB
+#define MODULE_SYMBOL_PREFIX ""
+#include "../elfconfig.h"
diff --git a/debian/rules.d/scripts/mod/real-lsb-64/types.h b/debian/rules.d/scripts/mod/real-lsb-64/types.h
new file mode 100644
index 000000000..8d7b87591
--- /dev/null
+++ b/debian/rules.d/scripts/mod/real-lsb-64/types.h
@@ -0,0 +1,3 @@
+#include "../types.h"
+typedef __u64 __attribute__((aligned(8))) kernel_ulong_t;
+#define BITS_PER_LONG 64
diff --git a/debian/rules.d/scripts/mod/real-msb-32/elfconfig.h b/debian/rules.d/scripts/mod/real-msb-32/elfconfig.h
new file mode 100644
index 000000000..a9ae561ab
--- /dev/null
+++ b/debian/rules.d/scripts/mod/real-msb-32/elfconfig.h
@@ -0,0 +1,4 @@
+#define KERNEL_ELFCLASS ELFCLASS32
+#define KERNEL_ELFDATA ELFDATA2MSB
+#define MODULE_SYMBOL_PREFIX ""
+#include "../elfconfig.h"
diff --git a/debian/rules.d/scripts/mod/real-msb-32/types.h b/debian/rules.d/scripts/mod/real-msb-32/types.h
new file mode 100644
index 000000000..bad6dcccd
--- /dev/null
+++ b/debian/rules.d/scripts/mod/real-msb-32/types.h
@@ -0,0 +1,3 @@
+#include "../types.h"
+typedef __u32 kernel_ulong_t;
+#define BITS_PER_LONG 32
diff --git a/debian/rules.d/scripts/mod/real-msb-64/elfconfig.h b/debian/rules.d/scripts/mod/real-msb-64/elfconfig.h
new file mode 100644
index 000000000..844d22f5c
--- /dev/null
+++ b/debian/rules.d/scripts/mod/real-msb-64/elfconfig.h
@@ -0,0 +1,4 @@
+#define KERNEL_ELFCLASS ELFCLASS64
+#define KERNEL_ELFDATA ELFDATA2MSB
+#define MODULE_SYMBOL_PREFIX ""
+#include "../elfconfig.h"
diff --git a/debian/rules.d/scripts/mod/real-msb-64/types.h b/debian/rules.d/scripts/mod/real-msb-64/types.h
new file mode 100644
index 000000000..8d7b87591
--- /dev/null
+++ b/debian/rules.d/scripts/mod/real-msb-64/types.h
@@ -0,0 +1,3 @@
+#include "../types.h"
+typedef __u64 __attribute__((aligned(8))) kernel_ulong_t;
+#define BITS_PER_LONG 64
diff --git a/debian/rules.d/scripts/mod/types.h b/debian/rules.d/scripts/mod/types.h
new file mode 100644
index 000000000..bba382183
--- /dev/null
+++ b/debian/rules.d/scripts/mod/types.h
@@ -0,0 +1,12 @@
+/* Minimal definitions for mod_devicetable.h and devicetable-offsets.c */
+typedef unsigned char __u8;
+typedef unsigned short __u16;
+typedef unsigned int __u32;
+typedef unsigned long long __u64;
+typedef struct {
+ __u8 b[16];
+} guid_t;
+typedef guid_t uuid_le;
+typedef unsigned char uuid_t[16];
+#define UUID_STRING_LEN 36
+#define offsetof(a,b) __builtin_offsetof(a,b)
diff --git a/debian/rules.d/tools/bpf/bpftool/Makefile b/debian/rules.d/tools/bpf/bpftool/Makefile
new file mode 100644
index 000000000..1df6c1f86
--- /dev/null
+++ b/debian/rules.d/tools/bpf/bpftool/Makefile
@@ -0,0 +1,31 @@
+include $(top_rulesdir)/Makefile.inc
+
+MAKE_BPFTOOL := +$(MAKE) -C $(top_srcdir)/$(OUTDIR) O=$(CURDIR)
+MAKE_BPFTOOL += prefix=/usr
+MAKE_BPFTOOL += mandir=/usr/share/man
+MAKE_BPFTOOL += V=$(KBUILD_VERBOSE)
+MAKE_BPFTOOL += ARCH=$(KERNEL_ARCH)
+MAKE_BPFTOOL += EXTRA_CFLAGS='$(CFLAGS) $(CPPFLAGS)'
+MAKE_BPFTOOL += EXTRA_LDFLAGS='$(LDFLAGS)'
+
+# dynamically linking with libbfd is not allowed in Debian
+MAKE_BPFTOOL += feature-libbfd=0 feature-libbfd-liberty=0 feature-libbfd-liberty-z=0
+
+all:
+ $(MAKE_BPFTOOL)
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ $(MAKE_BPFTOOL) doc
+endif
+# Check that bpftool wasn't linked with libbfd
+ type ldd
+ ! ldd $(CURDIR)/bpftool | grep -E '\blibbfd'
+
+install:
+ $(MAKE_BPFTOOL) install
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ $(MAKE_BPFTOOL) doc-install
+# doc-install installs a bpf-helpers.7 that conflicts
+# with the one distributed by the manpages package.
+ rm $(DESTDIR)/usr/share/man/man7/bpf-helpers.7
+ rmdir $(DESTDIR)/usr/share/man/man7/
+endif
diff --git a/debian/rules.d/tools/hv/Makefile b/debian/rules.d/tools/hv/Makefile
new file mode 100644
index 000000000..8c563673b
--- /dev/null
+++ b/debian/rules.d/tools/hv/Makefile
@@ -0,0 +1,17 @@
+ifeq ($(filter i386 amd64 x32,$(DEB_HOST_ARCH)),)
+
+# Build nothing
+include $(top_rulesdir)/Makefile.inc
+
+else
+
+PROGS = \
+ hv_fcopy_daemon \
+ hv_kvp_daemon \
+ hv_vss_daemon
+
+installdir = /usr/sbin
+
+include $(top_rulesdir)/Makefile.inc
+
+endif
diff --git a/debian/rules.d/tools/lib/lockdep/Makefile b/debian/rules.d/tools/lib/lockdep/Makefile
new file mode 100644
index 000000000..9b66ecb9a
--- /dev/null
+++ b/debian/rules.d/tools/lib/lockdep/Makefile
@@ -0,0 +1,23 @@
+include $(top_rulesdir)/Makefile.inc
+
+DEB_HOST_MULTIARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+
+# Catch use of missing kernel APIs early
+CFLAGS += -Werror=implicit-function-declaration
+
+MAKE_LOCKDEP := +$(MAKE) -C $(top_srcdir)/$(OUTDIR) O=$(CURDIR) V=1 \
+ prefix=/usr libdir_relative=lib/$(DEB_HOST_MULTIARCH) \
+ LIBLOCKDEP_VERSION=$(VERSION) \
+ CONFIG_FLAGS='$(CFLAGS) $(filter -D%,$(CPPFLAGS))' LDFLAGS='$(LDFLAGS)'
+
+unexport CFLAGS
+
+all:
+ $(MAKE_LOCKDEP)
+
+install:
+ $(MAKE_LOCKDEP) install
+ mkdir -p $(DESTDIR)/usr/include
+ cp -R $(top_srcdir)/$(OUTDIR)/include/liblockdep $(DESTDIR)/usr/include/
+ ln -sf liblockdep.so.$(VERSION) \
+ $(DESTDIR)/usr/lib/$(DEB_HOST_MULTIARCH)/liblockdep.so
diff --git a/debian/rules.d/tools/lib/lockdep/lockdep.in b/debian/rules.d/tools/lib/lockdep/lockdep.in
new file mode 100644
index 000000000..4a0d03ac5
--- /dev/null
+++ b/debian/rules.d/tools/lib/lockdep/lockdep.in
@@ -0,0 +1,2 @@
+#!/bin/sh
+LD_PRELOAD="liblockdep.so.@VERSION@ $LD_PRELOAD" exec "$@"
diff --git a/debian/rules.d/tools/objtool/Makefile b/debian/rules.d/tools/objtool/Makefile
new file mode 100644
index 000000000..9990cde31
--- /dev/null
+++ b/debian/rules.d/tools/objtool/Makefile
@@ -0,0 +1,11 @@
+include $(top_rulesdir)/Makefile.inc
+
+all:
+# For now, only supported target architecture is x86. Later we'll need to build
+# for multiple targets and add a wrapper, same as for modpost.
+# objtool explicitly sets CC and LD to be native tools; we need to override
+# this on the command line to make cross-builds work.
+ $(MAKE) -C $(top_srcdir)/tools/objtool O=$(CURDIR) HOSTARCH=$(KERNEL_ARCH) ARCH=x86 CC=$(CC) LD=$(CROSS_COMPILE)ld V=$(KBUILD_VERBOSE)
+
+install:
+ install -D -m755 objtool $(DESTDIR)/$(installdir)/objtool
diff --git a/debian/rules.d/tools/perf/Makefile b/debian/rules.d/tools/perf/Makefile
new file mode 100644
index 000000000..e1ce69c57
--- /dev/null
+++ b/debian/rules.d/tools/perf/Makefile
@@ -0,0 +1,65 @@
+include $(top_rulesdir)/Makefile.inc
+
+MAKE_PERF := $(MAKE) O=$(CURDIR) prefix=/usr V=1 VF=1 ARCH=$(KERNEL_ARCH) WERROR=0 EXTRA_CFLAGS='$(CFLAGS) $(CPPFLAGS)' LDFLAGS='$(LDFLAGS)'
+
+# Disable Gtk UI until it's more usable
+MAKE_PERF += NO_GTK2=1
+
+# Do not build the unversioned jvmti library
+MAKE_PERF += feature-jvmti=0
+
+# Include version in all directory names
+MAKE_PERF += perfexecdir=lib/perf_$(VERSION)-core plugindir=/usr/lib/traceevent_$(VERSION)/plugins STRACE_GROUPS_DIR=share/perf_$(VERSION)-core/strace/groups tipdir=share/doc/linux-perf-$(VERSION) perf_include_dir=include/perf_$(VERSION) perf_examples_dir=share/doc/linux-perf-$(VERSION)/examples
+
+# perf can link against libbfd if available, but the result is
+# undistributable as they are licenced under GPL v2 and v3+
+# respectively. Override detection of libbfd and insist that
+# cplus_demangle() can be found in libiberty (LGPL v2.1+).
+MAKE_PERF += feature-libbfd=0 feature-libbfd-liberty=0 feature-libbfd-liberty-z=0 HAVE_CPLUS_DEMANGLE_SUPPORT=1
+
+# perf can link against libcrypto if available, but the result is
+# undistributable as GPL v2 and OpenSSL are not compatible without
+# an explicit exception. Override detection of libcrypto.
+MAKE_PERF += NO_LIBCRYPTO=1
+
+# perf only links against libopencsd (coresight) if specifically enabled
+MAKE_PERF += CORESIGHT=1
+
+# Currently babeltrace support for `perf data' is not automatically detected.
+MAKE_PERF += LIBBABELTRACE=1
+
+# Build with asciidoctor, not asciidoc
+MAKE_PERF += USE_ASCIIDOCTOR=1
+
+# Build with Python 3, not Python 2
+MAKE_PERF += PYTHON=/usr/bin/python3
+
+all:
+# perf changes some default directories depending on whether DESTDIR is
+# set. We must define it even when building to avoid a rebuild when we
+# run 'make install'.
+ +$(MAKE_PERF) -C $(top_srcdir)/tools/perf -f Makefile.perf all VERSION=$(VERSION) DESTDIR=dummy
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ +$(MAKE_PERF) -C $(top_srcdir)/tools/perf/Documentation man VERSION=$(VERSION)
+endif
+# Check that perf didn't get linked against libbfd or libcrypto
+ type ldd
+ ! ldd $(CURDIR)/perf | grep -E '\blib(bfd|crypto)'
+# Check that it includes cplus_demangle from libiberty
+ grep cplus_demangle $(CURDIR)/perf
+
+install:
+ +$(MAKE_PERF) -C $(top_srcdir)/tools/perf -f Makefile.perf install VERSION=$(VERSION)
+# Don't install a 'trace' alias yet:
+# - We need a wrapper for it anyway, so there's little point adding a
+# versioned link
+# - It doesn't work out-of-the-box as non-root (it depends on debugfs),
+# so it's less widely useful than strace
+# - 'perf trace' doesn't take much more typing
+ rm -f $(DESTDIR)/usr/bin/trace_$(VERSION)
+ mkdir -p $(DESTDIR)/usr/share/bash-completion/
+ mv $(DESTDIR)/etc/bash_completion.d \
+ $(DESTDIR)/usr/share/bash-completion/completions
+ rmdir --ignore-fail-on-non-empty $(DESTDIR)/etc
+# Check for unversioned files that are likely to result in file conflicts
+ cd $(DESTDIR) && ! find \! -type d \! -path '*[_-]$(VERSION)*' | grep .
diff --git a/debian/rules.d/tools/power/cpupower/Makefile b/debian/rules.d/tools/power/cpupower/Makefile
new file mode 100644
index 000000000..c43bd62f1
--- /dev/null
+++ b/debian/rules.d/tools/power/cpupower/Makefile
@@ -0,0 +1,26 @@
+include $(top_rulesdir)/Makefile.inc
+
+MAKE_CPUPOWER := $(shell dpkg-buildflags --export=cmdline) $(MAKE) O=$(CURDIR) CPUFREQ_BENCH=false V=true mandir=/usr/share/man
+
+MAKE_CPUPOWER += DEBUG=$(if $(filter noopt,$(DEB_BUILD_OPTIONS)),true,)
+
+# Don't strip binaries here; let dh_strip determine what to do
+MAKE_CPUPOWER += STRIP=true
+
+MAKE_CPUPOWER += CROSS='$(CROSS_COMPILE)'
+
+MAKE_CPUPOWER += PACKAGE_BUGREPORT='Debian\ \(reportbug\ linux-cpupower\)'
+
+MAKE_CPUPOWER += libdir=/usr/lib/$(DEB_HOST_MULTIARCH)
+
+all:
+ +$(MAKE_CPUPOWER) -C $(top_srcdir)/tools/power/cpupower
+
+install:
+ +$(MAKE_CPUPOWER) -C $(top_srcdir)/tools/power/cpupower install DESTDIR=$(DESTDIR)
+ifneq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ rm -rf $(DESTDIR)/usr/share/man
+endif
+
+clean:
+ +$(MAKE_CPUPOWER) -C $(top_srcdir)/tools/power/cpupower clean
diff --git a/debian/rules.d/tools/power/x86/Makefile b/debian/rules.d/tools/power/x86/Makefile
new file mode 100644
index 000000000..2b9d7735c
--- /dev/null
+++ b/debian/rules.d/tools/power/x86/Makefile
@@ -0,0 +1,5 @@
+SUBDIRS = \
+ turbostat \
+ x86_energy_perf_policy
+
+include $(top_rulesdir)/Makefile.inc
diff --git a/debian/rules.d/tools/power/x86/turbostat/Makefile b/debian/rules.d/tools/power/x86/turbostat/Makefile
new file mode 100644
index 000000000..eb5124d3a
--- /dev/null
+++ b/debian/rules.d/tools/power/x86/turbostat/Makefile
@@ -0,0 +1,9 @@
+PROGS = turbostat
+
+installdir = /usr/sbin
+
+include $(top_rulesdir)/Makefile.inc
+
+CPPFLAGS += -I"$(top_srcdir)/tools/include" -DMSRHEADER='"$(top_srcdir)/arch/x86/include/asm/msr-index.h"' -DINTEL_FAMILY_HEADER='"$(top_srcdir)/arch/x86/include/asm/intel-family.h"'
+
+LDLIBS += -lcap -lrt
diff --git a/debian/rules.d/tools/power/x86/x86_energy_perf_policy/Makefile b/debian/rules.d/tools/power/x86/x86_energy_perf_policy/Makefile
new file mode 100644
index 000000000..b9ec56c89
--- /dev/null
+++ b/debian/rules.d/tools/power/x86/x86_energy_perf_policy/Makefile
@@ -0,0 +1,7 @@
+PROGS = x86_energy_perf_policy
+
+installdir = /usr/sbin
+
+include $(top_rulesdir)/Makefile.inc
+
+CPPFLAGS += -I"$(top_srcdir)/tools/include" -DMSRHEADER='"$(top_srcdir)/arch/x86/include/asm/msr-index.h"'
diff --git a/debian/rules.d/tools/usb/usbip/Makefile b/debian/rules.d/tools/usb/usbip/Makefile
new file mode 100644
index 000000000..3decaac98
--- /dev/null
+++ b/debian/rules.d/tools/usb/usbip/Makefile
@@ -0,0 +1,31 @@
+srcdir := $(top_srcdir)/tools/usb/usbip
+
+# Make sure we don't override top_srcdir in the sub-make. 'unexport
+# top_srcdir' is *not* sufficient; nor is adding 'MAKEFLAGS=' to the
+# sub-make command line.
+unexport MAKEFLAGS
+
+all: export CFLAGS := $(shell dpkg-buildflags --get CFLAGS)
+all: export CPPFLAGS := $(shell dpkg-buildflags --get CFLAGS) \
+ -isystem $(top_srcdir)/debian/build/build-tools/include
+all: export LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS)
+all:
+ rsync -a $(srcdir)/ .
+ ./autogen.sh
+ ./configure \
+ --prefix=/usr \
+ --with-tcp-wrappers \
+ --with-usbids-dir=/usr/share/misc \
+ --disable-shared \
+ --disable-static \
+ --host=$(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+ $(MAKE) V=$(KBUILD_VERBOSE)
+
+install:
+ $(MAKE) V=$(KBUILD_VERBOSE) install
+ifneq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ rm -rf $(DESTDIR)/usr/share/man
+endif
+
+clean:
+ rm -rf *
diff --git a/debian/rules.defs b/debian/rules.defs
new file mode 100644
index 000000000..9384a9b3e
--- /dev/null
+++ b/debian/rules.defs
@@ -0,0 +1,5 @@
+include /usr/share/dpkg/default.mk
+
+BUILD_DIR = debian/build
+STAMPS_DIR = debian/stamps
+
diff --git a/debian/rules.gen b/debian/rules.gen
new file mode 100644
index 000000000..855733c15
--- /dev/null
+++ b/debian/rules.gen
@@ -0,0 +1,1117 @@
+.NOTPARALLEL:
+binary-arch: binary-arch_alpha binary-arch_amd64 binary-arch_arm64 binary-arch_arm64ilp32 binary-arch_armel binary-arch_armhf binary-arch_hppa binary-arch_i386 binary-arch_ia64 binary-arch_m68k binary-arch_mips binary-arch_mips64 binary-arch_mips64el binary-arch_mips64r6 binary-arch_mips64r6el binary-arch_mipsel binary-arch_mipsn32 binary-arch_mipsn32el binary-arch_mipsn32r6 binary-arch_mipsn32r6el binary-arch_mipsr6 binary-arch_mipsr6el binary-arch_powerpc binary-arch_ppc64 binary-arch_ppc64el binary-arch_riscv64 binary-arch_s390 binary-arch_s390x binary-arch_sh3 binary-arch_sh4 binary-arch_sparc binary-arch_sparc64 binary-arch_x32
+binary-arch_alpha:: binary-arch_alpha_none binary-arch_alpha_real
+binary-arch_alpha::
+ $(MAKE) -f debian/rules.real install-udeb_alpha ABINAME='5.10.0-28' ARCH='alpha' KERNEL_ARCH='alpha' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-alpha-generic-di nic-modules-5.10.0-28-alpha-generic-di nic-wireless-modules-5.10.0-28-alpha-generic-di nic-shared-modules-5.10.0-28-alpha-generic-di serial-modules-5.10.0-28-alpha-generic-di usb-serial-modules-5.10.0-28-alpha-generic-di ppp-modules-5.10.0-28-alpha-generic-di pata-modules-5.10.0-28-alpha-generic-di cdrom-core-modules-5.10.0-28-alpha-generic-di scsi-core-modules-5.10.0-28-alpha-generic-di scsi-modules-5.10.0-28-alpha-generic-di scsi-nic-modules-5.10.0-28-alpha-generic-di loop-modules-5.10.0-28-alpha-generic-di btrfs-modules-5.10.0-28-alpha-generic-di ext4-modules-5.10.0-28-alpha-generic-di isofs-modules-5.10.0-28-alpha-generic-di jfs-modules-5.10.0-28-alpha-generic-di xfs-modules-5.10.0-28-alpha-generic-di fat-modules-5.10.0-28-alpha-generic-di squashfs-modules-5.10.0-28-alpha-generic-di fuse-modules-5.10.0-28-alpha-generic-di f2fs-modules-5.10.0-28-alpha-generic-di md-modules-5.10.0-28-alpha-generic-di multipath-modules-5.10.0-28-alpha-generic-di usb-modules-5.10.0-28-alpha-generic-di usb-storage-modules-5.10.0-28-alpha-generic-di fb-modules-5.10.0-28-alpha-generic-di input-modules-5.10.0-28-alpha-generic-di event-modules-5.10.0-28-alpha-generic-di mouse-modules-5.10.0-28-alpha-generic-di nic-pcmcia-modules-5.10.0-28-alpha-generic-di pcmcia-modules-5.10.0-28-alpha-generic-di nic-usb-modules-5.10.0-28-alpha-generic-di sata-modules-5.10.0-28-alpha-generic-di i2c-modules-5.10.0-28-alpha-generic-di crc-modules-5.10.0-28-alpha-generic-di crypto-modules-5.10.0-28-alpha-generic-di crypto-dm-modules-5.10.0-28-alpha-generic-di ata-modules-5.10.0-28-alpha-generic-di nbd-modules-5.10.0-28-alpha-generic-di srm-modules-5.10.0-28-alpha-generic-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_alpha_none: binary-arch_alpha_none_alpha-generic binary-arch_alpha_none_alpha-smp binary-arch_alpha_none_real
+binary-arch_alpha_none_alpha-generic: binary-arch_alpha_none_alpha-generic_real
+binary-arch_alpha_none_alpha-generic_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='alpha' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='alpha-generic' IMAGE_FILE='arch/alpha/boot/vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-alpha-generic' KCONFIG='debian/config/config debian/config/alpha/config debian/config/alpha/config.alpha-generic' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-alpha-generic\""' KERNEL_ARCH='alpha' LOCALVERSION='-alpha-generic' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-alpha-generic' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_alpha_none_alpha-smp: binary-arch_alpha_none_alpha-smp_real
+binary-arch_alpha_none_alpha-smp_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='alpha' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='alpha-smp' IMAGE_FILE='arch/alpha/boot/vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-alpha-smp' KCONFIG='debian/config/config debian/config/alpha/config debian/config/alpha/config.alpha-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-alpha-smp\""' KERNEL_ARCH='alpha' LOCALVERSION='-alpha-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-alpha-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_alpha_none_real:
+binary-arch_alpha_real:: setup_alpha
+binary-arch_alpha_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='alpha' KERNEL_ARCH='alpha' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_amd64:: binary-arch_amd64_extra binary-arch_amd64_none binary-arch_amd64_real binary-arch_amd64_rt
+binary-arch_amd64::
+ $(MAKE) -f debian/rules.real install-udeb_amd64 ABINAME='5.10.0-28' ARCH='amd64' KERNEL_ARCH='x86' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-amd64-di nic-modules-5.10.0-28-amd64-di nic-wireless-modules-5.10.0-28-amd64-di nic-shared-modules-5.10.0-28-amd64-di serial-modules-5.10.0-28-amd64-di usb-serial-modules-5.10.0-28-amd64-di ppp-modules-5.10.0-28-amd64-di pata-modules-5.10.0-28-amd64-di cdrom-core-modules-5.10.0-28-amd64-di firewire-core-modules-5.10.0-28-amd64-di scsi-core-modules-5.10.0-28-amd64-di scsi-modules-5.10.0-28-amd64-di scsi-nic-modules-5.10.0-28-amd64-di loop-modules-5.10.0-28-amd64-di btrfs-modules-5.10.0-28-amd64-di ext4-modules-5.10.0-28-amd64-di isofs-modules-5.10.0-28-amd64-di jfs-modules-5.10.0-28-amd64-di xfs-modules-5.10.0-28-amd64-di fat-modules-5.10.0-28-amd64-di squashfs-modules-5.10.0-28-amd64-di udf-modules-5.10.0-28-amd64-di fuse-modules-5.10.0-28-amd64-di f2fs-modules-5.10.0-28-amd64-di md-modules-5.10.0-28-amd64-di multipath-modules-5.10.0-28-amd64-di usb-modules-5.10.0-28-amd64-di usb-storage-modules-5.10.0-28-amd64-di pcmcia-storage-modules-5.10.0-28-amd64-di fb-modules-5.10.0-28-amd64-di input-modules-5.10.0-28-amd64-di event-modules-5.10.0-28-amd64-di mouse-modules-5.10.0-28-amd64-di nic-pcmcia-modules-5.10.0-28-amd64-di pcmcia-modules-5.10.0-28-amd64-di nic-usb-modules-5.10.0-28-amd64-di sata-modules-5.10.0-28-amd64-di acpi-modules-5.10.0-28-amd64-di i2c-modules-5.10.0-28-amd64-di crc-modules-5.10.0-28-amd64-di crypto-modules-5.10.0-28-amd64-di crypto-dm-modules-5.10.0-28-amd64-di efi-modules-5.10.0-28-amd64-di ata-modules-5.10.0-28-amd64-di mmc-core-modules-5.10.0-28-amd64-di mmc-modules-5.10.0-28-amd64-di nbd-modules-5.10.0-28-amd64-di speakup-modules-5.10.0-28-amd64-di uinput-modules-5.10.0-28-amd64-di sound-modules-5.10.0-28-amd64-di mtd-core-modules-5.10.0-28-amd64-di rfkill-modules-5.10.0-28-amd64-di' UDEB_UNSIGNED_TEST_BUILD=True
+binary-arch_amd64::
+ $(MAKE) -f debian/rules.real install-signed-template_amd64 ABINAME='5.10.0-28' ARCH='amd64' KERNEL_ARCH='x86' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_amd64_extra::
+ $(MAKE) -f debian/rules.real install-dummy ARCH='amd64' DH_OPTIONS='-plinux-compiler-gcc-10-x86'
+binary-arch_amd64_none: binary-arch_amd64_none_amd64 binary-arch_amd64_none_cloud-amd64 binary-arch_amd64_none_real
+binary-arch_amd64_none_amd64: binary-arch_amd64_none_amd64_real
+binary-arch_amd64_none_amd64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-amd64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_amd64_none_cloud-amd64: binary-arch_amd64_none_cloud-amd64_real
+binary-arch_amd64_none_cloud-amd64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='cloud-amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-cloud-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config debian/config/amd64/config.cloud-amd64 debian/config/config.cloud debian/config/amd64/config.cloud-amd64' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-cloud-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-cloud-amd64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-cloud-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_amd64_none_real:
+binary-arch_amd64_real:: setup_amd64
+binary-arch_amd64_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='amd64' KERNEL_ARCH='x86' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_amd64_rt: binary-arch_amd64_rt_amd64 binary-arch_amd64_rt_real
+binary-arch_amd64_rt_amd64: binary-arch_amd64_rt_amd64_real
+binary-arch_amd64_rt_amd64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-rt-amd64' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_amd64_rt_real:
+binary-arch_arm64:: binary-arch_arm64_none binary-arch_arm64_real binary-arch_arm64_rt
+binary-arch_arm64::
+ $(MAKE) -f debian/rules.real install-udeb_arm64 ABINAME='5.10.0-28' ARCH='arm64' KERNEL_ARCH='arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-arm64-di nic-modules-5.10.0-28-arm64-di nic-wireless-modules-5.10.0-28-arm64-di nic-shared-modules-5.10.0-28-arm64-di usb-serial-modules-5.10.0-28-arm64-di ppp-modules-5.10.0-28-arm64-di cdrom-core-modules-5.10.0-28-arm64-di scsi-core-modules-5.10.0-28-arm64-di scsi-modules-5.10.0-28-arm64-di scsi-nic-modules-5.10.0-28-arm64-di loop-modules-5.10.0-28-arm64-di btrfs-modules-5.10.0-28-arm64-di ext4-modules-5.10.0-28-arm64-di isofs-modules-5.10.0-28-arm64-di jfs-modules-5.10.0-28-arm64-di xfs-modules-5.10.0-28-arm64-di fat-modules-5.10.0-28-arm64-di squashfs-modules-5.10.0-28-arm64-di udf-modules-5.10.0-28-arm64-di fuse-modules-5.10.0-28-arm64-di f2fs-modules-5.10.0-28-arm64-di md-modules-5.10.0-28-arm64-di multipath-modules-5.10.0-28-arm64-di usb-modules-5.10.0-28-arm64-di usb-storage-modules-5.10.0-28-arm64-di fb-modules-5.10.0-28-arm64-di input-modules-5.10.0-28-arm64-di event-modules-5.10.0-28-arm64-di nic-usb-modules-5.10.0-28-arm64-di sata-modules-5.10.0-28-arm64-di i2c-modules-5.10.0-28-arm64-di crc-modules-5.10.0-28-arm64-di crypto-modules-5.10.0-28-arm64-di crypto-dm-modules-5.10.0-28-arm64-di efi-modules-5.10.0-28-arm64-di ata-modules-5.10.0-28-arm64-di mmc-modules-5.10.0-28-arm64-di nbd-modules-5.10.0-28-arm64-di uinput-modules-5.10.0-28-arm64-di leds-modules-5.10.0-28-arm64-di mtd-core-modules-5.10.0-28-arm64-di' UDEB_UNSIGNED_TEST_BUILD=True
+binary-arch_arm64::
+ $(MAKE) -f debian/rules.real install-signed-template_arm64 ABINAME='5.10.0-28' ARCH='arm64' KERNEL_ARCH='arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_arm64_none: binary-arch_arm64_none_arm64 binary-arch_arm64_none_cloud-arm64 binary-arch_arm64_none_real
+binary-arch_arm64_none_arm64: binary-arch_arm64_none_arm64_real
+binary-arch_arm64_none_arm64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='none' FLAVOUR='arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-arm64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_arm64_none_cloud-arm64: binary-arch_arm64_none_cloud-arm64_real
+binary-arch_arm64_none_cloud-arm64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='none' FLAVOUR='cloud-arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-cloud-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config debian/config/arm64/config.cloud-arm64 debian/config/config.cloud debian/config/arm64/config.cloud-arm64' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-cloud-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-cloud-arm64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-cloud-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_arm64_none_real:
+binary-arch_arm64_real:: setup_arm64
+binary-arch_arm64_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='arm64' KERNEL_ARCH='arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_arm64_rt: binary-arch_arm64_rt_arm64 binary-arch_arm64_rt_real
+binary-arch_arm64_rt_arm64: binary-arch_arm64_rt_arm64_real
+binary-arch_arm64_rt_arm64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='rt' FLAVOUR='arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config debian/config/featureset-rt/config debian/config/arm64/rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-rt-arm64' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_arm64_rt_real:
+binary-arch_arm64ilp32: binary-arch_arm64ilp32_real
+binary-arch_arm64ilp32_real:: setup_arm64ilp32
+binary-arch_arm64ilp32_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='arm64ilp32' KERNEL_ARCH='arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_armel:: binary-arch_armel_extra binary-arch_armel_none binary-arch_armel_real
+binary-arch_armel::
+ $(MAKE) -f debian/rules.real install-udeb_armel ABINAME='5.10.0-28' ARCH='armel' KERNEL_ARCH='arm' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-marvell-di nic-modules-5.10.0-28-marvell-di nic-shared-modules-5.10.0-28-marvell-di usb-serial-modules-5.10.0-28-marvell-di ppp-modules-5.10.0-28-marvell-di cdrom-core-modules-5.10.0-28-marvell-di scsi-core-modules-5.10.0-28-marvell-di loop-modules-5.10.0-28-marvell-di ipv6-modules-5.10.0-28-marvell-di btrfs-modules-5.10.0-28-marvell-di ext4-modules-5.10.0-28-marvell-di isofs-modules-5.10.0-28-marvell-di jffs2-modules-5.10.0-28-marvell-di jfs-modules-5.10.0-28-marvell-di fat-modules-5.10.0-28-marvell-di minix-modules-5.10.0-28-marvell-di squashfs-modules-5.10.0-28-marvell-di udf-modules-5.10.0-28-marvell-di fuse-modules-5.10.0-28-marvell-di f2fs-modules-5.10.0-28-marvell-di md-modules-5.10.0-28-marvell-di multipath-modules-5.10.0-28-marvell-di usb-modules-5.10.0-28-marvell-di usb-storage-modules-5.10.0-28-marvell-di fb-modules-5.10.0-28-marvell-di input-modules-5.10.0-28-marvell-di event-modules-5.10.0-28-marvell-di mouse-modules-5.10.0-28-marvell-di nic-usb-modules-5.10.0-28-marvell-di sata-modules-5.10.0-28-marvell-di crc-modules-5.10.0-28-marvell-di crypto-modules-5.10.0-28-marvell-di crypto-dm-modules-5.10.0-28-marvell-di mmc-core-modules-5.10.0-28-marvell-di mmc-modules-5.10.0-28-marvell-di nbd-modules-5.10.0-28-marvell-di uinput-modules-5.10.0-28-marvell-di leds-modules-5.10.0-28-marvell-di mtd-modules-5.10.0-28-marvell-di mtd-core-modules-5.10.0-28-marvell-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_armel_extra::
+ $(MAKE) -f debian/rules.real install-dummy ARCH='armel' DH_OPTIONS='-plinux-compiler-gcc-10-arm'
+binary-arch_armel_none: binary-arch_armel_none_marvell binary-arch_armel_none_real binary-arch_armel_none_rpi
+binary-arch_armel_none_marvell: binary-arch_armel_none_marvell_real
+binary-arch_armel_none_marvell_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='armel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='marvell' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-marvell' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armel/config debian/config/armel/config.marvell' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-marvell\""' KERNEL_ARCH='arm' LOCALVERSION='-marvell' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-marvell' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_armel_none_real:
+binary-arch_armel_none_rpi: binary-arch_armel_none_rpi_real
+binary-arch_armel_none_rpi_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='armel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='rpi' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rpi' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armel/config debian/config/armel/config.rpi' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-rpi\""' KERNEL_ARCH='arm' LOCALVERSION='-rpi' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-rpi' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_armel_real:: setup_armel
+binary-arch_armel_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='armel' KERNEL_ARCH='arm' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_armhf:: binary-arch_armhf_extra binary-arch_armhf_none binary-arch_armhf_real binary-arch_armhf_rt
+binary-arch_armhf::
+ $(MAKE) -f debian/rules.real install-udeb_armhf ABINAME='5.10.0-28' ARCH='armhf' KERNEL_ARCH='arm' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-armmp-di nic-modules-5.10.0-28-armmp-di nic-wireless-modules-5.10.0-28-armmp-di nic-shared-modules-5.10.0-28-armmp-di usb-serial-modules-5.10.0-28-armmp-di ppp-modules-5.10.0-28-armmp-di pata-modules-5.10.0-28-armmp-di cdrom-core-modules-5.10.0-28-armmp-di scsi-core-modules-5.10.0-28-armmp-di scsi-modules-5.10.0-28-armmp-di scsi-nic-modules-5.10.0-28-armmp-di loop-modules-5.10.0-28-armmp-di btrfs-modules-5.10.0-28-armmp-di ext4-modules-5.10.0-28-armmp-di isofs-modules-5.10.0-28-armmp-di jfs-modules-5.10.0-28-armmp-di fat-modules-5.10.0-28-armmp-di squashfs-modules-5.10.0-28-armmp-di udf-modules-5.10.0-28-armmp-di fuse-modules-5.10.0-28-armmp-di f2fs-modules-5.10.0-28-armmp-di md-modules-5.10.0-28-armmp-di multipath-modules-5.10.0-28-armmp-di usb-modules-5.10.0-28-armmp-di usb-storage-modules-5.10.0-28-armmp-di fb-modules-5.10.0-28-armmp-di input-modules-5.10.0-28-armmp-di event-modules-5.10.0-28-armmp-di nic-usb-modules-5.10.0-28-armmp-di sata-modules-5.10.0-28-armmp-di i2c-modules-5.10.0-28-armmp-di crc-modules-5.10.0-28-armmp-di crypto-modules-5.10.0-28-armmp-di crypto-dm-modules-5.10.0-28-armmp-di efi-modules-5.10.0-28-armmp-di ata-modules-5.10.0-28-armmp-di mmc-modules-5.10.0-28-armmp-di nbd-modules-5.10.0-28-armmp-di uinput-modules-5.10.0-28-armmp-di leds-modules-5.10.0-28-armmp-di mtd-modules-5.10.0-28-armmp-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_armhf_extra::
+ $(MAKE) -f debian/rules.real install-dummy ARCH='armhf' DH_OPTIONS='-plinux-compiler-gcc-10-arm'
+binary-arch_armhf_none: binary-arch_armhf_none_armmp binary-arch_armhf_none_armmp-lpae binary-arch_armhf_none_real
+binary-arch_armhf_none_armmp: binary-arch_armhf_none_armmp_real
+binary-arch_armhf_none_armmp-lpae: binary-arch_armhf_none_armmp-lpae_real
+binary-arch_armhf_none_armmp-lpae_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='armmp-lpae' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-armmp-lpae' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config debian/config/armhf/config.armmp-lpae' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-armmp-lpae\""' KERNEL_ARCH='arm' LOCALVERSION='-armmp-lpae' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-armmp-lpae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_armhf_none_armmp_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='armmp' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-armmp' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-armmp\""' KERNEL_ARCH='arm' LOCALVERSION='-armmp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-armmp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_armhf_none_real:
+binary-arch_armhf_real:: setup_armhf
+binary-arch_armhf_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='armhf' KERNEL_ARCH='arm' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_armhf_rt: binary-arch_armhf_rt_armmp binary-arch_armhf_rt_real
+binary-arch_armhf_rt_armmp: binary-arch_armhf_rt_armmp_real
+binary-arch_armhf_rt_armmp_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='armmp' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-armmp' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-rt-armmp\""' KERNEL_ARCH='arm' LOCALVERSION='-rt-armmp' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-armmp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_armhf_rt_real:
+binary-arch_hppa:: binary-arch_hppa_extra binary-arch_hppa_none binary-arch_hppa_real
+binary-arch_hppa::
+ $(MAKE) -f debian/rules.real install-udeb_hppa ABINAME='5.10.0-28' ARCH='hppa' KERNEL_ARCH='parisc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-parisc-di nic-modules-5.10.0-28-parisc-di nic-shared-modules-5.10.0-28-parisc-di serial-modules-5.10.0-28-parisc-di usb-serial-modules-5.10.0-28-parisc-di ppp-modules-5.10.0-28-parisc-di pata-modules-5.10.0-28-parisc-di cdrom-core-modules-5.10.0-28-parisc-di scsi-core-modules-5.10.0-28-parisc-di scsi-modules-5.10.0-28-parisc-di loop-modules-5.10.0-28-parisc-di btrfs-modules-5.10.0-28-parisc-di ext4-modules-5.10.0-28-parisc-di isofs-modules-5.10.0-28-parisc-di jfs-modules-5.10.0-28-parisc-di xfs-modules-5.10.0-28-parisc-di fat-modules-5.10.0-28-parisc-di squashfs-modules-5.10.0-28-parisc-di fuse-modules-5.10.0-28-parisc-di f2fs-modules-5.10.0-28-parisc-di md-modules-5.10.0-28-parisc-di multipath-modules-5.10.0-28-parisc-di usb-modules-5.10.0-28-parisc-di usb-storage-modules-5.10.0-28-parisc-di input-modules-5.10.0-28-parisc-di event-modules-5.10.0-28-parisc-di mouse-modules-5.10.0-28-parisc-di nic-usb-modules-5.10.0-28-parisc-di sata-modules-5.10.0-28-parisc-di crc-modules-5.10.0-28-parisc-di crypto-modules-5.10.0-28-parisc-di crypto-dm-modules-5.10.0-28-parisc-di ata-modules-5.10.0-28-parisc-di nbd-modules-5.10.0-28-parisc-di kernel-image-5.10.0-28-parisc64-di nic-modules-5.10.0-28-parisc64-di nic-shared-modules-5.10.0-28-parisc64-di serial-modules-5.10.0-28-parisc64-di usb-serial-modules-5.10.0-28-parisc64-di ppp-modules-5.10.0-28-parisc64-di pata-modules-5.10.0-28-parisc64-di cdrom-core-modules-5.10.0-28-parisc64-di scsi-core-modules-5.10.0-28-parisc64-di scsi-modules-5.10.0-28-parisc64-di loop-modules-5.10.0-28-parisc64-di btrfs-modules-5.10.0-28-parisc64-di ext4-modules-5.10.0-28-parisc64-di isofs-modules-5.10.0-28-parisc64-di jfs-modules-5.10.0-28-parisc64-di xfs-modules-5.10.0-28-parisc64-di fat-modules-5.10.0-28-parisc64-di squashfs-modules-5.10.0-28-parisc64-di fuse-modules-5.10.0-28-parisc64-di f2fs-modules-5.10.0-28-parisc64-di md-modules-5.10.0-28-parisc64-di multipath-modules-5.10.0-28-parisc64-di usb-modules-5.10.0-28-parisc64-di usb-storage-modules-5.10.0-28-parisc64-di fb-modules-5.10.0-28-parisc64-di input-modules-5.10.0-28-parisc64-di event-modules-5.10.0-28-parisc64-di mouse-modules-5.10.0-28-parisc64-di nic-usb-modules-5.10.0-28-parisc64-di sata-modules-5.10.0-28-parisc64-di crc-modules-5.10.0-28-parisc64-di crypto-modules-5.10.0-28-parisc64-di crypto-dm-modules-5.10.0-28-parisc64-di ata-modules-5.10.0-28-parisc64-di nbd-modules-5.10.0-28-parisc64-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_hppa_extra::
+ $(MAKE) -f debian/rules.real install-dummy ARCH='hppa' DH_OPTIONS='-plinux-image-parisc64-smp'
+ $(MAKE) -f debian/rules.real install-dummy ARCH='hppa' DH_OPTIONS='-plinux-image-parisc-smp'
+binary-arch_hppa_none: binary-arch_hppa_none_parisc binary-arch_hppa_none_parisc64 binary-arch_hppa_none_real
+binary-arch_hppa_none_parisc: binary-arch_hppa_none_parisc_real
+binary-arch_hppa_none_parisc64: binary-arch_hppa_none_parisc64_real
+binary-arch_hppa_none_parisc64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='hppa' COMPILER='gcc-10' FEATURESET='none' FLAVOUR='parisc64' IMAGE_FILE='arch/parisc/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-parisc64' KCFLAGS='-fno-cse-follow-jumps' KCONFIG='debian/config/config debian/config/hppa/config debian/config/hppa/config.parisc64' KCONFIG_OPTIONS=' -o "BUILD_SALT=\"5.10.0-28-parisc64\""' KERNEL_ARCH='parisc' LOCALVERSION='-parisc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-parisc64' OVERRIDE_HOST_TYPE='hppa64-linux-gnu' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_hppa_none_parisc_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='hppa' COMPILER='gcc-10' FEATURESET='none' FLAVOUR='parisc' IMAGE_FILE='arch/parisc/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-parisc' KCONFIG='debian/config/config debian/config/hppa/config debian/config/hppa/config.parisc' KCONFIG_OPTIONS=' -o "BUILD_SALT=\"5.10.0-28-parisc\""' KERNEL_ARCH='parisc' LOCALVERSION='-parisc' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-parisc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_hppa_none_real:
+binary-arch_hppa_real:: setup_hppa
+binary-arch_hppa_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='hppa' KERNEL_ARCH='parisc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_i386:: binary-arch_i386_extra binary-arch_i386_none binary-arch_i386_real binary-arch_i386_rt
+binary-arch_i386::
+ $(MAKE) -f debian/rules.real install-udeb_i386 ABINAME='5.10.0-28' ARCH='i386' KERNEL_ARCH='x86' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-686-di nic-modules-5.10.0-28-686-di nic-wireless-modules-5.10.0-28-686-di nic-shared-modules-5.10.0-28-686-di serial-modules-5.10.0-28-686-di usb-serial-modules-5.10.0-28-686-di ppp-modules-5.10.0-28-686-di pata-modules-5.10.0-28-686-di cdrom-core-modules-5.10.0-28-686-di firewire-core-modules-5.10.0-28-686-di scsi-core-modules-5.10.0-28-686-di scsi-modules-5.10.0-28-686-di scsi-nic-modules-5.10.0-28-686-di loop-modules-5.10.0-28-686-di btrfs-modules-5.10.0-28-686-di ext4-modules-5.10.0-28-686-di isofs-modules-5.10.0-28-686-di jfs-modules-5.10.0-28-686-di xfs-modules-5.10.0-28-686-di fat-modules-5.10.0-28-686-di squashfs-modules-5.10.0-28-686-di udf-modules-5.10.0-28-686-di fuse-modules-5.10.0-28-686-di f2fs-modules-5.10.0-28-686-di md-modules-5.10.0-28-686-di multipath-modules-5.10.0-28-686-di usb-modules-5.10.0-28-686-di usb-storage-modules-5.10.0-28-686-di pcmcia-storage-modules-5.10.0-28-686-di fb-modules-5.10.0-28-686-di input-modules-5.10.0-28-686-di event-modules-5.10.0-28-686-di mouse-modules-5.10.0-28-686-di nic-pcmcia-modules-5.10.0-28-686-di pcmcia-modules-5.10.0-28-686-di nic-usb-modules-5.10.0-28-686-di sata-modules-5.10.0-28-686-di acpi-modules-5.10.0-28-686-di i2c-modules-5.10.0-28-686-di crc-modules-5.10.0-28-686-di crypto-modules-5.10.0-28-686-di crypto-dm-modules-5.10.0-28-686-di efi-modules-5.10.0-28-686-di ata-modules-5.10.0-28-686-di mmc-core-modules-5.10.0-28-686-di mmc-modules-5.10.0-28-686-di nbd-modules-5.10.0-28-686-di speakup-modules-5.10.0-28-686-di uinput-modules-5.10.0-28-686-di sound-modules-5.10.0-28-686-di mtd-core-modules-5.10.0-28-686-di rfkill-modules-5.10.0-28-686-di kernel-image-5.10.0-28-686-pae-di nic-modules-5.10.0-28-686-pae-di nic-wireless-modules-5.10.0-28-686-pae-di nic-shared-modules-5.10.0-28-686-pae-di serial-modules-5.10.0-28-686-pae-di usb-serial-modules-5.10.0-28-686-pae-di ppp-modules-5.10.0-28-686-pae-di pata-modules-5.10.0-28-686-pae-di cdrom-core-modules-5.10.0-28-686-pae-di firewire-core-modules-5.10.0-28-686-pae-di scsi-core-modules-5.10.0-28-686-pae-di scsi-modules-5.10.0-28-686-pae-di scsi-nic-modules-5.10.0-28-686-pae-di loop-modules-5.10.0-28-686-pae-di btrfs-modules-5.10.0-28-686-pae-di ext4-modules-5.10.0-28-686-pae-di isofs-modules-5.10.0-28-686-pae-di jfs-modules-5.10.0-28-686-pae-di xfs-modules-5.10.0-28-686-pae-di fat-modules-5.10.0-28-686-pae-di squashfs-modules-5.10.0-28-686-pae-di udf-modules-5.10.0-28-686-pae-di fuse-modules-5.10.0-28-686-pae-di f2fs-modules-5.10.0-28-686-pae-di md-modules-5.10.0-28-686-pae-di multipath-modules-5.10.0-28-686-pae-di usb-modules-5.10.0-28-686-pae-di usb-storage-modules-5.10.0-28-686-pae-di pcmcia-storage-modules-5.10.0-28-686-pae-di fb-modules-5.10.0-28-686-pae-di input-modules-5.10.0-28-686-pae-di event-modules-5.10.0-28-686-pae-di mouse-modules-5.10.0-28-686-pae-di nic-pcmcia-modules-5.10.0-28-686-pae-di pcmcia-modules-5.10.0-28-686-pae-di nic-usb-modules-5.10.0-28-686-pae-di sata-modules-5.10.0-28-686-pae-di acpi-modules-5.10.0-28-686-pae-di i2c-modules-5.10.0-28-686-pae-di crc-modules-5.10.0-28-686-pae-di crypto-modules-5.10.0-28-686-pae-di crypto-dm-modules-5.10.0-28-686-pae-di efi-modules-5.10.0-28-686-pae-di ata-modules-5.10.0-28-686-pae-di mmc-core-modules-5.10.0-28-686-pae-di mmc-modules-5.10.0-28-686-pae-di nbd-modules-5.10.0-28-686-pae-di speakup-modules-5.10.0-28-686-pae-di uinput-modules-5.10.0-28-686-pae-di sound-modules-5.10.0-28-686-pae-di mtd-core-modules-5.10.0-28-686-pae-di rfkill-modules-5.10.0-28-686-pae-di' UDEB_UNSIGNED_TEST_BUILD=True
+binary-arch_i386::
+ $(MAKE) -f debian/rules.real install-signed-template_i386 ABINAME='5.10.0-28' ARCH='i386' KERNEL_ARCH='x86' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_i386_extra::
+ $(MAKE) -f debian/rules.real install-dummy ARCH='i386' DH_OPTIONS='-plinux-compiler-gcc-10-x86'
+binary-arch_i386_none: binary-arch_i386_none_686 binary-arch_i386_none_686-pae binary-arch_i386_none_real
+binary-arch_i386_none_686: binary-arch_i386_none_686_real
+binary-arch_i386_none_686-pae: binary-arch_i386_none_686-pae_real
+binary-arch_i386_none_686-pae_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='686-pae' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-686-pae-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686-pae' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-686-pae\""' KERNEL_ARCH='x86' LOCALVERSION='-686-pae' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-686-pae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_i386_none_686_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='686' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-686-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-686\""' KERNEL_ARCH='x86' LOCALVERSION='-686' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-686' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_i386_none_real:
+binary-arch_i386_real:: setup_i386
+binary-arch_i386_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='i386' KERNEL_ARCH='x86' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_i386_rt: binary-arch_i386_rt_686-pae binary-arch_i386_rt_real
+binary-arch_i386_rt_686-pae: binary-arch_i386_rt_686-pae_real
+binary-arch_i386_rt_686-pae_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='686-pae' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-686-pae-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686-pae debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-686-pae\""' KERNEL_ARCH='x86' LOCALVERSION='-rt-686-pae' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-686-pae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_i386_rt_real:
+binary-arch_ia64:: binary-arch_ia64_none binary-arch_ia64_real
+binary-arch_ia64::
+ $(MAKE) -f debian/rules.real install-udeb_ia64 ABINAME='5.10.0-28' ARCH='ia64' KERNEL_ARCH='ia64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-itanium-di nic-modules-5.10.0-28-itanium-di nic-shared-modules-5.10.0-28-itanium-di serial-modules-5.10.0-28-itanium-di usb-serial-modules-5.10.0-28-itanium-di ppp-modules-5.10.0-28-itanium-di pata-modules-5.10.0-28-itanium-di cdrom-core-modules-5.10.0-28-itanium-di firewire-core-modules-5.10.0-28-itanium-di scsi-core-modules-5.10.0-28-itanium-di scsi-modules-5.10.0-28-itanium-di scsi-nic-modules-5.10.0-28-itanium-di loop-modules-5.10.0-28-itanium-di btrfs-modules-5.10.0-28-itanium-di ext4-modules-5.10.0-28-itanium-di isofs-modules-5.10.0-28-itanium-di jfs-modules-5.10.0-28-itanium-di xfs-modules-5.10.0-28-itanium-di fat-modules-5.10.0-28-itanium-di squashfs-modules-5.10.0-28-itanium-di udf-modules-5.10.0-28-itanium-di fuse-modules-5.10.0-28-itanium-di f2fs-modules-5.10.0-28-itanium-di md-modules-5.10.0-28-itanium-di multipath-modules-5.10.0-28-itanium-di usb-modules-5.10.0-28-itanium-di usb-storage-modules-5.10.0-28-itanium-di fb-modules-5.10.0-28-itanium-di input-modules-5.10.0-28-itanium-di event-modules-5.10.0-28-itanium-di mouse-modules-5.10.0-28-itanium-di pcmcia-modules-5.10.0-28-itanium-di nic-usb-modules-5.10.0-28-itanium-di sata-modules-5.10.0-28-itanium-di i2c-modules-5.10.0-28-itanium-di crc-modules-5.10.0-28-itanium-di crypto-modules-5.10.0-28-itanium-di crypto-dm-modules-5.10.0-28-itanium-di ata-modules-5.10.0-28-itanium-di nbd-modules-5.10.0-28-itanium-di uinput-modules-5.10.0-28-itanium-di mtd-core-modules-5.10.0-28-itanium-di ide-core-modules-5.10.0-28-itanium-di ide-modules-5.10.0-28-itanium-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_ia64_none: binary-arch_ia64_none_itanium binary-arch_ia64_none_mckinley binary-arch_ia64_none_real
+binary-arch_ia64_none_itanium: binary-arch_ia64_none_itanium_real
+binary-arch_ia64_none_itanium_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='ia64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='itanium' IMAGE_FILE='vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-itanium' KCONFIG='debian/config/config debian/config/ia64/config debian/config/ia64/config.itanium' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-itanium\""' KERNEL_ARCH='ia64' LOCALVERSION='-itanium' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-itanium' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_ia64_none_mckinley: binary-arch_ia64_none_mckinley_real
+binary-arch_ia64_none_mckinley_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='ia64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mckinley' IMAGE_FILE='vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mckinley' KCONFIG='debian/config/config debian/config/ia64/config debian/config/ia64/config.mckinley' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mckinley\""' KERNEL_ARCH='ia64' LOCALVERSION='-mckinley' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mckinley' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_ia64_none_real:
+binary-arch_ia64_real:: setup_ia64
+binary-arch_ia64_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='ia64' KERNEL_ARCH='ia64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_m68k:: binary-arch_m68k_none binary-arch_m68k_real
+binary-arch_m68k::
+ $(MAKE) -f debian/rules.real install-udeb_m68k ABINAME='5.10.0-28' ARCH='m68k' KERNEL_ARCH='m68k' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-m68k-di nic-modules-5.10.0-28-m68k-di nic-shared-modules-5.10.0-28-m68k-di ppp-modules-5.10.0-28-m68k-di pata-modules-5.10.0-28-m68k-di cdrom-core-modules-5.10.0-28-m68k-di scsi-core-modules-5.10.0-28-m68k-di scsi-modules-5.10.0-28-m68k-di loop-modules-5.10.0-28-m68k-di btrfs-modules-5.10.0-28-m68k-di ext4-modules-5.10.0-28-m68k-di isofs-modules-5.10.0-28-m68k-di fat-modules-5.10.0-28-m68k-di hfs-modules-5.10.0-28-m68k-di affs-modules-5.10.0-28-m68k-di squashfs-modules-5.10.0-28-m68k-di udf-modules-5.10.0-28-m68k-di fuse-modules-5.10.0-28-m68k-di md-modules-5.10.0-28-m68k-di crc-modules-5.10.0-28-m68k-di crypto-modules-5.10.0-28-m68k-di ata-modules-5.10.0-28-m68k-di nbd-modules-5.10.0-28-m68k-di ide-core-modules-5.10.0-28-m68k-di ide-modules-5.10.0-28-m68k-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_m68k_none: binary-arch_m68k_none_m68k binary-arch_m68k_none_real
+binary-arch_m68k_none_m68k: binary-arch_m68k_none_m68k_real
+binary-arch_m68k_none_m68k_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='m68k' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='m68k' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-m68k' KCFLAGS='-ffreestanding' KCONFIG='debian/config/config debian/config/m68k/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-m68k\""' KERNEL_ARCH='m68k' LOCALVERSION='-m68k' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-m68k' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_m68k_none_real:
+binary-arch_m68k_real:: setup_m68k
+binary-arch_m68k_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='m68k' KERNEL_ARCH='m68k' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips:: binary-arch_mips_none binary-arch_mips_real
+binary-arch_mips::
+ $(MAKE) -f debian/rules.real install-udeb_mips ABINAME='5.10.0-28' ARCH='mips' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-4kc-malta-di nic-modules-5.10.0-28-4kc-malta-di nic-wireless-modules-5.10.0-28-4kc-malta-di nic-shared-modules-5.10.0-28-4kc-malta-di usb-serial-modules-5.10.0-28-4kc-malta-di ppp-modules-5.10.0-28-4kc-malta-di pata-modules-5.10.0-28-4kc-malta-di cdrom-core-modules-5.10.0-28-4kc-malta-di scsi-core-modules-5.10.0-28-4kc-malta-di scsi-modules-5.10.0-28-4kc-malta-di scsi-nic-modules-5.10.0-28-4kc-malta-di loop-modules-5.10.0-28-4kc-malta-di btrfs-modules-5.10.0-28-4kc-malta-di ext4-modules-5.10.0-28-4kc-malta-di isofs-modules-5.10.0-28-4kc-malta-di jfs-modules-5.10.0-28-4kc-malta-di xfs-modules-5.10.0-28-4kc-malta-di fat-modules-5.10.0-28-4kc-malta-di affs-modules-5.10.0-28-4kc-malta-di minix-modules-5.10.0-28-4kc-malta-di squashfs-modules-5.10.0-28-4kc-malta-di udf-modules-5.10.0-28-4kc-malta-di fuse-modules-5.10.0-28-4kc-malta-di f2fs-modules-5.10.0-28-4kc-malta-di md-modules-5.10.0-28-4kc-malta-di multipath-modules-5.10.0-28-4kc-malta-di usb-modules-5.10.0-28-4kc-malta-di usb-storage-modules-5.10.0-28-4kc-malta-di fb-modules-5.10.0-28-4kc-malta-di input-modules-5.10.0-28-4kc-malta-di event-modules-5.10.0-28-4kc-malta-di mouse-modules-5.10.0-28-4kc-malta-di nic-usb-modules-5.10.0-28-4kc-malta-di sata-modules-5.10.0-28-4kc-malta-di i2c-modules-5.10.0-28-4kc-malta-di crc-modules-5.10.0-28-4kc-malta-di crypto-modules-5.10.0-28-4kc-malta-di crypto-dm-modules-5.10.0-28-4kc-malta-di ata-modules-5.10.0-28-4kc-malta-di mmc-core-modules-5.10.0-28-4kc-malta-di mmc-modules-5.10.0-28-4kc-malta-di nbd-modules-5.10.0-28-4kc-malta-di sound-modules-5.10.0-28-4kc-malta-di mtd-core-modules-5.10.0-28-4kc-malta-di kernel-image-5.10.0-28-octeon-di nic-modules-5.10.0-28-octeon-di nic-wireless-modules-5.10.0-28-octeon-di nic-shared-modules-5.10.0-28-octeon-di usb-serial-modules-5.10.0-28-octeon-di ppp-modules-5.10.0-28-octeon-di pata-modules-5.10.0-28-octeon-di cdrom-core-modules-5.10.0-28-octeon-di scsi-core-modules-5.10.0-28-octeon-di scsi-modules-5.10.0-28-octeon-di scsi-nic-modules-5.10.0-28-octeon-di loop-modules-5.10.0-28-octeon-di btrfs-modules-5.10.0-28-octeon-di ext4-modules-5.10.0-28-octeon-di isofs-modules-5.10.0-28-octeon-di jfs-modules-5.10.0-28-octeon-di xfs-modules-5.10.0-28-octeon-di fat-modules-5.10.0-28-octeon-di affs-modules-5.10.0-28-octeon-di minix-modules-5.10.0-28-octeon-di squashfs-modules-5.10.0-28-octeon-di udf-modules-5.10.0-28-octeon-di fuse-modules-5.10.0-28-octeon-di f2fs-modules-5.10.0-28-octeon-di md-modules-5.10.0-28-octeon-di multipath-modules-5.10.0-28-octeon-di usb-modules-5.10.0-28-octeon-di usb-storage-modules-5.10.0-28-octeon-di input-modules-5.10.0-28-octeon-di event-modules-5.10.0-28-octeon-di nic-usb-modules-5.10.0-28-octeon-di sata-modules-5.10.0-28-octeon-di crc-modules-5.10.0-28-octeon-di crypto-modules-5.10.0-28-octeon-di crypto-dm-modules-5.10.0-28-octeon-di nbd-modules-5.10.0-28-octeon-di rtc-modules-5.10.0-28-octeon-di sound-modules-5.10.0-28-octeon-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_mips64:: binary-arch_mips64_none binary-arch_mips64_real
+binary-arch_mips64::
+ $(MAKE) -f debian/rules.real install-udeb_mips64 ABINAME='5.10.0-28' ARCH='mips64' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-5kc-malta-di nic-modules-5.10.0-28-5kc-malta-di nic-wireless-modules-5.10.0-28-5kc-malta-di nic-shared-modules-5.10.0-28-5kc-malta-di usb-serial-modules-5.10.0-28-5kc-malta-di ppp-modules-5.10.0-28-5kc-malta-di pata-modules-5.10.0-28-5kc-malta-di cdrom-core-modules-5.10.0-28-5kc-malta-di scsi-core-modules-5.10.0-28-5kc-malta-di scsi-modules-5.10.0-28-5kc-malta-di scsi-nic-modules-5.10.0-28-5kc-malta-di loop-modules-5.10.0-28-5kc-malta-di btrfs-modules-5.10.0-28-5kc-malta-di ext4-modules-5.10.0-28-5kc-malta-di isofs-modules-5.10.0-28-5kc-malta-di jfs-modules-5.10.0-28-5kc-malta-di xfs-modules-5.10.0-28-5kc-malta-di fat-modules-5.10.0-28-5kc-malta-di affs-modules-5.10.0-28-5kc-malta-di minix-modules-5.10.0-28-5kc-malta-di squashfs-modules-5.10.0-28-5kc-malta-di udf-modules-5.10.0-28-5kc-malta-di fuse-modules-5.10.0-28-5kc-malta-di f2fs-modules-5.10.0-28-5kc-malta-di md-modules-5.10.0-28-5kc-malta-di multipath-modules-5.10.0-28-5kc-malta-di usb-modules-5.10.0-28-5kc-malta-di usb-storage-modules-5.10.0-28-5kc-malta-di fb-modules-5.10.0-28-5kc-malta-di input-modules-5.10.0-28-5kc-malta-di event-modules-5.10.0-28-5kc-malta-di mouse-modules-5.10.0-28-5kc-malta-di nic-usb-modules-5.10.0-28-5kc-malta-di sata-modules-5.10.0-28-5kc-malta-di i2c-modules-5.10.0-28-5kc-malta-di crc-modules-5.10.0-28-5kc-malta-di crypto-modules-5.10.0-28-5kc-malta-di crypto-dm-modules-5.10.0-28-5kc-malta-di ata-modules-5.10.0-28-5kc-malta-di mmc-core-modules-5.10.0-28-5kc-malta-di mmc-modules-5.10.0-28-5kc-malta-di nbd-modules-5.10.0-28-5kc-malta-di sound-modules-5.10.0-28-5kc-malta-di mtd-core-modules-5.10.0-28-5kc-malta-di kernel-image-5.10.0-28-octeon-di nic-modules-5.10.0-28-octeon-di nic-wireless-modules-5.10.0-28-octeon-di nic-shared-modules-5.10.0-28-octeon-di usb-serial-modules-5.10.0-28-octeon-di ppp-modules-5.10.0-28-octeon-di pata-modules-5.10.0-28-octeon-di cdrom-core-modules-5.10.0-28-octeon-di scsi-core-modules-5.10.0-28-octeon-di scsi-modules-5.10.0-28-octeon-di scsi-nic-modules-5.10.0-28-octeon-di loop-modules-5.10.0-28-octeon-di btrfs-modules-5.10.0-28-octeon-di ext4-modules-5.10.0-28-octeon-di isofs-modules-5.10.0-28-octeon-di jfs-modules-5.10.0-28-octeon-di xfs-modules-5.10.0-28-octeon-di fat-modules-5.10.0-28-octeon-di affs-modules-5.10.0-28-octeon-di minix-modules-5.10.0-28-octeon-di squashfs-modules-5.10.0-28-octeon-di udf-modules-5.10.0-28-octeon-di fuse-modules-5.10.0-28-octeon-di f2fs-modules-5.10.0-28-octeon-di md-modules-5.10.0-28-octeon-di multipath-modules-5.10.0-28-octeon-di usb-modules-5.10.0-28-octeon-di usb-storage-modules-5.10.0-28-octeon-di input-modules-5.10.0-28-octeon-di event-modules-5.10.0-28-octeon-di nic-usb-modules-5.10.0-28-octeon-di sata-modules-5.10.0-28-octeon-di crc-modules-5.10.0-28-octeon-di crypto-modules-5.10.0-28-octeon-di crypto-dm-modules-5.10.0-28-octeon-di nbd-modules-5.10.0-28-octeon-di rtc-modules-5.10.0-28-octeon-di sound-modules-5.10.0-28-octeon-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_mips64_none: binary-arch_mips64_none_5kc-malta binary-arch_mips64_none_octeon binary-arch_mips64_none_real
+binary-arch_mips64_none_5kc-malta: binary-arch_mips64_none_5kc-malta_real
+binary-arch_mips64_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mips64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips64_none_octeon: binary-arch_mips64_none_octeon_real
+binary-arch_mips64_none_octeon_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mips64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips64_none_real:
+binary-arch_mips64_real:: setup_mips64
+binary-arch_mips64_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mips64' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips64el:: binary-arch_mips64el_none binary-arch_mips64el_real
+binary-arch_mips64el::
+ $(MAKE) -f debian/rules.real install-udeb_mips64el ABINAME='5.10.0-28' ARCH='mips64el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-5kc-malta-di nic-modules-5.10.0-28-5kc-malta-di nic-wireless-modules-5.10.0-28-5kc-malta-di nic-shared-modules-5.10.0-28-5kc-malta-di usb-serial-modules-5.10.0-28-5kc-malta-di ppp-modules-5.10.0-28-5kc-malta-di pata-modules-5.10.0-28-5kc-malta-di cdrom-core-modules-5.10.0-28-5kc-malta-di scsi-core-modules-5.10.0-28-5kc-malta-di scsi-modules-5.10.0-28-5kc-malta-di scsi-nic-modules-5.10.0-28-5kc-malta-di loop-modules-5.10.0-28-5kc-malta-di btrfs-modules-5.10.0-28-5kc-malta-di ext4-modules-5.10.0-28-5kc-malta-di isofs-modules-5.10.0-28-5kc-malta-di jfs-modules-5.10.0-28-5kc-malta-di xfs-modules-5.10.0-28-5kc-malta-di fat-modules-5.10.0-28-5kc-malta-di affs-modules-5.10.0-28-5kc-malta-di minix-modules-5.10.0-28-5kc-malta-di squashfs-modules-5.10.0-28-5kc-malta-di udf-modules-5.10.0-28-5kc-malta-di fuse-modules-5.10.0-28-5kc-malta-di f2fs-modules-5.10.0-28-5kc-malta-di md-modules-5.10.0-28-5kc-malta-di multipath-modules-5.10.0-28-5kc-malta-di usb-modules-5.10.0-28-5kc-malta-di usb-storage-modules-5.10.0-28-5kc-malta-di fb-modules-5.10.0-28-5kc-malta-di input-modules-5.10.0-28-5kc-malta-di event-modules-5.10.0-28-5kc-malta-di mouse-modules-5.10.0-28-5kc-malta-di nic-usb-modules-5.10.0-28-5kc-malta-di sata-modules-5.10.0-28-5kc-malta-di i2c-modules-5.10.0-28-5kc-malta-di crc-modules-5.10.0-28-5kc-malta-di crypto-modules-5.10.0-28-5kc-malta-di crypto-dm-modules-5.10.0-28-5kc-malta-di ata-modules-5.10.0-28-5kc-malta-di mmc-core-modules-5.10.0-28-5kc-malta-di mmc-modules-5.10.0-28-5kc-malta-di nbd-modules-5.10.0-28-5kc-malta-di sound-modules-5.10.0-28-5kc-malta-di mtd-core-modules-5.10.0-28-5kc-malta-di kernel-image-5.10.0-28-loongson-3-di nic-modules-5.10.0-28-loongson-3-di nic-wireless-modules-5.10.0-28-loongson-3-di nic-shared-modules-5.10.0-28-loongson-3-di usb-serial-modules-5.10.0-28-loongson-3-di ppp-modules-5.10.0-28-loongson-3-di pata-modules-5.10.0-28-loongson-3-di cdrom-core-modules-5.10.0-28-loongson-3-di firewire-core-modules-5.10.0-28-loongson-3-di scsi-core-modules-5.10.0-28-loongson-3-di scsi-modules-5.10.0-28-loongson-3-di scsi-nic-modules-5.10.0-28-loongson-3-di loop-modules-5.10.0-28-loongson-3-di btrfs-modules-5.10.0-28-loongson-3-di ext4-modules-5.10.0-28-loongson-3-di isofs-modules-5.10.0-28-loongson-3-di jfs-modules-5.10.0-28-loongson-3-di xfs-modules-5.10.0-28-loongson-3-di fat-modules-5.10.0-28-loongson-3-di affs-modules-5.10.0-28-loongson-3-di minix-modules-5.10.0-28-loongson-3-di nfs-modules-5.10.0-28-loongson-3-di squashfs-modules-5.10.0-28-loongson-3-di udf-modules-5.10.0-28-loongson-3-di fuse-modules-5.10.0-28-loongson-3-di f2fs-modules-5.10.0-28-loongson-3-di md-modules-5.10.0-28-loongson-3-di multipath-modules-5.10.0-28-loongson-3-di usb-modules-5.10.0-28-loongson-3-di usb-storage-modules-5.10.0-28-loongson-3-di fb-modules-5.10.0-28-loongson-3-di input-modules-5.10.0-28-loongson-3-di event-modules-5.10.0-28-loongson-3-di nic-usb-modules-5.10.0-28-loongson-3-di sata-modules-5.10.0-28-loongson-3-di crc-modules-5.10.0-28-loongson-3-di crypto-modules-5.10.0-28-loongson-3-di crypto-dm-modules-5.10.0-28-loongson-3-di ata-modules-5.10.0-28-loongson-3-di nbd-modules-5.10.0-28-loongson-3-di speakup-modules-5.10.0-28-loongson-3-di sound-modules-5.10.0-28-loongson-3-di mtd-core-modules-5.10.0-28-loongson-3-di kernel-image-5.10.0-28-octeon-di nic-modules-5.10.0-28-octeon-di nic-wireless-modules-5.10.0-28-octeon-di nic-shared-modules-5.10.0-28-octeon-di usb-serial-modules-5.10.0-28-octeon-di ppp-modules-5.10.0-28-octeon-di pata-modules-5.10.0-28-octeon-di cdrom-core-modules-5.10.0-28-octeon-di scsi-core-modules-5.10.0-28-octeon-di scsi-modules-5.10.0-28-octeon-di scsi-nic-modules-5.10.0-28-octeon-di loop-modules-5.10.0-28-octeon-di btrfs-modules-5.10.0-28-octeon-di ext4-modules-5.10.0-28-octeon-di isofs-modules-5.10.0-28-octeon-di jfs-modules-5.10.0-28-octeon-di xfs-modules-5.10.0-28-octeon-di fat-modules-5.10.0-28-octeon-di affs-modules-5.10.0-28-octeon-di minix-modules-5.10.0-28-octeon-di squashfs-modules-5.10.0-28-octeon-di udf-modules-5.10.0-28-octeon-di fuse-modules-5.10.0-28-octeon-di f2fs-modules-5.10.0-28-octeon-di md-modules-5.10.0-28-octeon-di multipath-modules-5.10.0-28-octeon-di usb-modules-5.10.0-28-octeon-di usb-storage-modules-5.10.0-28-octeon-di input-modules-5.10.0-28-octeon-di event-modules-5.10.0-28-octeon-di nic-usb-modules-5.10.0-28-octeon-di sata-modules-5.10.0-28-octeon-di crc-modules-5.10.0-28-octeon-di crypto-modules-5.10.0-28-octeon-di crypto-dm-modules-5.10.0-28-octeon-di nbd-modules-5.10.0-28-octeon-di rtc-modules-5.10.0-28-octeon-di sound-modules-5.10.0-28-octeon-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_mips64el_none: binary-arch_mips64el_none_5kc-malta binary-arch_mips64el_none_loongson-3 binary-arch_mips64el_none_octeon binary-arch_mips64el_none_real
+binary-arch_mips64el_none_5kc-malta: binary-arch_mips64el_none_5kc-malta_real
+binary-arch_mips64el_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips64el_none_loongson-3: binary-arch_mips64el_none_loongson-3_real
+binary-arch_mips64el_none_loongson-3_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='loongson-3' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-loongson-3' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.loongson-3' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-loongson-3\""' KERNEL_ARCH='mips' LOCALVERSION='-loongson-3' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-loongson-3' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips64el_none_octeon: binary-arch_mips64el_none_octeon_real
+binary-arch_mips64el_none_octeon_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips64el_none_real:
+binary-arch_mips64el_real:: setup_mips64el
+binary-arch_mips64el_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mips64el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips64r6:: binary-arch_mips64r6_none binary-arch_mips64r6_real
+binary-arch_mips64r6::
+ $(MAKE) -f debian/rules.real install-udeb_mips64r6 ABINAME='5.10.0-28' ARCH='mips64r6' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-mips64r6-di nic-shared-modules-5.10.0-28-mips64r6-di loop-modules-5.10.0-28-mips64r6-di btrfs-modules-5.10.0-28-mips64r6-di ext4-modules-5.10.0-28-mips64r6-di isofs-modules-5.10.0-28-mips64r6-di jfs-modules-5.10.0-28-mips64r6-di xfs-modules-5.10.0-28-mips64r6-di squashfs-modules-5.10.0-28-mips64r6-di udf-modules-5.10.0-28-mips64r6-di fuse-modules-5.10.0-28-mips64r6-di f2fs-modules-5.10.0-28-mips64r6-di md-modules-5.10.0-28-mips64r6-di multipath-modules-5.10.0-28-mips64r6-di crc-modules-5.10.0-28-mips64r6-di crypto-modules-5.10.0-28-mips64r6-di crypto-dm-modules-5.10.0-28-mips64r6-di nbd-modules-5.10.0-28-mips64r6-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_mips64r6_none: binary-arch_mips64r6_none_mips64r6 binary-arch_mips64r6_none_real
+binary-arch_mips64r6_none_mips64r6: binary-arch_mips64r6_none_mips64r6_real
+binary-arch_mips64r6_none_mips64r6_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mips64r6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64r6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips64r6_none_real:
+binary-arch_mips64r6_real:: setup_mips64r6
+binary-arch_mips64r6_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mips64r6' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips64r6el:: binary-arch_mips64r6el_none binary-arch_mips64r6el_real
+binary-arch_mips64r6el::
+ $(MAKE) -f debian/rules.real install-udeb_mips64r6el ABINAME='5.10.0-28' ARCH='mips64r6el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-mips64r6el-di nic-shared-modules-5.10.0-28-mips64r6el-di loop-modules-5.10.0-28-mips64r6el-di btrfs-modules-5.10.0-28-mips64r6el-di ext4-modules-5.10.0-28-mips64r6el-di isofs-modules-5.10.0-28-mips64r6el-di jfs-modules-5.10.0-28-mips64r6el-di xfs-modules-5.10.0-28-mips64r6el-di squashfs-modules-5.10.0-28-mips64r6el-di udf-modules-5.10.0-28-mips64r6el-di fuse-modules-5.10.0-28-mips64r6el-di f2fs-modules-5.10.0-28-mips64r6el-di md-modules-5.10.0-28-mips64r6el-di multipath-modules-5.10.0-28-mips64r6el-di crc-modules-5.10.0-28-mips64r6el-di crypto-modules-5.10.0-28-mips64r6el-di crypto-dm-modules-5.10.0-28-mips64r6el-di nbd-modules-5.10.0-28-mips64r6el-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_mips64r6el_none: binary-arch_mips64r6el_none_mips64r6el binary-arch_mips64r6el_none_real
+binary-arch_mips64r6el_none_mips64r6el: binary-arch_mips64r6el_none_mips64r6el_real
+binary-arch_mips64r6el_none_mips64r6el_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mips64r6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64r6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips64r6el_none_real:
+binary-arch_mips64r6el_real:: setup_mips64r6el
+binary-arch_mips64r6el_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mips64r6el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips_none: binary-arch_mips_none_4kc-malta binary-arch_mips_none_5kc-malta binary-arch_mips_none_octeon binary-arch_mips_none_real
+binary-arch_mips_none_4kc-malta: binary-arch_mips_none_4kc-malta_real
+binary-arch_mips_none_4kc-malta_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='4kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-4kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips32r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-4kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-4kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-4kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips_none_5kc-malta: binary-arch_mips_none_5kc-malta_real
+binary-arch_mips_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips_none_octeon: binary-arch_mips_none_octeon_real
+binary-arch_mips_none_octeon_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mips_none_real:
+binary-arch_mips_real:: setup_mips
+binary-arch_mips_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mips' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsel:: binary-arch_mipsel_none binary-arch_mipsel_real
+binary-arch_mipsel::
+ $(MAKE) -f debian/rules.real install-udeb_mipsel ABINAME='5.10.0-28' ARCH='mipsel' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-4kc-malta-di nic-modules-5.10.0-28-4kc-malta-di nic-wireless-modules-5.10.0-28-4kc-malta-di nic-shared-modules-5.10.0-28-4kc-malta-di usb-serial-modules-5.10.0-28-4kc-malta-di ppp-modules-5.10.0-28-4kc-malta-di pata-modules-5.10.0-28-4kc-malta-di cdrom-core-modules-5.10.0-28-4kc-malta-di scsi-core-modules-5.10.0-28-4kc-malta-di scsi-modules-5.10.0-28-4kc-malta-di scsi-nic-modules-5.10.0-28-4kc-malta-di loop-modules-5.10.0-28-4kc-malta-di btrfs-modules-5.10.0-28-4kc-malta-di ext4-modules-5.10.0-28-4kc-malta-di isofs-modules-5.10.0-28-4kc-malta-di jfs-modules-5.10.0-28-4kc-malta-di xfs-modules-5.10.0-28-4kc-malta-di fat-modules-5.10.0-28-4kc-malta-di affs-modules-5.10.0-28-4kc-malta-di minix-modules-5.10.0-28-4kc-malta-di squashfs-modules-5.10.0-28-4kc-malta-di udf-modules-5.10.0-28-4kc-malta-di fuse-modules-5.10.0-28-4kc-malta-di f2fs-modules-5.10.0-28-4kc-malta-di md-modules-5.10.0-28-4kc-malta-di multipath-modules-5.10.0-28-4kc-malta-di usb-modules-5.10.0-28-4kc-malta-di usb-storage-modules-5.10.0-28-4kc-malta-di fb-modules-5.10.0-28-4kc-malta-di input-modules-5.10.0-28-4kc-malta-di event-modules-5.10.0-28-4kc-malta-di mouse-modules-5.10.0-28-4kc-malta-di nic-usb-modules-5.10.0-28-4kc-malta-di sata-modules-5.10.0-28-4kc-malta-di i2c-modules-5.10.0-28-4kc-malta-di crc-modules-5.10.0-28-4kc-malta-di crypto-modules-5.10.0-28-4kc-malta-di crypto-dm-modules-5.10.0-28-4kc-malta-di ata-modules-5.10.0-28-4kc-malta-di mmc-core-modules-5.10.0-28-4kc-malta-di mmc-modules-5.10.0-28-4kc-malta-di nbd-modules-5.10.0-28-4kc-malta-di sound-modules-5.10.0-28-4kc-malta-di mtd-core-modules-5.10.0-28-4kc-malta-di kernel-image-5.10.0-28-loongson-3-di nic-modules-5.10.0-28-loongson-3-di nic-wireless-modules-5.10.0-28-loongson-3-di nic-shared-modules-5.10.0-28-loongson-3-di usb-serial-modules-5.10.0-28-loongson-3-di ppp-modules-5.10.0-28-loongson-3-di pata-modules-5.10.0-28-loongson-3-di cdrom-core-modules-5.10.0-28-loongson-3-di firewire-core-modules-5.10.0-28-loongson-3-di scsi-core-modules-5.10.0-28-loongson-3-di scsi-modules-5.10.0-28-loongson-3-di scsi-nic-modules-5.10.0-28-loongson-3-di loop-modules-5.10.0-28-loongson-3-di btrfs-modules-5.10.0-28-loongson-3-di ext4-modules-5.10.0-28-loongson-3-di isofs-modules-5.10.0-28-loongson-3-di jfs-modules-5.10.0-28-loongson-3-di xfs-modules-5.10.0-28-loongson-3-di fat-modules-5.10.0-28-loongson-3-di affs-modules-5.10.0-28-loongson-3-di minix-modules-5.10.0-28-loongson-3-di nfs-modules-5.10.0-28-loongson-3-di squashfs-modules-5.10.0-28-loongson-3-di udf-modules-5.10.0-28-loongson-3-di fuse-modules-5.10.0-28-loongson-3-di f2fs-modules-5.10.0-28-loongson-3-di md-modules-5.10.0-28-loongson-3-di multipath-modules-5.10.0-28-loongson-3-di usb-modules-5.10.0-28-loongson-3-di usb-storage-modules-5.10.0-28-loongson-3-di fb-modules-5.10.0-28-loongson-3-di input-modules-5.10.0-28-loongson-3-di event-modules-5.10.0-28-loongson-3-di nic-usb-modules-5.10.0-28-loongson-3-di sata-modules-5.10.0-28-loongson-3-di crc-modules-5.10.0-28-loongson-3-di crypto-modules-5.10.0-28-loongson-3-di crypto-dm-modules-5.10.0-28-loongson-3-di ata-modules-5.10.0-28-loongson-3-di nbd-modules-5.10.0-28-loongson-3-di speakup-modules-5.10.0-28-loongson-3-di sound-modules-5.10.0-28-loongson-3-di mtd-core-modules-5.10.0-28-loongson-3-di kernel-image-5.10.0-28-octeon-di nic-modules-5.10.0-28-octeon-di nic-wireless-modules-5.10.0-28-octeon-di nic-shared-modules-5.10.0-28-octeon-di usb-serial-modules-5.10.0-28-octeon-di ppp-modules-5.10.0-28-octeon-di pata-modules-5.10.0-28-octeon-di cdrom-core-modules-5.10.0-28-octeon-di scsi-core-modules-5.10.0-28-octeon-di scsi-modules-5.10.0-28-octeon-di scsi-nic-modules-5.10.0-28-octeon-di loop-modules-5.10.0-28-octeon-di btrfs-modules-5.10.0-28-octeon-di ext4-modules-5.10.0-28-octeon-di isofs-modules-5.10.0-28-octeon-di jfs-modules-5.10.0-28-octeon-di xfs-modules-5.10.0-28-octeon-di fat-modules-5.10.0-28-octeon-di affs-modules-5.10.0-28-octeon-di minix-modules-5.10.0-28-octeon-di squashfs-modules-5.10.0-28-octeon-di udf-modules-5.10.0-28-octeon-di fuse-modules-5.10.0-28-octeon-di f2fs-modules-5.10.0-28-octeon-di md-modules-5.10.0-28-octeon-di multipath-modules-5.10.0-28-octeon-di usb-modules-5.10.0-28-octeon-di usb-storage-modules-5.10.0-28-octeon-di input-modules-5.10.0-28-octeon-di event-modules-5.10.0-28-octeon-di nic-usb-modules-5.10.0-28-octeon-di sata-modules-5.10.0-28-octeon-di crc-modules-5.10.0-28-octeon-di crypto-modules-5.10.0-28-octeon-di crypto-dm-modules-5.10.0-28-octeon-di nbd-modules-5.10.0-28-octeon-di rtc-modules-5.10.0-28-octeon-di sound-modules-5.10.0-28-octeon-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_mipsel_none: binary-arch_mipsel_none_4kc-malta binary-arch_mipsel_none_5kc-malta binary-arch_mipsel_none_loongson-3 binary-arch_mipsel_none_octeon binary-arch_mipsel_none_real
+binary-arch_mipsel_none_4kc-malta: binary-arch_mipsel_none_4kc-malta_real
+binary-arch_mipsel_none_4kc-malta_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='4kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-4kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips32r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-4kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-4kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-4kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsel_none_5kc-malta: binary-arch_mipsel_none_5kc-malta_real
+binary-arch_mipsel_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsel_none_loongson-3: binary-arch_mipsel_none_loongson-3_real
+binary-arch_mipsel_none_loongson-3_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='loongson-3' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-loongson-3' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.loongson-3' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-loongson-3\""' KERNEL_ARCH='mips' LOCALVERSION='-loongson-3' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-loongson-3' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsel_none_octeon: binary-arch_mipsel_none_octeon_real
+binary-arch_mipsel_none_octeon_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsel_none_real:
+binary-arch_mipsel_real:: setup_mipsel
+binary-arch_mipsel_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mipsel' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsn32: binary-arch_mipsn32_real
+binary-arch_mipsn32_real:: setup_mipsn32
+binary-arch_mipsn32_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mipsn32' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsn32el: binary-arch_mipsn32el_real
+binary-arch_mipsn32el_real:: setup_mipsn32el
+binary-arch_mipsn32el_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mipsn32el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsn32r6: binary-arch_mipsn32r6_real
+binary-arch_mipsn32r6_real:: setup_mipsn32r6
+binary-arch_mipsn32r6_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mipsn32r6' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsn32r6el: binary-arch_mipsn32r6el_real
+binary-arch_mipsn32r6el_real:: setup_mipsn32r6el
+binary-arch_mipsn32r6el_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mipsn32r6el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsr6:: binary-arch_mipsr6_none binary-arch_mipsr6_real
+binary-arch_mipsr6::
+ $(MAKE) -f debian/rules.real install-udeb_mipsr6 ABINAME='5.10.0-28' ARCH='mipsr6' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-mips32r6-di nic-shared-modules-5.10.0-28-mips32r6-di loop-modules-5.10.0-28-mips32r6-di btrfs-modules-5.10.0-28-mips32r6-di ext4-modules-5.10.0-28-mips32r6-di isofs-modules-5.10.0-28-mips32r6-di jfs-modules-5.10.0-28-mips32r6-di xfs-modules-5.10.0-28-mips32r6-di squashfs-modules-5.10.0-28-mips32r6-di udf-modules-5.10.0-28-mips32r6-di fuse-modules-5.10.0-28-mips32r6-di f2fs-modules-5.10.0-28-mips32r6-di md-modules-5.10.0-28-mips32r6-di multipath-modules-5.10.0-28-mips32r6-di crc-modules-5.10.0-28-mips32r6-di crypto-modules-5.10.0-28-mips32r6-di crypto-dm-modules-5.10.0-28-mips32r6-di nbd-modules-5.10.0-28-mips32r6-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_mipsr6_none: binary-arch_mipsr6_none_mips32r6 binary-arch_mipsr6_none_mips64r6 binary-arch_mipsr6_none_real
+binary-arch_mipsr6_none_mips32r6: binary-arch_mipsr6_none_mips32r6_real
+binary-arch_mipsr6_none_mips32r6_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips32r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips32r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips32r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips32r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips32r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips32r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsr6_none_mips64r6: binary-arch_mipsr6_none_mips64r6_real
+binary-arch_mipsr6_none_mips64r6_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsr6_none_real:
+binary-arch_mipsr6_real:: setup_mipsr6
+binary-arch_mipsr6_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mipsr6' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsr6el:: binary-arch_mipsr6el_none binary-arch_mipsr6el_real
+binary-arch_mipsr6el::
+ $(MAKE) -f debian/rules.real install-udeb_mipsr6el ABINAME='5.10.0-28' ARCH='mipsr6el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-mips32r6el-di nic-shared-modules-5.10.0-28-mips32r6el-di loop-modules-5.10.0-28-mips32r6el-di btrfs-modules-5.10.0-28-mips32r6el-di ext4-modules-5.10.0-28-mips32r6el-di isofs-modules-5.10.0-28-mips32r6el-di jfs-modules-5.10.0-28-mips32r6el-di xfs-modules-5.10.0-28-mips32r6el-di squashfs-modules-5.10.0-28-mips32r6el-di udf-modules-5.10.0-28-mips32r6el-di fuse-modules-5.10.0-28-mips32r6el-di f2fs-modules-5.10.0-28-mips32r6el-di md-modules-5.10.0-28-mips32r6el-di multipath-modules-5.10.0-28-mips32r6el-di crc-modules-5.10.0-28-mips32r6el-di crypto-modules-5.10.0-28-mips32r6el-di crypto-dm-modules-5.10.0-28-mips32r6el-di nbd-modules-5.10.0-28-mips32r6el-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_mipsr6el_none: binary-arch_mipsr6el_none_mips32r6el binary-arch_mipsr6el_none_mips64r6el binary-arch_mipsr6el_none_real
+binary-arch_mipsr6el_none_mips32r6el: binary-arch_mipsr6el_none_mips32r6el_real
+binary-arch_mipsr6el_none_mips32r6el_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips32r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips32r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips32r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips32r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips32r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips32r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsr6el_none_mips64r6el: binary-arch_mipsr6el_none_mips64r6el_real
+binary-arch_mipsr6el_none_mips64r6el_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_mipsr6el_none_real:
+binary-arch_mipsr6el_real:: setup_mipsr6el
+binary-arch_mipsr6el_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='mipsr6el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_powerpc:: binary-arch_powerpc_none binary-arch_powerpc_real
+binary-arch_powerpc::
+ $(MAKE) -f debian/rules.real install-udeb_powerpc ABINAME='5.10.0-28' ARCH='powerpc' KERNEL_ARCH='powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-powerpc-di nic-modules-5.10.0-28-powerpc-di nic-wireless-modules-5.10.0-28-powerpc-di nic-shared-modules-5.10.0-28-powerpc-di serial-modules-5.10.0-28-powerpc-di usb-serial-modules-5.10.0-28-powerpc-di ppp-modules-5.10.0-28-powerpc-di pata-modules-5.10.0-28-powerpc-di cdrom-core-modules-5.10.0-28-powerpc-di firewire-core-modules-5.10.0-28-powerpc-di scsi-core-modules-5.10.0-28-powerpc-di scsi-modules-5.10.0-28-powerpc-di scsi-nic-modules-5.10.0-28-powerpc-di loop-modules-5.10.0-28-powerpc-di btrfs-modules-5.10.0-28-powerpc-di ext4-modules-5.10.0-28-powerpc-di isofs-modules-5.10.0-28-powerpc-di jfs-modules-5.10.0-28-powerpc-di xfs-modules-5.10.0-28-powerpc-di fat-modules-5.10.0-28-powerpc-di hfs-modules-5.10.0-28-powerpc-di affs-modules-5.10.0-28-powerpc-di squashfs-modules-5.10.0-28-powerpc-di udf-modules-5.10.0-28-powerpc-di fuse-modules-5.10.0-28-powerpc-di f2fs-modules-5.10.0-28-powerpc-di md-modules-5.10.0-28-powerpc-di multipath-modules-5.10.0-28-powerpc-di usb-modules-5.10.0-28-powerpc-di usb-storage-modules-5.10.0-28-powerpc-di pcmcia-storage-modules-5.10.0-28-powerpc-di fb-modules-5.10.0-28-powerpc-di input-modules-5.10.0-28-powerpc-di event-modules-5.10.0-28-powerpc-di mouse-modules-5.10.0-28-powerpc-di nic-pcmcia-modules-5.10.0-28-powerpc-di pcmcia-modules-5.10.0-28-powerpc-di nic-usb-modules-5.10.0-28-powerpc-di sata-modules-5.10.0-28-powerpc-di crc-modules-5.10.0-28-powerpc-di crypto-modules-5.10.0-28-powerpc-di crypto-dm-modules-5.10.0-28-powerpc-di ata-modules-5.10.0-28-powerpc-di mmc-core-modules-5.10.0-28-powerpc-di nbd-modules-5.10.0-28-powerpc-di uinput-modules-5.10.0-28-powerpc-di kernel-image-5.10.0-28-powerpc64-di nic-modules-5.10.0-28-powerpc64-di nic-wireless-modules-5.10.0-28-powerpc64-di nic-shared-modules-5.10.0-28-powerpc64-di serial-modules-5.10.0-28-powerpc64-di usb-serial-modules-5.10.0-28-powerpc64-di ppp-modules-5.10.0-28-powerpc64-di pata-modules-5.10.0-28-powerpc64-di cdrom-core-modules-5.10.0-28-powerpc64-di firewire-core-modules-5.10.0-28-powerpc64-di scsi-core-modules-5.10.0-28-powerpc64-di scsi-modules-5.10.0-28-powerpc64-di scsi-nic-modules-5.10.0-28-powerpc64-di loop-modules-5.10.0-28-powerpc64-di btrfs-modules-5.10.0-28-powerpc64-di ext4-modules-5.10.0-28-powerpc64-di isofs-modules-5.10.0-28-powerpc64-di jfs-modules-5.10.0-28-powerpc64-di xfs-modules-5.10.0-28-powerpc64-di fat-modules-5.10.0-28-powerpc64-di hfs-modules-5.10.0-28-powerpc64-di affs-modules-5.10.0-28-powerpc64-di squashfs-modules-5.10.0-28-powerpc64-di udf-modules-5.10.0-28-powerpc64-di fuse-modules-5.10.0-28-powerpc64-di f2fs-modules-5.10.0-28-powerpc64-di md-modules-5.10.0-28-powerpc64-di multipath-modules-5.10.0-28-powerpc64-di usb-modules-5.10.0-28-powerpc64-di usb-storage-modules-5.10.0-28-powerpc64-di pcmcia-storage-modules-5.10.0-28-powerpc64-di fb-modules-5.10.0-28-powerpc64-di input-modules-5.10.0-28-powerpc64-di event-modules-5.10.0-28-powerpc64-di mouse-modules-5.10.0-28-powerpc64-di nic-pcmcia-modules-5.10.0-28-powerpc64-di pcmcia-modules-5.10.0-28-powerpc64-di nic-usb-modules-5.10.0-28-powerpc64-di sata-modules-5.10.0-28-powerpc64-di i2c-modules-5.10.0-28-powerpc64-di crc-modules-5.10.0-28-powerpc64-di crypto-modules-5.10.0-28-powerpc64-di crypto-dm-modules-5.10.0-28-powerpc64-di ata-modules-5.10.0-28-powerpc64-di mmc-core-modules-5.10.0-28-powerpc64-di nbd-modules-5.10.0-28-powerpc64-di uinput-modules-5.10.0-28-powerpc64-di mtd-core-modules-5.10.0-28-powerpc64-di hypervisor-modules-5.10.0-28-powerpc64-di fancontrol-modules-5.10.0-28-powerpc64-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_powerpc_none: binary-arch_powerpc_none_powerpc binary-arch_powerpc_none_powerpc-smp binary-arch_powerpc_none_powerpc64 binary-arch_powerpc_none_real
+binary-arch_powerpc_none_powerpc: binary-arch_powerpc_none_powerpc_real
+binary-arch_powerpc_none_powerpc-smp: binary-arch_powerpc_none_powerpc-smp_real
+binary-arch_powerpc_none_powerpc-smp_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc-smp' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc-smp' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/powerpc/config.powerpc debian/config/powerpc/config.powerpc-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc-smp\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_powerpc_none_powerpc64: binary-arch_powerpc_none_powerpc64_real
+binary-arch_powerpc_none_powerpc64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-be' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_powerpc_none_powerpc_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/powerpc/config.powerpc' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_powerpc_none_real:
+binary-arch_powerpc_real:: setup_powerpc
+binary-arch_powerpc_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='powerpc' KERNEL_ARCH='powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_ppc64:: binary-arch_ppc64_none binary-arch_ppc64_real
+binary-arch_ppc64::
+ $(MAKE) -f debian/rules.real install-udeb_ppc64 ABINAME='5.10.0-28' ARCH='ppc64' KERNEL_ARCH='powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-powerpc64-di nic-modules-5.10.0-28-powerpc64-di nic-wireless-modules-5.10.0-28-powerpc64-di nic-shared-modules-5.10.0-28-powerpc64-di serial-modules-5.10.0-28-powerpc64-di usb-serial-modules-5.10.0-28-powerpc64-di ppp-modules-5.10.0-28-powerpc64-di pata-modules-5.10.0-28-powerpc64-di cdrom-core-modules-5.10.0-28-powerpc64-di firewire-core-modules-5.10.0-28-powerpc64-di scsi-core-modules-5.10.0-28-powerpc64-di scsi-modules-5.10.0-28-powerpc64-di scsi-nic-modules-5.10.0-28-powerpc64-di loop-modules-5.10.0-28-powerpc64-di btrfs-modules-5.10.0-28-powerpc64-di ext4-modules-5.10.0-28-powerpc64-di isofs-modules-5.10.0-28-powerpc64-di jfs-modules-5.10.0-28-powerpc64-di xfs-modules-5.10.0-28-powerpc64-di fat-modules-5.10.0-28-powerpc64-di hfs-modules-5.10.0-28-powerpc64-di affs-modules-5.10.0-28-powerpc64-di squashfs-modules-5.10.0-28-powerpc64-di udf-modules-5.10.0-28-powerpc64-di fuse-modules-5.10.0-28-powerpc64-di f2fs-modules-5.10.0-28-powerpc64-di md-modules-5.10.0-28-powerpc64-di multipath-modules-5.10.0-28-powerpc64-di usb-modules-5.10.0-28-powerpc64-di usb-storage-modules-5.10.0-28-powerpc64-di pcmcia-storage-modules-5.10.0-28-powerpc64-di fb-modules-5.10.0-28-powerpc64-di input-modules-5.10.0-28-powerpc64-di event-modules-5.10.0-28-powerpc64-di mouse-modules-5.10.0-28-powerpc64-di nic-pcmcia-modules-5.10.0-28-powerpc64-di pcmcia-modules-5.10.0-28-powerpc64-di nic-usb-modules-5.10.0-28-powerpc64-di sata-modules-5.10.0-28-powerpc64-di i2c-modules-5.10.0-28-powerpc64-di crc-modules-5.10.0-28-powerpc64-di crypto-modules-5.10.0-28-powerpc64-di crypto-dm-modules-5.10.0-28-powerpc64-di ata-modules-5.10.0-28-powerpc64-di mmc-core-modules-5.10.0-28-powerpc64-di nbd-modules-5.10.0-28-powerpc64-di uinput-modules-5.10.0-28-powerpc64-di mtd-core-modules-5.10.0-28-powerpc64-di hypervisor-modules-5.10.0-28-powerpc64-di fancontrol-modules-5.10.0-28-powerpc64-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_ppc64_none: binary-arch_ppc64_none_powerpc64 binary-arch_ppc64_none_real
+binary-arch_ppc64_none_powerpc64: binary-arch_ppc64_none_powerpc64_real
+binary-arch_ppc64_none_powerpc64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='ppc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-be' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_ppc64_none_real:
+binary-arch_ppc64_real:: setup_ppc64
+binary-arch_ppc64_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='ppc64' KERNEL_ARCH='powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_ppc64el:: binary-arch_ppc64el_none binary-arch_ppc64el_real
+binary-arch_ppc64el::
+ $(MAKE) -f debian/rules.real install-udeb_ppc64el ABINAME='5.10.0-28' ARCH='ppc64el' KERNEL_ARCH='powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-powerpc64le-di nic-modules-5.10.0-28-powerpc64le-di nic-wireless-modules-5.10.0-28-powerpc64le-di nic-shared-modules-5.10.0-28-powerpc64le-di serial-modules-5.10.0-28-powerpc64le-di usb-serial-modules-5.10.0-28-powerpc64le-di ppp-modules-5.10.0-28-powerpc64le-di cdrom-core-modules-5.10.0-28-powerpc64le-di firewire-core-modules-5.10.0-28-powerpc64le-di scsi-core-modules-5.10.0-28-powerpc64le-di scsi-modules-5.10.0-28-powerpc64le-di scsi-nic-modules-5.10.0-28-powerpc64le-di loop-modules-5.10.0-28-powerpc64le-di btrfs-modules-5.10.0-28-powerpc64le-di ext4-modules-5.10.0-28-powerpc64le-di isofs-modules-5.10.0-28-powerpc64le-di jfs-modules-5.10.0-28-powerpc64le-di xfs-modules-5.10.0-28-powerpc64le-di fat-modules-5.10.0-28-powerpc64le-di squashfs-modules-5.10.0-28-powerpc64le-di udf-modules-5.10.0-28-powerpc64le-di fuse-modules-5.10.0-28-powerpc64le-di f2fs-modules-5.10.0-28-powerpc64le-di md-modules-5.10.0-28-powerpc64le-di multipath-modules-5.10.0-28-powerpc64le-di usb-modules-5.10.0-28-powerpc64le-di usb-storage-modules-5.10.0-28-powerpc64le-di fb-modules-5.10.0-28-powerpc64le-di input-modules-5.10.0-28-powerpc64le-di event-modules-5.10.0-28-powerpc64le-di mouse-modules-5.10.0-28-powerpc64le-di nic-usb-modules-5.10.0-28-powerpc64le-di sata-modules-5.10.0-28-powerpc64le-di i2c-modules-5.10.0-28-powerpc64le-di crc-modules-5.10.0-28-powerpc64le-di crypto-modules-5.10.0-28-powerpc64le-di crypto-dm-modules-5.10.0-28-powerpc64le-di ata-modules-5.10.0-28-powerpc64le-di nbd-modules-5.10.0-28-powerpc64le-di uinput-modules-5.10.0-28-powerpc64le-di mtd-core-modules-5.10.0-28-powerpc64le-di hypervisor-modules-5.10.0-28-powerpc64le-di fancontrol-modules-5.10.0-28-powerpc64le-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_ppc64el_none: binary-arch_ppc64el_none_powerpc64le binary-arch_ppc64el_none_real
+binary-arch_ppc64el_none_powerpc64le: binary-arch_ppc64el_none_powerpc64le_real
+binary-arch_ppc64el_none_powerpc64le_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='ppc64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64le' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64le' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-le' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64le\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64le' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64le' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_ppc64el_none_real:
+binary-arch_ppc64el_real:: setup_ppc64el
+binary-arch_ppc64el_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='ppc64el' KERNEL_ARCH='powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_riscv64:: binary-arch_riscv64_none binary-arch_riscv64_real
+binary-arch_riscv64::
+ $(MAKE) -f debian/rules.real install-udeb_riscv64 ABINAME='5.10.0-28' ARCH='riscv64' KERNEL_ARCH='riscv' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-riscv64-di nic-modules-5.10.0-28-riscv64-di nic-wireless-modules-5.10.0-28-riscv64-di nic-shared-modules-5.10.0-28-riscv64-di usb-serial-modules-5.10.0-28-riscv64-di ppp-modules-5.10.0-28-riscv64-di pata-modules-5.10.0-28-riscv64-di cdrom-core-modules-5.10.0-28-riscv64-di scsi-core-modules-5.10.0-28-riscv64-di scsi-modules-5.10.0-28-riscv64-di scsi-nic-modules-5.10.0-28-riscv64-di loop-modules-5.10.0-28-riscv64-di btrfs-modules-5.10.0-28-riscv64-di ext4-modules-5.10.0-28-riscv64-di isofs-modules-5.10.0-28-riscv64-di jfs-modules-5.10.0-28-riscv64-di fat-modules-5.10.0-28-riscv64-di squashfs-modules-5.10.0-28-riscv64-di udf-modules-5.10.0-28-riscv64-di fuse-modules-5.10.0-28-riscv64-di f2fs-modules-5.10.0-28-riscv64-di md-modules-5.10.0-28-riscv64-di multipath-modules-5.10.0-28-riscv64-di usb-modules-5.10.0-28-riscv64-di usb-storage-modules-5.10.0-28-riscv64-di fb-modules-5.10.0-28-riscv64-di input-modules-5.10.0-28-riscv64-di event-modules-5.10.0-28-riscv64-di nic-usb-modules-5.10.0-28-riscv64-di sata-modules-5.10.0-28-riscv64-di i2c-modules-5.10.0-28-riscv64-di crc-modules-5.10.0-28-riscv64-di crypto-modules-5.10.0-28-riscv64-di crypto-dm-modules-5.10.0-28-riscv64-di ata-modules-5.10.0-28-riscv64-di mmc-core-modules-5.10.0-28-riscv64-di mmc-modules-5.10.0-28-riscv64-di nbd-modules-5.10.0-28-riscv64-di mtd-modules-5.10.0-28-riscv64-di mtd-core-modules-5.10.0-28-riscv64-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_riscv64_none: binary-arch_riscv64_none_real binary-arch_riscv64_none_riscv64
+binary-arch_riscv64_none_real:
+binary-arch_riscv64_none_riscv64: binary-arch_riscv64_none_riscv64_real
+binary-arch_riscv64_none_riscv64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='riscv64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='riscv64' IMAGE_FILE='arch/riscv/boot/Image' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-riscv64' KCONFIG='debian/config/config debian/config/riscv64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-riscv64\""' KERNEL_ARCH='riscv' LOCALVERSION='-riscv64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-riscv64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_riscv64_real:: setup_riscv64
+binary-arch_riscv64_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='riscv64' KERNEL_ARCH='riscv' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_s390: binary-arch_s390_extra binary-arch_s390_real
+binary-arch_s390_extra::
+ $(MAKE) -f debian/rules.real install-dummy ARCH='s390' DH_OPTIONS='-plinux-compiler-gcc-10-s390'
+binary-arch_s390_real:: setup_s390
+binary-arch_s390_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='s390' KERNEL_ARCH='s390' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_s390x:: binary-arch_s390x_extra binary-arch_s390x_none binary-arch_s390x_real
+binary-arch_s390x::
+ $(MAKE) -f debian/rules.real install-udeb_s390x ABINAME='5.10.0-28' ARCH='s390x' KERNEL_ARCH='s390' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-s390x-di nic-modules-5.10.0-28-s390x-di cdrom-core-modules-5.10.0-28-s390x-di scsi-core-modules-5.10.0-28-s390x-di scsi-modules-5.10.0-28-s390x-di loop-modules-5.10.0-28-s390x-di btrfs-modules-5.10.0-28-s390x-di ext4-modules-5.10.0-28-s390x-di isofs-modules-5.10.0-28-s390x-di xfs-modules-5.10.0-28-s390x-di fat-modules-5.10.0-28-s390x-di udf-modules-5.10.0-28-s390x-di fuse-modules-5.10.0-28-s390x-di f2fs-modules-5.10.0-28-s390x-di md-modules-5.10.0-28-s390x-di multipath-modules-5.10.0-28-s390x-di crc-modules-5.10.0-28-s390x-di crypto-modules-5.10.0-28-s390x-di crypto-dm-modules-5.10.0-28-s390x-di nbd-modules-5.10.0-28-s390x-di mtd-core-modules-5.10.0-28-s390x-di dasd-modules-5.10.0-28-s390x-di dasd-extra-modules-5.10.0-28-s390x-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_s390x_extra::
+ $(MAKE) -f debian/rules.real install-dummy ARCH='s390x' DH_OPTIONS='-plinux-compiler-gcc-10-s390'
+binary-arch_s390x_none: binary-arch_s390x_none_real binary-arch_s390x_none_s390x
+binary-arch_s390x_none_real:
+binary-arch_s390x_none_s390x: binary-arch_s390x_none_s390x_real
+binary-arch_s390x_none_s390x_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='s390x' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='s390x' IMAGE_FILE='arch/s390/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-s390x' KCONFIG='debian/config/config debian/config/s390x/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-s390x\""' KERNEL_ARCH='s390' LOCALVERSION='-s390x' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-s390x' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+binary-arch_s390x_real:: setup_s390x
+binary-arch_s390x_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='s390x' KERNEL_ARCH='s390' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_sh3: binary-arch_sh3_real
+binary-arch_sh3_real:: setup_sh3
+binary-arch_sh3_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='sh3' KERNEL_ARCH='sh' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_sh4:: binary-arch_sh4_none binary-arch_sh4_real
+binary-arch_sh4::
+ $(MAKE) -f debian/rules.real install-udeb_sh4 ABINAME='5.10.0-28' ARCH='sh4' KERNEL_ARCH='sh' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-sh7751r-di nic-modules-5.10.0-28-sh7751r-di nic-shared-modules-5.10.0-28-sh7751r-di usb-serial-modules-5.10.0-28-sh7751r-di ppp-modules-5.10.0-28-sh7751r-di pata-modules-5.10.0-28-sh7751r-di cdrom-core-modules-5.10.0-28-sh7751r-di firewire-core-modules-5.10.0-28-sh7751r-di loop-modules-5.10.0-28-sh7751r-di btrfs-modules-5.10.0-28-sh7751r-di ext4-modules-5.10.0-28-sh7751r-di isofs-modules-5.10.0-28-sh7751r-di jfs-modules-5.10.0-28-sh7751r-di xfs-modules-5.10.0-28-sh7751r-di fat-modules-5.10.0-28-sh7751r-di minix-modules-5.10.0-28-sh7751r-di squashfs-modules-5.10.0-28-sh7751r-di udf-modules-5.10.0-28-sh7751r-di fuse-modules-5.10.0-28-sh7751r-di f2fs-modules-5.10.0-28-sh7751r-di md-modules-5.10.0-28-sh7751r-di multipath-modules-5.10.0-28-sh7751r-di usb-storage-modules-5.10.0-28-sh7751r-di nic-usb-modules-5.10.0-28-sh7751r-di sata-modules-5.10.0-28-sh7751r-di i2c-modules-5.10.0-28-sh7751r-di crc-modules-5.10.0-28-sh7751r-di crypto-modules-5.10.0-28-sh7751r-di crypto-dm-modules-5.10.0-28-sh7751r-di nbd-modules-5.10.0-28-sh7751r-di speakup-modules-5.10.0-28-sh7751r-di sound-modules-5.10.0-28-sh7751r-di kernel-image-5.10.0-28-sh7785lcr-di nic-modules-5.10.0-28-sh7785lcr-di nic-shared-modules-5.10.0-28-sh7785lcr-di usb-serial-modules-5.10.0-28-sh7785lcr-di ppp-modules-5.10.0-28-sh7785lcr-di pata-modules-5.10.0-28-sh7785lcr-di cdrom-core-modules-5.10.0-28-sh7785lcr-di firewire-core-modules-5.10.0-28-sh7785lcr-di loop-modules-5.10.0-28-sh7785lcr-di btrfs-modules-5.10.0-28-sh7785lcr-di ext4-modules-5.10.0-28-sh7785lcr-di isofs-modules-5.10.0-28-sh7785lcr-di jfs-modules-5.10.0-28-sh7785lcr-di xfs-modules-5.10.0-28-sh7785lcr-di fat-modules-5.10.0-28-sh7785lcr-di minix-modules-5.10.0-28-sh7785lcr-di squashfs-modules-5.10.0-28-sh7785lcr-di udf-modules-5.10.0-28-sh7785lcr-di fuse-modules-5.10.0-28-sh7785lcr-di f2fs-modules-5.10.0-28-sh7785lcr-di md-modules-5.10.0-28-sh7785lcr-di multipath-modules-5.10.0-28-sh7785lcr-di nic-usb-modules-5.10.0-28-sh7785lcr-di sata-modules-5.10.0-28-sh7785lcr-di crc-modules-5.10.0-28-sh7785lcr-di crypto-modules-5.10.0-28-sh7785lcr-di crypto-dm-modules-5.10.0-28-sh7785lcr-di nbd-modules-5.10.0-28-sh7785lcr-di speakup-modules-5.10.0-28-sh7785lcr-di sound-modules-5.10.0-28-sh7785lcr-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_sh4_none: binary-arch_sh4_none_real binary-arch_sh4_none_sh7751r binary-arch_sh4_none_sh7785lcr
+binary-arch_sh4_none_real:
+binary-arch_sh4_none_sh7751r: binary-arch_sh4_none_sh7751r_real
+binary-arch_sh4_none_sh7751r_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='sh4' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sh7751r' IMAGE_FILE='arch/sh/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sh7751r' KCONFIG='debian/config/config debian/config/sh4/config debian/config/sh4/config.sh7751r' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sh7751r\""' KERNEL_ARCH='sh' LOCALVERSION='-sh7751r' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sh7751r' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_sh4_none_sh7785lcr: binary-arch_sh4_none_sh7785lcr_real
+binary-arch_sh4_none_sh7785lcr_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='sh4' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sh7785lcr' IMAGE_FILE='arch/sh/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sh7785lcr' KCONFIG='debian/config/config debian/config/sh4/config debian/config/sh4/config.sh7785lcr' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sh7785lcr\""' KERNEL_ARCH='sh' LOCALVERSION='-sh7785lcr' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sh7785lcr' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_sh4_real:: setup_sh4
+binary-arch_sh4_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='sh4' KERNEL_ARCH='sh' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_sparc: binary-arch_sparc_real
+binary-arch_sparc64:: binary-arch_sparc64_none binary-arch_sparc64_real
+binary-arch_sparc64::
+ $(MAKE) -f debian/rules.real install-udeb_sparc64 ABINAME='5.10.0-28' ARCH='sparc64' KERNEL_ARCH='sparc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10' PACKAGE_NAMES='kernel-image-5.10.0-28-sparc64-di nic-modules-5.10.0-28-sparc64-di nic-shared-modules-5.10.0-28-sparc64-di usb-serial-modules-5.10.0-28-sparc64-di ppp-modules-5.10.0-28-sparc64-di pata-modules-5.10.0-28-sparc64-di cdrom-core-modules-5.10.0-28-sparc64-di scsi-core-modules-5.10.0-28-sparc64-di scsi-modules-5.10.0-28-sparc64-di btrfs-modules-5.10.0-28-sparc64-di ext4-modules-5.10.0-28-sparc64-di isofs-modules-5.10.0-28-sparc64-di jfs-modules-5.10.0-28-sparc64-di ufs-modules-5.10.0-28-sparc64-di xfs-modules-5.10.0-28-sparc64-di fat-modules-5.10.0-28-sparc64-di squashfs-modules-5.10.0-28-sparc64-di udf-modules-5.10.0-28-sparc64-di fuse-modules-5.10.0-28-sparc64-di f2fs-modules-5.10.0-28-sparc64-di md-modules-5.10.0-28-sparc64-di multipath-modules-5.10.0-28-sparc64-di usb-modules-5.10.0-28-sparc64-di usb-storage-modules-5.10.0-28-sparc64-di fb-modules-5.10.0-28-sparc64-di input-modules-5.10.0-28-sparc64-di nic-usb-modules-5.10.0-28-sparc64-di sata-modules-5.10.0-28-sparc64-di i2c-modules-5.10.0-28-sparc64-di crc-modules-5.10.0-28-sparc64-di crypto-modules-5.10.0-28-sparc64-di crypto-dm-modules-5.10.0-28-sparc64-di ata-modules-5.10.0-28-sparc64-di nbd-modules-5.10.0-28-sparc64-di' UDEB_UNSIGNED_TEST_BUILD=False
+binary-arch_sparc64_none: binary-arch_sparc64_none_real binary-arch_sparc64_none_sparc64 binary-arch_sparc64_none_sparc64-smp
+binary-arch_sparc64_none_real:
+binary-arch_sparc64_none_sparc64: binary-arch_sparc64_none_sparc64_real
+binary-arch_sparc64_none_sparc64-smp: binary-arch_sparc64_none_sparc64-smp_real
+binary-arch_sparc64_none_sparc64-smp_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='sparc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sparc64-smp' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sparc64-smp' KCONFIG='debian/config/config debian/config/kernelarch-sparc/config debian/config/kernelarch-sparc/config-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sparc64-smp\""' KERNEL_ARCH='sparc' LOCALVERSION='-sparc64-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sparc64-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_sparc64_none_sparc64_real::
+ $(MAKE) -f debian/rules.real binary-arch-flavour ABINAME='5.10.0-28' ARCH='sparc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sparc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sparc64' KCONFIG='debian/config/config debian/config/kernelarch-sparc/config debian/config/kernelarch-sparc/config-up' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sparc64\""' KERNEL_ARCH='sparc' LOCALVERSION='-sparc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sparc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_sparc64_real:: setup_sparc64
+binary-arch_sparc64_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='sparc64' KERNEL_ARCH='sparc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_sparc_real:: setup_sparc
+binary-arch_sparc_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='sparc' KERNEL_ARCH='sparc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-arch_x32: binary-arch_x32_extra binary-arch_x32_real
+binary-arch_x32_extra::
+ $(MAKE) -f debian/rules.real install-dummy ARCH='x32' DH_OPTIONS='-plinux-compiler-gcc-10-x86'
+binary-arch_x32_real:: setup_x32
+binary-arch_x32_real::
+ $(MAKE) -f debian/rules.real binary-arch-arch ABINAME='5.10.0-28' ARCH='x32' KERNEL_ARCH='x86' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-indep:: binary-indep_none binary-indep_rt
+binary-indep::
+ $(MAKE) -f debian/rules.real binary-indep ABINAME='5.10.0-28' ALL_FEATURESETS='none rt' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-indep_none: binary-indep_none_real
+binary-indep_none_real::
+ $(MAKE) -f debian/rules.real binary-indep-featureset ABINAME='5.10.0-28' ALL_KERNEL_ARCHES='alpha arm arm64 ia64 m68k mips parisc powerpc riscv s390 sh sparc x86' FEATURESET='none' LOCALVERSION='' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+binary-indep_rt: binary-indep_rt_real
+binary-indep_rt_real::
+ $(MAKE) -f debian/rules.real binary-indep-featureset ABINAME='5.10.0-28' ALL_KERNEL_ARCHES='arm arm64 x86' FEATURESET='rt' LOCALVERSION='-rt' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch: build-arch_alpha build-arch_amd64 build-arch_arm64 build-arch_arm64ilp32 build-arch_armel build-arch_armhf build-arch_hppa build-arch_i386 build-arch_ia64 build-arch_m68k build-arch_mips build-arch_mips64 build-arch_mips64el build-arch_mips64r6 build-arch_mips64r6el build-arch_mipsel build-arch_mipsn32 build-arch_mipsn32el build-arch_mipsn32r6 build-arch_mipsn32r6el build-arch_mipsr6 build-arch_mipsr6el build-arch_powerpc build-arch_ppc64 build-arch_ppc64el build-arch_riscv64 build-arch_s390 build-arch_s390x build-arch_sh3 build-arch_sh4 build-arch_sparc build-arch_sparc64 build-arch_x32
+build-arch_alpha: build-arch_alpha_none build-arch_alpha_real
+build-arch_alpha_none: build-arch_alpha_none_alpha-generic build-arch_alpha_none_alpha-smp build-arch_alpha_none_real
+build-arch_alpha_none_alpha-generic: build-arch_alpha_none_alpha-generic_real
+build-arch_alpha_none_alpha-generic_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='alpha' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='alpha-generic' IMAGE_FILE='arch/alpha/boot/vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-alpha-generic' KCONFIG='debian/config/config debian/config/alpha/config debian/config/alpha/config.alpha-generic' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-alpha-generic\""' KERNEL_ARCH='alpha' LOCALVERSION='-alpha-generic' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-alpha-generic' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_alpha_none_alpha-smp: build-arch_alpha_none_alpha-smp_real
+build-arch_alpha_none_alpha-smp_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='alpha' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='alpha-smp' IMAGE_FILE='arch/alpha/boot/vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-alpha-smp' KCONFIG='debian/config/config debian/config/alpha/config debian/config/alpha/config.alpha-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-alpha-smp\""' KERNEL_ARCH='alpha' LOCALVERSION='-alpha-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-alpha-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_alpha_none_real:
+build-arch_alpha_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='alpha' KERNEL_ARCH='alpha' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_amd64: build-arch_amd64_none build-arch_amd64_real build-arch_amd64_rt
+build-arch_amd64_none: build-arch_amd64_none_amd64 build-arch_amd64_none_cloud-amd64 build-arch_amd64_none_real
+build-arch_amd64_none_amd64: build-arch_amd64_none_amd64_real
+build-arch_amd64_none_amd64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-amd64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_amd64_none_cloud-amd64: build-arch_amd64_none_cloud-amd64_real
+build-arch_amd64_none_cloud-amd64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='cloud-amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-cloud-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config debian/config/amd64/config.cloud-amd64 debian/config/config.cloud debian/config/amd64/config.cloud-amd64' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-cloud-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-cloud-amd64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-cloud-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_amd64_none_real:
+build-arch_amd64_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='amd64' KERNEL_ARCH='x86' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_amd64_rt: build-arch_amd64_rt_amd64 build-arch_amd64_rt_real
+build-arch_amd64_rt_amd64: build-arch_amd64_rt_amd64_real
+build-arch_amd64_rt_amd64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-rt-amd64' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_amd64_rt_real:
+build-arch_arm64: build-arch_arm64_none build-arch_arm64_real build-arch_arm64_rt
+build-arch_arm64_none: build-arch_arm64_none_arm64 build-arch_arm64_none_cloud-arm64 build-arch_arm64_none_real
+build-arch_arm64_none_arm64: build-arch_arm64_none_arm64_real
+build-arch_arm64_none_arm64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='none' FLAVOUR='arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-arm64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_arm64_none_cloud-arm64: build-arch_arm64_none_cloud-arm64_real
+build-arch_arm64_none_cloud-arm64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='none' FLAVOUR='cloud-arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-cloud-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config debian/config/arm64/config.cloud-arm64 debian/config/config.cloud debian/config/arm64/config.cloud-arm64' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-cloud-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-cloud-arm64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-cloud-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_arm64_none_real:
+build-arch_arm64_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='arm64' KERNEL_ARCH='arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_arm64_rt: build-arch_arm64_rt_arm64 build-arch_arm64_rt_real
+build-arch_arm64_rt_arm64: build-arch_arm64_rt_arm64_real
+build-arch_arm64_rt_arm64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='rt' FLAVOUR='arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config debian/config/featureset-rt/config debian/config/arm64/rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-rt-arm64' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_arm64_rt_real:
+build-arch_arm64ilp32: build-arch_arm64ilp32_real
+build-arch_arm64ilp32_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='arm64ilp32' KERNEL_ARCH='arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_armel: build-arch_armel_none build-arch_armel_real
+build-arch_armel_none: build-arch_armel_none_marvell build-arch_armel_none_real build-arch_armel_none_rpi
+build-arch_armel_none_marvell: build-arch_armel_none_marvell_real
+build-arch_armel_none_marvell_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='armel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='marvell' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-marvell' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armel/config debian/config/armel/config.marvell' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-marvell\""' KERNEL_ARCH='arm' LOCALVERSION='-marvell' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-marvell' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_armel_none_real:
+build-arch_armel_none_rpi: build-arch_armel_none_rpi_real
+build-arch_armel_none_rpi_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='armel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='rpi' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rpi' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armel/config debian/config/armel/config.rpi' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-rpi\""' KERNEL_ARCH='arm' LOCALVERSION='-rpi' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-rpi' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_armel_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='armel' KERNEL_ARCH='arm' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_armhf: build-arch_armhf_none build-arch_armhf_real build-arch_armhf_rt
+build-arch_armhf_none: build-arch_armhf_none_armmp build-arch_armhf_none_armmp-lpae build-arch_armhf_none_real
+build-arch_armhf_none_armmp: build-arch_armhf_none_armmp_real
+build-arch_armhf_none_armmp-lpae: build-arch_armhf_none_armmp-lpae_real
+build-arch_armhf_none_armmp-lpae_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='armmp-lpae' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-armmp-lpae' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config debian/config/armhf/config.armmp-lpae' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-armmp-lpae\""' KERNEL_ARCH='arm' LOCALVERSION='-armmp-lpae' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-armmp-lpae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_armhf_none_armmp_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='armmp' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-armmp' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-armmp\""' KERNEL_ARCH='arm' LOCALVERSION='-armmp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-armmp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_armhf_none_real:
+build-arch_armhf_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='armhf' KERNEL_ARCH='arm' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_armhf_rt: build-arch_armhf_rt_armmp build-arch_armhf_rt_real
+build-arch_armhf_rt_armmp: build-arch_armhf_rt_armmp_real
+build-arch_armhf_rt_armmp_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='armmp' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-armmp' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-rt-armmp\""' KERNEL_ARCH='arm' LOCALVERSION='-rt-armmp' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-armmp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_armhf_rt_real:
+build-arch_hppa: build-arch_hppa_none build-arch_hppa_real
+build-arch_hppa_none: build-arch_hppa_none_parisc build-arch_hppa_none_parisc64 build-arch_hppa_none_real
+build-arch_hppa_none_parisc: build-arch_hppa_none_parisc_real
+build-arch_hppa_none_parisc64: build-arch_hppa_none_parisc64_real
+build-arch_hppa_none_parisc64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='hppa' COMPILER='gcc-10' FEATURESET='none' FLAVOUR='parisc64' IMAGE_FILE='arch/parisc/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-parisc64' KCFLAGS='-fno-cse-follow-jumps' KCONFIG='debian/config/config debian/config/hppa/config debian/config/hppa/config.parisc64' KCONFIG_OPTIONS=' -o "BUILD_SALT=\"5.10.0-28-parisc64\""' KERNEL_ARCH='parisc' LOCALVERSION='-parisc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-parisc64' OVERRIDE_HOST_TYPE='hppa64-linux-gnu' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_hppa_none_parisc_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='hppa' COMPILER='gcc-10' FEATURESET='none' FLAVOUR='parisc' IMAGE_FILE='arch/parisc/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-parisc' KCONFIG='debian/config/config debian/config/hppa/config debian/config/hppa/config.parisc' KCONFIG_OPTIONS=' -o "BUILD_SALT=\"5.10.0-28-parisc\""' KERNEL_ARCH='parisc' LOCALVERSION='-parisc' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-parisc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_hppa_none_real:
+build-arch_hppa_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='hppa' KERNEL_ARCH='parisc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_i386: build-arch_i386_none build-arch_i386_real build-arch_i386_rt
+build-arch_i386_none: build-arch_i386_none_686 build-arch_i386_none_686-pae build-arch_i386_none_real
+build-arch_i386_none_686: build-arch_i386_none_686_real
+build-arch_i386_none_686-pae: build-arch_i386_none_686-pae_real
+build-arch_i386_none_686-pae_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='686-pae' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-686-pae-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686-pae' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-686-pae\""' KERNEL_ARCH='x86' LOCALVERSION='-686-pae' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-686-pae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_i386_none_686_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='686' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-686-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-686\""' KERNEL_ARCH='x86' LOCALVERSION='-686' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-686' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_i386_none_real:
+build-arch_i386_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='i386' KERNEL_ARCH='x86' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_i386_rt: build-arch_i386_rt_686-pae build-arch_i386_rt_real
+build-arch_i386_rt_686-pae: build-arch_i386_rt_686-pae_real
+build-arch_i386_rt_686-pae_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='686-pae' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-686-pae-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686-pae debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-686-pae\""' KERNEL_ARCH='x86' LOCALVERSION='-rt-686-pae' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-686-pae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_i386_rt_real:
+build-arch_ia64: build-arch_ia64_none build-arch_ia64_real
+build-arch_ia64_none: build-arch_ia64_none_itanium build-arch_ia64_none_mckinley build-arch_ia64_none_real
+build-arch_ia64_none_itanium: build-arch_ia64_none_itanium_real
+build-arch_ia64_none_itanium_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='ia64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='itanium' IMAGE_FILE='vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-itanium' KCONFIG='debian/config/config debian/config/ia64/config debian/config/ia64/config.itanium' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-itanium\""' KERNEL_ARCH='ia64' LOCALVERSION='-itanium' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-itanium' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_ia64_none_mckinley: build-arch_ia64_none_mckinley_real
+build-arch_ia64_none_mckinley_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='ia64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mckinley' IMAGE_FILE='vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mckinley' KCONFIG='debian/config/config debian/config/ia64/config debian/config/ia64/config.mckinley' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mckinley\""' KERNEL_ARCH='ia64' LOCALVERSION='-mckinley' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mckinley' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_ia64_none_real:
+build-arch_ia64_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='ia64' KERNEL_ARCH='ia64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_m68k: build-arch_m68k_none build-arch_m68k_real
+build-arch_m68k_none: build-arch_m68k_none_m68k build-arch_m68k_none_real
+build-arch_m68k_none_m68k: build-arch_m68k_none_m68k_real
+build-arch_m68k_none_m68k_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='m68k' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='m68k' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-m68k' KCFLAGS='-ffreestanding' KCONFIG='debian/config/config debian/config/m68k/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-m68k\""' KERNEL_ARCH='m68k' LOCALVERSION='-m68k' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-m68k' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_m68k_none_real:
+build-arch_m68k_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='m68k' KERNEL_ARCH='m68k' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips: build-arch_mips_none build-arch_mips_real
+build-arch_mips64: build-arch_mips64_none build-arch_mips64_real
+build-arch_mips64_none: build-arch_mips64_none_5kc-malta build-arch_mips64_none_octeon build-arch_mips64_none_real
+build-arch_mips64_none_5kc-malta: build-arch_mips64_none_5kc-malta_real
+build-arch_mips64_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mips64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips64_none_octeon: build-arch_mips64_none_octeon_real
+build-arch_mips64_none_octeon_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mips64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips64_none_real:
+build-arch_mips64_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mips64' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips64el: build-arch_mips64el_none build-arch_mips64el_real
+build-arch_mips64el_none: build-arch_mips64el_none_5kc-malta build-arch_mips64el_none_loongson-3 build-arch_mips64el_none_octeon build-arch_mips64el_none_real
+build-arch_mips64el_none_5kc-malta: build-arch_mips64el_none_5kc-malta_real
+build-arch_mips64el_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips64el_none_loongson-3: build-arch_mips64el_none_loongson-3_real
+build-arch_mips64el_none_loongson-3_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='loongson-3' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-loongson-3' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.loongson-3' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-loongson-3\""' KERNEL_ARCH='mips' LOCALVERSION='-loongson-3' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-loongson-3' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips64el_none_octeon: build-arch_mips64el_none_octeon_real
+build-arch_mips64el_none_octeon_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips64el_none_real:
+build-arch_mips64el_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mips64el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips64r6: build-arch_mips64r6_none build-arch_mips64r6_real
+build-arch_mips64r6_none: build-arch_mips64r6_none_mips64r6 build-arch_mips64r6_none_real
+build-arch_mips64r6_none_mips64r6: build-arch_mips64r6_none_mips64r6_real
+build-arch_mips64r6_none_mips64r6_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mips64r6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64r6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips64r6_none_real:
+build-arch_mips64r6_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mips64r6' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips64r6el: build-arch_mips64r6el_none build-arch_mips64r6el_real
+build-arch_mips64r6el_none: build-arch_mips64r6el_none_mips64r6el build-arch_mips64r6el_none_real
+build-arch_mips64r6el_none_mips64r6el: build-arch_mips64r6el_none_mips64r6el_real
+build-arch_mips64r6el_none_mips64r6el_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mips64r6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64r6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips64r6el_none_real:
+build-arch_mips64r6el_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mips64r6el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips_none: build-arch_mips_none_4kc-malta build-arch_mips_none_5kc-malta build-arch_mips_none_octeon build-arch_mips_none_real
+build-arch_mips_none_4kc-malta: build-arch_mips_none_4kc-malta_real
+build-arch_mips_none_4kc-malta_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='4kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-4kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips32r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-4kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-4kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-4kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips_none_5kc-malta: build-arch_mips_none_5kc-malta_real
+build-arch_mips_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips_none_octeon: build-arch_mips_none_octeon_real
+build-arch_mips_none_octeon_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mips_none_real:
+build-arch_mips_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mips' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsel: build-arch_mipsel_none build-arch_mipsel_real
+build-arch_mipsel_none: build-arch_mipsel_none_4kc-malta build-arch_mipsel_none_5kc-malta build-arch_mipsel_none_loongson-3 build-arch_mipsel_none_octeon build-arch_mipsel_none_real
+build-arch_mipsel_none_4kc-malta: build-arch_mipsel_none_4kc-malta_real
+build-arch_mipsel_none_4kc-malta_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='4kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-4kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips32r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-4kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-4kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-4kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsel_none_5kc-malta: build-arch_mipsel_none_5kc-malta_real
+build-arch_mipsel_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsel_none_loongson-3: build-arch_mipsel_none_loongson-3_real
+build-arch_mipsel_none_loongson-3_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='loongson-3' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-loongson-3' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.loongson-3' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-loongson-3\""' KERNEL_ARCH='mips' LOCALVERSION='-loongson-3' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-loongson-3' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsel_none_octeon: build-arch_mipsel_none_octeon_real
+build-arch_mipsel_none_octeon_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsel_none_real:
+build-arch_mipsel_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mipsel' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsn32: build-arch_mipsn32_real
+build-arch_mipsn32_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mipsn32' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsn32el: build-arch_mipsn32el_real
+build-arch_mipsn32el_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mipsn32el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsn32r6: build-arch_mipsn32r6_real
+build-arch_mipsn32r6_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mipsn32r6' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsn32r6el: build-arch_mipsn32r6el_real
+build-arch_mipsn32r6el_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mipsn32r6el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsr6: build-arch_mipsr6_none build-arch_mipsr6_real
+build-arch_mipsr6_none: build-arch_mipsr6_none_mips32r6 build-arch_mipsr6_none_mips64r6 build-arch_mipsr6_none_real
+build-arch_mipsr6_none_mips32r6: build-arch_mipsr6_none_mips32r6_real
+build-arch_mipsr6_none_mips32r6_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips32r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips32r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips32r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips32r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips32r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips32r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsr6_none_mips64r6: build-arch_mipsr6_none_mips64r6_real
+build-arch_mipsr6_none_mips64r6_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsr6_none_real:
+build-arch_mipsr6_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mipsr6' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsr6el: build-arch_mipsr6el_none build-arch_mipsr6el_real
+build-arch_mipsr6el_none: build-arch_mipsr6el_none_mips32r6el build-arch_mipsr6el_none_mips64r6el build-arch_mipsr6el_none_real
+build-arch_mipsr6el_none_mips32r6el: build-arch_mipsr6el_none_mips32r6el_real
+build-arch_mipsr6el_none_mips32r6el_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips32r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips32r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips32r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips32r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips32r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips32r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsr6el_none_mips64r6el: build-arch_mipsr6el_none_mips64r6el_real
+build-arch_mipsr6el_none_mips64r6el_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_mipsr6el_none_real:
+build-arch_mipsr6el_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='mipsr6el' KERNEL_ARCH='mips' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_powerpc: build-arch_powerpc_none build-arch_powerpc_real
+build-arch_powerpc_none: build-arch_powerpc_none_powerpc build-arch_powerpc_none_powerpc-smp build-arch_powerpc_none_powerpc64 build-arch_powerpc_none_real
+build-arch_powerpc_none_powerpc: build-arch_powerpc_none_powerpc_real
+build-arch_powerpc_none_powerpc-smp: build-arch_powerpc_none_powerpc-smp_real
+build-arch_powerpc_none_powerpc-smp_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc-smp' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc-smp' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/powerpc/config.powerpc debian/config/powerpc/config.powerpc-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc-smp\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_powerpc_none_powerpc64: build-arch_powerpc_none_powerpc64_real
+build-arch_powerpc_none_powerpc64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-be' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_powerpc_none_powerpc_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/powerpc/config.powerpc' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_powerpc_none_real:
+build-arch_powerpc_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='powerpc' KERNEL_ARCH='powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_ppc64: build-arch_ppc64_none build-arch_ppc64_real
+build-arch_ppc64_none: build-arch_ppc64_none_powerpc64 build-arch_ppc64_none_real
+build-arch_ppc64_none_powerpc64: build-arch_ppc64_none_powerpc64_real
+build-arch_ppc64_none_powerpc64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='ppc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-be' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_ppc64_none_real:
+build-arch_ppc64_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='ppc64' KERNEL_ARCH='powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_ppc64el: build-arch_ppc64el_none build-arch_ppc64el_real
+build-arch_ppc64el_none: build-arch_ppc64el_none_powerpc64le build-arch_ppc64el_none_real
+build-arch_ppc64el_none_powerpc64le: build-arch_ppc64el_none_powerpc64le_real
+build-arch_ppc64el_none_powerpc64le_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='ppc64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64le' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64le' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-le' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64le\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64le' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64le' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_ppc64el_none_real:
+build-arch_ppc64el_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='ppc64el' KERNEL_ARCH='powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_riscv64: build-arch_riscv64_none build-arch_riscv64_real
+build-arch_riscv64_none: build-arch_riscv64_none_real build-arch_riscv64_none_riscv64
+build-arch_riscv64_none_real:
+build-arch_riscv64_none_riscv64: build-arch_riscv64_none_riscv64_real
+build-arch_riscv64_none_riscv64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='riscv64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='riscv64' IMAGE_FILE='arch/riscv/boot/Image' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-riscv64' KCONFIG='debian/config/config debian/config/riscv64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-riscv64\""' KERNEL_ARCH='riscv' LOCALVERSION='-riscv64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-riscv64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_riscv64_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='riscv64' KERNEL_ARCH='riscv' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_s390: build-arch_s390_real
+build-arch_s390_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='s390' KERNEL_ARCH='s390' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_s390x: build-arch_s390x_none build-arch_s390x_real
+build-arch_s390x_none: build-arch_s390x_none_real build-arch_s390x_none_s390x
+build-arch_s390x_none_real:
+build-arch_s390x_none_s390x: build-arch_s390x_none_s390x_real
+build-arch_s390x_none_s390x_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='s390x' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='s390x' IMAGE_FILE='arch/s390/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-s390x' KCONFIG='debian/config/config debian/config/s390x/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-s390x\""' KERNEL_ARCH='s390' LOCALVERSION='-s390x' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-s390x' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+build-arch_s390x_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='s390x' KERNEL_ARCH='s390' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_sh3: build-arch_sh3_real
+build-arch_sh3_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='sh3' KERNEL_ARCH='sh' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_sh4: build-arch_sh4_none build-arch_sh4_real
+build-arch_sh4_none: build-arch_sh4_none_real build-arch_sh4_none_sh7751r build-arch_sh4_none_sh7785lcr
+build-arch_sh4_none_real:
+build-arch_sh4_none_sh7751r: build-arch_sh4_none_sh7751r_real
+build-arch_sh4_none_sh7751r_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='sh4' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sh7751r' IMAGE_FILE='arch/sh/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sh7751r' KCONFIG='debian/config/config debian/config/sh4/config debian/config/sh4/config.sh7751r' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sh7751r\""' KERNEL_ARCH='sh' LOCALVERSION='-sh7751r' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sh7751r' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_sh4_none_sh7785lcr: build-arch_sh4_none_sh7785lcr_real
+build-arch_sh4_none_sh7785lcr_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='sh4' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sh7785lcr' IMAGE_FILE='arch/sh/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sh7785lcr' KCONFIG='debian/config/config debian/config/sh4/config debian/config/sh4/config.sh7785lcr' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sh7785lcr\""' KERNEL_ARCH='sh' LOCALVERSION='-sh7785lcr' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sh7785lcr' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_sh4_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='sh4' KERNEL_ARCH='sh' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_sparc: build-arch_sparc_real
+build-arch_sparc64: build-arch_sparc64_none build-arch_sparc64_real
+build-arch_sparc64_none: build-arch_sparc64_none_real build-arch_sparc64_none_sparc64 build-arch_sparc64_none_sparc64-smp
+build-arch_sparc64_none_real:
+build-arch_sparc64_none_sparc64: build-arch_sparc64_none_sparc64_real
+build-arch_sparc64_none_sparc64-smp: build-arch_sparc64_none_sparc64-smp_real
+build-arch_sparc64_none_sparc64-smp_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='sparc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sparc64-smp' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sparc64-smp' KCONFIG='debian/config/config debian/config/kernelarch-sparc/config debian/config/kernelarch-sparc/config-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sparc64-smp\""' KERNEL_ARCH='sparc' LOCALVERSION='-sparc64-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sparc64-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_sparc64_none_sparc64_real::
+ $(MAKE) -f debian/rules.real build-arch-flavour ABINAME='5.10.0-28' ARCH='sparc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sparc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sparc64' KCONFIG='debian/config/config debian/config/kernelarch-sparc/config debian/config/kernelarch-sparc/config-up' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sparc64\""' KERNEL_ARCH='sparc' LOCALVERSION='-sparc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sparc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_sparc64_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='sparc64' KERNEL_ARCH='sparc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_sparc_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='sparc' KERNEL_ARCH='sparc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-arch_x32: build-arch_x32_real
+build-arch_x32_real::
+ $(MAKE) -f debian/rules.real build-arch-arch ABINAME='5.10.0-28' ARCH='x32' KERNEL_ARCH='x86' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-indep:: build-indep_none build-indep_rt
+build-indep::
+ $(MAKE) -f debian/rules.real build-indep ABINAME='5.10.0-28' ALL_FEATURESETS='none rt' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+build-indep_none: build-indep_none_real
+build-indep_none_real:
+build-indep_rt: build-indep_rt_real
+build-indep_rt_real:
+debian/build/config.alpha_none_alpha-generic::
+ $(MAKE) -f debian/rules.real debian/build/config.alpha_none_alpha-generic ABINAME='5.10.0-28' ARCH='alpha' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='alpha-generic' IMAGE_FILE='arch/alpha/boot/vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-alpha-generic' KCONFIG='debian/config/config debian/config/alpha/config debian/config/alpha/config.alpha-generic' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-alpha-generic\""' KERNEL_ARCH='alpha' LOCALVERSION='-alpha-generic' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-alpha-generic' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.alpha_none_alpha-smp::
+ $(MAKE) -f debian/rules.real debian/build/config.alpha_none_alpha-smp ABINAME='5.10.0-28' ARCH='alpha' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='alpha-smp' IMAGE_FILE='arch/alpha/boot/vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-alpha-smp' KCONFIG='debian/config/config debian/config/alpha/config debian/config/alpha/config.alpha-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-alpha-smp\""' KERNEL_ARCH='alpha' LOCALVERSION='-alpha-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-alpha-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.amd64_none_amd64::
+ $(MAKE) -f debian/rules.real debian/build/config.amd64_none_amd64 ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-amd64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.amd64_none_cloud-amd64::
+ $(MAKE) -f debian/rules.real debian/build/config.amd64_none_cloud-amd64 ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='cloud-amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-cloud-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config debian/config/amd64/config.cloud-amd64 debian/config/config.cloud debian/config/amd64/config.cloud-amd64' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-cloud-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-cloud-amd64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-cloud-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.amd64_rt_amd64::
+ $(MAKE) -f debian/rules.real debian/build/config.amd64_rt_amd64 ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-rt-amd64' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.arm64_none_arm64::
+ $(MAKE) -f debian/rules.real debian/build/config.arm64_none_arm64 ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='none' FLAVOUR='arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-arm64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.arm64_none_cloud-arm64::
+ $(MAKE) -f debian/rules.real debian/build/config.arm64_none_cloud-arm64 ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='none' FLAVOUR='cloud-arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-cloud-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config debian/config/arm64/config.cloud-arm64 debian/config/config.cloud debian/config/arm64/config.cloud-arm64' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-cloud-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-cloud-arm64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-cloud-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.arm64_rt_arm64::
+ $(MAKE) -f debian/rules.real debian/build/config.arm64_rt_arm64 ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='rt' FLAVOUR='arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config debian/config/featureset-rt/config debian/config/arm64/rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-rt-arm64' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.armel_none_marvell::
+ $(MAKE) -f debian/rules.real debian/build/config.armel_none_marvell ABINAME='5.10.0-28' ARCH='armel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='marvell' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-marvell' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armel/config debian/config/armel/config.marvell' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-marvell\""' KERNEL_ARCH='arm' LOCALVERSION='-marvell' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-marvell' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.armel_none_rpi::
+ $(MAKE) -f debian/rules.real debian/build/config.armel_none_rpi ABINAME='5.10.0-28' ARCH='armel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='rpi' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rpi' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armel/config debian/config/armel/config.rpi' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-rpi\""' KERNEL_ARCH='arm' LOCALVERSION='-rpi' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-rpi' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.armhf_none_armmp::
+ $(MAKE) -f debian/rules.real debian/build/config.armhf_none_armmp ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='armmp' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-armmp' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-armmp\""' KERNEL_ARCH='arm' LOCALVERSION='-armmp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-armmp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.armhf_none_armmp-lpae::
+ $(MAKE) -f debian/rules.real debian/build/config.armhf_none_armmp-lpae ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='armmp-lpae' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-armmp-lpae' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config debian/config/armhf/config.armmp-lpae' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-armmp-lpae\""' KERNEL_ARCH='arm' LOCALVERSION='-armmp-lpae' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-armmp-lpae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.armhf_rt_armmp::
+ $(MAKE) -f debian/rules.real debian/build/config.armhf_rt_armmp ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='armmp' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-armmp' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-rt-armmp\""' KERNEL_ARCH='arm' LOCALVERSION='-rt-armmp' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-armmp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.hppa_none_parisc::
+ $(MAKE) -f debian/rules.real debian/build/config.hppa_none_parisc ABINAME='5.10.0-28' ARCH='hppa' COMPILER='gcc-10' FEATURESET='none' FLAVOUR='parisc' IMAGE_FILE='arch/parisc/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-parisc' KCONFIG='debian/config/config debian/config/hppa/config debian/config/hppa/config.parisc' KCONFIG_OPTIONS=' -o "BUILD_SALT=\"5.10.0-28-parisc\""' KERNEL_ARCH='parisc' LOCALVERSION='-parisc' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-parisc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.hppa_none_parisc64::
+ $(MAKE) -f debian/rules.real debian/build/config.hppa_none_parisc64 ABINAME='5.10.0-28' ARCH='hppa' COMPILER='gcc-10' FEATURESET='none' FLAVOUR='parisc64' IMAGE_FILE='arch/parisc/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-parisc64' KCFLAGS='-fno-cse-follow-jumps' KCONFIG='debian/config/config debian/config/hppa/config debian/config/hppa/config.parisc64' KCONFIG_OPTIONS=' -o "BUILD_SALT=\"5.10.0-28-parisc64\""' KERNEL_ARCH='parisc' LOCALVERSION='-parisc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-parisc64' OVERRIDE_HOST_TYPE='hppa64-linux-gnu' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.i386_none_686::
+ $(MAKE) -f debian/rules.real debian/build/config.i386_none_686 ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='686' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-686-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-686\""' KERNEL_ARCH='x86' LOCALVERSION='-686' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-686' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.i386_none_686-pae::
+ $(MAKE) -f debian/rules.real debian/build/config.i386_none_686-pae ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='686-pae' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-686-pae-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686-pae' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-686-pae\""' KERNEL_ARCH='x86' LOCALVERSION='-686-pae' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-686-pae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.i386_rt_686-pae::
+ $(MAKE) -f debian/rules.real debian/build/config.i386_rt_686-pae ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='686-pae' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-686-pae-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686-pae debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-686-pae\""' KERNEL_ARCH='x86' LOCALVERSION='-rt-686-pae' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-686-pae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.ia64_none_itanium::
+ $(MAKE) -f debian/rules.real debian/build/config.ia64_none_itanium ABINAME='5.10.0-28' ARCH='ia64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='itanium' IMAGE_FILE='vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-itanium' KCONFIG='debian/config/config debian/config/ia64/config debian/config/ia64/config.itanium' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-itanium\""' KERNEL_ARCH='ia64' LOCALVERSION='-itanium' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-itanium' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.ia64_none_mckinley::
+ $(MAKE) -f debian/rules.real debian/build/config.ia64_none_mckinley ABINAME='5.10.0-28' ARCH='ia64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mckinley' IMAGE_FILE='vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mckinley' KCONFIG='debian/config/config debian/config/ia64/config debian/config/ia64/config.mckinley' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mckinley\""' KERNEL_ARCH='ia64' LOCALVERSION='-mckinley' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mckinley' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.m68k_none_m68k::
+ $(MAKE) -f debian/rules.real debian/build/config.m68k_none_m68k ABINAME='5.10.0-28' ARCH='m68k' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='m68k' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-m68k' KCFLAGS='-ffreestanding' KCONFIG='debian/config/config debian/config/m68k/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-m68k\""' KERNEL_ARCH='m68k' LOCALVERSION='-m68k' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-m68k' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mips64_none_5kc-malta::
+ $(MAKE) -f debian/rules.real debian/build/config.mips64_none_5kc-malta ABINAME='5.10.0-28' ARCH='mips64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mips64_none_octeon::
+ $(MAKE) -f debian/rules.real debian/build/config.mips64_none_octeon ABINAME='5.10.0-28' ARCH='mips64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mips64el_none_5kc-malta::
+ $(MAKE) -f debian/rules.real debian/build/config.mips64el_none_5kc-malta ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mips64el_none_loongson-3::
+ $(MAKE) -f debian/rules.real debian/build/config.mips64el_none_loongson-3 ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='loongson-3' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-loongson-3' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.loongson-3' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-loongson-3\""' KERNEL_ARCH='mips' LOCALVERSION='-loongson-3' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-loongson-3' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mips64el_none_octeon::
+ $(MAKE) -f debian/rules.real debian/build/config.mips64el_none_octeon ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mips64r6_none_mips64r6::
+ $(MAKE) -f debian/rules.real debian/build/config.mips64r6_none_mips64r6 ABINAME='5.10.0-28' ARCH='mips64r6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64r6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mips64r6el_none_mips64r6el::
+ $(MAKE) -f debian/rules.real debian/build/config.mips64r6el_none_mips64r6el ABINAME='5.10.0-28' ARCH='mips64r6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64r6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mips_none_4kc-malta::
+ $(MAKE) -f debian/rules.real debian/build/config.mips_none_4kc-malta ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='4kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-4kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips32r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-4kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-4kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-4kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mips_none_5kc-malta::
+ $(MAKE) -f debian/rules.real debian/build/config.mips_none_5kc-malta ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mips_none_octeon::
+ $(MAKE) -f debian/rules.real debian/build/config.mips_none_octeon ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mipsel_none_4kc-malta::
+ $(MAKE) -f debian/rules.real debian/build/config.mipsel_none_4kc-malta ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='4kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-4kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips32r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-4kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-4kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-4kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mipsel_none_5kc-malta::
+ $(MAKE) -f debian/rules.real debian/build/config.mipsel_none_5kc-malta ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mipsel_none_loongson-3::
+ $(MAKE) -f debian/rules.real debian/build/config.mipsel_none_loongson-3 ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='loongson-3' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-loongson-3' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.loongson-3' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-loongson-3\""' KERNEL_ARCH='mips' LOCALVERSION='-loongson-3' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-loongson-3' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mipsel_none_octeon::
+ $(MAKE) -f debian/rules.real debian/build/config.mipsel_none_octeon ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mipsr6_none_mips32r6::
+ $(MAKE) -f debian/rules.real debian/build/config.mipsr6_none_mips32r6 ABINAME='5.10.0-28' ARCH='mipsr6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips32r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips32r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips32r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips32r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips32r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips32r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mipsr6_none_mips64r6::
+ $(MAKE) -f debian/rules.real debian/build/config.mipsr6_none_mips64r6 ABINAME='5.10.0-28' ARCH='mipsr6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mipsr6el_none_mips32r6el::
+ $(MAKE) -f debian/rules.real debian/build/config.mipsr6el_none_mips32r6el ABINAME='5.10.0-28' ARCH='mipsr6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips32r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips32r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips32r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips32r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips32r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips32r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.mipsr6el_none_mips64r6el::
+ $(MAKE) -f debian/rules.real debian/build/config.mipsr6el_none_mips64r6el ABINAME='5.10.0-28' ARCH='mipsr6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.powerpc_none_powerpc::
+ $(MAKE) -f debian/rules.real debian/build/config.powerpc_none_powerpc ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/powerpc/config.powerpc' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.powerpc_none_powerpc-smp::
+ $(MAKE) -f debian/rules.real debian/build/config.powerpc_none_powerpc-smp ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc-smp' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc-smp' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/powerpc/config.powerpc debian/config/powerpc/config.powerpc-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc-smp\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.powerpc_none_powerpc64::
+ $(MAKE) -f debian/rules.real debian/build/config.powerpc_none_powerpc64 ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-be' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.ppc64_none_powerpc64::
+ $(MAKE) -f debian/rules.real debian/build/config.ppc64_none_powerpc64 ABINAME='5.10.0-28' ARCH='ppc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-be' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.ppc64el_none_powerpc64le::
+ $(MAKE) -f debian/rules.real debian/build/config.ppc64el_none_powerpc64le ABINAME='5.10.0-28' ARCH='ppc64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64le' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64le' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-le' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64le\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64le' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64le' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.riscv64_none_riscv64::
+ $(MAKE) -f debian/rules.real debian/build/config.riscv64_none_riscv64 ABINAME='5.10.0-28' ARCH='riscv64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='riscv64' IMAGE_FILE='arch/riscv/boot/Image' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-riscv64' KCONFIG='debian/config/config debian/config/riscv64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-riscv64\""' KERNEL_ARCH='riscv' LOCALVERSION='-riscv64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-riscv64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.s390x_none_s390x::
+ $(MAKE) -f debian/rules.real debian/build/config.s390x_none_s390x ABINAME='5.10.0-28' ARCH='s390x' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='s390x' IMAGE_FILE='arch/s390/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-s390x' KCONFIG='debian/config/config debian/config/s390x/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-s390x\""' KERNEL_ARCH='s390' LOCALVERSION='-s390x' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-s390x' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+debian/build/config.sh4_none_sh7751r::
+ $(MAKE) -f debian/rules.real debian/build/config.sh4_none_sh7751r ABINAME='5.10.0-28' ARCH='sh4' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sh7751r' IMAGE_FILE='arch/sh/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sh7751r' KCONFIG='debian/config/config debian/config/sh4/config debian/config/sh4/config.sh7751r' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sh7751r\""' KERNEL_ARCH='sh' LOCALVERSION='-sh7751r' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sh7751r' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.sh4_none_sh7785lcr::
+ $(MAKE) -f debian/rules.real debian/build/config.sh4_none_sh7785lcr ABINAME='5.10.0-28' ARCH='sh4' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sh7785lcr' IMAGE_FILE='arch/sh/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sh7785lcr' KCONFIG='debian/config/config debian/config/sh4/config debian/config/sh4/config.sh7785lcr' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sh7785lcr\""' KERNEL_ARCH='sh' LOCALVERSION='-sh7785lcr' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sh7785lcr' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.sparc64_none_sparc64::
+ $(MAKE) -f debian/rules.real debian/build/config.sparc64_none_sparc64 ABINAME='5.10.0-28' ARCH='sparc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sparc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sparc64' KCONFIG='debian/config/config debian/config/kernelarch-sparc/config debian/config/kernelarch-sparc/config-up' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sparc64\""' KERNEL_ARCH='sparc' LOCALVERSION='-sparc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sparc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+debian/build/config.sparc64_none_sparc64-smp::
+ $(MAKE) -f debian/rules.real debian/build/config.sparc64_none_sparc64-smp ABINAME='5.10.0-28' ARCH='sparc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sparc64-smp' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sparc64-smp' KCONFIG='debian/config/config debian/config/kernelarch-sparc/config debian/config/kernelarch-sparc/config-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sparc64-smp\""' KERNEL_ARCH='sparc' LOCALVERSION='-sparc64-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sparc64-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup: setup_alpha setup_amd64 setup_arm64 setup_arm64ilp32 setup_armel setup_armhf setup_hppa setup_i386 setup_ia64 setup_m68k setup_mips setup_mips64 setup_mips64el setup_mips64r6 setup_mips64r6el setup_mipsel setup_mipsn32 setup_mipsn32el setup_mipsn32r6 setup_mipsn32r6el setup_mipsr6 setup_mipsr6el setup_none setup_powerpc setup_ppc64 setup_ppc64el setup_riscv64 setup_rt setup_s390 setup_s390x setup_sh3 setup_sh4 setup_sparc setup_sparc64 setup_x32
+setup_alpha: setup_alpha_none setup_alpha_real
+setup_alpha_none: setup_alpha_none_alpha-generic setup_alpha_none_alpha-smp setup_alpha_none_real
+setup_alpha_none_alpha-generic: setup_alpha_none_alpha-generic_real
+setup_alpha_none_alpha-generic_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='alpha' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='alpha-generic' IMAGE_FILE='arch/alpha/boot/vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-alpha-generic' KCONFIG='debian/config/config debian/config/alpha/config debian/config/alpha/config.alpha-generic' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-alpha-generic\""' KERNEL_ARCH='alpha' LOCALVERSION='-alpha-generic' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-alpha-generic' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_alpha_none_alpha-smp: setup_alpha_none_alpha-smp_real
+setup_alpha_none_alpha-smp_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='alpha' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='alpha-smp' IMAGE_FILE='arch/alpha/boot/vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-alpha-smp' KCONFIG='debian/config/config debian/config/alpha/config debian/config/alpha/config.alpha-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-alpha-smp\""' KERNEL_ARCH='alpha' LOCALVERSION='-alpha-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-alpha-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_alpha_none_real:
+setup_alpha_real:
+setup_amd64: setup_amd64_none setup_amd64_real setup_amd64_rt
+setup_amd64_none: setup_amd64_none_amd64 setup_amd64_none_cloud-amd64 setup_amd64_none_real
+setup_amd64_none_amd64: setup_amd64_none_amd64_real
+setup_amd64_none_amd64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-amd64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_amd64_none_cloud-amd64: setup_amd64_none_cloud-amd64_real
+setup_amd64_none_cloud-amd64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='cloud-amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-cloud-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config debian/config/amd64/config.cloud-amd64 debian/config/config.cloud debian/config/amd64/config.cloud-amd64' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-cloud-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-cloud-amd64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-cloud-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_amd64_none_real:
+setup_amd64_real:
+setup_amd64_rt: setup_amd64_rt_amd64 setup_amd64_rt_real
+setup_amd64_rt_amd64: setup_amd64_rt_amd64_real
+setup_amd64_rt_amd64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='amd64' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='amd64' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-amd64-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/amd64/config debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-amd64\""' KERNEL_ARCH='x86' LOCALVERSION='-rt-amd64' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-amd64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_amd64_rt_real:
+setup_arm64: setup_arm64_none setup_arm64_real setup_arm64_rt
+setup_arm64_none: setup_arm64_none_arm64 setup_arm64_none_cloud-arm64 setup_arm64_none_real
+setup_arm64_none_arm64: setup_arm64_none_arm64_real
+setup_arm64_none_arm64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='none' FLAVOUR='arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-arm64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_arm64_none_cloud-arm64: setup_arm64_none_cloud-arm64_real
+setup_arm64_none_cloud-arm64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='none' FLAVOUR='cloud-arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-cloud-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config debian/config/arm64/config.cloud-arm64 debian/config/config.cloud debian/config/arm64/config.cloud-arm64' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-cloud-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-cloud-arm64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-cloud-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_arm64_none_real:
+setup_arm64_real:
+setup_arm64_rt: setup_arm64_rt_arm64 setup_arm64_rt_real
+setup_arm64_rt_arm64: setup_arm64_rt_arm64_real
+setup_arm64_rt_arm64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='arm64' COMPILER='gcc-10' CROSS_COMPILE_COMPAT='arm-linux-gnueabihf-' DEBUG='True' FEATURESET='rt' FLAVOUR='arm64' IMAGE_FILE='arch/arm64/boot/Image' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-arm64-unsigned' KCONFIG='debian/config/config debian/config/arm64/config debian/config/featureset-rt/config debian/config/arm64/rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-arm64\""' KERNEL_ARCH='arm64' LOCALVERSION='-rt-arm64' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-arm64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_arm64_rt_real:
+setup_arm64ilp32: setup_arm64ilp32_real
+setup_arm64ilp32_real:
+setup_armel: setup_armel_none setup_armel_real
+setup_armel_none: setup_armel_none_marvell setup_armel_none_real setup_armel_none_rpi
+setup_armel_none_marvell: setup_armel_none_marvell_real
+setup_armel_none_marvell_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='armel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='marvell' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-marvell' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armel/config debian/config/armel/config.marvell' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-marvell\""' KERNEL_ARCH='arm' LOCALVERSION='-marvell' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-marvell' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_armel_none_real:
+setup_armel_none_rpi: setup_armel_none_rpi_real
+setup_armel_none_rpi_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='armel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='rpi' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rpi' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armel/config debian/config/armel/config.rpi' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-rpi\""' KERNEL_ARCH='arm' LOCALVERSION='-rpi' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-rpi' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_armel_real:
+setup_armhf: setup_armhf_none setup_armhf_real setup_armhf_rt
+setup_armhf_none: setup_armhf_none_armmp setup_armhf_none_armmp-lpae setup_armhf_none_real
+setup_armhf_none_armmp: setup_armhf_none_armmp_real
+setup_armhf_none_armmp-lpae: setup_armhf_none_armmp-lpae_real
+setup_armhf_none_armmp-lpae_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='armmp-lpae' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-armmp-lpae' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config debian/config/armhf/config.armmp-lpae' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-armmp-lpae\""' KERNEL_ARCH='arm' LOCALVERSION='-armmp-lpae' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-armmp-lpae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_armhf_none_armmp_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='armmp' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-armmp' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-armmp\""' KERNEL_ARCH='arm' LOCALVERSION='-armmp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-armmp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_armhf_none_real:
+setup_armhf_real:
+setup_armhf_rt: setup_armhf_rt_armmp setup_armhf_rt_real
+setup_armhf_rt_armmp: setup_armhf_rt_armmp_real
+setup_armhf_rt_armmp_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='armhf' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='armmp' IMAGE_FILE='arch/arm/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-armmp' KCONFIG='debian/config/config debian/config/kernelarch-arm/config debian/config/armhf/config debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-rt-armmp\""' KERNEL_ARCH='arm' LOCALVERSION='-rt-armmp' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-armmp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_armhf_rt_real:
+setup_hppa: setup_hppa_none setup_hppa_real
+setup_hppa_none: setup_hppa_none_parisc setup_hppa_none_parisc64 setup_hppa_none_real
+setup_hppa_none_parisc: setup_hppa_none_parisc_real
+setup_hppa_none_parisc64: setup_hppa_none_parisc64_real
+setup_hppa_none_parisc64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='hppa' COMPILER='gcc-10' FEATURESET='none' FLAVOUR='parisc64' IMAGE_FILE='arch/parisc/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-parisc64' KCFLAGS='-fno-cse-follow-jumps' KCONFIG='debian/config/config debian/config/hppa/config debian/config/hppa/config.parisc64' KCONFIG_OPTIONS=' -o "BUILD_SALT=\"5.10.0-28-parisc64\""' KERNEL_ARCH='parisc' LOCALVERSION='-parisc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-parisc64' OVERRIDE_HOST_TYPE='hppa64-linux-gnu' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_hppa_none_parisc_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='hppa' COMPILER='gcc-10' FEATURESET='none' FLAVOUR='parisc' IMAGE_FILE='arch/parisc/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-parisc' KCONFIG='debian/config/config debian/config/hppa/config debian/config/hppa/config.parisc' KCONFIG_OPTIONS=' -o "BUILD_SALT=\"5.10.0-28-parisc\""' KERNEL_ARCH='parisc' LOCALVERSION='-parisc' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-parisc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_hppa_none_real:
+setup_hppa_real:
+setup_i386: setup_i386_none setup_i386_real setup_i386_rt
+setup_i386_none: setup_i386_none_686 setup_i386_none_686-pae setup_i386_none_real
+setup_i386_none_686: setup_i386_none_686_real
+setup_i386_none_686-pae: setup_i386_none_686-pae_real
+setup_i386_none_686-pae_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='686-pae' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-686-pae-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686-pae' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-686-pae\""' KERNEL_ARCH='x86' LOCALVERSION='-686-pae' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-686-pae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_i386_none_686_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='686' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-686-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-686\""' KERNEL_ARCH='x86' LOCALVERSION='-686' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-686' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_i386_none_real:
+setup_i386_real:
+setup_i386_rt: setup_i386_rt_686-pae setup_i386_rt_real
+setup_i386_rt_686-pae: setup_i386_rt_686-pae_real
+setup_i386_rt_686-pae_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='i386' COMPILER='gcc-10' DEBUG='True' FEATURESET='rt' FLAVOUR='686-pae' IMAGE_FILE='arch/x86/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-rt-686-pae-unsigned' KCONFIG='debian/config/config debian/config/kernelarch-x86/config debian/config/i386/config debian/config/i386/config.686-pae debian/config/featureset-rt/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o SECURITY_LOCKDOWN_LSM=y -o MODULE_SIG=y -o "BUILD_SALT=\"5.10.0-28-rt-686-pae\""' KERNEL_ARCH='x86' LOCALVERSION='-rt-686-pae' LOCALVERSION_HEADERS='-rt' LOCALVERSION_IMAGE='-rt-686-pae' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_i386_rt_real:
+setup_ia64: setup_ia64_none setup_ia64_real
+setup_ia64_none: setup_ia64_none_itanium setup_ia64_none_mckinley setup_ia64_none_real
+setup_ia64_none_itanium: setup_ia64_none_itanium_real
+setup_ia64_none_itanium_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='ia64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='itanium' IMAGE_FILE='vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-itanium' KCONFIG='debian/config/config debian/config/ia64/config debian/config/ia64/config.itanium' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-itanium\""' KERNEL_ARCH='ia64' LOCALVERSION='-itanium' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-itanium' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_ia64_none_mckinley: setup_ia64_none_mckinley_real
+setup_ia64_none_mckinley_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='ia64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mckinley' IMAGE_FILE='vmlinux.gz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mckinley' KCONFIG='debian/config/config debian/config/ia64/config debian/config/ia64/config.mckinley' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mckinley\""' KERNEL_ARCH='ia64' LOCALVERSION='-mckinley' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mckinley' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_ia64_none_real:
+setup_ia64_real:
+setup_m68k: setup_m68k_none setup_m68k_real
+setup_m68k_none: setup_m68k_none_m68k setup_m68k_none_real
+setup_m68k_none_m68k: setup_m68k_none_m68k_real
+setup_m68k_none_m68k_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='m68k' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='m68k' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-m68k' KCFLAGS='-ffreestanding' KCONFIG='debian/config/config debian/config/m68k/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-m68k\""' KERNEL_ARCH='m68k' LOCALVERSION='-m68k' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-m68k' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_m68k_none_real:
+setup_m68k_real:
+setup_mips: setup_mips_none setup_mips_real
+setup_mips64: setup_mips64_none setup_mips64_real
+setup_mips64_none: setup_mips64_none_5kc-malta setup_mips64_none_octeon setup_mips64_none_real
+setup_mips64_none_5kc-malta: setup_mips64_none_5kc-malta_real
+setup_mips64_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mips64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mips64_none_octeon: setup_mips64_none_octeon_real
+setup_mips64_none_octeon_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mips64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mips64_none_real:
+setup_mips64_real:
+setup_mips64el: setup_mips64el_none setup_mips64el_real
+setup_mips64el_none: setup_mips64el_none_5kc-malta setup_mips64el_none_loongson-3 setup_mips64el_none_octeon setup_mips64el_none_real
+setup_mips64el_none_5kc-malta: setup_mips64el_none_5kc-malta_real
+setup_mips64el_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mips64el_none_loongson-3: setup_mips64el_none_loongson-3_real
+setup_mips64el_none_loongson-3_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='loongson-3' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-loongson-3' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.loongson-3' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-loongson-3\""' KERNEL_ARCH='mips' LOCALVERSION='-loongson-3' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-loongson-3' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mips64el_none_octeon: setup_mips64el_none_octeon_real
+setup_mips64el_none_octeon_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mips64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64el/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mips64el_none_real:
+setup_mips64el_real:
+setup_mips64r6: setup_mips64r6_none setup_mips64r6_real
+setup_mips64r6_none: setup_mips64r6_none_mips64r6 setup_mips64r6_none_real
+setup_mips64r6_none_mips64r6: setup_mips64r6_none_mips64r6_real
+setup_mips64r6_none_mips64r6_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mips64r6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64r6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mips64r6_none_real:
+setup_mips64r6_real:
+setup_mips64r6el: setup_mips64r6el_none setup_mips64r6el_real
+setup_mips64r6el_none: setup_mips64r6el_none_mips64r6el setup_mips64r6el_none_real
+setup_mips64r6el_none_mips64r6el: setup_mips64r6el_none_mips64r6el_real
+setup_mips64r6el_none_mips64r6el_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mips64r6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips64r6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mips64r6el_none_real:
+setup_mips64r6el_real:
+setup_mips_none: setup_mips_none_4kc-malta setup_mips_none_5kc-malta setup_mips_none_octeon setup_mips_none_real
+setup_mips_none_4kc-malta: setup_mips_none_4kc-malta_real
+setup_mips_none_4kc-malta_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='4kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-4kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips32r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-4kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-4kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-4kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mips_none_5kc-malta: setup_mips_none_5kc-malta_real
+setup_mips_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mips_none_octeon: setup_mips_none_octeon_real
+setup_mips_none_octeon_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mips' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mips/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mips_none_real:
+setup_mips_real:
+setup_mipsel: setup_mipsel_none setup_mipsel_real
+setup_mipsel_none: setup_mipsel_none_4kc-malta setup_mipsel_none_5kc-malta setup_mipsel_none_loongson-3 setup_mipsel_none_octeon setup_mipsel_none_real
+setup_mipsel_none_4kc-malta: setup_mipsel_none_4kc-malta_real
+setup_mipsel_none_4kc-malta_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='4kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-4kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips32r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-4kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-4kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-4kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mipsel_none_5kc-malta: setup_mipsel_none_5kc-malta_real
+setup_mipsel_none_5kc-malta_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='5kc-malta' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-5kc-malta' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.malta debian/config/kernelarch-mips/config.mips64r2' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-5kc-malta\""' KERNEL_ARCH='mips' LOCALVERSION='-5kc-malta' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-5kc-malta' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mipsel_none_loongson-3: setup_mipsel_none_loongson-3_real
+setup_mipsel_none_loongson-3_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='loongson-3' IMAGE_FILE='vmlinuz' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-loongson-3' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.loongson-3' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-loongson-3\""' KERNEL_ARCH='mips' LOCALVERSION='-loongson-3' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-loongson-3' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mipsel_none_octeon: setup_mipsel_none_octeon_real
+setup_mipsel_none_octeon_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mipsel' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='octeon' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-octeon' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsel/config debian/config/kernelarch-mips/config.octeon' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-octeon\""' KERNEL_ARCH='mips' LOCALVERSION='-octeon' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-octeon' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mipsel_none_real:
+setup_mipsel_real:
+setup_mipsn32: setup_mipsn32_real
+setup_mipsn32_real:
+setup_mipsn32el: setup_mipsn32el_real
+setup_mipsn32el_real:
+setup_mipsn32r6: setup_mipsn32r6_real
+setup_mipsn32r6_real:
+setup_mipsn32r6el: setup_mipsn32r6el_real
+setup_mipsn32r6el_real:
+setup_mipsr6: setup_mipsr6_none setup_mipsr6_real
+setup_mipsr6_none: setup_mipsr6_none_mips32r6 setup_mipsr6_none_mips64r6 setup_mipsr6_none_real
+setup_mipsr6_none_mips32r6: setup_mipsr6_none_mips32r6_real
+setup_mipsr6_none_mips32r6_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips32r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips32r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips32r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips32r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips32r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips32r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mipsr6_none_mips64r6: setup_mipsr6_none_mips64r6_real
+setup_mipsr6_none_mips64r6_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mipsr6_none_real:
+setup_mipsr6_real:
+setup_mipsr6el: setup_mipsr6el_none setup_mipsr6el_real
+setup_mipsr6el_none: setup_mipsr6el_none_mips32r6el setup_mipsr6el_none_mips64r6el setup_mipsr6el_none_real
+setup_mipsr6el_none_mips32r6el: setup_mipsr6el_none_mips32r6el_real
+setup_mipsr6el_none_mips32r6el_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips32r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips32r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips32r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips32r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips32r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips32r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mipsr6el_none_mips64r6el: setup_mipsr6el_none_mips64r6el_real
+setup_mipsr6el_none_mips64r6el_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='mipsr6el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='mips64r6el' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-mips64r6el' KCONFIG='debian/config/config debian/config/kernelarch-mips/config debian/config/mipsr6el/config debian/config/kernelarch-mips/config.boston debian/config/kernelarch-mips/config.mips64r6' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-mips64r6el\""' KERNEL_ARCH='mips' LOCALVERSION='-mips64r6el' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-mips64r6el' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_mipsr6el_none_real:
+setup_mipsr6el_real:
+setup_none: setup_none_real
+setup_none_real:
+setup_powerpc: setup_powerpc_none setup_powerpc_real
+setup_powerpc_none: setup_powerpc_none_powerpc setup_powerpc_none_powerpc-smp setup_powerpc_none_powerpc64 setup_powerpc_none_real
+setup_powerpc_none_powerpc: setup_powerpc_none_powerpc_real
+setup_powerpc_none_powerpc-smp: setup_powerpc_none_powerpc-smp_real
+setup_powerpc_none_powerpc-smp_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc-smp' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc-smp' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/powerpc/config.powerpc debian/config/powerpc/config.powerpc-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc-smp\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_powerpc_none_powerpc64: setup_powerpc_none_powerpc64_real
+setup_powerpc_none_powerpc64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-be' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_powerpc_none_powerpc_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='powerpc' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/powerpc/config.powerpc' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_powerpc_none_real:
+setup_powerpc_real:
+setup_ppc64: setup_ppc64_none setup_ppc64_real
+setup_ppc64_none: setup_ppc64_none_powerpc64 setup_ppc64_none_real
+setup_ppc64_none_powerpc64: setup_ppc64_none_powerpc64_real
+setup_ppc64_none_powerpc64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='ppc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-be' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_ppc64_none_real:
+setup_ppc64_real:
+setup_ppc64el: setup_ppc64el_none setup_ppc64el_real
+setup_ppc64el_none: setup_ppc64el_none_powerpc64le setup_ppc64el_none_real
+setup_ppc64el_none_powerpc64le: setup_ppc64el_none_powerpc64le_real
+setup_ppc64el_none_powerpc64le_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='ppc64el' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='powerpc64le' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-powerpc64le' KCONFIG='debian/config/config debian/config/kernelarch-powerpc/config debian/config/kernelarch-powerpc/config-arch-64 debian/config/kernelarch-powerpc/config-arch-64-le' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-powerpc64le\""' KERNEL_ARCH='powerpc' LOCALVERSION='-powerpc64le' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-powerpc64le' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_ppc64el_none_real:
+setup_ppc64el_real:
+setup_riscv64: setup_riscv64_none setup_riscv64_real
+setup_riscv64_none: setup_riscv64_none_real setup_riscv64_none_riscv64
+setup_riscv64_none_real:
+setup_riscv64_none_riscv64: setup_riscv64_none_riscv64_real
+setup_riscv64_none_riscv64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='riscv64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='riscv64' IMAGE_FILE='arch/riscv/boot/Image' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-riscv64' KCONFIG='debian/config/config debian/config/riscv64/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-riscv64\""' KERNEL_ARCH='riscv' LOCALVERSION='-riscv64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-riscv64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_riscv64_real:
+setup_rt: setup_rt_real
+setup_rt_real:
+setup_s390: setup_s390_real
+setup_s390_real:
+setup_s390x: setup_s390x_none setup_s390x_real
+setup_s390x_none: setup_s390x_none_real setup_s390x_none_s390x
+setup_s390x_none_real:
+setup_s390x_none_s390x: setup_s390x_none_s390x_real
+setup_s390x_none_s390x_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='s390x' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='s390x' IMAGE_FILE='arch/s390/boot/bzImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-s390x' KCONFIG='debian/config/config debian/config/s390x/config' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-s390x\""' KERNEL_ARCH='s390' LOCALVERSION='-s390x' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-s390x' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VDSO='True' VERSION='5.10'
+setup_s390x_real:
+setup_sh3: setup_sh3_real
+setup_sh3_real:
+setup_sh4: setup_sh4_none setup_sh4_real
+setup_sh4_none: setup_sh4_none_real setup_sh4_none_sh7751r setup_sh4_none_sh7785lcr
+setup_sh4_none_real:
+setup_sh4_none_sh7751r: setup_sh4_none_sh7751r_real
+setup_sh4_none_sh7751r_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='sh4' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sh7751r' IMAGE_FILE='arch/sh/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sh7751r' KCONFIG='debian/config/config debian/config/sh4/config debian/config/sh4/config.sh7751r' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sh7751r\""' KERNEL_ARCH='sh' LOCALVERSION='-sh7751r' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sh7751r' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_sh4_none_sh7785lcr: setup_sh4_none_sh7785lcr_real
+setup_sh4_none_sh7785lcr_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='sh4' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sh7785lcr' IMAGE_FILE='arch/sh/boot/zImage' IMAGE_INSTALL_STEM='vmlinuz' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sh7785lcr' KCONFIG='debian/config/config debian/config/sh4/config debian/config/sh4/config.sh7785lcr' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sh7785lcr\""' KERNEL_ARCH='sh' LOCALVERSION='-sh7785lcr' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sh7785lcr' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_sh4_real:
+setup_sparc: setup_sparc_real
+setup_sparc64: setup_sparc64_none setup_sparc64_real
+setup_sparc64_none: setup_sparc64_none_real setup_sparc64_none_sparc64 setup_sparc64_none_sparc64-smp
+setup_sparc64_none_real:
+setup_sparc64_none_sparc64: setup_sparc64_none_sparc64_real
+setup_sparc64_none_sparc64-smp: setup_sparc64_none_sparc64-smp_real
+setup_sparc64_none_sparc64-smp_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='sparc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sparc64-smp' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sparc64-smp' KCONFIG='debian/config/config debian/config/kernelarch-sparc/config debian/config/kernelarch-sparc/config-smp' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sparc64-smp\""' KERNEL_ARCH='sparc' LOCALVERSION='-sparc64-smp' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sparc64-smp' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_sparc64_none_sparc64_real::
+ $(MAKE) -f debian/rules.real setup-arch-flavour ABINAME='5.10.0-28' ARCH='sparc64' COMPILER='gcc-10' DEBUG='True' FEATURESET='none' FLAVOUR='sparc64' IMAGE_FILE='vmlinux' IMAGE_INSTALL_STEM='vmlinux' IMAGE_PACKAGE_NAME='linux-image-5.10.0-28-sparc64' KCONFIG='debian/config/config debian/config/kernelarch-sparc/config debian/config/kernelarch-sparc/config-up' KCONFIG_OPTIONS=' -o DEBUG_INFO=y -o "BUILD_SALT=\"5.10.0-28-sparc64\""' KERNEL_ARCH='sparc' LOCALVERSION='-sparc64' LOCALVERSION_HEADERS='' LOCALVERSION_IMAGE='-sparc64' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+setup_sparc64_real:
+setup_sparc_real:
+setup_x32: setup_x32_real
+setup_x32_real:
+source: source_none source_rt
+source_none: source_none_real
+source_none_real::
+ $(MAKE) -f debian/rules.real source-featureset ABINAME='5.10.0-28' FEATURESET='none' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
+source_rt: source_rt_real
+source_rt_real::
+ $(MAKE) -f debian/rules.real source-featureset ABINAME='5.10.0-28' FEATURESET='rt' SOURCEVERSION='5.10.209-2' SOURCE_BASENAME='linux' SOURCE_SUFFIX='' UPSTREAMVERSION='5.10' VERSION='5.10'
diff --git a/debian/rules.real b/debian/rules.real
new file mode 100644
index 000000000..5cc1ccdd1
--- /dev/null
+++ b/debian/rules.real
@@ -0,0 +1,894 @@
+#
+# This Makefile executes the unpack/build/binary targets for a single
+# subarch, which is passed in the subarch variable. Empty subarch
+# variable means that we are building for an arch without the subarch.
+# Additionally, variables version, abiname and ltver are
+# expected to be available (need to be exported from the parent process).
+#
+SHELL := bash -e
+MAINTAINER := $(shell sed -ne 's,^Maintainer: .[^<]*<\([^>]*\)>,\1,p' debian/control)
+DISTRIBUTION := $(shell dpkg-parsechangelog -SDistribution)
+SOURCE_DATE := $(shell dpkg-parsechangelog -SDate)
+SOURCE_DATE_UTC_ISO := $(shell date -u -d '$(SOURCE_DATE)' +%Y-%m-%d)
+
+DISTRIBUTOR := $(shell lsb_release -is 2>/dev/null)
+ifeq ($(DISTRIBUTOR),)
+DISTRIBUTOR := Debian
+endif
+
+include debian/rules.defs
+
+ifdef ARCH
+ ifneq ($(DEB_HOST_ARCH),$(ARCH))
+ $(error Attempting to build a $(ARCH) target but host architecture is $(DEB_HOST_ARCH). Use dpkg-architecture to override the host architecture)
+ endif
+endif
+
+ifdef OVERRIDE_HOST_TYPE
+ CROSS_COMPILE := $(OVERRIDE_HOST_TYPE)-
+else ifneq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
+ CROSS_COMPILE := $(DEB_HOST_GNU_TYPE)-
+else
+ CROSS_COMPILE :=
+endif
+export CROSS_COMPILE
+
+export DH_OPTIONS
+export DEB_HOST_ARCH DEB_HOST_GNU_TYPE DEB_BUILD_ARCH
+export DEB_BUILD_PATH = $(CURDIR) # for dpkg-buildflags
+export LC_ALL = C.UTF-8
+undefine LANGUAGE
+export LINK_DOC_PACKAGE
+
+stamp = [ -d $(dir $@) ] || mkdir $(dir $@); touch $@
+
+setup_env := env -u ABINAME -u ARCH -u FEATURESET -u FLAVOUR -u VERSION -u LOCALVERSION
+setup_env += DISTRIBUTION_OFFICIAL_BUILD=1 DISTRIBUTOR="$(DISTRIBUTOR)" DISTRIBUTION_VERSION="$(SOURCEVERSION)" KBUILD_BUILD_TIMESTAMP="$(SOURCE_DATE)" KBUILD_BUILD_VERSION_TIMESTAMP="$(DISTRIBUTOR) $(SOURCEVERSION) ($(SOURCE_DATE_UTC_ISO))" KBUILD_BUILD_USER="$(word 1,$(subst @, ,$(MAINTAINER)))" KBUILD_BUILD_HOST="$(word 2,$(subst @, ,$(MAINTAINER)))"
+setup_env += KBUILD_VERBOSE=$(if $(filter terse,$(DEB_BUILD_OPTIONS)),0,1)
+
+MAKE_CLEAN = $(setup_env) $(MAKE) KCFLAGS=-fdebug-prefix-map=$(CURDIR)/=
+MAKE_SELF := $(MAKE) -f debian/rules.real $(MAKEOVERRIDES)
+MAKEOVERRIDES =
+
+#
+# Targets
+#
+
+packages_enabled := $(shell dh_listpackages)
+define if_package
+$(if $(filter $(1),$(packages_enabled)),$(2))
+endef
+
+build-arch-arch: \
+ $(call if_package, linux-kbuild-$(VERSION), build-kbuild) \
+ $(call if_package, linux-perf-$(VERSION), build-perf) \
+ $(call if_package, linux-bootwrapper-$(ABINAME), build-bootwrapper) \
+ $(call if_package, bpftool, build-bpftool) \
+ $(call if_package, usbip, build-usbip) \
+ $(call if_package, linux-cpupower, build-cpupower) \
+ $(call if_package, liblockdep-dev, build-liblockdep) \
+ $(call if_package, hyperv-daemons, build-hyperv-daemons)
+binary-arch-arch: \
+ $(call if_package, $(SOURCE_BASENAME)-config-$(VERSION), install-config_$(ARCH)) \
+ $(call if_package, linux-libc-dev, install-libc-dev_$(ARCH)) \
+ $(call if_package, linux-kbuild-$(VERSION), install-kbuild) \
+ $(call if_package, linux-perf-$(VERSION), install-perf) \
+ $(if $(filter-out x-$(VERSION),x$(SOURCE_SUFFIX)), \
+ $(call if_package, linux-perf$(SOURCE_SUFFIX), install-perf-meta)) \
+ $(call if_package, linux-bootwrapper-$(ABINAME), install-bootwrapper) \
+ $(call if_package, bpftool, install-bpftool) \
+ $(call if_package, usbip, install-usbip) \
+ $(call if_package, linux-cpupower, install-cpupower) \
+ $(call if_package, liblockdep-dev, install-liblockdep) \
+ $(call if_package, hyperv-daemons, install-hyperv-daemons)
+
+build-indep: \
+ $(call if_package, $(SOURCE_BASENAME)-doc-$(VERSION), $(STAMPS_DIR)/build-doc)
+binary-indep: \
+ $(call if_package, $(SOURCE_BASENAME)-doc-$(VERSION), install-doc) \
+ $(call if_package, $(SOURCE_BASENAME)-source-$(VERSION), install-source) \
+ $(if $(filter-out x-$(VERSION),x$(SOURCE_SUFFIX)), \
+ $(call if_package, $(SOURCE_BASENAME)-doc$(SOURCE_SUFFIX), install-doc-meta) \
+ $(call if_package, $(SOURCE_BASENAME)-source$(SOURCE_SUFFIX), install-source-meta)) \
+ $(call if_package, $(SOURCE_BASENAME)-support-$(ABINAME), install-support) \
+ $(call if_package, lockdep, install-lockdep)
+
+binary-arch-flavour: \
+ $(call if_package, $(IMAGE_PACKAGE_NAME), install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR)) \
+ $(call if_package, linux-image$(SOURCE_SUFFIX)$(LOCALVERSION), install-image-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR)) \
+ $(call if_package, linux-image-$(ABINAME)$(LOCALVERSION)-dbg, install-image-dbg_$(ARCH)_$(FEATURESET)_$(FLAVOUR)) \
+ $(call if_package, linux-image$(SOURCE_SUFFIX)$(LOCALVERSION)-dbg, install-image-dbg-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR)) \
+ $(call if_package, linux-headers-$(ABINAME)$(LOCALVERSION), install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR)) \
+ $(call if_package, linux-headers$(SOURCE_SUFFIX)$(LOCALVERSION), install-headers-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR))
+
+binary-indep-featureset: \
+ $(call if_package, linux-headers-$(ABINAME)-common$(LOCALVERSION), install-common-headers_$(FEATURESET))
+
+build-arch-flavour: \
+ $(call if_package, $(IMAGE_PACKAGE_NAME), $(STAMPS_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR))
+
+setup-arch-flavour: \
+ $(call if_package, $(IMAGE_PACKAGE_NAME), $(STAMPS_DIR)/setup_$(ARCH)_$(FEATURESET)_$(FLAVOUR))
+
+source-featureset: $(STAMPS_DIR)/source_$(FEATURESET)
+
+$(BUILD_DIR)/config.$(ARCH)_$(FEATURESET)_$(FLAVOUR): $(KCONFIG)
+ mkdir -p '$(dir $@)'
+ debian/bin/kconfig.py '$@' $(KCONFIG) $(KCONFIG_OPTIONS)
+
+define copy_source
+mkdir -p '$(1)'
+cp -al $(filter-out debian .pc .svk .svn .git, $(wildcard * .[^.]*)) '$(1)'
+endef
+
+$(BUILD_DIR)/$(SOURCE_BASENAME)-source-$(UPSTREAMVERSION).tar.xz: DIR = $(BUILD_DIR)/$(SOURCE_BASENAME)-source-$(UPSTREAMVERSION)
+$(BUILD_DIR)/$(SOURCE_BASENAME)-source-$(UPSTREAMVERSION).tar.xz: $(STAMPS_DIR)/source
+ rm -rf '$@' '$(DIR)'
+ $(call copy_source,$(DIR))
+ chmod -R u+rw,go=rX '$(DIR)'
+ find '$(DIR)' -depth -newermt '$(SOURCE_DATE)' -print0 | \
+ xargs -0r touch --no-dereference --date='$(SOURCE_DATE)'
+ cd '$(BUILD_DIR)'; \
+ find '$(SOURCE_BASENAME)-source-$(UPSTREAMVERSION)' \
+ -name '*.pyc' -prune -o \
+ -print0 | \
+ sort -z | \
+ tar --owner=root --group=root --numeric-owner \
+ --no-recursion --null -T - -caf '$(SOURCE_BASENAME)-source-$(UPSTREAMVERSION).tar.xz'
+ rm -rf '$(DIR)'
+
+$(BUILD_DIR)/linux-patch-$(UPSTREAMVERSION)-%.patch.xz: $(STAMPS_DIR)/source_none $(STAMPS_DIR)/source_%
+ set -o pipefail; \
+ (cd '$(BUILD_DIR)'; \
+ set +e; \
+ diff -urN -p -x debian -x .pc -x .svk -x .svn -x .git -x '*.pyc' source_none source_$*; \
+ test $$? -eq 1) | \
+ filterdiff --remove-timestamps --strip=1 --addoldprefix=a/ --addnewprefix=b/ | \
+ xz -c >$@ || \
+ (rm -f $@; exit 1)
+
+$(STAMPS_DIR)/source:
+ test -d .pc
+ set +e; QUILT_PC=.pc quilt unapplied --quiltrc - >/dev/null && echo 'Patch series not fully applied'; test $$? -eq 1
+ @$(stamp)
+
+$(STAMPS_DIR)/source_%: SOURCE_DIR=$(BUILD_DIR)/source
+$(STAMPS_DIR)/source_%: DIR=$(BUILD_DIR)/source_$*
+$(STAMPS_DIR)/source_%: $(STAMPS_DIR)/source
+ mkdir -p '$(BUILD_DIR)'
+ rm -rf '$(DIR)'
+ $(call copy_source,$(DIR))
+ cd '$(DIR)' && QUILT_PATCHES='$(CURDIR)/debian/patches-$*' QUILT_PC=.pc quilt push --quiltrc - -a -q --fuzz=0
+ @$(stamp)
+.PRECIOUS: $(STAMPS_DIR)/source_%
+
+$(STAMPS_DIR)/source_none: DIR=$(BUILD_DIR)/source_none
+$(STAMPS_DIR)/source_none: $(STAMPS_DIR)/source
+ mkdir -p '$(BUILD_DIR)'
+ rm -f '$(DIR)'
+ ln -s '$(CURDIR)' '$(DIR)'
+ @$(stamp)
+
+$(STAMPS_DIR)/setup_$(ARCH)_$(FEATURESET)_$(FLAVOUR): CONFIG=$(BUILD_DIR)/config.$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+$(STAMPS_DIR)/setup_$(ARCH)_$(FEATURESET)_$(FLAVOUR): SOURCE_DIR=$(BUILD_DIR)/source_$(FEATURESET)
+$(STAMPS_DIR)/setup_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DIR=$(BUILD_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+$(STAMPS_DIR)/setup_$(ARCH)_$(FEATURESET)_$(FLAVOUR): $(STAMPS_DIR)/source_$(FEATURESET) $(BUILD_DIR)/config.$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+ rm -rf '$(DIR)'
+ mkdir '$(DIR)'
+ cp '$(CONFIG)' '$(DIR)/.config'
+ echo 'override ARCH = $(KERNEL_ARCH)' >> '$(DIR)/.kernelvariables'
+ echo 'override KERNELRELEASE = $(ABINAME)$(LOCALVERSION_IMAGE)' >> '$(DIR)/.kernelvariables'
+ echo 'CCACHE = ccache' >> '$(DIR)/.kernelvariables'
+ifeq (./,$(dir $(COMPILER)))
+ echo 'CC = $$(if $$(DEBIAN_KERNEL_USE_CCACHE),$$(CCACHE)) $$(CROSS_COMPILE)$(COMPILER)' >> '$(DIR)/.kernelvariables'
+else
+# To allow for cross-compiles, we want to split up the configured
+# compiler filename and prepend the directory to $PATH. For a native
+# compile, so long as the configured compiler is installed it should
+# always be found first.
+# However, $PATH changes don't work consistently in make (bug #895835).
+# Instead we do the path lookup here and generate a new absolute
+# filename.
+ echo 'CC = $$(if $$(DEBIAN_KERNEL_USE_CCACHE),$$(CCACHE)) $$(word 1,$$(foreach dir,$(dir $(COMPILER)) $$(subst :, ,$$(PATH)),$$(wildcard $$(dir)/$$(CROSS_COMPILE)$(notdir $(COMPILER)))))' >> '$(DIR)/.kernelvariables'
+endif
+# TODO: Should we set CROSS_COMPILE always?
+ifdef OVERRIDE_HOST_TYPE
+ echo 'override CROSS_COMPILE = $(OVERRIDE_HOST_TYPE)-' >> '$(DIR)/.kernelvariables'
+else
+ echo 'ifneq ($$(DEB_BUILD_ARCH),$$(DEB_HOST_ARCH))' >> '$(DIR)/.kernelvariables'
+ echo 'override CROSS_COMPILE = $$(DEB_HOST_GNU_TYPE)-' >> '$(DIR)/.kernelvariables'
+ echo 'endif' >> '$(DIR)/.kernelvariables'
+endif
+ifdef KCFLAGS
+ echo 'KCFLAGS += $(KCFLAGS)' >> '$(DIR)/.kernelvariables'
+endif
+ +$(MAKE_CLEAN) -C '$(SOURCE_DIR)' O='$(CURDIR)/$(DIR)' listnewconfig
+ +yes "" | $(MAKE_CLEAN) -C '$(SOURCE_DIR)' O='$(CURDIR)/$(DIR)' oldconfig >/dev/null
+ @$(stamp)
+
+$(STAMPS_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DIR=$(BUILD_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+$(STAMPS_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR): $(STAMPS_DIR)/setup_$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+
+$(STAMPS_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR):
+ +$(MAKE_CLEAN) -C '$(DIR)'
+ debian/bin/buildcheck.py $(DIR) $(ARCH) $(FEATURESET) $(FLAVOUR)
+ @$(stamp)
+
+$(STAMPS_DIR)/build-doc: DIR=$(BUILD_DIR)/build-doc
+# sphinx commands in /usr/bin are managed by the alternatives system.
+# Change $PATH to make sure we consistently use the Python 3 version.
+$(STAMPS_DIR)/build-doc: PATH:=/usr/share/sphinx/scripts/python3:$(PATH)
+$(STAMPS_DIR)/build-doc: $(STAMPS_DIR)/source
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ mkdir -p '$(BUILD_DIR)'
+ rm -rf '$(DIR)'
+ $(call copy_source,$(DIR))
+ +$(MAKE_CLEAN) -C '$(DIR)' PYTHON=python3 xmldocs
+ +$(MAKE_CLEAN) -C '$(DIR)' PYTHON=python3 htmldocs
+endif
+ @$(stamp)
+
+install-base:
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ dh_installdocs $(if $(LINK_DOC_PACKAGE),--link-doc=$(LINK_DOC_PACKAGE))
+endif
+ dh_installchangelogs
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_gencontrol -- $(GENCONTROL_ARGS)
+ dh_md5sums
+ dh_builddeb -- -Zxz $(BUILDDEB_ARGS)
+
+install-dummy:
+ dh_testdir
+ dh_testroot
+ dh_prep
+ +$(MAKE_SELF) install-base
+
+install-doc: PACKAGE_NAME = $(SOURCE_BASENAME)-doc-$(VERSION)
+install-doc: DIR = $(BUILD_DIR)/build-doc
+install-doc: PACKAGE_DIR = debian/$(PACKAGE_NAME)
+install-doc: OUT_DIR = $(PACKAGE_DIR)/usr/share/doc/$(PACKAGE_NAME)
+install-doc: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-doc: $(STAMPS_DIR)/build-doc
+ dh_prep
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ mkdir -p $(OUT_DIR)
+ set -o pipefail; \
+ find CREDITS MAINTAINERS README Documentation \
+ -name '.gitignore' -prune -o -name DocBook -prune -o \
+ -path Documentation/media -prune -o \
+ -path Documentation/sphinx -prune -o \
+ -name 'Makefile*' -prune -o \
+ -print | \
+ cpio -pd --preserve-modification-time '$(CURDIR)/$(OUT_DIR)'
+ set -o pipefail; \
+ cd $(DIR)/Documentation/output; \
+ find * -name '*.rst' -prune -o -name objects.inv -prune \
+ -o -name xml -prune -o -print | \
+ cpio -pd --preserve-modification-time '$(CURDIR)/$(OUT_DIR)/html'
+ find $(OUT_DIR)/Documentation -type f | xargs gzip -9n
+# Fix up symlinks to gzipped docs
+ cd $(OUT_DIR)/Documentation; \
+ find -type l | while read link; do \
+ dest="$$(readlink -f "$$link")"; \
+ if [ -f "$$dest.gz" ]; then \
+ rm -f "$$link"; \
+ ln -sr "$$dest.gz" "$$link.gz"; \
+ fi; \
+ done
+endif
+ +$(MAKE_SELF) install-base
+
+install-doc-meta: PACKAGE_NAME = $(SOURCE_BASENAME)-doc$(SOURCE_SUFFIX)
+install-doc-meta: PACKAGE_DIR = debian/$(PACKAGE_NAME)
+install-doc-meta: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-doc-meta: LINK_DOC_PACKAGE = $(SOURCE_BASENAME)-doc-$(VERSION)
+install-doc-meta:
+ dh_testdir
+ dh_prep
+ +$(MAKE_SELF) install-base
+
+install-common-headers_$(FEATURESET): PACKAGE_NAME = linux-headers-$(ABINAME)-common$(LOCALVERSION)
+install-common-headers_$(FEATURESET): PACKAGE_NAME_KBUILD = linux-kbuild-$(VERSION)
+install-common-headers_$(FEATURESET): DH_OPTIONS = -p$(PACKAGE_NAME)
+install-common-headers_$(FEATURESET): BASE_DIR = /usr/src/$(PACKAGE_NAME)
+install-common-headers_$(FEATURESET): SOURCE_DIR = $(BUILD_DIR)/source_$(FEATURESET)
+install-common-headers_$(FEATURESET): DIR = debian/$(PACKAGE_NAME)/$(BASE_DIR)
+install-common-headers_$(FEATURESET): $(STAMPS_DIR)/source_$(FEATURESET)
+ dh_testdir
+ dh_testroot
+ dh_prep
+
+ set -o pipefail; \
+ cd $(SOURCE_DIR); \
+ ( \
+ echo Makefile; \
+ for arch in $(ALL_KERNEL_ARCHES); do \
+ find arch/$$arch -maxdepth 1 -name 'Makefile*' -print; \
+ find arch/$$arch \( -name 'Kbuild.platforms' -o -name 'Platform' \) -print; \
+ find $$(find arch/$$arch \( -name include -o -name scripts \) -type d -print) -print; \
+ done; \
+ find include -print; \
+ ) \
+ | \
+ cpio -pd --preserve-modification-time '$(CURDIR)/$(DIR)'
+
+ dh_link /usr/lib/$(PACKAGE_NAME_KBUILD)/scripts $(BASE_DIR)/scripts
+ dh_link /usr/lib/$(PACKAGE_NAME_KBUILD)/tools $(BASE_DIR)/tools
+
+ +$(MAKE_SELF) install-base
+
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): REAL_VERSION = $(ABINAME)$(LOCALVERSION)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME = linux-headers-$(REAL_VERSION)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME_COMMON = linux-headers-$(ABINAME)-common$(LOCALVERSION_HEADERS)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME_KBUILD = linux-kbuild-$(VERSION)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DH_OPTIONS = -p$(PACKAGE_NAME)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): BASE_DIR = /usr/src/$(PACKAGE_NAME)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): BASE_DIR_COMMON = /usr/src/$(PACKAGE_NAME_COMMON)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): SOURCE_DIR = $(BUILD_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): REF_DIR = $(BUILD_DIR)/source_$(FEATURESET)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_DIR = debian/$(PACKAGE_NAME)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DIR = $(PACKAGE_DIR)/$(BASE_DIR)
+install-headers_$(ARCH)_$(FEATURESET)_$(FLAVOUR): $(STAMPS_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+ dh_testdir
+ dh_testroot
+ dh_prep
+
+ mkdir -p $(DIR)/arch/$(KERNEL_ARCH)/kernel
+ cp -a $(SOURCE_DIR)/{.config,.kernel*,Module.symvers,include} $(DIR)
+ cp -a $(SOURCE_DIR)/arch/$(KERNEL_ARCH)/include $(DIR)/arch/$(KERNEL_ARCH)
+ find $(DIR) -name '*.cmd' -delete
+
+ if [ -f $(SOURCE_DIR)/arch/$(KERNEL_ARCH)/lib/crtsavres.o ]; then \
+ mkdir $(DIR)/arch/$(KERNEL_ARCH)/lib; \
+ cp -a $(SOURCE_DIR)/arch/$(KERNEL_ARCH)/lib/crtsavres.o $(DIR)/arch/$(KERNEL_ARCH)/lib; \
+ fi
+
+ cp -a $(SOURCE_DIR)/scripts/module.lds $(DIR)/arch/$(KERNEL_ARCH)
+
+ @echo 'include $(BASE_DIR_COMMON)/Makefile' >> $(DIR)/Makefile
+
+ dh_link /usr/lib/$(PACKAGE_NAME_KBUILD)/scripts $(BASE_DIR)/scripts
+ dh_link /usr/lib/$(PACKAGE_NAME_KBUILD)/tools $(BASE_DIR)/tools
+
+ mkdir -p $(PACKAGE_DIR)/lib/modules/$(REAL_VERSION)
+ ln -s /usr/src/$(PACKAGE_NAME) $(PACKAGE_DIR)/lib/modules/$(REAL_VERSION)/build
+ ln -s /usr/src/$(PACKAGE_NAME_COMMON) $(PACKAGE_DIR)/lib/modules/$(REAL_VERSION)/source
+
+ +$(MAKE_SELF) install-base
+
+install-headers-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME = linux-headers$(SOURCE_SUFFIX)$(LOCALVERSION)
+install-headers-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DH_OPTIONS = -p$(PACKAGE_NAME)
+install-headers-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR): LINK_DOC_PACKAGE = linux-headers-$(ABINAME)$(LOCALVERSION)
+install-headers-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR):
+ dh_testdir
+ dh_prep
+ +$(MAKE_SELF) install-base
+
+install-libc-dev_$(ARCH): PACKAGE_NAME = linux-libc-dev
+install-libc-dev_$(ARCH): DH_OPTIONS = -p$(PACKAGE_NAME)
+install-libc-dev_$(ARCH): DIR = $(BUILD_DIR)/build-libc-dev
+install-libc-dev_$(ARCH): OUT_DIR = debian/$(PACKAGE_NAME)/usr
+install-libc-dev_$(ARCH):
+ dh_testdir
+ dh_testroot
+ dh_prep
+ rm -rf '$(DIR)'
+ mkdir -p $(DIR)
+ +$(MAKE_CLEAN) O='$(CURDIR)/$(DIR)' headers_check ARCH=$(KERNEL_ARCH)
+ +$(MAKE_CLEAN) O='$(CURDIR)/$(DIR)' headers_install ARCH=$(KERNEL_ARCH) INSTALL_HDR_PATH='$(CURDIR)'/$(OUT_DIR)
+
+ rm -rf $(OUT_DIR)/include/drm $(OUT_DIR)/include/scsi
+ find $(OUT_DIR)/include \( -name .install -o -name ..install.cmd \) -execdir rm {} +
+
+# Move include/asm to arch-specific directory
+ mkdir -p $(OUT_DIR)/include/$(DEB_HOST_MULTIARCH)
+ mv $(OUT_DIR)/include/asm $(OUT_DIR)/include/$(DEB_HOST_MULTIARCH)/
+ test ! -d $(OUT_DIR)/include/arch || \
+ mv $(OUT_DIR)/include/arch $(OUT_DIR)/include/$(DEB_HOST_MULTIARCH)/
+
+ +$(MAKE_SELF) install-base
+
+install-support: PACKAGE_NAME = $(SOURCE_BASENAME)-support-$(ABINAME)
+install-support: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-support: PACKAGE_DIR = debian/$(PACKAGE_NAME)
+install-support: PACKAGE_ROOT = /usr/share/$(PACKAGE_NAME)
+install-support:
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs $(PACKAGE_ROOT)/lib/python/debian_linux $(PACKAGE_ROOT)/modules
+ cp debian/config.defines.dump $(PACKAGE_DIR)$(PACKAGE_ROOT)
+ cp -R debian/installer $(PACKAGE_DIR)$(PACKAGE_ROOT)/installer
+ cp debian/lib/python/debian_linux/*.py $(PACKAGE_DIR)$(PACKAGE_ROOT)/lib/python/debian_linux
+ dh_python3
+ dh_link $(PACKAGE_ROOT) /usr/src/$(PACKAGE_NAME)
+ +$(MAKE_SELF) install-base
+
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR): REAL_VERSION = $(ABINAME)$(LOCALVERSION)
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME = $(IMAGE_PACKAGE_NAME)
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_DIR = debian/$(PACKAGE_NAME)
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR): INSTALL_DIR = $(PACKAGE_DIR)/boot
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DIR = $(BUILD_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DH_OPTIONS = -p$(PACKAGE_NAME)
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR): $(STAMPS_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR):
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs 'boot'
+ifeq ($(IMAGE_FILE),vmlinux)
+# This is the unprocessed ELF image, so we need to strip debug symbols
+ $(CROSS_COMPILE)objcopy --strip-debug '$(DIR)/vmlinux' $(INSTALL_DIR)/$(IMAGE_INSTALL_STEM)-$(REAL_VERSION)
+else
+ install -m644 '$(DIR)/$(IMAGE_FILE)' $(INSTALL_DIR)/$(IMAGE_INSTALL_STEM)-$(REAL_VERSION)
+endif
+ +$(MAKE_SELF) \
+ install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR)_dt \
+ DIR='$(DIR)' PACKAGE_DIR='$(PACKAGE_DIR)' REAL_VERSION='$(REAL_VERSION)'
+ +$(MAKE_CLEAN) -C $(DIR) modules_install DEPMOD='$(CURDIR)/debian/bin/no-depmod' INSTALL_MOD_PATH='$(CURDIR)'/$(PACKAGE_DIR) INSTALL_MOD_STRIP=1
+ifeq ($(DEBUG),True)
+ set -o pipefail; \
+ find $(PACKAGE_DIR) -name '*.ko' | sed 's|$(PACKAGE_DIR)/lib/modules/$(REAL_VERSION)/kernel/||' | while read module ; do \
+ $(CROSS_COMPILE)objcopy --add-gnu-debuglink=$(DIR)/$$module $(PACKAGE_DIR)/lib/modules/$(REAL_VERSION)/kernel/$$module || exit; \
+ done
+# stripping the modules removes signatures as well - if automated signing is enabled with
+# an ephemeral key, re-do the sign step
+ +if grep -qs '^CONFIG_MODULE_SIG_ALL=y' $(DIR)/.config; then \
+ $(MAKE_CLEAN) -C $(DIR) modules_sign INSTALL_MOD_PATH='$(CURDIR)'/$(PACKAGE_DIR); \
+ fi
+endif
+ cp $(DIR)/.config $(PACKAGE_DIR)/boot/config-$(REAL_VERSION)
+ echo "ffffffffffffffff B The real System.map is in the linux-image-<version>-dbg package" \
+ > $(PACKAGE_DIR)/boot/System.map-$(REAL_VERSION)
+ rm -f $(PACKAGE_DIR)/lib/modules/$(REAL_VERSION)/build
+ rm -f $(PACKAGE_DIR)/lib/modules/$(REAL_VERSION)/source
+ rm $(PACKAGE_DIR)/lib/firmware -rf
+ +$(MAKE_SELF) \
+ install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR)_bug \
+ PACKAGE_DIR='$(PACKAGE_DIR)' PACKAGE_NAME='$(PACKAGE_NAME)' REAL_VERSION='$(REAL_VERSION)'
+ dh_strip --no-automatic-dbgsym -Xvmlinux -Xvmlinuz
+ ln -sf linux-image.NEWS debian/$(PACKAGE_NAME).NEWS
+ +$(MAKE_SELF) install-base
+
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR)_dt: DT_INSTALL_DIR = $(PACKAGE_DIR)/usr/lib/linux-image-$(REAL_VERSION)
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR)_dt:
+ifneq ($(filter arm64 armel armhf mipsr6 mipsr6el mips64r6 mips64r6el riscv64,$(ARCH)),)
+ +$(MAKE_CLEAN) -C $(DIR) dtbs
+ +$(MAKE_CLEAN) -C $(DIR) dtbs_install INSTALL_DTBS_PATH=$(CURDIR)/$(DT_INSTALL_DIR)
+endif
+ifneq ($(filter powerpc ppc64,$(ARCH)),)
+# Install wrapper code and DT source, but not the wrapper script or
+# the executables it calls. Kbuild will always build these executable
+# as native code, which is wrong for a cross-built package. Install
+# symlinks to the versions in the linux-bootwrapper package instead.
+ rm -rf '$(BUILD_DIR)/bootwrapper_$(ARCH)_$(FEATURESET)_$(FLAVOUR)'
+ +$(MAKE_CLEAN) -C '$(DIR)' bootwrapper_install \
+ WRAPPER_OBJDIR='$(CURDIR)/$(DT_INSTALL_DIR)' \
+ WRAPPER_DTSDIR='$(CURDIR)/$(DT_INSTALL_DIR)/dts' \
+ WRAPPER_BINDIR='$(CURDIR)/$(BUILD_DIR)/bootwrapper_$(ARCH)_$(FEATURESET)_$(FLAVOUR)'
+ for prog in '$(BUILD_DIR)/bootwrapper_$(ARCH)_$(FEATURESET)_$(FLAVOUR)'/*; do \
+ prog="$$(basename $$prog)"; \
+ ln -s ../linux-bootwrapper-$(ABINAME)/$$prog \
+ '$(DT_INSTALL_DIR)'/$$prog; \
+ done
+endif
+
+install-image_$(ARCH)_$(FEATURESET)_$(FLAVOUR)_bug:
+ dh_installdirs usr/share/bug/$(PACKAGE_NAME)
+ dh_install debian/templates/image.bug/* usr/share/bug/$(PACKAGE_NAME)
+ chmod 755 $(PACKAGE_DIR)/usr/share/bug/$(PACKAGE_NAME)/script
+ printf "RELEASE='$(REAL_VERSION)'\nDISTRIBUTOR='$(DISTRIBUTOR)'\nSOURCEVERSION='$(SOURCEVERSION)'\nPACKAGE_NAME='$(PACKAGE_NAME)'\nPACKAGE_VERSION='$(SOURCEVERSION)'" > $(PACKAGE_DIR)/usr/share/bug/$(PACKAGE_NAME)/info
+
+install-image-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME = linux-image$(SOURCE_SUFFIX)$(LOCALVERSION)
+install-image-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DH_OPTIONS = -p$(PACKAGE_NAME)
+install-image-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR): LINK_DOC_PACKAGE = linux-image-$(ABINAME)$(LOCALVERSION)
+install-image-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR):
+ dh_testdir
+ dh_prep
+ dh_bugfiles
+ +$(MAKE_SELF) install-base
+
+install-image-dbg_$(ARCH)_$(FEATURESET)_$(FLAVOUR): REAL_VERSION = $(ABINAME)$(LOCALVERSION)
+install-image-dbg_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME = linux-image-$(REAL_VERSION)-dbg
+install-image-dbg_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_DIR = debian/$(PACKAGE_NAME)
+install-image-dbg_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DEBUG_DIR = $(PACKAGE_DIR)/usr/lib/debug
+install-image-dbg_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DIR = $(BUILD_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+install-image-dbg_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DH_OPTIONS = -p$(PACKAGE_NAME)
+install-image-dbg_$(ARCH)_$(FEATURESET)_$(FLAVOUR): $(STAMPS_DIR)/build_$(ARCH)_$(FEATURESET)_$(FLAVOUR)
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs usr/lib/debug usr/lib/debug/boot usr/share/lintian/overrides/
+ dh_lintian
+ install -m644 $(DIR)/vmlinux $(DEBUG_DIR)/boot/vmlinux-$(REAL_VERSION)
+ install -m644 $(DIR)/System.map $(DEBUG_DIR)/boot/System.map-$(REAL_VERSION)
+ +$(MAKE_CLEAN) -C $(DIR) modules_install DEPMOD='$(CURDIR)/debian/bin/no-depmod' INSTALL_MOD_PATH='$(CURDIR)'/$(DEBUG_DIR)
+ find $(DEBUG_DIR)/lib/modules/$(REAL_VERSION)/ -mindepth 1 -maxdepth 1 \! -name kernel -exec rm {} \+
+ rm $(DEBUG_DIR)/lib/firmware -rf
+ifeq ($(VDSO),True)
+ +$(MAKE_CLEAN) -C $(DIR) vdso_install INSTALL_MOD_PATH='$(CURDIR)'/$(DEBUG_DIR)
+# Create .build-id links. Some architectures already do so, but in the
+# wrong place, so delete those first.
+ rm -rf $(DEBUG_DIR)/lib/modules/$(REAL_VERSION)/vdso/.build-id
+ find $(DEBUG_DIR)/lib/modules/$(REAL_VERSION)/vdso/ -type f | while read vdso; do \
+ if buildid="$$(readelf -n "$$vdso" | sed -rne 's/^\s+Build ID: (.*)$$/\1/p')" && [ "$$buildid" ]; then \
+ mkdir -p "$(DEBUG_DIR)/.build-id/$${buildid:0:2}"; \
+ ln -s -r "$$vdso" "$(DEBUG_DIR)/.build-id/$${buildid:0:2}/$${buildid:2}.debug"; \
+ fi; \
+ done
+endif
+# Add symlinks to vmlinux from the locations expected by kdump-tools,
+# systemtap and others
+ ln -s boot/vmlinux-$(REAL_VERSION) $(DEBUG_DIR)/
+ mkdir -p $(DEBUG_DIR)/lib/modules/$(REAL_VERSION)
+ ln -s ../../../boot/vmlinux-$(REAL_VERSION) $(DEBUG_DIR)/lib/modules/$(REAL_VERSION)/vmlinux
+ +$(MAKE_SELF) install-base
+
+install-image-dbg-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR): PACKAGE_NAME = linux-image$(SOURCE_SUFFIX)$(LOCALVERSION)-dbg
+install-image-dbg-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR): DH_OPTIONS = -p$(PACKAGE_NAME)
+install-image-dbg-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR): LINK_DOC_PACKAGE = linux-image-$(ABINAME)$(LOCALVERSION)-dbg
+install-image-dbg-meta_$(ARCH)_$(FEATURESET)_$(FLAVOUR):
+ dh_testdir
+ dh_prep
+ dh_lintian
+ +$(MAKE_SELF) install-base
+
+install-signed-template_$(ARCH): PACKAGE_NAME = linux-image-$(ARCH)-signed-template
+install-signed-template_$(ARCH): DH_OPTIONS = -p$(PACKAGE_NAME)
+install-signed-template_$(ARCH): PACKAGE_DIR = debian/$(PACKAGE_NAME)
+install-signed-template_$(ARCH): CODE_SIGNING_DIR = $(PACKAGE_DIR)/usr/share/code-signing/$(PACKAGE_NAME)
+install-signed-template_$(ARCH):
+ifneq (,$(filter linux-image-$(ARCH)-signed-template,$(packages_enabled)))
+ dh_testdir
+ dh_testroot
+ dh_prep
+ rm -rf $(CODE_SIGNING_DIR)
+ mkdir -p $(CODE_SIGNING_DIR)
+ PYTHONHASHSEED=0 debian/bin/gencontrol_signed.py $(ARCH)
+ cp -R debian/copyright \
+ debian/linux-image.NEWS \
+ debian/signing_templates/README.source \
+ debian/signing_templates/rules \
+ debian/signing_templates/rules.real \
+ debian/signing_templates/source \
+ $(CODE_SIGNING_DIR)/source-template/debian/
+ +$(MAKE_SELF) install-base
+endif # enabled
+
+install-udeb_$(ARCH): export KW_DEFCONFIG_DIR=debian/installer
+install-udeb_$(ARCH): export KW_CONFIG_DIR=debian/installer
+install-udeb_$(ARCH): DH_OPTIONS=$(PACKAGE_NAMES:%=-p%)
+ifeq ($(UDEB_UNSIGNED_TEST_BUILD),True)
+install-udeb_$(ARCH): export DEB_BUILD_PROFILES+=pkg.linux.udeb-unsigned-test-build
+endif
+install-udeb_$(ARCH):
+# Logically we should check for %-di here, but that would break test builds
+ifeq (,$(filter noudeb,$(DEB_BUILD_PROFILES)))
+ifneq (,$(filter linux-image-%,$(packages_enabled)))
+ dh_testdir
+ dh_prep
+ kernel-wedge install-files $(ABINAME)
+ kernel-wedge check $(PACKAGE_NAMES)
+ dh_fixperms
+ifeq ($(UDEB_UNSIGNED_TEST_BUILD),False)
+ dh_gencontrol
+ dh_builddeb
+endif
+endif # enabled
+endif # noudeb
+
+install-source: PACKAGE_NAME = $(SOURCE_BASENAME)-source-$(VERSION)
+install-source: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-source: $(BUILD_DIR)/$(SOURCE_BASENAME)-source-$(UPSTREAMVERSION).tar.xz $(foreach FEATURESET,$(filter-out none,$(ALL_FEATURESETS)),$(BUILD_DIR)/linux-patch-$(UPSTREAMVERSION)-$(FEATURESET).patch.xz)
+ dh_testdir
+ dh_testroot
+ dh_install $^ /usr/src
+# We don't want to recompress, but -Znone is not compatible with older
+# tools and is currently rejected by dak. -Zgzip -z0 (uncompressed
+# data.tar.gz!) makes dpkg and dak happy, but is incomaptible with
+# other things (#725492). So use the fastest real gzip mode.
+ +$(MAKE_SELF) install-base BUILDDEB_ARGS='-Zgzip -z1'
+
+install-source-meta: PACKAGE_NAME = $(SOURCE_BASENAME)-source$(SOURCE_SUFFIX)
+install-source-meta: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-source-meta: LINK_DOC_PACKAGE = $(SOURCE_BASENAME)-source-$(VERSION)
+install-source-meta:
+ dh_testdir
+ dh_prep
+ +$(MAKE_SELF) install-base
+
+install-config_$(ARCH): PACKAGE_NAME = $(SOURCE_BASENAME)-config-$(VERSION)
+install-config_$(ARCH): DH_OPTIONS = -p$(PACKAGE_NAME)
+install-config_$(ARCH): TRIPLETS = $(subst $(BUILD_DIR)/build_,,$(wildcard $(BUILD_DIR)/build_$(ARCH)_*_*))
+install-config_$(ARCH):
+ dh_testdir
+ dh_testroot
+ dh_installdirs /usr/src/linux-config-$(UPSTREAMVERSION)
+# Fix the module signing configuration to work for custom kernels. Also delete
+# CONFIG_BUILD_SALT which makes no sense for custom kernels.
+ for triplet in $(TRIPLETS); do \
+ sed '/CONFIG_\(MODULE_SIG_\(ALL\|KEY\)\|SYSTEM_TRUSTED_KEYS\|BUILD_SALT\)[ =]/d' $(BUILD_DIR)/build_$$triplet/.config | xz -c >debian/$(PACKAGE_NAME)/usr/src/linux-config-$(UPSTREAMVERSION)/config.$$triplet.xz; \
+ done
+ +$(MAKE_SELF) install-base
+
+define make-tools
++mkdir -p $(BUILD_DIR)/build-tools/$(1) && $(MAKE_CLEAN) -C $(BUILD_DIR)/build-tools/$(1) -f $(CURDIR)/debian/rules.d/$(1)/Makefile top_srcdir=$(CURDIR) top_rulesdir=$(CURDIR)/debian/rules.d OUTDIR=$(1) VERSION=$(VERSION) KERNEL_ARCH=$(KERNEL_ARCH)
+endef
+
+$(STAMPS_DIR)/build-tools-headers:
+ mkdir -p $(BUILD_DIR)/build-tools/headers-tools
+ $(MAKE) ARCH=$(KERNEL_ARCH) O=$(BUILD_DIR)/build-tools/headers-tools \
+ INSTALL_HDR_PATH=$(CURDIR)/$(BUILD_DIR)/build-tools \
+ headers_install
+ @$(stamp)
+
+build-bpftool: $(STAMPS_DIR)/build-tools-headers
+ $(call make-tools,tools/bpf/bpftool)
+
+install-bpftool: PACKAGE_NAME = bpftool
+install-bpftool: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-bpftool: DIR = $(CURDIR)/debian/$(PACKAGE_NAME)
+install-bpftool: build-bpftool
+ dh_testdir
+ dh_testroot
+ dh_prep
+ $(call make-tools,tools/bpf/bpftool) install DESTDIR=$(DIR)
+ dh_installchangelogs
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ dh_installdocs
+endif
+ dh_lintian
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+build-kbuild: $(STAMPS_DIR)/build-tools-headers
+ $(call make-tools,scripts)
+ $(call make-tools,tools/objtool)
+
+install-kbuild: PACKAGE_NAME = linux-kbuild-$(VERSION)
+install-kbuild: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-kbuild: PREFIX_DIR = /usr/lib/$(PACKAGE_NAME)
+install-kbuild: DIR = $(CURDIR)/debian/$(PACKAGE_NAME)
+install-kbuild: build-kbuild
+ dh_testdir
+ dh_testroot
+ dh_prep
+ $(call make-tools,scripts) install DESTDIR=$(DIR) prefix=$(PREFIX_DIR)
+ $(call make-tools,tools/objtool) install DESTDIR=$(DIR) prefix=$(PREFIX_DIR)
+ dh_link $(PREFIX_DIR) /usr/src/$(PACKAGE_NAME)
+ dh_installchangelogs
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ dh_installdocs
+endif
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+build-cpupower: $(STAMPS_DIR)/build-tools-headers
+ $(call make-tools,tools/power/cpupower)
+ifneq ($(filter i386 amd64 x32,$(DEB_HOST_ARCH)),)
+ $(call make-tools,tools/power/x86)
+endif
+
+install-cpupower: DH_OPTIONS = -plinux-cpupower $(addprefix -p,$(filter libcpupower%,$(packages_enabled)))
+install-cpupower: DIR = $(CURDIR)/debian/cpupower-tmp
+install-cpupower: build-cpupower
+ dh_testdir
+ dh_testroot
+ dh_prep
+ $(call make-tools,tools/power/cpupower) install DESTDIR=$(DIR)
+ifneq ($(filter i386 amd64 x32,$(DEB_HOST_ARCH)),)
+ $(call make-tools,tools/power/x86) install DESTDIR=$(DIR)
+ echo >> debian/linux-cpupower.substvars 'cpupower:Arch-Description='\
+'The turbostat command reports topology, frequency, idle power-state$${Newline}'\
+'statistics, temperature and power consumption information as provided$${Newline}'\
+'by the CPU.$${Newline}'\
+'$${Newline}'\
+'The x86_energy_perf_policy command sets a general policy on some Intel$${Newline}'\
+'CPU models for the relative importance of performance versus energy$${Newline}'\
+'savings.'
+endif
+ dh_install --sourcedir=$(DIR)
+ dh_installchangelogs
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ dh_installdocs
+ dh_installman
+endif
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_makeshlibs
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+build-perf: $(STAMPS_DIR)/build-tools-headers
+ $(call make-tools,tools/perf)
+
+install-perf: PACKAGE_NAME = linux-perf-$(VERSION)
+install-perf: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-perf: DIR = $(CURDIR)/debian/$(PACKAGE_NAME)
+install-perf: build-perf
+ dh_testdir
+ dh_testroot
+ dh_prep
+ $(call make-tools,tools/perf) install DESTDIR=$(DIR)
+ # do not ship python2 script
+ rm -f $(DIR)/usr/lib/perf_$(VERSION)-core/scripts/python/call-graph-from-sql.py
+ dh_perl /usr/lib/perf_$(VERSION)-core/scripts/perl/Perf-Trace-Util/lib/
+ dh_python3 /usr/lib/perf_$(VERSION)-core/scripts/python/Perf-Trace-Util/lib/
+ dh_installchangelogs
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ dh_installdocs
+endif
+ dh_lintian
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps -Xperf-read-vdso
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+install-perf-meta: PACKAGE_NAME = linux-perf$(SOURCE_SUFFIX)
+install-perf-meta: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-perf-meta: LINK_DOC_PACKAGE = linux-perf-$(VERSION)
+install-perf-meta:
+ dh_testdir
+ dh_prep
+ +$(MAKE_SELF) install-base
+
+build-usbip: $(STAMPS_DIR)/build-tools-headers
+ $(call make-tools,tools/usb/usbip)
+
+install-usbip: DH_OPTIONS = -pusbip
+install-usbip: DIR = $(CURDIR)/debian/usbip-tmp
+install-usbip: build-usbip
+ dh_testdir
+ dh_testroot
+ dh_prep
+ $(call make-tools,tools/usb/usbip) install DESTDIR=$(DIR)
+ dh_install --sourcedir=$(DIR)
+ dh_installchangelogs
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ dh_installdocs
+ dh_installman
+endif
+ dh_lintian
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps
+ VERSION=$$(sed -ne 's,^#define PACKAGE_VERSION "\(.*\)"$$,\1,p' $(BUILD_DIR)/build-tools/tools/usb/usbip/config.h) && \
+ test -n "$$VERSION" -a -n "$(DEB_VERSION)" && \
+ dh_gencontrol -- -v$$VERSION+$(DEB_VERSION)
+ dh_md5sums
+ dh_builddeb
+
+build-hyperv-daemons: $(STAMPS_DIR)/build-tools-headers
+ $(call make-tools,tools/hv)
+
+install-hyperv-daemons: PACKAGE_NAME = hyperv-daemons
+install-hyperv-daemons: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-hyperv-daemons: DIR = $(CURDIR)/debian/$(PACKAGE_NAME)
+install-hyperv-daemons: build-hyperv-daemons
+ dh_testdir
+ dh_testroot
+ dh_prep
+ $(call make-tools,tools/hv) install DESTDIR=$(DIR)
+ dh_install
+ dh_installchangelogs
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ dh_installdocs
+endif
+ for service in fcopy kvp vss; do \
+ dh_installsystemd --name hv-$$service-daemon --no-enable --no-start \
+ || break; \
+ dh_installinit --name hv-$$service-daemon \
+ || break; \
+ done
+ dh_installudev
+ dh_lintian
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+build-liblockdep: $(STAMPS_DIR)/build-tools-headers
+ $(call make-tools,tools/lib/lockdep)
+
+install-liblockdep: DH_OPTIONS = -pliblockdep$(VERSION) -pliblockdep-dev
+install-liblockdep: DIR = $(CURDIR)/debian/liblockdep-tmp
+install-liblockdep: build-liblockdep
+ dh_testdir
+ dh_testroot
+ dh_prep
+ $(call make-tools,tools/lib/lockdep) install DESTDIR=$(DIR)
+ env -u DH_OPTIONS dh_install -pliblockdep$(VERSION) --sourcedir=$(DIR) \
+ 'usr/lib/*/liblockdep.so.*'
+ dh_install --sourcedir=$(DIR)
+ dh_installchangelogs
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ dh_installdocs
+endif
+ dh_strip
+ dh_compress
+ dh_fixperms
+ env -u DH_OPTIONS dh_makeshlibs -pliblockdep$(VERSION) \
+ liblockdep$(VERSION)
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+install-lockdep: PACKAGE_NAME = lockdep
+install-lockdep: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-lockdep: DIR = $(CURDIR)/debian/$(PACKAGE_NAME)
+install-lockdep:
+ dh_testdir
+ dh_testroot
+ dh_prep
+ dh_installdirs
+# Upstream lockdep preload script is not suitable for installation
+ sed 's/@VERSION@/$(VERSION)/' debian/rules.d/tools/lib/lockdep/lockdep.in \
+ > $(DIR)/usr/bin/lockdep
+ chmod 755 $(DIR)/usr/bin/lockdep
+ dh_installchangelogs
+ifeq (,$(filter nodoc,$(DEB_BUILD_PROFILES)))
+ dh_installdocs
+endif
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+build-bootwrapper: $(STAMPS_DIR)/build-tools-headers
+ $(call make-tools,arch/powerpc/boot)
+
+install-bootwrapper: PACKAGE_NAME = linux-bootwrapper-$(ABINAME)
+install-bootwrapper: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-bootwrapper: DIR = $(CURDIR)/debian/$(PACKAGE_NAME)
+install-bootwrapper: build-bootwrapper
+ dh_testdir
+ dh_testroot
+ dh_prep
+ $(call make-tools,arch/powerpc/boot) install DESTDIR=$(DIR) installdir=/usr/lib/$(PACKAGE_NAME)
+ dh_installchangelogs
+ dh_strip
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_shlibdeps
+ dh_gencontrol
+ dh_md5sums
+ dh_builddeb
+
+.PHONY: binary-% build-% install-% setup-% source-%
+
+# vim: filetype=make
diff --git a/debian/signing_templates/README.source b/debian/signing_templates/README.source
new file mode 100644
index 000000000..f175c35b3
--- /dev/null
+++ b/debian/signing_templates/README.source
@@ -0,0 +1,4 @@
+This source package is generated by the Debian signing service from a
+template built by the linux package. It should never be updated directly.
+
+ -- Ben Hutchings <ben@decadent.org.uk> Fri, 06 Apr 2018 10:23:29 +0100
diff --git a/debian/signing_templates/control.image.in b/debian/signing_templates/control.image.in
new file mode 100644
index 000000000..0bc4f6f83
--- /dev/null
+++ b/debian/signing_templates/control.image.in
@@ -0,0 +1,11 @@
+Package: linux-image-@abiname@@localversion@
+Depends: ${unsigned:Depends}, ${misc:Depends}
+Recommends: ${unsigned:Recommends}
+Suggests: ${unsigned:Suggests}
+Breaks: ${unsigned:Breaks}
+Conflicts: linux-image-@abiname@@localversion@-unsigned
+Replaces: linux-image-@abiname@@localversion@-unsigned
+Description: ${unsigned:DescriptionShort} (signed)
+ ${unsigned:DescriptionLong}
+ .
+ ${signed:Description}
diff --git a/debian/signing_templates/control.source.in b/debian/signing_templates/control.source.in
new file mode 100644
index 000000000..ac3d07616
--- /dev/null
+++ b/debian/signing_templates/control.source.in
@@ -0,0 +1,16 @@
+Source: linux-signed-@arch@
+Section: kernel
+Priority: optional
+Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
+Uploaders: Bastian Blank <waldi@debian.org>, maximilian attems <maks@debian.org>, Ben Hutchings <benh@debian.org>, Salvatore Bonaccorso <carnil@debian.org>
+Standards-Version: 4.2.0
+Build-Depends:
+ debhelper-compat (= 12),
+ rsync,
+ sbsigntool [amd64 arm64 i386],
+ kernel-wedge (>= 2.102~),
+ linux-kbuild-@version@
+Rules-Requires-Root: no
+Vcs-Git: https://salsa.debian.org/kernel-team/linux.git
+Vcs-Browser: https://salsa.debian.org/kernel-team/linux
+Homepage: https://www.kernel.org/
diff --git a/debian/signing_templates/rules b/debian/signing_templates/rules
new file mode 100755
index 000000000..ad6156b87
--- /dev/null
+++ b/debian/signing_templates/rules
@@ -0,0 +1,20 @@
+#!/usr/bin/make -f
+SHELL := sh -e
+
+include /usr/share/dpkg/architecture.mk
+
+build: build-arch build-indep
+build-arch:
+build-indep:
+
+clean:
+ dh_testdir
+ dh_clean
+
+binary: binary-arch binary-indep
+binary-arch: debian/control
+ dh_testdir
+ $(MAKE) -f debian/rules.gen binary-arch_$(DEB_HOST_ARCH)
+binary-indep:
+
+.PHONY: build build-arch build-indep clean binary binary-arch binary-indep
diff --git a/debian/signing_templates/rules.real b/debian/signing_templates/rules.real
new file mode 100644
index 000000000..23df05ccd
--- /dev/null
+++ b/debian/signing_templates/rules.real
@@ -0,0 +1,85 @@
+SHELL := bash -e
+
+export DH_OPTIONS
+
+build-indep:
+
+install-signed: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-signed: KERNEL_VERSION = $(ABINAME)$(LOCALVERSION)
+install-signed: IMAGE_PACKAGE_NAME = linux-image-$(KERNEL_VERSION)-unsigned
+install-signed: PACKAGE_DIR = debian/$(PACKAGE_NAME)
+install-signed: SIGNATURE_DIR = debian/signatures/$(IMAGE_PACKAGE_NAME)
+install-signed:
+ mkdir -p $(PACKAGE_DIR)/boot
+ rsync -a $(patsubst %,/boot/%-$(KERNEL_VERSION),config System.map $(IMAGE_INSTALL_STEM)) \
+ $(PACKAGE_DIR)/boot/
+ if [ -f $(SIGNATURE_DIR)/boot/vmlinuz-$(KERNEL_VERSION).sig ]; then \
+ sbattach --attach $(SIGNATURE_DIR)/boot/vmlinuz-$(KERNEL_VERSION).sig \
+ $(PACKAGE_DIR)/boot/vmlinuz-$(KERNEL_VERSION); \
+ echo >> debian/$(PACKAGE_NAME).substvars 'signed:Description=The kernel image and modules are signed for use with Secure Boot.'; \
+ else \
+ echo >> debian/$(PACKAGE_NAME).substvars 'signed:Description=The modules are signed.'; \
+ fi
+ mkdir -p $(PACKAGE_DIR)/lib/modules/$(KERNEL_VERSION)
+ rsync -a $(addprefix /lib/modules/$(KERNEL_VERSION)/,kernel modules.builtin modules.builtin.modinfo modules.order) \
+ $(PACKAGE_DIR)/lib/modules/$(KERNEL_VERSION)/
+ while read path; do \
+ /usr/lib/linux-kbuild-$(VERSION)/scripts/sign-file -s \
+ $(SIGNATURE_DIR)/lib/modules/$(KERNEL_VERSION)/$$path \
+ sha256 dummy \
+ $(PACKAGE_DIR)/lib/modules/$(KERNEL_VERSION)/$${path%.sig}; \
+ done < <(find $(SIGNATURE_DIR)/lib/modules/$(KERNEL_VERSION) -name '*.sig' -printf '%P\n')
+# Copy any device tree files
+ if [ -d /usr/lib/linux-image-$(KERNEL_VERSION) ]; then \
+ mkdir -p $(PACKAGE_DIR)/usr/lib/linux-image-$(KERNEL_VERSION); \
+ rsync -a /usr/lib/linux-image-$(KERNEL_VERSION)/ \
+ $(PACKAGE_DIR)/usr/lib/linux-image-$(KERNEL_VERSION)/; \
+ fi
+# Copy bug scripts but change the info file to refer to the right package
+ mkdir -p $(PACKAGE_DIR)/usr/share/bug/$(PACKAGE_NAME)
+ rsync -a /usr/share/bug/$(IMAGE_PACKAGE_NAME)/ \
+ $(PACKAGE_DIR)/usr/share/bug/$(PACKAGE_NAME)/
+ sed -i -e 's/^PACKAGE_NAME=.*/PACKAGE_NAME=$(PACKAGE_NAME)/' \
+ -e 's/^PACKAGE_VERSION=.*/PACKAGE_VERSION=$(PACKAGE_VERSION)/' \
+ $(PACKAGE_DIR)/usr/share/bug/$(PACKAGE_NAME)/info
+ dh_install
+ dh_installchangelogs
+ ln -sf linux-image.NEWS debian/$(PACKAGE_NAME).NEWS
+ dh_installdocs
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+# Copy most package relations and description from unsigned package
+ for field in Depends Suggests Recommends Breaks; do \
+ echo >> debian/$(PACKAGE_NAME).substvars "unsigned:$$field=$$(dpkg-query -f '$${'$$field'}' -W $(IMAGE_PACKAGE_NAME))"; \
+ done
+ echo >> debian/$(PACKAGE_NAME).substvars "unsigned:DescriptionShort=$$(dpkg-query -f '$${Description}' -W $(IMAGE_PACKAGE_NAME) | head -n 1)"
+ echo >> debian/$(PACKAGE_NAME).substvars "unsigned:DescriptionLong=$$(dpkg-query -f '$${Description}' -W $(IMAGE_PACKAGE_NAME) | tail -n +2 | sed -rz 's/\$$/$${}/g; s/^ //; s/\n \.?/$${Newline}/g')"
+ dh_gencontrol -- $(GENCONTROL_ARGS)
+ dh_md5sums
+ dh_builddeb
+
+install-meta: DH_OPTIONS = -p$(PACKAGE_NAME)
+install-meta:
+ dh_testdir
+ dh_prep
+ dh_bugfiles
+ dh_installdocs --link-doc=$(LINK_DOC_PACKAGE_NAME)
+ dh_compress
+ dh_fixperms
+ dh_installdeb
+ dh_gencontrol -- $(GENCONTROL_ARGS)
+ dh_md5sums
+ dh_builddeb
+
+install-udeb_$(ARCH): export KW_DEFCONFIG_DIR=/usr/share/linux-support-$(ABINAME)/installer
+install-udeb_$(ARCH): export KW_CONFIG_DIR=/usr/share/linux-support-$(ABINAME)/installer
+install-udeb_$(ARCH): DH_OPTIONS=$(PACKAGE_NAMES:%=-p%)
+install-udeb_$(ARCH):
+ dh_testdir
+ dh_prep
+ kernel-wedge install-files $(ABINAME)
+ kernel-wedge check $(PACKAGE_NAMES)
+ dh_fixperms
+ dh_gencontrol -- $(GENCONTROL_ARGS)
+ dh_builddeb
diff --git a/debian/signing_templates/source/format b/debian/signing_templates/source/format
new file mode 100644
index 000000000..89ae9db8f
--- /dev/null
+++ b/debian/signing_templates/source/format
@@ -0,0 +1 @@
+3.0 (native)
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 000000000..c3d9f2407
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1,2 @@
+3.0 (quilt)
+
diff --git a/debian/source/include-binaries b/debian/source/include-binaries
new file mode 100644
index 000000000..f9b965374
--- /dev/null
+++ b/debian/source/include-binaries
@@ -0,0 +1,2 @@
+debian/upstream/rt-signing-key.pgp
+debian/upstream/signing-key.pgp
diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides
new file mode 100644
index 000000000..cdc205b9d
--- /dev/null
+++ b/debian/source/lintian-overrides
@@ -0,0 +1,14 @@
+# The copyright notice in the GFDL itself, mentioning invariant
+# sections, is just an example. lintian seems to whitelist the
+# plain-text version but that doesn't cover this ReST version.
+linux source: license-problem-gfdl-invariants Documentation/media/uapi/fdl-appendix.rst invariant part is: with the :ref:`invariant sections <fdl-invariant>` being list their titles, with the :ref:`front-cover texts <fdl-cover-texts>` being list, and with the :ref:`back-cover texts <fdl-cover-texts>` being list
+
+# lintian fails to recognise that these notices say "with no invariant
+# sections ...", presumably due to the ReST markup (bug #924581).
+linux source: license-problem-gfdl-invariants Documentation/*.rst invariant part is: published by the free software .. foundation, with no invariant sections, no front-cover texts .. and no back-cover texts
+
+# Kernel dbg packages contain a full image with debug data.
+linux source: dbg-package-missing-depends
+
+# We repack the orig tarball
+linux source: orig-tarball-missing-upstream-signature *
diff --git a/debian/templates/control.config.in b/debian/templates/control.config.in
new file mode 100644
index 000000000..5b3822776
--- /dev/null
+++ b/debian/templates/control.config.in
@@ -0,0 +1,11 @@
+Package: @source_basename@-config-@version@
+Build-Profiles: <!stage1 !pkg.linux.nosource>
+Multi-Arch: same
+Depends: ${misc:Depends}
+Recommends: @source_basename@-source-@version@
+Description: Debian kernel configurations for Linux @version@
+ This package contains the configuration files used to build the
+ official Debian kernel files, but without references to Debian's
+ signing certificates.
+ .
+ These can be used as a basis for configuring custom kernels.
diff --git a/debian/templates/control.docs.in b/debian/templates/control.docs.in
new file mode 100644
index 000000000..4bb7254e9
--- /dev/null
+++ b/debian/templates/control.docs.in
@@ -0,0 +1,14 @@
+Package: @source_basename@-doc-@version@
+Build-Profiles: <!stage1 !nodoc>
+Architecture: all
+Build-Depends: graphviz, python3-sphinx, python3-sphinx-rtd-theme,
+ texlive-latex-base, texlive-latex-extra, dvipng
+Depends: ${misc:Depends}
+Section: doc
+Multi-Arch: foreign
+Description: Linux kernel specific documentation for version @version@
+ This package provides the various README files and HTML documentation for
+ the Linux kernel version @version@. Plenty of information, including the
+ descriptions of various kernel subsystems, filesystems, driver-specific
+ notes and the like. An index to the documentation is installed as
+ /usr/share/doc/linux-doc-@version@/html/index.html.
diff --git a/debian/templates/control.docs.meta.in b/debian/templates/control.docs.meta.in
new file mode 100644
index 000000000..d368d3211
--- /dev/null
+++ b/debian/templates/control.docs.meta.in
@@ -0,0 +1,8 @@
+Package: @source_basename@-doc@source_suffix@
+Build-Profiles: <!stage1 !nodoc !pkg.linux.nometa>
+Section: doc
+Architecture: all
+Depends: @source_basename@-doc-@version@ (= ${binary:Version}), ${misc:Depends}
+Description: Linux kernel specific documentation (meta-package)
+ This package depends on the package containing the documentation for the
+ latest Linux kernel.
diff --git a/debian/templates/control.extra.in b/debian/templates/control.extra.in
new file mode 100644
index 000000000..ef9015127
--- /dev/null
+++ b/debian/templates/control.extra.in
@@ -0,0 +1,44 @@
+Package: linux-compiler-gcc-10-arm
+Build-Profiles: <!stage1>
+Depends: gcc-10, ${misc:Depends}
+Architecture: armel armhf
+Multi-Arch: foreign
+Description: Compiler for Linux on ARM (meta-package)
+ This package depends on GCC of the appropriate version and architecture
+ for Linux on armel and armhf.
+
+Package: linux-compiler-gcc-10-s390
+Build-Profiles: <!stage1>
+Depends: gcc-10, ${misc:Depends}
+Architecture: s390 s390x
+Multi-Arch: foreign
+Description: Compiler for Linux on IBM zSeries (meta-package)
+ This package depends on GCC of the appropriate version and architecture
+ for Linux on s390 and s390x.
+
+Package: linux-compiler-gcc-10-x86
+Build-Profiles: <!stage1>
+Depends: gcc-10, ${misc:Depends}
+Architecture: amd64 i386 x32
+Multi-Arch: foreign
+Description: Compiler for Linux on x86 (meta-package)
+ This package depends on GCC of the appropriate version and architecture
+ for Linux on amd64, i386 and x32.
+
+Package: linux-image-parisc64-smp
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+Architecture: hppa
+Section: oldlibs
+Priority: extra
+Depends: linux-image-parisc64, ${misc:Depends}
+Description: Linux for multiprocessor 64-bit PA-RISC (dummy package)
+ This is a dummy transitional package. It can be safely removed.
+
+Package: linux-image-parisc-smp
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+Architecture: hppa
+Section: oldlibs
+Priority: extra
+Depends: linux-image-parisc, ${misc:Depends}
+Description: Linux for multiprocessor 32-bit PA-RISC (dummy package)
+ This is a dummy transitional package. It can be safely removed.
diff --git a/debian/templates/control.headers.featureset.in b/debian/templates/control.headers.featureset.in
new file mode 100644
index 000000000..123fedf5a
--- /dev/null
+++ b/debian/templates/control.headers.featureset.in
@@ -0,0 +1,11 @@
+Package: linux-headers-@abiname@-common@localversion@
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+Architecture: all
+Depends: ${misc:Depends}
+Multi-Arch: foreign
+Description: Common header files for Linux @abiname@@localversion@
+ This package provides the common kernel header files for Linux kernel
+ version @abiname@@featureset_desc@, generally used for building
+ out-of-tree kernel modules. To obtain a complete set of headers you
+ also need to install the linux-headers-@abiname@-(flavour) package,
+ matching the flavour of the kernel you intend the build for.
diff --git a/debian/templates/control.headers.in b/debian/templates/control.headers.in
new file mode 100644
index 000000000..dc77662cd
--- /dev/null
+++ b/debian/templates/control.headers.in
@@ -0,0 +1,10 @@
+Package: linux-headers-@abiname@@localversion@
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+Depends: linux-headers-@abiname@-common@localversion_headers@ (= ${source:Version}), linux-kbuild-@version@ (>= ${source:Version}), ${misc:Depends}
+Description: Header files for Linux @abiname@@localversion@
+ This package provides the architecture-specific kernel header files
+ for Linux kernel @abiname@@localversion@, generally
+ used for building out-of-tree kernel modules. These files are going to be
+ installed into /usr/src/linux-headers-@abiname@@localversion@, and can
+ be used for building modules that load into the kernel provided by the
+ linux-image-@abiname@@localversion@ package.
diff --git a/debian/templates/control.headers.meta.in b/debian/templates/control.headers.meta.in
new file mode 100644
index 000000000..d9f698674
--- /dev/null
+++ b/debian/templates/control.headers.meta.in
@@ -0,0 +1,6 @@
+Package: linux-headers@source_suffix@@localversion@
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+Depends: linux-headers-@abiname@@localversion@ (= ${binary:Version}), ${misc:Depends}
+Description: Header files for Linux @flavour@ configuration (meta-package)
+ This package depends on the architecture-specific header files for the latest
+ Linux kernel @flavour@ configuration.
diff --git a/debian/templates/control.image-dbg.in b/debian/templates/control.image-dbg.in
new file mode 100644
index 000000000..3c67d56ac
--- /dev/null
+++ b/debian/templates/control.image-dbg.in
@@ -0,0 +1,8 @@
+Package: linux-image-@abiname@@localversion@-dbg
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+Depends: ${misc:Depends}
+Section: debug
+Priority: optional
+Description: Debug symbols for linux-image-@abiname@@localversion@
+ This package provides the detached debug symbols for the Linux kernel
+ and modules in linux-image-@abiname@@localversion@.
diff --git a/debian/templates/control.image-dbg.meta.in b/debian/templates/control.image-dbg.meta.in
new file mode 100644
index 000000000..f6f317fa4
--- /dev/null
+++ b/debian/templates/control.image-dbg.meta.in
@@ -0,0 +1,7 @@
+Package: linux-image@source_suffix@@localversion@-dbg
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+Depends: linux-image-@abiname@@localversion@-dbg (= ${binary:Version}), ${misc:Depends}
+Provides: linux-latest-image-dbg
+Description: Debugging symbols for Linux @flavour@ configuration (meta-package)
+ This package depends on the detached debugging symbols for the latest
+ Linux kernel @flavour@ configuration.
diff --git a/debian/templates/control.image-unsigned.in b/debian/templates/control.image-unsigned.in
new file mode 100644
index 000000000..68c7ff32e
--- /dev/null
+++ b/debian/templates/control.image-unsigned.in
@@ -0,0 +1,9 @@
+Package: linux-image-@abiname@@localversion@-unsigned
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+Depends: kmod, linux-base (>= 4.3~), ${misc:Depends}
+Recommends: firmware-linux-free
+Suggests: linux-doc-@version@, debian-kernel-handbook
+Conflicts: linux-image-@abiname@@localversion@
+Replaces: linux-image-@abiname@@localversion@
+Description: Linux @upstreamversion@ for @class@
+ The Linux kernel @upstreamversion@ and modules for use on @longclass@.
diff --git a/debian/templates/control.image.in b/debian/templates/control.image.in
new file mode 100644
index 000000000..546310aef
--- /dev/null
+++ b/debian/templates/control.image.in
@@ -0,0 +1,7 @@
+Package: linux-image-@abiname@@localversion@
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+Depends: kmod, linux-base (>= 4.3~), linux-bootwrapper-@abiname@ [powerpc ppc64], ${misc:Depends}
+Recommends: firmware-linux-free
+Suggests: linux-doc-@version@, debian-kernel-handbook
+Description: Linux @upstreamversion@ for @class@
+ The Linux kernel @upstreamversion@ and modules for use on @longclass@.
diff --git a/debian/templates/control.image.meta.in b/debian/templates/control.image.meta.in
new file mode 100644
index 000000000..7b7153255
--- /dev/null
+++ b/debian/templates/control.image.meta.in
@@ -0,0 +1,7 @@
+Package: linux-image@source_suffix@@localversion@
+Build-Profiles: <!stage1 !pkg.linux.nokernel !pkg.linux.nometa>
+Depends: linux-image-@abiname@@localversion@ (= ${binary:Version}), ${misc:Depends}
+Provides: linux-latest-modules-@abiname@@localversion@, wireguard-modules (= 1.0.0), virtualbox-guest-modules [amd64 i386]
+Description: Linux for @class@ (meta-package)
+ This package depends on the latest Linux kernel and modules for use on
+ @longclass@.
diff --git a/debian/templates/control.libc-dev.in b/debian/templates/control.libc-dev.in
new file mode 100644
index 000000000..e66513ea9
--- /dev/null
+++ b/debian/templates/control.libc-dev.in
@@ -0,0 +1,7 @@
+Package: linux-libc-dev
+Section: devel
+Depends: ${misc:Depends}
+Multi-Arch: same
+Description: Linux support headers for userspace development
+ This package provides userspaces headers from the Linux kernel. These headers
+ are used by the installed headers for GNU libc and other system libraries.
diff --git a/debian/templates/control.main.in b/debian/templates/control.main.in
new file mode 100644
index 000000000..aa092b025
--- /dev/null
+++ b/debian/templates/control.main.in
@@ -0,0 +1,11 @@
+Package: @source_basename@-support-@abiname@
+Build-Profiles: <!stage1>
+Architecture: all
+Section: devel
+Depends: ${python3:Depends}, ${misc:Depends}
+Multi-Arch: foreign
+Description: Support files for Linux @upstreamversion@
+ This package provides support files for the Linux kernel build,
+ e.g. scripts to handle ABI information and for generation of
+ build system meta data.
+
diff --git a/debian/templates/control.signed-template.in b/debian/templates/control.signed-template.in
new file mode 100644
index 000000000..175084191
--- /dev/null
+++ b/debian/templates/control.signed-template.in
@@ -0,0 +1,6 @@
+Package: linux-image@source_suffix@-@arch@-signed-template
+Build-Profiles: <!stage1 !pkg.linux.nokernel>
+Depends: dpkg-dev, ${misc:Depends}
+Description: Template for signed linux-image packages for @arch@
+ This package is used to control code signing by the Debian signing
+ service.
diff --git a/debian/templates/control.source.in b/debian/templates/control.source.in
new file mode 100644
index 000000000..ea9e8169d
--- /dev/null
+++ b/debian/templates/control.source.in
@@ -0,0 +1,43 @@
+Section: kernel
+Priority: optional
+Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
+Uploaders: Bastian Blank <waldi@debian.org>, maximilian attems <maks@debian.org>, Ben Hutchings <benh@debian.org>, Salvatore Bonaccorso <carnil@debian.org>
+Standards-Version: 4.2.0
+Build-Depends:
+ debhelper-compat (= 12), dh-exec,
+# used to run debian/bin/*.py
+ python3:any,
+# used by debian/rules.real to prepare the source
+ quilt,
+# used by debian/rules.real to build linux-doc and linux-headers
+ cpio <!stage1>,
+# used by upstream to compress kernel and by debian/rules.real to build linux-source
+ xz-utils <!stage1>,
+# used by debian/rules.real to build linux-perf and linux-support
+ dh-python <!stage1>,
+# used by upstream to build genksyms, kconfig, and perf
+ bison <!stage1>, flex (>= 2.6.1-1.1~) <!stage1>,
+Build-Depends-Arch:
+# used by debian/rules.real to build udebs
+ kernel-wedge (>= 2.102~) <!stage1 !pkg.linux.nokernel>,
+# used by kernel-wedge (only on Linux, thus not declared as a dependency)
+ kmod <!stage1 !pkg.linux.nokernel>,
+# used by upstream to build include/generated/timeconst.h
+ bc <!stage1 !pkg.linux.nokernel>,
+# used by upstream to build signing tools and to process certificates
+ libssl-dev:native <!stage1 !pkg.linux.nokernel>,
+ libssl-dev <!stage1 !pkg.linux.notools>,
+ openssl (>= 1.1.0-1~) <!stage1 !pkg.linux.nokernel>,
+# used by upstream to build objtool (native for amd64 images; host arch for
+# linux-kbuild), perf (host arch)
+ libelf-dev:native [amd64] <!stage1 !pkg.linux.nokernel>,
+ libelf-dev <!stage1 !pkg.linux.notools>,
+# used by upstream headers_install target and by debian/rules.d/tools/usb/usbip
+ rsync,
+ lz4 [amd64 arm64] <!stage1 !pkg.linux.nokernel>,
+# used for bft debug info
+ dwarves (>= 1.16~) [amd64 arm64] <!stage1 !pkg.linux.nokernel>,
+Rules-Requires-Root: no
+Vcs-Git: https://salsa.debian.org/kernel-team/linux.git
+Vcs-Browser: https://salsa.debian.org/kernel-team/linux
+Homepage: https://www.kernel.org/
diff --git a/debian/templates/control.sourcebin.in b/debian/templates/control.sourcebin.in
new file mode 100644
index 000000000..a3329e2a7
--- /dev/null
+++ b/debian/templates/control.sourcebin.in
@@ -0,0 +1,15 @@
+Package: @source_basename@-source-@version@
+Build-Profiles: <!stage1 !pkg.linux.nosource>
+Architecture: all
+Section: kernel
+Build-Depends: patchutils
+Depends: binutils, xz-utils, ${misc:Depends}
+Recommends: libc6-dev | libc-dev, gcc, make, bc, bison, flex, @source_basename@-config-@version@
+Suggests: libncurses-dev | ncurses-dev, qtbase5-dev, pkg-config
+Multi-Arch: foreign
+Description: Linux kernel source for version @version@ with Debian patches
+ This package provides source code for the Linux kernel version @version@.
+ This source closely tracks official Linux kernel releases. Debian's
+ modifications to that source consist of security fixes, bug fixes, and
+ features that have already been (or are believed to be) accepted by the
+ upstream maintainers.
diff --git a/debian/templates/control.sourcebin.meta.in b/debian/templates/control.sourcebin.meta.in
new file mode 100644
index 000000000..13c996d3f
--- /dev/null
+++ b/debian/templates/control.sourcebin.meta.in
@@ -0,0 +1,7 @@
+Package: @source_basename@-source@source_suffix@
+Build-Profiles: <!stage1 !pkg.linux.nosource !pkg.linux.nometa>
+Architecture: all
+Depends: @source_basename@-source-@version@ (= ${binary:Version}), ${misc:Depends}
+Description: Linux kernel source (meta-package)
+ This package depends on packages containing the sources of the latest Linux
+ kernel.
diff --git a/debian/templates/control.tools-unversioned.in b/debian/templates/control.tools-unversioned.in
new file mode 100644
index 000000000..c6e3c5393
--- /dev/null
+++ b/debian/templates/control.tools-unversioned.in
@@ -0,0 +1,137 @@
+Package: bpftool
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+Section: devel
+Architecture: linux-any
+Build-Depends:
+ python3-docutils <!stage1 !nodoc !pkg.linux.notools>,
+ libelf-dev,
+ zlib1g-dev,
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Inspection and simple manipulation of BPF programs and maps
+ The bpftool command allows for inspection and simple modification of
+ Berkeley Packet Filter (BPF) objects on the system.
+
+Package: linux-cpupower
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+Section: admin
+Architecture: linux-any
+Build-Depends:
+ libcap-dev,
+ libpci-dev,
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: CPU power management tools for Linux
+ The cpupower command allows inspection and control of cpufreq and
+ cpuidle tunables for hardware that supports these features. It
+ replaces "cpufreq-info" and "cpufreq-set" in cpufrequtils.
+ .
+ ${cpupower:Arch-Description}
+
+Package: libcpupower1
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+Section: libs
+Architecture: linux-any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: CPU frequency and voltage scaling tools for Linux (libraries)
+ libcpupower is a library for inspecting and controlling cpufreq and
+ cpuidle tunables.
+ .
+ This package contains the shared library.
+
+Package: libcpupower-dev
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+Section: libdevel
+Architecture: linux-any
+Depends: ${misc:Depends}, libcpupower1 (= ${binary:Version})
+Provides: libcpufreq-dev
+Conflicts: libcpufreq-dev
+Replaces: libcpufreq-dev
+Description: CPU frequency and voltage scaling tools for Linux (development files)
+ libcpupower is a library for inspecting and controlling cpufreq and
+ cpuidle tunables.
+ .
+ This package is needed to compile programs against libcpupower.
+
+Package: usbip
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+Architecture: linux-any
+Build-Depends:
+ autoconf,
+ automake,
+ libtool,
+ libglib2.0-dev,
+ libudev-dev,
+ libwrap0-dev,
+Depends: usb.ids, ${shlibs:Depends}, ${misc:Depends}
+Section: admin
+Description: USB device sharing system over IP network
+ USB/IP is a system for sharing USB devices over the network.
+ .
+ To share USB devices between computers with their full
+ functionality, USB/IP encapsulates "USB requests" into IP
+ packets and transmits them between computers.
+ .
+ Original USB device drivers and applications can be used
+ for remote USB devices without any modification of them. A
+ computer can use remote USB devices as if they were
+ directly attached.
+ .
+ Currently USB/IP provides no access control or encryption.
+ It should only be used in trusted environments.
+ .
+ This package provides the server component 'usbipd' and the
+ client tool 'usbip'.
+
+Package: hyperv-daemons
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools>
+Architecture: i386 amd64 x32
+Pre-Depends: ${misc:Pre-Depends}
+Depends: lsb-base, ${shlibs:Depends}, ${misc:Depends}
+Section: admin
+Description: Support daemons for Linux running on Hyper-V
+ Suite of daemons for Linux guests running on Hyper-V, consisting of
+ hv_fcopy_daemon, hv_kvp_daemon and hv_vss_daemon.
+ .
+ hv_fcopy_daemon provides the file copy service, allowing the host to
+ copy files into the guest.
+ .
+ hv_kvp_daemon provides the key-value pair (KVP) service, allowing the
+ host to get and set the IP networking configuration of the guest.
+ (This requires helper scripts which are not currently included.)
+ .
+ hv_vss_daemon provides the volume shadow copy service (VSS), allowing
+ the host to freeze the guest filesystems while taking a snapshot.
+
+#Package: lockdep
+#Build-Profiles: <!stage1 !pkg.linux.notools>
+#Architecture: all
+#Depends: ${misc:Depends}, liblockdep@version@
+#Recommends: liblockdep-dev
+#Section: devel
+#Multi-Arch: allowed
+#Description: Runtime locking correctness validator
+# lockdep is a wrapper for programs that use the pthreads API, which detects
+# actual and potential deadlocks and other locking bugs.
+#
+#Package: liblockdep@version@
+#Build-Profiles: <!stage1 !pkg.linux.notools>
+#Architecture: linux-any
+#Depends: ${shlibs:Depends}, ${misc:Depends}
+#Section: libs
+#Multi-Arch: same
+#Description: Runtime locking correctness validator (shared library)
+# liblockdep is a library for programs that use the pthreads API, which can
+# be used to detect actual and potential deadlocks and other locking bugs.
+# .
+# This package contains the shared library.
+#
+#Package: liblockdep-dev
+#Build-Profiles: <!stage1 !pkg.linux.notools>
+#Architecture: linux-any
+#Depends: ${misc:Depends}, liblockdep@version@ (= ${binary:Version})
+#Section: libdevel
+#Multi-Arch: same
+#Description: Runtime locking correctness validator (development files)
+# liblockdep is a library for programs that use the pthreads API, which can
+# be used to detect actual and potential deadlocks and other locking bugs.
+# .
+# This package is needed to compile programs against liblockdep.
diff --git a/debian/templates/control.tools-versioned.in b/debian/templates/control.tools-versioned.in
new file mode 100644
index 000000000..8719959d3
--- /dev/null
+++ b/debian/templates/control.tools-versioned.in
@@ -0,0 +1,48 @@
+Package: linux-kbuild-@version@
+Build-Profiles: <!stage1 !pkg.linux.notools>
+Architecture: linux-any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Multi-Arch: foreign
+Description: Kbuild infrastructure for Linux @version@
+ This package provides the kbuild infrastructure for the headers packages for Linux kernel version @version@.
+
+Package: linux-perf-@version@
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython>
+Section: devel
+Architecture: alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mipsel mipsn32 mipsn32el mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64
+Build-Depends:
+ asciidoctor <!stage1 !nodoc !pkg.linux.notools !nopython>,
+ gcc-multilib [amd64 mips64 mips64el mips64r6 mips64r6el ppc64 s390x sparc64],
+ libaudit-dev,
+ libbabeltrace-dev (>= 1.5.0),
+# libbabeltrace-ctf-dev may or may not be needed as well
+ libbabeltrace-dev (>= 1.5.3-2~) | libbabeltrace-ctf-dev (>= 1.5.0),
+ libdw-dev,
+ libiberty-dev,
+ libnewt-dev,
+ libnuma-dev,
+ libperl-dev,
+ libunwind-dev [amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mipsel powerpc ppc64 ppc64el sh4],
+ libopencsd-dev,
+ python3-dev,
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, ${python3:Depends}
+Recommends: linux-base
+Provides: linux-tools-@version@
+Conflicts: linux-tools-@version@
+Replaces: linux-tools-@version@
+Suggests: linux-doc-@version@
+Description: Performance analysis tools for Linux @version@
+ This package contains the 'perf' performance analysis tools for Linux
+ kernel version @version@.
+ .
+ The linux-base package contains a 'perf' command which will invoke the
+ appropriate version for the running kernel.
+
+Package: linux-bootwrapper-@abiname@
+Build-Profiles: <!stage1 !pkg.linux.notools>
+Architecture: powerpc ppc64
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Multi-Arch: foreign
+Description: Boot wrapper tools for Linux @version@ on PowerPC
+ This package provides the 'wrapper' script and related tools needed
+ to process the Linux kernel image for use with some PowerPC platforms.
diff --git a/debian/templates/control.tools-versioned.meta.in b/debian/templates/control.tools-versioned.meta.in
new file mode 100644
index 000000000..c886acca1
--- /dev/null
+++ b/debian/templates/control.tools-versioned.meta.in
@@ -0,0 +1,7 @@
+Package: linux-perf@source_suffix@
+Build-Profiles: <!stage1 !pkg.linux.notools !pkg.linux.mintools !nopython !pkg.linux.nometa>
+Architecture: alpha amd64 arm64 armel armhf hppa i386 mips mips64 mips64el mipsel mipsn32 mipsn32el mipsr6 mipsr6el mipsn32r6 mipsn32r6el mips64r6 mips64r6el powerpc ppc64 ppc64el riscv64 s390 s390x sh4 sparc sparc64
+Depends: linux-perf-@version@ (= ${binary:Version}), ${misc:Depends}
+Description: Performance analysis tools for Linux (meta-package)
+ This package depends on the package containing the 'perf' performance
+ analysis tools for the latest Linux kernel.
diff --git a/debian/templates/docs.meta.maintscript.in b/debian/templates/docs.meta.maintscript.in
new file mode 100644
index 000000000..be9cf59f0
--- /dev/null
+++ b/debian/templates/docs.meta.maintscript.in
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/@source_basename@-doc@source_suffix@ @source_basename@-doc-@version@ 5.7~rc5-1~exp1 @source_basename@-doc@source_suffix@
diff --git a/debian/templates/headers.meta.maintscript.in b/debian/templates/headers.meta.maintscript.in
new file mode 100644
index 000000000..e1f2662cb
--- /dev/null
+++ b/debian/templates/headers.meta.maintscript.in
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-headers@source_suffix@@localversion@ linux-headers-@abiname@@localversion@ 5.7~rc5-1~exp1 linux-headers@source_suffix@@localversion@
diff --git a/debian/templates/headers.postinst.in b/debian/templates/headers.postinst.in
new file mode 100755
index 000000000..c13e6dc54
--- /dev/null
+++ b/debian/templates/headers.postinst.in
@@ -0,0 +1,18 @@
+#!/usr/bin/perl
+# Author: Michael Gilbert <michael.s.gilbert@gmail.com>
+# Origin: Stripped down version of the linux-headers postinst from Ubuntu's
+# 2.6.32-14-generic kernel, which was itself derived from a
+# Debian linux-image postinst script.
+
+$|=1;
+my $version = "@abiname@@localversion@";
+
+if (-d "/etc/kernel/header_postinst.d") {
+ system ("run-parts --report --exit-on-error --arg=$version " .
+ "/etc/kernel/header_postinst.d") &&
+ die "Failed to process /etc/kernel/header_postinst.d";
+}
+
+exit 0;
+
+__END__
diff --git a/debian/templates/image-dbg.lintian-overrides.in b/debian/templates/image-dbg.lintian-overrides.in
new file mode 100755
index 000000000..4290c1566
--- /dev/null
+++ b/debian/templates/image-dbg.lintian-overrides.in
@@ -0,0 +1,15 @@
+#!/usr/bin/dh-exec
+
+# Kernel dbg packages contain a full image with debug data
+linux-image-@abiname@@localversion@-dbg: dbg-package-missing-depends
+
+# glibc doesn't seem to check for a PT_GNU_STACK section in vDSOs, so
+# it's OK that they don't have it
+[arm64 armhf] linux-image-@abiname@@localversion@-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/@abiname@@localversion@/vdso/vdso.so
+[amd64 i386 ppc64el s390x] linux-image-@abiname@@localversion@-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/@abiname@@localversion@/vdso/vdso32.so
+[amd64 ppc64el s390x] linux-image-@abiname@@localversion@-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/@abiname@@localversion@/vdso/vdso64.so
+[amd64] linux-image-@abiname@@localversion@-dbg: shlib-without-PT_GNU_STACK-section usr/lib/debug/lib/modules/@abiname@@localversion@/vdso/vdsox32.so
+
+# It is intended that 64-bit kernels provide vDSOs for 32-bit executables
+[amd64 ppc64el s390x] linux-image-@abiname@@localversion@-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/@abiname@@localversion@/vdso/vdso32.so
+[amd64] linux-image-@abiname@@localversion@-dbg: binary-from-other-architecture usr/lib/debug/lib/modules/@abiname@@localversion@/vdso/vdsox32.so
diff --git a/debian/templates/image-dbg.meta.lintian-overrides.in b/debian/templates/image-dbg.meta.lintian-overrides.in
new file mode 100644
index 000000000..a3c7e848c
--- /dev/null
+++ b/debian/templates/image-dbg.meta.lintian-overrides.in
@@ -0,0 +1,2 @@
+linux-image@source_suffix@-@flavour@-dbg: wrong-section-according-to-package-name linux-image@source_suffix@-@flavour@-dbg => debug
+linux-image@source_suffix@-@flavour@-dbg: debug-package-should-be-priority-extra linux-image@source_suffix@-@flavour@-dbg
diff --git a/debian/templates/image-dbg.meta.maintscript.in b/debian/templates/image-dbg.meta.maintscript.in
new file mode 100644
index 000000000..f09fd9d76
--- /dev/null
+++ b/debian/templates/image-dbg.meta.maintscript.in
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image@source_suffix@@localversion@-dbg linux-image-@abiname@@localversion@-dbg 5.7~rc5-1~exp1 linux-image@source_suffix@@localversion@-dbg
diff --git a/debian/templates/image.bug/control b/debian/templates/image.bug/control
new file mode 100644
index 000000000..b60912c4c
--- /dev/null
+++ b/debian/templates/image.bug/control
@@ -0,0 +1,2 @@
+Submit-As: src:linux
+Package-Status: firmware-amd-graphics firmware-atheros firmware-bnx2 firmware-bnx2x firmware-brcm80211 firmware-cavium firmware-intelwimax firmware-intel-sound firmware-ipw2x00 firmware-ivtv firmware-iwlwifi firmware-libertas firmware-linux-nonfree firmware-misc-nonfree firmware-myricom firmware-netxen firmware-qlogic firmware-realtek firmware-samsung firmware-siano firmware-ti-connectivity xen-hypervisor
diff --git a/debian/templates/image.bug/include-0version b/debian/templates/image.bug/include-0version
new file mode 100644
index 000000000..b5b32bfbd
--- /dev/null
+++ b/debian/templates/image.bug/include-0version
@@ -0,0 +1,9 @@
+add_0version() {
+ echo '** Version:' >&3
+ cat /proc/version >&3
+ echo >&3
+}
+
+ask_0version() {
+ true
+}
diff --git a/debian/templates/image.bug/include-1cmdline b/debian/templates/image.bug/include-1cmdline
new file mode 100644
index 000000000..3fcc94098
--- /dev/null
+++ b/debian/templates/image.bug/include-1cmdline
@@ -0,0 +1,9 @@
+add_1cmdline() {
+ echo '** Command line:' >&3
+ cat /proc/cmdline >&3
+ echo >&3
+}
+
+ask_1cmdline() {
+ true
+}
diff --git a/debian/templates/image.bug/include-1tainted b/debian/templates/image.bug/include-1tainted
new file mode 100644
index 000000000..7eedf260b
--- /dev/null
+++ b/debian/templates/image.bug/include-1tainted
@@ -0,0 +1,41 @@
+_check() {
+ if [ $(($tainted & 1<<$1)) -ne 0 ]; then
+ result_short="$result_short$2"
+ result_long="$result_long * $3\n"
+ fi
+}
+
+add_1tainted() {
+ tainted=$(cat /proc/sys/kernel/tainted)
+ if [ "$tainted" -gt 0 ]; then
+ local result_short result_long
+ # Use debian/bin/update-bug-taint-list to update this
+ _check 0 P 'proprietary module was loaded'
+ _check 1 F 'module was force loaded'
+ _check 2 S 'SMP kernel oops on an officially SMP incapable processor'
+ _check 3 R 'module was force unloaded'
+ _check 4 M 'processor reported a Machine Check Exception (MCE)'
+ _check 5 B 'bad page referenced or some unexpected page flags'
+ _check 6 U 'taint requested by userspace application'
+ _check 7 D 'kernel died recently, i.e. there was an OOPS or BUG'
+ _check 8 A 'ACPI table overridden by user'
+ _check 9 W 'kernel issued warning'
+ _check 10 C 'staging driver was loaded'
+ _check 11 I 'workaround for bug in platform firmware applied'
+ _check 12 O 'externally-built ("out-of-tree") module was loaded'
+ _check 13 E 'unsigned module was loaded'
+ _check 14 L 'soft lockup occurred'
+ _check 15 K 'kernel has been live patched'
+ _check 16 X 'auxiliary taint, defined for and used by distros'
+ _check 17 T 'kernel was built with the struct randomization plugin'
+ echo "** Tainted: $result_short ($tainted)" >&3
+ printf "$result_long" >&3
+ else
+ echo '** Not tainted' >&3
+ fi
+ echo >&3
+}
+
+ask_1tainted() {
+ true
+}
diff --git a/debian/templates/image.bug/include-dmesg b/debian/templates/image.bug/include-dmesg
new file mode 100644
index 000000000..634dc99ac
--- /dev/null
+++ b/debian/templates/image.bug/include-dmesg
@@ -0,0 +1,21 @@
+add_dmesg() {
+ local got_log=
+ echo '** Kernel log:' >&3
+ if [ "$(cat /proc/sys/kernel/dmesg_restrict)" = 0 ]; then
+ dmesg > >(tail -n 100 >&3) && got_log=y
+ elif command -v sudo >/dev/null; then
+ yesno "Use sudo to read the kernel log? " yep
+ if [ "$REPLY" = yep ]; then
+ sudo dmesg > >(tail -n 100 >&3) && got_log=y
+ fi
+ fi
+ test "$got_log" || echo 'Unable to read kernel log; any relevant messages should be attached' >&3
+ echo >&3
+}
+
+ask_dmesg() {
+ # Remind the user to attach the kernel log. This should also trigger
+ # a reminder in some MUAs if the user tries to send without it.
+ echo '** Kernel log: boot messages should be attached' >&3
+ echo >&3
+}
diff --git a/debian/templates/image.bug/include-model b/debian/templates/image.bug/include-model
new file mode 100644
index 000000000..ba77fb266
--- /dev/null
+++ b/debian/templates/image.bug/include-model
@@ -0,0 +1,60 @@
+grep_model() {
+ case "$(uname -m)" in
+ alpha)
+ egrep '^(system (type|variation|revision)|platform string)\b' /proc/cpuinfo
+ ;;
+ arm*)
+ egrep '^(Processor|Hardware|Revision)\b' /proc/cpuinfo
+ ;;
+ i386|ia64|x86_64)
+ local found=
+ for name in {sys,product,chassis,bios,board}_{vendor,name,version}; do
+ if [ -f /sys/class/dmi/id/$name ]; then
+ echo -n "$name: "
+ cat /sys/class/dmi/id/$name
+ found=y
+ fi
+ done
+ test -n "$found"
+ ;;
+ mips|mips64)
+ egrep '^(system type|cpu model)\b' /proc/cpuinfo
+ ;;
+ parisc|parisc64)
+ egrep '^(model|[hs]version)\b' /proc/cpuinfo
+ ;;
+ ppc|ppc64|ppc64le)
+ egrep -i '^(board|machine|model|motherboard|platform|revision|vendor)\b' /proc/cpuinfo
+ ;;
+ s390|s390x)
+ egrep '^processor\b' /proc/cpuinfo
+ ;;
+ sparc|sparc64)
+ egrep '^(cpu|fpu|pmu|prom|type)\b' /proc/cpuinfo
+ ;;
+ sh4|sh4a)
+ egrep '^(machine|cpu)\b' /proc/cpuinfo
+ ;;
+ *)
+ false
+ ;;
+ esac
+
+ # Device Tree model
+ if [ -r /proc/device-tree/model ]; then
+ echo "Device Tree model:" $(cat /proc/device-tree/model)
+ fi
+}
+
+add_model() {
+ local found=
+ echo '** Model information' >&3
+ grep_model >&3 2>/dev/null || echo "not available" >&3
+ echo >&3
+}
+
+ask_model() {
+ # This is still valid as long as the bug is being reported on the same
+ # system.
+ test $same_system = nop || add_model
+}
diff --git a/debian/templates/image.bug/include-modules b/debian/templates/image.bug/include-modules
new file mode 100644
index 000000000..22271c905
--- /dev/null
+++ b/debian/templates/image.bug/include-modules
@@ -0,0 +1,13 @@
+add_modules() {
+ echo '** Loaded modules:' >&3
+ # List modules along with any taint flags.
+ # We should be able to tell cut to use an empty output delimiter, but
+ # currently (coreutils 8.13-3) this results in null bytes in the output.
+ cut -d' ' -f1,7 /proc/modules | sed 's/ //' >&3
+ echo >&3
+}
+
+ask_modules() {
+ true
+}
+
diff --git a/debian/templates/image.bug/include-network b/debian/templates/image.bug/include-network
new file mode 100644
index 000000000..89d9cb9de
--- /dev/null
+++ b/debian/templates/image.bug/include-network
@@ -0,0 +1,69 @@
+_list_etc_network_interfaces() {
+ local file
+
+ for file in /etc/network/interfaces /etc/network/interfaces.d/*; do
+ if ! [ -f "$file" ]; then
+ continue
+ fi
+ case "${file##*/}" in
+ *[^-a-zA-Z0-9_]*)
+ continue
+ ;;
+ esac
+ echo "$file"
+ done
+}
+
+_add_etc_network_interfaces() {
+ local file
+ test -f /etc/network/interfaces || return 0
+
+ echo '** Network interface configuration:' >&3
+
+ while read file; do
+ if ! [ -r "$file" ]; then
+ echo "*** $file: unreadable" >&3
+ echo >&3
+ continue
+ fi
+ echo "*** $file:" >&3
+ # Hide passwords/keys
+ awk '$1 ~ /key|pass|^wpa-(anonymous|identity|phase|pin|private|psk)/ { gsub(".", "*", $2); }
+ $1 == "ethtool-wol" { gsub(".", "*", $3); }
+ !/^[[:space:]]*\#/ { print; }
+ ' <"$file" >&3
+ echo >&3
+ done < <(_list_etc_network_interfaces)
+}
+
+add_network() {
+ yesno "Include network configuration and status from this computer? " nop
+ test $REPLY = yep || return 0
+
+ _add_etc_network_interfaces
+ echo '** Network status:' >&3
+ if command -v ip >/dev/null; then
+ echo '*** IP interfaces and addresses:' >&3
+ ip address show >&3
+ echo >&3
+ fi
+ echo '*** Device statistics:' >&3
+ cat /proc/net/dev >&3
+ echo >&3
+ if command -v netstat >/dev/null; then
+ echo '*** Protocol statistics:' >&3
+ netstat -s >&3 || true
+ echo >&3
+ fi
+ echo >&3
+}
+
+ask_network() {
+ test $same_system = yep || return 0
+ test -f /etc/network/interfaces || return 0
+
+ yesno "Include network configuration from this computer? " nop
+ test $REPLY = yep || return 0
+
+ _add_etc_network_interfaces
+}
diff --git a/debian/templates/image.bug/include-pci b/debian/templates/image.bug/include-pci
new file mode 100644
index 000000000..8e6528e5a
--- /dev/null
+++ b/debian/templates/image.bug/include-pci
@@ -0,0 +1,12 @@
+add_pci() {
+ echo '** PCI devices:' >&3
+ lspci -nnvv >&3 2>/dev/null || echo 'not available' >&3
+ echo >&3
+}
+
+ask_pci() {
+ # This information shouldn't vary much between kernel versions, so
+ # include it anyway.
+ test $same_system = nop || add_pci
+}
+
diff --git a/debian/templates/image.bug/include-pstore b/debian/templates/image.bug/include-pstore
new file mode 100644
index 000000000..43285bd6a
--- /dev/null
+++ b/debian/templates/image.bug/include-pstore
@@ -0,0 +1,77 @@
+_add_pstore_log() {
+ if [ $# -le 3 ]; then
+ return
+ fi
+
+ local backend="$1"
+ local event="$2"
+ local date="$3"
+
+ yesno "Include log of $event at $(date -d @$date +%c) stored by $backend?" yep
+ if [ $REPLY != yep ]; then
+ return
+ fi
+
+ echo >&3
+ echo "*** Log of $event at $(date -d @$date -Iseconds) from $backend" >&3
+
+ shift 3
+ for file in "$@"; do
+ tail -n +2 "$file" | sed 's/^<.>//' >&3
+ done
+}
+
+add_pstore() {
+ local backend
+ local i
+ local j
+ local file
+ local date
+ local head
+ local event
+ local log_files
+
+ if ! mountpoint -q /sys/fs/pstore; then
+ return 0
+ fi
+
+ set -- /sys/fs/pstore/dmesg-*-1
+ backend=${1#*/dmesg-}
+ backend=${backend%-1}
+ if [ "$backend" = '*' ]; then
+ return 0
+ fi
+
+ i=1
+ while [ -f /sys/fs/pstore/dmesg-$backend-$i ]; do
+ file=/sys/fs/pstore/dmesg-$backend-$i
+ head="$(head -1 "$file")"
+
+ # Is this the first part of a log?
+ if [ "x${head% Part1}" != "x$head" ]; then
+ # Flush previous log, if any
+ _add_pstore_log "$backend" "$event" "$date" $log_files
+
+ event="${head% Part1}"
+ date=$(stat -c %Y $file)
+ log_files=
+ j=1
+ fi
+
+ if [ "x$head" = "x$event Part$j" ]; then
+ # Each part is prepended to the list, because they're numbered
+ # backward in log history
+ log_files="$file $log_files"
+ j=$((j + 1))
+ fi
+
+ i=$((i + 1))
+ done
+
+ # Flush last log, if any
+ _add_pstore_log "$backend" "$event" "$date" $log_files
+}
+
+ask_pstore() {
+ add_pstore
+}
diff --git a/debian/templates/image.bug/include-usb b/debian/templates/image.bug/include-usb
new file mode 100644
index 000000000..e8eb67e42
--- /dev/null
+++ b/debian/templates/image.bug/include-usb
@@ -0,0 +1,11 @@
+add_usb() {
+ echo '** USB devices:' >&3
+ lsusb >&3 2>/dev/null || echo 'not available' >&3
+ echo >&3
+}
+
+ask_usb() {
+ # This information shouldn't vary much between kernel versions, so
+ # include it anyway.
+ test $same_system = nop || add_usb
+}
diff --git a/debian/templates/image.bug/presubj b/debian/templates/image.bug/presubj
new file mode 100644
index 000000000..59b891acb
--- /dev/null
+++ b/debian/templates/image.bug/presubj
@@ -0,0 +1,8 @@
+Please ensure that you are currently running the kernel version that you
+are reporting on. This will allow your bug report to include useful
+diagnostic information about the running kernel.
+
+If you are reporting that the kernel fails to boot, please use a digital
+camera, serial console or netconsole to record the boot messages and
+attach these to your report. You can use the kernel parameter
+'boot_delay=1000' to slow down the boot messages.
diff --git a/debian/templates/image.bug/script b/debian/templates/image.bug/script
new file mode 100644
index 000000000..8e0b5d557
--- /dev/null
+++ b/debian/templates/image.bug/script
@@ -0,0 +1,46 @@
+#!/bin/bash
+set -e
+
+PATH=/sbin:/bin:/usr/sbin:/usr/bin
+
+dir="$(dirname $0)"
+
+. "$dir"/info
+
+for file in "$dir"/include-*; do
+ name="$(echo $file | sed -e 's,^.*/include-,,')"
+ hooks+=($name)
+ . "$file"
+done
+
+if [ "$RELEASE" == "$(uname -r)" ]; then
+ running_ver="$(uname -v)"
+ running_ver="${running_ver#* $DISTRIBUTOR }"
+ running_ver="${running_ver%% *}"
+ if [ "$running_ver" != "$SOURCEVERSION" ]; then
+ cat <<EOF
+You have installed version $PACKAGE_VERSION of
+$PACKAGE_NAME, but version $running_ver is currently
+running.
+
+You should reboot to complete the upgrade. Until you do this, some
+modules may fail to load. This is NOT a bug.
+
+If you have already rebooted, check your boot loader configuration.
+
+EOF
+ yesno "Do you still want to report a bug? " nop
+ if [ "$REPLY" = nop ]; then
+ exit 1
+ fi
+ fi
+ for hook in ${hooks[@]}; do
+ add_$hook
+ done
+else
+ yesno "Does the bug you are reporting affect this computer? " yep
+ same_system=$REPLY
+ for hook in ${hooks[@]}; do
+ ask_$hook
+ done
+fi
diff --git a/debian/templates/image.meta.bug-presubj.in b/debian/templates/image.meta.bug-presubj.in
new file mode 100644
index 000000000..1f2c5e9c7
--- /dev/null
+++ b/debian/templates/image.meta.bug-presubj.in
@@ -0,0 +1,5 @@
+You are about to report a bug in a Linux kernel meta package.
+This is probably not what you intended to do.
+
+If you want to report a bug in the Linux kernel or modules, you should use
+the package name linux-image-@abiname@@localversion@ instead.
diff --git a/debian/templates/image.meta.maintscript.in b/debian/templates/image.meta.maintscript.in
new file mode 100644
index 000000000..76244f382
--- /dev/null
+++ b/debian/templates/image.meta.maintscript.in
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-image@source_suffix@@localversion@ linux-image-@abiname@@localversion@ 5.7~rc5-1~exp1 linux-image@source_suffix@@localversion@
diff --git a/debian/templates/image.postinst.in b/debian/templates/image.postinst.in
new file mode 100755
index 000000000..25e7dd654
--- /dev/null
+++ b/debian/templates/image.postinst.in
@@ -0,0 +1,25 @@
+#!/bin/sh -e
+
+version=@abiname@@localversion@
+image_path=/boot/@image-stem@-$version
+
+if [ "$1" != configure ]; then
+ exit 0
+fi
+
+depmod $version
+
+if [ -f /lib/modules/$version/.fresh-install ]; then
+ change=install
+else
+ change=upgrade
+fi
+linux-update-symlinks $change $version $image_path
+rm -f /lib/modules/$version/.fresh-install
+
+if [ -d /etc/kernel/postinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postinst.d
+fi
+
+exit 0
diff --git a/debian/templates/image.postrm.in b/debian/templates/image.postrm.in
new file mode 100755
index 000000000..4298752b3
--- /dev/null
+++ b/debian/templates/image.postrm.in
@@ -0,0 +1,31 @@
+#!/bin/sh -e
+
+version=@abiname@@localversion@
+image_path=/boot/@image-stem@-$version
+
+rm -f /lib/modules/$version/.fresh-install
+
+if [ "$1" != upgrade ] && command -v linux-update-symlinks >/dev/null; then
+ linux-update-symlinks remove $version $image_path
+fi
+
+if [ -d /etc/kernel/postrm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/postrm.d
+fi
+
+if [ "$1" = purge ]; then
+ for extra_file in modules.dep modules.isapnpmap modules.pcimap \
+ modules.usbmap modules.parportmap \
+ modules.generic_string modules.ieee1394map \
+ modules.ieee1394map modules.pnpbiosmap \
+ modules.alias modules.ccwmap modules.inputmap \
+ modules.symbols modules.ofmap \
+ modules.seriomap modules.\*.bin \
+ modules.softdep modules.devname; do
+ eval rm -f /lib/modules/$version/$extra_file
+ done
+ rmdir /lib/modules/$version || true
+fi
+
+exit 0
diff --git a/debian/templates/image.preinst.in b/debian/templates/image.preinst.in
new file mode 100755
index 000000000..8a5658ecd
--- /dev/null
+++ b/debian/templates/image.preinst.in
@@ -0,0 +1,21 @@
+#!/bin/sh -e
+
+version=@abiname@@localversion@
+image_path=/boot/@image-stem@-$version
+
+if [ "$1" = abort-upgrade ]; then
+ exit 0
+fi
+
+if [ "$1" = install ]; then
+ # Create a flag file for postinst
+ mkdir -p /lib/modules/$version
+ touch /lib/modules/$version/.fresh-install
+fi
+
+if [ -d /etc/kernel/preinst.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/preinst.d
+fi
+
+exit 0
diff --git a/debian/templates/image.prerm.in b/debian/templates/image.prerm.in
new file mode 100755
index 000000000..f1bde29b1
--- /dev/null
+++ b/debian/templates/image.prerm.in
@@ -0,0 +1,17 @@
+#!/bin/sh -e
+
+version=@abiname@@localversion@
+image_path=/boot/@image-stem@-$version
+
+if [ "$1" != remove ]; then
+ exit 0
+fi
+
+linux-check-removal $version
+
+if [ -d /etc/kernel/prerm.d ]; then
+ DEB_MAINT_PARAMS="$*" run-parts --report --exit-on-error --arg=$version \
+ --arg=$image_path /etc/kernel/prerm.d
+fi
+
+exit 0
diff --git a/debian/templates/perf.lintian-overrides.in b/debian/templates/perf.lintian-overrides.in
new file mode 100644
index 000000000..858faa782
--- /dev/null
+++ b/debian/templates/perf.lintian-overrides.in
@@ -0,0 +1,3 @@
+# These executables are needed to handle processes running in compat mode
+linux-perf-@version@: binary-from-other-architecture usr/lib/perf_@version@-core/perf-read-vdso32
+linux-perf-@version@: binary-from-other-architecture usr/lib/perf_@version@-core/perf-read-vdsox32
diff --git a/debian/templates/perf.meta.maintscript.in b/debian/templates/perf.meta.maintscript.in
new file mode 100644
index 000000000..cbdb95562
--- /dev/null
+++ b/debian/templates/perf.meta.maintscript.in
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/linux-perf linux-perf-@version@ 5.7~rc5-1~exp1 linux-perf
diff --git a/debian/templates/sourcebin.meta.maintscript.in b/debian/templates/sourcebin.meta.maintscript.in
new file mode 100644
index 000000000..3943321b8
--- /dev/null
+++ b/debian/templates/sourcebin.meta.maintscript.in
@@ -0,0 +1 @@
+dir_to_symlink /usr/share/doc/@source_basename@-source@source_suffix@ @source_basename@-source-@version@ 5.7~rc5-1~exp1 @source_basename@-source@source_suffix@
diff --git a/debian/templates/tests-control.image.in b/debian/templates/tests-control.image.in
new file mode 100644
index 000000000..62497c67a
--- /dev/null
+++ b/debian/templates/tests-control.image.in
@@ -0,0 +1,4 @@
+Tests: selftests
+Restrictions: breaks-testbed, needs-root, isolation-machine
+Depends: kexec-tools, python3, gcc, make, libpopt-dev, gcc-multilib [amd64], bc, fuse, libfuse-dev, pkg-config
+Classes: smp
diff --git a/debian/templates/tests-control.main.in b/debian/templates/tests-control.main.in
new file mode 100644
index 000000000..f63e7805d
--- /dev/null
+++ b/debian/templates/tests-control.main.in
@@ -0,0 +1,3 @@
+Tests: python
+Depends: python3, pycodestyle, pyflakes3
+Restrictions: superficial
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 000000000..be32eb502
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,9 @@
+Tests: python
+Restrictions: superficial
+Depends: python3, pycodestyle, pyflakes3
+
+Tests: selftests
+Restrictions: breaks-testbed, needs-root, isolation-machine
+Depends: kexec-tools, python3, gcc, make, libpopt-dev, gcc-multilib [amd64], bc, fuse, libfuse-dev, pkg-config, linux-image-5.10.0-28-alpha-generic [alpha], linux-image-5.10.0-28-alpha-smp [alpha], linux-image-5.10.0-28-amd64-unsigned [amd64], linux-image-5.10.0-28-cloud-amd64-unsigned [amd64], linux-image-5.10.0-28-rt-amd64-unsigned [amd64], linux-image-5.10.0-28-arm64-unsigned [arm64], linux-image-5.10.0-28-cloud-arm64-unsigned [arm64], linux-image-5.10.0-28-rt-arm64-unsigned [arm64], linux-image-5.10.0-28-marvell [armel], linux-image-5.10.0-28-rpi [armel], linux-image-5.10.0-28-armmp [armhf], linux-image-5.10.0-28-armmp-lpae [armhf], linux-image-5.10.0-28-rt-armmp [armhf], linux-image-5.10.0-28-parisc [hppa], linux-image-5.10.0-28-parisc64 [hppa], linux-image-5.10.0-28-686-unsigned [i386], linux-image-5.10.0-28-686-pae-unsigned [i386], linux-image-5.10.0-28-rt-686-pae-unsigned [i386], linux-image-5.10.0-28-itanium [ia64], linux-image-5.10.0-28-mckinley [ia64], linux-image-5.10.0-28-m68k [m68k], linux-image-5.10.0-28-4kc-malta [mips mipsel], linux-image-5.10.0-28-5kc-malta [mips mips64 mips64el mipsel], linux-image-5.10.0-28-octeon [mips mips64 mips64el mipsel], linux-image-5.10.0-28-loongson-3 [mips64el mipsel], linux-image-5.10.0-28-mips64r6 [mips64r6 mipsr6], linux-image-5.10.0-28-mips64r6el [mips64r6el mipsr6el], linux-image-5.10.0-28-mips32r6 [mipsr6], linux-image-5.10.0-28-mips32r6el [mipsr6el], linux-image-5.10.0-28-powerpc [powerpc], linux-image-5.10.0-28-powerpc-smp [powerpc], linux-image-5.10.0-28-powerpc64 [powerpc ppc64], linux-image-5.10.0-28-powerpc64le [ppc64el], linux-image-5.10.0-28-riscv64 [riscv64], linux-image-5.10.0-28-s390x [s390x], linux-image-5.10.0-28-sh7751r [sh4], linux-image-5.10.0-28-sh7785lcr [sh4], linux-image-5.10.0-28-sparc64 [sparc64], linux-image-5.10.0-28-sparc64-smp [sparc64]
+Classes: smp
+
diff --git a/debian/tests/python b/debian/tests/python
new file mode 100755
index 000000000..c743f21ef
--- /dev/null
+++ b/debian/tests/python
@@ -0,0 +1,40 @@
+#!/bin/bash -eu
+
+sources="$AUTOPKGTEST_TMP/sources"
+
+{
+ # Check Python modules under debian/lib and Python scripts under
+ # debian/bin or debian/rules.d.
+ find debian/lib/python -name '*.py'
+ find debian/bin debian/rules.d -type f -perm /111 |
+ while read script; do
+ # Check for Python shebang on the first line only
+ if awk '/^#!.*python/ { exit 0 } { exit 1 }' "$script"; then
+ echo "$script"
+ fi
+ done
+} > "$sources"
+
+# autopkgtest checks for a non-zero exit code *or* any output to
+# stderr. So we should continue after a failure, but make sure
+# something is written to stderr.
+
+echo "I: Running pycodestyle..."
+# Ignore E126,E226,W503 (ignored by default) and also E127,W291 which
+# give false positives.
+if ! xargs pycodestyle --max-line-length=100 --ignore E126,E127,E226,W291,W503 < "$sources"; then
+ # pycodestyle only writes to stdout
+ echo >&2 "E: pycodestyle detected problems"
+fi
+
+echo "I: Running pyflakes..."
+if ! xargs pyflakes3 < "$sources"; then
+ # pyflakes only writes to stdout
+ echo >&2 "E: pyflakes detected problems"
+fi
+
+echo "I: Running debian_linux.debian unit tests..."
+# unittest only writes to stderr
+if ! PYTHONPATH=debian/lib/python python3 -m debian_linux.debian 2>&1; then
+ echo >&2 "E: some unit tests failed"
+fi
diff --git a/debian/tests/selftests b/debian/tests/selftests
new file mode 100644
index 000000000..c19064ca6
--- /dev/null
+++ b/debian/tests/selftests
@@ -0,0 +1,88 @@
+#!/bin/bash -eu
+
+PATH=/usr/sbin:/sbin:/usr/bin:/bin
+
+getconfig() {
+ debian/bin/getconfig.py "$@"
+}
+
+# Look up current ABI name and 'localversion' (featureset/flavour) suffixes
+abiname=$(getconfig version abiname)
+arch=$(dpkg --print-architecture)
+localversion=()
+for featureset in $(getconfig base $arch featuresets); do
+ if [ "$(getconfig base '' $featureset enabled || echo True)" = True ]; then
+ for flavour in $(getconfig base $arch $featureset flavours); do
+ if [ "$featureset" = none ]; then
+ localversion+=(-$flavour)
+ else
+ localversion+=(-$featureset-$flavour)
+ fi
+ done
+ fi
+done
+steps=${#localversion[*]}
+
+case "${ADT_REBOOT_MARK:-}" in
+ "")
+ step=-1
+ ;;
+ step*)
+ step=${ADT_REBOOT_MARK#step}
+ ;;
+esac
+
+if [ "$step" -ge 0 ]; then
+ ver=$abiname${localversion[$step]}
+
+ if [ "$(uname -r)" != "$ver" ]; then
+ echo >&2 "Should be running: $ver"
+ echo >&2 "Actually running: $(uname -r)"
+ else
+ cp -lR . $ADTTMP/build
+ cd $ADTTMP/build
+ make headers_install
+
+ # Ignore compiler warnings
+ {
+ make -C tools/testing/selftests &&
+ make -C tools/testing/selftests/memfd build_fuse
+ } 2>&1 || echo >&2 "Build failed"
+
+ # Enable testing CLONE_USERNS by unprivileged users
+ sysctl kernel.unprivileged_userns_clone=1
+
+ # Some tests will write to stderr despite being successful,
+ # and the exit code from make will be 0 even if tests failed.
+ # So we have to do some post-analysis...
+ set -o pipefail
+ {
+ make -C tools/testing/selftests quicktest=1 run_tests &&
+ make -C tools/testing/selftests/cpu-hotplug run_full_test &&
+ make -C tools/testing/selftests/memory-hotplug run_full_test &&
+ make -C tools/testing/selftests/memfd run_fuse &&
+ make -C tools/testing/selftests/timers run_destructive_tests
+ } 2>&1 | tee $ADTTMP/log
+ set +o pipefail
+ if grep -E '\[(FAIL|UNSUPPORTED)\]|recipe for target .run_tests. failed' $ADTTMP/log | \
+ grep -q -v \
+ -e '^selftests: fw_userhelper.sh \[FAIL\]' \
+ -e 'ftrace - function profiler with function tracing \[UNSUPPORTED\]' \
+ -e '^selftests: ftracetest \[FAIL\]' \
+ -e '|| echo .*\[FAIL\]' \
+ ; then
+ echo >&2 "Unexpected failures found"
+ fi
+ fi
+fi
+
+step=$((step + 1))
+
+if [ "$step" -lt "$steps" ]; then
+ # Load the next kernel
+ ver=$abiname${localversion[$step]}
+ kexec -l /boot/vmlinuz-$ver --initrd /boot/initrd.img-$ver --reuse-cmdline
+ /tmp/autopkgtest-reboot step$step
+fi
+
+exit 0
diff --git a/debian/upstream/rt-signing-key.pgp b/debian/upstream/rt-signing-key.pgp
new file mode 100644
index 000000000..0d32ba60d
--- /dev/null
+++ b/debian/upstream/rt-signing-key.pgp
Binary files differ
diff --git a/debian/upstream/signing-key.pgp b/debian/upstream/signing-key.pgp
new file mode 100644
index 000000000..60a46ab97
--- /dev/null
+++ b/debian/upstream/signing-key.pgp
Binary files differ
diff --git a/debian/usbip.install b/debian/usbip.install
new file mode 100644
index 000000000..04a6ce5b5
--- /dev/null
+++ b/debian/usbip.install
@@ -0,0 +1,2 @@
+usr/sbin/usbip
+usr/sbin/usbipd
diff --git a/debian/usbip.manpages b/debian/usbip.manpages
new file mode 100644
index 000000000..ff94009a6
--- /dev/null
+++ b/debian/usbip.manpages
@@ -0,0 +1,2 @@
+tools/usb/usbip/doc/usbip.8
+tools/usb/usbip/doc/usbipd.8
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 000000000..54040107b
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,4 @@
+# Find first non-rc tarball linked from kernel.org.
+version=3
+opts="pgpmode=mangle, pgpsigurlmangle=s|\.xz$|.sign|, decompress" \
+https://www.kernel.org/ .*/linux-([0-9.]+).tar.xz debian uupdate